6 Commits

Author SHA1 Message Date
69583a90ad 1.0.62 2021-09-27 00:49:30 +02:00
efb2e53e0c fix(core): update 2021-09-27 00:49:30 +02:00
fe38765d2f 1.0.61 2021-09-27 00:45:18 +02:00
1903687a46 fix(core): update 2021-09-27 00:45:17 +02:00
78811a2879 1.0.60 2021-09-24 13:53:07 +02:00
b6eef831c6 fix(core): update 2021-09-24 13:53:07 +02:00
9 changed files with 16598 additions and 1728 deletions

17947
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
{ {
"name": "@uptimelink_private/catalog", "name": "@uptimelink_private/catalog",
"version": "1.0.59", "version": "1.0.62",
"private": false, "private": false,
"description": "a catalog with webcomponents for uptimelink dashboard", "description": "a catalog with webcomponents for uptimelink dashboard",
"main": "dist_ts_web/index.js", "main": "dist_ts_web/index.js",
@ -13,18 +13,18 @@
"author": "Lossless GmbH", "author": "Lossless GmbH",
"license": "UNLICENSED", "license": "UNLICENSED",
"dependencies": { "dependencies": {
"@designestate/dees-domtools": "^1.0.85", "@designestate/dees-domtools": "^1.0.95",
"@designestate/dees-element": "^1.0.10", "@designestate/dees-element": "^1.0.25",
"@designestate/dees-wcctools": "^1.0.54", "@designestate/dees-wcctools": "^1.0.57",
"@gitzone/tsrun": "^1.2.12", "@gitzone/tsrun": "^1.2.17",
"@losslessone_private/loint-pubapi": "^1.0.10", "@losslessone_private/loint-pubapi": "^1.0.10",
"@pushrocks/smartexpress": "^3.0.100", "@uptimelink/interfaces": "^1.0.10",
"typescript": "^4.2.3" "typescript": "^4.4.3"
}, },
"devDependencies": { "devDependencies": {
"@gitzone/tsbuild": "^2.1.24", "@gitzone/tsbuild": "^2.1.27",
"@gitzone/tsbundle": "^1.0.80", "@gitzone/tsbundle": "^1.0.87",
"@gitzone/tswatch": "^1.0.52", "@gitzone/tswatch": "^1.0.56",
"@pushrocks/projectinfo": "^4.0.5", "@pushrocks/projectinfo": "^4.0.5",
"tslint": "^6.1.3", "tslint": "^6.1.3",
"tslint-config-prettier": "^1.17.0" "tslint-config-prettier": "^1.17.0"

View File

@ -1,5 +1,7 @@
export * from './upl-statuspage-assetsselector'; export * from './upl-statuspage-assetsselector';
export * from './upl-statuspage-footer';
export * from './upl-statuspage-header'; export * from './upl-statuspage-header';
export * from './upl-statuspage-incidents';
export * from './upl-statuspage-statusbar'; export * from './upl-statuspage-statusbar';
export * from './upl-statuspage-statusdetails'; export * from './upl-statuspage-statusdetails';
export * from './upl-statuspage-statusmonth'; export * from './upl-statuspage-statusmonth';

View File

@ -0,0 +1,72 @@
import { DeesElement, property, html, customElement, TemplateResult, css, cssManager } from '@designestate/dees-element';
import * as domtools from '@designestate/dees-domtools';
declare global {
interface HTMLElementTagNameMap {
'upl-statuspage-footer': UplStatuspageFooter;
}
}
@customElement('upl-statuspage-footer')
export class UplStatuspageFooter extends DeesElement {
// STATIC
public static demo = () => html`
<upl-statuspage-footer></upl-statuspage-footer>
`;
// INSTANCE
@property()
public legalInfo: string = "https://lossless.gmbh";
@property({
type: Boolean
})
public whitelabel = false;
constructor() {
super();
}
public static styles = [
domtools.elementBasic.staticStyles,
css`
:host {
display: block;
background: ${cssManager.bdTheme('#ffffff', '#000000')};
font-family: Roboto Mono;
color: ${cssManager.bdTheme('#333333', '#ffffff')};
}
.mainbox {
max-width: 900px;
margin: auto;
padding-top: 20px;
padding-bottom: 20px;
}
`
]
public render(): TemplateResult {
return html`
${domtools.elementBasic.styles}
<style></style>
<div class="mainbox">
Hi there
</div>
`;
}
public dispatchReportNewIncident() {
this.dispatchEvent(new CustomEvent('reportNewIncident', {
}))
}
public dispatchStatusSubscribe() {
this.dispatchEvent(new CustomEvent('statusSubscribe', {
}))
}
}

View File

@ -1,4 +1,4 @@
import { DeesElement, property, html, customElement, TemplateResult } from '@designestate/dees-element'; import { DeesElement, property, html, customElement, TemplateResult, css, cssManager } from '@designestate/dees-element';
import * as domtools from '@designestate/dees-domtools'; import * as domtools from '@designestate/dees-domtools';
declare global { declare global {
@ -9,25 +9,28 @@ declare global {
@customElement('upl-statuspage-header') @customElement('upl-statuspage-header')
export class UplStatuspageHeader extends DeesElement { export class UplStatuspageHeader extends DeesElement {
// STATIC
public static demo = () => html` public static demo = () => html`
<upl-statuspage-header></upl-statuspage-header> <upl-statuspage-header></upl-statuspage-header>
`; `;
// INSTANCE
@property()
public pageTitle: string = "Statuspage Title";
constructor() { constructor() {
super(); super();
} }
public render(): TemplateResult { public static styles = [
return html` domtools.elementBasic.staticStyles,
${domtools.elementBasic.styles} css`
<style>
:host { :host {
display: block; display: block;
background: #222222; background: ${cssManager.bdTheme('#eeeeeb', '#222222')};
font-family: Roboto Mono; font-family: Roboto Mono;
color: #fff; color: ${cssManager.bdTheme('#333333', '#ffffff')};
} }
.mainbox { .mainbox {
@ -42,9 +45,10 @@ export class UplStatuspageHeader extends DeesElement {
} }
.mainbox .actions .actionButton { .mainbox .actions .actionButton {
background: rgba(255,255,255, 0); background: ${cssManager.bdTheme('#00000000', '#ffffff00')};
font-size: 12px; font-size: 12px;
border: 1px solid #CCC; border: 1px solid ${cssManager.bdTheme('#333', '#CCC')};
padding: 6px 10px 7px 10px; padding: 6px 10px 7px 10px;
margin-left: 10px; margin-left: 10px;
border-radius: 3px; border-radius: 3px;
@ -53,9 +57,9 @@ export class UplStatuspageHeader extends DeesElement {
} }
.mainbox .actions .actionButton:hover { .mainbox .actions .actionButton:hover {
background: #efefef; background: ${cssManager.bdTheme('#333333', '#efefef')};
border: 1px solid #efefef; border: 1px solid ${cssManager.bdTheme('#333333', '#efefef')};
color: #333333; color: ${cssManager.bdTheme('#fff', '#333333')};
} }
h1 { h1 {
@ -72,15 +76,35 @@ export class UplStatuspageHeader extends DeesElement {
font-weight: 300; font-weight: 300;
font-size: 18px; font-size: 18px;
} }
`
]
public render(): TemplateResult {
return html`
${domtools.elementBasic.styles}
<style>
</style> </style>
<div class="mainbox"> <div class="mainbox">
<div class="actions"> <div class="actions">
<div class="actionButton">report new incident</div> <div class="actionButton" @click=${this.dispatchReportNewIncident}>report new incident</div>
<div class="actionButton">subscribe</div> <div class="actionButton" @click=${this.dispatchStatusSubscribe}>subscribe</div>
</div> </div>
<h1>status.lossless.network</h1> <h1>${this.pageTitle}</h1>
<h2>STATUS BOARD</h2> <h2>STATUS BOARD</h2>
</div> </div>
`; `;
} }
public dispatchReportNewIncident() {
this.dispatchEvent(new CustomEvent('reportNewIncident', {
}))
}
public dispatchStatusSubscribe() {
this.dispatchEvent(new CustomEvent('statusSubscribe', {
}))
}
} }

View File

@ -0,0 +1,90 @@
import * as plugins from '../plugins';
import {
DeesElement,
property,
html,
customElement,
TemplateResult,
css,
cssManager,
} from '@designestate/dees-element';
declare global {
interface HTMLElementTagNameMap {
'upl-statuspage-incidents': UplStatuspageIncidents;
}
}
@customElement('upl-statuspage-incidents')
export class UplStatuspageIncidents extends DeesElement {
// STATIC
public static demo = () => html` <upl-statuspage-incidents></upl-statuspage-incidents> `;
// INSTANCE
@property({
type: Array,
})
public currentIncidences: plugins.uplInterfaces.data.IIncident[] = [];
@property({
type: Array,
})
public pastIncidences: plugins.uplInterfaces.data.IIncident[] = [];
@property({
type: Boolean,
})
public whitelabel = false;
constructor() {
super();
}
public static styles = [
plugins.domtools.elementBasic.staticStyles,
css`
:host {
display: block;
background: ${cssManager.bdTheme('#eeeeeb', '#222222')};
font-family: Roboto Mono;
color: ${cssManager.bdTheme('#333333', '#ffffff')};
}
.mainbox {
max-width: 900px;
margin: auto;
}
.noIncidentBox {
background: #333;
padding: 10px;
margin-bottom: 15px;
border-radius: 3px;
}
`,
];
public render(): TemplateResult {
return html`
<style></style>
<div class="mainbox">
<uplinternal-miniheading> Current Incidents </uplinternal-miniheading>
${this.currentIncidences.length
? html``
: html` <div class="noIncidentBox">No incidents ongoing.</div> `}
<uplinternal-miniheading> Past Incidents </uplinternal-miniheading>
${this.pastIncidences.length
? html``
: html` <div class="noIncidentBox">No past incidents in the last 90 days.</div> `}
</div>
`;
}
public dispatchReportNewIncident() {
this.dispatchEvent(new CustomEvent('reportNewIncident', {}));
}
public dispatchStatusSubscribe() {
this.dispatchEvent(new CustomEvent('statusSubscribe', {}));
}
}

View File

@ -1,5 +1,13 @@
import { DeesElement, property, html, customElement, TemplateResult } from '@designestate/dees-element'; import * as plugins from '../plugins';
import * as domtools from '@designestate/dees-domtools'; import {
DeesElement,
property,
html,
customElement,
TemplateResult,
css,
cssManager,
} from '@designestate/dees-element';
import './internal/uplinternal-miniheading'; import './internal/uplinternal-miniheading';
@ -11,20 +19,15 @@ declare global {
@customElement('upl-statuspage-statusdetails') @customElement('upl-statuspage-statusdetails')
export class UplStatuspageStatusdetails extends DeesElement { export class UplStatuspageStatusdetails extends DeesElement {
public static demo = () => html` public static demo = () => html` <upl-statuspage-statusdetails></upl-statuspage-statusdetails> `;
<upl-statuspage-statusdetails></upl-statuspage-statusdetails>
`;
constructor() { constructor() {
super(); super();
} }
public render(): TemplateResult { public static styles = [
return html` plugins.domtools.elementBasic.staticStyles,
${domtools.elementBasic.styles} css`
<style>
:host { :host {
position: relative; position: relative;
padding: 0px 0px 15px 0px; padding: 0px 0px 15px 0px;
@ -44,8 +47,10 @@ export class UplStatuspageStatusdetails extends DeesElement {
} }
.mainbox .barContainer { .mainbox .barContainer {
position: relative;
display: flex; display: flex;
padding: 10px 6px; padding: 6px;
overflow: hidden;
} }
.mainbox .barContainer .bar { .mainbox .barContainer .bar {
@ -53,18 +58,23 @@ export class UplStatuspageStatusdetails extends DeesElement {
width: 11px; width: 11px;
border-radius: 3px; border-radius: 3px;
height: 40px; height: 40px;
background: #2DEB51; background: #2deb51;
} }
.timeIndicator { .timeIndicator {
position: absolute; position: absolute;
width: 11px; width: 11px;
height: 11px; height: 11px;
background: #fff; background: #FF9800;
top: 90px; top: 56px;
left: 600px; left: 400px;
transform: rotate(45deg); transform: rotate(45deg);
} }
</style> `,
];
public render(): TemplateResult {
return html`
<style></style>
<uplinternal-miniheading>Yesterday & Today</uplinternal-miniheading> <uplinternal-miniheading>Yesterday & Today</uplinternal-miniheading>
<div class="mainbox"> <div class="mainbox">
<div class="barContainer"> <div class="barContainer">
@ -77,9 +87,9 @@ export class UplStatuspageStatusdetails extends DeesElement {
} }
return returnArray; return returnArray;
})()} })()}
</div>
<div class="timeIndicator"></div> <div class="timeIndicator"></div>
</div> </div>
</div>
`; `;
} }
} }

View File

@ -4,6 +4,8 @@ import {
html, html,
customElement, customElement,
TemplateResult, TemplateResult,
css,
cssManager
} from '@designestate/dees-element'; } from '@designestate/dees-element';
import * as domtools from '@designestate/dees-domtools'; import * as domtools from '@designestate/dees-domtools';
@ -23,10 +25,9 @@ export class UplStatuspageStatusmonth extends DeesElement {
super(); super();
} }
public render(): TemplateResult { public static styles = [
return html` domtools.elementBasic.staticStyles,
${domtools.elementBasic.styles} css`
<style>
:host { :host {
position: relative; position: relative;
padding: 0px 0px 15px 0px; padding: 0px 0px 15px 0px;
@ -60,7 +61,12 @@ export class UplStatuspageStatusmonth extends DeesElement {
background: #2deb51; background: #2deb51;
border-radius: 3px; border-radius: 3px;
} }
</style> `
]
public render(): TemplateResult {
return html`
<style></style>
<uplinternal-miniheading>Last 150 days</uplinternal-miniheading> <uplinternal-miniheading>Last 150 days</uplinternal-miniheading>
<div class="mainbox"> <div class="mainbox">
<div class="statusMonth"> <div class="statusMonth">

7
ts_web/plugins.ts Normal file
View File

@ -0,0 +1,7 @@
import * as domtools from '@designestate/dees-domtools';
import * as uplInterfaces from '@uptimelink/interfaces';
export {
domtools,
uplInterfaces
}