@joist/element
Version:
Intelligently apply styles to WebComponents
48 lines • 2.71 kB
JavaScript
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