@tribepad/themis 1.0.0 → 1.0.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 (326) hide show
  1. package/dist/elements/Accordion/index.js +325 -66
  2. package/dist/elements/Accordion/index.js.map +1 -1
  3. package/dist/elements/Accordion/index.mjs +317 -3
  4. package/dist/elements/Accordion/index.mjs.map +1 -1
  5. package/dist/elements/Avatar/index.js +461 -45
  6. package/dist/elements/Avatar/index.js.map +1 -1
  7. package/dist/elements/Avatar/index.mjs +456 -3
  8. package/dist/elements/Avatar/index.mjs.map +1 -1
  9. package/dist/elements/Badge/index.js +238 -36
  10. package/dist/elements/Badge/index.js.map +1 -1
  11. package/dist/elements/Badge/index.mjs +234 -4
  12. package/dist/elements/Badge/index.mjs.map +1 -1
  13. package/dist/elements/Breadcrumbs/index.js +808 -39
  14. package/dist/elements/Breadcrumbs/index.js.map +1 -1
  15. package/dist/elements/Breadcrumbs/index.mjs +810 -7
  16. package/dist/elements/Breadcrumbs/index.mjs.map +1 -1
  17. package/dist/elements/Button/index.js +282 -19
  18. package/dist/elements/Button/index.js.map +1 -1
  19. package/dist/elements/Button/index.mjs +283 -4
  20. package/dist/elements/Button/index.mjs.map +1 -1
  21. package/dist/elements/ButtonGroup/index.js +229 -56
  22. package/dist/elements/ButtonGroup/index.js.map +1 -1
  23. package/dist/elements/ButtonGroup/index.mjs +222 -3
  24. package/dist/elements/ButtonGroup/index.mjs.map +1 -1
  25. package/dist/elements/Card/Card.d.ts.map +1 -1
  26. package/dist/elements/Card/index.js +563 -67
  27. package/dist/elements/Card/index.js.map +1 -1
  28. package/dist/elements/Card/index.mjs +560 -6
  29. package/dist/elements/Card/index.mjs.map +1 -1
  30. package/dist/elements/Carousel/index.js +782 -14
  31. package/dist/elements/Carousel/index.js.map +1 -1
  32. package/dist/elements/Carousel/index.mjs +786 -8
  33. package/dist/elements/Carousel/index.mjs.map +1 -1
  34. package/dist/elements/Chart/index.js +1833 -36
  35. package/dist/elements/Chart/index.js.map +1 -1
  36. package/dist/elements/Chart/index.mjs +1832 -4
  37. package/dist/elements/Chart/index.mjs.map +1 -1
  38. package/dist/elements/Checkbox/index.js +310 -39
  39. package/dist/elements/Checkbox/index.js.map +1 -1
  40. package/dist/elements/Checkbox/index.mjs +306 -4
  41. package/dist/elements/Checkbox/index.mjs.map +1 -1
  42. package/dist/elements/CheckboxGroup/index.js +445 -59
  43. package/dist/elements/CheckboxGroup/index.js.map +1 -1
  44. package/dist/elements/CheckboxGroup/index.mjs +439 -4
  45. package/dist/elements/CheckboxGroup/index.mjs.map +1 -1
  46. package/dist/elements/DatePicker/index.js +871 -89
  47. package/dist/elements/DatePicker/index.js.map +1 -1
  48. package/dist/elements/DatePicker/index.mjs +853 -4
  49. package/dist/elements/DatePicker/index.mjs.map +1 -1
  50. package/dist/elements/Dropdown/index.js +189 -35
  51. package/dist/elements/Dropdown/index.js.map +1 -1
  52. package/dist/elements/Dropdown/index.mjs +184 -2
  53. package/dist/elements/Dropdown/index.mjs.map +1 -1
  54. package/dist/elements/FileField/index.js +1532 -129
  55. package/dist/elements/FileField/index.js.map +1 -1
  56. package/dist/elements/FileField/index.mjs +1507 -7
  57. package/dist/elements/FileField/index.mjs.map +1 -1
  58. package/dist/elements/FormLayout/index.js +166 -11
  59. package/dist/elements/FormLayout/index.js.map +1 -1
  60. package/dist/elements/FormLayout/index.mjs +167 -2
  61. package/dist/elements/FormLayout/index.mjs.map +1 -1
  62. package/dist/elements/Modal/index.js +228 -46
  63. package/dist/elements/Modal/index.js.map +1 -1
  64. package/dist/elements/Modal/index.mjs +220 -1
  65. package/dist/elements/Modal/index.mjs.map +1 -1
  66. package/dist/elements/NumberField/index.js +659 -48
  67. package/dist/elements/NumberField/index.js.map +1 -1
  68. package/dist/elements/NumberField/index.mjs +654 -6
  69. package/dist/elements/NumberField/index.mjs.map +1 -1
  70. package/dist/elements/OTPInput/index.js +729 -6
  71. package/dist/elements/OTPInput/index.js.map +1 -1
  72. package/dist/elements/OTPInput/index.mjs +732 -2
  73. package/dist/elements/OTPInput/index.mjs.map +1 -1
  74. package/dist/elements/Panel/index.js +326 -27
  75. package/dist/elements/Panel/index.js.map +1 -1
  76. package/dist/elements/Panel/index.mjs +323 -2
  77. package/dist/elements/Panel/index.mjs.map +1 -1
  78. package/dist/elements/Progress/index.js +181 -22
  79. package/dist/elements/Progress/index.js.map +1 -1
  80. package/dist/elements/Progress/index.mjs +181 -3
  81. package/dist/elements/Progress/index.mjs.map +1 -1
  82. package/dist/elements/RadioGroup/index.js +358 -34
  83. package/dist/elements/RadioGroup/index.js.map +1 -1
  84. package/dist/elements/RadioGroup/index.mjs +359 -4
  85. package/dist/elements/RadioGroup/index.mjs.map +1 -1
  86. package/dist/elements/Resizable/components/ResizableHandle.d.ts +0 -8
  87. package/dist/elements/Resizable/components/ResizableHandle.d.ts.map +1 -1
  88. package/dist/elements/Resizable/components/ResizablePanel.d.ts +0 -8
  89. package/dist/elements/Resizable/components/ResizablePanel.d.ts.map +1 -1
  90. package/dist/elements/Resizable/components/ResizablePanelGroup.d.ts +0 -8
  91. package/dist/elements/Resizable/components/ResizablePanelGroup.d.ts.map +1 -1
  92. package/dist/elements/Resizable/components/ResizablePopover.d.ts +0 -8
  93. package/dist/elements/Resizable/components/ResizablePopover.d.ts.map +1 -1
  94. package/dist/elements/Resizable/index.js +1568 -51
  95. package/dist/elements/Resizable/index.js.map +1 -1
  96. package/dist/elements/Resizable/index.mjs +1566 -6
  97. package/dist/elements/Resizable/index.mjs.map +1 -1
  98. package/dist/elements/Select/index.js +580 -22
  99. package/dist/elements/Select/index.js.map +1 -1
  100. package/dist/elements/Select/index.mjs +582 -2
  101. package/dist/elements/Select/index.mjs.map +1 -1
  102. package/dist/elements/Skeleton/index.js +77 -15
  103. package/dist/elements/Skeleton/index.js.map +1 -1
  104. package/dist/elements/Skeleton/index.mjs +78 -3
  105. package/dist/elements/Skeleton/index.mjs.map +1 -1
  106. package/dist/elements/Switch/index.js +153 -21
  107. package/dist/elements/Switch/index.js.map +1 -1
  108. package/dist/elements/Switch/index.mjs +149 -5
  109. package/dist/elements/Switch/index.mjs.map +1 -1
  110. package/dist/elements/Table/index.js +589 -68
  111. package/dist/elements/Table/index.js.map +1 -1
  112. package/dist/elements/Table/index.mjs +578 -5
  113. package/dist/elements/Table/index.mjs.map +1 -1
  114. package/dist/elements/Tabs/index.js +328 -63
  115. package/dist/elements/Tabs/index.js.map +1 -1
  116. package/dist/elements/Tabs/index.mjs +320 -3
  117. package/dist/elements/Tabs/index.mjs.map +1 -1
  118. package/dist/elements/TextField/index.js +695 -51
  119. package/dist/elements/TextField/index.js.map +1 -1
  120. package/dist/elements/TextField/index.mjs +684 -7
  121. package/dist/elements/TextField/index.mjs.map +1 -1
  122. package/dist/elements/TimeField/index.js +244 -33
  123. package/dist/elements/TimeField/index.js.map +1 -1
  124. package/dist/elements/TimeField/index.mjs +238 -2
  125. package/dist/elements/TimeField/index.mjs.map +1 -1
  126. package/dist/elements/Toast/index.js +727 -48
  127. package/dist/elements/Toast/index.js.map +1 -1
  128. package/dist/elements/Toast/index.mjs +724 -5
  129. package/dist/elements/Toast/index.mjs.map +1 -1
  130. package/dist/elements/Tooltip/index.js +315 -49
  131. package/dist/elements/Tooltip/index.js.map +1 -1
  132. package/dist/elements/Tooltip/index.mjs +310 -4
  133. package/dist/elements/Tooltip/index.mjs.map +1 -1
  134. package/dist/elements/index.js +12417 -799
  135. package/dist/elements/index.js.map +1 -1
  136. package/dist/elements/index.mjs +12233 -40
  137. package/dist/elements/index.mjs.map +1 -1
  138. package/dist/index.js +12452 -825
  139. package/dist/index.js.map +1 -1
  140. package/dist/index.mjs +12262 -42
  141. package/dist/index.mjs.map +1 -1
  142. package/dist/schemas/index.js +47 -21
  143. package/dist/schemas/index.js.map +1 -1
  144. package/dist/schemas/index.mjs +47 -2
  145. package/dist/schemas/index.mjs.map +1 -1
  146. package/dist/styles/index.js +161 -147
  147. package/dist/styles/index.js.map +1 -1
  148. package/dist/styles/index.mjs +128 -2
  149. package/dist/styles/index.mjs.map +1 -1
  150. package/dist/utils/index.js +7 -7
  151. package/dist/utils/index.js.map +1 -1
  152. package/dist/utils/index.mjs +9 -2
  153. package/dist/utils/index.mjs.map +1 -1
  154. package/package.json +1 -1
  155. package/dist/Carousel-NTZX5TOW.js +0 -16
  156. package/dist/Carousel-NTZX5TOW.js.map +0 -1
  157. package/dist/Carousel-YH3DOQJU.mjs +0 -7
  158. package/dist/Carousel-YH3DOQJU.mjs.map +0 -1
  159. package/dist/chunk-2HIUTHMU.mjs +0 -234
  160. package/dist/chunk-2HIUTHMU.mjs.map +0 -1
  161. package/dist/chunk-34GTFTDO.js +0 -431
  162. package/dist/chunk-34GTFTDO.js.map +0 -1
  163. package/dist/chunk-3H7ASYR7.js +0 -250
  164. package/dist/chunk-3H7ASYR7.js.map +0 -1
  165. package/dist/chunk-3IEN7JOP.js +0 -316
  166. package/dist/chunk-3IEN7JOP.js.map +0 -1
  167. package/dist/chunk-3JHN4GAL.js +0 -326
  168. package/dist/chunk-3JHN4GAL.js.map +0 -1
  169. package/dist/chunk-3MJPASQU.js +0 -232
  170. package/dist/chunk-3MJPASQU.js.map +0 -1
  171. package/dist/chunk-3XD2JUL3.js +0 -572
  172. package/dist/chunk-3XD2JUL3.js.map +0 -1
  173. package/dist/chunk-3YOY2VJ6.js +0 -189
  174. package/dist/chunk-3YOY2VJ6.js.map +0 -1
  175. package/dist/chunk-4DU5JSXB.js +0 -408
  176. package/dist/chunk-4DU5JSXB.js.map +0 -1
  177. package/dist/chunk-4E4E2GSS.js +0 -352
  178. package/dist/chunk-4E4E2GSS.js.map +0 -1
  179. package/dist/chunk-4NHAP4AN.mjs +0 -3
  180. package/dist/chunk-4NHAP4AN.mjs.map +0 -1
  181. package/dist/chunk-4S33J5NY.mjs +0 -415
  182. package/dist/chunk-4S33J5NY.mjs.map +0 -1
  183. package/dist/chunk-5SMGRT3G.mjs +0 -354
  184. package/dist/chunk-5SMGRT3G.mjs.map +0 -1
  185. package/dist/chunk-5SVLJN2C.mjs +0 -22
  186. package/dist/chunk-5SVLJN2C.mjs.map +0 -1
  187. package/dist/chunk-66WTU4EB.mjs +0 -299
  188. package/dist/chunk-66WTU4EB.mjs.map +0 -1
  189. package/dist/chunk-6S25NMOT.mjs +0 -335
  190. package/dist/chunk-6S25NMOT.mjs.map +0 -1
  191. package/dist/chunk-6SP7UB3D.js +0 -4
  192. package/dist/chunk-6SP7UB3D.js.map +0 -1
  193. package/dist/chunk-6TYWWQHM.mjs +0 -565
  194. package/dist/chunk-6TYWWQHM.mjs.map +0 -1
  195. package/dist/chunk-A3YUJA6W.mjs +0 -384
  196. package/dist/chunk-A3YUJA6W.mjs.map +0 -1
  197. package/dist/chunk-A6KEDVUR.js +0 -61
  198. package/dist/chunk-A6KEDVUR.js.map +0 -1
  199. package/dist/chunk-A77RUEWL.js +0 -730
  200. package/dist/chunk-A77RUEWL.js.map +0 -1
  201. package/dist/chunk-AA4IKMPE.mjs +0 -3
  202. package/dist/chunk-AA4IKMPE.mjs.map +0 -1
  203. package/dist/chunk-AKIA6GW6.mjs +0 -163
  204. package/dist/chunk-AKIA6GW6.mjs.map +0 -1
  205. package/dist/chunk-AL6P275L.mjs +0 -435
  206. package/dist/chunk-AL6P275L.mjs.map +0 -1
  207. package/dist/chunk-AZ3RJYTB.js +0 -37
  208. package/dist/chunk-AZ3RJYTB.js.map +0 -1
  209. package/dist/chunk-B5Q4UPL6.js +0 -32
  210. package/dist/chunk-B5Q4UPL6.js.map +0 -1
  211. package/dist/chunk-B6DHPMDP.mjs +0 -335
  212. package/dist/chunk-B6DHPMDP.mjs.map +0 -1
  213. package/dist/chunk-BDXKKMBZ.mjs +0 -184
  214. package/dist/chunk-BDXKKMBZ.mjs.map +0 -1
  215. package/dist/chunk-BL6E2DLZ.mjs +0 -52
  216. package/dist/chunk-BL6E2DLZ.mjs.map +0 -1
  217. package/dist/chunk-CGFDS4XS.mjs +0 -121
  218. package/dist/chunk-CGFDS4XS.mjs.map +0 -1
  219. package/dist/chunk-CJIW5TKI.js +0 -139
  220. package/dist/chunk-CJIW5TKI.js.map +0 -1
  221. package/dist/chunk-CKNISJOQ.js +0 -314
  222. package/dist/chunk-CKNISJOQ.js.map +0 -1
  223. package/dist/chunk-D6CBOECS.mjs +0 -1757
  224. package/dist/chunk-D6CBOECS.mjs.map +0 -1
  225. package/dist/chunk-DDWEVC2S.js +0 -166
  226. package/dist/chunk-DDWEVC2S.js.map +0 -1
  227. package/dist/chunk-DZ556D2F.mjs +0 -176
  228. package/dist/chunk-DZ556D2F.mjs.map +0 -1
  229. package/dist/chunk-E2KQFV3O.mjs +0 -10
  230. package/dist/chunk-E2KQFV3O.mjs.map +0 -1
  231. package/dist/chunk-EMMLADSC.js +0 -126
  232. package/dist/chunk-EMMLADSC.js.map +0 -1
  233. package/dist/chunk-EP4WOI5D.mjs +0 -926
  234. package/dist/chunk-EP4WOI5D.mjs.map +0 -1
  235. package/dist/chunk-FJRXLJC2.mjs +0 -160
  236. package/dist/chunk-FJRXLJC2.mjs.map +0 -1
  237. package/dist/chunk-FKQI434R.js +0 -345
  238. package/dist/chunk-FKQI434R.js.map +0 -1
  239. package/dist/chunk-FPKEAJRZ.mjs +0 -100
  240. package/dist/chunk-FPKEAJRZ.mjs.map +0 -1
  241. package/dist/chunk-FWQYB22U.js +0 -183
  242. package/dist/chunk-FWQYB22U.js.map +0 -1
  243. package/dist/chunk-GD5GHTMA.js +0 -189
  244. package/dist/chunk-GD5GHTMA.js.map +0 -1
  245. package/dist/chunk-GE5XTSDZ.js +0 -447
  246. package/dist/chunk-GE5XTSDZ.js.map +0 -1
  247. package/dist/chunk-GVE47ZAX.mjs +0 -32
  248. package/dist/chunk-GVE47ZAX.mjs.map +0 -1
  249. package/dist/chunk-HK46BT5U.mjs +0 -18
  250. package/dist/chunk-HK46BT5U.mjs.map +0 -1
  251. package/dist/chunk-HQVRMR6N.js +0 -365
  252. package/dist/chunk-HQVRMR6N.js.map +0 -1
  253. package/dist/chunk-HSGBJPJO.mjs +0 -398
  254. package/dist/chunk-HSGBJPJO.mjs.map +0 -1
  255. package/dist/chunk-I3AUTOMZ.mjs +0 -125
  256. package/dist/chunk-I3AUTOMZ.mjs.map +0 -1
  257. package/dist/chunk-IEI5LD5C.mjs +0 -1161
  258. package/dist/chunk-IEI5LD5C.mjs.map +0 -1
  259. package/dist/chunk-IIPTC2X7.mjs +0 -118
  260. package/dist/chunk-IIPTC2X7.mjs.map +0 -1
  261. package/dist/chunk-J7TLHF2Q.js +0 -4
  262. package/dist/chunk-J7TLHF2Q.js.map +0 -1
  263. package/dist/chunk-JJOWXFXQ.mjs +0 -765
  264. package/dist/chunk-JJOWXFXQ.mjs.map +0 -1
  265. package/dist/chunk-JPTSS2OA.mjs +0 -3
  266. package/dist/chunk-JPTSS2OA.mjs.map +0 -1
  267. package/dist/chunk-KFXXRLTP.js +0 -396
  268. package/dist/chunk-KFXXRLTP.js.map +0 -1
  269. package/dist/chunk-KPRRBSG6.mjs +0 -272
  270. package/dist/chunk-KPRRBSG6.mjs.map +0 -1
  271. package/dist/chunk-NFSBGRDB.mjs +0 -57
  272. package/dist/chunk-NFSBGRDB.mjs.map +0 -1
  273. package/dist/chunk-NGJVCFTM.js +0 -219
  274. package/dist/chunk-NGJVCFTM.js.map +0 -1
  275. package/dist/chunk-NSQ6MZJ6.mjs +0 -728
  276. package/dist/chunk-NSQ6MZJ6.mjs.map +0 -1
  277. package/dist/chunk-NYQYHT76.mjs +0 -296
  278. package/dist/chunk-NYQYHT76.mjs.map +0 -1
  279. package/dist/chunk-OLJJGI5B.js +0 -1193
  280. package/dist/chunk-OLJJGI5B.js.map +0 -1
  281. package/dist/chunk-Q3572X2J.js +0 -292
  282. package/dist/chunk-Q3572X2J.js.map +0 -1
  283. package/dist/chunk-QH7N7D4I.mjs +0 -210
  284. package/dist/chunk-QH7N7D4I.mjs.map +0 -1
  285. package/dist/chunk-R7XUIV25.js +0 -466
  286. package/dist/chunk-R7XUIV25.js.map +0 -1
  287. package/dist/chunk-RFFO4KPM.js +0 -135
  288. package/dist/chunk-RFFO4KPM.js.map +0 -1
  289. package/dist/chunk-RFX7QKA7.mjs +0 -180
  290. package/dist/chunk-RFX7QKA7.mjs.map +0 -1
  291. package/dist/chunk-SN5LFAP3.js +0 -940
  292. package/dist/chunk-SN5LFAP3.js.map +0 -1
  293. package/dist/chunk-T4COXKQ3.js +0 -24
  294. package/dist/chunk-T4COXKQ3.js.map +0 -1
  295. package/dist/chunk-TS54QM27.js +0 -125
  296. package/dist/chunk-TS54QM27.js.map +0 -1
  297. package/dist/chunk-UE2S4PCX.mjs +0 -220
  298. package/dist/chunk-UE2S4PCX.mjs.map +0 -1
  299. package/dist/chunk-UTW3QX2A.mjs +0 -282
  300. package/dist/chunk-UTW3QX2A.mjs.map +0 -1
  301. package/dist/chunk-V74LGMAE.js +0 -1767
  302. package/dist/chunk-V74LGMAE.js.map +0 -1
  303. package/dist/chunk-VIREG536.js +0 -12
  304. package/dist/chunk-VIREG536.js.map +0 -1
  305. package/dist/chunk-VY7M7346.js +0 -4
  306. package/dist/chunk-VY7M7346.js.map +0 -1
  307. package/dist/chunk-W3TJOO7H.mjs +0 -319
  308. package/dist/chunk-W3TJOO7H.mjs.map +0 -1
  309. package/dist/chunk-WIUOB36M.js +0 -54
  310. package/dist/chunk-WIUOB36M.js.map +0 -1
  311. package/dist/chunk-WJGLM4CY.js +0 -291
  312. package/dist/chunk-WJGLM4CY.js.map +0 -1
  313. package/dist/chunk-WNURH5OO.mjs +0 -453
  314. package/dist/chunk-WNURH5OO.mjs.map +0 -1
  315. package/dist/chunk-X25TNRSD.mjs +0 -364
  316. package/dist/chunk-X25TNRSD.mjs.map +0 -1
  317. package/dist/chunk-Y3GT7ETK.js +0 -108
  318. package/dist/chunk-Y3GT7ETK.js.map +0 -1
  319. package/dist/chunk-Z4FRNOF6.mjs +0 -115
  320. package/dist/chunk-Z4FRNOF6.mjs.map +0 -1
  321. package/dist/chunk-ZMYLD3BN.js +0 -166
  322. package/dist/chunk-ZMYLD3BN.js.map +0 -1
  323. package/dist/chunk-ZP2KV6EX.js +0 -815
  324. package/dist/chunk-ZP2KV6EX.js.map +0 -1
  325. package/dist/chunk-ZVKXFELU.js +0 -366
  326. package/dist/chunk-ZVKXFELU.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/elements/Table/Table.tsx"],"names":["AriaTable","AriaTableHeader","AriaColumn","AriaTableBody","AriaRow","AriaCell"],"mappings":"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","file":"chunk-6S25NMOT.mjs","sourcesContent":["'use client';\n\n/**\n * Table Component - Accessible Data Table (v1)\n * ARIA grid pattern with React Aria primitives\n *\n * @see plan.md for architecture details\n * @see table-prd.md for requirements\n * @see WCAG 2.2 AAA compliance\n */\n\nimport {\n forwardRef,\n createContext,\n useContext,\n type ReactNode,\n type ReactElement,\n type ForwardedRef,\n} from 'react';\nimport {\n Table as AriaTable,\n TableHeader as AriaTableHeader,\n TableBody as AriaTableBody,\n Column as AriaColumn,\n Row as AriaRow,\n Cell as AriaCell,\n Collection,\n useTableOptions,\n type TableHeaderProps as AriaTableHeaderProps,\n type TableBodyProps as AriaTableBodyProps,\n type RowProps as AriaRowProps,\n type CellProps as AriaCellProps,\n type Selection,\n type SortDescriptor,\n} from 'react-aria-components';\nimport { Checkbox } from '../Checkbox';\nimport { cva } from 'class-variance-authority';\nimport { ChevronUp, ChevronDown } from 'lucide-react';\nimport { cn } from '../../utils/cn';\nimport type {\n TableProps,\n TableHeaderProps,\n TableBodyProps,\n TableFooterProps,\n TableCaptionProps,\n ColumnProps,\n RowProps,\n CellProps,\n TableVariant,\n TableSize,\n} from './Table.types';\n\n// ============================================================================\n// Context for passing table-level props to children\n// ============================================================================\n\ninterface TableContextValue {\n variant: TableVariant;\n size: TableSize;\n selectionMode: 'none' | 'single' | 'multiple';\n stickyHeader: boolean;\n}\n\nconst TableContext = createContext<TableContextValue>({\n variant: 'default',\n size: 'default',\n selectionMode: 'none',\n stickyHeader: false,\n});\n\n// ============================================================================\n// CVA Variants\n// ============================================================================\n\n// Table container variants (wrapper div)\nexport const tableContainerVariants = cva(['relative w-full overflow-auto']);\n\n// Table variants\nexport const tableVariants = cva(\n ['w-full caption-bottom text-sm', 'border-collapse'],\n {\n variants: {\n variant: {\n default: '',\n bordered: 'border border-[var(--border)] rounded-md',\n striped: '',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n }\n);\n\n// Table header variants\nexport const tableHeaderVariants = cva(['[&_tr]:border-b'], {\n variants: {\n sticky: {\n true: 'sticky top-0 z-10 bg-[var(--content-background)]',\n false: '',\n },\n },\n defaultVariants: {\n sticky: false,\n },\n});\n\n// Table footer variants\nexport const tableFooterVariants = cva([\n 'border-t border-[var(--border)]',\n 'bg-[var(--accent-background)]/50',\n 'font-medium',\n '[&>tr]:last:border-b-0',\n]);\n\n// Table caption variants\nexport const tableCaptionVariants = cva([\n 'mt-4 text-sm text-[var(--menu-muted)]',\n]);\n\n// Column variants\nexport const columnVariants = cva(\n [\n 'h-12 px-4 text-left align-middle font-medium',\n 'text-[var(--menu-muted)]',\n '[&:has([role=checkbox])]:pr-0',\n 'select-none',\n 'focus-visible:outline-none focus-visible:ring-2',\n 'focus-visible:ring-[var(--ring)] focus-visible:ring-inset',\n ],\n {\n variants: {\n allowsSorting: {\n true: 'cursor-pointer hover:bg-[var(--accent)]/50',\n false: '',\n },\n align: {\n start: 'text-start',\n center: 'text-center',\n end: 'text-end',\n },\n size: {\n sm: 'h-10 px-3 text-xs',\n default: 'h-12 px-4 text-sm',\n lg: 'h-14 px-5 text-base',\n },\n },\n defaultVariants: {\n allowsSorting: false,\n align: 'start',\n size: 'default',\n },\n }\n);\n\n// Row variants\nexport const rowVariants = cva(\n [\n 'border-b border-[var(--border)]',\n 'transition-colors',\n 'focus-visible:outline-none focus-visible:ring-2',\n 'focus-visible:ring-[var(--ring)] focus-visible:ring-inset',\n 'hover:bg-[var(--accent-background)]/50',\n 'data-[disabled]:pointer-events-none data-[disabled]:opacity-50',\n ],\n {\n variants: {\n isSelected: {\n true: 'bg-[var(--accent)] data-[selected]:bg-[var(--accent)]',\n false: '',\n },\n variant: {\n default: '',\n striped: 'even:bg-[var(--accent-background)]/30',\n },\n },\n defaultVariants: {\n isSelected: false,\n variant: 'default',\n },\n }\n);\n\n// Cell variants\nexport const cellVariants = cva(\n ['p-4 align-middle', '[&:has([role=checkbox])]:pr-0'],\n {\n variants: {\n align: {\n start: 'text-start',\n center: 'text-center',\n end: 'text-end',\n },\n size: {\n sm: 'p-3 text-xs',\n default: 'p-4 text-sm',\n lg: 'p-5 text-base',\n },\n isRowHeader: {\n true: 'font-medium',\n false: '',\n },\n },\n defaultVariants: {\n align: 'start',\n size: 'default',\n isRowHeader: false,\n },\n }\n);\n\n// ============================================================================\n// Table Component\n// ============================================================================\n\nconst Table = forwardRef<HTMLTableElement, TableProps>(\n (\n {\n className,\n variant = 'default',\n size = 'default',\n stickyHeader = false,\n selectionMode = 'none',\n selectionBehavior = 'toggle',\n disallowEmptySelection = false,\n disabledBehavior = 'selection',\n selectedKeys,\n defaultSelectedKeys,\n onSelectionChange,\n disabledKeys,\n sortDescriptor,\n onSortChange,\n onRowAction,\n children,\n ...props\n },\n ref\n ) => {\n return (\n <TableContext.Provider value={{ variant, size, selectionMode, stickyHeader }}>\n <div\n className={cn(tableContainerVariants(), className)}\n data-testid=\"table-container\"\n >\n <AriaTable\n ref={ref}\n className={cn(tableVariants({ variant }))}\n selectionMode={selectionMode}\n selectionBehavior={selectionBehavior}\n disallowEmptySelection={disallowEmptySelection}\n disabledBehavior={disabledBehavior}\n selectedKeys={selectedKeys}\n defaultSelectedKeys={defaultSelectedKeys}\n onSelectionChange={onSelectionChange}\n disabledKeys={disabledKeys}\n sortDescriptor={sortDescriptor}\n onSortChange={onSortChange}\n onRowAction={onRowAction}\n data-testid=\"table\"\n data-variant={variant}\n data-size={size}\n {...props}\n >\n {children}\n </AriaTable>\n </div>\n </TableContext.Provider>\n );\n }\n);\n\nTable.displayName = 'Table';\n\n// ============================================================================\n// TableHeader Component\n// ============================================================================\n\nfunction TableHeaderInner<T extends object>(\n { className, children, columns, ...props }: TableHeaderProps<T>,\n ref: ForwardedRef<HTMLTableSectionElement>\n): ReactElement {\n const { size, selectionMode, stickyHeader } = useContext(TableContext);\n const { allowsDragging } = useTableOptions();\n\n return (\n <AriaTableHeader\n ref={ref}\n className={cn(tableHeaderVariants({ sticky: stickyHeader }), className)}\n data-testid=\"table-header\"\n {...(props as AriaTableHeaderProps<T>)}\n >\n {/* Selection checkbox column */}\n {selectionMode === 'multiple' && (\n <AriaColumn className={cn(columnVariants({ size }), 'w-12')}>\n <Checkbox slot=\"selection\" aria-label=\"Select all\" size={size} />\n </AriaColumn>\n )}\n {/* Drag handle column if dragging is allowed */}\n {allowsDragging && <AriaColumn />}\n {/* Render columns */}\n {columns ? (\n <Collection items={columns}>{children as (item: T) => ReactElement}</Collection>\n ) : (\n children\n )}\n </AriaTableHeader>\n );\n}\n\nconst TableHeader = forwardRef(TableHeaderInner) as <T extends object>(\n props: TableHeaderProps<T> & { ref?: ForwardedRef<HTMLTableSectionElement> }\n) => ReactElement;\n\n(TableHeader as { displayName?: string }).displayName = 'TableHeader';\n\n// ============================================================================\n// TableBody Component\n// ============================================================================\n\nfunction TableBodyInner<T extends object>(\n { className, children, items, renderEmptyState, ...props }: TableBodyProps<T>,\n ref: ForwardedRef<HTMLTableSectionElement>\n): ReactElement {\n return (\n <AriaTableBody\n ref={ref}\n className={cn(className)}\n items={items}\n renderEmptyState={\n renderEmptyState\n ? () => (\n <tr>\n <td colSpan={99} className=\"text-center p-8\">\n {renderEmptyState()}\n </td>\n </tr>\n )\n : undefined\n }\n data-testid=\"table-body\"\n {...(props as AriaTableBodyProps<T>)}\n >\n {children as AriaTableBodyProps<T>['children']}\n </AriaTableBody>\n );\n}\n\nconst TableBody = forwardRef(TableBodyInner) as <T extends object>(\n props: TableBodyProps<T> & { ref?: ForwardedRef<HTMLTableSectionElement> }\n) => ReactElement;\n\n(TableBody as { displayName?: string }).displayName = 'TableBody';\n\n// ============================================================================\n// TableFooter Component (Custom - not from React Aria)\n// ============================================================================\n\nconst TableFooter = forwardRef<HTMLTableSectionElement, TableFooterProps>(\n ({ className, children, ...props }, ref) => {\n return (\n <tfoot\n ref={ref}\n className={cn(tableFooterVariants(), className)}\n data-testid=\"table-footer\"\n {...props}\n >\n {children}\n </tfoot>\n );\n }\n);\n\nTableFooter.displayName = 'TableFooter';\n\n// ============================================================================\n// TableCaption Component (Custom - not from React Aria)\n// ============================================================================\n\nconst TableCaption = forwardRef<HTMLTableCaptionElement, TableCaptionProps>(\n ({ className, children, ...props }, ref) => {\n return (\n <caption\n ref={ref}\n className={cn(tableCaptionVariants(), className)}\n data-testid=\"table-caption\"\n {...props}\n >\n {children}\n </caption>\n );\n }\n);\n\nTableCaption.displayName = 'TableCaption';\n\n// ============================================================================\n// Column Component\n// ============================================================================\n\nconst Column = forwardRef<HTMLTableCellElement, ColumnProps>(\n (\n {\n className,\n children,\n isRowHeader = false,\n allowsSorting = false,\n align = 'start',\n width,\n minWidth,\n maxWidth,\n ...props\n },\n ref\n ) => {\n const { size } = useContext(TableContext);\n\n return (\n <AriaColumn\n ref={ref}\n isRowHeader={isRowHeader}\n allowsSorting={allowsSorting}\n width={width}\n minWidth={minWidth}\n maxWidth={maxWidth}\n className={cn(columnVariants({ allowsSorting, align, size }), className)}\n {...props}\n >\n {({ allowsSorting: canSort, sortDirection }) => (\n <div className=\"flex items-center gap-1\">\n <span>{children as ReactNode}</span>\n {canSort && sortDirection && (\n <span aria-hidden=\"true\" data-sort-direction={sortDirection}>\n {sortDirection === 'ascending' ? (\n <ChevronUp className=\"h-4 w-4\" />\n ) : (\n <ChevronDown className=\"h-4 w-4\" />\n )}\n </span>\n )}\n </div>\n )}\n </AriaColumn>\n );\n }\n);\n\n(Column as { displayName?: string }).displayName = 'Column';\n\n// ============================================================================\n// Row Component\n// ============================================================================\n\nfunction RowInner<T extends object>(\n { className, children, columns, href, isDisabled, ...props }: RowProps<T>,\n ref: ForwardedRef<HTMLTableRowElement>\n): ReactElement {\n const { variant, size, selectionMode } = useContext(TableContext);\n const { allowsDragging } = useTableOptions();\n\n return (\n <AriaRow\n ref={ref}\n href={href}\n isDisabled={isDisabled}\n className={({ isSelected, isDisabled: disabled }) =>\n cn(\n rowVariants({\n isSelected,\n variant: variant === 'striped' ? 'striped' : 'default',\n }),\n disabled && 'opacity-50',\n className\n )\n }\n data-testid=\"table-row\"\n {...(props as AriaRowProps<T>)}\n >\n {/* Selection checkbox cell */}\n {selectionMode === 'multiple' && (\n <AriaCell className={cn(cellVariants({ size }), 'w-12')}>\n <Checkbox slot=\"selection\" aria-label=\"Select row\" size={size} />\n </AriaCell>\n )}\n {/* Drag handle cell if dragging is allowed */}\n {allowsDragging && (\n <AriaCell>\n {/* Placeholder for drag handle - v2 feature */}\n </AriaCell>\n )}\n {/* Render cells */}\n {columns ? (\n <Collection items={columns}>{children as (item: T) => ReactElement}</Collection>\n ) : (\n children\n )}\n </AriaRow>\n );\n}\n\nconst Row = forwardRef(RowInner) as <T extends object>(\n props: RowProps<T> & { ref?: ForwardedRef<HTMLTableRowElement> }\n) => ReactElement;\n\n(Row as { displayName?: string }).displayName = 'Row';\n\n// ============================================================================\n// Cell Component\n// ============================================================================\n\nconst Cell = forwardRef<HTMLTableCellElement, CellProps>(\n ({ className, children, align = 'start', colSpan: _colSpan, ...props }, ref) => {\n const { size } = useContext(TableContext);\n\n return (\n <AriaCell\n ref={ref}\n className={cn(cellVariants({ align, size }), className)}\n {...(props as AriaCellProps)}\n >\n {children}\n </AriaCell>\n );\n }\n);\n\nCell.displayName = 'Cell';\n\n// ============================================================================\n// Exports\n// ============================================================================\n\nexport {\n Table,\n TableHeader,\n TableBody,\n TableFooter,\n TableCaption,\n Column,\n Row,\n Cell,\n};\n\n// Re-export types\nexport type { Selection, SortDescriptor };\n"]}
@@ -1,4 +0,0 @@
1
- 'use strict';
2
-
3
- //# sourceMappingURL=chunk-6SP7UB3D.js.map
4
- //# sourceMappingURL=chunk-6SP7UB3D.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":[],"names":[],"mappings":"","file":"chunk-6SP7UB3D.js"}
@@ -1,565 +0,0 @@
1
- import { BaseComponentPropsSchema } from './chunk-5SVLJN2C.mjs';
2
- import { forwardRef, useId, Children, useMemo, isValidElement } from 'react';
3
- import { Select as Select$1, Label, Text, Button, SelectValue, FieldError, Popover, ListBox, ListBoxItem, Header, ListBoxSection } from 'react-aria-components';
4
- import { cva } from 'class-variance-authority';
5
- import { Loader2, ChevronDown, AlertCircle, CheckSquare, Check } from 'lucide-react';
6
- import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
7
- import { z } from 'zod';
8
-
9
- var selectTriggerVariants = cva(
10
- [
11
- // Base styles
12
- "flex",
13
- "w-full",
14
- "items-center",
15
- "justify-between",
16
- "rounded-md",
17
- "border",
18
- "bg-[var(--content-background)]",
19
- "text-[var(--content-foreground)]",
20
- "transition-colors",
21
- "duration-200",
22
- "outline-none",
23
- // Focus ring (WCAG 2.2 AAA - 7:1 contrast)
24
- "focus-visible:ring-2",
25
- "focus-visible:ring-[var(--ring)]",
26
- "focus-visible:ring-offset-2",
27
- // Hover state
28
- "hover:bg-[var(--accent)]/10",
29
- // Disabled state
30
- "disabled:cursor-not-allowed",
31
- "disabled:opacity-50",
32
- // Loading state
33
- "data-[loading=true]:cursor-wait",
34
- // Truncate text
35
- "truncate"
36
- ],
37
- {
38
- variants: {
39
- size: {
40
- // All sizes use 44px minimum touch target for WCAG 2.2 AAA compliance
41
- // Visual height varies but touch area remains accessible
42
- sm: "h-9 px-3 text-sm min-h-[44px]",
43
- default: "h-11 px-4 text-base min-h-[44px]",
44
- lg: "h-14 px-5 text-lg min-h-[44px]"
45
- },
46
- isInvalid: {
47
- true: "border-[var(--destructive)]",
48
- false: "border-[var(--input)] hover:border-[var(--input)]/80"
49
- }
50
- },
51
- defaultVariants: {
52
- size: "default",
53
- isInvalid: false
54
- }
55
- }
56
- );
57
- var selectItemVariants = cva(
58
- [
59
- // Base styles
60
- "relative",
61
- "flex",
62
- "w-full",
63
- "cursor-pointer",
64
- "select-none",
65
- "items-center",
66
- "rounded-sm",
67
- "outline-none",
68
- "transition-colors",
69
- // Padding for checkmark icon (left side)
70
- "pl-8",
71
- "pr-2",
72
- // Hover state
73
- "hover:bg-[var(--accent)]",
74
- "hover:text-[var(--accent-foreground)]",
75
- // Focus state
76
- "focus:bg-[var(--accent)]",
77
- "focus:text-[var(--accent-foreground)]",
78
- // Selected state
79
- "data-[selected=true]:bg-[var(--accent)]",
80
- "data-[selected=true]:text-[var(--accent-foreground)]",
81
- // Disabled state
82
- "data-[disabled=true]:pointer-events-none",
83
- "data-[disabled=true]:opacity-50",
84
- "data-[disabled=true]:text-[var(--menu-muted)]"
85
- ],
86
- {
87
- variants: {
88
- size: {
89
- // All sizes use 44px minimum touch target for WCAG 2.2 AAA compliance
90
- sm: "h-9 py-1.5 text-sm min-h-[44px]",
91
- default: "h-11 py-2 text-base min-h-[44px]",
92
- lg: "h-14 py-3 text-lg min-h-[44px]"
93
- }
94
- },
95
- defaultVariants: {
96
- size: "default"
97
- }
98
- }
99
- );
100
- var selectPopoverVariants = cva(
101
- [
102
- // Base styles - use menu tokens to match Dropdown styling
103
- "z-50",
104
- "w-[--trigger-width]",
105
- "rounded-md",
106
- "border",
107
- "border-[var(--menu-border)]",
108
- "bg-[var(--menu-background)]",
109
- "text-[var(--menu-foreground)]",
110
- "shadow-md",
111
- "outline-none",
112
- "overflow-auto",
113
- // Animations
114
- "data-[entering]:animate-in",
115
- "data-[entering]:fade-in-0",
116
- "data-[entering]:zoom-in-95",
117
- "data-[exiting]:animate-out",
118
- "data-[exiting]:fade-out-0",
119
- "data-[exiting]:zoom-out-95"
120
- ],
121
- {
122
- variants: {
123
- size: {
124
- sm: "max-h-[200px] p-1",
125
- default: "max-h-[300px] p-1",
126
- lg: "max-h-[400px] p-1"
127
- }
128
- },
129
- defaultVariants: {
130
- size: "default"
131
- }
132
- }
133
- );
134
- var selectSectionVariants = cva(
135
- [
136
- "px-2",
137
- "py-1.5",
138
- "text-xs",
139
- "font-semibold",
140
- "text-[var(--menu-muted)]",
141
- "uppercase",
142
- "tracking-wider"
143
- ],
144
- {
145
- variants: {
146
- size: {
147
- sm: "px-2 py-1 text-[10px]",
148
- default: "px-2 py-1.5 text-xs",
149
- lg: "px-3 py-2 text-sm"
150
- }
151
- },
152
- defaultVariants: {
153
- size: "default"
154
- }
155
- }
156
- );
157
- var selectErrorVariants = cva(
158
- [
159
- "flex",
160
- "items-center",
161
- "gap-1.5",
162
- "text-sm",
163
- "font-medium",
164
- "text-[var(--destructive)]",
165
- "mt-1.5"
166
- ],
167
- {
168
- variants: {
169
- size: {
170
- sm: "text-xs mt-1",
171
- default: "text-sm mt-1.5",
172
- lg: "text-base mt-2"
173
- }
174
- },
175
- defaultVariants: {
176
- size: "default"
177
- }
178
- }
179
- );
180
- var SelectRoot = forwardRef(
181
- ({
182
- // Display props
183
- label,
184
- placeholder,
185
- description,
186
- // Selection props
187
- value,
188
- defaultValue,
189
- // State props
190
- isOpen,
191
- isDisabled = false,
192
- isRequired = false,
193
- disabledKeys,
194
- // Validation props
195
- validate,
196
- validationBehavior = "aria",
197
- errorMessage,
198
- // Loading state
199
- isLoading = false,
200
- emptyStateMessage,
201
- // Form integration
202
- name,
203
- // Size variant
204
- size = "default",
205
- // Event handlers
206
- onChange,
207
- onOpenChange,
208
- // Standard props
209
- className,
210
- children,
211
- ...props
212
- }, ref) => {
213
- const labelId = useId();
214
- const descriptionId = useId();
215
- const errorId = useId();
216
- const childCount = Children.count(children);
217
- if (childCount > 1e3) {
218
- console.warn(
219
- "Select has >1000 items. Consider using Autocomplete component for better performance."
220
- );
221
- }
222
- const isInvalid = Boolean(errorMessage);
223
- return /* @__PURE__ */ jsxs(
224
- Select$1,
225
- {
226
- value,
227
- defaultValue,
228
- onChange: (key) => {
229
- if (onChange) {
230
- onChange(key);
231
- }
232
- },
233
- placeholder,
234
- disabledKeys,
235
- isOpen,
236
- onOpenChange,
237
- isDisabled: isDisabled || isLoading,
238
- isRequired,
239
- name,
240
- validate,
241
- validationBehavior,
242
- isInvalid,
243
- className,
244
- ...props,
245
- children: [
246
- /* @__PURE__ */ jsxs(Label, { id: labelId, className: "text-sm font-medium text-[var(--content-foreground)]", children: [
247
- label,
248
- isRequired && /* @__PURE__ */ jsx("span", { className: "text-[var(--destructive)] ml-1", children: "*" })
249
- ] }),
250
- description && /* @__PURE__ */ jsx(Text, { id: descriptionId, slot: "description", className: "text-sm text-[var(--menu-muted)] mt-1", children: description }),
251
- /* @__PURE__ */ jsxs(
252
- Button,
253
- {
254
- ref,
255
- className: selectTriggerVariants({ size, isInvalid }),
256
- "aria-labelledby": labelId,
257
- "aria-describedby": description ? descriptionId : errorMessage ? errorId : void 0,
258
- "data-loading": isLoading,
259
- ...isRequired && { "aria-required": "true" },
260
- ...isLoading && { "aria-busy": "true" },
261
- ...(isDisabled || isLoading) && { "aria-disabled": "true" },
262
- children: [
263
- /* @__PURE__ */ jsx(SelectValue, { className: "flex-1 text-left truncate" }),
264
- isLoading ? /* @__PURE__ */ jsx(Loader2, { className: "h-4 w-4 animate-spin text-[var(--menu-muted)]", "aria-hidden": "true" }) : /* @__PURE__ */ jsx(ChevronDown, { className: "h-4 w-4 text-[var(--menu-muted)]", "aria-hidden": "true" })
265
- ]
266
- }
267
- ),
268
- /* @__PURE__ */ jsx(FieldError, { id: errorId, className: selectErrorVariants({ size }), children: ({ validationErrors }) => {
269
- const displayError = errorMessage || validationErrors.join(" ");
270
- return displayError ? /* @__PURE__ */ jsxs(Fragment, { children: [
271
- /* @__PURE__ */ jsx(AlertCircle, { className: "h-4 w-4", "aria-hidden": "true" }),
272
- displayError
273
- ] }) : null;
274
- } }),
275
- /* @__PURE__ */ jsx(Popover, { className: selectPopoverVariants({ size }), children: /* @__PURE__ */ jsxs(ListBox, { className: "outline-none", children: [
276
- isLoading && childCount > 0 && /* @__PURE__ */ jsx(Fragment, { children: Array.from({ length: 3 }).map((_, i) => /* @__PURE__ */ jsx(
277
- "div",
278
- {
279
- className: "h-11 px-4 py-2",
280
- children: /* @__PURE__ */ jsx("div", { className: "h-4 bg-[var(--accent-background)] rounded animate-pulse" })
281
- },
282
- `skeleton-${i}`
283
- )) }),
284
- !isLoading && /* @__PURE__ */ jsxs(Fragment, { children: [
285
- children,
286
- childCount === 0 && /* @__PURE__ */ jsx(
287
- ListBoxItem,
288
- {
289
- id: "__empty__",
290
- textValue: "empty",
291
- isDisabled: true,
292
- className: "py-6 text-center text-sm text-[var(--menu-muted)] cursor-default pointer-events-none",
293
- children: /* @__PURE__ */ jsx("span", { role: "status", children: emptyStateMessage || "No options available" })
294
- }
295
- )
296
- ] })
297
- ] }) })
298
- ]
299
- }
300
- );
301
- }
302
- );
303
- SelectRoot.displayName = "Select";
304
- var MultiSelectRoot = forwardRef(
305
- ({
306
- // Display props
307
- label,
308
- placeholder,
309
- description,
310
- // Selection props
311
- value,
312
- defaultValue,
313
- selectionMode: _selectionMode = "multiple",
314
- // State props
315
- isOpen,
316
- isDisabled = false,
317
- isRequired = false,
318
- disabledKeys,
319
- // Validation props
320
- validate,
321
- validationBehavior = "aria",
322
- errorMessage,
323
- // Loading state
324
- isLoading = false,
325
- emptyStateMessage,
326
- // Form integration
327
- name,
328
- // Size variant
329
- size = "default",
330
- // Event handlers
331
- onChange,
332
- onOpenChange,
333
- // Standard props
334
- className,
335
- children,
336
- ...props
337
- }, ref) => {
338
- const labelId = useId();
339
- const descriptionId = useId();
340
- const errorId = useId();
341
- const childCount = Children.count(children);
342
- if (childCount > 1e3) {
343
- console.warn(
344
- "Select has >1000 items. Consider using Autocomplete component for better performance."
345
- );
346
- }
347
- const isInvalid = Boolean(errorMessage);
348
- const valueToLabelMap = useMemo(() => {
349
- const map = /* @__PURE__ */ new Map();
350
- const processChildren = (nodes) => {
351
- Children.forEach(nodes, (child) => {
352
- if (isValidElement(child)) {
353
- const element = child;
354
- if (element.type === SelectItem || element.props?.value) {
355
- const itemValue = element.props.value;
356
- const itemChildren = element.props.children;
357
- if (itemValue && typeof itemChildren === "string") {
358
- map.set(itemValue, itemChildren);
359
- }
360
- }
361
- if (element.props?.children) {
362
- processChildren(element.props.children);
363
- }
364
- }
365
- });
366
- };
367
- processChildren(children);
368
- return map;
369
- }, [children]);
370
- const displayValue = useMemo(() => {
371
- if (!value || !Array.isArray(value) || value.length === 0) {
372
- return placeholder || "";
373
- }
374
- if (value.length <= 2) {
375
- const labels = value.map((v) => valueToLabelMap.get(v) || v);
376
- return labels.join(", ");
377
- }
378
- return `${value.length} items selected`;
379
- }, [value, valueToLabelMap, placeholder]);
380
- return /* @__PURE__ */ jsxs(
381
- Select$1,
382
- {
383
- value,
384
- defaultValue,
385
- onChange: (keys) => {
386
- if (onChange) {
387
- onChange(keys);
388
- }
389
- },
390
- selectionMode: "multiple",
391
- disabledKeys,
392
- isOpen,
393
- onOpenChange,
394
- isDisabled: isDisabled || isLoading,
395
- isRequired,
396
- name,
397
- validate,
398
- validationBehavior,
399
- isInvalid,
400
- className,
401
- ...props,
402
- children: [
403
- /* @__PURE__ */ jsxs(Label, { id: labelId, className: "text-sm font-medium text-[var(--content-foreground)]", children: [
404
- label,
405
- isRequired && /* @__PURE__ */ jsx("span", { className: "text-[var(--destructive)] ml-1", children: "*" })
406
- ] }),
407
- description && /* @__PURE__ */ jsx(Text, { id: descriptionId, slot: "description", className: "text-sm text-[var(--menu-muted)] mt-1", children: description }),
408
- /* @__PURE__ */ jsxs(
409
- Button,
410
- {
411
- ref,
412
- className: selectTriggerVariants({ size, isInvalid }),
413
- "aria-labelledby": labelId,
414
- "aria-describedby": description ? descriptionId : errorMessage ? errorId : void 0,
415
- "data-loading": isLoading,
416
- ...isRequired && { "aria-required": "true" },
417
- ...isLoading && { "aria-busy": "true" },
418
- ...(isDisabled || isLoading) && { "aria-disabled": "true" },
419
- children: [
420
- /* @__PURE__ */ jsx("span", { className: "flex-1 text-left truncate", children: displayValue }),
421
- isLoading ? /* @__PURE__ */ jsx(Loader2, { className: "h-4 w-4 animate-spin text-[var(--menu-muted)]", "aria-hidden": "true" }) : /* @__PURE__ */ jsx(ChevronDown, { className: "h-4 w-4 text-[var(--menu-muted)]", "aria-hidden": "true" })
422
- ]
423
- }
424
- ),
425
- /* @__PURE__ */ jsx(FieldError, { id: errorId, className: selectErrorVariants({ size }), children: ({ validationErrors }) => {
426
- const displayError = errorMessage || validationErrors.join(" ");
427
- return displayError ? /* @__PURE__ */ jsxs(Fragment, { children: [
428
- /* @__PURE__ */ jsx(AlertCircle, { className: "h-4 w-4", "aria-hidden": "true" }),
429
- displayError
430
- ] }) : null;
431
- } }),
432
- /* @__PURE__ */ jsx(Popover, { className: selectPopoverVariants({ size }), children: /* @__PURE__ */ jsxs(ListBox, { className: "outline-none", children: [
433
- isLoading && childCount > 0 && /* @__PURE__ */ jsx(Fragment, { children: Array.from({ length: 3 }).map((_, i) => /* @__PURE__ */ jsx("div", { className: "h-11 px-4 py-2", children: /* @__PURE__ */ jsx("div", { className: "h-4 bg-[var(--accent-background)] rounded animate-pulse" }) }, `skeleton-${i}`)) }),
434
- !isLoading && /* @__PURE__ */ jsxs(Fragment, { children: [
435
- children,
436
- childCount === 0 && /* @__PURE__ */ jsx(
437
- ListBoxItem,
438
- {
439
- id: "__empty__",
440
- textValue: "empty",
441
- isDisabled: true,
442
- className: "py-6 text-center text-sm text-[var(--menu-muted)] cursor-default pointer-events-none",
443
- children: /* @__PURE__ */ jsx("span", { role: "status", children: emptyStateMessage || "No options available" })
444
- }
445
- )
446
- ] })
447
- ] }) })
448
- ]
449
- }
450
- );
451
- }
452
- );
453
- MultiSelectRoot.displayName = "MultiSelect";
454
- function SelectItem({ children, textValue, value, isDisabled = false, className, ...props }) {
455
- if (!textValue && typeof children !== "string") {
456
- const message = "Select.Item with custom children requires textValue prop for accessibility";
457
- if (process.env.NODE_ENV === "development") {
458
- throw new Error(message);
459
- } else {
460
- console.warn(message);
461
- }
462
- }
463
- return /* @__PURE__ */ jsx(
464
- ListBoxItem,
465
- {
466
- id: value,
467
- textValue: textValue || (typeof children === "string" ? children : void 0),
468
- className: `${selectItemVariants({ size: "default" })} ${className || ""}`,
469
- isDisabled,
470
- ...props,
471
- children: ({ isSelected, selectionMode, isDisabled: itemDisabled }) => /* @__PURE__ */ jsxs(Fragment, { children: [
472
- selectionMode === "multiple" ? /* @__PURE__ */ jsx(
473
- CheckSquare,
474
- {
475
- className: `absolute left-2 h-4 w-4 ${isSelected ? "visible" : "invisible"}`,
476
- "aria-hidden": "true"
477
- }
478
- ) : isSelected && /* @__PURE__ */ jsx(Check, { className: "absolute left-2 h-4 w-4", "aria-hidden": "true" }),
479
- /* @__PURE__ */ jsx("span", { className: itemDisabled ? "text-[var(--menu-muted)]" : "", children })
480
- ] })
481
- }
482
- );
483
- }
484
- SelectItem.displayName = "SelectItem";
485
- function SelectSection({ children, className, ...props }) {
486
- return /* @__PURE__ */ jsx(ListBoxSection, { className: `border-t border-[var(--border)] first:border-t-0 ${className || ""}`, ...props, children });
487
- }
488
- SelectSection.displayName = "SelectSection";
489
- function SelectHeader({ children, className, ...props }) {
490
- return /* @__PURE__ */ jsx(Header, { className: `${selectSectionVariants({ size: "default" })} ${className || ""}`, ...props, children });
491
- }
492
- SelectHeader.displayName = "SelectHeader";
493
- var Select = Object.assign(SelectRoot, {
494
- Item: SelectItem,
495
- Section: SelectSection,
496
- Header: SelectHeader
497
- });
498
- var MultiSelect = Object.assign(MultiSelectRoot, {
499
- Item: SelectItem,
500
- Section: SelectSection,
501
- Header: SelectHeader
502
- });
503
- var SelectSizeSchema = z.enum(["sm", "default", "lg"]);
504
- var SelectionModeSchema = z.enum(["single", "multiple"]);
505
- var ValidationBehaviorSchema = z.enum(["native", "aria"]);
506
- var SelectPropsSchema = BaseComponentPropsSchema.extend({
507
- // Display props (US-1)
508
- label: z.string(),
509
- // Required for accessibility
510
- placeholder: z.string().optional(),
511
- description: z.string().optional(),
512
- // Selection props (US-1, US-6)
513
- value: z.union([z.string(), z.array(z.string())]).optional(),
514
- defaultValue: z.union([z.string(), z.array(z.string())]).optional(),
515
- selectionMode: SelectionModeSchema.optional().default("single"),
516
- // State props (US-1, US-5)
517
- isOpen: z.boolean().optional(),
518
- isDisabled: z.boolean().optional().default(false),
519
- isRequired: z.boolean().optional().default(false),
520
- disabledKeys: z.array(z.string()).optional(),
521
- // Validation props (US-4)
522
- validate: z.custom().optional(),
523
- validationBehavior: ValidationBehaviorSchema.optional().default("aria"),
524
- errorMessage: z.string().optional(),
525
- // Loading state (US-7)
526
- isLoading: z.boolean().optional().default(false),
527
- emptyStateMessage: z.string().optional(),
528
- // Form integration (US-10)
529
- name: z.string().optional(),
530
- // Size variant (US-9)
531
- size: SelectSizeSchema.optional().default("default"),
532
- // Event handlers (US-1)
533
- onChange: z.custom().optional(),
534
- onOpenChange: z.custom().optional(),
535
- // Children (Select.Item, Select.Section components)
536
- children: z.custom()
537
- });
538
- var SelectItemPropsSchema = BaseComponentPropsSchema.extend({
539
- // Item value (required)
540
- value: z.string(),
541
- // Text value for typeahead and accessibility (required for custom children)
542
- textValue: z.string().optional(),
543
- // Disabled state
544
- isDisabled: z.boolean().optional().default(false),
545
- // Item content
546
- children: z.custom(),
547
- // Optional className for custom styling
548
- className: z.string().optional()
549
- });
550
- var SelectSectionPropsSchema = BaseComponentPropsSchema.extend({
551
- // Section content (typically Select.Header + Select.Item components)
552
- children: z.custom(),
553
- // Optional className for custom styling
554
- className: z.string().optional()
555
- });
556
- var SelectHeaderPropsSchema = BaseComponentPropsSchema.extend({
557
- // Header text
558
- children: z.custom(),
559
- // Optional className for header styling
560
- className: z.string().optional()
561
- });
562
-
563
- export { MultiSelect, Select, SelectHeaderPropsSchema, SelectItemPropsSchema, SelectPropsSchema, SelectSectionPropsSchema };
564
- //# sourceMappingURL=chunk-6TYWWQHM.mjs.map
565
- //# sourceMappingURL=chunk-6TYWWQHM.mjs.map