From 3aeb16f0a31a3e0e0f9eac171fcf7a50063fb9b8 Mon Sep 17 00:00:00 2001 From: Philipp Kunz Date: Fri, 6 Oct 2023 17:42:41 +0200 Subject: [PATCH] fix(core): update --- ts_web/00_commitinfo_data.ts | 2 +- ts_web/elements/uptimelink | 0 ts_web/elements/uptimelink-webwidget.ts | 45 +++++++-- ts_web/elements/uptimelink-windowlayer.ts | 113 ++++++++++++++++++++++ 4 files changed, 151 insertions(+), 9 deletions(-) create mode 100644 ts_web/elements/uptimelink create mode 100644 ts_web/elements/uptimelink-windowlayer.ts diff --git a/ts_web/00_commitinfo_data.ts b/ts_web/00_commitinfo_data.ts index 8ce6e88..04ab996 100644 --- a/ts_web/00_commitinfo_data.ts +++ b/ts_web/00_commitinfo_data.ts @@ -3,6 +3,6 @@ */ export const commitinfo = { name: '@uptime.link/webwidget', - version: '1.0.73', + version: '1.0.74', description: 'the webwidget for public use of uptimelink' } diff --git a/ts_web/elements/uptimelink b/ts_web/elements/uptimelink new file mode 100644 index 0000000..e69de29 diff --git a/ts_web/elements/uptimelink-webwidget.ts b/ts_web/elements/uptimelink-webwidget.ts index b937411..eff93a0 100644 --- a/ts_web/elements/uptimelink-webwidget.ts +++ b/ts_web/elements/uptimelink-webwidget.ts @@ -1,5 +1,6 @@ -import { DeesElement, property, html, customElement, type TemplateResult } from '@design.estate/dees-element'; -import * as domtools from '@design.estate/dees-domtools'; +import { DeesElement, property, html, customElement, type TemplateResult, cssManager } from '@design.estate/dees-element'; + +import { UptimelinkWindowLayer } from './uptimelink-windowlayer.js'; declare global { interface HTMLElementTagNameMap { @@ -13,6 +14,11 @@ export class UptimelinkWebwidget extends DeesElement { `; + @property({ + type: Boolean + }) + isOnTop = false; + @property() public projectSlug: string; @@ -27,19 +33,21 @@ export class UptimelinkWebwidget extends DeesElement { constructor() { super(); - domtools.DomTools.setupDomTools(); this.setupEventing(); } + public static styles = [ + cssManager.defaultStyles, + ] + public render(): TemplateResult { return html` - ${domtools.elementBasic.styles} +
+ +
+ `; + } + + firstUpdated() { + setTimeout(() => { + this.visible = true; + }, 100); + } + + dispatchClicked() { + this.dispatchEvent(new CustomEvent('clicked')); + } + + public toggleVisibility () { + this.visible = !this.visible; + } + + public async show() { + const domtools = await this.domtoolsPromise; + await domtools.convenience.smartdelay.delayFor(0); + this.visible = true; + } + + public async hide() { + const domtools = await this.domtoolsPromise; + await domtools.convenience.smartdelay.delayFor(0); + this.visible = false; + } + + public async destroy() { + const domtools = await this.domtoolsPromise; + await this.hide(); + await domtools.convenience.smartdelay.delayFor(300); + this.remove(); + } +}