import { commitinfo } from '../00_commitinfo_data.js'; import * as plugins from '../plugins.js'; import * as appstate from '../appstate.js'; import { DeesElement, css, cssManager, customElement, html, state } from '@design.estate/dees-element'; import { CloudlyViewBackups } from './cloudly-view-backups.js'; import { CloudlyViewClusters } from './cloudly-view-clusters.js'; import { CloudlyViewDbs } from './cloudly-view-dbs.js'; import { CloudlyViewDeployments } from './cloudly-view-deployments.js'; import { CloudlyViewDns } from './cloudly-view-dns.js'; import { CloudlyViewImages } from './cloudly-view-images.js'; import { CloudlyViewLogs } from './cloudly-view-logs.js'; import { CloudlyViewMails } from './cloudly-view-mails.js'; import { CloudlyViewOverview } from './cloudly-view-overview.js'; import { CloudlyViewS3 } from './cloudly-view-s3.js'; import { CloudlyViewSecretBundles } from './cloudly-view-secretbundles.js'; import { CloudlyViewSecretGroups } from './cloudly-view-secretgroups.js'; import { CloudlyViewServices } from './cloudly-view-services.js'; declare global { interface HTMLElementTagNameMap { 'cvault-dashboard': CloudlyDashboard; } } @customElement('cloudly-dashboard') export class CloudlyDashboard extends DeesElement { @state() private identity: plugins.interfaces.data.IIdentity; @state() private data: appstate.IDataState = { secretGroups: [], secretBundles: [], clusters: [], }; constructor() { super(); document.title = `cloudly v${commitinfo.version}`; const subcription = appstate.dataState .select((stateArg) => stateArg) .subscribe((dataArg) => { this.data = dataArg; }); this.rxSubscriptions.push(subcription); } public static styles = [ cssManager.defaultStyles, css` .maincontainer { position: relative; width: 100vw; height: 100vh; } h1 { font-weight: 400; font-size: 24px; font-family: 'Cal Sans'; } `, ]; public render() { return html`