@cronocode/react-box 3.0.12 → 3.0.14

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 (73) hide show
  1. package/README.md +8 -7
  2. package/array.d.ts +13 -0
  3. package/box.cjs +1 -1
  4. package/box.d.ts +8 -9
  5. package/box.mjs +16 -16
  6. package/components/button.d.ts +7 -6
  7. package/components/checkbox.d.ts +5 -3
  8. package/components/checkbox.mjs +4 -4
  9. package/components/dataGrid/contracts/dataGridContract.d.ts +36 -0
  10. package/components/dataGrid/dataGridCell.d.ts +8 -0
  11. package/components/dataGrid/dataGridGroupRow.d.ts +6 -0
  12. package/components/dataGrid/dataGridHeaderCell.d.ts +6 -0
  13. package/components/dataGrid/dataGridPagination.d.ts +6 -0
  14. package/components/dataGrid/dataGridRow.d.ts +6 -0
  15. package/components/dataGrid/models/cellModel.d.ts +10 -0
  16. package/components/dataGrid/models/columnModel.d.ts +36 -0
  17. package/components/dataGrid/models/gridModel.d.ts +44 -0
  18. package/components/dataGrid/models/groupRowCellModel.d.ts +10 -0
  19. package/components/dataGrid/models/groupRowModel.d.ts +23 -0
  20. package/components/dataGrid/models/rowModel.d.ts +16 -0
  21. package/components/dataGrid/useGrid.d.ts +3 -0
  22. package/components/dataGrid.cjs +1 -1
  23. package/components/dataGrid.d.ts +2 -7
  24. package/components/dataGrid.mjs +656 -18
  25. package/components/dropdown.cjs +1 -1
  26. package/components/dropdown.d.ts +2 -2
  27. package/components/dropdown.mjs +63 -62
  28. package/components/flex.d.ts +2 -1
  29. package/components/form.cjs +1 -1
  30. package/components/form.mjs +11 -8
  31. package/components/grid.d.ts +2 -1
  32. package/components/radioButton.cjs +1 -1
  33. package/components/radioButton.d.ts +7 -6
  34. package/components/radioButton.mjs +9 -9
  35. package/components/semantics.cjs +1 -1
  36. package/components/semantics.d.ts +27 -25
  37. package/components/semantics.mjs +26 -25
  38. package/components/textarea.d.ts +7 -6
  39. package/components/textbox.d.ts +7 -6
  40. package/components/tooltip.cjs +1 -1
  41. package/components/tooltip.d.ts +1 -1
  42. package/components/tooltip.mjs +20 -22
  43. package/core/boxConstants.d.ts +1 -0
  44. package/core/boxStyles.d.ts +112 -37
  45. package/core/boxStylesFormatters.d.ts +1 -1
  46. package/core/classNames.d.ts +1 -1
  47. package/core/extends/boxComponents.d.ts +391 -0
  48. package/core/{boxExtends.d.ts → extends/boxExtends.d.ts} +4 -1
  49. package/core/extends/useComponents.d.ts +2 -0
  50. package/core/theme/theme.d.ts +1 -3
  51. package/core/theme/themeContext.d.ts +2 -4
  52. package/core/useStyles.d.ts +2 -2
  53. package/core/variables.d.ts +1 -0
  54. package/core.cjs +4 -4
  55. package/core.mjs +634 -511
  56. package/hooks/useVisibility.d.ts +9 -1
  57. package/icons/arrowIcon.d.ts +2 -0
  58. package/icons/dotsIcon.d.ts +2 -0
  59. package/icons/groupingIcon.d.ts +2 -0
  60. package/icons/pinIcon.d.ts +2 -0
  61. package/package.json +1 -1
  62. package/types.d.ts +35 -6
  63. package/utils/fn/fnUtils.d.ts +4 -0
  64. package/utils/memo.d.ts +5 -0
  65. package/utils/object/objectUtils.d.ts +1 -1
  66. package/components/dataGrid/dataGridContract.d.ts +0 -24
  67. package/components/dataGrid/useGridData.d.ts +0 -7
  68. package/components/label.cjs +0 -1
  69. package/components/label.d.ts +0 -5
  70. package/components/label.mjs +0 -10
  71. package/core/theme/defaultTheme.d.ts +0 -3
  72. package/core/theme/themeContract.d.ts +0 -25
  73. package/core/theme/useTheme.d.ts +0 -2
package/core.mjs CHANGED
@@ -1,77 +1,80 @@
1
- import ve, { useContext as se, useMemo as L, useLayoutEffect as be, useEffect as ie, useState as ne, useRef as ye } from "react";
2
- import { jsx as ge } from "react/jsx-runtime";
3
- function he(...e) {
4
- return e.reduce((t, r) => r ? typeof r == "string" ? (t.push(r), t) : Array.isArray(r) ? (t.push(...he(...r)), t) : (Object.entries(r).forEach(([l, i]) => {
5
- i && t.push(l);
1
+ import we, { useMemo as ee, useLayoutEffect as ce, useEffect as de, useState as fe, useContext as xe, useRef as Fe } from "react";
2
+ import { jsx as x, jsxs as Ne } from "react/jsx-runtime";
3
+ import Ce from "./box.mjs";
4
+ import M from "./components/baseSvg.mjs";
5
+ function me(...e) {
6
+ return e.reduce((t, r) => r ? typeof r == "string" ? (t.push(r), t) : Array.isArray(r) ? (t.push(...me(...r)), t) : (Object.entries(r).forEach(([o, i]) => {
7
+ i && t.push(o);
6
8
  }), t) : t, []);
7
9
  }
8
- var u;
10
+ const W = 4;
11
+ var a;
9
12
  ((e) => {
10
13
  ((t) => {
11
14
  function r(i, n) {
12
15
  return `${i}${n.replace("/", "-")}`;
13
16
  }
14
17
  t.fraction = r;
15
- function l(i) {
18
+ function o(i) {
16
19
  return [`${i} path`, `${i} circle`, `${i} rect`, `${i} line`];
17
20
  }
18
- t.svg = l;
21
+ t.svg = o;
19
22
  })(e.ClassName || (e.ClassName = {})), ((t) => {
20
- function r(b, s, c = 4) {
21
- return `${b / c}rem`;
23
+ function r(v, c, f = W) {
24
+ return `${v / f}rem`;
22
25
  }
23
26
  t.rem = r;
24
- function l(b) {
25
- return `${b}px`;
27
+ function o(v) {
28
+ return `${v}px`;
26
29
  }
27
- t.px = l;
28
- function i(b, s) {
29
- const [c, m] = s.split("/");
30
- return `${+c / +m * 100}%`;
30
+ t.px = o;
31
+ function i(v) {
32
+ const [c, f] = v.split("/");
33
+ return `${+c / +f * 100}%`;
31
34
  }
32
35
  t.fraction = i;
33
- function n(b, s) {
34
- switch (s) {
36
+ function n(v, c) {
37
+ switch (c) {
35
38
  case "fit":
36
39
  return "100%";
37
40
  case "fit-screen":
38
- return b.toLocaleLowerCase().includes("height") ? "100vh" : "100vw";
41
+ return v.toLocaleLowerCase().includes("height") ? "100vh" : "100vw";
39
42
  default:
40
- return s;
43
+ return c;
41
44
  }
42
45
  }
43
46
  t.widthHeight = n;
44
- function d(b) {
45
- return (s, c) => `var(--${b}${c});`;
47
+ function u(v) {
48
+ return (c, f) => `var(--${v}${f});`;
46
49
  }
47
- t.variables = d;
48
- function o(b) {
49
- return (s, c) => `var(--${b}${c});`;
50
+ t.variables = u;
51
+ function l(v) {
52
+ return (c, f) => `var(--${v}${f});`;
50
53
  }
51
- t.svgVariables = o;
52
- function f(b, s) {
53
- return `repeat(${s},minmax(0,1fr))`;
54
+ t.svgVariables = l;
55
+ function d(v, c) {
56
+ return `repeat(${c},minmax(0,1fr))`;
54
57
  }
55
- t.gridColumns = f;
56
- function y(b, s) {
57
- return s === "full-row" ? "1/-1" : `span ${s}/span ${s}`;
58
+ t.gridColumns = d;
59
+ function b(v, c) {
60
+ return c === "full-row" ? "1/-1" : `span ${c}/span ${c}`;
58
61
  }
59
- t.gridColumn = y;
60
- function a(b, s) {
61
- return `${s}ms`;
62
+ t.gridColumn = b;
63
+ function s(v, c) {
64
+ return `${c}ms`;
62
65
  }
63
- t.ms = a;
64
- function v(b, s) {
65
- return `${s}deg`;
66
+ t.ms = s;
67
+ function h(v, c) {
68
+ return `${c}deg`;
66
69
  }
67
- t.rotate = v;
68
- function g(b, s) {
69
- return s === "xAxis" ? "-1 1" : "1 -1";
70
+ t.rotate = h;
71
+ function g(v, c) {
72
+ return c === "xAxis" ? "-1 1" : "1 -1";
70
73
  }
71
74
  t.flip = g;
72
75
  })(e.Value || (e.Value = {}));
73
- })(u || (u = {}));
74
- var M;
76
+ })(a || (a = {}));
77
+ var K;
75
78
  ((e) => {
76
79
  e.colors = {
77
80
  currentColor: "currentColor",
@@ -325,7 +328,34 @@ var M;
325
328
  "rose-800": "#9f1239",
326
329
  "rose-900": "#881337",
327
330
  "rose-950": "#4c0519"
328
- };
331
+ }, e.percentages = [
332
+ "1/2",
333
+ "1/3",
334
+ "2/3",
335
+ "1/4",
336
+ "2/4",
337
+ "3/4",
338
+ "1/5",
339
+ "2/5",
340
+ "3/5",
341
+ "4/5",
342
+ "1/6",
343
+ "2/6",
344
+ "3/6",
345
+ "4/6",
346
+ "5/6",
347
+ "1/12",
348
+ "2/12",
349
+ "3/12",
350
+ "4/12",
351
+ "5/12",
352
+ "6/12",
353
+ "7/12",
354
+ "8/12",
355
+ "9/12",
356
+ "10/12",
357
+ "11/12"
358
+ ];
329
359
  const t = {
330
360
  inherit: "inherit",
331
361
  none: "none",
@@ -336,21 +366,21 @@ var M;
336
366
  "medium-shadow": "rgba(0, 0, 0, 0.24) 0px 3px 8px",
337
367
  "large-shadow": "rgba(17, 17, 26, 0.1) 0px 4px 16px, rgba(17, 17, 26, 0.05) 0px 8px 32px"
338
368
  }, r = {};
339
- let l = {};
340
- function i(o) {
341
- return o in l ? r[o] = l[o] : o in t ? r[o] = t[o] : o in e.colors ? r[o] = e.colors[o] : r[o] = o, `var(--${o})`;
369
+ let o = {};
370
+ function i(l) {
371
+ return l in o ? r[l] = o[l] : l in t ? r[l] = t[l] : l in e.colors ? r[l] = e.colors[l] : r[l] = l, `var(--${l})`;
342
372
  }
343
373
  e.getVariableValue = i;
344
374
  function n() {
345
- return Object.entries(r).map(([o, f]) => `--${o}: ${f};`).join("");
375
+ return Object.entries(r).map(([l, d]) => `--${l}: ${d};`).join("");
346
376
  }
347
377
  e.generateVariables = n;
348
- function d(o) {
349
- l = o;
378
+ function u(l) {
379
+ o = l;
350
380
  }
351
- e.setUserVariables = d;
352
- })(M || (M = {}));
353
- const N = M, E = {
381
+ e.setUserVariables = u;
382
+ })(K || (K = {}));
383
+ const y = K, E = {
354
384
  /** The appearance CSS property is used to display UI elements with platform-specific styling, based on the operating system's theme. */
355
385
  appearance: [
356
386
  {
@@ -362,7 +392,7 @@ const N = M, E = {
362
392
  {
363
393
  values: 0,
364
394
  styleName: "border-width",
365
- valueFormat: u.Value.px
395
+ valueFormat: a.Value.px
366
396
  }
367
397
  ],
368
398
  /** The border-width shorthand CSS property sets the width of an element's left and right border. */
@@ -370,7 +400,7 @@ const N = M, E = {
370
400
  {
371
401
  values: 0,
372
402
  styleName: "border-inline-width",
373
- valueFormat: u.Value.px
403
+ valueFormat: a.Value.px
374
404
  }
375
405
  ],
376
406
  /** The border-width shorthand CSS property sets the width of an element's top and bottom border. */
@@ -378,7 +408,7 @@ const N = M, E = {
378
408
  {
379
409
  values: 0,
380
410
  styleName: "border-block-width",
381
- valueFormat: u.Value.px
411
+ valueFormat: a.Value.px
382
412
  }
383
413
  ],
384
414
  /** The border-top-width CSS property sets the width of the top border of an element. */
@@ -386,7 +416,7 @@ const N = M, E = {
386
416
  {
387
417
  values: 0,
388
418
  styleName: "border-top-width",
389
- valueFormat: u.Value.px
419
+ valueFormat: a.Value.px
390
420
  }
391
421
  ],
392
422
  /** The border-right-width CSS property sets the width of the right border of an element. */
@@ -394,7 +424,7 @@ const N = M, E = {
394
424
  {
395
425
  values: 0,
396
426
  styleName: "border-right-width",
397
- valueFormat: u.Value.px
427
+ valueFormat: a.Value.px
398
428
  }
399
429
  ],
400
430
  /** The border-bottom-width CSS property sets the width of the bottom border of an element. */
@@ -402,7 +432,7 @@ const N = M, E = {
402
432
  {
403
433
  values: 0,
404
434
  styleName: "border-bottom-width",
405
- valueFormat: u.Value.px
435
+ valueFormat: a.Value.px
406
436
  }
407
437
  ],
408
438
  /** The border-left-width CSS property sets the width of the left border of an element. */
@@ -410,7 +440,7 @@ const N = M, E = {
410
440
  {
411
441
  values: 0,
412
442
  styleName: "border-left-width",
413
- valueFormat: u.Value.px
443
+ valueFormat: a.Value.px
414
444
  }
415
445
  ],
416
446
  /** The border-style shorthand CSS property sets the line style for all four sides of an element's border. */
@@ -425,7 +455,7 @@ const N = M, E = {
425
455
  {
426
456
  styleName: "border-radius",
427
457
  values: 0,
428
- valueFormat: u.Value.rem
458
+ valueFormat: a.Value.rem
429
459
  }
430
460
  ],
431
461
  /** The border-top-radius CSS property rounds the top corners of an element by specifying the radius (or the radius of the semi-major and semi-minor axes) of the ellipse defining the curvature of the corner. */
@@ -433,7 +463,7 @@ const N = M, E = {
433
463
  {
434
464
  values: 0,
435
465
  styleName: ["border-top-left-radius", "border-top-right-radius"],
436
- valueFormat: u.Value.rem
466
+ valueFormat: a.Value.rem
437
467
  }
438
468
  ],
439
469
  /** The border-right-radius CSS property rounds the right corners of an element by specifying the radius (or the radius of the semi-major and semi-minor axes) of the ellipse defining the curvature of the corner. */
@@ -441,7 +471,7 @@ const N = M, E = {
441
471
  {
442
472
  values: 0,
443
473
  styleName: ["border-top-right-radius", "border-bottom-right-radius"],
444
- valueFormat: u.Value.rem
474
+ valueFormat: a.Value.rem
445
475
  }
446
476
  ],
447
477
  /** The border-bottom-radius CSS property rounds the bottom corners of an element by specifying the radius (or the radius of the semi-major and semi-minor axes) of the ellipse defining the curvature of the corner. */
@@ -449,7 +479,7 @@ const N = M, E = {
449
479
  {
450
480
  values: 0,
451
481
  styleName: ["border-bottom-left-radius", "border-bottom-right-radius"],
452
- valueFormat: u.Value.rem
482
+ valueFormat: a.Value.rem
453
483
  }
454
484
  ],
455
485
  /** The border-left-radius CSS property rounds the left corners of an element by specifying the radius (or the radius of the semi-major and semi-minor axes) of the ellipse defining the curvature of the corner. */
@@ -457,7 +487,7 @@ const N = M, E = {
457
487
  {
458
488
  values: 0,
459
489
  styleName: ["border-top-left-radius", "border-bottom-left-radius"],
460
- valueFormat: u.Value.rem
490
+ valueFormat: a.Value.rem
461
491
  }
462
492
  ],
463
493
  /** The border-top-left-radius CSS property rounds the top-left corner of an element by specifying the radius (or the radius of the semi-major and semi-minor axes) of the ellipse defining the curvature of the corner. */
@@ -465,7 +495,7 @@ const N = M, E = {
465
495
  {
466
496
  values: 0,
467
497
  styleName: "border-top-left-radius",
468
- valueFormat: u.Value.rem
498
+ valueFormat: a.Value.rem
469
499
  }
470
500
  ],
471
501
  /** The border-top-right-radius CSS property rounds the top-right corner of an element by specifying the radius (or the radius of the semi-major and semi-minor axes) of the ellipse defining the curvature of the corner. */
@@ -473,7 +503,7 @@ const N = M, E = {
473
503
  {
474
504
  values: 0,
475
505
  styleName: "border-top-right-radius",
476
- valueFormat: u.Value.rem
506
+ valueFormat: a.Value.rem
477
507
  }
478
508
  ],
479
509
  /** The border-bottom-right-radius CSS property rounds the bottom-right corner of an element by specifying the radius (or the radius of the semi-major and semi-minor axes) of the ellipse defining the curvature of the corner. */
@@ -481,7 +511,7 @@ const N = M, E = {
481
511
  {
482
512
  values: 0,
483
513
  styleName: "border-bottom-right-radius",
484
- valueFormat: u.Value.rem
514
+ valueFormat: a.Value.rem
485
515
  }
486
516
  ],
487
517
  /** The border-bottom-left-radius CSS property rounds the bottom-left corner of an element by specifying the radius (or the radius of the semi-major and semi-minor axes) of the ellipse defining the curvature of the corner. */
@@ -489,7 +519,7 @@ const N = M, E = {
489
519
  {
490
520
  values: 0,
491
521
  styleName: "border-bottom-left-radius",
492
- valueFormat: u.Value.rem
522
+ valueFormat: a.Value.rem
493
523
  }
494
524
  ],
495
525
  /** The position CSS property sets how an element is positioned in a document. The top, right, bottom, and left properties determine the final location of positioned elements. */
@@ -502,35 +532,51 @@ const N = M, E = {
502
532
  top: [
503
533
  {
504
534
  values: 0,
505
- valueFormat: u.Value.rem
535
+ valueFormat: a.Value.rem
536
+ },
537
+ {
538
+ values: y.percentages,
539
+ valueFormat: a.Value.fraction
506
540
  }
507
541
  ],
508
542
  /** The right CSS property participates in specifying the horizontal position of a positioned element. This inset property has no effect on non-positioned elements. */
509
543
  right: [
510
544
  {
511
545
  values: 0,
512
- valueFormat: u.Value.rem
546
+ valueFormat: a.Value.rem
547
+ },
548
+ {
549
+ values: y.percentages,
550
+ valueFormat: a.Value.fraction
513
551
  }
514
552
  ],
515
553
  /** The bottom CSS property participates in setting the vertical position of a positioned element. This inset property has no effect on non-positioned elements. */
516
554
  bottom: [
517
555
  {
518
556
  values: 0,
519
- valueFormat: u.Value.rem
557
+ valueFormat: a.Value.rem
558
+ },
559
+ {
560
+ values: y.percentages,
561
+ valueFormat: a.Value.fraction
520
562
  }
521
563
  ],
522
564
  /** The left CSS property participates in specifying the horizontal position of a positioned element. This inset property has no effect on non-positioned elements. */
523
565
  left: [
524
566
  {
525
567
  values: 0,
526
- valueFormat: u.Value.rem
568
+ valueFormat: a.Value.rem
569
+ },
570
+ {
571
+ values: y.percentages,
572
+ valueFormat: a.Value.fraction
527
573
  }
528
574
  ],
529
575
  /** The inset CSS property is a shorthand that corresponds to the top, right, bottom, and/or left properties. It has the same multi-value syntax of the margin shorthand. */
530
576
  inset: [
531
577
  {
532
578
  values: 0,
533
- valueFormat: u.Value.rem
579
+ valueFormat: a.Value.rem
534
580
  }
535
581
  ],
536
582
  /** The `box-sizing` CSS property sets how the total width and height of an element is calculated. */
@@ -703,7 +749,7 @@ const N = M, E = {
703
749
  {
704
750
  styleName: "font-size",
705
751
  values: 0,
706
- valueFormat: (e) => u.Value.rem(e, void 0, 16)
752
+ valueFormat: (e) => a.Value.rem(e, void 0, 16)
707
753
  },
708
754
  {
709
755
  styleName: "font-size",
@@ -728,7 +774,7 @@ const N = M, E = {
728
774
  gap: [
729
775
  {
730
776
  values: 0,
731
- valueFormat: u.Value.rem
777
+ valueFormat: a.Value.rem
732
778
  }
733
779
  ],
734
780
  /** The row-gap CSS property sets the size of the gap (gutter) between an element's rows. */
@@ -736,7 +782,7 @@ const N = M, E = {
736
782
  {
737
783
  styleName: "row-gap",
738
784
  values: 0,
739
- valueFormat: u.Value.rem
785
+ valueFormat: a.Value.rem
740
786
  }
741
787
  ],
742
788
  /** The column-gap CSS property sets the size of the gap (gutter) between an element's columns. */
@@ -744,7 +790,7 @@ const N = M, E = {
744
790
  {
745
791
  styleName: "column-gap",
746
792
  values: 0,
747
- valueFormat: u.Value.rem
793
+ valueFormat: a.Value.rem
748
794
  }
749
795
  ],
750
796
  /** The order CSS property sets the order to lay out an item in a flex or grid container. Items in a container are sorted by ascending order value and then by their source code order. Items not given an explicit order value are assigned the default value of 0. */
@@ -756,7 +802,7 @@ const N = M, E = {
756
802
  ],
757
803
  /** The height CSS property specifies the height of an element. By default, the property defines the height of the content area. If box-sizing is set to border-box, however, it instead determines the height of the border area. */
758
804
  height: [
759
- { values: 0, valueFormat: (e) => `${e / 4}rem` },
805
+ { values: 0, valueFormat: a.Value.rem },
760
806
  {
761
807
  values: ["fit"],
762
808
  valueFormat: () => "100%"
@@ -766,38 +812,8 @@ const N = M, E = {
766
812
  valueFormat: () => "100vh"
767
813
  },
768
814
  {
769
- values: [
770
- "1/2",
771
- "1/3",
772
- "2/3",
773
- "1/4",
774
- "2/4",
775
- "3/4",
776
- "1/5",
777
- "2/5",
778
- "3/5",
779
- "4/5",
780
- "1/6",
781
- "2/6",
782
- "3/6",
783
- "4/6",
784
- "5/6",
785
- "1/12",
786
- "2/12",
787
- "3/12",
788
- "4/12",
789
- "5/12",
790
- "6/12",
791
- "7/12",
792
- "8/12",
793
- "9/12",
794
- "10/12",
795
- "11/12"
796
- ],
797
- valueFormat: (e) => {
798
- const [t, r] = e.split("/");
799
- return `${+t / +r * 100}%`;
800
- }
815
+ values: y.percentages,
816
+ valueFormat: a.Value.fraction
801
817
  },
802
818
  {
803
819
  values: ["auto", "fit-content", "max-content", "min-content"]
@@ -805,7 +821,7 @@ const N = M, E = {
805
821
  ],
806
822
  /** The min-height CSS property sets the minimum height of an element. It prevents the used value of the height property from becoming smaller than the value specified for min-height. */
807
823
  minHeight: [
808
- { styleName: "min-height", values: 0, valueFormat: (e) => `${e / 4}rem` },
824
+ { styleName: "min-height", values: 0, valueFormat: a.Value.rem },
809
825
  {
810
826
  styleName: "min-height",
811
827
  values: ["fit"],
@@ -818,38 +834,8 @@ const N = M, E = {
818
834
  },
819
835
  {
820
836
  styleName: "min-height",
821
- values: [
822
- "1/2",
823
- "1/3",
824
- "2/3",
825
- "1/4",
826
- "2/4",
827
- "3/4",
828
- "1/5",
829
- "2/5",
830
- "3/5",
831
- "4/5",
832
- "1/6",
833
- "2/6",
834
- "3/6",
835
- "4/6",
836
- "5/6",
837
- "1/12",
838
- "2/12",
839
- "3/12",
840
- "4/12",
841
- "5/12",
842
- "6/12",
843
- "7/12",
844
- "8/12",
845
- "9/12",
846
- "10/12",
847
- "11/12"
848
- ],
849
- valueFormat: (e) => {
850
- const [t, r] = e.split("/");
851
- return `${+t / +r * 100}%`;
852
- }
837
+ values: y.percentages,
838
+ valueFormat: a.Value.fraction
853
839
  },
854
840
  {
855
841
  styleName: "min-height",
@@ -858,7 +844,7 @@ const N = M, E = {
858
844
  ],
859
845
  /** The max-height CSS property sets the maximum height of an element. It prevents the used value of the height property from becoming larger than the value specified for max-height. */
860
846
  maxHeight: [
861
- { styleName: "max-height", values: 0, valueFormat: (e) => `${e / 4}rem` },
847
+ { styleName: "max-height", values: 0, valueFormat: a.Value.rem },
862
848
  {
863
849
  styleName: "max-height",
864
850
  values: ["fit"],
@@ -871,38 +857,8 @@ const N = M, E = {
871
857
  },
872
858
  {
873
859
  styleName: "max-height",
874
- values: [
875
- "1/2",
876
- "1/3",
877
- "2/3",
878
- "1/4",
879
- "2/4",
880
- "3/4",
881
- "1/5",
882
- "2/5",
883
- "3/5",
884
- "4/5",
885
- "1/6",
886
- "2/6",
887
- "3/6",
888
- "4/6",
889
- "5/6",
890
- "1/12",
891
- "2/12",
892
- "3/12",
893
- "4/12",
894
- "5/12",
895
- "6/12",
896
- "7/12",
897
- "8/12",
898
- "9/12",
899
- "10/12",
900
- "11/12"
901
- ],
902
- valueFormat: (e) => {
903
- const [t, r] = e.split("/");
904
- return `${+t / +r * 100}%`;
905
- }
860
+ values: y.percentages,
861
+ valueFormat: a.Value.fraction
906
862
  },
907
863
  {
908
864
  styleName: "max-height",
@@ -911,7 +867,7 @@ const N = M, E = {
911
867
  ],
912
868
  /** The width CSS property sets an element's width. By default, it sets the width of the content area, but if box-sizing is set to border-box, it sets the width of the border area. */
913
869
  width: [
914
- { values: 0, valueFormat: (e) => `${e / 4}rem` },
870
+ { values: 0, valueFormat: a.Value.rem },
915
871
  {
916
872
  values: ["fit"],
917
873
  valueFormat: () => "100%"
@@ -921,38 +877,8 @@ const N = M, E = {
921
877
  valueFormat: () => "100vw"
922
878
  },
923
879
  {
924
- values: [
925
- "1/2",
926
- "1/3",
927
- "2/3",
928
- "1/4",
929
- "2/4",
930
- "3/4",
931
- "1/5",
932
- "2/5",
933
- "3/5",
934
- "4/5",
935
- "1/6",
936
- "2/6",
937
- "3/6",
938
- "4/6",
939
- "5/6",
940
- "1/12",
941
- "2/12",
942
- "3/12",
943
- "4/12",
944
- "5/12",
945
- "6/12",
946
- "7/12",
947
- "8/12",
948
- "9/12",
949
- "10/12",
950
- "11/12"
951
- ],
952
- valueFormat: (e) => {
953
- const [t, r] = e.split("/");
954
- return `${+t / +r * 100}%`;
955
- }
880
+ values: y.percentages,
881
+ valueFormat: a.Value.fraction
956
882
  },
957
883
  {
958
884
  values: ["auto", "fit-content", "max-content", "min-content"]
@@ -960,7 +886,7 @@ const N = M, E = {
960
886
  ],
961
887
  /** The min-width CSS property sets the minimum width of an element. It prevents the used value of the width property from becoming smaller than the value specified for min-width. */
962
888
  minWidth: [
963
- { styleName: "min-width", values: 0, valueFormat: (e) => `${e / 4}rem` },
889
+ { styleName: "min-width", values: 0, valueFormat: a.Value.rem },
964
890
  {
965
891
  styleName: "min-width",
966
892
  values: ["fit"],
@@ -973,38 +899,8 @@ const N = M, E = {
973
899
  },
974
900
  {
975
901
  styleName: "min-width",
976
- values: [
977
- "1/2",
978
- "1/3",
979
- "2/3",
980
- "1/4",
981
- "2/4",
982
- "3/4",
983
- "1/5",
984
- "2/5",
985
- "3/5",
986
- "4/5",
987
- "1/6",
988
- "2/6",
989
- "3/6",
990
- "4/6",
991
- "5/6",
992
- "1/12",
993
- "2/12",
994
- "3/12",
995
- "4/12",
996
- "5/12",
997
- "6/12",
998
- "7/12",
999
- "8/12",
1000
- "9/12",
1001
- "10/12",
1002
- "11/12"
1003
- ],
1004
- valueFormat: (e) => {
1005
- const [t, r] = e.split("/");
1006
- return `${+t / +r * 100}%`;
1007
- }
902
+ values: y.percentages,
903
+ valueFormat: a.Value.fraction
1008
904
  },
1009
905
  {
1010
906
  styleName: "min-width",
@@ -1013,7 +909,7 @@ const N = M, E = {
1013
909
  ],
1014
910
  /** The max-width CSS property sets the maximum width of an element. It prevents the used value of the width property from becoming larger than the value specified by max-width. */
1015
911
  maxWidth: [
1016
- { styleName: "max-width", values: 0, valueFormat: (e) => `${e / 4}rem` },
912
+ { styleName: "max-width", values: 0, valueFormat: a.Value.rem },
1017
913
  {
1018
914
  styleName: "max-width",
1019
915
  values: ["fit"],
@@ -1026,38 +922,8 @@ const N = M, E = {
1026
922
  },
1027
923
  {
1028
924
  styleName: "max-width",
1029
- values: [
1030
- "1/2",
1031
- "1/3",
1032
- "2/3",
1033
- "1/4",
1034
- "2/4",
1035
- "3/4",
1036
- "1/5",
1037
- "2/5",
1038
- "3/5",
1039
- "4/5",
1040
- "1/6",
1041
- "2/6",
1042
- "3/6",
1043
- "4/6",
1044
- "5/6",
1045
- "1/12",
1046
- "2/12",
1047
- "3/12",
1048
- "4/12",
1049
- "5/12",
1050
- "6/12",
1051
- "7/12",
1052
- "8/12",
1053
- "9/12",
1054
- "10/12",
1055
- "11/12"
1056
- ],
1057
- valueFormat: (e) => {
1058
- const [t, r] = e.split("/");
1059
- return `${+t / +r * 100}%`;
1060
- }
925
+ values: y.percentages,
926
+ valueFormat: a.Value.fraction
1061
927
  },
1062
928
  {
1063
929
  styleName: "max-width",
@@ -1069,7 +935,7 @@ const N = M, E = {
1069
935
  {
1070
936
  styleName: "letter-spacing",
1071
937
  values: 0,
1072
- valueFormat: u.Value.px
938
+ valueFormat: a.Value.px
1073
939
  }
1074
940
  ],
1075
941
  /** The line-height CSS property sets the height of a line box in horizontal writing modes. In vertical writing modes, it sets the width of a line box. It's commonly used to set the distance between lines of text. On block-level elements in horizontal writing modes, it specifies the preferred height of line boxes within the element, and on non-replaced inline elements, it specifies the height that is used to calculate line box height. */
@@ -1077,7 +943,7 @@ const N = M, E = {
1077
943
  {
1078
944
  styleName: "line-height",
1079
945
  values: 0,
1080
- valueFormat: u.Value.px
946
+ valueFormat: a.Value.px
1081
947
  },
1082
948
  {
1083
949
  styleName: "line-height",
@@ -1097,11 +963,15 @@ const N = M, E = {
1097
963
  {
1098
964
  values: 0,
1099
965
  styleName: "margin",
1100
- valueFormat: u.Value.rem
966
+ valueFormat: a.Value.rem
1101
967
  },
1102
968
  {
1103
969
  values: ["auto"],
1104
970
  styleName: "margin"
971
+ },
972
+ {
973
+ values: y.percentages,
974
+ valueFormat: a.Value.fraction
1105
975
  }
1106
976
  ],
1107
977
  /** The margin-inline CSS shorthand property is a shorthand property that defines both the logical inline start and end margins of an element, which maps to physical margins depending on the element's writing mode, directionality, and text orientation. */
@@ -1109,11 +979,15 @@ const N = M, E = {
1109
979
  {
1110
980
  values: 0,
1111
981
  styleName: "margin-inline",
1112
- valueFormat: u.Value.rem
982
+ valueFormat: a.Value.rem
1113
983
  },
1114
984
  {
1115
985
  values: ["auto"],
1116
986
  styleName: "margin-inline"
987
+ },
988
+ {
989
+ values: y.percentages,
990
+ valueFormat: a.Value.fraction
1117
991
  }
1118
992
  ],
1119
993
  /** The margin-block CSS shorthand property defines the logical block start and end margins of an element, which maps to physical margins depending on the element's writing mode, directionality, and text orientation. */
@@ -1121,11 +995,15 @@ const N = M, E = {
1121
995
  {
1122
996
  values: 0,
1123
997
  styleName: "margin-block",
1124
- valueFormat: u.Value.rem
998
+ valueFormat: a.Value.rem
1125
999
  },
1126
1000
  {
1127
1001
  values: ["auto"],
1128
1002
  styleName: "margin-block"
1003
+ },
1004
+ {
1005
+ values: y.percentages,
1006
+ valueFormat: a.Value.fraction
1129
1007
  }
1130
1008
  ],
1131
1009
  /** The margin-top CSS property sets the margin area on the top of an element. A positive value places it farther from its neighbors, while a negative value places it closer. */
@@ -1133,11 +1011,15 @@ const N = M, E = {
1133
1011
  {
1134
1012
  values: 0,
1135
1013
  styleName: "margin-top",
1136
- valueFormat: u.Value.rem
1014
+ valueFormat: a.Value.rem
1137
1015
  },
1138
1016
  {
1139
1017
  values: ["auto"],
1140
1018
  styleName: "margin-top"
1019
+ },
1020
+ {
1021
+ values: y.percentages,
1022
+ valueFormat: a.Value.fraction
1141
1023
  }
1142
1024
  ],
1143
1025
  /** The margin-right CSS property sets the margin area on the right side of an element. A positive value places it farther from its neighbors, while a negative value places it closer. */
@@ -1145,11 +1027,15 @@ const N = M, E = {
1145
1027
  {
1146
1028
  values: 0,
1147
1029
  styleName: "margin-right",
1148
- valueFormat: u.Value.rem
1030
+ valueFormat: a.Value.rem
1149
1031
  },
1150
1032
  {
1151
1033
  values: ["auto"],
1152
1034
  styleName: "margin-right"
1035
+ },
1036
+ {
1037
+ values: y.percentages,
1038
+ valueFormat: a.Value.fraction
1153
1039
  }
1154
1040
  ],
1155
1041
  /** The margin-bottom CSS property sets the margin area on the bottom of an element. A positive value places it farther from its neighbors, while a negative value places it closer. */
@@ -1157,11 +1043,15 @@ const N = M, E = {
1157
1043
  {
1158
1044
  values: 0,
1159
1045
  styleName: "margin-bottom",
1160
- valueFormat: u.Value.rem
1046
+ valueFormat: a.Value.rem
1161
1047
  },
1162
1048
  {
1163
1049
  values: ["auto"],
1164
1050
  styleName: "margin-bottom"
1051
+ },
1052
+ {
1053
+ values: y.percentages,
1054
+ valueFormat: a.Value.fraction
1165
1055
  }
1166
1056
  ],
1167
1057
  /** The margin-left CSS property sets the margin area on the left side of an element. A positive value places it farther from its neighbors, while a negative value places it closer. */
@@ -1169,11 +1059,15 @@ const N = M, E = {
1169
1059
  {
1170
1060
  values: 0,
1171
1061
  styleName: "margin-left",
1172
- valueFormat: u.Value.rem
1062
+ valueFormat: a.Value.rem
1173
1063
  },
1174
1064
  {
1175
1065
  values: ["auto"],
1176
1066
  styleName: "margin-left"
1067
+ },
1068
+ {
1069
+ values: y.percentages,
1070
+ valueFormat: a.Value.fraction
1177
1071
  }
1178
1072
  ],
1179
1073
  /** The padding CSS shorthand property sets the padding area on all four sides of an element at once. */
@@ -1181,7 +1075,11 @@ const N = M, E = {
1181
1075
  {
1182
1076
  values: 0,
1183
1077
  styleName: "padding",
1184
- valueFormat: u.Value.rem
1078
+ valueFormat: a.Value.rem
1079
+ },
1080
+ {
1081
+ values: y.percentages,
1082
+ valueFormat: a.Value.fraction
1185
1083
  }
1186
1084
  ],
1187
1085
  /** The padding-inline CSS shorthand property defines the logical inline start and end padding of an element, which maps to physical padding properties depending on the element's writing mode, directionality, and text orientation. */
@@ -1189,7 +1087,11 @@ const N = M, E = {
1189
1087
  {
1190
1088
  values: 0,
1191
1089
  styleName: "padding-inline",
1192
- valueFormat: u.Value.rem
1090
+ valueFormat: a.Value.rem
1091
+ },
1092
+ {
1093
+ values: y.percentages,
1094
+ valueFormat: a.Value.fraction
1193
1095
  }
1194
1096
  ],
1195
1097
  /** The padding-block CSS shorthand property defines the logical block start and end padding of an element, which maps to physical padding properties depending on the element's writing mode, directionality, and text orientation. */
@@ -1197,7 +1099,11 @@ const N = M, E = {
1197
1099
  {
1198
1100
  values: 0,
1199
1101
  styleName: "padding-block",
1200
- valueFormat: u.Value.rem
1102
+ valueFormat: a.Value.rem
1103
+ },
1104
+ {
1105
+ values: y.percentages,
1106
+ valueFormat: a.Value.fraction
1201
1107
  }
1202
1108
  ],
1203
1109
  /** The padding-top CSS property sets the height of the padding area on the top of an element. */
@@ -1205,7 +1111,11 @@ const N = M, E = {
1205
1111
  {
1206
1112
  values: 0,
1207
1113
  styleName: "padding-top",
1208
- valueFormat: u.Value.rem
1114
+ valueFormat: a.Value.rem
1115
+ },
1116
+ {
1117
+ values: y.percentages,
1118
+ valueFormat: a.Value.fraction
1209
1119
  }
1210
1120
  ],
1211
1121
  /** The padding-right CSS property sets the width of the padding area on the right of an element. */
@@ -1213,7 +1123,11 @@ const N = M, E = {
1213
1123
  {
1214
1124
  values: 0,
1215
1125
  styleName: "padding-right",
1216
- valueFormat: u.Value.rem
1126
+ valueFormat: a.Value.rem
1127
+ },
1128
+ {
1129
+ values: y.percentages,
1130
+ valueFormat: a.Value.fraction
1217
1131
  }
1218
1132
  ],
1219
1133
  /** The padding-bottom CSS property sets the height of the padding area on the bottom of an element. */
@@ -1221,7 +1135,11 @@ const N = M, E = {
1221
1135
  {
1222
1136
  values: 0,
1223
1137
  styleName: "padding-bottom",
1224
- valueFormat: u.Value.rem
1138
+ valueFormat: a.Value.rem
1139
+ },
1140
+ {
1141
+ values: y.percentages,
1142
+ valueFormat: a.Value.fraction
1225
1143
  }
1226
1144
  ],
1227
1145
  /** The padding-left CSS property sets the width of the padding area to the left of an element. */
@@ -1229,7 +1147,11 @@ const N = M, E = {
1229
1147
  {
1230
1148
  values: 0,
1231
1149
  styleName: "padding-left",
1232
- valueFormat: u.Value.rem
1150
+ valueFormat: a.Value.rem
1151
+ },
1152
+ {
1153
+ values: y.percentages,
1154
+ valueFormat: a.Value.fraction
1233
1155
  }
1234
1156
  ],
1235
1157
  /** The object-fit CSS property sets how the content of a replaced element, such as an <img> or <video>, should be resized to fit its container. */
@@ -1250,7 +1172,7 @@ const N = M, E = {
1250
1172
  {
1251
1173
  styleName: "outline-width",
1252
1174
  values: 0,
1253
- valueFormat: u.Value.px
1175
+ valueFormat: a.Value.px
1254
1176
  }
1255
1177
  ],
1256
1178
  /** The outline-style CSS property sets the style of an element's outline. An outline is a line that is drawn around an element, outside the border. */
@@ -1265,7 +1187,7 @@ const N = M, E = {
1265
1187
  {
1266
1188
  styleName: "outline-offset",
1267
1189
  values: 0,
1268
- valueFormat: u.Value.px
1190
+ valueFormat: a.Value.px
1269
1191
  }
1270
1192
  ],
1271
1193
  /** The overflow CSS shorthand property sets the desired behavior when content does not fit in the element's padding box (overflows) in the horizontal and/or vertical direction. */
@@ -1418,7 +1340,7 @@ const N = M, E = {
1418
1340
  }
1419
1341
  ],
1420
1342
  /** The grid-column CSS shorthand property specifies a grid item's size and location within a grid column by contributing a line, a span, or nothing (automatic) to its grid placement, thereby specifying the inline-start and inline-end edge of its grid area. */
1421
- colSpan: [
1343
+ gridColumn: [
1422
1344
  {
1423
1345
  styleName: "grid-column",
1424
1346
  values: 0,
@@ -1473,40 +1395,40 @@ const N = M, E = {
1473
1395
  ],
1474
1396
  color: [
1475
1397
  {
1476
- values: Object.keys(N.colors),
1398
+ values: Object.keys(y.colors),
1477
1399
  valueFormat: (e, t) => t(e)
1478
1400
  }
1479
1401
  ],
1480
1402
  bgColor: [
1481
1403
  {
1482
- values: Object.keys(N.colors),
1404
+ values: Object.keys(y.colors),
1483
1405
  valueFormat: (e, t) => t(e),
1484
1406
  styleName: "background-color"
1485
1407
  }
1486
1408
  ],
1487
1409
  borderColor: [
1488
1410
  {
1489
- values: Object.keys(N.colors),
1411
+ values: Object.keys(y.colors),
1490
1412
  valueFormat: (e, t) => t(e),
1491
1413
  styleName: "border-color"
1492
1414
  }
1493
1415
  ],
1494
1416
  outlineColor: [
1495
1417
  {
1496
- values: Object.keys(N.colors),
1418
+ values: Object.keys(y.colors),
1497
1419
  valueFormat: (e, t) => t(e),
1498
1420
  styleName: "outline-color"
1499
1421
  }
1500
1422
  ],
1501
1423
  fill: [
1502
1424
  {
1503
- values: Object.keys(N.colors),
1425
+ values: Object.keys(y.colors),
1504
1426
  valueFormat: (e, t) => t(e)
1505
1427
  }
1506
1428
  ],
1507
1429
  stroke: [
1508
1430
  {
1509
- values: Object.keys(N.colors),
1431
+ values: Object.keys(y.colors),
1510
1432
  valueFormat: (e, t) => t(e)
1511
1433
  }
1512
1434
  ],
@@ -1527,11 +1449,18 @@ const N = M, E = {
1527
1449
  translateX: [
1528
1450
  {
1529
1451
  values: 0,
1530
- valueFormat: (e) => `translateX(${e / 4}rem)`,
1452
+ valueFormat: (e) => `translateX(${e / W}rem)`,
1453
+ styleName: "transform"
1454
+ }
1455
+ ],
1456
+ translateY: [
1457
+ {
1458
+ values: 0,
1459
+ valueFormat: (e) => `translateY(${e / W}rem)`,
1531
1460
  styleName: "transform"
1532
1461
  }
1533
1462
  ]
1534
- }, ue = {
1463
+ }, ve = {
1535
1464
  hover: ":hover",
1536
1465
  focus: ":focus-within",
1537
1466
  hasFocus: ":has(:focus)",
@@ -1544,29 +1473,32 @@ const N = M, E = {
1544
1473
  hasChecked: ":has(:checked)",
1545
1474
  hasRequired: ":has(:required)",
1546
1475
  hasDisabled: ":has([disabled])"
1547
- }, U = {
1476
+ }, H = {
1548
1477
  indeterminate: ":indeterminate",
1549
1478
  checked: ":checked",
1550
1479
  required: ":required",
1551
1480
  disabled: "[disabled]",
1552
1481
  selected: '[aria-selected="true"]'
1553
- }, Z = { ...ue, ...U }, de = Object.entries(Z).reduce(
1482
+ }, Ve = {
1483
+ theme: ""
1484
+ }, te = { ...ve, ...H, ...Ve }, ye = Object.entries(te).reduce(
1554
1485
  (e, [t], r) => (e[t] = Math.pow(2, r), e),
1555
1486
  {}
1556
- ), W = Object.entries(Z).reduce(
1487
+ ), G = Object.entries(te).reduce(
1557
1488
  (e, [t]) => {
1558
- const r = de[t];
1559
- return Object.entries(e).forEach(([l, i]) => {
1560
- e[+l + r] = [...i, t];
1489
+ const r = ye[t];
1490
+ return Object.entries(e).forEach(([o, i]) => {
1491
+ e[+o + r] = [...i, t];
1561
1492
  }), e;
1562
1493
  },
1563
1494
  { 0: [] }
1564
- ), q = {
1495
+ ), se = {
1565
1496
  hoverGroup: "hover",
1566
1497
  focusGroup: "focus",
1567
1498
  activeGroup: "active",
1568
- disabledGroup: "disabled"
1569
- }, H = {
1499
+ disabledGroup: "disabled",
1500
+ theme: "theme"
1501
+ }, k = {
1570
1502
  /** Styles applied for small screens and larger. >= 640 */
1571
1503
  sm: 640,
1572
1504
  /** Styles applied for medium screens and larger. >= 768 */
@@ -1578,35 +1510,35 @@ const N = M, E = {
1578
1510
  /** Styles applied for 2x extra-large screens and larger. >= 1536 */
1579
1511
  xxl: 1536
1580
1512
  };
1581
- var X;
1513
+ var q;
1582
1514
  ((e) => {
1583
- function t(n, d, o) {
1584
- const f = { ...n }, y = f.props || {};
1585
- return d.forEach((a) => {
1586
- a in f && (y[a] = f[a], delete f[a]);
1587
- }), o && Object.entries(o).forEach(([a, v]) => {
1588
- y[a] = v;
1589
- }), f.props = y, f;
1515
+ function t(n, u, l) {
1516
+ const d = { ...n }, b = d.props || {};
1517
+ return u.forEach((s) => {
1518
+ s in d && (b[s] = d[s], delete d[s]);
1519
+ }), l && Object.entries(l).forEach(([s, h]) => {
1520
+ b[s] = h;
1521
+ }), d.props = b, d;
1590
1522
  }
1591
1523
  e.buildProps = t;
1592
1524
  function r(n) {
1593
1525
  return !!n && typeof n == "object";
1594
1526
  }
1595
1527
  e.isObject = r;
1596
- function l(...n) {
1597
- return n.reduce((d, o) => (Object.keys(o ?? {}).forEach((f) => {
1598
- const y = d[f], a = o[f];
1599
- f in U && typeof a == "boolean" || (f in U && Array.isArray(a) ? d[f] = l(y, a[1] ?? {}) : Array.isArray(y) && Array.isArray(a) ? d[f] = y.concat(...a) : r(y) && r(a) ? d[f] = l(y, a) : d[f] = a);
1600
- }), d), {});
1528
+ function o(...n) {
1529
+ return n.reduce((u, l) => (Object.keys(l ?? {}).forEach((d) => {
1530
+ const b = u[d], s = l[d];
1531
+ r(s) && "clean" in s && s.clean ? u[d] = s : d in H && typeof s == "boolean" || (d in H && Array.isArray(s) ? u[d] = o(b, s[1] ?? {}) : Array.isArray(b) && Array.isArray(s) ? u[d] = b.concat(...s) : r(b) && r(s) ? u[d] = o(b, s) : u[d] = s);
1532
+ }), u), {});
1601
1533
  }
1602
- e.mergeDeep = l;
1603
- function i(n, d) {
1604
- return n in d;
1534
+ e.mergeDeep = o;
1535
+ function i(n, u) {
1536
+ return n in u;
1605
1537
  }
1606
1538
  e.isKeyOf = i;
1607
- })(X || (X = {}));
1608
- const C = X;
1609
- class pe {
1539
+ })(q || (q = {}));
1540
+ const C = q;
1541
+ class $e {
1610
1542
  constructor() {
1611
1543
  this._index = 0, this._cache = {};
1612
1544
  }
@@ -1614,17 +1546,17 @@ class pe {
1614
1546
  return this._cache[t] || (this._cache[t] = this.getByIndex(this._index++)), this._cache[t];
1615
1547
  }
1616
1548
  getByIndex(t) {
1617
- const { first: r, next: l } = we, i = t - r.length;
1549
+ const { first: r, next: o } = ze, i = t - r.length;
1618
1550
  if (i < 0)
1619
1551
  return r[t];
1620
- const n = Math.floor(i / l.length), d = i - n * l.length;
1621
- return this.getByIndex(n) + l[d];
1552
+ const n = Math.floor(i / o.length), u = i - n * o.length;
1553
+ return this.getByIndex(n) + o[u];
1622
1554
  }
1623
1555
  }
1624
- const we = {
1556
+ const ze = {
1625
1557
  first: "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",
1626
1558
  next: "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
1627
- }, R = {
1559
+ }, ie = {
1628
1560
  button: {
1629
1561
  styles: {
1630
1562
  display: "inline-flex",
@@ -1647,6 +1579,10 @@ const we = {
1647
1579
  color: "gray-400",
1648
1580
  borderColor: "gray-300"
1649
1581
  }
1582
+ },
1583
+ variants: {
1584
+ test: {},
1585
+ test2: {}
1650
1586
  }
1651
1587
  },
1652
1588
  textbox: {
@@ -1847,7 +1783,7 @@ const we = {
1847
1783
  }
1848
1784
  }
1849
1785
  },
1850
- themes: {
1786
+ variants: {
1851
1787
  multiple: {
1852
1788
  selected: {
1853
1789
  cursor: "pointer"
@@ -1909,252 +1845,439 @@ const we = {
1909
1845
  }
1910
1846
  }
1911
1847
  }
1848
+ },
1849
+ label: { styles: {} },
1850
+ datagrid: {
1851
+ styles: {
1852
+ b: 1,
1853
+ borderColor: "gray-400",
1854
+ overflow: "hidden",
1855
+ borderRadius: 1
1856
+ },
1857
+ children: {
1858
+ header: {
1859
+ styles: {
1860
+ position: "sticky",
1861
+ top: 0,
1862
+ width: "max-content",
1863
+ minWidth: "fit",
1864
+ zIndex: 1
1865
+ },
1866
+ variants: {
1867
+ isResizeMode: { userSelect: "none" }
1868
+ },
1869
+ children: {
1870
+ cell: {
1871
+ styles: {
1872
+ bgColor: "gray-200",
1873
+ borderColor: "gray-400",
1874
+ bb: 1,
1875
+ minHeight: 12,
1876
+ position: "relative",
1877
+ transition: "none"
1878
+ },
1879
+ variants: {
1880
+ isRowNumber: {},
1881
+ isRowSelection: {},
1882
+ isPinned: { position: "sticky", zIndex: 2 },
1883
+ isFirstLeftPinned: {},
1884
+ isLastLeftPinned: { br: 1 },
1885
+ isFirstRightPinned: { bl: 1 },
1886
+ isLastRightPinned: {},
1887
+ isSortable: { cursor: "pointer" }
1888
+ }
1889
+ }
1890
+ }
1891
+ },
1892
+ cell: {
1893
+ styles: {
1894
+ bgColor: "gray-100",
1895
+ bb: 1,
1896
+ borderColor: "gray-400",
1897
+ transition: "none",
1898
+ ai: "center",
1899
+ overflow: "hidden",
1900
+ minHeight: 12,
1901
+ hoverGroup: { "grid-row": { bgColor: "gray-200" } }
1902
+ },
1903
+ variants: {
1904
+ isRowNumber: {
1905
+ bgColor: "gray-200"
1906
+ },
1907
+ isRowSelection: {},
1908
+ isPinned: { position: "sticky" },
1909
+ isFirstLeftPinned: {},
1910
+ isLastLeftPinned: { br: 1 },
1911
+ isFirstRightPinned: { bl: 1 },
1912
+ isLastRightPinned: {}
1913
+ }
1914
+ }
1915
+ }
1912
1916
  }
1913
- }, P = ve.createContext({ themeStyles: R, theme: "", setTheme: () => {
1914
- } });
1915
- function xe(e) {
1916
- const { clean: t, theme: r, component: l } = e, { themeStyles: i } = se(P);
1917
- return L(() => {
1918
- var o;
1917
+ };
1918
+ var X;
1919
+ ((e) => {
1920
+ function t(o, i, n) {
1921
+ return y.setUserVariables(o), Object.entries(i).forEach(([u, l]) => {
1922
+ E[u] = l;
1923
+ }), Object.entries(n).forEach(([u, l]) => {
1924
+ const d = E[u];
1925
+ E[u] = d ? [...l, ...d] : l;
1926
+ }), { extendedProps: i, extendedPropTypes: n };
1927
+ }
1928
+ e.extend = t, e.componentsStyles = ie;
1929
+ function r(o) {
1930
+ return e.componentsStyles = C.mergeDeep(ie, o), o;
1931
+ }
1932
+ e.components = r;
1933
+ })(X || (X = {}));
1934
+ const Ae = X;
1935
+ function Ee(e) {
1936
+ const { clean: t, component: r, variant: o } = e;
1937
+ return ee(() => {
1919
1938
  if (t) return;
1920
- const n = l == null ? void 0 : l.split(".");
1921
- if (!n) return;
1922
- const d = n.reduce((f, y, a) => {
1923
- var v;
1924
- return a === 0 ? i == null ? void 0 : i[y] : (v = f == null ? void 0 : f.children) == null ? void 0 : v[y];
1939
+ const i = r == null ? void 0 : r.split(".");
1940
+ if (!i) return;
1941
+ const n = i.reduce((d, b, s) => {
1942
+ var h;
1943
+ return s === 0 ? Ae.componentsStyles[b] : (h = d == null ? void 0 : d.children) == null ? void 0 : h[b];
1925
1944
  }, void 0);
1926
- if (d)
1927
- return r ? C.mergeDeep(d.styles, ((o = d.themes) == null ? void 0 : o[r]) ?? {}) : d.styles;
1928
- }, [l, t, r, i]);
1945
+ if (!n) return;
1946
+ if (!o) return n.styles;
1947
+ const u = me(o);
1948
+ if (u.length === 0) return n.styles;
1949
+ const l = C.mergeDeep(...u.map((d) => {
1950
+ var b;
1951
+ return (b = n.variants) == null ? void 0 : b[d];
1952
+ }));
1953
+ return C.mergeDeep(n.styles, l);
1954
+ }, [t, r, o]);
1929
1955
  }
1930
- const Ne = new pe(), Fe = typeof window < "u" && typeof window.document < "u";
1931
- var le;
1932
- const ce = typeof process == "object" && ((le = process.env) == null ? void 0 : le.NODE_ENV) === "test", $e = Fe && !ce ? be : ie, fe = "_b", A = "_s";
1933
- function Ee(e, t) {
1934
- $e(S.flush, [e]);
1935
- const r = xe(e);
1936
- return L(() => {
1937
- const l = [t ? A : fe], i = r ? C.mergeDeep(r, e) : e;
1938
- return S.addClassNames(i, l, []), l;
1956
+ const Oe = new $e(), je = typeof window < "u" && typeof window.document < "u";
1957
+ var ue;
1958
+ const he = typeof process == "object" && ((ue = process.env) == null ? void 0 : ue.NODE_ENV) === "test", Re = je && !he ? ce : de, be = "_b", j = "_s";
1959
+ function Le(e, t) {
1960
+ Re(R.flush, [e]);
1961
+ const r = Ee(e);
1962
+ return ee(() => {
1963
+ const o = [t ? j : be], i = r ? C.mergeDeep(r, e) : e;
1964
+ return R.addClassNames(i, o, []), o;
1939
1965
  }, [e, t, r]);
1940
1966
  }
1941
- var S;
1967
+ var R;
1942
1968
  ((e) => {
1943
1969
  let t = !0, r = {};
1944
- function l(a, v, g, b, s) {
1945
- Object.entries(a).forEach(([c, m]) => {
1946
- if (C.isKeyOf(c, E))
1947
- d(c, m, v, g, b, s);
1948
- else if (C.isKeyOf(c, ue))
1949
- l(m, v, [...g, c], b, s);
1950
- else if (C.isKeyOf(c, U)) {
1970
+ function o(s, h, g, v, c) {
1971
+ Object.entries(s).forEach(([f, m]) => {
1972
+ if (C.isKeyOf(f, E))
1973
+ u(f, m, h, g, v, c);
1974
+ else if (C.isKeyOf(f, ve))
1975
+ o(m, h, [...g, f], v, c);
1976
+ else if (C.isKeyOf(f, H)) {
1951
1977
  if (Array.isArray(m)) {
1952
- const [w, x] = m;
1953
- l(x, v, [...g, c], b, s);
1978
+ const [F, N] = m;
1979
+ o(N, h, [...g, f], v, c);
1954
1980
  }
1955
- C.isObject(m) && l(m, v, [...g, c], b, s);
1956
- } else C.isKeyOf(c, H) ? l(m, v, g, c, s) : C.isKeyOf(c, q) && (typeof m == "string" ? v.push(`${q[c]}-${m}`) : Object.entries(m).forEach(([w, x]) => {
1957
- l(x, v, [...g, q[c]], b, w);
1958
- }));
1981
+ C.isObject(m) && o(m, h, [...g, f], v, c);
1982
+ } else C.isKeyOf(f, k) ? o(m, h, g, f, c) : C.isKeyOf(f, se) && Object.entries(m).forEach(([F, N]) => {
1983
+ o(N, h, [...g, se[f]], v, F);
1984
+ });
1959
1985
  });
1960
1986
  }
1961
- e.addClassNames = l;
1987
+ e.addClassNames = o;
1962
1988
  function i() {
1963
1989
  if (!t) return;
1964
1990
  console.debug("\x1B[36m%s\x1B[0m", "[react-box]: flush");
1965
- const a = Object.entries(E).reduce((c, [m], w) => (c[m] = w, c), {}), v = `:root{--borderColor: black;--outlineColor: black;--lineHeight: 1.2;--fontSize: 14px;--transitionTime: 0.25s;--svgTransitionTime: 0.3s;}#crono-box {position: absolute;top: 0;left: 0;height: 0;}
1991
+ const s = Object.entries(E).reduce((f, [m], F) => (f[m] = F, f), {}), h = `:root{--borderColor: black;--outlineColor: black;--lineHeight: 1.2;--fontSize: 14px;--transitionTime: 0.25s;--svgTransitionTime: 0.3s;}#crono-box {position: absolute;top: 0;left: 0;height: 0;z-index:99999;}
1966
1992
  html{font-size: 16px;font-family: Arial, sans-serif;}
1967
1993
  body{margin: 0;line-height: var(--lineHeight);font-size: var(--fontSize);}
1968
1994
  a,ul{all: unset;}
1969
- .${fe}{display: block;border: 0 solid var(--borderColor);outline: 0px solid var(--outlineColor);margin: 0;padding: 0;background-color: initial;transition: all var(--transitionTime);box-sizing: border-box;font-family: inherit;font-size: inherit;}
1970
- .${A}{display: block;border: 0 solid var(--borderColor);outline: 0px solid var(--outlineColor);margin: 0;padding: 0;transition: all var(--svgTransitionTime);}.${A} path,.${A} circle,.${A} rect,.${A} line {transition: all var(--svgTransitionTime);}
1995
+ .${be}{display: block;border: 0 solid var(--borderColor);outline: 0px solid var(--outlineColor);margin: 0;padding: 0;background-color: initial;transition: all var(--transitionTime);box-sizing: border-box;font-family: inherit;font-size: inherit;}
1996
+ .${j}{display: block;border: 0 solid var(--borderColor);outline: 0px solid var(--outlineColor);margin: 0;padding: 0;transition: all var(--svgTransitionTime);}.${j} path,.${j} circle,.${j} rect,.${j} line {transition: all var(--svgTransitionTime);}
1971
1997
  `, g = Object.entries(r);
1972
1998
  g.sort(
1973
- ([c], [m]) => (H[c] ?? 0) - (H[m] ?? 0)
1999
+ ([f], [m]) => (k[f] ?? 0) - (k[m] ?? 0)
1974
2000
  );
1975
- const b = g.reduce(
1976
- (c, [m, w]) => (m !== "normal" && c.push(`@media(min-width: ${H[m]}px){`), Object.entries(w).forEach(([x, D]) => {
1977
- const { __parents: ee, ...me } = D, te = Object.entries(me);
1978
- te.sort(([F], [T]) => a[F] - a[T]), te.forEach(([F, T]) => {
1979
- T.forEach((V) => {
1980
- var k, I;
1981
- const h = E[F].find(($) => Array.isArray($.values) ? $.values.includes(V) : typeof V == typeof $.values);
1982
- if (!h) return;
1983
- const z = o(F, V, +x, m), K = W[+x].map(($) => Z[$]).join(""), p = ((k = h.selector) == null ? void 0 : k.call(h, `.${z}`, K)) ?? `.${z}${K}`, B = Array.isArray(h.styleName) ? h.styleName : [h.styleName ?? F], O = ((I = h.valueFormat) == null ? void 0 : I.call(h, V, N.getVariableValue)) ?? V;
1984
- c.push(`${p}{${B.map(($) => `${$}:${O}`).join(";")}}`);
2001
+ const v = g.reduce(
2002
+ (f, [m, F]) => (m !== "normal" && f.push(`@media(min-width: ${k[m]}px){`), Object.entries(F).forEach(([N, D]) => {
2003
+ const { __parents: re, ...ge } = D, ae = Object.entries(ge);
2004
+ ae.sort(([V], [S]) => s[V] - s[S]), ae.forEach(([V, S]) => {
2005
+ S.forEach((z) => {
2006
+ var B, L;
2007
+ const p = E[V].find(($) => Array.isArray($.values) ? $.values.includes(z) : typeof z == typeof $.values);
2008
+ if (!p) return;
2009
+ const A = l(V, z, +N, m), U = G[+N].map(($) => te[$]).join(""), w = ((B = p.selector) == null ? void 0 : B.call(p, `.${A}`, U)) ?? `.${A}${U}`, I = Array.isArray(p.styleName) ? p.styleName : [p.styleName ?? V], _ = ((L = p.valueFormat) == null ? void 0 : L.call(p, z, y.getVariableValue)) ?? z;
2010
+ f.push(`${w}{${I.map(($) => `${$}:${_}`).join(";")}}`);
1985
2011
  });
1986
- }), ee && Object.entries(ee).forEach(([F, T]) => {
1987
- const V = Object.entries(T);
1988
- V.sort(([j], [h]) => a[j] - a[h]), V.forEach(([j, h]) => {
1989
- h.forEach((z) => {
1990
- var re, oe;
1991
- const p = E[j].find((_) => Array.isArray(_.values) ? _.values.includes(z) : typeof z == typeof _.values);
1992
- if (!p) return;
1993
- const B = o(j, z, +x, m, F), [O] = W[+x], k = ((re = p.selector) == null ? void 0 : re.call(p, `.${O}-${F}:${O} .${B}`, "")) ?? `.${O}-${F}:${O} .${B}`, I = Array.isArray(p.styleName) ? p.styleName : [p.styleName ?? j], $ = ((oe = p.valueFormat) == null ? void 0 : oe.call(p, z, N.getVariableValue)) ?? z;
1994
- c.push(`${k}{${I.map((_) => `${_}:${$}`).join(";")}}`);
2012
+ }), re && Object.entries(re).forEach(([V, S]) => {
2013
+ const z = Object.entries(S);
2014
+ z.sort(([O], [p]) => s[O] - s[p]), z.forEach(([O, p]) => {
2015
+ p.forEach((A) => {
2016
+ var oe, le;
2017
+ const w = E[O].find((T) => Array.isArray(T.values) ? T.values.includes(A) : typeof A == typeof T.values);
2018
+ if (!w) return;
2019
+ const I = l(O, A, +N, m, V), [_] = G[+N], B = _ === "theme" ? `.${V} .${I}` : `.${V}:${_} .${I}`, L = ((oe = w.selector) == null ? void 0 : oe.call(w, B, "")) ?? B, $ = Array.isArray(w.styleName) ? w.styleName : [w.styleName ?? O], pe = ((le = w.valueFormat) == null ? void 0 : le.call(w, A, y.getVariableValue)) ?? A;
2020
+ f.push(`${L}{${$.map((T) => `${T}:${pe}`).join(";")}}`);
1995
2021
  });
1996
2022
  });
1997
2023
  });
1998
- }), m !== "normal" && c.push("}"), c),
1999
- [v]
2024
+ }), m !== "normal" && f.push("}"), f),
2025
+ [h]
2000
2026
  );
2001
- b.unshift(`:root{${N.generateVariables()}}`);
2002
- const s = y();
2003
- s.innerHTML = b.join(""), t = !1;
2027
+ v.unshift(`:root{${y.generateVariables()}}`);
2028
+ const c = b();
2029
+ c.innerHTML = v.join(""), t = !1;
2004
2030
  }
2005
2031
  e.flush = i;
2006
2032
  function n() {
2007
2033
  r = {};
2008
2034
  }
2009
2035
  e.clear = n;
2010
- function d(a, v, g, b, s = "normal", c) {
2011
- if (v == null) return;
2012
- const m = b.reduce((x, D) => x + de[D], 0);
2013
- r[s] ? r[s][m] ? r[s][m][a] || (r[s][m][a] = /* @__PURE__ */ new Set()) : r[s][m] = { [a]: /* @__PURE__ */ new Set() } : r[s] = { [m]: { [a]: /* @__PURE__ */ new Set() } }, c ? (r[s][m].__parents ? r[s][m].__parents[c] ? r[s][m].__parents[c][a] || (r[s][m].__parents[c][a] = /* @__PURE__ */ new Set()) : r[s][m].__parents[c] = { [a]: /* @__PURE__ */ new Set() } : r[s][m].__parents = { [c]: { [a]: /* @__PURE__ */ new Set() } }, r[s][m].__parents[c][a].has(v) || (r[s][m].__parents[c][a].add(v), t = !0)) : r[s][m][a].has(v) || (r[s][m][a].add(v), t = !0);
2014
- const w = o(a, v, m, s, c);
2015
- g.push(w);
2036
+ function u(s, h, g, v, c = "normal", f) {
2037
+ if (h == null) return;
2038
+ const m = v.reduce((N, D) => N + ye[D], 0);
2039
+ r[c] ? r[c][m] ? r[c][m][s] || (r[c][m][s] = /* @__PURE__ */ new Set()) : r[c][m] = { [s]: /* @__PURE__ */ new Set() } : r[c] = { [m]: { [s]: /* @__PURE__ */ new Set() } }, f ? (r[c][m].__parents ? r[c][m].__parents[f] ? r[c][m].__parents[f][s] || (r[c][m].__parents[f][s] = /* @__PURE__ */ new Set()) : r[c][m].__parents[f] = { [s]: /* @__PURE__ */ new Set() } : r[c][m].__parents = { [f]: { [s]: /* @__PURE__ */ new Set() } }, r[c][m].__parents[f][s].has(h) || (r[c][m].__parents[f][s].add(h), t = !0)) : r[c][m][s].has(h) || (r[c][m][s].add(h), t = !0);
2040
+ const F = l(s, h, m, c, f);
2041
+ g.push(F);
2016
2042
  }
2017
- function o(a, v, g, b, s) {
2018
- const c = W[g], m = `${b === "normal" ? "" : `${b}-`}${c.map((w) => `${w}-`).join("")}${s ? `${s}-` : ""}${a}-${v}`;
2019
- return ce ? m : Ne.getIdentity(m);
2043
+ function l(s, h, g, v, c) {
2044
+ const f = G[g], m = `${v === "normal" ? "" : `${v}-`}${f.map((F) => `${F}-`).join("")}${c ? `${c}-` : ""}${s}-${h}`;
2045
+ return he ? m : Oe.getIdentity(m);
2020
2046
  }
2021
- const f = "crono-styles";
2022
- function y() {
2023
- let a = document.getElementById(f);
2024
- return a || (a = document.createElement("style"), a.setAttribute("id", f), a.setAttribute("type", "text/css"), document.head.insertBefore(a, document.head.firstChild)), a;
2047
+ const d = "crono-styles";
2048
+ function b() {
2049
+ let s = document.getElementById(d);
2050
+ return s || (s = document.createElement("style"), s.setAttribute("id", d), s.setAttribute("type", "text/css"), document.head.insertBefore(s, document.head.firstChild)), s;
2025
2051
  }
2026
- })(S || (S = {}));
2027
- var ae;
2028
- ((e) => {
2029
- e.flush = S.flush, e.clear = S.clear;
2030
- })(ae || (ae = {}));
2031
- var Y;
2052
+ })(R || (R = {}));
2053
+ var ne;
2032
2054
  ((e) => {
2033
- function t(r, l, i) {
2034
- return N.setUserVariables(r), Object.entries(l).forEach(([n, d]) => {
2035
- E[n] = d;
2036
- }), Object.entries(i).forEach(([n, d]) => {
2037
- const o = E[n];
2038
- E[n] = o ? [...d, ...o] : d;
2039
- }), { extendedProps: l, extendedPropTypes: i };
2040
- }
2041
- e.extend = t;
2042
- })(Y || (Y = {}));
2043
- const je = Y;
2044
- function G(e) {
2045
- const { children: t, theme: r } = e, [l, i] = ne(r), n = L(() => {
2046
- var a;
2047
- const d = (a = G.userThemes) == null ? void 0 : a[l];
2048
- if (!d) return R;
2049
- const { components: o, ...f } = d, y = o ?? {};
2050
- return Object.entries(f).forEach(([v, g]) => {
2051
- y[v] = g;
2052
- }), Object.keys(y).forEach((v) => {
2053
- y[v].clean && v in R && delete R[v];
2054
- }), C.mergeDeep(R, y);
2055
- }, [l]);
2056
- return /* @__PURE__ */ ge(P.Provider, { value: { themeStyles: n, theme: l, setTheme: i }, children: t });
2055
+ e.flush = R.flush, e.clear = R.clear;
2056
+ })(ne || (ne = {}));
2057
+ const Y = we.createContext({ theme: "", setTheme: () => {
2058
+ } });
2059
+ function Z(e) {
2060
+ const { children: t, theme: r, use: o = "local" } = e, [i, n] = fe(r);
2061
+ return ce(() => {
2062
+ if (o === "local") return;
2063
+ const u = document.documentElement;
2064
+ return u.classList.add(i), () => {
2065
+ u.classList.remove(i);
2066
+ };
2067
+ }, [i]), o === "local" ? /* @__PURE__ */ x(Y.Provider, { value: { theme: i, setTheme: n }, children: /* @__PURE__ */ x(Ce, { className: i, children: t }) }) : /* @__PURE__ */ x(Y.Provider, { value: { theme: i, setTheme: n }, children: t });
2057
2068
  }
2058
2069
  ((e) => {
2059
- e.userThemes = void 0;
2060
- function t(l) {
2061
- e.userThemes = l;
2070
+ function t() {
2071
+ const { theme: r, setTheme: o } = xe(Y);
2072
+ return [r, o];
2062
2073
  }
2063
- e.setup = t;
2064
- function r() {
2065
- const { theme: l, setTheme: i } = se(P);
2066
- return [l, i];
2067
- }
2068
- e.useTheme = r;
2069
- })(G || (G = {}));
2070
- const Oe = G, Ce = {
2074
+ e.useTheme = t;
2075
+ })(Z || (Z = {}));
2076
+ const ke = Z, Se = {
2071
2077
  selected: "aria-selected"
2072
2078
  };
2073
- var J;
2079
+ var P;
2074
2080
  ((e) => {
2075
- function t(r, l, i) {
2076
- r !== void 0 && r != null && (i[Ce[l] ?? l] = Array.isArray(r) ? r[0] : r);
2081
+ function t(r, o, i) {
2082
+ r !== void 0 && r != null && (i[Se[o] ?? o] = Array.isArray(r) ? r[0] : r);
2077
2083
  }
2078
2084
  e.assignBooleanProp = t;
2079
- })(J || (J = {}));
2080
- const Ae = J;
2085
+ })(P || (P = {}));
2086
+ const He = P;
2081
2087
  Array.prototype.removeBy || (Array.prototype.removeBy = function(e) {
2082
- return this.filter(e);
2088
+ return this.filter((t) => !e(t));
2089
+ });
2090
+ Array.prototype.take || (Array.prototype.take = function(e, t = 0) {
2091
+ return this.slice(t, t + e);
2092
+ });
2093
+ Array.prototype.add || (Array.prototype.add = function(...e) {
2094
+ const t = [...this];
2095
+ return t.push(...e), t;
2096
+ });
2097
+ Array.prototype.sumBy || (Array.prototype.sumBy = function(e, t = 0) {
2098
+ return this.reduce((r, o, i) => r + e(o, i), t);
2083
2099
  });
2084
- function Se(e = null) {
2085
- const [t, r] = ne(!1), l = ye(null);
2086
- return ie(() => {
2087
- function i(d) {
2088
- const o = e ?? l.current;
2089
- (o == null ? void 0 : o.contains(d.target)) === !1 && r(!1);
2090
- }
2091
- function n(d) {
2092
- d.key === "Escape" && r(!1);
2093
- }
2094
- return t && (window.addEventListener("click", i), window.addEventListener("keydown", n)), () => {
2095
- window.removeEventListener("click", i), window.removeEventListener("keydown", n);
2100
+ Array.prototype.sortBy || (Array.prototype.sortBy = function(e, t) {
2101
+ return [...this].sort((o, i) => {
2102
+ const n = e(o), u = e(i);
2103
+ return n < u ? t === "DESC" ? 1 : -1 : n > u ? t === "DESC" ? -1 : 1 : 0;
2104
+ });
2105
+ });
2106
+ Array.prototype.maxBy || (Array.prototype.maxBy = function(e) {
2107
+ return Math.max(...this.map(e));
2108
+ });
2109
+ Array.prototype.findOrThrow || (Array.prototype.findOrThrow = function(e) {
2110
+ const t = this.find(e);
2111
+ if (typeof t > "u") throw new Error("No items satisfy the provided condition.");
2112
+ return t;
2113
+ });
2114
+ Array.prototype.toRecord || (Array.prototype.toRecord = function(e) {
2115
+ return this.reduce(
2116
+ (t, r) => {
2117
+ const o = e(r);
2118
+ if (!o) return t;
2119
+ const [i, n] = o;
2120
+ return t[i] = n, t;
2121
+ },
2122
+ {}
2123
+ );
2124
+ });
2125
+ Array.prototype.groupBy || (Array.prototype.groupBy = function(e, t = !1) {
2126
+ const r = this.reduce((o, i, n) => {
2127
+ var l;
2128
+ const u = e(i, n);
2129
+ return t && typeof u != "number" && !u || (o.has(u) === !1 && o.set(u, []), (l = o.get(u)) == null || l.push(i)), o;
2130
+ }, /* @__PURE__ */ new Map());
2131
+ return Array.from(r, ([o, i]) => ({ key: o, values: i }));
2132
+ });
2133
+ function Me(e) {
2134
+ let t;
2135
+ return Object.defineProperty({
2136
+ clear() {
2137
+ t = void 0;
2138
+ }
2139
+ }, "value", {
2140
+ get: () => (t || (t = e()), t)
2141
+ });
2142
+ }
2143
+ var J;
2144
+ ((e) => {
2145
+ function t(r, o = 300) {
2146
+ let i = !1, n;
2147
+ return (...u) => {
2148
+ if (i) {
2149
+ n = u;
2150
+ return;
2151
+ }
2152
+ r(...u), i = !0, setTimeout(() => {
2153
+ i = !1, n && r(...n);
2154
+ }, o);
2096
2155
  };
2097
- }, [e, t]), [t, r, l];
2156
+ }
2157
+ e.throttle = t;
2158
+ })(J || (J = {}));
2159
+ const De = J;
2160
+ function Ue(e) {
2161
+ const { node: t = null, event: r = "click", hideOnScroll: o = !1, hideOnResize: i = !1, hideOnEscape: n = !0 } = e ?? {}, [u, l] = fe(!1), d = Fe(null);
2162
+ return de(() => {
2163
+ function b(c) {
2164
+ const f = t ?? d.current;
2165
+ (f == null ? void 0 : f.contains(c.target)) === !1 && l(!1);
2166
+ }
2167
+ function s() {
2168
+ l(!1);
2169
+ }
2170
+ function h() {
2171
+ l(!1);
2172
+ }
2173
+ function g(c) {
2174
+ c.key === "Escape" && l(!1);
2175
+ }
2176
+ const v = new AbortController();
2177
+ return u && (window.addEventListener(r, b, v), n && window.addEventListener("keydown", g, v), i && window.addEventListener("resize", s, v), o && window.addEventListener("scroll", h, v)), () => {
2178
+ v.abort();
2179
+ };
2180
+ }, [t, u]), [u, l, d];
2098
2181
  }
2099
- function Te() {
2100
- return L(() => {
2182
+ function Ge() {
2183
+ return ee(() => {
2101
2184
  const e = "crono-box";
2102
2185
  let t = document.getElementById(e);
2103
2186
  return t || (t = document.createElement("div"), t.id = e, document.body.appendChild(t)), t;
2104
2187
  }, []);
2105
2188
  }
2189
+ function We(e) {
2190
+ return /* @__PURE__ */ x(M, { ...e, children: /* @__PURE__ */ x("path", { d: "M4 12l1.41 1.41L11 7.83V20h2V7.83l5.58 5.59L20 12l-8-8-8 8z" }) });
2191
+ }
2192
+ function Ke(e) {
2193
+ return /* @__PURE__ */ x(M, { viewBox: "0 0 16 16", width: "18", ...e, children: /* @__PURE__ */ x(
2194
+ "path",
2195
+ {
2196
+ strokeWidth: 4,
2197
+ d: "M7.936 12.128a.936.936 0 1 1 0 1.872.936.936 0 0 1 0-1.872ZM7.936 7.052a.936.936 0 1 1 0 1.873.936.936 0 0 1 0-1.873ZM7.936 1.977a.936.936 0 1 1 0 1.872.936.936 0 0 1 0-1.872Z"
2198
+ }
2199
+ ) });
2200
+ }
2201
+ function qe(e) {
2202
+ return /* @__PURE__ */ x(M, { viewBox: "0 0 1024 1024", ...e, children: /* @__PURE__ */ x("path", { d: "M31.997 1023.957a31.699 31.699 0 0 1-22.611-9.386C3.328 1008.556 0 1000.493 0 991.96s3.328-16.596 9.386-22.611L328.25 650.484l-152.52-152.52a95.907 95.907 0 0 1-25.087-92.152 95.31 95.31 0 0 1 44.327-58.62l.896-.512a353.464 353.464 0 0 1 176.156-47.398c20.137 0 40.36 1.749 60.283 5.205L597.71 44.54A95.224 95.224 0 0 1 678.685.085c25.64 0 49.745 9.983 67.877 28.073l249.195 249.195a95.224 95.224 0 0 1 25.897 88.74 95.139 95.139 0 0 1-42.152 60.154L719.513 591.695a352.227 352.227 0 0 1-42.663 237.292A95.395 95.395 0 0 1 594 876.514a95.523 95.523 0 0 1-67.963-28.2L373.43 695.706 54.61 1014.614a31.912 31.912 0 0 1-22.612 9.343zm340.025-660.68c-50.64 0-100.685 13.566-144.798 39.207a31.57 31.57 0 0 0-14.676 19.497 31.699 31.699 0 0 0 8.362 30.675L571.344 803.09c6.059 6.059 14.122 9.386 22.697 9.386a31.699 31.699 0 0 0 27.56-15.785 287.421 287.421 0 0 0 31.06-212.676 31.997 31.997 0 0 1 13.907-34.471l278.59-177.266a31.57 31.57 0 0 0 14.037-20.051 31.699 31.699 0 0 0-8.618-29.566l-249.28-249.28a31.912 31.912 0 0 0-49.618 5.418l-177.308 278.59a31.827 31.827 0 0 1-34.472 13.908 293.778 293.778 0 0 0-67.877-8.02z" }) });
2203
+ }
2204
+ function Xe(e) {
2205
+ return /* @__PURE__ */ Ne(M, { viewBox: "0 0 490.6 490.6", ...e, children: [
2206
+ /* @__PURE__ */ x(
2207
+ "path",
2208
+ {
2209
+ d: "M326.8 187.25c14.8 0 26.8-12 26.8-26.8v-117c0-14.8-12-26.8-26.8-26.8h-163c-14.8 0-26.8 12-26.8 26.8v117c0 14.8 12 26.8 26.8 26.8h71.6v22.4h-22.9c-5.5 0-9.9 4.4-9.9 9.9s4.4 9.9 9.9 9.9h65.6c5.5 0 9.9-4.4 9.9-9.9s-4.4-9.9-9.9-9.9h-22.9v-22.4h71.6zm-163-19.8c-3.9 0-7-3.1-7-7v-117c0-3.9 3.1-7 7-7h162.9c3.9 0 7 3.1 7 7v117c0 3.9-3.1 7-7 7H163.8zM189.8 261.15h-163c-14.8 0-26.8 12-26.8 26.8v117c0 14.8 12 26.8 26.8 26.8h71.6v22.4H75.5c-5.5 0-9.9 4.4-9.9 9.9s4.4 9.9 9.9 9.9h65.6c5.5 0 9.9-4.4 9.9-9.9s-4.4-9.9-9.9-9.9h-22.9v-22.4h71.6c14.8 0 26.8-12 26.8-26.8v-117c0-14.7-12.1-26.8-26.8-26.8zm7 143.9c0 3.9-3.1 7-7 7h-163c-3.9 0-7-3.1-7-7v-117c0-3.9 3.1-7 7-7h162.9c3.9 0 7 3.1 7 7v117h.1zM463.8 261.15h-163c-14.8 0-26.8 12-26.8 26.8v117c0 14.8 12 26.8 26.8 26.8h71.6v22.4h-22.9c-5.5 0-9.9 4.4-9.9 9.9s4.4 9.9 9.9 9.9h65.6c5.5 0 9.9-4.4 9.9-9.9s-4.4-9.9-9.9-9.9h-22.9v-22.4h71.6c14.8 0 26.8-12 26.8-26.8v-117c0-14.7-12.1-26.8-26.8-26.8zm7 143.9c0 3.9-3.1 7-7 7h-163c-3.9 0-7-3.1-7-7v-117c0-3.9 3.1-7 7-7h162.9c3.9 0 7 3.1 7 7v117h.1z",
2210
+ fill: "#2c2f33"
2211
+ }
2212
+ ),
2213
+ /* @__PURE__ */ x(
2214
+ "path",
2215
+ {
2216
+ d: "M27.7 86.25v133.3c0 5.5 4.4 9.9 9.9 9.9s9.9-4.4 9.9-9.9V96.15h53.4c5.5 0 9.9-4.4 9.9-9.9s-4.4-9.9-9.9-9.9H37.6c-5.4 0-9.9 4.5-9.9 9.9zM453 229.55c5.5 0 9.9-4.4 9.9-9.9V86.25c0-5.5-4.4-9.9-9.9-9.9h-63.3c-5.5 0-9.9 4.4-9.9 9.9s4.4 9.9 9.9 9.9h53.4v123.4c0 5.5 4.4 10 9.9 10z",
2217
+ fill: "#3c92ca"
2218
+ }
2219
+ )
2220
+ ] });
2221
+ }
2106
2222
  var Q;
2107
2223
  ((e) => {
2108
- function t(l) {
2109
- const i = Array.from(l.elements).reduce(
2110
- (n, d) => {
2111
- const o = d.name;
2112
- return o && (n[o] || (n[o] = []), n[o].push(d)), n;
2224
+ function t(o) {
2225
+ const i = Array.from(o.elements).reduce(
2226
+ (n, u) => {
2227
+ const l = u.name;
2228
+ return l && (n[l] || (n[l] = []), n[l].push(u)), n;
2113
2229
  },
2114
2230
  {}
2115
2231
  );
2116
- return Object.entries(i).reduce((n, [d, o]) => {
2117
- if (o.length === 1) {
2118
- const f = o[0];
2119
- r(n, d, f.type === "checkbox" || f.type === "radio" ? f.checked : f.value);
2232
+ return Object.entries(i).reduce((n, [u, l]) => {
2233
+ if (l.length === 1) {
2234
+ const d = l[0];
2235
+ r(n, u, d.type === "checkbox" || d.type === "radio" ? d.checked : d.value);
2120
2236
  } else {
2121
- const f = o.reduce((y, a) => (a.type === "checkbox" || a.type === "radio" ? a.checked && y.push(a.value) : y.push(a.value), y), []);
2122
- r(n, d, f);
2237
+ const d = l.reduce((b, s) => (s.type === "checkbox" || s.type === "radio" ? s.checked && b.push(s.value) : b.push(s.value), b), []);
2238
+ r(n, u, d);
2123
2239
  }
2124
2240
  return n;
2125
2241
  }, {});
2126
2242
  }
2127
2243
  e.getFormEntries = t;
2128
- function r(l, i, n) {
2244
+ function r(o, i, n) {
2129
2245
  if (i.includes(".")) {
2130
- const d = i.split(".");
2131
- let o = l;
2132
- d.forEach((f, y) => {
2133
- if (d.length > y + 1) {
2134
- const a = f.match(/^(.+)\[(\d)\]$/);
2135
- if (a) {
2136
- const [, v, g] = a;
2137
- o[v] = o[v] || [], o[v][g] = o[v][g] || {}, o = o[v][g];
2246
+ const u = i.split(".");
2247
+ let l = o;
2248
+ u.forEach((d, b) => {
2249
+ if (u.length > b + 1) {
2250
+ const s = d.match(/^(.+)\[(\d)\]$/);
2251
+ if (s) {
2252
+ const [, h, g] = s;
2253
+ l[h] = l[h] || [], l[h][g] = l[h][g] || {}, l = l[h][g];
2138
2254
  } else
2139
- o[f] = o[f] || {}, o = o[f];
2255
+ l[d] = l[d] || {}, l = l[d];
2140
2256
  } else
2141
- o[f] = n;
2257
+ l[d] = n;
2142
2258
  });
2143
2259
  } else
2144
- l[i] = n;
2260
+ o[i] = n;
2145
2261
  }
2146
2262
  })(Q || (Q = {}));
2147
- const _e = Q;
2263
+ const Ye = Q;
2148
2264
  export {
2149
- je as B,
2150
- _e as F,
2265
+ We as A,
2266
+ Ae as B,
2267
+ Ke as D,
2268
+ De as F,
2269
+ Xe as G,
2151
2270
  C as O,
2152
- ae as S,
2153
- Oe as T,
2154
- N as V,
2155
- Ae as a,
2156
- Se as b,
2157
- he as c,
2158
- Te as d,
2159
- Ee as u
2271
+ qe as P,
2272
+ ne as S,
2273
+ ke as T,
2274
+ y as V,
2275
+ He as a,
2276
+ Ue as b,
2277
+ me as c,
2278
+ W as d,
2279
+ Ye as e,
2280
+ Ge as f,
2281
+ Me as m,
2282
+ Le as u
2160
2283
  };