veilkit 0.0.0-stage → 0.1.0

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.
Files changed (64) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/LICENSE +21 -0
  3. package/README.md +245 -2
  4. package/dist/angular/index.cjs +394 -0
  5. package/dist/angular/index.cjs.map +1 -0
  6. package/dist/angular/index.d.cts +78 -0
  7. package/dist/angular/index.d.ts +78 -0
  8. package/dist/angular/index.js +394 -0
  9. package/dist/angular/index.js.map +1 -0
  10. package/dist/cli/index.cjs +25 -0
  11. package/dist/cli/index.cjs.map +1 -0
  12. package/dist/cli/index.d.cts +1 -0
  13. package/dist/cli/index.d.ts +1 -0
  14. package/dist/cli/index.js +25 -0
  15. package/dist/cli/index.js.map +1 -0
  16. package/dist/controller-5OzP0U8X.d.cts +193 -0
  17. package/dist/controller-Co5bvnaB.d.ts +193 -0
  18. package/dist/element/index.cjs +395 -0
  19. package/dist/element/index.cjs.map +1 -0
  20. package/dist/element/index.d.cts +42 -0
  21. package/dist/element/index.d.ts +42 -0
  22. package/dist/element/index.js +395 -0
  23. package/dist/element/index.js.map +1 -0
  24. package/dist/index.cjs +394 -0
  25. package/dist/index.cjs.map +1 -0
  26. package/dist/index.d.cts +209 -0
  27. package/dist/index.d.ts +209 -0
  28. package/dist/index.js +394 -0
  29. package/dist/index.js.map +1 -0
  30. package/dist/native/index.cjs +2 -0
  31. package/dist/native/index.cjs.map +1 -0
  32. package/dist/native/index.d.cts +48 -0
  33. package/dist/native/index.d.ts +48 -0
  34. package/dist/native/index.js +2 -0
  35. package/dist/native/index.js.map +1 -0
  36. package/dist/react/index.cjs +394 -0
  37. package/dist/react/index.cjs.map +1 -0
  38. package/dist/react/index.d.cts +99 -0
  39. package/dist/react/index.d.ts +99 -0
  40. package/dist/react/index.js +394 -0
  41. package/dist/react/index.js.map +1 -0
  42. package/dist/styles.css +377 -0
  43. package/dist/svelte/index.cjs +394 -0
  44. package/dist/svelte/index.cjs.map +1 -0
  45. package/dist/svelte/index.d.cts +41 -0
  46. package/dist/svelte/index.d.ts +41 -0
  47. package/dist/svelte/index.js +394 -0
  48. package/dist/svelte/index.js.map +1 -0
  49. package/dist/themes/index.cjs +2 -0
  50. package/dist/themes/index.cjs.map +1 -0
  51. package/dist/themes/index.d.cts +18 -0
  52. package/dist/themes/index.d.ts +18 -0
  53. package/dist/themes/index.js +2 -0
  54. package/dist/themes/index.js.map +1 -0
  55. package/dist/types-Ciu5e5xt.d.cts +159 -0
  56. package/dist/types-Ciu5e5xt.d.ts +159 -0
  57. package/dist/veilkit.min.js +393 -0
  58. package/dist/vue/index.cjs +394 -0
  59. package/dist/vue/index.cjs.map +1 -0
  60. package/dist/vue/index.d.cts +366 -0
  61. package/dist/vue/index.d.ts +366 -0
  62. package/dist/vue/index.js +394 -0
  63. package/dist/vue/index.js.map +1 -0
  64. package/package.json +238 -4
@@ -0,0 +1,395 @@
1
+ 'use strict';var p={light:{base:"#e5e7eb",highlight:"rgba(255, 255, 255, 0.7)",radius:"6px",duration:"1.5s",easing:"cubic-bezier(0.4, 0, 0.2, 1)",border:"none",contrast:"#374151"},dark:{base:"#1f2937",highlight:"rgba(255, 255, 255, 0.12)",radius:"6px",duration:"1.5s",easing:"cubic-bezier(0.4, 0, 0.2, 1)",border:"none",contrast:"#f3f4f6"},auto:{base:"var(--veil-auto-base, #e5e7eb)",highlight:"var(--veil-auto-highlight, rgba(255, 255, 255, 0.7))",radius:"6px",duration:"1.5s",easing:"cubic-bezier(0.4, 0, 0.2, 1)",border:"none",contrast:"var(--veil-auto-contrast, #374151)"},glass:{base:"rgba(255, 255, 255, 0.08)",highlight:"rgba(255, 255, 255, 0.25)",radius:"12px",duration:"1.8s",easing:"cubic-bezier(0.25, 1, 0.5, 1)",blur:"12px",border:"1px solid rgba(255, 255, 255, 0.15)",glow:"inset 0 1px 1px 0 rgba(255, 255, 255, 0.25), 0 4px 16px 0 rgba(0, 0, 0, 0.12)",contrast:"#ffffff"},ios:{base:"rgba(120, 120, 128, 0.18)",highlight:"rgba(255, 255, 255, 0.45)",radius:"10px",duration:"1.4s",easing:"cubic-bezier(0.32, 0.72, 0, 1)",border:"none",contrast:"#1c1c1e"},material:{base:"#e7e0ec",highlight:"#f7f2fa",radius:"12px",duration:"1.6s",easing:"cubic-bezier(0.2, 0, 0, 1)",border:"none",contrast:"#1d1b20"},minimal:{base:"#f1f3f5",highlight:"#ffffff",radius:"4px",duration:"1.4s",easing:"ease-in-out",border:"none",contrast:"#212529"},mono:{base:"#e0e0e0",highlight:"#ffffff",radius:"0px",duration:"1.2s",easing:"linear",border:"1px solid #cccccc",contrast:"#000000"},neon:{base:"#0c0b16",highlight:"rgba(0, 240, 255, 0.5)",radius:"8px",duration:"1.6s",easing:"cubic-bezier(0.4, 0, 0.2, 1)",border:"1px solid rgba(0, 240, 255, 0.3)",glow:"0 0 12px rgba(0, 240, 255, 0.35)",contrast:"#00f0ff"},sunset:{base:"#fed7aa",highlight:"#fff7ed",radius:"8px",duration:"1.7s",easing:"cubic-bezier(0.4, 0, 0.2, 1)",border:"none",glow:"0 0 8px rgba(251, 146, 60, 0.25)",contrast:"#7c2d12"},ocean:{base:"#0f2937",highlight:"rgba(56, 189, 248, 0.45)",radius:"8px",duration:"1.7s",easing:"cubic-bezier(0.4, 0, 0.2, 1)",border:"1px solid rgba(56, 189, 248, 0.2)",glow:"0 0 10px rgba(56, 189, 248, 0.25)",contrast:"#38bdf8"}};function P(){return ["@keyframes veil-shimmer-ltr{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}","@keyframes veil-shimmer-rtl{0%{transform:translateX(100%)}100%{transform:translateX(-100%)}}","@keyframes veil-shimmer-ttb{0%{transform:translateY(-100%)}100%{transform:translateY(100%)}}","@keyframes veil-shimmer-btt{0%{transform:translateY(100%)}100%{transform:translateY(-100%)}}","@keyframes veil-wave{0%{transform:translateX(-120%) scaleX(0.8);opacity:0.3}50%{opacity:0.95}100%{transform:translateX(120%) scaleX(1.2);opacity:0.3}}","@keyframes veil-pulse{0%,100%{opacity:1}50%{opacity:0.38}}","@keyframes veil-blink{0%,49%{opacity:1}50%,99%{opacity:0.2}100%{opacity:1}}","@keyframes veil-breathe{0%,100%{opacity:0.65;transform:scale(0.995)}50%{opacity:1;transform:scale(1.005)}}","@keyframes veil-glass-shine{0%{transform:translate3d(-150%,-150%,0) rotate(35deg);opacity:0.1}40%,60%{opacity:0.85}100%{transform:translate3d(200%,200%,0) rotate(35deg);opacity:0.1}}","@keyframes veil-gradient-flow{0%{transform:translateX(-66.6%)}100%{transform:translateX(0%)}}","@keyframes veil-aurora{0%{transform:translate3d(-20%,-15%,0) rotate(0deg) scale(1);opacity:0.5}50%{transform:translate3d(25%,20%,0) rotate(180deg) scale(1.25);opacity:0.85}100%{transform:translate3d(-20%,-15%,0) rotate(360deg) scale(1);opacity:0.5}}","@keyframes veil-scan-line{0%{transform:translateY(-100%);opacity:0.2}50%{opacity:1}100%{transform:translateY(300%);opacity:0.2}}","@keyframes veil-sparkle{0%,100%{opacity:0.2;transform:scale(0.98)}25%{opacity:0.8;transform:scale(1.02)}50%{opacity:0.3;transform:scale(0.99)}75%{opacity:0.95;transform:scale(1.01)}}","@keyframes veil-neon-glow{0%,100%{opacity:0.45;transform:scale(0.998)}50%{opacity:1;transform:scale(1.002)}}",'[data-veil-anim="stagger"]>*{animation-delay:calc(var(--veil-stagger-idx,0)*120ms)!important}'].join("")}var H=false;function U(){let e=p.light,i=p.dark;return `
2
+ /* === VEILKIT CORE STYLES === */
3
+ :root {
4
+ --veil-base: ${e.base};
5
+ --veil-highlight: ${e.highlight};
6
+ --veil-radius: ${e.radius};
7
+ --veil-duration: ${e.duration};
8
+ --veil-easing: ${e.easing};
9
+ --veil-direction: ltr;
10
+ --veil-border: none;
11
+ --veil-blur: none;
12
+ --veil-glow: none;
13
+ --veil-contrast: ${e.contrast};
14
+
15
+ --veil-auto-base: ${e.base};
16
+ --veil-auto-highlight: ${e.highlight};
17
+ --veil-auto-contrast: ${e.contrast};
18
+ }
19
+
20
+ @media (prefers-color-scheme: dark) {
21
+ :root {
22
+ --veil-auto-base: ${i.base};
23
+ --veil-auto-highlight: ${i.highlight};
24
+ --veil-auto-contrast: ${i.contrast};
25
+ }
26
+ }
27
+
28
+ /* === DARK THEME SELECTORS === */
29
+ [data-theme="dark"], .dark, [data-theme="dark"] .veil-skeleton {
30
+ --veil-base: ${i.base};
31
+ --veil-highlight: ${i.highlight};
32
+ --veil-contrast: ${i.contrast};
33
+ }
34
+
35
+ /* === THEME ATTRIBUTE CLASSES === */
36
+ ${Object.entries(p).map(([n,r])=>`[data-veil-theme="${n}"]{--veil-base:${r.base};--veil-highlight:${r.highlight};--veil-radius:${r.radius};--veil-duration:${r.duration};--veil-easing:${r.easing};${r.border?`--veil-border:${r.border};`:""}${r.blur?`--veil-blur:${r.blur};`:""}${r.glow?`--veil-glow:${r.glow};`:""}--veil-contrast:${r.contrast};}`).join("")}
37
+
38
+ /* === BASE SKELETON ELEMENT === */
39
+ .veil-skeleton {
40
+ position: relative;
41
+ display: block;
42
+ box-sizing: border-box;
43
+ background-color: var(--veil-base, #e5e7eb);
44
+ border-radius: var(--veil-radius, 6px);
45
+ border: var(--veil-border, none);
46
+ box-shadow: var(--veil-glow, none);
47
+ overflow: hidden;
48
+ pointer-events: none;
49
+ user-select: none;
50
+ min-height: 12px;
51
+ }
52
+
53
+ [data-veil-theme="glass"] .veil-skeleton,
54
+ .veil-skeleton[data-veil-theme="glass"] {
55
+ backdrop-filter: blur(var(--veil-blur, 12px));
56
+ -webkit-backdrop-filter: blur(var(--veil-blur, 12px));
57
+ }
58
+
59
+ /* === SHIMMER / ANIMATION OVERLAY === */
60
+ .veil-skeleton::after {
61
+ content: "";
62
+ position: absolute;
63
+ top: 0;
64
+ left: 0;
65
+ right: 0;
66
+ bottom: 0;
67
+ pointer-events: none;
68
+ will-change: transform, opacity;
69
+ background: linear-gradient(
70
+ 90deg,
71
+ transparent 0%,
72
+ var(--veil-highlight, rgba(255, 255, 255, 0.7)) 50%,
73
+ transparent 100%
74
+ );
75
+ animation-duration: var(--veil-duration, 1.5s);
76
+ animation-timing-function: var(--veil-easing, cubic-bezier(0.4, 0, 0.2, 1));
77
+ animation-iteration-count: infinite;
78
+ animation-delay: var(--veil-sync-delay, 0s);
79
+ animation-play-state: var(--veil-play-state, running);
80
+ }
81
+
82
+ /* Animation name mapping */
83
+ .veil-skeleton[data-veil-anim="shimmer"]::after,
84
+ .veil-skeleton:not([data-veil-anim])::after {
85
+ animation-name: veil-shimmer-ltr;
86
+ }
87
+ .veil-skeleton[data-veil-dir="rtl"]::after,
88
+ [dir="rtl"] .veil-skeleton[data-veil-anim="shimmer"]::after {
89
+ animation-name: veil-shimmer-rtl;
90
+ }
91
+ .veil-skeleton[data-veil-dir="ttb"]::after {
92
+ animation-name: veil-shimmer-ttb;
93
+ background: linear-gradient(180deg, transparent 0%, var(--veil-highlight, rgba(255,255,255,0.7)) 50%, transparent 100%);
94
+ }
95
+ .veil-skeleton[data-veil-dir="btt"]::after {
96
+ animation-name: veil-shimmer-btt;
97
+ background: linear-gradient(0deg, transparent 0%, var(--veil-highlight, rgba(255,255,255,0.7)) 50%, transparent 100%);
98
+ }
99
+
100
+ .veil-skeleton[data-veil-anim="wave"]::after {
101
+ animation-name: veil-wave;
102
+ }
103
+
104
+ .veil-skeleton[data-veil-anim="pulse"]::after {
105
+ background: none;
106
+ }
107
+ .veil-skeleton[data-veil-anim="pulse"] {
108
+ animation: veil-pulse var(--veil-duration, 1.5s) var(--veil-easing, ease-in-out) infinite;
109
+ animation-delay: var(--veil-sync-delay, 0s);
110
+ animation-play-state: var(--veil-play-state, running);
111
+ }
112
+
113
+ .veil-skeleton[data-veil-anim="blink"]::after {
114
+ background: none;
115
+ }
116
+ .veil-skeleton[data-veil-anim="blink"] {
117
+ animation: veil-blink var(--veil-duration, 1.2s) steps(2, start) infinite;
118
+ animation-delay: var(--veil-sync-delay, 0s);
119
+ animation-play-state: var(--veil-play-state, running);
120
+ }
121
+
122
+ .veil-skeleton[data-veil-anim="breathe"]::after {
123
+ background: none;
124
+ }
125
+ .veil-skeleton[data-veil-anim="breathe"] {
126
+ animation: veil-breathe var(--veil-duration, 2.2s) var(--veil-easing, ease-in-out) infinite;
127
+ animation-delay: var(--veil-sync-delay, 0s);
128
+ animation-play-state: var(--veil-play-state, running);
129
+ }
130
+
131
+ .veil-skeleton[data-veil-anim="glass-shine"]::after {
132
+ animation-name: veil-glass-shine;
133
+ background: linear-gradient(
134
+ 115deg,
135
+ transparent 20%,
136
+ var(--veil-highlight, rgba(255, 255, 255, 0.4)) 50%,
137
+ transparent 80%
138
+ );
139
+ }
140
+
141
+ .veil-skeleton[data-veil-anim="gradient-flow"]::after {
142
+ width: 300%;
143
+ animation-name: veil-gradient-flow;
144
+ background: linear-gradient(
145
+ 90deg,
146
+ var(--veil-base, #e5e7eb) 0%,
147
+ var(--veil-highlight, rgba(255, 255, 255, 0.8)) 30%,
148
+ var(--veil-base, #e5e7eb) 60%,
149
+ var(--veil-highlight, rgba(255, 255, 255, 0.8)) 100%
150
+ );
151
+ }
152
+
153
+ .veil-skeleton[data-veil-anim="aurora"]::after {
154
+ width: 160%;
155
+ height: 160%;
156
+ animation-name: veil-aurora;
157
+ background: radial-gradient(
158
+ circle at 50% 50%,
159
+ rgba(56, 189, 248, 0.3) 0%,
160
+ rgba(168, 85, 247, 0.25) 45%,
161
+ rgba(236, 72, 153, 0.2) 75%,
162
+ transparent 100%
163
+ );
164
+ }
165
+
166
+ .veil-skeleton[data-veil-anim="scan-line"]::after {
167
+ height: 30%;
168
+ animation-name: veil-scan-line;
169
+ background: linear-gradient(180deg, transparent, var(--veil-highlight, rgba(0, 240, 255, 0.8)), transparent);
170
+ }
171
+
172
+ .veil-skeleton[data-veil-anim="sparkle"]::after {
173
+ animation-name: veil-sparkle;
174
+ }
175
+
176
+ .veil-skeleton[data-veil-anim="neon-glow"] {
177
+ animation: veil-neon-glow var(--veil-duration, 1.6s) ease-in-out infinite;
178
+ animation-delay: var(--veil-sync-delay, 0s);
179
+ }
180
+
181
+ .veil-skeleton[data-veil-anim="none"]::after {
182
+ display: none !important;
183
+ }
184
+
185
+ /* === PRIMITIVE VARIANTS === */
186
+ .veil-skeleton[data-veil-shape="line"] {
187
+ height: 1em;
188
+ margin: 0.35em 0;
189
+ border-radius: var(--veil-radius, 4px);
190
+ }
191
+ .veil-skeleton[data-veil-shape="circle"] {
192
+ border-radius: 50% !important;
193
+ aspect-ratio: 1 / 1;
194
+ }
195
+ .veil-skeleton[data-veil-shape="heading"] {
196
+ height: 1.8em;
197
+ margin: 0.5em 0;
198
+ border-radius: var(--veil-radius, 6px);
199
+ }
200
+ .veil-skeleton[data-veil-shape="button"] {
201
+ height: 2.5rem;
202
+ border-radius: var(--veil-radius, 8px);
203
+ }
204
+ .veil-skeleton[data-veil-shape="badge"] {
205
+ height: 1.35rem;
206
+ border-radius: 9999px;
207
+ display: inline-block;
208
+ }
209
+ .veil-skeleton[data-veil-shape="icon"] {
210
+ width: 1.5rem;
211
+ height: 1.5rem;
212
+ border-radius: var(--veil-radius, 6px);
213
+ display: inline-block;
214
+ }
215
+ .veil-skeleton[data-veil-shape="input"] {
216
+ height: 2.6rem;
217
+ border-radius: var(--veil-radius, 8px);
218
+ }
219
+ .veil-skeleton[data-veil-shape="divider"] {
220
+ height: 1px;
221
+ width: 100%;
222
+ margin: 1rem 0;
223
+ min-height: 1px;
224
+ }
225
+
226
+ /* Natural randomized last-line widths */
227
+ .veil-lines-group > .veil-skeleton:last-child {
228
+ width: var(--veil-last-width, 68%);
229
+ }
230
+
231
+ /* === ACCESSIBILITY === */
232
+ .veil-sr-only {
233
+ position: absolute !important;
234
+ width: 1px !important;
235
+ height: 1px !important;
236
+ padding: 0 !important;
237
+ margin: -1px !important;
238
+ overflow: hidden !important;
239
+ clip: rect(0, 0, 0, 0) !important;
240
+ white-space: nowrap !important;
241
+ border-width: 0 !important;
242
+ }
243
+
244
+ /* prefers-reduced-motion */
245
+ @media (prefers-reduced-motion: reduce) {
246
+ .veil-skeleton::after {
247
+ animation: none !important;
248
+ display: none !important;
249
+ }
250
+ .veil-skeleton {
251
+ animation: veil-pulse 3s ease-in-out infinite !important;
252
+ transform: none !important;
253
+ }
254
+ }
255
+
256
+ /* forced-colors */
257
+ @media (forced-colors: active) {
258
+ .veil-skeleton {
259
+ forced-color-adjust: none;
260
+ background-color: ButtonFace !important;
261
+ outline: 1px solid Highlight !important;
262
+ }
263
+ .veil-skeleton::after {
264
+ display: none !important;
265
+ }
266
+ }
267
+
268
+ /* Offscreen & Tab Hidden Pausing */
269
+ [data-veil-tab-hidden="true"] .veil-skeleton,
270
+ [data-veil-tab-hidden="true"] .veil-skeleton::after,
271
+ [data-veil-offscreen="true"],
272
+ [data-veil-offscreen="true"]::after {
273
+ animation-play-state: paused !important;
274
+ }
275
+
276
+ /* === REVEAL TRANSITIONS === */
277
+ .veil-revealing {
278
+ position: relative;
279
+ }
280
+ .veil-reveal-fade {
281
+ animation: veil-reveal-fade 350ms cubic-bezier(0.16, 1, 0.3, 1) forwards;
282
+ }
283
+ .veil-reveal-blur-in {
284
+ animation: veil-reveal-blur 400ms cubic-bezier(0.16, 1, 0.3, 1) forwards;
285
+ }
286
+ .veil-reveal-slide-up {
287
+ animation: veil-reveal-slide 400ms cubic-bezier(0.16, 1, 0.3, 1) forwards;
288
+ }
289
+ .veil-reveal-scale {
290
+ animation: veil-reveal-scale 350ms cubic-bezier(0.16, 1, 0.3, 1) forwards;
291
+ }
292
+
293
+ @keyframes veil-reveal-fade {
294
+ 0% { opacity: 0; }
295
+ 100% { opacity: 1; }
296
+ }
297
+ @keyframes veil-reveal-blur {
298
+ 0% { opacity: 0; filter: blur(8px); }
299
+ 100% { opacity: 1; filter: blur(0px); }
300
+ }
301
+ @keyframes veil-reveal-slide {
302
+ 0% { opacity: 0; transform: translateY(12px); }
303
+ 100% { opacity: 1; transform: translateY(0); }
304
+ }
305
+ @keyframes veil-reveal-scale {
306
+ 0% { opacity: 0; transform: scale(0.96); }
307
+ 100% { opacity: 1; transform: scale(1); }
308
+ }
309
+
310
+ /* === SPINNERS, PROGRESS, OVERLAY, BUTTON, LAZY IMAGE === */
311
+ .veil-spinner {
312
+ display: inline-block;
313
+ box-sizing: border-box;
314
+ vertical-align: middle;
315
+ }
316
+ .veil-overlay {
317
+ position: absolute;
318
+ inset: 0;
319
+ display: flex;
320
+ flex-direction: column;
321
+ align-items: center;
322
+ justify-content: center;
323
+ gap: 12px;
324
+ background-color: var(--veil-overlay-bg, rgba(255, 255, 255, 0.75));
325
+ backdrop-filter: blur(var(--veil-overlay-blur, 6px));
326
+ -webkit-backdrop-filter: blur(var(--veil-overlay-blur, 6px));
327
+ z-index: 100;
328
+ transition: opacity 250ms ease;
329
+ }
330
+ .veil-overlay-fullscreen {
331
+ position: fixed !important;
332
+ z-index: 999999 !important;
333
+ }
334
+ .veil-progress-bar {
335
+ position: fixed;
336
+ top: 0;
337
+ left: 0;
338
+ right: 0;
339
+ height: 3px;
340
+ z-index: 999999;
341
+ background: transparent;
342
+ pointer-events: none;
343
+ }
344
+ .veil-progress-inner {
345
+ height: 100%;
346
+ background: var(--veil-progress-color, #3b82f6);
347
+ box-shadow: 0 0 10px var(--veil-progress-color, #3b82f6), 0 0 5px var(--veil-progress-color, #3b82f6);
348
+ transition: width 200ms ease, opacity 350ms ease;
349
+ }
350
+ .veil-btn-loading {
351
+ position: relative;
352
+ pointer-events: none;
353
+ cursor: default;
354
+ }
355
+ .veil-btn-spinner-wrap {
356
+ display: inline-flex;
357
+ align-items: center;
358
+ justify-content: center;
359
+ margin-right: 8px;
360
+ }
361
+ .veil-lazy-img-wrap {
362
+ position: relative;
363
+ overflow: hidden;
364
+ display: inline-block;
365
+ }
366
+ .veil-lazy-img {
367
+ transition: opacity 350ms ease, filter 350ms ease;
368
+ }
369
+ .veil-lazy-img-loading {
370
+ opacity: 0;
371
+ filter: blur(10px);
372
+ }
373
+ .veil-lazy-img-loaded {
374
+ opacity: 1;
375
+ filter: blur(0px);
376
+ }
377
+
378
+ ${P()}
379
+ `}function c(e){if(H||typeof document>"u")return;H=true;let i=U();if(typeof document.adoptedStyleSheets<"u"&&typeof CSSStyleSheet<"u"&&"replaceSync"in CSSStyleSheet.prototype&&true)try{let l=new CSSStyleSheet;l.replaceSync(i),document.adoptedStyleSheets=[...document.adoptedStyleSheets,l];return}catch{}let r=document.createElement("style");r.id="veilkit-styles",r.textContent=i,document.head.appendChild(r);}var x=0;function _(){return x===0&&typeof performance<"u"&&(x=performance.now()),x}function w(e=1500){if(typeof performance>"u")return "0ms";let i=performance.now()-_();return `-${Math.round(i%e)}ms`}function R(e=1500){if(typeof e=="number")return e;if(!e)return 1500;let i=e.trim().toLowerCase();return i.endsWith("ms")?parseFloat(i)||1500:i.endsWith("s")?(parseFloat(i)||1.5)*1e3:parseFloat(i)||1500}var f=null,I=new Set,O=false;function G(e){for(let i of e){let n=i.target;i.isIntersecting?(n.removeAttribute("data-veil-offscreen"),n.style.removeProperty("--veil-play-state")):(n.setAttribute("data-veil-offscreen","true"),n.style.setProperty("--veil-play-state","paused"));}}function Z(){O||typeof document>"u"||(O=true,document.addEventListener("visibilitychange",()=>{document.hidden?document.documentElement.setAttribute("data-veil-tab-hidden","true"):document.documentElement.removeAttribute("data-veil-tab-hidden");}));}function V(e){return typeof window>"u"||typeof IntersectionObserver>"u"?()=>{}:(Z(),f||(f=new IntersectionObserver(G,{rootMargin:"100px 0px",threshold:0})),f.observe(e),I.add(e),()=>{f&&e&&(f.unobserve(e),I.delete(e));})}function A(e={}){c();let i=document.createElement("div");i.className=`veil-skeleton ${e.className||""}`.trim(),i.setAttribute("aria-hidden","true");let n=e.type||"rect";if(i.setAttribute("data-veil-shape",n),e.animation&&i.setAttribute("data-veil-anim",e.animation),e.direction&&i.setAttribute("data-veil-dir",e.direction),typeof e.theme=="string"&&i.setAttribute("data-veil-theme",e.theme),e.width!==void 0&&(i.style.width=typeof e.width=="number"?`${e.width}px`:e.width),e.height!==void 0&&(i.style.height=typeof e.height=="number"?`${e.height}px`:e.height),e.radius!==void 0&&(i.style.setProperty("--veil-radius",typeof e.radius=="number"?`${e.radius}px`:e.radius),i.style.borderRadius=typeof e.radius=="number"?`${e.radius}px`:e.radius),e.speed!==void 0){let r=R(e.speed);i.style.setProperty("--veil-duration",`${r}ms`),i.style.setProperty("--veil-sync-delay",w(r));}else i.style.setProperty("--veil-sync-delay",w(1500));if(e.style)for(let[r,l]of Object.entries(e.style))i.style[r]=l;return V(i),i}function j(e=3,i={}){let n=document.createElement("div");n.className=`veil-lines-group ${i.className||""}`.trim(),n.setAttribute("aria-hidden","true");let r=i.gap!==void 0?typeof i.gap=="number"?`${i.gap}px`:i.gap:"0.45rem";n.style.display="flex",n.style.flexDirection="column",n.style.gap=r;let l=["100%","94%","88%","75%"],s=i.lastLineWidth!==void 0?typeof i.lastLineWidth=="number"?`${i.lastLineWidth}px`:i.lastLineWidth:"65%";for(let t=0;t<e;t++){let o=t===e-1?s:l[t%l.length]||"95%",d=A({...i,type:"line",width:o});d.style.setProperty("--veil-stagger-idx",String(t)),n.appendChild(d);}return n}function v(e={}){c();let i=e.type||"ring",n=e.size!==void 0?typeof e.size=="number"?`${e.size}px`:e.size:"28px",r=e.color||"var(--veil-progress-color, #3b82f6)",l=e.secondaryColor||"rgba(0, 0, 0, 0.12)",s=document.createElement("div");switch(s.className=`veil-spinner veil-spinner-${i} ${e.className||""}`.trim(),s.setAttribute("role","status"),s.setAttribute("aria-label",e.label||"Loading"),s.style.width=n,s.style.height=n,s.style.display="inline-flex",s.style.alignItems="center",s.style.justifyContent="center",s.style.position="relative",i){case "ring":{let t=document.createElement("div");t.style.width="100%",t.style.height="100%",t.style.borderRadius="50%",t.style.border=`3px solid ${l}`,t.style.borderTopColor=r,t.style.animation="veil-spin 800ms linear infinite",t.style.boxSizing="border-box",s.appendChild(t);break}case "dual-ring":{let t=document.createElement("div");t.style.width="100%",t.style.height="100%",t.style.borderRadius="50%",t.style.border="3px solid transparent",t.style.borderTopColor=r,t.style.borderBottomColor=r,t.style.animation="veil-spin 900ms cubic-bezier(0.5, 0, 0.5, 1) infinite",t.style.boxSizing="border-box",s.appendChild(t);break}case "dots":{s.style.gap="4px";for(let t=0;t<3;t++){let a=document.createElement("div");a.style.width="28%",a.style.height="28%",a.style.borderRadius="50%",a.style.backgroundColor=r,a.style.animation="veil-dot-bounce 1200ms ease-in-out infinite",a.style.animationDelay=`${t*160}ms`,s.appendChild(a);}break}case "bars":{s.style.gap="3px";for(let t=0;t<4;t++){let a=document.createElement("div");a.style.width="18%",a.style.height="100%",a.style.borderRadius="2px",a.style.backgroundColor=r,a.style.animation="veil-bar-wave 1000ms ease-in-out infinite",a.style.animationDelay=`${t*140}ms`,s.appendChild(a);}break}case "pulse":{let t=document.createElement("div");t.style.width="100%",t.style.height="100%",t.style.borderRadius="50%",t.style.backgroundColor=r,t.style.animation="veil-pulse-scale 1200ms ease-out infinite",s.appendChild(t);break}case "orbit":{let t=document.createElement("div");t.style.width="30%",t.style.height="30%",t.style.borderRadius="50%",t.style.backgroundColor=r,t.style.position="absolute";let a=document.createElement("div");a.style.width="100%",a.style.height="100%",a.style.position="absolute",a.style.animation="veil-spin 1200ms linear infinite";let o=document.createElement("div");o.style.width="24%",o.style.height="24%",o.style.borderRadius="50%",o.style.backgroundColor=r,o.style.position="absolute",o.style.top="0",o.style.left="38%",a.appendChild(o),s.append(t,a);break}case "wave":{s.style.gap="4px";for(let t=0;t<5;t++){let a=document.createElement("div");a.style.width="12%",a.style.height="80%",a.style.borderRadius="3px",a.style.backgroundColor=r,a.style.animation="veil-wave-dance 1100ms ease-in-out infinite",a.style.animationDelay=`${t*110}ms`,s.appendChild(a);}break}case "bounce":{let t=document.createElement("div");t.style.width="60%",t.style.height="60%",t.style.borderRadius="50%",t.style.backgroundColor=r,t.style.animation="veil-bounce-ball 900ms cubic-bezier(0.28, 0.84, 0.42, 1) infinite",s.appendChild(t);break}case "ios-activity":{for(let t=0;t<12;t++){let a=document.createElement("div");a.style.position="absolute",a.style.width="8%",a.style.height="26%",a.style.backgroundColor=r,a.style.borderRadius="2px",a.style.transformOrigin="50% 190%",a.style.transform=`rotate(${t*30}deg) translateY(-90%)`,a.style.animation="veil-ios-fade 1000ms linear infinite",a.style.animationDelay=`-${(12-t)*(1e3/12)}ms`,s.appendChild(a);}break}case "glass-orb":{let t=document.createElement("div");t.style.width="100%",t.style.height="100%",t.style.borderRadius="50%",t.style.background=`radial-gradient(circle at 35% 35%, rgba(255,255,255,0.8), ${r} 70%)`,t.style.boxShadow=`0 4px 12px ${r}44, inset 0 2px 4px rgba(255,255,255,0.6)`,t.style.animation="veil-glass-orbit 1600ms ease-in-out infinite",s.appendChild(t);break}case "morph":{let t=document.createElement("div");t.style.width="80%",t.style.height="80%",t.style.backgroundColor=r,t.style.animation="veil-morph-shape 2000ms ease-in-out infinite",s.appendChild(t);break}case "progress-circle":{let t=document.createElementNS("http://www.w3.org/2000/svg","svg");t.setAttribute("viewBox","0 0 36 36"),t.style.width="100%",t.style.height="100%",t.style.transform="rotate(-90deg)";let a=document.createElementNS("http://www.w3.org/2000/svg","circle");a.setAttribute("cx","18"),a.setAttribute("cy","18"),a.setAttribute("r","14"),a.setAttribute("fill","none"),a.setAttribute("stroke",l),a.setAttribute("stroke-width","3");let o=document.createElementNS("http://www.w3.org/2000/svg","circle");o.setAttribute("cx","18"),o.setAttribute("cy","18"),o.setAttribute("r","14"),o.setAttribute("fill","none"),o.setAttribute("stroke",r),o.setAttribute("stroke-width","3"),o.setAttribute("stroke-dasharray","88"),o.setAttribute("stroke-dashoffset","25"),o.setAttribute("stroke-linecap","round"),o.style.animation="veil-spin 1200ms linear infinite",o.style.transformOrigin="50% 50%",t.append(a,o),s.appendChild(t);break}}return J(),s}var B=false;function J(){if(B||typeof document>"u")return;B=true;let e=document.createElement("style");e.id="veilkit-spinner-keyframes",e.textContent=`
380
+ @keyframes veil-spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
381
+ @keyframes veil-dot-bounce { 0%, 80%, 100% { transform: scale(0.4); opacity: 0.4; } 40% { transform: scale(1); opacity: 1; } }
382
+ @keyframes veil-bar-wave { 0%, 100% { transform: scaleY(0.3); opacity: 0.5; } 50% { transform: scaleY(1); opacity: 1; } }
383
+ @keyframes veil-pulse-scale { 0% { transform: scale(0.2); opacity: 1; } 100% { transform: scale(1.1); opacity: 0; } }
384
+ @keyframes veil-wave-dance { 0%, 100% { transform: scaleY(0.2); } 50% { transform: scaleY(1); } }
385
+ @keyframes veil-bounce-ball { 0%, 100% { transform: translateY(35%) scale(1.15, 0.75); } 50% { transform: translateY(-40%) scale(0.9, 1.1); } }
386
+ @keyframes veil-ios-fade { 0% { opacity: 1; } 100% { opacity: 0.15; } }
387
+ @keyframes veil-glass-orbit { 0%, 100% { transform: scale(0.9) rotate(0deg); } 50% { transform: scale(1.08) rotate(180deg); } }
388
+ @keyframes veil-morph-shape {
389
+ 0%, 100% { border-radius: 50%; transform: rotate(0deg); }
390
+ 33% { border-radius: 8px; transform: rotate(90deg); }
391
+ 66% { border-radius: 20px; transform: rotate(180deg); }
392
+ }
393
+ `,document.head.appendChild(e);}function Y(e={}){c();let i=!!e.circular,n=e.color||"var(--veil-progress-color, #3b82f6)",r=e.trackColor||"rgba(0, 0, 0, 0.08)";if(i){let a=e.size!==void 0?typeof e.size=="number"?`${e.size}px`:e.size:"48px",o=e.strokeWidth||4,d=document.createElement("div");d.className=`veil-progress-circular ${e.className||""}`.trim(),d.style.width=a,d.style.height=a,d.style.display="inline-flex",d.style.alignItems="center",d.style.justifyContent="center",d.style.position="relative";let u=document.createElementNS("http://www.w3.org/2000/svg","svg");u.setAttribute("viewBox","0 0 48 48"),u.style.width="100%",u.style.height="100%",u.style.transform="rotate(-90deg)";let h=document.createElementNS("http://www.w3.org/2000/svg","circle");h.setAttribute("cx","24"),h.setAttribute("cy","24"),h.setAttribute("r","20"),h.setAttribute("fill","none"),h.setAttribute("stroke",r),h.setAttribute("stroke-width",String(o));let m=document.createElementNS("http://www.w3.org/2000/svg","circle");m.setAttribute("cx","24"),m.setAttribute("cy","24"),m.setAttribute("r","20"),m.setAttribute("fill","none"),m.setAttribute("stroke",n),m.setAttribute("stroke-width",String(o)),m.setAttribute("stroke-linecap","round");let y=2*Math.PI*20;if(m.setAttribute("stroke-dasharray",String(y)),e.value!==void 0){let g=Math.min(100,Math.max(0,e.value)),K=y-g/100*y;m.setAttribute("stroke-dashoffset",String(K)),m.style.transition="stroke-dashoffset 300ms ease";}else m.setAttribute("stroke-dashoffset",String(y*.75)),u.style.animation="veil-spin 1200ms linear infinite";if(u.append(h,m),d.appendChild(u),e.showPercentage&&e.value!==void 0){let g=document.createElement("span");g.style.position="absolute",g.style.fontSize="11px",g.style.fontWeight="600",g.textContent=`${Math.round(e.value)}%`,d.appendChild(g);}return d}let l=e.height!==void 0?typeof e.height=="number"?`${e.height}px`:e.height:"4px",s=document.createElement("div");s.className=`veil-progress-linear ${e.className||""}`.trim(),s.setAttribute("role","progressbar"),s.style.width="100%",s.style.height=l,s.style.backgroundColor=r,s.style.borderRadius="9999px",s.style.overflow="hidden",s.style.position="relative";let t=document.createElement("div");if(t.style.height="100%",t.style.backgroundColor=n,t.style.borderRadius="9999px",e.value!==void 0){let a=Math.min(100,Math.max(0,e.value));s.setAttribute("aria-valuenow",String(a)),t.style.width=`${a}%`,t.style.transition="width 250ms ease";}else t.style.width="35%",t.style.animation="veil-progress-indeterminate 1400ms ease-in-out infinite";return s.appendChild(t),s}var C={en:{loading:"Loading content, please wait\u2026",loaded:"Content loaded.",progress:"Loading progress",busy:"Busy"},es:{loading:"Cargando contenido, por favor espere\u2026",loaded:"Contenido cargado.",progress:"Progreso de carga",busy:"Ocupado"},fr:{loading:"Chargement du contenu, veuillez patienter\u2026",loaded:"Contenu charg\xE9.",progress:"Progression du chargement",busy:"Occup\xE9"},de:{loading:"Inhalt wird geladen, bitte warten\u2026",loaded:"Inhalt geladen.",progress:"Ladefortschritt",busy:"Besch\xE4ftigt"},ja:{loading:"\u30B3\u30F3\u30C6\u30F3\u30C4\u3092\u8AAD\u307F\u8FBC\u3093\u3067\u3044\u307E\u3059\u2026",loaded:"\u8AAD\u307F\u8FBC\u307F\u304C\u5B8C\u4E86\u3057\u307E\u3057\u305F\u3002",progress:"\u8AAD\u307F\u8FBC\u307F\u72B6\u6CC1",busy:"\u51E6\u7406\u4E2D"},zh:{loading:"\u6B63\u5728\u52A0\u8F7D\u5185\u5BB9\uFF0C\u8BF7\u7A0D\u5019\u2026",loaded:"\u5185\u5BB9\u52A0\u8F7D\u5B8C\u6210\u3002",progress:"\u52A0\u8F7D\u8FDB\u5EA6",busy:"\u5FD9\u788C\u4E2D"},ar:{loading:"\u062C\u0627\u0631\u064A \u062A\u062D\u0645\u064A\u0644 \u0627\u0644\u0645\u062D\u062A\u0648\u0649\u060C \u064A\u0631\u062C\u0649 \u0627\u0644\u0627\u0646\u062A\u0638\u0627\u0631\u2026",loaded:"\u062A\u0645 \u062A\u062D\u0645\u064A\u0644 \u0627\u0644\u0645\u062D\u062A\u0648\u0649.",progress:"\u062A\u0642\u062F\u0645 \u0627\u0644\u062A\u062D\u0645\u064A\u0644",busy:"\u0645\u0634\u063A\u0648\u0644"}},Q="en",D={};function ee(e){return D[e]?D[e]:(C[Q]||C.en)[e]||C.en[e]||"Loading\u2026"}function W(e,i){e.setAttribute("aria-busy","true");let n=e.querySelector(".veil-sr-only");return n||(n=document.createElement("span"),n.className="veil-sr-only",n.setAttribute("role","status"),n.setAttribute("aria-live","polite"),e.appendChild(n)),n.textContent=i||ee("loading"),n}function X(e){e.removeAttribute("aria-busy");let i=e.querySelector(".veil-sr-only");i&&i.remove();}var b=new Map,E="",S=class{show(i,n={}){c();let r,l=!i;if(l?r=document.body:typeof i=="string"?(r=document.querySelector(i),r||(r=document.body)):r=i,b.has(r))return b.get(r);let s=document.createElement("div");if(s.className=`veil-overlay ${l?"veil-overlay-fullscreen":""} ${n.className||""}`.trim(),s.setAttribute("role","status"),n.color&&s.style.setProperty("--veil-overlay-bg",n.color),n.blur!==void 0){let t=typeof n.blur=="boolean"?n.blur?"8px":"0px":n.blur;s.style.setProperty("--veil-overlay-blur",t);}if(n.zIndex!==void 0&&(s.style.zIndex=String(n.zIndex)),n.spinner!==false){let t=typeof n.spinner=="string"?n.spinner:"ring",a=v({type:t,size:36});s.appendChild(a);}if(n.message){let t=document.createElement("span");t.className="veil-overlay-message",t.style.fontSize="14px",t.style.fontWeight="500",t.style.color="var(--veil-contrast, #1f2937)",t.textContent=n.message,s.appendChild(t);}return l||window.getComputedStyle(r).position==="static"&&(r.style.position="relative"),W(r,n.message),n.lockScroll&&l&&typeof document<"u"&&(E=document.body.style.overflow,document.body.style.overflow="hidden"),r.appendChild(s),b.set(r,s),s}hide(i){let n,r=!i;r?n=document.body:typeof i=="string"?(n=document.querySelector(i),n||(n=document.body)):n=i;let l=b.get(n);l&&(l.style.opacity="0",setTimeout(()=>{l.remove(),b.delete(n),X(n),r&&E!==void 0&&(document.body.style.overflow=E);},200));}},k=new S;function F(e,i={}){c();let n="",r="",l=[],s=null,t=null;function a(o,d){if(o){if(!e.classList.contains("veil-btn-loading")){let u=e.getBoundingClientRect();if(n=e.style.width,r=e.style.height,u.width>0&&(e.style.width=`${u.width}px`),u.height>0&&(e.style.height=`${u.height}px`),e.classList.add("veil-btn-loading"),e.setAttribute("aria-disabled","true"),e.setAttribute("aria-busy","true"),i.spinnerPlacement==="replace"){l=Array.from(e.childNodes),e.innerHTML="";let h=v({type:i.spinner||"ring",size:18,color:"currentColor"});e.appendChild(h);}else {s=document.createElement("span"),s.className="veil-btn-spinner-wrap";let h=v({type:i.spinner||"ring",size:16,color:"currentColor"});s.appendChild(h),e.insertBefore(s,e.firstChild),(d||i.loadingText)&&(t=document.createTextNode(` ${d||i.loadingText}`),e.appendChild(t));}}}else if(e.classList.contains("veil-btn-loading"))if(e.classList.remove("veil-btn-loading"),e.removeAttribute("aria-disabled"),e.removeAttribute("aria-busy"),e.style.width=n,e.style.height=r,i.spinnerPlacement==="replace"){e.innerHTML="";for(let u of l)e.appendChild(u);l=[];}else s&&(s.remove(),s=null),t&&(t.remove(),t=null);}return i.loading&&a(true,i.loadingText),{setLoading:a,destroy:()=>a(false)}}var L=class extends HTMLElement{static get observedAttributes(){return ["type","width","height","radius","lines","animation","theme","circle"]}connectedCallback(){c(),this.render();}attributeChangedCallback(){this.render();}render(){this.innerHTML="";let i=this.getAttribute("type")||"rect",n=this.getAttribute("lines")?parseInt(this.getAttribute("lines"),10):void 0,r=this.getAttribute("width")||void 0,l=this.getAttribute("height")||void 0,s=this.getAttribute("radius")||void 0,t=this.getAttribute("animation")||"shimmer",a=this.getAttribute("theme")||"light",d=this.hasAttribute("circle")?"circle":i,u=n?j(n,{width:r,animation:t,theme:a}):A({type:d,width:r,height:l,radius:s,animation:t,theme:a});this.appendChild(u);}},M=class extends HTMLElement{static get observedAttributes(){return ["type","size","color"]}connectedCallback(){c(),this.render();}attributeChangedCallback(){this.render();}render(){this.innerHTML="";let i=this.getAttribute("type")||"ring",n=this.getAttribute("size")||"28px",r=this.getAttribute("color")||void 0,l=v({type:i,size:n,color:r});this.appendChild(l);}},$=class extends HTMLElement{static get observedAttributes(){return ["value","circular","size","color"]}connectedCallback(){c(),this.render();}attributeChangedCallback(){this.render();}render(){this.innerHTML="";let i=this.getAttribute("value")?parseFloat(this.getAttribute("value")):void 0,n=this.hasAttribute("circular"),r=this.getAttribute("size")||void 0,l=this.getAttribute("color")||void 0,s=Y({value:i,circular:n,size:r,color:l});this.appendChild(s);}},N=class extends HTMLElement{static get observedAttributes(){return ["visible","message","blur"]}connectedCallback(){c(),this.update();}attributeChangedCallback(){this.update();}update(){let i=this.hasAttribute("visible")&&this.getAttribute("visible")!=="false",n=this.getAttribute("message")||void 0,r=this.getAttribute("blur")!=="false";i?k.show(this,{message:n,blur:r}):k.hide(this);}disconnectedCallback(){k.hide(this);}},z=class extends HTMLElement{btnController=null;static get observedAttributes(){return ["loading","loading-text"]}connectedCallback(){c();let i=this.querySelector("button");i&&(this.btnController=F(i,{loading:this.hasAttribute("loading"),loadingText:this.getAttribute("loading-text")||void 0}));}attributeChangedCallback(i){if(i==="loading"&&this.btnController){let n=this.hasAttribute("loading")&&this.getAttribute("loading")!=="false";this.btnController.setLoading(n,this.getAttribute("loading-text")||void 0);}}disconnectedCallback(){this.btnController&&(this.btnController.destroy(),this.btnController=null);}};function te(){typeof window>"u"||typeof customElements>"u"||(customElements.get("veil-skeleton")||customElements.define("veil-skeleton",L),customElements.get("veil-spinner")||customElements.define("veil-spinner",M),customElements.get("veil-progress")||customElements.define("veil-progress",$),customElements.get("veil-overlay")||customElements.define("veil-overlay",N),customElements.get("veil-loading-button")||customElements.define("veil-loading-button",z));}typeof window<"u"&&te();
394
+ exports.VeilLoadingButtonElement=z;exports.VeilOverlayElement=N;exports.VeilProgressElement=$;exports.VeilSkeletonElement=L;exports.VeilSpinnerElement=M;exports.defineVeilElements=te;//# sourceMappingURL=index.cjs.map
395
+ //# sourceMappingURL=index.cjs.map