UNPKG

@chasemoskal/magical

Version:

web toolkit for lit apps

38 lines 1.57 kB
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; import { html } from "lit"; import { property } from "lit/decorators.js"; import { mixinCss } from "../../mixins/css.js"; import { MagicElement } from "../../element.js"; import counterStylesCss from "../styles/counter-styles.css.js"; let CounterElement = class CounterElement extends MagicElement { constructor() { super(...arguments); this.start = 0; } realize() { const { use } = this; const [count, setCount] = use.state(this.start); const increment = () => setCount(count + 1); const reset = () => setCount(this.start); return html ` <div> <p>count ${count}</p> <button @click=${increment}>increment</button> <button @click=${reset}>reset</button> </div> `; } }; __decorate([ property({ type: Number }) ], CounterElement.prototype, "start", void 0); CounterElement = __decorate([ mixinCss(counterStylesCss) ], CounterElement); export { CounterElement }; //# sourceMappingURL=counter-element.js.map