Sha256: 9446c45f4e2ed8effa51b114aec92ad205dbbe00469893aa7db2c49e02dcd25d
Contents?: true
Size: 979 Bytes
Versions: 6
Compression:
Stored size: 979 Bytes
Contents
import morphdom from "morphdom" import { createConsumer } from "@rails/actioncable" import { initializeActions } from "../actions/initialize-actions.ts" import { initializeInputs } from "../inputs/initialize-inputs.ts" const consumer = createConsumer() export const claptonChannel = consumer.subscriptions.create("Clapton::ClaptonChannel", { connected() { window.actionCableConnected = true; }, disconnected() {}, async received(response) { const { data, errors } = response; const component = document.querySelector(`[data-id="${data.component.id}"]`) const module = await import(`${data.component.name}`); const instance = new module[data.component.name](data.state, data.component.id, errors); morphdom(component, instance.renderWrapper, { onBeforeElUpdated: (_fromEl, toEl) => { toEl.setAttribute("data-set-event-handler", "true"); return true; } }); initializeInputs(); initializeActions(); } })
Version data entries
6 entries across 6 versions & 1 rubygems