piral-mithril
Version:
Plugin for integrating Mithril.js components in Piral.
33 lines • 1.01 kB
JavaScript
import * as mithril from 'mithril';
import { createExtension } from './extension';
export function createConverter(config = {}) {
const { rootName = 'piral-slot' } = config;
const Extension = createExtension(rootName);
const convert = (component, captured) => ({
mount(el, props, ctx) {
mithril.mount(el, {
view: () => mithril.m(component, {
...captured,
...ctx,
...props,
}),
});
},
update(el, props, ctx) {
mithril.mount(el, {
view: () => mithril.m(component, {
...captured,
...ctx,
...props,
}),
});
},
unmount(el) {
// tslint:disable-next-line:no-null-keyword
mithril.mount(el, null);
},
});
convert.Extension = Extension;
return convert;
}
//# sourceMappingURL=converter.js.map