diff options
Diffstat (limited to '')
-rw-r--r-- | static/clock.ts | 31 | ||||
-rw-r--r-- | static/script.ts | 6 |
2 files changed, 31 insertions, 6 deletions
diff --git a/static/clock.ts b/static/clock.ts index b0ddae00..bbd15de0 100644 --- a/static/clock.ts +++ b/static/clock.ts @@ -1,4 +1,7 @@ -export { SmallcalCellHighlight, Timebar } +export { + SmallcalCellHighlight, Timebar, + initialize_clock_components +} import { makeElement, date_to_percent } from './lib' @@ -96,15 +99,29 @@ class ClockElement extends HTMLElement { return ['timer_id'] } - update(now: Date) { /* noop */ } + update(_: Date) { /* noop */ } } + class TodayButton extends ClockElement { + a: HTMLAnchorElement; + + constructor() { + super(); + this.a = document.createElement('a'); + this.a.textContent = 'Idag'; + this.a.classList.add('btn'); + } + + connectedCallback() { + super.connectedCallback(); + this.replaceChildren(this.a); + } + update(now: Date) { - (this.querySelector('a') as any).href = now.format("~Y-~m-~d.html") + this.a.href = now.format("~Y-~m-~d.html") } } -customElements.define('today-button', TodayButton) class CurrentTime extends ClockElement { @@ -112,4 +129,8 @@ class CurrentTime extends ClockElement { this.textContent = now.format('~H:~M:~S') } } -customElements.define('current-time', CurrentTime) + +function initialize_clock_components() { + customElements.define('today-button', TodayButton) + customElements.define('current-time', CurrentTime) +} diff --git a/static/script.ts b/static/script.ts index 650a5aa0..ec771773 100644 --- a/static/script.ts +++ b/static/script.ts @@ -1,5 +1,8 @@ import { VEvent, xml_to_vcal } from './vevent' -import { SmallcalCellHighlight, Timebar } from './clock' +import { + SmallcalCellHighlight, Timebar, + initialize_clock_components +} from './clock' import { vcal_objects, event_calendar_mapping } from './globals' import { EventCreator } from './event-creator' import { PopupElement, setup_popup_element } from './components/popup-element' @@ -40,6 +43,7 @@ window.addEventListener('load', function() { } } + initialize_clock_components(); initialize_components(); /* A full redraw here is WAY to slow */ |