godown 2.6.0 → 2.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/event-collection.d.ts +1 -1
- package/package.json +4 -4
- package/react/index.d.ts +0 -1
- package/react/index.d.ts.map +1 -1
- package/react/index.js +0 -3
- package/react/index.js.map +1 -1
- package/web-components/a/avatar-a.js +40 -40
- package/web-components/a/avatar-a.js.map +1 -1
- package/web-components/a/super-a.js +22 -22
- package/web-components/a/super-a.js.map +1 -1
- package/web-components/button/base-button.js +86 -86
- package/web-components/button/base-button.js.map +1 -1
- package/web-components/carousel/carousel-slider.d.ts +1 -1
- package/web-components/carousel/carousel-slider.d.ts.map +1 -1
- package/web-components/carousel/carousel-slider.js +70 -70
- package/web-components/carousel/carousel-slider.js.map +1 -1
- package/web-components/form/base-form.js +15 -15
- package/web-components/form/base-form.js.map +1 -1
- package/web-components/group/avatar-group.js +13 -13
- package/web-components/group/avatar-group.js.map +1 -1
- package/web-components/group/details-group.js +7 -7
- package/web-components/group/details-group.js.map +1 -1
- package/web-components/group/tab-group.js +45 -45
- package/web-components/group/tab-group.js.map +1 -1
- package/web-components/index.d.ts +0 -1
- package/web-components/index.d.ts.map +1 -1
- package/web-components/index.js +0 -1
- package/web-components/index.js.map +1 -1
- package/web-components/input/base-input.js +73 -73
- package/web-components/input/base-input.js.map +1 -1
- package/web-components/input/input.js +15 -15
- package/web-components/input/input.js.map +1 -1
- package/web-components/input/label-input.js +49 -49
- package/web-components/input/label-input.js.map +1 -1
- package/web-components/input/search-input.js +53 -53
- package/web-components/input/search-input.js.map +1 -1
- package/web-components/input/select-input.js +88 -88
- package/web-components/input/select-input.js.map +1 -1
- package/web-components/input/split-input.js +51 -51
- package/web-components/input/split-input.js.map +1 -1
- package/web-components/input/switch-input.js +36 -36
- package/web-components/input/switch-input.js.map +1 -1
- package/web-components/items/alert-item.js +32 -33
- package/web-components/items/alert-item.js.map +1 -1
- package/web-components/items/card-item.js +54 -54
- package/web-components/items/card-item.js.map +1 -1
- package/web-components/items/drag-box.js +8 -8
- package/web-components/items/drag-box.js.map +1 -1
- package/web-components/items/time-bar.js +8 -9
- package/web-components/items/time-bar.js.map +1 -1
- package/web-components/layout/divider-line.js +11 -11
- package/web-components/layout/divider-line.js.map +1 -1
- package/web-components/layout/flex-flow.js +7 -7
- package/web-components/layout/flex-flow.js.map +1 -1
- package/web-components/layout/nav-aside.js +14 -14
- package/web-components/layout/nav-aside.js.map +1 -1
- package/web-components/layout/nav-layout.js +26 -26
- package/web-components/layout/nav-layout.js.map +1 -1
- package/web-components/loading/loading-progress.d.ts +1 -1
- package/web-components/loading/loading-progress.d.ts.map +1 -1
- package/web-components/loading/loading-progress.js +28 -28
- package/web-components/loading/loading-progress.js.map +1 -1
- package/web-components/loading/skeleton-screen.js +19 -19
- package/web-components/loading/skeleton-screen.js.map +1 -1
- package/web-components/open/open-details.d.ts.map +1 -1
- package/web-components/open/open-details.js +73 -22
- package/web-components/open/open-details.js.map +1 -1
- package/web-components/open/open-dialog.d.ts +5 -16
- package/web-components/open/open-dialog.d.ts.map +1 -1
- package/web-components/open/open-dialog.js +92 -102
- package/web-components/open/open-dialog.js.map +1 -1
- package/web-components/open/open-offset.d.ts +0 -1
- package/web-components/open/open-offset.d.ts.map +1 -1
- package/web-components/open/open-offset.js +50 -53
- package/web-components/open/open-offset.js.map +1 -1
- package/web-components/open/open-tooltip.d.ts +2 -2
- package/web-components/open/open-tooltip.d.ts.map +1 -1
- package/web-components/open/open-tooltip.js +14 -15
- package/web-components/open/open-tooltip.js.map +1 -1
- package/web-components/open/open.d.ts +3 -2
- package/web-components/open/open.d.ts.map +1 -1
- package/web-components/open/open.js +13 -59
- package/web-components/open/open.js.map +1 -1
- package/web-components/text/clip-text.js +8 -8
- package/web-components/text/clip-text.js.map +1 -1
- package/web-components/text/overbreath-text.js +17 -17
- package/web-components/text/overbreath-text.js.map +1 -1
- package/web-components/text/typewriter-text.js +32 -32
- package/web-components/text/typewriter-text.js.map +1 -1
- package/web-components/view/route-view.d.ts +2 -2
- package/web-components/view/route-view.js +7 -7
- package/web-components/view/route-view.js.map +1 -1
- package/web-components/view/scroll-x.js +29 -29
- package/web-components/view/scroll-x.js.map +1 -1
- package/web-components/view/wrap-view.d.ts +1 -1
- package/web-components/view/wrap-view.js +15 -15
- package/web-components/view/wrap-view.js.map +1 -1
- package/open-list.d.ts +0 -2
- package/open-list.d.ts.map +0 -1
- package/open-list.js +0 -2
- package/open-list.js.map +0 -1
- package/web-components/layout/index.d.ts +0 -5
- package/web-components/layout/index.d.ts.map +0 -1
- package/web-components/layout/index.js +0 -6
- package/web-components/layout/index.js.map +0 -1
- package/web-components/open/open-list.d.ts +0 -20
- package/web-components/open/open-list.d.ts.map +0 -1
- package/web-components/open/open-list.js +0 -71
- package/web-components/open/open-list.js.map +0 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"open-dialog.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/open/open-dialog.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,
|
1
|
+
{"version":3,"file":"open-dialog.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/open/open-dialog.ts"],"names":[],"mappings":"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","sourcesContent":["import { css, CSSResultGroup, html, property, query } from \"../../deps.js\";\nimport { htmlSlot, type HTMLTemplate } from \"../../lib/templates.js\";\nimport { cssvar, cssvarValues, define } from \"../../root.js\";\nimport OpenableElement, { Direction9 } from \"./open.js\";\n\nconst defineName = \"open-dialog\";\n\n/**\n * OpenDialog similar to dialog.\n */\n@define(defineName)\nexport class OpenDialog extends OpenableElement {\n direction: Direction9 = \"center\";\n /**\n * Enable modal.\n */\n @property({ type: Boolean, reflect: true }) modal = false;\n /**\n * Enable scale.\n */\n @property({ type: Boolean }) scale = false;\n /**\n * Scale gap.\n */\n @property({ type: Number }) gap = 0.2;\n /**\n * Exit key, which can be multiple.\n */\n @property({ type: String }) key = \"Escape\";\n\n @query(\"div\") _div: HTMLDivElement;\n\n static styles: CSSResultGroup = [\n OpenableElement.styles,\n css`\n :host {\n display: block;\n transition:\n all 0.3s ease-in-out,\n color 0s,\n background 0s;\n height: fit-content;\n }\n `,\n css`\n :host {\n ${cssvar}--background: rgb(var(${cssvarValues.mainRGB}) / 0%);\n ${cssvar}--background-modal: rgb(var(${cssvarValues.mainRGB}) / 15%);\n position: fixed;\n height: 100%;\n width: 100%;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n transition: all 0.3s;\n display: flex;\n visibility: hidden;\n background: var(${cssvar}--background);\n pointer-events: none;\n }\n\n :host([open]) {\n visibility: visible;\n }\n\n :host([open][modal]) {\n pointer-events: all;\n backdrop-filter: blur(0.25px);\n background: var(${cssvar}--background-modal);\n }\n\n :host([open]) slot {\n opacity: 1 !important;\n transform: translateY(0) translateX(0) !important;\n }\n\n div {\n height: 100%;\n width: 100%;\n display: flex;\n transition: inherit;\n transform: scale(var(--s));\n }\n\n slot {\n display: block;\n width: fit-content;\n height: fit-content;\n margin: auto;\n opacity: 0;\n transition: inherit;\n pointer-events: all;\n }\n\n div {\n position: relative;\n }\n\n slot {\n position: absolute;\n }\n\n [class^=\"top\"] slot {\n top: 0;\n }\n\n [class^=\"bottom\"] slot {\n bottom: 0;\n }\n\n [class$=\"right\"] slot {\n right: 0%;\n }\n\n [class$=\"left\"] slot {\n left: 0%;\n }\n\n div[class$=\"center\"],\n .top,\n .left,\n .right,\n .bottom {\n align-items: center;\n justify-content: center;\n align-items: center;\n justify-content: center;\n }\n `,\n ];\n\n protected render(): HTMLTemplate {\n return html`<div style=\"--s:1\" class=\"${this.direction}\">${htmlSlot()}</div>`;\n }\n\n connectedCallback() {\n super.connectedCallback();\n this.addEvent(this, \"submit\", this._handelSubmit);\n if (this.scale && this.direction === \"center\") {\n this.addEvent(this, \"wheel\", this._handleWheel);\n }\n if (this.key) {\n this.addEvent(document, \"keydown\", this._handleKeydown.bind(this));\n }\n if (this.open) {\n this.show();\n }\n }\n\n showModal() {\n this.modal = true;\n this.show();\n }\n\n protected _handleWheel(e: any) {\n let scale = Number(this._div.style.getPropertyValue(\"--s\"));\n if (e.deltaY > 0) {\n scale -= this.gap;\n } else {\n scale += this.gap;\n }\n this._div.style.setProperty(\"--s\", `${scale}`);\n }\n\n protected _handleKeydown(e: KeyboardEvent) {\n const keys = this.key.split(/[^a-zA-Z0-9]/).filter((s) => s);\n if (keys.includes(e.key) || keys.includes(e.code)) {\n this.close();\n }\n }\n\n protected _handelSubmit(e: SubmitEvent) {\n if ((e.target as HTMLFormElement).method === \"dialog\") {\n this.close();\n }\n }\n}\n\nexport default OpenDialog;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"open-dialog\": OpenDialog;\n }\n}\n"]}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"open-offset.d.ts","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/open/open-offset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,cAAc,EAAe,MAAM,eAAe,CAAC;AACtE,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAGrE,OAAO,EAAE,KAAK,UAAU,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAI7D;;;;GAIG;AACH,qBACa,UAAW,SAAQ,eAAe;IAC7C,SAAS,EAAE,UAAU,CAAC;
|
1
|
+
{"version":3,"file":"open-offset.d.ts","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/open/open-offset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,cAAc,EAAe,MAAM,eAAe,CAAC;AACtE,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAGrE,OAAO,EAAE,KAAK,UAAU,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAI7D;;;;GAIG;AACH,qBACa,UAAW,SAAQ,eAAe;IAC7C,SAAS,EAAE,UAAU,CAAC;IAEN,OAAO,CAAC,SAAS,CAAc;IAE/C,MAAM,CAAC,MAAM,iBAiDO;IAEpB,SAAS,CAAC,MAAM,IAAI,YAAY;IAOhC,iBAAiB;cAKD,YAAY;IAM5B,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,UAAU;IAQpC,SAAS,CAAC,aAAa;IAKvB,MAAM;CA2BP;AAED,eAAe,UAAU,CAAC;AAE1B,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,aAAa,EAAE,UAAU,CAAC;KAC3B;CACF"}
|
@@ -11,56 +11,6 @@ const defineName = "open-offset";
|
|
11
11
|
* Content can be opened in 4 directions.
|
12
12
|
*/
|
13
13
|
let OpenOffset = class OpenOffset extends OpenableElement {
|
14
|
-
static { this.styles = [
|
15
|
-
css `
|
16
|
-
:host {
|
17
|
-
display: block;
|
18
|
-
height: fit-content;
|
19
|
-
width: fit-content;
|
20
|
-
}
|
21
|
-
|
22
|
-
span {
|
23
|
-
user-select: none;
|
24
|
-
}
|
25
|
-
|
26
|
-
main {
|
27
|
-
height: inherit;
|
28
|
-
width: inherit;
|
29
|
-
display: flex;
|
30
|
-
position: relative;
|
31
|
-
align-items: center;
|
32
|
-
}
|
33
|
-
|
34
|
-
aside {
|
35
|
-
background-color: inherit;
|
36
|
-
visibility: hidden;
|
37
|
-
top: 100%;
|
38
|
-
z-index: 1;
|
39
|
-
}
|
40
|
-
|
41
|
-
:host([open]) aside {
|
42
|
-
visibility: visible;
|
43
|
-
}
|
44
|
-
|
45
|
-
:host([float]) aside {
|
46
|
-
position: absolute;
|
47
|
-
}
|
48
|
-
`,
|
49
|
-
css `
|
50
|
-
.left {
|
51
|
-
flex-direction: row-reverse;
|
52
|
-
}
|
53
|
-
.right {
|
54
|
-
flex-direction: row;
|
55
|
-
}
|
56
|
-
.top {
|
57
|
-
flex-direction: column-reverse;
|
58
|
-
}
|
59
|
-
.bottom {
|
60
|
-
flex-direction: column;
|
61
|
-
}
|
62
|
-
`,
|
63
|
-
]; }
|
64
14
|
render() {
|
65
15
|
return html `<main class="${this.direction || "bottom"}">
|
66
16
|
<span>${this.summary || htmlSlot("summary")}</span>
|
@@ -119,9 +69,56 @@ let OpenOffset = class OpenOffset extends OpenableElement {
|
|
119
69
|
}
|
120
70
|
}
|
121
71
|
};
|
122
|
-
|
123
|
-
|
124
|
-
|
72
|
+
OpenOffset.styles = [
|
73
|
+
css `
|
74
|
+
:host {
|
75
|
+
display: block;
|
76
|
+
height: fit-content;
|
77
|
+
width: fit-content;
|
78
|
+
}
|
79
|
+
|
80
|
+
span {
|
81
|
+
user-select: none;
|
82
|
+
}
|
83
|
+
|
84
|
+
main {
|
85
|
+
height: inherit;
|
86
|
+
width: inherit;
|
87
|
+
display: flex;
|
88
|
+
position: relative;
|
89
|
+
align-items: center;
|
90
|
+
}
|
91
|
+
|
92
|
+
aside {
|
93
|
+
background-color: inherit;
|
94
|
+
visibility: hidden;
|
95
|
+
top: 100%;
|
96
|
+
z-index: 1;
|
97
|
+
}
|
98
|
+
|
99
|
+
:host([open]) aside {
|
100
|
+
visibility: visible;
|
101
|
+
}
|
102
|
+
|
103
|
+
:host([float]) aside {
|
104
|
+
position: absolute;
|
105
|
+
}
|
106
|
+
`,
|
107
|
+
css `
|
108
|
+
.left {
|
109
|
+
flex-direction: row-reverse;
|
110
|
+
}
|
111
|
+
.right {
|
112
|
+
flex-direction: row;
|
113
|
+
}
|
114
|
+
.top {
|
115
|
+
flex-direction: column-reverse;
|
116
|
+
}
|
117
|
+
.bottom {
|
118
|
+
flex-direction: column;
|
119
|
+
}
|
120
|
+
`,
|
121
|
+
];
|
125
122
|
__decorate([
|
126
123
|
query("aside")
|
127
124
|
], OpenOffset.prototype, "_balancer", void 0);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"open-offset.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/open/open-offset.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAuB,IAAI,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAqB,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAmB,eAAe,EAAE,MAAM,WAAW,CAAC;AAE7D,MAAM,UAAU,GAAG,aAAa,CAAC;AAEjC;;;;GAIG;AAEI,IAAM,UAAU,GAAhB,MAAM,UAAW,SAAQ,eAAe;
|
1
|
+
{"version":3,"file":"open-offset.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/open/open-offset.ts"],"names":[],"mappings":"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","sourcesContent":["import { css, type CSSResultGroup, html, query } from \"../../deps.js\";\nimport { htmlSlot, type HTMLTemplate } from \"../../lib/templates.js\";\nimport { debounce } from \"../../lib/utils.js\";\nimport { define } from \"../../root.js\";\nimport { type Direction4, OpenableElement } from \"./open.js\";\n\nconst defineName = \"open-offset\";\n\n/**\n * OpenOffset will calculate a lateral offset to try to keep the content within the allowable range.\n *\n * Content can be opened in 4 directions.\n */\n@define(defineName)\nexport class OpenOffset extends OpenableElement {\n direction: Direction4;\n\n @query(\"aside\") private _balancer: HTMLElement;\n\n static styles = [\n css`\n :host {\n display: block;\n height: fit-content;\n width: fit-content;\n }\n\n span {\n user-select: none;\n }\n\n main {\n height: inherit;\n width: inherit;\n display: flex;\n position: relative;\n align-items: center;\n }\n\n aside {\n background-color: inherit;\n visibility: hidden;\n top: 100%;\n z-index: 1;\n }\n\n :host([open]) aside {\n visibility: visible;\n }\n\n :host([float]) aside {\n position: absolute;\n }\n `,\n css`\n .left {\n flex-direction: row-reverse;\n }\n .right {\n flex-direction: row;\n }\n .top {\n flex-direction: column-reverse;\n }\n .bottom {\n flex-direction: column;\n }\n `,\n ] as CSSResultGroup;\n\n protected render(): HTMLTemplate {\n return html`<main class=\"${this.direction || \"bottom\"}\">\n <span>${this.summary || htmlSlot(\"summary\")}</span>\n <aside>${htmlSlot()}</aside>\n </main>`;\n }\n\n connectedCallback() {\n super.connectedCallback();\n this.addEvent(window, \"resize\", debounce(this._handelResize.bind(this), 500));\n }\n\n protected async firstUpdated() {\n await this.updateComplete;\n this.addEvent(document, \"click\", this._handelClick.bind(this));\n this.resize();\n }\n\n protected _handelClick(e: MouseEvent) {\n if (e.target === this) {\n this.show();\n } else if (!this.contains(e.target as HTMLElement)) {\n this.close();\n }\n }\n\n protected _handelResize() {\n this._balancer.style.transform = \"none\";\n this.resize();\n }\n\n resize() {\n if (!this._balancer) {\n return;\n }\n const offsets = this.offsetParent?.getBoundingClientRect() || document.body.getBoundingClientRect();\n const { left, right, top, bottom, height } = this._balancer.getBoundingClientRect();\n if (this.direction === \"left\" || this.direction === \"right\") {\n if (top < offsets.y) {\n const topTranslate = -top;\n this._balancer.style.transform = `translateY(${topTranslate}px)`;\n }\n if (bottom > offsets.bottom) {\n const bottomTranslate = offsets.height - (top + height);\n this._balancer.style.transform = `translateY(${bottomTranslate}px)`;\n }\n } else {\n if (right > offsets.right) {\n const rightTranslate = offsets.width - (right - offsets.x);\n this._balancer.style.transform = `translateX(${rightTranslate}px)`;\n } else if (left < 0) {\n const leftTranslate = -left;\n this._balancer.style.transform = `translateX(${leftTranslate}px)`;\n } else {\n this._balancer.style.transform = \"\";\n }\n }\n }\n}\n\nexport default OpenOffset;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"open-offset\": OpenOffset;\n }\n}\n"]}
|
@@ -1,3 +1,4 @@
|
|
1
|
+
import { CSSResultGroup } from "../../deps.js";
|
1
2
|
import { type HTMLTemplate } from "../../lib/templates.js";
|
2
3
|
import { type Direction8, OpenableElement } from "./open.js";
|
3
4
|
/**
|
@@ -11,9 +12,8 @@ export declare class OpenTooltip extends OpenableElement {
|
|
11
12
|
* Tip content align.
|
12
13
|
*/
|
13
14
|
align: "center" | "flex-star" | "flex-end" | "";
|
14
|
-
static styles:
|
15
|
+
static styles: CSSResultGroup;
|
15
16
|
protected render(): HTMLTemplate;
|
16
|
-
connectedCallback(): void;
|
17
17
|
}
|
18
18
|
export default OpenTooltip;
|
19
19
|
declare global {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"open-tooltip.d.ts","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/open/open-tooltip.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"open-tooltip.d.ts","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/open/open-tooltip.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,cAAc,EAAkB,MAAM,eAAe,CAAC;AACpE,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAErE,OAAO,EAAE,KAAK,UAAU,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAI7D;;;;GAIG;AACH,qBACa,WAAY,SAAQ,eAAe;IAC9C,SAAS,EAAE,UAAU,GAAG,EAAE,CAAC;IAC3B;;OAEG;IACS,KAAK,EAAE,QAAQ,GAAG,WAAW,GAAG,UAAU,GAAG,EAAE,CAAM;IAEjE,MAAM,CAAC,MAAM,EAAE,cAAc,CAgD3B;IAEF,SAAS,CAAC,MAAM,IAAI,YAAY;CAMjC;AAED,eAAe,WAAW,CAAC;AAE3B,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,cAAc,EAAE,WAAW,CAAC;KAC7B;CACF"}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import { __decorate } from "tslib";
|
2
2
|
import { css, html, property } from "../../deps.js";
|
3
3
|
import { htmlSlot } from "../../lib/templates.js";
|
4
|
-
import { define } from "../../root.js";
|
4
|
+
import { cssvarValues, define } from "../../root.js";
|
5
5
|
import { OpenableElement } from "./open.js";
|
6
6
|
const defineName = "open-tooltip";
|
7
7
|
/**
|
@@ -17,9 +17,18 @@ let OpenTooltip = class OpenTooltip extends OpenableElement {
|
|
17
17
|
*/
|
18
18
|
this.align = "";
|
19
19
|
}
|
20
|
-
|
21
|
-
|
20
|
+
render() {
|
21
|
+
return html `<main style="justify-content:${this.align || "inherit"}">
|
22
|
+
${htmlSlot()}
|
23
|
+
<aside class="${this.direction || "top"}">${this.summary || htmlSlot("summary")}</aside>
|
24
|
+
</main>`;
|
25
|
+
}
|
26
|
+
};
|
27
|
+
OpenTooltip.styles = [
|
28
|
+
OpenableElement.styles,
|
29
|
+
css `
|
22
30
|
:host {
|
31
|
+
color: var(${cssvarValues.text});
|
23
32
|
display: inline-flex;
|
24
33
|
transition: 0.3s ease-in-out;
|
25
34
|
justify-content: center;
|
@@ -49,7 +58,7 @@ let OpenTooltip = class OpenTooltip extends OpenableElement {
|
|
49
58
|
opacity: 1;
|
50
59
|
}
|
51
60
|
`,
|
52
|
-
|
61
|
+
css `
|
53
62
|
aside[class^="top"] {
|
54
63
|
bottom: 100%;
|
55
64
|
}
|
@@ -63,17 +72,7 @@ let OpenTooltip = class OpenTooltip extends OpenableElement {
|
|
63
72
|
right: 100%;
|
64
73
|
}
|
65
74
|
`,
|
66
|
-
|
67
|
-
render() {
|
68
|
-
return html `<main style="justify-content:${this.align || "inherit"}">
|
69
|
-
${htmlSlot()}
|
70
|
-
<aside class="${this.direction || "top"}">${this.summary || htmlSlot("summary")}</aside>
|
71
|
-
</main>`;
|
72
|
-
}
|
73
|
-
connectedCallback() {
|
74
|
-
super.connectedCallback();
|
75
|
-
}
|
76
|
-
};
|
75
|
+
];
|
77
76
|
__decorate([
|
78
77
|
property()
|
79
78
|
], OpenTooltip.prototype, "align", void 0);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"open-tooltip.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/open/open-tooltip.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,
|
1
|
+
{"version":3,"file":"open-tooltip.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/open/open-tooltip.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAkB,IAAI,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAqB,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAmB,eAAe,EAAE,MAAM,WAAW,CAAC;AAE7D,MAAM,UAAU,GAAG,cAAc,CAAC;AAElC;;;;GAIG;AAEI,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,eAAe;IAAzC;;QAEL;;WAEG;QACS,UAAK,GAA6C,EAAE,CAAC;IA0DnE,CAAC;IANW,MAAM;QACd,OAAO,IAAI,CAAA,gCAAgC,IAAI,CAAC,KAAK,IAAI,SAAS;QAC9D,QAAQ,EAAE;sBACI,IAAI,CAAC,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC,OAAO,IAAI,QAAQ,CAAC,SAAS,CAAC;YACzE,CAAC;IACX,CAAC;;AAvDM,kBAAM,GAAmB;IAC9B,eAAe,CAAC,MAAM;IACtB,GAAG,CAAA;;qBAEc,YAAY,CAAC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA6BjC;IACD,GAAG,CAAA;;;;;;;;;;;;;KAaF;CACF,AAhDY,CAgDX;AAlDU;IAAX,QAAQ,EAAE;0CAAsD;AALtD,WAAW;IADvB,MAAM,CAAC,UAAU,CAAC;GACN,WAAW,CA+DvB;;AAED,eAAe,WAAW,CAAC","sourcesContent":["import { css, CSSResultGroup, html, property } from \"../../deps.js\";\nimport { htmlSlot, type HTMLTemplate } from \"../../lib/templates.js\";\nimport { cssvarValues, define } from \"../../root.js\";\nimport { type Direction8, OpenableElement } from \"./open.js\";\n\nconst defineName = \"open-tooltip\";\n\n/**\n * OpenTooltip provide tooltip for slot elements, summary as the tips content.\n *\n * Content can be opened in 8 directions.\n */\n@define(defineName)\nexport class OpenTooltip extends OpenableElement {\n direction: Direction8 | \"\";\n /**\n * Tip content align.\n */\n @property() align: \"center\" | \"flex-star\" | \"flex-end\" | \"\" = \"\";\n\n static styles: CSSResultGroup = [\n OpenableElement.styles,\n css`\n :host {\n color: var(${cssvarValues.text});\n display: inline-flex;\n transition: 0.3s ease-in-out;\n justify-content: center;\n }\n\n main {\n display: inline-flex;\n align-items: center;\n position: relative;\n transition: inherit;\n }\n\n main,\n aside {\n transition: inherit;\n white-space: nowrap;\n }\n\n aside {\n opacity: 0;\n position: absolute;\n transition-property: opacity;\n }\n\n :host(:hover) aside,\n :host([open]) aside {\n opacity: 1;\n }\n `,\n css`\n aside[class^=\"top\"] {\n bottom: 100%;\n }\n aside[class^=\"bottom\"] {\n top: 100%;\n }\n aside[class$=\"right\"] {\n left: 100%;\n }\n aside[class$=\"left\"] {\n right: 100%;\n }\n `,\n ];\n\n protected render(): HTMLTemplate {\n return html`<main style=\"justify-content:${this.align || \"inherit\"}\">\n ${htmlSlot()}\n <aside class=\"${this.direction || \"top\"}\">${this.summary || htmlSlot(\"summary\")}</aside>\n </main>`;\n }\n}\n\nexport default OpenTooltip;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"open-tooltip\": OpenTooltip;\n }\n}\n"]}
|
@@ -1,9 +1,10 @@
|
|
1
1
|
import { type CSSResultGroup, type PropertyValueMap } from "../../deps.js";
|
2
|
-
import { EventsNames } from "../../lib/event-collection.js";
|
2
|
+
import { type EventsNames } from "../../lib/event-collection.js";
|
3
3
|
import { GodownElement } from "../../root.js";
|
4
4
|
export type Direction4 = "left" | "right" | "top" | "bottom";
|
5
5
|
export type Direction5 = Direction4 | "center";
|
6
6
|
export type Direction8 = Direction4 | "top-left" | "top-right" | "bottom-left" | "bottom-right";
|
7
|
+
export type Direction9 = Direction8 | "center";
|
7
8
|
export type OnEvents = EventsNames | "";
|
8
9
|
export declare class OpenableElement extends GodownElement {
|
9
10
|
/**
|
@@ -25,7 +26,7 @@ export declare class OpenableElement extends GodownElement {
|
|
25
26
|
/**
|
26
27
|
* Direction of appearance.
|
27
28
|
*/
|
28
|
-
direction:
|
29
|
+
direction: Direction9 | "";
|
29
30
|
static styles: CSSResultGroup;
|
30
31
|
toggle(to?: boolean): void;
|
31
32
|
close(): void;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"open.d.ts","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/open/open.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,cAAc,EAAY,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAC1F,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;
|
1
|
+
{"version":3,"file":"open.d.ts","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/open/open.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,cAAc,EAAY,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAC1F,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,CAAC;AAE7D,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,QAAQ,CAAC;AAE/C,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,WAAW,GAAG,aAAa,GAAG,cAAc,CAAC;AAEhG,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,QAAQ,CAAC;AAE/C,MAAM,MAAM,QAAQ,GAAG,WAAW,GAAG,EAAE,CAAC;AAExC,qBAAa,eAAgB,SAAQ,aAAa;IAChD;;OAEG;IACS,OAAO,SAAM;IACzB;;OAEG;IACyC,KAAK,UAAS;IAC1D;;OAEG;IACyC,IAAI,UAAS;IACzD;;OAEG;IACS,EAAE,EAAE,QAAQ,CAAM;IAC9B;;OAEG;IACS,SAAS,EAAE,UAAU,GAAG,EAAE,CAAM;IAE5C,MAAM,CAAC,MAAM,iBAYO;IAEpB,MAAM,CAAC,EAAE,UAAa;IAItB,KAAK;IAIL,IAAI;IAIJ,SAAS,CAAC,OAAO,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,IAAI,CAAC;IAQ3D,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,UAAU;CAGrC;AAED,eAAe,eAAe,CAAC"}
|
@@ -25,65 +25,6 @@ export class OpenableElement extends GodownElement {
|
|
25
25
|
*/
|
26
26
|
this.direction = "";
|
27
27
|
}
|
28
|
-
static { this.styles = [
|
29
|
-
GodownElement.styles,
|
30
|
-
css `
|
31
|
-
:host {
|
32
|
-
display: block;
|
33
|
-
transition:
|
34
|
-
all 0.3s ease-in-out,
|
35
|
-
color 0s,
|
36
|
-
background 0s;
|
37
|
-
height: fit-content;
|
38
|
-
}
|
39
|
-
|
40
|
-
span {
|
41
|
-
display: inline-flex;
|
42
|
-
align-items: center;
|
43
|
-
flex: 1;
|
44
|
-
white-space: nowrap;
|
45
|
-
}
|
46
|
-
|
47
|
-
dl {
|
48
|
-
height: 100%;
|
49
|
-
position: relative;
|
50
|
-
overflow: hidden;
|
51
|
-
}
|
52
|
-
|
53
|
-
dt {
|
54
|
-
display: flex;
|
55
|
-
flex-wrap: nowrap;
|
56
|
-
justify-content: space-between;
|
57
|
-
background: inherit;
|
58
|
-
align-items: center;
|
59
|
-
height: 100%;
|
60
|
-
}
|
61
|
-
|
62
|
-
* {
|
63
|
-
transition: inherit;
|
64
|
-
}
|
65
|
-
|
66
|
-
dd {
|
67
|
-
overflow: hidden;
|
68
|
-
display: grid;
|
69
|
-
grid-template-rows: 0fr;
|
70
|
-
}
|
71
|
-
|
72
|
-
section {
|
73
|
-
min-height: 0;
|
74
|
-
overflow: hidden;
|
75
|
-
}
|
76
|
-
|
77
|
-
:host([open]) dd {
|
78
|
-
grid-template-rows: 1fr;
|
79
|
-
}
|
80
|
-
|
81
|
-
:host([float]) dd {
|
82
|
-
top: 100%;
|
83
|
-
position: absolute;
|
84
|
-
}
|
85
|
-
`,
|
86
|
-
]; }
|
87
28
|
toggle(to = !this.open) {
|
88
29
|
this.open = to;
|
89
30
|
}
|
@@ -104,6 +45,19 @@ export class OpenableElement extends GodownElement {
|
|
104
45
|
this.toggle();
|
105
46
|
}
|
106
47
|
}
|
48
|
+
OpenableElement.styles = [
|
49
|
+
GodownElement.styles,
|
50
|
+
css `
|
51
|
+
:host {
|
52
|
+
display: block;
|
53
|
+
transition:
|
54
|
+
all 0.3s ease-in-out,
|
55
|
+
color 0s,
|
56
|
+
background 0s;
|
57
|
+
height: fit-content;
|
58
|
+
}
|
59
|
+
`,
|
60
|
+
];
|
107
61
|
__decorate([
|
108
62
|
property()
|
109
63
|
], OpenableElement.prototype, "summary", void 0);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"open.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/open/open.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAuB,QAAQ,EAAyB,MAAM,eAAe,CAAC;AAE1F,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;
|
1
|
+
{"version":3,"file":"open.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/open/open.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAuB,QAAQ,EAAyB,MAAM,eAAe,CAAC;AAE1F,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAY9C,MAAM,OAAO,eAAgB,SAAQ,aAAa;IAAlD;;QACE;;WAEG;QACS,YAAO,GAAG,EAAE,CAAC;QACzB;;WAEG;QACyC,UAAK,GAAG,KAAK,CAAC;QAC1D;;WAEG;QACyC,SAAI,GAAG,KAAK,CAAC;QACzD;;WAEG;QACS,OAAE,GAAa,EAAE,CAAC;QAC9B;;WAEG;QACS,cAAS,GAAoB,EAAE,CAAC;IAuC9C,CAAC;IAvBC,MAAM,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI;QACpB,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;IACjB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;IACpB,CAAC;IAED,IAAI;QACF,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAES,OAAO,CAAC,iBAAyC;QACzD,MAAM,IAAI,GAAG,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC3C,IAAI,OAAO,IAAI,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;IAED,6DAA6D;IACnD,YAAY,CAAC,CAAa;QAClC,IAAI,CAAC,MAAM,EAAE,CAAC;IAChB,CAAC;;AApCM,sBAAM,GAAG;IACd,aAAa,CAAC,MAAM;IACpB,GAAG,CAAA;;;;;;;;;KASF;CACgB,AAZN,CAYO;AA9BR;IAAX,QAAQ,EAAE;gDAAc;AAImB;IAA3C,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;8CAAe;AAId;IAA3C,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;6CAAc;AAI7C;IAAX,QAAQ,EAAE;2CAAmB;AAIlB;IAAX,QAAQ,EAAE;kDAAiC;AAyC9C,eAAe,eAAe,CAAC","sourcesContent":["import { css, type CSSResultGroup, property, type PropertyValueMap } from \"../../deps.js\";\nimport { type EventsNames } from \"../../lib/event-collection.js\";\nimport { GodownElement } from \"../../root.js\";\n\nexport type Direction4 = \"left\" | \"right\" | \"top\" | \"bottom\";\n\nexport type Direction5 = Direction4 | \"center\";\n\nexport type Direction8 = Direction4 | \"top-left\" | \"top-right\" | \"bottom-left\" | \"bottom-right\";\n\nexport type Direction9 = Direction8 | \"center\";\n\nexport type OnEvents = EventsNames | \"\";\n\nexport class OpenableElement extends GodownElement {\n /**\n * Summary text.\n */\n @property() summary = \"\";\n /**\n * Make the content float.\n */\n @property({ type: Boolean, reflect: true }) float = false;\n /**\n * Open the content.\n */\n @property({ type: Boolean, reflect: true }) open = false;\n /**\n * Enable event mode.\n */\n @property() on: OnEvents = \"\";\n /**\n * Direction of appearance.\n */\n @property() direction: Direction9 | \"\" = \"\";\n\n static styles = [\n GodownElement.styles,\n css`\n :host {\n display: block;\n transition:\n all 0.3s ease-in-out,\n color 0s,\n background 0s;\n height: fit-content;\n }\n `,\n ] as CSSResultGroup;\n\n toggle(to = !this.open) {\n this.open = to;\n }\n\n close() {\n this.open = false;\n }\n\n show() {\n this.open = true;\n }\n\n protected updated(changedProperties: PropertyValueMap<this>) {\n const open = changedProperties.get(\"open\");\n if (typeof open === typeof !0) {\n this.dispatchEvent(new CustomEvent(\"change\", { detail: this.open }));\n }\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n protected _handelClick(_: MouseEvent) {\n this.toggle();\n }\n}\n\nexport default OpenableElement;\n"]}
|
@@ -15,9 +15,13 @@ let ClipText = class ClipText extends GodownElement {
|
|
15
15
|
*/
|
16
16
|
this.text = "";
|
17
17
|
}
|
18
|
-
|
19
|
-
|
20
|
-
|
18
|
+
render() {
|
19
|
+
return this.text || htmlSlot();
|
20
|
+
}
|
21
|
+
};
|
22
|
+
ClipText.styles = [
|
23
|
+
GodownElement.styles,
|
24
|
+
css `
|
21
25
|
:host {
|
22
26
|
${cssvarScope}--clip-background: var(${cssvar}--clip-background);
|
23
27
|
background: var(${cssvarScope}--clip-background);
|
@@ -28,11 +32,7 @@ let ClipText = class ClipText extends GodownElement {
|
|
28
32
|
display: inline-flex;
|
29
33
|
}
|
30
34
|
`,
|
31
|
-
|
32
|
-
render() {
|
33
|
-
return this.text || htmlSlot();
|
34
|
-
}
|
35
|
-
};
|
35
|
+
];
|
36
36
|
__decorate([
|
37
37
|
property()
|
38
38
|
], ClipText.prototype, "text", void 0);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"clip-text.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/text/clip-text.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAuB,QAAQ,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAqB,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE3E,MAAM,UAAU,GAAG,WAAW,CAAC;AAC/B,MAAM,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;AAE5C;;GAEG;AAEI,IAAM,QAAQ,GAAd,MAAM,QAAS,SAAQ,aAAa;IAApC;;QACL;;WAEG;QACS,SAAI,GAAG,EAAE,CAAC;IAoBxB,CAAC;
|
1
|
+
{"version":3,"file":"clip-text.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/text/clip-text.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAuB,QAAQ,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAqB,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE3E,MAAM,UAAU,GAAG,WAAW,CAAC;AAC/B,MAAM,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;AAE5C;;GAEG;AAEI,IAAM,QAAQ,GAAd,MAAM,QAAS,SAAQ,aAAa;IAApC;;QACL;;WAEG;QACS,SAAI,GAAG,EAAE,CAAC;IAoBxB,CAAC;IAHW,MAAM;QACd,OAAO,IAAI,CAAC,IAAI,IAAI,QAAQ,EAAE,CAAC;IACjC,CAAC;;AAjBM,eAAM,GAAG;IACd,aAAa,CAAC,MAAM;IACpB,GAAG,CAAA;;UAEG,WAAW,0BAA0B,MAAM;0BAC3B,WAAW;;;;;;;KAOhC;CACgB,AAbN,CAaO;AAfR;IAAX,QAAQ,EAAE;sCAAW;AAJX,QAAQ;IADpB,MAAM,CAAC,UAAU,CAAC;GACN,QAAQ,CAwBpB;;AAED,eAAe,QAAQ,CAAC","sourcesContent":["import { css, type CSSResultGroup, property } from \"../../deps.js\";\nimport { htmlSlot, type HTMLTemplate } from \"../../lib/templates.js\";\nimport { createScope, cssvar, define, GodownElement } from \"../../root.js\";\n\nconst defineName = \"clip-text\";\nconst cssvarScope = createScope(defineName);\n\n/**\n * ClipText renders a gradient text.\n */\n@define(defineName)\nexport class ClipText extends GodownElement {\n /**\n * The text to be clipped.\n */\n @property() text = \"\";\n\n static styles = [\n GodownElement.styles,\n css`\n :host {\n ${cssvarScope}--clip-background: var(${cssvar}--clip-background);\n background: var(${cssvarScope}--clip-background);\n color: transparent;\n -webkit-text-fill-color: transparent;\n background-clip: text !important;\n -webkit-background-clip: text !important;\n display: inline-flex;\n }\n `,\n ] as CSSResultGroup;\n\n protected render(): HTMLTemplate | string {\n return this.text || htmlSlot();\n }\n}\n\nexport default ClipText;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"clip-text\": ClipText;\n }\n}\n"]}
|
@@ -20,9 +20,19 @@ let OverbreathText = class OverbreathText extends GodownElement {
|
|
20
20
|
// As t2.
|
21
21
|
this.t3 = "";
|
22
22
|
}
|
23
|
-
|
24
|
-
|
25
|
-
|
23
|
+
render() {
|
24
|
+
return [this.t1, this.t2, this.t3].map(this.renderText);
|
25
|
+
}
|
26
|
+
renderText(text) {
|
27
|
+
return html `<span class="rel">
|
28
|
+
<span class="bg">${text}</span>
|
29
|
+
<span class="fg">${text}</span>
|
30
|
+
</span>`;
|
31
|
+
}
|
32
|
+
};
|
33
|
+
OverbreathText.styles = [
|
34
|
+
GodownElement.styles,
|
35
|
+
css `
|
26
36
|
:host {
|
27
37
|
${cssvarScope}--1-1: #ae0ca5;
|
28
38
|
${cssvarScope}--1-2: #ffd802;
|
@@ -36,7 +46,7 @@ let OverbreathText = class OverbreathText extends GodownElement {
|
|
36
46
|
${cssvarScope}--3: linear-gradient(var(${cssvarScope}--deg), var(${cssvarScope}--3-1), var(${cssvarScope}--3-2));
|
37
47
|
}
|
38
48
|
`,
|
39
|
-
|
49
|
+
css `
|
40
50
|
:host {
|
41
51
|
display: flex;
|
42
52
|
margin: auto;
|
@@ -104,7 +114,7 @@ let OverbreathText = class OverbreathText extends GodownElement {
|
|
104
114
|
animation: text3 8s infinite;
|
105
115
|
}
|
106
116
|
`,
|
107
|
-
|
117
|
+
css `
|
108
118
|
@keyframes lg1 {
|
109
119
|
0%,
|
110
120
|
16.667%,
|
@@ -184,7 +194,7 @@ let OverbreathText = class OverbreathText extends GodownElement {
|
|
184
194
|
}
|
185
195
|
}
|
186
196
|
`,
|
187
|
-
|
197
|
+
css `
|
188
198
|
span.bg {
|
189
199
|
${cssvarScope}--clip-background: var(${cssvar}--clip-background);
|
190
200
|
background: var(${cssvarScope}--clip-background);
|
@@ -197,17 +207,7 @@ let OverbreathText = class OverbreathText extends GodownElement {
|
|
197
207
|
display: inline-flex;
|
198
208
|
}
|
199
209
|
`,
|
200
|
-
|
201
|
-
render() {
|
202
|
-
return [this.t1, this.t2, this.t3].map(this.renderText);
|
203
|
-
}
|
204
|
-
renderText(text) {
|
205
|
-
return html `<span class="rel">
|
206
|
-
<span class="bg">${text}</span>
|
207
|
-
<span class="fg">${text}</span>
|
208
|
-
</span>`;
|
209
|
-
}
|
210
|
-
};
|
210
|
+
];
|
211
211
|
__decorate([
|
212
212
|
property()
|
213
213
|
], OverbreathText.prototype, "t1", void 0);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"overbreath-text.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/text/overbreath-text.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAuB,IAAI,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE3E,MAAM,UAAU,GAAG,iBAAiB,CAAC;AACrC,MAAM,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;AAE5C;;;;GAIG;AAEI,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,aAAa;IAA1C;;QACL;;WAEG;QACS,OAAE,GAAG,EAAE,CAAC;QACpB,SAAS;QACG,OAAE,GAAG,EAAE,CAAC;QACpB,SAAS;QACG,OAAE,GAAG,EAAE,CAAC;IA+LtB,CAAC;
|
1
|
+
{"version":3,"file":"overbreath-text.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/text/overbreath-text.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAuB,IAAI,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE3E,MAAM,UAAU,GAAG,iBAAiB,CAAC;AACrC,MAAM,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;AAE5C;;;;GAIG;AAEI,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,aAAa;IAA1C;;QACL;;WAEG;QACS,OAAE,GAAG,EAAE,CAAC;QACpB,SAAS;QACG,OAAE,GAAG,EAAE,CAAC;QACpB,SAAS;QACG,OAAE,GAAG,EAAE,CAAC;IA+LtB,CAAC;IAVW,MAAM;QACd,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC1D,CAAC;IAES,UAAU,CAAC,IAAY;QAC/B,OAAO,IAAI,CAAA;yBACU,IAAI;yBACJ,IAAI;YACjB,CAAC;IACX,CAAC;;AA5LM,qBAAM,GAAG;IACd,aAAa,CAAC,MAAM;IACpB,GAAG,CAAA;;UAEG,WAAW;UACX,WAAW;UACX,WAAW;UACX,WAAW;UACX,WAAW;UACX,WAAW;UACX,WAAW;UACX,WAAW,4BAA4B,WAAW,eAAe,WAAW,eAAe,WAAW;UACtG,WAAW,4BAA4B,WAAW,eAAe,WAAW,eAAe,WAAW;UACtG,WAAW,4BAA4B,WAAW,eAAe,WAAW,eAAe,WAAW;;KAE3G;IACD,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCA2CyB,WAAW;;;;;gCAKX,WAAW;;;;;gCAKX,WAAW;;;;;;;;;;;;;;KActC;IACD,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA+EF;IACD,GAAG,CAAA;;UAEG,WAAW,0BAA0B,MAAM;0BAC3B,WAAW;;;;;;;;;KAShC;CACgB,AAjLN,CAiLO;AAvLR;IAAX,QAAQ,EAAE;0CAAS;AAER;IAAX,QAAQ,EAAE;0CAAS;AAER;IAAX,QAAQ,EAAE;0CAAS;AART,cAAc;IAD1B,MAAM,CAAC,UAAU,CAAC;GACN,cAAc,CAuM1B;;AAED,eAAe,cAAc,CAAC","sourcesContent":["import { css, type CSSResultGroup, html, property } from \"../../deps.js\";\nimport { type HTMLTemplate } from \"../../lib/templates.js\";\nimport { createScope, cssvar, define, GodownElement } from \"../../root.js\";\n\nconst defineName = \"overbreath-text\";\nconst cssvarScope = createScope(defineName);\n\n/**\n * OverbreathText renders three animated pieces of text.\n *\n * Inspired by Vercel homepage (2022? - 2023).\n */\n@define(defineName)\nexport class OverbreathText extends GodownElement {\n /**\n * One of the texts.\n */\n @property() t1 = \"\";\n // As t1.\n @property() t2 = \"\";\n // As t2.\n @property() t3 = \"\";\n\n static styles = [\n GodownElement.styles,\n css`\n :host {\n ${cssvarScope}--1-1: #ae0ca5;\n ${cssvarScope}--1-2: #ffd802;\n ${cssvarScope}--2-1: #1fe173;\n ${cssvarScope}--2-2: #582bca;\n ${cssvarScope}--3-1: #00b4f0;\n ${cssvarScope}--3-2: #e614e6;\n ${cssvarScope}--deg: 60deg;\n ${cssvarScope}--1: linear-gradient(var(${cssvarScope}--deg), var(${cssvarScope}--1-1), var(${cssvarScope}--1-2));\n ${cssvarScope}--2: linear-gradient(var(${cssvarScope}--deg), var(${cssvarScope}--2-1), var(${cssvarScope}--2-2));\n ${cssvarScope}--3: linear-gradient(var(${cssvarScope}--deg), var(${cssvarScope}--3-1), var(${cssvarScope}--3-2));\n }\n `,\n css`\n :host {\n display: flex;\n margin: auto;\n width: fit-content;\n font-size: clamp(3.5rem, 10vw, 5.5rem);\n align-items: center;\n }\n\n @media (max-width: 1280px) {\n :host {\n flex-direction: column;\n }\n }\n\n *::selection {\n background: none;\n }\n\n .fg,\n .bg {\n padding: 0 0.05em;\n box-sizing: border-box;\n }\n\n .bg {\n position: absolute;\n top: 0;\n }\n\n span {\n display: block;\n }\n\n .rel {\n position: relative;\n font-weight: 800;\n font-size: inherit;\n letter-spacing: -0.05em;\n }\n\n .rel:nth-child(1) .fg {\n animation: lg1 8s infinite;\n background-image: var(${cssvarScope}--1);\n }\n\n .rel:nth-child(2) .fg {\n animation: 8s infinite lg2;\n background-image: var(${cssvarScope}--2);\n }\n\n .rel:nth-child(3) .fg {\n animation: 8s infinite lg3;\n background-image: var(${cssvarScope}--3);\n }\n\n .rel:nth-child(1) .bg {\n animation: text1 8s infinite;\n }\n\n .rel:nth-child(2) .bg {\n animation: text2 8s infinite;\n }\n\n .rel:nth-child(3) .bg {\n animation: text3 8s infinite;\n }\n `,\n css`\n @keyframes lg1 {\n 0%,\n 16.667%,\n to {\n opacity: 1;\n }\n 33.333%,\n 83.333% {\n opacity: 0;\n }\n }\n\n @keyframes lg2 {\n 0%,\n to {\n opacity: 0;\n }\n 33.333%,\n 50% {\n opacity: 1;\n }\n 16.667%,\n 66.667% {\n opacity: 0;\n }\n }\n\n @keyframes lg3 {\n 0%,\n 50%,\n to {\n opacity: 0;\n }\n 66.667%,\n 83.333% {\n opacity: 1;\n }\n }\n\n @keyframes text1 {\n 0%,\n 16.667%,\n to {\n opacity: 0;\n }\n 25%,\n 91.667% {\n opacity: 1;\n }\n }\n\n @keyframes text2 {\n 0%,\n to {\n opacity: 1;\n }\n 33.333%,\n 50% {\n opacity: 0;\n }\n 25%,\n 58.333% {\n opacity: 1;\n }\n }\n\n @keyframes text3 {\n 0%,\n 58.333%,\n 91.667%,\n to {\n opacity: 1;\n }\n 66.667%,\n 83.333% {\n opacity: 0;\n }\n }\n `,\n css`\n span.bg {\n ${cssvarScope}--clip-background: var(${cssvar}--clip-background);\n background: var(${cssvarScope}--clip-background);\n }\n span {\n color: transparent;\n -webkit-text-fill-color: transparent;\n background-clip: text !important;\n -webkit-background-clip: text !important;\n display: inline-flex;\n }\n `,\n ] as CSSResultGroup;\n\n protected render(): HTMLTemplate[] {\n return [this.t1, this.t2, this.t3].map(this.renderText);\n }\n\n protected renderText(text: string): HTMLTemplate {\n return html`<span class=\"rel\">\n <span class=\"bg\">${text}</span>\n <span class=\"fg\">${text}</span>\n </span>`;\n }\n}\n\nexport default OverbreathText;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"overbreath-text\": OverbreathText;\n }\n}\n"]}
|