From 96060146170a25f980c241e6af2b3f4e1cf43adc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9Cchrisshank=E2=80=9D?= Date: Tue, 10 Dec 2024 15:35:55 -0800 Subject: [PATCH] refactor timer to lit --- src/folk-timer.ts | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/src/folk-timer.ts b/src/folk-timer.ts index 0d799fe..33f45c1 100644 --- a/src/folk-timer.ts +++ b/src/folk-timer.ts @@ -1,32 +1,30 @@ +import { FolkElement } from './common/folk-element'; + declare global { interface HTMLElementTagNameMap { 'folk-timer': FolkTimer; } } -export class FolkTimer extends HTMLElement { +export class FolkTimer extends FolkElement { static tagName = 'folk-timer'; - static define() { - if (customElements.get(this.tagName)) return; - customElements.define(this.tagName, this); - } - #timeMs = 0; - #timeoutId: NodeJS.Timeout | -1 = -1; + #timeoutId = -1; #intervalMs = 100; connectedCallback() { + super.connectedCallback(); this.#updateTime(0); } start() { - this.#timeoutId = setInterval(this.#updateTime, this.#intervalMs); + this.#timeoutId = window.setInterval(this.#updateTime, this.#intervalMs); } stop() { - clearInterval(this.#timeoutId); + window.clearInterval(this.#timeoutId); this.#timeoutId = -1; }