6 Commits

Author SHA1 Message Date
a955240dd2 1.0.67 2021-03-09 20:47:00 +00:00
29900c458b fix(core): update 2021-03-09 20:47:00 +00:00
2ef19ab203 1.0.66 2021-03-09 13:54:01 +00:00
bcea796d69 fix(core): update 2021-03-09 13:54:01 +00:00
1fc79c3ba2 1.0.65 2021-03-09 13:41:17 +00:00
cafe63348b fix(core): update 2021-03-09 13:41:16 +00:00
3 changed files with 24 additions and 4 deletions

2
package-lock.json generated
View File

@ -1,6 +1,6 @@
{
"name": "@uptimelink/webwidget",
"version": "1.0.64",
"version": "1.0.67",
"lockfileVersion": 1,
"requires": true,
"dependencies": {

View File

@ -1,6 +1,6 @@
{
"name": "@uptimelink/webwidget",
"version": "1.0.64",
"version": "1.0.67",
"private": false,
"description": "the webwidget for public use of uptimelink",
"main": "dist_ts_web/index.js",

View File

@ -1,6 +1,12 @@
import { DeesElement, property, html, customElement, TemplateResult } from '@designestate/dees-element';
import * as domtools from '@designestate/dees-domtools';
declare global {
interface HTMLElementTagNameMap {
'uptimelink-webwidget': UptimelinkWebwidget;
}
}
@customElement('uptimelink-webwidget')
export class UptimelinkWebwidget extends DeesElement {
public static demo = () => html`
@ -13,6 +19,9 @@ export class UptimelinkWebwidget extends DeesElement {
@property()
public isFocused = false;
@property()
public isElevated = false;
@property()
public showExpanded: boolean = false;
@ -30,7 +39,7 @@ export class UptimelinkWebwidget extends DeesElement {
position: relative;
display: block;
height: 30px;
z-index:10;
z-index: ${this.isElevated ? '10' : 'auto'} ;
}
.mainbox {
position: relative;
@ -120,6 +129,11 @@ export class UptimelinkWebwidget extends DeesElement {
border-radius: 3px 3px 10px 10px;
padding: 5px;
margin-top: 10px;
transition: background 0.1s;
}
.viewStatuspage:hover {
background: ${this.goBright ? 'rgba(0,0,0,0.1)' : 'rgba(255,255,255,0.1)'};
}
</style>
<div class="mainbox ${this.isFocused ? 'focused' : null}">
@ -154,6 +168,7 @@ export class UptimelinkWebwidget extends DeesElement {
await this.updateComplete;
const mainbox: HTMLDivElement = this.shadowRoot.querySelector('.mainbox');
mainbox.onmouseenter = async () => {
this.isElevated = true;
this.isFocused = true;
await domtools.DomTools.getGlobalDomToolsSync().convenience.smartdelay.delayFor(200);
if (!this.isFocused) {
@ -161,11 +176,16 @@ export class UptimelinkWebwidget extends DeesElement {
}
this.showExpanded = true;
await this.performUpdate();
await domtools.DomTools.getGlobalDomToolsSync().convenience.smartdelay.delayFor(50);
await (await this.domtoolsPromise).convenience.smartdelay.delayFor(50);
const expandedDiv = this.shadowRoot.querySelector('.expanded') as HTMLElement;
expandedDiv.style.opacity = '1';
};
mainbox.onmouseleave = async () => {
(await this.domtoolsPromise).convenience.smartdelay.delayFor(200).then(() => {
if (!this.isFocused) {
this.isElevated = false;
}
});
if (!this.showExpanded) {
this.isFocused = false;
return;