@ttoss/react-billing 0.1.1 → 0.1.2

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 (3) hide show
  1. package/dist/esm/index.js +41 -4622
  2. package/dist/index.js +72 -4630
  3. package/package.json +5 -3
package/dist/index.js CHANGED
@@ -12,4576 +12,46 @@ var __name = (target, value) => __defProp(target, "name", {
12
12
  value,
13
13
  configurable: true
14
14
  });
15
- var __commonJS = (cb, mod) => function __require() {
16
- return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = {
17
- exports: {}
18
- }).exports, mod), mod.exports;
19
- };
20
- var __export = (target, all) => {
21
- for (var name in all) __defProp(target, name, {
22
- get: all[name],
23
- enumerable: true
24
- });
25
- };
26
- var __copyProps = (to, from2, except, desc) => {
27
- if (from2 && typeof from2 === "object" || typeof from2 === "function") {
28
- for (let key of __getOwnPropNames(from2)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
29
- get: () => from2[key],
30
- enumerable: !(desc = __getOwnPropDesc(from2, key)) || desc.enumerable
31
- });
32
- }
33
- return to;
34
- };
35
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
36
- // If the importer is in node compatibility mode or this is not an ESM
37
- // file that has been converted to a CommonJS file using a Babel-
38
- // compatible transform (i.e. "__esModule" has not been set), then set
39
- // "default" to the CommonJS "module.exports" for node compatibility.
40
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
41
- value: mod,
42
- enumerable: true
43
- }) : target, mod));
44
- var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
45
- value: true
46
- }), mod);
47
-
48
- // ../../node_modules/.pnpm/react-is@16.13.1/node_modules/react-is/cjs/react-is.production.min.js
49
- var require_react_is_production_min = __commonJS({
50
- "../../node_modules/.pnpm/react-is@16.13.1/node_modules/react-is/cjs/react-is.production.min.js"(exports2) {
51
- "use strict";
52
-
53
- var b = "function" === typeof Symbol && Symbol.for;
54
- var c = b ? Symbol.for("react.element") : 60103;
55
- var d = b ? Symbol.for("react.portal") : 60106;
56
- var e = b ? Symbol.for("react.fragment") : 60107;
57
- var f = b ? Symbol.for("react.strict_mode") : 60108;
58
- var g = b ? Symbol.for("react.profiler") : 60114;
59
- var h = b ? Symbol.for("react.provider") : 60109;
60
- var k = b ? Symbol.for("react.context") : 60110;
61
- var l = b ? Symbol.for("react.async_mode") : 60111;
62
- var m = b ? Symbol.for("react.concurrent_mode") : 60111;
63
- var n = b ? Symbol.for("react.forward_ref") : 60112;
64
- var p = b ? Symbol.for("react.suspense") : 60113;
65
- var q = b ? Symbol.for("react.suspense_list") : 60120;
66
- var r = b ? Symbol.for("react.memo") : 60115;
67
- var t = b ? Symbol.for("react.lazy") : 60116;
68
- var v = b ? Symbol.for("react.block") : 60121;
69
- var w = b ? Symbol.for("react.fundamental") : 60117;
70
- var x = b ? Symbol.for("react.responder") : 60118;
71
- var y = b ? Symbol.for("react.scope") : 60119;
72
- function z(a) {
73
- if ("object" === typeof a && null !== a) {
74
- var u = a.$$typeof;
75
- switch (u) {
76
- case c:
77
- switch (a = a.type, a) {
78
- case l:
79
- case m:
80
- case e:
81
- case g:
82
- case f:
83
- case p:
84
- return a;
85
- default:
86
- switch (a = a && a.$$typeof, a) {
87
- case k:
88
- case n:
89
- case t:
90
- case r:
91
- case h:
92
- return a;
93
- default:
94
- return u;
95
- }
96
- }
97
- case d:
98
- return u;
99
- }
100
- }
101
- }
102
- __name(z, "z");
103
- function A(a) {
104
- return z(a) === m;
105
- }
106
- __name(A, "A");
107
- exports2.AsyncMode = l;
108
- exports2.ConcurrentMode = m;
109
- exports2.ContextConsumer = k;
110
- exports2.ContextProvider = h;
111
- exports2.Element = c;
112
- exports2.ForwardRef = n;
113
- exports2.Fragment = e;
114
- exports2.Lazy = t;
115
- exports2.Memo = r;
116
- exports2.Portal = d;
117
- exports2.Profiler = g;
118
- exports2.StrictMode = f;
119
- exports2.Suspense = p;
120
- exports2.isAsyncMode = function (a) {
121
- return A(a) || z(a) === l;
122
- };
123
- exports2.isConcurrentMode = A;
124
- exports2.isContextConsumer = function (a) {
125
- return z(a) === k;
126
- };
127
- exports2.isContextProvider = function (a) {
128
- return z(a) === h;
129
- };
130
- exports2.isElement = function (a) {
131
- return "object" === typeof a && null !== a && a.$$typeof === c;
132
- };
133
- exports2.isForwardRef = function (a) {
134
- return z(a) === n;
135
- };
136
- exports2.isFragment = function (a) {
137
- return z(a) === e;
138
- };
139
- exports2.isLazy = function (a) {
140
- return z(a) === t;
141
- };
142
- exports2.isMemo = function (a) {
143
- return z(a) === r;
144
- };
145
- exports2.isPortal = function (a) {
146
- return z(a) === d;
147
- };
148
- exports2.isProfiler = function (a) {
149
- return z(a) === g;
150
- };
151
- exports2.isStrictMode = function (a) {
152
- return z(a) === f;
153
- };
154
- exports2.isSuspense = function (a) {
155
- return z(a) === p;
156
- };
157
- exports2.isValidElementType = function (a) {
158
- return "string" === typeof a || "function" === typeof a || a === e || a === m || a === g || a === f || a === p || a === q || "object" === typeof a && null !== a && (a.$$typeof === t || a.$$typeof === r || a.$$typeof === h || a.$$typeof === k || a.$$typeof === n || a.$$typeof === w || a.$$typeof === x || a.$$typeof === y || a.$$typeof === v);
159
- };
160
- exports2.typeOf = z;
161
- }
162
- });
163
-
164
- // ../../node_modules/.pnpm/react-is@16.13.1/node_modules/react-is/cjs/react-is.development.js
165
- var require_react_is_development = __commonJS({
166
- "../../node_modules/.pnpm/react-is@16.13.1/node_modules/react-is/cjs/react-is.development.js"(exports2) {
167
- "use strict";
168
-
169
- if (process.env.NODE_ENV !== "production") {
170
- (function () {
171
- "use strict";
172
-
173
- var hasSymbol = typeof Symbol === "function" && Symbol.for;
174
- var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for("react.element") : 60103;
175
- var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for("react.portal") : 60106;
176
- var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for("react.fragment") : 60107;
177
- var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for("react.strict_mode") : 60108;
178
- var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for("react.profiler") : 60114;
179
- var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for("react.provider") : 60109;
180
- var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for("react.context") : 60110;
181
- var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for("react.async_mode") : 60111;
182
- var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for("react.concurrent_mode") : 60111;
183
- var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for("react.forward_ref") : 60112;
184
- var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for("react.suspense") : 60113;
185
- var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for("react.suspense_list") : 60120;
186
- var REACT_MEMO_TYPE = hasSymbol ? Symbol.for("react.memo") : 60115;
187
- var REACT_LAZY_TYPE = hasSymbol ? Symbol.for("react.lazy") : 60116;
188
- var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for("react.block") : 60121;
189
- var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for("react.fundamental") : 60117;
190
- var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for("react.responder") : 60118;
191
- var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for("react.scope") : 60119;
192
- function isValidElementType(type) {
193
- return typeof type === "string" || typeof type === "function" ||
194
- // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
195
- type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === "object" && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);
196
- }
197
- __name(isValidElementType, "isValidElementType");
198
- function typeOf(object) {
199
- if (typeof object === "object" && object !== null) {
200
- var $$typeof = object.$$typeof;
201
- switch ($$typeof) {
202
- case REACT_ELEMENT_TYPE:
203
- var type = object.type;
204
- switch (type) {
205
- case REACT_ASYNC_MODE_TYPE:
206
- case REACT_CONCURRENT_MODE_TYPE:
207
- case REACT_FRAGMENT_TYPE:
208
- case REACT_PROFILER_TYPE:
209
- case REACT_STRICT_MODE_TYPE:
210
- case REACT_SUSPENSE_TYPE:
211
- return type;
212
- default:
213
- var $$typeofType = type && type.$$typeof;
214
- switch ($$typeofType) {
215
- case REACT_CONTEXT_TYPE:
216
- case REACT_FORWARD_REF_TYPE:
217
- case REACT_LAZY_TYPE:
218
- case REACT_MEMO_TYPE:
219
- case REACT_PROVIDER_TYPE:
220
- return $$typeofType;
221
- default:
222
- return $$typeof;
223
- }
224
- }
225
- case REACT_PORTAL_TYPE:
226
- return $$typeof;
227
- }
228
- }
229
- return void 0;
230
- }
231
- __name(typeOf, "typeOf");
232
- var AsyncMode = REACT_ASYNC_MODE_TYPE;
233
- var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
234
- var ContextConsumer = REACT_CONTEXT_TYPE;
235
- var ContextProvider = REACT_PROVIDER_TYPE;
236
- var Element = REACT_ELEMENT_TYPE;
237
- var ForwardRef = REACT_FORWARD_REF_TYPE;
238
- var Fragment6 = REACT_FRAGMENT_TYPE;
239
- var Lazy = REACT_LAZY_TYPE;
240
- var Memo = REACT_MEMO_TYPE;
241
- var Portal = REACT_PORTAL_TYPE;
242
- var Profiler = REACT_PROFILER_TYPE;
243
- var StrictMode = REACT_STRICT_MODE_TYPE;
244
- var Suspense = REACT_SUSPENSE_TYPE;
245
- var hasWarnedAboutDeprecatedIsAsyncMode = false;
246
- function isAsyncMode(object) {
247
- {
248
- if (!hasWarnedAboutDeprecatedIsAsyncMode) {
249
- hasWarnedAboutDeprecatedIsAsyncMode = true;
250
- console["warn"]("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.");
251
- }
252
- }
253
- return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
254
- }
255
- __name(isAsyncMode, "isAsyncMode");
256
- function isConcurrentMode(object) {
257
- return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
258
- }
259
- __name(isConcurrentMode, "isConcurrentMode");
260
- function isContextConsumer(object) {
261
- return typeOf(object) === REACT_CONTEXT_TYPE;
262
- }
263
- __name(isContextConsumer, "isContextConsumer");
264
- function isContextProvider(object) {
265
- return typeOf(object) === REACT_PROVIDER_TYPE;
266
- }
267
- __name(isContextProvider, "isContextProvider");
268
- function isElement(object) {
269
- return typeof object === "object" && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
270
- }
271
- __name(isElement, "isElement");
272
- function isForwardRef(object) {
273
- return typeOf(object) === REACT_FORWARD_REF_TYPE;
274
- }
275
- __name(isForwardRef, "isForwardRef");
276
- function isFragment(object) {
277
- return typeOf(object) === REACT_FRAGMENT_TYPE;
278
- }
279
- __name(isFragment, "isFragment");
280
- function isLazy(object) {
281
- return typeOf(object) === REACT_LAZY_TYPE;
282
- }
283
- __name(isLazy, "isLazy");
284
- function isMemo(object) {
285
- return typeOf(object) === REACT_MEMO_TYPE;
286
- }
287
- __name(isMemo, "isMemo");
288
- function isPortal(object) {
289
- return typeOf(object) === REACT_PORTAL_TYPE;
290
- }
291
- __name(isPortal, "isPortal");
292
- function isProfiler(object) {
293
- return typeOf(object) === REACT_PROFILER_TYPE;
294
- }
295
- __name(isProfiler, "isProfiler");
296
- function isStrictMode(object) {
297
- return typeOf(object) === REACT_STRICT_MODE_TYPE;
298
- }
299
- __name(isStrictMode, "isStrictMode");
300
- function isSuspense(object) {
301
- return typeOf(object) === REACT_SUSPENSE_TYPE;
302
- }
303
- __name(isSuspense, "isSuspense");
304
- exports2.AsyncMode = AsyncMode;
305
- exports2.ConcurrentMode = ConcurrentMode;
306
- exports2.ContextConsumer = ContextConsumer;
307
- exports2.ContextProvider = ContextProvider;
308
- exports2.Element = Element;
309
- exports2.ForwardRef = ForwardRef;
310
- exports2.Fragment = Fragment6;
311
- exports2.Lazy = Lazy;
312
- exports2.Memo = Memo;
313
- exports2.Portal = Portal;
314
- exports2.Profiler = Profiler;
315
- exports2.StrictMode = StrictMode;
316
- exports2.Suspense = Suspense;
317
- exports2.isAsyncMode = isAsyncMode;
318
- exports2.isConcurrentMode = isConcurrentMode;
319
- exports2.isContextConsumer = isContextConsumer;
320
- exports2.isContextProvider = isContextProvider;
321
- exports2.isElement = isElement;
322
- exports2.isForwardRef = isForwardRef;
323
- exports2.isFragment = isFragment;
324
- exports2.isLazy = isLazy;
325
- exports2.isMemo = isMemo;
326
- exports2.isPortal = isPortal;
327
- exports2.isProfiler = isProfiler;
328
- exports2.isStrictMode = isStrictMode;
329
- exports2.isSuspense = isSuspense;
330
- exports2.isValidElementType = isValidElementType;
331
- exports2.typeOf = typeOf;
332
- })();
333
- }
334
- }
335
- });
336
-
337
- // ../../node_modules/.pnpm/react-is@16.13.1/node_modules/react-is/index.js
338
- var require_react_is = __commonJS({
339
- "../../node_modules/.pnpm/react-is@16.13.1/node_modules/react-is/index.js"(exports2, module2) {
340
- "use strict";
341
-
342
- if (process.env.NODE_ENV === "production") {
343
- module2.exports = require_react_is_production_min();
344
- } else {
345
- module2.exports = require_react_is_development();
346
- }
347
- }
348
- });
349
-
350
- // ../../node_modules/.pnpm/hoist-non-react-statics@3.3.2/node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js
351
- var require_hoist_non_react_statics_cjs = __commonJS({
352
- "../../node_modules/.pnpm/hoist-non-react-statics@3.3.2/node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js"(exports2, module2) {
353
- "use strict";
354
-
355
- var reactIs = require_react_is();
356
- var REACT_STATICS = {
357
- childContextTypes: true,
358
- contextType: true,
359
- contextTypes: true,
360
- defaultProps: true,
361
- displayName: true,
362
- getDefaultProps: true,
363
- getDerivedStateFromError: true,
364
- getDerivedStateFromProps: true,
365
- mixins: true,
366
- propTypes: true,
367
- type: true
368
- };
369
- var KNOWN_STATICS = {
370
- name: true,
371
- length: true,
372
- prototype: true,
373
- caller: true,
374
- callee: true,
375
- arguments: true,
376
- arity: true
377
- };
378
- var FORWARD_REF_STATICS = {
379
- "$$typeof": true,
380
- render: true,
381
- defaultProps: true,
382
- displayName: true,
383
- propTypes: true
384
- };
385
- var MEMO_STATICS = {
386
- "$$typeof": true,
387
- compare: true,
388
- defaultProps: true,
389
- displayName: true,
390
- propTypes: true,
391
- type: true
392
- };
393
- var TYPE_STATICS = {};
394
- TYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;
395
- TYPE_STATICS[reactIs.Memo] = MEMO_STATICS;
396
- function getStatics(component) {
397
- if (reactIs.isMemo(component)) {
398
- return MEMO_STATICS;
399
- }
400
- return TYPE_STATICS[component["$$typeof"]] || REACT_STATICS;
401
- }
402
- __name(getStatics, "getStatics");
403
- var defineProperty = Object.defineProperty;
404
- var getOwnPropertyNames = Object.getOwnPropertyNames;
405
- var getOwnPropertySymbols = Object.getOwnPropertySymbols;
406
- var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
407
- var getPrototypeOf = Object.getPrototypeOf;
408
- var objectPrototype = Object.prototype;
409
- function hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {
410
- if (typeof sourceComponent !== "string") {
411
- if (objectPrototype) {
412
- var inheritedComponent = getPrototypeOf(sourceComponent);
413
- if (inheritedComponent && inheritedComponent !== objectPrototype) {
414
- hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);
415
- }
416
- }
417
- var keys = getOwnPropertyNames(sourceComponent);
418
- if (getOwnPropertySymbols) {
419
- keys = keys.concat(getOwnPropertySymbols(sourceComponent));
420
- }
421
- var targetStatics = getStatics(targetComponent);
422
- var sourceStatics = getStatics(sourceComponent);
423
- for (var i = 0; i < keys.length; ++i) {
424
- var key = keys[i];
425
- if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {
426
- var descriptor = getOwnPropertyDescriptor(sourceComponent, key);
427
- try {
428
- defineProperty(targetComponent, key, descriptor);
429
- } catch (e) {}
430
- }
431
- }
432
- }
433
- return targetComponent;
434
- }
435
- __name(hoistNonReactStatics, "hoistNonReactStatics");
436
- module2.exports = hoistNonReactStatics;
437
- }
438
- });
439
-
440
- // ../../node_modules/.pnpm/@babel+runtime@7.28.2/node_modules/@babel/runtime/helpers/extends.js
441
- var require_extends = __commonJS({
442
- "../../node_modules/.pnpm/@babel+runtime@7.28.2/node_modules/@babel/runtime/helpers/extends.js"(exports2, module2) {
443
- "use strict";
444
-
445
- function _extends2() {
446
- return module2.exports = _extends2 = Object.assign ? Object.assign.bind() : function (n) {
447
- for (var e = 1; e < arguments.length; e++) {
448
- var t = arguments[e];
449
- for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
450
- }
451
- return n;
452
- }, module2.exports.__esModule = true, module2.exports["default"] = module2.exports, _extends2.apply(null, arguments);
453
- }
454
- __name(_extends2, "_extends");
455
- module2.exports = _extends2, module2.exports.__esModule = true, module2.exports["default"] = module2.exports;
456
- }
457
- });
458
-
459
- // src/index.ts
460
- var index_exports = {};
461
- __export(index_exports, {
462
- PlanCard: () => PlanCard
463
- });
464
- module.exports = __toCommonJS(index_exports);
465
-
466
- // ../../node_modules/.pnpm/@iconify-icon+react@2.3.0_react@19.2.1/node_modules/@iconify-icon/react/dist/iconify.mjs
467
- var import_react = __toESM(require("react"), 1);
468
-
469
- // ../../node_modules/.pnpm/iconify-icon@2.3.0/node_modules/iconify-icon/dist/iconify-icon.mjs
470
- var defaultIconDimensions = Object.freeze({
471
- left: 0,
472
- top: 0,
473
- width: 16,
474
- height: 16
475
- });
476
- var defaultIconTransformations = Object.freeze({
477
- rotate: 0,
478
- vFlip: false,
479
- hFlip: false
480
- });
481
- var defaultIconProps = Object.freeze({
482
- ...defaultIconDimensions,
483
- ...defaultIconTransformations
484
- });
485
- var defaultExtendedIconProps = Object.freeze({
486
- ...defaultIconProps,
487
- body: "",
488
- hidden: false
489
- });
490
- var defaultIconSizeCustomisations = Object.freeze({
491
- width: null,
492
- height: null
493
- });
494
- var defaultIconCustomisations = Object.freeze({
495
- // Dimensions
496
- ...defaultIconSizeCustomisations,
497
- // Transformations
498
- ...defaultIconTransformations
499
- });
500
- function rotateFromString(value, defaultValue = 0) {
501
- const units = value.replace(/^-?[0-9.]*/, "");
502
- function cleanup(value2) {
503
- while (value2 < 0) {
504
- value2 += 4;
505
- }
506
- return value2 % 4;
507
- }
508
- __name(cleanup, "cleanup");
509
- if (units === "") {
510
- const num = parseInt(value);
511
- return isNaN(num) ? 0 : cleanup(num);
512
- } else if (units !== value) {
513
- let split = 0;
514
- switch (units) {
515
- case "%":
516
- split = 25;
517
- break;
518
- case "deg":
519
- split = 90;
520
- }
521
- if (split) {
522
- let num = parseFloat(value.slice(0, value.length - units.length));
523
- if (isNaN(num)) {
524
- return 0;
525
- }
526
- num = num / split;
527
- return num % 1 === 0 ? cleanup(num) : 0;
528
- }
529
- }
530
- return defaultValue;
531
- }
532
- __name(rotateFromString, "rotateFromString");
533
- var separator = /[\s,]+/;
534
- function flipFromString(custom, flip) {
535
- flip.split(separator).forEach(str => {
536
- const value = str.trim();
537
- switch (value) {
538
- case "horizontal":
539
- custom.hFlip = true;
540
- break;
541
- case "vertical":
542
- custom.vFlip = true;
543
- break;
544
- }
545
- });
546
- }
547
- __name(flipFromString, "flipFromString");
548
- var defaultCustomisations = {
549
- ...defaultIconCustomisations,
550
- preserveAspectRatio: ""
551
- };
552
- function getCustomisations(node2) {
553
- const customisations = {
554
- ...defaultCustomisations
555
- };
556
- const attr = /* @__PURE__ */__name((key, def) => node2.getAttribute(key) || def, "attr");
557
- customisations.width = attr("width", null);
558
- customisations.height = attr("height", null);
559
- customisations.rotate = rotateFromString(attr("rotate", ""));
560
- flipFromString(customisations, attr("flip", ""));
561
- customisations.preserveAspectRatio = attr("preserveAspectRatio", attr("preserveaspectratio", ""));
562
- return customisations;
563
- }
564
- __name(getCustomisations, "getCustomisations");
565
- function haveCustomisationsChanged(value1, value2) {
566
- for (const key in defaultCustomisations) {
567
- if (value1[key] !== value2[key]) {
568
- return true;
569
- }
570
- }
571
- return false;
572
- }
573
- __name(haveCustomisationsChanged, "haveCustomisationsChanged");
574
- var matchIconName = /^[a-z0-9]+(-[a-z0-9]+)*$/;
575
- var stringToIcon = /* @__PURE__ */__name((value, validate, allowSimpleName, provider = "") => {
576
- const colonSeparated = value.split(":");
577
- if (value.slice(0, 1) === "@") {
578
- if (colonSeparated.length < 2 || colonSeparated.length > 3) {
579
- return null;
580
- }
581
- provider = colonSeparated.shift().slice(1);
582
- }
583
- if (colonSeparated.length > 3 || !colonSeparated.length) {
584
- return null;
585
- }
586
- if (colonSeparated.length > 1) {
587
- const name2 = colonSeparated.pop();
588
- const prefix2 = colonSeparated.pop();
589
- const result = {
590
- // Allow provider without '@': "provider:prefix:name"
591
- provider: colonSeparated.length > 0 ? colonSeparated[0] : provider,
592
- prefix: prefix2,
593
- name: name2
594
- };
595
- return validate && !validateIconName(result) ? null : result;
596
- }
597
- const name = colonSeparated[0];
598
- const dashSeparated = name.split("-");
599
- if (dashSeparated.length > 1) {
600
- const result = {
601
- provider,
602
- prefix: dashSeparated.shift(),
603
- name: dashSeparated.join("-")
604
- };
605
- return validate && !validateIconName(result) ? null : result;
606
- }
607
- if (allowSimpleName && provider === "") {
608
- const result = {
609
- provider,
610
- prefix: "",
611
- name
612
- };
613
- return validate && !validateIconName(result, allowSimpleName) ? null : result;
614
- }
615
- return null;
616
- }, "stringToIcon");
617
- var validateIconName = /* @__PURE__ */__name((icon, allowSimpleName) => {
618
- if (!icon) {
619
- return false;
620
- }
621
- return !!(
622
- // Check prefix: cannot be empty, unless allowSimpleName is enabled
623
- // Check name: cannot be empty
624
- (allowSimpleName && icon.prefix === "" || !!icon.prefix) && !!icon.name);
625
- }, "validateIconName");
626
- function mergeIconTransformations(obj1, obj2) {
627
- const result = {};
628
- if (!obj1.hFlip !== !obj2.hFlip) {
629
- result.hFlip = true;
630
- }
631
- if (!obj1.vFlip !== !obj2.vFlip) {
632
- result.vFlip = true;
633
- }
634
- const rotate = ((obj1.rotate || 0) + (obj2.rotate || 0)) % 4;
635
- if (rotate) {
636
- result.rotate = rotate;
637
- }
638
- return result;
639
- }
640
- __name(mergeIconTransformations, "mergeIconTransformations");
641
- function mergeIconData(parent, child) {
642
- const result = mergeIconTransformations(parent, child);
643
- for (const key in defaultExtendedIconProps) {
644
- if (key in defaultIconTransformations) {
645
- if (key in parent && !(key in result)) {
646
- result[key] = defaultIconTransformations[key];
647
- }
648
- } else if (key in child) {
649
- result[key] = child[key];
650
- } else if (key in parent) {
651
- result[key] = parent[key];
652
- }
653
- }
654
- return result;
655
- }
656
- __name(mergeIconData, "mergeIconData");
657
- function getIconsTree(data, names) {
658
- const icons = data.icons;
659
- const aliases2 = data.aliases || /* @__PURE__ */Object.create(null);
660
- const resolved = /* @__PURE__ */Object.create(null);
661
- function resolve(name) {
662
- if (icons[name]) {
663
- return resolved[name] = [];
664
- }
665
- if (!(name in resolved)) {
666
- resolved[name] = null;
667
- const parent = aliases2[name] && aliases2[name].parent;
668
- const value = parent && resolve(parent);
669
- if (value) {
670
- resolved[name] = [parent].concat(value);
671
- }
672
- }
673
- return resolved[name];
674
- }
675
- __name(resolve, "resolve");
676
- Object.keys(icons).concat(Object.keys(aliases2)).forEach(resolve);
677
- return resolved;
678
- }
679
- __name(getIconsTree, "getIconsTree");
680
- function internalGetIconData(data, name, tree) {
681
- const icons = data.icons;
682
- const aliases2 = data.aliases || /* @__PURE__ */Object.create(null);
683
- let currentProps = {};
684
- function parse2(name2) {
685
- currentProps = mergeIconData(icons[name2] || aliases2[name2], currentProps);
686
- }
687
- __name(parse2, "parse");
688
- parse2(name);
689
- tree.forEach(parse2);
690
- return mergeIconData(data, currentProps);
691
- }
692
- __name(internalGetIconData, "internalGetIconData");
693
- function parseIconSet(data, callback) {
694
- const names = [];
695
- if (typeof data !== "object" || typeof data.icons !== "object") {
696
- return names;
697
- }
698
- if (data.not_found instanceof Array) {
699
- data.not_found.forEach(name => {
700
- callback(name, null);
701
- names.push(name);
702
- });
703
- }
704
- const tree = getIconsTree(data);
705
- for (const name in tree) {
706
- const item = tree[name];
707
- if (item) {
708
- callback(name, internalGetIconData(data, name, item));
709
- names.push(name);
710
- }
711
- }
712
- return names;
713
- }
714
- __name(parseIconSet, "parseIconSet");
715
- var optionalPropertyDefaults = {
716
- provider: "",
717
- aliases: {},
718
- not_found: {},
719
- ...defaultIconDimensions
720
- };
721
- function checkOptionalProps(item, defaults) {
722
- for (const prop in defaults) {
723
- if (prop in item && typeof item[prop] !== typeof defaults[prop]) {
724
- return false;
725
- }
726
- }
727
- return true;
728
- }
729
- __name(checkOptionalProps, "checkOptionalProps");
730
- function quicklyValidateIconSet(obj) {
731
- if (typeof obj !== "object" || obj === null) {
732
- return null;
733
- }
734
- const data = obj;
735
- if (typeof data.prefix !== "string" || !obj.icons || typeof obj.icons !== "object") {
736
- return null;
737
- }
738
- if (!checkOptionalProps(obj, optionalPropertyDefaults)) {
739
- return null;
740
- }
741
- const icons = data.icons;
742
- for (const name in icons) {
743
- const icon = icons[name];
744
- if (
745
- // Name cannot be empty
746
- !name ||
747
- // Must have body
748
- typeof icon.body !== "string" ||
749
- // Check other props
750
- !checkOptionalProps(icon, defaultExtendedIconProps)) {
751
- return null;
752
- }
753
- }
754
- const aliases2 = data.aliases || /* @__PURE__ */Object.create(null);
755
- for (const name in aliases2) {
756
- const icon = aliases2[name];
757
- const parent = icon.parent;
758
- if (
759
- // Name cannot be empty
760
- !name ||
761
- // Parent must be set and point to existing icon
762
- typeof parent !== "string" || !icons[parent] && !aliases2[parent] ||
763
- // Check other props
764
- !checkOptionalProps(icon, defaultExtendedIconProps)) {
765
- return null;
766
- }
767
- }
768
- return data;
769
- }
770
- __name(quicklyValidateIconSet, "quicklyValidateIconSet");
771
- var dataStorage = /* @__PURE__ */Object.create(null);
772
- function newStorage(provider, prefix2) {
773
- return {
774
- provider,
775
- prefix: prefix2,
776
- icons: /* @__PURE__ */Object.create(null),
777
- missing: /* @__PURE__ */new Set()
778
- };
779
- }
780
- __name(newStorage, "newStorage");
781
- function getStorage(provider, prefix2) {
782
- const providerStorage = dataStorage[provider] || (dataStorage[provider] = /* @__PURE__ */Object.create(null));
783
- return providerStorage[prefix2] || (providerStorage[prefix2] = newStorage(provider, prefix2));
784
- }
785
- __name(getStorage, "getStorage");
786
- function addIconSet(storage2, data) {
787
- if (!quicklyValidateIconSet(data)) {
788
- return [];
789
- }
790
- return parseIconSet(data, (name, icon) => {
791
- if (icon) {
792
- storage2.icons[name] = icon;
793
- } else {
794
- storage2.missing.add(name);
795
- }
796
- });
797
- }
798
- __name(addIconSet, "addIconSet");
799
- function addIconToStorage(storage2, name, icon) {
800
- try {
801
- if (typeof icon.body === "string") {
802
- storage2.icons[name] = {
803
- ...icon
804
- };
805
- return true;
806
- }
807
- } catch (err) {}
808
- return false;
809
- }
810
- __name(addIconToStorage, "addIconToStorage");
811
- function listIcons$1(provider, prefix2) {
812
- let allIcons = [];
813
- const providers = typeof provider === "string" ? [provider] : Object.keys(dataStorage);
814
- providers.forEach(provider2 => {
815
- const prefixes = typeof provider2 === "string" && typeof prefix2 === "string" ? [prefix2] : Object.keys(dataStorage[provider2] || {});
816
- prefixes.forEach(prefix22 => {
817
- const storage2 = getStorage(provider2, prefix22);
818
- allIcons = allIcons.concat(Object.keys(storage2.icons).map(name => (provider2 !== "" ? "@" + provider2 + ":" : "") + prefix22 + ":" + name));
819
- });
820
- });
821
- return allIcons;
822
- }
823
- __name(listIcons$1, "listIcons$1");
824
- var simpleNames = false;
825
- function allowSimpleNames(allow) {
826
- if (typeof allow === "boolean") {
827
- simpleNames = allow;
828
- }
829
- return simpleNames;
830
- }
831
- __name(allowSimpleNames, "allowSimpleNames");
832
- function getIconData(name) {
833
- const icon = typeof name === "string" ? stringToIcon(name, true, simpleNames) : name;
834
- if (icon) {
835
- const storage2 = getStorage(icon.provider, icon.prefix);
836
- const iconName = icon.name;
837
- return storage2.icons[iconName] || (storage2.missing.has(iconName) ? null : void 0);
838
- }
839
- }
840
- __name(getIconData, "getIconData");
841
- function addIcon$1(name, data) {
842
- const icon = stringToIcon(name, true, simpleNames);
843
- if (!icon) {
844
- return false;
845
- }
846
- const storage2 = getStorage(icon.provider, icon.prefix);
847
- if (data) {
848
- return addIconToStorage(storage2, icon.name, data);
849
- } else {
850
- storage2.missing.add(icon.name);
851
- return true;
852
- }
853
- }
854
- __name(addIcon$1, "addIcon$1");
855
- function addCollection$1(data, provider) {
856
- if (typeof data !== "object") {
857
- return false;
858
- }
859
- if (typeof provider !== "string") {
860
- provider = data.provider || "";
861
- }
862
- if (simpleNames && !provider && !data.prefix) {
863
- let added = false;
864
- if (quicklyValidateIconSet(data)) {
865
- data.prefix = "";
866
- parseIconSet(data, (name, icon) => {
867
- if (addIcon$1(name, icon)) {
868
- added = true;
869
- }
870
- });
871
- }
872
- return added;
873
- }
874
- const prefix2 = data.prefix;
875
- if (!validateIconName({
876
- provider,
877
- prefix: prefix2,
878
- name: "a"
879
- })) {
880
- return false;
881
- }
882
- const storage2 = getStorage(provider, prefix2);
883
- return !!addIconSet(storage2, data);
884
- }
885
- __name(addCollection$1, "addCollection$1");
886
- function iconLoaded$1(name) {
887
- return !!getIconData(name);
888
- }
889
- __name(iconLoaded$1, "iconLoaded$1");
890
- function getIcon$1(name) {
891
- const result = getIconData(name);
892
- return result ? {
893
- ...defaultIconProps,
894
- ...result
895
- } : result;
896
- }
897
- __name(getIcon$1, "getIcon$1");
898
- function sortIcons(icons) {
899
- const result = {
900
- loaded: [],
901
- missing: [],
902
- pending: []
903
- };
904
- const storage2 = /* @__PURE__ */Object.create(null);
905
- icons.sort((a, b) => {
906
- if (a.provider !== b.provider) {
907
- return a.provider.localeCompare(b.provider);
908
- }
909
- if (a.prefix !== b.prefix) {
910
- return a.prefix.localeCompare(b.prefix);
911
- }
912
- return a.name.localeCompare(b.name);
913
- });
914
- let lastIcon = {
915
- provider: "",
916
- prefix: "",
917
- name: ""
918
- };
919
- icons.forEach(icon => {
920
- if (lastIcon.name === icon.name && lastIcon.prefix === icon.prefix && lastIcon.provider === icon.provider) {
921
- return;
922
- }
923
- lastIcon = icon;
924
- const provider = icon.provider;
925
- const prefix2 = icon.prefix;
926
- const name = icon.name;
927
- const providerStorage = storage2[provider] || (storage2[provider] = /* @__PURE__ */Object.create(null));
928
- const localStorage = providerStorage[prefix2] || (providerStorage[prefix2] = getStorage(provider, prefix2));
929
- let list;
930
- if (name in localStorage.icons) {
931
- list = result.loaded;
932
- } else if (prefix2 === "" || localStorage.missing.has(name)) {
933
- list = result.missing;
934
- } else {
935
- list = result.pending;
936
- }
937
- const item = {
938
- provider,
939
- prefix: prefix2,
940
- name
941
- };
942
- list.push(item);
943
- });
944
- return result;
945
- }
946
- __name(sortIcons, "sortIcons");
947
- function removeCallback(storages, id) {
948
- storages.forEach(storage2 => {
949
- const items = storage2.loaderCallbacks;
950
- if (items) {
951
- storage2.loaderCallbacks = items.filter(row => row.id !== id);
952
- }
953
- });
954
- }
955
- __name(removeCallback, "removeCallback");
956
- function updateCallbacks(storage2) {
957
- if (!storage2.pendingCallbacksFlag) {
958
- storage2.pendingCallbacksFlag = true;
959
- setTimeout(() => {
960
- storage2.pendingCallbacksFlag = false;
961
- const items = storage2.loaderCallbacks ? storage2.loaderCallbacks.slice(0) : [];
962
- if (!items.length) {
963
- return;
964
- }
965
- let hasPending = false;
966
- const provider = storage2.provider;
967
- const prefix2 = storage2.prefix;
968
- items.forEach(item => {
969
- const icons = item.icons;
970
- const oldLength = icons.pending.length;
971
- icons.pending = icons.pending.filter(icon => {
972
- if (icon.prefix !== prefix2) {
973
- return true;
974
- }
975
- const name = icon.name;
976
- if (storage2.icons[name]) {
977
- icons.loaded.push({
978
- provider,
979
- prefix: prefix2,
980
- name
981
- });
982
- } else if (storage2.missing.has(name)) {
983
- icons.missing.push({
984
- provider,
985
- prefix: prefix2,
986
- name
987
- });
988
- } else {
989
- hasPending = true;
990
- return true;
991
- }
992
- return false;
993
- });
994
- if (icons.pending.length !== oldLength) {
995
- if (!hasPending) {
996
- removeCallback([storage2], item.id);
997
- }
998
- item.callback(icons.loaded.slice(0), icons.missing.slice(0), icons.pending.slice(0), item.abort);
999
- }
1000
- });
1001
- });
1002
- }
1003
- }
1004
- __name(updateCallbacks, "updateCallbacks");
1005
- var idCounter = 0;
1006
- function storeCallback(callback, icons, pendingSources) {
1007
- const id = idCounter++;
1008
- const abort = removeCallback.bind(null, pendingSources, id);
1009
- if (!icons.pending.length) {
1010
- return abort;
1011
- }
1012
- const item = {
1013
- id,
1014
- icons,
1015
- callback,
1016
- abort
1017
- };
1018
- pendingSources.forEach(storage2 => {
1019
- (storage2.loaderCallbacks || (storage2.loaderCallbacks = [])).push(item);
1020
- });
1021
- return abort;
1022
- }
1023
- __name(storeCallback, "storeCallback");
1024
- var storage = /* @__PURE__ */Object.create(null);
1025
- function setAPIModule(provider, item) {
1026
- storage[provider] = item;
1027
- }
1028
- __name(setAPIModule, "setAPIModule");
1029
- function getAPIModule(provider) {
1030
- return storage[provider] || storage[""];
1031
- }
1032
- __name(getAPIModule, "getAPIModule");
1033
- function listToIcons(list, validate = true, simpleNames2 = false) {
1034
- const result = [];
1035
- list.forEach(item => {
1036
- const icon = typeof item === "string" ? stringToIcon(item, validate, simpleNames2) : item;
1037
- if (icon) {
1038
- result.push(icon);
1039
- }
1040
- });
1041
- return result;
1042
- }
1043
- __name(listToIcons, "listToIcons");
1044
- var defaultConfig = {
1045
- resources: [],
1046
- index: 0,
1047
- timeout: 2e3,
1048
- rotate: 750,
1049
- random: false,
1050
- dataAfterTimeout: false
1051
- };
1052
- function sendQuery(config, payload, query, done) {
1053
- const resourcesCount = config.resources.length;
1054
- const startIndex = config.random ? Math.floor(Math.random() * resourcesCount) : config.index;
1055
- let resources;
1056
- if (config.random) {
1057
- let list = config.resources.slice(0);
1058
- resources = [];
1059
- while (list.length > 1) {
1060
- const nextIndex = Math.floor(Math.random() * list.length);
1061
- resources.push(list[nextIndex]);
1062
- list = list.slice(0, nextIndex).concat(list.slice(nextIndex + 1));
1063
- }
1064
- resources = resources.concat(list);
1065
- } else {
1066
- resources = config.resources.slice(startIndex).concat(config.resources.slice(0, startIndex));
1067
- }
1068
- const startTime = Date.now();
1069
- let status = "pending";
1070
- let queriesSent = 0;
1071
- let lastError;
1072
- let timer = null;
1073
- let queue = [];
1074
- let doneCallbacks = [];
1075
- if (typeof done === "function") {
1076
- doneCallbacks.push(done);
1077
- }
1078
- function resetTimer() {
1079
- if (timer) {
1080
- clearTimeout(timer);
1081
- timer = null;
1082
- }
1083
- }
1084
- __name(resetTimer, "resetTimer");
1085
- function abort() {
1086
- if (status === "pending") {
1087
- status = "aborted";
1088
- }
1089
- resetTimer();
1090
- queue.forEach(item => {
1091
- if (item.status === "pending") {
1092
- item.status = "aborted";
1093
- }
1094
- });
1095
- queue = [];
1096
- }
1097
- __name(abort, "abort");
1098
- function subscribe(callback, overwrite) {
1099
- if (overwrite) {
1100
- doneCallbacks = [];
1101
- }
1102
- if (typeof callback === "function") {
1103
- doneCallbacks.push(callback);
1104
- }
1105
- }
1106
- __name(subscribe, "subscribe");
1107
- function getQueryStatus() {
1108
- return {
1109
- startTime,
1110
- payload,
1111
- status,
1112
- queriesSent,
1113
- queriesPending: queue.length,
1114
- subscribe,
1115
- abort
1116
- };
1117
- }
1118
- __name(getQueryStatus, "getQueryStatus");
1119
- function failQuery() {
1120
- status = "failed";
1121
- doneCallbacks.forEach(callback => {
1122
- callback(void 0, lastError);
1123
- });
1124
- }
1125
- __name(failQuery, "failQuery");
1126
- function clearQueue() {
1127
- queue.forEach(item => {
1128
- if (item.status === "pending") {
1129
- item.status = "aborted";
1130
- }
1131
- });
1132
- queue = [];
1133
- }
1134
- __name(clearQueue, "clearQueue");
1135
- function moduleResponse(item, response, data) {
1136
- const isError = response !== "success";
1137
- queue = queue.filter(queued => queued !== item);
1138
- switch (status) {
1139
- case "pending":
1140
- break;
1141
- case "failed":
1142
- if (isError || !config.dataAfterTimeout) {
1143
- return;
1144
- }
1145
- break;
1146
- default:
1147
- return;
1148
- }
1149
- if (response === "abort") {
1150
- lastError = data;
1151
- failQuery();
1152
- return;
1153
- }
1154
- if (isError) {
1155
- lastError = data;
1156
- if (!queue.length) {
1157
- if (!resources.length) {
1158
- failQuery();
1159
- } else {
1160
- execNext();
1161
- }
1162
- }
1163
- return;
1164
- }
1165
- resetTimer();
1166
- clearQueue();
1167
- if (!config.random) {
1168
- const index = config.resources.indexOf(item.resource);
1169
- if (index !== -1 && index !== config.index) {
1170
- config.index = index;
1171
- }
1172
- }
1173
- status = "completed";
1174
- doneCallbacks.forEach(callback => {
1175
- callback(data);
1176
- });
1177
- }
1178
- __name(moduleResponse, "moduleResponse");
1179
- function execNext() {
1180
- if (status !== "pending") {
1181
- return;
1182
- }
1183
- resetTimer();
1184
- const resource = resources.shift();
1185
- if (resource === void 0) {
1186
- if (queue.length) {
1187
- timer = setTimeout(() => {
1188
- resetTimer();
1189
- if (status === "pending") {
1190
- clearQueue();
1191
- failQuery();
1192
- }
1193
- }, config.timeout);
1194
- return;
1195
- }
1196
- failQuery();
1197
- return;
1198
- }
1199
- const item = {
1200
- status: "pending",
1201
- resource,
1202
- callback: /* @__PURE__ */__name((status2, data) => {
1203
- moduleResponse(item, status2, data);
1204
- }, "callback")
1205
- };
1206
- queue.push(item);
1207
- queriesSent++;
1208
- timer = setTimeout(execNext, config.rotate);
1209
- query(resource, payload, item.callback);
1210
- }
1211
- __name(execNext, "execNext");
1212
- setTimeout(execNext);
1213
- return getQueryStatus;
1214
- }
1215
- __name(sendQuery, "sendQuery");
1216
- function initRedundancy(cfg) {
1217
- const config = {
1218
- ...defaultConfig,
1219
- ...cfg
1220
- };
1221
- let queries = [];
1222
- function cleanup() {
1223
- queries = queries.filter(item => item().status === "pending");
1224
- }
1225
- __name(cleanup, "cleanup");
1226
- function query(payload, queryCallback, doneCallback) {
1227
- const query2 = sendQuery(config, payload, queryCallback, (data, error) => {
1228
- cleanup();
1229
- if (doneCallback) {
1230
- doneCallback(data, error);
1231
- }
1232
- });
1233
- queries.push(query2);
1234
- return query2;
1235
- }
1236
- __name(query, "query");
1237
- function find(callback) {
1238
- return queries.find(value => {
1239
- return callback(value);
1240
- }) || null;
1241
- }
1242
- __name(find, "find");
1243
- const instance = {
1244
- query,
1245
- find,
1246
- setIndex: /* @__PURE__ */__name(index => {
1247
- config.index = index;
1248
- }, "setIndex"),
1249
- getIndex: /* @__PURE__ */__name(() => config.index, "getIndex"),
1250
- cleanup
1251
- };
1252
- return instance;
1253
- }
1254
- __name(initRedundancy, "initRedundancy");
1255
- function createAPIConfig(source) {
1256
- let resources;
1257
- if (typeof source.resources === "string") {
1258
- resources = [source.resources];
1259
- } else {
1260
- resources = source.resources;
1261
- if (!(resources instanceof Array) || !resources.length) {
1262
- return null;
1263
- }
1264
- }
1265
- const result = {
1266
- // API hosts
1267
- resources,
1268
- // Root path
1269
- path: source.path || "/",
1270
- // URL length limit
1271
- maxURL: source.maxURL || 500,
1272
- // Timeout before next host is used.
1273
- rotate: source.rotate || 750,
1274
- // Timeout before failing query.
1275
- timeout: source.timeout || 5e3,
1276
- // Randomise default API end point.
1277
- random: source.random === true,
1278
- // Start index
1279
- index: source.index || 0,
1280
- // Receive data after time out (used if time out kicks in first, then API module sends data anyway).
1281
- dataAfterTimeout: source.dataAfterTimeout !== false
1282
- };
1283
- return result;
1284
- }
1285
- __name(createAPIConfig, "createAPIConfig");
1286
- var configStorage = /* @__PURE__ */Object.create(null);
1287
- var fallBackAPISources = ["https://api.simplesvg.com", "https://api.unisvg.com"];
1288
- var fallBackAPI = [];
1289
- while (fallBackAPISources.length > 0) {
1290
- if (fallBackAPISources.length === 1) {
1291
- fallBackAPI.push(fallBackAPISources.shift());
1292
- } else {
1293
- if (Math.random() > 0.5) {
1294
- fallBackAPI.push(fallBackAPISources.shift());
1295
- } else {
1296
- fallBackAPI.push(fallBackAPISources.pop());
1297
- }
1298
- }
1299
- }
1300
- configStorage[""] = createAPIConfig({
1301
- resources: ["https://api.iconify.design"].concat(fallBackAPI)
1302
- });
1303
- function addAPIProvider$1(provider, customConfig) {
1304
- const config = createAPIConfig(customConfig);
1305
- if (config === null) {
1306
- return false;
1307
- }
1308
- configStorage[provider] = config;
1309
- return true;
1310
- }
1311
- __name(addAPIProvider$1, "addAPIProvider$1");
1312
- function getAPIConfig(provider) {
1313
- return configStorage[provider];
1314
- }
1315
- __name(getAPIConfig, "getAPIConfig");
1316
- function listAPIProviders() {
1317
- return Object.keys(configStorage);
1318
- }
1319
- __name(listAPIProviders, "listAPIProviders");
1320
- function emptyCallback$1() {}
1321
- __name(emptyCallback$1, "emptyCallback$1");
1322
- var redundancyCache = /* @__PURE__ */Object.create(null);
1323
- function getRedundancyCache(provider) {
1324
- if (!redundancyCache[provider]) {
1325
- const config = getAPIConfig(provider);
1326
- if (!config) {
1327
- return;
1328
- }
1329
- const redundancy = initRedundancy(config);
1330
- const cachedReundancy = {
1331
- config,
1332
- redundancy
1333
- };
1334
- redundancyCache[provider] = cachedReundancy;
1335
- }
1336
- return redundancyCache[provider];
1337
- }
1338
- __name(getRedundancyCache, "getRedundancyCache");
1339
- function sendAPIQuery(target, query, callback) {
1340
- let redundancy;
1341
- let send2;
1342
- if (typeof target === "string") {
1343
- const api = getAPIModule(target);
1344
- if (!api) {
1345
- callback(void 0, 424);
1346
- return emptyCallback$1;
1347
- }
1348
- send2 = api.send;
1349
- const cached = getRedundancyCache(target);
1350
- if (cached) {
1351
- redundancy = cached.redundancy;
1352
- }
1353
- } else {
1354
- const config = createAPIConfig(target);
1355
- if (config) {
1356
- redundancy = initRedundancy(config);
1357
- const moduleKey = target.resources ? target.resources[0] : "";
1358
- const api = getAPIModule(moduleKey);
1359
- if (api) {
1360
- send2 = api.send;
1361
- }
1362
- }
1363
- }
1364
- if (!redundancy || !send2) {
1365
- callback(void 0, 424);
1366
- return emptyCallback$1;
1367
- }
1368
- return redundancy.query(query, send2, callback)().abort;
1369
- }
1370
- __name(sendAPIQuery, "sendAPIQuery");
1371
- function emptyCallback() {}
1372
- __name(emptyCallback, "emptyCallback");
1373
- function loadedNewIcons(storage2) {
1374
- if (!storage2.iconsLoaderFlag) {
1375
- storage2.iconsLoaderFlag = true;
1376
- setTimeout(() => {
1377
- storage2.iconsLoaderFlag = false;
1378
- updateCallbacks(storage2);
1379
- });
1380
- }
1381
- }
1382
- __name(loadedNewIcons, "loadedNewIcons");
1383
- function checkIconNamesForAPI(icons) {
1384
- const valid = [];
1385
- const invalid = [];
1386
- icons.forEach(name => {
1387
- (name.match(matchIconName) ? valid : invalid).push(name);
1388
- });
1389
- return {
1390
- valid,
1391
- invalid
1392
- };
1393
- }
1394
- __name(checkIconNamesForAPI, "checkIconNamesForAPI");
1395
- function parseLoaderResponse(storage2, icons, data) {
1396
- function checkMissing() {
1397
- const pending = storage2.pendingIcons;
1398
- icons.forEach(name => {
1399
- if (pending) {
1400
- pending.delete(name);
1401
- }
1402
- if (!storage2.icons[name]) {
1403
- storage2.missing.add(name);
1404
- }
1405
- });
1406
- }
1407
- __name(checkMissing, "checkMissing");
1408
- if (data && typeof data === "object") {
1409
- try {
1410
- const parsed = addIconSet(storage2, data);
1411
- if (!parsed.length) {
1412
- checkMissing();
1413
- return;
1414
- }
1415
- } catch (err) {
1416
- console.error(err);
1417
- }
1418
- }
1419
- checkMissing();
1420
- loadedNewIcons(storage2);
1421
- }
1422
- __name(parseLoaderResponse, "parseLoaderResponse");
1423
- function parsePossiblyAsyncResponse(response, callback) {
1424
- if (response instanceof Promise) {
1425
- response.then(data => {
1426
- callback(data);
1427
- }).catch(() => {
1428
- callback(null);
1429
- });
1430
- } else {
1431
- callback(response);
1432
- }
1433
- }
1434
- __name(parsePossiblyAsyncResponse, "parsePossiblyAsyncResponse");
1435
- function loadNewIcons(storage2, icons) {
1436
- if (!storage2.iconsToLoad) {
1437
- storage2.iconsToLoad = icons;
1438
- } else {
1439
- storage2.iconsToLoad = storage2.iconsToLoad.concat(icons).sort();
1440
- }
1441
- if (!storage2.iconsQueueFlag) {
1442
- storage2.iconsQueueFlag = true;
1443
- setTimeout(() => {
1444
- storage2.iconsQueueFlag = false;
1445
- const {
1446
- provider,
1447
- prefix: prefix2
1448
- } = storage2;
1449
- const icons2 = storage2.iconsToLoad;
1450
- delete storage2.iconsToLoad;
1451
- if (!icons2 || !icons2.length) {
1452
- return;
1453
- }
1454
- const customIconLoader = storage2.loadIcon;
1455
- if (storage2.loadIcons && (icons2.length > 1 || !customIconLoader)) {
1456
- parsePossiblyAsyncResponse(storage2.loadIcons(icons2, prefix2, provider), data => {
1457
- parseLoaderResponse(storage2, icons2, data);
1458
- });
1459
- return;
1460
- }
1461
- if (customIconLoader) {
1462
- icons2.forEach(name => {
1463
- const response = customIconLoader(name, prefix2, provider);
1464
- parsePossiblyAsyncResponse(response, data => {
1465
- const iconSet = data ? {
1466
- prefix: prefix2,
1467
- icons: {
1468
- [name]: data
1469
- }
1470
- } : null;
1471
- parseLoaderResponse(storage2, [name], iconSet);
1472
- });
1473
- });
1474
- return;
1475
- }
1476
- const {
1477
- valid,
1478
- invalid
1479
- } = checkIconNamesForAPI(icons2);
1480
- if (invalid.length) {
1481
- parseLoaderResponse(storage2, invalid, null);
1482
- }
1483
- if (!valid.length) {
1484
- return;
1485
- }
1486
- const api = prefix2.match(matchIconName) ? getAPIModule(provider) : null;
1487
- if (!api) {
1488
- parseLoaderResponse(storage2, valid, null);
1489
- return;
1490
- }
1491
- const params = api.prepare(provider, prefix2, valid);
1492
- params.forEach(item => {
1493
- sendAPIQuery(provider, item, data => {
1494
- parseLoaderResponse(storage2, item.icons, data);
1495
- });
1496
- });
1497
- });
1498
- }
1499
- }
1500
- __name(loadNewIcons, "loadNewIcons");
1501
- var loadIcons$1 = /* @__PURE__ */__name((icons, callback) => {
1502
- const cleanedIcons = listToIcons(icons, true, allowSimpleNames());
1503
- const sortedIcons = sortIcons(cleanedIcons);
1504
- if (!sortedIcons.pending.length) {
1505
- let callCallback = true;
1506
- if (callback) {
1507
- setTimeout(() => {
1508
- if (callCallback) {
1509
- callback(sortedIcons.loaded, sortedIcons.missing, sortedIcons.pending, emptyCallback);
1510
- }
1511
- });
1512
- }
1513
- return () => {
1514
- callCallback = false;
1515
- };
1516
- }
1517
- const newIcons = /* @__PURE__ */Object.create(null);
1518
- const sources = [];
1519
- let lastProvider, lastPrefix;
1520
- sortedIcons.pending.forEach(icon => {
1521
- const {
1522
- provider,
1523
- prefix: prefix2
1524
- } = icon;
1525
- if (prefix2 === lastPrefix && provider === lastProvider) {
1526
- return;
1527
- }
1528
- lastProvider = provider;
1529
- lastPrefix = prefix2;
1530
- sources.push(getStorage(provider, prefix2));
1531
- const providerNewIcons = newIcons[provider] || (newIcons[provider] = /* @__PURE__ */Object.create(null));
1532
- if (!providerNewIcons[prefix2]) {
1533
- providerNewIcons[prefix2] = [];
1534
- }
1535
- });
1536
- sortedIcons.pending.forEach(icon => {
1537
- const {
1538
- provider,
1539
- prefix: prefix2,
1540
- name
1541
- } = icon;
1542
- const storage2 = getStorage(provider, prefix2);
1543
- const pendingQueue = storage2.pendingIcons || (storage2.pendingIcons = /* @__PURE__ */new Set());
1544
- if (!pendingQueue.has(name)) {
1545
- pendingQueue.add(name);
1546
- newIcons[provider][prefix2].push(name);
1547
- }
1548
- });
1549
- sources.forEach(storage2 => {
1550
- const list = newIcons[storage2.provider][storage2.prefix];
1551
- if (list.length) {
1552
- loadNewIcons(storage2, list);
1553
- }
1554
- });
1555
- return callback ? storeCallback(callback, sortedIcons, sources) : emptyCallback;
1556
- }, "loadIcons$1");
1557
- var loadIcon$1 = /* @__PURE__ */__name(icon => {
1558
- return new Promise((fulfill, reject) => {
1559
- const iconObj = typeof icon === "string" ? stringToIcon(icon, true) : icon;
1560
- if (!iconObj) {
1561
- reject(icon);
1562
- return;
1563
- }
1564
- loadIcons$1([iconObj || icon], loaded => {
1565
- if (loaded.length && iconObj) {
1566
- const data = getIconData(iconObj);
1567
- if (data) {
1568
- fulfill({
1569
- ...defaultIconProps,
1570
- ...data
1571
- });
1572
- return;
1573
- }
1574
- }
1575
- reject(icon);
1576
- });
1577
- });
1578
- }, "loadIcon$1");
1579
- function testIconObject(value) {
1580
- try {
1581
- const obj = typeof value === "string" ? JSON.parse(value) : value;
1582
- if (typeof obj.body === "string") {
1583
- return {
1584
- ...obj
1585
- };
1586
- }
1587
- } catch (err) {}
1588
- }
1589
- __name(testIconObject, "testIconObject");
1590
- function parseIconValue(value, onload) {
1591
- if (typeof value === "object") {
1592
- const data2 = testIconObject(value);
1593
- return {
1594
- data: data2,
1595
- value
1596
- };
1597
- }
1598
- if (typeof value !== "string") {
1599
- return {
1600
- value
1601
- };
1602
- }
1603
- if (value.includes("{")) {
1604
- const data2 = testIconObject(value);
1605
- if (data2) {
1606
- return {
1607
- data: data2,
1608
- value
1609
- };
1610
- }
1611
- }
1612
- const name = stringToIcon(value, true, true);
1613
- if (!name) {
1614
- return {
1615
- value
1616
- };
1617
- }
1618
- const data = getIconData(name);
1619
- if (data !== void 0 || !name.prefix) {
1620
- return {
1621
- value,
1622
- name,
1623
- data
1624
- // could be 'null' -> icon is missing
1625
- };
1626
- }
1627
- const loading = loadIcons$1([name], () => onload(value, name, getIconData(name)));
1628
- return {
1629
- value,
1630
- name,
1631
- loading
1632
- };
1633
- }
1634
- __name(parseIconValue, "parseIconValue");
1635
- var isBuggedSafari = false;
1636
- try {
1637
- isBuggedSafari = navigator.vendor.indexOf("Apple") === 0;
1638
- } catch (err) {}
1639
- function getRenderMode(body, mode) {
1640
- switch (mode) {
1641
- // Force mode
1642
- case "svg":
1643
- case "bg":
1644
- case "mask":
1645
- return mode;
1646
- }
1647
- if (mode !== "style" && (isBuggedSafari || body.indexOf("<a") === -1)) {
1648
- return "svg";
1649
- }
1650
- return body.indexOf("currentColor") === -1 ? "bg" : "mask";
1651
- }
1652
- __name(getRenderMode, "getRenderMode");
1653
- var unitsSplit = /(-?[0-9.]*[0-9]+[0-9.]*)/g;
1654
- var unitsTest = /^-?[0-9.]*[0-9]+[0-9.]*$/g;
1655
- function calculateSize$1(size, ratio, precision) {
1656
- if (ratio === 1) {
1657
- return size;
1658
- }
1659
- precision = precision || 100;
1660
- if (typeof size === "number") {
1661
- return Math.ceil(size * ratio * precision) / precision;
1662
- }
1663
- if (typeof size !== "string") {
1664
- return size;
1665
- }
1666
- const oldParts = size.split(unitsSplit);
1667
- if (oldParts === null || !oldParts.length) {
1668
- return size;
1669
- }
1670
- const newParts = [];
1671
- let code = oldParts.shift();
1672
- let isNumber = unitsTest.test(code);
1673
- while (true) {
1674
- if (isNumber) {
1675
- const num = parseFloat(code);
1676
- if (isNaN(num)) {
1677
- newParts.push(code);
1678
- } else {
1679
- newParts.push(Math.ceil(num * ratio * precision) / precision);
1680
- }
1681
- } else {
1682
- newParts.push(code);
1683
- }
1684
- code = oldParts.shift();
1685
- if (code === void 0) {
1686
- return newParts.join("");
1687
- }
1688
- isNumber = !isNumber;
1689
- }
1690
- }
1691
- __name(calculateSize$1, "calculateSize$1");
1692
- function splitSVGDefs(content, tag = "defs") {
1693
- let defs = "";
1694
- const index = content.indexOf("<" + tag);
1695
- while (index >= 0) {
1696
- const start = content.indexOf(">", index);
1697
- const end = content.indexOf("</" + tag);
1698
- if (start === -1 || end === -1) {
1699
- break;
1700
- }
1701
- const endEnd = content.indexOf(">", end);
1702
- if (endEnd === -1) {
1703
- break;
1704
- }
1705
- defs += content.slice(start + 1, end).trim();
1706
- content = content.slice(0, index).trim() + content.slice(endEnd + 1);
1707
- }
1708
- return {
1709
- defs,
1710
- content
1711
- };
1712
- }
1713
- __name(splitSVGDefs, "splitSVGDefs");
1714
- function mergeDefsAndContent(defs, content) {
1715
- return defs ? "<defs>" + defs + "</defs>" + content : content;
1716
- }
1717
- __name(mergeDefsAndContent, "mergeDefsAndContent");
1718
- function wrapSVGContent(body, start, end) {
1719
- const split = splitSVGDefs(body);
1720
- return mergeDefsAndContent(split.defs, start + split.content + end);
1721
- }
1722
- __name(wrapSVGContent, "wrapSVGContent");
1723
- var isUnsetKeyword = /* @__PURE__ */__name(value => value === "unset" || value === "undefined" || value === "none", "isUnsetKeyword");
1724
- function iconToSVG(icon, customisations) {
1725
- const fullIcon = {
1726
- ...defaultIconProps,
1727
- ...icon
1728
- };
1729
- const fullCustomisations = {
1730
- ...defaultIconCustomisations,
1731
- ...customisations
1732
- };
1733
- const box = {
1734
- left: fullIcon.left,
1735
- top: fullIcon.top,
1736
- width: fullIcon.width,
1737
- height: fullIcon.height
1738
- };
1739
- let body = fullIcon.body;
1740
- [fullIcon, fullCustomisations].forEach(props => {
1741
- const transformations = [];
1742
- const hFlip = props.hFlip;
1743
- const vFlip = props.vFlip;
1744
- let rotation = props.rotate;
1745
- if (hFlip) {
1746
- if (vFlip) {
1747
- rotation += 2;
1748
- } else {
1749
- transformations.push("translate(" + (box.width + box.left).toString() + " " + (0 - box.top).toString() + ")");
1750
- transformations.push("scale(-1 1)");
1751
- box.top = box.left = 0;
1752
- }
1753
- } else if (vFlip) {
1754
- transformations.push("translate(" + (0 - box.left).toString() + " " + (box.height + box.top).toString() + ")");
1755
- transformations.push("scale(1 -1)");
1756
- box.top = box.left = 0;
1757
- }
1758
- let tempValue;
1759
- if (rotation < 0) {
1760
- rotation -= Math.floor(rotation / 4) * 4;
1761
- }
1762
- rotation = rotation % 4;
1763
- switch (rotation) {
1764
- case 1:
1765
- tempValue = box.height / 2 + box.top;
1766
- transformations.unshift("rotate(90 " + tempValue.toString() + " " + tempValue.toString() + ")");
1767
- break;
1768
- case 2:
1769
- transformations.unshift("rotate(180 " + (box.width / 2 + box.left).toString() + " " + (box.height / 2 + box.top).toString() + ")");
1770
- break;
1771
- case 3:
1772
- tempValue = box.width / 2 + box.left;
1773
- transformations.unshift("rotate(-90 " + tempValue.toString() + " " + tempValue.toString() + ")");
1774
- break;
1775
- }
1776
- if (rotation % 2 === 1) {
1777
- if (box.left !== box.top) {
1778
- tempValue = box.left;
1779
- box.left = box.top;
1780
- box.top = tempValue;
1781
- }
1782
- if (box.width !== box.height) {
1783
- tempValue = box.width;
1784
- box.width = box.height;
1785
- box.height = tempValue;
1786
- }
1787
- }
1788
- if (transformations.length) {
1789
- body = wrapSVGContent(body, '<g transform="' + transformations.join(" ") + '">', "</g>");
1790
- }
1791
- });
1792
- const customisationsWidth = fullCustomisations.width;
1793
- const customisationsHeight = fullCustomisations.height;
1794
- const boxWidth = box.width;
1795
- const boxHeight = box.height;
1796
- let width;
1797
- let height;
1798
- if (customisationsWidth === null) {
1799
- height = customisationsHeight === null ? "1em" : customisationsHeight === "auto" ? boxHeight : customisationsHeight;
1800
- width = calculateSize$1(height, boxWidth / boxHeight);
1801
- } else {
1802
- width = customisationsWidth === "auto" ? boxWidth : customisationsWidth;
1803
- height = customisationsHeight === null ? calculateSize$1(width, boxHeight / boxWidth) : customisationsHeight === "auto" ? boxHeight : customisationsHeight;
1804
- }
1805
- const attributes = {};
1806
- const setAttr = /* @__PURE__ */__name((prop, value) => {
1807
- if (!isUnsetKeyword(value)) {
1808
- attributes[prop] = value.toString();
1809
- }
1810
- }, "setAttr");
1811
- setAttr("width", width);
1812
- setAttr("height", height);
1813
- const viewBox = [box.left, box.top, boxWidth, boxHeight];
1814
- attributes.viewBox = viewBox.join(" ");
1815
- return {
1816
- attributes,
1817
- viewBox,
1818
- body
1819
- };
1820
- }
1821
- __name(iconToSVG, "iconToSVG");
1822
- function iconToHTML$1(body, attributes) {
1823
- let renderAttribsHTML = body.indexOf("xlink:") === -1 ? "" : ' xmlns:xlink="http://www.w3.org/1999/xlink"';
1824
- for (const attr in attributes) {
1825
- renderAttribsHTML += " " + attr + '="' + attributes[attr] + '"';
1826
- }
1827
- return '<svg xmlns="http://www.w3.org/2000/svg"' + renderAttribsHTML + ">" + body + "</svg>";
1828
- }
1829
- __name(iconToHTML$1, "iconToHTML$1");
1830
- function encodeSVGforURL(svg) {
1831
- return svg.replace(/"/g, "'").replace(/%/g, "%25").replace(/#/g, "%23").replace(/</g, "%3C").replace(/>/g, "%3E").replace(/\s+/g, " ");
1832
- }
1833
- __name(encodeSVGforURL, "encodeSVGforURL");
1834
- function svgToData(svg) {
1835
- return "data:image/svg+xml," + encodeSVGforURL(svg);
1836
- }
1837
- __name(svgToData, "svgToData");
1838
- function svgToURL$1(svg) {
1839
- return 'url("' + svgToData(svg) + '")';
1840
- }
1841
- __name(svgToURL$1, "svgToURL$1");
1842
- var detectFetch = /* @__PURE__ */__name(() => {
1843
- let callback;
1844
- try {
1845
- callback = fetch;
1846
- if (typeof callback === "function") {
1847
- return callback;
1848
- }
1849
- } catch (err) {}
1850
- }, "detectFetch");
1851
- var fetchModule = detectFetch();
1852
- function setFetch(fetch2) {
1853
- fetchModule = fetch2;
1854
- }
1855
- __name(setFetch, "setFetch");
1856
- function getFetch() {
1857
- return fetchModule;
1858
- }
1859
- __name(getFetch, "getFetch");
1860
- function calculateMaxLength(provider, prefix2) {
1861
- const config = getAPIConfig(provider);
1862
- if (!config) {
1863
- return 0;
1864
- }
1865
- let result;
1866
- if (!config.maxURL) {
1867
- result = 0;
1868
- } else {
1869
- let maxHostLength = 0;
1870
- config.resources.forEach(item => {
1871
- const host = item;
1872
- maxHostLength = Math.max(maxHostLength, host.length);
1873
- });
1874
- const url = prefix2 + ".json?icons=";
1875
- result = config.maxURL - maxHostLength - config.path.length - url.length;
1876
- }
1877
- return result;
1878
- }
1879
- __name(calculateMaxLength, "calculateMaxLength");
1880
- function shouldAbort(status) {
1881
- return status === 404;
1882
- }
1883
- __name(shouldAbort, "shouldAbort");
1884
- var prepare = /* @__PURE__ */__name((provider, prefix2, icons) => {
1885
- const results = [];
1886
- const maxLength = calculateMaxLength(provider, prefix2);
1887
- const type = "icons";
1888
- let item = {
1889
- type,
1890
- provider,
1891
- prefix: prefix2,
1892
- icons: []
1893
- };
1894
- let length2 = 0;
1895
- icons.forEach((name, index) => {
1896
- length2 += name.length + 1;
1897
- if (length2 >= maxLength && index > 0) {
1898
- results.push(item);
1899
- item = {
1900
- type,
1901
- provider,
1902
- prefix: prefix2,
1903
- icons: []
1904
- };
1905
- length2 = name.length;
1906
- }
1907
- item.icons.push(name);
1908
- });
1909
- results.push(item);
1910
- return results;
1911
- }, "prepare");
1912
- function getPath(provider) {
1913
- if (typeof provider === "string") {
1914
- const config = getAPIConfig(provider);
1915
- if (config) {
1916
- return config.path;
1917
- }
1918
- }
1919
- return "/";
1920
- }
1921
- __name(getPath, "getPath");
1922
- var send = /* @__PURE__ */__name((host, params, callback) => {
1923
- if (!fetchModule) {
1924
- callback("abort", 424);
1925
- return;
1926
- }
1927
- let path = getPath(params.provider);
1928
- switch (params.type) {
1929
- case "icons":
1930
- {
1931
- const prefix2 = params.prefix;
1932
- const icons = params.icons;
1933
- const iconsList = icons.join(",");
1934
- const urlParams = new URLSearchParams({
1935
- icons: iconsList
1936
- });
1937
- path += prefix2 + ".json?" + urlParams.toString();
1938
- break;
1939
- }
1940
- case "custom":
1941
- {
1942
- const uri = params.uri;
1943
- path += uri.slice(0, 1) === "/" ? uri.slice(1) : uri;
1944
- break;
1945
- }
1946
- default:
1947
- callback("abort", 400);
1948
- return;
1949
- }
1950
- let defaultError = 503;
1951
- fetchModule(host + path).then(response => {
1952
- const status = response.status;
1953
- if (status !== 200) {
1954
- setTimeout(() => {
1955
- callback(shouldAbort(status) ? "abort" : "next", status);
1956
- });
1957
- return;
1958
- }
1959
- defaultError = 501;
1960
- return response.json();
1961
- }).then(data => {
1962
- if (typeof data !== "object" || data === null) {
1963
- setTimeout(() => {
1964
- if (data === 404) {
1965
- callback("abort", data);
1966
- } else {
1967
- callback("next", defaultError);
1968
- }
1969
- });
1970
- return;
1971
- }
1972
- setTimeout(() => {
1973
- callback("success", data);
1974
- });
1975
- }).catch(() => {
1976
- callback("next", defaultError);
1977
- });
1978
- }, "send");
1979
- var fetchAPIModule = {
1980
- prepare,
1981
- send
1982
- };
1983
- function setCustomIconsLoader$1(loader, prefix2, provider) {
1984
- getStorage(provider || "", prefix2).loadIcons = loader;
1985
- }
1986
- __name(setCustomIconsLoader$1, "setCustomIconsLoader$1");
1987
- function setCustomIconLoader$1(loader, prefix2, provider) {
1988
- getStorage(provider || "", prefix2).loadIcon = loader;
1989
- }
1990
- __name(setCustomIconLoader$1, "setCustomIconLoader$1");
1991
- var nodeAttr = "data-style";
1992
- var customStyle = "";
1993
- function appendCustomStyle(style) {
1994
- customStyle = style;
1995
- }
1996
- __name(appendCustomStyle, "appendCustomStyle");
1997
- function updateStyle(parent, inline) {
1998
- let styleNode = Array.from(parent.childNodes).find(node2 => node2.hasAttribute && node2.hasAttribute(nodeAttr));
1999
- if (!styleNode) {
2000
- styleNode = document.createElement("style");
2001
- styleNode.setAttribute(nodeAttr, nodeAttr);
2002
- parent.appendChild(styleNode);
2003
- }
2004
- styleNode.textContent = ":host{display:inline-block;vertical-align:" + (inline ? "-0.125em" : "0") + "}span,svg{display:block;margin:auto}" + customStyle;
2005
- }
2006
- __name(updateStyle, "updateStyle");
2007
- function exportFunctions() {
2008
- setAPIModule("", fetchAPIModule);
2009
- allowSimpleNames(true);
2010
- let _window;
2011
- try {
2012
- _window = window;
2013
- } catch (err) {}
2014
- if (_window) {
2015
- if (_window.IconifyPreload !== void 0) {
2016
- const preload = _window.IconifyPreload;
2017
- const err = "Invalid IconifyPreload syntax.";
2018
- if (typeof preload === "object" && preload !== null) {
2019
- (preload instanceof Array ? preload : [preload]).forEach(item => {
2020
- try {
2021
- if (
2022
- // Check if item is an object and not null/array
2023
- typeof item !== "object" || item === null || item instanceof Array ||
2024
- // Check for 'icons' and 'prefix'
2025
- typeof item.icons !== "object" || typeof item.prefix !== "string" ||
2026
- // Add icon set
2027
- !addCollection$1(item)) {
2028
- console.error(err);
2029
- }
2030
- } catch (e) {
2031
- console.error(err);
2032
- }
2033
- });
2034
- }
2035
- }
2036
- if (_window.IconifyProviders !== void 0) {
2037
- const providers = _window.IconifyProviders;
2038
- if (typeof providers === "object" && providers !== null) {
2039
- for (const key in providers) {
2040
- const err = "IconifyProviders[" + key + "] is invalid.";
2041
- try {
2042
- const value = providers[key];
2043
- if (typeof value !== "object" || !value || value.resources === void 0) {
2044
- continue;
2045
- }
2046
- if (!addAPIProvider$1(key, value)) {
2047
- console.error(err);
2048
- }
2049
- } catch (e) {
2050
- console.error(err);
2051
- }
2052
- }
2053
- }
2054
- }
2055
- }
2056
- const _api2 = {
2057
- getAPIConfig,
2058
- setAPIModule,
2059
- sendAPIQuery,
2060
- setFetch,
2061
- getFetch,
2062
- listAPIProviders
2063
- };
2064
- return {
2065
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
2066
- enableCache: /* @__PURE__ */__name(storage2 => {}, "enableCache"),
2067
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
2068
- disableCache: /* @__PURE__ */__name(storage2 => {}, "disableCache"),
2069
- iconLoaded: iconLoaded$1,
2070
- iconExists: iconLoaded$1,
2071
- // deprecated, kept to avoid breaking changes
2072
- getIcon: getIcon$1,
2073
- listIcons: listIcons$1,
2074
- addIcon: addIcon$1,
2075
- addCollection: addCollection$1,
2076
- calculateSize: calculateSize$1,
2077
- buildIcon: iconToSVG,
2078
- iconToHTML: iconToHTML$1,
2079
- svgToURL: svgToURL$1,
2080
- loadIcons: loadIcons$1,
2081
- loadIcon: loadIcon$1,
2082
- addAPIProvider: addAPIProvider$1,
2083
- setCustomIconLoader: setCustomIconLoader$1,
2084
- setCustomIconsLoader: setCustomIconsLoader$1,
2085
- appendCustomStyle,
2086
- _api: _api2
2087
- };
2088
- }
2089
- __name(exportFunctions, "exportFunctions");
2090
- var monotoneProps = {
2091
- "background-color": "currentColor"
2092
- };
2093
- var coloredProps = {
2094
- "background-color": "transparent"
2095
- };
2096
- var propsToAdd = {
2097
- image: "var(--svg)",
2098
- repeat: "no-repeat",
2099
- size: "100% 100%"
2100
- };
2101
- var propsToAddTo = {
2102
- "-webkit-mask": monotoneProps,
2103
- "mask": monotoneProps,
2104
- "background": coloredProps
2105
- };
2106
- for (const prefix2 in propsToAddTo) {
2107
- const list = propsToAddTo[prefix2];
2108
- for (const prop in propsToAdd) {
2109
- list[prefix2 + "-" + prop] = propsToAdd[prop];
2110
- }
2111
- }
2112
- function fixSize(value) {
2113
- return value ? value + (value.match(/^[-0-9.]+$/) ? "px" : "") : "inherit";
2114
- }
2115
- __name(fixSize, "fixSize");
2116
- function renderSPAN(data, icon, useMask) {
2117
- const node2 = document.createElement("span");
2118
- let body = data.body;
2119
- if (body.indexOf("<a") !== -1) {
2120
- body += "<!-- " + Date.now() + " -->";
2121
- }
2122
- const renderAttribs = data.attributes;
2123
- const html = iconToHTML$1(body, {
2124
- ...renderAttribs,
2125
- width: icon.width + "",
2126
- height: icon.height + ""
2127
- });
2128
- const url = svgToURL$1(html);
2129
- const svgStyle = node2.style;
2130
- const styles = {
2131
- "--svg": url,
2132
- "width": fixSize(renderAttribs.width),
2133
- "height": fixSize(renderAttribs.height),
2134
- ...(useMask ? monotoneProps : coloredProps)
2135
- };
2136
- for (const prop in styles) {
2137
- svgStyle.setProperty(prop, styles[prop]);
2138
- }
2139
- return node2;
2140
- }
2141
- __name(renderSPAN, "renderSPAN");
2142
- var policy;
2143
- function createPolicy() {
2144
- try {
2145
- policy = window.trustedTypes.createPolicy("iconify", {
2146
- // eslint-disable-next-line @typescript-eslint/no-unsafe-return
2147
- createHTML: /* @__PURE__ */__name(s => s, "createHTML")
2148
- });
2149
- } catch (err) {
2150
- policy = null;
2151
- }
2152
- }
2153
- __name(createPolicy, "createPolicy");
2154
- function cleanUpInnerHTML(html) {
2155
- if (policy === void 0) {
2156
- createPolicy();
2157
- }
2158
- return policy ? policy.createHTML(html) : html;
2159
- }
2160
- __name(cleanUpInnerHTML, "cleanUpInnerHTML");
2161
- function renderSVG(data) {
2162
- const node2 = document.createElement("span");
2163
- const attr = data.attributes;
2164
- let style = "";
2165
- if (!attr.width) {
2166
- style = "width: inherit;";
2167
- }
2168
- if (!attr.height) {
2169
- style += "height: inherit;";
2170
- }
2171
- if (style) {
2172
- attr.style = style;
2173
- }
2174
- const html = iconToHTML$1(data.body, attr);
2175
- node2.innerHTML = cleanUpInnerHTML(html);
2176
- return node2.firstChild;
2177
- }
2178
- __name(renderSVG, "renderSVG");
2179
- function findIconElement(parent) {
2180
- return Array.from(parent.childNodes).find(node2 => {
2181
- const tag = node2.tagName && node2.tagName.toUpperCase();
2182
- return tag === "SPAN" || tag === "SVG";
2183
- });
2184
- }
2185
- __name(findIconElement, "findIconElement");
2186
- function renderIcon(parent, state) {
2187
- const iconData = state.icon.data;
2188
- const customisations = state.customisations;
2189
- const renderData = iconToSVG(iconData, customisations);
2190
- if (customisations.preserveAspectRatio) {
2191
- renderData.attributes["preserveAspectRatio"] = customisations.preserveAspectRatio;
2192
- }
2193
- const mode = state.renderedMode;
2194
- let node2;
2195
- switch (mode) {
2196
- case "svg":
2197
- node2 = renderSVG(renderData);
2198
- break;
2199
- default:
2200
- node2 = renderSPAN(renderData, {
2201
- ...defaultIconProps,
2202
- ...iconData
2203
- }, mode === "mask");
2204
- }
2205
- const oldNode = findIconElement(parent);
2206
- if (oldNode) {
2207
- if (node2.tagName === "SPAN" && oldNode.tagName === node2.tagName) {
2208
- oldNode.setAttribute("style", node2.getAttribute("style"));
2209
- } else {
2210
- parent.replaceChild(node2, oldNode);
2211
- }
2212
- } else {
2213
- parent.appendChild(node2);
2214
- }
2215
- }
2216
- __name(renderIcon, "renderIcon");
2217
- function setPendingState(icon, inline, lastState) {
2218
- const lastRender = lastState && (lastState.rendered ? lastState : lastState.lastRender);
2219
- return {
2220
- rendered: false,
2221
- inline,
2222
- icon,
2223
- lastRender
2224
- };
2225
- }
2226
- __name(setPendingState, "setPendingState");
2227
- function defineIconifyIcon(name = "iconify-icon") {
2228
- let customElements;
2229
- let ParentClass;
2230
- try {
2231
- customElements = window.customElements;
2232
- ParentClass = window.HTMLElement;
2233
- } catch (err) {
2234
- return;
2235
- }
2236
- if (!customElements || !ParentClass) {
2237
- return;
2238
- }
2239
- const ConflictingClass = customElements.get(name);
2240
- if (ConflictingClass) {
2241
- return ConflictingClass;
2242
- }
2243
- const attributes = [
2244
- // Icon
2245
- "icon",
2246
- // Mode
2247
- "mode", "inline", "noobserver",
2248
- // Customisations
2249
- "width", "height", "rotate", "flip"];
2250
- const IconifyIcon = class extends ParentClass {
2251
- static {
2252
- __name(this, "IconifyIcon");
2253
- }
2254
- // Root
2255
- _shadowRoot;
2256
- // Initialised
2257
- _initialised = false;
2258
- // Icon state
2259
- _state;
2260
- // Attributes check queued
2261
- _checkQueued = false;
2262
- // Connected
2263
- _connected = false;
2264
- // Observer
2265
- _observer = null;
2266
- _visible = true;
2267
- /**
2268
- * Constructor
2269
- */
2270
- constructor() {
2271
- super();
2272
- const root = this._shadowRoot = this.attachShadow({
2273
- mode: "open"
2274
- });
2275
- const inline = this.hasAttribute("inline");
2276
- updateStyle(root, inline);
2277
- this._state = setPendingState({
2278
- value: ""
2279
- }, inline);
2280
- this._queueCheck();
2281
- }
2282
- /**
2283
- * Connected to DOM
2284
- */
2285
- connectedCallback() {
2286
- this._connected = true;
2287
- this.startObserver();
2288
- }
2289
- /**
2290
- * Disconnected from DOM
2291
- */
2292
- disconnectedCallback() {
2293
- this._connected = false;
2294
- this.stopObserver();
2295
- }
2296
- /**
2297
- * Observed attributes
2298
- */
2299
- static get observedAttributes() {
2300
- return attributes.slice(0);
2301
- }
2302
- /**
2303
- * Observed properties that are different from attributes
2304
- *
2305
- * Experimental! Need to test with various frameworks that support it
2306
- */
2307
- /*
2308
- static get properties() {
2309
- return {
2310
- inline: {
2311
- type: Boolean,
2312
- reflect: true,
2313
- },
2314
- // Not listing other attributes because they are strings or combination
2315
- // of string and another type. Cannot have multiple types
2316
- };
2317
- }
2318
- */
2319
- /**
2320
- * Attribute has changed
2321
- */
2322
- attributeChangedCallback(name2) {
2323
- switch (name2) {
2324
- case "inline":
2325
- {
2326
- const newInline = this.hasAttribute("inline");
2327
- const state = this._state;
2328
- if (newInline !== state.inline) {
2329
- state.inline = newInline;
2330
- updateStyle(this._shadowRoot, newInline);
2331
- }
2332
- break;
2333
- }
2334
- case "noobserver":
2335
- {
2336
- const value = this.hasAttribute("noobserver");
2337
- if (value) {
2338
- this.startObserver();
2339
- } else {
2340
- this.stopObserver();
2341
- }
2342
- break;
2343
- }
2344
- default:
2345
- this._queueCheck();
2346
- }
2347
- }
2348
- /**
2349
- * Get/set icon
2350
- */
2351
- get icon() {
2352
- const value = this.getAttribute("icon");
2353
- if (value && value.slice(0, 1) === "{") {
2354
- try {
2355
- return JSON.parse(value);
2356
- } catch (err) {}
2357
- }
2358
- return value;
2359
- }
2360
- set icon(value) {
2361
- if (typeof value === "object") {
2362
- value = JSON.stringify(value);
2363
- }
2364
- this.setAttribute("icon", value);
2365
- }
2366
- /**
2367
- * Get/set inline
2368
- */
2369
- get inline() {
2370
- return this.hasAttribute("inline");
2371
- }
2372
- set inline(value) {
2373
- if (value) {
2374
- this.setAttribute("inline", "true");
2375
- } else {
2376
- this.removeAttribute("inline");
2377
- }
2378
- }
2379
- /**
2380
- * Get/set observer
2381
- */
2382
- get observer() {
2383
- return this.hasAttribute("observer");
2384
- }
2385
- set observer(value) {
2386
- if (value) {
2387
- this.setAttribute("observer", "true");
2388
- } else {
2389
- this.removeAttribute("observer");
2390
- }
2391
- }
2392
- /**
2393
- * Restart animation
2394
- */
2395
- restartAnimation() {
2396
- const state = this._state;
2397
- if (state.rendered) {
2398
- const root = this._shadowRoot;
2399
- if (state.renderedMode === "svg") {
2400
- try {
2401
- root.lastChild.setCurrentTime(0);
2402
- return;
2403
- } catch (err) {}
2404
- }
2405
- renderIcon(root, state);
2406
- }
2407
- }
2408
- /**
2409
- * Get status
2410
- */
2411
- get status() {
2412
- const state = this._state;
2413
- return state.rendered ? "rendered" : state.icon.data === null ? "failed" : "loading";
2414
- }
2415
- /**
2416
- * Queue attributes re-check
2417
- */
2418
- _queueCheck() {
2419
- if (!this._checkQueued) {
2420
- this._checkQueued = true;
2421
- setTimeout(() => {
2422
- this._check();
2423
- });
2424
- }
2425
- }
2426
- /**
2427
- * Check for changes
2428
- */
2429
- _check() {
2430
- if (!this._checkQueued) {
2431
- return;
2432
- }
2433
- this._checkQueued = false;
2434
- const state = this._state;
2435
- const newIcon = this.getAttribute("icon");
2436
- if (newIcon !== state.icon.value) {
2437
- this._iconChanged(newIcon);
2438
- return;
2439
- }
2440
- if (!state.rendered || !this._visible) {
2441
- return;
2442
- }
2443
- const mode = this.getAttribute("mode");
2444
- const customisations = getCustomisations(this);
2445
- if (state.attrMode !== mode || haveCustomisationsChanged(state.customisations, customisations) || !findIconElement(this._shadowRoot)) {
2446
- this._renderIcon(state.icon, customisations, mode);
2447
- }
2448
- }
2449
- /**
2450
- * Icon value has changed
2451
- */
2452
- _iconChanged(newValue) {
2453
- const icon = parseIconValue(newValue, (value, name2, data) => {
2454
- const state = this._state;
2455
- if (state.rendered || this.getAttribute("icon") !== value) {
2456
- return;
2457
- }
2458
- const icon2 = {
2459
- value,
2460
- name: name2,
2461
- data
2462
- };
2463
- if (icon2.data) {
2464
- this._gotIconData(icon2);
2465
- } else {
2466
- state.icon = icon2;
2467
- }
2468
- });
2469
- if (icon.data) {
2470
- this._gotIconData(icon);
2471
- } else {
2472
- this._state = setPendingState(icon, this._state.inline, this._state);
2473
- }
2474
- }
2475
- /**
2476
- * Force render icon on state change
2477
- */
2478
- _forceRender() {
2479
- if (!this._visible) {
2480
- const node2 = findIconElement(this._shadowRoot);
2481
- if (node2) {
2482
- this._shadowRoot.removeChild(node2);
2483
- }
2484
- return;
2485
- }
2486
- this._queueCheck();
2487
- }
2488
- /**
2489
- * Got new icon data, icon is ready to (re)render
2490
- */
2491
- _gotIconData(icon) {
2492
- this._checkQueued = false;
2493
- this._renderIcon(icon, getCustomisations(this), this.getAttribute("mode"));
2494
- }
2495
- /**
2496
- * Re-render based on icon data
2497
- */
2498
- _renderIcon(icon, customisations, attrMode) {
2499
- const renderedMode = getRenderMode(icon.data.body, attrMode);
2500
- const inline = this._state.inline;
2501
- renderIcon(this._shadowRoot, this._state = {
2502
- rendered: true,
2503
- icon,
2504
- inline,
2505
- customisations,
2506
- attrMode,
2507
- renderedMode
2508
- });
2509
- }
2510
- /**
2511
- * Start observer
2512
- */
2513
- startObserver() {
2514
- if (!this._observer && !this.hasAttribute("noobserver")) {
2515
- try {
2516
- this._observer = new IntersectionObserver(entries => {
2517
- const intersecting = entries.some(entry => entry.isIntersecting);
2518
- if (intersecting !== this._visible) {
2519
- this._visible = intersecting;
2520
- this._forceRender();
2521
- }
2522
- });
2523
- this._observer.observe(this);
2524
- } catch (err) {
2525
- if (this._observer) {
2526
- try {
2527
- this._observer.disconnect();
2528
- } catch (err2) {}
2529
- this._observer = null;
2530
- }
2531
- }
2532
- }
2533
- }
2534
- /**
2535
- * Stop observer
2536
- */
2537
- stopObserver() {
2538
- if (this._observer) {
2539
- this._observer.disconnect();
2540
- this._observer = null;
2541
- this._visible = true;
2542
- if (this._connected) {
2543
- this._forceRender();
2544
- }
2545
- }
2546
- }
2547
- };
2548
- attributes.forEach(attr => {
2549
- if (!(attr in IconifyIcon.prototype)) {
2550
- Object.defineProperty(IconifyIcon.prototype, attr, {
2551
- get: /* @__PURE__ */__name(function () {
2552
- return this.getAttribute(attr);
2553
- }, "get"),
2554
- set: /* @__PURE__ */__name(function (value) {
2555
- if (value !== null) {
2556
- this.setAttribute(attr, value);
2557
- } else {
2558
- this.removeAttribute(attr);
2559
- }
2560
- }, "set")
2561
- });
2562
- }
2563
- });
2564
- const functions = exportFunctions();
2565
- for (const key in functions) {
2566
- IconifyIcon[key] = IconifyIcon.prototype[key] = functions[key];
2567
- }
2568
- customElements.define(name, IconifyIcon);
2569
- return IconifyIcon;
2570
- }
2571
- __name(defineIconifyIcon, "defineIconifyIcon");
2572
- var IconifyIconComponent = defineIconifyIcon() || exportFunctions();
2573
- var {
2574
- enableCache,
2575
- disableCache,
2576
- iconLoaded,
2577
- iconExists,
2578
- // deprecated, kept to avoid breaking changes
2579
- getIcon,
2580
- listIcons,
2581
- addIcon,
2582
- addCollection,
2583
- calculateSize,
2584
- buildIcon,
2585
- iconToHTML,
2586
- svgToURL,
2587
- loadIcons,
2588
- loadIcon,
2589
- setCustomIconLoader,
2590
- setCustomIconsLoader,
2591
- addAPIProvider,
2592
- _api
2593
- } = IconifyIconComponent;
2594
-
2595
- // ../../node_modules/.pnpm/@iconify-icon+react@2.3.0_react@19.2.1/node_modules/@iconify-icon/react/dist/iconify.mjs
2596
- var Icon = import_react.default.forwardRef((props, ref) => {
2597
- const newProps = {
2598
- ...props,
2599
- ref
2600
- };
2601
- if (typeof props.icon === "object") {
2602
- newProps.icon = JSON.stringify(props.icon);
2603
- }
2604
- if (!props.inline) {
2605
- delete newProps.inline;
2606
- }
2607
- if (props.className) {
2608
- newProps["class"] = props.className;
2609
- }
2610
- return import_react.default.createElement("iconify-icon", newProps);
2611
- });
2612
-
2613
- // ../react-icons/src/Icon.tsx
2614
- var React3 = __toESM(require("react"), 1);
2615
- var Icon2 = /* @__PURE__ */React3.forwardRef((props, ref) => {
2616
- return /* @__PURE__ */React3.createElement(Icon, {
2617
- ref,
2618
- "data-testid": "iconify-icon",
2619
- ...props
2620
- });
2621
- });
2622
- Icon2.displayName = "Icon";
2623
-
2624
- // ../ui/src/components/Button.tsx
2625
- var React8 = __toESM(require("react"), 1);
2626
-
2627
- // ../../node_modules/.pnpm/@emotion+react@11.14.0_@types+react@19.2.7_react@19.2.1/node_modules/@emotion/react/dist/emotion-element-d59e098f.esm.js
2628
- var React5 = __toESM(require("react"));
2629
- var import_react4 = require("react");
2630
-
2631
- // ../../node_modules/.pnpm/@emotion+sheet@1.4.0/node_modules/@emotion/sheet/dist/emotion-sheet.esm.js
2632
- var isDevelopment = false;
2633
- function sheetForTag(tag) {
2634
- if (tag.sheet) {
2635
- return tag.sheet;
2636
- }
2637
- for (var i = 0; i < document.styleSheets.length; i++) {
2638
- if (document.styleSheets[i].ownerNode === tag) {
2639
- return document.styleSheets[i];
2640
- }
2641
- }
2642
- return void 0;
2643
- }
2644
- __name(sheetForTag, "sheetForTag");
2645
- function createStyleElement(options) {
2646
- var tag = document.createElement("style");
2647
- tag.setAttribute("data-emotion", options.key);
2648
- if (options.nonce !== void 0) {
2649
- tag.setAttribute("nonce", options.nonce);
2650
- }
2651
- tag.appendChild(document.createTextNode(""));
2652
- tag.setAttribute("data-s", "");
2653
- return tag;
2654
- }
2655
- __name(createStyleElement, "createStyleElement");
2656
- var StyleSheet = /* @__PURE__ */function () {
2657
- function StyleSheet2(options) {
2658
- var _this = this;
2659
- this._insertTag = function (tag) {
2660
- var before;
2661
- if (_this.tags.length === 0) {
2662
- if (_this.insertionPoint) {
2663
- before = _this.insertionPoint.nextSibling;
2664
- } else if (_this.prepend) {
2665
- before = _this.container.firstChild;
2666
- } else {
2667
- before = _this.before;
2668
- }
2669
- } else {
2670
- before = _this.tags[_this.tags.length - 1].nextSibling;
2671
- }
2672
- _this.container.insertBefore(tag, before);
2673
- _this.tags.push(tag);
2674
- };
2675
- this.isSpeedy = options.speedy === void 0 ? !isDevelopment : options.speedy;
2676
- this.tags = [];
2677
- this.ctr = 0;
2678
- this.nonce = options.nonce;
2679
- this.key = options.key;
2680
- this.container = options.container;
2681
- this.prepend = options.prepend;
2682
- this.insertionPoint = options.insertionPoint;
2683
- this.before = null;
2684
- }
2685
- __name(StyleSheet2, "StyleSheet");
2686
- var _proto = StyleSheet2.prototype;
2687
- _proto.hydrate = /* @__PURE__ */__name(function hydrate(nodes) {
2688
- nodes.forEach(this._insertTag);
2689
- }, "hydrate");
2690
- _proto.insert = /* @__PURE__ */__name(function insert(rule) {
2691
- if (this.ctr % (this.isSpeedy ? 65e3 : 1) === 0) {
2692
- this._insertTag(createStyleElement(this));
2693
- }
2694
- var tag = this.tags[this.tags.length - 1];
2695
- if (this.isSpeedy) {
2696
- var sheet = sheetForTag(tag);
2697
- try {
2698
- sheet.insertRule(rule, sheet.cssRules.length);
2699
- } catch (e) {}
2700
- } else {
2701
- tag.appendChild(document.createTextNode(rule));
2702
- }
2703
- this.ctr++;
2704
- }, "insert");
2705
- _proto.flush = /* @__PURE__ */__name(function flush() {
2706
- this.tags.forEach(function (tag) {
2707
- var _tag$parentNode;
2708
- return (_tag$parentNode = tag.parentNode) == null ? void 0 : _tag$parentNode.removeChild(tag);
2709
- });
2710
- this.tags = [];
2711
- this.ctr = 0;
2712
- }, "flush");
2713
- return StyleSheet2;
2714
- }();
2715
-
2716
- // ../../node_modules/.pnpm/stylis@4.2.0/node_modules/stylis/src/Enum.js
2717
- var MS = "-ms-";
2718
- var MOZ = "-moz-";
2719
- var WEBKIT = "-webkit-";
2720
- var COMMENT = "comm";
2721
- var RULESET = "rule";
2722
- var DECLARATION = "decl";
2723
- var IMPORT = "@import";
2724
- var KEYFRAMES = "@keyframes";
2725
- var LAYER = "@layer";
2726
-
2727
- // ../../node_modules/.pnpm/stylis@4.2.0/node_modules/stylis/src/Utility.js
2728
- var abs = Math.abs;
2729
- var from = String.fromCharCode;
2730
- var assign = Object.assign;
2731
- function hash(value, length2) {
2732
- return charat(value, 0) ^ 45 ? (((length2 << 2 ^ charat(value, 0)) << 2 ^ charat(value, 1)) << 2 ^ charat(value, 2)) << 2 ^ charat(value, 3) : 0;
2733
- }
2734
- __name(hash, "hash");
2735
- function trim(value) {
2736
- return value.trim();
2737
- }
2738
- __name(trim, "trim");
2739
- function match(value, pattern) {
2740
- return (value = pattern.exec(value)) ? value[0] : value;
2741
- }
2742
- __name(match, "match");
2743
- function replace(value, pattern, replacement) {
2744
- return value.replace(pattern, replacement);
2745
- }
2746
- __name(replace, "replace");
2747
- function indexof(value, search) {
2748
- return value.indexOf(search);
2749
- }
2750
- __name(indexof, "indexof");
2751
- function charat(value, index) {
2752
- return value.charCodeAt(index) | 0;
2753
- }
2754
- __name(charat, "charat");
2755
- function substr(value, begin, end) {
2756
- return value.slice(begin, end);
2757
- }
2758
- __name(substr, "substr");
2759
- function strlen(value) {
2760
- return value.length;
2761
- }
2762
- __name(strlen, "strlen");
2763
- function sizeof(value) {
2764
- return value.length;
2765
- }
2766
- __name(sizeof, "sizeof");
2767
- function append(value, array) {
2768
- return array.push(value), value;
2769
- }
2770
- __name(append, "append");
2771
- function combine(array, callback) {
2772
- return array.map(callback).join("");
2773
- }
2774
- __name(combine, "combine");
2775
-
2776
- // ../../node_modules/.pnpm/stylis@4.2.0/node_modules/stylis/src/Tokenizer.js
2777
- var line = 1;
2778
- var column = 1;
2779
- var length = 0;
2780
- var position = 0;
2781
- var character = 0;
2782
- var characters = "";
2783
- function node(value, root, parent, type, props, children, length2) {
2784
- return {
2785
- value,
2786
- root,
2787
- parent,
2788
- type,
2789
- props,
2790
- children,
2791
- line,
2792
- column,
2793
- length: length2,
2794
- return: ""
2795
- };
2796
- }
2797
- __name(node, "node");
2798
- function copy(root, props) {
2799
- return assign(node("", null, null, "", null, null, 0), root, {
2800
- length: -root.length
2801
- }, props);
2802
- }
2803
- __name(copy, "copy");
2804
- function char() {
2805
- return character;
2806
- }
2807
- __name(char, "char");
2808
- function prev() {
2809
- character = position > 0 ? charat(characters, --position) : 0;
2810
- if (column--, character === 10) column = 1, line--;
2811
- return character;
2812
- }
2813
- __name(prev, "prev");
2814
- function next() {
2815
- character = position < length ? charat(characters, position++) : 0;
2816
- if (column++, character === 10) column = 1, line++;
2817
- return character;
2818
- }
2819
- __name(next, "next");
2820
- function peek() {
2821
- return charat(characters, position);
2822
- }
2823
- __name(peek, "peek");
2824
- function caret() {
2825
- return position;
2826
- }
2827
- __name(caret, "caret");
2828
- function slice(begin, end) {
2829
- return substr(characters, begin, end);
2830
- }
2831
- __name(slice, "slice");
2832
- function token(type) {
2833
- switch (type) {
2834
- // \0 \t \n \r \s whitespace token
2835
- case 0:
2836
- case 9:
2837
- case 10:
2838
- case 13:
2839
- case 32:
2840
- return 5;
2841
- // ! + , / > @ ~ isolate token
2842
- case 33:
2843
- case 43:
2844
- case 44:
2845
- case 47:
2846
- case 62:
2847
- case 64:
2848
- case 126:
2849
- // ; { } breakpoint token
2850
- case 59:
2851
- case 123:
2852
- case 125:
2853
- return 4;
2854
- // : accompanied token
2855
- case 58:
2856
- return 3;
2857
- // " ' ( [ opening delimit token
2858
- case 34:
2859
- case 39:
2860
- case 40:
2861
- case 91:
2862
- return 2;
2863
- // ) ] closing delimit token
2864
- case 41:
2865
- case 93:
2866
- return 1;
2867
- }
2868
- return 0;
2869
- }
2870
- __name(token, "token");
2871
- function alloc(value) {
2872
- return line = column = 1, length = strlen(characters = value), position = 0, [];
2873
- }
2874
- __name(alloc, "alloc");
2875
- function dealloc(value) {
2876
- return characters = "", value;
2877
- }
2878
- __name(dealloc, "dealloc");
2879
- function delimit(type) {
2880
- return trim(slice(position - 1, delimiter(type === 91 ? type + 2 : type === 40 ? type + 1 : type)));
2881
- }
2882
- __name(delimit, "delimit");
2883
- function whitespace(type) {
2884
- while (character = peek()) if (character < 33) next();else break;
2885
- return token(type) > 2 || token(character) > 3 ? "" : " ";
2886
- }
2887
- __name(whitespace, "whitespace");
2888
- function escaping(index, count) {
2889
- while (--count && next()) if (character < 48 || character > 102 || character > 57 && character < 65 || character > 70 && character < 97) break;
2890
- return slice(index, caret() + (count < 6 && peek() == 32 && next() == 32));
2891
- }
2892
- __name(escaping, "escaping");
2893
- function delimiter(type) {
2894
- while (next()) switch (character) {
2895
- // ] ) " '
2896
- case type:
2897
- return position;
2898
- // " '
2899
- case 34:
2900
- case 39:
2901
- if (type !== 34 && type !== 39) delimiter(character);
2902
- break;
2903
- // (
2904
- case 40:
2905
- if (type === 41) delimiter(type);
2906
- break;
2907
- // \
2908
- case 92:
2909
- next();
2910
- break;
2911
- }
2912
- return position;
2913
- }
2914
- __name(delimiter, "delimiter");
2915
- function commenter(type, index) {
2916
- while (next()) if (type + character === 47 + 10) break;else if (type + character === 42 + 42 && peek() === 47) break;
2917
- return "/*" + slice(index, position - 1) + "*" + from(type === 47 ? type : next());
2918
- }
2919
- __name(commenter, "commenter");
2920
- function identifier(index) {
2921
- while (!token(peek())) next();
2922
- return slice(index, position);
2923
- }
2924
- __name(identifier, "identifier");
2925
-
2926
- // ../../node_modules/.pnpm/stylis@4.2.0/node_modules/stylis/src/Parser.js
2927
- function compile(value) {
2928
- return dealloc(parse("", null, null, null, [""], value = alloc(value), 0, [0], value));
2929
- }
2930
- __name(compile, "compile");
2931
- function parse(value, root, parent, rule, rules, rulesets, pseudo, points, declarations) {
2932
- var index = 0;
2933
- var offset = 0;
2934
- var length2 = pseudo;
2935
- var atrule = 0;
2936
- var property = 0;
2937
- var previous = 0;
2938
- var variable = 1;
2939
- var scanning = 1;
2940
- var ampersand = 1;
2941
- var character2 = 0;
2942
- var type = "";
2943
- var props = rules;
2944
- var children = rulesets;
2945
- var reference = rule;
2946
- var characters2 = type;
2947
- while (scanning) switch (previous = character2, character2 = next()) {
2948
- // (
2949
- case 40:
2950
- if (previous != 108 && charat(characters2, length2 - 1) == 58) {
2951
- if (indexof(characters2 += replace(delimit(character2), "&", "&\f"), "&\f") != -1) ampersand = -1;
2952
- break;
2953
- }
2954
- // " ' [
2955
- case 34:
2956
- case 39:
2957
- case 91:
2958
- characters2 += delimit(character2);
2959
- break;
2960
- // \t \n \r \s
2961
- case 9:
2962
- case 10:
2963
- case 13:
2964
- case 32:
2965
- characters2 += whitespace(previous);
2966
- break;
2967
- // \
2968
- case 92:
2969
- characters2 += escaping(caret() - 1, 7);
2970
- continue;
2971
- // /
2972
- case 47:
2973
- switch (peek()) {
2974
- case 42:
2975
- case 47:
2976
- append(comment(commenter(next(), caret()), root, parent), declarations);
2977
- break;
2978
- default:
2979
- characters2 += "/";
2980
- }
2981
- break;
2982
- // {
2983
- case 123 * variable:
2984
- points[index++] = strlen(characters2) * ampersand;
2985
- // } ; \0
2986
- case 125 * variable:
2987
- case 59:
2988
- case 0:
2989
- switch (character2) {
2990
- // \0 }
2991
- case 0:
2992
- case 125:
2993
- scanning = 0;
2994
- // ;
2995
- case 59 + offset:
2996
- if (ampersand == -1) characters2 = replace(characters2, /\f/g, "");
2997
- if (property > 0 && strlen(characters2) - length2) append(property > 32 ? declaration(characters2 + ";", rule, parent, length2 - 1) : declaration(replace(characters2, " ", "") + ";", rule, parent, length2 - 2), declarations);
2998
- break;
2999
- // @ ;
3000
- case 59:
3001
- characters2 += ";";
3002
- // { rule/at-rule
3003
- default:
3004
- append(reference = ruleset(characters2, root, parent, index, offset, rules, points, type, props = [], children = [], length2), rulesets);
3005
- if (character2 === 123) if (offset === 0) parse(characters2, root, reference, reference, props, rulesets, length2, points, children);else switch (atrule === 99 && charat(characters2, 3) === 110 ? 100 : atrule) {
3006
- // d l m s
3007
- case 100:
3008
- case 108:
3009
- case 109:
3010
- case 115:
3011
- parse(value, reference, reference, rule && append(ruleset(value, reference, reference, 0, 0, rules, points, type, rules, props = [], length2), children), rules, children, length2, points, rule ? props : children);
3012
- break;
3013
- default:
3014
- parse(characters2, reference, reference, reference, [""], children, 0, points, children);
3015
- }
3016
- }
3017
- index = offset = property = 0, variable = ampersand = 1, type = characters2 = "", length2 = pseudo;
3018
- break;
3019
- // :
3020
- case 58:
3021
- length2 = 1 + strlen(characters2), property = previous;
3022
- default:
3023
- if (variable < 1) {
3024
- if (character2 == 123) --variable;else if (character2 == 125 && variable++ == 0 && prev() == 125) continue;
3025
- }
3026
- switch (characters2 += from(character2), character2 * variable) {
3027
- // &
3028
- case 38:
3029
- ampersand = offset > 0 ? 1 : (characters2 += "\f", -1);
3030
- break;
3031
- // ,
3032
- case 44:
3033
- points[index++] = (strlen(characters2) - 1) * ampersand, ampersand = 1;
3034
- break;
3035
- // @
3036
- case 64:
3037
- if (peek() === 45) characters2 += delimit(next());
3038
- atrule = peek(), offset = length2 = strlen(type = characters2 += identifier(caret())), character2++;
3039
- break;
3040
- // -
3041
- case 45:
3042
- if (previous === 45 && strlen(characters2) == 2) variable = 0;
3043
- }
3044
- }
3045
- return rulesets;
3046
- }
3047
- __name(parse, "parse");
3048
- function ruleset(value, root, parent, index, offset, rules, points, type, props, children, length2) {
3049
- var post = offset - 1;
3050
- var rule = offset === 0 ? rules : [""];
3051
- var size = sizeof(rule);
3052
- for (var i = 0, j = 0, k = 0; i < index; ++i) for (var x = 0, y = substr(value, post + 1, post = abs(j = points[i])), z = value; x < size; ++x) if (z = trim(j > 0 ? rule[x] + " " + y : replace(y, /&\f/g, rule[x]))) props[k++] = z;
3053
- return node(value, root, parent, offset === 0 ? RULESET : type, props, children, length2);
3054
- }
3055
- __name(ruleset, "ruleset");
3056
- function comment(value, root, parent) {
3057
- return node(value, root, parent, COMMENT, from(char()), substr(value, 2, -2), 0);
3058
- }
3059
- __name(comment, "comment");
3060
- function declaration(value, root, parent, length2) {
3061
- return node(value, root, parent, DECLARATION, substr(value, 0, length2), substr(value, length2 + 1, -1), length2);
3062
- }
3063
- __name(declaration, "declaration");
3064
-
3065
- // ../../node_modules/.pnpm/stylis@4.2.0/node_modules/stylis/src/Serializer.js
3066
- function serialize(children, callback) {
3067
- var output = "";
3068
- var length2 = sizeof(children);
3069
- for (var i = 0; i < length2; i++) output += callback(children[i], i, children, callback) || "";
3070
- return output;
3071
- }
3072
- __name(serialize, "serialize");
3073
- function stringify(element, index, children, callback) {
3074
- switch (element.type) {
3075
- case LAYER:
3076
- if (element.children.length) break;
3077
- case IMPORT:
3078
- case DECLARATION:
3079
- return element.return = element.return || element.value;
3080
- case COMMENT:
3081
- return "";
3082
- case KEYFRAMES:
3083
- return element.return = element.value + "{" + serialize(element.children, callback) + "}";
3084
- case RULESET:
3085
- element.value = element.props.join(",");
3086
- }
3087
- return strlen(children = serialize(element.children, callback)) ? element.return = element.value + "{" + children + "}" : "";
3088
- }
3089
- __name(stringify, "stringify");
3090
-
3091
- // ../../node_modules/.pnpm/stylis@4.2.0/node_modules/stylis/src/Middleware.js
3092
- function middleware(collection) {
3093
- var length2 = sizeof(collection);
3094
- return function (element, index, children, callback) {
3095
- var output = "";
3096
- for (var i = 0; i < length2; i++) output += collection[i](element, index, children, callback) || "";
3097
- return output;
3098
- };
3099
- }
3100
- __name(middleware, "middleware");
3101
- function rulesheet(callback) {
3102
- return function (element) {
3103
- if (!element.root) {
3104
- if (element = element.return) callback(element);
3105
- }
3106
- };
3107
- }
3108
- __name(rulesheet, "rulesheet");
3109
-
3110
- // ../../node_modules/.pnpm/@emotion+weak-memoize@0.4.0/node_modules/@emotion/weak-memoize/dist/emotion-weak-memoize.esm.js
3111
- var weakMemoize = /* @__PURE__ */__name(function weakMemoize2(func) {
3112
- var cache = /* @__PURE__ */new WeakMap();
3113
- return function (arg) {
3114
- if (cache.has(arg)) {
3115
- return cache.get(arg);
3116
- }
3117
- var ret = func(arg);
3118
- cache.set(arg, ret);
3119
- return ret;
3120
- };
3121
- }, "weakMemoize");
3122
-
3123
- // ../../node_modules/.pnpm/@emotion+memoize@0.9.0/node_modules/@emotion/memoize/dist/emotion-memoize.esm.js
3124
- function memoize(fn) {
3125
- var cache = /* @__PURE__ */Object.create(null);
3126
- return function (arg) {
3127
- if (cache[arg] === void 0) cache[arg] = fn(arg);
3128
- return cache[arg];
3129
- };
3130
- }
3131
- __name(memoize, "memoize");
3132
-
3133
- // ../../node_modules/.pnpm/@emotion+cache@11.14.0/node_modules/@emotion/cache/dist/emotion-cache.esm.js
3134
- var isBrowser = typeof document !== "undefined";
3135
- var identifierWithPointTracking = /* @__PURE__ */__name(function identifierWithPointTracking2(begin, points, index) {
3136
- var previous = 0;
3137
- var character2 = 0;
3138
- while (true) {
3139
- previous = character2;
3140
- character2 = peek();
3141
- if (previous === 38 && character2 === 12) {
3142
- points[index] = 1;
3143
- }
3144
- if (token(character2)) {
3145
- break;
3146
- }
3147
- next();
3148
- }
3149
- return slice(begin, position);
3150
- }, "identifierWithPointTracking");
3151
- var toRules = /* @__PURE__ */__name(function toRules2(parsed, points) {
3152
- var index = -1;
3153
- var character2 = 44;
3154
- do {
3155
- switch (token(character2)) {
3156
- case 0:
3157
- if (character2 === 38 && peek() === 12) {
3158
- points[index] = 1;
3159
- }
3160
- parsed[index] += identifierWithPointTracking(position - 1, points, index);
3161
- break;
3162
- case 2:
3163
- parsed[index] += delimit(character2);
3164
- break;
3165
- case 4:
3166
- if (character2 === 44) {
3167
- parsed[++index] = peek() === 58 ? "&\f" : "";
3168
- points[index] = parsed[index].length;
3169
- break;
3170
- }
3171
- // fallthrough
3172
- default:
3173
- parsed[index] += from(character2);
3174
- }
3175
- } while (character2 = next());
3176
- return parsed;
3177
- }, "toRules");
3178
- var getRules = /* @__PURE__ */__name(function getRules2(value, points) {
3179
- return dealloc(toRules(alloc(value), points));
3180
- }, "getRules");
3181
- var fixedElements = /* @__PURE__ */new WeakMap();
3182
- var compat = /* @__PURE__ */__name(function compat2(element) {
3183
- if (element.type !== "rule" || !element.parent ||
3184
- // positive .length indicates that this rule contains pseudo
3185
- // negative .length indicates that this rule has been already prefixed
3186
- element.length < 1) {
3187
- return;
3188
- }
3189
- var value = element.value;
3190
- var parent = element.parent;
3191
- var isImplicitRule = element.column === parent.column && element.line === parent.line;
3192
- while (parent.type !== "rule") {
3193
- parent = parent.parent;
3194
- if (!parent) return;
3195
- }
3196
- if (element.props.length === 1 && value.charCodeAt(0) !== 58 && !fixedElements.get(parent)) {
3197
- return;
3198
- }
3199
- if (isImplicitRule) {
3200
- return;
3201
- }
3202
- fixedElements.set(element, true);
3203
- var points = [];
3204
- var rules = getRules(value, points);
3205
- var parentRules = parent.props;
3206
- for (var i = 0, k = 0; i < rules.length; i++) {
3207
- for (var j = 0; j < parentRules.length; j++, k++) {
3208
- element.props[k] = points[i] ? rules[i].replace(/&\f/g, parentRules[j]) : parentRules[j] + " " + rules[i];
3209
- }
3210
- }
3211
- }, "compat");
3212
- var removeLabel = /* @__PURE__ */__name(function removeLabel2(element) {
3213
- if (element.type === "decl") {
3214
- var value = element.value;
3215
- if (value.charCodeAt(0) === 108 &&
3216
- // charcode for b
3217
- value.charCodeAt(2) === 98) {
3218
- element["return"] = "";
3219
- element.value = "";
3220
- }
3221
- }
3222
- }, "removeLabel");
3223
- function prefix(value, length2) {
3224
- switch (hash(value, length2)) {
3225
- // color-adjust
3226
- case 5103:
3227
- return WEBKIT + "print-" + value + value;
3228
- // animation, animation-(delay|direction|duration|fill-mode|iteration-count|name|play-state|timing-function)
3229
- case 5737:
3230
- case 4201:
3231
- case 3177:
3232
- case 3433:
3233
- case 1641:
3234
- case 4457:
3235
- case 2921:
3236
- case 5572:
3237
- case 6356:
3238
- case 5844:
3239
- case 3191:
3240
- case 6645:
3241
- case 3005:
3242
- case 6391:
3243
- case 5879:
3244
- case 5623:
3245
- case 6135:
3246
- case 4599:
3247
- case 4855:
3248
- case 4215:
3249
- case 6389:
3250
- case 5109:
3251
- case 5365:
3252
- case 5621:
3253
- case 3829:
3254
- return WEBKIT + value + value;
3255
- // appearance, user-select, transform, hyphens, text-size-adjust
3256
- case 5349:
3257
- case 4246:
3258
- case 4810:
3259
- case 6968:
3260
- case 2756:
3261
- return WEBKIT + value + MOZ + value + MS + value + value;
3262
- // flex, flex-direction
3263
- case 6828:
3264
- case 4268:
3265
- return WEBKIT + value + MS + value + value;
3266
- // order
3267
- case 6165:
3268
- return WEBKIT + value + MS + "flex-" + value + value;
3269
- // align-items
3270
- case 5187:
3271
- return WEBKIT + value + replace(value, /(\w+).+(:[^]+)/, WEBKIT + "box-$1$2" + MS + "flex-$1$2") + value;
3272
- // align-self
3273
- case 5443:
3274
- return WEBKIT + value + MS + "flex-item-" + replace(value, /flex-|-self/, "") + value;
3275
- // align-content
3276
- case 4675:
3277
- return WEBKIT + value + MS + "flex-line-pack" + replace(value, /align-content|flex-|-self/, "") + value;
3278
- // flex-shrink
3279
- case 5548:
3280
- return WEBKIT + value + MS + replace(value, "shrink", "negative") + value;
3281
- // flex-basis
3282
- case 5292:
3283
- return WEBKIT + value + MS + replace(value, "basis", "preferred-size") + value;
3284
- // flex-grow
3285
- case 6060:
3286
- return WEBKIT + "box-" + replace(value, "-grow", "") + WEBKIT + value + MS + replace(value, "grow", "positive") + value;
3287
- // transition
3288
- case 4554:
3289
- return WEBKIT + replace(value, /([^-])(transform)/g, "$1" + WEBKIT + "$2") + value;
3290
- // cursor
3291
- case 6187:
3292
- return replace(replace(replace(value, /(zoom-|grab)/, WEBKIT + "$1"), /(image-set)/, WEBKIT + "$1"), value, "") + value;
3293
- // background, background-image
3294
- case 5495:
3295
- case 3959:
3296
- return replace(value, /(image-set\([^]*)/, WEBKIT + "$1$`$1");
3297
- // justify-content
3298
- case 4968:
3299
- return replace(replace(value, /(.+:)(flex-)?(.*)/, WEBKIT + "box-pack:$3" + MS + "flex-pack:$3"), /s.+-b[^;]+/, "justify") + WEBKIT + value + value;
3300
- // (margin|padding)-inline-(start|end)
3301
- case 4095:
3302
- case 3583:
3303
- case 4068:
3304
- case 2532:
3305
- return replace(value, /(.+)-inline(.+)/, WEBKIT + "$1$2") + value;
3306
- // (min|max)?(width|height|inline-size|block-size)
3307
- case 8116:
3308
- case 7059:
3309
- case 5753:
3310
- case 5535:
3311
- case 5445:
3312
- case 5701:
3313
- case 4933:
3314
- case 4677:
3315
- case 5533:
3316
- case 5789:
3317
- case 5021:
3318
- case 4765:
3319
- if (strlen(value) - 1 - length2 > 6) switch (charat(value, length2 + 1)) {
3320
- // (m)ax-content, (m)in-content
3321
- case 109:
3322
- if (charat(value, length2 + 4) !== 45) break;
3323
- // (f)ill-available, (f)it-content
3324
- case 102:
3325
- return replace(value, /(.+:)(.+)-([^]+)/, "$1" + WEBKIT + "$2-$3$1" + MOZ + (charat(value, length2 + 3) == 108 ? "$3" : "$2-$3")) + value;
3326
- // (s)tretch
3327
- case 115:
3328
- return ~indexof(value, "stretch") ? prefix(replace(value, "stretch", "fill-available"), length2) + value : value;
3329
- }
3330
- break;
3331
- // position: sticky
3332
- case 4949:
3333
- if (charat(value, length2 + 1) !== 115) break;
3334
- // display: (flex|inline-flex)
3335
- case 6444:
3336
- switch (charat(value, strlen(value) - 3 - (~indexof(value, "!important") && 10))) {
3337
- // stic(k)y
3338
- case 107:
3339
- return replace(value, ":", ":" + WEBKIT) + value;
3340
- // (inline-)?fl(e)x
3341
- case 101:
3342
- return replace(value, /(.+:)([^;!]+)(;|!.+)?/, "$1" + WEBKIT + (charat(value, 14) === 45 ? "inline-" : "") + "box$3$1" + WEBKIT + "$2$3$1" + MS + "$2box$3") + value;
3343
- }
3344
- break;
3345
- // writing-mode
3346
- case 5936:
3347
- switch (charat(value, length2 + 11)) {
3348
- // vertical-l(r)
3349
- case 114:
3350
- return WEBKIT + value + MS + replace(value, /[svh]\w+-[tblr]{2}/, "tb") + value;
3351
- // vertical-r(l)
3352
- case 108:
3353
- return WEBKIT + value + MS + replace(value, /[svh]\w+-[tblr]{2}/, "tb-rl") + value;
3354
- // horizontal(-)tb
3355
- case 45:
3356
- return WEBKIT + value + MS + replace(value, /[svh]\w+-[tblr]{2}/, "lr") + value;
3357
- }
3358
- return WEBKIT + value + MS + value + value;
3359
- }
3360
- return value;
3361
- }
3362
- __name(prefix, "prefix");
3363
- var prefixer = /* @__PURE__ */__name(function prefixer2(element, index, children, callback) {
3364
- if (element.length > -1) {
3365
- if (!element["return"]) switch (element.type) {
3366
- case DECLARATION:
3367
- element["return"] = prefix(element.value, element.length);
3368
- break;
3369
- case KEYFRAMES:
3370
- return serialize([copy(element, {
3371
- value: replace(element.value, "@", "@" + WEBKIT)
3372
- })], callback);
3373
- case RULESET:
3374
- if (element.length) return combine(element.props, function (value) {
3375
- switch (match(value, /(::plac\w+|:read-\w+)/)) {
3376
- // :read-(only|write)
3377
- case ":read-only":
3378
- case ":read-write":
3379
- return serialize([copy(element, {
3380
- props: [replace(value, /:(read-\w+)/, ":" + MOZ + "$1")]
3381
- })], callback);
3382
- // :placeholder
3383
- case "::placeholder":
3384
- return serialize([copy(element, {
3385
- props: [replace(value, /:(plac\w+)/, ":" + WEBKIT + "input-$1")]
3386
- }), copy(element, {
3387
- props: [replace(value, /:(plac\w+)/, ":" + MOZ + "$1")]
3388
- }), copy(element, {
3389
- props: [replace(value, /:(plac\w+)/, MS + "input-$1")]
3390
- })], callback);
3391
- }
3392
- return "";
3393
- });
3394
- }
3395
- }
3396
- }, "prefixer");
3397
- var getServerStylisCache = isBrowser ? void 0 : weakMemoize(function () {
3398
- return memoize(function () {
3399
- return {};
3400
- });
3401
- });
3402
- var defaultStylisPlugins = [prefixer];
3403
- var createCache = /* @__PURE__ */__name(function createCache2(options) {
3404
- var key = options.key;
3405
- if (isBrowser && key === "css") {
3406
- var ssrStyles = document.querySelectorAll("style[data-emotion]:not([data-s])");
3407
- Array.prototype.forEach.call(ssrStyles, function (node2) {
3408
- var dataEmotionAttribute = node2.getAttribute("data-emotion");
3409
- if (dataEmotionAttribute.indexOf(" ") === -1) {
3410
- return;
3411
- }
3412
- document.head.appendChild(node2);
3413
- node2.setAttribute("data-s", "");
3414
- });
3415
- }
3416
- var stylisPlugins = options.stylisPlugins || defaultStylisPlugins;
3417
- var inserted = {};
3418
- var container;
3419
- var nodesToHydrate = [];
3420
- if (isBrowser) {
3421
- container = options.container || document.head;
3422
- Array.prototype.forEach.call(
3423
- // means that the style elements we're looking at are only Emotion 11 server-rendered style elements
3424
- document.querySelectorAll('style[data-emotion^="' + key + ' "]'), function (node2) {
3425
- var attrib = node2.getAttribute("data-emotion").split(" ");
3426
- for (var i = 1; i < attrib.length; i++) {
3427
- inserted[attrib[i]] = true;
3428
- }
3429
- nodesToHydrate.push(node2);
3430
- });
3431
- }
3432
- var _insert;
3433
- var omnipresentPlugins = [compat, removeLabel];
3434
- if (!getServerStylisCache) {
3435
- var currentSheet;
3436
- var finalizingPlugins = [stringify, rulesheet(function (rule) {
3437
- currentSheet.insert(rule);
3438
- })];
3439
- var serializer = middleware(omnipresentPlugins.concat(stylisPlugins, finalizingPlugins));
3440
- var stylis = /* @__PURE__ */__name(function stylis2(styles) {
3441
- return serialize(compile(styles), serializer);
3442
- }, "stylis");
3443
- _insert = /* @__PURE__ */__name(function insert(selector, serialized, sheet, shouldCache) {
3444
- currentSheet = sheet;
3445
- stylis(selector ? selector + "{" + serialized.styles + "}" : serialized.styles);
3446
- if (shouldCache) {
3447
- cache.inserted[serialized.name] = true;
3448
- }
3449
- }, "insert");
3450
- } else {
3451
- var _finalizingPlugins = [stringify];
3452
- var _serializer = middleware(omnipresentPlugins.concat(stylisPlugins, _finalizingPlugins));
3453
- var _stylis = /* @__PURE__ */__name(function _stylis2(styles) {
3454
- return serialize(compile(styles), _serializer);
3455
- }, "_stylis");
3456
- var serverStylisCache = getServerStylisCache(stylisPlugins)(key);
3457
- var getRules3 = /* @__PURE__ */__name(function getRules4(selector, serialized) {
3458
- var name = serialized.name;
3459
- if (serverStylisCache[name] === void 0) {
3460
- serverStylisCache[name] = _stylis(selector ? selector + "{" + serialized.styles + "}" : serialized.styles);
3461
- }
3462
- return serverStylisCache[name];
3463
- }, "getRules");
3464
- _insert = /* @__PURE__ */__name(function _insert2(selector, serialized, sheet, shouldCache) {
3465
- var name = serialized.name;
3466
- var rules = getRules3(selector, serialized);
3467
- if (cache.compat === void 0) {
3468
- if (shouldCache) {
3469
- cache.inserted[name] = true;
3470
- }
3471
- return rules;
3472
- } else {
3473
- if (shouldCache) {
3474
- cache.inserted[name] = rules;
3475
- } else {
3476
- return rules;
3477
- }
3478
- }
3479
- }, "_insert");
3480
- }
3481
- var cache = {
3482
- key,
3483
- sheet: new StyleSheet({
3484
- key,
3485
- container,
3486
- nonce: options.nonce,
3487
- speedy: options.speedy,
3488
- prepend: options.prepend,
3489
- insertionPoint: options.insertionPoint
3490
- }),
3491
- nonce: options.nonce,
3492
- inserted,
3493
- registered: {},
3494
- insert: _insert
3495
- };
3496
- cache.sheet.hydrate(nodesToHydrate);
3497
- return cache;
3498
- }, "createCache");
3499
-
3500
- // ../../node_modules/.pnpm/@emotion+utils@1.4.2/node_modules/@emotion/utils/dist/emotion-utils.esm.js
3501
- var isBrowser2 = typeof document !== "undefined";
3502
- function getRegisteredStyles(registered, registeredStyles, classNames) {
3503
- var rawClassName = "";
3504
- classNames.split(" ").forEach(function (className) {
3505
- if (registered[className] !== void 0) {
3506
- registeredStyles.push(registered[className] + ";");
3507
- } else if (className) {
3508
- rawClassName += className + " ";
3509
- }
15
+ var __export = (target, all) => {
16
+ for (var name in all) __defProp(target, name, {
17
+ get: all[name],
18
+ enumerable: true
3510
19
  });
3511
- return rawClassName;
3512
- }
3513
- __name(getRegisteredStyles, "getRegisteredStyles");
3514
- var registerStyles = /* @__PURE__ */__name(function registerStyles2(cache, serialized, isStringTag) {
3515
- var className = cache.key + "-" + serialized.name;
3516
- if (
3517
- // class name could be used further down
3518
- // the tree but if it's a string tag, we know it won't
3519
- // so we don't have to add it to registered cache.
3520
- // this improves memory usage since we can avoid storing the whole style string
3521
- (isStringTag === false ||
3522
- // we need to always store it if we're in compat mode and
3523
- // in node since emotion-server relies on whether a style is in
3524
- // the registered cache to know whether a style is global or not
3525
- // also, note that this check will be dead code eliminated in the browser
3526
- isBrowser2 === false && cache.compat !== void 0) && cache.registered[className] === void 0) {
3527
- cache.registered[className] = serialized.styles;
3528
- }
3529
- }, "registerStyles");
3530
- var insertStyles = /* @__PURE__ */__name(function insertStyles2(cache, serialized, isStringTag) {
3531
- registerStyles(cache, serialized, isStringTag);
3532
- var className = cache.key + "-" + serialized.name;
3533
- if (cache.inserted[serialized.name] === void 0) {
3534
- var stylesForSSR = "";
3535
- var current = serialized;
3536
- do {
3537
- var maybeStyles = cache.insert(serialized === current ? "." + className : "", current, cache.sheet, true);
3538
- if (!isBrowser2 && maybeStyles !== void 0) {
3539
- stylesForSSR += maybeStyles;
3540
- }
3541
- current = current.next;
3542
- } while (current !== void 0);
3543
- if (!isBrowser2 && stylesForSSR.length !== 0) {
3544
- return stylesForSSR;
3545
- }
3546
- }
3547
- }, "insertStyles");
3548
-
3549
- // ../../node_modules/.pnpm/@emotion+hash@0.9.2/node_modules/@emotion/hash/dist/emotion-hash.esm.js
3550
- function murmur2(str) {
3551
- var h = 0;
3552
- var k,
3553
- i = 0,
3554
- len = str.length;
3555
- for (; len >= 4; ++i, len -= 4) {
3556
- k = str.charCodeAt(i) & 255 | (str.charCodeAt(++i) & 255) << 8 | (str.charCodeAt(++i) & 255) << 16 | (str.charCodeAt(++i) & 255) << 24;
3557
- k = /* Math.imul(k, m): */
3558
- (k & 65535) * 1540483477 + ((k >>> 16) * 59797 << 16);
3559
- k ^= /* k >>> r: */
3560
- k >>> 24;
3561
- h = /* Math.imul(k, m): */
3562
- (k & 65535) * 1540483477 + ((k >>> 16) * 59797 << 16) ^ /* Math.imul(h, m): */
3563
- (h & 65535) * 1540483477 + ((h >>> 16) * 59797 << 16);
3564
- }
3565
- switch (len) {
3566
- case 3:
3567
- h ^= (str.charCodeAt(i + 2) & 255) << 16;
3568
- case 2:
3569
- h ^= (str.charCodeAt(i + 1) & 255) << 8;
3570
- case 1:
3571
- h ^= str.charCodeAt(i) & 255;
3572
- h = /* Math.imul(h, m): */
3573
- (h & 65535) * 1540483477 + ((h >>> 16) * 59797 << 16);
3574
- }
3575
- h ^= h >>> 13;
3576
- h = /* Math.imul(h, m): */
3577
- (h & 65535) * 1540483477 + ((h >>> 16) * 59797 << 16);
3578
- return ((h ^ h >>> 15) >>> 0).toString(36);
3579
- }
3580
- __name(murmur2, "murmur2");
3581
-
3582
- // ../../node_modules/.pnpm/@emotion+unitless@0.10.0/node_modules/@emotion/unitless/dist/emotion-unitless.esm.js
3583
- var unitlessKeys = {
3584
- animationIterationCount: 1,
3585
- aspectRatio: 1,
3586
- borderImageOutset: 1,
3587
- borderImageSlice: 1,
3588
- borderImageWidth: 1,
3589
- boxFlex: 1,
3590
- boxFlexGroup: 1,
3591
- boxOrdinalGroup: 1,
3592
- columnCount: 1,
3593
- columns: 1,
3594
- flex: 1,
3595
- flexGrow: 1,
3596
- flexPositive: 1,
3597
- flexShrink: 1,
3598
- flexNegative: 1,
3599
- flexOrder: 1,
3600
- gridRow: 1,
3601
- gridRowEnd: 1,
3602
- gridRowSpan: 1,
3603
- gridRowStart: 1,
3604
- gridColumn: 1,
3605
- gridColumnEnd: 1,
3606
- gridColumnSpan: 1,
3607
- gridColumnStart: 1,
3608
- msGridRow: 1,
3609
- msGridRowSpan: 1,
3610
- msGridColumn: 1,
3611
- msGridColumnSpan: 1,
3612
- fontWeight: 1,
3613
- lineHeight: 1,
3614
- opacity: 1,
3615
- order: 1,
3616
- orphans: 1,
3617
- scale: 1,
3618
- tabSize: 1,
3619
- widows: 1,
3620
- zIndex: 1,
3621
- zoom: 1,
3622
- WebkitLineClamp: 1,
3623
- // SVG-related properties
3624
- fillOpacity: 1,
3625
- floodOpacity: 1,
3626
- stopOpacity: 1,
3627
- strokeDasharray: 1,
3628
- strokeDashoffset: 1,
3629
- strokeMiterlimit: 1,
3630
- strokeOpacity: 1,
3631
- strokeWidth: 1
3632
20
  };
3633
-
3634
- // ../../node_modules/.pnpm/@emotion+serialize@1.3.3/node_modules/@emotion/serialize/dist/emotion-serialize.esm.js
3635
- var isDevelopment2 = false;
3636
- var hyphenateRegex = /[A-Z]|^ms/g;
3637
- var animationRegex = /_EMO_([^_]+?)_([^]*?)_EMO_/g;
3638
- var isCustomProperty = /* @__PURE__ */__name(function isCustomProperty2(property) {
3639
- return property.charCodeAt(1) === 45;
3640
- }, "isCustomProperty");
3641
- var isProcessableValue = /* @__PURE__ */__name(function isProcessableValue2(value) {
3642
- return value != null && typeof value !== "boolean";
3643
- }, "isProcessableValue");
3644
- var processStyleName = /* @__PURE__ */memoize(function (styleName) {
3645
- return isCustomProperty(styleName) ? styleName : styleName.replace(hyphenateRegex, "-$&").toLowerCase();
3646
- });
3647
- var processStyleValue = /* @__PURE__ */__name(function processStyleValue2(key, value) {
3648
- switch (key) {
3649
- case "animation":
3650
- case "animationName":
3651
- {
3652
- if (typeof value === "string") {
3653
- return value.replace(animationRegex, function (match2, p1, p2) {
3654
- cursor = {
3655
- name: p1,
3656
- styles: p2,
3657
- next: cursor
3658
- };
3659
- return p1;
3660
- });
3661
- }
3662
- }
3663
- }
3664
- if (unitlessKeys[key] !== 1 && !isCustomProperty(key) && typeof value === "number" && value !== 0) {
3665
- return value + "px";
3666
- }
3667
- return value;
3668
- }, "processStyleValue");
3669
- var noComponentSelectorMessage = "Component selectors can only be used in conjunction with @emotion/babel-plugin, the swc Emotion plugin, or another Emotion-aware compiler transform.";
3670
- function handleInterpolation(mergedProps, registered, interpolation) {
3671
- if (interpolation == null) {
3672
- return "";
3673
- }
3674
- var componentSelector = interpolation;
3675
- if (componentSelector.__emotion_styles !== void 0) {
3676
- return componentSelector;
3677
- }
3678
- switch (typeof interpolation) {
3679
- case "boolean":
3680
- {
3681
- return "";
3682
- }
3683
- case "object":
3684
- {
3685
- var keyframes = interpolation;
3686
- if (keyframes.anim === 1) {
3687
- cursor = {
3688
- name: keyframes.name,
3689
- styles: keyframes.styles,
3690
- next: cursor
3691
- };
3692
- return keyframes.name;
3693
- }
3694
- var serializedStyles = interpolation;
3695
- if (serializedStyles.styles !== void 0) {
3696
- var next2 = serializedStyles.next;
3697
- if (next2 !== void 0) {
3698
- while (next2 !== void 0) {
3699
- cursor = {
3700
- name: next2.name,
3701
- styles: next2.styles,
3702
- next: cursor
3703
- };
3704
- next2 = next2.next;
3705
- }
3706
- }
3707
- var styles = serializedStyles.styles + ";";
3708
- return styles;
3709
- }
3710
- return createStringFromObject(mergedProps, registered, interpolation);
3711
- }
3712
- case "function":
3713
- {
3714
- if (mergedProps !== void 0) {
3715
- var previousCursor = cursor;
3716
- var result = interpolation(mergedProps);
3717
- cursor = previousCursor;
3718
- return handleInterpolation(mergedProps, registered, result);
3719
- }
3720
- break;
3721
- }
3722
- }
3723
- var asString = interpolation;
3724
- if (registered == null) {
3725
- return asString;
3726
- }
3727
- var cached = registered[asString];
3728
- return cached !== void 0 ? cached : asString;
3729
- }
3730
- __name(handleInterpolation, "handleInterpolation");
3731
- function createStringFromObject(mergedProps, registered, obj) {
3732
- var string = "";
3733
- if (Array.isArray(obj)) {
3734
- for (var i = 0; i < obj.length; i++) {
3735
- string += handleInterpolation(mergedProps, registered, obj[i]) + ";";
3736
- }
3737
- } else {
3738
- for (var key in obj) {
3739
- var value = obj[key];
3740
- if (typeof value !== "object") {
3741
- var asString = value;
3742
- if (registered != null && registered[asString] !== void 0) {
3743
- string += key + "{" + registered[asString] + "}";
3744
- } else if (isProcessableValue(asString)) {
3745
- string += processStyleName(key) + ":" + processStyleValue(key, asString) + ";";
3746
- }
3747
- } else {
3748
- if (key === "NO_COMPONENT_SELECTOR" && isDevelopment2) {
3749
- throw new Error(noComponentSelectorMessage);
3750
- }
3751
- if (Array.isArray(value) && typeof value[0] === "string" && (registered == null || registered[value[0]] === void 0)) {
3752
- for (var _i = 0; _i < value.length; _i++) {
3753
- if (isProcessableValue(value[_i])) {
3754
- string += processStyleName(key) + ":" + processStyleValue(key, value[_i]) + ";";
3755
- }
3756
- }
3757
- } else {
3758
- var interpolated = handleInterpolation(mergedProps, registered, value);
3759
- switch (key) {
3760
- case "animation":
3761
- case "animationName":
3762
- {
3763
- string += processStyleName(key) + ":" + interpolated + ";";
3764
- break;
3765
- }
3766
- default:
3767
- {
3768
- string += key + "{" + interpolated + "}";
3769
- }
3770
- }
3771
- }
3772
- }
3773
- }
3774
- }
3775
- return string;
3776
- }
3777
- __name(createStringFromObject, "createStringFromObject");
3778
- var labelPattern = /label:\s*([^\s;{]+)\s*(;|$)/g;
3779
- var cursor;
3780
- function serializeStyles(args, registered, mergedProps) {
3781
- if (args.length === 1 && typeof args[0] === "object" && args[0] !== null && args[0].styles !== void 0) {
3782
- return args[0];
3783
- }
3784
- var stringMode = true;
3785
- var styles = "";
3786
- cursor = void 0;
3787
- var strings = args[0];
3788
- if (strings == null || strings.raw === void 0) {
3789
- stringMode = false;
3790
- styles += handleInterpolation(mergedProps, registered, strings);
3791
- } else {
3792
- var asTemplateStringsArr = strings;
3793
- styles += asTemplateStringsArr[0];
3794
- }
3795
- for (var i = 1; i < args.length; i++) {
3796
- styles += handleInterpolation(mergedProps, registered, args[i]);
3797
- if (stringMode) {
3798
- var templateStringsArr = strings;
3799
- styles += templateStringsArr[i];
3800
- }
3801
- }
3802
- labelPattern.lastIndex = 0;
3803
- var identifierName = "";
3804
- var match2;
3805
- while ((match2 = labelPattern.exec(styles)) !== null) {
3806
- identifierName += "-" + match2[1];
3807
- }
3808
- var name = murmur2(styles) + identifierName;
3809
- return {
3810
- name,
3811
- styles,
3812
- next: cursor
3813
- };
3814
- }
3815
- __name(serializeStyles, "serializeStyles");
3816
-
3817
- // ../../node_modules/.pnpm/@emotion+use-insertion-effect-with-fallbacks@1.2.0_react@19.2.1/node_modules/@emotion/use-insertion-effect-with-fallbacks/dist/emotion-use-insertion-effect-with-fallbacks.esm.js
3818
- var React4 = __toESM(require("react"));
3819
- var isBrowser3 = typeof document !== "undefined";
3820
- var syncFallback = /* @__PURE__ */__name(function syncFallback2(create) {
3821
- return create();
3822
- }, "syncFallback");
3823
- var useInsertionEffect2 = React4["useInsertionEffect"] ? React4["useInsertionEffect"] : false;
3824
- var useInsertionEffectAlwaysWithSyncFallback = !isBrowser3 ? syncFallback : useInsertionEffect2 || syncFallback;
3825
-
3826
- // ../../node_modules/.pnpm/@emotion+react@11.14.0_@types+react@19.2.7_react@19.2.1/node_modules/@emotion/react/dist/emotion-element-d59e098f.esm.js
3827
- var isDevelopment3 = false;
3828
- var isBrowser4 = typeof document !== "undefined";
3829
- var EmotionCacheContext = /* @__PURE__ */React5.createContext(
3830
- // because this module is primarily intended for the browser and node
3831
- // but it's also required in react native and similar environments sometimes
3832
- // and we could have a special build just for that
3833
- // but this is much easier and the native packages
3834
- // might use a different theme context in the future anyway
3835
- typeof HTMLElement !== "undefined" ? /* @__PURE__ */createCache({
3836
- key: "css"
3837
- }) : null);
3838
- var CacheProvider = EmotionCacheContext.Provider;
3839
- var withEmotionCache = /* @__PURE__ */__name(function withEmotionCache2(func) {
3840
- return /* @__PURE__ */(0, import_react4.forwardRef)(function (props, ref) {
3841
- var cache = (0, import_react4.useContext)(EmotionCacheContext);
3842
- return func(props, cache, ref);
3843
- });
3844
- }, "withEmotionCache");
3845
- if (!isBrowser4) {
3846
- withEmotionCache = /* @__PURE__ */__name(function withEmotionCache3(func) {
3847
- return function (props) {
3848
- var cache = (0, import_react4.useContext)(EmotionCacheContext);
3849
- if (cache === null) {
3850
- cache = createCache({
3851
- key: "css"
3852
- });
3853
- return /* @__PURE__ */React5.createElement(EmotionCacheContext.Provider, {
3854
- value: cache
3855
- }, func(props, cache));
3856
- } else {
3857
- return func(props, cache);
3858
- }
3859
- };
3860
- }, "withEmotionCache");
3861
- }
3862
- var ThemeContext = /* @__PURE__ */React5.createContext({});
3863
- var useTheme = /* @__PURE__ */__name(function useTheme2() {
3864
- return React5.useContext(ThemeContext);
3865
- }, "useTheme");
3866
- var hasOwn = {}.hasOwnProperty;
3867
- var typePropName = "__EMOTION_TYPE_PLEASE_DO_NOT_USE__";
3868
- var createEmotionProps = /* @__PURE__ */__name(function createEmotionProps2(type, props) {
3869
- var newProps = {};
3870
- for (var _key in props) {
3871
- if (hasOwn.call(props, _key)) {
3872
- newProps[_key] = props[_key];
3873
- }
3874
- }
3875
- newProps[typePropName] = type;
3876
- return newProps;
3877
- }, "createEmotionProps");
3878
- var Insertion = /* @__PURE__ */__name(function Insertion2(_ref) {
3879
- var cache = _ref.cache,
3880
- serialized = _ref.serialized,
3881
- isStringTag = _ref.isStringTag;
3882
- registerStyles(cache, serialized, isStringTag);
3883
- var rules = useInsertionEffectAlwaysWithSyncFallback(function () {
3884
- return insertStyles(cache, serialized, isStringTag);
3885
- });
3886
- if (!isBrowser4 && rules !== void 0) {
3887
- var _ref2;
3888
- var serializedNames = serialized.name;
3889
- var next2 = serialized.next;
3890
- while (next2 !== void 0) {
3891
- serializedNames += " " + next2.name;
3892
- next2 = next2.next;
3893
- }
3894
- return /* @__PURE__ */React5.createElement("style", (_ref2 = {}, _ref2["data-emotion"] = cache.key + " " + serializedNames, _ref2.dangerouslySetInnerHTML = {
3895
- __html: rules
3896
- }, _ref2.nonce = cache.sheet.nonce, _ref2));
3897
- }
3898
- return null;
3899
- }, "Insertion");
3900
- var Emotion = /* @__PURE__ */withEmotionCache(function (props, cache, ref) {
3901
- var cssProp = props.css;
3902
- if (typeof cssProp === "string" && cache.registered[cssProp] !== void 0) {
3903
- cssProp = cache.registered[cssProp];
3904
- }
3905
- var WrappedComponent = props[typePropName];
3906
- var registeredStyles = [cssProp];
3907
- var className = "";
3908
- if (typeof props.className === "string") {
3909
- className = getRegisteredStyles(cache.registered, registeredStyles, props.className);
3910
- } else if (props.className != null) {
3911
- className = props.className + " ";
3912
- }
3913
- var serialized = serializeStyles(registeredStyles, void 0, React5.useContext(ThemeContext));
3914
- className += cache.key + "-" + serialized.name;
3915
- var newProps = {};
3916
- for (var _key2 in props) {
3917
- if (hasOwn.call(props, _key2) && _key2 !== "css" && _key2 !== typePropName && !isDevelopment3) {
3918
- newProps[_key2] = props[_key2];
3919
- }
3920
- }
3921
- newProps.className = className;
3922
- if (ref) {
3923
- newProps.ref = ref;
3924
- }
3925
- return /* @__PURE__ */React5.createElement(React5.Fragment, null, /* @__PURE__ */React5.createElement(Insertion, {
3926
- cache,
3927
- serialized,
3928
- isStringTag: typeof WrappedComponent === "string"
3929
- }), /* @__PURE__ */React5.createElement(WrappedComponent, newProps));
3930
- });
3931
- var Emotion$1 = Emotion;
3932
-
3933
- // ../../node_modules/.pnpm/@emotion+react@11.14.0_@types+react@19.2.7_react@19.2.1/node_modules/@emotion/react/dist/emotion-react.esm.js
3934
- var React6 = __toESM(require("react"));
3935
- var import_extends2 = __toESM(require_extends());
3936
- var import_hoist_non_react_statics = __toESM(require_hoist_non_react_statics_cjs());
3937
- var jsx = /* @__PURE__ */__name(function jsx2(type, props) {
3938
- var args = arguments;
3939
- if (props == null || !hasOwn.call(props, "css")) {
3940
- return React6.createElement.apply(void 0, args);
3941
- }
3942
- var argsLength = args.length;
3943
- var createElementArgArray = new Array(argsLength);
3944
- createElementArgArray[0] = Emotion$1;
3945
- createElementArgArray[1] = createEmotionProps(type, props);
3946
- for (var i = 2; i < argsLength; i++) {
3947
- createElementArgArray[i] = args[i];
3948
- }
3949
- return React6.createElement.apply(null, createElementArgArray);
3950
- }, "jsx");
3951
- (function (_jsx) {
3952
- var JSX;
3953
- /* @__PURE__ */
3954
- (function (_JSX) {})(JSX || (JSX = _jsx.JSX || (_jsx.JSX = {})));
3955
- })(jsx || (jsx = {}));
3956
-
3957
- // ../../node_modules/.pnpm/@theme-ui+css@0.17.2_@emotion+react@11.14.0_react@19.2.1_/node_modules/@theme-ui/css/dist/theme-ui-css.esm.js
3958
- var THEME_UI_DEFAULT_KEY = "__default";
3959
- var hasDefault = /* @__PURE__ */__name(x => {
3960
- return typeof x === "object" && x !== null && THEME_UI_DEFAULT_KEY in x;
3961
- }, "hasDefault");
3962
- function get(obj, path, fallback, p, undef) {
3963
- const pathArray = path && typeof path === "string" ? path.split(".") : [path];
3964
- for (p = 0; p < pathArray.length; p++) {
3965
- obj = obj ? obj[pathArray[p]] : undef;
3966
- }
3967
- if (obj === undef) return fallback;
3968
- return hasDefault(obj) ? obj[THEME_UI_DEFAULT_KEY] : obj;
3969
- }
3970
- __name(get, "get");
3971
- var getObjectWithVariants = /* @__PURE__ */__name((obj, theme) => {
3972
- if (obj && obj["variant"]) {
3973
- let result = {};
3974
- for (const key in obj) {
3975
- const x = obj[key];
3976
- if (key === "variant") {
3977
- const val = typeof x === "function" ? x(theme) : x;
3978
- const variant = getObjectWithVariants(get(theme, val), theme);
3979
- result = {
3980
- ...result,
3981
- ...variant
3982
- };
3983
- } else {
3984
- result[key] = x;
3985
- }
3986
- }
3987
- return result;
21
+ var __copyProps = (to, from, except, desc) => {
22
+ if (from && typeof from === "object" || typeof from === "function") {
23
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
24
+ get: () => from[key],
25
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
26
+ });
3988
27
  }
3989
- return obj;
3990
- }, "getObjectWithVariants");
3991
- var defaultBreakpoints = [40, 52, 64].map(n => n + "em");
3992
- var defaultTheme = {
3993
- space: [0, 4, 8, 16, 32, 64, 128, 256, 512],
3994
- fontSizes: [12, 14, 16, 20, 24, 32, 48, 64, 72]
3995
- };
3996
- var aliases = {
3997
- bg: "backgroundColor",
3998
- m: "margin",
3999
- mt: "marginTop",
4000
- mr: "marginRight",
4001
- mb: "marginBottom",
4002
- ml: "marginLeft",
4003
- mx: "marginX",
4004
- my: "marginY",
4005
- p: "padding",
4006
- pt: "paddingTop",
4007
- pr: "paddingRight",
4008
- pb: "paddingBottom",
4009
- pl: "paddingLeft",
4010
- px: "paddingX",
4011
- py: "paddingY"
4012
- };
4013
- var multiples = {
4014
- marginX: ["marginLeft", "marginRight"],
4015
- marginY: ["marginTop", "marginBottom"],
4016
- paddingX: ["paddingLeft", "paddingRight"],
4017
- paddingY: ["paddingTop", "paddingBottom"],
4018
- scrollMarginX: ["scrollMarginLeft", "scrollMarginRight"],
4019
- scrollMarginY: ["scrollMarginTop", "scrollMarginBottom"],
4020
- scrollPaddingX: ["scrollPaddingLeft", "scrollPaddingRight"],
4021
- scrollPaddingY: ["scrollPaddingTop", "scrollPaddingBottom"],
4022
- size: ["width", "height"]
4023
- };
4024
- var scales = {
4025
- color: "colors",
4026
- background: "colors",
4027
- accentColor: "colors",
4028
- backgroundColor: "colors",
4029
- borderColor: "colors",
4030
- caretColor: "colors",
4031
- columnRuleColor: "colors",
4032
- outlineColor: "colors",
4033
- textDecorationColor: "colors",
4034
- opacity: "opacities",
4035
- transition: "transitions",
4036
- margin: "space",
4037
- marginTop: "space",
4038
- marginRight: "space",
4039
- marginBottom: "space",
4040
- marginLeft: "space",
4041
- marginX: "space",
4042
- marginY: "space",
4043
- marginBlock: "space",
4044
- marginBlockEnd: "space",
4045
- marginBlockStart: "space",
4046
- marginInline: "space",
4047
- marginInlineEnd: "space",
4048
- marginInlineStart: "space",
4049
- padding: "space",
4050
- paddingTop: "space",
4051
- paddingRight: "space",
4052
- paddingBottom: "space",
4053
- paddingLeft: "space",
4054
- paddingX: "space",
4055
- paddingY: "space",
4056
- paddingBlock: "space",
4057
- paddingBlockEnd: "space",
4058
- paddingBlockStart: "space",
4059
- paddingInline: "space",
4060
- paddingInlineEnd: "space",
4061
- paddingInlineStart: "space",
4062
- scrollMargin: "space",
4063
- scrollMarginTop: "space",
4064
- scrollMarginRight: "space",
4065
- scrollMarginBottom: "space",
4066
- scrollMarginLeft: "space",
4067
- scrollMarginX: "space",
4068
- scrollMarginY: "space",
4069
- scrollPadding: "space",
4070
- scrollPaddingTop: "space",
4071
- scrollPaddingRight: "space",
4072
- scrollPaddingBottom: "space",
4073
- scrollPaddingLeft: "space",
4074
- scrollPaddingX: "space",
4075
- scrollPaddingY: "space",
4076
- inset: "space",
4077
- insetBlock: "space",
4078
- insetBlockEnd: "space",
4079
- insetBlockStart: "space",
4080
- insetInline: "space",
4081
- insetInlineEnd: "space",
4082
- insetInlineStart: "space",
4083
- top: "space",
4084
- right: "space",
4085
- bottom: "space",
4086
- left: "space",
4087
- gridGap: "space",
4088
- gridColumnGap: "space",
4089
- gridRowGap: "space",
4090
- gap: "space",
4091
- columnGap: "space",
4092
- rowGap: "space",
4093
- fontFamily: "fonts",
4094
- fontSize: "fontSizes",
4095
- fontWeight: "fontWeights",
4096
- lineHeight: "lineHeights",
4097
- letterSpacing: "letterSpacings",
4098
- border: "borders",
4099
- borderTop: "borders",
4100
- borderRight: "borders",
4101
- borderBottom: "borders",
4102
- borderLeft: "borders",
4103
- borderWidth: "borderWidths",
4104
- borderStyle: "borderStyles",
4105
- borderRadius: "radii",
4106
- borderTopRightRadius: "radii",
4107
- borderTopLeftRadius: "radii",
4108
- borderBottomRightRadius: "radii",
4109
- borderBottomLeftRadius: "radii",
4110
- borderTopWidth: "borderWidths",
4111
- borderTopColor: "colors",
4112
- borderTopStyle: "borderStyles",
4113
- borderBottomWidth: "borderWidths",
4114
- borderBottomColor: "colors",
4115
- borderBottomStyle: "borderStyles",
4116
- borderLeftWidth: "borderWidths",
4117
- borderLeftColor: "colors",
4118
- borderLeftStyle: "borderStyles",
4119
- borderRightWidth: "borderWidths",
4120
- borderRightColor: "colors",
4121
- borderRightStyle: "borderStyles",
4122
- borderBlock: "borders",
4123
- borderBlockColor: "colors",
4124
- borderBlockEnd: "borders",
4125
- borderBlockEndColor: "colors",
4126
- borderBlockEndStyle: "borderStyles",
4127
- borderBlockEndWidth: "borderWidths",
4128
- borderBlockStart: "borders",
4129
- borderBlockStartColor: "colors",
4130
- borderBlockStartStyle: "borderStyles",
4131
- borderBlockStartWidth: "borderWidths",
4132
- borderBlockStyle: "borderStyles",
4133
- borderBlockWidth: "borderWidths",
4134
- borderEndEndRadius: "radii",
4135
- borderEndStartRadius: "radii",
4136
- borderInline: "borders",
4137
- borderInlineColor: "colors",
4138
- borderInlineEnd: "borders",
4139
- borderInlineEndColor: "colors",
4140
- borderInlineEndStyle: "borderStyles",
4141
- borderInlineEndWidth: "borderWidths",
4142
- borderInlineStart: "borders",
4143
- borderInlineStartColor: "colors",
4144
- borderInlineStartStyle: "borderStyles",
4145
- borderInlineStartWidth: "borderWidths",
4146
- borderInlineStyle: "borderStyles",
4147
- borderInlineWidth: "borderWidths",
4148
- borderStartEndRadius: "radii",
4149
- borderStartStartRadius: "radii",
4150
- columnRuleWidth: "borderWidths",
4151
- boxShadow: "shadows",
4152
- textShadow: "shadows",
4153
- zIndex: "zIndices",
4154
- width: "sizes",
4155
- minWidth: "sizes",
4156
- maxWidth: "sizes",
4157
- height: "sizes",
4158
- minHeight: "sizes",
4159
- maxHeight: "sizes",
4160
- flexBasis: "sizes",
4161
- size: "sizes",
4162
- blockSize: "sizes",
4163
- inlineSize: "sizes",
4164
- maxBlockSize: "sizes",
4165
- maxInlineSize: "sizes",
4166
- minBlockSize: "sizes",
4167
- minInlineSize: "sizes",
4168
- columnWidth: "sizes",
4169
- // svg
4170
- fill: "colors",
4171
- stroke: "colors"
28
+ return to;
4172
29
  };
4173
- var positiveOrNegative = /* @__PURE__ */__name((scale, value) => {
4174
- if (typeof value !== "number" || value >= 0) {
4175
- if (typeof value === "string" && value.startsWith("-")) {
4176
- const valueWithoutMinus = value.substring(1);
4177
- const n2 = get(scale, valueWithoutMinus, valueWithoutMinus);
4178
- if (typeof n2 === "number") {
4179
- return n2 * -1;
4180
- }
4181
- return `-${n2}`;
4182
- }
4183
- return get(scale, value, value);
4184
- }
4185
- const absolute = Math.abs(value);
4186
- const n = get(scale, absolute, absolute);
4187
- if (typeof n === "string") return "-" + n;
4188
- return Number(n) * -1;
4189
- }, "positiveOrNegative");
4190
- var transforms = ["margin", "marginTop", "marginRight", "marginBottom", "marginLeft", "marginX", "marginY", "marginBlock", "marginBlockEnd", "marginBlockStart", "marginInline", "marginInlineEnd", "marginInlineStart", "top", "bottom", "left", "right"].reduce((acc, curr) => ({
4191
- ...acc,
4192
- [curr]: positiveOrNegative
4193
- }), {});
4194
- var responsive = /* @__PURE__ */__name(styles => theme => {
4195
- const next2 = {};
4196
- const breakpoints = theme && theme.breakpoints || defaultBreakpoints;
4197
- const mediaQueries = [null, ...breakpoints.map(n => n.includes("@media") ? n : `@media screen and (min-width: ${n})`)];
4198
- for (const k in styles) {
4199
- const key = k;
4200
- let value = styles[key];
4201
- if (typeof value === "function") {
4202
- value = value(theme || {});
4203
- }
4204
- if (value === false || value == null) {
4205
- continue;
4206
- }
4207
- if (!Array.isArray(value)) {
4208
- next2[key] = value;
4209
- continue;
4210
- }
4211
- for (let i = 0; i < value.slice(0, mediaQueries.length).length; i++) {
4212
- const media = mediaQueries[i];
4213
- if (!media) {
4214
- next2[key] = value[i];
4215
- continue;
4216
- }
4217
- next2[media] = next2[media] || {};
4218
- if (value[i] == null) continue;
4219
- next2[media][key] = value[i];
4220
- }
4221
- }
4222
- return next2;
4223
- }, "responsive");
4224
- var css = /* @__PURE__ */__name((args = {}) => (props = {}) => {
4225
- const theme = {
4226
- ...defaultTheme,
4227
- ...("theme" in props ? props.theme : props)
4228
- };
4229
- const obj = getObjectWithVariants(typeof args === "function" ? args(theme) : args, theme);
4230
- const styles = responsive(obj)(theme);
4231
- let result = {};
4232
- for (const key in styles) {
4233
- const x = styles[key];
4234
- const val = typeof x === "function" ? x(theme) : x;
4235
- if (val && typeof val === "object") {
4236
- if (hasDefault(val)) {
4237
- result[key] = val[THEME_UI_DEFAULT_KEY];
4238
- continue;
4239
- }
4240
- result[key] = css(val)(theme);
4241
- continue;
4242
- }
4243
- const prop = key in aliases ? aliases[key] : key;
4244
- const scaleName = prop in scales ? scales[prop] : void 0;
4245
- const scale = scaleName ? theme?.[scaleName] : get(theme, prop, {});
4246
- const transform = get(transforms, prop, get);
4247
- const value = transform(scale, val, val);
4248
- if (prop in multiples) {
4249
- const dirs = multiples[prop];
4250
- for (let i = 0; i < dirs.length; i++) {
4251
- result[dirs[i]] = value;
4252
- }
4253
- } else {
4254
- result[prop] = value;
4255
- }
4256
- }
4257
- return result;
4258
- }, "css");
4259
-
4260
- // ../../node_modules/.pnpm/@theme-ui+core@0.17.2_@emotion+react@11.14.0_@types+react@19.2.7_react@19.2.1__react@19.2.1/node_modules/@theme-ui/core/dist/parseProps-eab0b26e.esm.js
4261
- var getCSS = /* @__PURE__ */__name(props => theme => {
4262
- const styles = css(props.sx)(theme);
4263
- const raw = typeof props.css === "function" ? props.css(theme) : props.css;
4264
- return [styles, raw];
4265
- }, "getCSS");
4266
- function parseProps(props) {
4267
- if (!props || !props.sx && !props.css) return props;
4268
- const next2 = {};
4269
- for (let key in props) {
4270
- if (key === "sx") continue;
4271
- next2[key] = props[key];
4272
- }
4273
- next2.css = getCSS(props);
4274
- return next2;
4275
- }
4276
- __name(parseProps, "parseProps");
4277
-
4278
- // ../../node_modules/.pnpm/@emotion+react@11.14.0_@types+react@19.2.7_react@19.2.1/node_modules/@emotion/react/jsx-runtime/dist/emotion-react-jsx-runtime.esm.js
4279
- var ReactJSXRuntime = __toESM(require("react/jsx-runtime"));
4280
- var import_react5 = require("react");
4281
- var import_extends3 = __toESM(require_extends());
4282
- var import_hoist_non_react_statics2 = __toESM(require_hoist_non_react_statics_cjs());
4283
- var jsx4 = /* @__PURE__ */__name(function jsx5(type, props, key) {
4284
- if (!hasOwn.call(props, "css")) {
4285
- return ReactJSXRuntime.jsx(type, props, key);
4286
- }
4287
- return ReactJSXRuntime.jsx(Emotion$1, createEmotionProps(type, props), key);
4288
- }, "jsx");
4289
-
4290
- // ../../node_modules/.pnpm/@theme-ui+core@0.17.2_@emotion+react@11.14.0_@types+react@19.2.7_react@19.2.1__react@19.2.1/node_modules/@theme-ui/core/jsx-runtime/dist/theme-ui-core-jsx-runtime.esm.js
4291
- var import_react6 = require("react");
4292
- var jsx6 = /* @__PURE__ */__name((type, props, key) => jsx4(type, parseProps(props), key), "jsx");
4293
-
4294
- // ../../node_modules/.pnpm/@theme-ui+components@0.17.2_@emotion+react@11.14.0_@types+react@19.2.7_react@19.2.1__@t_04e34f7905c3166fd726d8f6c6a0914f/node_modules/@theme-ui/components/dist/theme-ui-components.esm.js
4295
- var import_react8 = __toESM(require("react"));
4296
- var boxSystemProps = [
4297
- // space scale props (inherited from @styled-system/space)
4298
- "margin", "marginTop", "marginRight", "marginBottom", "marginLeft", "marginX", "marginY", "m", "mt", "mr", "mb", "ml", "mx", "my", "padding", "paddingTop", "paddingRight", "paddingBottom", "paddingLeft", "paddingX", "paddingY", "p", "pt", "pr", "pb", "pl", "px", "py",
4299
- // color props (inherited from @styled-system/color)
4300
- "color", "backgroundColor", "bg", "opacity"];
4301
- var __isBoxStyledSystemProp = /* @__PURE__ */__name(prop => boxSystemProps.includes(prop), "__isBoxStyledSystemProp");
4302
- var pickSystemProps = /* @__PURE__ */__name(props => {
4303
- const res = {};
4304
- for (const key of boxSystemProps) {
4305
- res[key] = props[key];
4306
- }
4307
- return res;
4308
- }, "pickSystemProps");
4309
- var Box$1 = /* @__PURE__ */(0, import_react8.forwardRef)(/* @__PURE__ */__name(function Box(props, ref) {
4310
- const theme = useTheme();
4311
- const {
4312
- __themeKey = "variants",
4313
- __css,
4314
- variant,
4315
- css: cssProp,
4316
- sx,
4317
- as: Component = "div",
4318
- ...rest
4319
- } = props;
4320
- const baseStyles = {
4321
- boxSizing: "border-box",
4322
- margin: 0,
4323
- minWidth: 0
4324
- };
4325
- const __cssStyles = css(__css)(theme);
4326
- const variantInTheme = get(theme, `${__themeKey}.${variant}`) || get(theme, variant);
4327
- const variantStyles = variantInTheme && css(variantInTheme)(theme);
4328
- const sxPropStyles = css(sx)(theme);
4329
- const systemPropsStyles = css(pickSystemProps(rest))(theme);
4330
- const style = [baseStyles, __cssStyles, variantStyles, sxPropStyles, systemPropsStyles, cssProp];
4331
- boxSystemProps.forEach(name => {
4332
- delete rest[name];
4333
- });
4334
- return jsx6(Component, {
4335
- ref,
4336
- css: style,
4337
- ...rest
4338
- });
4339
- }, "Box"));
4340
- var Flex = /* @__PURE__ */import_react8.default.forwardRef(/* @__PURE__ */__name(function Flex2(props, ref) {
4341
- const {
4342
- sx
4343
- } = props;
4344
- return jsx6(Box$1, {
4345
- ref,
4346
- ...props,
4347
- sx: /* @__PURE__ */__name(theme => ({
4348
- display: "flex",
4349
- ...(typeof sx === "function" ? sx(theme) : sx)
4350
- }), "sx")
4351
- });
4352
- }, "Flex"));
4353
- var getProps = /* @__PURE__ */__name(test => props => {
4354
- const next2 = {};
4355
- for (const key in props) {
4356
- if (test(key || "")) next2[key] = props[key];
4357
- }
4358
- return next2;
4359
- }, "getProps");
4360
- var MRE = /^m[trblxy]?$/;
4361
- var getMargin = getProps(k => MRE.test(k));
4362
- var omitMargin = getProps(k => !MRE.test(k));
4363
- function __internalProps(props) {
4364
- return props;
4365
- }
4366
- __name(__internalProps, "__internalProps");
4367
- var Box2 = Box$1;
4368
- var Button = /* @__PURE__ */import_react8.default.forwardRef(/* @__PURE__ */__name(function Button2(props, ref) {
4369
- return jsx6(Box2, {
4370
- ref,
4371
- as: "button",
4372
- variant: "primary",
4373
- ...props,
4374
- ...__internalProps({
4375
- __themeKey: "buttons",
4376
- __css: {
4377
- appearance: "none",
4378
- display: props.hidden ? void 0 : "inline-block",
4379
- textAlign: "center",
4380
- lineHeight: "inherit",
4381
- textDecoration: "none",
4382
- fontSize: "inherit",
4383
- px: 3,
4384
- py: 2,
4385
- color: "white",
4386
- bg: "primary",
4387
- border: 0,
4388
- borderRadius: 4
4389
- }
4390
- })
4391
- });
4392
- }, "Button"));
4393
- var Text = /* @__PURE__ */import_react8.default.forwardRef(/* @__PURE__ */__name(function Text2(props, ref) {
4394
- return jsx6(Box$1, {
4395
- as: "span",
4396
- ref,
4397
- variant: "default",
4398
- ...props,
4399
- ...__internalProps({
4400
- __themeKey: "text"
4401
- })
4402
- });
4403
- }, "Text"));
4404
- var Heading = /* @__PURE__ */import_react8.default.forwardRef(/* @__PURE__ */__name(function Heading2(props, ref) {
4405
- return jsx6(Box$1, {
4406
- ref,
4407
- as: "h2",
4408
- variant: "heading",
4409
- ...props,
4410
- ...__internalProps({
4411
- __themeKey: "text",
4412
- __css: {
4413
- fontFamily: "heading",
4414
- fontWeight: "heading",
4415
- lineHeight: "heading"
4416
- }
4417
- })
4418
- });
4419
- }, "Heading"));
4420
- var Card = /* @__PURE__ */import_react8.default.forwardRef(/* @__PURE__ */__name(function Card2(props, ref) {
4421
- return jsx6(Box$1, {
4422
- ref,
4423
- variant: "primary",
4424
- ...props,
4425
- ...__internalProps({
4426
- __themeKey: "cards"
4427
- })
4428
- });
4429
- }, "Card"));
4430
- var SVG = /* @__PURE__ */import_react8.default.forwardRef(/* @__PURE__ */__name(function SVG2({
4431
- size = 24,
4432
- ...rest
4433
- }, ref) {
4434
- const svgProps = {
4435
- xmlns: "http://www.w3.org/2000/svg",
4436
- width: size,
4437
- height: size,
4438
- viewBox: "0 0 24 24",
4439
- fill: "currentcolor",
4440
- ...rest
4441
- };
4442
- return jsx6(Box$1, {
4443
- ref,
4444
- as: "svg",
4445
- ...svgProps
4446
- });
4447
- }, "SVG"));
4448
- SVG.displayName = "SVG";
4449
- var CloseIcon = jsx6("svg", {
4450
- xmlns: "http://www.w3.org/2000/svg",
4451
- width: "24",
4452
- height: "24",
4453
- fill: "currentColor",
4454
- viewBox: "0 0 24 24",
4455
- children: jsx6("path", {
4456
- d: "M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"
4457
- })
4458
- });
4459
- var getContainerProps = getProps(__isBoxStyledSystemProp);
4460
- var getIframeProps = getProps(str => !__isBoxStyledSystemProp(str));
30
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
31
+ // If the importer is in node compatibility mode or this is not an ESM
32
+ // file that has been converted to a CommonJS file using a Babel-
33
+ // compatible transform (i.e. "__esModule" has not been set), then set
34
+ // "default" to the CommonJS "module.exports" for node compatibility.
35
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
36
+ value: mod,
37
+ enumerable: true
38
+ }) : target, mod));
39
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
40
+ value: true
41
+ }), mod);
4461
42
 
4462
- // ../ui/src/components/Button.tsx
4463
- var Button3 = /* @__PURE__ */React8.forwardRef((props, ref) => {
4464
- const {
4465
- children,
4466
- leftIcon,
4467
- rightIcon,
4468
- loading,
4469
- ...restProps
4470
- } = props;
4471
- return /* @__PURE__ */React8.createElement(Button, {
4472
- type: "button",
4473
- ...restProps,
4474
- ref,
4475
- sx: {
4476
- cursor: "pointer",
4477
- paddingX: "6",
4478
- paddingY: "4",
4479
- fontFamily: "body",
4480
- display: "inline-flex",
4481
- alignItems: "center",
4482
- gap: "4",
4483
- "&:disabled": {
4484
- cursor: "not-allowed"
4485
- },
4486
- ...restProps.sx
4487
- }
4488
- }, loading && /* @__PURE__ */React8.createElement(Icon2, {
4489
- inline: true,
4490
- icon: "three-dots-loading"
4491
- }), !loading && leftIcon && /* @__PURE__ */React8.createElement(Icon2, {
4492
- inline: true,
4493
- icon: leftIcon
4494
- }), children, rightIcon && /* @__PURE__ */React8.createElement(Icon2, {
4495
- inline: true,
4496
- icon: rightIcon
4497
- }));
43
+ // src/index.ts
44
+ var index_exports = {};
45
+ __export(index_exports, {
46
+ PlanCard: () => PlanCard
4498
47
  });
4499
- Button3.displayName = "Button";
4500
-
4501
- // ../ui/src/components/Card.tsx
4502
- var React9 = __toESM(require("react"), 1);
4503
- var Card3 = /* @__PURE__ */__name(props => {
4504
- return /* @__PURE__ */React9.createElement(Card, {
4505
- ...props,
4506
- sx: {
4507
- backgroundColor: "display.background.secondary.default",
4508
- border: "md",
4509
- borderColor: "display.border.muted.default",
4510
- borderRadius: "lg",
4511
- display: "flex",
4512
- flexDirection: "column",
4513
- alignItems: "center",
4514
- width: "fit-content",
4515
- boxShadow: "2px 4px 8px #E5E7EB",
4516
- ...props.sx
4517
- }
4518
- });
4519
- }, "Card");
4520
- var CardTitle = /* @__PURE__ */__name(({
4521
- children,
4522
- ...props
4523
- }) => {
4524
- return /* @__PURE__ */React9.createElement(Box$1, {
4525
- ...props,
4526
- sx: {
4527
- paddingY: "4",
4528
- paddingX: "8",
4529
- width: "full",
4530
- borderBottom: "md",
4531
- borderBottomColor: "display.border.muted.default",
4532
- ...props.sx
4533
- }
4534
- }, children);
4535
- }, "CardTitle");
4536
- var CardBody = /* @__PURE__ */__name(({
4537
- children,
4538
- ...props
4539
- }) => {
4540
- return /* @__PURE__ */React9.createElement(Box$1, {
4541
- ...props,
4542
- sx: {
4543
- paddingY: "4",
4544
- paddingX: "8",
4545
- width: "full",
4546
- backgroundColor: "display.background.muted.default",
4547
- ...props.sx
4548
- }
4549
- }, children);
4550
- }, "CardBody");
4551
- var CardFooter = /* @__PURE__ */__name(({
4552
- children,
4553
- ...props
4554
- }) => {
4555
- return /* @__PURE__ */React9.createElement(Box$1, {
4556
- ...props,
4557
- sx: {
4558
- paddingY: "2",
4559
- paddingX: "8",
4560
- width: "full",
4561
- ...props.sx
4562
- }
4563
- }, children);
4564
- }, "CardFooter");
4565
- Card3.Title = CardTitle;
4566
- Card3.Body = CardBody;
4567
- Card3.Footer = CardFooter;
4568
-
4569
- // ../ui/src/components/Stack.tsx
4570
- var Stack = /* @__PURE__ */__name(props => {
4571
- return /* @__PURE__ */React.createElement(Flex, {
4572
- ...props,
4573
- sx: {
4574
- flexDirection: "column",
4575
- alignItems: "flex-start",
4576
- ...props.sx
4577
- }
4578
- });
4579
- }, "Stack");
48
+ module.exports = __toCommonJS(index_exports);
4580
49
 
4581
- // ../../node_modules/.pnpm/@theme-ui+match-media@0.17.2_@theme-ui+core@0.17.2_@emotion+react@11.14.0_@types+react@_f8d5d2a429d84d480c0e8367788be412/node_modules/@theme-ui/match-media/dist/theme-ui-match-media.esm.js
4582
- var import_react9 = require("react");
50
+ // src/components/PlanCard.tsx
51
+ var import_ui7 = require("@ttoss/ui");
4583
52
 
4584
53
  // src/components/PlanCardCtaSlot.tsx
54
+ var import_ui = require("@ttoss/ui");
4585
55
  var PlanCardCtaSlot = /* @__PURE__ */__name(({
4586
56
  buttonProps
4587
57
  }) => {
@@ -4592,14 +62,14 @@ var PlanCardCtaSlot = /* @__PURE__ */__name(({
4592
62
  variant,
4593
63
  ...restButtonProps
4594
64
  } = buttonProps ?? {};
4595
- return /* @__PURE__ */React.createElement(Flex, {
65
+ return /* @__PURE__ */React.createElement(import_ui.Flex, {
4596
66
  sx: {
4597
67
  paddingY: "2",
4598
68
  paddingX: "6",
4599
69
  width: "full",
4600
70
  justifyContent: "center"
4601
71
  }
4602
- }, /* @__PURE__ */React.createElement(Button3, {
72
+ }, /* @__PURE__ */React.createElement(import_ui.Button, {
4603
73
  ...restButtonProps,
4604
74
  variant: variant ?? "accent",
4605
75
  leftIcon,
@@ -4613,7 +83,9 @@ var PlanCardCtaSlot = /* @__PURE__ */__name(({
4613
83
  }, "PlanCardCtaSlot");
4614
84
 
4615
85
  // src/components/PlanCardFeaturesSlot.tsx
4616
- var React10 = __toESM(require("react"), 1);
86
+ var import_react_icons = require("@ttoss/react-icons");
87
+ var import_ui2 = require("@ttoss/ui");
88
+ var React2 = __toESM(require("react"), 1);
4617
89
  var featuresTitle = "RECURSOS";
4618
90
  var PlanCardFeaturesSlot = /* @__PURE__ */__name(({
4619
91
  features,
@@ -4621,7 +93,7 @@ var PlanCardFeaturesSlot = /* @__PURE__ */__name(({
4621
93
  }) => {
4622
94
  const isEnterprise = variant === "enterprise";
4623
95
  const featureColor = isEnterprise ? "white" : "feedback.text.positive.default";
4624
- return /* @__PURE__ */React10.createElement(Box$1, {
96
+ return /* @__PURE__ */React2.createElement(import_ui2.Box, {
4625
97
  sx: {
4626
98
  paddingY: "4",
4627
99
  paddingX: "6",
@@ -4630,28 +102,28 @@ var PlanCardFeaturesSlot = /* @__PURE__ */__name(({
4630
102
  borderBottom: "md",
4631
103
  borderColor: "display.border.muted.default"
4632
104
  }
4633
- }, /* @__PURE__ */React10.createElement(Stack, {
105
+ }, /* @__PURE__ */React2.createElement(import_ui2.Stack, {
4634
106
  sx: {
4635
107
  gap: "5",
4636
108
  paddingY: "3"
4637
109
  }
4638
- }, /* @__PURE__ */React10.createElement(Flex, {
110
+ }, /* @__PURE__ */React2.createElement(import_ui2.Flex, {
4639
111
  sx: {
4640
112
  letterSpacing: "widest",
4641
113
  color: isEnterprise ? "white" : "text"
4642
114
  }
4643
- }, featuresTitle), /* @__PURE__ */React10.createElement(Flex, {
115
+ }, featuresTitle), /* @__PURE__ */React2.createElement(import_ui2.Flex, {
4644
116
  sx: {
4645
117
  flexDirection: "column",
4646
118
  gap: "3"
4647
119
  }
4648
120
  }, features.map((feature, index) => {
4649
- if (/* @__PURE__ */React10.isValidElement(feature)) {
4650
- return /* @__PURE__ */React10.createElement(React10.Fragment, {
121
+ if (/* @__PURE__ */React2.isValidElement(feature)) {
122
+ return /* @__PURE__ */React2.createElement(React2.Fragment, {
4651
123
  key: index
4652
124
  }, feature);
4653
125
  }
4654
- return /* @__PURE__ */React10.createElement(Flex, {
126
+ return /* @__PURE__ */React2.createElement(import_ui2.Flex, {
4655
127
  key: index,
4656
128
  sx: {
4657
129
  fontSize: "sm",
@@ -4659,9 +131,9 @@ var PlanCardFeaturesSlot = /* @__PURE__ */__name(({
4659
131
  alignItems: "center",
4660
132
  gap: "3"
4661
133
  }
4662
- }, /* @__PURE__ */React10.createElement(Icon2, {
134
+ }, /* @__PURE__ */React2.createElement(import_react_icons.Icon, {
4663
135
  icon: "fluent:checkmark-24-filled"
4664
- }), /* @__PURE__ */React10.createElement(Text, {
136
+ }), /* @__PURE__ */React2.createElement(import_ui2.Text, {
4665
137
  sx: {
4666
138
  fontSize: "sm",
4667
139
  color: featureColor,
@@ -4672,6 +144,7 @@ var PlanCardFeaturesSlot = /* @__PURE__ */__name(({
4672
144
  }, "PlanCardFeaturesSlot");
4673
145
 
4674
146
  // src/components/PlanCardHeaderSlot.tsx
147
+ var import_ui3 = require("@ttoss/ui");
4675
148
  var PlanCardHeaderSlot = /* @__PURE__ */__name(({
4676
149
  title,
4677
150
  subtitle,
@@ -4679,25 +152,25 @@ var PlanCardHeaderSlot = /* @__PURE__ */__name(({
4679
152
  variant = "default"
4680
153
  }) => {
4681
154
  const isEnterprise = variant === "enterprise";
4682
- return /* @__PURE__ */React.createElement(Box$1, {
155
+ return /* @__PURE__ */React.createElement(import_ui3.Box, {
4683
156
  sx: {
4684
157
  paddingY: hasTopTag ? "4" : "8",
4685
158
  paddingX: "8",
4686
159
  width: "full"
4687
160
  }
4688
- }, /* @__PURE__ */React.createElement(Flex, {
161
+ }, /* @__PURE__ */React.createElement(import_ui3.Flex, {
4689
162
  sx: {
4690
163
  flexDirection: "column",
4691
164
  gap: "2",
4692
165
  width: "full",
4693
166
  alignItems: "center"
4694
167
  }
4695
- }, /* @__PURE__ */React.createElement(Heading, {
168
+ }, /* @__PURE__ */React.createElement(import_ui3.Heading, {
4696
169
  sx: {
4697
170
  fontSize: "3xl",
4698
171
  color: isEnterprise ? "white" : "text"
4699
172
  }
4700
- }, title), subtitle && /* @__PURE__ */React.createElement(Text, {
173
+ }, title), subtitle && /* @__PURE__ */React.createElement(import_ui3.Text, {
4701
174
  sx: {
4702
175
  fontSize: "sm",
4703
176
  color: isEnterprise ? "white" : "display.text.secondary.default"
@@ -4706,40 +179,42 @@ var PlanCardHeaderSlot = /* @__PURE__ */__name(({
4706
179
  }, "PlanCardHeaderSlot");
4707
180
 
4708
181
  // src/components/PlanCardMetadataSlot.tsx
182
+ var import_react_icons2 = require("@ttoss/react-icons");
183
+ var import_ui4 = require("@ttoss/ui");
4709
184
  var PlanCardMetadataSlot = /* @__PURE__ */__name(({
4710
185
  metadata,
4711
186
  variant = "default"
4712
187
  }) => {
4713
188
  const isEnterprise = variant === "enterprise";
4714
- return /* @__PURE__ */React.createElement(Stack, {
189
+ return /* @__PURE__ */React.createElement(import_ui4.Stack, {
4715
190
  sx: {
4716
191
  width: "full",
4717
192
  gap: "6"
4718
193
  }
4719
194
  }, metadata.map(service => {
4720
195
  const serviceKey = service.id ?? service.key ?? service.label;
4721
- return /* @__PURE__ */React.createElement(Flex, {
196
+ return /* @__PURE__ */React.createElement(import_ui4.Flex, {
4722
197
  key: serviceKey,
4723
198
  sx: {
4724
199
  gap: "3",
4725
200
  flexDirection: "column",
4726
201
  width: "full"
4727
202
  }
4728
- }, /* @__PURE__ */React.createElement(Flex, {
203
+ }, /* @__PURE__ */React.createElement(import_ui4.Flex, {
4729
204
  sx: {
4730
205
  gap: "4",
4731
206
  alignItems: "center",
4732
207
  color: isEnterprise ? "white" : "display.text.secondary.default",
4733
208
  width: "full"
4734
209
  }
4735
- }, service.icon && /* @__PURE__ */React.createElement(Icon2, {
210
+ }, service.icon && /* @__PURE__ */React.createElement(import_react_icons2.Icon, {
4736
211
  icon: service.icon
4737
- }), /* @__PURE__ */React.createElement(Text, {
212
+ }), /* @__PURE__ */React.createElement(import_ui4.Text, {
4738
213
  sx: {
4739
214
  color: isEnterprise ? "white" : "display.text.secondary.default"
4740
215
  }
4741
216
  }, service.label + String.fromCharCode(58))), service.parameters.map(parameter => {
4742
- return /* @__PURE__ */React.createElement(Flex, {
217
+ return /* @__PURE__ */React.createElement(import_ui4.Flex, {
4743
218
  key: parameter.name,
4744
219
  sx: {
4745
220
  paddingX: "6",
@@ -4748,7 +223,7 @@ var PlanCardMetadataSlot = /* @__PURE__ */__name(({
4748
223
  borderRadius: "lg",
4749
224
  width: "full"
4750
225
  }
4751
- }, /* @__PURE__ */React.createElement(Flex, {
226
+ }, /* @__PURE__ */React.createElement(import_ui4.Flex, {
4752
227
  sx: {
4753
228
  width: "full",
4754
229
  display: "flex",
@@ -4756,12 +231,12 @@ var PlanCardMetadataSlot = /* @__PURE__ */__name(({
4756
231
  justifyContent: "space-between",
4757
232
  gap: "2"
4758
233
  }
4759
- }, /* @__PURE__ */React.createElement(Text, {
234
+ }, /* @__PURE__ */React.createElement(import_ui4.Text, {
4760
235
  sx: {
4761
236
  fontSize: "sm",
4762
237
  textAlign: "center"
4763
238
  }
4764
- }, parameter.name), /* @__PURE__ */React.createElement(Text, {
239
+ }, parameter.name), /* @__PURE__ */React.createElement(import_ui4.Text, {
4765
240
  sx: {
4766
241
  fontWeight: "semibold",
4767
242
  fontSize: "lg"
@@ -4772,12 +247,13 @@ var PlanCardMetadataSlot = /* @__PURE__ */__name(({
4772
247
  }, "PlanCardMetadataSlot");
4773
248
 
4774
249
  // src/components/PlanCardPriceSlot.tsx
250
+ var import_ui5 = require("@ttoss/ui");
4775
251
  var PlanCardPriceSlot = /* @__PURE__ */__name(({
4776
252
  price,
4777
253
  variant = "default"
4778
254
  }) => {
4779
255
  const isEnterprise = variant === "enterprise";
4780
- return /* @__PURE__ */React.createElement(Flex, {
256
+ return /* @__PURE__ */React.createElement(import_ui5.Flex, {
4781
257
  sx: {
4782
258
  paddingY: "6",
4783
259
  paddingX: "8",
@@ -4786,24 +262,24 @@ var PlanCardPriceSlot = /* @__PURE__ */__name(({
4786
262
  flexDirection: "column",
4787
263
  gap: "3"
4788
264
  }
4789
- }, /* @__PURE__ */React.createElement(Flex, {
265
+ }, /* @__PURE__ */React.createElement(import_ui5.Flex, {
4790
266
  sx: {
4791
267
  alignItems: "baseline",
4792
268
  gap: "4",
4793
269
  justifyContent: "center"
4794
270
  }
4795
- }, /* @__PURE__ */React.createElement(Text, {
271
+ }, /* @__PURE__ */React.createElement(import_ui5.Text, {
4796
272
  sx: {
4797
273
  fontSize: "4xl",
4798
274
  fontWeight: "bold",
4799
275
  color: isEnterprise ? "white" : "display.text.primary.default"
4800
276
  }
4801
- }, price.value), /* @__PURE__ */React.createElement(Text, {
277
+ }, price.value), /* @__PURE__ */React.createElement(import_ui5.Text, {
4802
278
  sx: {
4803
279
  fontSize: "sm",
4804
280
  color: isEnterprise ? "white" : "display.text.secondary.default"
4805
281
  }
4806
- }, price.interval)), price.description && /* @__PURE__ */React.createElement(Text, {
282
+ }, price.interval)), price.description && /* @__PURE__ */React.createElement(import_ui5.Text, {
4807
283
  sx: {
4808
284
  fontSize: "md",
4809
285
  color: isEnterprise ? "white" : "display.text.secondary.default"
@@ -4812,10 +288,11 @@ var PlanCardPriceSlot = /* @__PURE__ */__name(({
4812
288
  }, "PlanCardPriceSlot");
4813
289
 
4814
290
  // src/components/PlanCardTopTagSlot.tsx
291
+ var import_ui6 = require("@ttoss/ui");
4815
292
  var PlanCardTopTagSlot = /* @__PURE__ */__name(({
4816
293
  children
4817
294
  }) => {
4818
- return /* @__PURE__ */React.createElement(Box$1, {
295
+ return /* @__PURE__ */React.createElement(import_ui6.Box, {
4819
296
  sx: {
4820
297
  padding: "4"
4821
298
  }
@@ -4836,7 +313,7 @@ var PlanCard = /* @__PURE__ */__name(props => {
4836
313
  ...cardProps
4837
314
  } = props;
4838
315
  const effectiveMetadataVariant = metadataVariant ?? variant;
4839
- return /* @__PURE__ */React.createElement(Card3, {
316
+ return /* @__PURE__ */React.createElement(import_ui7.Card, {
4840
317
  ...cardProps,
4841
318
  sx: {
4842
319
  width: "full",
@@ -4851,7 +328,7 @@ var PlanCard = /* @__PURE__ */__name(props => {
4851
328
  subtitle,
4852
329
  hasTopTag: Boolean(props.topTag),
4853
330
  variant
4854
- }), metadata.length > 0 && /* @__PURE__ */React.createElement(Box$1, {
331
+ }), metadata.length > 0 && /* @__PURE__ */React.createElement(import_ui7.Box, {
4855
332
  sx: {
4856
333
  paddingY: "4",
4857
334
  paddingX: "8",
@@ -4874,39 +351,4 @@ var PlanCard = /* @__PURE__ */__name(props => {
4874
351
  // Annotate the CommonJS export names for ESM import in node:
4875
352
  0 && (module.exports = {
4876
353
  PlanCard
4877
- });
4878
- /*! Bundled license information:
4879
-
4880
- react-is/cjs/react-is.production.min.js:
4881
- (** @license React v16.13.1
4882
- * react-is.production.min.js
4883
- *
4884
- * Copyright (c) Facebook, Inc. and its affiliates.
4885
- *
4886
- * This source code is licensed under the MIT license found in the
4887
- * LICENSE file in the root directory of this source tree.
4888
- *)
4889
-
4890
- react-is/cjs/react-is.development.js:
4891
- (** @license React v16.13.1
4892
- * react-is.development.js
4893
- *
4894
- * Copyright (c) Facebook, Inc. and its affiliates.
4895
- *
4896
- * This source code is licensed under the MIT license found in the
4897
- * LICENSE file in the root directory of this source tree.
4898
- *)
4899
-
4900
- iconify-icon/dist/iconify-icon.mjs:
4901
- (**
4902
- * (c) Iconify
4903
- *
4904
- * For the full copyright and license information, please view the license.txt
4905
- * files at https://github.com/iconify/iconify
4906
- *
4907
- * Licensed under MIT.
4908
- *
4909
- * @license MIT
4910
- * @version 2.3.0
4911
- *)
4912
- */
354
+ });