@caratlogic/design-system 0.1.3 → 0.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/molecules/Field/Field.d.ts.map +1 -1
- package/dist/components/molecules/MetricCard/MetricCard.d.ts +1 -1
- package/dist/components/molecules/MetricCard/MetricCard.d.ts.map +1 -1
- package/dist/components/molecules/MetricCard/MetricCard.types.d.ts +4 -0
- package/dist/components/molecules/MetricCard/MetricCard.types.d.ts.map +1 -1
- package/dist/components/molecules/SearchableSelect/SearchableSelect.d.ts.map +1 -1
- package/dist/components/molecules/SlideOut/SlideOut.parts.d.ts +1 -1
- package/dist/components/molecules/SlideOut/SlideOut.parts.d.ts.map +1 -1
- package/dist/components/organisms/FileUploader/FileCard.d.ts +1 -1
- package/dist/components/organisms/FileUploader/FileCard.d.ts.map +1 -1
- package/dist/components/organisms/FileUploader/FileUploader.utils.d.ts +10 -0
- package/dist/components/organisms/FileUploader/FileUploader.utils.d.ts.map +1 -1
- package/dist/components/ui/dialog.d.ts +1 -1
- package/dist/components/ui/dialog.d.ts.map +1 -1
- package/dist/components/ui/textarea.d.ts.map +1 -1
- package/dist/hooks/useOverlayBodyLockRelease.d.ts +9 -0
- package/dist/hooks/useOverlayBodyLockRelease.d.ts.map +1 -0
- package/dist/index.cjs.js +313 -169
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.esm.js +313 -170
- package/dist/index.esm.js.map +1 -1
- package/dist/lib/overlayBodyLock.d.ts +12 -0
- package/dist/lib/overlayBodyLock.d.ts.map +1 -0
- package/dist/ui.cjs.js +79 -4
- package/dist/ui.cjs.js.map +1 -1
- package/dist/ui.esm.js +79 -4
- package/dist/ui.esm.js.map +1 -1
- package/package.json +1 -1
package/dist/index.esm.js
CHANGED
|
@@ -2668,12 +2668,12 @@ const createLucideIcon = (iconName, iconNode) => {
|
|
|
2668
2668
|
*/
|
|
2669
2669
|
|
|
2670
2670
|
|
|
2671
|
-
const __iconNode$
|
|
2671
|
+
const __iconNode$17 = [
|
|
2672
2672
|
["rect", { width: "20", height: "5", x: "2", y: "3", rx: "1", key: "1wp1u1" }],
|
|
2673
2673
|
["path", { d: "M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8", key: "1s80jp" }],
|
|
2674
2674
|
["path", { d: "M10 12h4", key: "a56b0p" }]
|
|
2675
2675
|
];
|
|
2676
|
-
const Archive = createLucideIcon("archive", __iconNode$
|
|
2676
|
+
const Archive = createLucideIcon("archive", __iconNode$17);
|
|
2677
2677
|
|
|
2678
2678
|
/**
|
|
2679
2679
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -2683,11 +2683,11 @@ const Archive = createLucideIcon("archive", __iconNode$16);
|
|
|
2683
2683
|
*/
|
|
2684
2684
|
|
|
2685
2685
|
|
|
2686
|
-
const __iconNode$
|
|
2686
|
+
const __iconNode$16 = [
|
|
2687
2687
|
["path", { d: "m12 19-7-7 7-7", key: "1l729n" }],
|
|
2688
2688
|
["path", { d: "M19 12H5", key: "x3x0zl" }]
|
|
2689
2689
|
];
|
|
2690
|
-
const ArrowLeft = createLucideIcon("arrow-left", __iconNode$
|
|
2690
|
+
const ArrowLeft = createLucideIcon("arrow-left", __iconNode$16);
|
|
2691
2691
|
|
|
2692
2692
|
/**
|
|
2693
2693
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -2697,11 +2697,11 @@ const ArrowLeft = createLucideIcon("arrow-left", __iconNode$15);
|
|
|
2697
2697
|
*/
|
|
2698
2698
|
|
|
2699
2699
|
|
|
2700
|
-
const __iconNode$
|
|
2700
|
+
const __iconNode$15 = [
|
|
2701
2701
|
["path", { d: "M5 12h14", key: "1ays0h" }],
|
|
2702
2702
|
["path", { d: "m12 5 7 7-7 7", key: "xquz4c" }]
|
|
2703
2703
|
];
|
|
2704
|
-
const ArrowRight = createLucideIcon("arrow-right", __iconNode$
|
|
2704
|
+
const ArrowRight = createLucideIcon("arrow-right", __iconNode$15);
|
|
2705
2705
|
|
|
2706
2706
|
/**
|
|
2707
2707
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -2711,11 +2711,11 @@ const ArrowRight = createLucideIcon("arrow-right", __iconNode$14);
|
|
|
2711
2711
|
*/
|
|
2712
2712
|
|
|
2713
2713
|
|
|
2714
|
-
const __iconNode$
|
|
2714
|
+
const __iconNode$14 = [
|
|
2715
2715
|
["path", { d: "M4.929 4.929 19.07 19.071", key: "196cmz" }],
|
|
2716
2716
|
["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }]
|
|
2717
2717
|
];
|
|
2718
|
-
const Ban = createLucideIcon("ban", __iconNode$
|
|
2718
|
+
const Ban = createLucideIcon("ban", __iconNode$14);
|
|
2719
2719
|
|
|
2720
2720
|
/**
|
|
2721
2721
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -2725,7 +2725,7 @@ const Ban = createLucideIcon("ban", __iconNode$13);
|
|
|
2725
2725
|
*/
|
|
2726
2726
|
|
|
2727
2727
|
|
|
2728
|
-
const __iconNode$
|
|
2728
|
+
const __iconNode$13 = [
|
|
2729
2729
|
["path", { d: "M10.268 21a2 2 0 0 0 3.464 0", key: "vwvbt9" }],
|
|
2730
2730
|
[
|
|
2731
2731
|
"path",
|
|
@@ -2735,7 +2735,7 @@ const __iconNode$12 = [
|
|
|
2735
2735
|
}
|
|
2736
2736
|
]
|
|
2737
2737
|
];
|
|
2738
|
-
const Bell = createLucideIcon("bell", __iconNode$
|
|
2738
|
+
const Bell = createLucideIcon("bell", __iconNode$13);
|
|
2739
2739
|
|
|
2740
2740
|
/**
|
|
2741
2741
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -2745,13 +2745,13 @@ const Bell = createLucideIcon("bell", __iconNode$12);
|
|
|
2745
2745
|
*/
|
|
2746
2746
|
|
|
2747
2747
|
|
|
2748
|
-
const __iconNode$
|
|
2748
|
+
const __iconNode$12 = [
|
|
2749
2749
|
[
|
|
2750
2750
|
"path",
|
|
2751
2751
|
{ 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" }
|
|
2752
2752
|
]
|
|
2753
2753
|
];
|
|
2754
|
-
const Bold$1 = createLucideIcon("bold", __iconNode$
|
|
2754
|
+
const Bold$1 = createLucideIcon("bold", __iconNode$12);
|
|
2755
2755
|
|
|
2756
2756
|
/**
|
|
2757
2757
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -2761,7 +2761,7 @@ const Bold$1 = createLucideIcon("bold", __iconNode$11);
|
|
|
2761
2761
|
*/
|
|
2762
2762
|
|
|
2763
2763
|
|
|
2764
|
-
const __iconNode$
|
|
2764
|
+
const __iconNode$11 = [
|
|
2765
2765
|
["path", { d: "M8 2v4", key: "1cmpym" }],
|
|
2766
2766
|
["path", { d: "M16 2v4", key: "4m81vk" }],
|
|
2767
2767
|
["rect", { width: "18", height: "18", x: "3", y: "4", rx: "2", key: "1hopcy" }],
|
|
@@ -2773,7 +2773,7 @@ const __iconNode$10 = [
|
|
|
2773
2773
|
["path", { d: "M12 18h.01", key: "mhygvu" }],
|
|
2774
2774
|
["path", { d: "M16 18h.01", key: "kzsmim" }]
|
|
2775
2775
|
];
|
|
2776
|
-
const CalendarDays = createLucideIcon("calendar-days", __iconNode$
|
|
2776
|
+
const CalendarDays = createLucideIcon("calendar-days", __iconNode$11);
|
|
2777
2777
|
|
|
2778
2778
|
/**
|
|
2779
2779
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -2783,13 +2783,13 @@ const CalendarDays = createLucideIcon("calendar-days", __iconNode$10);
|
|
|
2783
2783
|
*/
|
|
2784
2784
|
|
|
2785
2785
|
|
|
2786
|
-
const __iconNode
|
|
2786
|
+
const __iconNode$10 = [
|
|
2787
2787
|
["path", { d: "M8 2v4", key: "1cmpym" }],
|
|
2788
2788
|
["path", { d: "M16 2v4", key: "4m81vk" }],
|
|
2789
2789
|
["rect", { width: "18", height: "18", x: "3", y: "4", rx: "2", key: "1hopcy" }],
|
|
2790
2790
|
["path", { d: "M3 10h18", key: "8toen8" }]
|
|
2791
2791
|
];
|
|
2792
|
-
const Calendar$1 = createLucideIcon("calendar", __iconNode
|
|
2792
|
+
const Calendar$1 = createLucideIcon("calendar", __iconNode$10);
|
|
2793
2793
|
|
|
2794
2794
|
/**
|
|
2795
2795
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -2799,11 +2799,11 @@ const Calendar$1 = createLucideIcon("calendar", __iconNode$$);
|
|
|
2799
2799
|
*/
|
|
2800
2800
|
|
|
2801
2801
|
|
|
2802
|
-
const __iconNode
|
|
2802
|
+
const __iconNode$$ = [
|
|
2803
2803
|
["path", { d: "M18 6 7 17l-5-5", key: "116fxf" }],
|
|
2804
2804
|
["path", { d: "m22 10-7.5 7.5L13 16", key: "ke71qq" }]
|
|
2805
2805
|
];
|
|
2806
|
-
const CheckCheck = createLucideIcon("check-check", __iconNode
|
|
2806
|
+
const CheckCheck = createLucideIcon("check-check", __iconNode$$);
|
|
2807
2807
|
|
|
2808
2808
|
/**
|
|
2809
2809
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -2813,8 +2813,8 @@ const CheckCheck = createLucideIcon("check-check", __iconNode$_);
|
|
|
2813
2813
|
*/
|
|
2814
2814
|
|
|
2815
2815
|
|
|
2816
|
-
const __iconNode$
|
|
2817
|
-
const Check = createLucideIcon("check", __iconNode$
|
|
2816
|
+
const __iconNode$_ = [["path", { d: "M20 6 9 17l-5-5", key: "1gmf2c" }]];
|
|
2817
|
+
const Check = createLucideIcon("check", __iconNode$_);
|
|
2818
2818
|
|
|
2819
2819
|
/**
|
|
2820
2820
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -2824,8 +2824,8 @@ const Check = createLucideIcon("check", __iconNode$Z);
|
|
|
2824
2824
|
*/
|
|
2825
2825
|
|
|
2826
2826
|
|
|
2827
|
-
const __iconNode$
|
|
2828
|
-
const ChevronDown = createLucideIcon("chevron-down", __iconNode$
|
|
2827
|
+
const __iconNode$Z = [["path", { d: "m6 9 6 6 6-6", key: "qrunsl" }]];
|
|
2828
|
+
const ChevronDown = createLucideIcon("chevron-down", __iconNode$Z);
|
|
2829
2829
|
|
|
2830
2830
|
/**
|
|
2831
2831
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -2835,8 +2835,8 @@ const ChevronDown = createLucideIcon("chevron-down", __iconNode$Y);
|
|
|
2835
2835
|
*/
|
|
2836
2836
|
|
|
2837
2837
|
|
|
2838
|
-
const __iconNode$
|
|
2839
|
-
const ChevronLeft = createLucideIcon("chevron-left", __iconNode$
|
|
2838
|
+
const __iconNode$Y = [["path", { d: "m15 18-6-6 6-6", key: "1wnfg3" }]];
|
|
2839
|
+
const ChevronLeft = createLucideIcon("chevron-left", __iconNode$Y);
|
|
2840
2840
|
|
|
2841
2841
|
/**
|
|
2842
2842
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -2846,8 +2846,8 @@ const ChevronLeft = createLucideIcon("chevron-left", __iconNode$X);
|
|
|
2846
2846
|
*/
|
|
2847
2847
|
|
|
2848
2848
|
|
|
2849
|
-
const __iconNode$
|
|
2850
|
-
const ChevronRight = createLucideIcon("chevron-right", __iconNode$
|
|
2849
|
+
const __iconNode$X = [["path", { d: "m9 18 6-6-6-6", key: "mthhwq" }]];
|
|
2850
|
+
const ChevronRight = createLucideIcon("chevron-right", __iconNode$X);
|
|
2851
2851
|
|
|
2852
2852
|
/**
|
|
2853
2853
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -2857,8 +2857,8 @@ const ChevronRight = createLucideIcon("chevron-right", __iconNode$W);
|
|
|
2857
2857
|
*/
|
|
2858
2858
|
|
|
2859
2859
|
|
|
2860
|
-
const __iconNode$
|
|
2861
|
-
const ChevronUp = createLucideIcon("chevron-up", __iconNode$
|
|
2860
|
+
const __iconNode$W = [["path", { d: "m18 15-6-6-6 6", key: "153udz" }]];
|
|
2861
|
+
const ChevronUp = createLucideIcon("chevron-up", __iconNode$W);
|
|
2862
2862
|
|
|
2863
2863
|
/**
|
|
2864
2864
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -2868,11 +2868,11 @@ const ChevronUp = createLucideIcon("chevron-up", __iconNode$V);
|
|
|
2868
2868
|
*/
|
|
2869
2869
|
|
|
2870
2870
|
|
|
2871
|
-
const __iconNode$
|
|
2871
|
+
const __iconNode$V = [
|
|
2872
2872
|
["path", { d: "m11 17-5-5 5-5", key: "13zhaf" }],
|
|
2873
2873
|
["path", { d: "m18 17-5-5 5-5", key: "h8a8et" }]
|
|
2874
2874
|
];
|
|
2875
|
-
const ChevronsLeft = createLucideIcon("chevrons-left", __iconNode$
|
|
2875
|
+
const ChevronsLeft = createLucideIcon("chevrons-left", __iconNode$V);
|
|
2876
2876
|
|
|
2877
2877
|
/**
|
|
2878
2878
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -2882,11 +2882,11 @@ const ChevronsLeft = createLucideIcon("chevrons-left", __iconNode$U);
|
|
|
2882
2882
|
*/
|
|
2883
2883
|
|
|
2884
2884
|
|
|
2885
|
-
const __iconNode$
|
|
2885
|
+
const __iconNode$U = [
|
|
2886
2886
|
["path", { d: "m6 17 5-5-5-5", key: "xnjwq" }],
|
|
2887
2887
|
["path", { d: "m13 17 5-5-5-5", key: "17xmmf" }]
|
|
2888
2888
|
];
|
|
2889
|
-
const ChevronsRight = createLucideIcon("chevrons-right", __iconNode$
|
|
2889
|
+
const ChevronsRight = createLucideIcon("chevrons-right", __iconNode$U);
|
|
2890
2890
|
|
|
2891
2891
|
/**
|
|
2892
2892
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -2896,12 +2896,12 @@ const ChevronsRight = createLucideIcon("chevrons-right", __iconNode$T);
|
|
|
2896
2896
|
*/
|
|
2897
2897
|
|
|
2898
2898
|
|
|
2899
|
-
const __iconNode$
|
|
2899
|
+
const __iconNode$T = [
|
|
2900
2900
|
["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
|
|
2901
2901
|
["line", { x1: "12", x2: "12", y1: "8", y2: "12", key: "1pkeuh" }],
|
|
2902
2902
|
["line", { x1: "12", x2: "12.01", y1: "16", y2: "16", key: "4dfq90" }]
|
|
2903
2903
|
];
|
|
2904
|
-
const CircleAlert = createLucideIcon("circle-alert", __iconNode$
|
|
2904
|
+
const CircleAlert = createLucideIcon("circle-alert", __iconNode$T);
|
|
2905
2905
|
|
|
2906
2906
|
/**
|
|
2907
2907
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -2911,11 +2911,11 @@ const CircleAlert = createLucideIcon("circle-alert", __iconNode$S);
|
|
|
2911
2911
|
*/
|
|
2912
2912
|
|
|
2913
2913
|
|
|
2914
|
-
const __iconNode$
|
|
2914
|
+
const __iconNode$S = [
|
|
2915
2915
|
["path", { d: "M21.801 10A10 10 0 1 1 17 3.335", key: "yps3ct" }],
|
|
2916
2916
|
["path", { d: "m9 11 3 3L22 4", key: "1pflzl" }]
|
|
2917
2917
|
];
|
|
2918
|
-
const CircleCheckBig = createLucideIcon("circle-check-big", __iconNode$
|
|
2918
|
+
const CircleCheckBig = createLucideIcon("circle-check-big", __iconNode$S);
|
|
2919
2919
|
|
|
2920
2920
|
/**
|
|
2921
2921
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -2925,11 +2925,11 @@ const CircleCheckBig = createLucideIcon("circle-check-big", __iconNode$R);
|
|
|
2925
2925
|
*/
|
|
2926
2926
|
|
|
2927
2927
|
|
|
2928
|
-
const __iconNode$
|
|
2928
|
+
const __iconNode$R = [
|
|
2929
2929
|
["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
|
|
2930
2930
|
["path", { d: "m9 12 2 2 4-4", key: "dzmm74" }]
|
|
2931
2931
|
];
|
|
2932
|
-
const CircleCheck = createLucideIcon("circle-check", __iconNode$
|
|
2932
|
+
const CircleCheck = createLucideIcon("circle-check", __iconNode$R);
|
|
2933
2933
|
|
|
2934
2934
|
/**
|
|
2935
2935
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -2939,12 +2939,12 @@ const CircleCheck = createLucideIcon("circle-check", __iconNode$Q);
|
|
|
2939
2939
|
*/
|
|
2940
2940
|
|
|
2941
2941
|
|
|
2942
|
-
const __iconNode$
|
|
2942
|
+
const __iconNode$Q = [
|
|
2943
2943
|
["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
|
|
2944
2944
|
["path", { d: "m15 9-6 6", key: "1uzhvr" }],
|
|
2945
2945
|
["path", { d: "m9 9 6 6", key: "z0biqf" }]
|
|
2946
2946
|
];
|
|
2947
|
-
const CircleX = createLucideIcon("circle-x", __iconNode$
|
|
2947
|
+
const CircleX = createLucideIcon("circle-x", __iconNode$Q);
|
|
2948
2948
|
|
|
2949
2949
|
/**
|
|
2950
2950
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -2954,8 +2954,8 @@ const CircleX = createLucideIcon("circle-x", __iconNode$P);
|
|
|
2954
2954
|
*/
|
|
2955
2955
|
|
|
2956
2956
|
|
|
2957
|
-
const __iconNode$
|
|
2958
|
-
const Circle = createLucideIcon("circle", __iconNode$
|
|
2957
|
+
const __iconNode$P = [["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }]];
|
|
2958
|
+
const Circle = createLucideIcon("circle", __iconNode$P);
|
|
2959
2959
|
|
|
2960
2960
|
/**
|
|
2961
2961
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -2965,11 +2965,11 @@ const Circle = createLucideIcon("circle", __iconNode$O);
|
|
|
2965
2965
|
*/
|
|
2966
2966
|
|
|
2967
2967
|
|
|
2968
|
-
const __iconNode$
|
|
2968
|
+
const __iconNode$O = [
|
|
2969
2969
|
["path", { d: "M12 6v6l4 2", key: "mmk7yg" }],
|
|
2970
2970
|
["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }]
|
|
2971
2971
|
];
|
|
2972
|
-
const Clock = createLucideIcon("clock", __iconNode$
|
|
2972
|
+
const Clock = createLucideIcon("clock", __iconNode$O);
|
|
2973
2973
|
|
|
2974
2974
|
/**
|
|
2975
2975
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -2979,11 +2979,11 @@ const Clock = createLucideIcon("clock", __iconNode$N);
|
|
|
2979
2979
|
*/
|
|
2980
2980
|
|
|
2981
2981
|
|
|
2982
|
-
const __iconNode$
|
|
2982
|
+
const __iconNode$N = [
|
|
2983
2983
|
["rect", { width: "14", height: "14", x: "8", y: "8", rx: "2", ry: "2", key: "17jyea" }],
|
|
2984
2984
|
["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" }]
|
|
2985
2985
|
];
|
|
2986
|
-
const Copy = createLucideIcon("copy", __iconNode$
|
|
2986
|
+
const Copy = createLucideIcon("copy", __iconNode$N);
|
|
2987
2987
|
|
|
2988
2988
|
/**
|
|
2989
2989
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -2993,11 +2993,11 @@ const Copy = createLucideIcon("copy", __iconNode$M);
|
|
|
2993
2993
|
*/
|
|
2994
2994
|
|
|
2995
2995
|
|
|
2996
|
-
const __iconNode$
|
|
2996
|
+
const __iconNode$M = [
|
|
2997
2997
|
["path", { d: "M6 2v14a2 2 0 0 0 2 2h14", key: "ron5a4" }],
|
|
2998
2998
|
["path", { d: "M18 22V8a2 2 0 0 0-2-2H2", key: "7s9ehn" }]
|
|
2999
2999
|
];
|
|
3000
|
-
const Crop = createLucideIcon("crop", __iconNode$
|
|
3000
|
+
const Crop = createLucideIcon("crop", __iconNode$M);
|
|
3001
3001
|
|
|
3002
3002
|
/**
|
|
3003
3003
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3007,12 +3007,12 @@ const Crop = createLucideIcon("crop", __iconNode$L);
|
|
|
3007
3007
|
*/
|
|
3008
3008
|
|
|
3009
3009
|
|
|
3010
|
-
const __iconNode$
|
|
3010
|
+
const __iconNode$L = [
|
|
3011
3011
|
["path", { d: "M12 15V3", key: "m9g1x1" }],
|
|
3012
3012
|
["path", { d: "M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4", key: "ih7n3h" }],
|
|
3013
3013
|
["path", { d: "m7 10 5 5 5-5", key: "brsn70" }]
|
|
3014
3014
|
];
|
|
3015
|
-
const Download = createLucideIcon("download", __iconNode$
|
|
3015
|
+
const Download = createLucideIcon("download", __iconNode$L);
|
|
3016
3016
|
|
|
3017
3017
|
/**
|
|
3018
3018
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3022,12 +3022,12 @@ const Download = createLucideIcon("download", __iconNode$K);
|
|
|
3022
3022
|
*/
|
|
3023
3023
|
|
|
3024
3024
|
|
|
3025
|
-
const __iconNode$
|
|
3025
|
+
const __iconNode$K = [
|
|
3026
3026
|
["circle", { cx: "12", cy: "12", r: "1", key: "41hilf" }],
|
|
3027
3027
|
["circle", { cx: "12", cy: "5", r: "1", key: "gxeob9" }],
|
|
3028
3028
|
["circle", { cx: "12", cy: "19", r: "1", key: "lyex9k" }]
|
|
3029
3029
|
];
|
|
3030
|
-
const EllipsisVertical = createLucideIcon("ellipsis-vertical", __iconNode$
|
|
3030
|
+
const EllipsisVertical = createLucideIcon("ellipsis-vertical", __iconNode$K);
|
|
3031
3031
|
|
|
3032
3032
|
/**
|
|
3033
3033
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3037,12 +3037,12 @@ const EllipsisVertical = createLucideIcon("ellipsis-vertical", __iconNode$J);
|
|
|
3037
3037
|
*/
|
|
3038
3038
|
|
|
3039
3039
|
|
|
3040
|
-
const __iconNode$
|
|
3040
|
+
const __iconNode$J = [
|
|
3041
3041
|
["circle", { cx: "12", cy: "12", r: "1", key: "41hilf" }],
|
|
3042
3042
|
["circle", { cx: "19", cy: "12", r: "1", key: "1wjl8i" }],
|
|
3043
3043
|
["circle", { cx: "5", cy: "12", r: "1", key: "1pcz8c" }]
|
|
3044
3044
|
];
|
|
3045
|
-
const Ellipsis = createLucideIcon("ellipsis", __iconNode$
|
|
3045
|
+
const Ellipsis = createLucideIcon("ellipsis", __iconNode$J);
|
|
3046
3046
|
|
|
3047
3047
|
/**
|
|
3048
3048
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3052,12 +3052,12 @@ const Ellipsis = createLucideIcon("ellipsis", __iconNode$I);
|
|
|
3052
3052
|
*/
|
|
3053
3053
|
|
|
3054
3054
|
|
|
3055
|
-
const __iconNode$
|
|
3055
|
+
const __iconNode$I = [
|
|
3056
3056
|
["path", { d: "M15 3h6v6", key: "1q9fwt" }],
|
|
3057
3057
|
["path", { d: "M10 14 21 3", key: "gplh6r" }],
|
|
3058
3058
|
["path", { d: "M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6", key: "a6xqqp" }]
|
|
3059
3059
|
];
|
|
3060
|
-
const ExternalLink = createLucideIcon("external-link", __iconNode$
|
|
3060
|
+
const ExternalLink = createLucideIcon("external-link", __iconNode$I);
|
|
3061
3061
|
|
|
3062
3062
|
/**
|
|
3063
3063
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3067,7 +3067,7 @@ const ExternalLink = createLucideIcon("external-link", __iconNode$H);
|
|
|
3067
3067
|
*/
|
|
3068
3068
|
|
|
3069
3069
|
|
|
3070
|
-
const __iconNode$
|
|
3070
|
+
const __iconNode$H = [
|
|
3071
3071
|
[
|
|
3072
3072
|
"path",
|
|
3073
3073
|
{
|
|
@@ -3077,7 +3077,7 @@ const __iconNode$G = [
|
|
|
3077
3077
|
],
|
|
3078
3078
|
["circle", { cx: "12", cy: "12", r: "3", key: "1v7zrd" }]
|
|
3079
3079
|
];
|
|
3080
|
-
const Eye = createLucideIcon("eye", __iconNode$
|
|
3080
|
+
const Eye = createLucideIcon("eye", __iconNode$H);
|
|
3081
3081
|
|
|
3082
3082
|
/**
|
|
3083
3083
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3087,13 +3087,13 @@ const Eye = createLucideIcon("eye", __iconNode$G);
|
|
|
3087
3087
|
*/
|
|
3088
3088
|
|
|
3089
3089
|
|
|
3090
|
-
const __iconNode$
|
|
3090
|
+
const __iconNode$G = [
|
|
3091
3091
|
[
|
|
3092
3092
|
"path",
|
|
3093
3093
|
{ d: "M18 2h-3a5 5 0 0 0-5 5v3H7v4h3v8h4v-8h3l1-4h-4V7a1 1 0 0 1 1-1h3z", key: "1jg4f8" }
|
|
3094
3094
|
]
|
|
3095
3095
|
];
|
|
3096
|
-
const Facebook = createLucideIcon("facebook", __iconNode$
|
|
3096
|
+
const Facebook = createLucideIcon("facebook", __iconNode$G);
|
|
3097
3097
|
|
|
3098
3098
|
/**
|
|
3099
3099
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3103,7 +3103,7 @@ const Facebook = createLucideIcon("facebook", __iconNode$F);
|
|
|
3103
3103
|
*/
|
|
3104
3104
|
|
|
3105
3105
|
|
|
3106
|
-
const __iconNode$
|
|
3106
|
+
const __iconNode$F = [
|
|
3107
3107
|
["path", { d: "M12 22h6a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v3.072", key: "n6s66f" }],
|
|
3108
3108
|
["path", { d: "M14 2v4a2 2 0 0 0 2 2h4", key: "tnqrlb" }],
|
|
3109
3109
|
[
|
|
@@ -3115,7 +3115,7 @@ const __iconNode$E = [
|
|
|
3115
3115
|
],
|
|
3116
3116
|
["circle", { cx: "5", cy: "14", r: "3", key: "ufru5t" }]
|
|
3117
3117
|
];
|
|
3118
|
-
const FileBadge = createLucideIcon("file-badge", __iconNode$
|
|
3118
|
+
const FileBadge = createLucideIcon("file-badge", __iconNode$F);
|
|
3119
3119
|
|
|
3120
3120
|
/**
|
|
3121
3121
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3125,14 +3125,14 @@ const FileBadge = createLucideIcon("file-badge", __iconNode$E);
|
|
|
3125
3125
|
*/
|
|
3126
3126
|
|
|
3127
3127
|
|
|
3128
|
-
const __iconNode$
|
|
3128
|
+
const __iconNode$E = [
|
|
3129
3129
|
["path", { d: "M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z", key: "1rqfz7" }],
|
|
3130
3130
|
["path", { d: "M14 2v4a2 2 0 0 0 2 2h4", key: "tnqrlb" }],
|
|
3131
3131
|
["path", { d: "M10 9H8", key: "b1mrlr" }],
|
|
3132
3132
|
["path", { d: "M16 13H8", key: "t4e002" }],
|
|
3133
3133
|
["path", { d: "M16 17H8", key: "z1uh3a" }]
|
|
3134
3134
|
];
|
|
3135
|
-
const FileText = createLucideIcon("file-text", __iconNode$
|
|
3135
|
+
const FileText = createLucideIcon("file-text", __iconNode$E);
|
|
3136
3136
|
|
|
3137
3137
|
/**
|
|
3138
3138
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3142,7 +3142,7 @@ const FileText = createLucideIcon("file-text", __iconNode$D);
|
|
|
3142
3142
|
*/
|
|
3143
3143
|
|
|
3144
3144
|
|
|
3145
|
-
const __iconNode$
|
|
3145
|
+
const __iconNode$D = [
|
|
3146
3146
|
[
|
|
3147
3147
|
"path",
|
|
3148
3148
|
{
|
|
@@ -3151,7 +3151,7 @@ const __iconNode$C = [
|
|
|
3151
3151
|
}
|
|
3152
3152
|
]
|
|
3153
3153
|
];
|
|
3154
|
-
const Funnel = createLucideIcon("funnel", __iconNode$
|
|
3154
|
+
const Funnel = createLucideIcon("funnel", __iconNode$D);
|
|
3155
3155
|
|
|
3156
3156
|
/**
|
|
3157
3157
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3161,7 +3161,7 @@ const Funnel = createLucideIcon("funnel", __iconNode$C);
|
|
|
3161
3161
|
*/
|
|
3162
3162
|
|
|
3163
3163
|
|
|
3164
|
-
const __iconNode$
|
|
3164
|
+
const __iconNode$C = [
|
|
3165
3165
|
["circle", { cx: "12", cy: "9", r: "1", key: "124mty" }],
|
|
3166
3166
|
["circle", { cx: "19", cy: "9", r: "1", key: "1ruzo2" }],
|
|
3167
3167
|
["circle", { cx: "5", cy: "9", r: "1", key: "1a8b28" }],
|
|
@@ -3169,7 +3169,7 @@ const __iconNode$B = [
|
|
|
3169
3169
|
["circle", { cx: "19", cy: "15", r: "1", key: "1a92ep" }],
|
|
3170
3170
|
["circle", { cx: "5", cy: "15", r: "1", key: "5r1jwy" }]
|
|
3171
3171
|
];
|
|
3172
|
-
const GripHorizontal = createLucideIcon("grip-horizontal", __iconNode$
|
|
3172
|
+
const GripHorizontal = createLucideIcon("grip-horizontal", __iconNode$C);
|
|
3173
3173
|
|
|
3174
3174
|
/**
|
|
3175
3175
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3179,7 +3179,7 @@ const GripHorizontal = createLucideIcon("grip-horizontal", __iconNode$B);
|
|
|
3179
3179
|
*/
|
|
3180
3180
|
|
|
3181
3181
|
|
|
3182
|
-
const __iconNode$
|
|
3182
|
+
const __iconNode$B = [
|
|
3183
3183
|
["circle", { cx: "9", cy: "12", r: "1", key: "1vctgf" }],
|
|
3184
3184
|
["circle", { cx: "9", cy: "5", r: "1", key: "hp0tcf" }],
|
|
3185
3185
|
["circle", { cx: "9", cy: "19", r: "1", key: "fkjjf6" }],
|
|
@@ -3187,7 +3187,7 @@ const __iconNode$A = [
|
|
|
3187
3187
|
["circle", { cx: "15", cy: "5", r: "1", key: "19l28e" }],
|
|
3188
3188
|
["circle", { cx: "15", cy: "19", r: "1", key: "f4zoj3" }]
|
|
3189
3189
|
];
|
|
3190
|
-
const GripVertical = createLucideIcon("grip-vertical", __iconNode$
|
|
3190
|
+
const GripVertical = createLucideIcon("grip-vertical", __iconNode$B);
|
|
3191
3191
|
|
|
3192
3192
|
/**
|
|
3193
3193
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3197,13 +3197,13 @@ const GripVertical = createLucideIcon("grip-vertical", __iconNode$A);
|
|
|
3197
3197
|
*/
|
|
3198
3198
|
|
|
3199
3199
|
|
|
3200
|
-
const __iconNode$
|
|
3200
|
+
const __iconNode$A = [
|
|
3201
3201
|
["path", { d: "M4 12h8", key: "17cfdx" }],
|
|
3202
3202
|
["path", { d: "M4 18V6", key: "1rz3zl" }],
|
|
3203
3203
|
["path", { d: "M12 18V6", key: "zqpxq5" }],
|
|
3204
3204
|
["path", { d: "m17 12 3-2v8", key: "1hhhft" }]
|
|
3205
3205
|
];
|
|
3206
|
-
const Heading1 = createLucideIcon("heading-1", __iconNode$
|
|
3206
|
+
const Heading1 = createLucideIcon("heading-1", __iconNode$A);
|
|
3207
3207
|
|
|
3208
3208
|
/**
|
|
3209
3209
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3213,13 +3213,13 @@ const Heading1 = createLucideIcon("heading-1", __iconNode$z);
|
|
|
3213
3213
|
*/
|
|
3214
3214
|
|
|
3215
3215
|
|
|
3216
|
-
const __iconNode$
|
|
3216
|
+
const __iconNode$z = [
|
|
3217
3217
|
["path", { d: "M4 12h8", key: "17cfdx" }],
|
|
3218
3218
|
["path", { d: "M4 18V6", key: "1rz3zl" }],
|
|
3219
3219
|
["path", { d: "M12 18V6", key: "zqpxq5" }],
|
|
3220
3220
|
["path", { d: "M21 18h-4c0-4 4-3 4-6 0-1.5-2-2.5-4-1", key: "9jr5yi" }]
|
|
3221
3221
|
];
|
|
3222
|
-
const Heading2 = createLucideIcon("heading-2", __iconNode$
|
|
3222
|
+
const Heading2 = createLucideIcon("heading-2", __iconNode$z);
|
|
3223
3223
|
|
|
3224
3224
|
/**
|
|
3225
3225
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3229,14 +3229,14 @@ const Heading2 = createLucideIcon("heading-2", __iconNode$y);
|
|
|
3229
3229
|
*/
|
|
3230
3230
|
|
|
3231
3231
|
|
|
3232
|
-
const __iconNode$
|
|
3232
|
+
const __iconNode$y = [
|
|
3233
3233
|
["path", { d: "M4 12h8", key: "17cfdx" }],
|
|
3234
3234
|
["path", { d: "M4 18V6", key: "1rz3zl" }],
|
|
3235
3235
|
["path", { d: "M12 18V6", key: "zqpxq5" }],
|
|
3236
3236
|
["path", { d: "M17.5 10.5c1.7-1 3.5 0 3.5 1.5a2 2 0 0 1-2 2", key: "68ncm8" }],
|
|
3237
3237
|
["path", { d: "M17 17.5c2 1.5 4 .3 4-1.5a2 2 0 0 0-2-2", key: "1ejuhz" }]
|
|
3238
3238
|
];
|
|
3239
|
-
const Heading3 = createLucideIcon("heading-3", __iconNode$
|
|
3239
|
+
const Heading3 = createLucideIcon("heading-3", __iconNode$y);
|
|
3240
3240
|
|
|
3241
3241
|
/**
|
|
3242
3242
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3246,12 +3246,12 @@ const Heading3 = createLucideIcon("heading-3", __iconNode$x);
|
|
|
3246
3246
|
*/
|
|
3247
3247
|
|
|
3248
3248
|
|
|
3249
|
-
const __iconNode$
|
|
3249
|
+
const __iconNode$x = [
|
|
3250
3250
|
["path", { d: "M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8", key: "1357e3" }],
|
|
3251
3251
|
["path", { d: "M3 3v5h5", key: "1xhq8a" }],
|
|
3252
3252
|
["path", { d: "M12 7v5l4 2", key: "1fdv2h" }]
|
|
3253
3253
|
];
|
|
3254
|
-
const History = createLucideIcon("history", __iconNode$
|
|
3254
|
+
const History = createLucideIcon("history", __iconNode$x);
|
|
3255
3255
|
|
|
3256
3256
|
/**
|
|
3257
3257
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3261,12 +3261,12 @@ const History = createLucideIcon("history", __iconNode$w);
|
|
|
3261
3261
|
*/
|
|
3262
3262
|
|
|
3263
3263
|
|
|
3264
|
-
const __iconNode$
|
|
3264
|
+
const __iconNode$w = [
|
|
3265
3265
|
["rect", { width: "18", height: "18", x: "3", y: "3", rx: "2", ry: "2", key: "1m3agn" }],
|
|
3266
3266
|
["circle", { cx: "9", cy: "9", r: "2", key: "af1f0g" }],
|
|
3267
3267
|
["path", { d: "m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21", key: "1xmnt7" }]
|
|
3268
3268
|
];
|
|
3269
|
-
const Image$1 = createLucideIcon("image", __iconNode$
|
|
3269
|
+
const Image$1 = createLucideIcon("image", __iconNode$w);
|
|
3270
3270
|
|
|
3271
3271
|
/**
|
|
3272
3272
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3276,12 +3276,12 @@ const Image$1 = createLucideIcon("image", __iconNode$v);
|
|
|
3276
3276
|
*/
|
|
3277
3277
|
|
|
3278
3278
|
|
|
3279
|
-
const __iconNode$
|
|
3279
|
+
const __iconNode$v = [
|
|
3280
3280
|
["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
|
|
3281
3281
|
["path", { d: "M12 16v-4", key: "1dtifu" }],
|
|
3282
3282
|
["path", { d: "M12 8h.01", key: "e9boi3" }]
|
|
3283
3283
|
];
|
|
3284
|
-
const Info = createLucideIcon("info", __iconNode$
|
|
3284
|
+
const Info = createLucideIcon("info", __iconNode$v);
|
|
3285
3285
|
|
|
3286
3286
|
/**
|
|
3287
3287
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3291,12 +3291,12 @@ const Info = createLucideIcon("info", __iconNode$u);
|
|
|
3291
3291
|
*/
|
|
3292
3292
|
|
|
3293
3293
|
|
|
3294
|
-
const __iconNode$
|
|
3294
|
+
const __iconNode$u = [
|
|
3295
3295
|
["line", { x1: "19", x2: "10", y1: "4", y2: "4", key: "15jd3p" }],
|
|
3296
3296
|
["line", { x1: "14", x2: "5", y1: "20", y2: "20", key: "bu0au3" }],
|
|
3297
3297
|
["line", { x1: "15", x2: "9", y1: "4", y2: "20", key: "uljnxc" }]
|
|
3298
3298
|
];
|
|
3299
|
-
const Italic$1 = createLucideIcon("italic", __iconNode$
|
|
3299
|
+
const Italic$1 = createLucideIcon("italic", __iconNode$u);
|
|
3300
3300
|
|
|
3301
3301
|
/**
|
|
3302
3302
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3306,12 +3306,12 @@ const Italic$1 = createLucideIcon("italic", __iconNode$t);
|
|
|
3306
3306
|
*/
|
|
3307
3307
|
|
|
3308
3308
|
|
|
3309
|
-
const __iconNode$
|
|
3309
|
+
const __iconNode$t = [
|
|
3310
3310
|
["path", { d: "M9 17H7A5 5 0 0 1 7 7h2", key: "8i5ue5" }],
|
|
3311
3311
|
["path", { d: "M15 7h2a5 5 0 1 1 0 10h-2", key: "1b9ql8" }],
|
|
3312
3312
|
["line", { x1: "8", x2: "16", y1: "12", y2: "12", key: "1jonct" }]
|
|
3313
3313
|
];
|
|
3314
|
-
const Link2 = createLucideIcon("link-2", __iconNode$
|
|
3314
|
+
const Link2 = createLucideIcon("link-2", __iconNode$t);
|
|
3315
3315
|
|
|
3316
3316
|
/**
|
|
3317
3317
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3321,7 +3321,7 @@ const Link2 = createLucideIcon("link-2", __iconNode$s);
|
|
|
3321
3321
|
*/
|
|
3322
3322
|
|
|
3323
3323
|
|
|
3324
|
-
const __iconNode$
|
|
3324
|
+
const __iconNode$s = [
|
|
3325
3325
|
["path", { d: "M10 12h11", key: "6m4ad9" }],
|
|
3326
3326
|
["path", { d: "M10 18h11", key: "11hvi2" }],
|
|
3327
3327
|
["path", { d: "M10 6h11", key: "c7qv1k" }],
|
|
@@ -3329,7 +3329,7 @@ const __iconNode$r = [
|
|
|
3329
3329
|
["path", { d: "M4 6h1v4", key: "cnovpq" }],
|
|
3330
3330
|
["path", { d: "M6 18H4c0-1 2-2 2-3s-1-1.5-2-1", key: "m9a95d" }]
|
|
3331
3331
|
];
|
|
3332
|
-
const ListOrdered = createLucideIcon("list-ordered", __iconNode$
|
|
3332
|
+
const ListOrdered = createLucideIcon("list-ordered", __iconNode$s);
|
|
3333
3333
|
|
|
3334
3334
|
/**
|
|
3335
3335
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3339,7 +3339,7 @@ const ListOrdered = createLucideIcon("list-ordered", __iconNode$r);
|
|
|
3339
3339
|
*/
|
|
3340
3340
|
|
|
3341
3341
|
|
|
3342
|
-
const __iconNode$
|
|
3342
|
+
const __iconNode$r = [
|
|
3343
3343
|
["path", { d: "M3 12h.01", key: "nlz23k" }],
|
|
3344
3344
|
["path", { d: "M3 18h.01", key: "1tta3j" }],
|
|
3345
3345
|
["path", { d: "M3 6h.01", key: "1rqtza" }],
|
|
@@ -3347,7 +3347,7 @@ const __iconNode$q = [
|
|
|
3347
3347
|
["path", { d: "M8 18h13", key: "1lx6n3" }],
|
|
3348
3348
|
["path", { d: "M8 6h13", key: "ik3vkj" }]
|
|
3349
3349
|
];
|
|
3350
|
-
const List = createLucideIcon("list", __iconNode$
|
|
3350
|
+
const List = createLucideIcon("list", __iconNode$r);
|
|
3351
3351
|
|
|
3352
3352
|
/**
|
|
3353
3353
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3357,8 +3357,8 @@ const List = createLucideIcon("list", __iconNode$q);
|
|
|
3357
3357
|
*/
|
|
3358
3358
|
|
|
3359
3359
|
|
|
3360
|
-
const __iconNode$
|
|
3361
|
-
const LoaderCircle = createLucideIcon("loader-circle", __iconNode$
|
|
3360
|
+
const __iconNode$q = [["path", { d: "M21 12a9 9 0 1 1-6.219-8.56", key: "13zald" }]];
|
|
3361
|
+
const LoaderCircle = createLucideIcon("loader-circle", __iconNode$q);
|
|
3362
3362
|
|
|
3363
3363
|
/**
|
|
3364
3364
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3368,7 +3368,7 @@ const LoaderCircle = createLucideIcon("loader-circle", __iconNode$p);
|
|
|
3368
3368
|
*/
|
|
3369
3369
|
|
|
3370
3370
|
|
|
3371
|
-
const __iconNode$
|
|
3371
|
+
const __iconNode$p = [
|
|
3372
3372
|
["path", { d: "M12 2v4", key: "3427ic" }],
|
|
3373
3373
|
["path", { d: "m16.2 7.8 2.9-2.9", key: "r700ao" }],
|
|
3374
3374
|
["path", { d: "M18 12h4", key: "wj9ykh" }],
|
|
@@ -3378,7 +3378,7 @@ const __iconNode$o = [
|
|
|
3378
3378
|
["path", { d: "M2 12h4", key: "j09sii" }],
|
|
3379
3379
|
["path", { d: "m4.9 4.9 2.9 2.9", key: "giyufr" }]
|
|
3380
3380
|
];
|
|
3381
|
-
const Loader = createLucideIcon("loader", __iconNode$
|
|
3381
|
+
const Loader = createLucideIcon("loader", __iconNode$p);
|
|
3382
3382
|
|
|
3383
3383
|
/**
|
|
3384
3384
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3388,12 +3388,12 @@ const Loader = createLucideIcon("loader", __iconNode$o);
|
|
|
3388
3388
|
*/
|
|
3389
3389
|
|
|
3390
3390
|
|
|
3391
|
-
const __iconNode$
|
|
3391
|
+
const __iconNode$o = [
|
|
3392
3392
|
["path", { d: "m16 17 5-5-5-5", key: "1bji2h" }],
|
|
3393
3393
|
["path", { d: "M21 12H9", key: "dn1m92" }],
|
|
3394
3394
|
["path", { d: "M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4", key: "1uf3rs" }]
|
|
3395
3395
|
];
|
|
3396
|
-
const LogOut = createLucideIcon("log-out", __iconNode$
|
|
3396
|
+
const LogOut = createLucideIcon("log-out", __iconNode$o);
|
|
3397
3397
|
|
|
3398
3398
|
/**
|
|
3399
3399
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3403,12 +3403,12 @@ const LogOut = createLucideIcon("log-out", __iconNode$n);
|
|
|
3403
3403
|
*/
|
|
3404
3404
|
|
|
3405
3405
|
|
|
3406
|
-
const __iconNode$
|
|
3406
|
+
const __iconNode$n = [
|
|
3407
3407
|
["path", { d: "M4 12h16", key: "1lakjw" }],
|
|
3408
3408
|
["path", { d: "M4 18h16", key: "19g7jn" }],
|
|
3409
3409
|
["path", { d: "M4 6h16", key: "1o0s65" }]
|
|
3410
3410
|
];
|
|
3411
|
-
const Menu = createLucideIcon("menu", __iconNode$
|
|
3411
|
+
const Menu = createLucideIcon("menu", __iconNode$n);
|
|
3412
3412
|
|
|
3413
3413
|
/**
|
|
3414
3414
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3418,7 +3418,7 @@ const Menu = createLucideIcon("menu", __iconNode$m);
|
|
|
3418
3418
|
*/
|
|
3419
3419
|
|
|
3420
3420
|
|
|
3421
|
-
const __iconNode$
|
|
3421
|
+
const __iconNode$m = [
|
|
3422
3422
|
[
|
|
3423
3423
|
"path",
|
|
3424
3424
|
{
|
|
@@ -3427,7 +3427,7 @@ const __iconNode$l = [
|
|
|
3427
3427
|
}
|
|
3428
3428
|
]
|
|
3429
3429
|
];
|
|
3430
|
-
const Moon = createLucideIcon("moon", __iconNode$
|
|
3430
|
+
const Moon = createLucideIcon("moon", __iconNode$m);
|
|
3431
3431
|
|
|
3432
3432
|
/**
|
|
3433
3433
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3437,7 +3437,7 @@ const Moon = createLucideIcon("moon", __iconNode$l);
|
|
|
3437
3437
|
*/
|
|
3438
3438
|
|
|
3439
3439
|
|
|
3440
|
-
const __iconNode$
|
|
3440
|
+
const __iconNode$l = [
|
|
3441
3441
|
[
|
|
3442
3442
|
"path",
|
|
3443
3443
|
{
|
|
@@ -3450,7 +3450,7 @@ const __iconNode$k = [
|
|
|
3450
3450
|
["circle", { cx: "6.5", cy: "12.5", r: ".5", fill: "currentColor", key: "qy21gx" }],
|
|
3451
3451
|
["circle", { cx: "8.5", cy: "7.5", r: ".5", fill: "currentColor", key: "fotxhn" }]
|
|
3452
3452
|
];
|
|
3453
|
-
const Palette = createLucideIcon("palette", __iconNode$
|
|
3453
|
+
const Palette = createLucideIcon("palette", __iconNode$l);
|
|
3454
3454
|
|
|
3455
3455
|
/**
|
|
3456
3456
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3460,12 +3460,12 @@ const Palette = createLucideIcon("palette", __iconNode$k);
|
|
|
3460
3460
|
*/
|
|
3461
3461
|
|
|
3462
3462
|
|
|
3463
|
-
const __iconNode$
|
|
3463
|
+
const __iconNode$k = [
|
|
3464
3464
|
["rect", { width: "18", height: "18", x: "3", y: "3", rx: "2", key: "afitv7" }],
|
|
3465
3465
|
["path", { d: "M9 3v18", key: "fh3hqa" }],
|
|
3466
3466
|
["path", { d: "m16 15-3-3 3-3", key: "14y99z" }]
|
|
3467
3467
|
];
|
|
3468
|
-
const PanelLeftClose = createLucideIcon("panel-left-close", __iconNode$
|
|
3468
|
+
const PanelLeftClose = createLucideIcon("panel-left-close", __iconNode$k);
|
|
3469
3469
|
|
|
3470
3470
|
/**
|
|
3471
3471
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -3475,7 +3475,7 @@ const PanelLeftClose = createLucideIcon("panel-left-close", __iconNode$j);
|
|
|
3475
3475
|
*/
|
|
3476
3476
|
|
|
3477
3477
|
|
|
3478
|
-
const __iconNode$
|
|
3478
|
+
const __iconNode$j = [
|
|
3479
3479
|
[
|
|
3480
3480
|
"path",
|
|
3481
3481
|
{
|
|
@@ -3485,7 +3485,26 @@ const __iconNode$i = [
|
|
|
3485
3485
|
],
|
|
3486
3486
|
["path", { d: "m15 5 4 4", key: "1mk7zo" }]
|
|
3487
3487
|
];
|
|
3488
|
-
const Pencil = createLucideIcon("pencil", __iconNode$
|
|
3488
|
+
const Pencil = createLucideIcon("pencil", __iconNode$j);
|
|
3489
|
+
|
|
3490
|
+
/**
|
|
3491
|
+
* @license lucide-react v0.539.0 - ISC
|
|
3492
|
+
*
|
|
3493
|
+
* This source code is licensed under the ISC license.
|
|
3494
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
3495
|
+
*/
|
|
3496
|
+
|
|
3497
|
+
|
|
3498
|
+
const __iconNode$i = [
|
|
3499
|
+
[
|
|
3500
|
+
"path",
|
|
3501
|
+
{
|
|
3502
|
+
d: "M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",
|
|
3503
|
+
key: "10ikf1"
|
|
3504
|
+
}
|
|
3505
|
+
]
|
|
3506
|
+
];
|
|
3507
|
+
const Play = createLucideIcon("play", __iconNode$i);
|
|
3489
3508
|
|
|
3490
3509
|
/**
|
|
3491
3510
|
* @license lucide-react v0.539.0 - ISC
|
|
@@ -4326,6 +4345,40 @@ const notify = {
|
|
|
4326
4345
|
promise: toast.promise.bind(toast),
|
|
4327
4346
|
};
|
|
4328
4347
|
|
|
4348
|
+
const OVERLAY_CONTENT_SELECTOR = [
|
|
4349
|
+
'[data-slot="dialog-content"]',
|
|
4350
|
+
'[role="dialog"]',
|
|
4351
|
+
'[role="alertdialog"]',
|
|
4352
|
+
'[role="menu"]',
|
|
4353
|
+
'[role="listbox"]',
|
|
4354
|
+
'[data-radix-popper-content-wrapper]',
|
|
4355
|
+
].join(',');
|
|
4356
|
+
/**
|
|
4357
|
+
* `@radix-ui/react-dismissable-layer` keeps the value it must restore to
|
|
4358
|
+
* `<body>` in a single module-level variable shared by every layer. When two
|
|
4359
|
+
* layers overlap — a modal menu whose item opens a dialog, a select inside a
|
|
4360
|
+
* dialog — the second layer saves `pointer-events: none` and its close writes
|
|
4361
|
+
* that back instead of clearing it, leaving the page unclickable until reload.
|
|
4362
|
+
*
|
|
4363
|
+
* Clearing is only safe once nothing is on screen, so this is a no-op while any
|
|
4364
|
+
* overlay content is still mounted.
|
|
4365
|
+
*/
|
|
4366
|
+
function releaseStaleOverlayBodyLock() {
|
|
4367
|
+
if (typeof document === 'undefined')
|
|
4368
|
+
return;
|
|
4369
|
+
if (document.querySelector(OVERLAY_CONTENT_SELECTOR))
|
|
4370
|
+
return;
|
|
4371
|
+
const { body } = document;
|
|
4372
|
+
if (body.style.pointerEvents === 'none') {
|
|
4373
|
+
body.style.pointerEvents = '';
|
|
4374
|
+
}
|
|
4375
|
+
if (body.hasAttribute('data-scroll-locked')) {
|
|
4376
|
+
body.removeAttribute('data-scroll-locked');
|
|
4377
|
+
body.style.overflow = '';
|
|
4378
|
+
body.style.paddingRight = '';
|
|
4379
|
+
}
|
|
4380
|
+
}
|
|
4381
|
+
|
|
4329
4382
|
const TooltipProvider = ({ children, delayDuration = 200, }) => (jsx(TooltipPrimitive.Provider, { delayDuration: delayDuration, children: children }));
|
|
4330
4383
|
const Tooltip = TooltipPrimitive.Root;
|
|
4331
4384
|
const TooltipTrigger = TooltipPrimitive.Trigger;
|
|
@@ -4740,7 +4793,7 @@ const CopyButton = ({ value, className }) => {
|
|
|
4740
4793
|
};
|
|
4741
4794
|
|
|
4742
4795
|
function Input({ className, type, ...props }) {
|
|
4743
|
-
return (jsx("input", { type: type, "data-slot": "input", className: cn('file:text-foreground placeholder:text-placeholder placeholder:text-sm selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input-border flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:cursor-not-allowed disabled:
|
|
4796
|
+
return (jsx("input", { type: type, "data-slot": "input", className: cn('file:text-foreground placeholder:text-placeholder placeholder:text-sm selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input-border flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:cursor-not-allowed disabled:bg-muted/50 disabled:text-label md:text-sm', 'focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]', 'aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive', className), ...props }));
|
|
4744
4797
|
}
|
|
4745
4798
|
|
|
4746
4799
|
localStorage.getItem('ims_token');
|
|
@@ -5691,10 +5744,50 @@ var U=1,Y$1=.9,H$1=.8,J=.17,p=.1,u=.999,$$1=.9999;var k$2=.99,m$1=/[\\\/_+.#"@\[
|
|
|
5691
5744
|
|
|
5692
5745
|
var N$1='[cmdk-group=""]',Y='[cmdk-group-items=""]',be='[cmdk-group-heading=""]',le='[cmdk-item=""]',ce=`${le}:not([aria-disabled="true"])`,Z="cmdk-item-select",T="data-value",Re=(r,o,n)=>W(r,o,n),ue=React.createContext(void 0),K=()=>React.useContext(ue),de=React.createContext(void 0),ee=()=>React.useContext(de),fe=React.createContext(void 0),me=React.forwardRef((r,o)=>{let n=L$1(()=>{var e,a;return {search:"",value:(a=(e=r.value)!=null?e:r.defaultValue)!=null?a:"",selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}}}),u=L$1(()=>new Set),c=L$1(()=>new Map),d=L$1(()=>new Map),f=L$1(()=>new Set),p=pe(r),{label:b,children:m,value:R,onValueChange:x,filter:C,shouldFilter:S,loop:A,disablePointerSelection:ge=false,vimBindings:j=true,...O}=r,$=useId$1(),q=useId$1(),_=useId$1(),I=React.useRef(null),v=ke();k$1(()=>{if(R!==void 0){let e=R.trim();n.current.value=e,E.emit();}},[R]),k$1(()=>{v(6,ne);},[]);let E=React.useMemo(()=>({subscribe:e=>(f.current.add(e),()=>f.current.delete(e)),snapshot:()=>n.current,setState:(e,a,s)=>{var i,l,g,y;if(!Object.is(n.current[e],a)){if(n.current[e]=a,e==="search")J(),z(),v(1,W);else if(e==="value"){if(document.activeElement.hasAttribute("cmdk-input")||document.activeElement.hasAttribute("cmdk-root")){let h=document.getElementById(_);h?h.focus():(i=document.getElementById($))==null||i.focus();}if(v(7,()=>{var h;n.current.selectedItemId=(h=M())==null?void 0:h.id,E.emit();}),s||v(5,ne),((l=p.current)==null?void 0:l.value)!==void 0){let h=a!=null?a:"";(y=(g=p.current).onValueChange)==null||y.call(g,h);return}}E.emit();}},emit:()=>{f.current.forEach(e=>e());}}),[]),U=React.useMemo(()=>({value:(e,a,s)=>{var i;a!==((i=d.current.get(e))==null?void 0:i.value)&&(d.current.set(e,{value:a,keywords:s}),n.current.filtered.items.set(e,te(a,s)),v(2,()=>{z(),E.emit();}));},item:(e,a)=>(u.current.add(e),a&&(c.current.has(a)?c.current.get(a).add(e):c.current.set(a,new Set([e]))),v(3,()=>{J(),z(),n.current.value||W(),E.emit();}),()=>{d.current.delete(e),u.current.delete(e),n.current.filtered.items.delete(e);let s=M();v(4,()=>{J(),(s==null?void 0:s.getAttribute("id"))===e&&W(),E.emit();});}),group:e=>(c.current.has(e)||c.current.set(e,new Set),()=>{d.current.delete(e),c.current.delete(e);}),filter:()=>p.current.shouldFilter,label:b||r["aria-label"],getDisablePointerSelection:()=>p.current.disablePointerSelection,listId:$,inputId:_,labelId:q,listInnerRef:I}),[]);function te(e,a){var i,l;let s=(l=(i=p.current)==null?void 0:i.filter)!=null?l:Re;return e?s(e,n.current.search,a):0}function z(){if(!n.current.search||p.current.shouldFilter===false)return;let e=n.current.filtered.items,a=[];n.current.filtered.groups.forEach(i=>{let l=c.current.get(i),g=0;l.forEach(y=>{let h=e.get(y);g=Math.max(h,g);}),a.push([i,g]);});let s=I.current;V().sort((i,l)=>{var h,F;let g=i.getAttribute("id"),y=l.getAttribute("id");return ((h=e.get(y))!=null?h:0)-((F=e.get(g))!=null?F:0)}).forEach(i=>{let l=i.closest(Y);l?l.appendChild(i.parentElement===l?i:i.closest(`${Y} > *`)):s.appendChild(i.parentElement===s?i:i.closest(`${Y} > *`));}),a.sort((i,l)=>l[1]-i[1]).forEach(i=>{var g;let l=(g=I.current)==null?void 0:g.querySelector(`${N$1}[${T}="${encodeURIComponent(i[0])}"]`);l==null||l.parentElement.appendChild(l);});}function W(){let e=V().find(s=>s.getAttribute("aria-disabled")!=="true"),a=e==null?void 0:e.getAttribute(T);E.setState("value",a||void 0);}function J(){var a,s,i,l;if(!n.current.search||p.current.shouldFilter===false){n.current.filtered.count=u.current.size;return}n.current.filtered.groups=new Set;let e=0;for(let g of u.current){let y=(s=(a=d.current.get(g))==null?void 0:a.value)!=null?s:"",h=(l=(i=d.current.get(g))==null?void 0:i.keywords)!=null?l:[],F=te(y,h);n.current.filtered.items.set(g,F),F>0&&e++;}for(let[g,y]of c.current)for(let h of y)if(n.current.filtered.items.get(h)>0){n.current.filtered.groups.add(g);break}n.current.filtered.count=e;}function ne(){var a,s,i;let e=M();e&&(((a=e.parentElement)==null?void 0:a.firstChild)===e&&((i=(s=e.closest(N$1))==null?void 0:s.querySelector(be))==null||i.scrollIntoView({block:"nearest"})),e.scrollIntoView({block:"nearest"}));}function M(){var e;return (e=I.current)==null?void 0:e.querySelector(`${le}[aria-selected="true"]`)}function V(){var e;return Array.from(((e=I.current)==null?void 0:e.querySelectorAll(ce))||[])}function X(e){let s=V()[e];s&&E.setState("value",s.getAttribute(T));}function Q(e){var g;let a=M(),s=V(),i=s.findIndex(y=>y===a),l=s[i+e];(g=p.current)!=null&&g.loop&&(l=i+e<0?s[s.length-1]:i+e===s.length?s[0]:s[i+e]),l&&E.setState("value",l.getAttribute(T));}function re(e){let a=M(),s=a==null?void 0:a.closest(N$1),i;for(;s&&!i;)s=e>0?we(s,N$1):De(s,N$1),i=s==null?void 0:s.querySelector(ce);i?E.setState("value",i.getAttribute(T)):Q(e);}let oe=()=>X(V().length-1),ie=e=>{e.preventDefault(),e.metaKey?oe():e.altKey?re(1):Q(1);},se=e=>{e.preventDefault(),e.metaKey?X(0):e.altKey?re(-1):Q(-1);};return React.createElement(Primitive.div,{ref:o,tabIndex:-1,...O,"cmdk-root":"",onKeyDown:e=>{var s;(s=O.onKeyDown)==null||s.call(O,e);let a=e.nativeEvent.isComposing||e.keyCode===229;if(!(e.defaultPrevented||a))switch(e.key){case "n":case "j":{j&&e.ctrlKey&&ie(e);break}case "ArrowDown":{ie(e);break}case "p":case "k":{j&&e.ctrlKey&&se(e);break}case "ArrowUp":{se(e);break}case "Home":{e.preventDefault(),X(0);break}case "End":{e.preventDefault(),oe();break}case "Enter":{e.preventDefault();let i=M();if(i){let l=new Event(Z);i.dispatchEvent(l);}}}}},React.createElement("label",{"cmdk-label":"",htmlFor:U.inputId,id:U.labelId,style:Te},b),B$1(r,e=>React.createElement(de.Provider,{value:E},React.createElement(ue.Provider,{value:U},e))))}),he=React.forwardRef((r,o)=>{var _,I;let n=useId$1(),u=React.useRef(null),c=React.useContext(fe),d=K(),f=pe(r),p=(I=(_=f.current)==null?void 0:_.forceMount)!=null?I:c==null?void 0:c.forceMount;k$1(()=>{if(!p)return d.item(n,c==null?void 0:c.id)},[p]);let b=ve(n,u,[r.value,r.children,u],r.keywords),m=ee(),R=P(v=>v.value&&v.value===b.current),x=P(v=>p||d.filter()===false?true:v.search?v.filtered.items.get(n)>0:true);React.useEffect(()=>{let v=u.current;if(!(!v||r.disabled))return v.addEventListener(Z,C),()=>v.removeEventListener(Z,C)},[x,r.onSelect,r.disabled]);function C(){var v,E;S(),(E=(v=f.current).onSelect)==null||E.call(v,b.current);}function S(){m.setState("value",b.current,true);}if(!x)return null;let{disabled:A,value:ge,onSelect:j,forceMount:O,keywords:$,...q}=r;return React.createElement(Primitive.div,{ref:composeRefs(u,o),...q,id:n,"cmdk-item":"",role:"option","aria-disabled":!!A,"aria-selected":!!R,"data-disabled":!!A,"data-selected":!!R,onPointerMove:A||d.getDisablePointerSelection()?void 0:S,onClick:A?void 0:C},r.children)}),Ee=React.forwardRef((r,o)=>{let{heading:n,children:u,forceMount:c,...d}=r,f=useId$1(),p=React.useRef(null),b=React.useRef(null),m=useId$1(),R=K(),x=P(S=>c||R.filter()===false?true:S.search?S.filtered.groups.has(f):true);k$1(()=>R.group(f),[]),ve(f,p,[r.value,r.heading,b]);let C=React.useMemo(()=>({id:f,forceMount:c}),[c]);return React.createElement(Primitive.div,{ref:composeRefs(p,o),...d,"cmdk-group":"",role:"presentation",hidden:x?void 0:true},n&&React.createElement("div",{ref:b,"cmdk-group-heading":"","aria-hidden":true,id:m},n),B$1(r,S=>React.createElement("div",{"cmdk-group-items":"",role:"group","aria-labelledby":n?m:void 0},React.createElement(fe.Provider,{value:C},S))))}),ye=React.forwardRef((r,o)=>{let{alwaysRender:n,...u}=r,c=React.useRef(null),d=P(f=>!f.search);return !n&&!d?null:React.createElement(Primitive.div,{ref:composeRefs(c,o),...u,"cmdk-separator":"",role:"separator"})}),Se=React.forwardRef((r,o)=>{let{onValueChange:n,...u}=r,c=r.value!=null,d=ee(),f=P(m=>m.search),p=P(m=>m.selectedItemId),b=K();return React.useEffect(()=>{r.value!=null&&d.setState("search",r.value);},[r.value]),React.createElement(Primitive.input,{ref:o,...u,"cmdk-input":"",autoComplete:"off",autoCorrect:"off",spellCheck:false,"aria-autocomplete":"list",role:"combobox","aria-expanded":true,"aria-controls":b.listId,"aria-labelledby":b.labelId,"aria-activedescendant":p,id:b.inputId,type:"text",value:c?r.value:f,onChange:m=>{c||d.setState("search",m.target.value),n==null||n(m.target.value);}})}),Ce=React.forwardRef((r,o)=>{let{children:n,label:u="Suggestions",...c}=r,d=React.useRef(null),f=React.useRef(null),p=P(m=>m.selectedItemId),b=K();return React.useEffect(()=>{if(f.current&&d.current){let m=f.current,R=d.current,x,C=new ResizeObserver(()=>{x=requestAnimationFrame(()=>{let S=m.offsetHeight;R.style.setProperty("--cmdk-list-height",S.toFixed(1)+"px");});});return C.observe(m),()=>{cancelAnimationFrame(x),C.unobserve(m);}}},[]),React.createElement(Primitive.div,{ref:composeRefs(d,o),...c,"cmdk-list":"",role:"listbox",tabIndex:-1,"aria-activedescendant":p,"aria-label":u,id:b.listId},B$1(r,m=>React.createElement("div",{ref:composeRefs(f,b.listInnerRef),"cmdk-list-sizer":""},m)))}),xe=React.forwardRef((r,o)=>{let{open:n,onOpenChange:u,overlayClassName:c,contentClassName:d,container:f,...p}=r;return React.createElement(DialogPrimitive.Root,{open:n,onOpenChange:u},React.createElement(DialogPrimitive.Portal,{container:f},React.createElement(DialogPrimitive.Overlay,{"cmdk-overlay":"",className:c}),React.createElement(DialogPrimitive.Content,{"aria-label":r.label,"cmdk-dialog":"",className:d},React.createElement(me,{ref:o,...p}))))}),Ie=React.forwardRef((r,o)=>P(u=>u.filtered.count===0)?React.createElement(Primitive.div,{ref:o,...r,"cmdk-empty":"",role:"presentation"}):null),Pe=React.forwardRef((r,o)=>{let{progress:n,children:u,label:c="Loading...",...d}=r;return React.createElement(Primitive.div,{ref:o,...d,"cmdk-loading":"",role:"progressbar","aria-valuenow":n,"aria-valuemin":0,"aria-valuemax":100,"aria-label":c},B$1(r,f=>React.createElement("div",{"aria-hidden":true},f)))}),_e=Object.assign(me,{List:Ce,Item:he,Input:Se,Group:Ee,Separator:ye,Dialog:xe,Empty:Ie,Loading:Pe});function we(r,o){let n=r.nextElementSibling;for(;n;){if(n.matches(o))return n;n=n.nextElementSibling;}}function De(r,o){let n=r.previousElementSibling;for(;n;){if(n.matches(o))return n;n=n.previousElementSibling;}}function pe(r){let o=React.useRef(r);return k$1(()=>{o.current=r;}),o}var k$1=typeof window=="undefined"?React.useEffect:React.useLayoutEffect;function L$1(r){let o=React.useRef();return o.current===void 0&&(o.current=r()),o}function P(r){let o=ee(),n=()=>r(o.snapshot());return React.useSyncExternalStore(o.subscribe,n,n)}function ve(r,o,n,u=[]){let c=React.useRef(),d=K();return k$1(()=>{var b;let f=(()=>{var m;for(let R of n){if(typeof R=="string")return R.trim();if(typeof R=="object"&&"current"in R)return R.current?(m=R.current.textContent)==null?void 0:m.trim():c.current}})(),p=u.map(m=>m.trim());d.value(r,f,p),(b=o.current)==null||b.setAttribute(T,f),c.current=f;}),c}var ke=()=>{let[r,o]=React.useState(),n=L$1(()=>new Map);return k$1(()=>{n.current.forEach(u=>u()),n.current=new Map;},[r]),(u,c)=>{n.current.set(u,c),o({});}};function Me(r){let o=r.type;return typeof o=="function"?o(r.props):"render"in o?o.render(r.props):r}function B$1({asChild:r,children:o},n){return r&&React.isValidElement(o)?React.cloneElement(Me(o),{ref:o.ref},n(o.props.children)):n(o)}var Te={position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0"};
|
|
5693
5746
|
|
|
5747
|
+
/** Long enough for the overlay exit animation (200ms) plus a margin. */
|
|
5748
|
+
const EXIT_GRACE_MS = 400;
|
|
5749
|
+
/**
|
|
5750
|
+
* Clears a leaked Radix `<body>` lock after an overlay closes or unmounts.
|
|
5751
|
+
* Returns a scheduler for overlays that are uncontrolled (no `open` prop), so
|
|
5752
|
+
* their `onOpenChange(false)` can trigger the same check.
|
|
5753
|
+
*
|
|
5754
|
+
* @see releaseStaleOverlayBodyLock for why the lock leaks.
|
|
5755
|
+
*/
|
|
5756
|
+
function useOverlayBodyLockRelease(open) {
|
|
5757
|
+
const scheduleRelease = React.useCallback(() => {
|
|
5758
|
+
requestAnimationFrame(() => releaseStaleOverlayBodyLock());
|
|
5759
|
+
window.setTimeout(() => releaseStaleOverlayBodyLock(), EXIT_GRACE_MS);
|
|
5760
|
+
}, []);
|
|
5761
|
+
const wasOpen = React.useRef(false);
|
|
5762
|
+
React.useEffect(() => {
|
|
5763
|
+
if (open) {
|
|
5764
|
+
wasOpen.current = true;
|
|
5765
|
+
return;
|
|
5766
|
+
}
|
|
5767
|
+
if (!wasOpen.current)
|
|
5768
|
+
return;
|
|
5769
|
+
wasOpen.current = false;
|
|
5770
|
+
scheduleRelease();
|
|
5771
|
+
}, [open, scheduleRelease]);
|
|
5772
|
+
// Unmounting while open (route change, parent re-render) skips Radix's own
|
|
5773
|
+
// close path entirely, so the check has to outlive this component.
|
|
5774
|
+
React.useEffect(() => {
|
|
5775
|
+
return () => {
|
|
5776
|
+
window.setTimeout(() => releaseStaleOverlayBodyLock(), EXIT_GRACE_MS);
|
|
5777
|
+
};
|
|
5778
|
+
}, []);
|
|
5779
|
+
return scheduleRelease;
|
|
5780
|
+
}
|
|
5781
|
+
|
|
5694
5782
|
// Utility to merge classes
|
|
5695
5783
|
// Root
|
|
5696
|
-
function Dialog({ ...props }) {
|
|
5697
|
-
|
|
5784
|
+
function Dialog({ open, onOpenChange, ...props }) {
|
|
5785
|
+
const scheduleLockRelease = useOverlayBodyLockRelease(open);
|
|
5786
|
+
return (jsx(DialogPrimitive.Root, { "data-slot": "dialog", ...props, open: open, onOpenChange: (next) => {
|
|
5787
|
+
onOpenChange?.(next);
|
|
5788
|
+
if (!next)
|
|
5789
|
+
scheduleLockRelease();
|
|
5790
|
+
} }));
|
|
5698
5791
|
}
|
|
5699
5792
|
// Portal
|
|
5700
5793
|
function DialogPortal({ ...props }) {
|
|
@@ -6010,7 +6103,10 @@ function SearchableSelect({ selectedItem, onChange, getOptionKey, getOptionLabel
|
|
|
6010
6103
|
? String(getOptionLabel(selectedItem))
|
|
6011
6104
|
: undefined, children: getOptionLabel(selectedItem) }));
|
|
6012
6105
|
}, [renderTrigger, selectedItem, searchPlaceholder, getOptionLabel]);
|
|
6013
|
-
return (jsxs(Popover, { open: open, onOpenChange: handleOpenChange, modal: modal, children: [jsx(PopoverTrigger, { asChild: true, children: jsxs(Button$1, { type: "button", variant: "outline", role: "combobox", "aria-expanded": open, "aria-label": ariaLabel, disabled: disabled, className: cn('w-full justify-start min-w-40 px-3 py-1.5',
|
|
6106
|
+
return (jsxs(Popover, { open: open, onOpenChange: handleOpenChange, modal: modal, children: [jsx(PopoverTrigger, { asChild: true, children: jsxs(Button$1, { type: "button", variant: "outline", role: "combobox", "aria-expanded": open, "aria-label": ariaLabel, disabled: disabled, className: cn('w-full justify-start min-w-40 px-3 py-1.5',
|
|
6107
|
+
// This trigger is a form control, not an action, so it takes the
|
|
6108
|
+
// input disabled treatment instead of the Button's opacity fade.
|
|
6109
|
+
'disabled:bg-muted/50 disabled:text-label disabled:opacity-100', className), children: [jsxs("div", { className: "flex min-w-0 flex-1 items-center gap-2 text-left", children: [!selectedItem && !hideTriggerSearchIcon && (jsx(Search, { "aria-hidden": "true", className: "h-4 w-4 shrink-0 text-muted-foreground" })), triggerNode] }), jsx(ChevronDown, { "aria-hidden": "true", className: "h-4 w-4 shrink-0 text-muted-foreground opacity-60" })] }) }), jsx(PopoverContent, { style: { width: 'var(--radix-popover-trigger-width)' }, className: cn('p-0', popoverClassName), align: align, children: jsxs(Command, { shouldFilter: false, children: [jsx(CommandInput, { placeholder: searchPlaceholder, value: search, onValueChange: setSearch }), headerSlot, jsx(CommandList, { ref: listRef, onScroll: handleScroll, className: LIST_MAX_HEIGHT_CLASS, children: loading ? (jsxs("div", { className: "flex items-center justify-center gap-2 p-3 text-sm text-muted-foreground", children: [jsx(LoaderCircle, { className: "h-4 w-4 animate-spin" }), "Loading\u2026"] })) : visibleItems.length === 0 ? (jsx(CommandEmpty, { children: emptyMessage })) : (jsxs(CommandGroup, { className: "p-1", children: [visibleItems.map((item) => {
|
|
6014
6110
|
const key = getOptionKey(item);
|
|
6015
6111
|
const isSelected = selectedKey === key;
|
|
6016
6112
|
if (renderOption) {
|
|
@@ -27746,7 +27842,7 @@ function DateInput({ value, onChange, onBlur, name, className, min, max, disable
|
|
|
27746
27842
|
return (jsxs(Popover, { open: open, onOpenChange: handleOpenChange, modal: true, children: [jsx(PopoverAnchor, { asChild: true, children: jsxs("button", { type: "button", name: name, onBlur: onBlur, disabled: disabled, "aria-haspopup": "dialog", "aria-expanded": open, onClick: () => {
|
|
27747
27843
|
if (!disabled)
|
|
27748
27844
|
handleOpenChange(!open);
|
|
27749
|
-
}, "data-slot": "input", "data-empty": !value || undefined, className: cn('border-input-border flex h-9 w-full min-w-0 cursor-pointer items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-1 text-left shadow-[0_1px_2px_0_#0000000d] transition-[color,box-shadow] outline-none', 'focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]', 'aria-invalid:ring-destructive/20 aria-invalid:border-destructive', disabled && 'cursor-not-allowed bg-muted text-label', className), children: [jsx("span", { className: cn('truncate text-sm md:text-sm', value ? 'text-foreground' : 'text-placeholder'), children: value ? moment(value).format('DD/MM/YYYY') : placeholder }), jsx("span", { className: "inline-flex h-4 w-4 shrink-0 items-center justify-center text-muted-foreground", children: jsx(CalendarDays, { className: "h-4 w-4 stroke-[1.75]" }) })] }) }), jsx(PopoverContent, { align: "start", className: "date-range-picker-popover w-auto p-4", children: jsx(DatePicker, { inline: true, selected: value ?? null, minDate: minDate ? moment(minDate, 'YYYY-MM-DD').toDate() : undefined, maxDate: maxDate ? moment(maxDate, 'YYYY-MM-DD').toDate() : undefined, onChange: (date) => {
|
|
27845
|
+
}, "data-slot": "input", "data-empty": !value || undefined, className: cn('border-input-border flex h-9 w-full min-w-0 cursor-pointer items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-1 text-left shadow-[0_1px_2px_0_#0000000d] transition-[color,box-shadow] outline-none', 'focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]', 'aria-invalid:ring-destructive/20 aria-invalid:border-destructive', disabled && 'cursor-not-allowed bg-muted/50 text-label', className), children: [jsx("span", { className: cn('truncate text-sm md:text-sm', value ? 'text-foreground' : 'text-placeholder'), children: value ? moment(value).format('DD/MM/YYYY') : placeholder }), jsx("span", { className: "inline-flex h-4 w-4 shrink-0 items-center justify-center text-muted-foreground", children: jsx(CalendarDays, { className: "h-4 w-4 stroke-[1.75]" }) })] }) }), jsx(PopoverContent, { align: "start", className: "date-range-picker-popover w-auto p-4", children: jsx(DatePicker, { inline: true, selected: value ?? null, minDate: minDate ? moment(minDate, 'YYYY-MM-DD').toDate() : undefined, maxDate: maxDate ? moment(maxDate, 'YYYY-MM-DD').toDate() : undefined, onChange: (date) => {
|
|
27750
27846
|
onChange(date ?? undefined);
|
|
27751
27847
|
if (date)
|
|
27752
27848
|
setOpen(false);
|
|
@@ -27810,7 +27906,7 @@ const EntityHeader = ({ title, meta, status, description, descriptionLimit = 180
|
|
|
27810
27906
|
};
|
|
27811
27907
|
|
|
27812
27908
|
const Field = ({ label, required, error, icon, input, className, isSwitch = false, labelRight, }) => {
|
|
27813
|
-
return (jsxs("div", { className: cn('space-y-1', className), children: [jsxs("label", { className:
|
|
27909
|
+
return (jsxs("div", { className: cn('space-y-1', className), children: [jsxs("label", { className: cn('flex items-center justify-between gap-2 text-[13px]', error ? 'text-destructive' : 'text-label'), children: [jsxs("div", { children: [label, required && jsx("span", { className: "text-destructive", children: "*" })] }), isSwitch && labelRight] }), jsxs("div", { "data-error": error ? 'true' : undefined, className: "relative", children: [icon, input] }), error && jsx("p", { className: "text-sm text-destructive", children: error })] }));
|
|
27814
27910
|
};
|
|
27815
27911
|
|
|
27816
27912
|
const SelectSearchContext = React.createContext(null);
|
|
@@ -27846,7 +27942,7 @@ function SelectValue({ className, ...props }) {
|
|
|
27846
27942
|
return (jsx(SelectPrimitive.Value, { "data-slot": "select-value", className: cn('data-[placeholder]:!text-[var(--placeholder)] data-[placeholder]:!text-sm', className), ...props }));
|
|
27847
27943
|
}
|
|
27848
27944
|
function SelectTrigger({ className, size = 'default', children, ...props }) {
|
|
27849
|
-
return (jsxs(SelectPrimitive.Trigger, { "data-slot": "select-trigger", "data-size": size, className: cn("border-input-border cursor-pointer data-[placeholder]:!text-[var(--placeholder)] data-[placeholder]:!text-sm [&_[data-placeholder]]:!text-[var(--placeholder)] [&_[data-placeholder]]:!text-sm [&_span[data-placeholder]]:!text-[var(--placeholder)] [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-full items-center justify-between gap-2 rounded-md border bg-input-background px-3 py-2 text-sm whitespace-nowrap shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:
|
|
27945
|
+
return (jsxs(SelectPrimitive.Trigger, { "data-slot": "select-trigger", "data-size": size, className: cn("border-input-border cursor-pointer data-[placeholder]:!text-[var(--placeholder)] data-[placeholder]:!text-sm [&_[data-placeholder]]:!text-[var(--placeholder)] [&_[data-placeholder]]:!text-sm [&_span[data-placeholder]]:!text-[var(--placeholder)] [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-full items-center justify-between gap-2 rounded-md border bg-input-background px-3 py-2 text-sm whitespace-nowrap shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:bg-muted/50 disabled:text-label data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className), ...props, children: [children, jsx(SelectPrimitive.Icon, { asChild: true, children: jsx(ChevronDown, { className: "size-4 text-gray-600" }) })] }));
|
|
27850
27946
|
}
|
|
27851
27947
|
function SelectContent({ className, children, position = 'popper', searchable = true, // default: all selects are searchable
|
|
27852
27948
|
searchPlaceholder = 'Search...', ...props }) {
|
|
@@ -28409,10 +28505,15 @@ const ICON_TONE_CLASSES = {
|
|
|
28409
28505
|
indigo: 'bg-indigo-100 text-indigo-600',
|
|
28410
28506
|
amber: 'bg-amber-100 text-amber-600',
|
|
28411
28507
|
};
|
|
28412
|
-
const MetricCard = ({ value, label, tone = 'neutral', icon, iconTone = 'blue', className, }) => {
|
|
28508
|
+
const MetricCard = ({ value, label, tone = 'neutral', icon, iconTone = 'blue', orientation = 'vertical', className, }) => {
|
|
28413
28509
|
// ── Icon variant — matches the new financial-summary card design ──
|
|
28414
28510
|
if (icon) {
|
|
28415
|
-
|
|
28511
|
+
const isHorizontal = orientation === 'horizontal';
|
|
28512
|
+
return (jsxs("div", { style: { boxShadow: '0 1px 2px 0 rgba(0, 0, 0, 0.05)' }, className: cn('flex min-w-[180px] flex-1 rounded-xl border border-border bg-card', isHorizontal
|
|
28513
|
+
? 'items-center gap-3 px-3.5 py-2.5'
|
|
28514
|
+
: 'flex-col gap-3 p-4', className), children: [jsx("span", { className: cn('inline-flex shrink-0 items-center justify-center rounded-lg', isHorizontal
|
|
28515
|
+
? 'h-9 w-9 [&_svg]:h-[18px] [&_svg]:w-[18px]'
|
|
28516
|
+
: 'h-[38px] w-[38px] [&_svg]:h-5 [&_svg]:w-5', ICON_TONE_CLASSES[iconTone]), children: icon }), jsxs("div", { className: "flex min-w-0 flex-col gap-1", children: [jsx("span", { className: cn('font-semibold leading-none text-foreground', isHorizontal ? 'text-lg' : 'text-xl'), children: value }), jsx("span", { className: cn('font-light leading-none text-label', isHorizontal ? 'text-xs' : 'text-sm'), children: label })] })] }));
|
|
28416
28517
|
}
|
|
28417
28518
|
// ── Compact variant (original) ──
|
|
28418
28519
|
const isHighlighted = tone === 'highlighted';
|
|
@@ -57440,7 +57541,14 @@ function DetailPageSkeleton({ sections = 3, }) {
|
|
|
57440
57541
|
return (jsxs("div", { className: "space-y-5", children: [jsxs("div", { className: "flex items-center justify-between gap-4", children: [jsxs("div", { className: "flex items-center gap-3", children: [jsx(SquareSkeleton, { height: 32, width: 32, rounded: "md" }), jsxs("div", { className: "space-y-1.5", children: [jsx(SquareSkeleton, { height: 20, width: 192, rounded: "full" }), jsx(SquareSkeleton, { height: 12, width: 128, rounded: "full" })] })] }), jsx(SquareSkeleton, { height: 36, width: 128, rounded: "md" })] }), Array.from({ length: sections }).map((_, s) => (jsxs("div", { className: "overflow-hidden rounded-xl border border-border bg-card", children: [jsxs("div", { className: "flex items-center gap-3 border-b border-border bg-secondary px-5 py-4", children: [jsx(SquareSkeleton, { height: 32, width: 32, rounded: "lg" }), jsx(SquareSkeleton, { height: 16, width: 160, rounded: "full" })] }), jsx("div", { className: "grid grid-cols-1 gap-5 p-5 md:grid-cols-3", children: Array.from({ length: 6 }).map((_, i) => (jsxs("div", { className: "space-y-1.5", children: [jsx(SquareSkeleton, { height: 10, width: 80, rounded: "full" }), jsx(SquareSkeleton, { height: 14, width: 128, rounded: "full" })] }, i))) })] }, s)))] }));
|
|
57441
57542
|
}
|
|
57442
57543
|
|
|
57443
|
-
const SlideOut =
|
|
57544
|
+
const SlideOut = ({ open, onOpenChange, ...props }) => {
|
|
57545
|
+
const scheduleLockRelease = useOverlayBodyLockRelease(open);
|
|
57546
|
+
return (jsx(DialogPrimitive.Root, { ...props, open: open, onOpenChange: (next) => {
|
|
57547
|
+
onOpenChange?.(next);
|
|
57548
|
+
if (!next)
|
|
57549
|
+
scheduleLockRelease();
|
|
57550
|
+
} }));
|
|
57551
|
+
};
|
|
57444
57552
|
const SlideOutTrigger = DialogPrimitive.Trigger;
|
|
57445
57553
|
const SlideOutClose = DialogPrimitive.Close;
|
|
57446
57554
|
const SlideOutPortal = DialogPrimitive.Portal;
|
|
@@ -64114,6 +64222,76 @@ const DropZone = ({ uploadSubject, supportedFormats, maxSize, maxFiles, accept,
|
|
|
64114
64222
|
} }), jsx("span", { className: "inline-flex h-10 w-10 items-center justify-center text-foreground", children: jsx(Upload, { className: "h-10 w-10", strokeWidth: 1 }) }), jsxs("p", { className: "text-sm text-foreground", children: ["Drag & Drop or", ' ', jsx("span", { className: "font-medium text-primary", children: "Click to upload" }), ' ', uploadSubject] }), jsxs("div", { className: "space-y-1 text-xs text-label", children: [supportedFormats && (jsx("p", { className: "font-semibold text-label", children: supportedFormats })), jsxs("p", { children: ["Max: ", maxSize, "MB \u00A0\u2022\u00A0 Maximum ", maxFiles, " file", maxFiles === 1 ? '' : 's'] })] })] }));
|
|
64115
64223
|
};
|
|
64116
64224
|
|
|
64225
|
+
const FILE_TYPE_PATTERNS = {
|
|
64226
|
+
PDF: /\.pdf($|\?)/i,
|
|
64227
|
+
IMAGE: /\.(jpg|jpeg|png|gif|bmp|webp|svg|heic|heif)($|\?)/i,
|
|
64228
|
+
DOCUMENT: /\.(doc|docx|xls|xlsx|ppt|pptx)($|\?)/i,
|
|
64229
|
+
VIDEO: /\.(mp4|m4v|avi|mov|wmv|flv|webm|mkv|ogv|mpe?g|3gp)($|\?)/i,
|
|
64230
|
+
AUDIO: /\.(mp3|wav|flac|aac|ogg)($|\?)/i,
|
|
64231
|
+
};
|
|
64232
|
+
const isFileType = {
|
|
64233
|
+
pdf: (url) => FILE_TYPE_PATTERNS.PDF.test(url),
|
|
64234
|
+
image: (url) => FILE_TYPE_PATTERNS.IMAGE.test(url),
|
|
64235
|
+
document: (url) => FILE_TYPE_PATTERNS.DOCUMENT.test(url),
|
|
64236
|
+
video: (url) => FILE_TYPE_PATTERNS.VIDEO.test(url),
|
|
64237
|
+
audio: (url) => FILE_TYPE_PATTERNS.AUDIO.test(url),
|
|
64238
|
+
};
|
|
64239
|
+
|
|
64240
|
+
/** Seek to ~1st frame for static video thumbnails (HTML5 media fragment). */
|
|
64241
|
+
const videoThumbnailSrc = (src) => {
|
|
64242
|
+
if (!src)
|
|
64243
|
+
return src;
|
|
64244
|
+
const [base] = src.split('#');
|
|
64245
|
+
return `${base}#t=0.1`;
|
|
64246
|
+
};
|
|
64247
|
+
const createVideoMediaItem = (src, index, idPrefix = 'vid') => ({
|
|
64248
|
+
id: `${idPrefix}-${index}`,
|
|
64249
|
+
kind: 'video',
|
|
64250
|
+
src,
|
|
64251
|
+
thumbSrc: videoThumbnailSrc(src),
|
|
64252
|
+
});
|
|
64253
|
+
const isPdfMediaItem = (item) => item.isPdf === true ||
|
|
64254
|
+
isFileType.pdf(item.src) ||
|
|
64255
|
+
(item.kind === 'certificate' && !isFileType.image(item.src));
|
|
64256
|
+
const MEDIA_KIND_ORDER = ['image', 'video', 'certificate'];
|
|
64257
|
+
const MEDIA_KIND_LABEL = {
|
|
64258
|
+
image: 'Images',
|
|
64259
|
+
video: 'Videos',
|
|
64260
|
+
certificate: 'Certificates',
|
|
64261
|
+
};
|
|
64262
|
+
const groupItemsByKind = (items) => {
|
|
64263
|
+
const out = {
|
|
64264
|
+
image: [],
|
|
64265
|
+
video: [],
|
|
64266
|
+
certificate: [],
|
|
64267
|
+
};
|
|
64268
|
+
for (const item of items) {
|
|
64269
|
+
out[item.kind].push(item);
|
|
64270
|
+
}
|
|
64271
|
+
return out;
|
|
64272
|
+
};
|
|
64273
|
+
const availableKinds = (items) => MEDIA_KIND_ORDER.filter((kind) => items.some((m) => m.kind === kind));
|
|
64274
|
+
|
|
64275
|
+
/**
|
|
64276
|
+
* What a card should render as. The MIME type decides when we have one, but it
|
|
64277
|
+
* can't be trusted alone: browsers report an empty `type` for some files, and
|
|
64278
|
+
* URL-imported items carry the short forms `'image'`/`'video'` from
|
|
64279
|
+
* `inferTypeFromUrl`. Extension patterns are the fallback so a video never
|
|
64280
|
+
* lands in the image branch and paints a broken thumbnail.
|
|
64281
|
+
*/
|
|
64282
|
+
const fileKind = (file) => {
|
|
64283
|
+
const type = file.type ?? '';
|
|
64284
|
+
if (type.startsWith('video/') || type === 'video')
|
|
64285
|
+
return 'video';
|
|
64286
|
+
if (type.startsWith('image/') || type === 'image')
|
|
64287
|
+
return 'image';
|
|
64288
|
+
const ref = file.name || file.url || '';
|
|
64289
|
+
if (isFileType.video(ref))
|
|
64290
|
+
return 'video';
|
|
64291
|
+
if (isFileType.image(ref))
|
|
64292
|
+
return 'image';
|
|
64293
|
+
return 'other';
|
|
64294
|
+
};
|
|
64117
64295
|
const formatFileSize = (bytes) => {
|
|
64118
64296
|
if (!bytes && bytes !== 0)
|
|
64119
64297
|
return '';
|
|
@@ -64165,15 +64343,30 @@ const validateFile = (file, maxSize, accept) => {
|
|
|
64165
64343
|
const generateId = () => Math.random().toString(36).slice(2, 11);
|
|
64166
64344
|
const fileNameFromUrl = (url) => url.split('/').pop()?.trim() || 'URL File';
|
|
64167
64345
|
|
|
64346
|
+
const KIND_ICON$1 = {
|
|
64347
|
+
image: Image$1,
|
|
64348
|
+
video: Video,
|
|
64349
|
+
other: FileText,
|
|
64350
|
+
};
|
|
64168
64351
|
const FileCard = ({ file, sortable, disabled = false, onRemove, onPreview, }) => {
|
|
64169
64352
|
const { attributes, listeners, setNodeRef, transform, transition, isDragging, } = useSortable({ id: file.id, disabled: disabled || !sortable });
|
|
64170
64353
|
const style = {
|
|
64171
64354
|
transform: CSS$1.Transform.toString(transform),
|
|
64172
64355
|
transition,
|
|
64173
64356
|
};
|
|
64174
|
-
const
|
|
64175
|
-
const
|
|
64176
|
-
|
|
64357
|
+
const kind = fileKind(file);
|
|
64358
|
+
const previewSrc = file.preview ?? file.url;
|
|
64359
|
+
const KindIcon = KIND_ICON$1[kind];
|
|
64360
|
+
// Falls back to the icon tile when the media itself won't load, so a dead
|
|
64361
|
+
// object URL or an expired link never renders as a broken thumbnail.
|
|
64362
|
+
const [mediaFailed, setMediaFailed] = useState(false);
|
|
64363
|
+
useEffect(() => setMediaFailed(false), [previewSrc]);
|
|
64364
|
+
const showMedia = !!previewSrc && !mediaFailed;
|
|
64365
|
+
return (jsxs("div", { ref: setNodeRef, style: style, className: cn('group relative w-[148px] shrink-0 rounded-xl border border-border bg-muted p-2', isDragging && 'opacity-60 shadow-lg ring-2 ring-primary/20'), children: [jsxs("div", { className: "flex items-center justify-between px-1 pt-0.5 pb-1.5", children: [sortable ? (jsx("button", { type: "button", ...attributes, ...listeners, disabled: disabled, className: "inline-flex h-5 w-5 cursor-grab items-center justify-center rounded text-muted-foreground hover:text-foreground active:cursor-grabbing touch-none", "aria-label": `Reorder ${file.name}`, children: jsx(GripHorizontal, { className: "h-3.5 w-3.5" }) })) : (jsx("span", { "aria-hidden": "true", className: "inline-block h-5 w-5" })), jsx("button", { type: "button", onClick: () => onRemove(file.id), disabled: disabled, className: "inline-flex h-5 w-5 cursor-pointer items-center justify-center rounded text-muted-foreground hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50", "aria-label": `Remove ${file.name}`, children: jsx(X$2, { className: "h-3.5 w-3.5" }) })] }), jsxs("div", { className: cn('relative aspect-square overflow-hidden rounded-lg bg-muted', onPreview && 'cursor-pointer'), onClick: onPreview ? () => onPreview(file) : undefined, role: onPreview ? 'button' : undefined, tabIndex: onPreview ? 0 : undefined, children: [kind === 'image' && showMedia ? (jsx("img", { src: previewSrc, alt: file.name, onError: () => setMediaFailed(true), className: "h-full w-full object-cover" })) : kind === 'video' && showMedia ? (jsxs("div", { className: "relative h-full w-full", children: [jsx("video", { src: videoThumbnailSrc(previewSrc), muted: true, playsInline: true, preload: "metadata", onLoadedMetadata: (e) => {
|
|
64366
|
+
if (e.currentTarget.currentTime === 0) {
|
|
64367
|
+
e.currentTarget.currentTime = 0.1;
|
|
64368
|
+
}
|
|
64369
|
+
}, onError: () => setMediaFailed(true), className: "h-full w-full bg-black object-cover" }), jsx("span", { className: "pointer-events-none absolute inset-0 flex items-center justify-center", children: jsx("span", { className: "inline-flex h-7 w-7 items-center justify-center rounded-full bg-black/55", children: jsx(Play, { className: "h-3.5 w-3.5 translate-x-[1px] fill-white text-white" }) }) })] })) : (jsx("div", { className: "flex h-full w-full items-center justify-center", children: jsx(KindIcon, { className: "h-10 w-10 text-muted-foreground" }) })), jsx("span", { className: "absolute left-1.5 top-1.5 inline-flex h-5 w-5 items-center justify-center rounded bg-black/40 text-white", children: jsx(KindIcon, { className: "h-3 w-3" }) })] }), jsxs("div", { className: "mt-2 space-y-0.5 px-0.5", children: [jsx("p", { className: "truncate text-sm font-medium text-foreground", title: file.name, children: file.name }), jsx("p", { className: "text-xs text-muted-foreground", children: file.size
|
|
64177
64370
|
? formatFileSize(file.size)
|
|
64178
64371
|
: file.source === 'url'
|
|
64179
64372
|
? 'URL'
|
|
@@ -65040,56 +65233,6 @@ const InventoryItemCard = ({ stockId, status, name, description, imageUrl, onCli
|
|
|
65040
65233
|
valueLabel !== undefined) && (jsxs("div", { className: "mt-3 grid grid-cols-3 gap-3 border-t border-border pt-3", children: [items !== undefined && (jsxs("div", { className: "min-w-0", children: [jsx("p", { className: "text-xs text-muted-foreground", children: "Items" }), jsx("p", { className: "mt-0.5 truncate text-sm font-normal tabular-nums text-foreground", children: items })] })), totalCarat !== undefined && (jsxs("div", { className: "min-w-0", children: [jsx("p", { className: "text-xs text-muted-foreground", children: "Total ct" }), jsxs("p", { className: "mt-0.5 truncate text-sm font-normal tabular-nums text-foreground", children: [totalCarat.toFixed(2), " ct"] })] })), valueLabel !== undefined && (jsxs("div", { className: "min-w-0", children: [jsx("p", { className: "text-xs text-muted-foreground", children: "Value" }), jsx(TooltipProvider, { delayDuration: 200, children: jsxs(Tooltip, { children: [jsx(TooltipTrigger, { asChild: true, children: jsx("p", { className: "mt-0.5 cursor-default truncate text-sm font-medium tabular-nums text-foreground", children: valueLabel }) }), jsx(TooltipContent, { side: "top", children: valueLabel })] }) })] }))] }))] }), (modifiedLabel || onView || onDuplicate || menu) && (jsxs("div", { className: "flex items-center justify-between border-t border-border px-4 py-2", children: [modifiedLabel ? (jsxs("p", { className: "text-xs text-muted-foreground tabular-nums", children: ["Modified: ", modifiedLabel] })) : (jsx("span", {})), jsxs("div", { className: "flex items-center gap-1", onClick: (e) => e.stopPropagation(), children: [onView && (jsx("button", { type: "button", "aria-label": "View", onClick: stop(onView), 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", children: jsx(Eye, { className: "h-4 w-4" }) })), onDuplicate && (jsx("button", { type: "button", "aria-label": "Duplicate", onClick: stop(onDuplicate), 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", children: jsx(Copy, { className: "h-4 w-4" }) })), menu] })] }))] }));
|
|
65041
65234
|
};
|
|
65042
65235
|
|
|
65043
|
-
const FILE_TYPE_PATTERNS = {
|
|
65044
|
-
PDF: /\.pdf($|\?)/i,
|
|
65045
|
-
IMAGE: /\.(jpg|jpeg|png|gif|bmp|webp|svg|heic|heif)($|\?)/i,
|
|
65046
|
-
DOCUMENT: /\.(doc|docx|xls|xlsx|ppt|pptx)($|\?)/i,
|
|
65047
|
-
VIDEO: /\.(mp4|avi|mov|wmv|flv|webm)($|\?)/i,
|
|
65048
|
-
AUDIO: /\.(mp3|wav|flac|aac|ogg)($|\?)/i,
|
|
65049
|
-
};
|
|
65050
|
-
const isFileType = {
|
|
65051
|
-
pdf: (url) => FILE_TYPE_PATTERNS.PDF.test(url),
|
|
65052
|
-
image: (url) => FILE_TYPE_PATTERNS.IMAGE.test(url),
|
|
65053
|
-
document: (url) => FILE_TYPE_PATTERNS.DOCUMENT.test(url),
|
|
65054
|
-
video: (url) => FILE_TYPE_PATTERNS.VIDEO.test(url),
|
|
65055
|
-
audio: (url) => FILE_TYPE_PATTERNS.AUDIO.test(url),
|
|
65056
|
-
};
|
|
65057
|
-
|
|
65058
|
-
/** Seek to ~1st frame for static video thumbnails (HTML5 media fragment). */
|
|
65059
|
-
const videoThumbnailSrc = (src) => {
|
|
65060
|
-
if (!src)
|
|
65061
|
-
return src;
|
|
65062
|
-
const [base] = src.split('#');
|
|
65063
|
-
return `${base}#t=0.1`;
|
|
65064
|
-
};
|
|
65065
|
-
const createVideoMediaItem = (src, index, idPrefix = 'vid') => ({
|
|
65066
|
-
id: `${idPrefix}-${index}`,
|
|
65067
|
-
kind: 'video',
|
|
65068
|
-
src,
|
|
65069
|
-
thumbSrc: videoThumbnailSrc(src),
|
|
65070
|
-
});
|
|
65071
|
-
const isPdfMediaItem = (item) => item.isPdf === true ||
|
|
65072
|
-
isFileType.pdf(item.src) ||
|
|
65073
|
-
(item.kind === 'certificate' && !isFileType.image(item.src));
|
|
65074
|
-
const MEDIA_KIND_ORDER = ['image', 'video', 'certificate'];
|
|
65075
|
-
const MEDIA_KIND_LABEL = {
|
|
65076
|
-
image: 'Images',
|
|
65077
|
-
video: 'Videos',
|
|
65078
|
-
certificate: 'Certificates',
|
|
65079
|
-
};
|
|
65080
|
-
const groupItemsByKind = (items) => {
|
|
65081
|
-
const out = {
|
|
65082
|
-
image: [],
|
|
65083
|
-
video: [],
|
|
65084
|
-
certificate: [],
|
|
65085
|
-
};
|
|
65086
|
-
for (const item of items) {
|
|
65087
|
-
out[item.kind].push(item);
|
|
65088
|
-
}
|
|
65089
|
-
return out;
|
|
65090
|
-
};
|
|
65091
|
-
const availableKinds = (items) => MEDIA_KIND_ORDER.filter((kind) => items.some((m) => m.kind === kind));
|
|
65092
|
-
|
|
65093
65236
|
const useMediaGallery = (items) => {
|
|
65094
65237
|
const itemsByKind = useMemo(() => groupItemsByKind(items), [items]);
|
|
65095
65238
|
const kinds = useMemo(() => availableKinds(items), [items]);
|
|
@@ -67517,5 +67660,5 @@ var RichTextAreaImpl = /*#__PURE__*/Object.freeze({
|
|
|
67517
67660
|
RichTextarea: RichTextarea
|
|
67518
67661
|
});
|
|
67519
67662
|
|
|
67520
|
-
export { ActionBadge, ActionButtonWithTooltip, AdvancedSearchDrawer, Alert, ApiComboBox, AppSidebar, AuditEntryCard, AuditHistoryPanel, AuditTimeline, AuditTimelineShimmer, Badge, BadgeType, BusinessContactStatusFilter, Button, CUSTOMER_AUDIT_CONFIG, CertificateRowList, ChangePill, Collapsible, CollapsibleCard, CollapsibleContent, CollapsibleTrigger, ConfirmDialog, ContactTypeFilter, CopyButton, CreateFormPageHeader, CreateFormPageShell, CurrencyDisplayTabs, CurrencyInput, CurrencyToggle, CustomCombobox, CustomTable, CustomizeColumnsDrawer, DIAMOND_AUDIT_CONFIG, DashboardShell, DataEditableTable, DataTable, DateInput, DetailChip, DetailPageLayout, DetailPageSkeleton, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EntityHeader, Field, FieldSkeleton, FileUploader, FilterMultiSelect, FilterSelect, FormSectionCard, FormSectionCardSkeleton, GEM_AUDIT_CONFIG, HistoryEntryCard, HistoryTimeline, HistoryTimelineShimmer, INVOICE_AUDIT_CONFIG, IconButton, IdHyperlinkText, InfoBanner, InventoryComboBox, InventoryItemCard, InventoryItemRow, InvoiceComboBox, KYCStatusFilter, KeyValueGrid, LAYOUT_AUDIT_CONFIG, LabeledToggle, MEMO_IN_AUDIT_CONFIG, MEMO_OUT_AUDIT_CONFIG, MediaGallery, MemoInComboBox, MetricCard, MetricRow, MetricTile, Modal, MoreInfoPanel, MoreInfoTrigger, Navbar, NavbarActions, NavbarAvatar, NavbarIconButton, NavbarSearch, NavbarTitle, NumberInput, NumberedStepCard, OtpInput, OwnershipFilter, OwnershipSplitCard, PROFORMA_AUDIT_CONFIG, PageHeader, PageTabs, Pagination, PaginationSelect, PartnerShareCard, PriceInput, Protected, PurchaseOrderComboBox, QUOTATION_AUDIT_CONFIG, RadioCardGroup, ReadMoreText, RefreshButton, RichTextarea$1 as RichTextarea, SEARCHABLE_SELECT_PAGE_SIZE, SafeImage, SearchBox, SearchInput, SearchableSelect, SectionCard, SectionIcon, SegmentedControl, ShareDialog, ShareMenu, ShimmerTable, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupLabel, SidebarHeader, SidebarInset, SidebarMenu, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, SlideOut, SlideOutClose, SlideOutContent, SlideOutDescription, SlideOutHeader, SlideOutOverlay, SlideOutPortal, SlideOutTitle, SlideOutTrigger, Slider, SpecList, Spinner, SquareSkeleton, StatusBadge$1 as StatusBadge, StatusFilter, Stepper, StockTypeFilter, TablePagination, TableSkeleton, Tabs, TabsContent, TabsList, TabsTrigger, TagsInput, TextHyperlink, ToggleSwitch, TruncateTooltip, WarehouseComboBox, WarehouseFilter, ZoomSplitViewer, badgeVariants, buildBulkShareTitle, buildInventoryPublicUrl, buildInventoryRowProps, buildInventoryShareTitle, buildWhatsappUrl, buttonVariants, cn, createVideoMediaItem, dropdownMenuItemDestructiveClass, formatFileSize, generateActionDescription, generateTitle, getBadgeTypeForStatus, getChangePills, getInitials, iconButtonVariants, isPathActive, notify, renderBadge, useAuditShowMore, useBadge, useButton, useDropdownMenu, useNavbar, useSidebar, videoThumbnailSrc };
|
|
67663
|
+
export { ActionBadge, ActionButtonWithTooltip, AdvancedSearchDrawer, Alert, ApiComboBox, AppSidebar, AuditEntryCard, AuditHistoryPanel, AuditTimeline, AuditTimelineShimmer, Badge, BadgeType, BusinessContactStatusFilter, Button, CUSTOMER_AUDIT_CONFIG, CertificateRowList, ChangePill, Collapsible, CollapsibleCard, CollapsibleContent, CollapsibleTrigger, ConfirmDialog, ContactTypeFilter, CopyButton, CreateFormPageHeader, CreateFormPageShell, CurrencyDisplayTabs, CurrencyInput, CurrencyToggle, CustomCombobox, CustomTable, CustomizeColumnsDrawer, DIAMOND_AUDIT_CONFIG, DashboardShell, DataEditableTable, DataTable, DateInput, DetailChip, DetailPageLayout, DetailPageSkeleton, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EntityHeader, Field, FieldSkeleton, FileUploader, FilterMultiSelect, FilterSelect, FormSectionCard, FormSectionCardSkeleton, GEM_AUDIT_CONFIG, HistoryEntryCard, HistoryTimeline, HistoryTimelineShimmer, INVOICE_AUDIT_CONFIG, IconButton, IdHyperlinkText, InfoBanner, InventoryComboBox, InventoryItemCard, InventoryItemRow, InvoiceComboBox, KYCStatusFilter, KeyValueGrid, LAYOUT_AUDIT_CONFIG, LabeledToggle, MEMO_IN_AUDIT_CONFIG, MEMO_OUT_AUDIT_CONFIG, MediaGallery, MemoInComboBox, MetricCard, MetricRow, MetricTile, Modal, MoreInfoPanel, MoreInfoTrigger, Navbar, NavbarActions, NavbarAvatar, NavbarIconButton, NavbarSearch, NavbarTitle, NumberInput, NumberedStepCard, OtpInput, OwnershipFilter, OwnershipSplitCard, PROFORMA_AUDIT_CONFIG, PageHeader, PageTabs, Pagination, PaginationSelect, PartnerShareCard, PriceInput, Protected, PurchaseOrderComboBox, QUOTATION_AUDIT_CONFIG, RadioCardGroup, ReadMoreText, RefreshButton, RichTextarea$1 as RichTextarea, SEARCHABLE_SELECT_PAGE_SIZE, SafeImage, SearchBox, SearchInput, SearchableSelect, SectionCard, SectionIcon, SegmentedControl, ShareDialog, ShareMenu, ShimmerTable, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupLabel, SidebarHeader, SidebarInset, SidebarMenu, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, SlideOut, SlideOutClose, SlideOutContent, SlideOutDescription, SlideOutHeader, SlideOutOverlay, SlideOutPortal, SlideOutTitle, SlideOutTrigger, Slider, SpecList, Spinner, SquareSkeleton, StatusBadge$1 as StatusBadge, StatusFilter, Stepper, StockTypeFilter, TablePagination, TableSkeleton, Tabs, TabsContent, TabsList, TabsTrigger, TagsInput, TextHyperlink, ToggleSwitch, TruncateTooltip, WarehouseComboBox, WarehouseFilter, ZoomSplitViewer, badgeVariants, buildBulkShareTitle, buildInventoryPublicUrl, buildInventoryRowProps, buildInventoryShareTitle, buildWhatsappUrl, buttonVariants, cn, createVideoMediaItem, dropdownMenuItemDestructiveClass, formatFileSize, generateActionDescription, generateTitle, getBadgeTypeForStatus, getChangePills, getInitials, iconButtonVariants, isPathActive, notify, releaseStaleOverlayBodyLock, renderBadge, useAuditShowMore, useBadge, useButton, useDropdownMenu, useNavbar, useSidebar, videoThumbnailSrc };
|
|
67521
67664
|
//# sourceMappingURL=index.esm.js.map
|