loading-state-zoo 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.
package/dist/index.js ADDED
@@ -0,0 +1,291 @@
1
+ var ce=t=>{throw TypeError(t)};var pe=(t,s,r)=>s.has(t)||ce("Cannot "+r);var fe=(t,s,r)=>(pe(t,s,"read from private field"),r?r.call(t):s.get(t)),ze=(t,s,r)=>s.has(t)?ce("Cannot add the same private member more than once"):s instanceof WeakSet?s.add(t):s.set(t,r),me=(t,s,r,i)=>(pe(t,s,"write to private field"),i?i.call(t,r):s.set(t,r),r);var he=`
2
+ @keyframes lz-spin { to { transform: rotate(360deg); } }
3
+ @keyframes lz-spin-reverse { to { transform: rotate(-360deg); } }
4
+ @keyframes lz-dot-bounce {
5
+ 0% { transform: translateY(0); }
6
+ 50% { transform: translateY(var(--lz-bounce, -10px)); }
7
+ 100% { transform: translateY(0); }
8
+ }
9
+ @keyframes lz-eq-wave {
10
+ 0% { transform: scaleY(var(--lz-eq-min, 0.3)); }
11
+ 50% { transform: scaleY(1); }
12
+ 100% { transform: scaleY(var(--lz-eq-min, 0.3)); }
13
+ }
14
+ @keyframes lz-typing-pulse {
15
+ 0%, 100% { transform: scale(var(--lz-typing-min, 0.35)); }
16
+ 50% { transform: scale(var(--lz-typing-peak, 1.15)); }
17
+ }
18
+ @keyframes lz-dot-wave {
19
+ 0%, 100% { transform: scale(var(--lz-wave-min, 0.35)); }
20
+ 40% { transform: scale(var(--lz-wave-peak, 1.1)); }
21
+ }
22
+ @keyframes lz-pulse-breath {
23
+ 0%, 100% { transform: scale(1); }
24
+ 50% { transform: scale(var(--lz-breath, 1.14)); }
25
+ }
26
+ @keyframes lz-shape-morph {
27
+ 0% { transform: rotate(0deg) scale(var(--lz-morph, 0.72)); border-radius: 50%; }
28
+ 50% { transform: rotate(45deg) scale(1); border-radius: var(--lz-morph-radius, 17%); }
29
+ 100% { transform: rotate(90deg) scale(var(--lz-morph, 0.72)); border-radius: 50%; }
30
+ }
31
+ @keyframes lz-eye-gaze {
32
+ 0%, 100% { transform: translateX(var(--lz-gaze-from, -3px)); }
33
+ 50% { transform: translateX(var(--lz-gaze-to, 3px)); }
34
+ }
35
+ @keyframes lz-eye-blink {
36
+ 0%, 88%, 100% { transform: scaleY(1); }
37
+ 93% { transform: scaleY(var(--lz-blink, 0.08)); }
38
+ }
39
+ @keyframes lz-skeleton-sheen {
40
+ 0% { transform: translateX(var(--lz-sheen-from, -120%)); }
41
+ 100% { transform: translateX(var(--lz-sheen-to, 220%)); }
42
+ }
43
+ @keyframes lz-orbit-ring-dot {
44
+ 0% { opacity: var(--lz-orbit-fade, 0.12); }
45
+ 50% { opacity: 1; }
46
+ 90% { opacity: var(--lz-orbit-fade, 0.12); }
47
+ 100% { opacity: var(--lz-orbit-fade, 0.12); }
48
+ }
49
+ @keyframes lz-indeterminate-slide {
50
+ 0% { transform: translateX(var(--lz-slide-from, -100%)); }
51
+ 100% { transform: translateX(var(--lz-slide-to, 300%)); }
52
+ }
53
+ @keyframes lz-helix-bob {
54
+ 0%, 100% { transform: translateY(0); }
55
+ 50% { transform: translateY(var(--lz-helix, -12px)); }
56
+ }
57
+ @keyframes lz-grid-dot-wave {
58
+ 0% { transform: scale(var(--lz-grid-min, 0.3)); opacity: var(--lz-grid-fade, 0.15); }
59
+ 50% { transform: scale(1); opacity: 1; }
60
+ 100% { transform: scale(var(--lz-grid-min, 0.3)); opacity: var(--lz-grid-fade, 0.15); }
61
+ }
62
+ `,W=`
63
+ :host {
64
+ display: inline-flex;
65
+ font-size: var(--lz-size, 44px);
66
+ line-height: 1;
67
+ }
68
+ .lz-root {
69
+ display: contents;
70
+ }
71
+ ${he}
72
+ `;var ue=typeof HTMLElement<"u",ge=ue?HTMLElement:class{},n,e=class extends ge{constructor(){super(...arguments);ze(this,n,!1)}connectedCallback(){let r=this.shadowRoot??this.attachShadow({mode:"open"});r.innerHTML=`<style>${W}
73
+ ${this.css}</style><div class="lz-root"></div>`,this._rootEl=r.querySelector(".lz-root"),me(this,n,!0),this.paint()}attributeChangedCallback(){fe(this,n)&&this.paint()}paint(){this.sync();let r=this._rootEl;r&&(r.innerHTML=this.template())}num(r,i){let l=this.getAttribute(r);if(l===null||l==="")return i;let o=Number(l);return Number.isFinite(o)?o:i}varPx(r,i,l){let o=this.getAttribute(i);o!==null&&o!==""&&Number.isFinite(Number(o))?this.style.setProperty(r,`${Number(o)}px`):this.style.removeProperty(r)}varNum(r,i,l){let o=this.getAttribute(i);o!==null&&o!==""&&Number.isFinite(Number(o))?this.style.setProperty(r,String(Number(o))):this.style.removeProperty(r)}varRaw(r,i,l){let o=this.getAttribute(i);o!==null&&o!==""?this.style.setProperty(r,o):this.style.removeProperty(r)}};n=new WeakMap,e.observedAttributes=[];function a(t,s){typeof customElements>"u"||customElements.get(t)||customElements.define(t,s)}var q="lz-bouncing-dots",d=class extends e{constructor(){super(...arguments);this.css=`
74
+ :host { font-size: var(--lz-size, 8px); }
75
+ .lz-dots { display: flex; gap: 0.7em; }
76
+ .lz-dot {
77
+ width: 1em; height: 1em; border-radius: 50%;
78
+ background: var(--lz-color, #f5f5f7);
79
+ animation: lz-dot-bounce calc(1.2s * var(--lz-speed, 1)) cubic-bezier(0.28, 0.1, 0.25, 1.15) infinite;
80
+ }
81
+ .lz-dot:nth-child(2) { animation-delay: 0.15s; }
82
+ .lz-dot:nth-child(3) { animation-delay: 0.3s; }
83
+ `}template(){return'<div class="lz-dots" role="status" aria-label="Loading"><span class="lz-dot"></span><span class="lz-dot"></span><span class="lz-dot"></span></div>'}sync(){this.varPx("--lz-size","size",8),this.varRaw("--lz-color","color","#f5f5f7"),this.varNum("--lz-speed","speed",1)}};d.observedAttributes=["size","color","speed"];function c(){a(q,d)}var X="lz-typing-dots",p=class extends e{constructor(){super(...arguments);this.css=`
84
+ :host { font-size: var(--lz-size, 8px); }
85
+ .lz-dots { display: flex; gap: 0.8em; }
86
+ .lz-dot {
87
+ width: 1em; height: 1em; border-radius: 50%;
88
+ background: var(--lz-color, #f5f5f7);
89
+ animation: lz-typing-pulse calc(0.9s * var(--lz-speed, 1)) cubic-bezier(0.28, 0.1, 0.25, 1.15) infinite;
90
+ }
91
+ .lz-dot:nth-child(2) { animation-delay: -0.18s; }
92
+ .lz-dot:nth-child(3) { animation-delay: -0.36s; }
93
+ `}template(){return'<div class="lz-dots" role="status" aria-label="Loading"><span class="lz-dot"></span><span class="lz-dot"></span><span class="lz-dot"></span></div>'}sync(){this.varPx("--lz-size","size",8),this.varRaw("--lz-color","color","#f5f5f7"),this.varNum("--lz-speed","speed",1)}};p.observedAttributes=["size","color","speed"];function f(){a(X,p)}var K="lz-wave-dots",z=class extends e{constructor(){super(...arguments);this.css=`
94
+ :host { font-size: var(--lz-size, 8px); }
95
+ .lz-dots { display: flex; gap: 0.6em; }
96
+ .lz-dot {
97
+ width: 1em; height: 1em; border-radius: 50%;
98
+ background: var(--lz-color, #f5f5f7);
99
+ animation: lz-dot-wave calc(1.2s * var(--lz-speed, 1)) cubic-bezier(0.28, 0.1, 0.25, 1.15) infinite;
100
+ }
101
+ .lz-dot:nth-child(2) { animation-delay: -0.1s; }
102
+ .lz-dot:nth-child(3) { animation-delay: -0.2s; }
103
+ .lz-dot:nth-child(4) { animation-delay: -0.3s; }
104
+ `}template(){return'<div class="lz-dots" role="status" aria-label="Loading"><span class="lz-dot"></span><span class="lz-dot"></span><span class="lz-dot"></span><span class="lz-dot"></span></div>'}sync(){this.varPx("--lz-size","size",8),this.varRaw("--lz-color","color","#f5f5f7"),this.varNum("--lz-speed","speed",1)}};z.observedAttributes=["size","color","speed"];function m(){a(K,z)}var F="lz-helix-dots",be=1.4,h=class extends e{constructor(){super(...arguments);this.css=`
105
+ :host { font-size: var(--lz-size, 6px); }
106
+ .lz-dots { display: flex; gap: 0.9em; }
107
+ .lz-dot {
108
+ display: inline-block; width: 1em; height: 1em; border-radius: 50%;
109
+ background: var(--lz-color, #f5f5f7);
110
+ animation: lz-helix-bob calc(1.4s * var(--lz-speed, 1)) ease-in-out infinite;
111
+ }
112
+ `}template(){let r=Math.max(1,this.num("count",10)),i='<div class="lz-dots" role="status" aria-label="Loading">';for(let l=0;l<r;l++)i+=`<span class="lz-dot" style="animation-delay:-${(be/r*l).toFixed(3)}s"></span>`;return`${i}</div>`}sync(){this.varPx("--lz-size","size",6),this.varRaw("--lz-color","color","#f5f5f7"),this.varNum("--lz-speed","speed",1)}};h.observedAttributes=["size","count","color","speed"];function v(){a(F,h)}var Q="lz-dot-grid-wave",u=class extends e{constructor(){super(...arguments);this.css=`
113
+ :host { font-size: var(--lz-size, 6px); }
114
+ .lz-grid {
115
+ display: grid;
116
+ gap: var(--lz-grid-gap, 12px);
117
+ grid-template-columns: repeat(var(--lz-cols, 5), 1em);
118
+ }
119
+ .lz-dot {
120
+ width: 1em; height: 1em; border-radius: 50%;
121
+ background: var(--lz-color, #f5f5f7);
122
+ animation: lz-grid-dot-wave calc(1.2s * var(--lz-speed, 1)) cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite;
123
+ }
124
+ `}template(){let r=Math.max(1,this.num("rows",4)),i=Math.max(1,this.num("cols",5)),l='<div class="lz-grid" role="status" aria-label="Loading">';for(let o=0;o<r;o++)for(let $=0;$<i;$++)l+=`<span class="lz-dot" style="animation-delay:-${((o+$)*.08).toFixed(3)}s"></span>`;return`${l}</div>`}sync(){this.varPx("--lz-size","size",6),this.varNum("--lz-cols","cols",5),this.varPx("--lz-grid-gap","gap",12),this.varRaw("--lz-color","color","#f5f5f7"),this.varNum("--lz-speed","speed",1)}};u.observedAttributes=["rows","cols","size","gap","color","speed"];function g(){a(Q,u)}var V="lz-arc-spinner",xe=`
125
+ -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - var(--lz-stroke, 4px)), #000 calc(100% - var(--lz-stroke, 4px)));
126
+ mask: radial-gradient(farthest-side, transparent calc(100% - var(--lz-stroke, 4px)), #000 calc(100% - var(--lz-stroke, 4px)));
127
+ `,b=class extends e{constructor(){super(...arguments);this.css=`
128
+ :host { width: 1em; height: 1em; }
129
+ .lz-ring {
130
+ width: 100%; height: 100%; border-radius: 50%;
131
+ background: conic-gradient(
132
+ from 90deg,
133
+ var(--lz-color, #f5f5f7) 0deg,
134
+ var(--lz-color, #f5f5f7) 110deg,
135
+ transparent 111deg
136
+ );
137
+ ${xe}
138
+ animation: lz-spin calc(1s * var(--lz-speed, 1)) linear infinite;
139
+ }
140
+ `}template(){return'<div class="lz-ring" role="status" aria-label="Loading"></div>'}sync(){this.varPx("--lz-size","size",44),this.varPx("--lz-stroke","stroke-width",4),this.varRaw("--lz-color","color","#f5f5f7"),this.varNum("--lz-speed","speed",1)}};b.observedAttributes=["size","stroke-width","color","speed"];function x(){a(V,b)}var j="lz-material-double-arc",_e=`
141
+ -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - var(--lz-stroke, 4px)), #000 calc(100% - var(--lz-stroke, 4px)));
142
+ mask: radial-gradient(farthest-side, transparent calc(100% - var(--lz-stroke, 4px)), #000 calc(100% - var(--lz-stroke, 4px)));
143
+ `,_="var(--lz-color-weak, color-mix(in srgb, var(--lz-color, #f5f5f7) 95%, transparent))",A=class extends e{constructor(){super(...arguments);this.css=`
144
+ :host { width: 1em; height: 1em; position: relative; }
145
+ .lz-arc {
146
+ position: absolute; inset: 0; border-radius: 50%;
147
+ ${_e}
148
+ }
149
+ .lz-arc-a {
150
+ background: conic-gradient(from 0deg, ${_} 0deg, ${_} 135deg, transparent 136deg);
151
+ animation: lz-spin calc(1s * var(--lz-speed, 1)) linear infinite;
152
+ }
153
+ .lz-arc-b {
154
+ opacity: 0.6;
155
+ background: conic-gradient(from 200deg, ${_} 0deg, ${_} 90deg, transparent 91deg);
156
+ animation: lz-spin-reverse calc(2.4s * var(--lz-speed, 1)) linear infinite;
157
+ }
158
+ `}template(){return'<div class="lz-arc lz-arc-a" role="status" aria-label="Loading"></div><div class="lz-arc lz-arc-b"></div>'}sync(){this.varPx("--lz-size","size",44),this.varPx("--lz-stroke","stroke-width",4),this.varRaw("--lz-color","color","#f5f5f7"),this.varRaw("--lz-color-weak","color-weak"),this.varNum("--lz-speed","speed",1)}};A.observedAttributes=["size","stroke-width","color","speed"];function T(){a(j,A)}var J="lz-scan-sweep",y=class extends e{constructor(){super(...arguments);this.css=`
159
+ :host { width: 1em; height: 1em; position: relative; }
160
+ .lz-ring {
161
+ position: absolute; inset: 0; border-radius: 50%;
162
+ border: 1px solid var(--lz-track, rgba(255, 255, 255, 0.12));
163
+ }
164
+ .lz-ring-inner {
165
+ position: absolute; inset: 0.28em; border-radius: 50%;
166
+ border: 1px solid var(--lz-track-weak, rgba(255, 255, 255, 0.08));
167
+ }
168
+ .lz-core {
169
+ position: absolute; width: 0.14em; height: 0.14em;
170
+ left: 0.43em; top: 0.43em; border-radius: 50%;
171
+ background: var(--lz-color-weak, color-mix(in srgb, var(--lz-color, #f5f5f7) 80%, transparent));
172
+ }
173
+ .lz-sweep {
174
+ position: absolute; inset: 0; border-radius: 50%;
175
+ background: conic-gradient(
176
+ from 0deg,
177
+ var(--lz-color, #f5f5f7) 0deg,
178
+ var(--lz-color-sweep, color-mix(in srgb, var(--lz-color, #f5f5f7) 8%, transparent)) 60deg,
179
+ transparent 90deg
180
+ );
181
+ -webkit-mask: radial-gradient(closest-side, #000 100%);
182
+ mask: radial-gradient(closest-side, #000 100%);
183
+ animation: lz-spin calc(2.5s * var(--lz-speed, 1)) linear infinite;
184
+ }
185
+ `}template(){return'<div class="lz-ring" role="status" aria-label="Loading"></div><div class="lz-ring-inner"></div><div class="lz-core"></div><div class="lz-sweep"></div>'}sync(){this.varPx("--lz-size","size",44),this.varRaw("--lz-color","color","#f5f5f7"),this.varRaw("--lz-color-weak","color-weak"),this.varRaw("--lz-color-sweep","color-sweep"),this.varNum("--lz-speed","speed",1)}};y.observedAttributes=["size","color","speed"];function w(){a(J,y)}var ee="lz-orbit-dots",E=class extends e{constructor(){super(...arguments);this.css=`
186
+ :host { width: 1em; height: 1em; position: relative; }
187
+ .lz-orbit {
188
+ position: absolute; inset: 0;
189
+ animation: lz-spin calc(1.8s * var(--lz-speed, 1)) linear infinite;
190
+ }
191
+ .lz-dot {
192
+ position: absolute; top: 50%; left: 50%;
193
+ width: 0.16em; height: 0.16em;
194
+ margin: -0.08em 0 0 -0.08em; border-radius: 50%;
195
+ background: var(--lz-color-weak, color-mix(in srgb, var(--lz-color, #f5f5f7) 90%, transparent));
196
+ }
197
+ .lz-dot:nth-child(1) { transform: rotate(0deg) translateY(-0.36em); }
198
+ .lz-dot:nth-child(2) { transform: rotate(120deg) translateY(-0.36em); }
199
+ .lz-dot:nth-child(3) { transform: rotate(240deg) translateY(-0.36em); }
200
+ `}template(){return'<div class="lz-orbit" role="status" aria-label="Loading"><span class="lz-dot"></span><span class="lz-dot"></span><span class="lz-dot"></span></div>'}sync(){this.varPx("--lz-size","size",44),this.varRaw("--lz-color","color","#f5f5f7"),this.varRaw("--lz-color-weak","color-weak"),this.varNum("--lz-speed","speed",1)}};E.observedAttributes=["size","color","speed"];function R(){a(ee,E)}var te="lz-orbit-ring-dots",ve=8,k=class extends e{constructor(){super(...arguments);this.css=`
201
+ :host { width: 1em; height: 1em; position: relative; }
202
+ .lz-orbit { position: absolute; inset: 0; }
203
+ .lz-dot {
204
+ position: absolute; top: 50%; left: 50%;
205
+ width: var(--lz-dot-size, 0.18em); height: var(--lz-dot-size, 0.18em);
206
+ margin: calc(var(--lz-dot-size, 0.18em) / -2);
207
+ border-radius: 50%;
208
+ background: var(--lz-color, #f5f5f7);
209
+ animation: lz-orbit-ring-dot calc(1.2s * var(--lz-speed, 1)) linear infinite;
210
+ }
211
+ `}template(){let r='<div class="lz-orbit" role="status" aria-label="Loading">';for(let i=0;i<ve;i++){let l=360/ve*i;r+=`<span class="lz-dot" style="transform:rotate(${l}deg) translateY(calc(-0.5em + (var(--lz-dot-size, 0.18em) / 2)));animation-delay:-${(i*.15).toFixed(2)}s"></span>`}return`${r}</div>`}sync(){this.varPx("--lz-size","size",44),this.varPx("--lz-dot-size","dot-size",7.92),this.varRaw("--lz-color","color","#f5f5f7"),this.varNum("--lz-speed","speed",1)}};k.observedAttributes=["size","dot-size","color","speed"];function G(){a(te,k)}var re="lz-eyes",S=class extends e{constructor(){super(...arguments);this.css=`
212
+ :host { font-size: var(--lz-size, 44px); }
213
+ .lz-eyes { display: flex; gap: 0.24em; }
214
+ .lz-eye {
215
+ display: flex; align-items: center; justify-content: center;
216
+ width: 0.34em; height: 0.2788em; border-radius: 50%;
217
+ background: var(--lz-color, #f5f5f7);
218
+ animation: lz-eye-blink calc(4s * var(--lz-speed, 1)) ease-in-out infinite;
219
+ }
220
+ .lz-pupil {
221
+ width: 0.17em; height: 0.17em; border-radius: 50%;
222
+ background: var(--lz-pupil, rgba(0, 0, 0, 0.85));
223
+ animation: lz-eye-gaze calc(1.6s * var(--lz-speed, 1)) ease-in-out infinite;
224
+ }
225
+ `}template(){return'<div class="lz-eyes" role="status" aria-label="Loading"><div class="lz-eye"><span class="lz-pupil"></span></div><div class="lz-eye"><span class="lz-pupil"></span></div></div>'}sync(){this.varPx("--lz-size","size",44),this.varRaw("--lz-color","color","#f5f5f7"),this.varRaw("--lz-pupil","pupil"),this.varNum("--lz-speed","speed",1)}};S.observedAttributes=["size","color","speed"];function P(){a(re,S)}var ae="lz-morphing-square",N=class extends e{constructor(){super(...arguments);this.css=`
226
+ :host {
227
+ width: 1em; height: 1em;
228
+ background: var(--lz-accent, #0a84ff);
229
+ box-shadow: 0 0 calc(0.41 * var(--lz-size, 44px)) var(--lz-glow, color-mix(in srgb, var(--lz-accent, #0a84ff) 35%, transparent));
230
+ animation: lz-shape-morph calc(2s * var(--lz-speed, 1)) cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite;
231
+ }
232
+ `}template(){return'<div role="status" aria-label="Loading"></div>'}sync(){this.varPx("--lz-size","size",44),this.varRaw("--lz-accent","accent","#0a84ff"),this.varRaw("--lz-glow","glow"),this.varNum("--lz-speed","speed",1)}};N.observedAttributes=["size","accent","speed"];function I(){a(ae,N)}var se="lz-breathing-pulse",O=class extends e{constructor(){super(...arguments);this.css=`
233
+ :host {
234
+ font-size: var(--lz-size, 36px);
235
+ width: 1em; height: 1em; border-radius: 50%;
236
+ background: var(--lz-color, #f5f5f7);
237
+ animation: lz-pulse-breath calc(2.4s * var(--lz-speed, 1)) ease-in-out infinite;
238
+ }
239
+ `}template(){return'<div role="status" aria-label="Loading"></div>'}sync(){this.varPx("--lz-size","size",36),this.varRaw("--lz-color","color","#f5f5f7"),this.varNum("--lz-speed","speed",1)}};O.observedAttributes=["size","color","speed"];function D(){a(se,O)}var ie="lz-equalizer",L=class extends e{constructor(){super(...arguments);this.css=`
240
+ :host { font-size: var(--lz-size, 22px); }
241
+ .lz-eq { display: flex; align-items: flex-end; gap: var(--lz-gap, 3px); }
242
+ .lz-bar {
243
+ width: var(--lz-bar-width, 3px); height: 1em;
244
+ border-radius: 2px;
245
+ background: var(--lz-color, #f5f5f7);
246
+ transform-origin: bottom;
247
+ animation: lz-eq-wave calc(1s * var(--lz-speed, 1)) cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite;
248
+ }
249
+ .lz-bar:nth-child(2) { animation-delay: 0.12s; }
250
+ .lz-bar:nth-child(3) { animation-delay: 0.24s; }
251
+ .lz-bar:nth-child(4) { animation-delay: 0.36s; }
252
+ `}template(){return'<div class="lz-eq" role="status" aria-label="Loading"><span class="lz-bar"></span><span class="lz-bar"></span><span class="lz-bar"></span><span class="lz-bar"></span></div>'}sync(){this.varPx("--lz-size","size",22),this.varPx("--lz-bar-width","bar-width",3),this.varPx("--lz-gap","gap",3),this.varRaw("--lz-color","color","#f5f5f7"),this.varNum("--lz-speed","speed",1)}};L.observedAttributes=["size","bar-width","gap","color","speed"];function M(){a(ie,L)}var oe="lz-progress-ring",Ae=`
253
+ -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - var(--lz-stroke, 4px)), #000 calc(100% - var(--lz-stroke, 4px)));
254
+ mask: radial-gradient(farthest-side, transparent calc(100% - var(--lz-stroke, 4px)), #000 calc(100% - var(--lz-stroke, 4px)));
255
+ `,B=class extends e{constructor(){super(...arguments);this.css=`
256
+ :host { width: 1em; height: 1em; position: relative; }
257
+ .lz-ring { position: absolute; inset: 0; border-radius: 50%; ${Ae} }
258
+ .lz-track {
259
+ background: conic-gradient(var(--lz-track, rgba(255, 255, 255, 0.15)) 0deg, var(--lz-track, rgba(255, 255, 255, 0.15)) 360deg);
260
+ }
261
+ .lz-fill {
262
+ background: conic-gradient(var(--lz-color, #f5f5f7) calc(var(--lz-percent, 0) * 3.6deg), transparent 0deg);
263
+ transition: background 0.2s ease;
264
+ }
265
+ `}template(){return`<div class="lz-ring lz-track" role="progressbar" aria-label="Progress" aria-valuemin="0" aria-valuemax="100" aria-valuenow="${Math.max(0,Math.min(100,this.num("percent",0)))}"></div><div class="lz-ring lz-fill"></div>`}sync(){this.varPx("--lz-size","size",44),this.varPx("--lz-stroke","stroke-width",4),this.varRaw("--lz-color","color","#f5f5f7"),this.varRaw("--lz-track","track-color"),this.varNum("--lz-speed","speed",1),this.varNum("--lz-percent","percent",0)}};B.observedAttributes=["size","stroke-width","percent","color","track-color","speed"];function C(){a(oe,B)}var le="lz-indeterminate-progress-bar",H=class extends e{constructor(){super(...arguments);this.css=`
266
+ :host {
267
+ position: relative; display: inline-block;
268
+ width: var(--lz-width, 160px); height: var(--lz-height, 6px);
269
+ border-radius: var(--lz-radius, 999px); overflow: hidden;
270
+ background: var(--lz-surface, #1c1c1e);
271
+ }
272
+ .lz-bar {
273
+ position: absolute; top: 0; bottom: 0; left: 0; width: 36%;
274
+ border-radius: 999px;
275
+ background: var(--lz-accent, #0a84ff);
276
+ animation: lz-indeterminate-slide calc(1.6s * var(--lz-speed, 1)) cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite;
277
+ }
278
+ `}template(){return'<div class="lz-bar" role="status" aria-label="Loading"></div>'}sync(){this.varPx("--lz-width","width",160),this.varPx("--lz-height","height",6),this.varRaw("--lz-accent","accent","#0a84ff"),this.varRaw("--lz-surface","track-color","#1c1c1e"),this.varNum("--lz-speed","speed",1)}};H.observedAttributes=["width","height","accent","track-color","speed"];function Y(){a(le,H)}var ne="lz-skeleton-shimmer",Z=class extends e{constructor(){super(...arguments);this.css=`
279
+ :host {
280
+ position: relative; display: inline-block;
281
+ width: var(--lz-width, 120px); height: var(--lz-height, 28px);
282
+ border-radius: var(--lz-radius, 10px); overflow: hidden;
283
+ background: var(--lz-surface, #1c1c1e);
284
+ }
285
+ .lz-sheen {
286
+ position: absolute; top: 0; bottom: 0; left: 0; width: 50%;
287
+ background: linear-gradient(to right, transparent, var(--lz-sheen, rgba(255, 255, 255, 0.1)), transparent);
288
+ animation: lz-skeleton-sheen calc(1.4s * var(--lz-speed, 1)) linear infinite;
289
+ }
290
+ `}template(){return'<div class="lz-sheen" role="status" aria-label="Loading"></div>'}sync(){this.varPx("--lz-width","width",120),this.varPx("--lz-height","height",28),this.varRaw("--lz-surface","track-color","#1c1c1e"),this.varRaw("--lz-sheen","sheen"),this.varNum("--lz-speed","speed",1)}};Z.observedAttributes=["width","height","track-color","speed"];function U(){a(ne,Z)}function de(){c(),f(),m(),v(),g(),x(),T(),w(),R(),G(),P(),I(),D(),M(),C(),Y(),U()}de();export{V as ARC_SPINNER_TAG,q as BOUNCING_DOTS_TAG,se as BREATHING_PULSE_TAG,Q as DOT_GRID_WAVE_TAG,ie as EQUALIZER_TAG,re as EYES_TAG,F as HELIX_DOTS_TAG,le as INDETERMINATE_PROGRESS_BAR_TAG,he as KEYFRAMES,e as LZPattern,j as MATERIAL_DOUBLE_ARC_TAG,ae as MORPHING_SQUARE_TAG,ee as ORBIT_DOTS_TAG,te as ORBIT_RING_DOTS_TAG,oe as PROGRESS_RING_TAG,J as SCAN_SWEEP_TAG,W as SCOPED_CSS,ne as SKELETON_SHIMMER_TAG,X as TYPING_DOTS_TAG,K as WAVE_DOTS_TAG,a as define,de as defineAll,x as defineArcSpinner,c as defineBouncingDots,D as defineBreathingPulse,g as defineDotGridWave,M as defineEqualizer,P as defineEyes,v as defineHelixDots,Y as defineIndeterminateProgressBar,T as defineMaterialDoubleArc,I as defineMorphingSquare,R as defineOrbitDots,G as defineOrbitRingDots,C as defineProgressRing,w as defineScanSweep,U as defineSkeletonShimmer,f as defineTypingDots,m as defineWaveDots};
291
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/styles.ts","../src/base.ts","../src/elements/BouncingDots.ts","../src/elements/TypingDots.ts","../src/elements/WaveDots.ts","../src/elements/HelixDots.ts","../src/elements/DotGridWave.ts","../src/elements/ArcSpinner.ts","../src/elements/MaterialDoubleArc.ts","../src/elements/ScanSweep.ts","../src/elements/OrbitDots.ts","../src/elements/OrbitRingDots.ts","../src/elements/Eyes.ts","../src/elements/MorphingSquare.ts","../src/elements/BreathingPulse.ts","../src/elements/Equalizer.ts","../src/elements/ProgressRing.ts","../src/elements/IndeterminateProgressBar.ts","../src/elements/SkeletonShimmer.ts","../src/defineAll.ts","../src/index.ts"],"sourcesContent":["export const KEYFRAMES = /* css */ `\n@keyframes lz-spin { to { transform: rotate(360deg); } }\n@keyframes lz-spin-reverse { to { transform: rotate(-360deg); } }\n@keyframes lz-dot-bounce {\n 0% { transform: translateY(0); }\n 50% { transform: translateY(var(--lz-bounce, -10px)); }\n 100% { transform: translateY(0); }\n}\n@keyframes lz-eq-wave {\n 0% { transform: scaleY(var(--lz-eq-min, 0.3)); }\n 50% { transform: scaleY(1); }\n 100% { transform: scaleY(var(--lz-eq-min, 0.3)); }\n}\n@keyframes lz-typing-pulse {\n 0%, 100% { transform: scale(var(--lz-typing-min, 0.35)); }\n 50% { transform: scale(var(--lz-typing-peak, 1.15)); }\n}\n@keyframes lz-dot-wave {\n 0%, 100% { transform: scale(var(--lz-wave-min, 0.35)); }\n 40% { transform: scale(var(--lz-wave-peak, 1.1)); }\n}\n@keyframes lz-pulse-breath {\n 0%, 100% { transform: scale(1); }\n 50% { transform: scale(var(--lz-breath, 1.14)); }\n}\n@keyframes lz-shape-morph {\n 0% { transform: rotate(0deg) scale(var(--lz-morph, 0.72)); border-radius: 50%; }\n 50% { transform: rotate(45deg) scale(1); border-radius: var(--lz-morph-radius, 17%); }\n 100% { transform: rotate(90deg) scale(var(--lz-morph, 0.72)); border-radius: 50%; }\n}\n@keyframes lz-eye-gaze {\n 0%, 100% { transform: translateX(var(--lz-gaze-from, -3px)); }\n 50% { transform: translateX(var(--lz-gaze-to, 3px)); }\n}\n@keyframes lz-eye-blink {\n 0%, 88%, 100% { transform: scaleY(1); }\n 93% { transform: scaleY(var(--lz-blink, 0.08)); }\n}\n@keyframes lz-skeleton-sheen {\n 0% { transform: translateX(var(--lz-sheen-from, -120%)); }\n 100% { transform: translateX(var(--lz-sheen-to, 220%)); }\n}\n@keyframes lz-orbit-ring-dot {\n 0% { opacity: var(--lz-orbit-fade, 0.12); }\n 50% { opacity: 1; }\n 90% { opacity: var(--lz-orbit-fade, 0.12); }\n 100% { opacity: var(--lz-orbit-fade, 0.12); }\n}\n@keyframes lz-indeterminate-slide {\n 0% { transform: translateX(var(--lz-slide-from, -100%)); }\n 100% { transform: translateX(var(--lz-slide-to, 300%)); }\n}\n@keyframes lz-helix-bob {\n 0%, 100% { transform: translateY(0); }\n 50% { transform: translateY(var(--lz-helix, -12px)); }\n}\n@keyframes lz-grid-dot-wave {\n 0% { transform: scale(var(--lz-grid-min, 0.3)); opacity: var(--lz-grid-fade, 0.15); }\n 50% { transform: scale(1); opacity: 1; }\n 100% { transform: scale(var(--lz-grid-min, 0.3)); opacity: var(--lz-grid-fade, 0.15); }\n}\n`;\n\nexport const SCOPED_CSS = /* css */ `\n:host {\n display: inline-flex;\n font-size: var(--lz-size, 44px);\n line-height: 1;\n}\n.lz-root {\n display: contents;\n}\n${KEYFRAMES}\n`;","import { SCOPED_CSS } from \"./styles\";\n\nconst isBrowser = typeof HTMLElement !== \"undefined\";\n\nconst Base = isBrowser\n ? HTMLElement\n : (class {} as unknown as typeof HTMLElement);\n\nexport abstract class LZPattern extends Base {\n static observedAttributes: string[] = [];\n\n #ready = false;\n\n /** Element-local CSS. Runs after SCOPED_CSS, keyframes are shared. */\n abstract readonly css: string;\n\n /** Markup for the pattern, rooted at nothing (inserted into .lz-root). */\n abstract template(): string;\n\n /** Set CSS variables / ARIA / dimensions from current attributes. */\n abstract sync(): void;\n\n connectedCallback() {\n const root = this.shadowRoot ?? this.attachShadow({ mode: \"open\" });\n root.innerHTML = `<style>${SCOPED_CSS}\\n${this.css}</style><div class=\"lz-root\"></div>`;\n (this as { _rootEl?: HTMLElement })._rootEl = root.querySelector(\n \".lz-root\",\n ) as HTMLElement;\n this.#ready = true;\n this.paint();\n }\n\n attributeChangedCallback() {\n if (this.#ready) this.paint();\n }\n\n /** Re-sync vars/ARIA and rebuild the pattern's children. */\n paint() {\n this.sync();\n const el = (this as unknown as { _rootEl: HTMLElement })._rootEl;\n if (el) el.innerHTML = this.template();\n }\n\n /** Read an attribute as a number, returning `fallback` when absent/invalid. */\n num(attr: string, fallback: number): number {\n const raw = this.getAttribute(attr);\n if (raw === null || raw === \"\") return fallback;\n const n = Number(raw);\n return Number.isFinite(n) ? n : fallback;\n }\n\n /** Bind a px-valued CSS variable to an attribute (length units). */\n varPx(variable: string, attr: string, _fallback: number) {\n const raw = this.getAttribute(attr);\n if (raw !== null && raw !== \"\" && Number.isFinite(Number(raw))) {\n this.style.setProperty(variable, `${Number(raw)}px`);\n } else {\n this.style.removeProperty(variable);\n }\n }\n\n /** Bind a unitless CSS variable to an attribute. */\n varNum(variable: string, attr: string, _fallback: number) {\n const raw = this.getAttribute(attr);\n if (raw !== null && raw !== \"\" && Number.isFinite(Number(raw))) {\n this.style.setProperty(variable, String(Number(raw)));\n } else {\n this.style.removeProperty(variable);\n }\n }\n\n /** Bind an arbitrary CSS variable to an attribute value (or clear it). */\n varRaw(variable: string, attr: string, _fallback?: string) {\n const raw = this.getAttribute(attr);\n if (raw !== null && raw !== \"\") {\n this.style.setProperty(variable, raw);\n } else {\n this.style.removeProperty(variable);\n }\n }\n}\n\n/** Register a pattern element, silently skipping duplicates. */\nexport function define(tag: string, ctor: CustomElementConstructor) {\n if (typeof customElements === \"undefined\") return;\n if (customElements.get(tag)) return;\n customElements.define(tag, ctor);\n}","import { LZPattern, define } from \"../base\";\n\nexport const BOUNCING_DOTS_TAG = \"lz-bouncing-dots\";\n\nclass BouncingDots extends LZPattern {\n static observedAttributes = [\"size\", \"color\", \"speed\"];\n\n readonly css = /* css */ `\n:host { font-size: var(--lz-size, 8px); }\n.lz-dots { display: flex; gap: 0.7em; }\n.lz-dot {\n width: 1em; height: 1em; border-radius: 50%;\n background: var(--lz-color, #f5f5f7);\n animation: lz-dot-bounce calc(1.2s * var(--lz-speed, 1)) cubic-bezier(0.28, 0.1, 0.25, 1.15) infinite;\n}\n.lz-dot:nth-child(2) { animation-delay: 0.15s; }\n.lz-dot:nth-child(3) { animation-delay: 0.3s; }\n`;\n\n template() {\n return `<div class=\"lz-dots\" role=\"status\" aria-label=\"Loading\"><span class=\"lz-dot\"></span><span class=\"lz-dot\"></span><span class=\"lz-dot\"></span></div>`;\n }\n\n sync() {\n this.varPx(\"--lz-size\", \"size\", 8);\n this.varRaw(\"--lz-color\", \"color\", \"#f5f5f7\");\n this.varNum(\"--lz-speed\", \"speed\", 1);\n }\n}\n\nexport function defineBouncingDots() {\n define(BOUNCING_DOTS_TAG, BouncingDots);\n}","import { LZPattern, define } from \"../base\";\n\nexport const TYPING_DOTS_TAG = \"lz-typing-dots\";\n\nclass TypingDots extends LZPattern {\n static observedAttributes = [\"size\", \"color\", \"speed\"];\n\n readonly css = /* css */ `\n:host { font-size: var(--lz-size, 8px); }\n.lz-dots { display: flex; gap: 0.8em; }\n.lz-dot {\n width: 1em; height: 1em; border-radius: 50%;\n background: var(--lz-color, #f5f5f7);\n animation: lz-typing-pulse calc(0.9s * var(--lz-speed, 1)) cubic-bezier(0.28, 0.1, 0.25, 1.15) infinite;\n}\n.lz-dot:nth-child(2) { animation-delay: -0.18s; }\n.lz-dot:nth-child(3) { animation-delay: -0.36s; }\n`;\n\n template() {\n return `<div class=\"lz-dots\" role=\"status\" aria-label=\"Loading\"><span class=\"lz-dot\"></span><span class=\"lz-dot\"></span><span class=\"lz-dot\"></span></div>`;\n }\n\n sync() {\n this.varPx(\"--lz-size\", \"size\", 8);\n this.varRaw(\"--lz-color\", \"color\", \"#f5f5f7\");\n this.varNum(\"--lz-speed\", \"speed\", 1);\n }\n}\n\nexport function defineTypingDots() {\n define(TYPING_DOTS_TAG, TypingDots);\n}","import { LZPattern, define } from \"../base\";\n\nexport const WAVE_DOTS_TAG = \"lz-wave-dots\";\n\nclass WaveDots extends LZPattern {\n static observedAttributes = [\"size\", \"color\", \"speed\"];\n\n readonly css = /* css */ `\n:host { font-size: var(--lz-size, 8px); }\n.lz-dots { display: flex; gap: 0.6em; }\n.lz-dot {\n width: 1em; height: 1em; border-radius: 50%;\n background: var(--lz-color, #f5f5f7);\n animation: lz-dot-wave calc(1.2s * var(--lz-speed, 1)) cubic-bezier(0.28, 0.1, 0.25, 1.15) infinite;\n}\n.lz-dot:nth-child(2) { animation-delay: -0.1s; }\n.lz-dot:nth-child(3) { animation-delay: -0.2s; }\n.lz-dot:nth-child(4) { animation-delay: -0.3s; }\n`;\n\n template() {\n return `<div class=\"lz-dots\" role=\"status\" aria-label=\"Loading\"><span class=\"lz-dot\"></span><span class=\"lz-dot\"></span><span class=\"lz-dot\"></span><span class=\"lz-dot\"></span></div>`;\n }\n\n sync() {\n this.varPx(\"--lz-size\", \"size\", 8);\n this.varRaw(\"--lz-color\", \"color\", \"#f5f5f7\");\n this.varNum(\"--lz-speed\", \"speed\", 1);\n }\n}\n\nexport function defineWaveDots() {\n define(WAVE_DOTS_TAG, WaveDots);\n}","import { LZPattern, define } from \"../base\";\n\nexport const HELIX_DOTS_TAG = \"lz-helix-dots\";\n\nconst CYCLE = 1.4;\n\nclass HelixDots extends LZPattern {\n static observedAttributes = [\"size\", \"count\", \"color\", \"speed\"];\n\n readonly css = /* css */ `\n:host { font-size: var(--lz-size, 6px); }\n.lz-dots { display: flex; gap: 0.9em; }\n.lz-dot {\n display: inline-block; width: 1em; height: 1em; border-radius: 50%;\n background: var(--lz-color, #f5f5f7);\n animation: lz-helix-bob calc(1.4s * var(--lz-speed, 1)) ease-in-out infinite;\n}\n`;\n\n template() {\n const count = Math.max(1, this.num(\"count\", 10));\n let out = `<div class=\"lz-dots\" role=\"status\" aria-label=\"Loading\">`;\n for (let i = 0; i < count; i++) {\n out += `<span class=\"lz-dot\" style=\"animation-delay:-${((CYCLE / count) * i).toFixed(3)}s\"></span>`;\n }\n return `${out}</div>`;\n }\n\n sync() {\n this.varPx(\"--lz-size\", \"size\", 6);\n this.varRaw(\"--lz-color\", \"color\", \"#f5f5f7\");\n this.varNum(\"--lz-speed\", \"speed\", 1);\n }\n}\n\nexport function defineHelixDots() {\n define(HELIX_DOTS_TAG, HelixDots);\n}","import { LZPattern, define } from \"../base\";\n\nexport const DOT_GRID_WAVE_TAG = \"lz-dot-grid-wave\";\n\nclass DotGridWave extends LZPattern {\n static observedAttributes = [\"rows\", \"cols\", \"size\", \"gap\", \"color\", \"speed\"];\n\n readonly css = /* css */ `\n:host { font-size: var(--lz-size, 6px); }\n.lz-grid {\n display: grid;\n gap: var(--lz-grid-gap, 12px);\n grid-template-columns: repeat(var(--lz-cols, 5), 1em);\n}\n.lz-dot {\n width: 1em; height: 1em; border-radius: 50%;\n background: var(--lz-color, #f5f5f7);\n animation: lz-grid-dot-wave calc(1.2s * var(--lz-speed, 1)) cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite;\n}\n`;\n\n template() {\n const rows = Math.max(1, this.num(\"rows\", 4));\n const cols = Math.max(1, this.num(\"cols\", 5));\n let out = `<div class=\"lz-grid\" role=\"status\" aria-label=\"Loading\">`;\n for (let r = 0; r < rows; r++) {\n for (let c = 0; c < cols; c++) {\n out += `<span class=\"lz-dot\" style=\"animation-delay:-${((r + c) * 0.08).toFixed(3)}s\"></span>`;\n }\n }\n return `${out}</div>`;\n }\n\n sync() {\n this.varPx(\"--lz-size\", \"size\", 6);\n this.varNum(\"--lz-cols\", \"cols\", 5);\n this.varPx(\"--lz-grid-gap\", \"gap\", 12);\n this.varRaw(\"--lz-color\", \"color\", \"#f5f5f7\");\n this.varNum(\"--lz-speed\", \"speed\", 1);\n }\n}\n\nexport function defineDotGridWave() {\n define(DOT_GRID_WAVE_TAG, DotGridWave);\n}","import { LZPattern, define } from \"../base\";\n\nexport const ARC_SPINNER_TAG = \"lz-arc-spinner\";\n\nconst RING_MASK = `\n -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - var(--lz-stroke, 4px)), #000 calc(100% - var(--lz-stroke, 4px)));\n mask: radial-gradient(farthest-side, transparent calc(100% - var(--lz-stroke, 4px)), #000 calc(100% - var(--lz-stroke, 4px)));\n`;\n\nclass ArcSpinner extends LZPattern {\n static observedAttributes = [\"size\", \"stroke-width\", \"color\", \"speed\"];\n\n readonly css = /* css */ `\n:host { width: 1em; height: 1em; }\n.lz-ring {\n width: 100%; height: 100%; border-radius: 50%;\n background: conic-gradient(\n from 90deg,\n var(--lz-color, #f5f5f7) 0deg,\n var(--lz-color, #f5f5f7) 110deg,\n transparent 111deg\n );\n ${RING_MASK}\n animation: lz-spin calc(1s * var(--lz-speed, 1)) linear infinite;\n}\n`;\n\n template() {\n return `<div class=\"lz-ring\" role=\"status\" aria-label=\"Loading\"></div>`;\n }\n\n sync() {\n this.varPx(\"--lz-size\", \"size\", 44);\n this.varPx(\"--lz-stroke\", \"stroke-width\", 4);\n this.varRaw(\"--lz-color\", \"color\", \"#f5f5f7\");\n this.varNum(\"--lz-speed\", \"speed\", 1);\n }\n}\n\nexport function defineArcSpinner() {\n define(ARC_SPINNER_TAG, ArcSpinner);\n}","import { LZPattern, define } from \"../base\";\n\nexport const MATERIAL_DOUBLE_ARC_TAG = \"lz-material-double-arc\";\n\nconst RING_MASK = `\n -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - var(--lz-stroke, 4px)), #000 calc(100% - var(--lz-stroke, 4px)));\n mask: radial-gradient(farthest-side, transparent calc(100% - var(--lz-stroke, 4px)), #000 calc(100% - var(--lz-stroke, 4px)));\n`;\nconst ARc = \"var(--lz-color-weak, color-mix(in srgb, var(--lz-color, #f5f5f7) 95%, transparent))\";\n\nclass MaterialDoubleArc extends LZPattern {\n static observedAttributes = [\"size\", \"stroke-width\", \"color\", \"speed\"];\n\n readonly css = /* css */ `\n:host { width: 1em; height: 1em; position: relative; }\n.lz-arc {\n position: absolute; inset: 0; border-radius: 50%;\n ${RING_MASK}\n}\n.lz-arc-a {\n background: conic-gradient(from 0deg, ${ARc} 0deg, ${ARc} 135deg, transparent 136deg);\n animation: lz-spin calc(1s * var(--lz-speed, 1)) linear infinite;\n}\n.lz-arc-b {\n opacity: 0.6;\n background: conic-gradient(from 200deg, ${ARc} 0deg, ${ARc} 90deg, transparent 91deg);\n animation: lz-spin-reverse calc(2.4s * var(--lz-speed, 1)) linear infinite;\n}\n`;\n\n template() {\n return `<div class=\"lz-arc lz-arc-a\" role=\"status\" aria-label=\"Loading\"></div><div class=\"lz-arc lz-arc-b\"></div>`;\n }\n\n sync() {\n this.varPx(\"--lz-size\", \"size\", 44);\n this.varPx(\"--lz-stroke\", \"stroke-width\", 4);\n this.varRaw(\"--lz-color\", \"color\", \"#f5f5f7\");\n this.varRaw(\"--lz-color-weak\", \"color-weak\");\n this.varNum(\"--lz-speed\", \"speed\", 1);\n }\n}\n\nexport function defineMaterialDoubleArc() {\n define(MATERIAL_DOUBLE_ARC_TAG, MaterialDoubleArc);\n}","import { LZPattern, define } from \"../base\";\n\nexport const SCAN_SWEEP_TAG = \"lz-scan-sweep\";\n\nclass ScanSweep extends LZPattern {\n static observedAttributes = [\"size\", \"color\", \"speed\"];\n\n readonly css = /* css */ `\n:host { width: 1em; height: 1em; position: relative; }\n.lz-ring {\n position: absolute; inset: 0; border-radius: 50%;\n border: 1px solid var(--lz-track, rgba(255, 255, 255, 0.12));\n}\n.lz-ring-inner {\n position: absolute; inset: 0.28em; border-radius: 50%;\n border: 1px solid var(--lz-track-weak, rgba(255, 255, 255, 0.08));\n}\n.lz-core {\n position: absolute; width: 0.14em; height: 0.14em;\n left: 0.43em; top: 0.43em; border-radius: 50%;\n background: var(--lz-color-weak, color-mix(in srgb, var(--lz-color, #f5f5f7) 80%, transparent));\n}\n.lz-sweep {\n position: absolute; inset: 0; border-radius: 50%;\n background: conic-gradient(\n from 0deg,\n var(--lz-color, #f5f5f7) 0deg,\n var(--lz-color-sweep, color-mix(in srgb, var(--lz-color, #f5f5f7) 8%, transparent)) 60deg,\n transparent 90deg\n );\n -webkit-mask: radial-gradient(closest-side, #000 100%);\n mask: radial-gradient(closest-side, #000 100%);\n animation: lz-spin calc(2.5s * var(--lz-speed, 1)) linear infinite;\n}\n`;\n\n template() {\n return `<div class=\"lz-ring\" role=\"status\" aria-label=\"Loading\"></div><div class=\"lz-ring-inner\"></div><div class=\"lz-core\"></div><div class=\"lz-sweep\"></div>`;\n }\n\n sync() {\n this.varPx(\"--lz-size\", \"size\", 44);\n this.varRaw(\"--lz-color\", \"color\", \"#f5f5f7\");\n this.varRaw(\"--lz-color-weak\", \"color-weak\");\n this.varRaw(\"--lz-color-sweep\", \"color-sweep\");\n this.varNum(\"--lz-speed\", \"speed\", 1);\n }\n}\n\nexport function defineScanSweep() {\n define(SCAN_SWEEP_TAG, ScanSweep);\n}","import { LZPattern, define } from \"../base\";\n\nexport const ORBIT_DOTS_TAG = \"lz-orbit-dots\";\n\nclass OrbitDots extends LZPattern {\n static observedAttributes = [\"size\", \"color\", \"speed\"];\n\n readonly css = /* css */ `\n:host { width: 1em; height: 1em; position: relative; }\n.lz-orbit {\n position: absolute; inset: 0;\n animation: lz-spin calc(1.8s * var(--lz-speed, 1)) linear infinite;\n}\n.lz-dot {\n position: absolute; top: 50%; left: 50%;\n width: 0.16em; height: 0.16em;\n margin: -0.08em 0 0 -0.08em; border-radius: 50%;\n background: var(--lz-color-weak, color-mix(in srgb, var(--lz-color, #f5f5f7) 90%, transparent));\n}\n.lz-dot:nth-child(1) { transform: rotate(0deg) translateY(-0.36em); }\n.lz-dot:nth-child(2) { transform: rotate(120deg) translateY(-0.36em); }\n.lz-dot:nth-child(3) { transform: rotate(240deg) translateY(-0.36em); }\n`;\n\n template() {\n return `<div class=\"lz-orbit\" role=\"status\" aria-label=\"Loading\"><span class=\"lz-dot\"></span><span class=\"lz-dot\"></span><span class=\"lz-dot\"></span></div>`;\n }\n\n sync() {\n this.varPx(\"--lz-size\", \"size\", 44);\n this.varRaw(\"--lz-color\", \"color\", \"#f5f5f7\");\n this.varRaw(\"--lz-color-weak\", \"color-weak\");\n this.varNum(\"--lz-speed\", \"speed\", 1);\n }\n}\n\nexport function defineOrbitDots() {\n define(ORBIT_DOTS_TAG, OrbitDots);\n}","import { LZPattern, define } from \"../base\";\n\nexport const ORBIT_RING_DOTS_TAG = \"lz-orbit-ring-dots\";\n\nconst N = 8;\n\nclass OrbitRingDots extends LZPattern {\n static observedAttributes = [\"size\", \"dot-size\", \"color\", \"speed\"];\n\n readonly css = /* css */ `\n:host { width: 1em; height: 1em; position: relative; }\n.lz-orbit { position: absolute; inset: 0; }\n.lz-dot {\n position: absolute; top: 50%; left: 50%;\n width: var(--lz-dot-size, 0.18em); height: var(--lz-dot-size, 0.18em);\n margin: calc(var(--lz-dot-size, 0.18em) / -2);\n border-radius: 50%;\n background: var(--lz-color, #f5f5f7);\n animation: lz-orbit-ring-dot calc(1.2s * var(--lz-speed, 1)) linear infinite;\n}\n`;\n\n template() {\n let out = `<div class=\"lz-orbit\" role=\"status\" aria-label=\"Loading\">`;\n for (let i = 0; i < N; i++) {\n const ang = (360 / N) * i;\n out += `<span class=\"lz-dot\" style=\"transform:rotate(${ang}deg) translateY(calc(-0.5em + (var(--lz-dot-size, 0.18em) / 2)));animation-delay:-${(i * 0.15).toFixed(2)}s\"></span>`;\n }\n return `${out}</div>`;\n }\n\n sync() {\n this.varPx(\"--lz-size\", \"size\", 44);\n this.varPx(\"--lz-dot-size\", \"dot-size\", 7.92);\n this.varRaw(\"--lz-color\", \"color\", \"#f5f5f7\");\n this.varNum(\"--lz-speed\", \"speed\", 1);\n }\n}\n\nexport function defineOrbitRingDots() {\n define(ORBIT_RING_DOTS_TAG, OrbitRingDots);\n}","import { LZPattern, define } from \"../base\";\n\nexport const EYES_TAG = \"lz-eyes\";\n\nclass Eyes extends LZPattern {\n static observedAttributes = [\"size\", \"color\", \"speed\"];\n\n readonly css = /* css */ `\n:host { font-size: var(--lz-size, 44px); }\n.lz-eyes { display: flex; gap: 0.24em; }\n.lz-eye {\n display: flex; align-items: center; justify-content: center;\n width: 0.34em; height: 0.2788em; border-radius: 50%;\n background: var(--lz-color, #f5f5f7);\n animation: lz-eye-blink calc(4s * var(--lz-speed, 1)) ease-in-out infinite;\n}\n.lz-pupil {\n width: 0.17em; height: 0.17em; border-radius: 50%;\n background: var(--lz-pupil, rgba(0, 0, 0, 0.85));\n animation: lz-eye-gaze calc(1.6s * var(--lz-speed, 1)) ease-in-out infinite;\n}\n`;\n\n template() {\n return `<div class=\"lz-eyes\" role=\"status\" aria-label=\"Loading\"><div class=\"lz-eye\"><span class=\"lz-pupil\"></span></div><div class=\"lz-eye\"><span class=\"lz-pupil\"></span></div></div>`;\n }\n\n sync() {\n this.varPx(\"--lz-size\", \"size\", 44);\n this.varRaw(\"--lz-color\", \"color\", \"#f5f5f7\");\n this.varRaw(\"--lz-pupil\", \"pupil\");\n this.varNum(\"--lz-speed\", \"speed\", 1);\n }\n}\n\nexport function defineEyes() {\n define(EYES_TAG, Eyes);\n}","import { LZPattern, define } from \"../base\";\n\nexport const MORPHING_SQUARE_TAG = \"lz-morphing-square\";\n\nclass MorphingSquare extends LZPattern {\n static observedAttributes = [\"size\", \"accent\", \"speed\"];\n\n readonly css = /* css */ `\n:host {\n width: 1em; height: 1em;\n background: var(--lz-accent, #0a84ff);\n box-shadow: 0 0 calc(0.41 * var(--lz-size, 44px)) var(--lz-glow, color-mix(in srgb, var(--lz-accent, #0a84ff) 35%, transparent));\n animation: lz-shape-morph calc(2s * var(--lz-speed, 1)) cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite;\n}\n`;\n\n template() {\n return `<div role=\"status\" aria-label=\"Loading\"></div>`;\n }\n\n sync() {\n this.varPx(\"--lz-size\", \"size\", 44);\n this.varRaw(\"--lz-accent\", \"accent\", \"#0a84ff\");\n this.varRaw(\"--lz-glow\", \"glow\");\n this.varNum(\"--lz-speed\", \"speed\", 1);\n }\n}\n\nexport function defineMorphingSquare() {\n define(MORPHING_SQUARE_TAG, MorphingSquare);\n}","import { LZPattern, define } from \"../base\";\n\nexport const BREATHING_PULSE_TAG = \"lz-breathing-pulse\";\n\nclass BreathingPulse extends LZPattern {\n static observedAttributes = [\"size\", \"color\", \"speed\"];\n\n readonly css = /* css */ `\n:host {\n font-size: var(--lz-size, 36px);\n width: 1em; height: 1em; border-radius: 50%;\n background: var(--lz-color, #f5f5f7);\n animation: lz-pulse-breath calc(2.4s * var(--lz-speed, 1)) ease-in-out infinite;\n}\n`;\n\n template() {\n return `<div role=\"status\" aria-label=\"Loading\"></div>`;\n }\n\n sync() {\n this.varPx(\"--lz-size\", \"size\", 36);\n this.varRaw(\"--lz-color\", \"color\", \"#f5f5f7\");\n this.varNum(\"--lz-speed\", \"speed\", 1);\n }\n}\n\nexport function defineBreathingPulse() {\n define(BREATHING_PULSE_TAG, BreathingPulse);\n}","import { LZPattern, define } from \"../base\";\n\nexport const EQUALIZER_TAG = \"lz-equalizer\";\n\nclass Equalizer extends LZPattern {\n static observedAttributes = [\"size\", \"bar-width\", \"gap\", \"color\", \"speed\"];\n\n readonly css = /* css */ `\n:host { font-size: var(--lz-size, 22px); }\n.lz-eq { display: flex; align-items: flex-end; gap: var(--lz-gap, 3px); }\n.lz-bar {\n width: var(--lz-bar-width, 3px); height: 1em;\n border-radius: 2px;\n background: var(--lz-color, #f5f5f7);\n transform-origin: bottom;\n animation: lz-eq-wave calc(1s * var(--lz-speed, 1)) cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite;\n}\n.lz-bar:nth-child(2) { animation-delay: 0.12s; }\n.lz-bar:nth-child(3) { animation-delay: 0.24s; }\n.lz-bar:nth-child(4) { animation-delay: 0.36s; }\n`;\n\n template() {\n return `<div class=\"lz-eq\" role=\"status\" aria-label=\"Loading\"><span class=\"lz-bar\"></span><span class=\"lz-bar\"></span><span class=\"lz-bar\"></span><span class=\"lz-bar\"></span></div>`;\n }\n\n sync() {\n this.varPx(\"--lz-size\", \"size\", 22);\n this.varPx(\"--lz-bar-width\", \"bar-width\", 3);\n this.varPx(\"--lz-gap\", \"gap\", 3);\n this.varRaw(\"--lz-color\", \"color\", \"#f5f5f7\");\n this.varNum(\"--lz-speed\", \"speed\", 1);\n }\n}\n\nexport function defineEqualizer() {\n define(EQUALIZER_TAG, Equalizer);\n}","import { LZPattern, define } from \"../base\";\n\nexport const PROGRESS_RING_TAG = \"lz-progress-ring\";\n\nconst RING_MASK = `\n -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - var(--lz-stroke, 4px)), #000 calc(100% - var(--lz-stroke, 4px)));\n mask: radial-gradient(farthest-side, transparent calc(100% - var(--lz-stroke, 4px)), #000 calc(100% - var(--lz-stroke, 4px)));\n`;\n\nclass ProgressRing extends LZPattern {\n static observedAttributes = [\"size\", \"stroke-width\", \"percent\", \"color\", \"track-color\", \"speed\"];\n\n readonly css = /* css */ `\n:host { width: 1em; height: 1em; position: relative; }\n.lz-ring { position: absolute; inset: 0; border-radius: 50%; ${RING_MASK} }\n.lz-track {\n background: conic-gradient(var(--lz-track, rgba(255, 255, 255, 0.15)) 0deg, var(--lz-track, rgba(255, 255, 255, 0.15)) 360deg);\n}\n.lz-fill {\n background: conic-gradient(var(--lz-color, #f5f5f7) calc(var(--lz-percent, 0) * 3.6deg), transparent 0deg);\n transition: background 0.2s ease;\n}\n`;\n\n template() {\n const p = Math.max(0, Math.min(100, this.num(\"percent\", 0)));\n return `<div class=\"lz-ring lz-track\" role=\"progressbar\" aria-label=\"Progress\" aria-valuemin=\"0\" aria-valuemax=\"100\" aria-valuenow=\"${p}\"></div><div class=\"lz-ring lz-fill\"></div>`;\n }\n\n sync() {\n this.varPx(\"--lz-size\", \"size\", 44);\n this.varPx(\"--lz-stroke\", \"stroke-width\", 4);\n this.varRaw(\"--lz-color\", \"color\", \"#f5f5f7\");\n this.varRaw(\"--lz-track\", \"track-color\");\n this.varNum(\"--lz-speed\", \"speed\", 1);\n this.varNum(\"--lz-percent\", \"percent\", 0);\n }\n}\n\nexport function defineProgressRing() {\n define(PROGRESS_RING_TAG, ProgressRing);\n}","import { LZPattern, define } from \"../base\";\n\nexport const INDETERMINATE_PROGRESS_BAR_TAG = \"lz-indeterminate-progress-bar\";\n\nclass IndeterminateProgressBar extends LZPattern {\n static observedAttributes = [\"width\", \"height\", \"accent\", \"track-color\", \"speed\"];\n\n readonly css = /* css */ `\n:host {\n position: relative; display: inline-block;\n width: var(--lz-width, 160px); height: var(--lz-height, 6px);\n border-radius: var(--lz-radius, 999px); overflow: hidden;\n background: var(--lz-surface, #1c1c1e);\n}\n.lz-bar {\n position: absolute; top: 0; bottom: 0; left: 0; width: 36%;\n border-radius: 999px;\n background: var(--lz-accent, #0a84ff);\n animation: lz-indeterminate-slide calc(1.6s * var(--lz-speed, 1)) cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite;\n}\n`;\n\n template() {\n return `<div class=\"lz-bar\" role=\"status\" aria-label=\"Loading\"></div>`;\n }\n\n sync() {\n this.varPx(\"--lz-width\", \"width\", 160);\n this.varPx(\"--lz-height\", \"height\", 6);\n this.varRaw(\"--lz-accent\", \"accent\", \"#0a84ff\");\n this.varRaw(\"--lz-surface\", \"track-color\", \"#1c1c1e\");\n this.varNum(\"--lz-speed\", \"speed\", 1);\n }\n}\n\nexport function defineIndeterminateProgressBar() {\n define(INDETERMINATE_PROGRESS_BAR_TAG, IndeterminateProgressBar);\n}","import { LZPattern, define } from \"../base\";\n\nexport const SKELETON_SHIMMER_TAG = \"lz-skeleton-shimmer\";\n\nclass SkeletonShimmer extends LZPattern {\n static observedAttributes = [\"width\", \"height\", \"track-color\", \"speed\"];\n\n readonly css = /* css */ `\n:host {\n position: relative; display: inline-block;\n width: var(--lz-width, 120px); height: var(--lz-height, 28px);\n border-radius: var(--lz-radius, 10px); overflow: hidden;\n background: var(--lz-surface, #1c1c1e);\n}\n.lz-sheen {\n position: absolute; top: 0; bottom: 0; left: 0; width: 50%;\n background: linear-gradient(to right, transparent, var(--lz-sheen, rgba(255, 255, 255, 0.1)), transparent);\n animation: lz-skeleton-sheen calc(1.4s * var(--lz-speed, 1)) linear infinite;\n}\n`;\n\n template() {\n return `<div class=\"lz-sheen\" role=\"status\" aria-label=\"Loading\"></div>`;\n }\n\n sync() {\n this.varPx(\"--lz-width\", \"width\", 120);\n this.varPx(\"--lz-height\", \"height\", 28);\n this.varRaw(\"--lz-surface\", \"track-color\", \"#1c1c1e\");\n this.varRaw(\"--lz-sheen\", \"sheen\");\n this.varNum(\"--lz-speed\", \"speed\", 1);\n }\n}\n\nexport function defineSkeletonShimmer() {\n define(SKELETON_SHIMMER_TAG, SkeletonShimmer);\n}","import { defineBouncingDots } from \"./elements/BouncingDots\";\nimport { defineTypingDots } from \"./elements/TypingDots\";\nimport { defineWaveDots } from \"./elements/WaveDots\";\nimport { defineHelixDots } from \"./elements/HelixDots\";\nimport { defineDotGridWave } from \"./elements/DotGridWave\";\nimport { defineArcSpinner } from \"./elements/ArcSpinner\";\nimport { defineMaterialDoubleArc } from \"./elements/MaterialDoubleArc\";\nimport { defineScanSweep } from \"./elements/ScanSweep\";\nimport { defineOrbitDots } from \"./elements/OrbitDots\";\nimport { defineOrbitRingDots } from \"./elements/OrbitRingDots\";\nimport { defineEyes } from \"./elements/Eyes\";\nimport { defineMorphingSquare } from \"./elements/MorphingSquare\";\nimport { defineBreathingPulse } from \"./elements/BreathingPulse\";\nimport { defineEqualizer } from \"./elements/Equalizer\";\nimport { defineProgressRing } from \"./elements/ProgressRing\";\nimport { defineIndeterminateProgressBar } from \"./elements/IndeterminateProgressBar\";\nimport { defineSkeletonShimmer } from \"./elements/SkeletonShimmer\";\n\n/**\n * Register every pattern as a custom element.\n * Safe to call repeatedly; duplicates are skipped.\n */\nexport function defineAll() {\n defineBouncingDots();\n defineTypingDots();\n defineWaveDots();\n defineHelixDots();\n defineDotGridWave();\n defineArcSpinner();\n defineMaterialDoubleArc();\n defineScanSweep();\n defineOrbitDots();\n defineOrbitRingDots();\n defineEyes();\n defineMorphingSquare();\n defineBreathingPulse();\n defineEqualizer();\n defineProgressRing();\n defineIndeterminateProgressBar();\n defineSkeletonShimmer();\n}","import { defineAll } from \"./defineAll\";\nimport { defineBouncingDots, BOUNCING_DOTS_TAG } from \"./elements/BouncingDots\";\nimport { defineTypingDots, TYPING_DOTS_TAG } from \"./elements/TypingDots\";\nimport { defineWaveDots, WAVE_DOTS_TAG } from \"./elements/WaveDots\";\nimport { defineHelixDots, HELIX_DOTS_TAG } from \"./elements/HelixDots\";\nimport { defineDotGridWave, DOT_GRID_WAVE_TAG } from \"./elements/DotGridWave\";\nimport { defineArcSpinner, ARC_SPINNER_TAG } from \"./elements/ArcSpinner\";\nimport {\n defineMaterialDoubleArc,\n MATERIAL_DOUBLE_ARC_TAG,\n} from \"./elements/MaterialDoubleArc\";\nimport { defineScanSweep, SCAN_SWEEP_TAG } from \"./elements/ScanSweep\";\nimport { defineOrbitDots, ORBIT_DOTS_TAG } from \"./elements/OrbitDots\";\nimport {\n defineOrbitRingDots,\n ORBIT_RING_DOTS_TAG,\n} from \"./elements/OrbitRingDots\";\nimport { defineEyes, EYES_TAG } from \"./elements/Eyes\";\nimport {\n defineMorphingSquare,\n MORPHING_SQUARE_TAG,\n} from \"./elements/MorphingSquare\";\nimport {\n defineBreathingPulse,\n BREATHING_PULSE_TAG,\n} from \"./elements/BreathingPulse\";\nimport { defineEqualizer, EQUALIZER_TAG } from \"./elements/Equalizer\";\nimport { defineProgressRing, PROGRESS_RING_TAG } from \"./elements/ProgressRing\";\nimport {\n defineIndeterminateProgressBar,\n INDETERMINATE_PROGRESS_BAR_TAG,\n} from \"./elements/IndeterminateProgressBar\";\nimport {\n defineSkeletonShimmer,\n SKELETON_SHIMMER_TAG,\n} from \"./elements/SkeletonShimmer\";\n\nexport { LZPattern, define } from \"./base\";\nexport { KEYFRAMES, SCOPED_CSS } from \"./styles\";\nexport { defineAll } from \"./defineAll\";\n\nexport {\n defineBouncingDots,\n BOUNCING_DOTS_TAG,\n defineTypingDots,\n TYPING_DOTS_TAG,\n defineWaveDots,\n WAVE_DOTS_TAG,\n defineHelixDots,\n HELIX_DOTS_TAG,\n defineDotGridWave,\n DOT_GRID_WAVE_TAG,\n defineArcSpinner,\n ARC_SPINNER_TAG,\n defineMaterialDoubleArc,\n MATERIAL_DOUBLE_ARC_TAG,\n defineScanSweep,\n SCAN_SWEEP_TAG,\n defineOrbitDots,\n ORBIT_DOTS_TAG,\n defineOrbitRingDots,\n ORBIT_RING_DOTS_TAG,\n defineEyes,\n EYES_TAG,\n defineMorphingSquare,\n MORPHING_SQUARE_TAG,\n defineBreathingPulse,\n BREATHING_PULSE_TAG,\n defineEqualizer,\n EQUALIZER_TAG,\n defineProgressRing,\n PROGRESS_RING_TAG,\n defineIndeterminateProgressBar,\n INDETERMINATE_PROGRESS_BAR_TAG,\n defineSkeletonShimmer,\n SKELETON_SHIMMER_TAG,\n} from \"./elements\";\n\n// Self-register all patterns on import. Call `defineAll()` explicitly\n// (or import without side effects) if you prefer manual control.\ndefineAll();\n\nexport type { LZPattern as LoadingPattern } from \"./base\";"],"mappings":"oVAAO,IAAMA,GAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EA+DtBC,EAAuB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASlCD,EAAS;ECtEX,IAAME,GAAY,OAAO,YAAgB,IAEnCC,GAAOD,GACT,YACC,KAAM,CAAC,EANZE,EAQsBC,EAAf,cAAiCF,EAAK,CAAtC,kCAGLG,GAAA,KAAAF,EAAS,IAWT,mBAAoB,CAClB,IAAMG,EAAO,KAAK,YAAc,KAAK,aAAa,CAAE,KAAM,MAAO,CAAC,EAClEA,EAAK,UAAY,UAAUC,CAAU;AAAA,EAAK,KAAK,GAAG,sCACjD,KAAmC,QAAUD,EAAK,cACjD,UACF,EACAE,GAAA,KAAKL,EAAS,IACd,KAAK,MAAM,CACb,CAEA,0BAA2B,CACrBM,GAAA,KAAKN,IAAQ,KAAK,MAAM,CAC9B,CAGA,OAAQ,CACN,KAAK,KAAK,EACV,IAAMO,EAAM,KAA6C,QACrDA,IAAIA,EAAG,UAAY,KAAK,SAAS,EACvC,CAGA,IAAIC,EAAcC,EAA0B,CAC1C,IAAMC,EAAM,KAAK,aAAaF,CAAI,EAClC,GAAIE,IAAQ,MAAQA,IAAQ,GAAI,OAAOD,EACvC,IAAME,EAAI,OAAOD,CAAG,EACpB,OAAO,OAAO,SAASC,CAAC,EAAIA,EAAIF,CAClC,CAGA,MAAMG,EAAkBJ,EAAcK,EAAmB,CACvD,IAAMH,EAAM,KAAK,aAAaF,CAAI,EAC9BE,IAAQ,MAAQA,IAAQ,IAAM,OAAO,SAAS,OAAOA,CAAG,CAAC,EAC3D,KAAK,MAAM,YAAYE,EAAU,GAAG,OAAOF,CAAG,CAAC,IAAI,EAEnD,KAAK,MAAM,eAAeE,CAAQ,CAEtC,CAGA,OAAOA,EAAkBJ,EAAcK,EAAmB,CACxD,IAAMH,EAAM,KAAK,aAAaF,CAAI,EAC9BE,IAAQ,MAAQA,IAAQ,IAAM,OAAO,SAAS,OAAOA,CAAG,CAAC,EAC3D,KAAK,MAAM,YAAYE,EAAU,OAAO,OAAOF,CAAG,CAAC,CAAC,EAEpD,KAAK,MAAM,eAAeE,CAAQ,CAEtC,CAGA,OAAOA,EAAkBJ,EAAcK,EAAoB,CACzD,IAAMH,EAAM,KAAK,aAAaF,CAAI,EAC9BE,IAAQ,MAAQA,IAAQ,GAC1B,KAAK,MAAM,YAAYE,EAAUF,CAAG,EAEpC,KAAK,MAAM,eAAeE,CAAQ,CAEtC,CACF,EArEEZ,EAAA,YAHoBC,EACb,mBAA+B,CAAC,EA0ElC,SAASa,EAAOC,EAAaC,EAAgC,CAC9D,OAAO,eAAmB,KAC1B,eAAe,IAAID,CAAG,GAC1B,eAAe,OAAOA,EAAKC,CAAI,CACjC,CCrFO,IAAMC,EAAoB,mBAE3BC,EAAN,cAA2BC,CAAU,CAArC,kCAGE,KAAS,IAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYzB,UAAW,CACT,MAAO,oJACT,CAEA,MAAO,CACL,KAAK,MAAM,YAAa,OAAQ,CAAC,EACjC,KAAK,OAAO,aAAc,QAAS,SAAS,EAC5C,KAAK,OAAO,aAAc,QAAS,CAAC,CACtC,CACF,EAxBMD,EACG,mBAAqB,CAAC,OAAQ,QAAS,OAAO,EAyBhD,SAASE,GAAqB,CACnCC,EAAOJ,EAAmBC,CAAY,CACxC,CC9BO,IAAMI,EAAkB,iBAEzBC,EAAN,cAAyBC,CAAU,CAAnC,kCAGE,KAAS,IAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYzB,UAAW,CACT,MAAO,oJACT,CAEA,MAAO,CACL,KAAK,MAAM,YAAa,OAAQ,CAAC,EACjC,KAAK,OAAO,aAAc,QAAS,SAAS,EAC5C,KAAK,OAAO,aAAc,QAAS,CAAC,CACtC,CACF,EAxBMD,EACG,mBAAqB,CAAC,OAAQ,QAAS,OAAO,EAyBhD,SAASE,GAAmB,CACjCC,EAAOJ,EAAiBC,CAAU,CACpC,CC9BO,IAAMI,EAAgB,eAEvBC,EAAN,cAAuBC,CAAU,CAAjC,kCAGE,KAAS,IAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAazB,UAAW,CACT,MAAO,gLACT,CAEA,MAAO,CACL,KAAK,MAAM,YAAa,OAAQ,CAAC,EACjC,KAAK,OAAO,aAAc,QAAS,SAAS,EAC5C,KAAK,OAAO,aAAc,QAAS,CAAC,CACtC,CACF,EAzBMD,EACG,mBAAqB,CAAC,OAAQ,QAAS,OAAO,EA0BhD,SAASE,GAAiB,CAC/BC,EAAOJ,EAAeC,CAAQ,CAChC,CC/BO,IAAMI,EAAiB,gBAExBC,GAAQ,IAERC,EAAN,cAAwBC,CAAU,CAAlC,kCAGE,KAAS,IAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUzB,UAAW,CACT,IAAMC,EAAQ,KAAK,IAAI,EAAG,KAAK,IAAI,QAAS,EAAE,CAAC,EAC3CC,EAAM,2DACV,QAASC,EAAI,EAAGA,EAAIF,EAAOE,IACzBD,GAAO,iDAAkDJ,GAAQG,EAASE,GAAG,QAAQ,CAAC,CAAC,aAEzF,MAAO,GAAGD,CAAG,QACf,CAEA,MAAO,CACL,KAAK,MAAM,YAAa,OAAQ,CAAC,EACjC,KAAK,OAAO,aAAc,QAAS,SAAS,EAC5C,KAAK,OAAO,aAAc,QAAS,CAAC,CACtC,CACF,EA3BMH,EACG,mBAAqB,CAAC,OAAQ,QAAS,QAAS,OAAO,EA4BzD,SAASK,GAAkB,CAChCC,EAAOR,EAAgBE,CAAS,CAClC,CCnCO,IAAMO,EAAoB,mBAE3BC,EAAN,cAA0BC,CAAU,CAApC,kCAGE,KAAS,IAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAczB,UAAW,CACT,IAAMC,EAAO,KAAK,IAAI,EAAG,KAAK,IAAI,OAAQ,CAAC,CAAC,EACtCC,EAAO,KAAK,IAAI,EAAG,KAAK,IAAI,OAAQ,CAAC,CAAC,EACxCC,EAAM,2DACV,QAASC,EAAI,EAAGA,EAAIH,EAAMG,IACxB,QAASC,EAAI,EAAGA,EAAIH,EAAMG,IACxBF,GAAO,kDAAkDC,EAAIC,GAAK,KAAM,QAAQ,CAAC,CAAC,aAGtF,MAAO,GAAGF,CAAG,QACf,CAEA,MAAO,CACL,KAAK,MAAM,YAAa,OAAQ,CAAC,EACjC,KAAK,OAAO,YAAa,OAAQ,CAAC,EAClC,KAAK,MAAM,gBAAiB,MAAO,EAAE,EACrC,KAAK,OAAO,aAAc,QAAS,SAAS,EAC5C,KAAK,OAAO,aAAc,QAAS,CAAC,CACtC,CACF,EApCMJ,EACG,mBAAqB,CAAC,OAAQ,OAAQ,OAAQ,MAAO,QAAS,OAAO,EAqCvE,SAASO,GAAoB,CAClCC,EAAOT,EAAmBC,CAAW,CACvC,CC1CO,IAAMS,EAAkB,iBAEzBC,GAAY;AAAA;AAAA;AAAA,EAKZC,EAAN,cAAyBC,CAAU,CAAnC,kCAGE,KAAS,IAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUvBF,EAAS;AAAA;AAAA;AAAA,EAKX,UAAW,CACT,MAAO,gEACT,CAEA,MAAO,CACL,KAAK,MAAM,YAAa,OAAQ,EAAE,EAClC,KAAK,MAAM,cAAe,eAAgB,CAAC,EAC3C,KAAK,OAAO,aAAc,QAAS,SAAS,EAC5C,KAAK,OAAO,aAAc,QAAS,CAAC,CACtC,CACF,EA5BMC,EACG,mBAAqB,CAAC,OAAQ,eAAgB,QAAS,OAAO,EA6BhE,SAASE,GAAmB,CACjCC,EAAOL,EAAiBE,CAAU,CACpC,CCvCO,IAAMI,EAA0B,yBAEjCC,GAAY;AAAA;AAAA;AAAA,EAIZC,EAAM,sFAENC,EAAN,cAAgCC,CAAU,CAA1C,kCAGE,KAAS,IAAgB;AAAA;AAAA;AAAA;AAAA,IAIvBH,EAAS;AAAA;AAAA;AAAA,0CAG6BC,CAAG,UAAUA,CAAG;AAAA;AAAA;AAAA;AAAA;AAAA,4CAKdA,CAAG,UAAUA,CAAG;AAAA;AAAA;AAAA,EAK1D,UAAW,CACT,MAAO,2GACT,CAEA,MAAO,CACL,KAAK,MAAM,YAAa,OAAQ,EAAE,EAClC,KAAK,MAAM,cAAe,eAAgB,CAAC,EAC3C,KAAK,OAAO,aAAc,QAAS,SAAS,EAC5C,KAAK,OAAO,kBAAmB,YAAY,EAC3C,KAAK,OAAO,aAAc,QAAS,CAAC,CACtC,CACF,EA/BMC,EACG,mBAAqB,CAAC,OAAQ,eAAgB,QAAS,OAAO,EAgChE,SAASE,GAA0B,CACxCC,EAAON,EAAyBG,CAAiB,CACnD,CC3CO,IAAMI,EAAiB,gBAExBC,EAAN,cAAwBC,CAAU,CAAlC,kCAGE,KAAS,IAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EA6BzB,UAAW,CACT,MAAO,wJACT,CAEA,MAAO,CACL,KAAK,MAAM,YAAa,OAAQ,EAAE,EAClC,KAAK,OAAO,aAAc,QAAS,SAAS,EAC5C,KAAK,OAAO,kBAAmB,YAAY,EAC3C,KAAK,OAAO,mBAAoB,aAAa,EAC7C,KAAK,OAAO,aAAc,QAAS,CAAC,CACtC,CACF,EA3CMD,EACG,mBAAqB,CAAC,OAAQ,QAAS,OAAO,EA4ChD,SAASE,GAAkB,CAChCC,EAAOJ,EAAgBC,CAAS,CAClC,CCjDO,IAAMI,GAAiB,gBAExBC,EAAN,cAAwBC,CAAU,CAAlC,kCAGE,KAAS,IAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAiBzB,UAAW,CACT,MAAO,qJACT,CAEA,MAAO,CACL,KAAK,MAAM,YAAa,OAAQ,EAAE,EAClC,KAAK,OAAO,aAAc,QAAS,SAAS,EAC5C,KAAK,OAAO,kBAAmB,YAAY,EAC3C,KAAK,OAAO,aAAc,QAAS,CAAC,CACtC,CACF,EA9BMD,EACG,mBAAqB,CAAC,OAAQ,QAAS,OAAO,EA+BhD,SAASE,GAAkB,CAChCC,EAAOJ,GAAgBC,CAAS,CAClC,CCpCO,IAAMI,GAAsB,qBAE7BC,GAAI,EAEJC,EAAN,cAA4BC,CAAU,CAAtC,kCAGE,KAAS,IAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAazB,UAAW,CACT,IAAIC,EAAM,4DACV,QAAS,EAAI,EAAG,EAAIH,GAAG,IAAK,CAC1B,IAAMI,EAAO,IAAMJ,GAAK,EACxBG,GAAO,gDAAgDC,CAAG,sFAAsF,EAAI,KAAM,QAAQ,CAAC,CAAC,YACtK,CACA,MAAO,GAAGD,CAAG,QACf,CAEA,MAAO,CACL,KAAK,MAAM,YAAa,OAAQ,EAAE,EAClC,KAAK,MAAM,gBAAiB,WAAY,IAAI,EAC5C,KAAK,OAAO,aAAc,QAAS,SAAS,EAC5C,KAAK,OAAO,aAAc,QAAS,CAAC,CACtC,CACF,EA/BMF,EACG,mBAAqB,CAAC,OAAQ,WAAY,QAAS,OAAO,EAgC5D,SAASI,GAAsB,CACpCC,EAAOP,GAAqBE,CAAa,CAC3C,CCvCO,IAAMM,GAAW,UAElBC,EAAN,cAAmBC,CAAU,CAA7B,kCAGE,KAAS,IAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAgBzB,UAAW,CACT,MAAO,gLACT,CAEA,MAAO,CACL,KAAK,MAAM,YAAa,OAAQ,EAAE,EAClC,KAAK,OAAO,aAAc,QAAS,SAAS,EAC5C,KAAK,OAAO,aAAc,OAAO,EACjC,KAAK,OAAO,aAAc,QAAS,CAAC,CACtC,CACF,EA7BMD,EACG,mBAAqB,CAAC,OAAQ,QAAS,OAAO,EA8BhD,SAASE,GAAa,CAC3BC,EAAOJ,GAAUC,CAAI,CACvB,CCnCO,IAAMI,GAAsB,qBAE7BC,EAAN,cAA6BC,CAAU,CAAvC,kCAGE,KAAS,IAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASzB,UAAW,CACT,MAAO,gDACT,CAEA,MAAO,CACL,KAAK,MAAM,YAAa,OAAQ,EAAE,EAClC,KAAK,OAAO,cAAe,SAAU,SAAS,EAC9C,KAAK,OAAO,YAAa,MAAM,EAC/B,KAAK,OAAO,aAAc,QAAS,CAAC,CACtC,CACF,EAtBMD,EACG,mBAAqB,CAAC,OAAQ,SAAU,OAAO,EAuBjD,SAASE,GAAuB,CACrCC,EAAOJ,GAAqBC,CAAc,CAC5C,CC5BO,IAAMI,GAAsB,qBAE7BC,EAAN,cAA6BC,CAAU,CAAvC,kCAGE,KAAS,IAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASzB,UAAW,CACT,MAAO,gDACT,CAEA,MAAO,CACL,KAAK,MAAM,YAAa,OAAQ,EAAE,EAClC,KAAK,OAAO,aAAc,QAAS,SAAS,EAC5C,KAAK,OAAO,aAAc,QAAS,CAAC,CACtC,CACF,EArBMD,EACG,mBAAqB,CAAC,OAAQ,QAAS,OAAO,EAsBhD,SAASE,GAAuB,CACrCC,EAAOJ,GAAqBC,CAAc,CAC5C,CC3BO,IAAMI,GAAgB,eAEvBC,EAAN,cAAwBC,CAAU,CAAlC,kCAGE,KAAS,IAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAezB,UAAW,CACT,MAAO,8KACT,CAEA,MAAO,CACL,KAAK,MAAM,YAAa,OAAQ,EAAE,EAClC,KAAK,MAAM,iBAAkB,YAAa,CAAC,EAC3C,KAAK,MAAM,WAAY,MAAO,CAAC,EAC/B,KAAK,OAAO,aAAc,QAAS,SAAS,EAC5C,KAAK,OAAO,aAAc,QAAS,CAAC,CACtC,CACF,EA7BMD,EACG,mBAAqB,CAAC,OAAQ,YAAa,MAAO,QAAS,OAAO,EA8BpE,SAASE,GAAkB,CAChCC,EAAOJ,GAAeC,CAAS,CACjC,CCnCO,IAAMI,GAAoB,mBAE3BC,GAAY;AAAA;AAAA;AAAA,EAKZC,EAAN,cAA2BC,CAAU,CAArC,kCAGE,KAAS,IAAgB;AAAA;AAAA,+DAEoCF,EAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUtE,UAAW,CAET,MAAO,+HADG,KAAK,IAAI,EAAG,KAAK,IAAI,IAAK,KAAK,IAAI,UAAW,CAAC,CAAC,CAAC,CAC4E,6CACzI,CAEA,MAAO,CACL,KAAK,MAAM,YAAa,OAAQ,EAAE,EAClC,KAAK,MAAM,cAAe,eAAgB,CAAC,EAC3C,KAAK,OAAO,aAAc,QAAS,SAAS,EAC5C,KAAK,OAAO,aAAc,aAAa,EACvC,KAAK,OAAO,aAAc,QAAS,CAAC,EACpC,KAAK,OAAO,eAAgB,UAAW,CAAC,CAC1C,CACF,EA5BMC,EACG,mBAAqB,CAAC,OAAQ,eAAgB,UAAW,QAAS,cAAe,OAAO,EA6B1F,SAASE,GAAqB,CACnCC,EAAOL,GAAmBE,CAAY,CACxC,CCvCO,IAAMI,GAAiC,gCAExCC,EAAN,cAAuCC,CAAU,CAAjD,kCAGE,KAAS,IAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAezB,UAAW,CACT,MAAO,+DACT,CAEA,MAAO,CACL,KAAK,MAAM,aAAc,QAAS,GAAG,EACrC,KAAK,MAAM,cAAe,SAAU,CAAC,EACrC,KAAK,OAAO,cAAe,SAAU,SAAS,EAC9C,KAAK,OAAO,eAAgB,cAAe,SAAS,EACpD,KAAK,OAAO,aAAc,QAAS,CAAC,CACtC,CACF,EA7BMD,EACG,mBAAqB,CAAC,QAAS,SAAU,SAAU,cAAe,OAAO,EA8B3E,SAASE,GAAiC,CAC/CC,EAAOJ,GAAgCC,CAAwB,CACjE,CCnCO,IAAMI,GAAuB,sBAE9BC,EAAN,cAA8BC,CAAU,CAAxC,kCAGE,KAAS,IAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAczB,UAAW,CACT,MAAO,iEACT,CAEA,MAAO,CACL,KAAK,MAAM,aAAc,QAAS,GAAG,EACrC,KAAK,MAAM,cAAe,SAAU,EAAE,EACtC,KAAK,OAAO,eAAgB,cAAe,SAAS,EACpD,KAAK,OAAO,aAAc,OAAO,EACjC,KAAK,OAAO,aAAc,QAAS,CAAC,CACtC,CACF,EA5BMD,EACG,mBAAqB,CAAC,QAAS,SAAU,cAAe,OAAO,EA6BjE,SAASE,GAAwB,CACtCC,EAAOJ,GAAsBC,CAAe,CAC9C,CCdO,SAASI,IAAY,CAC1BC,EAAmB,EACnBC,EAAiB,EACjBC,EAAe,EACfC,EAAgB,EAChBC,EAAkB,EAClBC,EAAiB,EACjBC,EAAwB,EACxBC,EAAgB,EAChBC,EAAgB,EAChBC,EAAoB,EACpBC,EAAW,EACXC,EAAqB,EACrBC,EAAqB,EACrBC,EAAgB,EAChBC,EAAmB,EACnBC,EAA+B,EAC/BC,EAAsB,CACxB,CCwCAC,GAAU","names":["KEYFRAMES","SCOPED_CSS","isBrowser","Base","_ready","LZPattern","__privateAdd","root","SCOPED_CSS","__privateSet","__privateGet","el","attr","fallback","raw","n","variable","_fallback","define","tag","ctor","BOUNCING_DOTS_TAG","BouncingDots","LZPattern","defineBouncingDots","define","TYPING_DOTS_TAG","TypingDots","LZPattern","defineTypingDots","define","WAVE_DOTS_TAG","WaveDots","LZPattern","defineWaveDots","define","HELIX_DOTS_TAG","CYCLE","HelixDots","LZPattern","count","out","i","defineHelixDots","define","DOT_GRID_WAVE_TAG","DotGridWave","LZPattern","rows","cols","out","r","c","defineDotGridWave","define","ARC_SPINNER_TAG","RING_MASK","ArcSpinner","LZPattern","defineArcSpinner","define","MATERIAL_DOUBLE_ARC_TAG","RING_MASK","ARc","MaterialDoubleArc","LZPattern","defineMaterialDoubleArc","define","SCAN_SWEEP_TAG","ScanSweep","LZPattern","defineScanSweep","define","ORBIT_DOTS_TAG","OrbitDots","LZPattern","defineOrbitDots","define","ORBIT_RING_DOTS_TAG","N","OrbitRingDots","LZPattern","out","ang","defineOrbitRingDots","define","EYES_TAG","Eyes","LZPattern","defineEyes","define","MORPHING_SQUARE_TAG","MorphingSquare","LZPattern","defineMorphingSquare","define","BREATHING_PULSE_TAG","BreathingPulse","LZPattern","defineBreathingPulse","define","EQUALIZER_TAG","Equalizer","LZPattern","defineEqualizer","define","PROGRESS_RING_TAG","RING_MASK","ProgressRing","LZPattern","defineProgressRing","define","INDETERMINATE_PROGRESS_BAR_TAG","IndeterminateProgressBar","LZPattern","defineIndeterminateProgressBar","define","SKELETON_SHIMMER_TAG","SkeletonShimmer","LZPattern","defineSkeletonShimmer","define","defineAll","defineBouncingDots","defineTypingDots","defineWaveDots","defineHelixDots","defineDotGridWave","defineArcSpinner","defineMaterialDoubleArc","defineScanSweep","defineOrbitDots","defineOrbitRingDots","defineEyes","defineMorphingSquare","defineBreathingPulse","defineEqualizer","defineProgressRing","defineIndeterminateProgressBar","defineSkeletonShimmer","defineAll"]}