UNPKG

piral-vue

Version:

Plugin for integrating Vue@2 components in Piral.

25 lines 939 B
import { mountVue } from './mount'; import { createExtension } from './extension'; export function createConverter(config = {}) { const { rootName = 'piral-slot', selector = 'extension-component' } = config; const Extension = createExtension(rootName, selector); const convert = (root, captured) => ({ mount(parent, data, ctx, locals) { const el = parent.appendChild(document.createElement(rootName)); locals.instance = mountVue(el, root, data, ctx, captured); }, update(parent, data, ctx, locals) { for (const prop in data) { locals.instance[prop] = data[prop]; } }, unmount(parent, locals) { locals.instance.$destroy(); parent.innerHTML = ''; locals.instance = undefined; }, }); convert.Extension = Extension; return convert; } //# sourceMappingURL=converter.js.map