sakana-element 2.4.2 → 2.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/README.md +26 -2
- package/dist/es/Alert-Cq5F0XNt.js +57 -0
- package/dist/es/Avatar-CbgoH75Q.js +5 -0
- package/dist/es/Badge-BVu3hO8V.js +7 -0
- package/dist/es/Breadcrumb-Bh5y4LbC.js +6 -0
- package/dist/es/Button-B1wRI6I7.js +28 -0
- package/dist/es/Card-VMxMFix8.js +8 -0
- package/dist/es/Carousel-QnDHp3Ka.js +11 -0
- package/dist/es/ChatBubble-DYao4l85.js +5 -0
- package/dist/es/Checkbox-BbLzAqK2.js +228 -0
- package/dist/es/Collapse-BkKmhGQf.js +11 -0
- package/dist/es/Collapsible-B56M9eUW.js +12 -0
- package/dist/es/Command-CORaZKsJ.js +45 -0
- package/dist/es/ConfigProvider-CGLQ9b8M.js +35 -0
- package/dist/es/Diff-gDYKT1cl.js +17 -0
- package/dist/es/Divider-bI4lEaol.js +5 -0
- package/dist/es/Drawer-AnXxT-V6.js +6 -0
- package/dist/es/Dropdown-80RoE7gX.js +115 -0
- package/dist/es/FileInput-B6CyElTd.js +113 -0
- package/dist/es/Filter-CtIs_iO4.js +13 -0
- package/dist/es/Icon-hbRhI1iH.js +3 -0
- package/dist/es/Indicator-Bs6f41iJ.js +5 -0
- package/dist/es/Input-DJsDXAG1.js +8 -0
- package/dist/es/Kbd-DZf70Cdz.js +5 -0
- package/dist/es/Link-CLXoAvDl.js +5 -0
- package/dist/es/Loading-BHzOi8J-.js +27 -0
- package/dist/es/Message-DOxtRo8V.js +51 -0
- package/dist/es/Notification-F5UfnGWs.js +22 -0
- package/dist/es/Pixelate-DFpR42b2.js +12 -0
- package/dist/es/Popconfirm-C1LNG9db.js +8 -0
- package/dist/es/Progress-CDHJJUVL.js +6 -0
- package/dist/es/Radio-HMaWtyx9.js +11 -0
- package/dist/es/Resizable-DSYUZwLE.js +59 -0
- package/dist/es/Select-DaBVMoMB.js +31 -0
- package/dist/es/Skeleton-4hCbgDOF.js +7 -0
- package/dist/es/Switch-BCTrn4hn.js +11 -0
- package/dist/es/Table-B5twhEZC.js +5 -0
- package/dist/es/Tooltip-CDjXpGHn.js +4 -0
- package/dist/es/Validator-DoWa9KfA.js +16 -0
- package/dist/es/index.js +41 -140
- package/dist/index.css +2 -1
- package/dist/theme/Alert.css +1 -295
- package/dist/theme/Avatar.css +1 -86
- package/dist/theme/Badge.css +1 -214
- package/dist/theme/Breadcrumb.css +1 -192
- package/dist/theme/Button.css +1 -1570
- package/dist/theme/Card.css +1 -347
- package/dist/theme/Carousel.css +1 -0
- package/dist/theme/ChatBubble.css +1 -218
- package/dist/theme/Checkbox.css +1 -604
- package/dist/theme/Collapse.css +1 -764
- package/dist/theme/Collapsible.css +1 -0
- package/dist/theme/Command.css +1 -0
- package/dist/theme/Diff.css +1 -110
- package/dist/theme/Divider.css +1 -150
- package/dist/theme/Drawer.css +1 -206
- package/dist/theme/Dropdown.css +1 -471
- package/dist/theme/FileInput.css +1 -397
- package/dist/theme/Filter.css +1 -598
- package/dist/theme/Indicator.css +1 -159
- package/dist/theme/Input.css +1 -647
- package/dist/theme/Kbd.css +1 -104
- package/dist/theme/Link.css +1 -69
- package/dist/theme/Loading.css +1 -266
- package/dist/theme/Message.css +1 -565
- package/dist/theme/Notification.css +1 -316
- package/dist/theme/Popconfirm.css +1 -46
- package/dist/theme/Progress.css +1 -278
- package/dist/theme/Radio.css +1 -492
- package/dist/theme/Resizable.css +1 -95
- package/dist/theme/Select.css +1 -584
- package/dist/theme/Skeleton.css +1 -192
- package/dist/theme/Switch.css +1 -323
- package/dist/theme/Table.css +1 -680
- package/dist/theme/Validator.css +1 -25
- package/dist/theme/index.css +1 -341
- package/dist/types/components/Badge/types.d.ts +2 -0
- package/dist/types/components/Carousel/constants.d.ts +6 -0
- package/dist/types/components/Carousel/index.d.ts +77 -0
- package/dist/types/components/Carousel/types.d.ts +27 -0
- package/dist/types/components/Collapsible/constants.d.ts +6 -0
- package/dist/types/components/Collapsible/index.d.ts +85 -0
- package/dist/types/components/Collapsible/types.d.ts +22 -0
- package/dist/types/components/Command/constants.d.ts +4 -0
- package/dist/types/components/Command/index.d.ts +216 -0
- package/dist/types/components/Command/types.d.ts +59 -0
- package/dist/types/components/Validator/index.d.ts +1 -0
- package/dist/types/components/index.d.ts +3 -0
- package/dist/types/hooks/index.d.ts +1 -1
- package/dist/umd/index.css +2 -1
- package/dist/umd/index.css.gz +0 -0
- package/dist/umd/index.umd.cjs +1255 -5
- package/dist/umd/index.umd.cjs.gz +0 -0
- package/package.json +15 -3
- package/dist/es/Alert-DdAShH-x.js +0 -19
- package/dist/es/Avatar-BGTH7x40.js +0 -9
- package/dist/es/Badge-CYZ55qNe.js +0 -14
- package/dist/es/Breadcrumb-BTWTtzrN.js +0 -15
- package/dist/es/Button-GsSCWg5x.js +0 -24
- package/dist/es/Card-BhgzwQqo.js +0 -16
- package/dist/es/ChatBubble-4F481Agj.js +0 -9
- package/dist/es/Checkbox-C7vZGSTh.js +0 -51
- package/dist/es/Collapse-CbcSQig5.js +0 -53
- package/dist/es/ConfigProvider-K1UzjlRm.js +0 -45
- package/dist/es/Diff-B747pgwb.js +0 -64
- package/dist/es/Divider-BSu_1-AU.js +0 -9
- package/dist/es/Drawer-I2lCgyba.js +0 -40
- package/dist/es/Dropdown-B0J_c8Wv.js +0 -104
- package/dist/es/FileInput-CFg1wpsH.js +0 -33
- package/dist/es/Filter-nA8j-62U.js +0 -40
- package/dist/es/Form-C1b8Igns.js +0 -123
- package/dist/es/Icon-BulvH9Wm.js +0 -27
- package/dist/es/Indicator-BbW4iUkh.js +0 -9
- package/dist/es/Input-BUHFulIW.js +0 -42
- package/dist/es/Kbd-CeP2wkdE.js +0 -13
- package/dist/es/Link-Dks2bXo8.js +0 -11
- package/dist/es/Loading-DoBtVGWo.js +0 -92
- package/dist/es/Message-Ba_P4Wvy.js +0 -152
- package/dist/es/Notification-DzG8dLuk.js +0 -69
- package/dist/es/Overlay-DeyTycv0.js +0 -12
- package/dist/es/Pixelate-B21HKbSE.js +0 -39
- package/dist/es/Popconfirm-BqN3JxJ_.js +0 -23
- package/dist/es/Progress--6EJjbbM.js +0 -12
- package/dist/es/Radio-CrdrvrFH.js +0 -33
- package/dist/es/Resizable-By3ijQf0.js +0 -151
- package/dist/es/Select-Cq1Ucs_U.js +0 -133
- package/dist/es/Skeleton-ChCVgMSk.js +0 -15
- package/dist/es/Switch-DURmSH-T.js +0 -34
- package/dist/es/Table-BE2f9u65.js +0 -10
- package/dist/es/Tooltip-DR4Mc5Fh.js +0 -74
- package/dist/es/Validator-BYn72MYn.js +0 -40
- package/dist/es/hooks-dJGu-5DG.js +0 -170
- package/dist/es/utils-CnCdZsHG.js +0 -155
- package/dist/es/vendor-eombfMkP.js +0 -1351
- package/dist/theme/Form.css +0 -83
- package/dist/theme/Icon.css +0 -168
- package/dist/theme/Overlay.css +0 -12
- package/dist/theme/Tooltip.css +0 -235
package/dist/theme/Skeleton.css
CHANGED
|
@@ -1,192 +1 @@
|
|
|
1
|
-
|
|
2
|
-
.px-skeleton {
|
|
3
|
-
--px-skeleton-bg-color: var(--px-fill-color-darker, #e0e0e0);
|
|
4
|
-
--px-skeleton-shimmer-color: var(--px-fill-color-light, #f5f5f5);
|
|
5
|
-
--px-skeleton-border-color: var(--px-border-color, #c0c0c0);
|
|
6
|
-
--px-skeleton-shadow-color: var(--px-shadow-color, rgba(0, 0, 0, 0.15));
|
|
7
|
-
|
|
8
|
-
/* Inset bevels (sunken look — opposite of Button's raised look) */
|
|
9
|
-
--px-skeleton-inset-highlight: inset 2px 2px 0 0 rgba(255, 255, 255, 0.3);
|
|
10
|
-
--px-skeleton-inset-shadow: inset -2px -2px 0 0 rgba(0, 0, 0, 0.12);
|
|
11
|
-
|
|
12
|
-
/* Dither overlay color */
|
|
13
|
-
--px-skeleton-dither-color: rgba(255, 255, 255, 0.15);
|
|
14
|
-
}
|
|
15
|
-
/* ─── Base bone / row — positioned container ─── */
|
|
16
|
-
.px-skeleton__bone,
|
|
17
|
-
.px-skeleton__row {
|
|
18
|
-
display: block;
|
|
19
|
-
position: relative;
|
|
20
|
-
background: transparent;
|
|
21
|
-
|
|
22
|
-
/* Pixel drop-shadow traces the pseudo-element shapes */
|
|
23
|
-
filter: drop-shadow(2px 2px 0 var(--px-skeleton-shadow-color));
|
|
24
|
-
}
|
|
25
|
-
/* Border layer */
|
|
26
|
-
.px-skeleton__bone::before, .px-skeleton__row::before {
|
|
27
|
-
content: '';
|
|
28
|
-
position: absolute;
|
|
29
|
-
inset: 0;
|
|
30
|
-
background: var(--px-skeleton-border-color);
|
|
31
|
-
z-index: -1;
|
|
32
|
-
}
|
|
33
|
-
/* Fill layer — inset by border width */
|
|
34
|
-
.px-skeleton__bone::after, .px-skeleton__row::after {
|
|
35
|
-
content: '';
|
|
36
|
-
position: absolute;
|
|
37
|
-
inset: 2px;
|
|
38
|
-
background: var(--px-skeleton-bg-color);
|
|
39
|
-
box-shadow:
|
|
40
|
-
var(--px-skeleton-inset-highlight),
|
|
41
|
-
var(--px-skeleton-inset-shadow);
|
|
42
|
-
z-index: -1;
|
|
43
|
-
}
|
|
44
|
-
.px-skeleton__bone {
|
|
45
|
-
width: 100%;
|
|
46
|
-
height: 16px;
|
|
47
|
-
}
|
|
48
|
-
/* ─── Clip-paths per variant ─── */
|
|
49
|
-
/* Rectangular / Text — 2px chamfered pixel corners */
|
|
50
|
-
.px-skeleton--rectangular .px-skeleton__bone::before,
|
|
51
|
-
.px-skeleton--rectangular .px-skeleton__bone::after,
|
|
52
|
-
.px-skeleton--rectangular .px-skeleton__row::before,
|
|
53
|
-
.px-skeleton--rectangular .px-skeleton__row::after,
|
|
54
|
-
.px-skeleton--text .px-skeleton__bone::before,
|
|
55
|
-
.px-skeleton--text .px-skeleton__bone::after,
|
|
56
|
-
.px-skeleton--text .px-skeleton__row::before,
|
|
57
|
-
.px-skeleton--text .px-skeleton__row::after {
|
|
58
|
-
clip-path: polygon(
|
|
59
|
-
0 2px, 2px 2px, 2px 0,
|
|
60
|
-
calc(100% - 2px) 0, calc(100% - 2px) 2px, 100% 2px,
|
|
61
|
-
100% calc(100% - 2px), calc(100% - 2px) calc(100% - 2px), calc(100% - 2px) 100%,
|
|
62
|
-
2px 100%, 2px calc(100% - 2px), 0 calc(100% - 2px)
|
|
63
|
-
);
|
|
64
|
-
}
|
|
65
|
-
/* Rounded — 4px staircase corners */
|
|
66
|
-
.px-skeleton--rounded .px-skeleton__bone::before,
|
|
67
|
-
.px-skeleton--rounded .px-skeleton__bone::after {
|
|
68
|
-
clip-path: polygon(
|
|
69
|
-
0 4px, 2px 4px, 2px 2px, 4px 2px, 4px 0,
|
|
70
|
-
calc(100% - 4px) 0, calc(100% - 4px) 2px, calc(100% - 2px) 2px, calc(100% - 2px) 4px, 100% 4px,
|
|
71
|
-
100% calc(100% - 4px), calc(100% - 2px) calc(100% - 4px), calc(100% - 2px) calc(100% - 2px), calc(100% - 4px) calc(100% - 2px), calc(100% - 4px) 100%,
|
|
72
|
-
4px 100%, 4px calc(100% - 2px), 2px calc(100% - 2px), 2px calc(100% - 4px), 0 calc(100% - 4px)
|
|
73
|
-
);
|
|
74
|
-
}
|
|
75
|
-
/* Circular — 4-step staircase pixel circle (matching Avatar/Button) */
|
|
76
|
-
.px-skeleton--circular .px-skeleton__bone::before,
|
|
77
|
-
.px-skeleton--circular .px-skeleton__bone::after {
|
|
78
|
-
clip-path: polygon(
|
|
79
|
-
0 10px, 2px 10px, 2px 6px, 4px 6px, 4px 4px, 6px 4px, 6px 2px, 10px 2px, 10px 0,
|
|
80
|
-
calc(100% - 10px) 0, calc(100% - 10px) 2px, calc(100% - 6px) 2px, calc(100% - 6px) 4px, calc(100% - 4px) 4px, calc(100% - 4px) 6px, calc(100% - 2px) 6px, calc(100% - 2px) 10px, 100% 10px,
|
|
81
|
-
100% calc(100% - 10px), calc(100% - 2px) calc(100% - 10px), calc(100% - 2px) calc(100% - 6px), calc(100% - 4px) calc(100% - 6px), calc(100% - 4px) calc(100% - 4px), calc(100% - 6px) calc(100% - 4px), calc(100% - 6px) calc(100% - 2px), calc(100% - 10px) calc(100% - 2px), calc(100% - 10px) 100%,
|
|
82
|
-
10px 100%, 10px calc(100% - 2px), 6px calc(100% - 2px), 6px calc(100% - 4px), 4px calc(100% - 4px), 4px calc(100% - 6px), 2px calc(100% - 6px), 2px calc(100% - 10px), 0 calc(100% - 10px)
|
|
83
|
-
);
|
|
84
|
-
}
|
|
85
|
-
/* ─── Animation: Shimmer — Scanline sweep ─── */
|
|
86
|
-
@keyframes px-skeleton-shimmer {
|
|
87
|
-
0% { background-position: -30% 0, 0 0;
|
|
88
|
-
}
|
|
89
|
-
100% { background-position: 130% 0, 0 0;
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
.px-skeleton.is-animated.is-animation-shimmer .px-skeleton__bone::after,
|
|
93
|
-
.px-skeleton.is-animated.is-animation-shimmer .px-skeleton__row::after {
|
|
94
|
-
background:
|
|
95
|
-
/* Narrow hard-edged highlight band — scanline-like */
|
|
96
|
-
linear-gradient(
|
|
97
|
-
90deg,
|
|
98
|
-
transparent 0%,
|
|
99
|
-
transparent 40%,
|
|
100
|
-
var(--px-skeleton-shimmer-color) 45%,
|
|
101
|
-
var(--px-skeleton-shimmer-color) 55%,
|
|
102
|
-
transparent 60%,
|
|
103
|
-
transparent 100%
|
|
104
|
-
),
|
|
105
|
-
var(--px-skeleton-bg-color);
|
|
106
|
-
background-size: 200% 100%, 100% 100%;
|
|
107
|
-
animation: px-skeleton-shimmer 1.5s steps(12, jump-none) infinite;
|
|
108
|
-
}
|
|
109
|
-
/* ─── Animation: Pulse — Two-frame blink ─── */
|
|
110
|
-
@keyframes px-skeleton-pulse {
|
|
111
|
-
0%, 100% { opacity: 1;
|
|
112
|
-
}
|
|
113
|
-
50% { opacity: 0.5;
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
.px-skeleton.is-animated.is-animation-pulse .px-skeleton__bone::after,
|
|
117
|
-
.px-skeleton.is-animated.is-animation-pulse .px-skeleton__row::after {
|
|
118
|
-
animation: px-skeleton-pulse 1.2s steps(2, jump-none) infinite;
|
|
119
|
-
}
|
|
120
|
-
/* ─── Animation: Dither — Checkerboard dissolve ─── */
|
|
121
|
-
@keyframes px-skeleton-dither {
|
|
122
|
-
0% { background-position: 0 0, 0 0;
|
|
123
|
-
}
|
|
124
|
-
25% { background-position: 2px 0, 0 0;
|
|
125
|
-
}
|
|
126
|
-
50% { background-position: 2px 2px, 0 0;
|
|
127
|
-
}
|
|
128
|
-
75% { background-position: 0 2px, 0 0;
|
|
129
|
-
}
|
|
130
|
-
100% { background-position: 0 0, 0 0;
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
.px-skeleton.is-animated.is-animation-dither .px-skeleton__bone::after,
|
|
134
|
-
.px-skeleton.is-animated.is-animation-dither .px-skeleton__row::after {
|
|
135
|
-
background:
|
|
136
|
-
/* 2×2 pixel checkerboard dither pattern */
|
|
137
|
-
repeating-conic-gradient(
|
|
138
|
-
var(--px-skeleton-dither-color) 0% 25%,
|
|
139
|
-
transparent 0% 50%
|
|
140
|
-
) 0 0 / 4px 4px,
|
|
141
|
-
var(--px-skeleton-bg-color);
|
|
142
|
-
animation: px-skeleton-dither 1.6s steps(4, jump-none) infinite;
|
|
143
|
-
}
|
|
144
|
-
/* ─── Text variant — thin horizontal bars ─── */
|
|
145
|
-
.px-skeleton--text .px-skeleton__bone {
|
|
146
|
-
height: 12px;
|
|
147
|
-
}
|
|
148
|
-
.px-skeleton--text .px-skeleton__row {
|
|
149
|
-
height: 12px;
|
|
150
|
-
margin-bottom: 8px;
|
|
151
|
-
}
|
|
152
|
-
.px-skeleton--text .px-skeleton__row:last-child {
|
|
153
|
-
margin-bottom: 0;
|
|
154
|
-
}
|
|
155
|
-
/* ─── Circular variant ─── */
|
|
156
|
-
.px-skeleton--circular .px-skeleton__bone {
|
|
157
|
-
width: 40px;
|
|
158
|
-
height: 40px;
|
|
159
|
-
}
|
|
160
|
-
/* ─── Size: Large ─── */
|
|
161
|
-
.px-skeleton--large .px-skeleton__bone {
|
|
162
|
-
height: 24px;
|
|
163
|
-
}
|
|
164
|
-
.px-skeleton--large .px-skeleton__row {
|
|
165
|
-
height: 18px;
|
|
166
|
-
}
|
|
167
|
-
.px-skeleton--large.px-skeleton--circular .px-skeleton__bone {
|
|
168
|
-
width: 56px;
|
|
169
|
-
height: 56px;
|
|
170
|
-
}
|
|
171
|
-
/* ─── Size: Small ─── */
|
|
172
|
-
.px-skeleton--small .px-skeleton__bone {
|
|
173
|
-
height: 12px;
|
|
174
|
-
}
|
|
175
|
-
.px-skeleton--small .px-skeleton__row {
|
|
176
|
-
height: 10px;
|
|
177
|
-
margin-bottom: 6px;
|
|
178
|
-
}
|
|
179
|
-
.px-skeleton--small.px-skeleton--circular .px-skeleton__bone {
|
|
180
|
-
width: 28px;
|
|
181
|
-
height: 28px;
|
|
182
|
-
}
|
|
183
|
-
/* ─── Dark mode ─── */
|
|
184
|
-
.px-dark .px-skeleton {
|
|
185
|
-
--px-skeleton-bg-color: var(--px-fill-color-darker, #3a3a3a);
|
|
186
|
-
--px-skeleton-shimmer-color: var(--px-fill-color, #4a4a4a);
|
|
187
|
-
--px-skeleton-border-color: var(--px-border-color, #555);
|
|
188
|
-
--px-skeleton-shadow-color: rgba(0, 0, 0, 0.3);
|
|
189
|
-
--px-skeleton-inset-highlight: inset 2px 2px 0 0 rgba(255, 255, 255, 0.08);
|
|
190
|
-
--px-skeleton-inset-shadow: inset -2px -2px 0 0 rgba(0, 0, 0, 0.2);
|
|
191
|
-
--px-skeleton-dither-color: rgba(255, 255, 255, 0.08);
|
|
192
|
-
}
|
|
1
|
+
.px-skeleton{--px-skeleton-bg-color:var(--px-fill-color-darker,#e0e0e0);--px-skeleton-shimmer-color:var(--px-fill-color-light,#f5f5f5);--px-skeleton-border-color:var(--px-border-color,silver);--px-skeleton-shadow-color:var(--px-shadow-color,#00000026);--px-skeleton-inset-highlight:inset 2px 2px 0 0 #ffffff4d;--px-skeleton-inset-shadow:inset -2px -2px 0 0 #0000001f;--px-skeleton-dither-color:#ffffff26}.px-skeleton__bone,.px-skeleton__row{filter:drop-shadow(2px 2px 0 var(--px-skeleton-shadow-color));background:0 0;display:block;position:relative}.px-skeleton__bone:before,.px-skeleton__row:before{content:"";background:var(--px-skeleton-border-color);z-index:-1;position:absolute;inset:0}.px-skeleton__bone:after,.px-skeleton__row:after{content:"";background:var(--px-skeleton-bg-color);box-shadow:var(--px-skeleton-inset-highlight), var(--px-skeleton-inset-shadow);z-index:-1;position:absolute;inset:2px}.px-skeleton__bone{width:100%;height:16px}.px-skeleton--rectangular .px-skeleton__bone:before,.px-skeleton--rectangular .px-skeleton__bone:after,.px-skeleton--rectangular .px-skeleton__row:before,.px-skeleton--rectangular .px-skeleton__row:after,.px-skeleton--text .px-skeleton__bone:before,.px-skeleton--text .px-skeleton__bone:after,.px-skeleton--text .px-skeleton__row:before,.px-skeleton--text .px-skeleton__row:after{clip-path:polygon(0 2px,2px 2px,2px 0,calc(100% - 2px) 0,calc(100% - 2px) 2px,100% 2px,100% calc(100% - 2px),calc(100% - 2px) calc(100% - 2px),calc(100% - 2px) 100%,2px 100%,2px calc(100% - 2px),0 calc(100% - 2px))}.px-skeleton--rounded .px-skeleton__bone:before,.px-skeleton--rounded .px-skeleton__bone:after{clip-path:polygon(0 4px,2px 4px,2px 2px,4px 2px,4px 0,calc(100% - 4px) 0,calc(100% - 4px) 2px,calc(100% - 2px) 2px,calc(100% - 2px) 4px,100% 4px,100% calc(100% - 4px),calc(100% - 2px) calc(100% - 4px),calc(100% - 2px) calc(100% - 2px),calc(100% - 4px) calc(100% - 2px),calc(100% - 4px) 100%,4px 100%,4px calc(100% - 2px),2px calc(100% - 2px),2px calc(100% - 4px),0 calc(100% - 4px))}.px-skeleton--circular .px-skeleton__bone:before,.px-skeleton--circular .px-skeleton__bone:after{clip-path:polygon(0 10px,2px 10px,2px 6px,4px 6px,4px 4px,6px 4px,6px 2px,10px 2px,10px 0,calc(100% - 10px) 0,calc(100% - 10px) 2px,calc(100% - 6px) 2px,calc(100% - 6px) 4px,calc(100% - 4px) 4px,calc(100% - 4px) 6px,calc(100% - 2px) 6px,calc(100% - 2px) 10px,100% 10px,100% calc(100% - 10px),calc(100% - 2px) calc(100% - 10px),calc(100% - 2px) calc(100% - 6px),calc(100% - 4px) calc(100% - 6px),calc(100% - 4px) calc(100% - 4px),calc(100% - 6px) calc(100% - 4px),calc(100% - 6px) calc(100% - 2px),calc(100% - 10px) calc(100% - 2px),calc(100% - 10px) 100%,10px 100%,10px calc(100% - 2px),6px calc(100% - 2px),6px calc(100% - 4px),4px calc(100% - 4px),4px calc(100% - 6px),2px calc(100% - 6px),2px calc(100% - 10px),0 calc(100% - 10px))}@keyframes px-skeleton-shimmer{0%{background-position:-30% 0,0 0}to{background-position:130% 0,0 0}}.px-skeleton.is-animated.is-animation-shimmer .px-skeleton__bone:after,.px-skeleton.is-animated.is-animation-shimmer .px-skeleton__row:after{background: linear-gradient(90deg, transparent 0%, transparent 40%, var(--px-skeleton-shimmer-color) 45%, var(--px-skeleton-shimmer-color) 55%, transparent 60%, transparent 100%), var(--px-skeleton-bg-color);background-size:200% 100%,100% 100%;animation:1.5s steps(12,jump-none) infinite px-skeleton-shimmer}@keyframes px-skeleton-pulse{0%,to{opacity:1}50%{opacity:.5}}.px-skeleton.is-animated.is-animation-pulse .px-skeleton__bone:after,.px-skeleton.is-animated.is-animation-pulse .px-skeleton__row:after{animation:1.2s steps(2,jump-none) infinite px-skeleton-pulse}@keyframes px-skeleton-dither{0%{background-position:0 0,0 0}25%{background-position:2px 0,0 0}50%{background-position:2px 2px,0 0}75%{background-position:0 2px,0 0}to{background-position:0 0,0 0}}.px-skeleton.is-animated.is-animation-dither .px-skeleton__bone:after,.px-skeleton.is-animated.is-animation-dither .px-skeleton__row:after{background: repeating-conic-gradient(var(--px-skeleton-dither-color) 0% 25%, transparent 0% 50%) 0 0 / 4px 4px, var(--px-skeleton-bg-color);animation:1.6s steps(4,jump-none) infinite px-skeleton-dither}.px-skeleton--text .px-skeleton__bone{height:12px}.px-skeleton--text .px-skeleton__row{height:12px;margin-bottom:8px}.px-skeleton--text .px-skeleton__row:last-child{margin-bottom:0}.px-skeleton--circular .px-skeleton__bone{width:40px;height:40px}.px-skeleton--large .px-skeleton__bone{height:24px}.px-skeleton--large .px-skeleton__row{height:18px}.px-skeleton--large.px-skeleton--circular .px-skeleton__bone{width:56px;height:56px}.px-skeleton--small .px-skeleton__bone{height:12px}.px-skeleton--small .px-skeleton__row{height:10px;margin-bottom:6px}.px-skeleton--small.px-skeleton--circular .px-skeleton__bone{width:28px;height:28px}.px-dark .px-skeleton{--px-skeleton-bg-color:var(--px-fill-color-darker,#3a3a3a);--px-skeleton-shimmer-color:var(--px-fill-color,#4a4a4a);--px-skeleton-border-color:var(--px-border-color,#555);--px-skeleton-shadow-color:#0000004d;--px-skeleton-inset-highlight:inset 2px 2px 0 0 #ffffff14;--px-skeleton-inset-shadow:inset -2px -2px 0 0 #0003;--px-skeleton-dither-color:#ffffff14}
|
package/dist/theme/Switch.css
CHANGED
|
@@ -1,323 +1 @@
|
|
|
1
|
-
|
|
2
|
-
.px-switch {
|
|
3
|
-
--px-switch-on-color: var(--px-color-primary);
|
|
4
|
-
--px-switch-off-color: var(--px-fill-color-darker);
|
|
5
|
-
--px-switch-on-border-color: var(--px-color-primary-dark);
|
|
6
|
-
--px-switch-off-border-color: var(--px-border-color);
|
|
7
|
-
--px-switch-shadow-color: var(--px-shadow-color);
|
|
8
|
-
--px-switch-handle-color: var(--px-color-white);
|
|
9
|
-
|
|
10
|
-
/* Track groove (sunken bevel) */
|
|
11
|
-
--px-switch-inset-shadow: inset 2px 2px 0 0 rgba(0, 0, 0, 0.12);
|
|
12
|
-
--px-switch-inset-highlight: inset -2px -2px 0 0 rgba(255, 255, 255, 0.1);
|
|
13
|
-
|
|
14
|
-
/* Handle (raised bevel) */
|
|
15
|
-
--px-switch-handle-highlight: inset 2px 2px 0 0 rgba(255, 255, 255, 0.3);
|
|
16
|
-
--px-switch-handle-shadow: inset -2px -2px 0 0 rgba(0, 0, 0, 0.12);
|
|
17
|
-
}
|
|
18
|
-
/* Base Switch Styles - Pixel Toggle */
|
|
19
|
-
.px-switch {
|
|
20
|
-
display: inline-flex;
|
|
21
|
-
align-items: center;
|
|
22
|
-
font-size: var(--px-font-size-base);
|
|
23
|
-
font-family: var(--px-font-family);
|
|
24
|
-
line-height: 20px;
|
|
25
|
-
height: 32px;
|
|
26
|
-
}
|
|
27
|
-
.px-switch .px-switch__input {
|
|
28
|
-
position: absolute;
|
|
29
|
-
width: 0;
|
|
30
|
-
height: 0;
|
|
31
|
-
opacity: 0;
|
|
32
|
-
margin: 0;
|
|
33
|
-
}
|
|
34
|
-
.px-switch .px-switch__input:focus-visible ~ .px-switch__core {
|
|
35
|
-
outline: 2px dashed var(--px-switch-on-color);
|
|
36
|
-
outline-offset: 2px;
|
|
37
|
-
}
|
|
38
|
-
/* Disabled state */
|
|
39
|
-
.px-switch.is-disabled {
|
|
40
|
-
opacity: 0.5;
|
|
41
|
-
}
|
|
42
|
-
.px-switch.is-disabled .px-switch__core {
|
|
43
|
-
cursor: not-allowed;
|
|
44
|
-
}
|
|
45
|
-
/* Checked state */
|
|
46
|
-
.px-switch.is-checked .px-switch__core::before {
|
|
47
|
-
background: var(--px-switch-on-border-color);
|
|
48
|
-
}
|
|
49
|
-
.px-switch.is-checked .px-switch__core::after {
|
|
50
|
-
background: var(--px-switch-on-color);
|
|
51
|
-
box-shadow: inset 2px 2px 0 0 rgba(0, 0, 0, 0.06),
|
|
52
|
-
inset -2px -2px 0 0 rgba(255, 255, 255, 0.15);
|
|
53
|
-
}
|
|
54
|
-
.px-switch.is-checked .px-switch__core {
|
|
55
|
-
|
|
56
|
-
filter: drop-shadow(
|
|
57
|
-
var(--px-shadow-offset-x) var(--px-shadow-offset-y) 0px var(--px-switch-on-border-color)
|
|
58
|
-
);
|
|
59
|
-
}
|
|
60
|
-
.px-switch.is-checked .px-switch__core .px-switch__core-action {
|
|
61
|
-
left: calc(100% - 20px);
|
|
62
|
-
}
|
|
63
|
-
.px-switch.is-checked .px-switch__core .px-switch__core-inner {
|
|
64
|
-
padding: 0 22px 0 6px;
|
|
65
|
-
}
|
|
66
|
-
/* Size variants */
|
|
67
|
-
.px-switch--large {
|
|
68
|
-
font-size: var(--px-font-size-base);
|
|
69
|
-
line-height: 24px;
|
|
70
|
-
height: 40px;
|
|
71
|
-
}
|
|
72
|
-
.px-switch--large .px-switch__core {
|
|
73
|
-
min-width: 60px;
|
|
74
|
-
height: 32px;
|
|
75
|
-
}
|
|
76
|
-
.px-switch--large .px-switch__core .px-switch__core-action {
|
|
77
|
-
width: 24px;
|
|
78
|
-
height: 24px;
|
|
79
|
-
}
|
|
80
|
-
.px-switch--large.is-checked .px-switch__core .px-switch__core-action {
|
|
81
|
-
left: calc(100% - 28px);
|
|
82
|
-
}
|
|
83
|
-
.px-switch--small {
|
|
84
|
-
font-size: var(--px-font-size-small);
|
|
85
|
-
line-height: 16px;
|
|
86
|
-
height: 24px;
|
|
87
|
-
}
|
|
88
|
-
.px-switch--small .px-switch__core {
|
|
89
|
-
min-width: 40px;
|
|
90
|
-
height: 20px;
|
|
91
|
-
filter: drop-shadow(2px 2px 0px var(--px-switch-shadow-color));
|
|
92
|
-
}
|
|
93
|
-
.px-switch--small .px-switch__core .px-switch__core-action {
|
|
94
|
-
width: 14px;
|
|
95
|
-
height: 14px;
|
|
96
|
-
}
|
|
97
|
-
.px-switch--small.is-checked .px-switch__core {
|
|
98
|
-
filter: drop-shadow(2px 2px 0px var(--px-switch-on-border-color));
|
|
99
|
-
}
|
|
100
|
-
.px-switch--small.is-checked .px-switch__core .px-switch__core-action {
|
|
101
|
-
left: calc(100% - 16px);
|
|
102
|
-
}
|
|
103
|
-
/* Core element - The actual toggle with pixel style */
|
|
104
|
-
.px-switch__core {
|
|
105
|
-
cursor: pointer;
|
|
106
|
-
display: inline-flex;
|
|
107
|
-
align-items: center;
|
|
108
|
-
position: relative;
|
|
109
|
-
height: 26px;
|
|
110
|
-
min-width: 50px;
|
|
111
|
-
box-sizing: border-box;
|
|
112
|
-
outline: none;
|
|
113
|
-
background: transparent;
|
|
114
|
-
border: none;
|
|
115
|
-
|
|
116
|
-
/* Pixel shadow via drop-shadow */
|
|
117
|
-
filter: drop-shadow(
|
|
118
|
-
var(--px-shadow-offset-x) var(--px-shadow-offset-y) 0px var(--px-switch-shadow-color)
|
|
119
|
-
);
|
|
120
|
-
|
|
121
|
-
/* No smooth transitions */
|
|
122
|
-
transition: none;
|
|
123
|
-
}
|
|
124
|
-
/* Border layer — pixel shape */
|
|
125
|
-
.px-switch__core::before {
|
|
126
|
-
content: "";
|
|
127
|
-
position: absolute;
|
|
128
|
-
inset: 0;
|
|
129
|
-
background: var(--px-switch-off-border-color);
|
|
130
|
-
clip-path: polygon(
|
|
131
|
-
0 4px,
|
|
132
|
-
2px 4px,
|
|
133
|
-
2px 2px,
|
|
134
|
-
4px 2px,
|
|
135
|
-
4px 0,
|
|
136
|
-
calc(100% - 4px) 0,
|
|
137
|
-
calc(100% - 4px) 2px,
|
|
138
|
-
calc(100% - 2px) 2px,
|
|
139
|
-
calc(100% - 2px) 4px,
|
|
140
|
-
100% 4px,
|
|
141
|
-
100% calc(100% - 4px),
|
|
142
|
-
calc(100% - 2px) calc(100% - 4px),
|
|
143
|
-
calc(100% - 2px) calc(100% - 2px),
|
|
144
|
-
calc(100% - 4px) calc(100% - 2px),
|
|
145
|
-
calc(100% - 4px) 100%,
|
|
146
|
-
4px 100%,
|
|
147
|
-
4px calc(100% - 2px),
|
|
148
|
-
2px calc(100% - 2px),
|
|
149
|
-
2px calc(100% - 4px),
|
|
150
|
-
0 calc(100% - 4px)
|
|
151
|
-
);
|
|
152
|
-
z-index: 0;
|
|
153
|
-
}
|
|
154
|
-
/* Fill layer — pixel shape with sunken groove bevel */
|
|
155
|
-
.px-switch__core::after {
|
|
156
|
-
content: "";
|
|
157
|
-
position: absolute;
|
|
158
|
-
inset: 2px;
|
|
159
|
-
background: var(--px-switch-off-color);
|
|
160
|
-
clip-path: polygon(
|
|
161
|
-
0 4px,
|
|
162
|
-
2px 4px,
|
|
163
|
-
2px 2px,
|
|
164
|
-
4px 2px,
|
|
165
|
-
4px 0,
|
|
166
|
-
calc(100% - 4px) 0,
|
|
167
|
-
calc(100% - 4px) 2px,
|
|
168
|
-
calc(100% - 2px) 2px,
|
|
169
|
-
calc(100% - 2px) 4px,
|
|
170
|
-
100% 4px,
|
|
171
|
-
100% calc(100% - 4px),
|
|
172
|
-
calc(100% - 2px) calc(100% - 4px),
|
|
173
|
-
calc(100% - 2px) calc(100% - 2px),
|
|
174
|
-
calc(100% - 4px) calc(100% - 2px),
|
|
175
|
-
calc(100% - 4px) 100%,
|
|
176
|
-
4px 100%,
|
|
177
|
-
4px calc(100% - 2px),
|
|
178
|
-
2px calc(100% - 2px),
|
|
179
|
-
2px calc(100% - 4px),
|
|
180
|
-
0 calc(100% - 4px)
|
|
181
|
-
);
|
|
182
|
-
box-shadow: var(--px-switch-inset-shadow), var(--px-switch-inset-highlight);
|
|
183
|
-
z-index: 0;
|
|
184
|
-
}
|
|
185
|
-
/* The toggle handle - pixel square */
|
|
186
|
-
.px-switch__core .px-switch__core-action {
|
|
187
|
-
position: absolute;
|
|
188
|
-
left: 4px;
|
|
189
|
-
width: 18px;
|
|
190
|
-
height: 18px;
|
|
191
|
-
background: transparent;
|
|
192
|
-
transition: left 0.15s steps(3);
|
|
193
|
-
z-index: 2;
|
|
194
|
-
display: flex;
|
|
195
|
-
align-items: center;
|
|
196
|
-
justify-content: center;
|
|
197
|
-
}
|
|
198
|
-
/* Handle border layer */
|
|
199
|
-
.px-switch__core .px-switch__core-action::before {
|
|
200
|
-
content: "";
|
|
201
|
-
position: absolute;
|
|
202
|
-
inset: 0;
|
|
203
|
-
background: var(--px-border-color);
|
|
204
|
-
clip-path: polygon(
|
|
205
|
-
0 2px,
|
|
206
|
-
2px 2px,
|
|
207
|
-
2px 0,
|
|
208
|
-
calc(100% - 2px) 0,
|
|
209
|
-
calc(100% - 2px) 2px,
|
|
210
|
-
100% 2px,
|
|
211
|
-
100% calc(100% - 2px),
|
|
212
|
-
calc(100% - 2px) calc(100% - 2px),
|
|
213
|
-
calc(100% - 2px) 100%,
|
|
214
|
-
2px 100%,
|
|
215
|
-
2px calc(100% - 2px),
|
|
216
|
-
0 calc(100% - 2px)
|
|
217
|
-
);
|
|
218
|
-
}
|
|
219
|
-
/* Handle fill layer — raised bevel like a game D-pad button */
|
|
220
|
-
.px-switch__core .px-switch__core-action::after {
|
|
221
|
-
content: "";
|
|
222
|
-
position: absolute;
|
|
223
|
-
inset: 2px;
|
|
224
|
-
background: var(--px-switch-handle-color);
|
|
225
|
-
clip-path: polygon(
|
|
226
|
-
0 2px,
|
|
227
|
-
2px 2px,
|
|
228
|
-
2px 0,
|
|
229
|
-
calc(100% - 2px) 0,
|
|
230
|
-
calc(100% - 2px) 2px,
|
|
231
|
-
100% 2px,
|
|
232
|
-
100% calc(100% - 2px),
|
|
233
|
-
calc(100% - 2px) calc(100% - 2px),
|
|
234
|
-
calc(100% - 2px) 100%,
|
|
235
|
-
2px 100%,
|
|
236
|
-
2px calc(100% - 2px),
|
|
237
|
-
0 calc(100% - 2px)
|
|
238
|
-
);
|
|
239
|
-
box-shadow: var(--px-switch-handle-highlight), var(--px-switch-handle-shadow);
|
|
240
|
-
}
|
|
241
|
-
/* Icon inside thumb */
|
|
242
|
-
.px-switch__core .px-switch__core-action .px-switch__icon {
|
|
243
|
-
position: relative;
|
|
244
|
-
z-index: 3;
|
|
245
|
-
width: 12px !important;
|
|
246
|
-
height: 12px !important;
|
|
247
|
-
}
|
|
248
|
-
/* Inner text container */
|
|
249
|
-
.px-switch__core .px-switch__core-inner {
|
|
250
|
-
width: 100%;
|
|
251
|
-
height: 16px;
|
|
252
|
-
display: flex;
|
|
253
|
-
justify-content: center;
|
|
254
|
-
align-items: center;
|
|
255
|
-
overflow: hidden;
|
|
256
|
-
padding: 0 6px 0 22px;
|
|
257
|
-
z-index: 1;
|
|
258
|
-
position: relative;
|
|
259
|
-
}
|
|
260
|
-
.px-switch__core .px-switch__core-inner .px-switch__core-inner-text {
|
|
261
|
-
font-size: var(--px-font-size-extra-small);
|
|
262
|
-
font-family: var(--px-font-family);
|
|
263
|
-
color: var(--px-color-white);
|
|
264
|
-
user-select: none;
|
|
265
|
-
overflow: hidden;
|
|
266
|
-
text-overflow: ellipsis;
|
|
267
|
-
white-space: nowrap;
|
|
268
|
-
text-transform: uppercase;
|
|
269
|
-
letter-spacing: 1px;
|
|
270
|
-
}
|
|
271
|
-
/* Type variants */
|
|
272
|
-
.px-switch--primary {
|
|
273
|
-
--px-switch-on-color: var(--px-color-primary);
|
|
274
|
-
--px-switch-on-border-color: var(--px-color-primary-dark);
|
|
275
|
-
}
|
|
276
|
-
.px-switch--primary.is-checked .px-switch__core {
|
|
277
|
-
filter: drop-shadow(
|
|
278
|
-
var(--px-shadow-offset-x) var(--px-shadow-offset-y) 0px var(--px-color-primary-dark)
|
|
279
|
-
);
|
|
280
|
-
}
|
|
281
|
-
.px-switch--success {
|
|
282
|
-
--px-switch-on-color: var(--px-color-success);
|
|
283
|
-
--px-switch-on-border-color: var(--px-color-success-dark);
|
|
284
|
-
}
|
|
285
|
-
.px-switch--success.is-checked .px-switch__core {
|
|
286
|
-
filter: drop-shadow(
|
|
287
|
-
var(--px-shadow-offset-x) var(--px-shadow-offset-y) 0px var(--px-color-success-dark)
|
|
288
|
-
);
|
|
289
|
-
}
|
|
290
|
-
.px-switch--info {
|
|
291
|
-
--px-switch-on-color: var(--px-color-info);
|
|
292
|
-
--px-switch-on-border-color: var(--px-color-info-dark);
|
|
293
|
-
}
|
|
294
|
-
.px-switch--info.is-checked .px-switch__core {
|
|
295
|
-
filter: drop-shadow(
|
|
296
|
-
var(--px-shadow-offset-x) var(--px-shadow-offset-y) 0px var(--px-color-info-dark)
|
|
297
|
-
);
|
|
298
|
-
}
|
|
299
|
-
.px-switch--warning {
|
|
300
|
-
--px-switch-on-color: var(--px-color-warning);
|
|
301
|
-
--px-switch-on-border-color: var(--px-color-warning-dark);
|
|
302
|
-
}
|
|
303
|
-
.px-switch--warning.is-checked .px-switch__core {
|
|
304
|
-
filter: drop-shadow(
|
|
305
|
-
var(--px-shadow-offset-x) var(--px-shadow-offset-y) 0px var(--px-color-warning-dark)
|
|
306
|
-
);
|
|
307
|
-
}
|
|
308
|
-
.px-switch--danger {
|
|
309
|
-
--px-switch-on-color: var(--px-color-danger);
|
|
310
|
-
--px-switch-on-border-color: var(--px-color-danger-dark);
|
|
311
|
-
}
|
|
312
|
-
.px-switch--danger.is-checked .px-switch__core {
|
|
313
|
-
filter: drop-shadow(
|
|
314
|
-
var(--px-shadow-offset-x) var(--px-shadow-offset-y) 0px var(--px-color-danger-dark)
|
|
315
|
-
);
|
|
316
|
-
}
|
|
317
|
-
/* Dark mode bevel adjustments */
|
|
318
|
-
html.dark .px-switch {
|
|
319
|
-
--px-switch-inset-shadow: inset 2px 2px 0 0 rgba(0, 0, 0, 0.25);
|
|
320
|
-
--px-switch-inset-highlight: inset -2px -2px 0 0 rgba(255, 255, 255, 0.05);
|
|
321
|
-
--px-switch-handle-highlight: inset 2px 2px 0 0 rgba(255, 255, 255, 0.15);
|
|
322
|
-
--px-switch-handle-shadow: inset -2px -2px 0 0 rgba(0, 0, 0, 0.2);
|
|
323
|
-
}
|
|
1
|
+
.px-switch{--px-switch-on-color:var(--px-color-primary);--px-switch-off-color:var(--px-fill-color-darker);--px-switch-on-border-color:var(--px-color-primary-dark);--px-switch-off-border-color:var(--px-border-color);--px-switch-shadow-color:var(--px-shadow-color);--px-switch-handle-color:var(--px-color-white);--px-switch-inset-shadow:inset 2px 2px 0 0 #0000001f;--px-switch-inset-highlight:inset -2px -2px 0 0 #ffffff1a;--px-switch-handle-highlight:inset 2px 2px 0 0 #ffffff4d;--px-switch-handle-shadow:inset -2px -2px 0 0 #0000001f;font-size:var(--px-font-size-base);font-family:var(--px-font-family);align-items:center;height:32px;line-height:20px;display:inline-flex}.px-switch .px-switch__input{opacity:0;width:0;height:0;margin:0;position:absolute}.px-switch .px-switch__input:focus-visible~.px-switch__core{outline:2px dashed var(--px-switch-on-color);outline-offset:2px}.px-switch.is-disabled{opacity:.5}.px-switch.is-disabled .px-switch__core{cursor:not-allowed}.px-switch.is-checked .px-switch__core:before{background:var(--px-switch-on-border-color)}.px-switch.is-checked .px-switch__core:after{background:var(--px-switch-on-color);box-shadow:inset 2px 2px #0000000f,inset -2px -2px #ffffff26}.px-switch.is-checked .px-switch__core{filter:drop-shadow(var(--px-shadow-offset-x) var(--px-shadow-offset-y) 0px var(--px-switch-on-border-color))}.px-switch.is-checked .px-switch__core .px-switch__core-action{left:calc(100% - 20px)}.px-switch.is-checked .px-switch__core .px-switch__core-inner{padding:0 22px 0 6px}.px-switch--large{font-size:var(--px-font-size-base);height:40px;line-height:24px}.px-switch--large .px-switch__core{min-width:60px;height:32px}.px-switch--large .px-switch__core .px-switch__core-action{width:24px;height:24px}.px-switch--large.is-checked .px-switch__core .px-switch__core-action{left:calc(100% - 28px)}.px-switch--small{font-size:var(--px-font-size-small);height:24px;line-height:16px}.px-switch--small .px-switch__core{min-width:40px;height:20px;filter:drop-shadow(2px 2px 0px var(--px-switch-shadow-color))}.px-switch--small .px-switch__core .px-switch__core-action{width:14px;height:14px}.px-switch--small.is-checked .px-switch__core{filter:drop-shadow(2px 2px 0px var(--px-switch-on-border-color))}.px-switch--small.is-checked .px-switch__core .px-switch__core-action{left:calc(100% - 16px)}.px-switch__core{cursor:pointer;box-sizing:border-box;min-width:50px;height:26px;filter:drop-shadow(var(--px-shadow-offset-x) var(--px-shadow-offset-y) 0px var(--px-switch-shadow-color));background:0 0;border:none;outline:none;align-items:center;transition:none;display:inline-flex;position:relative}.px-switch__core:before{content:"";background:var(--px-switch-off-border-color);clip-path:polygon(0 4px,2px 4px,2px 2px,4px 2px,4px 0,calc(100% - 4px) 0,calc(100% - 4px) 2px,calc(100% - 2px) 2px,calc(100% - 2px) 4px,100% 4px,100% calc(100% - 4px),calc(100% - 2px) calc(100% - 4px),calc(100% - 2px) calc(100% - 2px),calc(100% - 4px) calc(100% - 2px),calc(100% - 4px) 100%,4px 100%,4px calc(100% - 2px),2px calc(100% - 2px),2px calc(100% - 4px),0 calc(100% - 4px));z-index:0;position:absolute;inset:0}.px-switch__core:after{content:"";background:var(--px-switch-off-color);clip-path:polygon(0 4px,2px 4px,2px 2px,4px 2px,4px 0,calc(100% - 4px) 0,calc(100% - 4px) 2px,calc(100% - 2px) 2px,calc(100% - 2px) 4px,100% 4px,100% calc(100% - 4px),calc(100% - 2px) calc(100% - 4px),calc(100% - 2px) calc(100% - 2px),calc(100% - 4px) calc(100% - 2px),calc(100% - 4px) 100%,4px 100%,4px calc(100% - 2px),2px calc(100% - 2px),2px calc(100% - 4px),0 calc(100% - 4px));box-shadow:var(--px-switch-inset-shadow), var(--px-switch-inset-highlight);z-index:0;position:absolute;inset:2px}.px-switch__core .px-switch__core-action{z-index:2;background:0 0;justify-content:center;align-items:center;width:18px;height:18px;transition:left .15s steps(3,end);display:flex;position:absolute;left:4px}.px-switch__core .px-switch__core-action:before{content:"";background:var(--px-border-color);clip-path:polygon(0 2px,2px 2px,2px 0,calc(100% - 2px) 0,calc(100% - 2px) 2px,100% 2px,100% calc(100% - 2px),calc(100% - 2px) calc(100% - 2px),calc(100% - 2px) 100%,2px 100%,2px calc(100% - 2px),0 calc(100% - 2px));position:absolute;inset:0}.px-switch__core .px-switch__core-action:after{content:"";background:var(--px-switch-handle-color);clip-path:polygon(0 2px,2px 2px,2px 0,calc(100% - 2px) 0,calc(100% - 2px) 2px,100% 2px,100% calc(100% - 2px),calc(100% - 2px) calc(100% - 2px),calc(100% - 2px) 100%,2px 100%,2px calc(100% - 2px),0 calc(100% - 2px));box-shadow:var(--px-switch-handle-highlight), var(--px-switch-handle-shadow);position:absolute;inset:2px}.px-switch__core .px-switch__core-action .px-switch__icon{z-index:3;position:relative;width:12px!important;height:12px!important}.px-switch__core .px-switch__core-inner{z-index:1;justify-content:center;align-items:center;width:100%;height:16px;padding:0 6px 0 22px;display:flex;position:relative;overflow:hidden}.px-switch__core .px-switch__core-inner .px-switch__core-inner-text{font-size:var(--px-font-size-extra-small);font-family:var(--px-font-family);color:var(--px-color-white);-webkit-user-select:none;user-select:none;text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase;letter-spacing:1px;overflow:hidden}.px-switch--primary{--px-switch-on-color:var(--px-color-primary);--px-switch-on-border-color:var(--px-color-primary-dark)}.px-switch--primary.is-checked .px-switch__core{filter:drop-shadow(var(--px-shadow-offset-x) var(--px-shadow-offset-y) 0px var(--px-color-primary-dark))}.px-switch--success{--px-switch-on-color:var(--px-color-success);--px-switch-on-border-color:var(--px-color-success-dark)}.px-switch--success.is-checked .px-switch__core{filter:drop-shadow(var(--px-shadow-offset-x) var(--px-shadow-offset-y) 0px var(--px-color-success-dark))}.px-switch--info{--px-switch-on-color:var(--px-color-info);--px-switch-on-border-color:var(--px-color-info-dark)}.px-switch--info.is-checked .px-switch__core{filter:drop-shadow(var(--px-shadow-offset-x) var(--px-shadow-offset-y) 0px var(--px-color-info-dark))}.px-switch--warning{--px-switch-on-color:var(--px-color-warning);--px-switch-on-border-color:var(--px-color-warning-dark)}.px-switch--warning.is-checked .px-switch__core{filter:drop-shadow(var(--px-shadow-offset-x) var(--px-shadow-offset-y) 0px var(--px-color-warning-dark))}.px-switch--danger{--px-switch-on-color:var(--px-color-danger);--px-switch-on-border-color:var(--px-color-danger-dark)}.px-switch--danger.is-checked .px-switch__core{filter:drop-shadow(var(--px-shadow-offset-x) var(--px-shadow-offset-y) 0px var(--px-color-danger-dark))}html.dark .px-switch{--px-switch-inset-shadow:inset 2px 2px 0 0 #00000040;--px-switch-inset-highlight:inset -2px -2px 0 0 #ffffff0d;--px-switch-handle-highlight:inset 2px 2px 0 0 #ffffff26;--px-switch-handle-shadow:inset -2px -2px 0 0 #0003}
|