UNPKG

@chasemoskal/magical

Version:

web toolkit for lit apps

54 lines 3.47 kB
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) { if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter"); if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it"); return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver); }; var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) { if (kind === "m") throw new TypeError("Private method is not writable"); if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter"); if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it"); return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value; }; var _MagicElement_renderCount, _MagicElement_stateCount, _MagicElement_teardowns, _MagicElement_setups, _MagicElement_use; import { LitElement } from "lit"; import { setupUseObjectForElement } from "./element/setup-use-object-for-element.js"; export class MagicElement extends LitElement { constructor() { super(...arguments); _MagicElement_renderCount.set(this, 0); _MagicElement_stateCount.set(this, 0); _MagicElement_teardowns.set(this, new Set()); _MagicElement_setups.set(this, new Set()); _MagicElement_use.set(this, setupUseObjectForElement({ rerender: () => this.requestUpdate(), getRenderCount: () => __classPrivateFieldGet(this, _MagicElement_renderCount, "f"), incrementStateCount: () => { var _a, _b; return __classPrivateFieldSet(this, _MagicElement_stateCount, (_b = __classPrivateFieldGet(this, _MagicElement_stateCount, "f"), _a = _b++, _b), "f"), _a; }, addSetup: initializer => __classPrivateFieldGet(this, _MagicElement_setups, "f").add(initializer), })); } get use() { return __classPrivateFieldGet(this, _MagicElement_use, "f"); } firstUpdated() { for (const initializer of __classPrivateFieldGet(this, _MagicElement_setups, "f")) { const teardown = initializer(this); if (teardown) __classPrivateFieldGet(this, _MagicElement_teardowns, "f").add(teardown); } } disconnectedCallback() { for (const teardown of __classPrivateFieldGet(this, _MagicElement_teardowns, "f")) teardown(); __classPrivateFieldGet(this, _MagicElement_teardowns, "f").clear(); __classPrivateFieldSet(this, _MagicElement_renderCount, 0, "f"); super.disconnectedCallback(); } render() { __classPrivateFieldSet(this, _MagicElement_stateCount, 0, "f"); const result = this.realize(__classPrivateFieldGet(this, _MagicElement_use, "f")); __classPrivateFieldSet(this, _MagicElement_renderCount, __classPrivateFieldGet(this, _MagicElement_renderCount, "f") + 1, "f"); return result; } } _MagicElement_renderCount = new WeakMap(), _MagicElement_stateCount = new WeakMap(), _MagicElement_teardowns = new WeakMap(), _MagicElement_setups = new WeakMap(), _MagicElement_use = new WeakMap(); //# sourceMappingURL=element.js.map