@jacshuo/onyx 0.1.8 → 0.2.1

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 (154) hide show
  1. package/README.md +66 -2
  2. package/dist/Accordion.cjs +1 -1
  3. package/dist/Accordion.js +1 -1
  4. package/dist/Alert.cjs +1 -1
  5. package/dist/Alert.d.cts +3 -1
  6. package/dist/Alert.d.ts +3 -1
  7. package/dist/Alert.js +1 -1
  8. package/dist/Badge.cjs +1 -1
  9. package/dist/Badge.js +1 -1
  10. package/dist/Button.cjs +1 -1
  11. package/dist/Button.js +1 -1
  12. package/dist/Card.cjs +1 -1
  13. package/dist/Card.js +1 -1
  14. package/dist/Checkbox.cjs +1 -0
  15. package/dist/Checkbox.d.cts +21 -0
  16. package/dist/Checkbox.d.ts +21 -0
  17. package/dist/Checkbox.js +1 -0
  18. package/dist/CodeBlock.cjs +1 -0
  19. package/dist/CodeBlock.d.cts +22 -0
  20. package/dist/CodeBlock.d.ts +22 -0
  21. package/dist/CodeBlock.js +1 -0
  22. package/dist/Dialog.cjs +1 -1
  23. package/dist/Dialog.js +1 -1
  24. package/dist/Dropdown.cjs +1 -1
  25. package/dist/Dropdown.d.cts +8 -0
  26. package/dist/Dropdown.d.ts +8 -0
  27. package/dist/Dropdown.js +1 -1
  28. package/dist/DropdownButton.cjs +1 -1
  29. package/dist/DropdownButton.js +1 -1
  30. package/dist/FileExplorer.cjs +1 -1
  31. package/dist/FileExplorer.js +1 -1
  32. package/dist/Input.cjs +1 -1
  33. package/dist/Input.js +1 -1
  34. package/dist/Label.cjs +1 -1
  35. package/dist/Label.js +1 -1
  36. package/dist/List.cjs +1 -1
  37. package/dist/List.d.cts +6 -2
  38. package/dist/List.d.ts +6 -2
  39. package/dist/List.js +1 -1
  40. package/dist/NavLink.cjs +1 -0
  41. package/dist/NavLink.d.cts +13 -0
  42. package/dist/NavLink.d.ts +13 -0
  43. package/dist/NavLink.js +1 -0
  44. package/dist/Panel.cjs +1 -1
  45. package/dist/Panel.js +1 -1
  46. package/dist/ProgressBar.cjs +1 -0
  47. package/dist/ProgressBar.d.cts +21 -0
  48. package/dist/ProgressBar.d.ts +21 -0
  49. package/dist/ProgressBar.js +1 -0
  50. package/dist/Radio.cjs +1 -0
  51. package/dist/Radio.d.cts +33 -0
  52. package/dist/Radio.d.ts +33 -0
  53. package/dist/Radio.js +1 -0
  54. package/dist/Spin.cjs +1 -0
  55. package/dist/Spin.d.cts +26 -0
  56. package/dist/Spin.d.ts +26 -0
  57. package/dist/Spin.js +1 -0
  58. package/dist/Switch.cjs +1 -0
  59. package/dist/Switch.d.cts +23 -0
  60. package/dist/Switch.d.ts +23 -0
  61. package/dist/Switch.js +1 -0
  62. package/dist/Table.cjs +1 -1
  63. package/dist/Table.d.cts +19 -3
  64. package/dist/Table.d.ts +19 -3
  65. package/dist/Table.js +1 -1
  66. package/dist/Tabs.cjs +1 -1
  67. package/dist/Tabs.js +1 -1
  68. package/dist/TextBox.cjs +1 -0
  69. package/dist/TextBox.d.cts +16 -0
  70. package/dist/TextBox.d.ts +16 -0
  71. package/dist/TextBox.js +1 -0
  72. package/dist/Tooltip.cjs +1 -1
  73. package/dist/Tooltip.js +1 -1
  74. package/dist/Tree.cjs +1 -1
  75. package/dist/Tree.d.cts +3 -1
  76. package/dist/Tree.d.ts +3 -1
  77. package/dist/Tree.js +1 -1
  78. package/dist/chunks/chunk-24YBOQFV.cjs +2 -0
  79. package/dist/chunks/chunk-2TTIBHQ3.js +1 -0
  80. package/dist/chunks/chunk-3B5OL3PD.cjs +2 -0
  81. package/dist/chunks/chunk-64BRBJ5M.js +1 -0
  82. package/dist/chunks/{chunk-NG7F3GCN.js → chunk-6DR7FZ4Y.js} +1 -1
  83. package/dist/chunks/{chunk-N36YROV3.js → chunk-7DM4FEFY.js} +1 -1
  84. package/dist/chunks/{chunk-4BKLB4KV.cjs → chunk-7PD2UMAG.cjs} +1 -1
  85. package/dist/chunks/chunk-7QV2AV32.cjs +1 -0
  86. package/dist/chunks/chunk-A7BECCRP.cjs +1 -0
  87. package/dist/chunks/{chunk-HA5QPLJP.cjs → chunk-A7SZGBY2.cjs} +1 -1
  88. package/dist/chunks/{chunk-ENRXEISR.js → chunk-BGUKKSPF.js} +1 -1
  89. package/dist/chunks/{chunk-VDC7N5TC.js → chunk-DCWKY33F.js} +1 -1
  90. package/dist/chunks/chunk-EQXC34N2.cjs +2 -0
  91. package/dist/chunks/chunk-FROZM2O6.js +1 -0
  92. package/dist/chunks/chunk-GQDGQUKK.js +1 -0
  93. package/dist/chunks/{chunk-BQLPFPCA.cjs → chunk-GT56J65P.cjs} +1 -1
  94. package/dist/chunks/{chunk-MXDZHU6E.cjs → chunk-GW4C7AV6.cjs} +2 -2
  95. package/dist/chunks/chunk-H35HQKON.js +2 -0
  96. package/dist/chunks/chunk-H6MHL66N.js +1 -0
  97. package/dist/chunks/{chunk-EK4BC3WT.cjs → chunk-HFHOE2PH.cjs} +1 -1
  98. package/dist/chunks/{chunk-JAKATE3I.js → chunk-HR4MRHSX.js} +1 -1
  99. package/dist/chunks/{chunk-7NYDMXZT.cjs → chunk-HSLG4VVI.cjs} +1 -1
  100. package/dist/chunks/{chunk-TDI2N27U.cjs → chunk-HSWWY3SE.cjs} +1 -1
  101. package/dist/chunks/{chunk-5PFWPAB6.js → chunk-I327TE7P.js} +1 -1
  102. package/dist/chunks/{chunk-6HZRNHE6.js → chunk-IPPWOV6D.js} +1 -1
  103. package/dist/chunks/chunk-K4UGTWDR.js +1 -0
  104. package/dist/chunks/chunk-KFQVZ2HC.cjs +1 -0
  105. package/dist/chunks/chunk-KG3IXPCM.js +2 -0
  106. package/dist/chunks/chunk-LCLJVRKK.cjs +1 -0
  107. package/dist/chunks/chunk-LZZTFSBF.js +1 -0
  108. package/dist/chunks/{chunk-GAK5OQW4.cjs → chunk-MSBDCLPM.cjs} +1 -1
  109. package/dist/chunks/{chunk-PODSD5UT.js → chunk-MVGDKSBE.js} +1 -1
  110. package/dist/chunks/{chunk-66LIYNLT.cjs → chunk-NFRGBE42.cjs} +1 -1
  111. package/dist/chunks/chunk-NI2HVXR2.js +1 -0
  112. package/dist/chunks/chunk-NXWDOFPX.cjs +1 -0
  113. package/dist/chunks/chunk-NYTZZ5ZX.cjs +1 -0
  114. package/dist/chunks/{chunk-U2ZQHP4I.cjs → chunk-OMBYGQJE.cjs} +1 -1
  115. package/dist/chunks/chunk-PC4PVKTK.js +2 -0
  116. package/dist/chunks/chunk-Q53OOZJ3.cjs +1 -0
  117. package/dist/chunks/chunk-R7ZKMSZ3.js +1 -0
  118. package/dist/chunks/{chunk-XCP37UUA.cjs → chunk-SJ2HIDEM.cjs} +1 -1
  119. package/dist/chunks/{chunk-AAFG7R4U.cjs → chunk-SKZIAHHY.cjs} +1 -1
  120. package/dist/chunks/{chunk-R2K6KI4L.js → chunk-T3WU6A7R.js} +1 -1
  121. package/dist/chunks/{chunk-NCJ5A6VE.js → chunk-VHOOZBWZ.js} +1 -1
  122. package/dist/chunks/chunk-W2JIAB3E.js +1 -0
  123. package/dist/chunks/chunk-WL4AMFUA.cjs +1 -0
  124. package/dist/chunks/chunk-WQA7PVJO.js +1 -0
  125. package/dist/chunks/{chunk-DXXCR4ON.js → chunk-X3PUHNVJ.js} +1 -1
  126. package/dist/chunks/chunk-X4OS5ODF.cjs +1 -0
  127. package/dist/chunks/chunk-XOZYC6XB.cjs +1 -0
  128. package/dist/chunks/{chunk-2DFUB3KN.js → chunk-YWD2VK35.js} +1 -1
  129. package/dist/chunks/chunk-ZEHGTD6Y.cjs +1 -0
  130. package/dist/index.cjs +1 -1
  131. package/dist/index.d.cts +12 -4
  132. package/dist/index.d.ts +12 -4
  133. package/dist/index.js +1 -1
  134. package/dist/styles/base.css +728 -0
  135. package/dist/styles/tailwind.css +21 -0
  136. package/dist/styles/tokens.css +71 -0
  137. package/dist/styles.css +728 -0
  138. package/dist/theme.cjs +1 -1
  139. package/dist/theme.d.cts +32 -1
  140. package/dist/theme.d.ts +32 -1
  141. package/dist/theme.js +1 -1
  142. package/package.json +2 -1
  143. package/dist/chunks/chunk-5XPTHIGM.cjs +0 -1
  144. package/dist/chunks/chunk-63LKYF4D.cjs +0 -1
  145. package/dist/chunks/chunk-6OLB4BUJ.js +0 -1
  146. package/dist/chunks/chunk-ACQOSYBI.js +0 -1
  147. package/dist/chunks/chunk-BW6NCATH.js +0 -1
  148. package/dist/chunks/chunk-DWTXICFN.js +0 -1
  149. package/dist/chunks/chunk-ER2MYWQO.cjs +0 -1
  150. package/dist/chunks/chunk-NBLJWONR.cjs +0 -1
  151. package/dist/chunks/chunk-ORNYPP3O.cjs +0 -1
  152. package/dist/chunks/chunk-PSMWVB3O.js +0 -1
  153. package/dist/chunks/chunk-QLKUAE3R.cjs +0 -1
  154. package/dist/chunks/chunk-SMZQSZH2.js +0 -1
package/dist/theme.cjs CHANGED
@@ -1 +1 @@
1
- 'use strict';var chunkNBLJWONR_cjs=require('./chunks/chunk-NBLJWONR.cjs');Object.defineProperty(exports,"accordionVariants",{enumerable:true,get:function(){return chunkNBLJWONR_cjs.i}});Object.defineProperty(exports,"alertVariants",{enumerable:true,get:function(){return chunkNBLJWONR_cjs.n}});Object.defineProperty(exports,"badgeVariants",{enumerable:true,get:function(){return chunkNBLJWONR_cjs.b}});Object.defineProperty(exports,"buttonVariants",{enumerable:true,get:function(){return chunkNBLJWONR_cjs.a}});Object.defineProperty(exports,"cardVariants",{enumerable:true,get:function(){return chunkNBLJWONR_cjs.e}});Object.defineProperty(exports,"dialogContentVariants",{enumerable:true,get:function(){return chunkNBLJWONR_cjs.l}});Object.defineProperty(exports,"inputVariants",{enumerable:true,get:function(){return chunkNBLJWONR_cjs.c}});Object.defineProperty(exports,"labelVariants",{enumerable:true,get:function(){return chunkNBLJWONR_cjs.d}});Object.defineProperty(exports,"listVariants",{enumerable:true,get:function(){return chunkNBLJWONR_cjs.h}});Object.defineProperty(exports,"panelVariants",{enumerable:true,get:function(){return chunkNBLJWONR_cjs.f}});Object.defineProperty(exports,"tabListVariants",{enumerable:true,get:function(){return chunkNBLJWONR_cjs.j}});Object.defineProperty(exports,"tabTriggerVariants",{enumerable:true,get:function(){return chunkNBLJWONR_cjs.k}});Object.defineProperty(exports,"tableVariants",{enumerable:true,get:function(){return chunkNBLJWONR_cjs.g}});Object.defineProperty(exports,"tooltipVariants",{enumerable:true,get:function(){return chunkNBLJWONR_cjs.m}});
1
+ 'use strict';var chunkNYTZZ5ZX_cjs=require('./chunks/chunk-NYTZZ5ZX.cjs');Object.defineProperty(exports,"accordionVariants",{enumerable:true,get:function(){return chunkNYTZZ5ZX_cjs.i}});Object.defineProperty(exports,"alertVariants",{enumerable:true,get:function(){return chunkNYTZZ5ZX_cjs.u}});Object.defineProperty(exports,"badgeVariants",{enumerable:true,get:function(){return chunkNYTZZ5ZX_cjs.b}});Object.defineProperty(exports,"buttonVariants",{enumerable:true,get:function(){return chunkNYTZZ5ZX_cjs.a}});Object.defineProperty(exports,"cardVariants",{enumerable:true,get:function(){return chunkNYTZZ5ZX_cjs.e}});Object.defineProperty(exports,"checkboxVariants",{enumerable:true,get:function(){return chunkNYTZZ5ZX_cjs.r}});Object.defineProperty(exports,"codeBlockVariants",{enumerable:true,get:function(){return chunkNYTZZ5ZX_cjs.o}});Object.defineProperty(exports,"dialogContentVariants",{enumerable:true,get:function(){return chunkNYTZZ5ZX_cjs.l}});Object.defineProperty(exports,"inputVariants",{enumerable:true,get:function(){return chunkNYTZZ5ZX_cjs.c}});Object.defineProperty(exports,"labelVariants",{enumerable:true,get:function(){return chunkNYTZZ5ZX_cjs.d}});Object.defineProperty(exports,"listVariants",{enumerable:true,get:function(){return chunkNYTZZ5ZX_cjs.h}});Object.defineProperty(exports,"navLinkVariants",{enumerable:true,get:function(){return chunkNYTZZ5ZX_cjs.n}});Object.defineProperty(exports,"panelVariants",{enumerable:true,get:function(){return chunkNYTZZ5ZX_cjs.f}});Object.defineProperty(exports,"progressBarVariants",{enumerable:true,get:function(){return chunkNYTZZ5ZX_cjs.p}});Object.defineProperty(exports,"radioVariants",{enumerable:true,get:function(){return chunkNYTZZ5ZX_cjs.s}});Object.defineProperty(exports,"spinVariants",{enumerable:true,get:function(){return chunkNYTZZ5ZX_cjs.q}});Object.defineProperty(exports,"switchTrackVariants",{enumerable:true,get:function(){return chunkNYTZZ5ZX_cjs.t}});Object.defineProperty(exports,"tabListVariants",{enumerable:true,get:function(){return chunkNYTZZ5ZX_cjs.j}});Object.defineProperty(exports,"tabTriggerVariants",{enumerable:true,get:function(){return chunkNYTZZ5ZX_cjs.k}});Object.defineProperty(exports,"tableVariants",{enumerable:true,get:function(){return chunkNYTZZ5ZX_cjs.g}});Object.defineProperty(exports,"tooltipVariants",{enumerable:true,get:function(){return chunkNYTZZ5ZX_cjs.m}});
package/dist/theme.d.cts CHANGED
@@ -44,8 +44,39 @@ declare const dialogContentVariants: (props?: ({
44
44
  declare const tooltipVariants: (props?: ({
45
45
  intent?: "default" | "light" | null | undefined;
46
46
  } & class_variance_authority_types.ClassProp) | undefined) => string;
47
+ declare const navLinkVariants: (props?: ({
48
+ intent?: "secondary" | "default" | "muted" | null | undefined;
49
+ size?: "sm" | "md" | "lg" | null | undefined;
50
+ underline?: "hover" | "always" | "none" | null | undefined;
51
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
52
+ declare const codeBlockVariants: (props?: ({
53
+ size?: "sm" | "md" | "lg" | null | undefined;
54
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
55
+ declare const progressBarVariants: (props?: ({
56
+ size?: "sm" | "md" | "lg" | "xs" | null | undefined;
57
+ intent?: "primary" | "danger" | "warning" | "success" | null | undefined;
58
+ edge?: "none" | "top" | "bottom" | null | undefined;
59
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
60
+ declare const spinVariants: (props?: ({
61
+ size?: "sm" | "md" | "lg" | null | undefined;
62
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
63
+ declare const checkboxVariants: (props?: ({
64
+ intent?: "primary" | "secondary" | "danger" | "warning" | "success" | null | undefined;
65
+ size?: "sm" | "md" | "lg" | null | undefined;
66
+ checked?: "on" | "off" | null | undefined;
67
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
68
+ declare const radioVariants: (props?: ({
69
+ intent?: "primary" | "secondary" | "danger" | "warning" | "success" | null | undefined;
70
+ size?: "sm" | "md" | "lg" | null | undefined;
71
+ checked?: "on" | "off" | null | undefined;
72
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
73
+ declare const switchTrackVariants: (props?: ({
74
+ intent?: "primary" | "secondary" | "danger" | "warning" | "success" | null | undefined;
75
+ size?: "sm" | "md" | "lg" | null | undefined;
76
+ checked?: "on" | "off" | null | undefined;
77
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
47
78
  declare const alertVariants: (props?: ({
48
79
  intent?: "warning" | "success" | "error" | "info" | null | undefined;
49
80
  } & class_variance_authority_types.ClassProp) | undefined) => string;
50
81
 
51
- export { accordionVariants, alertVariants, badgeVariants, buttonVariants, cardVariants, dialogContentVariants, inputVariants, labelVariants, listVariants, panelVariants, tabListVariants, tabTriggerVariants, tableVariants, tooltipVariants };
82
+ export { accordionVariants, alertVariants, badgeVariants, buttonVariants, cardVariants, checkboxVariants, codeBlockVariants, dialogContentVariants, inputVariants, labelVariants, listVariants, navLinkVariants, panelVariants, progressBarVariants, radioVariants, spinVariants, switchTrackVariants, tabListVariants, tabTriggerVariants, tableVariants, tooltipVariants };
package/dist/theme.d.ts CHANGED
@@ -44,8 +44,39 @@ declare const dialogContentVariants: (props?: ({
44
44
  declare const tooltipVariants: (props?: ({
45
45
  intent?: "default" | "light" | null | undefined;
46
46
  } & class_variance_authority_types.ClassProp) | undefined) => string;
47
+ declare const navLinkVariants: (props?: ({
48
+ intent?: "secondary" | "default" | "muted" | null | undefined;
49
+ size?: "sm" | "md" | "lg" | null | undefined;
50
+ underline?: "hover" | "always" | "none" | null | undefined;
51
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
52
+ declare const codeBlockVariants: (props?: ({
53
+ size?: "sm" | "md" | "lg" | null | undefined;
54
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
55
+ declare const progressBarVariants: (props?: ({
56
+ size?: "sm" | "md" | "lg" | "xs" | null | undefined;
57
+ intent?: "primary" | "danger" | "warning" | "success" | null | undefined;
58
+ edge?: "none" | "top" | "bottom" | null | undefined;
59
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
60
+ declare const spinVariants: (props?: ({
61
+ size?: "sm" | "md" | "lg" | null | undefined;
62
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
63
+ declare const checkboxVariants: (props?: ({
64
+ intent?: "primary" | "secondary" | "danger" | "warning" | "success" | null | undefined;
65
+ size?: "sm" | "md" | "lg" | null | undefined;
66
+ checked?: "on" | "off" | null | undefined;
67
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
68
+ declare const radioVariants: (props?: ({
69
+ intent?: "primary" | "secondary" | "danger" | "warning" | "success" | null | undefined;
70
+ size?: "sm" | "md" | "lg" | null | undefined;
71
+ checked?: "on" | "off" | null | undefined;
72
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
73
+ declare const switchTrackVariants: (props?: ({
74
+ intent?: "primary" | "secondary" | "danger" | "warning" | "success" | null | undefined;
75
+ size?: "sm" | "md" | "lg" | null | undefined;
76
+ checked?: "on" | "off" | null | undefined;
77
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
47
78
  declare const alertVariants: (props?: ({
48
79
  intent?: "warning" | "success" | "error" | "info" | null | undefined;
49
80
  } & class_variance_authority_types.ClassProp) | undefined) => string;
50
81
 
51
- export { accordionVariants, alertVariants, badgeVariants, buttonVariants, cardVariants, dialogContentVariants, inputVariants, labelVariants, listVariants, panelVariants, tabListVariants, tabTriggerVariants, tableVariants, tooltipVariants };
82
+ export { accordionVariants, alertVariants, badgeVariants, buttonVariants, cardVariants, checkboxVariants, codeBlockVariants, dialogContentVariants, inputVariants, labelVariants, listVariants, navLinkVariants, panelVariants, progressBarVariants, radioVariants, spinVariants, switchTrackVariants, tabListVariants, tabTriggerVariants, tableVariants, tooltipVariants };
package/dist/theme.js CHANGED
@@ -1 +1 @@
1
- export{i as accordionVariants,n as alertVariants,b as badgeVariants,a as buttonVariants,e as cardVariants,l as dialogContentVariants,c as inputVariants,d as labelVariants,h as listVariants,f as panelVariants,j as tabListVariants,k as tabTriggerVariants,g as tableVariants,m as tooltipVariants}from'./chunks/chunk-ACQOSYBI.js';
1
+ export{i as accordionVariants,u as alertVariants,b as badgeVariants,a as buttonVariants,e as cardVariants,r as checkboxVariants,o as codeBlockVariants,l as dialogContentVariants,c as inputVariants,d as labelVariants,h as listVariants,n as navLinkVariants,f as panelVariants,p as progressBarVariants,s as radioVariants,q as spinVariants,t as switchTrackVariants,j as tabListVariants,k as tabTriggerVariants,g as tableVariants,m as tooltipVariants}from'./chunks/chunk-H6MHL66N.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jacshuo/onyx",
3
- "version": "0.1.8",
3
+ "version": "0.2.1",
4
4
  "description": "Cross-platform React UI component library — works in web & Electron",
5
5
  "type": "module",
6
6
  "main": "dist/index.cjs",
@@ -67,6 +67,7 @@
67
67
  "class-variance-authority": "^0.7.1",
68
68
  "clsx": "^2.1.1",
69
69
  "lucide-react": "^0.577.0",
70
+ "shiki": "^4.0.2",
70
71
  "tailwind-merge": "^3.5.0"
71
72
  },
72
73
  "devDependencies": {
@@ -1 +0,0 @@
1
- 'use strict';var chunkNBLJWONR_cjs=require('./chunk-NBLJWONR.cjs'),chunkX5YP5TMY_cjs=require('./chunk-X5YP5TMY.cjs'),react=require('react'),lucideReact=require('lucide-react'),jsxRuntime=require('react/jsx-runtime');function P(s,o){for(let r of s){if(r.value===o)return r;if(r.children){let c=P(r.children,o);if(c)return c}}}function T(s){let o=[];for(let r of s)r.children?.length||o.push(r),r.children&&o.push(...T(r.children));return o}function j({options:s,onSelect:o,depth:r=0}){let[c,f]=react.useState(null),u=react.useRef(void 0),b=e=>{u.current&&clearTimeout(u.current),f(e);},y=()=>{u.current=setTimeout(()=>f(null),150);};return react.useEffect(()=>()=>{u.current&&clearTimeout(u.current);},[]),jsxRuntime.jsx("div",{className:chunkX5YP5TMY_cjs.a("absolute z-50 min-w-44 rounded-md border py-1 shadow-lg","border-primary-200 dark:border-primary-700 dark:bg-primary-800 bg-white","animate-fade-in",r===0?"mt-1 w-full":"top-0 ml-0.5"),style:r>0?{left:"100%"}:void 0,role:"listbox",children:s.map(e=>{let l=!!e.children?.length,d=c===e.value;return jsxRuntime.jsxs("div",{className:"relative",onMouseEnter:()=>b(e.value),onMouseLeave:y,children:[jsxRuntime.jsxs("div",{role:"option","aria-selected":false,"aria-disabled":e.disabled,className:chunkX5YP5TMY_cjs.a("flex w-full cursor-pointer items-center gap-2 px-3 py-1.5 text-left text-sm transition-colors","text-primary-700 hover:bg-primary-100 dark:text-primary-300 dark:hover:bg-primary-700/50",e.disabled&&"pointer-events-none opacity-50"),onClick:()=>{e.disabled||l||o(e.value,e);},children:[e.icon&&jsxRuntime.jsx("span",{className:"flex h-4 w-4 shrink-0 items-center justify-center",children:e.icon}),jsxRuntime.jsx("span",{className:"flex-1 truncate",children:e.label??e.value}),l&&jsxRuntime.jsx(lucideReact.ChevronRight,{className:"text-primary-400 h-3.5 w-3.5 shrink-0"})]}),l&&d&&jsxRuntime.jsx(j,{options:e.children,onSelect:o,depth:r+1})]},e.value)})})}function G({options:s,filter:o,multiple:r,selected:c,canAdd:f,onSelect:u,onToggle:b,onAdd:y}){let e=react.useMemo(()=>T(s),[s]),l=o.toLowerCase(),d=o?e.filter(t=>(t.label??t.value).toLowerCase().includes(l)||t.value.toLowerCase().includes(l)):e;return jsxRuntime.jsxs("div",{className:chunkX5YP5TMY_cjs.a("absolute z-50 mt-1 w-full max-h-60 min-w-44 overflow-y-auto rounded-md border py-1 shadow-lg","border-primary-200 dark:border-primary-700 dark:bg-primary-800 bg-white","animate-fade-in"),role:"listbox","aria-multiselectable":r||void 0,children:[d.map(t=>{let m=r&&c.includes(t.value);return jsxRuntime.jsxs("div",{role:"option","aria-selected":r?m:false,"aria-disabled":t.disabled,className:chunkX5YP5TMY_cjs.a("flex w-full cursor-pointer items-center gap-2 px-3 py-1.5 text-left text-sm transition-colors","text-primary-700 hover:bg-primary-100 dark:text-primary-300 dark:hover:bg-primary-700/50",t.disabled&&"pointer-events-none opacity-50"),onClick:()=>{t.disabled||(r?b(t.value):u(t.value,t));},children:[r&&jsxRuntime.jsx("span",{className:chunkX5YP5TMY_cjs.a("flex h-4 w-4 shrink-0 items-center justify-center rounded border transition-colors",m?"border-primary-600 bg-primary-600 text-white dark:border-primary-500 dark:bg-primary-500":"border-secondary-300 bg-white dark:border-secondary-600 dark:bg-secondary-800"),children:m&&jsxRuntime.jsx(lucideReact.Check,{className:"h-3 w-3"})}),t.icon&&jsxRuntime.jsx("span",{className:"flex h-4 w-4 shrink-0 items-center justify-center",children:t.icon}),jsxRuntime.jsx("span",{className:"truncate",children:t.label??t.value})]},t.value)}),d.length===0&&!f&&jsxRuntime.jsx("div",{className:"text-primary-400 px-3 py-2 text-center text-sm",children:"No matches"}),f&&jsxRuntime.jsxs("div",{className:chunkX5YP5TMY_cjs.a("flex w-full cursor-pointer items-center gap-2 px-3 py-1.5 text-left text-sm transition-colors","text-primary-600 hover:bg-primary-50 dark:text-primary-400 dark:hover:bg-primary-900/30"),onClick:y,children:[jsxRuntime.jsx("span",{className:"flex h-4 w-4 shrink-0 items-center justify-center text-lg leading-none",children:"+"}),jsxRuntime.jsxs("span",{className:"truncate",children:["Add \u201C",o.trim(),"\u201D"]})]})]})}function Y(s){let{options:o,placeholder:r="Select\u2026",editable:c=false,onAddItem:f,disabled:u=false,align:b="left",className:y}=s,e=s.multiple===true,l=e?s.selected??[]:[],[d,t]=react.useState(false),[m,h]=react.useState(""),k=react.useRef(null),R=react.useRef(null),D=e?void 0:s.value,w=react.useMemo(()=>D?P(o,D):void 0,[o,D]);react.useEffect(()=>{if(!d)return;let n=a=>{k.current&&!k.current.contains(a.target)&&(t(false),h(""));};return document.addEventListener("mousedown",n),()=>document.removeEventListener("mousedown",n)},[d]),react.useEffect(()=>{if(!d)return;let n=a=>{a.key==="Escape"&&(t(false),h(""));};return document.addEventListener("keydown",n),()=>document.removeEventListener("keydown",n)},[d]);let A=react.useCallback((n,a)=>{e||s.onChange?.(n,a),t(false),h("");},[e,s]),H=react.useCallback(n=>{if(!e)return;let a=l.includes(n)?l.filter(q=>q!==n):[...l,n];s.onSelectionChange?.(a);},[e,l,s]),N=m.toLowerCase(),C=react.useMemo(()=>!c||!m.trim()?false:!T(o).some(a=>a.value.toLowerCase()===N||(a.label??a.value).toLowerCase()===N),[c,N,o]),O=react.useCallback(()=>{let n=m.trim();n&&(f?.(n),h(""));},[m,f]),I=react.useCallback(n=>{n.key==="Enter"&&C&&(n.preventDefault(),O());},[C,O]),B=react.useCallback(()=>{u||(t(n=>{let a=!n;return a&&c&&requestAnimationFrame(()=>R.current?.focus()),a}),h(""));},[u,c]),g;if(e){let n=l.length;n===0?g="":n<=2?g=l.map(a=>P(o,a)).map(a=>a?a.label??a.value:"").filter(Boolean).join(", "):g=`${n} selected`;}else g=w?w.label??w.value:"";let F=e||c;return jsxRuntime.jsxs("div",{ref:k,className:chunkX5YP5TMY_cjs.a("relative inline-block min-w-44",y),children:[jsxRuntime.jsxs("div",{className:chunkX5YP5TMY_cjs.a(chunkNBLJWONR_cjs.c({state:"default",size:"md"}),"flex cursor-pointer items-center gap-1",u&&"pointer-events-none opacity-50"),onClick:B,role:"combobox","aria-expanded":d,"aria-haspopup":"listbox",children:[c?jsxRuntime.jsx("input",{ref:R,className:"min-w-0 flex-1 bg-transparent outline-none placeholder:text-secondary-400 dark:placeholder:text-secondary-600",value:d?m:g,placeholder:r,disabled:u,onChange:n=>{h(n.target.value),d||t(true);},onKeyDown:I,onClick:n=>{n.stopPropagation(),d||t(true);}}):jsxRuntime.jsx("span",{className:chunkX5YP5TMY_cjs.a("flex-1 truncate",!g&&"text-secondary-400 dark:text-secondary-600"),children:g||r}),w?.icon&&!c&&!e&&jsxRuntime.jsx("span",{className:"flex h-4 w-4 shrink-0 items-center justify-center",children:w.icon}),e&&l.length>0&&jsxRuntime.jsx("span",{className:"rounded-full bg-primary-100 px-1.5 text-xs font-semibold text-primary-700 dark:bg-primary-900 dark:text-primary-300",children:l.length}),jsxRuntime.jsx(lucideReact.ChevronDown,{className:chunkX5YP5TMY_cjs.a("text-primary-400 h-4 w-4 shrink-0 transition-transform",d&&"rotate-180")})]}),d&&jsxRuntime.jsx("div",{className:chunkX5YP5TMY_cjs.a(b==="right"?"right-0":"left-0","absolute w-full"),children:F?jsxRuntime.jsx(G,{options:o,filter:m,multiple:e,selected:l,canAdd:C,onSelect:A,onToggle:H,onAdd:O}):jsxRuntime.jsx(j,{options:o,onSelect:A})})]})}exports.a=Y;
@@ -1 +0,0 @@
1
- 'use strict';var chunkNBLJWONR_cjs=require('./chunk-NBLJWONR.cjs'),chunkX5YP5TMY_cjs=require('./chunk-X5YP5TMY.cjs'),react=require('react'),reactDom=require('react-dom'),client=require('react-dom/client'),lucideReact=require('lucide-react'),jsxRuntime=require('react/jsx-runtime');function j({intent:t,className:e,children:n,...o}){return jsxRuntime.jsx("div",{className:chunkX5YP5TMY_cjs.a(chunkNBLJWONR_cjs.n({intent:t}),e),role:"alert",...o,children:n})}function q({className:t,...e}){return jsxRuntime.jsx("h5",{className:chunkX5YP5TMY_cjs.a("flex items-center gap-1.5 font-semibold [&_svg]:h-4 [&_svg]:w-4 [&_svg]:shrink-0",t),...e})}function B({className:t,...e}){return jsxRuntime.jsx("p",{className:chunkX5YP5TMY_cjs.a("text-sm opacity-90",t),...e})}var I=0,l=[],m=new Map,p=new Set;function V(){return l}function f(){p.forEach(t=>t());}function d(t){let e=m.get(t);e&&(clearTimeout(e),m.delete(t)),l=l.map(n=>n.id===t?{...n,exiting:true}:n),f(),setTimeout(()=>{l=l.filter(n=>n.id!==t),f();},200);}function E(t){let e=`alert-${++I}`;l=[...l,{...t,id:e}],f();let n=t.duration??5e3;if(n>0){let o=setTimeout(()=>{m.delete(e),d(e);},n);m.set(e,o);}return e}var u=16;function J(t){u=t;}var M={"top-right":"right-4 items-end","top-left":"left-4 items-start","bottom-right":"bottom-4 right-4 items-end","bottom-left":"bottom-4 left-4 items-start","top-center":"left-1/2 -translate-x-1/2 items-center","bottom-center":"bottom-4 left-1/2 -translate-x-1/2 items-center"},k={"top-right":"animate-slide-in-right","top-left":"animate-slide-in-left","bottom-right":"animate-slide-in-right","bottom-left":"animate-slide-in-left","top-center":"animate-slide-in-top","bottom-center":"animate-slide-in-bottom"},w={success:lucideReact.CircleCheck,warning:lucideReact.TriangleAlert,error:lucideReact.CircleX,info:lucideReact.Info};function H({alert:t,onClose:e}){let n=t.intent??"info",o=w[n],a=t.position??"top-right";return jsxRuntime.jsxs("div",{className:chunkX5YP5TMY_cjs.a(chunkNBLJWONR_cjs.n({intent:n}),k[a],t.exiting&&"opacity-0 transition-opacity duration-200","w-80"),role:"alert",children:[jsxRuntime.jsx(o,{className:"mt-0.5 h-5 w-5 shrink-0"}),jsxRuntime.jsxs("div",{className:"flex-1",children:[t.title&&jsxRuntime.jsx("p",{className:"font-semibold",children:t.title}),jsxRuntime.jsx("p",{className:chunkX5YP5TMY_cjs.a(t.title&&"text-sm opacity-90"),children:t.message})]}),jsxRuntime.jsx("button",{onClick:e,"aria-label":"Close notification",className:"shrink-0 cursor-pointer opacity-50 transition-opacity hover:opacity-100",children:jsxRuntime.jsx(lucideReact.X,{className:"h-4 w-4"})})]})}var O=t=>t.startsWith("top");function S(){let t=react.useSyncExternalStore(o=>(p.add(o),()=>p.delete(o)),V),e=react.useRef(u);if(react.useEffect(()=>{e.current=u;},[]),t.length===0)return null;let n=t.reduce((o,a)=>{let r=a.position??"top-right";return (o[r]??(o[r]=[])).push(a),o},{});return reactDom.createPortal(jsxRuntime.jsx(jsxRuntime.Fragment,{children:Object.entries(n).map(([o,a])=>jsxRuntime.jsx("div",{style:O(o)?{top:`${e.current}px`}:void 0,className:chunkX5YP5TMY_cjs.a("pointer-events-none fixed z-100 flex flex-col gap-2",M[o]),children:a.map(r=>jsxRuntime.jsx(H,{alert:r,onClose:()=>d(r.id)},r.id))},o))}),document.body)}var g=false;function L(){if(g)return;g=true;let t=document.createElement("div");t.id="alert-toast-root",document.body.appendChild(t),client.createRoot(t).render(jsxRuntime.jsx(S,{}));}function K(){return react.useEffect(()=>{L();},[]),{addAlert:E,removeAlert:d}}exports.a=j;exports.b=q;exports.c=B;exports.d=J;exports.e=K;
@@ -1 +0,0 @@
1
- import {g}from'./chunk-ACQOSYBI.js';import {a}from'./chunk-AXBJKPZZ.js';import {useState,useCallback,useMemo,useRef,useEffect}from'react';import {Plus,Trash2,Pencil,ArrowUpDown,ArrowUp,ArrowDown,Check,X}from'lucide-react';import {jsx,jsxs}from'react/jsx-runtime';function G({intent:r,className:a$1,...u}){return jsx("div",{className:"w-full overflow-auto",children:jsx("table",{className:a(g({intent:r}),a$1),...u})})}function J({className:r,...a$1}){return jsx("thead",{className:a("bg-primary-50 text-primary-600 dark:bg-primary-800/50 dark:text-primary-400",r),...a$1})}function O({className:r,...a$1}){return jsx("tbody",{className:a("[&_tr:last-child]:border-0",r),...a$1})}function I({className:r,...a$1}){return jsx("tr",{className:a("border-primary-200 hover:bg-primary-50/50 dark:border-primary-700 dark:hover:bg-primary-800/30 border-b transition-colors",r),...a$1})}function L({className:r,...a$1}){return jsx("th",{className:a("px-4 py-3 text-left text-xs font-semibold tracking-wider uppercase",r),...a$1})}function M({className:r,...a$1}){return jsx("td",{className:a("text-primary-700 dark:text-primary-300 px-4 py-3",r),...a$1})}function xe({columns:r,data:a$1,sort:u,onSortChange:g,defaultSort:k=null,rowKey:T,intent:d,className:x}){let[B,w]=useState(k),m=u??B,F=useCallback(n=>{let p=m?.column===n?m.direction==="asc"?{column:n,direction:"desc"}:null:{column:n,direction:"asc"};g?g(p):w(p);},[m,g]),E=useMemo(()=>{if(!m)return a$1;let n=r.find(H=>H.key===m.column);if(!n)return a$1;let p=n.compareFn??((H,U)=>{let i=n.cell(H),h=n.cell(U);return i==null&&h==null?0:i==null?-1:h==null?1:typeof i=="number"&&typeof h=="number"?i-h:String(i).localeCompare(String(h))}),f=[...a$1].sort(p);return m.direction==="desc"?f.reverse():f},[a$1,m,r]);return jsxs(G,{intent:d,className:x,children:[jsx(J,{children:jsx(I,{children:r.map(n=>{let p=n.sortable!==false,f=m?.column===n.key;return jsx(L,{className:a(p&&"cursor-pointer select-none",n.headerClassName),onClick:p?()=>F(n.key):void 0,"aria-sort":f?m.direction==="asc"?"ascending":"descending":void 0,children:jsxs("span",{className:"inline-flex items-center gap-1",children:[n.header,p&&jsx(Q,{active:f,direction:f?m.direction:null})]})},n.key)})})}),jsx(O,{children:E.map((n,p)=>jsx(I,{children:r.map(f=>jsx(M,{className:f.cellClassName,children:f.cell(n)},f.key))},T?T(n,p):p))})]})}function be({value:r,onCommit:a,onCancel:u}){let[g,k]=useState(r),T=useRef(null);useEffect(()=>{T.current?.focus(),T.current?.select();},[]);let d=()=>a(g);return jsxs("span",{className:"flex items-center gap-1",children:[jsx("input",{ref:T,type:"text",value:g,onChange:x=>k(x.target.value),onKeyDown:x=>{x.key==="Enter"&&d(),x.key==="Escape"&&u();},"aria-label":"Edit cell",className:"min-w-0 flex-1 rounded border border-primary-400 bg-white px-1.5 py-0.5 text-sm outline-none focus:ring-1 focus:ring-primary-400 dark:border-primary-600 dark:bg-secondary-800"}),jsx("button",{type:"button",onClick:d,className:"text-success-600 hover:text-success-700 dark:text-success-400","aria-label":"Confirm",children:jsx(Check,{className:"h-3.5 w-3.5"})}),jsx("button",{type:"button",onClick:u,className:"text-danger-500 hover:text-danger-600 dark:text-danger-400","aria-label":"Cancel",children:jsx(X,{className:"h-3.5 w-3.5"})})]})}function ke({columns:r,data:a$1,rowKey:u,sort:g,onSortChange:k,defaultSort:T=null,selectionMode:d="none",selected:x,onSelectionChange:B,editable:w=false,onCellEdit:m,toolbar:F=false,onAdd:E,onDelete:n,intent:p,className:f}){let[H,U]=useState(T),i=g??H,h=useCallback(e=>{let o=i?.column===e?i.direction==="asc"?{column:e,direction:"desc"}:null:{column:e,direction:"asc"};k?k(o):U(o);},[i,k]),X=useMemo(()=>{if(!i)return a$1;let e=r.find(S=>S.key===i.column);if(!e)return a$1;let o=e.compareFn??((S,c)=>{let N=e.cell(S),K=e.cell(c);return N==null&&K==null?0:N==null?-1:K==null?1:typeof N=="number"&&typeof K=="number"?N-K:String(N).localeCompare(String(K))}),s=[...a$1].sort(o);return i.direction==="desc"?s.reverse():s},[a$1,i,r]),[W,Y]=useState([]),l=x??W,v=B??Y,P=useMemo(()=>X.map((e,o)=>u(e,o)),[X,u]),V=d==="multiple"&&P.length>0&&P.every(e=>l.includes(e)),Z=d==="multiple"&&l.length>0&&!V,_=useCallback(e=>{d==="single"?v(l.includes(e)?[]:[e]):d==="multiple"&&v(l.includes(e)?l.filter(o=>o!==e):[...l,e]);},[d,l,v]),j=useCallback(()=>{v(V?[]:P);},[V,P,v]),[q,A]=useState(null),ee=useCallback((e,o,s)=>{w&&s!==false&&A({rowKey:e,colKey:o});},[w]),te=useCallback((e,o,s)=>{m?.(e,o,s),A(null);},[m]);return jsxs("div",{className:"space-y-2",children:[F&&jsxs("div",{className:"flex items-center gap-2",children:[E&&jsxs("button",{type:"button",onClick:E,className:"inline-flex items-center gap-1.5 rounded-md border border-secondary-300 bg-white px-3 py-1.5 text-sm font-medium text-secondary-700 transition-colors hover:bg-secondary-50 dark:border-secondary-600 dark:bg-secondary-800 dark:text-secondary-300 dark:hover:bg-secondary-700",children:[jsx(Plus,{className:"h-3.5 w-3.5"})," Add"]}),n&&jsxs("button",{type:"button",onClick:()=>n(l),disabled:l.length===0,className:"inline-flex items-center gap-1.5 rounded-md border border-secondary-300 bg-white px-3 py-1.5 text-sm font-medium text-danger-600 transition-colors hover:bg-danger-50 disabled:opacity-40 disabled:pointer-events-none dark:border-secondary-600 dark:bg-secondary-800 dark:text-danger-400 dark:hover:bg-danger-900/20",children:[jsx(Trash2,{className:"h-3.5 w-3.5"})," Delete",l.length>0&&` (${l.length})`]}),w&&l.length===1&&jsxs("button",{type:"button",onClick:()=>{let e=r.find(o=>o.editable!==false);e&&A({rowKey:l[0],colKey:e.key});},className:"inline-flex items-center gap-1.5 rounded-md border border-secondary-300 bg-white px-3 py-1.5 text-sm font-medium text-secondary-700 transition-colors hover:bg-secondary-50 dark:border-secondary-600 dark:bg-secondary-800 dark:text-secondary-300 dark:hover:bg-secondary-700",children:[jsx(Pencil,{className:"h-3.5 w-3.5"})," Edit"]}),l.length>0&&jsxs("span",{className:"ml-auto text-sm text-secondary-500 dark:text-secondary-400",children:[l.length," row",l.length>1?"s":""," selected"]})]}),jsxs(G,{intent:p,className:f,children:[jsx(J,{children:jsxs(I,{children:[d==="multiple"&&jsx(L,{className:"w-10",children:jsx("input",{type:"checkbox",checked:V,ref:e=>{e&&(e.indeterminate=Z);},onChange:j,className:"h-4 w-4 cursor-pointer rounded border-secondary-300 accent-primary-600","aria-label":"Select all"})}),d==="single"&&jsx(L,{className:"w-10"}),r.map(e=>{let o=e.sortable!==false,s=i?.column===e.key;return jsx(L,{className:a(o&&"cursor-pointer select-none",e.headerClassName),onClick:o?()=>h(e.key):void 0,"aria-sort":s?i.direction==="asc"?"ascending":"descending":void 0,children:jsxs("span",{className:"inline-flex items-center gap-1",children:[e.header,o&&jsx(Q,{active:s,direction:s?i.direction:null})]})},e.key)})]})}),jsx(O,{children:X.map((e,o)=>{let s=u(e,o),S=l.includes(s);return jsxs(I,{className:a(S&&"bg-primary-50/60 dark:bg-primary-900/20"),onClick:()=>{d!=="none"&&_(s);},children:[d==="multiple"&&jsx(M,{className:"w-10",children:jsx("input",{type:"checkbox",checked:S,onChange:()=>_(s),onClick:c=>c.stopPropagation(),className:"h-4 w-4 cursor-pointer rounded border-secondary-300 accent-primary-600","aria-label":"Select row"})}),d==="single"&&jsx(M,{className:"w-10",children:jsx("input",{type:"radio",checked:S,onChange:()=>_(s),onClick:c=>c.stopPropagation(),className:"h-4 w-4 cursor-pointer accent-primary-600","aria-label":"Select row"})}),r.map(c=>{let N=q?.rowKey===s&&q?.colKey===c.key,K=c.editValue?.(e)??(()=>{let C=c.cell(e);return typeof C=="string"||typeof C=="number"?String(C):""})();return jsx(M,{className:a(c.cellClassName,w&&c.editable!==false&&"cursor-text"),onDoubleClick:C=>{C.stopPropagation(),ee(s,c.key,c.editable);},children:N?jsx(be,{value:K,onCommit:C=>te(s,c.key,C),onCancel:()=>A(null)}):c.cell(e)},c.key)})]},s)})})]})]})}function Q({active:r,direction:a$1}){let u="h-3.5 w-3.5 shrink-0";return !r||!a$1?jsx(ArrowUpDown,{className:a(u,"opacity-30")}):a$1==="asc"?jsx(ArrowUp,{className:a(u,"opacity-70")}):jsx(ArrowDown,{className:a(u,"opacity-70")})}export{G as a,J as b,O as c,I as d,L as e,M as f,xe as g,ke as h};
@@ -1 +0,0 @@
1
- import {cva}from'class-variance-authority';var a=cva("inline-flex cursor-pointer items-center justify-center gap-1.5 rounded font-medium transition-colors disabled:pointer-events-none disabled:opacity-50 [&_svg]:shrink-0",{variants:{intent:{primary:"bg-primary-500 text-white hover:bg-primary-600 active:bg-primary-700",secondary:"bg-secondary-500 text-white hover:bg-secondary-600 active:bg-secondary-700",danger:"bg-danger-500 text-white hover:bg-danger-600 active:bg-danger-700",warning:"bg-warning-500 text-white hover:bg-warning-600 active:bg-warning-700",ghost:"bg-transparent text-primary-700 hover:bg-primary-100 active:bg-primary-200 dark:text-primary-300 dark:hover:bg-primary-800",outline:"border border-primary-300 bg-transparent text-primary-700 hover:bg-primary-50 dark:border-primary-600 dark:text-primary-300 dark:hover:bg-primary-800"},size:{sm:"h-7 px-3 text-xs [&_svg]:h-3.5 [&_svg]:w-3.5",md:"h-9 px-4 text-sm [&_svg]:h-4 [&_svg]:w-4",lg:"h-11 px-6 text-base [&_svg]:h-5 [&_svg]:w-5"}},defaultVariants:{intent:"primary",size:"md"}}),t=cva("inline-flex items-center gap-1 rounded border px-2.5 py-0.5 text-xs font-semibold [&_svg]:h-3 [&_svg]:w-3 [&_svg]:shrink-0",{variants:{intent:{success:"border-success-200 bg-success-100 text-success-800 dark:border-success-800 dark:bg-success-900/30 dark:text-success-400",warning:"border-warning-200 bg-warning-100 text-warning-800 dark:border-warning-800 dark:bg-warning-900/30 dark:text-warning-400",error:"border-danger-200 bg-danger-100 text-danger-800 dark:border-danger-800 dark:bg-danger-900/30 dark:text-danger-400",info:"border-primary-200 bg-primary-100 text-primary-800 dark:border-primary-800 dark:bg-primary-900/30 dark:text-primary-400",primary:"border-secondary-200 bg-secondary-100 text-secondary-700 dark:border-secondary-700 dark:bg-secondary-800 dark:text-secondary-300"}},defaultVariants:{intent:"primary"}}),i=cva("w-full rounded-md border bg-white text-secondary-900 transition-colors placeholder:text-secondary-400 focus:outline-none focus:ring-2 dark:bg-secondary-900 dark:text-secondary-100 dark:placeholder:text-secondary-600",{variants:{state:{default:"border-secondary-300 focus:border-primary-500 focus:ring-primary-500/20 dark:border-secondary-600",error:"border-danger-400 focus:border-danger-500 focus:ring-danger-500/20"},size:{sm:"h-7 px-2 text-xs",md:"h-9 px-3 py-2 text-sm",lg:"h-11 px-4 py-2.5 text-base"}},defaultVariants:{state:"default",size:"md"}}),d=cva("inline-flex items-center gap-1 font-medium [&_svg]:shrink-0",{variants:{size:{sm:"text-xs [&_svg]:h-3 [&_svg]:w-3",md:"text-sm [&_svg]:h-3.5 [&_svg]:w-3.5",lg:"text-base [&_svg]:h-4 [&_svg]:w-4"},intent:{default:"text-primary-700 dark:text-primary-300",muted:"text-primary-400 dark:text-primary-500",required:"text-primary-700 dark:text-primary-300 after:ml-0.5 after:text-danger-500 after:content-['*']"}},defaultVariants:{size:"md",intent:"default"}}),n=cva("rounded-lg transition-shadow",{variants:{intent:{default:"border border-primary-200 bg-white dark:border-primary-700 dark:bg-primary-900",elevated:"bg-white shadow-md hover:shadow-lg dark:bg-primary-900",outlined:"border-2 border-primary-300 bg-transparent dark:border-primary-600",ghost:"bg-primary-50 dark:bg-primary-800/50"},size:{sm:"p-3",md:"p-5",lg:"p-7"}},defaultVariants:{intent:"default",size:"md"}}),s=cva("rounded-md",{variants:{intent:{default:"border border-primary-200 bg-white dark:border-primary-700 dark:bg-primary-900",inset:"bg-primary-50 dark:bg-primary-800/50",elevated:"bg-white shadow-lg dark:bg-primary-900"},size:{sm:"p-3",md:"p-4",lg:"p-6"}},defaultVariants:{intent:"default",size:"md"}}),o=cva("w-full text-left text-sm",{variants:{intent:{default:"",striped:"[&_tbody_tr:nth-child(even)]:bg-primary-50 dark:[&_tbody_tr:nth-child(even)]:bg-primary-800/30",bordered:"[&_th]:border [&_td]:border [&_th]:border-primary-200 [&_td]:border-primary-200 dark:[&_th]:border-primary-700 dark:[&_td]:border-primary-700"}},defaultVariants:{intent:"default"}}),p=cva("text-sm text-primary-700 dark:text-primary-300",{variants:{intent:{default:"space-y-1",bordered:"divide-y divide-primary-200 rounded-lg border border-primary-200 dark:divide-primary-700 dark:border-primary-700 [&>li]:px-4 [&>li]:py-2",hover:"[&>li]:rounded-md [&>li]:px-3 [&>li]:py-2 [&>li]:transition-colors [&>li:hover]:bg-primary-50 dark:[&>li:hover]:bg-primary-800/50"}},defaultVariants:{intent:"default"}}),g=cva("divide-y",{variants:{intent:{default:"divide-primary-300 dark:divide-primary-700",bordered:"divide-primary-300 rounded-lg border border-primary-300 bg-white px-3 shadow-sm dark:divide-primary-700 dark:border-primary-700 dark:bg-primary-800/50",ghost:"divide-transparent"}},defaultVariants:{intent:"default"}}),m=cva("flex",{variants:{intent:{line:"border-b border-primary-200 dark:border-primary-700",pills:"gap-1 rounded-lg bg-primary-100 p-1 dark:bg-primary-800",underline:"gap-4"}},defaultVariants:{intent:"line"}}),b=cva("inline-flex cursor-pointer items-center justify-center gap-1.5 whitespace-nowrap px-3 py-1.5 text-sm font-medium transition-all focus-visible:outline-none disabled:pointer-events-none disabled:opacity-50 [&_svg]:h-4 [&_svg]:w-4 [&_svg]:shrink-0",{variants:{intent:{line:"text-primary-500 hover:text-primary-700 data-[active=true]:text-primary-900 dark:text-primary-400 dark:hover:text-primary-200 dark:data-[active=true]:text-primary-100",pills:"rounded-md text-primary-600 hover:text-primary-900 data-[active=true]:bg-white data-[active=true]:text-primary-900 data-[active=true]:shadow-sm dark:text-primary-400 dark:hover:text-primary-100 dark:data-[active=true]:bg-primary-700 dark:data-[active=true]:text-primary-100",underline:"text-primary-500 hover:text-primary-700 data-[active=true]:text-primary-900 dark:text-primary-400 dark:data-[active=true]:text-primary-100"}},defaultVariants:{intent:"line"}}),y=cva("rounded-lg bg-white p-6 shadow-xl dark:bg-primary-900",{variants:{size:{sm:"w-full max-w-sm",md:"w-full max-w-lg",lg:"w-full max-w-2xl",xl:"w-full max-w-4xl",full:"h-[calc(100vh-4rem)] w-[calc(100vw-4rem)]"}},defaultVariants:{size:"md"}}),l=cva("absolute z-50 rounded px-2 py-1 text-xs shadow-md animate-fade-in",{variants:{intent:{default:"bg-primary-900 text-white dark:bg-primary-100 dark:text-primary-900",light:"border border-primary-200 bg-white text-primary-700 dark:border-primary-600 dark:bg-primary-800 dark:text-primary-200"}},defaultVariants:{intent:"default"}}),x=cva("pointer-events-auto flex items-start gap-3 rounded-lg border p-4 shadow-lg transition-all",{variants:{intent:{success:"border-success-200 bg-success-50 text-success-800 dark:border-success-800 dark:bg-success-900/80 dark:text-success-200",warning:"border-warning-200 bg-warning-50 text-warning-800 dark:border-warning-800 dark:bg-warning-900/80 dark:text-warning-200",error:"border-danger-200 bg-danger-50 text-danger-800 dark:border-danger-800 dark:bg-danger-900/80 dark:text-danger-200",info:"border-primary-200 bg-primary-50 text-primary-800 dark:border-primary-800 dark:bg-primary-900/80 dark:text-primary-200"}},defaultVariants:{intent:"info"}});export{a,t as b,i as c,d,n as e,s as f,o as g,p as h,g as i,m as j,b as k,y as l,l as m,x as n};
@@ -1 +0,0 @@
1
- import {n}from'./chunk-ACQOSYBI.js';import {a}from'./chunk-AXBJKPZZ.js';import {useEffect,useSyncExternalStore,useRef}from'react';import {createPortal}from'react-dom';import {createRoot}from'react-dom/client';import {Info,CircleX,TriangleAlert,CircleCheck,X}from'lucide-react';import {jsx,Fragment,jsxs}from'react/jsx-runtime';function j({intent:t,className:e,children:n$1,...o}){return jsx("div",{className:a(n({intent:t}),e),role:"alert",...o,children:n$1})}function q({className:t,...e}){return jsx("h5",{className:a("flex items-center gap-1.5 font-semibold [&_svg]:h-4 [&_svg]:w-4 [&_svg]:shrink-0",t),...e})}function B({className:t,...e}){return jsx("p",{className:a("text-sm opacity-90",t),...e})}var I=0,l=[],m=new Map,p=new Set;function V(){return l}function f(){p.forEach(t=>t());}function d(t){let e=m.get(t);e&&(clearTimeout(e),m.delete(t)),l=l.map(n=>n.id===t?{...n,exiting:true}:n),f(),setTimeout(()=>{l=l.filter(n=>n.id!==t),f();},200);}function E(t){let e=`alert-${++I}`;l=[...l,{...t,id:e}],f();let n=t.duration??5e3;if(n>0){let o=setTimeout(()=>{m.delete(e),d(e);},n);m.set(e,o);}return e}var u=16;function J(t){u=t;}var M={"top-right":"right-4 items-end","top-left":"left-4 items-start","bottom-right":"bottom-4 right-4 items-end","bottom-left":"bottom-4 left-4 items-start","top-center":"left-1/2 -translate-x-1/2 items-center","bottom-center":"bottom-4 left-1/2 -translate-x-1/2 items-center"},k={"top-right":"animate-slide-in-right","top-left":"animate-slide-in-left","bottom-right":"animate-slide-in-right","bottom-left":"animate-slide-in-left","top-center":"animate-slide-in-top","bottom-center":"animate-slide-in-bottom"},w={success:CircleCheck,warning:TriangleAlert,error:CircleX,info:Info};function H({alert:t,onClose:e}){let n$1=t.intent??"info",o=w[n$1],a$1=t.position??"top-right";return jsxs("div",{className:a(n({intent:n$1}),k[a$1],t.exiting&&"opacity-0 transition-opacity duration-200","w-80"),role:"alert",children:[jsx(o,{className:"mt-0.5 h-5 w-5 shrink-0"}),jsxs("div",{className:"flex-1",children:[t.title&&jsx("p",{className:"font-semibold",children:t.title}),jsx("p",{className:a(t.title&&"text-sm opacity-90"),children:t.message})]}),jsx("button",{onClick:e,"aria-label":"Close notification",className:"shrink-0 cursor-pointer opacity-50 transition-opacity hover:opacity-100",children:jsx(X,{className:"h-4 w-4"})})]})}var O=t=>t.startsWith("top");function S(){let t=useSyncExternalStore(o=>(p.add(o),()=>p.delete(o)),V),e=useRef(u);if(useEffect(()=>{e.current=u;},[]),t.length===0)return null;let n=t.reduce((o,a)=>{let r=a.position??"top-right";return (o[r]??(o[r]=[])).push(a),o},{});return createPortal(jsx(Fragment,{children:Object.entries(n).map(([o,a$1])=>jsx("div",{style:O(o)?{top:`${e.current}px`}:void 0,className:a("pointer-events-none fixed z-100 flex flex-col gap-2",M[o]),children:a$1.map(r=>jsx(H,{alert:r,onClose:()=>d(r.id)},r.id))},o))}),document.body)}var g=false;function L(){if(g)return;g=true;let t=document.createElement("div");t.id="alert-toast-root",document.body.appendChild(t),createRoot(t).render(jsx(S,{}));}function K(){return useEffect(()=>{L();},[]),{addAlert:E,removeAlert:d}}export{j as a,q as b,B as c,J as d,K as e};
@@ -1 +0,0 @@
1
- import {h}from'./chunk-ACQOSYBI.js';import {a}from'./chunk-AXBJKPZZ.js';import {jsx}from'react/jsx-runtime';function p({intent:t,className:r,...o}){return jsx("ul",{className:a(h({intent:t}),r),...o})}function m({className:t,...r}){return jsx("li",{className:a("flex items-center gap-1.5 [&_svg]:h-3.5 [&_svg]:w-3.5 [&_svg]:shrink-0",t),...r})}export{p as a,m as b};
@@ -1 +0,0 @@
1
- 'use strict';var chunkX5YP5TMY_cjs=require('./chunk-X5YP5TMY.cjs'),u=require('react'),lucideReact=require('lucide-react'),jsxRuntime=require('react/jsx-runtime');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var u__default=/*#__PURE__*/_interopDefault(u);var T=u.createContext({showLines:true,expandedKeys:null,onToggleKey:()=>{}});function M({showLines:l=true,showRoot:a=true,expandedKeys:e,defaultExpandedKeys:x="all",onExpandedKeysChange:d,className:p,children:c,...m}){let [f,i]=u.useState(()=>x),g=u.useCallback(t=>{if(e){let n=new Set(e);n.has(t)?n.delete(t):n.add(t),d?.(n);}else i(n=>{if(n==="all")return new Set(["__ALL_MINUS__",t]);let r=new Set(n);return r.has(t)?r.delete(t):r.add(t),r});},[e,d]),h=e??(f==="all"?null:f);return jsxRuntime.jsx(T.Provider,{value:{showLines:l,expandedKeys:h,onToggleKey:g},children:a?jsxRuntime.jsx("ul",{className:chunkX5YP5TMY_cjs.a("text-sm",p),role:"tree",...m,children:c}):jsxRuntime.jsx("ul",{className:chunkX5YP5TMY_cjs.a("text-sm",p),role:"tree",...m,children:jsxRuntime.jsx(_,{children:c})})})}function _({children:l}){let a=C(l);return jsxRuntime.jsx(jsxRuntime.Fragment,{children:a.map(e=>u__default.default.isValidElement(e)&&e.props.children?e.props.children:null)})}function C(l){let a=[];return u__default.default.Children.forEach(l,e=>{u__default.default.isValidElement(e)&&e.type===u__default.default.Fragment?a.push(...C(e.props.children)):a.push(e);}),a}function A({nodeKey:l,label:a,icon:e,defaultExpanded:x=false,expanded:d,onToggle:p,children:c,className:m}){let{showLines:f,expandedKeys:i,onToggleKey:y}=u.useContext(T),[g,h]=u.useState(x),t=u__default.default.Children.count(c)>0,n=l??(typeof a=="string"?a:""),r;d!=null?r=d:i!=null&&n?i.has("__ALL_MINUS__")?r=!i.has(n):r=i.has(n):r=g;let w=()=>{let R=!r;p?p(R):i!=null&&n?y(n):h(R);};return jsxRuntime.jsxs("li",{className:chunkX5YP5TMY_cjs.a("select-none",m),role:"treeitem","aria-expanded":t?r:void 0,children:[jsxRuntime.jsxs("div",{className:chunkX5YP5TMY_cjs.a("hover:bg-primary-50 dark:hover:bg-primary-800/50 flex items-center gap-1 rounded-md px-1 py-1",t?"cursor-pointer":"cursor-default"),onClick:t?w:void 0,children:[t?jsxRuntime.jsx(lucideReact.ChevronRight,{className:chunkX5YP5TMY_cjs.a("text-primary-400 h-4 w-4 shrink-0 transition-transform duration-200",r&&"rotate-90")}):jsxRuntime.jsx("span",{className:"w-4 shrink-0"}),e&&jsxRuntime.jsx("span",{className:"shrink-0",children:e}),jsxRuntime.jsx("span",{className:"text-primary-700 dark:text-primary-300 truncate",children:a})]}),t&&jsxRuntime.jsx("div",{className:chunkX5YP5TMY_cjs.a("grid transition-[grid-template-rows] duration-200 ease-out",r?"grid-rows-[1fr]":"grid-rows-[0fr]"),children:jsxRuntime.jsx("div",{className:"overflow-hidden",children:jsxRuntime.jsx("ul",{className:chunkX5YP5TMY_cjs.a("ml-4 pl-2",f&&"border-primary-200 dark:border-primary-700 border-l"),role:"group",children:c})})})]})}exports.a=M;exports.b=A;
@@ -1 +0,0 @@
1
- 'use strict';var classVarianceAuthority=require('class-variance-authority');var a=classVarianceAuthority.cva("inline-flex cursor-pointer items-center justify-center gap-1.5 rounded font-medium transition-colors disabled:pointer-events-none disabled:opacity-50 [&_svg]:shrink-0",{variants:{intent:{primary:"bg-primary-500 text-white hover:bg-primary-600 active:bg-primary-700",secondary:"bg-secondary-500 text-white hover:bg-secondary-600 active:bg-secondary-700",danger:"bg-danger-500 text-white hover:bg-danger-600 active:bg-danger-700",warning:"bg-warning-500 text-white hover:bg-warning-600 active:bg-warning-700",ghost:"bg-transparent text-primary-700 hover:bg-primary-100 active:bg-primary-200 dark:text-primary-300 dark:hover:bg-primary-800",outline:"border border-primary-300 bg-transparent text-primary-700 hover:bg-primary-50 dark:border-primary-600 dark:text-primary-300 dark:hover:bg-primary-800"},size:{sm:"h-7 px-3 text-xs [&_svg]:h-3.5 [&_svg]:w-3.5",md:"h-9 px-4 text-sm [&_svg]:h-4 [&_svg]:w-4",lg:"h-11 px-6 text-base [&_svg]:h-5 [&_svg]:w-5"}},defaultVariants:{intent:"primary",size:"md"}}),t=classVarianceAuthority.cva("inline-flex items-center gap-1 rounded border px-2.5 py-0.5 text-xs font-semibold [&_svg]:h-3 [&_svg]:w-3 [&_svg]:shrink-0",{variants:{intent:{success:"border-success-200 bg-success-100 text-success-800 dark:border-success-800 dark:bg-success-900/30 dark:text-success-400",warning:"border-warning-200 bg-warning-100 text-warning-800 dark:border-warning-800 dark:bg-warning-900/30 dark:text-warning-400",error:"border-danger-200 bg-danger-100 text-danger-800 dark:border-danger-800 dark:bg-danger-900/30 dark:text-danger-400",info:"border-primary-200 bg-primary-100 text-primary-800 dark:border-primary-800 dark:bg-primary-900/30 dark:text-primary-400",primary:"border-secondary-200 bg-secondary-100 text-secondary-700 dark:border-secondary-700 dark:bg-secondary-800 dark:text-secondary-300"}},defaultVariants:{intent:"primary"}}),i=classVarianceAuthority.cva("w-full rounded-md border bg-white text-secondary-900 transition-colors placeholder:text-secondary-400 focus:outline-none focus:ring-2 dark:bg-secondary-900 dark:text-secondary-100 dark:placeholder:text-secondary-600",{variants:{state:{default:"border-secondary-300 focus:border-primary-500 focus:ring-primary-500/20 dark:border-secondary-600",error:"border-danger-400 focus:border-danger-500 focus:ring-danger-500/20"},size:{sm:"h-7 px-2 text-xs",md:"h-9 px-3 py-2 text-sm",lg:"h-11 px-4 py-2.5 text-base"}},defaultVariants:{state:"default",size:"md"}}),d=classVarianceAuthority.cva("inline-flex items-center gap-1 font-medium [&_svg]:shrink-0",{variants:{size:{sm:"text-xs [&_svg]:h-3 [&_svg]:w-3",md:"text-sm [&_svg]:h-3.5 [&_svg]:w-3.5",lg:"text-base [&_svg]:h-4 [&_svg]:w-4"},intent:{default:"text-primary-700 dark:text-primary-300",muted:"text-primary-400 dark:text-primary-500",required:"text-primary-700 dark:text-primary-300 after:ml-0.5 after:text-danger-500 after:content-['*']"}},defaultVariants:{size:"md",intent:"default"}}),n=classVarianceAuthority.cva("rounded-lg transition-shadow",{variants:{intent:{default:"border border-primary-200 bg-white dark:border-primary-700 dark:bg-primary-900",elevated:"bg-white shadow-md hover:shadow-lg dark:bg-primary-900",outlined:"border-2 border-primary-300 bg-transparent dark:border-primary-600",ghost:"bg-primary-50 dark:bg-primary-800/50"},size:{sm:"p-3",md:"p-5",lg:"p-7"}},defaultVariants:{intent:"default",size:"md"}}),s=classVarianceAuthority.cva("rounded-md",{variants:{intent:{default:"border border-primary-200 bg-white dark:border-primary-700 dark:bg-primary-900",inset:"bg-primary-50 dark:bg-primary-800/50",elevated:"bg-white shadow-lg dark:bg-primary-900"},size:{sm:"p-3",md:"p-4",lg:"p-6"}},defaultVariants:{intent:"default",size:"md"}}),o=classVarianceAuthority.cva("w-full text-left text-sm",{variants:{intent:{default:"",striped:"[&_tbody_tr:nth-child(even)]:bg-primary-50 dark:[&_tbody_tr:nth-child(even)]:bg-primary-800/30",bordered:"[&_th]:border [&_td]:border [&_th]:border-primary-200 [&_td]:border-primary-200 dark:[&_th]:border-primary-700 dark:[&_td]:border-primary-700"}},defaultVariants:{intent:"default"}}),p=classVarianceAuthority.cva("text-sm text-primary-700 dark:text-primary-300",{variants:{intent:{default:"space-y-1",bordered:"divide-y divide-primary-200 rounded-lg border border-primary-200 dark:divide-primary-700 dark:border-primary-700 [&>li]:px-4 [&>li]:py-2",hover:"[&>li]:rounded-md [&>li]:px-3 [&>li]:py-2 [&>li]:transition-colors [&>li:hover]:bg-primary-50 dark:[&>li:hover]:bg-primary-800/50"}},defaultVariants:{intent:"default"}}),g=classVarianceAuthority.cva("divide-y",{variants:{intent:{default:"divide-primary-300 dark:divide-primary-700",bordered:"divide-primary-300 rounded-lg border border-primary-300 bg-white px-3 shadow-sm dark:divide-primary-700 dark:border-primary-700 dark:bg-primary-800/50",ghost:"divide-transparent"}},defaultVariants:{intent:"default"}}),m=classVarianceAuthority.cva("flex",{variants:{intent:{line:"border-b border-primary-200 dark:border-primary-700",pills:"gap-1 rounded-lg bg-primary-100 p-1 dark:bg-primary-800",underline:"gap-4"}},defaultVariants:{intent:"line"}}),b=classVarianceAuthority.cva("inline-flex cursor-pointer items-center justify-center gap-1.5 whitespace-nowrap px-3 py-1.5 text-sm font-medium transition-all focus-visible:outline-none disabled:pointer-events-none disabled:opacity-50 [&_svg]:h-4 [&_svg]:w-4 [&_svg]:shrink-0",{variants:{intent:{line:"text-primary-500 hover:text-primary-700 data-[active=true]:text-primary-900 dark:text-primary-400 dark:hover:text-primary-200 dark:data-[active=true]:text-primary-100",pills:"rounded-md text-primary-600 hover:text-primary-900 data-[active=true]:bg-white data-[active=true]:text-primary-900 data-[active=true]:shadow-sm dark:text-primary-400 dark:hover:text-primary-100 dark:data-[active=true]:bg-primary-700 dark:data-[active=true]:text-primary-100",underline:"text-primary-500 hover:text-primary-700 data-[active=true]:text-primary-900 dark:text-primary-400 dark:data-[active=true]:text-primary-100"}},defaultVariants:{intent:"line"}}),y=classVarianceAuthority.cva("rounded-lg bg-white p-6 shadow-xl dark:bg-primary-900",{variants:{size:{sm:"w-full max-w-sm",md:"w-full max-w-lg",lg:"w-full max-w-2xl",xl:"w-full max-w-4xl",full:"h-[calc(100vh-4rem)] w-[calc(100vw-4rem)]"}},defaultVariants:{size:"md"}}),l=classVarianceAuthority.cva("absolute z-50 rounded px-2 py-1 text-xs shadow-md animate-fade-in",{variants:{intent:{default:"bg-primary-900 text-white dark:bg-primary-100 dark:text-primary-900",light:"border border-primary-200 bg-white text-primary-700 dark:border-primary-600 dark:bg-primary-800 dark:text-primary-200"}},defaultVariants:{intent:"default"}}),x=classVarianceAuthority.cva("pointer-events-auto flex items-start gap-3 rounded-lg border p-4 shadow-lg transition-all",{variants:{intent:{success:"border-success-200 bg-success-50 text-success-800 dark:border-success-800 dark:bg-success-900/80 dark:text-success-200",warning:"border-warning-200 bg-warning-50 text-warning-800 dark:border-warning-800 dark:bg-warning-900/80 dark:text-warning-200",error:"border-danger-200 bg-danger-50 text-danger-800 dark:border-danger-800 dark:bg-danger-900/80 dark:text-danger-200",info:"border-primary-200 bg-primary-50 text-primary-800 dark:border-primary-800 dark:bg-primary-900/80 dark:text-primary-200"}},defaultVariants:{intent:"info"}});exports.a=a;exports.b=t;exports.c=i;exports.d=d;exports.e=n;exports.f=s;exports.g=o;exports.h=p;exports.i=g;exports.j=m;exports.k=b;exports.l=y;exports.m=l;exports.n=x;
@@ -1 +0,0 @@
1
- 'use strict';var chunkNBLJWONR_cjs=require('./chunk-NBLJWONR.cjs'),chunkX5YP5TMY_cjs=require('./chunk-X5YP5TMY.cjs'),jsxRuntime=require('react/jsx-runtime');function p({intent:t,className:r,...o}){return jsxRuntime.jsx("ul",{className:chunkX5YP5TMY_cjs.a(chunkNBLJWONR_cjs.h({intent:t}),r),...o})}function m({className:t,...r}){return jsxRuntime.jsx("li",{className:chunkX5YP5TMY_cjs.a("flex items-center gap-1.5 [&_svg]:h-3.5 [&_svg]:w-3.5 [&_svg]:shrink-0",t),...r})}exports.a=p;exports.b=m;
@@ -1 +0,0 @@
1
- import {c}from'./chunk-ACQOSYBI.js';import {a}from'./chunk-AXBJKPZZ.js';import {useState,useRef,useMemo,useEffect,useCallback}from'react';import {ChevronDown,Check,ChevronRight}from'lucide-react';import {jsxs,jsx}from'react/jsx-runtime';function P(s,o){for(let r of s){if(r.value===o)return r;if(r.children){let c=P(r.children,o);if(c)return c}}}function T(s){let o=[];for(let r of s)r.children?.length||o.push(r),r.children&&o.push(...T(r.children));return o}function j({options:s,onSelect:o,depth:r=0}){let[c,f]=useState(null),u=useRef(void 0),b=e=>{u.current&&clearTimeout(u.current),f(e);},y=()=>{u.current=setTimeout(()=>f(null),150);};return useEffect(()=>()=>{u.current&&clearTimeout(u.current);},[]),jsx("div",{className:a("absolute z-50 min-w-44 rounded-md border py-1 shadow-lg","border-primary-200 dark:border-primary-700 dark:bg-primary-800 bg-white","animate-fade-in",r===0?"mt-1 w-full":"top-0 ml-0.5"),style:r>0?{left:"100%"}:void 0,role:"listbox",children:s.map(e=>{let l=!!e.children?.length,d=c===e.value;return jsxs("div",{className:"relative",onMouseEnter:()=>b(e.value),onMouseLeave:y,children:[jsxs("div",{role:"option","aria-selected":false,"aria-disabled":e.disabled,className:a("flex w-full cursor-pointer items-center gap-2 px-3 py-1.5 text-left text-sm transition-colors","text-primary-700 hover:bg-primary-100 dark:text-primary-300 dark:hover:bg-primary-700/50",e.disabled&&"pointer-events-none opacity-50"),onClick:()=>{e.disabled||l||o(e.value,e);},children:[e.icon&&jsx("span",{className:"flex h-4 w-4 shrink-0 items-center justify-center",children:e.icon}),jsx("span",{className:"flex-1 truncate",children:e.label??e.value}),l&&jsx(ChevronRight,{className:"text-primary-400 h-3.5 w-3.5 shrink-0"})]}),l&&d&&jsx(j,{options:e.children,onSelect:o,depth:r+1})]},e.value)})})}function G({options:s,filter:o,multiple:r,selected:c,canAdd:f,onSelect:u,onToggle:b,onAdd:y}){let e=useMemo(()=>T(s),[s]),l=o.toLowerCase(),d=o?e.filter(t=>(t.label??t.value).toLowerCase().includes(l)||t.value.toLowerCase().includes(l)):e;return jsxs("div",{className:a("absolute z-50 mt-1 w-full max-h-60 min-w-44 overflow-y-auto rounded-md border py-1 shadow-lg","border-primary-200 dark:border-primary-700 dark:bg-primary-800 bg-white","animate-fade-in"),role:"listbox","aria-multiselectable":r||void 0,children:[d.map(t=>{let m=r&&c.includes(t.value);return jsxs("div",{role:"option","aria-selected":r?m:false,"aria-disabled":t.disabled,className:a("flex w-full cursor-pointer items-center gap-2 px-3 py-1.5 text-left text-sm transition-colors","text-primary-700 hover:bg-primary-100 dark:text-primary-300 dark:hover:bg-primary-700/50",t.disabled&&"pointer-events-none opacity-50"),onClick:()=>{t.disabled||(r?b(t.value):u(t.value,t));},children:[r&&jsx("span",{className:a("flex h-4 w-4 shrink-0 items-center justify-center rounded border transition-colors",m?"border-primary-600 bg-primary-600 text-white dark:border-primary-500 dark:bg-primary-500":"border-secondary-300 bg-white dark:border-secondary-600 dark:bg-secondary-800"),children:m&&jsx(Check,{className:"h-3 w-3"})}),t.icon&&jsx("span",{className:"flex h-4 w-4 shrink-0 items-center justify-center",children:t.icon}),jsx("span",{className:"truncate",children:t.label??t.value})]},t.value)}),d.length===0&&!f&&jsx("div",{className:"text-primary-400 px-3 py-2 text-center text-sm",children:"No matches"}),f&&jsxs("div",{className:a("flex w-full cursor-pointer items-center gap-2 px-3 py-1.5 text-left text-sm transition-colors","text-primary-600 hover:bg-primary-50 dark:text-primary-400 dark:hover:bg-primary-900/30"),onClick:y,children:[jsx("span",{className:"flex h-4 w-4 shrink-0 items-center justify-center text-lg leading-none",children:"+"}),jsxs("span",{className:"truncate",children:["Add \u201C",o.trim(),"\u201D"]})]})]})}function Y(s){let{options:o,placeholder:r="Select\u2026",editable:c$1=false,onAddItem:f,disabled:u=false,align:b="left",className:y}=s,e=s.multiple===true,l=e?s.selected??[]:[],[d,t]=useState(false),[m,h]=useState(""),k=useRef(null),R=useRef(null),D=e?void 0:s.value,w=useMemo(()=>D?P(o,D):void 0,[o,D]);useEffect(()=>{if(!d)return;let n=a=>{k.current&&!k.current.contains(a.target)&&(t(false),h(""));};return document.addEventListener("mousedown",n),()=>document.removeEventListener("mousedown",n)},[d]),useEffect(()=>{if(!d)return;let n=a=>{a.key==="Escape"&&(t(false),h(""));};return document.addEventListener("keydown",n),()=>document.removeEventListener("keydown",n)},[d]);let A=useCallback((n,a)=>{e||s.onChange?.(n,a),t(false),h("");},[e,s]),H=useCallback(n=>{if(!e)return;let a=l.includes(n)?l.filter(q=>q!==n):[...l,n];s.onSelectionChange?.(a);},[e,l,s]),N=m.toLowerCase(),C=useMemo(()=>!c$1||!m.trim()?false:!T(o).some(a=>a.value.toLowerCase()===N||(a.label??a.value).toLowerCase()===N),[c$1,N,o]),O=useCallback(()=>{let n=m.trim();n&&(f?.(n),h(""));},[m,f]),I=useCallback(n=>{n.key==="Enter"&&C&&(n.preventDefault(),O());},[C,O]),B=useCallback(()=>{u||(t(n=>{let a=!n;return a&&c$1&&requestAnimationFrame(()=>R.current?.focus()),a}),h(""));},[u,c$1]),g;if(e){let n=l.length;n===0?g="":n<=2?g=l.map(a=>P(o,a)).map(a=>a?a.label??a.value:"").filter(Boolean).join(", "):g=`${n} selected`;}else g=w?w.label??w.value:"";let F=e||c$1;return jsxs("div",{ref:k,className:a("relative inline-block min-w-44",y),children:[jsxs("div",{className:a(c({state:"default",size:"md"}),"flex cursor-pointer items-center gap-1",u&&"pointer-events-none opacity-50"),onClick:B,role:"combobox","aria-expanded":d,"aria-haspopup":"listbox",children:[c$1?jsx("input",{ref:R,className:"min-w-0 flex-1 bg-transparent outline-none placeholder:text-secondary-400 dark:placeholder:text-secondary-600",value:d?m:g,placeholder:r,disabled:u,onChange:n=>{h(n.target.value),d||t(true);},onKeyDown:I,onClick:n=>{n.stopPropagation(),d||t(true);}}):jsx("span",{className:a("flex-1 truncate",!g&&"text-secondary-400 dark:text-secondary-600"),children:g||r}),w?.icon&&!c$1&&!e&&jsx("span",{className:"flex h-4 w-4 shrink-0 items-center justify-center",children:w.icon}),e&&l.length>0&&jsx("span",{className:"rounded-full bg-primary-100 px-1.5 text-xs font-semibold text-primary-700 dark:bg-primary-900 dark:text-primary-300",children:l.length}),jsx(ChevronDown,{className:a("text-primary-400 h-4 w-4 shrink-0 transition-transform",d&&"rotate-180")})]}),d&&jsx("div",{className:a(b==="right"?"right-0":"left-0","absolute w-full"),children:F?jsx(G,{options:o,filter:m,multiple:e,selected:l,canAdd:C,onSelect:A,onToggle:H,onAdd:O}):jsx(j,{options:o,onSelect:A})})]})}export{Y as a};
@@ -1 +0,0 @@
1
- 'use strict';var chunkNBLJWONR_cjs=require('./chunk-NBLJWONR.cjs'),chunkX5YP5TMY_cjs=require('./chunk-X5YP5TMY.cjs'),react=require('react'),lucideReact=require('lucide-react'),jsxRuntime=require('react/jsx-runtime');function G({intent:r,className:a,...u}){return jsxRuntime.jsx("div",{className:"w-full overflow-auto",children:jsxRuntime.jsx("table",{className:chunkX5YP5TMY_cjs.a(chunkNBLJWONR_cjs.g({intent:r}),a),...u})})}function J({className:r,...a}){return jsxRuntime.jsx("thead",{className:chunkX5YP5TMY_cjs.a("bg-primary-50 text-primary-600 dark:bg-primary-800/50 dark:text-primary-400",r),...a})}function O({className:r,...a}){return jsxRuntime.jsx("tbody",{className:chunkX5YP5TMY_cjs.a("[&_tr:last-child]:border-0",r),...a})}function I({className:r,...a}){return jsxRuntime.jsx("tr",{className:chunkX5YP5TMY_cjs.a("border-primary-200 hover:bg-primary-50/50 dark:border-primary-700 dark:hover:bg-primary-800/30 border-b transition-colors",r),...a})}function L({className:r,...a}){return jsxRuntime.jsx("th",{className:chunkX5YP5TMY_cjs.a("px-4 py-3 text-left text-xs font-semibold tracking-wider uppercase",r),...a})}function M({className:r,...a}){return jsxRuntime.jsx("td",{className:chunkX5YP5TMY_cjs.a("text-primary-700 dark:text-primary-300 px-4 py-3",r),...a})}function xe({columns:r,data:a,sort:u,onSortChange:g,defaultSort:k=null,rowKey:T,intent:d,className:x}){let[B,w]=react.useState(k),m=u??B,F=react.useCallback(n=>{let p=m?.column===n?m.direction==="asc"?{column:n,direction:"desc"}:null:{column:n,direction:"asc"};g?g(p):w(p);},[m,g]),E=react.useMemo(()=>{if(!m)return a;let n=r.find(H=>H.key===m.column);if(!n)return a;let p=n.compareFn??((H,U)=>{let i=n.cell(H),h=n.cell(U);return i==null&&h==null?0:i==null?-1:h==null?1:typeof i=="number"&&typeof h=="number"?i-h:String(i).localeCompare(String(h))}),f=[...a].sort(p);return m.direction==="desc"?f.reverse():f},[a,m,r]);return jsxRuntime.jsxs(G,{intent:d,className:x,children:[jsxRuntime.jsx(J,{children:jsxRuntime.jsx(I,{children:r.map(n=>{let p=n.sortable!==false,f=m?.column===n.key;return jsxRuntime.jsx(L,{className:chunkX5YP5TMY_cjs.a(p&&"cursor-pointer select-none",n.headerClassName),onClick:p?()=>F(n.key):void 0,"aria-sort":f?m.direction==="asc"?"ascending":"descending":void 0,children:jsxRuntime.jsxs("span",{className:"inline-flex items-center gap-1",children:[n.header,p&&jsxRuntime.jsx(Q,{active:f,direction:f?m.direction:null})]})},n.key)})})}),jsxRuntime.jsx(O,{children:E.map((n,p)=>jsxRuntime.jsx(I,{children:r.map(f=>jsxRuntime.jsx(M,{className:f.cellClassName,children:f.cell(n)},f.key))},T?T(n,p):p))})]})}function be({value:r,onCommit:a,onCancel:u}){let[g,k]=react.useState(r),T=react.useRef(null);react.useEffect(()=>{T.current?.focus(),T.current?.select();},[]);let d=()=>a(g);return jsxRuntime.jsxs("span",{className:"flex items-center gap-1",children:[jsxRuntime.jsx("input",{ref:T,type:"text",value:g,onChange:x=>k(x.target.value),onKeyDown:x=>{x.key==="Enter"&&d(),x.key==="Escape"&&u();},"aria-label":"Edit cell",className:"min-w-0 flex-1 rounded border border-primary-400 bg-white px-1.5 py-0.5 text-sm outline-none focus:ring-1 focus:ring-primary-400 dark:border-primary-600 dark:bg-secondary-800"}),jsxRuntime.jsx("button",{type:"button",onClick:d,className:"text-success-600 hover:text-success-700 dark:text-success-400","aria-label":"Confirm",children:jsxRuntime.jsx(lucideReact.Check,{className:"h-3.5 w-3.5"})}),jsxRuntime.jsx("button",{type:"button",onClick:u,className:"text-danger-500 hover:text-danger-600 dark:text-danger-400","aria-label":"Cancel",children:jsxRuntime.jsx(lucideReact.X,{className:"h-3.5 w-3.5"})})]})}function ke({columns:r,data:a,rowKey:u,sort:g,onSortChange:k,defaultSort:T=null,selectionMode:d="none",selected:x,onSelectionChange:B,editable:w=false,onCellEdit:m,toolbar:F=false,onAdd:E,onDelete:n,intent:p,className:f}){let[H,U]=react.useState(T),i=g??H,h=react.useCallback(e=>{let o=i?.column===e?i.direction==="asc"?{column:e,direction:"desc"}:null:{column:e,direction:"asc"};k?k(o):U(o);},[i,k]),X=react.useMemo(()=>{if(!i)return a;let e=r.find(S=>S.key===i.column);if(!e)return a;let o=e.compareFn??((S,c)=>{let N=e.cell(S),K=e.cell(c);return N==null&&K==null?0:N==null?-1:K==null?1:typeof N=="number"&&typeof K=="number"?N-K:String(N).localeCompare(String(K))}),s=[...a].sort(o);return i.direction==="desc"?s.reverse():s},[a,i,r]),[W,Y]=react.useState([]),l=x??W,v=B??Y,P=react.useMemo(()=>X.map((e,o)=>u(e,o)),[X,u]),V=d==="multiple"&&P.length>0&&P.every(e=>l.includes(e)),Z=d==="multiple"&&l.length>0&&!V,_=react.useCallback(e=>{d==="single"?v(l.includes(e)?[]:[e]):d==="multiple"&&v(l.includes(e)?l.filter(o=>o!==e):[...l,e]);},[d,l,v]),j=react.useCallback(()=>{v(V?[]:P);},[V,P,v]),[q,A]=react.useState(null),ee=react.useCallback((e,o,s)=>{w&&s!==false&&A({rowKey:e,colKey:o});},[w]),te=react.useCallback((e,o,s)=>{m?.(e,o,s),A(null);},[m]);return jsxRuntime.jsxs("div",{className:"space-y-2",children:[F&&jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[E&&jsxRuntime.jsxs("button",{type:"button",onClick:E,className:"inline-flex items-center gap-1.5 rounded-md border border-secondary-300 bg-white px-3 py-1.5 text-sm font-medium text-secondary-700 transition-colors hover:bg-secondary-50 dark:border-secondary-600 dark:bg-secondary-800 dark:text-secondary-300 dark:hover:bg-secondary-700",children:[jsxRuntime.jsx(lucideReact.Plus,{className:"h-3.5 w-3.5"})," Add"]}),n&&jsxRuntime.jsxs("button",{type:"button",onClick:()=>n(l),disabled:l.length===0,className:"inline-flex items-center gap-1.5 rounded-md border border-secondary-300 bg-white px-3 py-1.5 text-sm font-medium text-danger-600 transition-colors hover:bg-danger-50 disabled:opacity-40 disabled:pointer-events-none dark:border-secondary-600 dark:bg-secondary-800 dark:text-danger-400 dark:hover:bg-danger-900/20",children:[jsxRuntime.jsx(lucideReact.Trash2,{className:"h-3.5 w-3.5"})," Delete",l.length>0&&` (${l.length})`]}),w&&l.length===1&&jsxRuntime.jsxs("button",{type:"button",onClick:()=>{let e=r.find(o=>o.editable!==false);e&&A({rowKey:l[0],colKey:e.key});},className:"inline-flex items-center gap-1.5 rounded-md border border-secondary-300 bg-white px-3 py-1.5 text-sm font-medium text-secondary-700 transition-colors hover:bg-secondary-50 dark:border-secondary-600 dark:bg-secondary-800 dark:text-secondary-300 dark:hover:bg-secondary-700",children:[jsxRuntime.jsx(lucideReact.Pencil,{className:"h-3.5 w-3.5"})," Edit"]}),l.length>0&&jsxRuntime.jsxs("span",{className:"ml-auto text-sm text-secondary-500 dark:text-secondary-400",children:[l.length," row",l.length>1?"s":""," selected"]})]}),jsxRuntime.jsxs(G,{intent:p,className:f,children:[jsxRuntime.jsx(J,{children:jsxRuntime.jsxs(I,{children:[d==="multiple"&&jsxRuntime.jsx(L,{className:"w-10",children:jsxRuntime.jsx("input",{type:"checkbox",checked:V,ref:e=>{e&&(e.indeterminate=Z);},onChange:j,className:"h-4 w-4 cursor-pointer rounded border-secondary-300 accent-primary-600","aria-label":"Select all"})}),d==="single"&&jsxRuntime.jsx(L,{className:"w-10"}),r.map(e=>{let o=e.sortable!==false,s=i?.column===e.key;return jsxRuntime.jsx(L,{className:chunkX5YP5TMY_cjs.a(o&&"cursor-pointer select-none",e.headerClassName),onClick:o?()=>h(e.key):void 0,"aria-sort":s?i.direction==="asc"?"ascending":"descending":void 0,children:jsxRuntime.jsxs("span",{className:"inline-flex items-center gap-1",children:[e.header,o&&jsxRuntime.jsx(Q,{active:s,direction:s?i.direction:null})]})},e.key)})]})}),jsxRuntime.jsx(O,{children:X.map((e,o)=>{let s=u(e,o),S=l.includes(s);return jsxRuntime.jsxs(I,{className:chunkX5YP5TMY_cjs.a(S&&"bg-primary-50/60 dark:bg-primary-900/20"),onClick:()=>{d!=="none"&&_(s);},children:[d==="multiple"&&jsxRuntime.jsx(M,{className:"w-10",children:jsxRuntime.jsx("input",{type:"checkbox",checked:S,onChange:()=>_(s),onClick:c=>c.stopPropagation(),className:"h-4 w-4 cursor-pointer rounded border-secondary-300 accent-primary-600","aria-label":"Select row"})}),d==="single"&&jsxRuntime.jsx(M,{className:"w-10",children:jsxRuntime.jsx("input",{type:"radio",checked:S,onChange:()=>_(s),onClick:c=>c.stopPropagation(),className:"h-4 w-4 cursor-pointer accent-primary-600","aria-label":"Select row"})}),r.map(c=>{let N=q?.rowKey===s&&q?.colKey===c.key,K=c.editValue?.(e)??(()=>{let C=c.cell(e);return typeof C=="string"||typeof C=="number"?String(C):""})();return jsxRuntime.jsx(M,{className:chunkX5YP5TMY_cjs.a(c.cellClassName,w&&c.editable!==false&&"cursor-text"),onDoubleClick:C=>{C.stopPropagation(),ee(s,c.key,c.editable);},children:N?jsxRuntime.jsx(be,{value:K,onCommit:C=>te(s,c.key,C),onCancel:()=>A(null)}):c.cell(e)},c.key)})]},s)})})]})]})}function Q({active:r,direction:a}){let u="h-3.5 w-3.5 shrink-0";return !r||!a?jsxRuntime.jsx(lucideReact.ArrowUpDown,{className:chunkX5YP5TMY_cjs.a(u,"opacity-30")}):a==="asc"?jsxRuntime.jsx(lucideReact.ArrowUp,{className:chunkX5YP5TMY_cjs.a(u,"opacity-70")}):jsxRuntime.jsx(lucideReact.ArrowDown,{className:chunkX5YP5TMY_cjs.a(u,"opacity-70")})}exports.a=G;exports.b=J;exports.c=O;exports.d=I;exports.e=L;exports.f=M;exports.g=xe;exports.h=ke;
@@ -1 +0,0 @@
1
- import {a}from'./chunk-AXBJKPZZ.js';import u,{createContext,useState,useCallback,useContext}from'react';import {ChevronRight}from'lucide-react';import {jsx,Fragment,jsxs}from'react/jsx-runtime';var T=createContext({showLines:true,expandedKeys:null,onToggleKey:()=>{}});function M({showLines:l=true,showRoot:a$1=true,expandedKeys:e,defaultExpandedKeys:x="all",onExpandedKeysChange:d,className:p,children:c,...m}){let [f,i]=useState(()=>x),g=useCallback(t=>{if(e){let n=new Set(e);n.has(t)?n.delete(t):n.add(t),d?.(n);}else i(n=>{if(n==="all")return new Set(["__ALL_MINUS__",t]);let r=new Set(n);return r.has(t)?r.delete(t):r.add(t),r});},[e,d]),h=e??(f==="all"?null:f);return jsx(T.Provider,{value:{showLines:l,expandedKeys:h,onToggleKey:g},children:a$1?jsx("ul",{className:a("text-sm",p),role:"tree",...m,children:c}):jsx("ul",{className:a("text-sm",p),role:"tree",...m,children:jsx(_,{children:c})})})}function _({children:l}){let a=C(l);return jsx(Fragment,{children:a.map(e=>u.isValidElement(e)&&e.props.children?e.props.children:null)})}function C(l){let a=[];return u.Children.forEach(l,e=>{u.isValidElement(e)&&e.type===u.Fragment?a.push(...C(e.props.children)):a.push(e);}),a}function A({nodeKey:l,label:a$1,icon:e,defaultExpanded:x=false,expanded:d,onToggle:p,children:c,className:m}){let{showLines:f,expandedKeys:i,onToggleKey:y}=useContext(T),[g,h]=useState(x),t=u.Children.count(c)>0,n=l??(typeof a$1=="string"?a$1:""),r;d!=null?r=d:i!=null&&n?i.has("__ALL_MINUS__")?r=!i.has(n):r=i.has(n):r=g;let w=()=>{let R=!r;p?p(R):i!=null&&n?y(n):h(R);};return jsxs("li",{className:a("select-none",m),role:"treeitem","aria-expanded":t?r:void 0,children:[jsxs("div",{className:a("hover:bg-primary-50 dark:hover:bg-primary-800/50 flex items-center gap-1 rounded-md px-1 py-1",t?"cursor-pointer":"cursor-default"),onClick:t?w:void 0,children:[t?jsx(ChevronRight,{className:a("text-primary-400 h-4 w-4 shrink-0 transition-transform duration-200",r&&"rotate-90")}):jsx("span",{className:"w-4 shrink-0"}),e&&jsx("span",{className:"shrink-0",children:e}),jsx("span",{className:"text-primary-700 dark:text-primary-300 truncate",children:a$1})]}),t&&jsx("div",{className:a("grid transition-[grid-template-rows] duration-200 ease-out",r?"grid-rows-[1fr]":"grid-rows-[0fr]"),children:jsx("div",{className:"overflow-hidden",children:jsx("ul",{className:a("ml-4 pl-2",f&&"border-primary-200 dark:border-primary-700 border-l"),role:"group",children:c})})})]})}export{M as a,A as b};