UNPKG

@joist/element

Version:

Intelligently apply styles to WebComponents

48 lines 2.71 kB
import { __esDecorate, __runInitializers } from "tslib"; import { assert } from "chai"; import { element } from "./element.js"; import { ready } from "./lifecycle.js"; it("should call all callbacks when template is ready", () => { let MyElement = (() => { let _classDecorators = [element({ tagName: "template-ready-1", })]; let _classDescriptor; let _classExtraInitializers = []; let _classThis; let _classSuper = HTMLElement; let _instanceExtraInitializers = []; let _onTemplateReady1_decorators; let _onTemplateReady2_decorators; var MyElement = class extends _classSuper { static { _classThis = this; } static { const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0; _onTemplateReady1_decorators = [ready()]; _onTemplateReady2_decorators = [ready()]; __esDecorate(this, null, _onTemplateReady1_decorators, { kind: "method", name: "onTemplateReady1", static: false, private: false, access: { has: obj => "onTemplateReady1" in obj, get: obj => obj.onTemplateReady1 }, metadata: _metadata }, null, _instanceExtraInitializers); __esDecorate(this, null, _onTemplateReady2_decorators, { kind: "method", name: "onTemplateReady2", static: false, private: false, access: { has: obj => "onTemplateReady2" in obj, get: obj => obj.onTemplateReady2 }, metadata: _metadata }, null, _instanceExtraInitializers); __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers); MyElement = _classThis = _classDescriptor.value; if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata }); __runInitializers(_classThis, _classExtraInitializers); } callCount = (__runInitializers(this, _instanceExtraInitializers), {}); onTemplateReady1() { this.callCount.onTemplateReady1 ??= 0; this.callCount.onTemplateReady1++; } onTemplateReady2() { this.callCount.onTemplateReady2 ??= 0; this.callCount.onTemplateReady2++; } }; return MyElement = _classThis; })(); const el = new MyElement(); assert.deepEqual(el.callCount, { onTemplateReady1: 1, onTemplateReady2: 1, }); }); //# sourceMappingURL=lifecycle.test.js.map