annotate light9/homepage/ServiceButtonRow.ts @ 2292:0a11698fecc4

look who just read https://lit.dev/docs/components/properties/#boolean-attributes
author drewp@bigasterisk.com
date Mon, 29 May 2023 23:37:08 -0700
parents e462853f1ef6
children ccd04278e357
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2033
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
1 import { LitElement, html, css } from "lit";
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
2 import { customElement, property } from "lit/decorators.js";
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
3 export { StatsLine } from "./StatsLine";
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
4
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
5 @customElement("service-button-row")
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
6 export class ServiceButtonRow extends LitElement {
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
7 @property() name: string = "?";
2292
0a11698fecc4 look who just read https://lit.dev/docs/components/properties/#boolean-attributes
drewp@bigasterisk.com
parents: 2280
diff changeset
8 @property({ type:Boolean, attribute: "metrics" }) hasMetrics: boolean = false;
2033
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
9 static styles = [
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
10 css`
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
11 :host {
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
12 padding-bottom: 10px;
2280
e462853f1ef6 redo homepage and metrics calcs. still a mess
drewp@bigasterisk.com
parents: 2037
diff changeset
13 border-bottom: 1px solid #333;
2033
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
14 }
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
15 a {
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
16 color: #7d7dec;
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
17 }
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
18 div {
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
19 display: flex;
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
20 justify-content: space-between;
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
21 padding: 2px 3px;
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
22 }
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
23 .left {
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
24 display: inline-block;
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
25 margin-right: 3px;
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
26 flex-grow: 1;
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
27 }
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
28 .window {
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
29 }
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
30 .serviceGrid > td {
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
31 border: 5px solid red;
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
32 display: inline-block;
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
33 }
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
34 .big {
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
35 font-size: 120%;
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
36 display: inline-block;
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
37 padding: 10px 0;
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
38 }
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
39
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
40 :host > div {
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
41 display: inline-block;
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
42 vertical-align: top;
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
43 }
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
44 :host > div:nth-child(2) {
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
45 width: 9em;
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
46 }
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
47 `,
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
48 ];
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
49
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
50 render() {
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
51 return html`
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
52 <div>
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
53 <div class="left"><a class="big" href="${this.name}/">${this.name}</a></div>
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
54 <div class="window"><button @click="${this.click}">window</button></div>
2280
e462853f1ef6 redo homepage and metrics calcs. still a mess
drewp@bigasterisk.com
parents: 2037
diff changeset
55 ${this.hasMetrics ? html`<div><a href="${this.name}/metrics">metrics</a></div>` : ""}
2033
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
56 </div>
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
57
2280
e462853f1ef6 redo homepage and metrics calcs. still a mess
drewp@bigasterisk.com
parents: 2037
diff changeset
58 ${this.hasMetrics ? html`<div id="stats"><stats-line name="${this.name}"></div>` : ""}
2033
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
59 `;
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
60 }
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
61
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
62 click() {
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
63 window.open(this.name + "/", "_blank", "scrollbars=1,resizable=1,titlebar=0,location=0");
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
64 }
224c4a1625d7 serve homepage with lit and vite
drewp@bigasterisk.com
parents:
diff changeset
65 }