@zentauri-ui/zentauri-components 1.6.0 → 1.6.3

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 (66) hide show
  1. package/README.md +75 -0
  2. package/dist/{chunk-BMFPUQZC.js → chunk-4F56BLZQ.js} +3 -3
  3. package/dist/{chunk-BMFPUQZC.js.map → chunk-4F56BLZQ.js.map} +1 -1
  4. package/dist/{chunk-662PJBZD.js → chunk-CXNDE4VC.js} +22 -22
  5. package/dist/chunk-CXNDE4VC.js.map +1 -0
  6. package/dist/{chunk-YRTGORVB.js → chunk-GPAUYUM3.js} +4 -4
  7. package/dist/{chunk-YRTGORVB.js.map → chunk-GPAUYUM3.js.map} +1 -1
  8. package/dist/{chunk-Z7QK472J.mjs → chunk-JE6B3DHW.mjs} +4 -4
  9. package/dist/{chunk-Z7QK472J.mjs.map → chunk-JE6B3DHW.mjs.map} +1 -1
  10. package/dist/{chunk-J4LG43O2.js → chunk-KA5MORDC.js} +4 -4
  11. package/dist/{chunk-J4LG43O2.js.map → chunk-KA5MORDC.js.map} +1 -1
  12. package/dist/{chunk-Y3AHRRNM.mjs → chunk-OHST7AHC.mjs} +27 -27
  13. package/dist/chunk-OHST7AHC.mjs.map +1 -0
  14. package/dist/{chunk-YD3LVW7V.mjs → chunk-OZ4SFJ3S.mjs} +22 -22
  15. package/dist/chunk-OZ4SFJ3S.mjs.map +1 -0
  16. package/dist/{chunk-3OXIZ4ZO.js → chunk-QWC2QBRJ.js} +3 -3
  17. package/dist/{chunk-3OXIZ4ZO.js.map → chunk-QWC2QBRJ.js.map} +1 -1
  18. package/dist/{chunk-3PC7XLJX.js → chunk-TIPNRH26.js} +27 -27
  19. package/dist/chunk-TIPNRH26.js.map +1 -0
  20. package/dist/{chunk-TFWKF3DR.mjs → chunk-V2PEOBAT.mjs} +4 -4
  21. package/dist/{chunk-TFWKF3DR.mjs.map → chunk-V2PEOBAT.mjs.map} +1 -1
  22. package/dist/{chunk-J5QJEKY2.mjs → chunk-V3XNH7Y4.mjs} +3 -3
  23. package/dist/{chunk-J5QJEKY2.mjs.map → chunk-V3XNH7Y4.mjs.map} +1 -1
  24. package/dist/{chunk-4ECCMHAX.mjs → chunk-WNLDXBS6.mjs} +3 -3
  25. package/dist/{chunk-4ECCMHAX.mjs.map → chunk-WNLDXBS6.mjs.map} +1 -1
  26. package/dist/ui/card/animated.js +7 -7
  27. package/dist/ui/card/animated.mjs +2 -2
  28. package/dist/ui/card.js +12 -12
  29. package/dist/ui/card.mjs +2 -2
  30. package/dist/ui/divider/animated.js +2 -2
  31. package/dist/ui/divider/animated.mjs +1 -1
  32. package/dist/ui/divider.js +6 -6
  33. package/dist/ui/divider.mjs +2 -2
  34. package/dist/ui/drawer/animated.js +11 -11
  35. package/dist/ui/drawer/animated.mjs +2 -2
  36. package/dist/ui/drawer.js +11 -11
  37. package/dist/ui/drawer.mjs +1 -1
  38. package/dist/ui/modal/animated.js +4 -4
  39. package/dist/ui/modal/animated.mjs +1 -1
  40. package/dist/ui/modal.js +12 -12
  41. package/dist/ui/modal.mjs +2 -2
  42. package/dist/ui/select.js +13 -13
  43. package/dist/ui/select.js.map +1 -1
  44. package/dist/ui/select.mjs +13 -13
  45. package/dist/ui/select.mjs.map +1 -1
  46. package/dist/ui/tabs/animated.js +2 -2
  47. package/dist/ui/tabs/animated.mjs +1 -1
  48. package/dist/ui/tabs.js +9 -9
  49. package/dist/ui/tabs.mjs +1 -1
  50. package/dist/ui/toggle/animated.js +3 -3
  51. package/dist/ui/toggle/animated.mjs +1 -1
  52. package/dist/ui/toggle.js +5 -5
  53. package/dist/ui/toggle.mjs +2 -2
  54. package/package.json +1 -1
  55. package/src/ui/card/variants.ts +2 -2
  56. package/src/ui/divider/divider-base.tsx +1 -1
  57. package/src/ui/drawer/drawer-base.tsx +1 -1
  58. package/src/ui/drawer/variants.ts +1 -1
  59. package/src/ui/modal/modal-base.tsx +1 -1
  60. package/src/ui/select/variants.ts +13 -13
  61. package/src/ui/tabs/variants.ts +20 -20
  62. package/src/ui/toggle/variants.ts +25 -25
  63. package/dist/chunk-3PC7XLJX.js.map +0 -1
  64. package/dist/chunk-662PJBZD.js.map +0 -1
  65. package/dist/chunk-Y3AHRRNM.mjs.map +0 -1
  66. package/dist/chunk-YD3LVW7V.mjs.map +0 -1
@@ -1,6 +1,6 @@
1
1
  "use client";
2
- import { useDrawerContext, drawerOverlayVariants, drawerContentVariants } from '../../chunk-TFWKF3DR.mjs';
3
- export { Drawer, DrawerBody, DrawerClose, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger } from '../../chunk-TFWKF3DR.mjs';
2
+ import { useDrawerContext, drawerOverlayVariants, drawerContentVariants } from '../../chunk-V2PEOBAT.mjs';
3
+ export { Drawer, DrawerBody, DrawerClose, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger } from '../../chunk-V2PEOBAT.mjs';
4
4
  import { useFocusManagement } from '../../chunk-K6YI4FJO.mjs';
5
5
  import '../../chunk-PMAF6FBF.mjs';
6
6
  import { cn } from '../../chunk-4D54YOL6.mjs';
package/dist/ui/drawer.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkJ4LG43O2_js = require('../chunk-J4LG43O2.js');
4
+ var chunkKA5MORDC_js = require('../chunk-KA5MORDC.js');
5
5
  require('../chunk-GBWGVNDA.js');
6
6
  require('../chunk-UIYFEP3I.js');
7
7
  require('../chunk-ZS5756ZC.js');
@@ -10,43 +10,43 @@ require('../chunk-ZS5756ZC.js');
10
10
 
11
11
  Object.defineProperty(exports, "Drawer", {
12
12
  enumerable: true,
13
- get: function () { return chunkJ4LG43O2_js.Drawer; }
13
+ get: function () { return chunkKA5MORDC_js.Drawer; }
14
14
  });
15
15
  Object.defineProperty(exports, "DrawerBody", {
16
16
  enumerable: true,
17
- get: function () { return chunkJ4LG43O2_js.DrawerBody; }
17
+ get: function () { return chunkKA5MORDC_js.DrawerBody; }
18
18
  });
19
19
  Object.defineProperty(exports, "DrawerClose", {
20
20
  enumerable: true,
21
- get: function () { return chunkJ4LG43O2_js.DrawerClose; }
21
+ get: function () { return chunkKA5MORDC_js.DrawerClose; }
22
22
  });
23
23
  Object.defineProperty(exports, "DrawerContent", {
24
24
  enumerable: true,
25
- get: function () { return chunkJ4LG43O2_js.DrawerContent; }
25
+ get: function () { return chunkKA5MORDC_js.DrawerContent; }
26
26
  });
27
27
  Object.defineProperty(exports, "DrawerFooter", {
28
28
  enumerable: true,
29
- get: function () { return chunkJ4LG43O2_js.DrawerFooter; }
29
+ get: function () { return chunkKA5MORDC_js.DrawerFooter; }
30
30
  });
31
31
  Object.defineProperty(exports, "DrawerHeader", {
32
32
  enumerable: true,
33
- get: function () { return chunkJ4LG43O2_js.DrawerHeader; }
33
+ get: function () { return chunkKA5MORDC_js.DrawerHeader; }
34
34
  });
35
35
  Object.defineProperty(exports, "DrawerTitle", {
36
36
  enumerable: true,
37
- get: function () { return chunkJ4LG43O2_js.DrawerTitle; }
37
+ get: function () { return chunkKA5MORDC_js.DrawerTitle; }
38
38
  });
39
39
  Object.defineProperty(exports, "DrawerTrigger", {
40
40
  enumerable: true,
41
- get: function () { return chunkJ4LG43O2_js.DrawerTrigger; }
41
+ get: function () { return chunkKA5MORDC_js.DrawerTrigger; }
42
42
  });
43
43
  Object.defineProperty(exports, "drawerContentVariants", {
44
44
  enumerable: true,
45
- get: function () { return chunkJ4LG43O2_js.drawerContentVariants; }
45
+ get: function () { return chunkKA5MORDC_js.drawerContentVariants; }
46
46
  });
47
47
  Object.defineProperty(exports, "drawerOverlayVariants", {
48
48
  enumerable: true,
49
- get: function () { return chunkJ4LG43O2_js.drawerOverlayVariants; }
49
+ get: function () { return chunkKA5MORDC_js.drawerOverlayVariants; }
50
50
  });
51
51
  //# sourceMappingURL=drawer.js.map
52
52
  //# sourceMappingURL=drawer.js.map
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- export { Drawer, DrawerBody, DrawerClose, DrawerContent, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger, drawerContentVariants, drawerOverlayVariants } from '../chunk-TFWKF3DR.mjs';
2
+ export { Drawer, DrawerBody, DrawerClose, DrawerContent, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger, drawerContentVariants, drawerOverlayVariants } from '../chunk-V2PEOBAT.mjs';
3
3
  import '../chunk-K6YI4FJO.mjs';
4
4
  import '../chunk-PMAF6FBF.mjs';
5
5
  import '../chunk-4D54YOL6.mjs';
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkBMFPUQZC_js = require('../../chunk-BMFPUQZC.js');
4
+ var chunk4F56BLZQ_js = require('../../chunk-4F56BLZQ.js');
5
5
  var chunkGBWGVNDA_js = require('../../chunk-GBWGVNDA.js');
6
6
  require('../../chunk-UIYFEP3I.js');
7
7
  var chunkZS5756ZC_js = require('../../chunk-ZS5756ZC.js');
@@ -48,7 +48,7 @@ function ModalContentAnimated({
48
48
  id,
49
49
  style
50
50
  }) {
51
- const { open, setOpen, titleId, descriptionId, contentRef, triggerRef } = chunkBMFPUQZC_js.useModalContext("ModalContent");
51
+ const { open, setOpen, titleId, descriptionId, contentRef, triggerRef } = chunk4F56BLZQ_js.useModalContext("ModalContent");
52
52
  const reduceMotion = framerMotion.useReducedMotion();
53
53
  const overlayMotion = modalOverlayAnimationPresets[reduceMotion ? "fade" : animation];
54
54
  const panelMotion = modalOverlayAnimationPresets[reduceMotion ? "fade" : animation];
@@ -69,7 +69,7 @@ function ModalContentAnimated({
69
69
  {
70
70
  role: "presentation",
71
71
  "data-slot": "modal-overlay",
72
- className: chunkBMFPUQZC_js.modalOverlayVariants(),
72
+ className: chunk4F56BLZQ_js.modalOverlayVariants(),
73
73
  onClick: () => setOpen(false),
74
74
  initial: animation === "none" ? false : overlayMotion.initial,
75
75
  animate: animation === "none" ? void 0 : overlayMotion.animate,
@@ -95,7 +95,7 @@ function ModalContentAnimated({
95
95
  "data-slot": "modal-content",
96
96
  tabIndex: -1,
97
97
  className: chunkZS5756ZC_js.cn(
98
- chunkBMFPUQZC_js.modalContentVariants({ size, position, appearance }),
98
+ chunk4F56BLZQ_js.modalContentVariants({ size, position, appearance }),
99
99
  className
100
100
  ),
101
101
  initial: animation === "none" ? false : panelMotion.initial,
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import { useModalContext, modalOverlayVariants, modalContentVariants } from '../../chunk-4ECCMHAX.mjs';
2
+ import { useModalContext, modalOverlayVariants, modalContentVariants } from '../../chunk-WNLDXBS6.mjs';
3
3
  import { useFocusManagement } from '../../chunk-K6YI4FJO.mjs';
4
4
  import '../../chunk-PMAF6FBF.mjs';
5
5
  import { cn } from '../../chunk-4D54YOL6.mjs';
package/dist/ui/modal.js CHANGED
@@ -1,56 +1,56 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkBMFPUQZC_js = require('../chunk-BMFPUQZC.js');
4
+ var chunk4F56BLZQ_js = require('../chunk-4F56BLZQ.js');
5
5
  require('../chunk-GBWGVNDA.js');
6
6
  require('../chunk-UIYFEP3I.js');
7
7
  require('../chunk-ZS5756ZC.js');
8
8
  var jsxRuntime = require('react/jsx-runtime');
9
9
 
10
10
  var Modal2 = (props) => {
11
- return /* @__PURE__ */ jsxRuntime.jsx(chunkBMFPUQZC_js.Modal, { ...props });
11
+ return /* @__PURE__ */ jsxRuntime.jsx(chunk4F56BLZQ_js.Modal, { ...props });
12
12
  };
13
13
  Modal2.displayName = "Modal";
14
14
 
15
15
  Object.defineProperty(exports, "ModalBody", {
16
16
  enumerable: true,
17
- get: function () { return chunkBMFPUQZC_js.ModalBody; }
17
+ get: function () { return chunk4F56BLZQ_js.ModalBody; }
18
18
  });
19
19
  Object.defineProperty(exports, "ModalClose", {
20
20
  enumerable: true,
21
- get: function () { return chunkBMFPUQZC_js.ModalClose; }
21
+ get: function () { return chunk4F56BLZQ_js.ModalClose; }
22
22
  });
23
23
  Object.defineProperty(exports, "ModalContent", {
24
24
  enumerable: true,
25
- get: function () { return chunkBMFPUQZC_js.ModalContent; }
25
+ get: function () { return chunk4F56BLZQ_js.ModalContent; }
26
26
  });
27
27
  Object.defineProperty(exports, "ModalDescription", {
28
28
  enumerable: true,
29
- get: function () { return chunkBMFPUQZC_js.ModalDescription; }
29
+ get: function () { return chunk4F56BLZQ_js.ModalDescription; }
30
30
  });
31
31
  Object.defineProperty(exports, "ModalFooter", {
32
32
  enumerable: true,
33
- get: function () { return chunkBMFPUQZC_js.ModalFooter; }
33
+ get: function () { return chunk4F56BLZQ_js.ModalFooter; }
34
34
  });
35
35
  Object.defineProperty(exports, "ModalHeader", {
36
36
  enumerable: true,
37
- get: function () { return chunkBMFPUQZC_js.ModalHeader; }
37
+ get: function () { return chunk4F56BLZQ_js.ModalHeader; }
38
38
  });
39
39
  Object.defineProperty(exports, "ModalTitle", {
40
40
  enumerable: true,
41
- get: function () { return chunkBMFPUQZC_js.ModalTitle; }
41
+ get: function () { return chunk4F56BLZQ_js.ModalTitle; }
42
42
  });
43
43
  Object.defineProperty(exports, "ModalTrigger", {
44
44
  enumerable: true,
45
- get: function () { return chunkBMFPUQZC_js.ModalTrigger; }
45
+ get: function () { return chunk4F56BLZQ_js.ModalTrigger; }
46
46
  });
47
47
  Object.defineProperty(exports, "modalContentVariants", {
48
48
  enumerable: true,
49
- get: function () { return chunkBMFPUQZC_js.modalContentVariants; }
49
+ get: function () { return chunk4F56BLZQ_js.modalContentVariants; }
50
50
  });
51
51
  Object.defineProperty(exports, "modalOverlayVariants", {
52
52
  enumerable: true,
53
- get: function () { return chunkBMFPUQZC_js.modalOverlayVariants; }
53
+ get: function () { return chunk4F56BLZQ_js.modalOverlayVariants; }
54
54
  });
55
55
  exports.Modal = Modal2;
56
56
  //# sourceMappingURL=modal.js.map
package/dist/ui/modal.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  "use client";
2
- import { Modal } from '../chunk-4ECCMHAX.mjs';
3
- export { ModalBody, ModalClose, ModalContent, ModalDescription, ModalFooter, ModalHeader, ModalTitle, ModalTrigger, modalContentVariants, modalOverlayVariants } from '../chunk-4ECCMHAX.mjs';
2
+ import { Modal } from '../chunk-WNLDXBS6.mjs';
3
+ export { ModalBody, ModalClose, ModalContent, ModalDescription, ModalFooter, ModalHeader, ModalTitle, ModalTrigger, modalContentVariants, modalOverlayVariants } from '../chunk-WNLDXBS6.mjs';
4
4
  import '../chunk-K6YI4FJO.mjs';
5
5
  import '../chunk-PMAF6FBF.mjs';
6
6
  import '../chunk-4D54YOL6.mjs';
package/dist/ui/select.js CHANGED
@@ -11,19 +11,19 @@ var selectTriggerVariants = classVarianceAuthority.cva(
11
11
  {
12
12
  variants: {
13
13
  variant: {
14
- default: "border-gray-300 dark:border-gray-300 bg-white dark:bg-black text-gray-900 dark:text-white",
15
- outline: "border-2 border-gray-500 text-gray-500 dark:text-gray-100",
16
- ghost: "border-transparent text-slate-900 dark:text-slate-200",
17
- sky: "border-sky-900 dark:border-sky-600 text-sky-900 dark:text-sky-600",
18
- rose: "border-rose-900 dark:border-rose-600 text-rose-900 dark:text-rose-600",
19
- purple: "border-purple-900 dark:border-purple-600 text-purple-900 dark:text-purple-600",
20
- pink: "border-pink-900 dark:border-pink-600 text-pink-900 dark:text-pink-600",
21
- orange: "border-orange-900 dark:border-orange-600 text-orange-900 dark:text-orange-600",
22
- yellow: "border-yellow-900 dark:border-yellow-600 text-yellow-900 dark:text-yellow-600",
23
- teal: "border-teal-900 dark:border-teal-600 text-teal-900 dark:text-teal-600",
24
- indigo: "border-indigo-500 text-indigo-500",
25
- emerald: "border-emerald-900 dark:border-emerald-600 text-emerald-900 dark:text-emerald-600",
26
- glass: "border-black/15 dark:border-white/15 bg-black/10 dark:bg-white/10 text-slate-900 dark:text-white backdrop-blur-md",
14
+ default: "border-gray-300 dark:border-gray-300 bg-white dark:bg-black text-gray-950 dark:text-white",
15
+ outline: "border-2 border-gray-500 text-gray-950 dark:text-gray-100",
16
+ ghost: "border-transparent text-gray-950 dark:text-gray-100",
17
+ sky: "border-sky-800 dark:border-sky-600 text-sky-950 dark:text-sky-600",
18
+ rose: "border-rose-800 dark:border-rose-600 text-rose-950 dark:text-rose-600",
19
+ purple: "border-purple-800 dark:border-purple-600 text-purple-950 dark:text-purple-600",
20
+ pink: "border-pink-800 dark:border-pink-600 text-pink-950 dark:text-pink-600",
21
+ orange: "border-orange-800 dark:border-orange-600 text-orange-950 dark:text-orange-600",
22
+ yellow: "border-yellow-800 dark:border-yellow-600 text-yellow-950 dark:text-yellow-600",
23
+ teal: "border-teal-800 dark:border-teal-600 text-teal-950 dark:text-teal-600",
24
+ indigo: "border-indigo-500 text-indigo-950",
25
+ emerald: "border-emerald-800 dark:border-emerald-600 text-emerald-950 dark:text-emerald-600",
26
+ glass: "border-black/15 dark:border-white/15 bg-black/10 dark:bg-white/10 text-gray-950 dark:text-white backdrop-blur-md",
27
27
  "gradient-blue": "bg-linear-to-r from-blue-900 dark:from-blue-600 to-purple-900 dark:to-purple-600 backdrop-blur-xl text-white",
28
28
  "gradient-green": "bg-linear-to-r from-green-900 dark:from-green-600 to-lime-900 dark:to-lime-600 backdrop-blur-xl text-white",
29
29
  "gradient-red": "bg-linear-to-r from-red-900 dark:from-red-600 to-pink-900 dark:to-pink-600 backdrop-blur-xl text-white",
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/ui/select/variants.ts","../../src/ui/select/select.tsx"],"names":["cva","createContext","useContext","useId","useState","useRef","useEffect","useCallback","jsx","cn","jsxs"],"mappings":"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","file":"select.js","sourcesContent":["import { cva } from \"class-variance-authority\";\n\nexport const selectTriggerVariants = cva(\n \"flex items-center cursor-pointer justify-between rounded-md border transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-gray-600 dark:focus-visible:ring-gray-400 focus-visible:ring-offset-2\",\n {\n variants: {\n variant: {\n default:\n \"border-gray-300 dark:border-gray-300 bg-white dark:bg-black text-gray-900 dark:text-white\",\n outline: \"border-2 border-gray-500 text-gray-500 dark:text-gray-100\",\n ghost: \"border-transparent text-slate-900 dark:text-slate-200\",\n sky: \"border-sky-900 dark:border-sky-600 text-sky-900 dark:text-sky-600\",\n rose: \"border-rose-900 dark:border-rose-600 text-rose-900 dark:text-rose-600\",\n purple:\n \"border-purple-900 dark:border-purple-600 text-purple-900 dark:text-purple-600\",\n pink: \"border-pink-900 dark:border-pink-600 text-pink-900 dark:text-pink-600\",\n orange:\n \"border-orange-900 dark:border-orange-600 text-orange-900 dark:text-orange-600\",\n yellow:\n \"border-yellow-900 dark:border-yellow-600 text-yellow-900 dark:text-yellow-600\",\n teal: \"border-teal-900 dark:border-teal-600 text-teal-900 dark:text-teal-600\",\n indigo: \"border-indigo-500 text-indigo-500\",\n emerald:\n \"border-emerald-900 dark:border-emerald-600 text-emerald-900 dark:text-emerald-600\",\n glass:\n \"border-black/15 dark:border-white/15 bg-black/10 dark:bg-white/10 text-slate-900 dark:text-white backdrop-blur-md\",\n \"gradient-blue\":\n \"bg-linear-to-r from-blue-900 dark:from-blue-600 to-purple-900 dark:to-purple-600 backdrop-blur-xl text-white\",\n \"gradient-green\":\n \"bg-linear-to-r from-green-900 dark:from-green-600 to-lime-900 dark:to-lime-600 backdrop-blur-xl text-white\",\n \"gradient-red\":\n \"bg-linear-to-r from-red-900 dark:from-red-600 to-pink-900 dark:to-pink-600 backdrop-blur-xl text-white\",\n \"gradient-yellow\":\n \"bg-linear-to-r from-yellow-900 dark:from-yellow-600 to-orange-900 dark:to-orange-600 backdrop-blur-xl text-white\",\n \"gradient-purple\":\n \"bg-linear-to-r from-purple-900 dark:from-purple-600 to-pink-900 dark:to-pink-600 backdrop-blur-xl text-white\",\n \"gradient-teal\":\n \"bg-linear-to-r from-teal-900 dark:from-teal-600 to-cyan-900 dark:to-cyan-600 backdrop-blur-xl text-white\",\n \"gradient-indigo\":\n \"bg-linear-to-r from-indigo-900 dark:from-indigo-600 to-purple-900 dark:to-purple-600 backdrop-blur-xl text-white\",\n \"gradient-pink\":\n \"bg-linear-to-r from-pink-900 dark:from-pink-600 to-rose-900 dark:to-rose-600 backdrop-blur-xl text-white\",\n \"gradient-orange\":\n \"bg-linear-to-r from-orange-900 dark:from-orange-600 to-red-900 dark:to-red-600 backdrop-blur-xl text-white\",\n },\n size: {\n sm: \"px-2 py-1 text-sm\",\n md: \"px-3 py-2\",\n lg: \"px-4 py-3 text-lg\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"md\",\n },\n },\n);\n\nexport const selectItemVariants = cva(\n \"cursor-pointer px-3 py-2 rounded-md focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-gray-600 dark:focus-visible:ring-gray-400 focus-visible:ring-inset\",\n {\n variants: {\n appearance: {\n default:\n \"bg-white dark:bg-black text-gray-900 dark:text-gray-200 data-[selected=true]:bg-gray-200 data-[selected=true]:text-gray-700 dark:data-[selected=true]:text-gray-900\",\n glass:\n \"bg-black/10 dark:bg-white/10 text-gray-700 dark:text-gray-900 data-[selected=true]:bg-black/10 dark:data-[selected=true]:bg-white/10 data-[selected=true]:text-gray-700 dark:data-[selected=true]:text-gray-900\",\n outline:\n \"border-2 border-gray-500 text-gray-900 dark:text-gray-100 data-[selected=true]:border-2 data-[selected=true]:border-gray-500 data-[selected=true]:bg-gray-200 data-[selected=true]:text-gray-900 dark:data-[selected=true]:text-gray-900\",\n ghost:\n \"border-transparent text-gray-900 dark:text-gray-100 data-[selected=true]:border-transparent data-[selected=true]:bg-transparent data-[selected=true]:text-gray-900 dark:data-[selected=true]:text-gray-100\",\n sky: \"border-sky-900 dark:border-sky-600 text-sky-900 dark:text-sky-200 data-[selected=true]:border-sky-900 dark:data-[selected=true]:border-sky-600 data-[selected=true]:bg-sky-200 data-[selected=true]:text-sky-900 dark:data-[selected=true]:text-sky-900\",\n rose: \"border-rose-900 dark:border-rose-600 text-rose-900 dark:text-rose-200 data-[selected=true]:border-rose-900 dark:data-[selected=true]:border-rose-600 data-[selected=true]:bg-rose-200 data-[selected=true]:text-rose-900 dark:data-[selected=true]:text-rose-900\",\n purple:\n \"border-purple-900 dark:border-purple-600 text-purple-900 dark:text-purple-200 data-[selected=true]:border-purple-900 dark:data-[selected=true]:border-purple-600 data-[selected=true]:bg-purple-200 data-[selected=true]:text-purple-900 dark:data-[selected=true]:text-purple-900\",\n pink: \"border-pink-900 dark:border-pink-600 text-pink-900 dark:text-pink-200 data-[selected=true]:border-pink-900 dark:data-[selected=true]:border-pink-600 data-[selected=true]:bg-pink-200 data-[selected=true]:text-pink-900 dark:data-[selected=true]:text-pink-900\",\n orange:\n \"border-orange-900 dark:border-orange-600 text-orange-900 dark:text-orange-200 data-[selected=true]:border-orange-900 dark:data-[selected=true]:border-orange-600 data-[selected=true]:bg-orange-200 data-[selected=true]:text-orange-900 dark:data-[selected=true]:text-orange-900\",\n yellow:\n \"border-yellow-900 dark:border-yellow-600 text-yellow-900 dark:text-yellow-200 data-[selected=true]:border-yellow-900 dark:data-[selected=true]:border-yellow-600 data-[selected=true]:bg-yellow-200 data-[selected=true]:text-yellow-900 dark:data-[selected=true]:text-yellow-900\",\n teal: \"border-teal-900 dark:border-teal-600 text-teal-900 dark:text-teal-200 data-[selected=true]:border-teal-900 dark:data-[selected=true]:border-teal-600 data-[selected=true]:bg-teal-200 data-[selected=true]:text-teal-900 dark:data-[selected=true]:text-teal-900\",\n indigo:\n \"border-indigo-900 dark:border-indigo-600 text-indigo-900 dark:text-indigo-200 data-[selected=true]:border-indigo-900 dark:data-[selected=true]:border-indigo-600 data-[selected=true]:bg-indigo-200 data-[selected=true]:text-indigo-900 dark:data-[selected=true]:text-indigo-900\",\n emerald:\n \"border-emerald-900 dark:border-emerald-600 text-emerald-900 dark:text-emerald-200 data-[selected=true]:border-emerald-900 dark:data-[selected=true]:border-emerald-600 data-[selected=true]:bg-emerald-200 data-[selected=true]:text-emerald-900 dark:data-[selected=true]:text-emerald-900\",\n \"gradient-blue\":\n \"bg-transparent backdrop-blur-xl text-blue-50 dark:text-blue-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-blue-50 dark:data-[selected=true]:from-blue-50 data-[selected=true]:to-purple-50 dark:data-[selected=true]:to-purple-50 data-[selected=true]:text-blue-900\",\n \"gradient-green\":\n \"bg-transparent backdrop-blur-xl text-green-50 dark:text-green-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-green-50 dark:data-[selected=true]:from-green-50 data-[selected=true]:to-lime-50 dark:data-[selected=true]:to-lime-50 data-[selected=true]:text-green-900\",\n \"gradient-red\":\n \"bg-transparent backdrop-blur-xl text-red-50 dark:text-red-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-red-50 dark:data-[selected=true]:from-red-50 data-[selected=true]:to-pink-50 dark:data-[selected=true]:to-pink-50 data-[selected=true]:text-red-900\",\n \"gradient-yellow\":\n \"bg-transparent backdrop-blur-xl text-yellow-50 dark:text-yellow-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-yellow-50 dark:data-[selected=true]:from-yellow-50 data-[selected=true]:to-orange-50 dark:data-[selected=true]:to-orange-50 data-[selected=true]:text-yellow-900\",\n \"gradient-purple\":\n \"bg-transparent backdrop-blur-xl text-purple-50 dark:text-purple-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-purple-50 dark:data-[selected=true]:from-purple-50 data-[selected=true]:to-pink-50 dark:data-[selected=true]:to-pink-50 data-[selected=true]:text-purple-900\",\n \"gradient-teal\":\n \"bg-transparent backdrop-blur-xl text-teal-50 dark:text-teal-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-teal-50 dark:data-[selected=true]:from-teal-50 data-[selected=true]:to-cyan-50 dark:data-[selected=true]:to-cyan-50 data-[selected=true]:text-teal-900\",\n \"gradient-indigo\":\n \"bg-transparent backdrop-blur-xl text-indigo-50 dark:text-indigo-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-indigo-50 dark:data-[selected=true]:from-indigo-50 data-[selected=true]:to-purple-50 dark:data-[selected=true]:to-purple-50 data-[selected=true]:text-indigo-900\",\n \"gradient-pink\":\n \"bg-transparent backdrop-blur-xl text-pink-50 dark:text-pink-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-pink-50 dark:data-[selected=true]:from-pink-50 data-[selected=true]:to-rose-50 dark:data-[selected=true]:to-rose-50 data-[selected=true]:text-pink-900\",\n \"gradient-orange\":\n \"bg-transparent backdrop-blur-xl text-orange-50 dark:text-orange-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-orange-50 dark:data-[selected=true]:from-orange-50 data-[selected=true]:to-red-50 dark:data-[selected=true]:to-red-50 data-[selected=true]:text-orange-900\",\n },\n disabled: {\n true: \"opacity-50 cursor-not-allowed\",\n },\n },\n defaultVariants: {\n appearance: \"default\",\n },\n },\n);\n\nexport const selectContentVariants = cva(\n \"absolute z-10 mt-2 w-full rounded-md border bg-white dark:bg-black shadow-md\",\n {\n variants: {\n appearance: {\n default: \"bg-white dark:bg-black shadow-md\",\n glass: \"bg-black/10 dark:bg-white/10 backdrop-blur-md\",\n outline: \"border-2 border-gray-500\",\n ghost: \"border-transparent\",\n sky: \"border-sky-900 dark:border-sky-600\",\n rose: \"border-rose-900 dark:border-rose-600\",\n purple: \"border-purple-900 dark:border-purple-600\",\n pink: \"border-pink-900 dark:border-pink-600\",\n orange: \"border-orange-900 dark:border-orange-600\",\n yellow: \"border-yellow-900 dark:border-yellow-600\",\n teal: \"border-teal-900 dark:border-teal-600\",\n indigo: \"border-indigo-900 dark:border-indigo-600\",\n emerald: \"border-emerald-900 dark:border-emerald-600\",\n \"gradient-blue\":\n \"bg-linear-to-r from-blue-900 dark:from-blue-600 to-purple-900 dark:to-purple-600 backdrop-blur-xl\",\n \"gradient-green\":\n \"bg-linear-to-r from-green-900 dark:from-green-600 to-lime-900 dark:to-lime-600 backdrop-blur-xl\",\n \"gradient-red\":\n \"bg-linear-to-r from-red-900 dark:from-red-600 to-pink-900 dark:to-pink-600 backdrop-blur-xl\",\n \"gradient-yellow\":\n \"bg-linear-to-r from-yellow-900 dark:from-yellow-600 to-orange-900 dark:to-orange-600 backdrop-blur-xl\",\n \"gradient-purple\":\n \"bg-linear-to-r from-purple-900 dark:from-purple-600 to-pink-900 dark:to-pink-600 backdrop-blur-xl\",\n \"gradient-teal\":\n \"bg-linear-to-r from-teal-900 dark:from-teal-600 to-cyan-900 dark:to-cyan-600 backdrop-blur-xl\",\n \"gradient-indigo\":\n \"bg-linear-to-r from-indigo-900 dark:from-indigo-600 to-purple-900 dark:to-purple-600 backdrop-blur-xl\",\n \"gradient-pink\":\n \"bg-linear-to-r from-pink-900 dark:from-pink-600 to-rose-900 dark:to-rose-600 backdrop-blur-xl\",\n \"gradient-orange\":\n \"bg-linear-to-r from-orange-900 dark:from-orange-600 to-red-900 dark:to-red-600 backdrop-blur-xl\",\n },\n size: {\n sm: \"px-2 py-1 text-sm\",\n md: \"px-3 py-2\",\n lg: \"px-4 py-3 text-lg\",\n },\n spacing: {\n none: \"space-y-0\",\n default: \"space-y-1\",\n sm: \"space-y-2\",\n md: \"space-y-3\",\n lg: \"space-y-4\",\n xl: \"space-y-5\",\n },\n },\n defaultVariants: {\n appearance: \"default\",\n size: \"md\",\n spacing: \"default\",\n },\n },\n);\n","\"use client\";\nimport { useState, useEffect, useCallback, useRef, useId } from \"react\";\nimport {\n SelectProps,\n SelectOption,\n SelectTriggerProps,\n SelectContentProps,\n SelectItemProps,\n SelectValueProps,\n} from \"./types\";\nimport { createContext, useContext } from \"react\";\nimport { SelectContextType } from \"./types\";\nimport { cn } from \"../../lib/utils\";\nimport {\n selectContentVariants,\n selectItemVariants,\n selectTriggerVariants,\n} from \"./variants\";\n\nexport const SelectContext = createContext<SelectContextType | null>(null);\n\nexport const useSelect = () => {\n const ctx = useContext(SelectContext);\n if (!ctx) throw new Error(\"Select components must be used inside Select\");\n return ctx;\n};\n\nexport const Select = ({\n children,\n value,\n defaultValue = [],\n onChange,\n multiple = true,\n}: SelectProps) => {\n const listboxId = `${useId()}-listbox`;\n const [internal, setInternal] = useState<string[]>(defaultValue);\n const [open, setOpen] = useState(false);\n const [options, setOptions] = useState<SelectOption[]>([]);\n const rootRef = useRef<HTMLDivElement>(null);\n\n const selected = value ?? internal;\n\n useEffect(() => {\n if (!open) return;\n\n const handlePointerDown = (event: PointerEvent) => {\n const root = rootRef.current;\n if (!root) return;\n const target = event.target;\n if (target instanceof Node && !root.contains(target)) {\n setOpen(false);\n }\n };\n\n document.addEventListener(\"pointerdown\", handlePointerDown);\n return () => document.removeEventListener(\"pointerdown\", handlePointerDown);\n }, [open]);\n\n const setSelected = (vals: string[]) => {\n if (value !== undefined) {\n onChange?.(vals);\n } else {\n setInternal(vals);\n onChange?.(vals);\n }\n };\n\n const toggleValue = (val: string) => {\n if (multiple) {\n if (selected.includes(val)) {\n setSelected(selected.filter((v) => v !== val));\n } else {\n setSelected([...selected, val]);\n }\n } else {\n setSelected([val]);\n setOpen(false);\n }\n };\n\n const isSelected = (val: string) => selected.includes(val);\n\n const registerOption = useCallback((opt: SelectOption) => {\n setOptions((prev) => {\n if (prev.find((o) => o.value === opt.value)) return prev;\n return [...prev, opt];\n });\n }, []);\n\n return (\n <SelectContext.Provider\n value={{\n open,\n setOpen,\n selected,\n toggleValue,\n isSelected,\n registerOption,\n options,\n multiple,\n listboxId,\n }}\n >\n <div ref={rootRef} className=\"relative w-full\">\n {children}\n </div>\n </SelectContext.Provider>\n );\n};\n\nexport const SelectTrigger = ({\n className,\n variant,\n size,\n onClick,\n ...props\n}: SelectTriggerProps) => {\n const { open, setOpen, listboxId } = useSelect();\n\n return (\n <button\n type=\"button\"\n aria-expanded={open}\n aria-haspopup=\"listbox\"\n aria-controls={listboxId}\n className={cn(selectTriggerVariants({ variant, size }), className)}\n {...props}\n onClick={(event) => {\n onClick?.(event);\n if (!event.defaultPrevented) {\n setOpen(!open);\n }\n }}\n />\n );\n};\n\nexport const SelectValue = ({\n placeholder = \"Select...\",\n className,\n ...props\n}: SelectValueProps) => {\n const { selected, options } = useSelect();\n\n const selectedOptions = options.filter((o) => selected.includes(o.value));\n\n if (selectedOptions.length === 0) {\n return (\n <span className={cn(className)} {...props}>\n {placeholder}\n </span>\n );\n }\n\n return (\n <span className={cn(className)} {...props}>\n {selectedOptions.map((option, index) => (\n <span key={option.value}>\n {index > 0 ? \", \" : null}\n {option.label}\n </span>\n ))}\n </span>\n );\n};\n\nexport const SelectContent = ({\n children,\n className,\n appearance = \"default\",\n size = \"md\",\n spacing = \"default\",\n ...props\n}: SelectContentProps) => {\n const { open, listboxId, multiple } = useSelect();\n const panelRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (!open) {\n return;\n }\n const panel = panelRef.current;\n if (!panel) {\n return;\n }\n const opts = Array.from(\n panel.querySelectorAll<HTMLElement>('[role=\"option\"]'),\n ).filter((el) => el.getAttribute(\"aria-disabled\") !== \"true\");\n requestAnimationFrame(() => opts[0]?.focus());\n }, [open]);\n\n useEffect(() => {\n if (!open) {\n return;\n }\n const panel = panelRef.current;\n if (!panel) {\n return;\n }\n\n const enabledOptions = () =>\n Array.from(panel.querySelectorAll<HTMLElement>('[role=\"option\"]')).filter(\n (el) => el.getAttribute(\"aria-disabled\") !== \"true\",\n );\n\n const handleKeyDown = (event: KeyboardEvent) => {\n const options = enabledOptions();\n if (options.length === 0) {\n return;\n }\n\n const idx = options.findIndex((el) => el === document.activeElement);\n\n if (event.key === \"ArrowDown\") {\n event.preventDefault();\n const next = idx < 0 ? 0 : Math.min(idx + 1, options.length - 1);\n options[next]?.focus();\n return;\n }\n\n if (event.key === \"ArrowUp\") {\n event.preventDefault();\n const prev = idx <= 0 ? options.length - 1 : Math.max(idx - 1, 0);\n options[prev]?.focus();\n return;\n }\n\n if (event.key === \"Home\") {\n event.preventDefault();\n options[0]?.focus();\n return;\n }\n\n if (event.key === \"End\") {\n event.preventDefault();\n options[options.length - 1]?.focus();\n }\n };\n\n panel.addEventListener(\"keydown\", handleKeyDown);\n return () => panel.removeEventListener(\"keydown\", handleKeyDown);\n }, [open]);\n\n if (!open) return null;\n\n return (\n <div\n ref={panelRef}\n id={listboxId}\n role=\"listbox\"\n aria-multiselectable={multiple}\n tabIndex={-1}\n className={cn(\n selectContentVariants({ appearance, size, spacing }),\n className,\n )}\n {...props}\n >\n {children}\n </div>\n );\n};\n\nexport const SelectItem = ({\n value,\n children,\n disabled,\n appearance = \"default\",\n className,\n ...props\n}: SelectItemProps) => {\n const { toggleValue, isSelected, registerOption } = useSelect();\n\n useEffect(() => {\n registerOption({ label: children, value, disabled });\n }, [children, disabled, registerOption, value]);\n\n const isActive = isSelected(value);\n\n return (\n <div\n role=\"option\"\n aria-selected={isActive}\n aria-disabled={disabled ? true : undefined}\n tabIndex={-1}\n onClick={() => !disabled && toggleValue(value)}\n onKeyDown={(e) => {\n if (disabled) {\n return;\n }\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n toggleValue(value);\n }\n }}\n data-selected={isActive ? \"true\" : \"false\"}\n className={cn(\n selectItemVariants({\n disabled,\n appearance,\n }),\n \"flex justify-between\",\n className,\n )}\n {...props}\n >\n {children}\n {isActive && <span>✓</span>}\n </div>\n );\n};\n"]}
1
+ {"version":3,"sources":["../../src/ui/select/variants.ts","../../src/ui/select/select.tsx"],"names":["cva","createContext","useContext","useId","useState","useRef","useEffect","useCallback","jsx","cn","jsxs"],"mappings":"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","file":"select.js","sourcesContent":["import { cva } from \"class-variance-authority\";\n\nexport const selectTriggerVariants = cva(\n \"flex items-center cursor-pointer justify-between rounded-md border transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-gray-600 dark:focus-visible:ring-gray-400 focus-visible:ring-offset-2\",\n {\n variants: {\n variant: {\n default:\n \"border-gray-300 dark:border-gray-300 bg-white dark:bg-black text-gray-950 dark:text-white\",\n outline: \"border-2 border-gray-500 text-gray-950 dark:text-gray-100\",\n ghost: \"border-transparent text-gray-950 dark:text-gray-100\",\n sky: \"border-sky-800 dark:border-sky-600 text-sky-950 dark:text-sky-600\",\n rose: \"border-rose-800 dark:border-rose-600 text-rose-950 dark:text-rose-600\",\n purple:\n \"border-purple-800 dark:border-purple-600 text-purple-950 dark:text-purple-600\",\n pink: \"border-pink-800 dark:border-pink-600 text-pink-950 dark:text-pink-600\",\n orange:\n \"border-orange-800 dark:border-orange-600 text-orange-950 dark:text-orange-600\",\n yellow:\n \"border-yellow-800 dark:border-yellow-600 text-yellow-950 dark:text-yellow-600\",\n teal: \"border-teal-800 dark:border-teal-600 text-teal-950 dark:text-teal-600\",\n indigo: \"border-indigo-500 text-indigo-950\",\n emerald:\n \"border-emerald-800 dark:border-emerald-600 text-emerald-950 dark:text-emerald-600\",\n glass:\n \"border-black/15 dark:border-white/15 bg-black/10 dark:bg-white/10 text-gray-950 dark:text-white backdrop-blur-md\",\n \"gradient-blue\":\n \"bg-linear-to-r from-blue-900 dark:from-blue-600 to-purple-900 dark:to-purple-600 backdrop-blur-xl text-white\",\n \"gradient-green\":\n \"bg-linear-to-r from-green-900 dark:from-green-600 to-lime-900 dark:to-lime-600 backdrop-blur-xl text-white\",\n \"gradient-red\":\n \"bg-linear-to-r from-red-900 dark:from-red-600 to-pink-900 dark:to-pink-600 backdrop-blur-xl text-white\",\n \"gradient-yellow\":\n \"bg-linear-to-r from-yellow-900 dark:from-yellow-600 to-orange-900 dark:to-orange-600 backdrop-blur-xl text-white\",\n \"gradient-purple\":\n \"bg-linear-to-r from-purple-900 dark:from-purple-600 to-pink-900 dark:to-pink-600 backdrop-blur-xl text-white\",\n \"gradient-teal\":\n \"bg-linear-to-r from-teal-900 dark:from-teal-600 to-cyan-900 dark:to-cyan-600 backdrop-blur-xl text-white\",\n \"gradient-indigo\":\n \"bg-linear-to-r from-indigo-900 dark:from-indigo-600 to-purple-900 dark:to-purple-600 backdrop-blur-xl text-white\",\n \"gradient-pink\":\n \"bg-linear-to-r from-pink-900 dark:from-pink-600 to-rose-900 dark:to-rose-600 backdrop-blur-xl text-white\",\n \"gradient-orange\":\n \"bg-linear-to-r from-orange-900 dark:from-orange-600 to-red-900 dark:to-red-600 backdrop-blur-xl text-white\",\n },\n size: {\n sm: \"px-2 py-1 text-sm\",\n md: \"px-3 py-2\",\n lg: \"px-4 py-3 text-lg\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"md\",\n },\n },\n);\n\nexport const selectItemVariants = cva(\n \"cursor-pointer px-3 py-2 rounded-md focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-gray-600 dark:focus-visible:ring-gray-400 focus-visible:ring-inset\",\n {\n variants: {\n appearance: {\n default:\n \"bg-white dark:bg-black text-gray-900 dark:text-gray-200 data-[selected=true]:bg-gray-200 data-[selected=true]:text-gray-700 dark:data-[selected=true]:text-gray-900\",\n glass:\n \"bg-black/10 dark:bg-white/10 text-gray-700 dark:text-gray-900 data-[selected=true]:bg-black/10 dark:data-[selected=true]:bg-white/10 data-[selected=true]:text-gray-700 dark:data-[selected=true]:text-gray-900\",\n outline:\n \"border-2 border-gray-500 text-gray-900 dark:text-gray-100 data-[selected=true]:border-2 data-[selected=true]:border-gray-500 data-[selected=true]:bg-gray-200 data-[selected=true]:text-gray-900 dark:data-[selected=true]:text-gray-900\",\n ghost:\n \"border-transparent text-gray-900 dark:text-gray-100 data-[selected=true]:border-transparent data-[selected=true]:bg-transparent data-[selected=true]:text-gray-900 dark:data-[selected=true]:text-gray-100\",\n sky: \"border-sky-900 dark:border-sky-600 text-sky-900 dark:text-sky-200 data-[selected=true]:border-sky-900 dark:data-[selected=true]:border-sky-600 data-[selected=true]:bg-sky-200 data-[selected=true]:text-sky-900 dark:data-[selected=true]:text-sky-900\",\n rose: \"border-rose-900 dark:border-rose-600 text-rose-900 dark:text-rose-200 data-[selected=true]:border-rose-900 dark:data-[selected=true]:border-rose-600 data-[selected=true]:bg-rose-200 data-[selected=true]:text-rose-900 dark:data-[selected=true]:text-rose-900\",\n purple:\n \"border-purple-900 dark:border-purple-600 text-purple-900 dark:text-purple-200 data-[selected=true]:border-purple-900 dark:data-[selected=true]:border-purple-600 data-[selected=true]:bg-purple-200 data-[selected=true]:text-purple-900 dark:data-[selected=true]:text-purple-900\",\n pink: \"border-pink-900 dark:border-pink-600 text-pink-900 dark:text-pink-200 data-[selected=true]:border-pink-900 dark:data-[selected=true]:border-pink-600 data-[selected=true]:bg-pink-200 data-[selected=true]:text-pink-900 dark:data-[selected=true]:text-pink-900\",\n orange:\n \"border-orange-900 dark:border-orange-600 text-orange-900 dark:text-orange-200 data-[selected=true]:border-orange-900 dark:data-[selected=true]:border-orange-600 data-[selected=true]:bg-orange-200 data-[selected=true]:text-orange-900 dark:data-[selected=true]:text-orange-900\",\n yellow:\n \"border-yellow-900 dark:border-yellow-600 text-yellow-900 dark:text-yellow-200 data-[selected=true]:border-yellow-900 dark:data-[selected=true]:border-yellow-600 data-[selected=true]:bg-yellow-200 data-[selected=true]:text-yellow-900 dark:data-[selected=true]:text-yellow-900\",\n teal: \"border-teal-900 dark:border-teal-600 text-teal-900 dark:text-teal-200 data-[selected=true]:border-teal-900 dark:data-[selected=true]:border-teal-600 data-[selected=true]:bg-teal-200 data-[selected=true]:text-teal-900 dark:data-[selected=true]:text-teal-900\",\n indigo:\n \"border-indigo-900 dark:border-indigo-600 text-indigo-900 dark:text-indigo-200 data-[selected=true]:border-indigo-900 dark:data-[selected=true]:border-indigo-600 data-[selected=true]:bg-indigo-200 data-[selected=true]:text-indigo-900 dark:data-[selected=true]:text-indigo-900\",\n emerald:\n \"border-emerald-900 dark:border-emerald-600 text-emerald-900 dark:text-emerald-200 data-[selected=true]:border-emerald-900 dark:data-[selected=true]:border-emerald-600 data-[selected=true]:bg-emerald-200 data-[selected=true]:text-emerald-900 dark:data-[selected=true]:text-emerald-900\",\n \"gradient-blue\":\n \"bg-transparent backdrop-blur-xl text-blue-50 dark:text-blue-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-blue-50 dark:data-[selected=true]:from-blue-50 data-[selected=true]:to-purple-50 dark:data-[selected=true]:to-purple-50 data-[selected=true]:text-blue-900\",\n \"gradient-green\":\n \"bg-transparent backdrop-blur-xl text-green-50 dark:text-green-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-green-50 dark:data-[selected=true]:from-green-50 data-[selected=true]:to-lime-50 dark:data-[selected=true]:to-lime-50 data-[selected=true]:text-green-900\",\n \"gradient-red\":\n \"bg-transparent backdrop-blur-xl text-red-50 dark:text-red-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-red-50 dark:data-[selected=true]:from-red-50 data-[selected=true]:to-pink-50 dark:data-[selected=true]:to-pink-50 data-[selected=true]:text-red-900\",\n \"gradient-yellow\":\n \"bg-transparent backdrop-blur-xl text-yellow-50 dark:text-yellow-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-yellow-50 dark:data-[selected=true]:from-yellow-50 data-[selected=true]:to-orange-50 dark:data-[selected=true]:to-orange-50 data-[selected=true]:text-yellow-900\",\n \"gradient-purple\":\n \"bg-transparent backdrop-blur-xl text-purple-50 dark:text-purple-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-purple-50 dark:data-[selected=true]:from-purple-50 data-[selected=true]:to-pink-50 dark:data-[selected=true]:to-pink-50 data-[selected=true]:text-purple-900\",\n \"gradient-teal\":\n \"bg-transparent backdrop-blur-xl text-teal-50 dark:text-teal-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-teal-50 dark:data-[selected=true]:from-teal-50 data-[selected=true]:to-cyan-50 dark:data-[selected=true]:to-cyan-50 data-[selected=true]:text-teal-900\",\n \"gradient-indigo\":\n \"bg-transparent backdrop-blur-xl text-indigo-50 dark:text-indigo-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-indigo-50 dark:data-[selected=true]:from-indigo-50 data-[selected=true]:to-purple-50 dark:data-[selected=true]:to-purple-50 data-[selected=true]:text-indigo-900\",\n \"gradient-pink\":\n \"bg-transparent backdrop-blur-xl text-pink-50 dark:text-pink-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-pink-50 dark:data-[selected=true]:from-pink-50 data-[selected=true]:to-rose-50 dark:data-[selected=true]:to-rose-50 data-[selected=true]:text-pink-900\",\n \"gradient-orange\":\n \"bg-transparent backdrop-blur-xl text-orange-50 dark:text-orange-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-orange-50 dark:data-[selected=true]:from-orange-50 data-[selected=true]:to-red-50 dark:data-[selected=true]:to-red-50 data-[selected=true]:text-orange-900\",\n },\n disabled: {\n true: \"opacity-50 cursor-not-allowed\",\n },\n },\n defaultVariants: {\n appearance: \"default\",\n },\n },\n);\n\nexport const selectContentVariants = cva(\n \"absolute z-10 mt-2 w-full rounded-md border bg-white dark:bg-black shadow-md\",\n {\n variants: {\n appearance: {\n default: \"bg-white dark:bg-black shadow-md\",\n glass: \"bg-black/10 dark:bg-white/10 backdrop-blur-md\",\n outline: \"border-2 border-gray-500\",\n ghost: \"border-transparent\",\n sky: \"border-sky-900 dark:border-sky-600\",\n rose: \"border-rose-900 dark:border-rose-600\",\n purple: \"border-purple-900 dark:border-purple-600\",\n pink: \"border-pink-900 dark:border-pink-600\",\n orange: \"border-orange-900 dark:border-orange-600\",\n yellow: \"border-yellow-900 dark:border-yellow-600\",\n teal: \"border-teal-900 dark:border-teal-600\",\n indigo: \"border-indigo-900 dark:border-indigo-600\",\n emerald: \"border-emerald-900 dark:border-emerald-600\",\n \"gradient-blue\":\n \"bg-linear-to-r from-blue-900 dark:from-blue-600 to-purple-900 dark:to-purple-600 backdrop-blur-xl\",\n \"gradient-green\":\n \"bg-linear-to-r from-green-900 dark:from-green-600 to-lime-900 dark:to-lime-600 backdrop-blur-xl\",\n \"gradient-red\":\n \"bg-linear-to-r from-red-900 dark:from-red-600 to-pink-900 dark:to-pink-600 backdrop-blur-xl\",\n \"gradient-yellow\":\n \"bg-linear-to-r from-yellow-900 dark:from-yellow-600 to-orange-900 dark:to-orange-600 backdrop-blur-xl\",\n \"gradient-purple\":\n \"bg-linear-to-r from-purple-900 dark:from-purple-600 to-pink-900 dark:to-pink-600 backdrop-blur-xl\",\n \"gradient-teal\":\n \"bg-linear-to-r from-teal-900 dark:from-teal-600 to-cyan-900 dark:to-cyan-600 backdrop-blur-xl\",\n \"gradient-indigo\":\n \"bg-linear-to-r from-indigo-900 dark:from-indigo-600 to-purple-900 dark:to-purple-600 backdrop-blur-xl\",\n \"gradient-pink\":\n \"bg-linear-to-r from-pink-900 dark:from-pink-600 to-rose-900 dark:to-rose-600 backdrop-blur-xl\",\n \"gradient-orange\":\n \"bg-linear-to-r from-orange-900 dark:from-orange-600 to-red-900 dark:to-red-600 backdrop-blur-xl\",\n },\n size: {\n sm: \"px-2 py-1 text-sm\",\n md: \"px-3 py-2\",\n lg: \"px-4 py-3 text-lg\",\n },\n spacing: {\n none: \"space-y-0\",\n default: \"space-y-1\",\n sm: \"space-y-2\",\n md: \"space-y-3\",\n lg: \"space-y-4\",\n xl: \"space-y-5\",\n },\n },\n defaultVariants: {\n appearance: \"default\",\n size: \"md\",\n spacing: \"default\",\n },\n },\n);\n","\"use client\";\nimport { useState, useEffect, useCallback, useRef, useId } from \"react\";\nimport {\n SelectProps,\n SelectOption,\n SelectTriggerProps,\n SelectContentProps,\n SelectItemProps,\n SelectValueProps,\n} from \"./types\";\nimport { createContext, useContext } from \"react\";\nimport { SelectContextType } from \"./types\";\nimport { cn } from \"../../lib/utils\";\nimport {\n selectContentVariants,\n selectItemVariants,\n selectTriggerVariants,\n} from \"./variants\";\n\nexport const SelectContext = createContext<SelectContextType | null>(null);\n\nexport const useSelect = () => {\n const ctx = useContext(SelectContext);\n if (!ctx) throw new Error(\"Select components must be used inside Select\");\n return ctx;\n};\n\nexport const Select = ({\n children,\n value,\n defaultValue = [],\n onChange,\n multiple = true,\n}: SelectProps) => {\n const listboxId = `${useId()}-listbox`;\n const [internal, setInternal] = useState<string[]>(defaultValue);\n const [open, setOpen] = useState(false);\n const [options, setOptions] = useState<SelectOption[]>([]);\n const rootRef = useRef<HTMLDivElement>(null);\n\n const selected = value ?? internal;\n\n useEffect(() => {\n if (!open) return;\n\n const handlePointerDown = (event: PointerEvent) => {\n const root = rootRef.current;\n if (!root) return;\n const target = event.target;\n if (target instanceof Node && !root.contains(target)) {\n setOpen(false);\n }\n };\n\n document.addEventListener(\"pointerdown\", handlePointerDown);\n return () => document.removeEventListener(\"pointerdown\", handlePointerDown);\n }, [open]);\n\n const setSelected = (vals: string[]) => {\n if (value !== undefined) {\n onChange?.(vals);\n } else {\n setInternal(vals);\n onChange?.(vals);\n }\n };\n\n const toggleValue = (val: string) => {\n if (multiple) {\n if (selected.includes(val)) {\n setSelected(selected.filter((v) => v !== val));\n } else {\n setSelected([...selected, val]);\n }\n } else {\n setSelected([val]);\n setOpen(false);\n }\n };\n\n const isSelected = (val: string) => selected.includes(val);\n\n const registerOption = useCallback((opt: SelectOption) => {\n setOptions((prev) => {\n if (prev.find((o) => o.value === opt.value)) return prev;\n return [...prev, opt];\n });\n }, []);\n\n return (\n <SelectContext.Provider\n value={{\n open,\n setOpen,\n selected,\n toggleValue,\n isSelected,\n registerOption,\n options,\n multiple,\n listboxId,\n }}\n >\n <div ref={rootRef} className=\"relative w-full\">\n {children}\n </div>\n </SelectContext.Provider>\n );\n};\n\nexport const SelectTrigger = ({\n className,\n variant,\n size,\n onClick,\n ...props\n}: SelectTriggerProps) => {\n const { open, setOpen, listboxId } = useSelect();\n\n return (\n <button\n type=\"button\"\n aria-expanded={open}\n aria-haspopup=\"listbox\"\n aria-controls={listboxId}\n className={cn(selectTriggerVariants({ variant, size }), className)}\n {...props}\n onClick={(event) => {\n onClick?.(event);\n if (!event.defaultPrevented) {\n setOpen(!open);\n }\n }}\n />\n );\n};\n\nexport const SelectValue = ({\n placeholder = \"Select...\",\n className,\n ...props\n}: SelectValueProps) => {\n const { selected, options } = useSelect();\n\n const selectedOptions = options.filter((o) => selected.includes(o.value));\n\n if (selectedOptions.length === 0) {\n return (\n <span className={cn(className)} {...props}>\n {placeholder}\n </span>\n );\n }\n\n return (\n <span className={cn(className)} {...props}>\n {selectedOptions.map((option, index) => (\n <span key={option.value}>\n {index > 0 ? \", \" : null}\n {option.label}\n </span>\n ))}\n </span>\n );\n};\n\nexport const SelectContent = ({\n children,\n className,\n appearance = \"default\",\n size = \"md\",\n spacing = \"default\",\n ...props\n}: SelectContentProps) => {\n const { open, listboxId, multiple } = useSelect();\n const panelRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (!open) {\n return;\n }\n const panel = panelRef.current;\n if (!panel) {\n return;\n }\n const opts = Array.from(\n panel.querySelectorAll<HTMLElement>('[role=\"option\"]'),\n ).filter((el) => el.getAttribute(\"aria-disabled\") !== \"true\");\n requestAnimationFrame(() => opts[0]?.focus());\n }, [open]);\n\n useEffect(() => {\n if (!open) {\n return;\n }\n const panel = panelRef.current;\n if (!panel) {\n return;\n }\n\n const enabledOptions = () =>\n Array.from(panel.querySelectorAll<HTMLElement>('[role=\"option\"]')).filter(\n (el) => el.getAttribute(\"aria-disabled\") !== \"true\",\n );\n\n const handleKeyDown = (event: KeyboardEvent) => {\n const options = enabledOptions();\n if (options.length === 0) {\n return;\n }\n\n const idx = options.findIndex((el) => el === document.activeElement);\n\n if (event.key === \"ArrowDown\") {\n event.preventDefault();\n const next = idx < 0 ? 0 : Math.min(idx + 1, options.length - 1);\n options[next]?.focus();\n return;\n }\n\n if (event.key === \"ArrowUp\") {\n event.preventDefault();\n const prev = idx <= 0 ? options.length - 1 : Math.max(idx - 1, 0);\n options[prev]?.focus();\n return;\n }\n\n if (event.key === \"Home\") {\n event.preventDefault();\n options[0]?.focus();\n return;\n }\n\n if (event.key === \"End\") {\n event.preventDefault();\n options[options.length - 1]?.focus();\n }\n };\n\n panel.addEventListener(\"keydown\", handleKeyDown);\n return () => panel.removeEventListener(\"keydown\", handleKeyDown);\n }, [open]);\n\n if (!open) return null;\n\n return (\n <div\n ref={panelRef}\n id={listboxId}\n role=\"listbox\"\n aria-multiselectable={multiple}\n tabIndex={-1}\n className={cn(\n selectContentVariants({ appearance, size, spacing }),\n className,\n )}\n {...props}\n >\n {children}\n </div>\n );\n};\n\nexport const SelectItem = ({\n value,\n children,\n disabled,\n appearance = \"default\",\n className,\n ...props\n}: SelectItemProps) => {\n const { toggleValue, isSelected, registerOption } = useSelect();\n\n useEffect(() => {\n registerOption({ label: children, value, disabled });\n }, [children, disabled, registerOption, value]);\n\n const isActive = isSelected(value);\n\n return (\n <div\n role=\"option\"\n aria-selected={isActive}\n aria-disabled={disabled ? true : undefined}\n tabIndex={-1}\n onClick={() => !disabled && toggleValue(value)}\n onKeyDown={(e) => {\n if (disabled) {\n return;\n }\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n toggleValue(value);\n }\n }}\n data-selected={isActive ? \"true\" : \"false\"}\n className={cn(\n selectItemVariants({\n disabled,\n appearance,\n }),\n \"flex justify-between\",\n className,\n )}\n {...props}\n >\n {children}\n {isActive && <span>✓</span>}\n </div>\n );\n};\n"]}
@@ -9,19 +9,19 @@ var selectTriggerVariants = cva(
9
9
  {
10
10
  variants: {
11
11
  variant: {
12
- default: "border-gray-300 dark:border-gray-300 bg-white dark:bg-black text-gray-900 dark:text-white",
13
- outline: "border-2 border-gray-500 text-gray-500 dark:text-gray-100",
14
- ghost: "border-transparent text-slate-900 dark:text-slate-200",
15
- sky: "border-sky-900 dark:border-sky-600 text-sky-900 dark:text-sky-600",
16
- rose: "border-rose-900 dark:border-rose-600 text-rose-900 dark:text-rose-600",
17
- purple: "border-purple-900 dark:border-purple-600 text-purple-900 dark:text-purple-600",
18
- pink: "border-pink-900 dark:border-pink-600 text-pink-900 dark:text-pink-600",
19
- orange: "border-orange-900 dark:border-orange-600 text-orange-900 dark:text-orange-600",
20
- yellow: "border-yellow-900 dark:border-yellow-600 text-yellow-900 dark:text-yellow-600",
21
- teal: "border-teal-900 dark:border-teal-600 text-teal-900 dark:text-teal-600",
22
- indigo: "border-indigo-500 text-indigo-500",
23
- emerald: "border-emerald-900 dark:border-emerald-600 text-emerald-900 dark:text-emerald-600",
24
- glass: "border-black/15 dark:border-white/15 bg-black/10 dark:bg-white/10 text-slate-900 dark:text-white backdrop-blur-md",
12
+ default: "border-gray-300 dark:border-gray-300 bg-white dark:bg-black text-gray-950 dark:text-white",
13
+ outline: "border-2 border-gray-500 text-gray-950 dark:text-gray-100",
14
+ ghost: "border-transparent text-gray-950 dark:text-gray-100",
15
+ sky: "border-sky-800 dark:border-sky-600 text-sky-950 dark:text-sky-600",
16
+ rose: "border-rose-800 dark:border-rose-600 text-rose-950 dark:text-rose-600",
17
+ purple: "border-purple-800 dark:border-purple-600 text-purple-950 dark:text-purple-600",
18
+ pink: "border-pink-800 dark:border-pink-600 text-pink-950 dark:text-pink-600",
19
+ orange: "border-orange-800 dark:border-orange-600 text-orange-950 dark:text-orange-600",
20
+ yellow: "border-yellow-800 dark:border-yellow-600 text-yellow-950 dark:text-yellow-600",
21
+ teal: "border-teal-800 dark:border-teal-600 text-teal-950 dark:text-teal-600",
22
+ indigo: "border-indigo-500 text-indigo-950",
23
+ emerald: "border-emerald-800 dark:border-emerald-600 text-emerald-950 dark:text-emerald-600",
24
+ glass: "border-black/15 dark:border-white/15 bg-black/10 dark:bg-white/10 text-gray-950 dark:text-white backdrop-blur-md",
25
25
  "gradient-blue": "bg-linear-to-r from-blue-900 dark:from-blue-600 to-purple-900 dark:to-purple-600 backdrop-blur-xl text-white",
26
26
  "gradient-green": "bg-linear-to-r from-green-900 dark:from-green-600 to-lime-900 dark:to-lime-600 backdrop-blur-xl text-white",
27
27
  "gradient-red": "bg-linear-to-r from-red-900 dark:from-red-600 to-pink-900 dark:to-pink-600 backdrop-blur-xl text-white",
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/ui/select/variants.ts","../../src/ui/select/select.tsx"],"names":[],"mappings":"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","file":"select.mjs","sourcesContent":["import { cva } from \"class-variance-authority\";\n\nexport const selectTriggerVariants = cva(\n \"flex items-center cursor-pointer justify-between rounded-md border transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-gray-600 dark:focus-visible:ring-gray-400 focus-visible:ring-offset-2\",\n {\n variants: {\n variant: {\n default:\n \"border-gray-300 dark:border-gray-300 bg-white dark:bg-black text-gray-900 dark:text-white\",\n outline: \"border-2 border-gray-500 text-gray-500 dark:text-gray-100\",\n ghost: \"border-transparent text-slate-900 dark:text-slate-200\",\n sky: \"border-sky-900 dark:border-sky-600 text-sky-900 dark:text-sky-600\",\n rose: \"border-rose-900 dark:border-rose-600 text-rose-900 dark:text-rose-600\",\n purple:\n \"border-purple-900 dark:border-purple-600 text-purple-900 dark:text-purple-600\",\n pink: \"border-pink-900 dark:border-pink-600 text-pink-900 dark:text-pink-600\",\n orange:\n \"border-orange-900 dark:border-orange-600 text-orange-900 dark:text-orange-600\",\n yellow:\n \"border-yellow-900 dark:border-yellow-600 text-yellow-900 dark:text-yellow-600\",\n teal: \"border-teal-900 dark:border-teal-600 text-teal-900 dark:text-teal-600\",\n indigo: \"border-indigo-500 text-indigo-500\",\n emerald:\n \"border-emerald-900 dark:border-emerald-600 text-emerald-900 dark:text-emerald-600\",\n glass:\n \"border-black/15 dark:border-white/15 bg-black/10 dark:bg-white/10 text-slate-900 dark:text-white backdrop-blur-md\",\n \"gradient-blue\":\n \"bg-linear-to-r from-blue-900 dark:from-blue-600 to-purple-900 dark:to-purple-600 backdrop-blur-xl text-white\",\n \"gradient-green\":\n \"bg-linear-to-r from-green-900 dark:from-green-600 to-lime-900 dark:to-lime-600 backdrop-blur-xl text-white\",\n \"gradient-red\":\n \"bg-linear-to-r from-red-900 dark:from-red-600 to-pink-900 dark:to-pink-600 backdrop-blur-xl text-white\",\n \"gradient-yellow\":\n \"bg-linear-to-r from-yellow-900 dark:from-yellow-600 to-orange-900 dark:to-orange-600 backdrop-blur-xl text-white\",\n \"gradient-purple\":\n \"bg-linear-to-r from-purple-900 dark:from-purple-600 to-pink-900 dark:to-pink-600 backdrop-blur-xl text-white\",\n \"gradient-teal\":\n \"bg-linear-to-r from-teal-900 dark:from-teal-600 to-cyan-900 dark:to-cyan-600 backdrop-blur-xl text-white\",\n \"gradient-indigo\":\n \"bg-linear-to-r from-indigo-900 dark:from-indigo-600 to-purple-900 dark:to-purple-600 backdrop-blur-xl text-white\",\n \"gradient-pink\":\n \"bg-linear-to-r from-pink-900 dark:from-pink-600 to-rose-900 dark:to-rose-600 backdrop-blur-xl text-white\",\n \"gradient-orange\":\n \"bg-linear-to-r from-orange-900 dark:from-orange-600 to-red-900 dark:to-red-600 backdrop-blur-xl text-white\",\n },\n size: {\n sm: \"px-2 py-1 text-sm\",\n md: \"px-3 py-2\",\n lg: \"px-4 py-3 text-lg\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"md\",\n },\n },\n);\n\nexport const selectItemVariants = cva(\n \"cursor-pointer px-3 py-2 rounded-md focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-gray-600 dark:focus-visible:ring-gray-400 focus-visible:ring-inset\",\n {\n variants: {\n appearance: {\n default:\n \"bg-white dark:bg-black text-gray-900 dark:text-gray-200 data-[selected=true]:bg-gray-200 data-[selected=true]:text-gray-700 dark:data-[selected=true]:text-gray-900\",\n glass:\n \"bg-black/10 dark:bg-white/10 text-gray-700 dark:text-gray-900 data-[selected=true]:bg-black/10 dark:data-[selected=true]:bg-white/10 data-[selected=true]:text-gray-700 dark:data-[selected=true]:text-gray-900\",\n outline:\n \"border-2 border-gray-500 text-gray-900 dark:text-gray-100 data-[selected=true]:border-2 data-[selected=true]:border-gray-500 data-[selected=true]:bg-gray-200 data-[selected=true]:text-gray-900 dark:data-[selected=true]:text-gray-900\",\n ghost:\n \"border-transparent text-gray-900 dark:text-gray-100 data-[selected=true]:border-transparent data-[selected=true]:bg-transparent data-[selected=true]:text-gray-900 dark:data-[selected=true]:text-gray-100\",\n sky: \"border-sky-900 dark:border-sky-600 text-sky-900 dark:text-sky-200 data-[selected=true]:border-sky-900 dark:data-[selected=true]:border-sky-600 data-[selected=true]:bg-sky-200 data-[selected=true]:text-sky-900 dark:data-[selected=true]:text-sky-900\",\n rose: \"border-rose-900 dark:border-rose-600 text-rose-900 dark:text-rose-200 data-[selected=true]:border-rose-900 dark:data-[selected=true]:border-rose-600 data-[selected=true]:bg-rose-200 data-[selected=true]:text-rose-900 dark:data-[selected=true]:text-rose-900\",\n purple:\n \"border-purple-900 dark:border-purple-600 text-purple-900 dark:text-purple-200 data-[selected=true]:border-purple-900 dark:data-[selected=true]:border-purple-600 data-[selected=true]:bg-purple-200 data-[selected=true]:text-purple-900 dark:data-[selected=true]:text-purple-900\",\n pink: \"border-pink-900 dark:border-pink-600 text-pink-900 dark:text-pink-200 data-[selected=true]:border-pink-900 dark:data-[selected=true]:border-pink-600 data-[selected=true]:bg-pink-200 data-[selected=true]:text-pink-900 dark:data-[selected=true]:text-pink-900\",\n orange:\n \"border-orange-900 dark:border-orange-600 text-orange-900 dark:text-orange-200 data-[selected=true]:border-orange-900 dark:data-[selected=true]:border-orange-600 data-[selected=true]:bg-orange-200 data-[selected=true]:text-orange-900 dark:data-[selected=true]:text-orange-900\",\n yellow:\n \"border-yellow-900 dark:border-yellow-600 text-yellow-900 dark:text-yellow-200 data-[selected=true]:border-yellow-900 dark:data-[selected=true]:border-yellow-600 data-[selected=true]:bg-yellow-200 data-[selected=true]:text-yellow-900 dark:data-[selected=true]:text-yellow-900\",\n teal: \"border-teal-900 dark:border-teal-600 text-teal-900 dark:text-teal-200 data-[selected=true]:border-teal-900 dark:data-[selected=true]:border-teal-600 data-[selected=true]:bg-teal-200 data-[selected=true]:text-teal-900 dark:data-[selected=true]:text-teal-900\",\n indigo:\n \"border-indigo-900 dark:border-indigo-600 text-indigo-900 dark:text-indigo-200 data-[selected=true]:border-indigo-900 dark:data-[selected=true]:border-indigo-600 data-[selected=true]:bg-indigo-200 data-[selected=true]:text-indigo-900 dark:data-[selected=true]:text-indigo-900\",\n emerald:\n \"border-emerald-900 dark:border-emerald-600 text-emerald-900 dark:text-emerald-200 data-[selected=true]:border-emerald-900 dark:data-[selected=true]:border-emerald-600 data-[selected=true]:bg-emerald-200 data-[selected=true]:text-emerald-900 dark:data-[selected=true]:text-emerald-900\",\n \"gradient-blue\":\n \"bg-transparent backdrop-blur-xl text-blue-50 dark:text-blue-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-blue-50 dark:data-[selected=true]:from-blue-50 data-[selected=true]:to-purple-50 dark:data-[selected=true]:to-purple-50 data-[selected=true]:text-blue-900\",\n \"gradient-green\":\n \"bg-transparent backdrop-blur-xl text-green-50 dark:text-green-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-green-50 dark:data-[selected=true]:from-green-50 data-[selected=true]:to-lime-50 dark:data-[selected=true]:to-lime-50 data-[selected=true]:text-green-900\",\n \"gradient-red\":\n \"bg-transparent backdrop-blur-xl text-red-50 dark:text-red-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-red-50 dark:data-[selected=true]:from-red-50 data-[selected=true]:to-pink-50 dark:data-[selected=true]:to-pink-50 data-[selected=true]:text-red-900\",\n \"gradient-yellow\":\n \"bg-transparent backdrop-blur-xl text-yellow-50 dark:text-yellow-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-yellow-50 dark:data-[selected=true]:from-yellow-50 data-[selected=true]:to-orange-50 dark:data-[selected=true]:to-orange-50 data-[selected=true]:text-yellow-900\",\n \"gradient-purple\":\n \"bg-transparent backdrop-blur-xl text-purple-50 dark:text-purple-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-purple-50 dark:data-[selected=true]:from-purple-50 data-[selected=true]:to-pink-50 dark:data-[selected=true]:to-pink-50 data-[selected=true]:text-purple-900\",\n \"gradient-teal\":\n \"bg-transparent backdrop-blur-xl text-teal-50 dark:text-teal-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-teal-50 dark:data-[selected=true]:from-teal-50 data-[selected=true]:to-cyan-50 dark:data-[selected=true]:to-cyan-50 data-[selected=true]:text-teal-900\",\n \"gradient-indigo\":\n \"bg-transparent backdrop-blur-xl text-indigo-50 dark:text-indigo-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-indigo-50 dark:data-[selected=true]:from-indigo-50 data-[selected=true]:to-purple-50 dark:data-[selected=true]:to-purple-50 data-[selected=true]:text-indigo-900\",\n \"gradient-pink\":\n \"bg-transparent backdrop-blur-xl text-pink-50 dark:text-pink-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-pink-50 dark:data-[selected=true]:from-pink-50 data-[selected=true]:to-rose-50 dark:data-[selected=true]:to-rose-50 data-[selected=true]:text-pink-900\",\n \"gradient-orange\":\n \"bg-transparent backdrop-blur-xl text-orange-50 dark:text-orange-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-orange-50 dark:data-[selected=true]:from-orange-50 data-[selected=true]:to-red-50 dark:data-[selected=true]:to-red-50 data-[selected=true]:text-orange-900\",\n },\n disabled: {\n true: \"opacity-50 cursor-not-allowed\",\n },\n },\n defaultVariants: {\n appearance: \"default\",\n },\n },\n);\n\nexport const selectContentVariants = cva(\n \"absolute z-10 mt-2 w-full rounded-md border bg-white dark:bg-black shadow-md\",\n {\n variants: {\n appearance: {\n default: \"bg-white dark:bg-black shadow-md\",\n glass: \"bg-black/10 dark:bg-white/10 backdrop-blur-md\",\n outline: \"border-2 border-gray-500\",\n ghost: \"border-transparent\",\n sky: \"border-sky-900 dark:border-sky-600\",\n rose: \"border-rose-900 dark:border-rose-600\",\n purple: \"border-purple-900 dark:border-purple-600\",\n pink: \"border-pink-900 dark:border-pink-600\",\n orange: \"border-orange-900 dark:border-orange-600\",\n yellow: \"border-yellow-900 dark:border-yellow-600\",\n teal: \"border-teal-900 dark:border-teal-600\",\n indigo: \"border-indigo-900 dark:border-indigo-600\",\n emerald: \"border-emerald-900 dark:border-emerald-600\",\n \"gradient-blue\":\n \"bg-linear-to-r from-blue-900 dark:from-blue-600 to-purple-900 dark:to-purple-600 backdrop-blur-xl\",\n \"gradient-green\":\n \"bg-linear-to-r from-green-900 dark:from-green-600 to-lime-900 dark:to-lime-600 backdrop-blur-xl\",\n \"gradient-red\":\n \"bg-linear-to-r from-red-900 dark:from-red-600 to-pink-900 dark:to-pink-600 backdrop-blur-xl\",\n \"gradient-yellow\":\n \"bg-linear-to-r from-yellow-900 dark:from-yellow-600 to-orange-900 dark:to-orange-600 backdrop-blur-xl\",\n \"gradient-purple\":\n \"bg-linear-to-r from-purple-900 dark:from-purple-600 to-pink-900 dark:to-pink-600 backdrop-blur-xl\",\n \"gradient-teal\":\n \"bg-linear-to-r from-teal-900 dark:from-teal-600 to-cyan-900 dark:to-cyan-600 backdrop-blur-xl\",\n \"gradient-indigo\":\n \"bg-linear-to-r from-indigo-900 dark:from-indigo-600 to-purple-900 dark:to-purple-600 backdrop-blur-xl\",\n \"gradient-pink\":\n \"bg-linear-to-r from-pink-900 dark:from-pink-600 to-rose-900 dark:to-rose-600 backdrop-blur-xl\",\n \"gradient-orange\":\n \"bg-linear-to-r from-orange-900 dark:from-orange-600 to-red-900 dark:to-red-600 backdrop-blur-xl\",\n },\n size: {\n sm: \"px-2 py-1 text-sm\",\n md: \"px-3 py-2\",\n lg: \"px-4 py-3 text-lg\",\n },\n spacing: {\n none: \"space-y-0\",\n default: \"space-y-1\",\n sm: \"space-y-2\",\n md: \"space-y-3\",\n lg: \"space-y-4\",\n xl: \"space-y-5\",\n },\n },\n defaultVariants: {\n appearance: \"default\",\n size: \"md\",\n spacing: \"default\",\n },\n },\n);\n","\"use client\";\nimport { useState, useEffect, useCallback, useRef, useId } from \"react\";\nimport {\n SelectProps,\n SelectOption,\n SelectTriggerProps,\n SelectContentProps,\n SelectItemProps,\n SelectValueProps,\n} from \"./types\";\nimport { createContext, useContext } from \"react\";\nimport { SelectContextType } from \"./types\";\nimport { cn } from \"../../lib/utils\";\nimport {\n selectContentVariants,\n selectItemVariants,\n selectTriggerVariants,\n} from \"./variants\";\n\nexport const SelectContext = createContext<SelectContextType | null>(null);\n\nexport const useSelect = () => {\n const ctx = useContext(SelectContext);\n if (!ctx) throw new Error(\"Select components must be used inside Select\");\n return ctx;\n};\n\nexport const Select = ({\n children,\n value,\n defaultValue = [],\n onChange,\n multiple = true,\n}: SelectProps) => {\n const listboxId = `${useId()}-listbox`;\n const [internal, setInternal] = useState<string[]>(defaultValue);\n const [open, setOpen] = useState(false);\n const [options, setOptions] = useState<SelectOption[]>([]);\n const rootRef = useRef<HTMLDivElement>(null);\n\n const selected = value ?? internal;\n\n useEffect(() => {\n if (!open) return;\n\n const handlePointerDown = (event: PointerEvent) => {\n const root = rootRef.current;\n if (!root) return;\n const target = event.target;\n if (target instanceof Node && !root.contains(target)) {\n setOpen(false);\n }\n };\n\n document.addEventListener(\"pointerdown\", handlePointerDown);\n return () => document.removeEventListener(\"pointerdown\", handlePointerDown);\n }, [open]);\n\n const setSelected = (vals: string[]) => {\n if (value !== undefined) {\n onChange?.(vals);\n } else {\n setInternal(vals);\n onChange?.(vals);\n }\n };\n\n const toggleValue = (val: string) => {\n if (multiple) {\n if (selected.includes(val)) {\n setSelected(selected.filter((v) => v !== val));\n } else {\n setSelected([...selected, val]);\n }\n } else {\n setSelected([val]);\n setOpen(false);\n }\n };\n\n const isSelected = (val: string) => selected.includes(val);\n\n const registerOption = useCallback((opt: SelectOption) => {\n setOptions((prev) => {\n if (prev.find((o) => o.value === opt.value)) return prev;\n return [...prev, opt];\n });\n }, []);\n\n return (\n <SelectContext.Provider\n value={{\n open,\n setOpen,\n selected,\n toggleValue,\n isSelected,\n registerOption,\n options,\n multiple,\n listboxId,\n }}\n >\n <div ref={rootRef} className=\"relative w-full\">\n {children}\n </div>\n </SelectContext.Provider>\n );\n};\n\nexport const SelectTrigger = ({\n className,\n variant,\n size,\n onClick,\n ...props\n}: SelectTriggerProps) => {\n const { open, setOpen, listboxId } = useSelect();\n\n return (\n <button\n type=\"button\"\n aria-expanded={open}\n aria-haspopup=\"listbox\"\n aria-controls={listboxId}\n className={cn(selectTriggerVariants({ variant, size }), className)}\n {...props}\n onClick={(event) => {\n onClick?.(event);\n if (!event.defaultPrevented) {\n setOpen(!open);\n }\n }}\n />\n );\n};\n\nexport const SelectValue = ({\n placeholder = \"Select...\",\n className,\n ...props\n}: SelectValueProps) => {\n const { selected, options } = useSelect();\n\n const selectedOptions = options.filter((o) => selected.includes(o.value));\n\n if (selectedOptions.length === 0) {\n return (\n <span className={cn(className)} {...props}>\n {placeholder}\n </span>\n );\n }\n\n return (\n <span className={cn(className)} {...props}>\n {selectedOptions.map((option, index) => (\n <span key={option.value}>\n {index > 0 ? \", \" : null}\n {option.label}\n </span>\n ))}\n </span>\n );\n};\n\nexport const SelectContent = ({\n children,\n className,\n appearance = \"default\",\n size = \"md\",\n spacing = \"default\",\n ...props\n}: SelectContentProps) => {\n const { open, listboxId, multiple } = useSelect();\n const panelRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (!open) {\n return;\n }\n const panel = panelRef.current;\n if (!panel) {\n return;\n }\n const opts = Array.from(\n panel.querySelectorAll<HTMLElement>('[role=\"option\"]'),\n ).filter((el) => el.getAttribute(\"aria-disabled\") !== \"true\");\n requestAnimationFrame(() => opts[0]?.focus());\n }, [open]);\n\n useEffect(() => {\n if (!open) {\n return;\n }\n const panel = panelRef.current;\n if (!panel) {\n return;\n }\n\n const enabledOptions = () =>\n Array.from(panel.querySelectorAll<HTMLElement>('[role=\"option\"]')).filter(\n (el) => el.getAttribute(\"aria-disabled\") !== \"true\",\n );\n\n const handleKeyDown = (event: KeyboardEvent) => {\n const options = enabledOptions();\n if (options.length === 0) {\n return;\n }\n\n const idx = options.findIndex((el) => el === document.activeElement);\n\n if (event.key === \"ArrowDown\") {\n event.preventDefault();\n const next = idx < 0 ? 0 : Math.min(idx + 1, options.length - 1);\n options[next]?.focus();\n return;\n }\n\n if (event.key === \"ArrowUp\") {\n event.preventDefault();\n const prev = idx <= 0 ? options.length - 1 : Math.max(idx - 1, 0);\n options[prev]?.focus();\n return;\n }\n\n if (event.key === \"Home\") {\n event.preventDefault();\n options[0]?.focus();\n return;\n }\n\n if (event.key === \"End\") {\n event.preventDefault();\n options[options.length - 1]?.focus();\n }\n };\n\n panel.addEventListener(\"keydown\", handleKeyDown);\n return () => panel.removeEventListener(\"keydown\", handleKeyDown);\n }, [open]);\n\n if (!open) return null;\n\n return (\n <div\n ref={panelRef}\n id={listboxId}\n role=\"listbox\"\n aria-multiselectable={multiple}\n tabIndex={-1}\n className={cn(\n selectContentVariants({ appearance, size, spacing }),\n className,\n )}\n {...props}\n >\n {children}\n </div>\n );\n};\n\nexport const SelectItem = ({\n value,\n children,\n disabled,\n appearance = \"default\",\n className,\n ...props\n}: SelectItemProps) => {\n const { toggleValue, isSelected, registerOption } = useSelect();\n\n useEffect(() => {\n registerOption({ label: children, value, disabled });\n }, [children, disabled, registerOption, value]);\n\n const isActive = isSelected(value);\n\n return (\n <div\n role=\"option\"\n aria-selected={isActive}\n aria-disabled={disabled ? true : undefined}\n tabIndex={-1}\n onClick={() => !disabled && toggleValue(value)}\n onKeyDown={(e) => {\n if (disabled) {\n return;\n }\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n toggleValue(value);\n }\n }}\n data-selected={isActive ? \"true\" : \"false\"}\n className={cn(\n selectItemVariants({\n disabled,\n appearance,\n }),\n \"flex justify-between\",\n className,\n )}\n {...props}\n >\n {children}\n {isActive && <span>✓</span>}\n </div>\n );\n};\n"]}
1
+ {"version":3,"sources":["../../src/ui/select/variants.ts","../../src/ui/select/select.tsx"],"names":[],"mappings":"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","file":"select.mjs","sourcesContent":["import { cva } from \"class-variance-authority\";\n\nexport const selectTriggerVariants = cva(\n \"flex items-center cursor-pointer justify-between rounded-md border transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-gray-600 dark:focus-visible:ring-gray-400 focus-visible:ring-offset-2\",\n {\n variants: {\n variant: {\n default:\n \"border-gray-300 dark:border-gray-300 bg-white dark:bg-black text-gray-950 dark:text-white\",\n outline: \"border-2 border-gray-500 text-gray-950 dark:text-gray-100\",\n ghost: \"border-transparent text-gray-950 dark:text-gray-100\",\n sky: \"border-sky-800 dark:border-sky-600 text-sky-950 dark:text-sky-600\",\n rose: \"border-rose-800 dark:border-rose-600 text-rose-950 dark:text-rose-600\",\n purple:\n \"border-purple-800 dark:border-purple-600 text-purple-950 dark:text-purple-600\",\n pink: \"border-pink-800 dark:border-pink-600 text-pink-950 dark:text-pink-600\",\n orange:\n \"border-orange-800 dark:border-orange-600 text-orange-950 dark:text-orange-600\",\n yellow:\n \"border-yellow-800 dark:border-yellow-600 text-yellow-950 dark:text-yellow-600\",\n teal: \"border-teal-800 dark:border-teal-600 text-teal-950 dark:text-teal-600\",\n indigo: \"border-indigo-500 text-indigo-950\",\n emerald:\n \"border-emerald-800 dark:border-emerald-600 text-emerald-950 dark:text-emerald-600\",\n glass:\n \"border-black/15 dark:border-white/15 bg-black/10 dark:bg-white/10 text-gray-950 dark:text-white backdrop-blur-md\",\n \"gradient-blue\":\n \"bg-linear-to-r from-blue-900 dark:from-blue-600 to-purple-900 dark:to-purple-600 backdrop-blur-xl text-white\",\n \"gradient-green\":\n \"bg-linear-to-r from-green-900 dark:from-green-600 to-lime-900 dark:to-lime-600 backdrop-blur-xl text-white\",\n \"gradient-red\":\n \"bg-linear-to-r from-red-900 dark:from-red-600 to-pink-900 dark:to-pink-600 backdrop-blur-xl text-white\",\n \"gradient-yellow\":\n \"bg-linear-to-r from-yellow-900 dark:from-yellow-600 to-orange-900 dark:to-orange-600 backdrop-blur-xl text-white\",\n \"gradient-purple\":\n \"bg-linear-to-r from-purple-900 dark:from-purple-600 to-pink-900 dark:to-pink-600 backdrop-blur-xl text-white\",\n \"gradient-teal\":\n \"bg-linear-to-r from-teal-900 dark:from-teal-600 to-cyan-900 dark:to-cyan-600 backdrop-blur-xl text-white\",\n \"gradient-indigo\":\n \"bg-linear-to-r from-indigo-900 dark:from-indigo-600 to-purple-900 dark:to-purple-600 backdrop-blur-xl text-white\",\n \"gradient-pink\":\n \"bg-linear-to-r from-pink-900 dark:from-pink-600 to-rose-900 dark:to-rose-600 backdrop-blur-xl text-white\",\n \"gradient-orange\":\n \"bg-linear-to-r from-orange-900 dark:from-orange-600 to-red-900 dark:to-red-600 backdrop-blur-xl text-white\",\n },\n size: {\n sm: \"px-2 py-1 text-sm\",\n md: \"px-3 py-2\",\n lg: \"px-4 py-3 text-lg\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"md\",\n },\n },\n);\n\nexport const selectItemVariants = cva(\n \"cursor-pointer px-3 py-2 rounded-md focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-gray-600 dark:focus-visible:ring-gray-400 focus-visible:ring-inset\",\n {\n variants: {\n appearance: {\n default:\n \"bg-white dark:bg-black text-gray-900 dark:text-gray-200 data-[selected=true]:bg-gray-200 data-[selected=true]:text-gray-700 dark:data-[selected=true]:text-gray-900\",\n glass:\n \"bg-black/10 dark:bg-white/10 text-gray-700 dark:text-gray-900 data-[selected=true]:bg-black/10 dark:data-[selected=true]:bg-white/10 data-[selected=true]:text-gray-700 dark:data-[selected=true]:text-gray-900\",\n outline:\n \"border-2 border-gray-500 text-gray-900 dark:text-gray-100 data-[selected=true]:border-2 data-[selected=true]:border-gray-500 data-[selected=true]:bg-gray-200 data-[selected=true]:text-gray-900 dark:data-[selected=true]:text-gray-900\",\n ghost:\n \"border-transparent text-gray-900 dark:text-gray-100 data-[selected=true]:border-transparent data-[selected=true]:bg-transparent data-[selected=true]:text-gray-900 dark:data-[selected=true]:text-gray-100\",\n sky: \"border-sky-900 dark:border-sky-600 text-sky-900 dark:text-sky-200 data-[selected=true]:border-sky-900 dark:data-[selected=true]:border-sky-600 data-[selected=true]:bg-sky-200 data-[selected=true]:text-sky-900 dark:data-[selected=true]:text-sky-900\",\n rose: \"border-rose-900 dark:border-rose-600 text-rose-900 dark:text-rose-200 data-[selected=true]:border-rose-900 dark:data-[selected=true]:border-rose-600 data-[selected=true]:bg-rose-200 data-[selected=true]:text-rose-900 dark:data-[selected=true]:text-rose-900\",\n purple:\n \"border-purple-900 dark:border-purple-600 text-purple-900 dark:text-purple-200 data-[selected=true]:border-purple-900 dark:data-[selected=true]:border-purple-600 data-[selected=true]:bg-purple-200 data-[selected=true]:text-purple-900 dark:data-[selected=true]:text-purple-900\",\n pink: \"border-pink-900 dark:border-pink-600 text-pink-900 dark:text-pink-200 data-[selected=true]:border-pink-900 dark:data-[selected=true]:border-pink-600 data-[selected=true]:bg-pink-200 data-[selected=true]:text-pink-900 dark:data-[selected=true]:text-pink-900\",\n orange:\n \"border-orange-900 dark:border-orange-600 text-orange-900 dark:text-orange-200 data-[selected=true]:border-orange-900 dark:data-[selected=true]:border-orange-600 data-[selected=true]:bg-orange-200 data-[selected=true]:text-orange-900 dark:data-[selected=true]:text-orange-900\",\n yellow:\n \"border-yellow-900 dark:border-yellow-600 text-yellow-900 dark:text-yellow-200 data-[selected=true]:border-yellow-900 dark:data-[selected=true]:border-yellow-600 data-[selected=true]:bg-yellow-200 data-[selected=true]:text-yellow-900 dark:data-[selected=true]:text-yellow-900\",\n teal: \"border-teal-900 dark:border-teal-600 text-teal-900 dark:text-teal-200 data-[selected=true]:border-teal-900 dark:data-[selected=true]:border-teal-600 data-[selected=true]:bg-teal-200 data-[selected=true]:text-teal-900 dark:data-[selected=true]:text-teal-900\",\n indigo:\n \"border-indigo-900 dark:border-indigo-600 text-indigo-900 dark:text-indigo-200 data-[selected=true]:border-indigo-900 dark:data-[selected=true]:border-indigo-600 data-[selected=true]:bg-indigo-200 data-[selected=true]:text-indigo-900 dark:data-[selected=true]:text-indigo-900\",\n emerald:\n \"border-emerald-900 dark:border-emerald-600 text-emerald-900 dark:text-emerald-200 data-[selected=true]:border-emerald-900 dark:data-[selected=true]:border-emerald-600 data-[selected=true]:bg-emerald-200 data-[selected=true]:text-emerald-900 dark:data-[selected=true]:text-emerald-900\",\n \"gradient-blue\":\n \"bg-transparent backdrop-blur-xl text-blue-50 dark:text-blue-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-blue-50 dark:data-[selected=true]:from-blue-50 data-[selected=true]:to-purple-50 dark:data-[selected=true]:to-purple-50 data-[selected=true]:text-blue-900\",\n \"gradient-green\":\n \"bg-transparent backdrop-blur-xl text-green-50 dark:text-green-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-green-50 dark:data-[selected=true]:from-green-50 data-[selected=true]:to-lime-50 dark:data-[selected=true]:to-lime-50 data-[selected=true]:text-green-900\",\n \"gradient-red\":\n \"bg-transparent backdrop-blur-xl text-red-50 dark:text-red-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-red-50 dark:data-[selected=true]:from-red-50 data-[selected=true]:to-pink-50 dark:data-[selected=true]:to-pink-50 data-[selected=true]:text-red-900\",\n \"gradient-yellow\":\n \"bg-transparent backdrop-blur-xl text-yellow-50 dark:text-yellow-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-yellow-50 dark:data-[selected=true]:from-yellow-50 data-[selected=true]:to-orange-50 dark:data-[selected=true]:to-orange-50 data-[selected=true]:text-yellow-900\",\n \"gradient-purple\":\n \"bg-transparent backdrop-blur-xl text-purple-50 dark:text-purple-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-purple-50 dark:data-[selected=true]:from-purple-50 data-[selected=true]:to-pink-50 dark:data-[selected=true]:to-pink-50 data-[selected=true]:text-purple-900\",\n \"gradient-teal\":\n \"bg-transparent backdrop-blur-xl text-teal-50 dark:text-teal-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-teal-50 dark:data-[selected=true]:from-teal-50 data-[selected=true]:to-cyan-50 dark:data-[selected=true]:to-cyan-50 data-[selected=true]:text-teal-900\",\n \"gradient-indigo\":\n \"bg-transparent backdrop-blur-xl text-indigo-50 dark:text-indigo-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-indigo-50 dark:data-[selected=true]:from-indigo-50 data-[selected=true]:to-purple-50 dark:data-[selected=true]:to-purple-50 data-[selected=true]:text-indigo-900\",\n \"gradient-pink\":\n \"bg-transparent backdrop-blur-xl text-pink-50 dark:text-pink-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-pink-50 dark:data-[selected=true]:from-pink-50 data-[selected=true]:to-rose-50 dark:data-[selected=true]:to-rose-50 data-[selected=true]:text-pink-900\",\n \"gradient-orange\":\n \"bg-transparent backdrop-blur-xl text-orange-50 dark:text-orange-50 data-[selected=true]:bg-linear-to-r data-[selected=true]:from-orange-50 dark:data-[selected=true]:from-orange-50 data-[selected=true]:to-red-50 dark:data-[selected=true]:to-red-50 data-[selected=true]:text-orange-900\",\n },\n disabled: {\n true: \"opacity-50 cursor-not-allowed\",\n },\n },\n defaultVariants: {\n appearance: \"default\",\n },\n },\n);\n\nexport const selectContentVariants = cva(\n \"absolute z-10 mt-2 w-full rounded-md border bg-white dark:bg-black shadow-md\",\n {\n variants: {\n appearance: {\n default: \"bg-white dark:bg-black shadow-md\",\n glass: \"bg-black/10 dark:bg-white/10 backdrop-blur-md\",\n outline: \"border-2 border-gray-500\",\n ghost: \"border-transparent\",\n sky: \"border-sky-900 dark:border-sky-600\",\n rose: \"border-rose-900 dark:border-rose-600\",\n purple: \"border-purple-900 dark:border-purple-600\",\n pink: \"border-pink-900 dark:border-pink-600\",\n orange: \"border-orange-900 dark:border-orange-600\",\n yellow: \"border-yellow-900 dark:border-yellow-600\",\n teal: \"border-teal-900 dark:border-teal-600\",\n indigo: \"border-indigo-900 dark:border-indigo-600\",\n emerald: \"border-emerald-900 dark:border-emerald-600\",\n \"gradient-blue\":\n \"bg-linear-to-r from-blue-900 dark:from-blue-600 to-purple-900 dark:to-purple-600 backdrop-blur-xl\",\n \"gradient-green\":\n \"bg-linear-to-r from-green-900 dark:from-green-600 to-lime-900 dark:to-lime-600 backdrop-blur-xl\",\n \"gradient-red\":\n \"bg-linear-to-r from-red-900 dark:from-red-600 to-pink-900 dark:to-pink-600 backdrop-blur-xl\",\n \"gradient-yellow\":\n \"bg-linear-to-r from-yellow-900 dark:from-yellow-600 to-orange-900 dark:to-orange-600 backdrop-blur-xl\",\n \"gradient-purple\":\n \"bg-linear-to-r from-purple-900 dark:from-purple-600 to-pink-900 dark:to-pink-600 backdrop-blur-xl\",\n \"gradient-teal\":\n \"bg-linear-to-r from-teal-900 dark:from-teal-600 to-cyan-900 dark:to-cyan-600 backdrop-blur-xl\",\n \"gradient-indigo\":\n \"bg-linear-to-r from-indigo-900 dark:from-indigo-600 to-purple-900 dark:to-purple-600 backdrop-blur-xl\",\n \"gradient-pink\":\n \"bg-linear-to-r from-pink-900 dark:from-pink-600 to-rose-900 dark:to-rose-600 backdrop-blur-xl\",\n \"gradient-orange\":\n \"bg-linear-to-r from-orange-900 dark:from-orange-600 to-red-900 dark:to-red-600 backdrop-blur-xl\",\n },\n size: {\n sm: \"px-2 py-1 text-sm\",\n md: \"px-3 py-2\",\n lg: \"px-4 py-3 text-lg\",\n },\n spacing: {\n none: \"space-y-0\",\n default: \"space-y-1\",\n sm: \"space-y-2\",\n md: \"space-y-3\",\n lg: \"space-y-4\",\n xl: \"space-y-5\",\n },\n },\n defaultVariants: {\n appearance: \"default\",\n size: \"md\",\n spacing: \"default\",\n },\n },\n);\n","\"use client\";\nimport { useState, useEffect, useCallback, useRef, useId } from \"react\";\nimport {\n SelectProps,\n SelectOption,\n SelectTriggerProps,\n SelectContentProps,\n SelectItemProps,\n SelectValueProps,\n} from \"./types\";\nimport { createContext, useContext } from \"react\";\nimport { SelectContextType } from \"./types\";\nimport { cn } from \"../../lib/utils\";\nimport {\n selectContentVariants,\n selectItemVariants,\n selectTriggerVariants,\n} from \"./variants\";\n\nexport const SelectContext = createContext<SelectContextType | null>(null);\n\nexport const useSelect = () => {\n const ctx = useContext(SelectContext);\n if (!ctx) throw new Error(\"Select components must be used inside Select\");\n return ctx;\n};\n\nexport const Select = ({\n children,\n value,\n defaultValue = [],\n onChange,\n multiple = true,\n}: SelectProps) => {\n const listboxId = `${useId()}-listbox`;\n const [internal, setInternal] = useState<string[]>(defaultValue);\n const [open, setOpen] = useState(false);\n const [options, setOptions] = useState<SelectOption[]>([]);\n const rootRef = useRef<HTMLDivElement>(null);\n\n const selected = value ?? internal;\n\n useEffect(() => {\n if (!open) return;\n\n const handlePointerDown = (event: PointerEvent) => {\n const root = rootRef.current;\n if (!root) return;\n const target = event.target;\n if (target instanceof Node && !root.contains(target)) {\n setOpen(false);\n }\n };\n\n document.addEventListener(\"pointerdown\", handlePointerDown);\n return () => document.removeEventListener(\"pointerdown\", handlePointerDown);\n }, [open]);\n\n const setSelected = (vals: string[]) => {\n if (value !== undefined) {\n onChange?.(vals);\n } else {\n setInternal(vals);\n onChange?.(vals);\n }\n };\n\n const toggleValue = (val: string) => {\n if (multiple) {\n if (selected.includes(val)) {\n setSelected(selected.filter((v) => v !== val));\n } else {\n setSelected([...selected, val]);\n }\n } else {\n setSelected([val]);\n setOpen(false);\n }\n };\n\n const isSelected = (val: string) => selected.includes(val);\n\n const registerOption = useCallback((opt: SelectOption) => {\n setOptions((prev) => {\n if (prev.find((o) => o.value === opt.value)) return prev;\n return [...prev, opt];\n });\n }, []);\n\n return (\n <SelectContext.Provider\n value={{\n open,\n setOpen,\n selected,\n toggleValue,\n isSelected,\n registerOption,\n options,\n multiple,\n listboxId,\n }}\n >\n <div ref={rootRef} className=\"relative w-full\">\n {children}\n </div>\n </SelectContext.Provider>\n );\n};\n\nexport const SelectTrigger = ({\n className,\n variant,\n size,\n onClick,\n ...props\n}: SelectTriggerProps) => {\n const { open, setOpen, listboxId } = useSelect();\n\n return (\n <button\n type=\"button\"\n aria-expanded={open}\n aria-haspopup=\"listbox\"\n aria-controls={listboxId}\n className={cn(selectTriggerVariants({ variant, size }), className)}\n {...props}\n onClick={(event) => {\n onClick?.(event);\n if (!event.defaultPrevented) {\n setOpen(!open);\n }\n }}\n />\n );\n};\n\nexport const SelectValue = ({\n placeholder = \"Select...\",\n className,\n ...props\n}: SelectValueProps) => {\n const { selected, options } = useSelect();\n\n const selectedOptions = options.filter((o) => selected.includes(o.value));\n\n if (selectedOptions.length === 0) {\n return (\n <span className={cn(className)} {...props}>\n {placeholder}\n </span>\n );\n }\n\n return (\n <span className={cn(className)} {...props}>\n {selectedOptions.map((option, index) => (\n <span key={option.value}>\n {index > 0 ? \", \" : null}\n {option.label}\n </span>\n ))}\n </span>\n );\n};\n\nexport const SelectContent = ({\n children,\n className,\n appearance = \"default\",\n size = \"md\",\n spacing = \"default\",\n ...props\n}: SelectContentProps) => {\n const { open, listboxId, multiple } = useSelect();\n const panelRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (!open) {\n return;\n }\n const panel = panelRef.current;\n if (!panel) {\n return;\n }\n const opts = Array.from(\n panel.querySelectorAll<HTMLElement>('[role=\"option\"]'),\n ).filter((el) => el.getAttribute(\"aria-disabled\") !== \"true\");\n requestAnimationFrame(() => opts[0]?.focus());\n }, [open]);\n\n useEffect(() => {\n if (!open) {\n return;\n }\n const panel = panelRef.current;\n if (!panel) {\n return;\n }\n\n const enabledOptions = () =>\n Array.from(panel.querySelectorAll<HTMLElement>('[role=\"option\"]')).filter(\n (el) => el.getAttribute(\"aria-disabled\") !== \"true\",\n );\n\n const handleKeyDown = (event: KeyboardEvent) => {\n const options = enabledOptions();\n if (options.length === 0) {\n return;\n }\n\n const idx = options.findIndex((el) => el === document.activeElement);\n\n if (event.key === \"ArrowDown\") {\n event.preventDefault();\n const next = idx < 0 ? 0 : Math.min(idx + 1, options.length - 1);\n options[next]?.focus();\n return;\n }\n\n if (event.key === \"ArrowUp\") {\n event.preventDefault();\n const prev = idx <= 0 ? options.length - 1 : Math.max(idx - 1, 0);\n options[prev]?.focus();\n return;\n }\n\n if (event.key === \"Home\") {\n event.preventDefault();\n options[0]?.focus();\n return;\n }\n\n if (event.key === \"End\") {\n event.preventDefault();\n options[options.length - 1]?.focus();\n }\n };\n\n panel.addEventListener(\"keydown\", handleKeyDown);\n return () => panel.removeEventListener(\"keydown\", handleKeyDown);\n }, [open]);\n\n if (!open) return null;\n\n return (\n <div\n ref={panelRef}\n id={listboxId}\n role=\"listbox\"\n aria-multiselectable={multiple}\n tabIndex={-1}\n className={cn(\n selectContentVariants({ appearance, size, spacing }),\n className,\n )}\n {...props}\n >\n {children}\n </div>\n );\n};\n\nexport const SelectItem = ({\n value,\n children,\n disabled,\n appearance = \"default\",\n className,\n ...props\n}: SelectItemProps) => {\n const { toggleValue, isSelected, registerOption } = useSelect();\n\n useEffect(() => {\n registerOption({ label: children, value, disabled });\n }, [children, disabled, registerOption, value]);\n\n const isActive = isSelected(value);\n\n return (\n <div\n role=\"option\"\n aria-selected={isActive}\n aria-disabled={disabled ? true : undefined}\n tabIndex={-1}\n onClick={() => !disabled && toggleValue(value)}\n onKeyDown={(e) => {\n if (disabled) {\n return;\n }\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n toggleValue(value);\n }\n }}\n data-selected={isActive ? \"true\" : \"false\"}\n className={cn(\n selectItemVariants({\n disabled,\n appearance,\n }),\n \"flex justify-between\",\n className,\n )}\n {...props}\n >\n {children}\n {isActive && <span>✓</span>}\n </div>\n );\n};\n"]}
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunk662PJBZD_js = require('../../chunk-662PJBZD.js');
4
+ var chunkCXNDE4VC_js = require('../../chunk-CXNDE4VC.js');
5
5
  var chunkZS5756ZC_js = require('../../chunk-ZS5756ZC.js');
6
6
  var framerMotion = require('framer-motion');
7
7
  var jsxRuntime = require('react/jsx-runtime');
@@ -54,7 +54,7 @@ function TabsContentAnimated({
54
54
  orientation,
55
55
  tabTriggerId,
56
56
  tabPanelId
57
- } = chunk662PJBZD_js.useTabs();
57
+ } = chunkCXNDE4VC_js.useTabs();
58
58
  const prefersReducedMotion2 = framerMotion.useReducedMotion();
59
59
  if (activeValue !== value) return null;
60
60
  const motionProps = getTabsContentMotionProps(