godown 3.5.0 → 3.5.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/build/godown+lit.iife.js +2 -2
- package/build/godown+lit.iife.js.map +1 -1
- package/build/godown+lit.js +2 -2
- package/build/godown+lit.js.map +1 -1
- package/build/godown+lit.umd.js +2 -2
- package/build/godown+lit.umd.js.map +1 -1
- package/build/godown.iife.js +4 -4
- package/build/godown.js +4 -4
- package/build/godown.js.map +1 -1
- package/build/godown.umd.js +4 -4
- package/build/godown.umd.js.map +1 -1
- package/components/badge.js +1 -1
- package/components/badge.js.map +1 -1
- package/components/button.js +1 -1
- package/components/button.js.map +1 -1
- package/components/details.js +1 -1
- package/components/details.js.map +1 -1
- package/components/dialog.js +1 -1
- package/components/dialog.js.map +1 -1
- package/core/super-input.js +1 -1
- package/core/super-input.js.map +1 -1
- package/core/super-openable.d.ts +0 -1
- package/core/super-openable.d.ts.map +1 -1
- package/core/super-openable.js +1 -1
- package/core/super-openable.js.map +1 -1
- package/custom-elements.json +1 -1
- package/package.json +6 -18
- package/src/components/button.ts +2 -3
- package/src/components/details.ts +1 -1
- package/src/components/dialog.ts +4 -6
- package/src/core/super-input.ts +3 -4
- package/src/core/super-openable.ts +0 -4
- package/tsconfig.json +33 -0
- package/web-types.json +1 -1
- package/dev/alert.d.ts +0 -9
- package/dev/alert.d.ts.map +0 -1
- package/dev/alert.js +0 -5
- package/dev/alert.js.map +0 -1
- package/dev/avatar.d.ts +0 -9
- package/dev/avatar.d.ts.map +0 -1
- package/dev/avatar.js +0 -5
- package/dev/avatar.js.map +0 -1
- package/dev/badge.d.ts +0 -9
- package/dev/badge.d.ts.map +0 -1
- package/dev/badge.js +0 -5
- package/dev/badge.js.map +0 -1
- package/dev/breath.d.ts +0 -9
- package/dev/breath.d.ts.map +0 -1
- package/dev/breath.js +0 -5
- package/dev/breath.js.map +0 -1
- package/dev/button.d.ts +0 -9
- package/dev/button.d.ts.map +0 -1
- package/dev/button.js +0 -5
- package/dev/button.js.map +0 -1
- package/dev/card.d.ts +0 -9
- package/dev/card.d.ts.map +0 -1
- package/dev/card.js +0 -5
- package/dev/card.js.map +0 -1
- package/dev/carousel.d.ts +0 -9
- package/dev/carousel.d.ts.map +0 -1
- package/dev/carousel.js +0 -5
- package/dev/carousel.js.map +0 -1
- package/dev/components/alert.d.ts +0 -55
- package/dev/components/alert.d.ts.map +0 -1
- package/dev/components/alert.js +0 -236
- package/dev/components/alert.js.map +0 -1
- package/dev/components/avatar.d.ts +0 -33
- package/dev/components/avatar.d.ts.map +0 -1
- package/dev/components/avatar.js +0 -119
- package/dev/components/avatar.js.map +0 -1
- package/dev/components/badge.d.ts +0 -31
- package/dev/components/badge.d.ts.map +0 -1
- package/dev/components/badge.js +0 -122
- package/dev/components/badge.js.map +0 -1
- package/dev/components/breath.d.ts +0 -36
- package/dev/components/breath.d.ts.map +0 -1
- package/dev/components/breath.js +0 -135
- package/dev/components/breath.js.map +0 -1
- package/dev/components/button.d.ts +0 -60
- package/dev/components/button.d.ts.map +0 -1
- package/dev/components/button.js +0 -288
- package/dev/components/button.js.map +0 -1
- package/dev/components/card.d.ts +0 -27
- package/dev/components/card.d.ts.map +0 -1
- package/dev/components/card.js +0 -87
- package/dev/components/card.js.map +0 -1
- package/dev/components/carousel.d.ts +0 -39
- package/dev/components/carousel.d.ts.map +0 -1
- package/dev/components/carousel.js +0 -184
- package/dev/components/carousel.js.map +0 -1
- package/dev/components/details.d.ts +0 -24
- package/dev/components/details.d.ts.map +0 -1
- package/dev/components/details.js +0 -124
- package/dev/components/details.js.map +0 -1
- package/dev/components/dialog.d.ts +0 -43
- package/dev/components/dialog.d.ts.map +0 -1
- package/dev/components/dialog.js +0 -154
- package/dev/components/dialog.js.map +0 -1
- package/dev/components/divider.d.ts +0 -17
- package/dev/components/divider.d.ts.map +0 -1
- package/dev/components/divider.js +0 -64
- package/dev/components/divider.js.map +0 -1
- package/dev/components/dragbox.d.ts +0 -42
- package/dev/components/dragbox.d.ts.map +0 -1
- package/dev/components/dragbox.js +0 -126
- package/dev/components/dragbox.js.map +0 -1
- package/dev/components/flex.d.ts +0 -34
- package/dev/components/flex.d.ts.map +0 -1
- package/dev/components/flex.js +0 -73
- package/dev/components/flex.js.map +0 -1
- package/dev/components/form.d.ts +0 -24
- package/dev/components/form.d.ts.map +0 -1
- package/dev/components/form.js +0 -76
- package/dev/components/form.js.map +0 -1
- package/dev/components/grid.d.ts +0 -38
- package/dev/components/grid.d.ts.map +0 -1
- package/dev/components/grid.js +0 -67
- package/dev/components/grid.js.map +0 -1
- package/dev/components/heading.d.ts +0 -31
- package/dev/components/heading.d.ts.map +0 -1
- package/dev/components/heading.js +0 -127
- package/dev/components/heading.js.map +0 -1
- package/dev/components/input.d.ts +0 -23
- package/dev/components/input.d.ts.map +0 -1
- package/dev/components/input.js +0 -99
- package/dev/components/input.js.map +0 -1
- package/dev/components/layout.d.ts +0 -28
- package/dev/components/layout.d.ts.map +0 -1
- package/dev/components/layout.js +0 -96
- package/dev/components/layout.js.map +0 -1
- package/dev/components/link.d.ts +0 -54
- package/dev/components/link.d.ts.map +0 -1
- package/dev/components/link.js +0 -110
- package/dev/components/link.js.map +0 -1
- package/dev/components/progress.d.ts +0 -16
- package/dev/components/progress.d.ts.map +0 -1
- package/dev/components/progress.js +0 -101
- package/dev/components/progress.js.map +0 -1
- package/dev/components/range.d.ts +0 -122
- package/dev/components/range.d.ts.map +0 -1
- package/dev/components/range.js +0 -391
- package/dev/components/range.js.map +0 -1
- package/dev/components/rotate.d.ts +0 -30
- package/dev/components/rotate.d.ts.map +0 -1
- package/dev/components/rotate.js +0 -93
- package/dev/components/rotate.js.map +0 -1
- package/dev/components/router.d.ts +0 -116
- package/dev/components/router.d.ts.map +0 -1
- package/dev/components/router.js +0 -240
- package/dev/components/router.js.map +0 -1
- package/dev/components/select.d.ts +0 -53
- package/dev/components/select.d.ts.map +0 -1
- package/dev/components/select.js +0 -269
- package/dev/components/select.js.map +0 -1
- package/dev/components/skeleton.d.ts +0 -28
- package/dev/components/skeleton.d.ts.map +0 -1
- package/dev/components/skeleton.js +0 -122
- package/dev/components/skeleton.js.map +0 -1
- package/dev/components/split.d.ts +0 -56
- package/dev/components/split.d.ts.map +0 -1
- package/dev/components/split.js +0 -220
- package/dev/components/split.js.map +0 -1
- package/dev/components/switch.d.ts +0 -32
- package/dev/components/switch.d.ts.map +0 -1
- package/dev/components/switch.js +0 -147
- package/dev/components/switch.js.map +0 -1
- package/dev/components/text.d.ts +0 -21
- package/dev/components/text.d.ts.map +0 -1
- package/dev/components/text.js +0 -96
- package/dev/components/text.js.map +0 -1
- package/dev/components/time.d.ts +0 -36
- package/dev/components/time.d.ts.map +0 -1
- package/dev/components/time.js +0 -75
- package/dev/components/time.js.map +0 -1
- package/dev/components/tooltip.d.ts +0 -51
- package/dev/components/tooltip.d.ts.map +0 -1
- package/dev/components/tooltip.js +0 -140
- package/dev/components/tooltip.js.map +0 -1
- package/dev/components/typewriter.d.ts +0 -49
- package/dev/components/typewriter.d.ts.map +0 -1
- package/dev/components/typewriter.js +0 -149
- package/dev/components/typewriter.js.map +0 -1
- package/dev/core/direction.d.ts +0 -27
- package/dev/core/direction.d.ts.map +0 -1
- package/dev/core/direction.js +0 -56
- package/dev/core/direction.js.map +0 -1
- package/dev/core/global-style.d.ts +0 -20
- package/dev/core/global-style.d.ts.map +0 -1
- package/dev/core/global-style.js +0 -82
- package/dev/core/global-style.js.map +0 -1
- package/dev/core/outline.d.ts +0 -20
- package/dev/core/outline.d.ts.map +0 -1
- package/dev/core/outline.js +0 -44
- package/dev/core/outline.js.map +0 -1
- package/dev/core/super-anchor.d.ts +0 -18
- package/dev/core/super-anchor.d.ts.map +0 -1
- package/dev/core/super-anchor.js +0 -60
- package/dev/core/super-anchor.js.map +0 -1
- package/dev/core/super-input.d.ts +0 -43
- package/dev/core/super-input.d.ts.map +0 -1
- package/dev/core/super-input.js +0 -203
- package/dev/core/super-input.js.map +0 -1
- package/dev/core/super-openable.d.ts +0 -16
- package/dev/core/super-openable.d.ts.map +0 -1
- package/dev/core/super-openable.js +0 -36
- package/dev/core/super-openable.js.map +0 -1
- package/dev/details.d.ts +0 -9
- package/dev/details.d.ts.map +0 -1
- package/dev/details.js +0 -5
- package/dev/details.js.map +0 -1
- package/dev/dialog.d.ts +0 -9
- package/dev/dialog.d.ts.map +0 -1
- package/dev/dialog.js +0 -5
- package/dev/dialog.js.map +0 -1
- package/dev/divider.d.ts +0 -9
- package/dev/divider.d.ts.map +0 -1
- package/dev/divider.js +0 -5
- package/dev/divider.js.map +0 -1
- package/dev/dragbox.d.ts +0 -9
- package/dev/dragbox.d.ts.map +0 -1
- package/dev/dragbox.js +0 -5
- package/dev/dragbox.js.map +0 -1
- package/dev/flex.d.ts +0 -9
- package/dev/flex.d.ts.map +0 -1
- package/dev/flex.js +0 -5
- package/dev/flex.js.map +0 -1
- package/dev/form.d.ts +0 -9
- package/dev/form.d.ts.map +0 -1
- package/dev/form.js +0 -5
- package/dev/form.js.map +0 -1
- package/dev/grid.d.ts +0 -9
- package/dev/grid.d.ts.map +0 -1
- package/dev/grid.js +0 -5
- package/dev/grid.js.map +0 -1
- package/dev/heading.d.ts +0 -9
- package/dev/heading.d.ts.map +0 -1
- package/dev/heading.js +0 -5
- package/dev/heading.js.map +0 -1
- package/dev/index.d.ts +0 -31
- package/dev/index.d.ts.map +0 -1
- package/dev/index.js +0 -31
- package/dev/index.js.map +0 -1
- package/dev/input.d.ts +0 -9
- package/dev/input.d.ts.map +0 -1
- package/dev/input.js +0 -5
- package/dev/input.js.map +0 -1
- package/dev/layout.d.ts +0 -9
- package/dev/layout.d.ts.map +0 -1
- package/dev/layout.js +0 -5
- package/dev/layout.js.map +0 -1
- package/dev/link.d.ts +0 -9
- package/dev/link.d.ts.map +0 -1
- package/dev/link.js +0 -5
- package/dev/link.js.map +0 -1
- package/dev/progress.d.ts +0 -9
- package/dev/progress.d.ts.map +0 -1
- package/dev/progress.js +0 -5
- package/dev/progress.js.map +0 -1
- package/dev/range.d.ts +0 -9
- package/dev/range.d.ts.map +0 -1
- package/dev/range.js +0 -5
- package/dev/range.js.map +0 -1
- package/dev/rotate.d.ts +0 -9
- package/dev/rotate.d.ts.map +0 -1
- package/dev/rotate.js +0 -5
- package/dev/rotate.js.map +0 -1
- package/dev/router.d.ts +0 -9
- package/dev/router.d.ts.map +0 -1
- package/dev/router.js +0 -5
- package/dev/router.js.map +0 -1
- package/dev/select.d.ts +0 -9
- package/dev/select.d.ts.map +0 -1
- package/dev/select.js +0 -5
- package/dev/select.js.map +0 -1
- package/dev/skeleton.d.ts +0 -9
- package/dev/skeleton.d.ts.map +0 -1
- package/dev/skeleton.js +0 -5
- package/dev/skeleton.js.map +0 -1
- package/dev/split.d.ts +0 -9
- package/dev/split.d.ts.map +0 -1
- package/dev/split.js +0 -5
- package/dev/split.js.map +0 -1
- package/dev/switch.d.ts +0 -9
- package/dev/switch.d.ts.map +0 -1
- package/dev/switch.js +0 -5
- package/dev/switch.js.map +0 -1
- package/dev/text.d.ts +0 -9
- package/dev/text.d.ts.map +0 -1
- package/dev/text.js +0 -5
- package/dev/text.js.map +0 -1
- package/dev/time.d.ts +0 -9
- package/dev/time.d.ts.map +0 -1
- package/dev/time.js +0 -5
- package/dev/time.js.map +0 -1
- package/dev/tooltip.d.ts +0 -9
- package/dev/tooltip.d.ts.map +0 -1
- package/dev/tooltip.js +0 -5
- package/dev/tooltip.js.map +0 -1
- package/dev/typewriter.d.ts +0 -9
- package/dev/typewriter.d.ts.map +0 -1
- package/dev/typewriter.js +0 -5
- package/dev/typewriter.js.map +0 -1
package/dev/components/badge.js
DELETED
@@ -1,122 +0,0 @@
|
|
1
|
-
import { __decorate } from "tslib";
|
2
|
-
import { attr, godown, htmlSlot, styles } from "@godown/element";
|
3
|
-
import { css, html } from "lit";
|
4
|
-
import { property } from "lit/decorators.js";
|
5
|
-
import { GlobalStyle, cssGlobalVars, scopePrefix } from "../core/global-style.js";
|
6
|
-
const protoName = "badge";
|
7
|
-
const cssScope = scopePrefix(protoName);
|
8
|
-
/**
|
9
|
-
* {@linkcode Badge} renders a badge.
|
10
|
-
*
|
11
|
-
* @slot - Badge content.
|
12
|
-
* @category display
|
13
|
-
*/
|
14
|
-
let Badge = class Badge extends GlobalStyle {
|
15
|
-
constructor() {
|
16
|
-
super(...arguments);
|
17
|
-
/**
|
18
|
-
* The position of the badge relative to its parent element.
|
19
|
-
* Possible values are `"top-left"`, `"top-right"`, `"bottom-left"`, and `"bottom-right"`.
|
20
|
-
*/
|
21
|
-
this.position = "top-right";
|
22
|
-
this.value = 0;
|
23
|
-
/**
|
24
|
-
* If `true`, render a dot badge.
|
25
|
-
*/
|
26
|
-
this.dot = false;
|
27
|
-
/**
|
28
|
-
* The maximum value that can be displayed in the badge
|
29
|
-
* Values greater than this will be displayed as `max+` by default.
|
30
|
-
*/
|
31
|
-
this.max = 99;
|
32
|
-
}
|
33
|
-
formatValue(value) {
|
34
|
-
return value > this.max ? this.max + "+" : value + "";
|
35
|
-
}
|
36
|
-
render() {
|
37
|
-
return html `
|
38
|
-
<div
|
39
|
-
part="root"
|
40
|
-
${attr(this.observedRecord)}
|
41
|
-
>
|
42
|
-
${htmlSlot()}
|
43
|
-
${this.value || this.dot
|
44
|
-
? html `
|
45
|
-
<div part="badge">${this.dot ? "" : this.formatValue(this.value)}</div>
|
46
|
-
`
|
47
|
-
: ""}
|
48
|
-
</div>
|
49
|
-
`;
|
50
|
-
}
|
51
|
-
};
|
52
|
-
__decorate([
|
53
|
-
property()
|
54
|
-
], Badge.prototype, "position", void 0);
|
55
|
-
__decorate([
|
56
|
-
property({ type: Number })
|
57
|
-
], Badge.prototype, "value", void 0);
|
58
|
-
__decorate([
|
59
|
-
property({ type: Boolean })
|
60
|
-
], Badge.prototype, "dot", void 0);
|
61
|
-
__decorate([
|
62
|
-
property({ type: Number })
|
63
|
-
], Badge.prototype, "max", void 0);
|
64
|
-
Badge = __decorate([
|
65
|
-
godown(protoName),
|
66
|
-
styles(css `
|
67
|
-
:host {
|
68
|
-
${cssScope}--background: var(${cssGlobalVars.active});
|
69
|
-
${cssScope}--offset: 0%;
|
70
|
-
${cssScope}--offset-x: var(${cssScope}--offset);
|
71
|
-
${cssScope}--offset-y: var(${cssScope}--offset);
|
72
|
-
}
|
73
|
-
|
74
|
-
:host,
|
75
|
-
:host([contents]) [part="root"] {
|
76
|
-
display: inline-block;
|
77
|
-
}
|
78
|
-
|
79
|
-
[part="root"] {
|
80
|
-
position: relative;
|
81
|
-
}
|
82
|
-
|
83
|
-
[part="badge"] {
|
84
|
-
position: absolute;
|
85
|
-
font-size: 75%;
|
86
|
-
padding: 0 0.5em;
|
87
|
-
user-select: none;
|
88
|
-
border-radius: calc(infinity * 1px);
|
89
|
-
transform: translate(-50%, -50%);
|
90
|
-
left: var(--left);
|
91
|
-
top: var(--top);
|
92
|
-
background: var(${cssScope}--background);
|
93
|
-
}
|
94
|
-
|
95
|
-
[part="badge"]:empty {
|
96
|
-
width: 0.5em;
|
97
|
-
height: 0.5em;
|
98
|
-
font-size: 100%;
|
99
|
-
padding: 0;
|
100
|
-
border-radius: 50%;
|
101
|
-
}
|
102
|
-
|
103
|
-
[position^="top"] {
|
104
|
-
--top: calc(0% + var(${cssScope}--offset-y));
|
105
|
-
}
|
106
|
-
|
107
|
-
[position$="right"] {
|
108
|
-
--left: calc(100% - var(${cssScope}--offset-x));
|
109
|
-
}
|
110
|
-
|
111
|
-
[position^="bottom"] {
|
112
|
-
--top: calc(100% - var(${cssScope}--offset-y));
|
113
|
-
}
|
114
|
-
|
115
|
-
[position$="left"] {
|
116
|
-
--left: calc(0% + var(${cssScope}--offset-x));
|
117
|
-
}
|
118
|
-
`)
|
119
|
-
], Badge);
|
120
|
-
export default Badge;
|
121
|
-
export { Badge };
|
122
|
-
//# sourceMappingURL=badge.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"badge.js","sourceRoot":"","sources":["../../src/components/badge.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAuB,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAGlF,MAAM,SAAS,GAAG,OAAO,CAAC;AAC1B,MAAM,QAAQ,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;AAExC;;;;;GAKG;AAuDH,IAAM,KAAK,GAAX,MAAM,KAAM,SAAQ,WAAW;IAA/B;;QACE;;;WAGG;QAEH,aAAQ,GAAoB,WAAW,CAAC;QAGxC,UAAK,GAAG,CAAC,CAAC;QAEV;;WAEG;QAEH,QAAG,GAAG,KAAK,CAAC;QAEZ;;;WAGG;QAEH,QAAG,GAAG,EAAE,CAAC;IAqBX,CAAC;IAnBC,WAAW,CAAC,KAAa;QACvB,OAAO,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;IACxD,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAA;;;UAGL,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC;;UAEzB,QAAQ,EAAE;UACV,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG;YACtB,CAAC,CAAC,IAAI,CAAA;kCACkB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;aACjE;YACH,CAAC,CAAC,EAAE;;KAET,CAAC;IACJ,CAAC;CACF,CAAA;AArCC;IADC,QAAQ,EAAE;uCAC6B;AAGxC;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;oCACjB;AAMV;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;kCAChB;AAOZ;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;kCAClB;AAtBL,KAAK;IAtDV,MAAM,CAAC,SAAS,CAAC;IACjB,MAAM,CAAC,GAAG,CAAA;;MAEL,QAAQ,qBAAqB,aAAa,CAAC,MAAM;MACjD,QAAQ;MACR,QAAQ,mBAAmB,QAAQ;MACnC,QAAQ,mBAAmB,QAAQ;;;;;;;;;;;;;;;;;;;;;sBAqBnB,QAAQ;;;;;;;;;;;;2BAYH,QAAQ;;;;8BAIL,QAAQ;;;;6BAIT,QAAQ;;;;4BAIT,QAAQ;;CAEnC,CAAC;GACI,KAAK,CA2CV;AAED,eAAe,KAAK,CAAC;AACrB,OAAO,EAAE,KAAK,EAAE,CAAC"}
|
@@ -1,36 +0,0 @@
|
|
1
|
-
import { type TemplateResult } from "lit";
|
2
|
-
import { GlobalStyle } from "../core/global-style.js";
|
3
|
-
/**
|
4
|
-
* {@linkcode Breath} render the text with a breathing effect.
|
5
|
-
*
|
6
|
-
* Dynamically generate a breathing effect based on the length of the split text.
|
7
|
-
*
|
8
|
-
* If there is not enough CSS variable, overrun elements will use the.
|
9
|
-
*
|
10
|
-
* godown was a css library in its earliest days,
|
11
|
-
* and this is the component version of its first effect.
|
12
|
-
*
|
13
|
-
* Inspired by Vercel home page (2023).
|
14
|
-
*
|
15
|
-
* @slot - Breathing parts.
|
16
|
-
* @category effect
|
17
|
-
*/
|
18
|
-
declare class Breath extends GlobalStyle {
|
19
|
-
/**
|
20
|
-
* Strings or array of strings,
|
21
|
-
* if array, divided each element into chunks,
|
22
|
-
* otherwise split strings by whitespace.
|
23
|
-
*/
|
24
|
-
content: string | string[];
|
25
|
-
/**
|
26
|
-
* Effect duration.
|
27
|
-
*/
|
28
|
-
duration: number;
|
29
|
-
protected render(): TemplateResult<1>;
|
30
|
-
protected _renderText(text: string): TemplateResult<1>;
|
31
|
-
protected getTexts(): string[];
|
32
|
-
protected _computeStyle(len: number): string;
|
33
|
-
}
|
34
|
-
export default Breath;
|
35
|
-
export { Breath };
|
36
|
-
//# sourceMappingURL=breath.d.ts.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"breath.d.ts","sourceRoot":"","sources":["../../src/components/breath.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,cAAc,EAAa,MAAM,KAAK,CAAC;AAGrD,OAAO,EAAE,WAAW,EAA8B,MAAM,yBAAyB,CAAC;AAKlF;;;;;;;;;;;;;;GAcG;AACH,cAqEM,MAAO,SAAQ,WAAW;IAC9B;;;;OAIG;IAEH,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAE3B;;OAEG;IAEH,QAAQ,EAAE,MAAM,CAAC;IAEjB,SAAS,CAAC,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC;IAYrC,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC;IAStD,SAAS,CAAC,QAAQ,IAAI,MAAM,EAAE;IAM9B,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;CAa7C;AAED,eAAe,MAAM,CAAC;AACtB,OAAO,EAAE,MAAM,EAAE,CAAC"}
|
package/dev/components/breath.js
DELETED
@@ -1,135 +0,0 @@
|
|
1
|
-
import { __decorate } from "tslib";
|
2
|
-
import { attr, godown, htmlStyle, styles } from "@godown/element";
|
3
|
-
import { css, html } from "lit";
|
4
|
-
import { property } from "lit/decorators.js";
|
5
|
-
import { GlobalStyle, cssGlobalVars, scopePrefix } from "../core/global-style.js";
|
6
|
-
const defineName = "breath";
|
7
|
-
const cssScope = scopePrefix(defineName);
|
8
|
-
/**
|
9
|
-
* {@linkcode Breath} render the text with a breathing effect.
|
10
|
-
*
|
11
|
-
* Dynamically generate a breathing effect based on the length of the split text.
|
12
|
-
*
|
13
|
-
* If there is not enough CSS variable, overrun elements will use the.
|
14
|
-
*
|
15
|
-
* godown was a css library in its earliest days,
|
16
|
-
* and this is the component version of its first effect.
|
17
|
-
*
|
18
|
-
* Inspired by Vercel home page (2023).
|
19
|
-
*
|
20
|
-
* @slot - Breathing parts.
|
21
|
-
* @category effect
|
22
|
-
*/
|
23
|
-
let Breath = class Breath extends GlobalStyle {
|
24
|
-
render() {
|
25
|
-
const texts = this.getTexts();
|
26
|
-
return html `
|
27
|
-
<div
|
28
|
-
part="root"
|
29
|
-
${attr(this.observedRecord)}
|
30
|
-
>
|
31
|
-
${[texts.map(this._renderText), htmlStyle(this._computeStyle(texts.length))]}
|
32
|
-
</div>
|
33
|
-
`;
|
34
|
-
}
|
35
|
-
_renderText(text) {
|
36
|
-
return html `
|
37
|
-
<span class="rel">
|
38
|
-
<span class="nocolor">${text}</span>
|
39
|
-
<span class="colorful">${text}</span>
|
40
|
-
</span>
|
41
|
-
`;
|
42
|
-
}
|
43
|
-
getTexts() {
|
44
|
-
return Array.isArray(this.content)
|
45
|
-
? this.content
|
46
|
-
: (this.content || this.textContent).split(/\s+/).filter((x) => x);
|
47
|
-
}
|
48
|
-
_computeStyle(len) {
|
49
|
-
const gap = 100 / 2 / len;
|
50
|
-
const duration = this.duration || (len * 2 + 2) * 1000;
|
51
|
-
let style1 = "";
|
52
|
-
for (let number = 1; number <= len; number++) {
|
53
|
-
const delay = (-duration / len) * (len - number + 1);
|
54
|
-
const defaultNumber = ((number - 1) % 3) + 1;
|
55
|
-
style1 += `.rel:nth-child(${number}) .colorful{animation-delay:${delay}s;background:var(${cssScope}--${number},var(${cssScope}--${defaultNumber}));}`;
|
56
|
-
}
|
57
|
-
return `.colorful{animation-duration:${duration}ms;}@keyframes colorfulN{0%,${gap * 3}%{opacity:0;}${gap}%,${gap * 2}%{opacity:1;}}${style1}`;
|
58
|
-
}
|
59
|
-
};
|
60
|
-
__decorate([
|
61
|
-
property()
|
62
|
-
], Breath.prototype, "content", void 0);
|
63
|
-
__decorate([
|
64
|
-
property({ type: Number })
|
65
|
-
], Breath.prototype, "duration", void 0);
|
66
|
-
Breath = __decorate([
|
67
|
-
godown(defineName),
|
68
|
-
styles(css `
|
69
|
-
:host {
|
70
|
-
${cssScope}--deg: 60deg;
|
71
|
-
${cssScope}--1-1: var(${cssGlobalVars._colors.red[5]});
|
72
|
-
${cssScope}--1-2: var(${cssGlobalVars._colors.yellow[5]});
|
73
|
-
${cssScope}--2-1: var(${cssGlobalVars._colors.green[5]});
|
74
|
-
${cssScope}--2-2: var(${cssGlobalVars._colors.purple[5]});
|
75
|
-
${cssScope}--3-1: var(${cssGlobalVars._colors.blue[5]});
|
76
|
-
${cssScope}--3-2: var(${cssGlobalVars._colors.pink[5]});
|
77
|
-
${cssScope}--1: linear-gradient(var(${cssScope}--deg), var(${cssScope}--1-1), var(${cssScope}--1-2));
|
78
|
-
${cssScope}--2: linear-gradient(var(${cssScope}--deg), var(${cssScope}--2-1), var(${cssScope}--2-2));
|
79
|
-
${cssScope}--3: linear-gradient(var(${cssScope}--deg), var(${cssScope}--3-1), var(${cssScope}--3-2));
|
80
|
-
}
|
81
|
-
`, css `
|
82
|
-
:host {
|
83
|
-
margin: auto;
|
84
|
-
width: fit-content;
|
85
|
-
font-size: 2em;
|
86
|
-
align-items: center;
|
87
|
-
direction: ltr;
|
88
|
-
}
|
89
|
-
|
90
|
-
:host,
|
91
|
-
:host([contents]) [part="root"] {
|
92
|
-
display: flex;
|
93
|
-
}
|
94
|
-
|
95
|
-
[part="root"] {
|
96
|
-
display: contents;
|
97
|
-
}
|
98
|
-
|
99
|
-
::selection {
|
100
|
-
background: none;
|
101
|
-
}
|
102
|
-
|
103
|
-
.rel {
|
104
|
-
position: relative;
|
105
|
-
font-weight: 800;
|
106
|
-
font-size: inherit;
|
107
|
-
letter-spacing: -0.05em;
|
108
|
-
}
|
109
|
-
`, css `
|
110
|
-
.nocolor,
|
111
|
-
.colorful {
|
112
|
-
padding: 0 0.05em;
|
113
|
-
box-sizing: border-box;
|
114
|
-
display: inline-block;
|
115
|
-
animation-iteration-count: infinite;
|
116
|
-
color: transparent;
|
117
|
-
-webkit-background-clip: text !important;
|
118
|
-
background-clip: text !important;
|
119
|
-
}
|
120
|
-
|
121
|
-
.colorful {
|
122
|
-
opacity: 0;
|
123
|
-
animation-name: colorfulN;
|
124
|
-
}
|
125
|
-
|
126
|
-
.nocolor {
|
127
|
-
position: absolute;
|
128
|
-
top: 0;
|
129
|
-
background: var(${cssGlobalVars.clipBackground});
|
130
|
-
}
|
131
|
-
`)
|
132
|
-
], Breath);
|
133
|
-
export default Breath;
|
134
|
-
export { Breath };
|
135
|
-
//# sourceMappingURL=breath.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"breath.js","sourceRoot":"","sources":["../../src/components/breath.ts"],"names":[],"mappings":"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"}
|
@@ -1,60 +0,0 @@
|
|
1
|
-
import { type TemplateResult } from "lit";
|
2
|
-
import { GlobalStyle } from "../core/global-style.js";
|
3
|
-
type Colors = "teal" | "blue" | "green" | "red" | "purple" | "orange" | "yellow" | "pink" | "gray" | "white" | "black";
|
4
|
-
declare const colors: Record<Colors, string>;
|
5
|
-
/**
|
6
|
-
* {@linkcode Button} renders a button.
|
7
|
-
*
|
8
|
-
* Create modal animation upon clicking.
|
9
|
-
*
|
10
|
-
* Available colors (background): none, black, gray, white, blue, green, red, orange, pink, purple, yellow, teal.
|
11
|
-
*
|
12
|
-
* Default color is `black`.
|
13
|
-
*
|
14
|
-
* Set the color to `none` to prevent applying styles.
|
15
|
-
*
|
16
|
-
* @category input
|
17
|
-
*/
|
18
|
-
declare class Button extends GlobalStyle {
|
19
|
-
/**
|
20
|
-
* If true, remove gradient, modal animation, focus scale.
|
21
|
-
*/
|
22
|
-
plain: boolean;
|
23
|
-
/**
|
24
|
-
* Whether this element is disabled or not.
|
25
|
-
*/
|
26
|
-
disabled: boolean;
|
27
|
-
/**
|
28
|
-
* Whether this element should be rendered as a "ghost" button.
|
29
|
-
* A ghost button is a button with a transparent background and a border.
|
30
|
-
*/
|
31
|
-
ghost: boolean;
|
32
|
-
/**
|
33
|
-
* Whether this element is active or not.
|
34
|
-
*/
|
35
|
-
active: boolean;
|
36
|
-
/**
|
37
|
-
* Display rounded.
|
38
|
-
*/
|
39
|
-
round: boolean;
|
40
|
-
/**
|
41
|
-
* The primary color.
|
42
|
-
*/
|
43
|
-
color: "none" | keyof typeof colors;
|
44
|
-
/**
|
45
|
-
* Content text.
|
46
|
-
*/
|
47
|
-
content: string;
|
48
|
-
protected _modalRoot: HTMLElement;
|
49
|
-
protected _root: HTMLElement;
|
50
|
-
protected render(): TemplateResult<1>;
|
51
|
-
focus(): void;
|
52
|
-
blur(): void;
|
53
|
-
protected firstUpdated(): void;
|
54
|
-
protected _handelClick(e: MouseEvent): void;
|
55
|
-
protected _handleModal(e: MouseEvent): void;
|
56
|
-
nextColor(): Colors | "none";
|
57
|
-
}
|
58
|
-
export default Button;
|
59
|
-
export { Button };
|
60
|
-
//# sourceMappingURL=button.d.ts.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../src/components/button.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,cAAc,EAAa,MAAM,KAAK,CAAC;AAGrD,OAAO,EAAE,WAAW,EAA8B,MAAM,yBAAyB,CAAC;AAQlF,KAAK,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;AACvH,QAAA,MAAM,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA6DlC,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,cAkGM,MAAO,SAAQ,WAAW;IAC9B;;OAEG;IAEH,KAAK,UAAS;IAEd;;OAEG;IAEH,QAAQ,UAAS;IAEjB;;;OAGG;IAEH,KAAK,UAAS;IAEd;;OAEG;IAEH,MAAM,UAAS;IAEf;;OAEG;IAEH,KAAK,UAAS;IAEd;;OAEG;IAEH,KAAK,EAAE,MAAM,GAAG,MAAM,OAAO,MAAM,CAAW;IAE9C;;OAEG;IAEH,OAAO,EAAE,MAAM,CAAC;IAGhB,SAAS,CAAC,UAAU,EAAE,WAAW,CAAC;IAElC,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC;IAE7B,SAAS,CAAC,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC;IAarC,KAAK,IAAI,IAAI;IAQb,IAAI,IAAI,IAAI;IAKZ,SAAS,CAAC,YAAY,IAAI,IAAI;IAI9B,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI;IAW3C,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI;IAc3C,SAAS,IAAI,MAAM,GAAG,MAAM;CAG7B;AAED,eAAe,MAAM,CAAC;AACtB,OAAO,EAAE,MAAM,EAAE,CAAC"}
|
package/dev/components/button.js
DELETED
@@ -1,288 +0,0 @@
|
|
1
|
-
import { __decorate } from "tslib";
|
2
|
-
import { attr, constructCSSObject, godown, htmlSlot, htmlStyle, part, styles, toVar } from "@godown/element";
|
3
|
-
import { css, html } from "lit";
|
4
|
-
import { property } from "lit/decorators.js";
|
5
|
-
import { GlobalStyle, cssGlobalVars, scopePrefix } from "../core/global-style.js";
|
6
|
-
const protoName = "button";
|
7
|
-
const cssScope = scopePrefix(protoName);
|
8
|
-
const whiteFont = cssGlobalVars.white;
|
9
|
-
const blackFont = cssGlobalVars.black;
|
10
|
-
const colors = constructCSSObject(["color", "background", "gradients"].map((k) => `${cssScope}--${k}`), {
|
11
|
-
black: [
|
12
|
-
whiteFont, // color
|
13
|
-
cssGlobalVars._colors.darkgray[7], // background
|
14
|
-
cssGlobalVars._colors.darkgray[5], // gradients
|
15
|
-
],
|
16
|
-
gray: [
|
17
|
-
whiteFont, // color
|
18
|
-
cssGlobalVars._colors.darkgray[1], // background
|
19
|
-
cssGlobalVars._colors.lightgray[8], // gradients
|
20
|
-
],
|
21
|
-
white: [
|
22
|
-
blackFont, // color
|
23
|
-
cssGlobalVars._colors.lightgray[3], // background
|
24
|
-
cssGlobalVars._colors.lightgray[0], // gradients
|
25
|
-
],
|
26
|
-
blue: [
|
27
|
-
whiteFont, // color
|
28
|
-
cssGlobalVars._colors.blue[6], // background
|
29
|
-
cssGlobalVars._colors.blue[4], // gradients
|
30
|
-
],
|
31
|
-
green: [
|
32
|
-
whiteFont, // color
|
33
|
-
cssGlobalVars._colors.green[6], // background
|
34
|
-
cssGlobalVars._colors.green[4], // gradients
|
35
|
-
],
|
36
|
-
red: [
|
37
|
-
whiteFont, // color
|
38
|
-
cssGlobalVars._colors.red[6], // background
|
39
|
-
cssGlobalVars._colors.red[4], // gradients
|
40
|
-
],
|
41
|
-
orange: [
|
42
|
-
whiteFont, // color
|
43
|
-
cssGlobalVars._colors.orange[6], // background
|
44
|
-
cssGlobalVars._colors.orange[4], // gradients
|
45
|
-
],
|
46
|
-
pink: [
|
47
|
-
whiteFont, // color
|
48
|
-
cssGlobalVars._colors.pink[6], // background
|
49
|
-
cssGlobalVars._colors.pink[4], // gradients
|
50
|
-
],
|
51
|
-
purple: [
|
52
|
-
whiteFont, // color
|
53
|
-
cssGlobalVars._colors.purple[6], // background
|
54
|
-
cssGlobalVars._colors.purple[4], // gradients
|
55
|
-
],
|
56
|
-
yellow: [
|
57
|
-
blackFont, // color
|
58
|
-
cssGlobalVars._colors.yellow[6], // background
|
59
|
-
cssGlobalVars._colors.yellow[4], // gradients
|
60
|
-
],
|
61
|
-
teal: [
|
62
|
-
whiteFont, // color
|
63
|
-
cssGlobalVars._colors.teal[6], // background
|
64
|
-
cssGlobalVars._colors.teal[4], // gradients
|
65
|
-
],
|
66
|
-
}, () => ":host", (prop) => toVar(prop));
|
67
|
-
/**
|
68
|
-
* {@linkcode Button} renders a button.
|
69
|
-
*
|
70
|
-
* Create modal animation upon clicking.
|
71
|
-
*
|
72
|
-
* Available colors (background): none, black, gray, white, blue, green, red, orange, pink, purple, yellow, teal.
|
73
|
-
*
|
74
|
-
* Default color is `black`.
|
75
|
-
*
|
76
|
-
* Set the color to `none` to prevent applying styles.
|
77
|
-
*
|
78
|
-
* @category input
|
79
|
-
*/
|
80
|
-
let Button = class Button extends GlobalStyle {
|
81
|
-
constructor() {
|
82
|
-
super(...arguments);
|
83
|
-
/**
|
84
|
-
* If true, remove gradient, modal animation, focus scale.
|
85
|
-
*/
|
86
|
-
this.plain = false;
|
87
|
-
/**
|
88
|
-
* Whether this element is disabled or not.
|
89
|
-
*/
|
90
|
-
this.disabled = false;
|
91
|
-
/**
|
92
|
-
* Whether this element should be rendered as a "ghost" button.
|
93
|
-
* A ghost button is a button with a transparent background and a border.
|
94
|
-
*/
|
95
|
-
this.ghost = false;
|
96
|
-
/**
|
97
|
-
* Whether this element is active or not.
|
98
|
-
*/
|
99
|
-
this.active = false;
|
100
|
-
/**
|
101
|
-
* Display rounded.
|
102
|
-
*/
|
103
|
-
this.round = false;
|
104
|
-
/**
|
105
|
-
* The primary color.
|
106
|
-
*/
|
107
|
-
this.color = "black";
|
108
|
-
}
|
109
|
-
render() {
|
110
|
-
const color = this.nextColor();
|
111
|
-
return html `
|
112
|
-
<div
|
113
|
-
part="root"
|
114
|
-
${attr(this.observedRecord)}
|
115
|
-
>
|
116
|
-
<span part="modal-root"></span>
|
117
|
-
<div part="content">${[this.content || htmlSlot(), htmlStyle(colors[color])]}</div>
|
118
|
-
</div>
|
119
|
-
`;
|
120
|
-
}
|
121
|
-
focus() {
|
122
|
-
if (this.disabled) {
|
123
|
-
return;
|
124
|
-
}
|
125
|
-
this.active = true;
|
126
|
-
super.focus();
|
127
|
-
}
|
128
|
-
blur() {
|
129
|
-
this.active = false;
|
130
|
-
super.blur();
|
131
|
-
}
|
132
|
-
firstUpdated() {
|
133
|
-
this.events.add(this, "click", this._handelClick, true);
|
134
|
-
}
|
135
|
-
_handelClick(e) {
|
136
|
-
if (this.disabled) {
|
137
|
-
e.stopPropagation();
|
138
|
-
e.preventDefault();
|
139
|
-
return;
|
140
|
-
}
|
141
|
-
if (!this.plain) {
|
142
|
-
this._handleModal(e);
|
143
|
-
}
|
144
|
-
}
|
145
|
-
_handleModal(e) {
|
146
|
-
const modal = document.createElement("i");
|
147
|
-
const rect = this._root.getBoundingClientRect();
|
148
|
-
const { height, width } = rect;
|
149
|
-
const size = `${Math.sqrt(height * height + width * width) * 2}px`;
|
150
|
-
modal.style.height = size;
|
151
|
-
modal.style.width = size;
|
152
|
-
modal.style.left = `${e.clientX - rect.left}px`;
|
153
|
-
modal.style.top = `${e.clientY - rect.y}px`;
|
154
|
-
modal.style.animationName = "kf";
|
155
|
-
this._modalRoot.appendChild(modal);
|
156
|
-
modal.addEventListener("animationend", () => modal.remove(), { once: true });
|
157
|
-
}
|
158
|
-
nextColor() {
|
159
|
-
return this.color;
|
160
|
-
}
|
161
|
-
};
|
162
|
-
__decorate([
|
163
|
-
property({ type: Boolean, reflect: true })
|
164
|
-
], Button.prototype, "plain", void 0);
|
165
|
-
__decorate([
|
166
|
-
property({ type: Boolean, reflect: true })
|
167
|
-
], Button.prototype, "disabled", void 0);
|
168
|
-
__decorate([
|
169
|
-
property({ type: Boolean, reflect: true })
|
170
|
-
], Button.prototype, "ghost", void 0);
|
171
|
-
__decorate([
|
172
|
-
property({ type: Boolean, reflect: true })
|
173
|
-
], Button.prototype, "active", void 0);
|
174
|
-
__decorate([
|
175
|
-
property({ type: Boolean, reflect: true })
|
176
|
-
], Button.prototype, "round", void 0);
|
177
|
-
__decorate([
|
178
|
-
property({ reflect: true })
|
179
|
-
], Button.prototype, "color", void 0);
|
180
|
-
__decorate([
|
181
|
-
property()
|
182
|
-
], Button.prototype, "content", void 0);
|
183
|
-
__decorate([
|
184
|
-
part("modal-root")
|
185
|
-
], Button.prototype, "_modalRoot", void 0);
|
186
|
-
__decorate([
|
187
|
-
part("root")
|
188
|
-
], Button.prototype, "_root", void 0);
|
189
|
-
Button = __decorate([
|
190
|
-
godown(protoName),
|
191
|
-
styles(css `
|
192
|
-
:host(:not([disabled]):active) {
|
193
|
-
transform: scale(var(${cssScope}--focus-scale));
|
194
|
-
}
|
195
|
-
|
196
|
-
:host([round]) {
|
197
|
-
${cssScope}--padding-x: .75em;
|
198
|
-
border-radius: calc(infinity * 1px);
|
199
|
-
}
|
200
|
-
|
201
|
-
:host([disabled]) {
|
202
|
-
cursor: not-allowed;
|
203
|
-
filter: brightness(0.85);
|
204
|
-
}
|
205
|
-
|
206
|
-
:host([ghost]) {
|
207
|
-
${cssScope}--modal-background: var(${cssScope}--ghost-color);
|
208
|
-
box-shadow: inset 0px 0px 0px var(${cssScope}--ghost-width) var(${cssScope}--ghost-color);
|
209
|
-
color: var(${cssScope}--ghost-color);
|
210
|
-
background: transparent;
|
211
|
-
}
|
212
|
-
|
213
|
-
:host([plain]) {
|
214
|
-
${cssScope}--gradients: unset;
|
215
|
-
${cssScope}--focus-scale: unset;
|
216
|
-
}
|
217
|
-
`, css `
|
218
|
-
:host {
|
219
|
-
${cssScope}--padding-x: .5em;
|
220
|
-
${cssScope}--padding-y: min(calc(var(${cssScope}--padding-x) / 2), .125em);
|
221
|
-
${cssScope}--padding: var(${cssScope}--padding-y) var(${cssScope}--padding-x);
|
222
|
-
${cssScope}--modal-animation-duration: 1s;
|
223
|
-
${cssScope}--ghost-width: .08em;
|
224
|
-
${cssScope}--focus-scale: .97;
|
225
|
-
${cssScope}--deg: 45deg;
|
226
|
-
${cssScope}--ghost-color:var(${cssScope}--background);
|
227
|
-
color: var(${cssScope}--color, inherit);
|
228
|
-
background: linear-gradient(
|
229
|
-
var(${cssScope}--deg),
|
230
|
-
var(${cssScope}--background),
|
231
|
-
var(${cssScope}--gradients, var(${cssScope}--background))
|
232
|
-
);
|
233
|
-
border-radius: 0.2em;
|
234
|
-
width: fit-content;
|
235
|
-
display: block;
|
236
|
-
overflow: hidden;
|
237
|
-
text-align: center;
|
238
|
-
padding: 0 !important;
|
239
|
-
cursor: pointer;
|
240
|
-
}
|
241
|
-
|
242
|
-
:host([contents]) [part="root"] {
|
243
|
-
width: fit-content;
|
244
|
-
}
|
245
|
-
|
246
|
-
[part="root"] {
|
247
|
-
width: 100%;
|
248
|
-
height: 100%;
|
249
|
-
overflow: hidden;
|
250
|
-
position: relative;
|
251
|
-
transition: none;
|
252
|
-
user-select: none;
|
253
|
-
border-radius: inherit;
|
254
|
-
transition-duration: inherit;
|
255
|
-
padding: var(${cssScope}--padding);
|
256
|
-
}
|
257
|
-
|
258
|
-
i {
|
259
|
-
position: absolute;
|
260
|
-
inset: 0;
|
261
|
-
opacity: 0;
|
262
|
-
width: 100%;
|
263
|
-
height: 100%;
|
264
|
-
border-radius: 50%;
|
265
|
-
visibility: visible;
|
266
|
-
pointer-events: none;
|
267
|
-
transform-origin: 0 0;
|
268
|
-
background: var(${cssScope}--modal-background, currentColor);
|
269
|
-
animation-duration: var(${cssScope}--modal-animation-duration);
|
270
|
-
}
|
271
|
-
|
272
|
-
@keyframes kf {
|
273
|
-
0% {
|
274
|
-
transform: scale(0) translate(-50%, -50%);
|
275
|
-
opacity: var(${cssScope}--modal-opacity, 0.1);
|
276
|
-
}
|
277
|
-
80% {
|
278
|
-
transform: scale(1) translate(-50%, -50%);
|
279
|
-
}
|
280
|
-
to {
|
281
|
-
opacity: 0;
|
282
|
-
}
|
283
|
-
}
|
284
|
-
`)
|
285
|
-
], Button);
|
286
|
-
export default Button;
|
287
|
-
export { Button };
|
288
|
-
//# sourceMappingURL=button.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"button.js","sourceRoot":"","sources":["../../src/components/button.ts"],"names":[],"mappings":"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"}
|