@chassis-ui/react 0.2.0 → 0.3.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 (759) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +56 -23
  3. package/dist/accordion.js +1 -1
  4. package/dist/alert.d.ts +2 -0
  5. package/dist/alert.js +1 -0
  6. package/dist/autocomplete.d.ts +1 -1
  7. package/dist/autocomplete.js +1 -1
  8. package/dist/avatar.js +1 -1
  9. package/dist/badge.js +1 -1
  10. package/dist/breadcrumb.js +1 -1
  11. package/dist/button-group.d.ts +1 -1
  12. package/dist/button-group.js +1 -1
  13. package/dist/button.js +1 -1
  14. package/dist/calendar.d.ts +1 -1
  15. package/dist/calendar.js +1 -1
  16. package/dist/card.d.ts +1 -1
  17. package/dist/card.js +1 -1
  18. package/dist/carousel.d.ts +1 -1
  19. package/dist/carousel.js +1 -1
  20. package/dist/checkbox.d.ts +2 -2
  21. package/dist/checkbox.js +1 -1
  22. package/dist/chip-input.js +1 -1
  23. package/dist/chip.js +1 -1
  24. package/dist/chunks/Button-BoymWE-L.js +2 -0
  25. package/dist/chunks/Button-BoymWE-L.js.map +1 -0
  26. package/dist/chunks/Button-Cptd4Yk7.d.ts +2 -1
  27. package/dist/chunks/Chip-DCaWaBqo.js +2 -0
  28. package/dist/chunks/Chip-DCaWaBqo.js.map +1 -0
  29. package/dist/chunks/CloseButton-DPgQztE0.js +2 -0
  30. package/dist/chunks/CloseButton-DPgQztE0.js.map +1 -0
  31. package/dist/chunks/ComboboxItem-C9TpoJOI.d.ts +2 -1
  32. package/dist/chunks/ComboboxListBox-Cm3L1ULl.js +2 -0
  33. package/dist/chunks/ComboboxListBox-Cm3L1ULl.js.map +1 -0
  34. package/dist/chunks/DateSegment-2agXAd0f.js +2 -0
  35. package/dist/chunks/DateSegment-2agXAd0f.js.map +1 -0
  36. package/dist/chunks/{FormHelp-Be2PQL0y.js → FormHelp-AE6_iSLJ.js} +2 -1
  37. package/dist/chunks/FormHelp-AE6_iSLJ.js.map +1 -0
  38. package/dist/chunks/FormLabel-CYcQiFUI.js +2 -1
  39. package/dist/chunks/FormLabel-CYcQiFUI.js.map +1 -0
  40. package/dist/chunks/Icon-CioraWLF.d.ts +2 -1
  41. package/dist/chunks/Icon-DLB1f88W.js +2 -0
  42. package/dist/chunks/Icon-DLB1f88W.js.map +1 -0
  43. package/dist/chunks/Link-CZsWCnQb.js +2 -0
  44. package/dist/chunks/Link-CZsWCnQb.js.map +1 -0
  45. package/dist/chunks/{Link-B0Y1xgYi.d.ts → Link-nrd0JWlO.d.ts} +7 -5
  46. package/dist/chunks/Menu-CSBg2Zmc.js +2 -0
  47. package/dist/chunks/Menu-CSBg2Zmc.js.map +1 -0
  48. package/dist/chunks/Menu-QeYOzrUL.d.ts +95 -0
  49. package/dist/chunks/MenuItemDef-D0VDtYIQ.d.ts +2 -1
  50. package/dist/chunks/MenuToggle-BdQtF7FV.js +2 -0
  51. package/dist/chunks/MenuToggle-BdQtF7FV.js.map +1 -0
  52. package/dist/chunks/Portal-CgeR1WXV.js +2 -0
  53. package/dist/chunks/Portal-CgeR1WXV.js.map +1 -0
  54. package/dist/chunks/RangeCalendar-BJl-j4W2.js +2 -0
  55. package/dist/chunks/RangeCalendar-BJl-j4W2.js.map +1 -0
  56. package/dist/chunks/VisuallyHidden-C2dM7HhC.js +2 -0
  57. package/dist/chunks/VisuallyHidden-C2dM7HhC.js.map +1 -0
  58. package/dist/chunks/accordion-B8UWyvQB.js +2 -0
  59. package/dist/chunks/accordion-B8UWyvQB.js.map +1 -0
  60. package/dist/chunks/alert-BXI-_qlt.js +2 -0
  61. package/dist/chunks/alert-BXI-_qlt.js.map +1 -0
  62. package/dist/chunks/autocomplete-Baf9VSHN.js +2 -0
  63. package/dist/chunks/autocomplete-Baf9VSHN.js.map +1 -0
  64. package/dist/chunks/avatar-S3dGy6Qc.js +2 -0
  65. package/dist/chunks/avatar-S3dGy6Qc.js.map +1 -0
  66. package/dist/chunks/{badge-Bj8mf8lu.js → badge-D2oztCvs.js} +2 -1
  67. package/dist/chunks/badge-D2oztCvs.js.map +1 -0
  68. package/dist/chunks/{breadcrumb-DDxnx_iS.js → breadcrumb-s6J9itez.js} +2 -1
  69. package/dist/chunks/breadcrumb-s6J9itez.js.map +1 -0
  70. package/dist/chunks/breakpoints-CJ-498B7.d.ts +7 -0
  71. package/dist/chunks/breakpoints-o_2Ev7ir.js +2 -1
  72. package/dist/chunks/breakpoints-o_2Ev7ir.js.map +1 -0
  73. package/dist/chunks/button-group-BGppPrIv.js +2 -0
  74. package/dist/chunks/button-group-BGppPrIv.js.map +1 -0
  75. package/dist/chunks/{card-DfF2K_5p.js → card-YXn3bj_d.js} +2 -1
  76. package/dist/chunks/card-YXn3bj_d.js.map +1 -0
  77. package/dist/chunks/carousel-fTVPqnSV.js +2 -0
  78. package/dist/chunks/carousel-fTVPqnSV.js.map +1 -0
  79. package/dist/chunks/checkbox-ChACalAw.js +2 -0
  80. package/dist/chunks/checkbox-ChACalAw.js.map +1 -0
  81. package/dist/chunks/chip-input-BpVDRERg.js +2 -0
  82. package/dist/chunks/chip-input-BpVDRERg.js.map +1 -0
  83. package/dist/chunks/collapse--Go2Y73B.js +2 -0
  84. package/dist/chunks/collapse--Go2Y73B.js.map +1 -0
  85. package/dist/chunks/{color-input-CyRaLR_G.js → color-input-Bwl5ef5B.js} +2 -1
  86. package/dist/chunks/color-input-Bwl5ef5B.js.map +1 -0
  87. package/dist/chunks/combobox-Bp1tIaiW.js +2 -0
  88. package/dist/chunks/combobox-Bp1tIaiW.js.map +1 -0
  89. package/dist/chunks/context-menu-B4a0tS-h.js +2 -0
  90. package/dist/chunks/context-menu-B4a0tS-h.js.map +1 -0
  91. package/dist/chunks/datagrid-CH3Cy-q7.js +3 -0
  92. package/dist/chunks/datagrid-CH3Cy-q7.js.map +1 -0
  93. package/dist/chunks/dateRangePresets-R1FtA1zp.d.ts +2 -1
  94. package/dist/chunks/datepicker-bOiM_zhJ.js +2 -0
  95. package/dist/chunks/datepicker-bOiM_zhJ.js.map +1 -0
  96. package/dist/chunks/dialogTransition-i9vw0i2Z.js +2 -1
  97. package/dist/chunks/dialogTransition-i9vw0i2Z.js.map +1 -0
  98. package/dist/chunks/direction-LN6uwsK5.js +2 -0
  99. package/dist/chunks/direction-LN6uwsK5.js.map +1 -0
  100. package/dist/chunks/divider-CjbF4OfA.js +2 -0
  101. package/dist/chunks/divider-CjbF4OfA.js.map +1 -0
  102. package/dist/chunks/drawer-C7Tz4XU_.js +2 -0
  103. package/dist/chunks/drawer-C7Tz4XU_.js.map +1 -0
  104. package/dist/chunks/{file-input-RRqZSzjH.js → file-input-CDM6qrmV.js} +2 -1
  105. package/dist/chunks/file-input-CDM6qrmV.js.map +1 -0
  106. package/dist/chunks/{flex-BTvpgaRv.js → flex-CmlJbKVj.js} +2 -1
  107. package/dist/chunks/flex-CmlJbKVj.js.map +1 -0
  108. package/dist/chunks/floating-input-DmSZZc27.js +2 -0
  109. package/dist/chunks/floating-input-DmSZZc27.js.map +1 -0
  110. package/dist/chunks/focus-ring-SR_LwaN7.js +2 -1
  111. package/dist/chunks/focus-ring-SR_LwaN7.js.map +1 -0
  112. package/dist/chunks/focusRedirect-BrvK3U_o.js +2 -1
  113. package/dist/chunks/focusRedirect-BrvK3U_o.js.map +1 -0
  114. package/dist/chunks/form-GpdAyWWi.js +2 -1
  115. package/dist/chunks/form-GpdAyWWi.js.map +1 -0
  116. package/dist/chunks/form-field-CNPGTMiW.js +2 -0
  117. package/dist/chunks/form-field-CNPGTMiW.js.map +1 -0
  118. package/dist/chunks/grid-DK_vxz-4.js +2 -0
  119. package/dist/chunks/grid-DK_vxz-4.js.map +1 -0
  120. package/dist/chunks/{icon-mxYpL5nL.js → icon-BQsT6YtE.js} +2 -1
  121. package/dist/chunks/icon-BQsT6YtE.js.map +1 -0
  122. package/dist/chunks/{iconConfig-Bu6Pt9o3.d.ts → iconConfig-C6gbYhsD.d.ts} +5 -3
  123. package/dist/chunks/iconSlot-BNu2MrFI.js +2 -0
  124. package/dist/chunks/iconSlot-BNu2MrFI.js.map +1 -0
  125. package/dist/chunks/{index-BO_1MN66.d.ts → index-4cKG9KWB.d.ts} +3 -5
  126. package/dist/chunks/index-6uob77s9.d.ts +2 -1
  127. package/dist/chunks/{index-tOodmT36.d.ts → index-91YA-jkp.d.ts} +4 -6
  128. package/dist/chunks/index-9rQeMqVI.d.ts +42 -0
  129. package/dist/chunks/index-B0-8n-Gs.d.ts +2 -1
  130. package/dist/chunks/index-B2K-O9kl.d.ts +59 -0
  131. package/dist/chunks/index-B8uaSJA9.d.ts +2 -1
  132. package/dist/chunks/index-BA-raEMm.d.ts +2 -1
  133. package/dist/chunks/{index-C61tPIJ-.d.ts → index-BAsbRx5n.d.ts} +6 -2
  134. package/dist/chunks/index-BF3OWUVc.d.ts +66 -0
  135. package/dist/chunks/{index-DB_ToPdz.d.ts → index-BNf0jIIL.d.ts} +12 -1
  136. package/dist/chunks/index-BO9jLOIb.d.ts +2 -1
  137. package/dist/chunks/index-BTTeKpiE.d.ts +2 -1
  138. package/dist/chunks/index-BVGGIaPX.d.ts +2 -1
  139. package/dist/chunks/{index-qgZ5VGmc.d.ts → index-B_UzbGOa.d.ts} +20 -2
  140. package/dist/chunks/index-Bi8FFadV.d.ts +2 -1
  141. package/dist/chunks/index-Bkj17NEQ.d.ts +2 -1
  142. package/dist/chunks/{index-BKMW0rkw.d.ts → index-Bm2NpgND.d.ts} +4 -2
  143. package/dist/chunks/{index-XjLvaH4G.d.ts → index-BnR7wjax.d.ts} +6 -5
  144. package/dist/chunks/{index--0_IpTDT.d.ts → index-BxROljJI.d.ts} +3 -2
  145. package/dist/chunks/index-Bz8MDq0H.d.ts +85 -0
  146. package/dist/chunks/{index-Cf2n0l0U.d.ts → index-C4Dks__B.d.ts} +3 -2
  147. package/dist/chunks/index-CCXJXToc.d.ts +2 -1
  148. package/dist/chunks/{index-COsYSDrz.d.ts → index-CFnQubsV.d.ts} +17 -3
  149. package/dist/chunks/{index-DPV62IdF.d.ts → index-CJXKl97l.d.ts} +11 -9
  150. package/dist/chunks/index-CJzKu7QI.d.ts +2 -1
  151. package/dist/chunks/{index-ClT3E_hv.d.ts → index-CKx1KHED.d.ts} +4 -3
  152. package/dist/chunks/index-COsIPd8L.d.ts +2 -1
  153. package/dist/chunks/index-CRfm7W6C.d.ts +2 -1
  154. package/dist/chunks/{index-dh3TKanY.d.ts → index-CTpwB1yR.d.ts} +3 -2
  155. package/dist/chunks/index-CVUMS0x7.d.ts +2 -1
  156. package/dist/chunks/{index-BlgkO3dn.d.ts → index-CYgBmZ8w.d.ts} +24 -33
  157. package/dist/chunks/{index-Dum6Y9XR.d.ts → index-Cc4SSslb.d.ts} +20 -2
  158. package/dist/chunks/index-CftERHnE.d.ts +2 -1
  159. package/dist/chunks/{index-CaQ1JY5D.d.ts → index-Ci7AEgEc.d.ts} +4 -6
  160. package/dist/chunks/{index-BxTlIaZu.d.ts → index-CqZ68Z8R.d.ts} +125 -11
  161. package/dist/chunks/{index-D2VVO8rx.d.ts → index-CsARGAzD.d.ts} +3 -2
  162. package/dist/chunks/index-CsMIgBsd.d.ts +2 -1
  163. package/dist/chunks/index-D9PZHY_I.d.ts +2 -1
  164. package/dist/chunks/index-DAoPg59I.d.ts +2 -1
  165. package/dist/chunks/index-DHGgezXU.d.ts +2 -1
  166. package/dist/chunks/index-DHOG_rjE.d.ts +121 -0
  167. package/dist/chunks/index-DJfga0Ce.d.ts +57 -0
  168. package/dist/chunks/{index-BTDgfLxK.d.ts → index-DJr_ZK4b.d.ts} +21 -5
  169. package/dist/chunks/index-DMbdEm__.d.ts +119 -0
  170. package/dist/chunks/{index-DJJocp_q.d.ts → index-DXjbI7Yv.d.ts} +3 -2
  171. package/dist/chunks/index-DaHQdNul.d.ts +182 -0
  172. package/dist/chunks/index-Dcc_W6Kv.d.ts +2 -1
  173. package/dist/chunks/{index-nklPDKlC.d.ts → index-DceCODH9.d.ts} +3 -2
  174. package/dist/chunks/index-Ddd7iWfm.d.ts +32 -0
  175. package/dist/chunks/index-Dfg4Ftb8.d.ts +2 -1
  176. package/dist/chunks/index-Dfy1YW5j.d.ts +2 -1
  177. package/dist/chunks/index-DgHvXzVh.d.ts +208 -0
  178. package/dist/chunks/index-Dh5CaHTP.d.ts +2 -1
  179. package/dist/chunks/{index-8PhBSbNQ.d.ts → index-DjXRq-n3.d.ts} +15 -10
  180. package/dist/chunks/{index-JllMXhVx.d.ts → index-DjrEvKd-.d.ts} +21 -4
  181. package/dist/chunks/index-DtbUXxjz.d.ts +2 -1
  182. package/dist/chunks/index-Du9fBqkT.d.ts +56 -0
  183. package/dist/chunks/index-FKh7iFQE.d.ts +95 -0
  184. package/dist/chunks/index-HrKN6s8z.d.ts +2 -1
  185. package/dist/chunks/{index-DR8sYtvd.d.ts → index-I-H3VJ-L.d.ts} +20 -87
  186. package/dist/chunks/{index-DEb9zXlC.d.ts → index-RHJhkSY-.d.ts} +79 -16
  187. package/dist/chunks/{index-Ctuk1xBU.d.ts → index-e7SJkI_m.d.ts} +9 -6
  188. package/dist/chunks/index-g74gO0pc.d.ts +36 -0
  189. package/dist/chunks/{index-DKma0jQw.d.ts → index-qMq_-GY2.d.ts} +3 -2
  190. package/dist/chunks/index-t_x6jj7l.d.ts +2 -1
  191. package/dist/chunks/{input-adorn-C_EHML68.js → input-adorn-DwdX-jxA.js} +2 -1
  192. package/dist/chunks/input-adorn-DwdX-jxA.js.map +1 -0
  193. package/dist/chunks/{input-group-iI7azfvE.js → input-group-Cuiuf4Dl.js} +2 -1
  194. package/dist/chunks/input-group-Cuiuf4Dl.js.map +1 -0
  195. package/dist/chunks/lazyElement-tfMG21pZ.js +2 -0
  196. package/dist/chunks/lazyElement-tfMG21pZ.js.map +1 -0
  197. package/dist/chunks/list-BQCkwWjF.js +2 -0
  198. package/dist/chunks/list-BQCkwWjF.js.map +1 -0
  199. package/dist/chunks/menu-98EAD9nj.js +2 -0
  200. package/dist/chunks/menu-98EAD9nj.js.map +1 -0
  201. package/dist/chunks/modal-bgDR29Jh.js +2 -0
  202. package/dist/chunks/modal-bgDR29Jh.js.map +1 -0
  203. package/dist/chunks/nav-TiZuTHC6.js +2 -0
  204. package/dist/chunks/nav-TiZuTHC6.js.map +1 -0
  205. package/dist/chunks/nav-overflow-Ay5mM5Gc.js +2 -0
  206. package/dist/chunks/nav-overflow-Ay5mM5Gc.js.map +1 -0
  207. package/dist/chunks/navOverflow-B5krZe6D.js +2 -0
  208. package/dist/chunks/navOverflow-B5krZe6D.js.map +1 -0
  209. package/dist/chunks/navVariant-CnD21GBS.d.ts +5 -0
  210. package/dist/chunks/navVariant-DeGTk9B7.js +2 -0
  211. package/dist/chunks/navVariant-DeGTk9B7.js.map +1 -0
  212. package/dist/chunks/navbar-DxIwt0sc.js +2 -0
  213. package/dist/chunks/navbar-DxIwt0sc.js.map +1 -0
  214. package/dist/chunks/notification-Ds24wnPq.js +2 -0
  215. package/dist/chunks/notification-Ds24wnPq.js.map +1 -0
  216. package/dist/chunks/number-field-IBIX2IWH.js +2 -0
  217. package/dist/chunks/number-field-IBIX2IWH.js.map +1 -0
  218. package/dist/chunks/otp-input-ws393uPB.js +2 -0
  219. package/dist/chunks/otp-input-ws393uPB.js.map +1 -0
  220. package/dist/chunks/overlayPlacement-BtS90IVf.js +2 -1
  221. package/dist/chunks/overlayPlacement-BtS90IVf.js.map +1 -0
  222. package/dist/chunks/{overlayPlacement-B7843a-Q.d.ts → overlayPlacement-CIsLpycT.d.ts} +3 -2
  223. package/dist/chunks/pagination-BkOquk-x.js +2 -0
  224. package/dist/chunks/pagination-BkOquk-x.js.map +1 -0
  225. package/dist/chunks/password-strength-DDK8pHRq.js +2 -0
  226. package/dist/chunks/password-strength-DDK8pHRq.js.map +1 -0
  227. package/dist/chunks/placeholder-BCr83sUn.js +2 -0
  228. package/dist/chunks/placeholder-BCr83sUn.js.map +1 -0
  229. package/dist/chunks/polymorphic-BhGNZQja.js +2 -0
  230. package/dist/chunks/polymorphic-BhGNZQja.js.map +1 -0
  231. package/dist/chunks/polymorphic-CVHbTHSN.d.ts +2 -1
  232. package/dist/chunks/popover-Bdg8D4sm.js +2 -0
  233. package/dist/chunks/popover-Bdg8D4sm.js.map +1 -0
  234. package/dist/chunks/{progress-DlrZ71aV.js → progress-zWkTltor.js} +2 -1
  235. package/dist/chunks/progress-zWkTltor.js.map +1 -0
  236. package/dist/chunks/radio-DOFYCfJi.js +2 -0
  237. package/dist/chunks/radio-DOFYCfJi.js.map +1 -0
  238. package/dist/chunks/{range-input-BN3430j-.js → range-input-CT_8TKL7.js} +2 -1
  239. package/dist/chunks/range-input-CT_8TKL7.js.map +1 -0
  240. package/dist/chunks/renderFormCheck-DN_-V62U.js +2 -0
  241. package/dist/chunks/renderFormCheck-DN_-V62U.js.map +1 -0
  242. package/dist/chunks/{renderFormCheck-CYWG-Rbt.d.ts → renderFormCheck-DZh_5Df8.d.ts} +3 -2
  243. package/dist/chunks/renderFormField-Brkw1yA6.js +2 -0
  244. package/dist/chunks/renderFormField-Brkw1yA6.js.map +1 -0
  245. package/dist/chunks/{renderFormField-fBEny6JV.d.ts → renderFormField-ChNagAFN.d.ts} +3 -2
  246. package/dist/chunks/{renderMenuItemContent-CmqT3YUQ.js → renderMenuItemContent-DUezZrpj.js} +2 -1
  247. package/dist/chunks/renderMenuItemContent-DUezZrpj.js.map +1 -0
  248. package/dist/chunks/scrollspy-C2HmrnZ4.js +2 -0
  249. package/dist/chunks/scrollspy-C2HmrnZ4.js.map +1 -0
  250. package/dist/chunks/scrollspy-D_lPjb92.js +2 -0
  251. package/dist/chunks/scrollspy-D_lPjb92.js.map +1 -0
  252. package/dist/chunks/search-field--nDoCI_E.js +2 -0
  253. package/dist/chunks/search-field--nDoCI_E.js.map +1 -0
  254. package/dist/chunks/select-BwJIfv9f.js +2 -0
  255. package/dist/chunks/select-BwJIfv9f.js.map +1 -0
  256. package/dist/chunks/skeleton-BrD2JwNx.js +2 -0
  257. package/dist/chunks/skeleton-BrD2JwNx.js.map +1 -0
  258. package/dist/chunks/slot-CNhFZdHF.js +2 -0
  259. package/dist/chunks/slot-CNhFZdHF.js.map +1 -0
  260. package/dist/chunks/spacingClassName-DVhk8m3P.js +2 -1
  261. package/dist/chunks/spacingClassName-DVhk8m3P.js.map +1 -0
  262. package/dist/chunks/spinner-DblhvrHL.js +2 -0
  263. package/dist/chunks/spinner-DblhvrHL.js.map +1 -0
  264. package/dist/chunks/{stack-D3retZ-W.js → stack-CsMiQbpq.js} +2 -1
  265. package/dist/chunks/stack-CsMiQbpq.js.map +1 -0
  266. package/dist/chunks/static-table-D0M4oc_t.js +2 -1
  267. package/dist/chunks/static-table-D0M4oc_t.js.map +1 -0
  268. package/dist/chunks/stepper-CVXMJ2yg.js +2 -0
  269. package/dist/chunks/stepper-CVXMJ2yg.js.map +1 -0
  270. package/dist/chunks/switch-C6s3LxEv.js +2 -0
  271. package/dist/chunks/switch-C6s3LxEv.js.map +1 -0
  272. package/dist/chunks/table-Cy6uEuEP.js +2 -0
  273. package/dist/chunks/table-Cy6uEuEP.js.map +1 -0
  274. package/dist/chunks/tableClassName-CZA2Bse8.js +2 -1
  275. package/dist/chunks/tableClassName-CZA2Bse8.js.map +1 -0
  276. package/dist/chunks/tabs-91T7-8qq.js +2 -0
  277. package/dist/chunks/tabs-91T7-8qq.js.map +1 -0
  278. package/dist/chunks/text-input-B4pTv6SU.js +2 -0
  279. package/dist/chunks/text-input-B4pTv6SU.js.map +1 -0
  280. package/dist/chunks/textarea-1A1nABQE.js +2 -0
  281. package/dist/chunks/textarea-1A1nABQE.js.map +1 -0
  282. package/dist/chunks/time-field-B3MA7ED_.js +2 -0
  283. package/dist/chunks/time-field-B3MA7ED_.js.map +1 -0
  284. package/dist/chunks/toast-CGHl3-oU.js +2 -0
  285. package/dist/chunks/toast-CGHl3-oU.js.map +1 -0
  286. package/dist/chunks/tooltip-Bc-u6nIW.js +2 -0
  287. package/dist/chunks/tooltip-Bc-u6nIW.js.map +1 -0
  288. package/dist/chunks/tree-Cql1veeZ.js +2 -0
  289. package/dist/chunks/tree-Cql1veeZ.js.map +1 -0
  290. package/dist/chunks/types-CS_40Txv.d.ts +2 -1
  291. package/dist/chunks/unhandledProps-9Kdj7WVf.js +2 -0
  292. package/dist/chunks/unhandledProps-9Kdj7WVf.js.map +1 -0
  293. package/dist/chunks/useButtonSemantics-CILM_lhi.js +2 -1
  294. package/dist/chunks/useButtonSemantics-CILM_lhi.js.map +1 -0
  295. package/dist/chunks/useControllableState-CPUJxfKW.js +2 -0
  296. package/dist/chunks/useControllableState-CPUJxfKW.js.map +1 -0
  297. package/dist/chunks/useDialogElement-CgOnJAzu.js +2 -0
  298. package/dist/chunks/useDialogElement-CgOnJAzu.js.map +1 -0
  299. package/dist/chunks/useDisabledAnchorGuard-Cz58UCXy.js +2 -1
  300. package/dist/chunks/useDisabledAnchorGuard-Cz58UCXy.js.map +1 -0
  301. package/dist/chunks/useFloatingOverlay-DLIvwx-8.js +2 -0
  302. package/dist/chunks/useFloatingOverlay-DLIvwx-8.js.map +1 -0
  303. package/dist/chunks/useForkedRef-DVEfT-KI.js +2 -1
  304. package/dist/chunks/useForkedRef-DVEfT-KI.js.map +1 -0
  305. package/dist/chunks/useFormField-BOqmBTC4.js +2 -1
  306. package/dist/chunks/useFormField-BOqmBTC4.js.map +1 -0
  307. package/dist/chunks/useIsomorphicLayoutEffect-BbqRwuqn.js +2 -1
  308. package/dist/chunks/useIsomorphicLayoutEffect-BbqRwuqn.js.map +1 -0
  309. package/dist/chunks/useOpenStateProps-DykUbnPJ.js +2 -0
  310. package/dist/chunks/useOpenStateProps-DykUbnPJ.js.map +1 -0
  311. package/dist/chunks/useToastRegionQueue-CIV5SdiE.js +2 -0
  312. package/dist/chunks/useToastRegionQueue-CIV5SdiE.js.map +1 -0
  313. package/dist/chunks/useTransitionState-e5ToY7eX.js +2 -0
  314. package/dist/chunks/useTransitionState-e5ToY7eX.js.map +1 -0
  315. package/dist/chunks/validationClassName-gRGs4KBm.js +2 -1
  316. package/dist/chunks/validationClassName-gRGs4KBm.js.map +1 -0
  317. package/dist/chunks/visibleState-B_i1zHu2.js +2 -0
  318. package/dist/chunks/visibleState-B_i1zHu2.js.map +1 -0
  319. package/dist/close-button.d.ts +1 -1
  320. package/dist/close-button.js +1 -1
  321. package/dist/collapse.js +1 -1
  322. package/dist/color-input.js +1 -1
  323. package/dist/combobox.js +1 -1
  324. package/dist/context-menu.d.ts +2 -0
  325. package/dist/context-menu.js +1 -0
  326. package/dist/datagrid.js +1 -1
  327. package/dist/datepicker.d.ts +1 -1
  328. package/dist/datepicker.js +1 -1
  329. package/dist/divider.d.ts +2 -0
  330. package/dist/divider.js +1 -0
  331. package/dist/drawer.d.ts +1 -1
  332. package/dist/drawer.js +1 -1
  333. package/dist/file-input.js +1 -1
  334. package/dist/flex.js +1 -1
  335. package/dist/floating-input.d.ts +1 -1
  336. package/dist/floating-input.js +1 -1
  337. package/dist/form-field.d.ts +1 -1
  338. package/dist/form-field.js +1 -1
  339. package/dist/form.js +1 -1
  340. package/dist/grid.d.ts +2 -2
  341. package/dist/grid.js +1 -1
  342. package/dist/icon.d.ts +2 -2
  343. package/dist/icon.js +1 -1
  344. package/dist/index.d.ts +50 -38
  345. package/dist/index.js +1 -1
  346. package/dist/input-adorn.js +1 -1
  347. package/dist/input-group.js +1 -1
  348. package/dist/link.d.ts +1 -1
  349. package/dist/link.js +1 -1
  350. package/dist/list.d.ts +1 -1
  351. package/dist/list.js +1 -1
  352. package/dist/menu.d.ts +2 -1
  353. package/dist/menu.js +1 -1
  354. package/dist/modal.d.ts +1 -1
  355. package/dist/modal.js +1 -1
  356. package/dist/nav-overflow.d.ts +2 -0
  357. package/dist/nav-overflow.js +1 -0
  358. package/dist/nav.d.ts +2 -2
  359. package/dist/nav.js +1 -1
  360. package/dist/navbar.d.ts +1 -1
  361. package/dist/navbar.js +1 -1
  362. package/dist/notification.d.ts +1 -1
  363. package/dist/notification.js +1 -1
  364. package/dist/number-field.d.ts +2 -0
  365. package/dist/number-field.js +1 -0
  366. package/dist/otp-input.js +1 -1
  367. package/dist/pagination.d.ts +1 -1
  368. package/dist/pagination.js +1 -1
  369. package/dist/password-strength.d.ts +1 -1
  370. package/dist/password-strength.js +1 -1
  371. package/dist/placeholder.d.ts +1 -1
  372. package/dist/placeholder.js +1 -1
  373. package/dist/popover.d.ts +1 -1
  374. package/dist/popover.js +1 -1
  375. package/dist/portal.d.ts +2 -0
  376. package/dist/portal.js +1 -0
  377. package/dist/progress.js +1 -1
  378. package/dist/radio.d.ts +1 -1
  379. package/dist/radio.js +1 -1
  380. package/dist/range-input.js +1 -1
  381. package/dist/scrollspy.d.ts +2 -0
  382. package/dist/scrollspy.js +1 -0
  383. package/dist/search-field.d.ts +2 -0
  384. package/dist/search-field.js +1 -0
  385. package/dist/select.js +1 -1
  386. package/dist/skeleton.d.ts +1 -1
  387. package/dist/skeleton.js +1 -1
  388. package/dist/spinner.js +1 -1
  389. package/dist/stack.js +1 -1
  390. package/dist/stepper.d.ts +1 -1
  391. package/dist/stepper.js +1 -1
  392. package/dist/style.css +1 -1
  393. package/dist/switch.js +1 -1
  394. package/dist/table.js +1 -1
  395. package/dist/tabs.d.ts +1 -1
  396. package/dist/tabs.js +1 -1
  397. package/dist/text-input.js +1 -1
  398. package/dist/textarea.js +1 -1
  399. package/dist/time-field.d.ts +2 -0
  400. package/dist/time-field.js +1 -0
  401. package/dist/toast.d.ts +1 -1
  402. package/dist/toast.js +1 -1
  403. package/dist/tooltip.d.ts +1 -1
  404. package/dist/tooltip.js +1 -1
  405. package/dist/tree.d.ts +2 -0
  406. package/dist/tree.js +1 -0
  407. package/dist/visually-hidden.d.ts +2 -0
  408. package/dist/visually-hidden.js +1 -0
  409. package/package.json +61 -52
  410. package/dist/chunks/Button-I0aUy5h-.js +0 -1
  411. package/dist/chunks/Chip-D0Cw0mAr.js +0 -1
  412. package/dist/chunks/CloseButton-DJM7FRKh.js +0 -1
  413. package/dist/chunks/ComboboxListBox-BhO8uRNg.js +0 -1
  414. package/dist/chunks/Icon-BIwkD-kx.js +0 -1
  415. package/dist/chunks/Link-Cq7FNWpm.js +0 -1
  416. package/dist/chunks/RangeCalendar-COnSfurr.js +0 -1
  417. package/dist/chunks/accordion-okRicuG5.js +0 -1
  418. package/dist/chunks/autocomplete-B0xTc6kg.js +0 -1
  419. package/dist/chunks/avatar-Bjm0DlPO.js +0 -1
  420. package/dist/chunks/breakpoints-SLMTNHF9.d.ts +0 -5
  421. package/dist/chunks/button-group-CPZYA6aZ.js +0 -1
  422. package/dist/chunks/carousel-DEvwcA7H.js +0 -1
  423. package/dist/chunks/checkbox-BFPS0pD6.js +0 -1
  424. package/dist/chunks/chip-input-CB1lE6vP.js +0 -1
  425. package/dist/chunks/collapse-WifcChO8.js +0 -1
  426. package/dist/chunks/combobox-DWEj-Sv7.js +0 -1
  427. package/dist/chunks/datagrid-nbnNThsT.js +0 -2
  428. package/dist/chunks/datepicker-CslLKMm1.js +0 -1
  429. package/dist/chunks/direction-CPhdeL3A.js +0 -1
  430. package/dist/chunks/drawer-zReFjoJG.js +0 -1
  431. package/dist/chunks/floating-input-CIC9Lm2a.js +0 -1
  432. package/dist/chunks/form-field-BjQ9SIjx.js +0 -1
  433. package/dist/chunks/grid-CuFw89yV.js +0 -1
  434. package/dist/chunks/iconSlot-BmWxJh27.js +0 -1
  435. package/dist/chunks/index-BDfh8YBc.d.ts +0 -39
  436. package/dist/chunks/index-D949AidR.d.ts +0 -40
  437. package/dist/chunks/list-CMr-wB9d.js +0 -1
  438. package/dist/chunks/menu-CXUc-Gva.js +0 -1
  439. package/dist/chunks/modal-ByIj71Mq.js +0 -1
  440. package/dist/chunks/nav-BldxFo_B.js +0 -1
  441. package/dist/chunks/navbar-BwcsQuBk.js +0 -1
  442. package/dist/chunks/notification-DdqigVB1.js +0 -1
  443. package/dist/chunks/otp-input-CXe_wkII.js +0 -1
  444. package/dist/chunks/pagination-BOpEAYW2.js +0 -1
  445. package/dist/chunks/password-strength-BfLiYiGj.js +0 -1
  446. package/dist/chunks/placeholder-pg95KELl.js +0 -1
  447. package/dist/chunks/polymorphic-CACPOv1_.js +0 -1
  448. package/dist/chunks/popover-BpSfnZzk.js +0 -1
  449. package/dist/chunks/radio-BV7Sq6D1.js +0 -1
  450. package/dist/chunks/renderFormCheck-BXBs6_ov.js +0 -1
  451. package/dist/chunks/renderFormField-wiaxvvLG.js +0 -1
  452. package/dist/chunks/select-CclIIux8.js +0 -1
  453. package/dist/chunks/skeleton-CKq76sE_.js +0 -1
  454. package/dist/chunks/spinner-BEq4PAlu.js +0 -1
  455. package/dist/chunks/stepper-CTa6e8uv.js +0 -1
  456. package/dist/chunks/switch-BmHpq4tL.js +0 -1
  457. package/dist/chunks/table-Fme9GbAR.js +0 -1
  458. package/dist/chunks/tabs-BnbMJM_b.js +0 -1
  459. package/dist/chunks/text-input-DD3d08Yf.js +0 -1
  460. package/dist/chunks/textarea-C0qQdCcu.js +0 -1
  461. package/dist/chunks/toast-BQhZ2pv5.js +0 -1
  462. package/dist/chunks/tooltip-DHtVAYUo.js +0 -1
  463. package/dist/chunks/triggerElement-BIqA4KqZ.js +0 -1
  464. package/dist/chunks/useDialogElement-BRIU60cT.js +0 -1
  465. package/dist/chunks/useFloatingOverlay-CcmDZKMK.js +0 -1
  466. package/dist/chunks/useToastRegionQueue-BH6bWZ73.js +0 -1
  467. package/src/components/accordion/Accordion.tsx +0 -190
  468. package/src/components/accordion/AccordionBody.tsx +0 -46
  469. package/src/components/accordion/AccordionHeader.tsx +0 -21
  470. package/src/components/accordion/AccordionItem.tsx +0 -59
  471. package/src/components/accordion/context.ts +0 -8
  472. package/src/components/accordion/index.ts +0 -12
  473. package/src/components/autocomplete/Autocomplete.tsx +0 -464
  474. package/src/components/autocomplete/AutocompleteGroup.tsx +0 -20
  475. package/src/components/autocomplete/AutocompleteItem.tsx +0 -18
  476. package/src/components/autocomplete/index.ts +0 -10
  477. package/src/components/avatar/Avatar.tsx +0 -137
  478. package/src/components/avatar/AvatarImage.tsx +0 -19
  479. package/src/components/avatar/AvatarStack.tsx +0 -98
  480. package/src/components/avatar/index.ts +0 -10
  481. package/src/components/badge/Badge.tsx +0 -94
  482. package/src/components/badge/index.ts +0 -6
  483. package/src/components/breadcrumb/Breadcrumb.tsx +0 -68
  484. package/src/components/breadcrumb/BreadcrumbItem.tsx +0 -38
  485. package/src/components/breadcrumb/index.ts +0 -8
  486. package/src/components/button/Button.tsx +0 -232
  487. package/src/components/button/index.ts +0 -6
  488. package/src/components/button-group/ButtonGroup.tsx +0 -55
  489. package/src/components/button-group/ButtonToolbar.tsx +0 -47
  490. package/src/components/button-group/index.ts +0 -8
  491. package/src/components/calendar/Calendar.scss +0 -57
  492. package/src/components/calendar/Calendar.tsx +0 -338
  493. package/src/components/calendar/CalendarMonthBlock.tsx +0 -57
  494. package/src/components/calendar/CalendarMonthGrid.tsx +0 -94
  495. package/src/components/calendar/CalendarMonthYearPicker.tsx +0 -164
  496. package/src/components/calendar/CalendarNavButton.tsx +0 -24
  497. package/src/components/calendar/CalendarWeekGrid.tsx +0 -58
  498. package/src/components/calendar/CalendarYearGrid.tsx +0 -128
  499. package/src/components/calendar/RangeCalendar.scss +0 -95
  500. package/src/components/calendar/RangeCalendar.tsx +0 -373
  501. package/src/components/calendar/index.ts +0 -10
  502. package/src/components/calendar/labels.tsx +0 -71
  503. package/src/components/card/Card.tsx +0 -173
  504. package/src/components/card/CardBody.tsx +0 -75
  505. package/src/components/card/CardFooter.tsx +0 -47
  506. package/src/components/card/CardGroup.tsx +0 -51
  507. package/src/components/card/CardHeader.tsx +0 -47
  508. package/src/components/card/CardImage.tsx +0 -70
  509. package/src/components/card/CardImageOverlay.tsx +0 -47
  510. package/src/components/card/CardLink.tsx +0 -40
  511. package/src/components/card/CardSubtitle.tsx +0 -47
  512. package/src/components/card/CardText.tsx +0 -47
  513. package/src/components/card/CardTitle.tsx +0 -47
  514. package/src/components/card/index.ts +0 -26
  515. package/src/components/carousel/Carousel.tsx +0 -753
  516. package/src/components/carousel/CarouselControlButton.tsx +0 -81
  517. package/src/components/carousel/CarouselControlNext.tsx +0 -28
  518. package/src/components/carousel/CarouselControlPrev.tsx +0 -28
  519. package/src/components/carousel/CarouselIndicators.tsx +0 -44
  520. package/src/components/carousel/CarouselInner.tsx +0 -56
  521. package/src/components/carousel/CarouselItem.tsx +0 -51
  522. package/src/components/carousel/CarouselOverlay.tsx +0 -51
  523. package/src/components/carousel/CarouselPlayPause.tsx +0 -84
  524. package/src/components/carousel/carouselEngine.ts +0 -170
  525. package/src/components/carousel/context.ts +0 -29
  526. package/src/components/carousel/index.ts +0 -25
  527. package/src/components/checkbox/Checkbox.tsx +0 -252
  528. package/src/components/checkbox/CheckboxGroup.tsx +0 -145
  529. package/src/components/checkbox/context.ts +0 -14
  530. package/src/components/checkbox/index.ts +0 -8
  531. package/src/components/chip/Chip.tsx +0 -184
  532. package/src/components/chip/index.ts +0 -6
  533. package/src/components/chip-input/ChipInput.tsx +0 -371
  534. package/src/components/chip-input/ChipList.tsx +0 -95
  535. package/src/components/chip-input/index.ts +0 -6
  536. package/src/components/close-button/CloseButton.tsx +0 -205
  537. package/src/components/close-button/index.ts +0 -6
  538. package/src/components/collapse/Collapse.tsx +0 -128
  539. package/src/components/collapse/index.ts +0 -6
  540. package/src/components/color-input/ColorInput.tsx +0 -106
  541. package/src/components/color-input/index.ts +0 -6
  542. package/src/components/combobox/Combobox.tsx +0 -320
  543. package/src/components/combobox/ComboboxGroup.tsx +0 -27
  544. package/src/components/combobox/ComboboxItem.tsx +0 -44
  545. package/src/components/combobox/ComboboxListBox.tsx +0 -98
  546. package/src/components/combobox/index.ts +0 -10
  547. package/src/components/datagrid/DataGrid.scss +0 -203
  548. package/src/components/datagrid/DataGrid.tsx +0 -259
  549. package/src/components/datagrid/DataGridBody.tsx +0 -162
  550. package/src/components/datagrid/DataGridCell.tsx +0 -47
  551. package/src/components/datagrid/DataGridColumn.tsx +0 -109
  552. package/src/components/datagrid/DataGridHeader.tsx +0 -47
  553. package/src/components/datagrid/DataGridPinBehavior.tsx +0 -225
  554. package/src/components/datagrid/DataGridRow.tsx +0 -48
  555. package/src/components/datagrid/DataGridSelectionCell.tsx +0 -74
  556. package/src/components/datagrid/DataGridTableLayout.ts +0 -30
  557. package/src/components/datagrid/index.ts +0 -18
  558. package/src/components/datagrid/useColumnGeometry.ts +0 -161
  559. package/src/components/datepicker/CalendarToggleButton.tsx +0 -58
  560. package/src/components/datepicker/ClearButton.tsx +0 -38
  561. package/src/components/datepicker/DateField.tsx +0 -54
  562. package/src/components/datepicker/DatePicker.scss +0 -51
  563. package/src/components/datepicker/DatePicker.tsx +0 -606
  564. package/src/components/datepicker/DateRangePicker.scss +0 -11
  565. package/src/components/datepicker/DateRangePicker.tsx +0 -361
  566. package/src/components/datepicker/index.ts +0 -8
  567. package/src/components/datepicker/renderDatePickerShell.tsx +0 -104
  568. package/src/components/drawer/Drawer.tsx +0 -213
  569. package/src/components/drawer/DrawerBody.tsx +0 -47
  570. package/src/components/drawer/DrawerFooter.tsx +0 -51
  571. package/src/components/drawer/DrawerHeader.tsx +0 -60
  572. package/src/components/drawer/DrawerTitle.tsx +0 -49
  573. package/src/components/drawer/index.ts +0 -18
  574. package/src/components/file-input/FileInput.tsx +0 -100
  575. package/src/components/file-input/index.ts +0 -6
  576. package/src/components/flex/Flex.tsx +0 -134
  577. package/src/components/flex/index.ts +0 -6
  578. package/src/components/floating-input/FloatingInput.tsx +0 -94
  579. package/src/components/floating-input/index.ts +0 -6
  580. package/src/components/form/Form.tsx +0 -26
  581. package/src/components/form/FormFeedback.tsx +0 -64
  582. package/src/components/form/FormHelp.tsx +0 -46
  583. package/src/components/form/FormLabel.tsx +0 -26
  584. package/src/components/form/index.ts +0 -12
  585. package/src/components/form/renderFormCheck.tsx +0 -86
  586. package/src/components/form-field/FormField.tsx +0 -84
  587. package/src/components/form-field/index.ts +0 -6
  588. package/src/components/form-field/renderFormField.tsx +0 -85
  589. package/src/components/grid/Col.tsx +0 -69
  590. package/src/components/grid/Container.tsx +0 -59
  591. package/src/components/grid/Grid.tsx +0 -86
  592. package/src/components/grid/GridItem.tsx +0 -123
  593. package/src/components/grid/Row.tsx +0 -71
  594. package/src/components/grid/gap.ts +0 -8
  595. package/src/components/grid/index.ts +0 -14
  596. package/src/components/icon/Icon.tsx +0 -105
  597. package/src/components/icon/IconProvider.tsx +0 -40
  598. package/src/components/icon/index.ts +0 -9
  599. package/src/components/input-adorn/InputAdorn.tsx +0 -55
  600. package/src/components/input-adorn/index.ts +0 -6
  601. package/src/components/input-group/InputGroup.tsx +0 -50
  602. package/src/components/input-group/InputGroupAddon.tsx +0 -50
  603. package/src/components/input-group/index.ts +0 -8
  604. package/src/components/link/Link.tsx +0 -148
  605. package/src/components/link/index.ts +0 -6
  606. package/src/components/list/List.tsx +0 -193
  607. package/src/components/list/ListItem.tsx +0 -91
  608. package/src/components/list/index.ts +0 -8
  609. package/src/components/menu/Menu.tsx +0 -408
  610. package/src/components/menu/MenuDivider.tsx +0 -19
  611. package/src/components/menu/MenuHeader.tsx +0 -55
  612. package/src/components/menu/MenuItem.tsx +0 -85
  613. package/src/components/menu/MenuItemDef.ts +0 -83
  614. package/src/components/menu/MenuList.tsx +0 -142
  615. package/src/components/menu/MenuSubmenu.tsx +0 -284
  616. package/src/components/menu/MenuSubmenuBack.tsx +0 -39
  617. package/src/components/menu/MenuText.tsx +0 -47
  618. package/src/components/menu/MenuToggle.tsx +0 -148
  619. package/src/components/menu/index.ts +0 -23
  620. package/src/components/menu/menuNavigation.ts +0 -106
  621. package/src/components/menu/submenuGroup.ts +0 -43
  622. package/src/components/modal/Modal.tsx +0 -164
  623. package/src/components/modal/ModalBody.tsx +0 -47
  624. package/src/components/modal/ModalFooter.tsx +0 -51
  625. package/src/components/modal/ModalHeader.tsx +0 -60
  626. package/src/components/modal/ModalTitle.tsx +0 -49
  627. package/src/components/modal/index.ts +0 -18
  628. package/src/components/nav/Nav.tsx +0 -97
  629. package/src/components/nav/NavItem.tsx +0 -42
  630. package/src/components/nav/NavLink.tsx +0 -48
  631. package/src/components/nav/NavTitle.tsx +0 -22
  632. package/src/components/nav/index.ts +0 -11
  633. package/src/components/navbar/Navbar.tsx +0 -112
  634. package/src/components/navbar/NavbarBrand.tsx +0 -58
  635. package/src/components/navbar/NavbarNav.tsx +0 -47
  636. package/src/components/navbar/NavbarText.tsx +0 -47
  637. package/src/components/navbar/NavbarToggler.tsx +0 -40
  638. package/src/components/navbar/index.ts +0 -14
  639. package/src/components/notification/Notification.scss +0 -15
  640. package/src/components/notification/Notification.tsx +0 -188
  641. package/src/components/notification/NotificationIcon.tsx +0 -21
  642. package/src/components/notification/NotificationStack.tsx +0 -66
  643. package/src/components/notification/NotificationText.tsx +0 -47
  644. package/src/components/notification/NotificationTitle.tsx +0 -47
  645. package/src/components/notification/context.ts +0 -14
  646. package/src/components/notification/index.ts +0 -25
  647. package/src/components/notification/notificationQueue.ts +0 -48
  648. package/src/components/otp-input/OtpBox.tsx +0 -68
  649. package/src/components/otp-input/OtpInput.tsx +0 -342
  650. package/src/components/otp-input/index.ts +0 -6
  651. package/src/components/pagination/Pagination.tsx +0 -212
  652. package/src/components/pagination/PaginationItem.tsx +0 -152
  653. package/src/components/pagination/index.ts +0 -12
  654. package/src/components/password-strength/PasswordStrength.tsx +0 -155
  655. package/src/components/password-strength/index.ts +0 -6
  656. package/src/components/password-strength/strengthScore.ts +0 -79
  657. package/src/components/placeholder/Placeholder.tsx +0 -178
  658. package/src/components/placeholder/index.ts +0 -6
  659. package/src/components/popover/Popover.tsx +0 -269
  660. package/src/components/popover/index.ts +0 -6
  661. package/src/components/progress/Progress.tsx +0 -154
  662. package/src/components/progress/ProgressBar.tsx +0 -88
  663. package/src/components/progress/index.ts +0 -8
  664. package/src/components/radio/Radio.tsx +0 -98
  665. package/src/components/radio/RadioGroup.tsx +0 -142
  666. package/src/components/radio/context.ts +0 -14
  667. package/src/components/radio/index.ts +0 -8
  668. package/src/components/range-input/RangeInput.tsx +0 -109
  669. package/src/components/range-input/index.ts +0 -6
  670. package/src/components/select/Select.tsx +0 -277
  671. package/src/components/select/index.ts +0 -6
  672. package/src/components/skeleton/Skeleton.tsx +0 -89
  673. package/src/components/skeleton/SkeletonLoader.tsx +0 -98
  674. package/src/components/skeleton/index.ts +0 -8
  675. package/src/components/spinner/Spinner.tsx +0 -77
  676. package/src/components/spinner/index.ts +0 -6
  677. package/src/components/stack/Stack.tsx +0 -81
  678. package/src/components/stack/index.ts +0 -6
  679. package/src/components/static-table/StaticTable.tsx +0 -78
  680. package/src/components/static-table/index.ts +0 -8
  681. package/src/components/stepper/Stepper.tsx +0 -172
  682. package/src/components/stepper/StepperItem.tsx +0 -66
  683. package/src/components/stepper/index.ts +0 -8
  684. package/src/components/switch/Switch.tsx +0 -259
  685. package/src/components/switch/index.ts +0 -6
  686. package/src/components/table/Table.css +0 -39
  687. package/src/components/table/Table.tsx +0 -405
  688. package/src/components/table/TableBody.tsx +0 -25
  689. package/src/components/table/TableCell.tsx +0 -27
  690. package/src/components/table/TableColumn.tsx +0 -31
  691. package/src/components/table/TableHeader.tsx +0 -26
  692. package/src/components/table/TableRow.tsx +0 -24
  693. package/src/components/table/index.ts +0 -16
  694. package/src/components/tabs/Tab.tsx +0 -36
  695. package/src/components/tabs/TabList.tsx +0 -76
  696. package/src/components/tabs/TabPanel.tsx +0 -68
  697. package/src/components/tabs/Tabs.tsx +0 -136
  698. package/src/components/tabs/context.ts +0 -24
  699. package/src/components/tabs/index.ts +0 -12
  700. package/src/components/text-input/TextInput.tsx +0 -188
  701. package/src/components/text-input/index.ts +0 -6
  702. package/src/components/textarea/Textarea.tsx +0 -145
  703. package/src/components/textarea/index.ts +0 -6
  704. package/src/components/toast/Toast.tsx +0 -220
  705. package/src/components/toast/ToastBody.tsx +0 -64
  706. package/src/components/toast/ToastFooter.tsx +0 -47
  707. package/src/components/toast/ToastHeader.tsx +0 -105
  708. package/src/components/toast/ToastIcon.tsx +0 -21
  709. package/src/components/toast/Toaster.tsx +0 -87
  710. package/src/components/toast/context.ts +0 -14
  711. package/src/components/toast/index.ts +0 -26
  712. package/src/components/toast/toastQueue.ts +0 -56
  713. package/src/components/tooltip/Tooltip.tsx +0 -171
  714. package/src/components/tooltip/index.ts +0 -6
  715. package/src/global.d.ts +0 -2
  716. package/src/hooks/index.ts +0 -57
  717. package/src/hooks/useAutoDismiss.ts +0 -91
  718. package/src/hooks/useButtonSemantics.ts +0 -33
  719. package/src/hooks/useControllableState.ts +0 -24
  720. package/src/hooks/useDialogElement.ts +0 -226
  721. package/src/hooks/useDisabledAnchorGuard.ts +0 -22
  722. package/src/hooks/useDismissibleTransition.ts +0 -126
  723. package/src/hooks/useDrawer.ts +0 -9
  724. package/src/hooks/useFloatingOverlay.ts +0 -125
  725. package/src/hooks/useForkedRef.ts +0 -50
  726. package/src/hooks/useFormField.ts +0 -89
  727. package/src/hooks/useIconConfig.ts +0 -6
  728. package/src/hooks/useIsomorphicLayoutEffect.ts +0 -9
  729. package/src/hooks/useModal.ts +0 -9
  730. package/src/hooks/useNotification.ts +0 -10
  731. package/src/hooks/useOverlayPlacement.ts +0 -93
  732. package/src/hooks/usePagination.ts +0 -89
  733. package/src/hooks/useToast.ts +0 -9
  734. package/src/hooks/useToastRegionQueue.ts +0 -27
  735. package/src/index.ts +0 -522
  736. package/src/types.ts +0 -133
  737. package/src/utils/breakpoints.ts +0 -43
  738. package/src/utils/comboboxCollection.tsx +0 -152
  739. package/src/utils/dateRangePresets.ts +0 -6
  740. package/src/utils/devWarning.ts +0 -58
  741. package/src/utils/dialogTransition.ts +0 -39
  742. package/src/utils/direction.ts +0 -14
  743. package/src/utils/focusRedirect.ts +0 -23
  744. package/src/utils/iconConfig.ts +0 -88
  745. package/src/utils/iconSlot.tsx +0 -41
  746. package/src/utils/isWholeUnitDisabled.ts +0 -17
  747. package/src/utils/mergeIsDateUnavailable.ts +0 -15
  748. package/src/utils/overlayPlacement.ts +0 -93
  749. package/src/utils/pointerInteraction.ts +0 -21
  750. package/src/utils/polymorphic.ts +0 -100
  751. package/src/utils/renderMenuItemContent.tsx +0 -57
  752. package/src/utils/setVisibleRangeStart.ts +0 -64
  753. package/src/utils/slot.tsx +0 -78
  754. package/src/utils/spacingClassName.ts +0 -14
  755. package/src/utils/suppressFocusRingGlobally.ts +0 -84
  756. package/src/utils/tableClassName.ts +0 -93
  757. package/src/utils/triggerElement.ts +0 -25
  758. package/src/utils/validationClassName.ts +0 -8
  759. package/src/utils/virtualFocusStyle.ts +0 -16
@@ -1,162 +0,0 @@
1
- import React, { ReactElement, ReactNode, useMemo } from 'react'
2
- import classNames from 'classnames'
3
- import {
4
- TableBody as AriaTableBody,
5
- TableBodyRenderProps,
6
- TableLoadMoreItem
7
- } from 'react-aria-components'
8
-
9
- // A unique value appended to `items` internally to represent the trailing "load more" row in
10
- // react-aria-components' collection. `TableLoadMoreItem` has to be returned from the per-item
11
- // render function like any other row — react-aria-components' `useCachedChildren` only supports
12
- // EITHER `items` + a render function OR static `children`, never a mix of both in the same
13
- // `children` prop, so a `<TableLoadMoreItem>` placed as a plain JSX sibling inside `<TableBody>`
14
- // is silently dropped (or crashes, if `children` becomes an array mixing the render function in).
15
- // Checked by reference (`item === LOADER_ITEM`), so it can never collide with a real `T` the way a
16
- // `{ __loader: true }` marker object might if compared structurally. Its `id` matters too, not
17
- // just its identity: react-aria-components derives each rendered item's React key from
18
- // `rendered.props.id ?? item?.key ?? item?.id ?? <positional index>` (`useCachedChildren`) —
19
- // `TableLoadMoreItem` doesn't accept an `id` prop itself, so without this object's own `id` the
20
- // loader's key falls back to its position in the array, which collides with a real row whenever a
21
- // row's own `id` happens to equal that count (e.g. a 2-item list with a row literally id `"2"`).
22
- const LOADER_ITEM = { id: '__datagrid-body-loader__' }
23
-
24
- interface DataGridBodyOwnProps {
25
- /**
26
- * A string of all className you want applied to the body row group.
27
- */
28
- className?: string
29
- /**
30
- * Values that should invalidate the row cache when using the `items`/render-function form of
31
- * `children` — e.g. a value from outside `items` that the render function reads. Without this,
32
- * changing that outside value won't re-render already-cached rows, since dynamic rows are only
33
- * rebuilt when `items` or `dependencies` change by reference, not on every parent re-render.
34
- */
35
- dependencies?: ReadonlyArray<unknown>
36
- /**
37
- * Content shown in place of rows when `items` is empty.
38
- */
39
- renderEmptyState?: (props: TableBodyRenderProps) => React.ReactNode
40
- }
41
-
42
- /**
43
- * The `items` + render-function form. `isLoading`/`loadingContent`/`onLoadMore` live here rather
44
- * than alongside the static form because the loader row is generated by appending to `items` and
45
- * rendering through that same function — there's no growing dataset to load more of, and nothing
46
- * to render the loader with, in a hand-written list of `DataGridRow` elements.
47
- */
48
- interface DataGridBodyDynamicProps<T> {
49
- /**
50
- * A render function called once per item in `items`, returning that row's `DataGridRow`.
51
- */
52
- children: (item: T) => ReactElement
53
- /**
54
- * Whether more items are currently being fetched. Shows `loadingContent` in the loader row while
55
- * true, and — until this goes back to `false` — suppresses further `onLoadMore` calls, so one
56
- * scroll-into-view doesn't fire the callback again before the in-flight fetch resolves.
57
- */
58
- isLoading?: boolean
59
- /**
60
- * A list of row data objects, rendered via the function form of `children`.
61
- */
62
- items: Iterable<T>
63
- /**
64
- * Content rendered inside the loader row while `isLoading` is true, e.g. a spinner. Only takes
65
- * effect alongside `onLoadMore`.
66
- */
67
- loadingContent?: ReactNode
68
- /**
69
- * Called when the grid scrolls near its last row, so more data can be fetched and appended to
70
- * `items`. Pair with `isLoading` so a fetch already in flight isn't triggered again before it
71
- * resolves.
72
- */
73
- onLoadMore?: () => void
74
- }
75
-
76
- /** The static form: `DataGridRow` elements written out directly. */
77
- interface DataGridBodyStaticProps {
78
- /**
79
- * `DataGridRow` elements.
80
- */
81
- children: ReactElement | ReactElement[]
82
- isLoading?: never
83
- items?: never
84
- loadingContent?: never
85
- onLoadMore?: never
86
- }
87
-
88
- /**
89
- * Split into a static and a dynamic form so the two can't be mixed: the loader row is appended to
90
- * `items` and rendered through `children`, so `onLoadMore` alongside a static list of elements used
91
- * to type-check and then throw at render ("children is not a function") the moment the loader row
92
- * came up.
93
- */
94
- export type DataGridBodyProps<T> = DataGridBodyOwnProps &
95
- (DataGridBodyDynamicProps<T> | DataGridBodyStaticProps)
96
-
97
- /**
98
- * Body row group for `DataGrid`, containing `DataGridRow`s. Unlike `Table`'s sub-parts, this
99
- * renders directly — it's a thin wrapper over react-aria-components' own `TableBody`.
100
- *
101
- * Always carries the `datagrid-body` class — see `DataGridHeader`'s equivalent note.
102
- */
103
- export const DataGridBody = <T extends object>({
104
- children,
105
- className,
106
- dependencies,
107
- isLoading,
108
- items,
109
- loadingContent,
110
- onLoadMore,
111
- renderEmptyState
112
- }: DataGridBodyProps<T>) => {
113
- const hasLoader = onLoadMore != null && items != null
114
-
115
- const itemsWithLoader = useMemo(() => {
116
- if (!hasLoader) return items
117
- return [...(items as Iterable<T>), LOADER_ITEM] as Iterable<T>
118
- }, [hasLoader, items])
119
-
120
- // react-aria-components caches each rendered row by item identity (see `dependencies`'s own doc
121
- // comment above) — the loader branch below reads `isLoading`/`onLoadMore`/`loadingContent`, none
122
- // of which are part of `items`, so without surfacing them here the cached loader row would keep
123
- // whatever `isLoading` value (and stale `onLoadMore` closure) was in scope the first time it
124
- // rendered, never picking up a later change.
125
- const dependenciesWithLoader = useMemo(
126
- () =>
127
- hasLoader ? [...(dependencies ?? []), isLoading, onLoadMore, loadingContent] : dependencies,
128
- [dependencies, hasLoader, isLoading, onLoadMore, loadingContent]
129
- )
130
-
131
- const bodyChildren = hasLoader
132
- ? (item: T) =>
133
- (item as unknown) === LOADER_ITEM ? (
134
- <TableLoadMoreItem
135
- className="datagrid-loader"
136
- isLoading={isLoading}
137
- // Suppresses re-triggering onLoadMore while a fetch is already in flight — the
138
- // underlying sentinel has no built-in debounce of its own and calls onLoadMore again
139
- // whenever it (re-)observes the sentinel still intersecting, e.g. after the collection
140
- // changes but the loader row hasn't yet scrolled out of view.
141
- onLoadMore={isLoading ? undefined : onLoadMore}
142
- >
143
- {loadingContent}
144
- </TableLoadMoreItem>
145
- ) : (
146
- // `hasLoader` implies the dynamic form of the props union, whose `children` is the
147
- // render function — `onLoadMore` isn't assignable alongside static children.
148
- (children as (item: T) => ReactElement)(item)
149
- )
150
- : children
151
-
152
- return (
153
- <AriaTableBody
154
- className={classNames('datagrid-body', className)}
155
- dependencies={dependenciesWithLoader}
156
- items={itemsWithLoader}
157
- renderEmptyState={renderEmptyState}
158
- >
159
- {bodyChildren}
160
- </AriaTableBody>
161
- )
162
- }
@@ -1,47 +0,0 @@
1
- import React, { ReactNode } from 'react'
2
- import { Key, Cell as AriaCell } from 'react-aria-components'
3
- import classNames from 'classnames'
4
-
5
- export interface DataGridCellProps {
6
- /**
7
- * The contents of the cell.
8
- */
9
- children: ReactNode
10
- /**
11
- * A string of all className you want applied to the cell.
12
- */
13
- className?: string
14
- /**
15
- * Indicates how many columns the cell spans.
16
- */
17
- colSpan?: number
18
- /**
19
- * The unique id of the cell.
20
- */
21
- id?: Key
22
- /**
23
- * A string representation of the cell's contents, used for typeahead.
24
- */
25
- textValue?: string
26
- }
27
-
28
- /**
29
- * A cell within a `DataGrid` row. Unlike `Table`'s sub-parts, this renders directly — it's a
30
- * thin wrapper over react-aria-components' own `Cell`.
31
- */
32
- export const DataGridCell = ({
33
- children,
34
- className,
35
- colSpan,
36
- id,
37
- textValue
38
- }: DataGridCellProps) => (
39
- <AriaCell
40
- className={classNames('datagrid-cell', className)}
41
- colSpan={colSpan}
42
- id={id}
43
- textValue={textValue}
44
- >
45
- {children}
46
- </AriaCell>
47
- )
@@ -1,109 +0,0 @@
1
- import React, { ReactNode } from 'react'
2
- import classNames from 'classnames'
3
- import { Key, Column as AriaColumn } from 'react-aria-components'
4
- import { ColumnSize, ColumnStaticSize } from 'react-stately'
5
-
6
- export interface DataGridColumnProps {
7
- /**
8
- * Whether the column allows sorting. Adds a sort indicator and makes the header
9
- * clickable/keyboard-activatable.
10
- */
11
- allowsSorting?: boolean
12
- /**
13
- * Rendered contents of the column header.
14
- */
15
- children: ReactNode
16
- /**
17
- * A string of all className you want applied to the column header.
18
- */
19
- className?: string
20
- /**
21
- * The initial width of the column, e.g. for a narrow selection/icon column — a plain number or
22
- * `'<n>%'` for a fixed size, or `'<n>fr'` to share remaining space with other fractional
23
- * columns in proportion (columns default to `'1fr'`, so they split space evenly unless given
24
- * one of these). Unlike `Table`, which sizes a narrow column via `width: 1%` relying on native
25
- * `<table>` auto-layout, `DataGrid`'s virtualized layout computes every column's width itself —
26
- * a CSS `width` rule on the cell has no effect, so this prop is the only way to size a column.
27
- */
28
- defaultWidth?: ColumnSize | null
29
- /**
30
- * The unique id of the column, referenced by `sortDescriptor.column`.
31
- */
32
- id?: Key
33
- /**
34
- * Whether this column is a row header, announced by assistive technology during row
35
- * navigation.
36
- */
37
- isRowHeader?: boolean
38
- /**
39
- * The maximum width of the column, as a fixed pixel number or `'<n>%'`.
40
- */
41
- maxWidth?: ColumnStaticSize | null
42
- /**
43
- * The minimum width of the column, as a fixed pixel number or `'<n>%'`.
44
- */
45
- minWidth?: ColumnStaticSize | null
46
- /**
47
- * Pin the column so it stays visible while the grid scrolls horizontally: `'start'` pins it to
48
- * the leading edge, `'end'` to the trailing edge. Stacks correctly with other pinned columns on
49
- * the same side, in declaration order.
50
- */
51
- pin?: 'start' | 'end'
52
- /**
53
- * A string representation of the column header, used for accessibility announcements. Defaults
54
- * to `children` when it's a plain string — set this explicitly when the header contains
55
- * anything else (an icon, a `Tooltip`, etc.).
56
- */
57
- textValue?: string
58
- }
59
-
60
- /**
61
- * A column within `DataGrid`. Unlike `Table`'s sub-parts, this renders directly — it's a thin
62
- * wrapper over react-aria-components' own `Column`.
63
- *
64
- * When `allowsSorting` is set, renders a sort indicator after `children` — mirrors `Table`'s own
65
- * `TableColumnHeader`, but reads the active direction from react-aria-components' own
66
- * `ColumnRenderProps` (via the `children` render-prop form) instead of reaching into table state
67
- * directly, since this wrapper has no state of its own to read.
68
- */
69
- export const DataGridColumn = ({
70
- allowsSorting,
71
- children,
72
- className,
73
- defaultWidth,
74
- id,
75
- isRowHeader,
76
- maxWidth,
77
- minWidth,
78
- pin,
79
- textValue
80
- }: DataGridColumnProps) => (
81
- <AriaColumn
82
- allowsSorting={allowsSorting}
83
- className={classNames('datagrid-col', pin && `datagrid-col-pinned-${pin}`, className)}
84
- defaultWidth={defaultWidth}
85
- id={id}
86
- isRowHeader={isRowHeader}
87
- maxWidth={maxWidth}
88
- minWidth={minWidth}
89
- textValue={textValue}
90
- // `pin` isn't a react-aria-components `Column` prop, but its collection builder preserves
91
- // the full props object it's given verbatim (see react-stately's `Column.getCollectionNode`)
92
- // — passing it through here is what makes it reach `column.props.pin` in
93
- // `DataGridTableLayout`'s `isStickyColumn` override, which is what positions `pin="start"`.
94
- // `pin="end"` is handled separately by `DataGridPinBehavior`, which reads the same prop off
95
- // the header's JSX rather than the resolved collection.
96
- {...({ pin } as Record<string, unknown>)}
97
- >
98
- {allowsSorting
99
- ? ({ sortDirection }) => (
100
- <>
101
- {children}
102
- <span aria-hidden="true" className="datagrid-sort-icon">
103
- {sortDirection === 'ascending' ? '▲' : sortDirection === 'descending' ? '▼' : '⇅'}
104
- </span>
105
- </>
106
- )
107
- : children}
108
- </AriaColumn>
109
- )
@@ -1,47 +0,0 @@
1
- import React, { ReactElement, ReactNode } from 'react'
2
- import classNames from 'classnames'
3
- import { TableHeader as AriaTableHeader } from 'react-aria-components'
4
-
5
- export interface DataGridHeaderProps<T> {
6
- /**
7
- * `DataGridColumn` elements, or a render function paired with `columns` for dynamic column
8
- * generation.
9
- */
10
- children: ReactNode | ((column: T) => ReactElement)
11
- /**
12
- * A string of all className you want applied to the header row group.
13
- */
14
- className?: string
15
- /**
16
- * A list of column data objects, rendered via the function form of `children`.
17
- */
18
- columns?: Iterable<T>
19
- /**
20
- * Values that should invalidate the column cache when using the `columns`/render-function form
21
- * of `children` — see `DataGridBody`'s `dependencies` for why this matters.
22
- */
23
- dependencies?: ReadonlyArray<unknown>
24
- }
25
-
26
- /**
27
- * Header row group for `DataGrid`, containing `DataGridColumn`s. Unlike `Table`'s sub-parts,
28
- * this renders directly — it's a thin wrapper over react-aria-components' own `TableHeader`.
29
- *
30
- * Always carries the `datagrid-header` class (not just the caller's `className`) — `DataGrid.scss`
31
- * uses it to tell header cells from body cells, since react-aria-components renders both as plain
32
- * `[role="rowgroup"]` divs with no structural difference to select on otherwise.
33
- */
34
- export const DataGridHeader = <T extends object>({
35
- children,
36
- className,
37
- columns,
38
- dependencies
39
- }: DataGridHeaderProps<T>) => (
40
- <AriaTableHeader
41
- className={classNames('datagrid-header', className)}
42
- columns={columns}
43
- dependencies={dependencies}
44
- >
45
- {children}
46
- </AriaTableHeader>
47
- )
@@ -1,225 +0,0 @@
1
- import React, { ReactElement, RefObject, useEffect, useMemo } from 'react'
2
-
3
- import { DataGridColumnProps } from './DataGridColumn'
4
- import { DataGridHeaderProps } from './DataGridHeader'
5
- import { ColumnGeometryColumn, useColumnGeometry } from './useColumnGeometry'
6
-
7
- export interface DataGridPinBehaviorProps<T> {
8
- /**
9
- * The same header element passed as `DataGrid`'s first child. Read directly (rather than via
10
- * `TableStateContext`) because react-aria-components' virtualized `<Table>` only ever renders
11
- * DOM output for its own collection-derived tree — an arbitrary extra child (like this
12
- * component, if it were nested inside `<Table>`) never mounts, regardless of context
13
- * availability. Only the static-children form of `DataGridHeader` can be introspected this
14
- * way; the `columns`/render-function form gets no pinned-column behavior from here (`pin=
15
- * "start"`'s positioning still works either way — see `DataGridTableLayout`, which reads pin
16
- * state off the resolved collection instead, not off this introspection).
17
- */
18
- header: ReactElement<DataGridHeaderProps<T>>
19
- /**
20
- * A CSS class unique to this `DataGrid` instance, scoping the generated rules below so
21
- * multiple grids on the same page (with different pinned columns) don't collide.
22
- */
23
- instanceClassName: string
24
- /**
25
- * Ref to `DataGrid`'s own scrolling root — used both to measure `fr`-sized pinned columns via
26
- * `useColumnGeometry` and, for `pin="end"`, to find and reposition its cells on scroll (see
27
- * below).
28
- */
29
- containerRef: RefObject<HTMLElement | null>
30
- }
31
-
32
- interface PinnedColumnInfo {
33
- index: number
34
- /** Cumulative width of the end-pinned columns after this one — its distance from the edge. */
35
- rightOffset: number
36
- }
37
-
38
- interface DeclaredColumns {
39
- all: ColumnGeometryColumn[]
40
- endIndices: number[]
41
- startIndices: number[]
42
- }
43
-
44
- /**
45
- * A cell's (1-based) `aria-colindex` for the (0-based) column position it was declared at.
46
- *
47
- * Every cell and column header react-aria-components renders carries `aria-colindex`, set from the
48
- * column's position in the resolved collection — which is the declaration order this component
49
- * reads off the header's JSX. That makes it the one stable handle from a declared column back to
50
- * its rendered DOM, and the reason nothing here counts DOM children: the layout engine windows
51
- * columns horizontally as well as rows (only the cells intersecting the horizontal viewport are
52
- * mounted, see `datagrid.mdx`'s Scope section), so a row's child count is the size of the mounted
53
- * window, not the column count. The `nth-child`/`nth-last-child` arithmetic this used to do was
54
- * therefore only correct while every column happened to be mounted, and silently moved and
55
- * shadowed the wrong cells in exactly the wide grids pinning exists for.
56
- */
57
- const colIndexSelector = (index: number) => `[aria-colindex="${index + 1}"]`
58
-
59
- /**
60
- * Handles the two things `DataGrid`'s own layout subclass (`DataGridTableLayout`) can't:
61
- *
62
- * - `pin="end"`'s positioning. `DataGridTableLayout` reuses the layout engine's own sticky
63
- * mechanism for `pin="start"`, but that mechanism is hardcoded to the leading edge — there's no
64
- * upstream hook for a trailing-edge pin. A pure-CSS `position: sticky; right: 0` equivalent
65
- * doesn't work either: for the *last* child of a horizontally-scrolling container, the browser's
66
- * own max-scroll bound is defined such that its gap to the viewport's trailing edge never goes
67
- * negative until the very last pixel of scroll — sticky has nothing to correct until then, so it
68
- * renders exactly like `position: absolute` for the entire scroll range up to that point (this is
69
- * a well-known, verified-here CSS limitation, not specific to this layout). So `pin="end"` is
70
- * positioned imperatively instead: on every scroll (and on mount/resize), each `pin="end"`
71
- * column's auto-generated wrapper div gets a `transform: translateX(...)` that keeps it flush
72
- * against the scroll viewport's trailing edge, computed from `useColumnGeometry`'s cumulative
73
- * offsets, plus the `z-index` that keeps it above the cells it now overlaps. This bypasses React
74
- * for those two styles, similar to how other virtualized grids (e.g. AG-Grid) handle right-pinned
75
- * columns — react-aria-components' own layout doesn't re-render an already-mounted cell's style on
76
- * a plain scroll (its `layoutInfo` doesn't depend on scroll position), so there's no fight between
77
- * this and React's own reconciliation; newly-mounted rows (from vertical scroll bringing fresh
78
- * cells into the virtualized window) are covered by the same scroll-driven sync running again.
79
- * - The scroll-cue box-shadow on the boundary column of each pinned group (the last `pin="start"`
80
- * column, the first `pin="end"` column) — shown only once the grid has actually scrolled far
81
- * enough to hide content under it, via the `datagrid-scrolled-start`/`datagrid-scrolled-end`
82
- * classes `DataGrid` toggles on scroll. This part stays pure CSS since box-shadow, unlike
83
- * sticky's position offsets, has no "last child" gotcha.
84
- *
85
- * Rendered as a plain sibling of `DataGrid`'s `<Table>`, not inside it.
86
- */
87
- export const DataGridPinBehavior = <T extends object>({
88
- header,
89
- instanceClassName,
90
- containerRef
91
- }: DataGridPinBehaviorProps<T>) => {
92
- const headerChildren = header.props.children
93
-
94
- // Re-derived only when a column's own sizing/pin props actually change, not on every parent
95
- // render: `useColumnGeometry` keys its memoized result off this array's identity, and the
96
- // scroll-sync effect below keys off that result in turn — rebuilding it unconditionally tore
97
- // down and re-registered the effect's scroll listener and its two observers on every single
98
- // `DataGrid` render.
99
- const columnElements = useMemo(
100
- () => (typeof headerChildren === 'function' ? [] : React.Children.toArray(headerChildren)),
101
- [headerChildren]
102
- )
103
- const declaredKey = columnElements
104
- .map((element) => {
105
- if (!React.isValidElement<DataGridColumnProps>(element)) return ''
106
- const { defaultWidth, maxWidth, minWidth, pin } = element.props
107
- return `${defaultWidth ?? ''}/${minWidth ?? ''}/${maxWidth ?? ''}/${pin ?? ''}`
108
- })
109
- .join('|')
110
-
111
- const {
112
- all: allColumns,
113
- endIndices,
114
- startIndices
115
- } = useMemo<DeclaredColumns>(() => {
116
- const declared: DeclaredColumns = { all: [], endIndices: [], startIndices: [] }
117
- columnElements.forEach((element, index) => {
118
- if (!React.isValidElement<DataGridColumnProps>(element)) return
119
- const { defaultWidth, maxWidth, minWidth, pin } = element.props
120
- declared.all.push({ id: index, defaultWidth, maxWidth, minWidth })
121
- if (pin === 'start') declared.startIndices.push(index)
122
- else if (pin === 'end') declared.endIndices.push(index)
123
- })
124
- return declared
125
- // `declaredKey` is the value-based identity of `columnElements` — a fresh JSX array every
126
- // render, so its own reference can't be the dependency.
127
- // eslint-disable-next-line react-hooks/exhaustive-deps
128
- }, [declaredKey])
129
-
130
- const offsets = useColumnGeometry(allColumns, containerRef)
131
-
132
- // Cumulative width of the end-pinned columns after this one, keyed by column index — how far
133
- // from the viewport's trailing edge each one needs to sit so they stack correctly.
134
- const endPinnedInfo = useMemo(() => {
135
- const info = new Map<number, PinnedColumnInfo>()
136
- let right = 0
137
- for (let i = endIndices.length - 1; i >= 0; i--) {
138
- const index = endIndices[i]
139
- if (index == null) continue
140
- const width = offsets.get(index)?.width ?? 0
141
- info.set(index, { index, rightOffset: right })
142
- right += width
143
- }
144
- return info
145
- }, [endIndices, offsets])
146
-
147
- useEffect(() => {
148
- const container = containerRef.current
149
- if (!container || endPinnedInfo.size === 0) return
150
-
151
- let frame: number | null = null
152
- // The wrappers this effect has written inline styles onto, so they can be handed back
153
- // unstyled when it tears down — un-pinning a column at runtime (or unmounting this behavior
154
- // while the grid stays) otherwise left its cells stuck at their last scroll offset.
155
- const styled = new Set<HTMLElement>()
156
-
157
- const sync = () => {
158
- frame = null
159
- const clientWidth = container.clientWidth
160
- const scrollLeft = container.scrollLeft
161
- const rows = container.querySelectorAll<HTMLElement>('[role="row"]')
162
- rows.forEach((row) => {
163
- endPinnedInfo.forEach(({ index, rightOffset }) => {
164
- const cell = row.querySelector<HTMLElement>(colIndexSelector(index))
165
- const wrapper = cell?.parentElement
166
- if (!wrapper) return
167
- const offset = offsets.get(index)
168
- if (!offset) return
169
- const rightEdge = offset.offset + offset.width
170
- const delta = clientWidth - rightOffset - rightEdge + scrollLeft
171
- wrapper.style.transform = `translateX(${delta}px)`
172
- // Above the unpinned cells it now overlaps. Set here rather than in the generated
173
- // stylesheet below because the virtualizer writes the wrapper's own `z-index` inline,
174
- // which no plain rule can outrank without `!important`.
175
- wrapper.style.zIndex = '2'
176
- styled.add(wrapper)
177
- })
178
- })
179
- }
180
-
181
- const scheduleSync = () => {
182
- if (frame == null) frame = requestAnimationFrame(sync)
183
- }
184
-
185
- scheduleSync()
186
- container.addEventListener('scroll', scheduleSync, { passive: true })
187
- const resizeObserver =
188
- typeof ResizeObserver === 'undefined' ? null : new ResizeObserver(scheduleSync)
189
- resizeObserver?.observe(container)
190
- const mutationObserver =
191
- typeof MutationObserver === 'undefined' ? null : new MutationObserver(scheduleSync)
192
- mutationObserver?.observe(container, { childList: true, subtree: true })
193
-
194
- return () => {
195
- if (frame != null) cancelAnimationFrame(frame)
196
- container.removeEventListener('scroll', scheduleSync)
197
- resizeObserver?.disconnect()
198
- mutationObserver?.disconnect()
199
- styled.forEach((wrapper) => {
200
- wrapper.style.transform = ''
201
- wrapper.style.zIndex = ''
202
- })
203
- }
204
- }, [containerRef, endPinnedInfo, offsets])
205
-
206
- if (startIndices.length === 0 && endIndices.length === 0) return null
207
-
208
- const rules: string[] = []
209
-
210
- if (startIndices.length > 0) {
211
- const lastStartIndex = Math.max(...startIndices)
212
- rules.push(
213
- `.${instanceClassName}.datagrid-scrolled-start ${colIndexSelector(lastStartIndex)} { box-shadow: var(--datagrid-pin-cue-shadow-start); }`
214
- )
215
- }
216
-
217
- if (endIndices.length > 0) {
218
- const firstEndIndex = Math.min(...endIndices)
219
- rules.push(
220
- `.${instanceClassName}.datagrid-scrolled-end ${colIndexSelector(firstEndIndex)} { box-shadow: var(--datagrid-pin-cue-shadow-end); }`
221
- )
222
- }
223
-
224
- return <style>{rules.join('\n')}</style>
225
- }
@@ -1,48 +0,0 @@
1
- import React, { ReactElement, ReactNode } from 'react'
2
- import classNames from 'classnames'
3
- import { Key, Row as AriaRow } from 'react-aria-components'
4
-
5
- export interface DataGridRowProps<T> {
6
- /**
7
- * `DataGridCell` elements, or a render function called once per column with that column's
8
- * data — required when the row's parent `DataGridBody` uses the `items`/render-function form.
9
- */
10
- children: ReactNode | ((column: T) => ReactElement)
11
- /**
12
- * A string of all className you want applied to the row.
13
- */
14
- className?: string
15
- /**
16
- * A list of column data objects, rendered via the function form of `children`.
17
- */
18
- columns?: Iterable<T>
19
- /**
20
- * The unique id of the row, referenced by `selectedKeys`/`disabledKeys`.
21
- */
22
- id?: Key
23
- /**
24
- * A string representation of the row's contents, used for typeahead.
25
- */
26
- textValue?: string
27
- }
28
-
29
- /**
30
- * A row within `DataGrid`. Unlike `Table`'s sub-parts, this renders directly — it's a thin
31
- * wrapper over react-aria-components' own `Row`.
32
- */
33
- export const DataGridRow = <T extends object>({
34
- children,
35
- className,
36
- columns,
37
- id,
38
- textValue
39
- }: DataGridRowProps<T>) => (
40
- <AriaRow
41
- className={classNames('datagrid-row', className)}
42
- columns={columns}
43
- id={id}
44
- textValue={textValue}
45
- >
46
- {children}
47
- </AriaRow>
48
- )