@accelint/design-toolkit 5.2.0 → 7.0.0

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 (598) hide show
  1. package/README.md +2 -0
  2. package/catalog-info.yaml +44 -0
  3. package/dist/components/accordion/context.d.ts +10 -0
  4. package/dist/components/accordion/context.js +4 -0
  5. package/dist/components/accordion/context.js.map +1 -0
  6. package/dist/components/accordion/group.d.ts +11 -0
  7. package/dist/components/accordion/group.js +4 -0
  8. package/dist/components/accordion/group.js.map +1 -0
  9. package/dist/components/accordion/header.d.ts +11 -0
  10. package/dist/components/accordion/header.js +4 -0
  11. package/dist/components/accordion/header.js.map +1 -0
  12. package/dist/components/accordion/index.d.ts +22 -46
  13. package/dist/components/accordion/index.js +1 -3
  14. package/dist/components/accordion/index.js.map +1 -1
  15. package/dist/components/accordion/panel.d.ts +11 -0
  16. package/dist/components/accordion/panel.js +4 -0
  17. package/dist/components/accordion/panel.js.map +1 -0
  18. package/dist/components/accordion/styles.d.ts +3 -3
  19. package/dist/components/accordion/styles.js +1 -1
  20. package/dist/components/accordion/styles.js.map +1 -1
  21. package/dist/components/accordion/trigger.d.ts +11 -0
  22. package/dist/components/accordion/trigger.js +4 -0
  23. package/dist/components/accordion/trigger.js.map +1 -0
  24. package/dist/components/accordion/types.d.ts +1 -1
  25. package/dist/components/action-bar/index.d.ts +11 -3
  26. package/dist/components/action-bar/index.js +1 -1
  27. package/dist/components/action-bar/index.js.map +1 -1
  28. package/dist/components/avatar/context.d.ts +14 -0
  29. package/dist/components/avatar/context.js +4 -0
  30. package/dist/components/avatar/context.js.map +1 -0
  31. package/dist/components/avatar/index.d.ts +2 -13
  32. package/dist/components/avatar/index.js +1 -1
  33. package/dist/components/avatar/index.js.map +1 -1
  34. package/dist/components/badge/context.d.ts +13 -0
  35. package/dist/components/badge/context.js +4 -0
  36. package/dist/components/badge/context.js.map +1 -0
  37. package/dist/components/badge/index.d.ts +2 -13
  38. package/dist/components/badge/index.js +1 -3
  39. package/dist/components/badge/index.js.map +1 -1
  40. package/dist/components/breadcrumbs/index.d.ts +12 -9
  41. package/dist/components/breadcrumbs/index.js +1 -1
  42. package/dist/components/breadcrumbs/index.js.map +1 -1
  43. package/dist/components/breadcrumbs/item.d.ts +7 -0
  44. package/dist/components/breadcrumbs/item.js +4 -0
  45. package/dist/components/breadcrumbs/item.js.map +1 -0
  46. package/dist/components/button/context.d.ts +17 -0
  47. package/dist/components/button/context.js +4 -0
  48. package/dist/components/button/context.js.map +1 -0
  49. package/dist/components/button/index.d.ts +5 -104
  50. package/dist/components/button/index.js +1 -3
  51. package/dist/components/button/index.js.map +1 -1
  52. package/dist/components/button/link.d.ts +46 -0
  53. package/dist/components/button/link.js +4 -0
  54. package/dist/components/button/link.js.map +1 -0
  55. package/dist/components/button/styles.js +1 -1
  56. package/dist/components/button/styles.js.map +1 -1
  57. package/dist/components/button/toggle.d.ts +48 -0
  58. package/dist/components/button/toggle.js +4 -0
  59. package/dist/components/button/toggle.js.map +1 -0
  60. package/dist/components/checkbox/context.d.ts +10 -0
  61. package/dist/components/checkbox/context.js +4 -0
  62. package/dist/components/checkbox/context.js.map +1 -0
  63. package/dist/components/checkbox/group.d.ts +10 -0
  64. package/dist/components/checkbox/group.js +4 -0
  65. package/dist/components/checkbox/group.js.map +1 -0
  66. package/dist/components/checkbox/index.d.ts +6 -16
  67. package/dist/components/checkbox/index.js +1 -1
  68. package/dist/components/checkbox/index.js.map +1 -1
  69. package/dist/components/checkbox/styles.js +1 -1
  70. package/dist/components/checkbox/styles.js.map +1 -1
  71. package/dist/components/chip/context.d.ts +13 -0
  72. package/dist/components/chip/context.js +4 -0
  73. package/dist/components/chip/context.js.map +1 -0
  74. package/dist/components/chip/deletable.d.ts +11 -0
  75. package/dist/components/chip/deletable.js +4 -0
  76. package/dist/components/chip/deletable.js.map +1 -0
  77. package/dist/components/chip/index.d.ts +14 -39
  78. package/dist/components/chip/index.js +1 -3
  79. package/dist/components/chip/index.js.map +1 -1
  80. package/dist/components/chip/list.d.ts +12 -0
  81. package/dist/components/chip/list.js +4 -0
  82. package/dist/components/chip/list.js.map +1 -0
  83. package/dist/components/chip/selectable.d.ts +11 -0
  84. package/dist/components/chip/selectable.js +2 -0
  85. package/dist/components/chip/selectable.js.map +1 -0
  86. package/dist/components/chip/styles.js +1 -1
  87. package/dist/components/chip/styles.js.map +1 -1
  88. package/dist/components/chip/types.d.ts +2 -2
  89. package/dist/components/classification-badge/context.d.ts +12 -0
  90. package/dist/components/classification-badge/context.js +4 -0
  91. package/dist/components/classification-badge/context.js.map +1 -0
  92. package/dist/components/classification-badge/index.d.ts +2 -13
  93. package/dist/components/classification-badge/index.js +1 -3
  94. package/dist/components/classification-badge/index.js.map +1 -1
  95. package/dist/components/classification-banner/context.d.ts +12 -0
  96. package/dist/components/classification-banner/context.js +4 -0
  97. package/dist/components/classification-banner/context.js.map +1 -0
  98. package/dist/components/classification-banner/index.d.ts +2 -13
  99. package/dist/components/classification-banner/index.js +1 -3
  100. package/dist/components/classification-banner/index.js.map +1 -1
  101. package/dist/components/clock/index.d.ts +36 -0
  102. package/dist/components/clock/index.js +4 -0
  103. package/dist/components/clock/index.js.map +1 -0
  104. package/dist/components/clock/types.d.ts +7 -0
  105. package/dist/components/clock/types.js +2 -0
  106. package/dist/components/clock/types.js.map +1 -0
  107. package/dist/components/color-picker/index.d.ts +0 -3
  108. package/dist/components/color-picker/index.js +1 -1
  109. package/dist/components/color-picker/index.js.map +1 -1
  110. package/dist/components/color-picker/styles.js +1 -1
  111. package/dist/components/color-picker/styles.js.map +1 -1
  112. package/dist/components/combobox-field/context.d.ts +16 -0
  113. package/dist/components/combobox-field/context.js +4 -0
  114. package/dist/components/combobox-field/context.js.map +1 -0
  115. package/dist/components/combobox-field/index.d.ts +14 -7
  116. package/dist/components/combobox-field/index.js +1 -1
  117. package/dist/components/combobox-field/index.js.map +1 -1
  118. package/dist/components/combobox-field/styles.d.ts +3 -3
  119. package/dist/components/combobox-field/styles.js +1 -1
  120. package/dist/components/combobox-field/styles.js.map +1 -1
  121. package/dist/components/date-field/index.js +1 -1
  122. package/dist/components/date-field/index.js.map +1 -1
  123. package/dist/components/details-list/context.d.ts +12 -0
  124. package/dist/components/details-list/context.js +4 -0
  125. package/dist/components/details-list/context.js.map +1 -0
  126. package/dist/components/details-list/index.d.ts +15 -35
  127. package/dist/components/details-list/index.js +1 -3
  128. package/dist/components/details-list/index.js.map +1 -1
  129. package/dist/components/details-list/label.d.ts +10 -0
  130. package/dist/components/details-list/label.js +4 -0
  131. package/dist/components/details-list/label.js.map +1 -0
  132. package/dist/components/details-list/value.d.ts +10 -0
  133. package/dist/components/details-list/value.js +4 -0
  134. package/dist/components/details-list/value.js.map +1 -0
  135. package/dist/components/dialog/content.d.ts +6 -0
  136. package/dist/components/dialog/content.js +2 -0
  137. package/dist/components/dialog/content.js.map +1 -0
  138. package/dist/components/dialog/context.d.ts +7 -0
  139. package/dist/components/dialog/context.js +4 -0
  140. package/dist/components/dialog/context.js.map +1 -0
  141. package/dist/components/dialog/footer.d.ts +6 -0
  142. package/dist/components/dialog/footer.js +4 -0
  143. package/dist/components/dialog/footer.js.map +1 -0
  144. package/dist/components/dialog/index.d.ts +9 -30
  145. package/dist/components/dialog/index.js +1 -1
  146. package/dist/components/dialog/index.js.map +1 -1
  147. package/dist/components/dialog/styles.d.ts +3 -3
  148. package/dist/components/dialog/title.d.ts +6 -0
  149. package/dist/components/dialog/title.js +4 -0
  150. package/dist/components/dialog/title.js.map +1 -0
  151. package/dist/components/dialog/trigger.d.ts +1 -0
  152. package/dist/components/dialog/trigger.js +2 -0
  153. package/dist/components/dialog/trigger.js.map +1 -0
  154. package/dist/components/dialog/types.d.ts +3 -2
  155. package/dist/components/divider/context.d.ts +10 -0
  156. package/dist/components/divider/context.js +4 -0
  157. package/dist/components/divider/context.js.map +1 -0
  158. package/dist/components/divider/index.d.ts +2 -13
  159. package/dist/components/divider/index.js +1 -3
  160. package/dist/components/divider/index.js.map +1 -1
  161. package/dist/components/drawer/back.d.ts +5 -0
  162. package/dist/components/drawer/back.js +4 -0
  163. package/dist/components/drawer/back.js.map +1 -0
  164. package/dist/components/drawer/close.d.ts +5 -0
  165. package/dist/components/drawer/close.js +2 -0
  166. package/dist/components/drawer/close.js.map +1 -0
  167. package/dist/components/drawer/content.d.ts +6 -0
  168. package/dist/components/drawer/content.js +4 -0
  169. package/dist/components/drawer/content.js.map +1 -0
  170. package/dist/components/drawer/context.d.ts +38 -0
  171. package/dist/components/drawer/context.js +4 -0
  172. package/dist/components/drawer/context.js.map +1 -0
  173. package/dist/components/drawer/footer.d.ts +6 -0
  174. package/dist/components/drawer/footer.js +4 -0
  175. package/dist/components/drawer/footer.js.map +1 -0
  176. package/dist/components/drawer/header-title.d.ts +25 -0
  177. package/dist/components/drawer/header-title.js +2 -0
  178. package/dist/components/drawer/header-title.js.map +1 -0
  179. package/dist/components/drawer/header.d.ts +6 -0
  180. package/dist/components/drawer/header.js +4 -0
  181. package/dist/components/drawer/header.js.map +1 -0
  182. package/dist/components/drawer/index.d.ts +30 -88
  183. package/dist/components/drawer/index.js +1 -1
  184. package/dist/components/drawer/index.js.map +1 -1
  185. package/dist/components/drawer/layout-main.d.ts +6 -0
  186. package/dist/components/drawer/layout-main.js +2 -0
  187. package/dist/components/drawer/layout-main.js.map +1 -0
  188. package/dist/components/drawer/layout.d.ts +20 -0
  189. package/dist/components/drawer/layout.js +4 -0
  190. package/dist/components/drawer/layout.js.map +1 -0
  191. package/dist/components/drawer/menu-item.d.ts +20 -0
  192. package/dist/components/drawer/menu-item.js +2 -0
  193. package/dist/components/drawer/menu-item.js.map +1 -0
  194. package/dist/components/drawer/menu.d.ts +20 -0
  195. package/dist/components/drawer/menu.js +4 -0
  196. package/dist/components/drawer/menu.js.map +1 -0
  197. package/dist/components/drawer/panel.d.ts +6 -0
  198. package/dist/components/drawer/panel.js +2 -0
  199. package/dist/components/drawer/panel.js.map +1 -0
  200. package/dist/components/drawer/styles.d.ts +9 -9
  201. package/dist/components/drawer/trigger.d.ts +20 -0
  202. package/dist/components/drawer/trigger.js +4 -0
  203. package/dist/components/drawer/trigger.js.map +1 -0
  204. package/dist/components/drawer/types.d.ts +3 -3
  205. package/dist/components/drawer/view.d.ts +11 -0
  206. package/dist/components/drawer/view.js +4 -0
  207. package/dist/components/drawer/view.js.map +1 -0
  208. package/dist/components/hero/context.d.ts +7 -0
  209. package/dist/components/hero/context.js +2 -0
  210. package/dist/components/hero/context.js.map +1 -0
  211. package/dist/components/hero/index.d.ts +8 -16
  212. package/dist/components/hero/index.js +1 -1
  213. package/dist/components/hero/index.js.map +1 -1
  214. package/dist/components/hero/subtitle.d.ts +6 -0
  215. package/dist/components/hero/subtitle.js +4 -0
  216. package/dist/components/hero/subtitle.js.map +1 -0
  217. package/dist/components/hero/title.d.ts +6 -0
  218. package/dist/components/hero/title.js +2 -0
  219. package/dist/components/hero/title.js.map +1 -0
  220. package/dist/components/hotkey/context.d.ts +12 -0
  221. package/dist/components/hotkey/context.js +4 -0
  222. package/dist/components/hotkey/context.js.map +1 -0
  223. package/dist/components/hotkey/hotkey-set.d.ts +9 -0
  224. package/dist/components/hotkey/hotkey-set.js +2 -0
  225. package/dist/components/hotkey/hotkey-set.js.map +1 -0
  226. package/dist/components/hotkey/index.d.ts +7 -23
  227. package/dist/components/hotkey/index.js +1 -1
  228. package/dist/components/hotkey/index.js.map +1 -1
  229. package/dist/components/icon/context.d.ts +10 -0
  230. package/dist/components/icon/context.js +4 -0
  231. package/dist/components/icon/context.js.map +1 -0
  232. package/dist/components/icon/index.d.ts +2 -13
  233. package/dist/components/icon/index.js +1 -3
  234. package/dist/components/icon/index.js.map +1 -1
  235. package/dist/components/input/context.d.ts +13 -0
  236. package/dist/components/input/context.js +4 -0
  237. package/dist/components/input/context.js.map +1 -0
  238. package/dist/components/input/index.d.ts +3 -7
  239. package/dist/components/input/index.js +1 -1
  240. package/dist/components/input/index.js.map +1 -1
  241. package/dist/components/label/context.d.ts +10 -0
  242. package/dist/components/label/context.js +4 -0
  243. package/dist/components/label/context.js.map +1 -0
  244. package/dist/components/label/index.d.ts +3 -13
  245. package/dist/components/label/index.js +1 -3
  246. package/dist/components/label/index.js.map +1 -1
  247. package/dist/components/lines/index.d.ts +9 -0
  248. package/dist/components/lines/index.js.map +1 -1
  249. package/dist/components/link/context.d.ts +9 -0
  250. package/dist/components/link/context.js +4 -0
  251. package/dist/components/link/context.js.map +1 -0
  252. package/dist/components/link/index.d.ts +9 -9
  253. package/dist/components/link/index.js +1 -3
  254. package/dist/components/link/index.js.map +1 -1
  255. package/dist/components/link/styles.js +1 -1
  256. package/dist/components/link/styles.js.map +1 -1
  257. package/dist/components/menu/context.d.ts +10 -0
  258. package/dist/components/menu/context.js +4 -0
  259. package/dist/components/menu/context.js.map +1 -0
  260. package/dist/components/menu/index.d.ts +31 -63
  261. package/dist/components/menu/index.js +1 -1
  262. package/dist/components/menu/index.js.map +1 -1
  263. package/dist/components/menu/item-description.d.ts +6 -0
  264. package/dist/components/menu/item-description.js +2 -0
  265. package/dist/components/menu/item-description.js.map +1 -0
  266. package/dist/components/menu/item-label.d.ts +6 -0
  267. package/dist/components/menu/item-label.js +4 -0
  268. package/dist/components/menu/item-label.js.map +1 -0
  269. package/dist/components/menu/item.d.ts +11 -0
  270. package/dist/components/menu/item.js +4 -0
  271. package/dist/components/menu/item.js.map +1 -0
  272. package/dist/components/menu/section.d.ts +11 -0
  273. package/dist/components/menu/section.js +2 -0
  274. package/dist/components/menu/section.js.map +1 -0
  275. package/dist/components/menu/separator.d.ts +6 -0
  276. package/dist/components/menu/separator.js +4 -0
  277. package/dist/components/menu/separator.js.map +1 -0
  278. package/dist/components/menu/styles.js +1 -1
  279. package/dist/components/menu/styles.js.map +1 -1
  280. package/dist/components/menu/submenu.d.ts +6 -0
  281. package/dist/components/menu/submenu.js +4 -0
  282. package/dist/components/menu/submenu.js.map +1 -0
  283. package/dist/components/menu/trigger.d.ts +1 -0
  284. package/dist/components/menu/trigger.js +2 -0
  285. package/dist/components/menu/trigger.js.map +1 -0
  286. package/dist/components/menu/types.d.ts +1 -1
  287. package/dist/components/notice/events.d.ts +10 -0
  288. package/dist/components/notice/events.js +2 -0
  289. package/dist/components/notice/events.js.map +1 -0
  290. package/dist/components/notice/index.d.ts +16 -0
  291. package/dist/components/notice/index.js +4 -0
  292. package/dist/components/notice/index.js.map +1 -0
  293. package/dist/components/notice/list.d.ts +16 -0
  294. package/dist/components/notice/list.js +4 -0
  295. package/dist/components/notice/list.js.map +1 -0
  296. package/dist/components/notice/notice-icon.d.ts +16 -0
  297. package/dist/components/notice/notice-icon.js +2 -0
  298. package/dist/components/notice/notice-icon.js.map +1 -0
  299. package/dist/components/notice/styles.d.ts +60 -0
  300. package/dist/components/notice/styles.js +2 -0
  301. package/dist/components/notice/styles.js.map +1 -0
  302. package/dist/components/notice/types.d.ts +75 -0
  303. package/dist/components/notice/types.js +2 -0
  304. package/dist/components/notice/types.js.map +1 -0
  305. package/dist/components/notice/utils.d.ts +3 -0
  306. package/dist/components/notice/utils.js +4 -0
  307. package/dist/components/notice/utils.js.map +1 -0
  308. package/dist/components/options/context.d.ts +8 -0
  309. package/dist/components/options/context.js +2 -0
  310. package/dist/components/options/context.js.map +1 -0
  311. package/dist/components/options/index.d.ts +22 -51
  312. package/dist/components/options/index.js +1 -1
  313. package/dist/components/options/index.js.map +1 -1
  314. package/dist/components/options/item-content.d.ts +9 -0
  315. package/dist/components/options/item-content.js +2 -0
  316. package/dist/components/options/item-content.js.map +1 -0
  317. package/dist/components/options/item-description.d.ts +9 -0
  318. package/dist/components/options/item-description.js +4 -0
  319. package/dist/components/options/item-description.js.map +1 -0
  320. package/dist/components/options/item-label.d.ts +9 -0
  321. package/dist/components/options/item-label.js +2 -0
  322. package/dist/components/options/item-label.js.map +1 -0
  323. package/dist/components/options/item.d.ts +9 -0
  324. package/dist/components/options/item.js +4 -0
  325. package/dist/components/options/item.js.map +1 -0
  326. package/dist/components/options/section.d.ts +9 -0
  327. package/dist/components/options/section.js +2 -0
  328. package/dist/components/options/section.js.map +1 -0
  329. package/dist/components/options/styles.d.ts +3 -3
  330. package/dist/components/options/styles.js +1 -1
  331. package/dist/components/options/styles.js.map +1 -1
  332. package/dist/components/options/types.d.ts +2 -2
  333. package/dist/components/popover/body.d.ts +8 -0
  334. package/dist/components/popover/body.js +4 -0
  335. package/dist/components/popover/body.js.map +1 -0
  336. package/dist/components/popover/content.d.ts +8 -0
  337. package/dist/components/popover/content.js +2 -0
  338. package/dist/components/popover/content.js.map +1 -0
  339. package/dist/components/popover/footer.d.ts +9 -0
  340. package/dist/components/popover/footer.js +4 -0
  341. package/dist/components/popover/footer.js.map +1 -0
  342. package/dist/components/popover/index.d.ts +16 -39
  343. package/dist/components/popover/index.js +1 -3
  344. package/dist/components/popover/index.js.map +1 -1
  345. package/dist/components/popover/title.d.ts +8 -0
  346. package/dist/components/popover/title.js +4 -0
  347. package/dist/components/popover/title.js.map +1 -0
  348. package/dist/components/popover/trigger.d.ts +8 -0
  349. package/dist/components/popover/trigger.js +2 -0
  350. package/dist/components/popover/trigger.js.map +1 -0
  351. package/dist/components/popover/types.d.ts +1 -1
  352. package/dist/components/query-builder/action-element.js +1 -1
  353. package/dist/components/query-builder/action-element.js.map +1 -1
  354. package/dist/components/query-builder/actions.d.ts +8 -0
  355. package/dist/components/query-builder/actions.js +2 -0
  356. package/dist/components/query-builder/actions.js.map +1 -0
  357. package/dist/components/query-builder/combinator-selector.d.ts +6 -0
  358. package/dist/components/query-builder/combinator-selector.js +4 -0
  359. package/dist/components/query-builder/combinator-selector.js.map +1 -0
  360. package/dist/components/query-builder/index.d.ts +1 -21
  361. package/dist/components/query-builder/index.js +3 -1
  362. package/dist/components/query-builder/index.js.map +1 -1
  363. package/dist/components/query-builder/{group.js → rule-group.js} +2 -2
  364. package/dist/components/query-builder/rule-group.js.map +1 -0
  365. package/dist/components/query-builder/rule.js +1 -3
  366. package/dist/components/query-builder/rule.js.map +1 -1
  367. package/dist/components/query-builder/styles.d.ts +152 -0
  368. package/dist/components/query-builder/styles.js +2 -0
  369. package/dist/components/query-builder/styles.js.map +1 -0
  370. package/dist/components/query-builder/utils.d.ts +1 -10
  371. package/dist/components/query-builder/utils.js +1 -1
  372. package/dist/components/query-builder/utils.js.map +1 -1
  373. package/dist/components/query-builder/value-editor.js +1 -1
  374. package/dist/components/query-builder/value-editor.js.map +1 -1
  375. package/dist/components/query-builder/value-selector.js +1 -1
  376. package/dist/components/query-builder/value-selector.js.map +1 -1
  377. package/dist/components/radio/context.d.ts +13 -0
  378. package/dist/components/radio/context.js +4 -0
  379. package/dist/components/radio/context.js.map +1 -0
  380. package/dist/components/radio/group.d.ts +15 -0
  381. package/dist/components/radio/group.js +4 -0
  382. package/dist/components/radio/group.js.map +1 -0
  383. package/dist/components/radio/index.d.ts +10 -19
  384. package/dist/components/radio/index.js +1 -3
  385. package/dist/components/radio/index.js.map +1 -1
  386. package/dist/components/radio/styles.js +1 -1
  387. package/dist/components/radio/styles.js.map +1 -1
  388. package/dist/components/radio/types.d.ts +1 -1
  389. package/dist/components/search-field/context.d.ts +26 -0
  390. package/dist/components/search-field/context.js +4 -0
  391. package/dist/components/search-field/context.js.map +1 -0
  392. package/dist/components/search-field/index.d.ts +4 -20
  393. package/dist/components/search-field/index.js +1 -1
  394. package/dist/components/search-field/index.js.map +1 -1
  395. package/dist/components/select-field/context.d.ts +15 -0
  396. package/dist/components/select-field/context.js +4 -0
  397. package/dist/components/select-field/context.js.map +1 -0
  398. package/dist/components/select-field/index.d.ts +12 -21
  399. package/dist/components/select-field/index.js +1 -1
  400. package/dist/components/select-field/index.js.map +1 -1
  401. package/dist/components/select-field/styles.d.ts +9 -3
  402. package/dist/components/select-field/styles.js +1 -1
  403. package/dist/components/select-field/styles.js.map +1 -1
  404. package/dist/components/select-field/types.d.ts +2 -2
  405. package/dist/components/sidenav/avatar.d.ts +16 -0
  406. package/dist/components/sidenav/avatar.js +4 -0
  407. package/dist/components/sidenav/avatar.js.map +1 -0
  408. package/dist/components/sidenav/content.d.ts +16 -0
  409. package/dist/components/sidenav/content.js +2 -0
  410. package/dist/components/sidenav/content.js.map +1 -0
  411. package/dist/components/sidenav/context.d.ts +10 -0
  412. package/dist/components/sidenav/context.js +4 -0
  413. package/dist/components/sidenav/context.js.map +1 -0
  414. package/dist/components/sidenav/footer.d.ts +16 -0
  415. package/dist/components/sidenav/footer.js +4 -0
  416. package/dist/components/sidenav/footer.js.map +1 -0
  417. package/dist/components/sidenav/header.d.ts +16 -0
  418. package/dist/components/sidenav/header.js +4 -0
  419. package/dist/components/sidenav/header.js.map +1 -0
  420. package/dist/components/sidenav/index.d.ts +57 -49
  421. package/dist/components/sidenav/index.js +1 -3
  422. package/dist/components/sidenav/index.js.map +1 -1
  423. package/dist/components/sidenav/item.d.ts +16 -0
  424. package/dist/components/sidenav/item.js +4 -0
  425. package/dist/components/sidenav/item.js.map +1 -0
  426. package/dist/components/sidenav/link.d.ts +16 -0
  427. package/dist/components/sidenav/link.js +4 -0
  428. package/dist/components/sidenav/link.js.map +1 -0
  429. package/dist/components/sidenav/menu-item.d.ts +16 -0
  430. package/dist/components/sidenav/menu-item.js +2 -0
  431. package/dist/components/sidenav/menu-item.js.map +1 -0
  432. package/dist/components/sidenav/menu.d.ts +16 -0
  433. package/dist/components/sidenav/menu.js +4 -0
  434. package/dist/components/sidenav/menu.js.map +1 -0
  435. package/dist/components/sidenav/styles.d.ts +9 -9
  436. package/dist/components/sidenav/trigger.d.ts +16 -0
  437. package/dist/components/sidenav/trigger.js +4 -0
  438. package/dist/components/sidenav/trigger.js.map +1 -0
  439. package/dist/components/sidenav/types.d.ts +1 -1
  440. package/dist/components/skeleton/index.d.ts +0 -3
  441. package/dist/components/skeleton/index.js +1 -1
  442. package/dist/components/skeleton/index.js.map +1 -1
  443. package/dist/components/slider/index.d.ts +1 -1
  444. package/dist/components/slider/index.js +1 -1
  445. package/dist/components/slider/index.js.map +1 -1
  446. package/dist/components/slider/styles.d.ts +3 -3
  447. package/dist/components/slider/styles.js +1 -1
  448. package/dist/components/slider/styles.js.map +1 -1
  449. package/dist/components/switch/context.d.ts +20 -0
  450. package/dist/components/switch/context.js +4 -0
  451. package/dist/components/switch/context.js.map +1 -0
  452. package/dist/components/switch/index.d.ts +3 -13
  453. package/dist/components/switch/index.js +1 -1
  454. package/dist/components/switch/index.js.map +1 -1
  455. package/dist/components/switch/styles.js +1 -1
  456. package/dist/components/switch/styles.js.map +1 -1
  457. package/dist/components/table/body.js +2 -0
  458. package/dist/components/table/body.js.map +1 -0
  459. package/dist/components/table/cell.js +2 -0
  460. package/dist/components/table/cell.js.map +1 -0
  461. package/dist/components/table/constants/table.d.ts +17 -0
  462. package/dist/components/table/constants/table.js +2 -0
  463. package/dist/components/table/constants/table.js.map +1 -0
  464. package/dist/components/table/context.js +1 -1
  465. package/dist/components/table/context.js.map +1 -1
  466. package/dist/components/table/{table-header-cell.d.ts → header-cell.d.ts} +2 -2
  467. package/dist/components/table/header-cell.js +2 -0
  468. package/dist/components/table/header-cell.js.map +1 -0
  469. package/dist/components/table/header.js +2 -0
  470. package/dist/components/table/header.js.map +1 -0
  471. package/dist/components/table/index.d.ts +10 -14
  472. package/dist/components/table/index.js +1 -1
  473. package/dist/components/table/index.js.map +1 -1
  474. package/dist/components/table/row.js +2 -0
  475. package/dist/components/table/row.js.map +1 -0
  476. package/dist/components/table/types.d.ts +25 -2
  477. package/dist/components/tabs/context.d.ts +20 -0
  478. package/dist/components/tabs/context.js +4 -0
  479. package/dist/components/tabs/context.js.map +1 -0
  480. package/dist/components/tabs/index.d.ts +25 -51
  481. package/dist/components/tabs/index.js +1 -3
  482. package/dist/components/tabs/index.js.map +1 -1
  483. package/dist/components/tabs/list.d.ts +11 -0
  484. package/dist/components/tabs/list.js +4 -0
  485. package/dist/components/tabs/list.js.map +1 -0
  486. package/dist/components/tabs/panel.d.ts +11 -0
  487. package/dist/components/tabs/panel.js +2 -0
  488. package/dist/components/tabs/panel.js.map +1 -0
  489. package/dist/components/tabs/styles.js +1 -1
  490. package/dist/components/tabs/styles.js.map +1 -1
  491. package/dist/components/tabs/tab.d.ts +11 -0
  492. package/dist/components/tabs/tab.js +4 -0
  493. package/dist/components/tabs/tab.js.map +1 -0
  494. package/dist/components/text-area-field/context.d.ts +20 -0
  495. package/dist/components/text-area-field/context.js +4 -0
  496. package/dist/components/text-area-field/context.js.map +1 -0
  497. package/dist/components/text-area-field/index.d.ts +3 -13
  498. package/dist/components/text-area-field/index.js +1 -1
  499. package/dist/components/text-area-field/index.js.map +1 -1
  500. package/dist/components/text-field/context.d.ts +17 -0
  501. package/dist/components/text-field/context.js +4 -0
  502. package/dist/components/text-field/context.js.map +1 -0
  503. package/dist/components/text-field/index.d.ts +4 -13
  504. package/dist/components/text-field/index.js +1 -1
  505. package/dist/components/text-field/index.js.map +1 -1
  506. package/dist/components/time-field/index.d.ts +9 -0
  507. package/dist/components/time-field/index.js +1 -1
  508. package/dist/components/time-field/index.js.map +1 -1
  509. package/dist/components/tooltip/context.d.ts +7 -0
  510. package/dist/components/tooltip/context.js +4 -0
  511. package/dist/components/tooltip/context.js.map +1 -0
  512. package/dist/components/tooltip/index.d.ts +22 -42
  513. package/dist/components/tooltip/index.js +1 -1
  514. package/dist/components/tooltip/index.js.map +1 -1
  515. package/dist/components/tooltip/trigger.d.ts +8 -0
  516. package/dist/components/tooltip/trigger.js +4 -0
  517. package/dist/components/tooltip/trigger.js.map +1 -0
  518. package/dist/components/tooltip/types.d.ts +5 -6
  519. package/dist/components/tree/context.d.ts +18 -0
  520. package/dist/components/tree/context.js +4 -0
  521. package/dist/components/tree/context.js.map +1 -0
  522. package/dist/components/tree/index.d.ts +25 -43
  523. package/dist/components/tree/index.js +1 -1
  524. package/dist/components/tree/index.js.map +1 -1
  525. package/dist/components/tree/item-actions.d.ts +13 -0
  526. package/dist/components/tree/item-actions.js +2 -0
  527. package/dist/components/tree/item-actions.js.map +1 -0
  528. package/dist/components/tree/item-content.d.ts +17 -0
  529. package/dist/components/tree/item-content.js +2 -0
  530. package/dist/components/tree/item-content.js.map +1 -0
  531. package/dist/components/tree/item-description.d.ts +11 -0
  532. package/dist/components/tree/item-description.js +2 -0
  533. package/dist/components/tree/item-description.js.map +1 -0
  534. package/dist/components/tree/item-label.d.ts +11 -0
  535. package/dist/components/tree/item-label.js +2 -0
  536. package/dist/components/tree/item-label.js.map +1 -0
  537. package/dist/components/tree/item-prefix-icon.d.ts +12 -0
  538. package/dist/components/tree/item-prefix-icon.js +2 -0
  539. package/dist/components/tree/item-prefix-icon.js.map +1 -0
  540. package/dist/components/tree/item.d.ts +17 -0
  541. package/dist/components/tree/item.js +4 -0
  542. package/dist/components/tree/item.js.map +1 -0
  543. package/dist/components/tree/lines.d.ts +8 -0
  544. package/dist/components/tree/lines.js +2 -0
  545. package/dist/components/tree/lines.js.map +1 -0
  546. package/dist/components/tree/styles.js +1 -1
  547. package/dist/components/tree/styles.js.map +1 -1
  548. package/dist/components/tree/types.d.ts +1 -1
  549. package/dist/components/view-stack/context.d.ts +31 -0
  550. package/dist/components/view-stack/context.js +4 -0
  551. package/dist/components/view-stack/context.js.map +1 -0
  552. package/dist/components/view-stack/index.d.ts +38 -24
  553. package/dist/components/view-stack/index.js +1 -1
  554. package/dist/components/view-stack/index.js.map +1 -1
  555. package/dist/components/view-stack/trigger.d.ts +16 -0
  556. package/dist/components/view-stack/trigger.js +2 -0
  557. package/dist/components/view-stack/trigger.js.map +1 -0
  558. package/dist/components/view-stack/view.d.ts +16 -0
  559. package/dist/components/view-stack/view.js +4 -0
  560. package/dist/components/view-stack/view.js.map +1 -0
  561. package/dist/icons/catalog.d.ts +14 -0
  562. package/dist/icons/catalog.js +1 -1
  563. package/dist/icons/catalog.js.map +1 -1
  564. package/dist/index.css +5 -52
  565. package/dist/index.d.ts +152 -46
  566. package/dist/index.js +1 -1
  567. package/dist/metafile-esm.json +1 -1
  568. package/dist/providers/portal.d.ts +9 -0
  569. package/dist/providers/portal.js +2 -0
  570. package/dist/providers/portal.js.map +1 -0
  571. package/dist/providers/theme-provider.d.ts +6 -6
  572. package/dist/providers/theme-provider.js +1 -1
  573. package/dist/providers/theme-provider.js.map +1 -1
  574. package/dist/styles.css +1306 -340
  575. package/dist/tokens/themes.css +1 -1
  576. package/dist/tokens/themes.d.ts +1 -2
  577. package/dist/tokens/tokens.js +1 -1
  578. package/dist/tokens/tokens.js.map +1 -1
  579. package/package.json +109 -90
  580. package/dist/components/query-builder/group.js.map +0 -1
  581. package/dist/components/table/table-body.js +0 -2
  582. package/dist/components/table/table-body.js.map +0 -1
  583. package/dist/components/table/table-cell.js +0 -2
  584. package/dist/components/table/table-cell.js.map +0 -1
  585. package/dist/components/table/table-header-cell.js +0 -2
  586. package/dist/components/table/table-header-cell.js.map +0 -1
  587. package/dist/components/table/table-header.js +0 -2
  588. package/dist/components/table/table-header.js.map +0 -1
  589. package/dist/components/table/table-row.js +0 -2
  590. package/dist/components/table/table-row.js.map +0 -1
  591. package/dist/lib/react.d.ts +0 -59
  592. package/dist/lib/react.js +0 -9
  593. package/dist/lib/react.js.map +0 -1
  594. /package/dist/components/query-builder/{group.d.ts → rule-group.d.ts} +0 -0
  595. /package/dist/components/table/{table-body.d.ts → body.d.ts} +0 -0
  596. /package/dist/components/table/{table-cell.d.ts → cell.d.ts} +0 -0
  597. /package/dist/components/table/{table-header.d.ts → header.d.ts} +0 -0
  598. /package/dist/components/table/{table-row.d.ts → row.d.ts} +0 -0
@@ -1,14 +1,8 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import * as react from 'react';
3
- import { ContextValue } from 'react-aria-components';
4
- import { ProviderProps } from '../../lib/types.js';
5
2
  import { SwitchProps } from './types.js';
3
+ import 'react';
4
+ import 'react-aria-components';
6
5
 
7
- declare const SwitchContext: react.Context<ContextValue<SwitchProps, HTMLLabelElement>>;
8
- declare function SwitchProvider({ children, ...props }: ProviderProps<SwitchProps>): react_jsx_runtime.JSX.Element;
9
- declare namespace SwitchProvider {
10
- var displayName: string;
11
- }
12
6
  /**
13
7
  * Switch - A toggle control for binary state changes
14
8
  *
@@ -46,9 +40,5 @@ declare namespace SwitchProvider {
46
40
  * <Switch aria-label="Toggle sidebar" />
47
41
  */
48
42
  declare function Switch({ ref, ...props }: SwitchProps): react_jsx_runtime.JSX.Element;
49
- declare namespace Switch {
50
- var displayName: string;
51
- var Provider: typeof SwitchProvider;
52
- }
53
43
 
54
- export { Switch, SwitchContext };
44
+ export { Switch };
@@ -1,4 +1,4 @@
1
1
  'use client';
2
2
 
3
- import {jsx,jsxs,Fragment}from'react/jsx-runtime';import'client-only';import {createContext}from'react';import {useContextProps,Switch,composeRenderProps}from'react-aria-components';import {SwitchStyles}from'./styles.js';const {switch:d,control:u,label:N}=SwitchStyles(),c=createContext(null);function a({children:t,...e}){return jsx(c.Provider,{value:e,children:t})}a.displayName="Switch.Provider";function l({ref:t,...e}){[e,t]=useContextProps(e,t??null,c);const{children:n,classNames:s,labelPosition:p="end",...m}=e;return jsx(Switch,{...m,ref:t,className:composeRenderProps(s?.switch,o=>d({className:o,labelPosition:p})),children:composeRenderProps(n,o=>jsxs(Fragment,{children:[jsx("span",{className:u({className:s?.control})}),o&&jsx("span",{className:N({className:s?.label}),children:o})]}))})}l.displayName="Switch",l.Provider=a;export{l as Switch,c as SwitchContext};//# sourceMappingURL=index.js.map
3
+ import {jsx,jsxs,Fragment}from'react/jsx-runtime';import'client-only';import {useContextProps,Switch,composeRenderProps}from'react-aria-components';import {SwitchContext}from'./context.js';import {SwitchStyles}from'./styles.js';const{switch:w,control:S,label:N}=SwitchStyles();function d({ref:t,...o}){[o,t]=useContextProps(o,t??null,SwitchContext);const{children:i,classNames:c,labelPosition:l="end",...r}=o;return jsx(Switch,{...r,ref:t,className:composeRenderProps(c?.switch,s=>w({className:s,labelPosition:l})),children:composeRenderProps(i,s=>jsxs(Fragment,{children:[jsx("span",{className:S({className:c?.control})}),s&&jsx("span",{className:N({className:c?.label}),children:s})]}))})}export{d as Switch};//# sourceMappingURL=index.js.map
4
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/switch/index.tsx"],"names":["SwitchStyles","SwitchContext","createContext","h","props","r","SwitchProvider","ref","useContextProps","rest","w","classNames","switchClassNames","children","jsxs","Fragment","y","v","jsx","Switch"],"mappings":"6NA0BQ,MAAA,CAAA,MAA0B,CAAA,CAAA,CAAA,OAAS,CAAA,CAAA,CAAA,KAAUA,CAAAA,CAAa,EAErDC,YAAAA,EACXC,CAA2D,CAAA,CAAAC,aAAA,CAAI,eAEvC,CAAA,CAAA,CAAA,UAAaC,CAAM,GAC3C,CAAA,CAAA,CAAA,CAAA,OACiBC,GAAA,CAAA,CAAA,CAAA,QAAS,CAAA,CAAA,KAAe,CAAA,CAAA,CAAA,QAE3C,CACAC,EAAe,CAAA,CAAA,CAAA,CAAA,WAAc,CAAA,iBAsCtB,CAAA,SAAkB,CAAA,CAAA,CAAAC,GAAK,CAAA,CAAGH,CAAM,GACrC,CAACA,EAAOG,CAAG,CAAA,CAAIC,EAAgBJ,CAAAA,CAAOG,eAAAA,CAAAA,CAAO,CAAA,CAAA,EAAA,IAE7C,CAAA,CAAA,CAAA,CAAA,KAAQ,CAAA,qBAAsB,CAAA,CAAA,CAAA,aAAgB,CAAA,CAAA,CAAA,KAAUE,CAAK,GAAIL,CAEjE,CAAA,CAAA,CAAA,CAAA,OACGC,GACE,CAAAK,MAAA,CAAGD,CAAAA,KACCF,GACL,CAAA,CAAA,CAAA,SAA8BI,CAAAA,kBAAY,UACxCC,CAAAA,CAAiB,EAAE,CAAA,CAAA,CAAA,SAAW,CAAA,CAAA,CAAA,aAChC,EAEC,CAAA,CAAA,CAAA,CAAA,QAAmBC,CAAWA,kBAAAA,CAAAA,CAC7BC,EAAAC,EAAAC,IACE,CAAAC,QAAA,CAAA,CAAA,QAAC,YAAK,CAAA,CAAA,SAAqB,CAAA,CAAA,CAAA,CAAA,SAAuB,CAAA,CAAA,EAAA,OAAY,CAC7DJ,GACCK,CAAAA,CAAC,EAAAb,GAAA,CAAA,MAAK,CAAA,CAAA,SAAmB,CAAA,CAAA,CAAA,CAAA,SAAuB,CAAA,CAAA,EAAA,KAC7C,CAAA,CAAA,CAAA,QACH,CAAA,CAEJ,CACD,EACH,CAEJ,CACAc,EAAO,CAAA,CAAA,CAAA,CAAA,WAAc,CAAA,QACd,CAAA,CAAA,CAAA,QAAWb,CAAAA,CAAAA","file":"index.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n'use client';\n\nimport 'client-only';\nimport { createContext } from 'react';\nimport {\n Switch as AriaSwitch,\n type ContextValue,\n composeRenderProps,\n useContextProps,\n} from 'react-aria-components';\nimport { SwitchStyles } from './styles';\nimport type { ProviderProps } from '@/lib/types';\nimport type { SwitchProps } from './types';\n\n// \"switch\" is a reserved term in JS\nconst { switch: switchClassNames, control, label } = SwitchStyles();\n\nexport const SwitchContext =\n createContext<ContextValue<SwitchProps, HTMLLabelElement>>(null);\n\nfunction SwitchProvider({ children, ...props }: ProviderProps<SwitchProps>) {\n return (\n <SwitchContext.Provider value={props}>{children}</SwitchContext.Provider>\n );\n}\nSwitchProvider.displayName = 'Switch.Provider';\n\n/**\n * Switch - A toggle control for binary state changes\n *\n * Provides an accessible toggle switch component for enabling/disabling features\n * or settings. Offers clear visual feedback for on/off states with smooth transitions\n * and proper keyboard and screen reader support.\n *\n * @example\n * // Basic switch\n * <Switch>Enable notifications</Switch>\n *\n * @example\n * // Controlled switch\n * <Switch\n * isSelected={isEnabled}\n * onChange={setIsEnabled}\n * >\n * Dark mode\n * </Switch>\n *\n * @example\n * // Switch with default state\n * <Switch defaultSelected>\n * Auto-save documents\n * </Switch>\n *\n * @example\n * // Disabled switch\n * <Switch isDisabled>\n * Premium feature (upgrade required)\n * </Switch>\n *\n * @example\n * // Switch without label (icon-only)\n * <Switch aria-label=\"Toggle sidebar\" />\n */\nexport function Switch({ ref, ...props }: SwitchProps) {\n [props, ref] = useContextProps(props, ref ?? null, SwitchContext);\n\n const { children, classNames, labelPosition = 'end', ...rest } = props;\n\n return (\n <AriaSwitch\n {...rest}\n ref={ref}\n className={composeRenderProps(classNames?.switch, (className) =>\n switchClassNames({ className, labelPosition }),\n )}\n >\n {composeRenderProps(children, (children) => (\n <>\n <span className={control({ className: classNames?.control })} />\n {children && (\n <span className={label({ className: classNames?.label })}>\n {children}\n </span>\n )}\n </>\n ))}\n </AriaSwitch>\n );\n}\nSwitch.displayName = 'Switch';\nSwitch.Provider = SwitchProvider;\n"]}
1
+ {"version":3,"sources":["../../../src/components/switch/index.tsx"],"names":["switchClassNames","control","label","h","ref","props","useContextProps","n","SwitchContext","p","jsx","rest","m","e","className","jsxs","Fragment","f","P","a"],"mappings":"oOAwBQ,KAAQA,CAAAA,MAAkB,CAAA,CAAA,CAAAC,OAAS,CAAAC,CAAM,CAAA,KAsC1C,CAAA,CAAA,CAAA,CAAAC,YAAA,EAAA,CAAA,SAAkBC,CAAK,CAAA,CAAA,GAAS,CAAgB,CACrD,CAACC,GAAU,CAAA,CAAIC,CAAAA,CAAgBD,CAAAA,CAAOD,CAAAA,CAAAA,CAAO,CAAAG,eAAA,CAAA,CAAA,CAAMC,CAAa,EAEhE,IAAA,CAAMC,aAAE,CAAA,CAAA,KAAA,CAAA,QAAU,CAAA,CAAA,CAAA,UAAY,CAAA,CAAA,CAAA,aAAgB,CAAO,CAAA,CAAA,KAAYJ,CAEjE,GAAA,CAAA,CAAA,CAAA,CACEK,CAAAA,OACMC,GAAAA,CACJC,MAAA,CAAA,CAAA,GACA,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,SAA0C,CAAAC,kBAAA,CAAA,CAAA,EAASC,MAC9B,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,SAAW,CAAA,CAAA,CAAA,aAG/B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,QACCC,CAAAA,kBAAAC,CAAAA,CAAA,CACE,CAAA,EAAAC,IAAA,CAAAC,QAAA,CAAA,CAAA,QAAC,CAAA,CAAAC,GAAA,CAAK,MAAA,CAAA,CAAA,SAAqB,CAAA,CAAA,CAAA,CAAA,SAAuB,CAAA,CAAA,EAAS,OAEzDT,CAAAA,CAAC,CAAA,CAAA,CAAA,CAAA,EAAAS,GAAA,CAAK,MAAA,CAAA,CAAA,SAAmB,CAAA,CAAA,CAAA,CAAA,SAAuB,CAAM,CAAC,EACpD,KAAA,CAAA,CAAA,CAAA,QAIR,CACH,CAEJ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA","file":"index.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n'use client';\n\nimport 'client-only';\nimport {\n Switch as AriaSwitch,\n composeRenderProps,\n useContextProps,\n} from 'react-aria-components';\nimport { SwitchContext } from './context';\nimport { SwitchStyles } from './styles';\nimport type { SwitchProps } from './types';\n\n// \"switch\" is a reserved term in JS\nconst { switch: switchClassNames, control, label } = SwitchStyles();\n\n/**\n * Switch - A toggle control for binary state changes\n *\n * Provides an accessible toggle switch component for enabling/disabling features\n * or settings. Offers clear visual feedback for on/off states with smooth transitions\n * and proper keyboard and screen reader support.\n *\n * @example\n * // Basic switch\n * <Switch>Enable notifications</Switch>\n *\n * @example\n * // Controlled switch\n * <Switch\n * isSelected={isEnabled}\n * onChange={setIsEnabled}\n * >\n * Dark mode\n * </Switch>\n *\n * @example\n * // Switch with default state\n * <Switch defaultSelected>\n * Auto-save documents\n * </Switch>\n *\n * @example\n * // Disabled switch\n * <Switch isDisabled>\n * Premium feature (upgrade required)\n * </Switch>\n *\n * @example\n * // Switch without label (icon-only)\n * <Switch aria-label=\"Toggle sidebar\" />\n */\nexport function Switch({ ref, ...props }: SwitchProps) {\n [props, ref] = useContextProps(props, ref ?? null, SwitchContext);\n\n const { children, classNames, labelPosition = 'end', ...rest } = props;\n\n return (\n <AriaSwitch\n {...rest}\n ref={ref}\n className={composeRenderProps(classNames?.switch, (className) =>\n switchClassNames({ className, labelPosition }),\n )}\n >\n {composeRenderProps(children, (children) => (\n <>\n <span className={control({ className: classNames?.control })} />\n {children && (\n <span className={label({ className: classNames?.label })}>\n {children}\n </span>\n )}\n </>\n ))}\n </AriaSwitch>\n );\n}\n"]}
@@ -1,2 +1,2 @@
1
- import {tv}from'./../../lib/utils.js';const t=tv({slots:{switch:"group/switch flex cursor-pointer items-center gap-s disabled:cursor-not-allowed",control:["flex rounded-round bg-transparent p-xxs outline outline-interactive before:mr-l before:block before:size-m before:rounded-full before:bg-info-bold","group-enabled/switch:group-focus-visible/switch:bg-interactive-muted-hover group-enabled/switch:group-focus-visible/switch:outline-interactive-hover group-enabled/switch:group-focus-visible/switch:before:bg-interactive-bold-hover","group-enabled/switch:group-hover/switch:bg-interactive-muted-hover group-enabled/switch:group-hover/switch:outline-interactive-hover group-enabled/switch:group-hover/switch:before:bg-interactive-bold-hover","group-enabled/switch:group-selected/switch:outline-accent-primary-bold group-selected/switch:before:mr-0 group-selected/switch:before:ml-l group-enabled/switch:group-selected/switch:before:bg-accent-primary-bold","group-enabled/switch:group-selected/switch:group-focus-visible/switch:bg-accent-primary-muted group-enabled/switch:group-selected/switch:group-focus-visible/switch:outline-interactive-hover group-enabled/switch:group-selected/switch:group-focus-visible/switch:before:bg-accent-primary-bold","group-enabled/switch:group-selected/switch:group-hover/switch:bg-accent-primary-muted group-enabled/switch:group-selected/switch:group-hover/switch:outline-accent-primary-bold group-enabled/switch:group-selected/switch:group-hover/switch:before:bg-accent-primary-bold","group-disabled/switch:bg-interactive-disabled group-disabled/switch:outline-interactive-disabled group-disabled/switch:before:bg-interactive-disabled"],label:["fg-primary-bold text-body-s","group-disabled/switch:fg-disabled"]},variants:{labelPosition:{start:{switch:"flex-row-reverse"},end:{switch:"flex-row"}}}});export{t as SwitchStyles};//# sourceMappingURL=styles.js.map
1
+ import {tv}from'./../../lib/utils.js';const o=tv({slots:{switch:"group/switch flex cursor-pointer items-center gap-s disabled:cursor-not-allowed",control:["flex rounded-round bg-transparent p-xxs outline outline-interactive before:mr-l before:block before:size-m before:rounded-full before:[background-color:var(--fg-primary-muted)]","group-enabled/switch:group-focus-visible/switch:bg-interactive-muted-hover group-enabled/switch:group-focus-visible/switch:outline-interactive-hover group-enabled/switch:group-focus-visible/switch:before:[background-color:var(--fg-primary-bold)]","group-enabled/switch:group-hover/switch:bg-interactive-muted-hover group-enabled/switch:group-hover/switch:outline-interactive-hover group-enabled/switch:group-hover/switch:before:[background-color:var(--fg-primary-bold)]","group-enabled/switch:group-pressed/switch:bg-interactive-pressed group-enabled/switch:group-pressed/switch:outline-interactive-pressed group-enabled/switch:group-pressed/switch:before:[background-color:var(--fg-pressed)]","group-enabled/switch:group-selected/switch:outline-accent-primary-bold group-selected/switch:before:mr-0 group-selected/switch:before:ml-l group-enabled/switch:group-selected/switch:before:[background-color:var(--fg-accent-primary-bold)]","group-enabled/switch:group-selected/switch:group-focus-visible/switch:bg-accent-primary-muted group-enabled/switch:group-selected/switch:group-focus-visible/switch:outline-interactive-hover group-enabled/switch:group-selected/switch:group-focus-visible/switch:before:[background-color:var(--fg-accent-primary-hover)]","group-enabled/switch:group-selected/switch:group-hover/switch:bg-accent-primary-muted group-enabled/switch:group-selected/switch:group-hover/switch:outline-accent-primary-bold group-enabled/switch:group-selected/switch:group-hover/switch:before:[background-color:var(--fg-accent-primary-hover)]","group-enabled/switch:group-selected/switch:group-pressed/switch:bg-accent-primary-pressed group-enabled/switch:group-selected/switch:group-pressed/switch:outline-accent-primary-pressed group-enabled/switch:group-selected/switch:group-pressed/switch:before:[background-color:var(--fg-accent-primary-pressed)]","group-disabled/switch:bg-interactive-disabled group-disabled/switch:outline-interactive-disabled group-disabled/switch:before:[background-color:var(--fg-disabled)]"],label:["fg-primary-bold text-body-s","group-disabled/switch:fg-disabled"]},variants:{labelPosition:{start:{switch:"flex-row-reverse"},end:{switch:"flex-row"}}}});export{o as SwitchStyles};//# sourceMappingURL=styles.js.map
2
2
  //# sourceMappingURL=styles.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/switch/styles.ts"],"names":["e"],"mappings":"sCAeE,MAAA,CAAO,CACLA,SACE,CAAA,CAAA,MAAA,CAAA,iFAEA,CAAA,OAAA,CAAA,CAAA,oJACA,CAAA,ubAEA,CAAA,qNACA,CAAA,ijBAEA,CAAA,uJAEM,CAAA,CAAA,KAAA,CAAA,CAAA,mEAEA,CACR,QAAA,CAAA,CAAA,oBAEY,CAAA,CAAA,MAAA,CAAA,kBAGR,CAAA,CAAA,YACF,UAGL,CAAA,CAAA,CAAA,CAAA","file":"styles.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { tv } from '@/lib/utils';\n\nexport const SwitchStyles = tv({\n slots: {\n switch:\n 'group/switch flex cursor-pointer items-center gap-s disabled:cursor-not-allowed',\n control: [\n 'flex rounded-round bg-transparent p-xxs outline outline-interactive before:mr-l before:block before:size-m before:rounded-full before:bg-info-bold',\n 'group-enabled/switch:group-focus-visible/switch:bg-interactive-muted-hover group-enabled/switch:group-focus-visible/switch:outline-interactive-hover group-enabled/switch:group-focus-visible/switch:before:bg-interactive-bold-hover',\n 'group-enabled/switch:group-hover/switch:bg-interactive-muted-hover group-enabled/switch:group-hover/switch:outline-interactive-hover group-enabled/switch:group-hover/switch:before:bg-interactive-bold-hover',\n 'group-enabled/switch:group-selected/switch:outline-accent-primary-bold group-selected/switch:before:mr-0 group-selected/switch:before:ml-l group-enabled/switch:group-selected/switch:before:bg-accent-primary-bold',\n 'group-enabled/switch:group-selected/switch:group-focus-visible/switch:bg-accent-primary-muted group-enabled/switch:group-selected/switch:group-focus-visible/switch:outline-interactive-hover group-enabled/switch:group-selected/switch:group-focus-visible/switch:before:bg-accent-primary-bold',\n 'group-enabled/switch:group-selected/switch:group-hover/switch:bg-accent-primary-muted group-enabled/switch:group-selected/switch:group-hover/switch:outline-accent-primary-bold group-enabled/switch:group-selected/switch:group-hover/switch:before:bg-accent-primary-bold',\n 'group-disabled/switch:bg-interactive-disabled group-disabled/switch:outline-interactive-disabled group-disabled/switch:before:bg-interactive-disabled',\n ],\n label: ['fg-primary-bold text-body-s', 'group-disabled/switch:fg-disabled'],\n },\n variants: {\n labelPosition: {\n start: {\n switch: 'flex-row-reverse',\n },\n end: {\n switch: 'flex-row',\n },\n },\n },\n});\n"]}
1
+ {"version":3,"sources":["../../../src/components/switch/styles.ts"],"names":["e"],"mappings":"6CAeS,CACLA,EAAA,CAAA,CAAA,+FAGE,4LAEA,CAAA,uPAEA,CAAA,8bAIA,CAAA,+OAEA,CAAA,umBAIA,CAAA,qTAEA,CAAA,2MAEqC,CAAA,mCAEzC,CAAA,CAAU,CACR,uBAEI,CAAA,CAAA,KAAQ,CAAA,CAAA,MAAA,CAAA,uBAGA,CAAA,CAAA,MAAA,CACV,UAGL,CAAA,CAAA,CAAA,CAAA","file":"styles.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { tv } from '@/lib/utils';\n\nexport const SwitchStyles = tv({\n slots: {\n switch:\n 'group/switch flex cursor-pointer items-center gap-s disabled:cursor-not-allowed',\n control: [\n 'flex rounded-round bg-transparent p-xxs outline outline-interactive before:mr-l before:block before:size-m before:rounded-full before:[background-color:var(--fg-primary-muted)]',\n //focus-visible\n 'group-enabled/switch:group-focus-visible/switch:bg-interactive-muted-hover group-enabled/switch:group-focus-visible/switch:outline-interactive-hover group-enabled/switch:group-focus-visible/switch:before:[background-color:var(--fg-primary-bold)]',\n //hover\n 'group-enabled/switch:group-hover/switch:bg-interactive-muted-hover group-enabled/switch:group-hover/switch:outline-interactive-hover group-enabled/switch:group-hover/switch:before:[background-color:var(--fg-primary-bold)]',\n //pressed\n 'group-enabled/switch:group-pressed/switch:bg-interactive-pressed group-enabled/switch:group-pressed/switch:outline-interactive-pressed group-enabled/switch:group-pressed/switch:before:[background-color:var(--fg-pressed)]',\n //selected\n 'group-enabled/switch:group-selected/switch:outline-accent-primary-bold group-selected/switch:before:mr-0 group-selected/switch:before:ml-l group-enabled/switch:group-selected/switch:before:[background-color:var(--fg-accent-primary-bold)]',\n //focus-visible\n 'group-enabled/switch:group-selected/switch:group-focus-visible/switch:bg-accent-primary-muted group-enabled/switch:group-selected/switch:group-focus-visible/switch:outline-interactive-hover group-enabled/switch:group-selected/switch:group-focus-visible/switch:before:[background-color:var(--fg-accent-primary-hover)]',\n //hover\n 'group-enabled/switch:group-selected/switch:group-hover/switch:bg-accent-primary-muted group-enabled/switch:group-selected/switch:group-hover/switch:outline-accent-primary-bold group-enabled/switch:group-selected/switch:group-hover/switch:before:[background-color:var(--fg-accent-primary-hover)]',\n //pressed\n 'group-enabled/switch:group-selected/switch:group-pressed/switch:bg-accent-primary-pressed group-enabled/switch:group-selected/switch:group-pressed/switch:outline-accent-primary-pressed group-enabled/switch:group-selected/switch:group-pressed/switch:before:[background-color:var(--fg-accent-primary-pressed)]',\n //disabled\n 'group-disabled/switch:bg-interactive-disabled group-disabled/switch:outline-interactive-disabled group-disabled/switch:before:[background-color:var(--fg-disabled)]',\n ],\n label: ['fg-primary-bold text-body-s', 'group-disabled/switch:fg-disabled'],\n },\n variants: {\n labelPosition: {\n start: {\n switch: 'flex-row-reverse',\n },\n end: {\n switch: 'flex-row',\n },\n },\n },\n});\n"]}
@@ -0,0 +1,2 @@
1
+ import {jsx}from'react/jsx-runtime';import {TableRow}from'./row.js';import {TableBodyStyles}from'./styles.js';function T({children:r,className:y,ref:p,rows:t,...a}){return jsx("tbody",{...a,ref:p,className:TableBodyStyles({className:y}),children:r||t?.map(o=>jsx(TableRow,{row:o},o.id))})}export{T as TableBody};//# sourceMappingURL=body.js.map
2
+ //# sourceMappingURL=body.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/table/body.tsx"],"names":["ref","rows","jsx","e","d","row"],"mappings":"8GAiBO,SACL,CAAA,CAAA,CAAA,QACA,CAAA,CAAA,CAAA,SACAA,CACA,KAAAC,CAAAA,CACA,CAAA,IACF,CAAsB,CACpB,CAAA,GAAA,CAAA,CAAA,CACEC,QAACC,GAAA,CAAA,OAEC,CAAA,CAAA,GACA,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,SACE,CAAAC,eAAA,CAAA,CAAA,SAGD,CAAA,CAAA,CAAA,CAAA,CAAA,QAAkB,CAAA,CAAA,EAAKC,CAAAA,EAAQH,GAAC,CAAsB,CAAA,EAAAC,GAAKE,CAAAA,QAAAA,CAAbA,CAAAA,GAAkB,CAAE,CAAA,CACrE,CAEJ,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA","file":"body.js","sourcesContent":["// __private-exports\n/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { TableRow } from './row';\nimport { TableBodyStyles } from './styles';\nimport type { TableBodyProps } from './types';\n\nexport function TableBody<T>({\n children,\n className,\n ref,\n rows,\n ...rest\n}: TableBodyProps<T>) {\n return (\n <tbody\n {...rest}\n ref={ref}\n className={TableBodyStyles({\n className,\n })}\n >\n {children || rows?.map((row) => <TableRow key={row.id} row={row} />)}\n </tbody>\n );\n}\n"]}
@@ -0,0 +1,2 @@
1
+ import {jsx}from'react/jsx-runtime';import {flexRender}from'@tanstack/react-table';import {useContext}from'react';import {HeaderColumnAction}from'./constants/table.js';import {TableContext}from'./context.js';import {TableCellStyles}from'./styles.js';function S({children:r,ref:n,className:s,cell:o,...m}){const{columnSelection:l,persistNumerals:i}=useContext(TableContext),a=o?.column.id===HeaderColumnAction.KEBAB,e=o?.column.id===HeaderColumnAction.NUMERAL,u=o?.column.id===l;return jsx("td",{...m,ref:n,className:TableCellStyles({className:s,narrow:e||a,isNumeral:e,notPersistNums:e&&!i}),"data-selected":u||null,children:r||o&&flexRender(o.column.columnDef.cell,o.getContext())})}export{S as TableCell};//# sourceMappingURL=cell.js.map
2
+ //# sourceMappingURL=cell.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/table/cell.tsx"],"names":["children","className","rest","cell","p","d","HeaderColumnAction","isNumeral","columnSelection","jsx","TableCellStyles","f","isKebab","c"],"mappings":"0PAqBE,SAAAA,CAAAA,CACA,SACA,CAAA,CAAA,CAAA,GAAA,CAAAC,EACA,SACA,CAAGC,CACL,CAAA,OACQ,GAAE,CAAA,CAAA,CAAA,CAAA,KAAA,CAAA,eAAiB,CAAA,CAAA,CAAA,eACTC,CAAAA,CAAM,CAAA,CAAAC,UAAA,CAAAC,YAAA,CAAA,CAAO,CAAA,CAAA,CAAA,EAAOC,MAAmB,CAAA,EACjDC,qBAAkB,CAAA,KAAA,CAAO,CAAA,CAAA,CAAA,EAAOD,MAAmB,CAAA,EAAA,GACtCH,kBAAAA,CAAAA,OAAM,CAAO,CAAA,CAAA,CAAA,EAAOK,SAKrCC,GAAC,CAAA,CAAA,OACKP,GACJ,CAAA,KACA,CAAA,GAAA,CAAA,CAAA,GAAA,CAAWQ,CAAAA,CAAgB,SACzB,CAAAC,eAAAV,CAAAA,CACA,UATsBW,CAAAA,CAUtB,MAAA,CAAA,CAAA,EAAAL,EACA,SAAA,CAAA,CAAA,CAAA,cAEF,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,uBAECP,CACEG,QAAwB,CAAA,CAAA,EAAA,CAAA,EAAOU,UAAA,CAAA,CAAA,CAAA,gBAAqB,CAAA,IAAA,CAAA,CAAW,CAAC,UAGzE,EAAA,CAAA,CAAA,CAAA","file":"cell.js","sourcesContent":["// __private-exports\n/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { flexRender } from '@tanstack/react-table';\nimport { useContext } from 'react';\nimport { HeaderColumnAction } from './constants/table';\nimport { TableContext } from './context';\nimport { TableCellStyles } from './styles';\nimport type { TableCellProps } from './types';\n\nexport function TableCell<T>({\n children,\n ref,\n className,\n cell,\n ...rest\n}: TableCellProps<T>) {\n const { columnSelection, persistNumerals } = useContext(TableContext);\n const isKebab = cell?.column.id === HeaderColumnAction.KEBAB;\n const isNumeral = cell?.column.id === HeaderColumnAction.NUMERAL;\n const isSelected = cell?.column.id === columnSelection;\n const narrow = isNumeral || isKebab;\n const notPersistNums = isNumeral && !persistNumerals;\n\n return (\n <td\n {...rest}\n ref={ref}\n className={TableCellStyles({\n className,\n narrow,\n isNumeral,\n notPersistNums,\n })}\n data-selected={isSelected || null}\n >\n {children ||\n (cell && flexRender(cell.column.columnDef.cell, cell.getContext()))}\n </td>\n );\n}\n"]}
@@ -0,0 +1,17 @@
1
+ import { SafeEnum } from '@accelint/core';
2
+
3
+ declare const SortDirection: Readonly<{
4
+ readonly ASC: "asc";
5
+ readonly DESC: "desc";
6
+ }>;
7
+ declare const HeaderColumnAction: Readonly<{
8
+ readonly NUMERAL: "numeral";
9
+ readonly KEBAB: "kebab";
10
+ readonly SELECTION: "selection";
11
+ }>;
12
+ type SortDirectionState = SafeEnum<typeof SortDirection>;
13
+ declare const sortDirectionValues: readonly ["desc" | "asc", ...("desc" | "asc")[]];
14
+ type HeaderColumnActionKey = SafeEnum<typeof HeaderColumnAction>;
15
+ declare const headerColumnActionValues: readonly ["numeral" | "kebab" | "selection", ...("numeral" | "kebab" | "selection")[]];
16
+
17
+ export { HeaderColumnAction, type HeaderColumnActionKey, SortDirection, type SortDirectionState, headerColumnActionValues, sortDirectionValues };
@@ -0,0 +1,2 @@
1
+ import {getSafeEnumValues}from'@accelint/core';const t=Object.freeze({ASC:"asc",DESC:"desc"}),o=Object.freeze({NUMERAL:"numeral",KEBAB:"kebab",SELECTION:"selection"}),r=getSafeEnumValues(t),c=getSafeEnumValues(o);export{o as HeaderColumnAction,t as SortDirection,c as headerColumnActionValues,r as sortDirectionValues};//# sourceMappingURL=table.js.map
2
+ //# sourceMappingURL=table.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/table/constants/table.ts"],"names":["SortDirection","HeaderColumnAction","sortDirectionValues","getSafeEnumValues","headerColumnActionValues"],"mappings":"+CAcO,MAAMA,EAAgB,MAAA,CAAO,MAAA,CAAO,CACzC,GAAA,CAAK,KAAA,CACL,IAAA,CAAM,MACR,CAAU,EAEGC,CAAAA,CAAqB,MAAA,CAAO,MAAA,CAAO,CAC9C,OAAA,CAAS,SAAA,CACT,KAAA,CAAO,OAAA,CACP,UAAW,WACb,CAAU,CAAA,CAGGC,CAAAA,CAAsBC,iBAAAA,CAAkBH,CAAa,CAAA,CAGrDI,CAAAA,CAA2BD,kBAAkBF,CAAkB","file":"table.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { getSafeEnumValues, type SafeEnum } from '@accelint/core';\n\nexport const SortDirection = Object.freeze({\n ASC: 'asc',\n DESC: 'desc',\n} as const);\n\nexport const HeaderColumnAction = Object.freeze({\n NUMERAL: 'numeral',\n KEBAB: 'kebab',\n SELECTION: 'selection',\n} as const);\n\nexport type SortDirectionState = SafeEnum<typeof SortDirection>;\nexport const sortDirectionValues = getSafeEnumValues(SortDirection);\n\nexport type HeaderColumnActionKey = SafeEnum<typeof HeaderColumnAction>;\nexport const headerColumnActionValues = getSafeEnumValues(HeaderColumnAction);\n"]}
@@ -1,2 +1,2 @@
1
- import {createContext}from'react';const n=createContext({moveColumnLeft:()=>{},moveColumnRight:()=>{},setColumnSelection:()=>null,columnSelection:null,persistRowKebabMenu:true,persistHeaderKebabMenu:true,persistNumerals:true,enableSorting:true,enableColumnReordering:true,enableRowActions:true});export{n as TableContext};//# sourceMappingURL=context.js.map
1
+ import {createContext}from'react';const t=createContext({moveColumnLeft:()=>{},moveColumnRight:()=>{},setColumnSelection:()=>null,columnSelection:null,persistRowKebabMenu:true,persistHeaderKebabMenu:true,persistNumerals:true,enableSorting:true,enableColumnReordering:true,enableRowActions:true,manualSorting:false,handleSortChange:()=>{},handleColumnReordering:()=>{}});export{t as TableContext};//# sourceMappingURL=context.js.map
2
2
  //# sourceMappingURL=context.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/table/context.tsx"],"names":["TableContext","createContext"],"mappings":"kCAgBO,MAAMA,CAAAA,CAAeC,aAAAA,CAAiC,CAC3D,cAAA,CAAgB,IAAG,CAAA,CAAA,CACnB,eAAA,CAAiB,IAAG,GACpB,kBAAA,CAAoB,IAAM,IAAA,CAC1B,eAAA,CAAiB,IAAA,CACjB,mBAAA,CAAqB,IAAA,CACrB,sBAAA,CAAwB,IAAA,CACxB,eAAA,CAAiB,IAAA,CACjB,aAAA,CAAe,IAAA,CACf,sBAAA,CAAwB,IAAA,CACxB,gBAAA,CAAkB,IACpB,CAAC","file":"context.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { createContext } from 'react';\nimport type { TableContextValue } from './types';\n\n// Only keep values in context that are needed across multiple component levels\nexport const TableContext = createContext<TableContextValue>({\n moveColumnLeft: () => undefined,\n moveColumnRight: () => undefined,\n setColumnSelection: () => null,\n columnSelection: null,\n persistRowKebabMenu: true,\n persistHeaderKebabMenu: true,\n persistNumerals: true,\n enableSorting: true,\n enableColumnReordering: true,\n enableRowActions: true,\n});\n"]}
1
+ {"version":3,"sources":["../../../src/components/table/context.tsx"],"names":["TableContext","createContext"],"mappings":"kCAgBO,MAAMA,CAAAA,CAAeC,cAAiC,CAC3D,cAAA,CAAgB,IAAG,CAAA,CAAA,CACnB,gBAAiB,IAAG,CAAA,CAAA,CACpB,mBAAoB,IAAM,IAAA,CAC1B,gBAAiB,IAAA,CACjB,mBAAA,CAAqB,IAAA,CACrB,sBAAA,CAAwB,KACxB,eAAA,CAAiB,IAAA,CACjB,aAAA,CAAe,IAAA,CACf,uBAAwB,IAAA,CACxB,gBAAA,CAAkB,IAAA,CAClB,aAAA,CAAe,MACf,gBAAA,CAAkB,IAAG,GACrB,sBAAA,CAAwB,IAAG,EAC7B,CAAC","file":"context.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { createContext } from 'react';\nimport type { TableContextValue } from './types';\n\n// Only keep values in context that are needed across multiple component levels\nexport const TableContext = createContext<TableContextValue>({\n moveColumnLeft: () => undefined,\n moveColumnRight: () => undefined,\n setColumnSelection: () => null,\n columnSelection: null,\n persistRowKebabMenu: true,\n persistHeaderKebabMenu: true,\n persistNumerals: true,\n enableSorting: true,\n enableColumnReordering: true,\n enableRowActions: true,\n manualSorting: false,\n handleSortChange: () => undefined,\n handleColumnReordering: () => undefined,\n});\n"]}
@@ -7,6 +7,6 @@ import 'tailwind-variants';
7
7
  import './styles.js';
8
8
  import 'tailwind-merge';
9
9
 
10
- declare function HeaderCell<T>({ ref, children, className, header, ...rest }: TableHeaderCellProps<T>): react_jsx_runtime.JSX.Element;
10
+ declare function TableHeaderCell<T>({ ref, children, className, header, ...rest }: TableHeaderCellProps<T>): react_jsx_runtime.JSX.Element;
11
11
 
12
- export { HeaderCell };
12
+ export { TableHeaderCell };
@@ -0,0 +1,2 @@
1
+ import {jsx,jsxs,Fragment}from'react/jsx-runtime';import {Kebab,ArrowDown,ArrowUp}from'@accelint/icons';import {flexRender}from'@tanstack/react-table';import {useContext,useState}from'react';import {Button}from'../button/index.js';import {Icon}from'../icon/index.js';import {Menu}from'../menu/index.js';import {MenuItem}from'../menu/item.js';import {MenuSeparator}from'../menu/separator.js';import {MenuTrigger}from'../menu/trigger.js';import {HeaderColumnAction,SortDirection,headerColumnActionValues}from'./constants/table.js';import {TableContext}from'./context.js';import {TableStyles,TableHeaderCellStyles}from'./styles.js';const{menuItem:C}=TableStyles();function k({header:e}){const{enableColumnReordering:i,enableSorting:s,moveColumnLeft:o,moveColumnRight:b,persistHeaderKebabMenu:S,setColumnSelection:f,manualSorting:u,handleSortChange:c,handleColumnReordering:a}=useContext(TableContext),[d,p]=useState(false);if(headerColumnActionValues.includes(e.column.id)||!(s||i))return null;const r=e.column.getIsSorted();return jsxs(MenuTrigger,{onOpenChange:l=>f(l?e.column.id:null),children:[jsx(Button,{variant:"icon","aria-label":"Menu",onHoverChange:p,className:TableHeaderCellStyles({notPersistHeaderKebab:!S}),children:jsxs(Icon,{children:[(!r||d)&&jsx(Kebab,{}),!d&&r===SortDirection.DESC&&jsx(ArrowDown,{}),!d&&r===SortDirection.ASC&&jsx(ArrowUp,{})]})}),jsxs(Menu,{children:[i&&jsxs(Fragment,{children:[jsx(MenuItem,{classNames:{item:C()},onAction:()=>{const l=e.column.getIndex();o(l),a?.(l);},isDisabled:e.column.getIsFirstColumn("center"),children:"Move Column Left"}),jsx(MenuItem,{classNames:{item:C()},onAction:()=>{const l=e.column.getIndex();b(l),a?.(l);},isDisabled:e.column.getIsLastColumn("center"),children:"Move Column Right"})]}),i&&s&&jsx(MenuSeparator,{}),s&&jsxs(Fragment,{children:[jsx(MenuItem,{classNames:{item:C()},onAction:()=>{u?c?.(e.column.id,SortDirection.ASC):e.column.toggleSorting(false);},isDisabled:r===SortDirection.ASC,children:"Sort Ascending"}),jsx(MenuItem,{classNames:{item:C()},onAction:()=>{u?c?.(e.column.id,SortDirection.DESC):e.column.toggleSorting(true);},isDisabled:r===SortDirection.DESC,children:"Sort Descending"}),jsx(MenuItem,{classNames:{item:C()},onAction:()=>{u?c?.(e.column.id,null):e.column.clearSorting();},isDisabled:!r,children:"Clear Sort"})]})]})]})}function Z({ref:e,children:i,className:s,header:o,...b}){const{columnSelection:S,enableColumnReordering:f,enableSorting:u}=useContext(TableContext),c=f||u,a=o?.getContext(),d=o?.column.id===HeaderColumnAction.NUMERAL||o?.column.id===HeaderColumnAction.KEBAB,p=o?.column.getIsSorted()===SortDirection.ASC?"ascending":o?.column.getIsSorted()===SortDirection.DESC?"descending":void 0;return jsx("th",{...b,ref:e,"aria-sort":p,children:jsx("div",{className:TableHeaderCellStyles({narrow:d,className:s,isKebabEnabled:c}),"data-selected":o?.column.id===S||null,children:i||o&&jsxs(Fragment,{children:[o.column.id!==HeaderColumnAction.KEBAB&&a&&flexRender(o.column.columnDef.header,a),jsx(k,{header:o})]})})})}export{Z as TableHeaderCell};//# sourceMappingURL=header-cell.js.map
2
+ //# sourceMappingURL=header-cell.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/table/header-cell.tsx"],"names":["P","enableColumnReordering","handleSortChange","hoveredArrow","setHoveredArrow","E","sort","header","jsxs","MenuTrigger","setColumnSelection","isOpen","jsx","Button","N","TableHeaderCellStyles","Icon","H","SortDirection","m","K","ArrowUp","n","w","Menu","t","Fragment","MenuItem","v","menuItem","M","g","moveColumnLeft","index","handleColumnReordering","moveColumnRight","MenuSeparator","B","manualSorting","ref","rest","columnSelection","enableSorting","renderProps","I","D","sortLabel","A","narrow","className","children","x"],"mappings":"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","file":"header-cell.js","sourcesContent":["// __private-exports\n/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { ArrowDown, ArrowUp, Kebab } from '@accelint/icons';\nimport { flexRender, type Header } from '@tanstack/react-table';\nimport { useContext, useState } from 'react';\nimport { Button } from '../button';\nimport { Icon } from '../icon';\nimport { Menu } from '../menu';\nimport { MenuItem } from '../menu/item';\nimport { MenuSeparator } from '../menu/separator';\nimport { MenuTrigger } from '../menu/trigger';\nimport {\n HeaderColumnAction,\n headerColumnActionValues,\n SortDirection,\n} from './constants/table';\nimport { TableContext } from './context';\nimport { TableHeaderCellStyles, TableStyles } from './styles';\nimport type { TableHeaderCellProps } from './types';\n\nconst { menuItem } = TableStyles();\n\nfunction HeaderCellMenu<T>({ header }: { header: Header<T, unknown> }) {\n const {\n enableColumnReordering,\n enableSorting,\n moveColumnLeft,\n moveColumnRight,\n persistHeaderKebabMenu,\n setColumnSelection,\n manualSorting,\n handleSortChange,\n handleColumnReordering,\n } = useContext(TableContext);\n\n const [hoveredArrow, setHoveredArrow] = useState(false);\n\n if (\n headerColumnActionValues.includes(\n header.column.id as 'numeral' | 'kebab' | 'selection',\n ) ||\n !(enableSorting || enableColumnReordering)\n ) {\n return null;\n }\n\n const sort = header.column.getIsSorted();\n\n return (\n <MenuTrigger\n onOpenChange={(isOpen) =>\n setColumnSelection(isOpen ? header.column.id : null)\n }\n >\n <Button\n variant='icon'\n aria-label='Menu'\n onHoverChange={setHoveredArrow}\n className={TableHeaderCellStyles({\n notPersistHeaderKebab: !persistHeaderKebabMenu,\n })}\n >\n <Icon>\n {(!sort || hoveredArrow) && <Kebab />}\n {!hoveredArrow && sort === SortDirection.DESC && <ArrowDown />}\n {!hoveredArrow && sort === SortDirection.ASC && <ArrowUp />}\n </Icon>\n </Button>\n <Menu>\n {enableColumnReordering && (\n <>\n <MenuItem\n classNames={{ item: menuItem() }}\n onAction={() => {\n const index = header.column.getIndex();\n moveColumnLeft(index);\n handleColumnReordering?.(index);\n }}\n isDisabled={header.column.getIsFirstColumn('center')}\n >\n Move Column Left\n </MenuItem>\n <MenuItem\n classNames={{ item: menuItem() }}\n onAction={() => {\n const index = header.column.getIndex();\n moveColumnRight(index);\n handleColumnReordering?.(index);\n }}\n isDisabled={header.column.getIsLastColumn('center')}\n >\n Move Column Right\n </MenuItem>\n </>\n )}\n {enableColumnReordering && enableSorting && <MenuSeparator />}\n {enableSorting && (\n <>\n <MenuItem\n classNames={{ item: menuItem() }}\n onAction={() => {\n manualSorting\n ? handleSortChange?.(header.column.id, SortDirection.ASC)\n : header.column.toggleSorting(false);\n }}\n isDisabled={sort === SortDirection.ASC}\n >\n Sort Ascending\n </MenuItem>\n <MenuItem\n classNames={{ item: menuItem() }}\n onAction={() => {\n manualSorting\n ? handleSortChange?.(header.column.id, SortDirection.DESC)\n : header.column.toggleSorting(true);\n }}\n isDisabled={sort === SortDirection.DESC}\n >\n Sort Descending\n </MenuItem>\n <MenuItem\n classNames={{ item: menuItem() }}\n onAction={() => {\n manualSorting\n ? handleSortChange?.(header.column.id, null)\n : header.column.clearSorting();\n }}\n isDisabled={!sort}\n >\n Clear Sort\n </MenuItem>\n </>\n )}\n </Menu>\n </MenuTrigger>\n );\n}\n\nexport function TableHeaderCell<T>({\n ref,\n children,\n className,\n header,\n ...rest\n}: TableHeaderCellProps<T>) {\n const { columnSelection, enableColumnReordering, enableSorting } =\n useContext(TableContext);\n const showKebab = enableColumnReordering || enableSorting;\n const renderProps = header?.getContext();\n const narrow =\n header?.column.id === HeaderColumnAction.NUMERAL ||\n header?.column.id === HeaderColumnAction.KEBAB;\n const sortLabel =\n header?.column.getIsSorted() === SortDirection.ASC\n ? 'ascending'\n : header?.column.getIsSorted() === SortDirection.DESC\n ? 'descending'\n : undefined;\n\n return (\n <th {...rest} ref={ref} aria-sort={sortLabel}>\n <div\n className={TableHeaderCellStyles({\n narrow,\n className,\n isKebabEnabled: showKebab,\n })}\n data-selected={header?.column.id === columnSelection || null}\n >\n {children ||\n (header && (\n <>\n {header.column.id !== HeaderColumnAction.KEBAB &&\n // {header.column.id !== '8' &&\n renderProps &&\n flexRender(header.column.columnDef.header, renderProps)}\n <HeaderCellMenu header={header} />\n </>\n ))}\n </div>\n </th>\n );\n}\n"]}
@@ -0,0 +1,2 @@
1
+ import {jsx}from'react/jsx-runtime';import {TableHeaderCell}from'./header-cell.js';import {TableHeaderStyles}from'./styles.js';function f({ref:t,children:l,className:o,headerGroups:d,columnSelection:i,...m}){return jsx("thead",{...m,ref:t,className:TableHeaderStyles(o),children:l||d?.map(r=>jsx("tr",{children:r.headers.map(a=>jsx(TableHeaderCell,{header:a},a.id))},r.id))})}export{f as TableHeader};//# sourceMappingURL=header.js.map
2
+ //# sourceMappingURL=header.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/table/header.tsx"],"names":["ref","jsx","e","T","headerGroup","p","header"],"mappings":"+HAiBO,SACLA,CACA,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,QACA,CAAA,CAAA,CAAA,SACA,CAAA,CAAA,CAAA,YACA,CAAA,CAAA,CAAA,eAEF,CAAwB,CACtB,CAAA,GAAA,CAAA,CAAA,CACEC,QAACC,GAAA,CAAA,OAAgB,CAAA,CAAA,GAAU,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,SACxB,CAAAC,iBAAA,CAAA,CAAA,CAAA,CAAA,QACe,CAAA,CAAA,EAAKC,CAAAA,EACjBH,GAAC,CAAA,CAAA,EACEC,kBAAY,CAAA,CAAA,CAAQ,OACnBD,CAAAA,GAAC,CAAgC,CAAA,EAAAC,GAAA,CAAAG,eAAA,CAAQC,CAAAA,MAAQ,CAClD,CAAA,CAAA,CAHMF,CAAAA,CAAY,EAIrB,CACD,EACL,CAEJ,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA","file":"header.js","sourcesContent":["// __private-exports\n/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { TableHeaderCell } from './header-cell';\nimport { TableHeaderStyles } from './styles';\nimport type { TableHeaderProps } from './types';\n\nexport function TableHeader<T>({\n ref,\n children,\n className,\n headerGroups,\n columnSelection,\n ...rest\n}: TableHeaderProps<T>) {\n return (\n <thead {...rest} ref={ref} className={TableHeaderStyles(className)}>\n {children ||\n headerGroups?.map((headerGroup) => (\n <tr key={headerGroup.id}>\n {headerGroup.headers.map((header) => (\n <TableHeaderCell key={header.id} header={header} />\n ))}\n </tr>\n ))}\n </thead>\n );\n}\n"]}
@@ -1,9 +1,4 @@
1
- import { HeaderCell } from './table-header-cell.js';
2
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
3
- import { TableBody } from './table-body.js';
4
- import { TableCell } from './table-cell.js';
5
- import { TableHeader } from './table-header.js';
6
- import { TableRow } from './table-row.js';
7
2
  import { Key } from '@react-types/shared';
8
3
  import { TableProps } from './types.js';
9
4
  import '@tanstack/react-table';
@@ -12,16 +7,17 @@ import 'tailwind-variants';
12
7
  import './styles.js';
13
8
  import 'tailwind-merge';
14
9
 
10
+ /**
11
+ * Table - Configurable data table with sorting and row actions
12
+ *
13
+ * Standardizes table behavior (sorting, selection, row actions) and can be
14
+ * used with column definitions from TanStack React Table.
15
+ *
16
+ * @example
17
+ * <Table columns={columns} data={data} />
18
+ */
15
19
  declare function Table<T extends {
16
20
  id: Key;
17
- }>({ children, columns: columnsProp, data: dataProp, showCheckbox, kebabPosition, persistRowKebabMenu, persistHeaderKebabMenu, persistNumerals, enableSorting, enableColumnOrdering: enableColumnReordering, enableRowActions, ...rest }: TableProps<T>): react_jsx_runtime.JSX.Element;
18
- declare namespace Table {
19
- var displayName: string;
20
- var Body: typeof TableBody;
21
- var Cell: typeof TableCell;
22
- var Header: typeof TableHeader;
23
- var HeaderCell: typeof HeaderCell;
24
- var Row: typeof TableRow;
25
- }
21
+ }>({ children, columns: columnsProp, data: dataProp, showCheckbox, kebabPosition, persistRowKebabMenu, persistHeaderKebabMenu, persistNumerals, enableSorting, enableColumnReordering, enableRowActions, manualSorting, onSortChange, onColumnReorderChange, ...rest }: TableProps<T>): react_jsx_runtime.JSX.Element;
26
22
 
27
23
  export { Table };
@@ -1,4 +1,4 @@
1
1
  'use client';
2
2
 
3
- import {jsx,jsxs}from'react/jsx-runtime';import'client-only';import {Pin,Kebab}from'@accelint/icons';import {useListData}from'@react-stately/data';import {useReactTable,getSortedRowModel,getCoreRowModel}from'@tanstack/react-table';import {useState,useCallback,useMemo,useContext}from'react';import {Button}from'../button/index.js';import {Checkbox}from'../checkbox/index.js';import {Icon}from'../icon/index.js';import {Menu}from'../menu/index.js';import {TableContext}from'./context.js';import {TableStyles}from'./styles.js';import {TableBody}from'./table-body.js';import {TableCell}from'./table-cell.js';import {TableHeader}from'./table-header.js';import {HeaderCell}from'./table-header-cell.js';import {TableRow}from'./table-row.js';const{menuItem:v,notPersistRowKebab:ae}=TableStyles();function ce({moveRowsDown:R,moveRowsUp:g,row:i,rows:a}){const{enableRowActions:p,persistRowKebabMenu:S}=useContext(TableContext),c=!!i.getIsPinned();return p&&jsx("div",{className:S?"":ae(),children:jsxs(Menu.Trigger,{children:[jsx(Button,{variant:"icon","aria-label":"Menu",children:jsx(Icon,{children:jsx(Kebab,{})})}),jsxs(Menu,{children:[jsx(Menu.Item,{classNames:{item:v()},onAction:()=>i.pin(c?false:"top"),children:c?"Unpin":"Pin"}),jsx(Menu.Separator,{}),jsx(Menu.Item,{classNames:{item:v()},onAction:()=>g(i,a),isDisabled:c||i.index===0,children:"Move Up"}),jsx(Menu.Item,{classNames:{item:v()},onAction:()=>R(i,a),isDisabled:c||i.index===a.length-1,children:"Move Down"})]})]})})}function d({children:R,columns:g,data:i,showCheckbox:a,kebabPosition:p="right",persistRowKebabMenu:S=true,persistHeaderKebabMenu:c=true,persistNumerals:L=false,enableSorting:C=true,enableColumnOrdering:z=true,enableRowActions:k=true,...I}){const{items:q,moveAfter:y,moveBefore:P}=useListData({initialItems:i}),[r,E]=useState({}),[h,F]=useState(null),N=useCallback((e,t)=>{const n=r[e.id]?t.filter(({id:m})=>r[m]):[e],l=n[0];if(!l||l.index===0)return;const w=t[l.index-1]?.id;w&&P(w,n.map(({id:m})=>m));},[r,P]),x=useCallback((e,t)=>{const n=r[e.id]?t.filter(({id:m})=>r[m]):[e],l=n[n.length-1];if(!l||l.index===t.length-1)return;const w=t[l.index+1]?.id;w&&y(w,n.map(({id:m})=>m));},[r,y]),b=useMemo(()=>({id:"kebab",cell:({row:e})=>jsx(ce,{moveRowsUp:N,moveRowsDown:x,row:e,rows:X().rows})}),[N,x]),A=useMemo(()=>[{id:"numeral",cell:({row:e})=>e.getIsPinned()?jsx(Icon,{size:"small",children:jsx(Pin,{})}):jsx("span",{"data-testid":"numeral",children:e.index+1})},...a?[{id:"selection",header:({table:e})=>jsx(Checkbox,{isSelected:e.getIsAllRowsSelected(),isIndeterminate:e.getIsSomeRowsSelected(),onChange:e.toggleAllRowsSelected}),cell:({row:e})=>jsx(Checkbox,{isSelected:e.getIsSelected(),isIndeterminate:e.getIsSomeSelected(),onChange:e.toggleSelected})}]:[],...p==="left"?[b]:[],...g??[],...p==="right"?[b]:[]],[a,g,p,b]),{getHeaderGroups:J,getTopRows:Q,getCenterRows:V,getBottomRows:W,getRowModel:X,setColumnOrder:f}=useReactTable({data:q,columns:A,enableSorting:C,initialState:{columnOrder:A.map(e=>e.id)},state:{rowSelection:r},getRowId:(e,t)=>e.id?e.id.toString():t.toString(),enableRowSelection:true,onRowSelectionChange:E,getCoreRowModel:getCoreRowModel(),getSortedRowModel:getSortedRowModel()}),Y=useCallback(e=>{f(t=>{const s=[...t],n=e-1;return n<0?t:([s[e],s[n]]=[s[n],s[e]],s)});},[f]),Z=useCallback(e=>{f(t=>{const s=[...t],n=e+1;return n>=t.length?t:([s[e],s[n]]=[s[n],s[e]],s)});},[f]);return R?jsx("table",{...I,children:R}):jsx(TableContext.Provider,{value:{persistRowKebabMenu:S,persistHeaderKebabMenu:c,persistNumerals:L,enableSorting:C,enableColumnReordering:z,enableRowActions:k,columnSelection:h,setColumnSelection:F,moveColumnLeft:Y,moveColumnRight:Z},children:jsxs("table",{...I,children:[jsx(TableHeader,{headerGroups:J(),columnSelection:h}),jsx(TableBody,{rows:[...Q(),...V(),...W()]})]})})}d.displayName="Table",d.Body=TableBody,d.Cell=TableCell,d.Header=TableHeader,d.HeaderCell=HeaderCell,d.Row=TableRow;export{d as Table};//# sourceMappingURL=index.js.map
3
+ import {jsx,jsxs}from'react/jsx-runtime';import {Pin,Kebab}from'@accelint/icons';import {useListData}from'@react-stately/data';import {useReactTable,getSortedRowModel,getCoreRowModel}from'@tanstack/react-table';import'client-only';import {useState,useCallback,useMemo,useContext}from'react';import {Button}from'../button/index.js';import {Checkbox}from'../checkbox/index.js';import {Icon}from'../icon/index.js';import {Menu}from'../menu/index.js';import {MenuItem}from'../menu/item.js';import {MenuSeparator}from'../menu/separator.js';import {MenuTrigger}from'../menu/trigger.js';import {TableBody}from'./body.js';import {TableContext}from'./context.js';import {TableHeader}from'./header.js';import {TableStyles}from'./styles.js';const{menuItem:v,notPersistRowKebab:Re}=TableStyles();function ge({moveRowsDown:p,moveRowsUp:w,row:s,rows:a}){const{enableRowActions:u,persistRowKebabMenu:f}=useContext(TableContext),c=!!s.getIsPinned();return u&&jsx("div",{className:f?"":Re(),children:jsxs(MenuTrigger,{children:[jsx(Button,{variant:"icon","aria-label":`row ${s.index+1} actions`,children:jsx(Icon,{children:jsx(Kebab,{})})}),jsxs(Menu,{children:[jsx(MenuItem,{classNames:{item:v()},onAction:()=>s.pin(c?false:"top"),children:c?"Unpin":"Pin"}),jsx(MenuSeparator,{}),jsx(MenuItem,{classNames:{item:v()},onAction:()=>w(s,a),isDisabled:c||s.index===0,children:"Move Up"}),jsx(MenuItem,{classNames:{item:v()},onAction:()=>p(s,a),isDisabled:c||s.index===a.length-1,children:"Move Down"})]})]})})}function Ke({children:p,columns:w,data:s,showCheckbox:a,kebabPosition:u="right",persistRowKebabMenu:f=true,persistHeaderKebabMenu:c=true,persistNumerals:G=false,enableSorting:C=true,enableColumnReordering:H=true,enableRowActions:L=true,manualSorting:I=false,onSortChange:z,onColumnReorderChange:$,...P}){const{items:k,moveAfter:h,moveBefore:y}=useListData({initialItems:s}),[r,q]=useState({}),[x,E]=useState(null),[F,J]=useState({top:[],bottom:[]}),A=useCallback((e,t)=>{const n=r[e.id]?t.filter(({id:m})=>r[m]):[e],l=n[0];if(!l||l.index===0)return;const d=t[l.index-1]?.id;d&&y(d,n.map(({id:m})=>m));},[r,y]),N=useCallback((e,t)=>{const n=r[e.id]?t.filter(({id:m})=>r[m]):[e],l=n[n.length-1];if(!l||l.index===t.length-1)return;const d=t[l.index+1]?.id;d&&h(d,n.map(({id:m})=>m));},[r,h]),S=useMemo(()=>({id:"kebab",cell:({row:e})=>jsx(ge,{moveRowsUp:A,moveRowsDown:N,row:e,rows:_().rows})}),[A,N]),D=useMemo(()=>[{id:"numeral",cell:({row:e})=>e.getIsPinned()?jsx(Icon,{size:"small",children:jsx(Pin,{})}):jsx("span",{"data-testid":"numeral",children:e.index+1})},...a?[{id:"selection",header:({table:e})=>jsx(Checkbox,{isSelected:e.getIsAllRowsSelected(),isIndeterminate:e.getIsSomeRowsSelected(),onChange:e.toggleAllRowsSelected}),cell:({row:e})=>jsx(Checkbox,{isSelected:e.getIsSelected(),isIndeterminate:e.getIsSomeSelected(),onChange:e.toggleSelected})}]:[],...u==="left"?[S]:[],...w??[],...u==="right"?[S]:[]],[a,w,u,S]),Q=(e,t)=>{z?.(e,t);},V=e=>{$?.(e);},{getHeaderGroups:W,getTopRows:X,getCenterRows:Y,getBottomRows:Z,getRowModel:_,setColumnOrder:R}=useReactTable({data:k,columns:D,enableSorting:C,initialState:{columnOrder:D.map(({id:e})=>e??"")},state:{rowSelection:r,rowPinning:F},getRowId:(e,t)=>e.id?e.id.toString():t.toString(),enableRowSelection:true,enableRowPinning:true,manualSorting:I,onRowSelectionChange:q,onRowPinningChange:J,getCoreRowModel:getCoreRowModel(),getSortedRowModel:getSortedRowModel()}),j=useCallback(e=>{R(t=>{const i=[...t],n=e-1;return n<0?t:([i[e],i[n]]=[i[n],i[e]],i)});},[R]),ee=useCallback(e=>{R(t=>{const i=[...t],n=e+1;return n>=t.length?t:([i[e],i[n]]=[i[n],i[e]],i)});},[R]);return p?jsx("table",{...P,children:p}):jsx(TableContext.Provider,{value:{persistRowKebabMenu:f,persistHeaderKebabMenu:c,persistNumerals:G,enableSorting:C,enableColumnReordering:H,enableRowActions:L,columnSelection:x,setColumnSelection:E,moveColumnLeft:j,moveColumnRight:ee,manualSorting:I,handleSortChange:Q,handleColumnReordering:V},children:jsxs("table",{...P,children:[jsx(TableHeader,{headerGroups:W(),columnSelection:x}),jsx(TableBody,{rows:[...X(),...Y(),...Z()]})]})})}export{Ke as Table};//# sourceMappingURL=index.js.map
4
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/table/index.tsx"],"names":["moveRowsUp","ie","enableRowActions","useContext","TableContext","row","jsxs","Menu","Button","o","Kebab","se","menuItem","K","isPinned","M","u","jsx","rows","moveRowsDown","persistRowKebabMenu","enableSorting","data","dataProp","rowSelection","useState","columnSelection","rowsToMove","id","firstRowToMove","prevRowId","moveBefore","lastRowToMove","T","nextRowId","moveAfter","actionColumn","RowActionsMenu","columns","useMemo","Icon","D","showCheckbox","table","H","kebabPosition","getHeaderGroups","getTopRows","getBottomRows","useReactTable","col","index","setRowSelection","newColumnOrder","ee","newIndex","oe","oldIndex","order","setColumnOrder","children","rest","persistHeaderKebabMenu","O","TableBody","Table","TableCell","TableHeader","HeaderCell","TableRow"],"mappings":"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","file":"index.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n'use client';\n\nimport 'client-only';\nimport { Kebab, Pin } from '@accelint/icons';\nimport { useListData } from '@react-stately/data';\nimport {\n getCoreRowModel,\n getSortedRowModel,\n type Row,\n type RowSelectionState,\n useReactTable,\n} from '@tanstack/react-table';\nimport { useCallback, useContext, useMemo, useState } from 'react';\nimport { Button } from '../button';\nimport { Checkbox } from '../checkbox';\nimport { Icon } from '../icon';\nimport { Menu } from '../menu';\nimport { TableContext } from './context';\nimport { TableStyles } from './styles';\nimport { TableBody } from './table-body';\nimport { TableCell } from './table-cell';\nimport { TableHeader } from './table-header';\nimport { HeaderCell } from './table-header-cell';\nimport { TableRow } from './table-row';\nimport type { Key } from '@react-types/shared';\nimport type { TableProps } from './types';\n\nconst { menuItem, notPersistRowKebab } = TableStyles();\n\ntype RowActionsMenuProps<T> = {\n row: Row<T>;\n rows: Row<T>[];\n moveRowsDown: (row: Row<T>, rows: Row<T>[]) => void;\n moveRowsUp: (row: Row<T>, rows: Row<T>[]) => void;\n};\n\nfunction RowActionsMenu<T>({\n moveRowsDown,\n moveRowsUp,\n row,\n rows,\n}: RowActionsMenuProps<T>) {\n const { enableRowActions, persistRowKebabMenu } = useContext(TableContext);\n const isPinned = !!row.getIsPinned();\n\n return (\n enableRowActions && (\n <div className={persistRowKebabMenu ? '' : notPersistRowKebab()}>\n <Menu.Trigger>\n <Button variant='icon' aria-label='Menu'>\n <Icon>\n <Kebab />\n </Icon>\n </Button>\n <Menu>\n <Menu.Item\n classNames={{ item: menuItem() }}\n onAction={() => row.pin(isPinned ? false : 'top')}\n >\n {isPinned ? 'Unpin' : 'Pin'}\n </Menu.Item>\n <Menu.Separator />\n <Menu.Item\n classNames={{ item: menuItem() }}\n onAction={() => moveRowsUp(row, rows)}\n isDisabled={isPinned || row.index === 0}\n >\n Move Up\n </Menu.Item>\n <Menu.Item\n classNames={{ item: menuItem() }}\n onAction={() => moveRowsDown(row, rows)}\n isDisabled={isPinned || row.index === rows.length - 1}\n >\n Move Down\n </Menu.Item>\n </Menu>\n </Menu.Trigger>\n </div>\n )\n );\n}\n\nexport function Table<T extends { id: Key }>({\n children,\n columns: columnsProp,\n data: dataProp,\n showCheckbox,\n kebabPosition = 'right',\n persistRowKebabMenu = true,\n persistHeaderKebabMenu = true,\n persistNumerals = false,\n enableSorting = true,\n enableColumnOrdering: enableColumnReordering = true,\n enableRowActions = true,\n ...rest\n}: TableProps<T>) {\n const {\n items: data,\n moveAfter,\n moveBefore,\n } = useListData({\n initialItems: dataProp,\n });\n const [rowSelection, setRowSelection] = useState<RowSelectionState>({});\n const [columnSelection, setColumnSelection] = useState<string | null>(null);\n\n /**\n * moveUpSelectedRows moves the selected rows up in the table.\n * It finds the first selected row, determines its index,\n * and moves it before the previous row if it exists.\n */\n const moveRowsUp = useCallback(\n (row: Row<T>, rows: Row<T>[]) => {\n const isSelected = rowSelection[row.id];\n const rowsToMove = isSelected\n ? rows.filter(({ id }) => rowSelection[id])\n : [row];\n const firstRowToMove = rowsToMove[0];\n\n if (!firstRowToMove || firstRowToMove.index === 0) {\n return;\n }\n\n const prevRowId = rows[firstRowToMove.index - 1]?.id;\n\n if (!prevRowId) {\n return;\n }\n\n moveBefore(\n prevRowId,\n rowsToMove.map(({ id }) => id),\n );\n },\n [rowSelection, moveBefore],\n );\n\n /**\n * moveDownRows moves the selected or active rows down in the table.\n * It finds the last selected row, determines its index,\n * and moves it after the next row if it exists.\n */\n const moveRowsDown = useCallback(\n (row: Row<T>, rows: Row<T>[]) => {\n const isSelected = rowSelection[row.id];\n const rowsToMove = isSelected\n ? rows.filter(({ id }) => rowSelection[id])\n : [row];\n const lastRowToMove = rowsToMove[rowsToMove.length - 1];\n\n if (!lastRowToMove || lastRowToMove.index === rows.length - 1) {\n return;\n }\n\n const nextRowId = rows[lastRowToMove.index + 1]?.id;\n\n if (!nextRowId) {\n return;\n }\n\n moveAfter(\n nextRowId,\n rowsToMove.map(({ id }) => id),\n );\n },\n [rowSelection, moveAfter],\n );\n\n /**\n * actionColumn defines the actions available in the kebab menu for each row.\n * It includes options to move the row up or down in the table.\n */\n const actionColumn: NonNullable<typeof columnsProp>[number] = useMemo(\n () => ({\n id: 'kebab',\n cell: ({ row }) => (\n <RowActionsMenu\n moveRowsUp={moveRowsUp}\n moveRowsDown={moveRowsDown}\n row={row}\n rows={getRowModel().rows}\n />\n ),\n }),\n [moveRowsUp, moveRowsDown],\n );\n\n /**\n * columns defines the structure of the table.\n * It includes the action column and optionally a checkbox column.\n * The kebab menu position can be set to 'left' or 'right'.\n * If showCheckbox is true, a checkbox column is added.\n */\n const columns = useMemo<NonNullable<typeof columnsProp>>(\n () => [\n {\n id: 'numeral',\n cell: ({ row }) =>\n row.getIsPinned() ? (\n <Icon size='small'>\n <Pin />\n </Icon>\n ) : (\n <span data-testid='numeral'>{row.index + 1}</span>\n ),\n },\n ...(showCheckbox\n ? ([\n {\n id: 'selection',\n header: ({ table }) => (\n <Checkbox\n isSelected={table.getIsAllRowsSelected()}\n isIndeterminate={table.getIsSomeRowsSelected()}\n onChange={table.toggleAllRowsSelected}\n />\n ),\n cell: ({ row }) => (\n <Checkbox\n isSelected={row.getIsSelected()}\n isIndeterminate={row.getIsSomeSelected()}\n onChange={row.toggleSelected}\n />\n ),\n },\n ] satisfies NonNullable<typeof columnsProp>)\n : []),\n ...(kebabPosition === 'left' ? [actionColumn] : []),\n ...(columnsProp ?? []),\n ...(kebabPosition === 'right' ? [actionColumn] : []),\n ],\n [showCheckbox, columnsProp, kebabPosition, actionColumn],\n );\n\n const {\n getHeaderGroups,\n getTopRows,\n getCenterRows,\n getBottomRows,\n getRowModel,\n setColumnOrder,\n } = useReactTable<T>({\n data,\n columns,\n enableSorting,\n initialState: {\n // biome-ignore lint/style/noNonNullAssertion: <explanation>\n columnOrder: columns.map((col) => col.id!),\n },\n state: {\n rowSelection,\n },\n getRowId: (row, index) => {\n // Use the index as the row ID if no unique identifier is available\n return row.id ? row.id.toString() : index.toString();\n },\n enableRowSelection: true,\n onRowSelectionChange: setRowSelection,\n getCoreRowModel: getCoreRowModel<T>(),\n getSortedRowModel: getSortedRowModel<T>(),\n });\n\n const moveColumnLeft = useCallback(\n (oldIndex: number) => {\n setColumnOrder((order) => {\n const newColumnOrder = [...order];\n const newIndex = oldIndex - 1;\n\n if (newIndex < 0) {\n return order;\n }\n\n [newColumnOrder[oldIndex], newColumnOrder[newIndex]] = [\n newColumnOrder[newIndex] as string,\n newColumnOrder[oldIndex] as string,\n ];\n\n return newColumnOrder;\n });\n },\n [setColumnOrder],\n );\n\n const moveColumnRight = useCallback(\n (oldIndex: number) => {\n setColumnOrder((order) => {\n const newColumnOrder = [...order];\n const newIndex = oldIndex + 1;\n\n if (newIndex >= order.length) {\n return order;\n }\n\n [newColumnOrder[oldIndex], newColumnOrder[newIndex]] = [\n newColumnOrder[newIndex] as string,\n newColumnOrder[oldIndex] as string,\n ];\n\n return newColumnOrder;\n });\n },\n [setColumnOrder],\n );\n\n if (children) {\n return <table {...rest}>{children}</table>;\n }\n\n return (\n <TableContext.Provider\n value={{\n persistRowKebabMenu,\n persistHeaderKebabMenu,\n persistNumerals,\n enableSorting,\n enableColumnReordering,\n enableRowActions,\n columnSelection,\n setColumnSelection,\n moveColumnLeft,\n moveColumnRight,\n }}\n >\n <table {...rest}>\n <TableHeader\n headerGroups={getHeaderGroups()}\n columnSelection={columnSelection}\n />\n <TableBody\n rows={[...getTopRows(), ...getCenterRows(), ...getBottomRows()]}\n />\n </table>\n </TableContext.Provider>\n );\n}\n\nTable.displayName = 'Table';\nTable.Body = TableBody;\nTable.Cell = TableCell;\nTable.Header = TableHeader;\nTable.HeaderCell = HeaderCell;\nTable.Row = TableRow;\n"]}
1
+ {"version":3,"sources":["../../../src/components/table/index.tsx"],"names":["moveRowsUp","we","enableRowActions","useContext","TableContext","row","le","O","jsxs","MenuTrigger","jsx","o","M","ue","Icon","Kebab","Menu","MenuItem","U","isPinned","b","MenuSeparator","menuItem","rows","children","persistRowKebabMenu","enableSorting","enableColumnReordering","manualSorting","moveBefore","setRowSelection","useState","columnSelection","ne","rowsToMove","rowSelection","id","T","firstRowToMove","prevRowId","moveRowsDown","lastRowToMove","g","nextRowId","actionColumn","RowActionsMenu","columns","useMemo","B","showCheckbox","Checkbox","table","K","kebabPosition","handleSortChange","columnId","sortDirection","onSortChange","handleColumnReordering","index","onColumnReorderChange","getHeaderGroups","getTopRows","useReactTable","re","moveColumnLeft","newColumnOrder","newIndex","se","oldIndex","useCallback","setColumnOrder","order","rest","persistHeaderKebabMenu","getCenterRows","pe","getBottomRows","de"],"mappings":"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","file":"index.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n'use client';\n\nimport { Kebab, Pin } from '@accelint/icons';\nimport { useListData } from '@react-stately/data';\nimport {\n getCoreRowModel,\n getSortedRowModel,\n type Row,\n type RowPinningState,\n type RowSelectionState,\n useReactTable,\n} from '@tanstack/react-table';\nimport type { Key } from '@react-types/shared';\nimport 'client-only';\nimport { useCallback, useContext, useMemo, useState } from 'react';\nimport { Button } from '../button';\nimport { Checkbox } from '../checkbox';\nimport { Icon } from '../icon';\nimport { Menu } from '../menu';\nimport { MenuItem } from '../menu/item';\nimport { MenuSeparator } from '../menu/separator';\nimport { MenuTrigger } from '../menu/trigger';\nimport { TableBody } from './body';\nimport { TableContext } from './context';\nimport { TableHeader } from './header';\nimport { TableStyles } from './styles';\nimport type { TableProps } from './types';\n\nconst { menuItem, notPersistRowKebab } = TableStyles();\n\ntype RowActionsMenuProps<T> = {\n row: Row<T>;\n rows: Row<T>[];\n moveRowsDown: (row: Row<T>, rows: Row<T>[]) => void;\n moveRowsUp: (row: Row<T>, rows: Row<T>[]) => void;\n};\n\nfunction RowActionsMenu<T>({\n moveRowsDown,\n moveRowsUp,\n row,\n rows,\n}: RowActionsMenuProps<T>) {\n const { enableRowActions, persistRowKebabMenu } = useContext(TableContext);\n const isPinned = !!row.getIsPinned();\n\n return (\n enableRowActions && (\n <div className={persistRowKebabMenu ? '' : notPersistRowKebab()}>\n <MenuTrigger>\n <Button variant='icon' aria-label={`row ${row.index + 1} actions`}>\n <Icon>\n <Kebab />\n </Icon>\n </Button>\n <Menu>\n <MenuItem\n classNames={{ item: menuItem() }}\n onAction={() => row.pin(isPinned ? false : 'top')}\n >\n {isPinned ? 'Unpin' : 'Pin'}\n </MenuItem>\n <MenuSeparator />\n <MenuItem\n classNames={{ item: menuItem() }}\n onAction={() => moveRowsUp(row, rows)}\n isDisabled={isPinned || row.index === 0}\n >\n Move Up\n </MenuItem>\n <MenuItem\n classNames={{ item: menuItem() }}\n onAction={() => moveRowsDown(row, rows)}\n isDisabled={isPinned || row.index === rows.length - 1}\n >\n Move Down\n </MenuItem>\n </Menu>\n </MenuTrigger>\n </div>\n )\n );\n}\n\n/**\n * Table - Configurable data table with sorting and row actions\n *\n * Standardizes table behavior (sorting, selection, row actions) and can be\n * used with column definitions from TanStack React Table.\n *\n * @example\n * <Table columns={columns} data={data} />\n */\nexport function Table<T extends { id: Key }>({\n children,\n columns: columnsProp,\n data: dataProp,\n showCheckbox,\n kebabPosition = 'right',\n persistRowKebabMenu = true,\n persistHeaderKebabMenu = true,\n persistNumerals = false,\n enableSorting = true,\n enableColumnReordering = true,\n enableRowActions = true,\n manualSorting = false,\n onSortChange,\n onColumnReorderChange,\n ...rest\n}: TableProps<T>) {\n const {\n items: data,\n moveAfter,\n moveBefore,\n } = useListData({\n initialItems: dataProp,\n });\n const [rowSelection, setRowSelection] = useState<RowSelectionState>({});\n const [columnSelection, setColumnSelection] = useState<string | null>(null);\n const [rowPinning, setRowPinning] = useState<RowPinningState>({\n top: [],\n bottom: [],\n });\n /**\n * moveUpSelectedRows moves the selected rows up in the table.\n * It finds the first selected row, determines its index,\n * and moves it before the previous row if it exists.\n */\n const moveRowsUp = useCallback(\n (row: Row<T>, rows: Row<T>[]) => {\n const isSelected = rowSelection[row.id];\n const rowsToMove = isSelected\n ? rows.filter(({ id }) => rowSelection[id])\n : [row];\n const firstRowToMove = rowsToMove[0];\n\n if (!firstRowToMove || firstRowToMove.index === 0) {\n return;\n }\n\n const prevRowId = rows[firstRowToMove.index - 1]?.id;\n\n if (!prevRowId) {\n return;\n }\n\n moveBefore(\n prevRowId,\n rowsToMove.map(({ id }) => id),\n );\n },\n [rowSelection, moveBefore],\n );\n\n /**\n * moveDownRows moves the selected or active rows down in the table.\n * It finds the last selected row, determines its index,\n * and moves it after the next row if it exists.\n */\n const moveRowsDown = useCallback(\n (row: Row<T>, rows: Row<T>[]) => {\n const isSelected = rowSelection[row.id];\n const rowsToMove = isSelected\n ? rows.filter(({ id }) => rowSelection[id])\n : [row];\n const lastRowToMove = rowsToMove[rowsToMove.length - 1];\n\n if (!lastRowToMove || lastRowToMove.index === rows.length - 1) {\n return;\n }\n\n const nextRowId = rows[lastRowToMove.index + 1]?.id;\n\n if (!nextRowId) {\n return;\n }\n\n moveAfter(\n nextRowId,\n rowsToMove.map(({ id }) => id),\n );\n },\n [rowSelection, moveAfter],\n );\n\n /**\n * actionColumn defines the actions available in the kebab menu for each row.\n * It includes options to move the row up or down in the table.\n */\n // biome-ignore lint/correctness/useExhaustiveDependencies: can of worms to fix ticket added\n const actionColumn: NonNullable<typeof columnsProp>[number] = useMemo(\n () => ({\n id: 'kebab',\n cell: ({ row }) => (\n <RowActionsMenu\n moveRowsUp={moveRowsUp}\n moveRowsDown={moveRowsDown}\n row={row}\n rows={getRowModel().rows}\n />\n ),\n }),\n [moveRowsUp, moveRowsDown],\n );\n\n /**\n * columns defines the structure of the table.\n * It includes the action column and optionally a checkbox column.\n * The kebab menu position can be set to 'left' or 'right'.\n * If showCheckbox is true, a checkbox column is added.\n */\n const columns = useMemo<NonNullable<typeof columnsProp>>(\n () => [\n {\n id: 'numeral',\n cell: ({ row }) =>\n row.getIsPinned() ? (\n <Icon size='small'>\n <Pin />\n </Icon>\n ) : (\n <span data-testid='numeral'>{row.index + 1}</span>\n ),\n },\n ...(showCheckbox\n ? ([\n {\n id: 'selection',\n header: ({ table }) => (\n <Checkbox\n isSelected={table.getIsAllRowsSelected()}\n isIndeterminate={table.getIsSomeRowsSelected()}\n onChange={table.toggleAllRowsSelected}\n />\n ),\n cell: ({ row }) => (\n <Checkbox\n isSelected={row.getIsSelected()}\n isIndeterminate={row.getIsSomeSelected()}\n onChange={row.toggleSelected}\n />\n ),\n },\n ] satisfies NonNullable<typeof columnsProp>)\n : []),\n ...(kebabPosition === 'left' ? [actionColumn] : []),\n ...(columnsProp ?? []),\n ...(kebabPosition === 'right' ? [actionColumn] : []),\n ],\n [showCheckbox, columnsProp, kebabPosition, actionColumn],\n );\n\n const handleSortChange = (\n columnId: string,\n sortDirection: 'asc' | 'desc' | null,\n ) => {\n onSortChange?.(columnId, sortDirection);\n };\n\n const handleColumnReordering = (index: number) => {\n onColumnReorderChange?.(index);\n };\n\n const {\n getHeaderGroups,\n getTopRows,\n getCenterRows,\n getBottomRows,\n getRowModel,\n setColumnOrder,\n } = useReactTable<T>({\n data,\n columns,\n enableSorting,\n initialState: {\n columnOrder: columns.map(({ id }) => id ?? ''),\n },\n state: {\n rowSelection,\n rowPinning,\n },\n getRowId: (row, index) => {\n // Use the index as the row ID if no unique identifier is available\n return row.id ? row.id.toString() : index.toString();\n },\n enableRowSelection: true,\n enableRowPinning: true,\n manualSorting: manualSorting,\n onRowSelectionChange: setRowSelection,\n onRowPinningChange: setRowPinning,\n getCoreRowModel: getCoreRowModel<T>(),\n getSortedRowModel: getSortedRowModel<T>(),\n });\n\n const moveColumnLeft = useCallback(\n (oldIndex: number) => {\n setColumnOrder((order) => {\n const newColumnOrder = [...order];\n const newIndex = oldIndex - 1;\n\n if (newIndex < 0) {\n return order;\n }\n\n [newColumnOrder[oldIndex], newColumnOrder[newIndex]] = [\n newColumnOrder[newIndex] as string,\n newColumnOrder[oldIndex] as string,\n ];\n\n return newColumnOrder;\n });\n },\n [setColumnOrder],\n );\n\n const moveColumnRight = useCallback(\n (oldIndex: number) => {\n setColumnOrder((order) => {\n const newColumnOrder = [...order];\n const newIndex = oldIndex + 1;\n\n if (newIndex >= order.length) {\n return order;\n }\n\n [newColumnOrder[oldIndex], newColumnOrder[newIndex]] = [\n newColumnOrder[newIndex] as string,\n newColumnOrder[oldIndex] as string,\n ];\n\n return newColumnOrder;\n });\n },\n [setColumnOrder],\n );\n\n if (children) {\n return <table {...rest}>{children}</table>;\n }\n\n return (\n <TableContext.Provider\n value={{\n persistRowKebabMenu,\n persistHeaderKebabMenu,\n persistNumerals,\n enableSorting,\n enableColumnReordering,\n enableRowActions,\n columnSelection,\n setColumnSelection,\n moveColumnLeft,\n moveColumnRight,\n manualSorting,\n handleSortChange,\n handleColumnReordering,\n }}\n >\n <table {...rest}>\n <TableHeader\n headerGroups={getHeaderGroups()}\n columnSelection={columnSelection}\n />\n <TableBody\n rows={[...getTopRows(), ...getCenterRows(), ...getBottomRows()]}\n />\n </table>\n </TableContext.Provider>\n );\n}\n"]}
@@ -0,0 +1,2 @@
1
+ import {jsx}from'react/jsx-runtime';import {TableCell}from'./cell.js';import {TableRowStyles}from'./styles.js';function i({ref:o,children:a,className:s,row:e,...p}){const r=e?.getAllCells();return jsx("tr",{...p,ref:o,className:TableRowStyles({className:s}),"data-pinned":e?.getIsPinned()||null,"data-selected":e?.getIsSelected()||null,children:a||r?.map(l=>jsx(TableCell,{cell:l},l.id))})}export{i as TableRow};//# sourceMappingURL=row.js.map
2
+ //# sourceMappingURL=row.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/table/row.tsx"],"names":["ref","row","cells","jsx","t","cell"],"mappings":"+GAiBO,SACLA,CACA,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,QACA,CAAA,CAAA,CAAA,SACAC,CACA,CAAA,CAAA,GACF,CAAqB,CACnB,CAAA,GAAA,CAAA,CAAMC,CAAAA,CAAQD,MAAK,CAAA,CAAA,CAAA,EAAA,WAEnB,EACEE,QACGC,GAAA,CAAA,IACD,CAAA,CAAA,GACA,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,mCACA,CAAA,CAAA,CAAA,CAAA,CAAA,aAAkB,CAAA,CAAA,EAAA,WAAiB,wBACf,CAAA,CAAA,EAAA,aAAmB,EAEtC,EAAA,IAAA,CAAA,QACQ,CAAA,CAAA,KAAcD,GAAC,CAAwB,CAAA,EAAAC,GAAA,CAAMC,SAAAA,CAAAA,CAAfA,IAAqB,CAAE,EAChE,CAEJ,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA","file":"row.js","sourcesContent":["// __private-exports\n/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { TableCell } from './cell';\nimport { TableRowStyles } from './styles';\nimport type { TableRowProps } from './types';\n\nexport function TableRow<T>({\n ref,\n children,\n className,\n row,\n ...rest\n}: TableRowProps<T>) {\n const cells = row?.getAllCells();\n\n return (\n <tr\n {...rest}\n ref={ref}\n className={TableRowStyles({ className })}\n data-pinned={row?.getIsPinned() || null}\n data-selected={row?.getIsSelected() || null}\n >\n {children ||\n cells?.map((cell) => <TableCell key={cell.id} cell={cell} />)}\n </tr>\n );\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  import { Key } from '@react-types/shared';
2
- import { ColumnDef, Row, Cell, HeaderGroup, Header } from '@tanstack/react-table';
2
+ import { ColumnDef, Row, Cell, Header, HeaderGroup } from '@tanstack/react-table';
3
3
  import { Dispatch, SetStateAction, ComponentPropsWithRef, PropsWithChildren } from 'react';
4
4
  import { VariantProps } from 'tailwind-variants';
5
5
  import { TableCellStyles, TableHeaderCellStyles } from './styles.js';
@@ -57,13 +57,33 @@ type ExtendedTableProps<T extends {
57
57
  * If true, the table will support column ordering.
58
58
  * If false, the table will not support column ordering.
59
59
  */
60
- enableColumnOrdering?: boolean;
60
+ enableColumnReordering?: boolean;
61
61
  /**
62
62
  * Whether to enable actions for rows.
63
63
  * If true, the table will support ability to take action on row.
64
64
  * If false, the table will not support ability to take action on row.
65
65
  */
66
66
  enableRowActions?: boolean;
67
+ /**
68
+ * When manualSorting is set to true, the table will assume that the data that you provide is already sorted, and will not apply any sorting to it.
69
+ * This is used for server-side sorting.
70
+ * If true, getSortedRowModel() is not needed.
71
+ ***/
72
+ manualSorting?: boolean;
73
+ /**
74
+ * Callback function triggered when the sorting state changes.
75
+ *
76
+ * @param columnId - The ID of the column whose sort direction changed.
77
+ * @param sortDirection - The new sort direction for the column:
78
+ * `'asc'` for ascending, `'desc'` for descending, or `null` to clear sorting.
79
+ */
80
+ onSortChange?: (columnId: string, sortDirection: 'asc' | 'desc' | null) => void;
81
+ /**
82
+ * Callback function triggered when a column is reordered via drag-and-drop or other mechanism.
83
+ *
84
+ * @param index - The new index position of the column after reordering.
85
+ */
86
+ onColumnReorderChange?: (index: number) => void;
67
87
  };
68
88
  /**
69
89
  * Props for the Table component.
@@ -180,6 +200,9 @@ type TableContextValue = {
180
200
  moveColumnLeft: (index: number) => void;
181
201
  moveColumnRight: (index: number) => void;
182
202
  setColumnSelection: Dispatch<SetStateAction<string | null>>;
203
+ manualSorting: boolean;
204
+ handleSortChange?: (columnId: string, direction: 'asc' | 'desc' | null) => void;
205
+ handleColumnReordering?: (index: number) => void;
183
206
  };
184
207
 
185
208
  export type { TableBodyProps, TableCellProps, TableContextValue, TableHeaderCellProps, TableHeaderProps, TableProps, TableRowProps };
@@ -0,0 +1,20 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import * as react from 'react';
3
+ import { ContextValue } from 'react-aria-components';
4
+ import { ProviderProps } from '../../lib/types.js';
5
+ import { TabsProps } from './types.js';
6
+
7
+ /**
8
+ * Context for Tabs component
9
+ *
10
+ * Provides context for Tabs component to share props
11
+ */
12
+ declare const TabsContext: react.Context<ContextValue<TabsProps, HTMLDivElement>>;
13
+ /**
14
+ * Provider for Tabs component
15
+ *
16
+ * Allows setting default props for all Tabs components within
17
+ */
18
+ declare function TabsProvider({ children, ...props }: ProviderProps<TabsProps>): react_jsx_runtime.JSX.Element;
19
+
20
+ export { TabsContext, TabsProvider };
@@ -0,0 +1,4 @@
1
+ 'use client';
2
+
3
+ import {jsx}from'react/jsx-runtime';import'client-only';import {createContext}from'react';const e=createContext(null);function n({children:o,...r}){return jsx(e.Provider,{value:r,children:o})}export{e as TabsContext,n as TabsProvider};//# sourceMappingURL=context.js.map
4
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/tabs/context.tsx"],"names":["TabsContext","createContext","TabsProvider","children","props","jsx"],"mappings":"0FAyBO,MAAMA,CAAAA,CACXC,aAAAA,CAAuD,IAAI,EAOtD,SAASC,CAAAA,CAAa,CAAE,QAAA,CAAAC,CAAAA,CAAU,GAAGC,CAAM,CAAA,CAA6B,CAC7E,OAAOC,GAAAA,CAACL,CAAAA,CAAY,QAAA,CAAZ,CAAqB,KAAA,CAAOI,CAAAA,CAAQ,QAAA,CAAAD,EAAS,CACvD","file":"context.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n'use client';\n\nimport 'client-only';\nimport { createContext } from 'react';\nimport type { ContextValue } from 'react-aria-components';\nimport type { ProviderProps } from '@/lib/types';\nimport type { TabsProps } from './types';\n\n/**\n * Context for Tabs component\n *\n * Provides context for Tabs component to share props\n */\nexport const TabsContext =\n createContext<ContextValue<TabsProps, HTMLDivElement>>(null);\n\n/**\n * Provider for Tabs component\n *\n * Allows setting default props for all Tabs components within\n */\nexport function TabsProvider({ children, ...props }: ProviderProps<TabsProps>) {\n return <TabsContext.Provider value={props}>{children}</TabsContext.Provider>;\n}\n"]}