Sha256: 1c29465cc61e0f57e545ce4ca9b3e9080fa61c6ea37772646ecbc0df455126b6

Contents?: true

Size: 478 Bytes

Versions: 6

Compression:

Stored size: 478 Bytes

Contents

import morphdom from "morphdom";

export const updateComponent = async (component: HTMLElement, state: any, property: string, target: HTMLInputElement) => {
  state[property] = target.value;
  const componentName = component.dataset.component as string;
  const module = await import(`${componentName}`);
  const ComponentClass = module[componentName] as any;
  const instance = new ComponentClass(state, component.dataset.id);
  morphdom(component, instance.renderWrapper);
};

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
clapton-0.0.23 lib/clapton/javascripts/src/dom/update-component.ts
clapton-0.0.22 lib/clapton/javascripts/src/dom/update-component.ts
clapton-0.0.21 lib/clapton/javascripts/src/dom/update-component.ts
clapton-0.0.20 lib/clapton/javascripts/src/dom/update-component.ts
clapton-0.0.19 lib/clapton/javascripts/src/dom/update-component.ts
clapton-0.0.18 lib/clapton/javascripts/src/dom/update-component.ts