@caratlogic/design-system 0.1.29 → 0.1.31

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 (54) hide show
  1. package/dist/components/molecules/CompanyCard/CompanyCard.d.ts +1 -1
  2. package/dist/components/molecules/CompanyCard/CompanyCard.d.ts.map +1 -1
  3. package/dist/components/molecules/CompanyCard/CompanyCard.types.d.ts +4 -0
  4. package/dist/components/molecules/CompanyCard/CompanyCard.types.d.ts.map +1 -1
  5. package/dist/components/molecules/DataEditableTable/DataEditableTable.d.ts +1 -1
  6. package/dist/components/molecules/DataEditableTable/DataEditableTable.d.ts.map +1 -1
  7. package/dist/components/molecules/DataEditableTable/DataEditableTable.types.d.ts +2 -0
  8. package/dist/components/molecules/DataEditableTable/DataEditableTable.types.d.ts.map +1 -1
  9. package/dist/components/molecules/DetailSection/DetailSection.d.ts +6 -0
  10. package/dist/components/molecules/DetailSection/DetailSection.d.ts.map +1 -0
  11. package/dist/components/molecules/DetailSection/DetailSection.types.d.ts +14 -0
  12. package/dist/components/molecules/DetailSection/DetailSection.types.d.ts.map +1 -0
  13. package/dist/components/molecules/DetailSection/index.d.ts +3 -0
  14. package/dist/components/molecules/DetailSection/index.d.ts.map +1 -0
  15. package/dist/components/molecules/DocumentDeleteDialog/DocumentDeleteDialog.d.ts +6 -0
  16. package/dist/components/molecules/DocumentDeleteDialog/DocumentDeleteDialog.d.ts.map +1 -0
  17. package/dist/components/molecules/DocumentDeleteDialog/DocumentDeleteDialog.types.d.ts +13 -0
  18. package/dist/components/molecules/DocumentDeleteDialog/DocumentDeleteDialog.types.d.ts.map +1 -0
  19. package/dist/components/molecules/DocumentDeleteDialog/index.d.ts +3 -0
  20. package/dist/components/molecules/DocumentDeleteDialog/index.d.ts.map +1 -0
  21. package/dist/components/molecules/DocumentHero/DocumentHero.d.ts +9 -0
  22. package/dist/components/molecules/DocumentHero/DocumentHero.d.ts.map +1 -0
  23. package/dist/components/molecules/DocumentHero/DocumentHero.types.d.ts +79 -0
  24. package/dist/components/molecules/DocumentHero/DocumentHero.types.d.ts.map +1 -0
  25. package/dist/components/molecules/DocumentHero/DocumentHero.utils.d.ts +13 -0
  26. package/dist/components/molecules/DocumentHero/DocumentHero.utils.d.ts.map +1 -0
  27. package/dist/components/molecules/DocumentHero/index.d.ts +3 -0
  28. package/dist/components/molecules/DocumentHero/index.d.ts.map +1 -0
  29. package/dist/components/molecules/LineItems/LineItems.d.ts +14 -0
  30. package/dist/components/molecules/LineItems/LineItems.d.ts.map +1 -0
  31. package/dist/components/molecules/LineItems/LineItems.types.d.ts +48 -0
  32. package/dist/components/molecules/LineItems/LineItems.types.d.ts.map +1 -0
  33. package/dist/components/molecules/LineItems/index.d.ts +3 -0
  34. package/dist/components/molecules/LineItems/index.d.ts.map +1 -0
  35. package/dist/components/molecules/SegmentedControl/SegmentedControl.utils.d.ts +1 -1
  36. package/dist/components/molecules/SegmentedControl/SegmentedControl.utils.d.ts.map +1 -1
  37. package/dist/components/molecules/Skeletons/Skeletons.d.ts +15 -0
  38. package/dist/components/molecules/Skeletons/Skeletons.d.ts.map +1 -1
  39. package/dist/components/molecules/Skeletons/index.d.ts +2 -2
  40. package/dist/components/molecules/Skeletons/index.d.ts.map +1 -1
  41. package/dist/components/molecules/TagsInput/TagsInput.d.ts +2 -1
  42. package/dist/components/molecules/TagsInput/TagsInput.d.ts.map +1 -1
  43. package/dist/components/molecules/TagsInput/TagsInput.hooks.d.ts.map +1 -1
  44. package/dist/components/molecules/TagsInput/TagsInput.types.d.ts +16 -1
  45. package/dist/components/molecules/TagsInput/TagsInput.types.d.ts.map +1 -1
  46. package/dist/components/molecules/TagsInput/index.d.ts +1 -1
  47. package/dist/components/molecules/TagsInput/index.d.ts.map +1 -1
  48. package/dist/index.cjs.js +463 -186
  49. package/dist/index.cjs.js.map +1 -1
  50. package/dist/index.d.ts +4 -0
  51. package/dist/index.d.ts.map +1 -1
  52. package/dist/index.esm.js +452 -187
  53. package/dist/index.esm.js.map +1 -1
  54. package/package.json +1 -1
package/dist/index.cjs.js CHANGED
@@ -2698,12 +2698,12 @@ const createLucideIcon = (iconName, iconNode) => {
2698
2698
  */
2699
2699
 
2700
2700
 
2701
- const __iconNode$1p = [
2701
+ const __iconNode$1s = [
2702
2702
  ["path", { d: "M15 12H3", key: "6jk70r" }],
2703
2703
  ["path", { d: "M17 18H3", key: "1amg6g" }],
2704
2704
  ["path", { d: "M21 6H3", key: "1jwq7v" }]
2705
2705
  ];
2706
- const AlignLeft = createLucideIcon("align-left", __iconNode$1p);
2706
+ const AlignLeft = createLucideIcon("align-left", __iconNode$1s);
2707
2707
 
2708
2708
  /**
2709
2709
  * @license lucide-react v0.539.0 - ISC
@@ -2713,12 +2713,12 @@ const AlignLeft = createLucideIcon("align-left", __iconNode$1p);
2713
2713
  */
2714
2714
 
2715
2715
 
2716
- const __iconNode$1o = [
2716
+ const __iconNode$1r = [
2717
2717
  ["rect", { width: "20", height: "5", x: "2", y: "3", rx: "1", key: "1wp1u1" }],
2718
2718
  ["path", { d: "M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8", key: "1s80jp" }],
2719
2719
  ["path", { d: "M10 12h4", key: "a56b0p" }]
2720
2720
  ];
2721
- const Archive = createLucideIcon("archive", __iconNode$1o);
2721
+ const Archive = createLucideIcon("archive", __iconNode$1r);
2722
2722
 
2723
2723
  /**
2724
2724
  * @license lucide-react v0.539.0 - ISC
@@ -2728,11 +2728,11 @@ const Archive = createLucideIcon("archive", __iconNode$1o);
2728
2728
  */
2729
2729
 
2730
2730
 
2731
- const __iconNode$1n = [
2731
+ const __iconNode$1q = [
2732
2732
  ["path", { d: "m12 19-7-7 7-7", key: "1l729n" }],
2733
2733
  ["path", { d: "M19 12H5", key: "x3x0zl" }]
2734
2734
  ];
2735
- const ArrowLeft = createLucideIcon("arrow-left", __iconNode$1n);
2735
+ const ArrowLeft = createLucideIcon("arrow-left", __iconNode$1q);
2736
2736
 
2737
2737
  /**
2738
2738
  * @license lucide-react v0.539.0 - ISC
@@ -2742,11 +2742,11 @@ const ArrowLeft = createLucideIcon("arrow-left", __iconNode$1n);
2742
2742
  */
2743
2743
 
2744
2744
 
2745
- const __iconNode$1m = [
2745
+ const __iconNode$1p = [
2746
2746
  ["path", { d: "M5 12h14", key: "1ays0h" }],
2747
2747
  ["path", { d: "m12 5 7 7-7 7", key: "xquz4c" }]
2748
2748
  ];
2749
- const ArrowRight = createLucideIcon("arrow-right", __iconNode$1m);
2749
+ const ArrowRight = createLucideIcon("arrow-right", __iconNode$1p);
2750
2750
 
2751
2751
  /**
2752
2752
  * @license lucide-react v0.539.0 - ISC
@@ -2756,11 +2756,11 @@ const ArrowRight = createLucideIcon("arrow-right", __iconNode$1m);
2756
2756
  */
2757
2757
 
2758
2758
 
2759
- const __iconNode$1l = [
2759
+ const __iconNode$1o = [
2760
2760
  ["path", { d: "M4.929 4.929 19.07 19.071", key: "196cmz" }],
2761
2761
  ["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }]
2762
2762
  ];
2763
- const Ban = createLucideIcon("ban", __iconNode$1l);
2763
+ const Ban = createLucideIcon("ban", __iconNode$1o);
2764
2764
 
2765
2765
  /**
2766
2766
  * @license lucide-react v0.539.0 - ISC
@@ -2770,7 +2770,7 @@ const Ban = createLucideIcon("ban", __iconNode$1l);
2770
2770
  */
2771
2771
 
2772
2772
 
2773
- const __iconNode$1k = [
2773
+ const __iconNode$1n = [
2774
2774
  ["path", { d: "M10.268 21a2 2 0 0 0 3.464 0", key: "vwvbt9" }],
2775
2775
  [
2776
2776
  "path",
@@ -2781,7 +2781,7 @@ const __iconNode$1k = [
2781
2781
  ],
2782
2782
  ["circle", { cx: "18", cy: "8", r: "3", key: "1g0gzu" }]
2783
2783
  ];
2784
- const BellDot = createLucideIcon("bell-dot", __iconNode$1k);
2784
+ const BellDot = createLucideIcon("bell-dot", __iconNode$1n);
2785
2785
 
2786
2786
  /**
2787
2787
  * @license lucide-react v0.539.0 - ISC
@@ -2791,7 +2791,7 @@ const BellDot = createLucideIcon("bell-dot", __iconNode$1k);
2791
2791
  */
2792
2792
 
2793
2793
 
2794
- const __iconNode$1j = [
2794
+ const __iconNode$1m = [
2795
2795
  ["path", { d: "M10.268 21a2 2 0 0 0 3.464 0", key: "vwvbt9" }],
2796
2796
  ["path", { d: "M22 8c0-2.3-.8-4.3-2-6", key: "5bb3ad" }],
2797
2797
  [
@@ -2803,7 +2803,7 @@ const __iconNode$1j = [
2803
2803
  ],
2804
2804
  ["path", { d: "M4 2C2.8 3.7 2 5.7 2 8", key: "tap9e0" }]
2805
2805
  ];
2806
- const BellRing = createLucideIcon("bell-ring", __iconNode$1j);
2806
+ const BellRing = createLucideIcon("bell-ring", __iconNode$1m);
2807
2807
 
2808
2808
  /**
2809
2809
  * @license lucide-react v0.539.0 - ISC
@@ -2813,7 +2813,7 @@ const BellRing = createLucideIcon("bell-ring", __iconNode$1j);
2813
2813
  */
2814
2814
 
2815
2815
 
2816
- const __iconNode$1i = [
2816
+ const __iconNode$1l = [
2817
2817
  ["path", { d: "M10.268 21a2 2 0 0 0 3.464 0", key: "vwvbt9" }],
2818
2818
  [
2819
2819
  "path",
@@ -2823,7 +2823,7 @@ const __iconNode$1i = [
2823
2823
  }
2824
2824
  ]
2825
2825
  ];
2826
- const Bell = createLucideIcon("bell", __iconNode$1i);
2826
+ const Bell = createLucideIcon("bell", __iconNode$1l);
2827
2827
 
2828
2828
  /**
2829
2829
  * @license lucide-react v0.539.0 - ISC
@@ -2833,13 +2833,13 @@ const Bell = createLucideIcon("bell", __iconNode$1i);
2833
2833
  */
2834
2834
 
2835
2835
 
2836
- const __iconNode$1h = [
2836
+ const __iconNode$1k = [
2837
2837
  [
2838
2838
  "path",
2839
2839
  { d: "M6 12h9a4 4 0 0 1 0 8H7a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h7a4 4 0 0 1 0 8", key: "mg9rjx" }
2840
2840
  ]
2841
2841
  ];
2842
- const Bold$1 = createLucideIcon("bold", __iconNode$1h);
2842
+ const Bold$1 = createLucideIcon("bold", __iconNode$1k);
2843
2843
 
2844
2844
  /**
2845
2845
  * @license lucide-react v0.539.0 - ISC
@@ -2849,7 +2849,28 @@ const Bold$1 = createLucideIcon("bold", __iconNode$1h);
2849
2849
  */
2850
2850
 
2851
2851
 
2852
- const __iconNode$1g = [
2852
+ const __iconNode$1j = [
2853
+ [
2854
+ "path",
2855
+ {
2856
+ d: "M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z",
2857
+ key: "hh9hay"
2858
+ }
2859
+ ],
2860
+ ["path", { d: "m3.3 7 8.7 5 8.7-5", key: "g66t2b" }],
2861
+ ["path", { d: "M12 22V12", key: "d0xqtd" }]
2862
+ ];
2863
+ const Box = createLucideIcon("box", __iconNode$1j);
2864
+
2865
+ /**
2866
+ * @license lucide-react v0.539.0 - ISC
2867
+ *
2868
+ * This source code is licensed under the ISC license.
2869
+ * See the LICENSE file in the root directory of this source tree.
2870
+ */
2871
+
2872
+
2873
+ const __iconNode$1i = [
2853
2874
  ["path", { d: "M6 22V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v18Z", key: "1b4qmf" }],
2854
2875
  ["path", { d: "M6 12H4a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h2", key: "i71pzd" }],
2855
2876
  ["path", { d: "M18 9h2a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2h-2", key: "10jefs" }],
@@ -2858,7 +2879,7 @@ const __iconNode$1g = [
2858
2879
  ["path", { d: "M10 14h4", key: "kelpxr" }],
2859
2880
  ["path", { d: "M10 18h4", key: "1ulq68" }]
2860
2881
  ];
2861
- const Building2 = createLucideIcon("building-2", __iconNode$1g);
2882
+ const Building2 = createLucideIcon("building-2", __iconNode$1i);
2862
2883
 
2863
2884
  /**
2864
2885
  * @license lucide-react v0.539.0 - ISC
@@ -2868,7 +2889,7 @@ const Building2 = createLucideIcon("building-2", __iconNode$1g);
2868
2889
  */
2869
2890
 
2870
2891
 
2871
- const __iconNode$1f = [
2892
+ const __iconNode$1h = [
2872
2893
  ["path", { d: "M8 2v4", key: "1cmpym" }],
2873
2894
  ["path", { d: "M16 2v4", key: "4m81vk" }],
2874
2895
  ["rect", { width: "18", height: "18", x: "3", y: "4", rx: "2", key: "1hopcy" }],
@@ -2880,7 +2901,7 @@ const __iconNode$1f = [
2880
2901
  ["path", { d: "M12 18h.01", key: "mhygvu" }],
2881
2902
  ["path", { d: "M16 18h.01", key: "kzsmim" }]
2882
2903
  ];
2883
- const CalendarDays = createLucideIcon("calendar-days", __iconNode$1f);
2904
+ const CalendarDays = createLucideIcon("calendar-days", __iconNode$1h);
2884
2905
 
2885
2906
  /**
2886
2907
  * @license lucide-react v0.539.0 - ISC
@@ -2890,13 +2911,13 @@ const CalendarDays = createLucideIcon("calendar-days", __iconNode$1f);
2890
2911
  */
2891
2912
 
2892
2913
 
2893
- const __iconNode$1e = [
2914
+ const __iconNode$1g = [
2894
2915
  ["path", { d: "M8 2v4", key: "1cmpym" }],
2895
2916
  ["path", { d: "M16 2v4", key: "4m81vk" }],
2896
2917
  ["rect", { width: "18", height: "18", x: "3", y: "4", rx: "2", key: "1hopcy" }],
2897
2918
  ["path", { d: "M3 10h18", key: "8toen8" }]
2898
2919
  ];
2899
- const Calendar$1 = createLucideIcon("calendar", __iconNode$1e);
2920
+ const Calendar$1 = createLucideIcon("calendar", __iconNode$1g);
2900
2921
 
2901
2922
  /**
2902
2923
  * @license lucide-react v0.539.0 - ISC
@@ -2906,11 +2927,11 @@ const Calendar$1 = createLucideIcon("calendar", __iconNode$1e);
2906
2927
  */
2907
2928
 
2908
2929
 
2909
- const __iconNode$1d = [
2930
+ const __iconNode$1f = [
2910
2931
  ["path", { d: "M18 6 7 17l-5-5", key: "116fxf" }],
2911
2932
  ["path", { d: "m22 10-7.5 7.5L13 16", key: "ke71qq" }]
2912
2933
  ];
2913
- const CheckCheck = createLucideIcon("check-check", __iconNode$1d);
2934
+ const CheckCheck = createLucideIcon("check-check", __iconNode$1f);
2914
2935
 
2915
2936
  /**
2916
2937
  * @license lucide-react v0.539.0 - ISC
@@ -2920,8 +2941,8 @@ const CheckCheck = createLucideIcon("check-check", __iconNode$1d);
2920
2941
  */
2921
2942
 
2922
2943
 
2923
- const __iconNode$1c = [["path", { d: "M20 6 9 17l-5-5", key: "1gmf2c" }]];
2924
- const Check = createLucideIcon("check", __iconNode$1c);
2944
+ const __iconNode$1e = [["path", { d: "M20 6 9 17l-5-5", key: "1gmf2c" }]];
2945
+ const Check = createLucideIcon("check", __iconNode$1e);
2925
2946
 
2926
2947
  /**
2927
2948
  * @license lucide-react v0.539.0 - ISC
@@ -2931,8 +2952,8 @@ const Check = createLucideIcon("check", __iconNode$1c);
2931
2952
  */
2932
2953
 
2933
2954
 
2934
- const __iconNode$1b = [["path", { d: "m6 9 6 6 6-6", key: "qrunsl" }]];
2935
- const ChevronDown = createLucideIcon("chevron-down", __iconNode$1b);
2955
+ const __iconNode$1d = [["path", { d: "m6 9 6 6 6-6", key: "qrunsl" }]];
2956
+ const ChevronDown = createLucideIcon("chevron-down", __iconNode$1d);
2936
2957
 
2937
2958
  /**
2938
2959
  * @license lucide-react v0.539.0 - ISC
@@ -2942,8 +2963,8 @@ const ChevronDown = createLucideIcon("chevron-down", __iconNode$1b);
2942
2963
  */
2943
2964
 
2944
2965
 
2945
- const __iconNode$1a = [["path", { d: "m15 18-6-6 6-6", key: "1wnfg3" }]];
2946
- const ChevronLeft = createLucideIcon("chevron-left", __iconNode$1a);
2966
+ const __iconNode$1c = [["path", { d: "m15 18-6-6 6-6", key: "1wnfg3" }]];
2967
+ const ChevronLeft = createLucideIcon("chevron-left", __iconNode$1c);
2947
2968
 
2948
2969
  /**
2949
2970
  * @license lucide-react v0.539.0 - ISC
@@ -2953,8 +2974,8 @@ const ChevronLeft = createLucideIcon("chevron-left", __iconNode$1a);
2953
2974
  */
2954
2975
 
2955
2976
 
2956
- const __iconNode$19 = [["path", { d: "m9 18 6-6-6-6", key: "mthhwq" }]];
2957
- const ChevronRight = createLucideIcon("chevron-right", __iconNode$19);
2977
+ const __iconNode$1b = [["path", { d: "m9 18 6-6-6-6", key: "mthhwq" }]];
2978
+ const ChevronRight = createLucideIcon("chevron-right", __iconNode$1b);
2958
2979
 
2959
2980
  /**
2960
2981
  * @license lucide-react v0.539.0 - ISC
@@ -2964,8 +2985,8 @@ const ChevronRight = createLucideIcon("chevron-right", __iconNode$19);
2964
2985
  */
2965
2986
 
2966
2987
 
2967
- const __iconNode$18 = [["path", { d: "m18 15-6-6-6 6", key: "153udz" }]];
2968
- const ChevronUp = createLucideIcon("chevron-up", __iconNode$18);
2988
+ const __iconNode$1a = [["path", { d: "m18 15-6-6-6 6", key: "153udz" }]];
2989
+ const ChevronUp = createLucideIcon("chevron-up", __iconNode$1a);
2969
2990
 
2970
2991
  /**
2971
2992
  * @license lucide-react v0.539.0 - ISC
@@ -2975,11 +2996,11 @@ const ChevronUp = createLucideIcon("chevron-up", __iconNode$18);
2975
2996
  */
2976
2997
 
2977
2998
 
2978
- const __iconNode$17 = [
2999
+ const __iconNode$19 = [
2979
3000
  ["path", { d: "m11 17-5-5 5-5", key: "13zhaf" }],
2980
3001
  ["path", { d: "m18 17-5-5 5-5", key: "h8a8et" }]
2981
3002
  ];
2982
- const ChevronsLeft = createLucideIcon("chevrons-left", __iconNode$17);
3003
+ const ChevronsLeft = createLucideIcon("chevrons-left", __iconNode$19);
2983
3004
 
2984
3005
  /**
2985
3006
  * @license lucide-react v0.539.0 - ISC
@@ -2989,11 +3010,11 @@ const ChevronsLeft = createLucideIcon("chevrons-left", __iconNode$17);
2989
3010
  */
2990
3011
 
2991
3012
 
2992
- const __iconNode$16 = [
3013
+ const __iconNode$18 = [
2993
3014
  ["path", { d: "m6 17 5-5-5-5", key: "xnjwq" }],
2994
3015
  ["path", { d: "m13 17 5-5-5-5", key: "17xmmf" }]
2995
3016
  ];
2996
- const ChevronsRight = createLucideIcon("chevrons-right", __iconNode$16);
3017
+ const ChevronsRight = createLucideIcon("chevrons-right", __iconNode$18);
2997
3018
 
2998
3019
  /**
2999
3020
  * @license lucide-react v0.539.0 - ISC
@@ -3003,12 +3024,12 @@ const ChevronsRight = createLucideIcon("chevrons-right", __iconNode$16);
3003
3024
  */
3004
3025
 
3005
3026
 
3006
- const __iconNode$15 = [
3027
+ const __iconNode$17 = [
3007
3028
  ["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
3008
3029
  ["line", { x1: "12", x2: "12", y1: "8", y2: "12", key: "1pkeuh" }],
3009
3030
  ["line", { x1: "12", x2: "12.01", y1: "16", y2: "16", key: "4dfq90" }]
3010
3031
  ];
3011
- const CircleAlert = createLucideIcon("circle-alert", __iconNode$15);
3032
+ const CircleAlert = createLucideIcon("circle-alert", __iconNode$17);
3012
3033
 
3013
3034
  /**
3014
3035
  * @license lucide-react v0.539.0 - ISC
@@ -3018,11 +3039,11 @@ const CircleAlert = createLucideIcon("circle-alert", __iconNode$15);
3018
3039
  */
3019
3040
 
3020
3041
 
3021
- const __iconNode$14 = [
3042
+ const __iconNode$16 = [
3022
3043
  ["path", { d: "M21.801 10A10 10 0 1 1 17 3.335", key: "yps3ct" }],
3023
3044
  ["path", { d: "m9 11 3 3L22 4", key: "1pflzl" }]
3024
3045
  ];
3025
- const CircleCheckBig = createLucideIcon("circle-check-big", __iconNode$14);
3046
+ const CircleCheckBig = createLucideIcon("circle-check-big", __iconNode$16);
3026
3047
 
3027
3048
  /**
3028
3049
  * @license lucide-react v0.539.0 - ISC
@@ -3032,11 +3053,11 @@ const CircleCheckBig = createLucideIcon("circle-check-big", __iconNode$14);
3032
3053
  */
3033
3054
 
3034
3055
 
3035
- const __iconNode$13 = [
3056
+ const __iconNode$15 = [
3036
3057
  ["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
3037
3058
  ["path", { d: "m9 12 2 2 4-4", key: "dzmm74" }]
3038
3059
  ];
3039
- const CircleCheck = createLucideIcon("circle-check", __iconNode$13);
3060
+ const CircleCheck = createLucideIcon("circle-check", __iconNode$15);
3040
3061
 
3041
3062
  /**
3042
3063
  * @license lucide-react v0.539.0 - ISC
@@ -3046,11 +3067,11 @@ const CircleCheck = createLucideIcon("circle-check", __iconNode$13);
3046
3067
  */
3047
3068
 
3048
3069
 
3049
- const __iconNode$12 = [
3070
+ const __iconNode$14 = [
3050
3071
  ["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
3051
3072
  ["path", { d: "m16 10-4 4-4-4", key: "894hmk" }]
3052
3073
  ];
3053
- const CircleChevronDown = createLucideIcon("circle-chevron-down", __iconNode$12);
3074
+ const CircleChevronDown = createLucideIcon("circle-chevron-down", __iconNode$14);
3054
3075
 
3055
3076
  /**
3056
3077
  * @license lucide-react v0.539.0 - ISC
@@ -3060,11 +3081,11 @@ const CircleChevronDown = createLucideIcon("circle-chevron-down", __iconNode$12)
3060
3081
  */
3061
3082
 
3062
3083
 
3063
- const __iconNode$11 = [
3084
+ const __iconNode$13 = [
3064
3085
  ["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
3065
3086
  ["circle", { cx: "12", cy: "12", r: "1", key: "41hilf" }]
3066
3087
  ];
3067
- const CircleDot = createLucideIcon("circle-dot", __iconNode$11);
3088
+ const CircleDot = createLucideIcon("circle-dot", __iconNode$13);
3068
3089
 
3069
3090
  /**
3070
3091
  * @license lucide-react v0.539.0 - ISC
@@ -3074,12 +3095,12 @@ const CircleDot = createLucideIcon("circle-dot", __iconNode$11);
3074
3095
  */
3075
3096
 
3076
3097
 
3077
- const __iconNode$10 = [
3098
+ const __iconNode$12 = [
3078
3099
  ["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
3079
3100
  ["path", { d: "m15 9-6 6", key: "1uzhvr" }],
3080
3101
  ["path", { d: "m9 9 6 6", key: "z0biqf" }]
3081
3102
  ];
3082
- const CircleX = createLucideIcon("circle-x", __iconNode$10);
3103
+ const CircleX = createLucideIcon("circle-x", __iconNode$12);
3083
3104
 
3084
3105
  /**
3085
3106
  * @license lucide-react v0.539.0 - ISC
@@ -3089,8 +3110,8 @@ const CircleX = createLucideIcon("circle-x", __iconNode$10);
3089
3110
  */
3090
3111
 
3091
3112
 
3092
- const __iconNode$$ = [["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }]];
3093
- const Circle = createLucideIcon("circle", __iconNode$$);
3113
+ const __iconNode$11 = [["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }]];
3114
+ const Circle = createLucideIcon("circle", __iconNode$11);
3094
3115
 
3095
3116
  /**
3096
3117
  * @license lucide-react v0.539.0 - ISC
@@ -3100,11 +3121,11 @@ const Circle = createLucideIcon("circle", __iconNode$$);
3100
3121
  */
3101
3122
 
3102
3123
 
3103
- const __iconNode$_ = [
3124
+ const __iconNode$10 = [
3104
3125
  ["path", { d: "M12 6v6l4 2", key: "mmk7yg" }],
3105
3126
  ["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }]
3106
3127
  ];
3107
- const Clock = createLucideIcon("clock", __iconNode$_);
3128
+ const Clock = createLucideIcon("clock", __iconNode$10);
3108
3129
 
3109
3130
  /**
3110
3131
  * @license lucide-react v0.539.0 - ISC
@@ -3114,11 +3135,11 @@ const Clock = createLucideIcon("clock", __iconNode$_);
3114
3135
  */
3115
3136
 
3116
3137
 
3117
- const __iconNode$Z = [
3138
+ const __iconNode$$ = [
3118
3139
  ["rect", { width: "14", height: "14", x: "8", y: "8", rx: "2", ry: "2", key: "17jyea" }],
3119
3140
  ["path", { d: "M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2", key: "zix9uf" }]
3120
3141
  ];
3121
- const Copy = createLucideIcon("copy", __iconNode$Z);
3142
+ const Copy = createLucideIcon("copy", __iconNode$$);
3122
3143
 
3123
3144
  /**
3124
3145
  * @license lucide-react v0.539.0 - ISC
@@ -3128,11 +3149,11 @@ const Copy = createLucideIcon("copy", __iconNode$Z);
3128
3149
  */
3129
3150
 
3130
3151
 
3131
- const __iconNode$Y = [
3152
+ const __iconNode$_ = [
3132
3153
  ["path", { d: "M6 2v14a2 2 0 0 0 2 2h14", key: "ron5a4" }],
3133
3154
  ["path", { d: "M18 22V8a2 2 0 0 0-2-2H2", key: "7s9ehn" }]
3134
3155
  ];
3135
- const Crop = createLucideIcon("crop", __iconNode$Y);
3156
+ const Crop = createLucideIcon("crop", __iconNode$_);
3136
3157
 
3137
3158
  /**
3138
3159
  * @license lucide-react v0.539.0 - ISC
@@ -3142,12 +3163,12 @@ const Crop = createLucideIcon("crop", __iconNode$Y);
3142
3163
  */
3143
3164
 
3144
3165
 
3145
- const __iconNode$X = [
3166
+ const __iconNode$Z = [
3146
3167
  ["path", { d: "M12 15V3", key: "m9g1x1" }],
3147
3168
  ["path", { d: "M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4", key: "ih7n3h" }],
3148
3169
  ["path", { d: "m7 10 5 5 5-5", key: "brsn70" }]
3149
3170
  ];
3150
- const Download = createLucideIcon("download", __iconNode$X);
3171
+ const Download = createLucideIcon("download", __iconNode$Z);
3151
3172
 
3152
3173
  /**
3153
3174
  * @license lucide-react v0.539.0 - ISC
@@ -3157,12 +3178,12 @@ const Download = createLucideIcon("download", __iconNode$X);
3157
3178
  */
3158
3179
 
3159
3180
 
3160
- const __iconNode$W = [
3181
+ const __iconNode$Y = [
3161
3182
  ["circle", { cx: "12", cy: "12", r: "1", key: "41hilf" }],
3162
3183
  ["circle", { cx: "12", cy: "5", r: "1", key: "gxeob9" }],
3163
3184
  ["circle", { cx: "12", cy: "19", r: "1", key: "lyex9k" }]
3164
3185
  ];
3165
- const EllipsisVertical = createLucideIcon("ellipsis-vertical", __iconNode$W);
3186
+ const EllipsisVertical = createLucideIcon("ellipsis-vertical", __iconNode$Y);
3166
3187
 
3167
3188
  /**
3168
3189
  * @license lucide-react v0.539.0 - ISC
@@ -3172,12 +3193,12 @@ const EllipsisVertical = createLucideIcon("ellipsis-vertical", __iconNode$W);
3172
3193
  */
3173
3194
 
3174
3195
 
3175
- const __iconNode$V = [
3196
+ const __iconNode$X = [
3176
3197
  ["circle", { cx: "12", cy: "12", r: "1", key: "41hilf" }],
3177
3198
  ["circle", { cx: "19", cy: "12", r: "1", key: "1wjl8i" }],
3178
3199
  ["circle", { cx: "5", cy: "12", r: "1", key: "1pcz8c" }]
3179
3200
  ];
3180
- const Ellipsis = createLucideIcon("ellipsis", __iconNode$V);
3201
+ const Ellipsis = createLucideIcon("ellipsis", __iconNode$X);
3181
3202
 
3182
3203
  /**
3183
3204
  * @license lucide-react v0.539.0 - ISC
@@ -3187,12 +3208,12 @@ const Ellipsis = createLucideIcon("ellipsis", __iconNode$V);
3187
3208
  */
3188
3209
 
3189
3210
 
3190
- const __iconNode$U = [
3211
+ const __iconNode$W = [
3191
3212
  ["path", { d: "M15 3h6v6", key: "1q9fwt" }],
3192
3213
  ["path", { d: "M10 14 21 3", key: "gplh6r" }],
3193
3214
  ["path", { d: "M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6", key: "a6xqqp" }]
3194
3215
  ];
3195
- const ExternalLink = createLucideIcon("external-link", __iconNode$U);
3216
+ const ExternalLink = createLucideIcon("external-link", __iconNode$W);
3196
3217
 
3197
3218
  /**
3198
3219
  * @license lucide-react v0.539.0 - ISC
@@ -3202,7 +3223,7 @@ const ExternalLink = createLucideIcon("external-link", __iconNode$U);
3202
3223
  */
3203
3224
 
3204
3225
 
3205
- const __iconNode$T = [
3226
+ const __iconNode$V = [
3206
3227
  [
3207
3228
  "path",
3208
3229
  {
@@ -3212,7 +3233,7 @@ const __iconNode$T = [
3212
3233
  ],
3213
3234
  ["circle", { cx: "12", cy: "12", r: "3", key: "1v7zrd" }]
3214
3235
  ];
3215
- const Eye = createLucideIcon("eye", __iconNode$T);
3236
+ const Eye = createLucideIcon("eye", __iconNode$V);
3216
3237
 
3217
3238
  /**
3218
3239
  * @license lucide-react v0.539.0 - ISC
@@ -3222,13 +3243,13 @@ const Eye = createLucideIcon("eye", __iconNode$T);
3222
3243
  */
3223
3244
 
3224
3245
 
3225
- const __iconNode$S = [
3246
+ const __iconNode$U = [
3226
3247
  [
3227
3248
  "path",
3228
3249
  { d: "M18 2h-3a5 5 0 0 0-5 5v3H7v4h3v8h4v-8h3l1-4h-4V7a1 1 0 0 1 1-1h3z", key: "1jg4f8" }
3229
3250
  ]
3230
3251
  ];
3231
- const Facebook = createLucideIcon("facebook", __iconNode$S);
3252
+ const Facebook = createLucideIcon("facebook", __iconNode$U);
3232
3253
 
3233
3254
  /**
3234
3255
  * @license lucide-react v0.539.0 - ISC
@@ -3238,7 +3259,7 @@ const Facebook = createLucideIcon("facebook", __iconNode$S);
3238
3259
  */
3239
3260
 
3240
3261
 
3241
- const __iconNode$R = [
3262
+ const __iconNode$T = [
3242
3263
  ["path", { d: "M12 22h6a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v3.072", key: "n6s66f" }],
3243
3264
  ["path", { d: "M14 2v4a2 2 0 0 0 2 2h4", key: "tnqrlb" }],
3244
3265
  [
@@ -3250,7 +3271,7 @@ const __iconNode$R = [
3250
3271
  ],
3251
3272
  ["circle", { cx: "5", cy: "14", r: "3", key: "ufru5t" }]
3252
3273
  ];
3253
- const FileBadge = createLucideIcon("file-badge", __iconNode$R);
3274
+ const FileBadge = createLucideIcon("file-badge", __iconNode$T);
3254
3275
 
3255
3276
  /**
3256
3277
  * @license lucide-react v0.539.0 - ISC
@@ -3260,12 +3281,12 @@ const FileBadge = createLucideIcon("file-badge", __iconNode$R);
3260
3281
  */
3261
3282
 
3262
3283
 
3263
- const __iconNode$Q = [
3284
+ const __iconNode$S = [
3264
3285
  ["path", { d: "M4 22h14a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v4", key: "1pf5j1" }],
3265
3286
  ["path", { d: "M14 2v4a2 2 0 0 0 2 2h4", key: "tnqrlb" }],
3266
3287
  ["path", { d: "m3 15 2 2 4-4", key: "1lhrkk" }]
3267
3288
  ];
3268
- const FileCheck2 = createLucideIcon("file-check-2", __iconNode$Q);
3289
+ const FileCheck2 = createLucideIcon("file-check-2", __iconNode$S);
3269
3290
 
3270
3291
  /**
3271
3292
  * @license lucide-react v0.539.0 - ISC
@@ -3275,14 +3296,14 @@ const FileCheck2 = createLucideIcon("file-check-2", __iconNode$Q);
3275
3296
  */
3276
3297
 
3277
3298
 
3278
- const __iconNode$P = [
3299
+ const __iconNode$R = [
3279
3300
  ["path", { d: "M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z", key: "1rqfz7" }],
3280
3301
  ["path", { d: "M14 2v4a2 2 0 0 0 2 2h4", key: "tnqrlb" }],
3281
3302
  ["path", { d: "M10 9H8", key: "b1mrlr" }],
3282
3303
  ["path", { d: "M16 13H8", key: "t4e002" }],
3283
3304
  ["path", { d: "M16 17H8", key: "z1uh3a" }]
3284
3305
  ];
3285
- const FileText = createLucideIcon("file-text", __iconNode$P);
3306
+ const FileText = createLucideIcon("file-text", __iconNode$R);
3286
3307
 
3287
3308
  /**
3288
3309
  * @license lucide-react v0.539.0 - ISC
@@ -3292,7 +3313,7 @@ const FileText = createLucideIcon("file-text", __iconNode$P);
3292
3313
  */
3293
3314
 
3294
3315
 
3295
- const __iconNode$O = [
3316
+ const __iconNode$Q = [
3296
3317
  [
3297
3318
  "path",
3298
3319
  {
@@ -3301,7 +3322,7 @@ const __iconNode$O = [
3301
3322
  }
3302
3323
  ]
3303
3324
  ];
3304
- const Funnel = createLucideIcon("funnel", __iconNode$O);
3325
+ const Funnel = createLucideIcon("funnel", __iconNode$Q);
3305
3326
 
3306
3327
  /**
3307
3328
  * @license lucide-react v0.539.0 - ISC
@@ -3311,7 +3332,28 @@ const Funnel = createLucideIcon("funnel", __iconNode$O);
3311
3332
  */
3312
3333
 
3313
3334
 
3314
- const __iconNode$N = [
3335
+ const __iconNode$P = [
3336
+ ["path", { d: "M10.5 3 8 9l4 13 4-13-2.5-6", key: "b3dvk1" }],
3337
+ [
3338
+ "path",
3339
+ {
3340
+ d: "M17 3a2 2 0 0 1 1.6.8l3 4a2 2 0 0 1 .013 2.382l-7.99 10.986a2 2 0 0 1-3.247 0l-7.99-10.986A2 2 0 0 1 2.4 7.8l2.998-3.997A2 2 0 0 1 7 3z",
3341
+ key: "7w4byz"
3342
+ }
3343
+ ],
3344
+ ["path", { d: "M2 9h20", key: "16fsjt" }]
3345
+ ];
3346
+ const Gem = createLucideIcon("gem", __iconNode$P);
3347
+
3348
+ /**
3349
+ * @license lucide-react v0.539.0 - ISC
3350
+ *
3351
+ * This source code is licensed under the ISC license.
3352
+ * See the LICENSE file in the root directory of this source tree.
3353
+ */
3354
+
3355
+
3356
+ const __iconNode$O = [
3315
3357
  ["circle", { cx: "12", cy: "9", r: "1", key: "124mty" }],
3316
3358
  ["circle", { cx: "19", cy: "9", r: "1", key: "1ruzo2" }],
3317
3359
  ["circle", { cx: "5", cy: "9", r: "1", key: "1a8b28" }],
@@ -3319,7 +3361,7 @@ const __iconNode$N = [
3319
3361
  ["circle", { cx: "19", cy: "15", r: "1", key: "1a92ep" }],
3320
3362
  ["circle", { cx: "5", cy: "15", r: "1", key: "5r1jwy" }]
3321
3363
  ];
3322
- const GripHorizontal = createLucideIcon("grip-horizontal", __iconNode$N);
3364
+ const GripHorizontal = createLucideIcon("grip-horizontal", __iconNode$O);
3323
3365
 
3324
3366
  /**
3325
3367
  * @license lucide-react v0.539.0 - ISC
@@ -3329,7 +3371,7 @@ const GripHorizontal = createLucideIcon("grip-horizontal", __iconNode$N);
3329
3371
  */
3330
3372
 
3331
3373
 
3332
- const __iconNode$M = [
3374
+ const __iconNode$N = [
3333
3375
  ["circle", { cx: "9", cy: "12", r: "1", key: "1vctgf" }],
3334
3376
  ["circle", { cx: "9", cy: "5", r: "1", key: "hp0tcf" }],
3335
3377
  ["circle", { cx: "9", cy: "19", r: "1", key: "fkjjf6" }],
@@ -3337,7 +3379,7 @@ const __iconNode$M = [
3337
3379
  ["circle", { cx: "15", cy: "5", r: "1", key: "19l28e" }],
3338
3380
  ["circle", { cx: "15", cy: "19", r: "1", key: "f4zoj3" }]
3339
3381
  ];
3340
- const GripVertical = createLucideIcon("grip-vertical", __iconNode$M);
3382
+ const GripVertical = createLucideIcon("grip-vertical", __iconNode$N);
3341
3383
 
3342
3384
  /**
3343
3385
  * @license lucide-react v0.539.0 - ISC
@@ -3347,13 +3389,13 @@ const GripVertical = createLucideIcon("grip-vertical", __iconNode$M);
3347
3389
  */
3348
3390
 
3349
3391
 
3350
- const __iconNode$L = [
3392
+ const __iconNode$M = [
3351
3393
  ["line", { x1: "4", x2: "20", y1: "9", y2: "9", key: "4lhtct" }],
3352
3394
  ["line", { x1: "4", x2: "20", y1: "15", y2: "15", key: "vyu0kd" }],
3353
3395
  ["line", { x1: "10", x2: "8", y1: "3", y2: "21", key: "1ggp8o" }],
3354
3396
  ["line", { x1: "16", x2: "14", y1: "3", y2: "21", key: "weycgp" }]
3355
3397
  ];
3356
- const Hash = createLucideIcon("hash", __iconNode$L);
3398
+ const Hash = createLucideIcon("hash", __iconNode$M);
3357
3399
 
3358
3400
  /**
3359
3401
  * @license lucide-react v0.539.0 - ISC
@@ -3363,13 +3405,13 @@ const Hash = createLucideIcon("hash", __iconNode$L);
3363
3405
  */
3364
3406
 
3365
3407
 
3366
- const __iconNode$K = [
3408
+ const __iconNode$L = [
3367
3409
  ["path", { d: "M4 12h8", key: "17cfdx" }],
3368
3410
  ["path", { d: "M4 18V6", key: "1rz3zl" }],
3369
3411
  ["path", { d: "M12 18V6", key: "zqpxq5" }],
3370
3412
  ["path", { d: "m17 12 3-2v8", key: "1hhhft" }]
3371
3413
  ];
3372
- const Heading1 = createLucideIcon("heading-1", __iconNode$K);
3414
+ const Heading1 = createLucideIcon("heading-1", __iconNode$L);
3373
3415
 
3374
3416
  /**
3375
3417
  * @license lucide-react v0.539.0 - ISC
@@ -3379,13 +3421,13 @@ const Heading1 = createLucideIcon("heading-1", __iconNode$K);
3379
3421
  */
3380
3422
 
3381
3423
 
3382
- const __iconNode$J = [
3424
+ const __iconNode$K = [
3383
3425
  ["path", { d: "M4 12h8", key: "17cfdx" }],
3384
3426
  ["path", { d: "M4 18V6", key: "1rz3zl" }],
3385
3427
  ["path", { d: "M12 18V6", key: "zqpxq5" }],
3386
3428
  ["path", { d: "M21 18h-4c0-4 4-3 4-6 0-1.5-2-2.5-4-1", key: "9jr5yi" }]
3387
3429
  ];
3388
- const Heading2 = createLucideIcon("heading-2", __iconNode$J);
3430
+ const Heading2 = createLucideIcon("heading-2", __iconNode$K);
3389
3431
 
3390
3432
  /**
3391
3433
  * @license lucide-react v0.539.0 - ISC
@@ -3395,14 +3437,14 @@ const Heading2 = createLucideIcon("heading-2", __iconNode$J);
3395
3437
  */
3396
3438
 
3397
3439
 
3398
- const __iconNode$I = [
3440
+ const __iconNode$J = [
3399
3441
  ["path", { d: "M4 12h8", key: "17cfdx" }],
3400
3442
  ["path", { d: "M4 18V6", key: "1rz3zl" }],
3401
3443
  ["path", { d: "M12 18V6", key: "zqpxq5" }],
3402
3444
  ["path", { d: "M17.5 10.5c1.7-1 3.5 0 3.5 1.5a2 2 0 0 1-2 2", key: "68ncm8" }],
3403
3445
  ["path", { d: "M17 17.5c2 1.5 4 .3 4-1.5a2 2 0 0 0-2-2", key: "1ejuhz" }]
3404
3446
  ];
3405
- const Heading3 = createLucideIcon("heading-3", __iconNode$I);
3447
+ const Heading3 = createLucideIcon("heading-3", __iconNode$J);
3406
3448
 
3407
3449
  /**
3408
3450
  * @license lucide-react v0.539.0 - ISC
@@ -3412,12 +3454,12 @@ const Heading3 = createLucideIcon("heading-3", __iconNode$I);
3412
3454
  */
3413
3455
 
3414
3456
 
3415
- const __iconNode$H = [
3457
+ const __iconNode$I = [
3416
3458
  ["path", { d: "M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8", key: "1357e3" }],
3417
3459
  ["path", { d: "M3 3v5h5", key: "1xhq8a" }],
3418
3460
  ["path", { d: "M12 7v5l4 2", key: "1fdv2h" }]
3419
3461
  ];
3420
- const History = createLucideIcon("history", __iconNode$H);
3462
+ const History = createLucideIcon("history", __iconNode$I);
3421
3463
 
3422
3464
  /**
3423
3465
  * @license lucide-react v0.539.0 - ISC
@@ -3427,12 +3469,12 @@ const History = createLucideIcon("history", __iconNode$H);
3427
3469
  */
3428
3470
 
3429
3471
 
3430
- const __iconNode$G = [
3472
+ const __iconNode$H = [
3431
3473
  ["rect", { width: "18", height: "18", x: "3", y: "3", rx: "2", ry: "2", key: "1m3agn" }],
3432
3474
  ["circle", { cx: "9", cy: "9", r: "2", key: "af1f0g" }],
3433
3475
  ["path", { d: "m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21", key: "1xmnt7" }]
3434
3476
  ];
3435
- const Image$1 = createLucideIcon("image", __iconNode$G);
3477
+ const Image$1 = createLucideIcon("image", __iconNode$H);
3436
3478
 
3437
3479
  /**
3438
3480
  * @license lucide-react v0.539.0 - ISC
@@ -3442,12 +3484,12 @@ const Image$1 = createLucideIcon("image", __iconNode$G);
3442
3484
  */
3443
3485
 
3444
3486
 
3445
- const __iconNode$F = [
3487
+ const __iconNode$G = [
3446
3488
  ["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
3447
3489
  ["path", { d: "M12 16v-4", key: "1dtifu" }],
3448
3490
  ["path", { d: "M12 8h.01", key: "e9boi3" }]
3449
3491
  ];
3450
- const Info = createLucideIcon("info", __iconNode$F);
3492
+ const Info = createLucideIcon("info", __iconNode$G);
3451
3493
 
3452
3494
  /**
3453
3495
  * @license lucide-react v0.539.0 - ISC
@@ -3457,12 +3499,12 @@ const Info = createLucideIcon("info", __iconNode$F);
3457
3499
  */
3458
3500
 
3459
3501
 
3460
- const __iconNode$E = [
3502
+ const __iconNode$F = [
3461
3503
  ["line", { x1: "19", x2: "10", y1: "4", y2: "4", key: "15jd3p" }],
3462
3504
  ["line", { x1: "14", x2: "5", y1: "20", y2: "20", key: "bu0au3" }],
3463
3505
  ["line", { x1: "15", x2: "9", y1: "4", y2: "20", key: "uljnxc" }]
3464
3506
  ];
3465
- const Italic$1 = createLucideIcon("italic", __iconNode$E);
3507
+ const Italic$1 = createLucideIcon("italic", __iconNode$F);
3466
3508
 
3467
3509
  /**
3468
3510
  * @license lucide-react v0.539.0 - ISC
@@ -3472,7 +3514,7 @@ const Italic$1 = createLucideIcon("italic", __iconNode$E);
3472
3514
  */
3473
3515
 
3474
3516
 
3475
- const __iconNode$D = [
3517
+ const __iconNode$E = [
3476
3518
  [
3477
3519
  "path",
3478
3520
  {
@@ -3482,7 +3524,7 @@ const __iconNode$D = [
3482
3524
  ],
3483
3525
  ["circle", { cx: "16.5", cy: "7.5", r: ".5", fill: "currentColor", key: "w0ekpg" }]
3484
3526
  ];
3485
- const KeyRound = createLucideIcon("key-round", __iconNode$D);
3527
+ const KeyRound = createLucideIcon("key-round", __iconNode$E);
3486
3528
 
3487
3529
  /**
3488
3530
  * @license lucide-react v0.539.0 - ISC
@@ -3492,12 +3534,12 @@ const KeyRound = createLucideIcon("key-round", __iconNode$D);
3492
3534
  */
3493
3535
 
3494
3536
 
3495
- const __iconNode$C = [
3537
+ const __iconNode$D = [
3496
3538
  ["path", { d: "M9 17H7A5 5 0 0 1 7 7h2", key: "8i5ue5" }],
3497
3539
  ["path", { d: "M15 7h2a5 5 0 1 1 0 10h-2", key: "1b9ql8" }],
3498
3540
  ["line", { x1: "8", x2: "16", y1: "12", y2: "12", key: "1jonct" }]
3499
3541
  ];
3500
- const Link2 = createLucideIcon("link-2", __iconNode$C);
3542
+ const Link2 = createLucideIcon("link-2", __iconNode$D);
3501
3543
 
3502
3544
  /**
3503
3545
  * @license lucide-react v0.539.0 - ISC
@@ -3507,14 +3549,14 @@ const Link2 = createLucideIcon("link-2", __iconNode$C);
3507
3549
  */
3508
3550
 
3509
3551
 
3510
- const __iconNode$B = [
3552
+ const __iconNode$C = [
3511
3553
  ["path", { d: "m3 17 2 2 4-4", key: "1jhpwq" }],
3512
3554
  ["path", { d: "m3 7 2 2 4-4", key: "1obspn" }],
3513
3555
  ["path", { d: "M13 6h8", key: "15sg57" }],
3514
3556
  ["path", { d: "M13 12h8", key: "h98zly" }],
3515
3557
  ["path", { d: "M13 18h8", key: "oe0vm4" }]
3516
3558
  ];
3517
- const ListChecks = createLucideIcon("list-checks", __iconNode$B);
3559
+ const ListChecks = createLucideIcon("list-checks", __iconNode$C);
3518
3560
 
3519
3561
  /**
3520
3562
  * @license lucide-react v0.539.0 - ISC
@@ -3524,7 +3566,7 @@ const ListChecks = createLucideIcon("list-checks", __iconNode$B);
3524
3566
  */
3525
3567
 
3526
3568
 
3527
- const __iconNode$A = [
3569
+ const __iconNode$B = [
3528
3570
  ["path", { d: "M10 12h11", key: "6m4ad9" }],
3529
3571
  ["path", { d: "M10 18h11", key: "11hvi2" }],
3530
3572
  ["path", { d: "M10 6h11", key: "c7qv1k" }],
@@ -3532,7 +3574,7 @@ const __iconNode$A = [
3532
3574
  ["path", { d: "M4 6h1v4", key: "cnovpq" }],
3533
3575
  ["path", { d: "M6 18H4c0-1 2-2 2-3s-1-1.5-2-1", key: "m9a95d" }]
3534
3576
  ];
3535
- const ListOrdered = createLucideIcon("list-ordered", __iconNode$A);
3577
+ const ListOrdered = createLucideIcon("list-ordered", __iconNode$B);
3536
3578
 
3537
3579
  /**
3538
3580
  * @license lucide-react v0.539.0 - ISC
@@ -3542,7 +3584,7 @@ const ListOrdered = createLucideIcon("list-ordered", __iconNode$A);
3542
3584
  */
3543
3585
 
3544
3586
 
3545
- const __iconNode$z = [
3587
+ const __iconNode$A = [
3546
3588
  ["path", { d: "M3 12h.01", key: "nlz23k" }],
3547
3589
  ["path", { d: "M3 18h.01", key: "1tta3j" }],
3548
3590
  ["path", { d: "M3 6h.01", key: "1rqtza" }],
@@ -3550,7 +3592,7 @@ const __iconNode$z = [
3550
3592
  ["path", { d: "M8 18h13", key: "1lx6n3" }],
3551
3593
  ["path", { d: "M8 6h13", key: "ik3vkj" }]
3552
3594
  ];
3553
- const List = createLucideIcon("list", __iconNode$z);
3595
+ const List = createLucideIcon("list", __iconNode$A);
3554
3596
 
3555
3597
  /**
3556
3598
  * @license lucide-react v0.539.0 - ISC
@@ -3560,8 +3602,8 @@ const List = createLucideIcon("list", __iconNode$z);
3560
3602
  */
3561
3603
 
3562
3604
 
3563
- const __iconNode$y = [["path", { d: "M21 12a9 9 0 1 1-6.219-8.56", key: "13zald" }]];
3564
- const LoaderCircle = createLucideIcon("loader-circle", __iconNode$y);
3605
+ const __iconNode$z = [["path", { d: "M21 12a9 9 0 1 1-6.219-8.56", key: "13zald" }]];
3606
+ const LoaderCircle = createLucideIcon("loader-circle", __iconNode$z);
3565
3607
 
3566
3608
  /**
3567
3609
  * @license lucide-react v0.539.0 - ISC
@@ -3571,7 +3613,7 @@ const LoaderCircle = createLucideIcon("loader-circle", __iconNode$y);
3571
3613
  */
3572
3614
 
3573
3615
 
3574
- const __iconNode$x = [
3616
+ const __iconNode$y = [
3575
3617
  ["path", { d: "M12 2v4", key: "3427ic" }],
3576
3618
  ["path", { d: "m16.2 7.8 2.9-2.9", key: "r700ao" }],
3577
3619
  ["path", { d: "M18 12h4", key: "wj9ykh" }],
@@ -3581,7 +3623,7 @@ const __iconNode$x = [
3581
3623
  ["path", { d: "M2 12h4", key: "j09sii" }],
3582
3624
  ["path", { d: "m4.9 4.9 2.9 2.9", key: "giyufr" }]
3583
3625
  ];
3584
- const Loader = createLucideIcon("loader", __iconNode$x);
3626
+ const Loader = createLucideIcon("loader", __iconNode$y);
3585
3627
 
3586
3628
  /**
3587
3629
  * @license lucide-react v0.539.0 - ISC
@@ -3591,12 +3633,12 @@ const Loader = createLucideIcon("loader", __iconNode$x);
3591
3633
  */
3592
3634
 
3593
3635
 
3594
- const __iconNode$w = [
3636
+ const __iconNode$x = [
3595
3637
  ["path", { d: "m16 17 5-5-5-5", key: "1bji2h" }],
3596
3638
  ["path", { d: "M21 12H9", key: "dn1m92" }],
3597
3639
  ["path", { d: "M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4", key: "1uf3rs" }]
3598
3640
  ];
3599
- const LogOut = createLucideIcon("log-out", __iconNode$w);
3641
+ const LogOut = createLucideIcon("log-out", __iconNode$x);
3600
3642
 
3601
3643
  /**
3602
3644
  * @license lucide-react v0.539.0 - ISC
@@ -3606,11 +3648,11 @@ const LogOut = createLucideIcon("log-out", __iconNode$w);
3606
3648
  */
3607
3649
 
3608
3650
 
3609
- const __iconNode$v = [
3651
+ const __iconNode$w = [
3610
3652
  ["path", { d: "m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7", key: "132q7q" }],
3611
3653
  ["rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", key: "izxlao" }]
3612
3654
  ];
3613
- const Mail = createLucideIcon("mail", __iconNode$v);
3655
+ const Mail = createLucideIcon("mail", __iconNode$w);
3614
3656
 
3615
3657
  /**
3616
3658
  * @license lucide-react v0.539.0 - ISC
@@ -3620,12 +3662,12 @@ const Mail = createLucideIcon("mail", __iconNode$v);
3620
3662
  */
3621
3663
 
3622
3664
 
3623
- const __iconNode$u = [
3665
+ const __iconNode$v = [
3624
3666
  ["path", { d: "M4 12h16", key: "1lakjw" }],
3625
3667
  ["path", { d: "M4 18h16", key: "19g7jn" }],
3626
3668
  ["path", { d: "M4 6h16", key: "1o0s65" }]
3627
3669
  ];
3628
- const Menu = createLucideIcon("menu", __iconNode$u);
3670
+ const Menu = createLucideIcon("menu", __iconNode$v);
3629
3671
 
3630
3672
  /**
3631
3673
  * @license lucide-react v0.539.0 - ISC
@@ -3635,7 +3677,7 @@ const Menu = createLucideIcon("menu", __iconNode$u);
3635
3677
  */
3636
3678
 
3637
3679
 
3638
- const __iconNode$t = [
3680
+ const __iconNode$u = [
3639
3681
  [
3640
3682
  "path",
3641
3683
  {
@@ -3644,7 +3686,7 @@ const __iconNode$t = [
3644
3686
  }
3645
3687
  ]
3646
3688
  ];
3647
- const Moon = createLucideIcon("moon", __iconNode$t);
3689
+ const Moon = createLucideIcon("moon", __iconNode$u);
3648
3690
 
3649
3691
  /**
3650
3692
  * @license lucide-react v0.539.0 - ISC
@@ -3654,7 +3696,7 @@ const Moon = createLucideIcon("moon", __iconNode$t);
3654
3696
  */
3655
3697
 
3656
3698
 
3657
- const __iconNode$s = [
3699
+ const __iconNode$t = [
3658
3700
  [
3659
3701
  "path",
3660
3702
  {
@@ -3667,7 +3709,7 @@ const __iconNode$s = [
3667
3709
  ["circle", { cx: "6.5", cy: "12.5", r: ".5", fill: "currentColor", key: "qy21gx" }],
3668
3710
  ["circle", { cx: "8.5", cy: "7.5", r: ".5", fill: "currentColor", key: "fotxhn" }]
3669
3711
  ];
3670
- const Palette = createLucideIcon("palette", __iconNode$s);
3712
+ const Palette = createLucideIcon("palette", __iconNode$t);
3671
3713
 
3672
3714
  /**
3673
3715
  * @license lucide-react v0.539.0 - ISC
@@ -3677,12 +3719,12 @@ const Palette = createLucideIcon("palette", __iconNode$s);
3677
3719
  */
3678
3720
 
3679
3721
 
3680
- const __iconNode$r = [
3722
+ const __iconNode$s = [
3681
3723
  ["rect", { width: "18", height: "18", x: "3", y: "3", rx: "2", key: "afitv7" }],
3682
3724
  ["path", { d: "M9 3v18", key: "fh3hqa" }],
3683
3725
  ["path", { d: "m16 15-3-3 3-3", key: "14y99z" }]
3684
3726
  ];
3685
- const PanelLeftClose = createLucideIcon("panel-left-close", __iconNode$r);
3727
+ const PanelLeftClose = createLucideIcon("panel-left-close", __iconNode$s);
3686
3728
 
3687
3729
  /**
3688
3730
  * @license lucide-react v0.539.0 - ISC
@@ -3692,7 +3734,7 @@ const PanelLeftClose = createLucideIcon("panel-left-close", __iconNode$r);
3692
3734
  */
3693
3735
 
3694
3736
 
3695
- const __iconNode$q = [
3737
+ const __iconNode$r = [
3696
3738
  [
3697
3739
  "path",
3698
3740
  {
@@ -3701,7 +3743,7 @@ const __iconNode$q = [
3701
3743
  }
3702
3744
  ]
3703
3745
  ];
3704
- const Paperclip = createLucideIcon("paperclip", __iconNode$q);
3746
+ const Paperclip = createLucideIcon("paperclip", __iconNode$r);
3705
3747
 
3706
3748
  /**
3707
3749
  * @license lucide-react v0.539.0 - ISC
@@ -3711,7 +3753,7 @@ const Paperclip = createLucideIcon("paperclip", __iconNode$q);
3711
3753
  */
3712
3754
 
3713
3755
 
3714
- const __iconNode$p = [
3756
+ const __iconNode$q = [
3715
3757
  [
3716
3758
  "path",
3717
3759
  {
@@ -3721,7 +3763,7 @@ const __iconNode$p = [
3721
3763
  ],
3722
3764
  ["path", { d: "m15 5 4 4", key: "1mk7zo" }]
3723
3765
  ];
3724
- const Pencil = createLucideIcon("pencil", __iconNode$p);
3766
+ const Pencil = createLucideIcon("pencil", __iconNode$q);
3725
3767
 
3726
3768
  /**
3727
3769
  * @license lucide-react v0.539.0 - ISC
@@ -3731,7 +3773,7 @@ const Pencil = createLucideIcon("pencil", __iconNode$p);
3731
3773
  */
3732
3774
 
3733
3775
 
3734
- const __iconNode$o = [
3776
+ const __iconNode$p = [
3735
3777
  [
3736
3778
  "path",
3737
3779
  {
@@ -3740,7 +3782,7 @@ const __iconNode$o = [
3740
3782
  }
3741
3783
  ]
3742
3784
  ];
3743
- const Phone = createLucideIcon("phone", __iconNode$o);
3785
+ const Phone = createLucideIcon("phone", __iconNode$p);
3744
3786
 
3745
3787
  /**
3746
3788
  * @license lucide-react v0.539.0 - ISC
@@ -3750,7 +3792,7 @@ const Phone = createLucideIcon("phone", __iconNode$o);
3750
3792
  */
3751
3793
 
3752
3794
 
3753
- const __iconNode$n = [
3795
+ const __iconNode$o = [
3754
3796
  [
3755
3797
  "path",
3756
3798
  {
@@ -3759,7 +3801,7 @@ const __iconNode$n = [
3759
3801
  }
3760
3802
  ]
3761
3803
  ];
3762
- const Play = createLucideIcon("play", __iconNode$n);
3804
+ const Play = createLucideIcon("play", __iconNode$o);
3763
3805
 
3764
3806
  /**
3765
3807
  * @license lucide-react v0.539.0 - ISC
@@ -3769,11 +3811,11 @@ const Play = createLucideIcon("play", __iconNode$n);
3769
3811
  */
3770
3812
 
3771
3813
 
3772
- const __iconNode$m = [
3814
+ const __iconNode$n = [
3773
3815
  ["path", { d: "M5 12h14", key: "1ays0h" }],
3774
3816
  ["path", { d: "M12 5v14", key: "s699le" }]
3775
3817
  ];
3776
- const Plus = createLucideIcon("plus", __iconNode$m);
3818
+ const Plus = createLucideIcon("plus", __iconNode$n);
3777
3819
 
3778
3820
  /**
3779
3821
  * @license lucide-react v0.539.0 - ISC
@@ -3783,10 +3825,10 @@ const Plus = createLucideIcon("plus", __iconNode$m);
3783
3825
  */
3784
3826
 
3785
3827
 
3786
- const __iconNode$l = [
3828
+ const __iconNode$m = [
3787
3829
  ["rect", { width: "20", height: "12", x: "2", y: "6", rx: "2", key: "9lu3g6" }]
3788
3830
  ];
3789
- const RectangleHorizontal = createLucideIcon("rectangle-horizontal", __iconNode$l);
3831
+ const RectangleHorizontal = createLucideIcon("rectangle-horizontal", __iconNode$m);
3790
3832
 
3791
3833
  /**
3792
3834
  * @license lucide-react v0.539.0 - ISC
@@ -3796,11 +3838,11 @@ const RectangleHorizontal = createLucideIcon("rectangle-horizontal", __iconNode$
3796
3838
  */
3797
3839
 
3798
3840
 
3799
- const __iconNode$k = [
3841
+ const __iconNode$l = [
3800
3842
  ["path", { d: "M21 7v6h-6", key: "3ptur4" }],
3801
3843
  ["path", { d: "M3 17a9 9 0 0 1 9-9 9 9 0 0 1 6 2.3l3 2.7", key: "1kgawr" }]
3802
3844
  ];
3803
- const Redo = createLucideIcon("redo", __iconNode$k);
3845
+ const Redo = createLucideIcon("redo", __iconNode$l);
3804
3846
 
3805
3847
  /**
3806
3848
  * @license lucide-react v0.539.0 - ISC
@@ -3810,13 +3852,13 @@ const Redo = createLucideIcon("redo", __iconNode$k);
3810
3852
  */
3811
3853
 
3812
3854
 
3813
- const __iconNode$j = [
3855
+ const __iconNode$k = [
3814
3856
  ["path", { d: "M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8", key: "v9h5vc" }],
3815
3857
  ["path", { d: "M21 3v5h-5", key: "1q7to0" }],
3816
3858
  ["path", { d: "M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16", key: "3uifl3" }],
3817
3859
  ["path", { d: "M8 16H3v5", key: "1cv678" }]
3818
3860
  ];
3819
- const RefreshCw = createLucideIcon("refresh-cw", __iconNode$j);
3861
+ const RefreshCw = createLucideIcon("refresh-cw", __iconNode$k);
3820
3862
 
3821
3863
  /**
3822
3864
  * @license lucide-react v0.539.0 - ISC
@@ -3826,14 +3868,14 @@ const RefreshCw = createLucideIcon("refresh-cw", __iconNode$j);
3826
3868
  */
3827
3869
 
3828
3870
 
3829
- const __iconNode$i = [
3871
+ const __iconNode$j = [
3830
3872
  ["path", { d: "M4 7V4h16v3", key: "9msm58" }],
3831
3873
  ["path", { d: "M5 20h6", key: "1h6pxn" }],
3832
3874
  ["path", { d: "M13 4 8 20", key: "kqq6aj" }],
3833
3875
  ["path", { d: "m15 15 5 5", key: "me55sn" }],
3834
3876
  ["path", { d: "m20 15-5 5", key: "11p7ol" }]
3835
3877
  ];
3836
- const RemoveFormatting = createLucideIcon("remove-formatting", __iconNode$i);
3878
+ const RemoveFormatting = createLucideIcon("remove-formatting", __iconNode$j);
3837
3879
 
3838
3880
  /**
3839
3881
  * @license lucide-react v0.539.0 - ISC
@@ -3843,14 +3885,14 @@ const RemoveFormatting = createLucideIcon("remove-formatting", __iconNode$i);
3843
3885
  */
3844
3886
 
3845
3887
 
3846
- const __iconNode$h = [
3888
+ const __iconNode$i = [
3847
3889
  ["circle", { cx: "6", cy: "6", r: "3", key: "1lh9wr" }],
3848
3890
  ["path", { d: "M8.12 8.12 12 12", key: "1alkpv" }],
3849
3891
  ["path", { d: "M20 4 8.12 15.88", key: "xgtan2" }],
3850
3892
  ["circle", { cx: "6", cy: "18", r: "3", key: "fqmcym" }],
3851
3893
  ["path", { d: "M14.8 14.8 20 20", key: "ptml3r" }]
3852
3894
  ];
3853
- const Scissors = createLucideIcon("scissors", __iconNode$h);
3895
+ const Scissors = createLucideIcon("scissors", __iconNode$i);
3854
3896
 
3855
3897
  /**
3856
3898
  * @license lucide-react v0.539.0 - ISC
@@ -3860,11 +3902,11 @@ const Scissors = createLucideIcon("scissors", __iconNode$h);
3860
3902
  */
3861
3903
 
3862
3904
 
3863
- const __iconNode$g = [
3905
+ const __iconNode$h = [
3864
3906
  ["path", { d: "m21 21-4.34-4.34", key: "14j7rj" }],
3865
3907
  ["circle", { cx: "11", cy: "11", r: "8", key: "4ej97u" }]
3866
3908
  ];
3867
- const Search = createLucideIcon("search", __iconNode$g);
3909
+ const Search = createLucideIcon("search", __iconNode$h);
3868
3910
 
3869
3911
  /**
3870
3912
  * @license lucide-react v0.539.0 - ISC
@@ -3874,14 +3916,14 @@ const Search = createLucideIcon("search", __iconNode$g);
3874
3916
  */
3875
3917
 
3876
3918
 
3877
- const __iconNode$f = [
3919
+ const __iconNode$g = [
3878
3920
  ["circle", { cx: "18", cy: "5", r: "3", key: "gq8acd" }],
3879
3921
  ["circle", { cx: "6", cy: "12", r: "3", key: "w7nqdw" }],
3880
3922
  ["circle", { cx: "18", cy: "19", r: "3", key: "1xt0gg" }],
3881
3923
  ["line", { x1: "8.59", x2: "15.42", y1: "13.51", y2: "17.49", key: "47mynk" }],
3882
3924
  ["line", { x1: "15.41", x2: "8.59", y1: "6.51", y2: "10.49", key: "1n3mei" }]
3883
3925
  ];
3884
- const Share2 = createLucideIcon("share-2", __iconNode$f);
3926
+ const Share2 = createLucideIcon("share-2", __iconNode$g);
3885
3927
 
3886
3928
  /**
3887
3929
  * @license lucide-react v0.539.0 - ISC
@@ -3891,7 +3933,7 @@ const Share2 = createLucideIcon("share-2", __iconNode$f);
3891
3933
  */
3892
3934
 
3893
3935
 
3894
- const __iconNode$e = [
3936
+ const __iconNode$f = [
3895
3937
  [
3896
3938
  "path",
3897
3939
  {
@@ -3901,7 +3943,7 @@ const __iconNode$e = [
3901
3943
  ],
3902
3944
  ["path", { d: "m9 12 2 2 4-4", key: "dzmm74" }]
3903
3945
  ];
3904
- const ShieldCheck = createLucideIcon("shield-check", __iconNode$e);
3946
+ const ShieldCheck = createLucideIcon("shield-check", __iconNode$f);
3905
3947
 
3906
3948
  /**
3907
3949
  * @license lucide-react v0.539.0 - ISC
@@ -3911,14 +3953,14 @@ const ShieldCheck = createLucideIcon("shield-check", __iconNode$e);
3911
3953
  */
3912
3954
 
3913
3955
 
3914
- const __iconNode$d = [
3956
+ const __iconNode$e = [
3915
3957
  [
3916
3958
  "path",
3917
3959
  { d: "M21 10.656V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h12.344", key: "2acyp4" }
3918
3960
  ],
3919
3961
  ["path", { d: "m9 11 3 3L22 4", key: "1pflzl" }]
3920
3962
  ];
3921
- const SquareCheckBig = createLucideIcon("square-check-big", __iconNode$d);
3963
+ const SquareCheckBig = createLucideIcon("square-check-big", __iconNode$e);
3922
3964
 
3923
3965
  /**
3924
3966
  * @license lucide-react v0.539.0 - ISC
@@ -3928,10 +3970,10 @@ const SquareCheckBig = createLucideIcon("square-check-big", __iconNode$d);
3928
3970
  */
3929
3971
 
3930
3972
 
3931
- const __iconNode$c = [
3973
+ const __iconNode$d = [
3932
3974
  ["rect", { width: "18", height: "18", x: "3", y: "3", rx: "2", key: "afitv7" }]
3933
3975
  ];
3934
- const Square = createLucideIcon("square", __iconNode$c);
3976
+ const Square = createLucideIcon("square", __iconNode$d);
3935
3977
 
3936
3978
  /**
3937
3979
  * @license lucide-react v0.539.0 - ISC
@@ -3941,12 +3983,12 @@ const Square = createLucideIcon("square", __iconNode$c);
3941
3983
  */
3942
3984
 
3943
3985
 
3944
- const __iconNode$b = [
3986
+ const __iconNode$c = [
3945
3987
  ["path", { d: "M16 4H9a3 3 0 0 0-2.83 4", key: "43sutm" }],
3946
3988
  ["path", { d: "M14 12a4 4 0 0 1 0 8H6", key: "nlfj13" }],
3947
3989
  ["line", { x1: "4", x2: "20", y1: "12", y2: "12", key: "1e0a9i" }]
3948
3990
  ];
3949
- const Strikethrough = createLucideIcon("strikethrough", __iconNode$b);
3991
+ const Strikethrough = createLucideIcon("strikethrough", __iconNode$c);
3950
3992
 
3951
3993
  /**
3952
3994
  * @license lucide-react v0.539.0 - ISC
@@ -3956,7 +3998,7 @@ const Strikethrough = createLucideIcon("strikethrough", __iconNode$b);
3956
3998
  */
3957
3999
 
3958
4000
 
3959
- const __iconNode$a = [
4001
+ const __iconNode$b = [
3960
4002
  ["circle", { cx: "12", cy: "12", r: "4", key: "4exip2" }],
3961
4003
  ["path", { d: "M12 2v2", key: "tus03m" }],
3962
4004
  ["path", { d: "M12 20v2", key: "1lh1kg" }],
@@ -3967,7 +4009,7 @@ const __iconNode$a = [
3967
4009
  ["path", { d: "m6.34 17.66-1.41 1.41", key: "1m8zz5" }],
3968
4010
  ["path", { d: "m19.07 4.93-1.41 1.41", key: "1shlcs" }]
3969
4011
  ];
3970
- const Sun = createLucideIcon("sun", __iconNode$a);
4012
+ const Sun = createLucideIcon("sun", __iconNode$b);
3971
4013
 
3972
4014
  /**
3973
4015
  * @license lucide-react v0.539.0 - ISC
@@ -3977,11 +4019,11 @@ const Sun = createLucideIcon("sun", __iconNode$a);
3977
4019
  */
3978
4020
 
3979
4021
 
3980
- const __iconNode$9 = [
4022
+ const __iconNode$a = [
3981
4023
  ["circle", { cx: "9", cy: "12", r: "3", key: "u3jwor" }],
3982
4024
  ["rect", { width: "20", height: "14", x: "2", y: "5", rx: "7", key: "g7kal2" }]
3983
4025
  ];
3984
- const ToggleLeft = createLucideIcon("toggle-left", __iconNode$9);
4026
+ const ToggleLeft = createLucideIcon("toggle-left", __iconNode$a);
3985
4027
 
3986
4028
  /**
3987
4029
  * @license lucide-react v0.539.0 - ISC
@@ -3991,14 +4033,14 @@ const ToggleLeft = createLucideIcon("toggle-left", __iconNode$9);
3991
4033
  */
3992
4034
 
3993
4035
 
3994
- const __iconNode$8 = [
4036
+ const __iconNode$9 = [
3995
4037
  ["path", { d: "M10 11v6", key: "nco0om" }],
3996
4038
  ["path", { d: "M14 11v6", key: "outv1u" }],
3997
4039
  ["path", { d: "M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6", key: "miytrc" }],
3998
4040
  ["path", { d: "M3 6h18", key: "d0wm0j" }],
3999
4041
  ["path", { d: "M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2", key: "e791ji" }]
4000
4042
  ];
4001
- const Trash2 = createLucideIcon("trash-2", __iconNode$8);
4043
+ const Trash2 = createLucideIcon("trash-2", __iconNode$9);
4002
4044
 
4003
4045
  /**
4004
4046
  * @license lucide-react v0.539.0 - ISC
@@ -4008,7 +4050,7 @@ const Trash2 = createLucideIcon("trash-2", __iconNode$8);
4008
4050
  */
4009
4051
 
4010
4052
 
4011
- const __iconNode$7 = [
4053
+ const __iconNode$8 = [
4012
4054
  [
4013
4055
  "path",
4014
4056
  {
@@ -4019,7 +4061,7 @@ const __iconNode$7 = [
4019
4061
  ["path", { d: "M12 9v4", key: "juzpu7" }],
4020
4062
  ["path", { d: "M12 17h.01", key: "p32p05" }]
4021
4063
  ];
4022
- const TriangleAlert = createLucideIcon("triangle-alert", __iconNode$7);
4064
+ const TriangleAlert = createLucideIcon("triangle-alert", __iconNode$8);
4023
4065
 
4024
4066
  /**
4025
4067
  * @license lucide-react v0.539.0 - ISC
@@ -4029,12 +4071,12 @@ const TriangleAlert = createLucideIcon("triangle-alert", __iconNode$7);
4029
4071
  */
4030
4072
 
4031
4073
 
4032
- const __iconNode$6 = [
4074
+ const __iconNode$7 = [
4033
4075
  ["path", { d: "M12 4v16", key: "1654pz" }],
4034
4076
  ["path", { d: "M4 7V5a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v2", key: "e0r10z" }],
4035
4077
  ["path", { d: "M9 20h6", key: "s66wpe" }]
4036
4078
  ];
4037
- const Type = createLucideIcon("type", __iconNode$6);
4079
+ const Type = createLucideIcon("type", __iconNode$7);
4038
4080
 
4039
4081
  /**
4040
4082
  * @license lucide-react v0.539.0 - ISC
@@ -4044,11 +4086,11 @@ const Type = createLucideIcon("type", __iconNode$6);
4044
4086
  */
4045
4087
 
4046
4088
 
4047
- const __iconNode$5 = [
4089
+ const __iconNode$6 = [
4048
4090
  ["path", { d: "M6 4v6a6 6 0 0 0 12 0V4", key: "9kb039" }],
4049
4091
  ["line", { x1: "4", x2: "20", y1: "20", y2: "20", key: "nun2al" }]
4050
4092
  ];
4051
- const Underline$1 = createLucideIcon("underline", __iconNode$5);
4093
+ const Underline$1 = createLucideIcon("underline", __iconNode$6);
4052
4094
 
4053
4095
  /**
4054
4096
  * @license lucide-react v0.539.0 - ISC
@@ -4058,11 +4100,11 @@ const Underline$1 = createLucideIcon("underline", __iconNode$5);
4058
4100
  */
4059
4101
 
4060
4102
 
4061
- const __iconNode$4 = [
4103
+ const __iconNode$5 = [
4062
4104
  ["path", { d: "M3 7v6h6", key: "1v2h90" }],
4063
4105
  ["path", { d: "M21 17a9 9 0 0 0-9-9 9 9 0 0 0-6 2.3L3 13", key: "1r6uu6" }]
4064
4106
  ];
4065
- const Undo = createLucideIcon("undo", __iconNode$4);
4107
+ const Undo = createLucideIcon("undo", __iconNode$5);
4066
4108
 
4067
4109
  /**
4068
4110
  * @license lucide-react v0.539.0 - ISC
@@ -4072,12 +4114,12 @@ const Undo = createLucideIcon("undo", __iconNode$4);
4072
4114
  */
4073
4115
 
4074
4116
 
4075
- const __iconNode$3 = [
4117
+ const __iconNode$4 = [
4076
4118
  ["path", { d: "M12 3v12", key: "1x0j5s" }],
4077
4119
  ["path", { d: "m17 8-5-5-5 5", key: "7q97r8" }],
4078
4120
  ["path", { d: "M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4", key: "ih7n3h" }]
4079
4121
  ];
4080
- const Upload = createLucideIcon("upload", __iconNode$3);
4122
+ const Upload = createLucideIcon("upload", __iconNode$4);
4081
4123
 
4082
4124
  /**
4083
4125
  * @license lucide-react v0.539.0 - ISC
@@ -4087,13 +4129,27 @@ const Upload = createLucideIcon("upload", __iconNode$3);
4087
4129
  */
4088
4130
 
4089
4131
 
4090
- const __iconNode$2 = [
4132
+ const __iconNode$3 = [
4091
4133
  ["path", { d: "M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2", key: "1yyitq" }],
4092
4134
  ["circle", { cx: "9", cy: "7", r: "4", key: "nufk8" }],
4093
4135
  ["line", { x1: "19", x2: "19", y1: "8", y2: "14", key: "1bvyxn" }],
4094
4136
  ["line", { x1: "22", x2: "16", y1: "11", y2: "11", key: "1shjgl" }]
4095
4137
  ];
4096
- const UserPlus = createLucideIcon("user-plus", __iconNode$2);
4138
+ const UserPlus = createLucideIcon("user-plus", __iconNode$3);
4139
+
4140
+ /**
4141
+ * @license lucide-react v0.539.0 - ISC
4142
+ *
4143
+ * This source code is licensed under the ISC license.
4144
+ * See the LICENSE file in the root directory of this source tree.
4145
+ */
4146
+
4147
+
4148
+ const __iconNode$2 = [
4149
+ ["circle", { cx: "12", cy: "8", r: "5", key: "1hypcn" }],
4150
+ ["path", { d: "M20 21a8 8 0 0 0-16 0", key: "rfgkzh" }]
4151
+ ];
4152
+ const UserRound = createLucideIcon("user-round", __iconNode$2);
4097
4153
 
4098
4154
  /**
4099
4155
  * @license lucide-react v0.539.0 - ISC
@@ -15415,6 +15471,11 @@ const CollapsibleCard = ({ title, subtitle, icon, headerActions, defaultOpen = t
15415
15471
  return (jsxRuntime.jsxs("section", { className: cn('overflow-hidden rounded-xl border border-border bg-card shadow-card', className), children: [jsxRuntime.jsxs("header", { className: cn('flex items-center gap-3 bg-muted/30 px-4 py-3', isOpen && 'border-b border-border', headerClassName), children: [icon && jsxRuntime.jsx(SectionIcon, { children: icon }), jsxRuntime.jsxs("div", { className: "flex min-w-0 shrink flex-col gap-0.5", children: [jsxRuntime.jsx("h3", { className: "truncate text-sm font-medium text-foreground", children: title }), subtitle && (jsxRuntime.jsx("div", { className: "truncate text-xs text-muted-foreground", children: subtitle }))] }), headerActions && (jsxRuntime.jsx("div", { className: "ml-auto flex min-w-0 flex-1 items-center justify-end gap-2", children: headerActions })), !headerActions && jsxRuntime.jsx("div", { className: "flex-1" }), !nonCollapsible && (jsxRuntime.jsx("button", { type: "button", onClick: toggle, "aria-expanded": isOpen, "aria-label": isOpen ? 'Collapse section' : 'Expand section', className: "inline-flex h-7 w-7 cursor-pointer items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-muted hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/30", children: jsxRuntime.jsx(ChevronDown, { className: cn('h-4 w-4 transition-transform duration-200', isOpen && 'rotate-180'), "aria-hidden": "true" }) }))] }), isOpen && jsxRuntime.jsx("div", { className: cn('p-4', bodyClassName), children: children })] }));
15416
15472
  };
15417
15473
 
15474
+ /** A titled card on a document detail page: payments, customer, items, notes… */
15475
+ function DetailSection({ icon, title, count, actions, children, className, bodyClassName, }) {
15476
+ return (jsxRuntime.jsxs("section", { className: cn('overflow-hidden rounded-2xl border border-border bg-card', className), children: [jsxRuntime.jsxs("header", { className: "flex flex-wrap items-center gap-2.5 border-b border-border bg-section-header px-4 py-3", children: [jsxRuntime.jsx("span", { "aria-hidden": true, className: "flex size-7 shrink-0 items-center justify-center rounded-lg bg-primary/10 text-primary dark:bg-primary/20 [&_svg]:size-4", children: icon }), jsxRuntime.jsx("h3", { className: "m-0 text-base font-semibold text-foreground", children: title }), typeof count === 'string' || typeof count === 'number' ? (jsxRuntime.jsx(Badge, { appearance: "soft", color: "secondary", shape: "pill", size: "sm", children: count })) : (count), actions ? jsxRuntime.jsx("div", { className: "ml-auto flex flex-wrap items-center gap-2.5", children: actions }) : null] }), children != null ? jsxRuntime.jsx("div", { className: bodyClassName, children: children }) : null] }));
15477
+ }
15478
+
15418
15479
  const HEADER_TONE_CLASSES = {
15419
15480
  neutral: 'bg-[var(--section-header)]',
15420
15481
  gem: 'bg-primary/5 dark:bg-[#173626]',
@@ -15437,7 +15498,7 @@ const FormSectionCard = ({ icon, title, description, headerAction, children, cla
15437
15498
  };
15438
15499
 
15439
15500
  function CompanyCardField({ label, children, emptyLabel, className, }) {
15440
- return (jsxRuntime.jsxs("div", { className: cn('flex min-w-0 flex-col gap-1', className), children: [jsxRuntime.jsx("p", { className: "text-xs font-semibold uppercase tracking-wide text-muted-foreground", children: label }), children ? (jsxRuntime.jsx("div", { className: "truncate text-sm font-medium leading-5 text-foreground", children: children })) : (jsxRuntime.jsx("p", { className: "text-sm font-medium italic leading-5 text-muted-foreground", children: emptyLabel }))] }));
15501
+ return (jsxRuntime.jsxs("div", { className: cn('flex min-w-0 flex-col gap-1', className), children: [jsxRuntime.jsx("p", { className: "text-xs font-semibold uppercase tracking-wide text-label-subtle", children: label }), children ? (jsxRuntime.jsx("div", { className: "truncate text-sm font-medium leading-5 text-foreground", children: children })) : (jsxRuntime.jsx("p", { className: "text-sm font-medium italic leading-5 text-muted-foreground", children: emptyLabel }))] }));
15441
15502
  }
15442
15503
 
15443
15504
  /** `—` is the placeholder the apps' display helpers return for a missing value. */
@@ -15453,8 +15514,14 @@ function getInitial(name) {
15453
15514
  * A business contact at a glance: avatar + name, email / phone / tax number,
15454
15515
  * then the address. Data-only — the app formats each value before passing it.
15455
15516
  */
15456
- function CompanyCard({ name, subtitle, email, phone, taxNumber, address, viewHref, viewLabel = 'View company', title = 'Company', icon = jsxRuntime.jsx(Building2, { className: "size-5", "aria-hidden": true }), emptyLabel = 'Not provided', className, }) {
15457
- return (jsxRuntime.jsxs(FormSectionCard, { icon: icon, title: title, className: className, headerClassName: "px-4 py-3", bodyClassName: "flex flex-col gap-4 p-4", headerAction: viewHref ? (jsxRuntime.jsx(TextHyperlink, { href: viewHref, showIcon: false, className: "shrink-0 text-sm font-medium", children: viewLabel })) : undefined, children: [jsxRuntime.jsxs("div", { className: "flex items-center gap-3", children: [jsxRuntime.jsx("span", { "aria-hidden": true, className: "flex size-10 shrink-0 items-center justify-center rounded-full bg-primary text-sm font-semibold text-primary-foreground", children: getInitial(name) }), jsxRuntime.jsxs("div", { className: "min-w-0", children: [jsxRuntime.jsx("p", { className: "break-words text-base font-semibold leading-6 text-foreground", children: name }), hasValue(subtitle) ? (jsxRuntime.jsx("p", { className: "break-words text-xs leading-4 text-muted-foreground", children: subtitle })) : null] })] }), jsxRuntime.jsxs("div", { className: cn('grid grid-cols-1 gap-4', taxNumber ? 'sm:grid-cols-3' : 'sm:grid-cols-2'), children: [jsxRuntime.jsx(CompanyCardField, { label: "Email", emptyLabel: emptyLabel, children: hasValue(email) ? (jsxRuntime.jsx("a", { href: `mailto:${email}`, className: "text-primary underline-offset-2 hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring", children: email })) : null }), jsxRuntime.jsx(CompanyCardField, { label: "Phone", emptyLabel: emptyLabel, children: hasValue(phone) ? phone : null }), taxNumber ? (jsxRuntime.jsx(CompanyCardField, { label: taxNumber.label, emptyLabel: emptyLabel, children: hasValue(taxNumber.value) ? taxNumber.value : null })) : null] }), jsxRuntime.jsx(CompanyCardField, { label: "Address", emptyLabel: emptyLabel, className: "border-t border-border pt-4", children: hasValue(address) ? jsxRuntime.jsx("span", { className: "whitespace-normal break-words", children: address }) : null })] }));
15517
+ function CompanyCard({ name, subtitle, email, phone, taxNumber, additionalFields = [], address, viewHref, viewLabel = 'View company', title = 'Company', icon, variant = 'form', emptyLabel = 'Not provided', className, }) {
15518
+ const isDetail = variant === 'detail';
15519
+ const viewLink = viewHref ? (jsxRuntime.jsx(TextHyperlink, { href: viewHref, showIcon: false, className: "shrink-0 text-sm font-medium", children: viewLabel })) : undefined;
15520
+ const content = (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsxs("div", { className: "flex items-center gap-3", children: [jsxRuntime.jsx("span", { "aria-hidden": true, className: cn('flex shrink-0 items-center justify-center rounded-full bg-primary font-semibold text-primary-foreground', isDetail ? 'size-11 text-base' : 'size-10 text-sm'), children: getInitial(name) }), jsxRuntime.jsxs("div", { className: "min-w-0", children: [jsxRuntime.jsx("p", { className: "break-words text-base font-semibold leading-6 text-foreground", children: name }), hasValue(subtitle) ? (jsxRuntime.jsx("p", { className: "break-words text-xs leading-4 text-muted-foreground", children: subtitle })) : null] })] }), jsxRuntime.jsxs("div", { className: cn('grid grid-cols-1 gap-4', taxNumber ? 'sm:grid-cols-3' : 'sm:grid-cols-2'), children: [jsxRuntime.jsx(CompanyCardField, { label: "Email", emptyLabel: emptyLabel, children: hasValue(email) ? (jsxRuntime.jsx("a", { href: `mailto:${email}`, className: "text-primary underline-offset-2 hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring", children: email })) : null }), jsxRuntime.jsx(CompanyCardField, { label: "Phone", emptyLabel: emptyLabel, children: hasValue(phone) ? phone : null }), taxNumber ? (jsxRuntime.jsx(CompanyCardField, { label: taxNumber.label, emptyLabel: emptyLabel, children: hasValue(taxNumber.value) ? taxNumber.value : null })) : null, additionalFields.map((field) => (jsxRuntime.jsx(CompanyCardField, { label: field.label, emptyLabel: emptyLabel, children: hasValue(field.value) ? field.value : null }, field.label)))] }), jsxRuntime.jsx(CompanyCardField, { label: "Address", emptyLabel: emptyLabel, className: "border-t border-border pt-4", children: hasValue(address) ? jsxRuntime.jsx("span", { className: "whitespace-normal break-words", children: address }) : null })] }));
15521
+ if (isDetail) {
15522
+ return (jsxRuntime.jsx(DetailSection, { icon: icon ?? jsxRuntime.jsx(UserRound, { "aria-hidden": true }), title: title, actions: viewLink, className: className, bodyClassName: "flex flex-col gap-4 p-4", children: content }));
15523
+ }
15524
+ return (jsxRuntime.jsx(FormSectionCard, { icon: icon ?? jsxRuntime.jsx(Building2, { className: "size-5", "aria-hidden": true }), title: title, className: className, headerClassName: "px-4 py-3", bodyClassName: "flex flex-col gap-4 p-4", headerAction: viewLink, children: content }));
15458
15525
  }
15459
15526
 
15460
15527
  function commonjsRequire(path) {
@@ -21691,7 +21758,7 @@ function EditableCellContent({ col, row, value, isEditing, width, onEditValueCha
21691
21758
  return jsxRuntime.jsx(jsxRuntime.Fragment, { children: clipToWidth(stringValue, width) });
21692
21759
  }
21693
21760
 
21694
- function DataEditableTable({ data, columns, onRowClick, enableSelection = false, columnStyles = {}, onEditChange, onSaveRow, sortBy, setSortBy, sortOrder, setSortOrder, saving, selectedRows = [], onSelectionChange, isArchiveView = false, selectionInArchiveView = false, permissionKey = '', columnWidths, onColumnResize, pagination, fetchBusinessContacts, showGrid = true, emptyState, }) {
21761
+ function DataEditableTable({ data, columns, onRowClick, enableSelection = false, columnStyles = {}, onEditChange, onSaveRow, sortBy, setSortBy, sortOrder, setSortOrder, saving, selectedRows = [], onSelectionChange, isArchiveView = false, selectionInArchiveView = false, permissionKey = '', columnWidths, onColumnResize, pagination, fetchBusinessContacts, showGrid = true, striped = true, emptyState, }) {
21695
21762
  const showSelectionColumn = enableSelection && (!isArchiveView || selectionInArchiveView);
21696
21763
  const vBorder = showGrid ? 'border-r' : '';
21697
21764
  const { localWidths, draggingKey, tableRef, handleResizeMouseDown } = useColumnResize({
@@ -21741,7 +21808,7 @@ function DataEditableTable({ data, columns, onRowClick, enableSelection = false,
21741
21808
  ? 'bg-warning/10 hover:bg-warning/10'
21742
21809
  : isSelected
21743
21810
  ? 'bg-primary/10 hover:bg-primary/10'
21744
- : rowIndex % 2 === 0
21811
+ : !striped || rowIndex % 2 === 0
21745
21812
  ? 'bg-card hover:bg-secondary'
21746
21813
  : 'bg-background hover:bg-secondary';
21747
21814
  return (jsxRuntime.jsxs("tr", { className: cn('group/row h-[46px] transition-colors text-sm text-table-cell', bgClass, onRowClick && 'cursor-pointer'), onClick: () => onRowClick?.(row), children: [isArchiveView ? null : (jsxRuntime.jsx("td", { className: cn('px-3 py-1.5 text-center first:!pl-6 border-b border-solid !border-border', vBorder), children: jsxRuntime.jsx(Protected, { module: permissionKey, minLevel: PERMISSIONS.WRITE, children: jsxRuntime.jsx("button", { onClick: (e) => {
@@ -37165,6 +37232,124 @@ function DateInput({ value, onChange, onBlur, name, id, className, min, max, dis
37165
37232
  return (jsxRuntime.jsxs(Popover, { open: open, onOpenChange: handleOpenChange, modal: true, children: [jsxRuntime.jsx(PopoverAnchor, { asChild: true, children: jsxRuntime.jsxs("div", { "data-slot": "input", "data-empty": !value || undefined, "data-invalid": invalid || undefined, className: cn('border-input-border flex h-9 w-full min-w-0 items-center gap-2 rounded-md border bg-transparent px-3 py-1 shadow-[0_1px_2px_0_#0000000d] transition-[color,box-shadow] outline-none', 'focus-within:border-ring focus-within:ring-ring/50 focus-within:ring-[3px]', 'data-[invalid]:border-destructive data-[invalid]:ring-destructive/20 data-[invalid]:ring-[3px]', disabled && 'cursor-not-allowed bg-muted/50 text-label', className), children: [jsxRuntime.jsx("input", { ref: inputRef, type: "text", inputMode: "numeric", autoComplete: "off", spellCheck: false, id: id, name: name, value: text, placeholder: placeholder, disabled: disabled, maxLength: DATE_FORMAT.length, "aria-label": ariaLabel, "aria-invalid": invalid || undefined, title: DATE_FORMAT_HINT, onChange: handleTextChange, onKeyDown: handleKeyDown, onBlur: handleTextBlur, className: "placeholder:text-placeholder selection:bg-primary selection:text-primary-foreground h-full min-w-0 flex-1 bg-transparent text-base text-foreground outline-none placeholder:text-sm disabled:cursor-not-allowed disabled:text-label md:text-sm" }), jsxRuntime.jsx("button", { type: "button", disabled: disabled, "aria-label": CALENDAR_BUTTON_LABEL, "aria-haspopup": "dialog", "aria-expanded": open, onClick: toggleOpen, className: "-mr-1 inline-flex h-6 w-6 shrink-0 cursor-pointer items-center justify-center rounded-sm text-muted-foreground outline-none hover:text-foreground focus-visible:ring-ring/50 focus-visible:ring-[2px] disabled:cursor-not-allowed", children: jsxRuntime.jsx(CalendarDays, { className: "h-4 w-4 stroke-[1.75]" }) })] }) }), jsxRuntime.jsx(PopoverContent, { align: align, className: "date-range-picker-popover w-auto p-4", children: jsxRuntime.jsx(DatePicker, { inline: true, selected: value ?? null, minDate: toBoundDate(bounds.minDate), maxDate: toBoundDate(bounds.maxDate), onChange: selectDate, calendarClassName: "date-range-picker-calendar", formatWeekDay: (weekday) => weekday.slice(0, 2), renderCustomHeader: ({ monthDate, changeYear, changeMonth, decreaseMonth, increaseMonth, prevMonthButtonDisabled, nextMonthButtonDisabled, }) => (jsxRuntime.jsx(DatePickerHeader, { monthDate: monthDate, changeYear: changeYear, changeMonth: changeMonth, decreaseMonth: decreaseMonth, increaseMonth: increaseMonth, prevMonthButtonDisabled: prevMonthButtonDisabled, nextMonthButtonDisabled: nextMonthButtonDisabled, minYear: bounds.minYear, maxYear: bounds.maxYear })), children: jsxRuntime.jsxs("div", { className: "date-range-picker-footer", children: [jsxRuntime.jsx("button", { type: "button", onClick: clearDate, className: "date-range-picker-action", children: "Clear" }), jsxRuntime.jsx("button", { type: "button", onClick: selectToday, className: "date-range-picker-action", children: "Today" })] }) }) })] }));
37166
37233
  }
37167
37234
 
37235
+ /** The permanent-delete confirmation for a document (quotation, memo, proforma…). */
37236
+ function DocumentDeleteDialog({ open, onOpenChange, documentLabel, documentNumber, info, busy, onConfirm, }) {
37237
+ return (jsxRuntime.jsx(ConfirmDialog, { open: open, onOpenChange: onOpenChange, title: `Delete ${documentLabel}`, description: jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsxs("span", { children: ["Are you sure you want to permanently delete ", documentLabel, documentNumber ? (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [' ', jsxRuntime.jsx("span", { className: "font-semibold", children: documentNumber })] })) : null, "?"] }), jsxRuntime.jsx("div", { className: "mt-1", children: "This action cannot be undone." })] }), info: info, confirmLabel: `Yes, Delete ${documentLabel}`, cancelLabel: "No, Keep It", confirmVariant: "destructive", disabled: busy, onConfirm: onConfirm }));
37238
+ }
37239
+
37240
+ function clampPercent$1(value) {
37241
+ if (!Number.isFinite(value))
37242
+ return 0;
37243
+ return Math.min(100, Math.max(0, value));
37244
+ }
37245
+ const LABEL_TONE = {
37246
+ default: 'text-secondary-foreground',
37247
+ success: 'text-amount-paid',
37248
+ info: 'text-info',
37249
+ warning: 'text-badge-amber-text',
37250
+ destructive: 'text-amount-outstanding',
37251
+ muted: 'text-secondary-foreground',
37252
+ };
37253
+ function getLabelClassName(tone) {
37254
+ return LABEL_TONE[tone];
37255
+ }
37256
+ /** The lightest wash of the status colour, matching the document's status pill. */
37257
+ const PANEL_TONE = {
37258
+ default: 'bg-muted/40',
37259
+ success: 'bg-primary/5 dark:bg-primary/10',
37260
+ info: 'bg-info/5 dark:bg-info/10',
37261
+ warning: 'bg-warning/5 dark:bg-warning/10',
37262
+ destructive: 'bg-destructive/5 dark:bg-destructive/10',
37263
+ muted: 'bg-muted/40',
37264
+ };
37265
+ function getFactsPanelClassName(tone) {
37266
+ return PANEL_TONE[tone];
37267
+ }
37268
+ const TRACK_TONE = {
37269
+ default: 'bg-progress-track',
37270
+ success: 'bg-progress-track',
37271
+ info: 'bg-info/15',
37272
+ warning: 'bg-warning/15',
37273
+ destructive: 'bg-destructive/15',
37274
+ muted: 'bg-progress-track',
37275
+ };
37276
+ function getProgressTrackClassName(tone) {
37277
+ return TRACK_TONE[tone];
37278
+ }
37279
+ const FACT_ICON_TONE = {
37280
+ default: 'bg-muted text-muted-foreground',
37281
+ success: 'bg-badge-green-bg text-amount-paid',
37282
+ warning: 'bg-badge-amber-bg text-badge-amber-text',
37283
+ destructive: 'bg-badge-destructive-bg text-amount-outstanding',
37284
+ };
37285
+ function getFactIconClassName(tone) {
37286
+ return FACT_ICON_TONE[tone];
37287
+ }
37288
+ const FACT_NOTE_TONE = {
37289
+ default: 'text-muted-foreground',
37290
+ success: 'text-amount-paid',
37291
+ warning: 'text-badge-amber-text',
37292
+ destructive: 'text-amount-outstanding',
37293
+ };
37294
+ function getFactNoteClassName(tone) {
37295
+ return FACT_NOTE_TONE[tone];
37296
+ }
37297
+ const SEGMENT_TONE = {
37298
+ success: 'bg-success',
37299
+ info: 'bg-info',
37300
+ primary: 'bg-primary',
37301
+ 'primary-soft': 'bg-primary/40',
37302
+ warning: 'bg-warning',
37303
+ remaining: 'bg-progress-track',
37304
+ };
37305
+ function getSegmentClassName$1(tone) {
37306
+ return SEGMENT_TONE[tone];
37307
+ }
37308
+ /** Each segment's width in percent of the segments' sum; all 0 when there's nothing to split. */
37309
+ function getSegmentPercents(segments) {
37310
+ const amounts = segments.map((segment) => Number.isFinite(segment.amount) ? Math.max(0, segment.amount) : 0);
37311
+ const whole = amounts.reduce((sum, amount) => sum + amount, 0);
37312
+ return amounts.map((amount) => (whole > 0 ? (amount / whole) * 100 : 0));
37313
+ }
37314
+ /** No value to show: blank, or the "—" placeholder apps pass. */
37315
+ function isEmptyFactValue(value) {
37316
+ return (value == null ||
37317
+ (typeof value === 'string' && (value.trim() === '' || value.trim() === '—')));
37318
+ }
37319
+
37320
+ function ProgressBar({ progress, tone, name, }) {
37321
+ const percent = clampPercent$1(progress.percent);
37322
+ return (jsxRuntime.jsxs("div", { className: "mt-4 w-full max-w-xl", children: [jsxRuntime.jsx("div", { role: "progressbar", "aria-label": name, "aria-valuemin": 0, "aria-valuemax": 100, "aria-valuenow": percent, className: cn('h-2 overflow-hidden rounded-full', getProgressTrackClassName(tone)), children: jsxRuntime.jsx("div", { className: "h-full rounded-full bg-primary", style: { width: `${percent}%` } }) }), progress.value != null ||
37323
+ progress.label != null ||
37324
+ progress.trailing != null ? (jsxRuntime.jsxs("div", { className: "mt-2 flex items-center justify-between gap-3 text-xs", children: [jsxRuntime.jsxs("span", { className: "text-secondary-foreground", children: [progress.value != null ? (jsxRuntime.jsx("span", { className: "font-semibold tabular-nums text-amount-paid", children: progress.value })) : null, progress.value != null && progress.label != null ? ' ' : null, progress.label] }), progress.trailing != null ? (jsxRuntime.jsx("span", { className: "text-right tabular-nums text-secondary-foreground", children: progress.trailing })) : null] })) : null] }));
37325
+ }
37326
+ function BreakdownBar({ breakdown, }) {
37327
+ const percents = getSegmentPercents(breakdown.segments);
37328
+ return (jsxRuntime.jsxs("div", { className: "mt-4 w-full max-w-xl", children: [jsxRuntime.jsx("dl", { className: "m-0 grid grid-flow-col auto-cols-fr gap-4", children: breakdown.segments.map((segment) => (jsxRuntime.jsxs("div", { className: "min-w-0", children: [jsxRuntime.jsxs("dt", { className: "flex items-center gap-1.5 text-xs text-muted-foreground", children: [jsxRuntime.jsx("span", { "aria-hidden": true, className: cn('h-1.5 w-3 shrink-0 rounded-full', getSegmentClassName$1(segment.tone), segment.tone === 'remaining' &&
37329
+ 'ring-1 ring-inset ring-border') }), segment.label] }), jsxRuntime.jsx("dd", { className: "m-0 text-base font-semibold tabular-nums text-foreground", children: segment.value })] }, segment.label))) }), jsxRuntime.jsx("div", { role: "img", "aria-label": `${breakdown.label}: ${breakdown.segments
37330
+ .map((segment, index) => `${segment.label} ${Math.round(percents[index])}%`)
37331
+ .join(', ')}`, className: "mt-3 flex h-2 overflow-hidden rounded-full bg-progress-track", children: breakdown.segments.map((segment, index) => segment.tone === 'remaining' || percents[index] === 0 ? null : (jsxRuntime.jsx("div", { className: cn('h-full', getSegmentClassName$1(segment.tone)), style: { width: `${percents[index]}%` } }, segment.label))) }), breakdown.caption ? (jsxRuntime.jsx("p", { className: "m-0 mt-2 text-xs text-secondary-foreground", children: breakdown.caption })) : null] }));
37332
+ }
37333
+ function FactRow({ fact }) {
37334
+ const tone = fact.tone ?? 'default';
37335
+ const empty = isEmptyFactValue(fact.value);
37336
+ return (jsxRuntime.jsxs("div", { className: "flex min-h-10 items-center gap-3 border-b border-border py-1.5 last:border-b-0", children: [jsxRuntime.jsx("span", { "aria-hidden": true, className: cn('flex size-6 shrink-0 items-center justify-center rounded-md text-xs font-semibold [&_svg]:size-3.5', getFactIconClassName(tone)), children: fact.icon }), jsxRuntime.jsx("dt", { className: "min-w-0 flex-1 text-sm text-secondary-foreground", children: fact.label }), jsxRuntime.jsxs("dd", { className: "m-0 flex min-w-0 flex-wrap items-baseline justify-end gap-x-2 text-right", children: [empty ? (jsxRuntime.jsx("span", { className: "text-sm font-medium text-muted-foreground", children: fact.emptyLabel ?? 'Not provided' })) : (jsxRuntime.jsx("span", { className: cn('break-words text-sm font-semibold tabular-nums', tone === 'success' ? 'text-amount-paid' : 'text-foreground'), children: fact.value })), fact.note ? (jsxRuntime.jsx("span", { className: cn('text-xs font-medium', getFactNoteClassName(tone)), children: fact.note })) : null, fact.onAction ? (jsxRuntime.jsx("button", { type: "button", onClick: fact.onAction, className: "text-xs font-medium text-primary underline-offset-2 hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring", children: fact.actionLabel ?? 'View' })) : null] })] }));
37337
+ }
37338
+ /**
37339
+ * The top of a document detail page: the headline amount (balance, total, value),
37340
+ * how much of it is settled, and the key dates and facts beside it. Data-only.
37341
+ */
37342
+ function DocumentHero({ label, labelIcon, tone = 'default', amount, amountNote, progress, breakdown, facts = [], details = [], detailsLabel, detailsIcon, className, }) {
37343
+ return (jsxRuntime.jsxs("section", { className: cn('overflow-hidden rounded-2xl border border-border bg-card', className), children: [jsxRuntime.jsxs("div", { className: cn('grid grid-cols-1', facts.length > 0 && 'md:grid-cols-[minmax(0,1.4fr)_minmax(0,1fr)]'), children: [jsxRuntime.jsxs("div", { className: "flex min-w-0 flex-col justify-center px-5 py-4 sm:px-7 sm:py-4", children: [jsxRuntime.jsxs("p", { className: cn('m-0 flex items-center gap-1.5 text-xs font-semibold uppercase tracking-wider [&_svg]:size-3.5', getLabelClassName(tone)), children: [labelIcon, label] }), jsxRuntime.jsxs("div", { className: "mt-1.5 flex flex-wrap items-baseline gap-x-3 gap-y-1", children: [jsxRuntime.jsx("span", { className: "break-all text-4xl font-semibold leading-none tracking-tight tabular-nums text-foreground sm:text-[2.75rem]", children: amount }), amountNote ? (jsxRuntime.jsx("span", { className: "text-sm text-secondary-foreground", children: amountNote })) : null] }), breakdown ? (jsxRuntime.jsx(BreakdownBar, { breakdown: breakdown })) : progress ? (jsxRuntime.jsx(ProgressBar, { progress: progress, tone: tone, name: label })) : null] }), facts.length > 0 ? (jsxRuntime.jsx("dl", { className: cn('m-0 flex min-w-0 flex-col justify-center border-t border-border px-5 py-2 md:border-l md:border-t-0', getFactsPanelClassName(tone)), children: facts.map((fact) => (jsxRuntime.jsx(FactRow, { fact: fact }, fact.label))) })) : null] }), details.length > 0 ? (jsxRuntime.jsxs("div", { className: "flex flex-wrap items-center gap-x-3 gap-y-1.5 border-t border-border px-5 py-2.5 text-xs sm:px-7", children: [detailsLabel ? (jsxRuntime.jsxs("span", { className: "inline-flex shrink-0 items-center gap-1 rounded bg-muted px-1.5 py-0.5 font-semibold text-secondary-foreground [&_svg]:size-3", children: [detailsIcon, detailsLabel] })) : null, jsxRuntime.jsx("dl", { className: "m-0 flex min-w-0 flex-wrap items-center gap-x-3 gap-y-1.5", children: details.map((detail, index) => {
37344
+ const empty = isEmptyFactValue(detail.value);
37345
+ return (jsxRuntime.jsxs("div", { className: "flex min-w-0 items-center gap-x-3", children: [index > 0 ? (jsxRuntime.jsx("span", { "aria-hidden": true, className: "h-3 w-px shrink-0 bg-border" })) : null, jsxRuntime.jsxs("div", { className: "flex min-w-0 items-baseline gap-1.5", children: [jsxRuntime.jsx("dt", { className: "whitespace-nowrap text-muted-foreground", children: detail.label }), jsxRuntime.jsx("dd", { className: cn('m-0 break-words', empty
37346
+ ? 'italic text-label-subtle'
37347
+ : 'font-medium text-foreground'), children: empty
37348
+ ? (detail.emptyLabel ?? 'Not provided')
37349
+ : detail.value })] })] }, detail.label));
37350
+ }) })] })) : null] }));
37351
+ }
37352
+
37168
37353
  const DropdownMenu = DropdownMenuPrimitive__namespace.Root;
37169
37354
  const DropdownMenuTrigger = DropdownMenuPrimitive__namespace.Trigger;
37170
37355
  const DropdownMenuGroup = DropdownMenuPrimitive__namespace.Group;
@@ -37207,6 +37392,35 @@ const useDropdownMenu = ({ open, defaultOpen = false, onOpenChange, }) => {
37207
37392
 
37208
37393
  const dropdownMenuItemDestructiveClass = 'text-destructive focus:bg-destructive/10 focus:text-destructive';
37209
37394
 
37395
+ /** The line-items section of a document detail page, with its "N items · X ct" count. */
37396
+ function LineItemsCard({ title, count, carats, actions, onEdit, footer, children, className, }) {
37397
+ return (jsxRuntime.jsxs(DetailSection, { icon: jsxRuntime.jsx(Box, {}), title: title, actions: actions || onEdit ? (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [actions, onEdit ? (jsxRuntime.jsx(Button$1, { type: "button", variant: "outline", size: "sm", onClick: onEdit, className: "h-8 shrink-0 rounded-lg border-border bg-card px-3 text-sm font-medium text-secondary-foreground shadow-xs", children: "Edit" })) : null] })) : undefined, className: className, bodyClassName: "p-0", count: jsxRuntime.jsxs(Badge, { appearance: "soft", color: "secondary", shape: "pill", size: "sm", children: [count, " ", count === 1 ? 'item' : 'items', " \u00B7 ", formatCarat(carats), " ct"] }), children: [children, footer ? jsxRuntime.jsx("div", { className: "border-t border-border", children: footer }) : null] }));
37398
+ }
37399
+ /** Fills its container and only scrolls sideways when a row can't fit. */
37400
+ function LineTable({ children }) {
37401
+ return (jsxRuntime.jsx("div", { className: "overflow-x-auto", children: jsxRuntime.jsx("div", { className: "w-max min-w-full", children: children }) }));
37402
+ }
37403
+ function LineTableEmpty({ children }) {
37404
+ return jsxRuntime.jsx("div", { className: "py-8 text-center text-sm text-muted-foreground", children: children });
37405
+ }
37406
+ function LineProductThumb({ src, className }) {
37407
+ const [failed, setFailed] = React.useState(false);
37408
+ if (src && !failed) {
37409
+ return (jsxRuntime.jsx("img", { src: src, alt: "", onError: () => setFailed(true), className: cn('size-9 shrink-0 rounded-lg bg-muted object-cover', className) }));
37410
+ }
37411
+ return (jsxRuntime.jsx("span", { "aria-hidden": true, className: cn('flex size-9 shrink-0 items-center justify-center rounded-lg bg-muted text-muted-foreground', className), children: jsxRuntime.jsx(Gem, { className: "size-4" }) }));
37412
+ }
37413
+ function LineProductTypeChip({ type }) {
37414
+ return (jsxRuntime.jsx(Badge, { appearance: "soft", color: type === 'gem' ? 'success' : 'info', shape: "pill", size: "sm", className: "h-5 shrink-0 px-2 py-0.5 text-[11px] font-medium", children: type === 'gem' ? 'GEM' : 'DIAMOND' }));
37415
+ }
37416
+ function LineProductCell({ className, name, type, image, description }) {
37417
+ return (jsxRuntime.jsxs("div", { className: cn(className, 'gap-2.5'), children: [jsxRuntime.jsx(LineProductThumb, { src: image }), jsxRuntime.jsxs("div", { className: "min-w-0 flex-1", children: [jsxRuntime.jsxs("div", { className: "flex min-w-0 flex-wrap items-center gap-x-2 gap-y-0.5", children: [jsxRuntime.jsx("p", { className: "m-0 truncate text-sm font-semibold leading-5 text-foreground", children: name }), type ? jsxRuntime.jsx(LineProductTypeChip, { type: type }) : null] }), description ? jsxRuntime.jsx("p", { className: "m-0 mt-0.5 line-clamp-1 text-xs text-muted-foreground", children: description }) : null] })] }));
37418
+ }
37419
+ /** The ⋯ menu at the end of a line row. */
37420
+ function LineRowActionsMenu({ onView, disabled, label = 'Row actions', modal, children, }) {
37421
+ return (jsxRuntime.jsxs(DropdownMenu, { modal: modal, children: [jsxRuntime.jsx(DropdownMenuTrigger, { className: "inline-flex size-7 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-muted hover:text-foreground focus:outline-none focus-visible:ring-2 focus-visible:ring-ring", "aria-label": label, disabled: disabled, children: jsxRuntime.jsx(Ellipsis, { className: "size-4" }) }), jsxRuntime.jsxs(DropdownMenuContent, { align: "end", className: "min-w-[190px]", children: [onView ? (jsxRuntime.jsxs(DropdownMenuItem, { onClick: onView, children: [jsxRuntime.jsx(Eye, { className: "size-4" }), jsxRuntime.jsx("span", { children: "View details" })] })) : null, children] })] }));
37422
+ }
37423
+
37210
37424
  const EntityHeader = ({ title, meta, status, description, descriptionLimit = 180, onShare, shareSlot, actions, className, }) => {
37211
37425
  const hasMenu = !!actions && actions.length > 0;
37212
37426
  return (jsxRuntime.jsxs("div", { className: cn('flex flex-col gap-3', className), children: [jsxRuntime.jsxs("div", { className: "flex items-start justify-between gap-3", children: [jsxRuntime.jsxs("div", { className: "flex min-w-0 flex-col gap-2", children: [jsxRuntime.jsx("h1", { className: "truncate text-[24px] leading-8 font-medium text-primary", children: title }), (meta || status) && (jsxRuntime.jsxs("div", { className: "flex flex-wrap items-center gap-x-2 gap-y-1 text-sm text-foreground", children: [meta?.map((item, idx) => (jsxRuntime.jsxs(React.Fragment, { children: [idx > 0 && (jsxRuntime.jsx("span", { className: "text-muted-foreground", "aria-hidden": "true", children: "\u2022" })), jsxRuntime.jsx("span", { children: item.value })] }, item.key ?? idx))), jsxRuntime.jsx("span", { className: "text-muted-foreground", "aria-hidden": "true", children: "\u2022" }), status && (jsxRuntime.jsx(Badge, { appearance: "soft", color: status.tone ?? 'success', size: "md", shape: "pill", className: "px-3", children: status.label }))] }))] }), jsxRuntime.jsxs("div", { className: "flex shrink-0 items-center gap-2", children: [shareSlot
@@ -38310,12 +38524,13 @@ function hasDetails(variant, hasDescription) {
38310
38524
  /** Dark mode: `--primary` is too dim on near-black, so the detailed active state uses the design's lighter green. */
38311
38525
  const DARK_ACTIVE_GREEN = 'dark:border-[#6FB98A]';
38312
38526
  const DARK_ACTIVE_GREEN_TEXT = 'dark:text-[#6FB98A]';
38313
- function getListClassName(variant, detailed) {
38527
+ function getListClassName(detailed) {
38314
38528
  if (detailed) {
38315
38529
  // Light: a faint primary tint. Dark: `--muted` is a light overlay that would outshine the active segment.
38316
38530
  return 'inline-flex w-full items-center gap-1 rounded-xl border border-transparent bg-primary/5 p-1 dark:border-border dark:bg-black/25';
38317
38531
  }
38318
- return cn('inline-flex w-full items-center gap-1 bg-muted p-1', variant === 'bordered' ? 'rounded-lg' : 'rounded-md');
38532
+ // Segments are rounded-md inside a p-1 track, so the track's radius is theirs plus the padding.
38533
+ return 'inline-flex w-full items-center gap-1 rounded-[calc(var(--radius-md)+0.25rem)] bg-muted p-1';
38319
38534
  }
38320
38535
  function getSegmentClassName(variant, isActive, isDisabled, detailed = false) {
38321
38536
  return cn('inline-flex cursor-pointer items-center justify-center gap-2 border px-3 text-sm font-medium transition-colors disabled:cursor-not-allowed', 'outline-none focus-visible:ring-2 focus-visible:ring-primary/30', detailed ? 'min-h-11 rounded-lg border-2 py-2 font-semibold' : 'h-7 rounded-md',
@@ -38352,7 +38567,7 @@ function getDescriptionClassName(isActive) {
38352
38567
  */
38353
38568
  function SegmentedControl({ value, onChange, options, ariaLabel, className, disabled, variant = 'default', optionLayout = 'stacked', }) {
38354
38569
  const detailed = options.some((opt) => hasDetails(variant, opt.description != null));
38355
- return (jsxRuntime.jsx("div", { role: "tablist", "aria-label": ariaLabel, className: cn(getListClassName(variant, detailed), className), children: options.map((opt) => {
38570
+ return (jsxRuntime.jsx("div", { role: "tablist", "aria-label": ariaLabel, className: cn(getListClassName(detailed), className), children: options.map((opt) => {
38356
38571
  const isActive = value === opt.value;
38357
38572
  const isDisabled = !!(disabled || opt.disabled);
38358
38573
  return (jsxRuntime.jsxs("button", { type: "button", role: "tab", "aria-selected": isActive, disabled: isDisabled, onClick: () => !isDisabled && onChange(opt.value), className: getSegmentClassName(variant, isActive, isDisabled, detailed), children: [opt.icon && (jsxRuntime.jsx("span", { "aria-hidden": "true", className: getIconClassName(detailed, isActive), children: opt.icon })), detailed && opt.description != null ? (jsxRuntime.jsxs("span", { className: getContentClassName(optionLayout), children: [jsxRuntime.jsx("span", { className: "whitespace-nowrap", children: opt.label }), jsxRuntime.jsx("span", { className: getDescriptionClassName(isActive), children: opt.description })] })) : (jsxRuntime.jsx("span", { className: "whitespace-nowrap", children: opt.label }))] }, opt.value));
@@ -67291,10 +67506,20 @@ function FormSectionCardSkeleton({ fields = 4, columns = 2, footer = 'end', desc
67291
67506
  function TableSkeleton({ rows = 8 }) {
67292
67507
  return (jsxRuntime.jsxs("div", { className: "space-y-3", children: [jsxRuntime.jsxs("div", { className: "flex gap-2", children: [jsxRuntime.jsx(SquareSkeleton, { className: "h-9 flex-1", rounded: "md" }), jsxRuntime.jsx(SquareSkeleton, { className: "h-9 w-44", rounded: "md" }), jsxRuntime.jsx(SquareSkeleton, { className: "h-9 w-48", rounded: "md" })] }), Array.from({ length: rows }).map((_, i) => (jsxRuntime.jsx(SquareSkeleton, { className: "h-12 w-full", rounded: "md" }, i)))] }));
67293
67508
  }
67509
+ /** Listing table while it loads: one full-width bar per row, like the gem and diamond inventory tables. */
67510
+ function TableRowsSkeleton({ rows = 10, className }) {
67511
+ return (jsxRuntime.jsx("div", { className: cn('flex w-full flex-col gap-2 overflow-hidden', className), "aria-busy": "true", "aria-label": "Loading", children: Array.from({ length: rows }).map((_, i) => (
67512
+ // shrink-0: in a height-capped flex parent the bars would otherwise squash below 52px.
67513
+ jsxRuntime.jsx(SquareSkeleton, { height: 52, className: "w-full shrink-0" }, i))) }));
67514
+ }
67294
67515
  /** Detail page: header row + key-value section cards. Mirrors `DetailPageLayout`. */
67295
67516
  function DetailPageSkeleton({ sections = 3, }) {
67296
67517
  return (jsxRuntime.jsxs("div", { className: "space-y-5", children: [jsxRuntime.jsxs("div", { className: "flex items-center justify-between gap-4", children: [jsxRuntime.jsxs("div", { className: "flex items-center gap-3", children: [jsxRuntime.jsx(SquareSkeleton, { height: 32, width: 32, rounded: "md" }), jsxRuntime.jsxs("div", { className: "space-y-1.5", children: [jsxRuntime.jsx(SquareSkeleton, { height: 20, width: 192, rounded: "full" }), jsxRuntime.jsx(SquareSkeleton, { height: 12, width: 128, rounded: "full" })] })] }), jsxRuntime.jsx(SquareSkeleton, { height: 36, width: 128, rounded: "md" })] }), Array.from({ length: sections }).map((_, s) => (jsxRuntime.jsxs("div", { className: "overflow-hidden rounded-xl border border-border bg-card", children: [jsxRuntime.jsxs("div", { className: "flex items-center gap-3 border-b border-border bg-secondary px-5 py-4", children: [jsxRuntime.jsx(SquareSkeleton, { height: 32, width: 32, rounded: "lg" }), jsxRuntime.jsx(SquareSkeleton, { height: 16, width: 160, rounded: "full" })] }), jsxRuntime.jsx("div", { className: "grid grid-cols-1 gap-5 p-5 md:grid-cols-3", children: Array.from({ length: 6 }).map((_, i) => (jsxRuntime.jsxs("div", { className: "space-y-1.5", children: [jsxRuntime.jsx(SquareSkeleton, { height: 10, width: 80, rounded: "full" }), jsxRuntime.jsx(SquareSkeleton, { height: 14, width: 128, rounded: "full" })] }, i))) })] }, s)))] }));
67297
67518
  }
67519
+ /** Document detail page (invoice, memo…): header, `DocumentHero` and `DetailSection` placeholders. */
67520
+ function DocumentDetailSkeleton({ aside = 'payment', sections = 3, label = 'Loading document', }) {
67521
+ return (jsxRuntime.jsxs("div", { role: "status", "aria-busy": "true", "aria-label": label, className: "space-y-4", children: [jsxRuntime.jsxs("div", { className: "flex flex-wrap items-center justify-between gap-3", children: [jsxRuntime.jsxs("div", { className: "flex items-center gap-3", children: [jsxRuntime.jsx(SquareSkeleton, { height: 14, width: 80, rounded: "full" }), jsxRuntime.jsx("span", { className: "h-5 w-px bg-border" }), jsxRuntime.jsx(SquareSkeleton, { height: 28, width: 200, rounded: "md" }), jsxRuntime.jsx(SquareSkeleton, { height: 22, width: 72, rounded: "full" })] }), jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [jsxRuntime.jsx(SquareSkeleton, { height: 36, width: 112, rounded: "lg" }), jsxRuntime.jsx(SquareSkeleton, { height: 36, width: 80, rounded: "lg" }), jsxRuntime.jsx(SquareSkeleton, { height: 36, width: 128, rounded: "lg" }), jsxRuntime.jsx(SquareSkeleton, { height: 36, width: 36, rounded: "lg" })] })] }), jsxRuntime.jsxs("section", { "aria-hidden": "true", className: "grid grid-cols-1 overflow-hidden rounded-2xl border border-border bg-card md:grid-cols-[minmax(0,1.4fr)_minmax(0,1fr)]", children: [jsxRuntime.jsxs("div", { className: "flex flex-col justify-center space-y-3 px-5 py-4 sm:px-7 sm:py-4", children: [jsxRuntime.jsx(SquareSkeleton, { height: 12, width: 96, rounded: "full" }), jsxRuntime.jsx(SquareSkeleton, { height: 40, width: 220, rounded: "md" }), aside !== 'none' && (jsxRuntime.jsxs("div", { className: "w-full max-w-xl space-y-2 pt-1", children: [jsxRuntime.jsx(SquareSkeleton, { height: 8, className: "w-full", rounded: "full" }), jsxRuntime.jsxs("div", { className: "flex justify-between", children: [jsxRuntime.jsx(SquareSkeleton, { height: 11, width: 88, rounded: "full" }), jsxRuntime.jsx(SquareSkeleton, { height: 11, width: 40, rounded: "full" })] })] }))] }), jsxRuntime.jsx("div", { className: "border-t border-border bg-muted/40 px-5 py-2 md:border-l md:border-t-0", children: [0, 1, 2, 3].map((i) => (jsxRuntime.jsxs("div", { className: "flex min-h-10 items-center gap-3 border-b border-border py-1.5 last:border-b-0", children: [jsxRuntime.jsx(SquareSkeleton, { height: 24, width: 24, rounded: "md" }), jsxRuntime.jsx(SquareSkeleton, { height: 12, width: 72, rounded: "full" }), jsxRuntime.jsx(SquareSkeleton, { height: 12, width: 88, rounded: "full", className: "ml-auto" })] }, i))) })] }), Array.from({ length: sections }).map((_, s) => (jsxRuntime.jsxs("section", { "aria-hidden": "true", className: "overflow-hidden rounded-2xl border border-border bg-card", children: [jsxRuntime.jsxs("div", { className: "flex items-center gap-2.5 border-b border-border px-4 py-3", children: [jsxRuntime.jsx(SquareSkeleton, { height: 28, width: 28, rounded: "lg" }), jsxRuntime.jsx(SquareSkeleton, { height: 15, width: 128, rounded: "full" })] }), jsxRuntime.jsx("div", { className: "space-y-3 p-4", children: Array.from({ length: s === 1 ? 4 : 2 }).map((__, row) => (jsxRuntime.jsx(SquareSkeleton, { height: s === 1 ? 36 : 14, className: row % 2 ? 'w-3/4' : 'w-full', rounded: "md" }, row))) })] }, s))), jsxRuntime.jsx("span", { className: "sr-only", children: label })] }));
67522
+ }
67298
67523
 
67299
67524
  const SlideOut = ({ open, onOpenChange, ...props }) => {
67300
67525
  const scheduleLockRelease = useOverlayBodyLockRelease(open);
@@ -67384,6 +67609,7 @@ const TablePagination = ({ total, page, rowsPerPage, totalPages, onPageChange, o
67384
67609
  return (jsxRuntime.jsxs("div", { className: cn('flex flex-row items-center justify-between gap-3 border-t border-border bg-card px-4 py-2 text-sm text-muted-foreground overflow-x-auto rounded-b-lg', className), children: [jsxRuntime.jsx("span", { className: "shrink-0 text-left", children: selectedCount !== undefined ? (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("span", { className: "font-medium text-foreground", children: selectedCount }), ' ', "of ", safeTotal, " ", selectedLabel] })) : (formatRange(safePage, safeRowsPerPage, safeTotal)) }), jsxRuntime.jsxs("div", { className: "flex shrink-0 items-center gap-3", children: [jsxRuntime.jsx(Pagination, { currentPage: safePage, totalPages: safeTotalPages, onPageChange: onPageChange, size: "sm", variant: "outlined", shape: "square", showItemsPerPage: true, itemsPerPage: safeRowsPerPage, onItemsPerPageChange: onRowsPerPageChange, itemsPerPageOptions: rowOptions }), jsxRuntime.jsxs("form", { className: "flex items-center gap-2", onSubmit: handleSubmit, children: [jsxRuntime.jsx("input", { type: "text", inputMode: "numeric", pattern: "[0-9]*", value: pageInput, onChange: (e) => setPageInput(e.target.value), placeholder: "Page", "aria-label": "Go to page", className: "h-8 w-16 rounded-md border border-border bg-input-background px-2 text-sm text-foreground shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] outline-none placeholder:text-muted-foreground focus:border-primary focus:ring-2 focus:ring-primary/10" }), jsxRuntime.jsx(Button, { type: "submit", appearance: "outline", color: "secondary", size: "sm", disabled: !pageInput, children: "Go" })] })] })] }));
67385
67610
  };
67386
67611
 
67612
+ const SEPARATORS = /[\s,;]+/;
67387
67613
  function useTagsInput({ value, onChange, uppercase = false, }) {
67388
67614
  const [input, setInput] = React.useState('');
67389
67615
  const addTag = () => {
@@ -67393,6 +67619,22 @@ function useTagsInput({ value, onChange, uppercase = false, }) {
67393
67619
  onChange([...value, newTag]);
67394
67620
  setInput('');
67395
67621
  };
67622
+ const addMany = (raw) => {
67623
+ const entries = raw.split(SEPARATORS).map((entry) => entry.trim()).filter(Boolean);
67624
+ const next = [...value];
67625
+ entries.forEach((entry) => {
67626
+ const tag = uppercase ? entry.toUpperCase() : entry;
67627
+ if (!next.includes(tag))
67628
+ next.push(tag);
67629
+ });
67630
+ if (next.length !== value.length)
67631
+ onChange(next);
67632
+ setInput('');
67633
+ };
67634
+ const commitInput = () => {
67635
+ if (input.trim() !== '')
67636
+ addMany(input);
67637
+ };
67396
67638
  const onInputChange = (event) => {
67397
67639
  const next = event.target.value;
67398
67640
  setInput(uppercase ? next.toUpperCase() : next);
@@ -67403,6 +67645,23 @@ function useTagsInput({ value, onChange, uppercase = false, }) {
67403
67645
  addTag();
67404
67646
  }
67405
67647
  };
67648
+ const onInlineKeyDown = (event) => {
67649
+ if (event.key === 'Enter' || event.key === ',' || event.key === ';' || (event.key === 'Tab' && input.trim())) {
67650
+ event.preventDefault();
67651
+ commitInput();
67652
+ return;
67653
+ }
67654
+ if (event.key === 'Backspace' && input === '' && value.length > 0) {
67655
+ onChange(value.slice(0, -1));
67656
+ }
67657
+ };
67658
+ const onInlinePaste = (event) => {
67659
+ const text = event.clipboardData.getData('text');
67660
+ if (!SEPARATORS.test(text.trim()))
67661
+ return;
67662
+ event.preventDefault();
67663
+ addMany(`${input} ${text}`);
67664
+ };
67406
67665
  const removeTag = (index) => {
67407
67666
  onChange(value.filter((_, idx) => idx !== index));
67408
67667
  };
@@ -67413,11 +67672,17 @@ function useTagsInput({ value, onChange, uppercase = false, }) {
67413
67672
  onInputKeyDown,
67414
67673
  addTag,
67415
67674
  removeTag,
67675
+ commitInput,
67676
+ onInlineKeyDown,
67677
+ onInlinePaste,
67416
67678
  };
67417
67679
  }
67418
67680
 
67419
- function TagsInput({ value, onChange, placeholder, helperText, uppercase = false, }) {
67420
- const { input, addDisabled, onInputChange, onInputKeyDown, addTag, removeTag, } = useTagsInput({ value, onChange, uppercase });
67681
+ function TagsInput({ value, onChange, placeholder, helperText, uppercase = false, variant = 'stacked', id, invalid = false, disabled = false, }) {
67682
+ const { input, addDisabled, onInputChange, onInputKeyDown, addTag, removeTag, commitInput, onInlineKeyDown, onInlinePaste, } = useTagsInput({ value, onChange, uppercase });
67683
+ if (variant === 'inline') {
67684
+ return (jsxRuntime.jsxs("div", { className: "w-full", children: [jsxRuntime.jsxs("div", { "aria-invalid": invalid || undefined, className: cn('flex min-h-10 w-full flex-wrap items-center gap-1.5 rounded-lg border border-input bg-formInput px-2 py-1.5 transition-colors', 'focus-within:border-primary focus-within:ring-2 focus-within:ring-primary/30', invalid && 'border-destructive focus-within:border-destructive focus-within:ring-destructive/20', disabled && 'cursor-not-allowed opacity-60'), children: [value.map((tag, idx) => (jsxRuntime.jsxs("span", { className: "inline-flex max-w-full items-center gap-1 rounded-full border border-border bg-secondary py-0.5 pl-2.5 pr-1 text-sm text-foreground", children: [jsxRuntime.jsx("span", { className: "truncate", children: tag }), jsxRuntime.jsx("button", { type: "button", onClick: () => removeTag(idx), disabled: disabled, "aria-label": `Remove ${tag}`, className: "flex size-4 shrink-0 cursor-pointer items-center justify-center rounded-full text-muted-foreground transition-colors hover:bg-muted hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring", children: jsxRuntime.jsx(X$2, { className: "size-3" }) })] }, tag))), jsxRuntime.jsx("input", { id: id, value: input, onChange: onInputChange, onKeyDown: onInlineKeyDown, onPaste: onInlinePaste, onBlur: commitInput, disabled: disabled, "aria-invalid": invalid || undefined, placeholder: value.length === 0 ? placeholder || 'Type and press Enter' : undefined, className: "h-7 min-w-32 flex-1 border-0 bg-transparent px-1 text-sm text-foreground outline-none placeholder:text-placeholder disabled:cursor-not-allowed" })] }), helperText && jsxRuntime.jsx("p", { className: "mt-1.5 text-xs text-muted-foreground", children: helperText })] }));
67685
+ }
67421
67686
  return (jsxRuntime.jsxs("div", { className: "w-full", children: [jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [jsxRuntime.jsx(Input, { value: input, onChange: onInputChange, onKeyDown: onInputKeyDown, placeholder: placeholder || 'Type and Press Enter', className: "flex-1 bg-formInput" }), jsxRuntime.jsxs(Button$1, { type: "button", onClick: addTag, disabled: addDisabled, className: "h-9 gap-1.5 disabled:opacity-50", children: [jsxRuntime.jsx(Plus, { className: "h-4 w-4" }), "Add"] })] }), helperText && (jsxRuntime.jsx("p", { className: "mt-1.5 text-xs text-muted-foreground", children: helperText })), value.length > 0 && (jsxRuntime.jsx("div", { className: "mt-3 flex flex-wrap gap-2", children: value.map((tag, idx) => (jsxRuntime.jsxs("span", { className: "inline-flex items-center gap-1.5 rounded-md border border-border bg-secondary px-2 py-1 text-xs font-medium text-foreground", children: [tag, jsxRuntime.jsx("button", { type: "button", onClick: () => removeTag(idx), "aria-label": `Remove ${tag}`, className: "cursor-pointer text-muted-foreground transition-colors hover:text-foreground", children: jsxRuntime.jsx(X$2, { className: "h-3 w-3" }) })] }, idx))) }))] }));
67422
67687
  }
67423
67688
 
@@ -77823,6 +78088,10 @@ exports.DateInput = DateInput;
77823
78088
  exports.DetailChip = DetailChip;
77824
78089
  exports.DetailPageLayout = DetailPageLayout;
77825
78090
  exports.DetailPageSkeleton = DetailPageSkeleton;
78091
+ exports.DetailSection = DetailSection;
78092
+ exports.DocumentDeleteDialog = DocumentDeleteDialog;
78093
+ exports.DocumentDetailSkeleton = DocumentDetailSkeleton;
78094
+ exports.DocumentHero = DocumentHero;
77826
78095
  exports.DropdownMenu = DropdownMenu;
77827
78096
  exports.DropdownMenuCheckboxItem = DropdownMenuCheckboxItem;
77828
78097
  exports.DropdownMenuContent = DropdownMenuContent;
@@ -77865,6 +78134,13 @@ exports.KYCStatusFilter = KYCStatusFilter;
77865
78134
  exports.KeyValueGrid = KeyValueGrid;
77866
78135
  exports.LAYOUT_AUDIT_CONFIG = LAYOUT_AUDIT_CONFIG;
77867
78136
  exports.LabeledToggle = LabeledToggle;
78137
+ exports.LineItemsCard = LineItemsCard;
78138
+ exports.LineProductCell = LineProductCell;
78139
+ exports.LineProductThumb = LineProductThumb;
78140
+ exports.LineProductTypeChip = LineProductTypeChip;
78141
+ exports.LineRowActionsMenu = LineRowActionsMenu;
78142
+ exports.LineTable = LineTable;
78143
+ exports.LineTableEmpty = LineTableEmpty;
77868
78144
  exports.MEMO_IN_AUDIT_CONFIG = MEMO_IN_AUDIT_CONFIG;
77869
78145
  exports.MEMO_OUT_AUDIT_CONFIG = MEMO_OUT_AUDIT_CONFIG;
77870
78146
  exports.MediaGallery = MediaGallery;
@@ -77949,6 +78225,7 @@ exports.StatusFilter = StatusFilter;
77949
78225
  exports.Stepper = Stepper;
77950
78226
  exports.StockTypeFilter = StockTypeFilter;
77951
78227
  exports.TablePagination = TablePagination;
78228
+ exports.TableRowsSkeleton = TableRowsSkeleton;
77952
78229
  exports.TableSkeleton = TableSkeleton;
77953
78230
  exports.Tabs = Tabs;
77954
78231
  exports.TabsContent = TabsContent;