@commercetools/nimbus 0.0.0-canary-20251016170725 → 0.0.0-canary-20251020175823

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 (1129) hide show
  1. package/dist/chunks/Button-CafJrK0a.es.js +79 -0
  2. package/dist/chunks/Button-CafJrK0a.es.js.map +1 -0
  3. package/dist/chunks/Button-DLCecw8f.cjs.js +2 -0
  4. package/dist/chunks/Button-DLCecw8f.cjs.js.map +1 -0
  5. package/dist/chunks/CollectionBuilder-BipvtvSl.cjs.js +18 -0
  6. package/dist/chunks/CollectionBuilder-BipvtvSl.cjs.js.map +1 -0
  7. package/dist/chunks/CollectionBuilder-D6lZ-33j.es.js +677 -0
  8. package/dist/chunks/CollectionBuilder-D6lZ-33j.es.js.map +1 -0
  9. package/dist/chunks/DateField-B5u8QZFY.cjs.js +2 -0
  10. package/dist/chunks/DateField-B5u8QZFY.cjs.js.map +1 -0
  11. package/dist/chunks/DateField-BjKTTWs5.es.js +2691 -0
  12. package/dist/chunks/DateField-BjKTTWs5.es.js.map +1 -0
  13. package/dist/chunks/DatePicker-BrgxRTyS.es.js +786 -0
  14. package/dist/chunks/DatePicker-BrgxRTyS.es.js.map +1 -0
  15. package/dist/chunks/DatePicker-Codg0QnC.cjs.js +2 -0
  16. package/dist/chunks/DatePicker-Codg0QnC.cjs.js.map +1 -0
  17. package/dist/chunks/Dialog-Cx5MzP6O.es.js +1951 -0
  18. package/dist/chunks/Dialog-Cx5MzP6O.es.js.map +1 -0
  19. package/dist/chunks/Dialog-DINBl88u.cjs.js +7 -0
  20. package/dist/chunks/Dialog-DINBl88u.cjs.js.map +1 -0
  21. package/dist/chunks/DragAndDrop-35iVlv_E.cjs.js +2 -0
  22. package/dist/chunks/DragAndDrop-35iVlv_E.cjs.js.map +1 -0
  23. package/dist/chunks/DragAndDrop-CMsguxa3.es.js +76 -0
  24. package/dist/chunks/DragAndDrop-CMsguxa3.es.js.map +1 -0
  25. package/dist/chunks/FieldError-CXcEMuBf.es.js.map +1 -1
  26. package/dist/chunks/FieldError-DyGFfqST.cjs.js.map +1 -1
  27. package/dist/chunks/FocusScope-CZUuDxle.es.js +625 -0
  28. package/dist/chunks/FocusScope-CZUuDxle.es.js.map +1 -0
  29. package/dist/chunks/FocusScope-vAM-Q62b.cjs.js +2 -0
  30. package/dist/chunks/FocusScope-vAM-Q62b.cjs.js.map +1 -0
  31. package/dist/chunks/Form-BuOomA4T.cjs.js.map +1 -1
  32. package/dist/chunks/Form-CXcEMuBf.es.js.map +1 -1
  33. package/dist/chunks/Group-1nWkximy.cjs.js +2 -0
  34. package/dist/chunks/Group-1nWkximy.cjs.js.map +1 -0
  35. package/dist/chunks/Group-Bd9Zcn-V.es.js +47 -0
  36. package/dist/chunks/Group-Bd9Zcn-V.es.js.map +1 -0
  37. package/dist/chunks/Header-Ba1_guwA.cjs.js +2 -0
  38. package/dist/chunks/Header-Ba1_guwA.cjs.js.map +1 -0
  39. package/dist/chunks/Header-D6CYH5C_.es.js +59 -0
  40. package/dist/chunks/Header-D6CYH5C_.es.js.map +1 -0
  41. package/dist/chunks/Heading-DPlDZAaf.es.js +1619 -0
  42. package/dist/chunks/Heading-DPlDZAaf.es.js.map +1 -0
  43. package/dist/chunks/Heading-kcnZ-PKv.cjs.js +2 -0
  44. package/dist/chunks/Heading-kcnZ-PKv.cjs.js.map +1 -0
  45. package/dist/chunks/Hidden-CNJIJ63M.cjs.js.map +1 -1
  46. package/dist/chunks/Hidden-X9vuhkMZ.es.js +28 -0
  47. package/dist/chunks/Hidden-X9vuhkMZ.es.js.map +1 -0
  48. package/dist/chunks/Input-2FU1rljx.cjs.js +2 -0
  49. package/dist/chunks/Input-2FU1rljx.cjs.js.map +1 -0
  50. package/dist/chunks/Input-EnWCwj65.es.js +43 -0
  51. package/dist/chunks/Input-EnWCwj65.es.js.map +1 -0
  52. package/dist/chunks/Keyboard-Clnp4zAC.es.js.map +1 -1
  53. package/dist/chunks/Keyboard-rYf2KxZN.cjs.js.map +1 -1
  54. package/dist/chunks/Label-7OK510ha.es.js +17 -0
  55. package/dist/chunks/Label-7OK510ha.es.js.map +1 -0
  56. package/dist/chunks/Label-szabofdc.cjs.js +2 -0
  57. package/dist/chunks/Label-szabofdc.cjs.js.map +1 -0
  58. package/dist/chunks/ListBox-C4BToxCj.es.js +493 -0
  59. package/dist/chunks/ListBox-C4BToxCj.es.js.map +1 -0
  60. package/dist/chunks/ListBox-DkXFmzHf.cjs.js +2 -0
  61. package/dist/chunks/ListBox-DkXFmzHf.cjs.js.map +1 -0
  62. package/dist/chunks/ListKeyboardDelegate-BEarLHjT.cjs.js +2 -0
  63. package/dist/chunks/ListKeyboardDelegate-BEarLHjT.cjs.js.map +1 -0
  64. package/dist/chunks/ListKeyboardDelegate-D7v3HUvw.es.js +159 -0
  65. package/dist/chunks/ListKeyboardDelegate-D7v3HUvw.es.js.map +1 -0
  66. package/dist/chunks/Modal-C9uSJ3BN.cjs.js +2 -0
  67. package/dist/chunks/Modal-C9uSJ3BN.cjs.js.map +1 -0
  68. package/dist/chunks/Modal-DowTFCAo.es.js +197 -0
  69. package/dist/chunks/Modal-DowTFCAo.es.js.map +1 -0
  70. package/dist/chunks/OverlayArrow-O5VkT1qj.es.js +491 -0
  71. package/dist/chunks/OverlayArrow-O5VkT1qj.es.js.map +1 -0
  72. package/dist/chunks/OverlayArrow-ltipYWUv.cjs.js +2 -0
  73. package/dist/chunks/OverlayArrow-ltipYWUv.cjs.js.map +1 -0
  74. package/dist/chunks/ProgressBar-BnIWveAr.cjs.js +2 -0
  75. package/dist/chunks/ProgressBar-BnIWveAr.cjs.js.map +1 -0
  76. package/dist/chunks/ProgressBar-DA797ATA.es.js +42 -0
  77. package/dist/chunks/ProgressBar-DA797ATA.es.js.map +1 -0
  78. package/dist/chunks/RSPContexts-BdKenzIN.cjs.js.map +1 -1
  79. package/dist/chunks/RSPContexts-DV4cFLUV.es.js.map +1 -1
  80. package/dist/chunks/SSRProvider-DZRLwxPS.cjs.js +2 -0
  81. package/dist/chunks/SSRProvider-DZRLwxPS.cjs.js.map +1 -0
  82. package/dist/chunks/SSRProvider-eIEwc-2s.es.js +51 -0
  83. package/dist/chunks/SSRProvider-eIEwc-2s.es.js.map +1 -0
  84. package/dist/chunks/SelectionIndicator-B27AsfqE.es.js +17 -0
  85. package/dist/chunks/SelectionIndicator-B27AsfqE.es.js.map +1 -0
  86. package/dist/chunks/SelectionIndicator-Du7-bvy3.cjs.js +2 -0
  87. package/dist/chunks/SelectionIndicator-Du7-bvy3.cjs.js.map +1 -0
  88. package/dist/chunks/SelectionManager-CCETIs4l.cjs.js +2 -0
  89. package/dist/chunks/SelectionManager-CCETIs4l.cjs.js.map +1 -0
  90. package/dist/chunks/SelectionManager-Dn0USbbI.es.js +1132 -0
  91. package/dist/chunks/SelectionManager-Dn0USbbI.es.js.map +1 -0
  92. package/dist/chunks/Separator-B0kvBk7k.es.js +55 -0
  93. package/dist/chunks/Separator-B0kvBk7k.es.js.map +1 -0
  94. package/dist/chunks/Separator-DyU2njbj.cjs.js +2 -0
  95. package/dist/chunks/Separator-DyU2njbj.cjs.js.map +1 -0
  96. package/dist/chunks/Text-BWSfeB9p.cjs.js.map +1 -1
  97. package/dist/chunks/Text-DOcU1ycg.es.js.map +1 -1
  98. package/dist/chunks/TextArea-2QJpeMJq.cjs.js +2 -0
  99. package/dist/chunks/TextArea-2QJpeMJq.cjs.js.map +1 -0
  100. package/dist/chunks/TextArea-B__-6Fht.es.js +42 -0
  101. package/dist/chunks/TextArea-B__-6Fht.es.js.map +1 -0
  102. package/dist/chunks/ToggleButton-CFG1iLco.cjs.js +2 -0
  103. package/dist/chunks/ToggleButton-CFG1iLco.cjs.js.map +1 -0
  104. package/dist/chunks/ToggleButton-wAaapRtE.es.js +150 -0
  105. package/dist/chunks/ToggleButton-wAaapRtE.es.js.map +1 -0
  106. package/dist/chunks/VisuallyHidden-CDvZiyH6.cjs.js +2 -0
  107. package/dist/chunks/VisuallyHidden-CDvZiyH6.cjs.js.map +1 -0
  108. package/dist/chunks/VisuallyHidden-D6n3An4K.es.js +41 -0
  109. package/dist/chunks/VisuallyHidden-D6n3An4K.es.js.map +1 -0
  110. package/dist/chunks/accordion-B_1KNzgc.cjs.js +2 -0
  111. package/dist/chunks/accordion-B_1KNzgc.cjs.js.map +1 -0
  112. package/dist/chunks/accordion-Dpz27R7h.es.js +221 -0
  113. package/dist/chunks/accordion-Dpz27R7h.es.js.map +1 -0
  114. package/dist/chunks/alert-CvjNVv19.cjs.js +2 -0
  115. package/dist/chunks/alert-CvjNVv19.cjs.js.map +1 -0
  116. package/dist/chunks/alert-NU_pbX5a.es.js +138 -0
  117. package/dist/chunks/alert-NU_pbX5a.es.js.map +1 -0
  118. package/dist/chunks/avatar-BGM-BDJa.cjs.js +2 -0
  119. package/dist/chunks/avatar-BGM-BDJa.cjs.js.map +1 -0
  120. package/dist/chunks/badge-BOGw-kt1.es.js +17 -0
  121. package/dist/chunks/badge-BOGw-kt1.es.js.map +1 -0
  122. package/dist/chunks/badge-CDruffyj.cjs.js +2 -0
  123. package/dist/chunks/badge-CDruffyj.cjs.js.map +1 -0
  124. package/dist/chunks/button-C-aK04VC.es.js +62 -0
  125. package/dist/chunks/button-C-aK04VC.es.js.map +1 -0
  126. package/dist/chunks/button-DVq0Tn9x.cjs.js +2 -0
  127. package/dist/chunks/button-DVq0Tn9x.cjs.js.map +1 -0
  128. package/dist/chunks/calendar-68UPkecF.cjs.js +2 -0
  129. package/dist/chunks/calendar-68UPkecF.cjs.js.map +1 -0
  130. package/dist/chunks/calendar-BOltdZgB.es.js +187 -0
  131. package/dist/chunks/calendar-BOltdZgB.es.js.map +1 -0
  132. package/dist/chunks/card-B3i7iFBI.es.js +78 -0
  133. package/dist/chunks/card-B3i7iFBI.es.js.map +1 -0
  134. package/dist/chunks/card-SYS662CL.cjs.js +2 -0
  135. package/dist/chunks/card-SYS662CL.cjs.js.map +1 -0
  136. package/dist/chunks/checkbox-BsF8yKNU.cjs.js +2 -0
  137. package/dist/chunks/checkbox-BsF8yKNU.cjs.js.map +1 -0
  138. package/dist/chunks/checkbox-CE8KCGeO.es.js +218 -0
  139. package/dist/chunks/checkbox-CE8KCGeO.es.js.map +1 -0
  140. package/dist/chunks/collapsible-motion-JlRqk1WP.cjs.js +2 -0
  141. package/dist/chunks/collapsible-motion-JlRqk1WP.cjs.js.map +1 -0
  142. package/dist/chunks/collapsible-motion-YVxwOqMx.es.js +83 -0
  143. package/dist/chunks/collapsible-motion-YVxwOqMx.es.js.map +1 -0
  144. package/dist/chunks/combobox--SFKwkv-.cjs.js +2 -0
  145. package/dist/chunks/combobox--SFKwkv-.cjs.js.map +1 -0
  146. package/dist/chunks/combobox-DxZYSfXC.es.js +2425 -0
  147. package/dist/chunks/combobox-DxZYSfXC.es.js.map +1 -0
  148. package/dist/chunks/context-CyT9C4U4.cjs.js +2 -0
  149. package/dist/chunks/context-CyT9C4U4.cjs.js.map +1 -0
  150. package/dist/chunks/context-DW7UvQ8z.es.js +108 -0
  151. package/dist/chunks/context-DW7UvQ8z.es.js.map +1 -0
  152. package/dist/chunks/data-table-CVOGG34V.es.js +3585 -0
  153. package/dist/chunks/data-table-CVOGG34V.es.js.map +1 -0
  154. package/dist/chunks/data-table-dVWkgyi0.cjs.js +2 -0
  155. package/dist/chunks/data-table-dVWkgyi0.cjs.js.map +1 -0
  156. package/dist/chunks/date-input-CPl8mFy8.cjs.js +2 -0
  157. package/dist/chunks/date-input-CPl8mFy8.cjs.js.map +1 -0
  158. package/dist/chunks/date-input-_QRphDSA.es.js +21 -0
  159. package/dist/chunks/date-input-_QRphDSA.es.js.map +1 -0
  160. package/dist/chunks/date-picker-4WW_uOY9.cjs.js +2 -0
  161. package/dist/chunks/date-picker-4WW_uOY9.cjs.js.map +1 -0
  162. package/dist/chunks/date-picker-iuCCrF6q.es.js +220 -0
  163. package/dist/chunks/date-picker-iuCCrF6q.es.js.map +1 -0
  164. package/dist/chunks/date-range-picker-9gMrujrF.es.js +281 -0
  165. package/dist/chunks/date-range-picker-9gMrujrF.es.js.map +1 -0
  166. package/dist/chunks/date-range-picker-B5thxmG7.cjs.js +2 -0
  167. package/dist/chunks/date-range-picker-B5thxmG7.cjs.js.map +1 -0
  168. package/dist/chunks/dialog-B9olReM9.cjs.js +2 -0
  169. package/dist/chunks/dialog-B9olReM9.cjs.js.map +1 -0
  170. package/dist/chunks/dialog-DkA2M2zA.es.js +165 -0
  171. package/dist/chunks/dialog-DkA2M2zA.es.js.map +1 -0
  172. package/dist/chunks/dialog.title-8ujXI7iT.es.js +152 -0
  173. package/dist/chunks/dialog.title-8ujXI7iT.es.js.map +1 -0
  174. package/dist/chunks/dialog.title-BjZfOiGY.cjs.js +2 -0
  175. package/dist/chunks/dialog.title-BjZfOiGY.cjs.js.map +1 -0
  176. package/dist/chunks/draggable-list-BWC9cgUJ.cjs.js +3 -0
  177. package/dist/chunks/draggable-list-BWC9cgUJ.cjs.js.map +1 -0
  178. package/dist/chunks/draggable-list-Clv2Jb9U.es.js +4211 -0
  179. package/dist/chunks/draggable-list-Clv2Jb9U.es.js.map +1 -0
  180. package/dist/chunks/drawer-CGkXe_9E.es.js +304 -0
  181. package/dist/chunks/drawer-CGkXe_9E.es.js.map +1 -0
  182. package/dist/chunks/drawer-CPcfw8l3.cjs.js +2 -0
  183. package/dist/chunks/drawer-CPcfw8l3.cjs.js.map +1 -0
  184. package/dist/chunks/extract-style-props-Cg1pKYtC.es.js +11 -0
  185. package/dist/chunks/extract-style-props-Cg1pKYtC.es.js.map +1 -0
  186. package/dist/chunks/filterDOMProps-BSVCO5jK.es.js.map +1 -1
  187. package/dist/chunks/filterDOMProps-WUskt27c.cjs.js.map +1 -1
  188. package/dist/chunks/focusSafely-B0tZCNjR.es.js +27 -0
  189. package/dist/chunks/focusSafely-B0tZCNjR.es.js.map +1 -0
  190. package/dist/chunks/focusSafely-Dvxmj9Tu.cjs.js +2 -0
  191. package/dist/chunks/focusSafely-Dvxmj9Tu.cjs.js.map +1 -0
  192. package/dist/chunks/focusWithoutScrolling-BlyUcXdY.cjs.js.map +1 -1
  193. package/dist/chunks/focusWithoutScrolling-CDw3JYiq.es.js.map +1 -1
  194. package/dist/chunks/form-field-BeYe6Fae.cjs.js +2 -0
  195. package/dist/chunks/form-field-BeYe6Fae.cjs.js.map +1 -0
  196. package/dist/chunks/form-field-CSEMgt-e.es.js +231 -0
  197. package/dist/chunks/form-field-CSEMgt-e.es.js.map +1 -0
  198. package/dist/chunks/getScrollParent-DWQTVYMz.es.js +10 -0
  199. package/dist/chunks/getScrollParent-DWQTVYMz.es.js.map +1 -0
  200. package/dist/chunks/getScrollParent-oFZOwvRj.cjs.js +2 -0
  201. package/dist/chunks/getScrollParent-oFZOwvRj.cjs.js.map +1 -0
  202. package/dist/chunks/group-Cjq5lNQD.cjs.js +2 -0
  203. package/dist/chunks/group-Cjq5lNQD.cjs.js.map +1 -0
  204. package/dist/chunks/group-DDgNGiAB.es.js +13 -0
  205. package/dist/chunks/group-DDgNGiAB.es.js.map +1 -0
  206. package/dist/chunks/heading-DWweWKGQ.cjs.js +2 -0
  207. package/dist/chunks/heading-DWweWKGQ.cjs.js.map +1 -0
  208. package/dist/chunks/heading-DwvFL6nk.es.js +25 -0
  209. package/dist/chunks/heading-DwvFL6nk.es.js.map +1 -0
  210. package/dist/chunks/icon-button-DBJF6Y-T.cjs.js +2 -0
  211. package/dist/chunks/icon-button-DBJF6Y-T.cjs.js.map +1 -0
  212. package/dist/chunks/icon-button-DR2FLlZ4.es.js +14 -0
  213. package/dist/chunks/icon-button-DR2FLlZ4.es.js.map +1 -0
  214. package/dist/chunks/icon-toggle-button-BM45U1ea.es.js +13 -0
  215. package/dist/chunks/icon-toggle-button-BM45U1ea.es.js.map +1 -0
  216. package/dist/chunks/icon-toggle-button-Cqb4cQyZ.cjs.js +2 -0
  217. package/dist/chunks/icon-toggle-button-Cqb4cQyZ.cjs.js.map +1 -0
  218. package/dist/chunks/index-D6WdXWQX.es.js +5655 -0
  219. package/dist/chunks/index-D6WdXWQX.es.js.map +1 -0
  220. package/dist/chunks/inertValue-B7loUihk.es.js.map +1 -1
  221. package/dist/chunks/inertValue-BWmZ1afe.cjs.js +2 -0
  222. package/dist/chunks/inertValue-BWmZ1afe.cjs.js.map +1 -0
  223. package/dist/chunks/intlStrings-Cd44R5hT.es.js.map +1 -1
  224. package/dist/chunks/intlStrings-ClBuC6xN.cjs.js.map +1 -1
  225. package/dist/chunks/kbd-C6IVVksK.es.js +15 -0
  226. package/dist/chunks/kbd-C6IVVksK.es.js.map +1 -0
  227. package/dist/chunks/kbd-tKeWcdmy.cjs.js +2 -0
  228. package/dist/chunks/kbd-tKeWcdmy.cjs.js.map +1 -0
  229. package/dist/chunks/link-CI7W-6L3.cjs.js +2 -0
  230. package/dist/chunks/link-CI7W-6L3.cjs.js.map +1 -0
  231. package/dist/chunks/link-COeaBW8a.es.js +48 -0
  232. package/dist/chunks/link-COeaBW8a.es.js.map +1 -0
  233. package/dist/chunks/loading-spinner-ByHGBHzt.es.js +59 -0
  234. package/dist/chunks/loading-spinner-ByHGBHzt.es.js.map +1 -0
  235. package/dist/chunks/loading-spinner-DsKcjJ2b.cjs.js +2 -0
  236. package/dist/chunks/loading-spinner-DsKcjJ2b.cjs.js.map +1 -0
  237. package/dist/chunks/localized-field-Dn2G8N65.es.js +470 -0
  238. package/dist/chunks/localized-field-Dn2G8N65.es.js.map +1 -0
  239. package/dist/chunks/localized-field-vfjg6ZQw.cjs.js +2 -0
  240. package/dist/chunks/localized-field-vfjg6ZQw.cjs.js.map +1 -0
  241. package/dist/chunks/make-element-focusable-BHUCTtmz.es.js +25 -0
  242. package/dist/chunks/make-element-focusable-BHUCTtmz.es.js.map +1 -0
  243. package/dist/chunks/make-element-focusable-Cdmdc8sd.cjs.js +2 -0
  244. package/dist/chunks/make-element-focusable-Cdmdc8sd.cjs.js.map +1 -0
  245. package/dist/chunks/menu-D9Ji3iaH.es.js +147 -0
  246. package/dist/chunks/menu-D9Ji3iaH.es.js.map +1 -0
  247. package/dist/chunks/menu-x3kqOUl0.cjs.js +2 -0
  248. package/dist/chunks/menu-x3kqOUl0.cjs.js.map +1 -0
  249. package/dist/chunks/mergeProps-CxnHrnow.cjs.js +2 -0
  250. package/dist/chunks/mergeProps-CxnHrnow.cjs.js.map +1 -0
  251. package/dist/chunks/mergeProps-_eTFpDiB.es.js +130 -0
  252. package/dist/chunks/mergeProps-_eTFpDiB.es.js.map +1 -0
  253. package/dist/chunks/money-input-CyikuiLb.es.js +526 -0
  254. package/dist/chunks/money-input-CyikuiLb.es.js.map +1 -0
  255. package/dist/chunks/money-input-DzmW3hCJ.cjs.js +2 -0
  256. package/dist/chunks/money-input-DzmW3hCJ.cjs.js.map +1 -0
  257. package/dist/chunks/multiline-text-input-B-iIj6LP.cjs.js +2 -0
  258. package/dist/chunks/multiline-text-input-B-iIj6LP.cjs.js.map +1 -0
  259. package/dist/chunks/multiline-text-input-BGekltlt.es.js +64 -0
  260. package/dist/chunks/multiline-text-input-BGekltlt.es.js.map +1 -0
  261. package/dist/chunks/nimbus-i18n-provider-BbsapOze.cjs.js +2 -0
  262. package/dist/chunks/nimbus-i18n-provider-BbsapOze.cjs.js.map +1 -0
  263. package/dist/chunks/nimbus-i18n-provider-CZh1r8F5.es.js +11 -0
  264. package/dist/chunks/nimbus-i18n-provider-CZh1r8F5.es.js.map +1 -0
  265. package/dist/chunks/nimbus-provider-Bah2NJ5s.cjs.js +2 -0
  266. package/dist/chunks/nimbus-provider-Bah2NJ5s.cjs.js.map +1 -0
  267. package/dist/chunks/nimbus-provider-Dvg5Fzeq.es.js +101 -0
  268. package/dist/chunks/nimbus-provider-Dvg5Fzeq.es.js.map +1 -0
  269. package/dist/chunks/number-DHvo-MDe.cjs.js.map +1 -1
  270. package/dist/chunks/number-dMxJejI6.es.js.map +1 -1
  271. package/dist/chunks/number-input-CBJ0pAwK.cjs.js +2 -0
  272. package/dist/chunks/number-input-CBJ0pAwK.cjs.js.map +1 -0
  273. package/dist/chunks/number-input-e4aNnp4Q.es.js +691 -0
  274. package/dist/chunks/number-input-e4aNnp4Q.es.js.map +1 -0
  275. package/dist/chunks/openLink-D7--QlSJ.es.js +105 -0
  276. package/dist/chunks/openLink-D7--QlSJ.es.js.map +1 -0
  277. package/dist/chunks/openLink-DkCJYbzq.cjs.js.map +1 -1
  278. package/dist/chunks/pagination-BJNQAP9b.es.js +160 -0
  279. package/dist/chunks/pagination-BJNQAP9b.es.js.map +1 -0
  280. package/dist/chunks/pagination-BUau2zil.cjs.js +2 -0
  281. package/dist/chunks/pagination-BUau2zil.cjs.js.map +1 -0
  282. package/dist/chunks/password-input-CzZKl1EE.es.js +54 -0
  283. package/dist/chunks/password-input-CzZKl1EE.es.js.map +1 -0
  284. package/dist/chunks/password-input-DgloRBJz.cjs.js +2 -0
  285. package/dist/chunks/password-input-DgloRBJz.cjs.js.map +1 -0
  286. package/dist/chunks/platform-BDLy2vDY.cjs.js.map +1 -1
  287. package/dist/chunks/platform-Z5fvtFmM.es.js.map +1 -1
  288. package/dist/chunks/popover-D0TkE271.cjs.js +2 -0
  289. package/dist/chunks/popover-D0TkE271.cjs.js.map +1 -0
  290. package/dist/chunks/popover-qy-Vw0qP.es.js +14 -0
  291. package/dist/chunks/popover-qy-Vw0qP.es.js.map +1 -0
  292. package/dist/chunks/progress-bar-CRb4HUlh.cjs.js +2 -0
  293. package/dist/chunks/progress-bar-CRb4HUlh.cjs.js.map +1 -0
  294. package/dist/chunks/progress-bar-CtlTFrb-.es.js +77 -0
  295. package/dist/chunks/progress-bar-CtlTFrb-.es.js.map +1 -0
  296. package/dist/chunks/radio-input-CJjKZ56j.cjs.js +2 -0
  297. package/dist/chunks/radio-input-CJjKZ56j.cjs.js.map +1 -0
  298. package/dist/chunks/radio-input-COzb7v5p.es.js +350 -0
  299. package/dist/chunks/radio-input-COzb7v5p.es.js.map +1 -0
  300. package/dist/chunks/range-calendar-DGUcaTaL.cjs.js +2 -0
  301. package/dist/chunks/range-calendar-DGUcaTaL.cjs.js.map +1 -0
  302. package/dist/chunks/range-calendar-DWiND2-r.es.js +187 -0
  303. package/dist/chunks/range-calendar-DWiND2-r.es.js.map +1 -0
  304. package/dist/chunks/rich-text-input-DXl_zylc.cjs.js +10 -0
  305. package/dist/chunks/rich-text-input-DXl_zylc.cjs.js.map +1 -0
  306. package/dist/chunks/rich-text-input-bAQaG3hR.es.js +1074 -0
  307. package/dist/chunks/rich-text-input-bAQaG3hR.es.js.map +1 -0
  308. package/dist/chunks/scoped-search-input-C8rggS1W.es.js +153 -0
  309. package/dist/chunks/scoped-search-input-C8rggS1W.es.js.map +1 -0
  310. package/dist/chunks/scoped-search-input-CL35u_qe.cjs.js +2 -0
  311. package/dist/chunks/scoped-search-input-CL35u_qe.cjs.js.map +1 -0
  312. package/dist/chunks/scrollIntoView-BE5bh59O.cjs.js +2 -0
  313. package/dist/chunks/scrollIntoView-BE5bh59O.cjs.js.map +1 -0
  314. package/dist/chunks/scrollIntoView-CaRCBiMb.es.js +96 -0
  315. package/dist/chunks/scrollIntoView-CaRCBiMb.es.js.map +1 -0
  316. package/dist/chunks/search-input-DCRuc8TX.es.js +361 -0
  317. package/dist/chunks/search-input-DCRuc8TX.es.js.map +1 -0
  318. package/dist/chunks/search-input-Dg6bANcB.cjs.js +2 -0
  319. package/dist/chunks/search-input-Dg6bANcB.cjs.js.map +1 -0
  320. package/dist/chunks/select-8M7Fx0Aj.es.js +775 -0
  321. package/dist/chunks/select-8M7Fx0Aj.es.js.map +1 -0
  322. package/dist/chunks/select-BmeHhM6P.cjs.js +2 -0
  323. package/dist/chunks/select-BmeHhM6P.cjs.js.map +1 -0
  324. package/dist/chunks/separator-BWeCBIxn.es.js +24 -0
  325. package/dist/chunks/separator-BWeCBIxn.es.js.map +1 -0
  326. package/dist/chunks/separator-C62eVjZN.cjs.js +2 -0
  327. package/dist/chunks/separator-C62eVjZN.cjs.js.map +1 -0
  328. package/dist/chunks/split-button-D1m7jEzh.es.js +100 -0
  329. package/dist/chunks/split-button-D1m7jEzh.es.js.map +1 -0
  330. package/dist/chunks/split-button-DCQPz8zr.cjs.js +2 -0
  331. package/dist/chunks/split-button-DCQPz8zr.cjs.js.map +1 -0
  332. package/dist/chunks/switch-DCARSVF8.cjs.js +2 -0
  333. package/dist/chunks/switch-DCARSVF8.cjs.js.map +1 -0
  334. package/dist/chunks/switch-D_3c0qqj.es.js +67 -0
  335. package/dist/chunks/switch-D_3c0qqj.es.js.map +1 -0
  336. package/dist/chunks/tabs-Bu_-Hx4D.es.js +428 -0
  337. package/dist/chunks/tabs-Bu_-Hx4D.es.js.map +1 -0
  338. package/dist/chunks/tabs-DfiWctDh.cjs.js +2 -0
  339. package/dist/chunks/tabs-DfiWctDh.cjs.js.map +1 -0
  340. package/dist/chunks/tag-group-CwiG07wb.cjs.js +2 -0
  341. package/dist/chunks/tag-group-CwiG07wb.cjs.js.map +1 -0
  342. package/dist/chunks/tag-group-M-514iVh.es.js +554 -0
  343. package/dist/chunks/tag-group-M-514iVh.es.js.map +1 -0
  344. package/dist/chunks/text-BtRhIklG.cjs.js +2 -0
  345. package/dist/chunks/text-BtRhIklG.cjs.js.map +1 -0
  346. package/dist/chunks/text-BufUKCee.es.js +24 -0
  347. package/dist/chunks/text-BufUKCee.es.js.map +1 -0
  348. package/dist/chunks/text-input-DkOL-5_E.es.js +49 -0
  349. package/dist/chunks/text-input-DkOL-5_E.es.js.map +1 -0
  350. package/dist/chunks/text-input-EVB84mKj.cjs.js +2 -0
  351. package/dist/chunks/text-input-EVB84mKj.cjs.js.map +1 -0
  352. package/dist/chunks/time-input-B9UjERFQ.cjs.js +2 -0
  353. package/dist/chunks/time-input-B9UjERFQ.cjs.js.map +1 -0
  354. package/dist/chunks/time-input-DQidALjG.es.js +21 -0
  355. package/dist/chunks/time-input-DQidALjG.es.js.map +1 -0
  356. package/dist/chunks/toggle-button-DRRMHCoV.es.js +30 -0
  357. package/dist/chunks/toggle-button-DRRMHCoV.es.js.map +1 -0
  358. package/dist/chunks/toggle-button-DVBPrGUn.cjs.js +2 -0
  359. package/dist/chunks/toggle-button-DVBPrGUn.cjs.js.map +1 -0
  360. package/dist/chunks/toggle-button-group-BQczQ6D_.cjs.js +2 -0
  361. package/dist/chunks/toggle-button-group-BQczQ6D_.cjs.js.map +1 -0
  362. package/dist/chunks/toggle-button-group-CF1NxUIC.es.js +29 -0
  363. package/dist/chunks/toggle-button-group-CF1NxUIC.es.js.map +1 -0
  364. package/dist/chunks/toolbar-BkLgUhIG.cjs.js +2 -0
  365. package/dist/chunks/toolbar-BkLgUhIG.cjs.js.map +1 -0
  366. package/dist/chunks/toolbar-JF64ZgP6.es.js +61 -0
  367. package/dist/chunks/toolbar-JF64ZgP6.es.js.map +1 -0
  368. package/dist/chunks/tooltip-Aar_qzmT.cjs.js +2 -0
  369. package/dist/chunks/tooltip-Aar_qzmT.cjs.js.map +1 -0
  370. package/dist/chunks/tooltip-B6mt46EB.es.js +268 -0
  371. package/dist/chunks/tooltip-B6mt46EB.es.js.map +1 -0
  372. package/dist/chunks/useButton-BwsmYrml.cjs.js +2 -0
  373. package/dist/chunks/useButton-BwsmYrml.cjs.js.map +1 -0
  374. package/dist/chunks/useButton-CHyfMQy0.es.js +57 -0
  375. package/dist/chunks/useButton-CHyfMQy0.es.js.map +1 -0
  376. package/dist/chunks/useCollator-BjnMaGJd.es.js +12 -0
  377. package/dist/chunks/useCollator-BjnMaGJd.es.js.map +1 -0
  378. package/dist/chunks/useCollator-Lsi9B90Z.cjs.js +2 -0
  379. package/dist/chunks/useCollator-Lsi9B90Z.cjs.js.map +1 -0
  380. package/dist/chunks/useControlledState-D0L6S_5r.cjs.js.map +1 -1
  381. package/dist/chunks/useControlledState-u436Wbp1.es.js.map +1 -1
  382. package/dist/chunks/useDateFormatter-BqUHVksS.es.js +1632 -0
  383. package/dist/chunks/useDateFormatter-BqUHVksS.es.js.map +1 -0
  384. package/dist/chunks/useDateFormatter-WCaFojul.cjs.js +2 -0
  385. package/dist/chunks/useDateFormatter-WCaFojul.cjs.js.map +1 -0
  386. package/dist/chunks/useDisclosureState-B8bfr13K.es.js +87 -0
  387. package/dist/chunks/useDisclosureState-B8bfr13K.es.js.map +1 -0
  388. package/dist/chunks/useDisclosureState-mIvoKolL.cjs.js +2 -0
  389. package/dist/chunks/useDisclosureState-mIvoKolL.cjs.js.map +1 -0
  390. package/dist/chunks/useEvent-CDFc-XeA.es.js +22 -0
  391. package/dist/chunks/useEvent-CDFc-XeA.es.js.map +1 -0
  392. package/dist/chunks/useEvent-D0r31Azw.cjs.js +2 -0
  393. package/dist/chunks/useEvent-D0r31Azw.cjs.js.map +1 -0
  394. package/dist/chunks/useField-WtCRFMK8.es.js +36 -0
  395. package/dist/chunks/useField-WtCRFMK8.es.js.map +1 -0
  396. package/dist/chunks/useField-lK6K_h1G.cjs.js +2 -0
  397. package/dist/chunks/useField-lK6K_h1G.cjs.js.map +1 -0
  398. package/dist/chunks/useFilter-BgT0isJK.es.js +36 -0
  399. package/dist/chunks/useFilter-BgT0isJK.es.js.map +1 -0
  400. package/dist/chunks/useFilter-CAVKltBB.cjs.js +2 -0
  401. package/dist/chunks/useFilter-CAVKltBB.cjs.js.map +1 -0
  402. package/dist/chunks/useFocus-9leARHB4.cjs.js +2 -0
  403. package/dist/chunks/useFocus-9leARHB4.cjs.js.map +1 -0
  404. package/dist/chunks/useFocus-DzqF8ZJp.es.js +29 -0
  405. package/dist/chunks/useFocus-DzqF8ZJp.es.js.map +1 -0
  406. package/dist/chunks/useFocusRing-B7_ogYbr.cjs.js +2 -0
  407. package/dist/chunks/useFocusRing-B7_ogYbr.cjs.js.map +1 -0
  408. package/dist/chunks/useFocusRing-BOzVUoTi.es.js +35 -0
  409. package/dist/chunks/useFocusRing-BOzVUoTi.es.js.map +1 -0
  410. package/dist/chunks/useFocusVisible-BLRuz6I4.es.js +111 -0
  411. package/dist/chunks/useFocusVisible-BLRuz6I4.es.js.map +1 -0
  412. package/dist/chunks/useFocusVisible-DfE3Z6QO.cjs.js +2 -0
  413. package/dist/chunks/useFocusVisible-DfE3Z6QO.cjs.js.map +1 -0
  414. package/dist/chunks/useFocusWithin-CX8GdFVw.cjs.js +2 -0
  415. package/dist/chunks/useFocusWithin-CX8GdFVw.cjs.js.map +1 -0
  416. package/dist/chunks/useFocusWithin-eE-sWioC.es.js +56 -0
  417. package/dist/chunks/useFocusWithin-eE-sWioC.es.js.map +1 -0
  418. package/dist/chunks/useFocusable-C7VjcJHL.cjs.js +2 -0
  419. package/dist/chunks/useFocusable-C7VjcJHL.cjs.js.map +1 -0
  420. package/dist/chunks/useFocusable-WbQD7vwU.es.js +77 -0
  421. package/dist/chunks/useFocusable-WbQD7vwU.es.js.map +1 -0
  422. package/dist/chunks/useFormReset-B8hK6bSW.es.js +21 -0
  423. package/dist/chunks/useFormReset-B8hK6bSW.es.js.map +1 -0
  424. package/dist/chunks/useFormReset-COoih4uI.cjs.js +2 -0
  425. package/dist/chunks/useFormReset-COoih4uI.cjs.js.map +1 -0
  426. package/dist/chunks/useFormValidation-BfTV0EQ1.cjs.js +2 -0
  427. package/dist/chunks/useFormValidation-BfTV0EQ1.cjs.js.map +1 -0
  428. package/dist/chunks/useFormValidation-DMYpUH8i.es.js +202 -0
  429. package/dist/chunks/useFormValidation-DMYpUH8i.es.js.map +1 -0
  430. package/dist/chunks/useGlobalListeners-BOOfV5Wh.es.js.map +1 -1
  431. package/dist/chunks/useGlobalListeners-CwGh-cDn.cjs.js +2 -0
  432. package/dist/chunks/useGlobalListeners-CwGh-cDn.cjs.js.map +1 -0
  433. package/dist/chunks/useGridListItem-Cr6HZ3kJ.es.js +251 -0
  434. package/dist/chunks/useGridListItem-Cr6HZ3kJ.es.js.map +1 -0
  435. package/dist/chunks/useGridListItem-Dt8Kui_9.cjs.js +2 -0
  436. package/dist/chunks/useGridListItem-Dt8Kui_9.cjs.js.map +1 -0
  437. package/dist/chunks/useGridSelectionCheckbox-CB9AkcJ-.cjs.js +2 -0
  438. package/dist/chunks/useGridSelectionCheckbox-CB9AkcJ-.cjs.js.map +1 -0
  439. package/dist/chunks/useGridSelectionCheckbox-Cb6QZ_p2.es.js +23 -0
  440. package/dist/chunks/useGridSelectionCheckbox-Cb6QZ_p2.es.js.map +1 -0
  441. package/dist/chunks/useHasTabbableChild-B5nn4ySF.es.js +35 -0
  442. package/dist/chunks/useHasTabbableChild-B5nn4ySF.es.js.map +1 -0
  443. package/dist/chunks/useHasTabbableChild-ytnnMmC_.cjs.js +2 -0
  444. package/dist/chunks/useHasTabbableChild-ytnnMmC_.cjs.js.map +1 -0
  445. package/dist/chunks/useHighlightSelectionDescription-C37fwYgQ.cjs.js +2 -0
  446. package/dist/chunks/useHighlightSelectionDescription-C37fwYgQ.cjs.js.map +1 -0
  447. package/dist/chunks/useHighlightSelectionDescription-Cw3J8MNM.es.js +568 -0
  448. package/dist/chunks/useHighlightSelectionDescription-Cw3J8MNM.es.js.map +1 -0
  449. package/dist/chunks/useHover-CKzcGypZ.es.js +86 -0
  450. package/dist/chunks/useHover-CKzcGypZ.es.js.map +1 -0
  451. package/dist/chunks/useHover-xrdh1GG9.cjs.js +2 -0
  452. package/dist/chunks/useHover-xrdh1GG9.cjs.js.map +1 -0
  453. package/dist/chunks/useLabel-BFqAB17s.cjs.js +2 -0
  454. package/dist/chunks/useLabel-BFqAB17s.cjs.js.map +1 -0
  455. package/dist/chunks/useLabel-BqZPKSDB.es.js +24 -0
  456. package/dist/chunks/useLabel-BqZPKSDB.es.js.map +1 -0
  457. package/dist/chunks/useLabels-C_UIaxmz.cjs.js +2 -0
  458. package/dist/chunks/useLabels-C_UIaxmz.cjs.js.map +1 -0
  459. package/dist/chunks/useLabels-DKXyqbI2.es.js +18 -0
  460. package/dist/chunks/useLabels-DKXyqbI2.es.js.map +1 -0
  461. package/dist/chunks/useListState-DXCqV37_.es.js +134 -0
  462. package/dist/chunks/useListState-DXCqV37_.es.js.map +1 -0
  463. package/dist/chunks/useListState-HM8Jsi0C.cjs.js +2 -0
  464. package/dist/chunks/useListState-HM8Jsi0C.cjs.js.map +1 -0
  465. package/dist/chunks/useLocalizedStringFormatter-DaRRUvyV.es.js +97 -0
  466. package/dist/chunks/useLocalizedStringFormatter-DaRRUvyV.es.js.map +1 -0
  467. package/dist/chunks/useLocalizedStringFormatter-kWoZGAh5.cjs.js +2 -0
  468. package/dist/chunks/useLocalizedStringFormatter-kWoZGAh5.cjs.js.map +1 -0
  469. package/dist/chunks/useObjectRef-4v2MxSjQ.cjs.js +2 -0
  470. package/dist/chunks/useObjectRef-4v2MxSjQ.cjs.js.map +1 -0
  471. package/dist/chunks/useObjectRef-CaJ5pgjX.es.js.map +1 -1
  472. package/dist/chunks/usePress-DUOmr3uI.es.js +456 -0
  473. package/dist/chunks/usePress-DUOmr3uI.es.js.map +1 -0
  474. package/dist/chunks/usePress-MEEljcWP.cjs.js +8 -0
  475. package/dist/chunks/usePress-MEEljcWP.cjs.js.map +1 -0
  476. package/dist/chunks/useProgressBar-CABe4KaK.es.js +48 -0
  477. package/dist/chunks/useProgressBar-CABe4KaK.es.js.map +1 -0
  478. package/dist/chunks/useProgressBar-C_mJ1JKi.cjs.js +2 -0
  479. package/dist/chunks/useProgressBar-C_mJ1JKi.cjs.js.map +1 -0
  480. package/dist/chunks/useSingleSelectListState-BawVWofI.cjs.js +2 -0
  481. package/dist/chunks/useSingleSelectListState-BawVWofI.cjs.js.map +1 -0
  482. package/dist/chunks/useSingleSelectListState-DU73GKrB.es.js +35 -0
  483. package/dist/chunks/useSingleSelectListState-DU73GKrB.es.js.map +1 -0
  484. package/dist/chunks/useSpinButton-Dyt6kG4o.cjs.js +2 -0
  485. package/dist/chunks/useSpinButton-Dyt6kG4o.cjs.js.map +1 -0
  486. package/dist/chunks/useSpinButton-U9DPSEEq.es.js +433 -0
  487. package/dist/chunks/useSpinButton-U9DPSEEq.es.js.map +1 -0
  488. package/dist/chunks/useSyncRef-BRCOnlwB.cjs.js +2 -0
  489. package/dist/chunks/useSyncRef-BRCOnlwB.cjs.js.map +1 -0
  490. package/dist/chunks/useSyncRef-DdLtHaST.es.js +13 -0
  491. package/dist/chunks/useSyncRef-DdLtHaST.es.js.map +1 -0
  492. package/dist/chunks/useTextField-B1RrrtMI.cjs.js +2 -0
  493. package/dist/chunks/useTextField-B1RrrtMI.cjs.js.map +1 -0
  494. package/dist/chunks/useTextField-KZ773QTk.es.js +91 -0
  495. package/dist/chunks/useTextField-KZ773QTk.es.js.map +1 -0
  496. package/dist/chunks/useToggle-DWRQYar0.cjs.js +2 -0
  497. package/dist/chunks/useToggle-DWRQYar0.cjs.js.map +1 -0
  498. package/dist/chunks/useToggle-Zn-Mv-4t.es.js +62 -0
  499. package/dist/chunks/useToggle-Zn-Mv-4t.es.js.map +1 -0
  500. package/dist/chunks/useToggleState-D7k4zllv.cjs.js +2 -0
  501. package/dist/chunks/useToggleState-D7k4zllv.cjs.js.map +1 -0
  502. package/dist/chunks/useToggleState-Uh0wTgdI.es.js.map +1 -1
  503. package/dist/chunks/useToolbar-C3dIbINA.es.js +55 -0
  504. package/dist/chunks/useToolbar-C3dIbINA.es.js.map +1 -0
  505. package/dist/chunks/useToolbar-D0DQSSBf.cjs.js +2 -0
  506. package/dist/chunks/useToolbar-D0DQSSBf.cjs.js.map +1 -0
  507. package/dist/chunks/useUpdateEffect-CCDx8D4X.es.js.map +1 -1
  508. package/dist/chunks/useUpdateEffect-sk3kiVGz.cjs.js +2 -0
  509. package/dist/chunks/useUpdateEffect-sk3kiVGz.cjs.js.map +1 -0
  510. package/dist/chunks/utils-Bv1frUk6.cjs.js +2 -0
  511. package/dist/chunks/utils-Bv1frUk6.cjs.js.map +1 -0
  512. package/dist/chunks/utils-C2fGIqzL.es.js +190 -0
  513. package/dist/chunks/utils-C2fGIqzL.es.js.map +1 -0
  514. package/dist/chunks/utils-DF3YB901.es.js +128 -0
  515. package/dist/chunks/utils-DF3YB901.es.js.map +1 -0
  516. package/dist/chunks/utils-DVb3jcp5.cjs.js +2 -0
  517. package/dist/chunks/utils-DVb3jcp5.cjs.js.map +1 -0
  518. package/dist/chunks/visually-hidden-BjtXUoFK.cjs.js +2 -0
  519. package/dist/chunks/visually-hidden-BjtXUoFK.cjs.js.map +1 -0
  520. package/dist/chunks/visually-hidden-CkxAz94w.es.js +11 -0
  521. package/dist/chunks/visually-hidden-CkxAz94w.es.js.map +1 -0
  522. package/dist/components/accordion.cjs +1 -1
  523. package/dist/components/accordion.es.js +1 -1
  524. package/dist/components/alert.cjs +1 -1
  525. package/dist/components/alert.es.js +1 -1
  526. package/dist/components/avatar.cjs +1 -1
  527. package/dist/components/badge.cjs +1 -1
  528. package/dist/components/badge.es.js +1 -1
  529. package/dist/components/button.cjs +1 -1
  530. package/dist/components/button.es.js +1 -1
  531. package/dist/components/calendar.cjs +1 -1
  532. package/dist/components/calendar.es.js +1 -1
  533. package/dist/components/card.cjs +1 -1
  534. package/dist/components/card.es.js +1 -1
  535. package/dist/components/checkbox.cjs +1 -1
  536. package/dist/components/checkbox.es.js +1 -1
  537. package/dist/components/collapsible-motion.cjs +1 -1
  538. package/dist/components/collapsible-motion.es.js +1 -1
  539. package/dist/components/combobox.cjs +1 -1
  540. package/dist/components/combobox.es.js +1 -1
  541. package/dist/components/components.cjs +1 -1
  542. package/dist/components/components.es.js +1 -1
  543. package/dist/components/data-table.cjs +1 -1
  544. package/dist/components/data-table.es.js +1 -1
  545. package/dist/components/date-input.cjs +1 -1
  546. package/dist/components/date-input.es.js +1 -1
  547. package/dist/components/date-picker.cjs +1 -1
  548. package/dist/components/date-picker.es.js +1 -1
  549. package/dist/components/date-range-picker.cjs +1 -1
  550. package/dist/components/date-range-picker.es.js +1 -1
  551. package/dist/components/dialog.cjs +1 -1
  552. package/dist/components/dialog.es.js +1 -1
  553. package/dist/components/draggable-list.cjs +1 -1
  554. package/dist/components/draggable-list.es.js +1 -1
  555. package/dist/components/drawer.cjs +1 -1
  556. package/dist/components/drawer.es.js +1 -1
  557. package/dist/components/form-field.cjs +1 -1
  558. package/dist/components/form-field.es.js +1 -1
  559. package/dist/components/group.cjs +1 -1
  560. package/dist/components/group.es.js +1 -1
  561. package/dist/components/heading.cjs +1 -1
  562. package/dist/components/heading.es.js +1 -1
  563. package/dist/components/icon-button.cjs +1 -1
  564. package/dist/components/icon-button.es.js +1 -1
  565. package/dist/components/icon-toggle-button.cjs +1 -1
  566. package/dist/components/icon-toggle-button.es.js +1 -1
  567. package/dist/components/index.d.ts +2 -0
  568. package/dist/components/kbd.cjs +1 -1
  569. package/dist/components/kbd.es.js +1 -1
  570. package/dist/components/link.cjs +1 -1
  571. package/dist/components/link.es.js +1 -1
  572. package/dist/components/loading-spinner.cjs +1 -1
  573. package/dist/components/loading-spinner.es.js +1 -1
  574. package/dist/components/localized-field.cjs +1 -1
  575. package/dist/components/localized-field.es.js +1 -1
  576. package/dist/components/money-input.cjs +1 -1
  577. package/dist/components/money-input.es.js +1 -1
  578. package/dist/components/multiline-text-input.cjs +1 -1
  579. package/dist/components/multiline-text-input.es.js +1 -1
  580. package/dist/components/nimbus-i18n-provider/index.d.ts +2 -0
  581. package/dist/components/nimbus-i18n-provider/nimbus-i18n-provider.d.ts +16 -0
  582. package/dist/components/nimbus-i18n-provider/nimbus-i18n-provider.types.d.ts +16 -0
  583. package/dist/components/nimbus-i18n-provider.cjs +2 -0
  584. package/dist/components/nimbus-i18n-provider.cjs.map +1 -0
  585. package/dist/components/nimbus-i18n-provider.es.js +5 -0
  586. package/dist/components/nimbus-i18n-provider.es.js.map +1 -0
  587. package/dist/components/nimbus-provider.cjs +1 -1
  588. package/dist/components/nimbus-provider.es.js +1 -1
  589. package/dist/components/number-input.cjs +1 -1
  590. package/dist/components/number-input.es.js +1 -1
  591. package/dist/components/pagination.cjs +1 -1
  592. package/dist/components/pagination.es.js +1 -1
  593. package/dist/components/password-input.cjs +1 -1
  594. package/dist/components/password-input.es.js +1 -1
  595. package/dist/components/popover.cjs +1 -1
  596. package/dist/components/popover.es.js +1 -1
  597. package/dist/components/progress-bar.cjs +1 -1
  598. package/dist/components/progress-bar.es.js +1 -1
  599. package/dist/components/radio-input.cjs +1 -1
  600. package/dist/components/radio-input.es.js +1 -1
  601. package/dist/components/range-calendar.cjs +1 -1
  602. package/dist/components/range-calendar.es.js +1 -1
  603. package/dist/components/rich-text-input.cjs +1 -1
  604. package/dist/components/rich-text-input.es.js +1 -1
  605. package/dist/components/scoped-search-input.cjs +1 -1
  606. package/dist/components/scoped-search-input.cjs.map +1 -1
  607. package/dist/components/scoped-search-input.es.js +2 -150
  608. package/dist/components/scoped-search-input.es.js.map +1 -1
  609. package/dist/components/search-input.cjs +1 -1
  610. package/dist/components/search-input.es.js +1 -1
  611. package/dist/components/select.cjs +1 -1
  612. package/dist/components/select.es.js +1 -1
  613. package/dist/components/separator.cjs +1 -1
  614. package/dist/components/separator.es.js +1 -1
  615. package/dist/components/split-button.cjs +1 -1
  616. package/dist/components/split-button.es.js +1 -1
  617. package/dist/components/switch.cjs +1 -1
  618. package/dist/components/switch.es.js +1 -1
  619. package/dist/components/tabs.cjs +1 -1
  620. package/dist/components/tabs.es.js +1 -1
  621. package/dist/components/tag-group.cjs +1 -1
  622. package/dist/components/tag-group.es.js +1 -1
  623. package/dist/components/text-input.cjs +1 -1
  624. package/dist/components/text-input.es.js +1 -1
  625. package/dist/components/text.cjs +1 -1
  626. package/dist/components/text.es.js +1 -1
  627. package/dist/components/time-input.cjs +1 -1
  628. package/dist/components/time-input.es.js +1 -1
  629. package/dist/components/toggle-button-group.cjs +1 -1
  630. package/dist/components/toggle-button-group.es.js +1 -1
  631. package/dist/components/toggle-button.cjs +1 -1
  632. package/dist/components/toggle-button.es.js +1 -1
  633. package/dist/components/toolbar.cjs +1 -1
  634. package/dist/components/toolbar.es.js +1 -1
  635. package/dist/components/tooltip.cjs +1 -1
  636. package/dist/components/tooltip.es.js +2 -2
  637. package/dist/components/visually-hidden.cjs +1 -1
  638. package/dist/components/visually-hidden.es.js +1 -1
  639. package/dist/index.cjs +1 -1
  640. package/dist/index.cjs.map +1 -1
  641. package/dist/index.es.js +227 -223
  642. package/dist/index.es.js.map +1 -1
  643. package/dist/type-utils/index.d.ts +1 -0
  644. package/dist/type-utils/shared-types.d.ts +21 -0
  645. package/package.json +15 -11
  646. package/dist/chunks/Button-CFZnLKVR.cjs.js +0 -2
  647. package/dist/chunks/Button-CFZnLKVR.cjs.js.map +0 -1
  648. package/dist/chunks/Button-Dx3xzN8n.es.js +0 -79
  649. package/dist/chunks/Button-Dx3xzN8n.es.js.map +0 -1
  650. package/dist/chunks/CollectionBuilder-BiEelELF.cjs.js +0 -18
  651. package/dist/chunks/CollectionBuilder-BiEelELF.cjs.js.map +0 -1
  652. package/dist/chunks/CollectionBuilder-Wz-mnWjQ.es.js +0 -677
  653. package/dist/chunks/CollectionBuilder-Wz-mnWjQ.es.js.map +0 -1
  654. package/dist/chunks/DateField-CDTSjqvQ.cjs.js +0 -2
  655. package/dist/chunks/DateField-CDTSjqvQ.cjs.js.map +0 -1
  656. package/dist/chunks/DateField-DZwn3cIj.es.js +0 -2691
  657. package/dist/chunks/DateField-DZwn3cIj.es.js.map +0 -1
  658. package/dist/chunks/DatePicker-B2Nf_0Sq.es.js +0 -786
  659. package/dist/chunks/DatePicker-B2Nf_0Sq.es.js.map +0 -1
  660. package/dist/chunks/DatePicker-DCjrqg4Q.cjs.js +0 -2
  661. package/dist/chunks/DatePicker-DCjrqg4Q.cjs.js.map +0 -1
  662. package/dist/chunks/Dialog-Qpq4hk89.es.js +0 -1951
  663. package/dist/chunks/Dialog-Qpq4hk89.es.js.map +0 -1
  664. package/dist/chunks/Dialog-XGXh4NXU.cjs.js +0 -7
  665. package/dist/chunks/Dialog-XGXh4NXU.cjs.js.map +0 -1
  666. package/dist/chunks/DragAndDrop-BXEtfOEa.es.js +0 -76
  667. package/dist/chunks/DragAndDrop-BXEtfOEa.es.js.map +0 -1
  668. package/dist/chunks/DragAndDrop-Cu1BgmHe.cjs.js +0 -2
  669. package/dist/chunks/DragAndDrop-Cu1BgmHe.cjs.js.map +0 -1
  670. package/dist/chunks/FocusScope-BY2fddGq.es.js +0 -625
  671. package/dist/chunks/FocusScope-BY2fddGq.es.js.map +0 -1
  672. package/dist/chunks/FocusScope-vogC4IAT.cjs.js +0 -2
  673. package/dist/chunks/FocusScope-vogC4IAT.cjs.js.map +0 -1
  674. package/dist/chunks/Group-BBaUrRF9.es.js +0 -47
  675. package/dist/chunks/Group-BBaUrRF9.es.js.map +0 -1
  676. package/dist/chunks/Group-BX1EpD9E.cjs.js +0 -2
  677. package/dist/chunks/Group-BX1EpD9E.cjs.js.map +0 -1
  678. package/dist/chunks/Header-BmzdY2bW.cjs.js +0 -2
  679. package/dist/chunks/Header-BmzdY2bW.cjs.js.map +0 -1
  680. package/dist/chunks/Header-DFcQWjkP.es.js +0 -59
  681. package/dist/chunks/Header-DFcQWjkP.es.js.map +0 -1
  682. package/dist/chunks/Heading-CCs6OF_m.cjs.js +0 -2
  683. package/dist/chunks/Heading-CCs6OF_m.cjs.js.map +0 -1
  684. package/dist/chunks/Heading-DFiVmZUR.es.js +0 -1619
  685. package/dist/chunks/Heading-DFiVmZUR.es.js.map +0 -1
  686. package/dist/chunks/Hidden-j3Lbt7xL.es.js +0 -28
  687. package/dist/chunks/Hidden-j3Lbt7xL.es.js.map +0 -1
  688. package/dist/chunks/Input-Da2oLmEN.es.js +0 -43
  689. package/dist/chunks/Input-Da2oLmEN.es.js.map +0 -1
  690. package/dist/chunks/Input-_6sPm9s0.cjs.js +0 -2
  691. package/dist/chunks/Input-_6sPm9s0.cjs.js.map +0 -1
  692. package/dist/chunks/Label-BgrYyYXn.cjs.js +0 -2
  693. package/dist/chunks/Label-BgrYyYXn.cjs.js.map +0 -1
  694. package/dist/chunks/Label-qcXzazih.es.js +0 -17
  695. package/dist/chunks/Label-qcXzazih.es.js.map +0 -1
  696. package/dist/chunks/ListBox-CFvXqaPX.cjs.js +0 -2
  697. package/dist/chunks/ListBox-CFvXqaPX.cjs.js.map +0 -1
  698. package/dist/chunks/ListBox-_1Uk-5-7.es.js +0 -493
  699. package/dist/chunks/ListBox-_1Uk-5-7.es.js.map +0 -1
  700. package/dist/chunks/ListKeyboardDelegate-ByRdSpOe.es.js +0 -159
  701. package/dist/chunks/ListKeyboardDelegate-ByRdSpOe.es.js.map +0 -1
  702. package/dist/chunks/ListKeyboardDelegate-CYRgZzU8.cjs.js +0 -2
  703. package/dist/chunks/ListKeyboardDelegate-CYRgZzU8.cjs.js.map +0 -1
  704. package/dist/chunks/Modal-CVOcKPNx.cjs.js +0 -2
  705. package/dist/chunks/Modal-CVOcKPNx.cjs.js.map +0 -1
  706. package/dist/chunks/Modal-DZrVgGsJ.es.js +0 -197
  707. package/dist/chunks/Modal-DZrVgGsJ.es.js.map +0 -1
  708. package/dist/chunks/OverlayArrow-CYjyBtg8.cjs.js +0 -2
  709. package/dist/chunks/OverlayArrow-CYjyBtg8.cjs.js.map +0 -1
  710. package/dist/chunks/OverlayArrow-CwYMJqgj.es.js +0 -491
  711. package/dist/chunks/OverlayArrow-CwYMJqgj.es.js.map +0 -1
  712. package/dist/chunks/ProgressBar-C9Y3C7_B.cjs.js +0 -2
  713. package/dist/chunks/ProgressBar-C9Y3C7_B.cjs.js.map +0 -1
  714. package/dist/chunks/ProgressBar-dYIUhB6B.es.js +0 -42
  715. package/dist/chunks/ProgressBar-dYIUhB6B.es.js.map +0 -1
  716. package/dist/chunks/SSRProvider-Bc-sMhsT.cjs.js +0 -2
  717. package/dist/chunks/SSRProvider-Bc-sMhsT.cjs.js.map +0 -1
  718. package/dist/chunks/SSRProvider-Cu8KibIK.es.js +0 -51
  719. package/dist/chunks/SSRProvider-Cu8KibIK.es.js.map +0 -1
  720. package/dist/chunks/SelectionIndicator-Cp3OYqg6.cjs.js +0 -2
  721. package/dist/chunks/SelectionIndicator-Cp3OYqg6.cjs.js.map +0 -1
  722. package/dist/chunks/SelectionIndicator-DopimabS.es.js +0 -17
  723. package/dist/chunks/SelectionIndicator-DopimabS.es.js.map +0 -1
  724. package/dist/chunks/SelectionManager-1rNaWE7D.cjs.js +0 -2
  725. package/dist/chunks/SelectionManager-1rNaWE7D.cjs.js.map +0 -1
  726. package/dist/chunks/SelectionManager-DMLLo5N3.es.js +0 -1132
  727. package/dist/chunks/SelectionManager-DMLLo5N3.es.js.map +0 -1
  728. package/dist/chunks/Separator-6J1KiDlQ.cjs.js +0 -2
  729. package/dist/chunks/Separator-6J1KiDlQ.cjs.js.map +0 -1
  730. package/dist/chunks/Separator-DyXjJGoH.es.js +0 -55
  731. package/dist/chunks/Separator-DyXjJGoH.es.js.map +0 -1
  732. package/dist/chunks/TextArea-DItoG16s.es.js +0 -42
  733. package/dist/chunks/TextArea-DItoG16s.es.js.map +0 -1
  734. package/dist/chunks/TextArea-Y5635aIM.cjs.js +0 -2
  735. package/dist/chunks/TextArea-Y5635aIM.cjs.js.map +0 -1
  736. package/dist/chunks/ToggleButton-1I5cetxI.cjs.js +0 -2
  737. package/dist/chunks/ToggleButton-1I5cetxI.cjs.js.map +0 -1
  738. package/dist/chunks/ToggleButton-881iW8P_.es.js +0 -150
  739. package/dist/chunks/ToggleButton-881iW8P_.es.js.map +0 -1
  740. package/dist/chunks/VisuallyHidden-C1WQXLCm.cjs.js +0 -2
  741. package/dist/chunks/VisuallyHidden-C1WQXLCm.cjs.js.map +0 -1
  742. package/dist/chunks/VisuallyHidden-Dxf1qswV.es.js +0 -41
  743. package/dist/chunks/VisuallyHidden-Dxf1qswV.es.js.map +0 -1
  744. package/dist/chunks/accordion-CrISuCHH.es.js +0 -221
  745. package/dist/chunks/accordion-CrISuCHH.es.js.map +0 -1
  746. package/dist/chunks/accordion-D7a9HHSH.cjs.js +0 -2
  747. package/dist/chunks/accordion-D7a9HHSH.cjs.js.map +0 -1
  748. package/dist/chunks/alert-CPHjPe4-.cjs.js +0 -2
  749. package/dist/chunks/alert-CPHjPe4-.cjs.js.map +0 -1
  750. package/dist/chunks/alert-lNg0Rz2w.es.js +0 -138
  751. package/dist/chunks/alert-lNg0Rz2w.es.js.map +0 -1
  752. package/dist/chunks/avatar-_o-uSXYy.cjs.js +0 -2
  753. package/dist/chunks/avatar-_o-uSXYy.cjs.js.map +0 -1
  754. package/dist/chunks/badge-Csn5glEd.es.js +0 -17
  755. package/dist/chunks/badge-Csn5glEd.es.js.map +0 -1
  756. package/dist/chunks/badge-mMpNb3Qj.cjs.js +0 -2
  757. package/dist/chunks/badge-mMpNb3Qj.cjs.js.map +0 -1
  758. package/dist/chunks/button-B5OOW-2z.cjs.js +0 -2
  759. package/dist/chunks/button-B5OOW-2z.cjs.js.map +0 -1
  760. package/dist/chunks/button-IZUJaJku.es.js +0 -62
  761. package/dist/chunks/button-IZUJaJku.es.js.map +0 -1
  762. package/dist/chunks/calendar-0Tr21POc.cjs.js +0 -2
  763. package/dist/chunks/calendar-0Tr21POc.cjs.js.map +0 -1
  764. package/dist/chunks/calendar-okvAi9qK.es.js +0 -187
  765. package/dist/chunks/calendar-okvAi9qK.es.js.map +0 -1
  766. package/dist/chunks/card-BB_1xrND.es.js +0 -78
  767. package/dist/chunks/card-BB_1xrND.es.js.map +0 -1
  768. package/dist/chunks/card-BPEsGx1J.cjs.js +0 -2
  769. package/dist/chunks/card-BPEsGx1J.cjs.js.map +0 -1
  770. package/dist/chunks/checkbox-Bp0eyZ6q.es.js +0 -218
  771. package/dist/chunks/checkbox-Bp0eyZ6q.es.js.map +0 -1
  772. package/dist/chunks/checkbox-QQkdNVJO.cjs.js +0 -2
  773. package/dist/chunks/checkbox-QQkdNVJO.cjs.js.map +0 -1
  774. package/dist/chunks/collapsible-motion-CykDlHn3.cjs.js +0 -2
  775. package/dist/chunks/collapsible-motion-CykDlHn3.cjs.js.map +0 -1
  776. package/dist/chunks/collapsible-motion-DPqgzRWq.es.js +0 -83
  777. package/dist/chunks/collapsible-motion-DPqgzRWq.es.js.map +0 -1
  778. package/dist/chunks/combobox-Bntl4sYo.cjs.js +0 -2
  779. package/dist/chunks/combobox-Bntl4sYo.cjs.js.map +0 -1
  780. package/dist/chunks/combobox-DYREbkL7.es.js +0 -2425
  781. package/dist/chunks/combobox-DYREbkL7.es.js.map +0 -1
  782. package/dist/chunks/context-OoV8SSWX.cjs.js +0 -2
  783. package/dist/chunks/context-OoV8SSWX.cjs.js.map +0 -1
  784. package/dist/chunks/context-R4YUlO9Y.es.js +0 -108
  785. package/dist/chunks/context-R4YUlO9Y.es.js.map +0 -1
  786. package/dist/chunks/data-table-BhV1DJXJ.cjs.js +0 -2
  787. package/dist/chunks/data-table-BhV1DJXJ.cjs.js.map +0 -1
  788. package/dist/chunks/data-table-TSza8b10.es.js +0 -3585
  789. package/dist/chunks/data-table-TSza8b10.es.js.map +0 -1
  790. package/dist/chunks/date-input-B84sXbjL.cjs.js +0 -2
  791. package/dist/chunks/date-input-B84sXbjL.cjs.js.map +0 -1
  792. package/dist/chunks/date-input-BiOdvpWz.es.js +0 -21
  793. package/dist/chunks/date-input-BiOdvpWz.es.js.map +0 -1
  794. package/dist/chunks/date-picker-2SDD5gY9.cjs.js +0 -2
  795. package/dist/chunks/date-picker-2SDD5gY9.cjs.js.map +0 -1
  796. package/dist/chunks/date-picker-EuMU6RtR.es.js +0 -220
  797. package/dist/chunks/date-picker-EuMU6RtR.es.js.map +0 -1
  798. package/dist/chunks/date-range-picker-CL-QH8BW.es.js +0 -281
  799. package/dist/chunks/date-range-picker-CL-QH8BW.es.js.map +0 -1
  800. package/dist/chunks/date-range-picker-DmHmhMvU.cjs.js +0 -2
  801. package/dist/chunks/date-range-picker-DmHmhMvU.cjs.js.map +0 -1
  802. package/dist/chunks/dialog-BeKbQUsU.cjs.js +0 -2
  803. package/dist/chunks/dialog-BeKbQUsU.cjs.js.map +0 -1
  804. package/dist/chunks/dialog-C9Dn6GoU.es.js +0 -165
  805. package/dist/chunks/dialog-C9Dn6GoU.es.js.map +0 -1
  806. package/dist/chunks/dialog.title-CfBfNT9q.es.js +0 -152
  807. package/dist/chunks/dialog.title-CfBfNT9q.es.js.map +0 -1
  808. package/dist/chunks/dialog.title-CynBe3KN.cjs.js +0 -2
  809. package/dist/chunks/dialog.title-CynBe3KN.cjs.js.map +0 -1
  810. package/dist/chunks/draggable-list-3KlajQgQ.es.js +0 -4211
  811. package/dist/chunks/draggable-list-3KlajQgQ.es.js.map +0 -1
  812. package/dist/chunks/draggable-list-uMR8JUsT.cjs.js +0 -3
  813. package/dist/chunks/draggable-list-uMR8JUsT.cjs.js.map +0 -1
  814. package/dist/chunks/drawer-CT5qAdLo.es.js +0 -304
  815. package/dist/chunks/drawer-CT5qAdLo.es.js.map +0 -1
  816. package/dist/chunks/drawer-vgDYdzlq.cjs.js +0 -2
  817. package/dist/chunks/drawer-vgDYdzlq.cjs.js.map +0 -1
  818. package/dist/chunks/extract-style-props-DYXEhLtq.es.js +0 -11
  819. package/dist/chunks/extract-style-props-DYXEhLtq.es.js.map +0 -1
  820. package/dist/chunks/focusSafely-BNAvQ-wF.cjs.js +0 -2
  821. package/dist/chunks/focusSafely-BNAvQ-wF.cjs.js.map +0 -1
  822. package/dist/chunks/focusSafely-BS2OU9MQ.es.js +0 -27
  823. package/dist/chunks/focusSafely-BS2OU9MQ.es.js.map +0 -1
  824. package/dist/chunks/form-field-BYlpCXdY.es.js +0 -231
  825. package/dist/chunks/form-field-BYlpCXdY.es.js.map +0 -1
  826. package/dist/chunks/form-field-CIGQxVVS.cjs.js +0 -2
  827. package/dist/chunks/form-field-CIGQxVVS.cjs.js.map +0 -1
  828. package/dist/chunks/getScrollParent-B8PotBOX.cjs.js +0 -2
  829. package/dist/chunks/getScrollParent-B8PotBOX.cjs.js.map +0 -1
  830. package/dist/chunks/getScrollParent-BS4bncfK.es.js +0 -10
  831. package/dist/chunks/getScrollParent-BS4bncfK.es.js.map +0 -1
  832. package/dist/chunks/group-BqUFlw5R.cjs.js +0 -2
  833. package/dist/chunks/group-BqUFlw5R.cjs.js.map +0 -1
  834. package/dist/chunks/group-CWADf2vF.es.js +0 -13
  835. package/dist/chunks/group-CWADf2vF.es.js.map +0 -1
  836. package/dist/chunks/heading-BTacGwo9.cjs.js +0 -2
  837. package/dist/chunks/heading-BTacGwo9.cjs.js.map +0 -1
  838. package/dist/chunks/heading-BtazVUd5.es.js +0 -25
  839. package/dist/chunks/heading-BtazVUd5.es.js.map +0 -1
  840. package/dist/chunks/icon-button-DQS2apw-.es.js +0 -14
  841. package/dist/chunks/icon-button-DQS2apw-.es.js.map +0 -1
  842. package/dist/chunks/icon-button-vWPrT-bR.cjs.js +0 -2
  843. package/dist/chunks/icon-button-vWPrT-bR.cjs.js.map +0 -1
  844. package/dist/chunks/icon-toggle-button-Bt_1Mdus.es.js +0 -13
  845. package/dist/chunks/icon-toggle-button-Bt_1Mdus.es.js.map +0 -1
  846. package/dist/chunks/icon-toggle-button-Bv-FwWwz.cjs.js +0 -2
  847. package/dist/chunks/icon-toggle-button-Bv-FwWwz.cjs.js.map +0 -1
  848. package/dist/chunks/index-CtB71yr7.es.js +0 -5655
  849. package/dist/chunks/index-CtB71yr7.es.js.map +0 -1
  850. package/dist/chunks/inertValue-B3AFhVG4.cjs.js +0 -2
  851. package/dist/chunks/inertValue-B3AFhVG4.cjs.js.map +0 -1
  852. package/dist/chunks/kbd-BaeV_DL-.cjs.js +0 -2
  853. package/dist/chunks/kbd-BaeV_DL-.cjs.js.map +0 -1
  854. package/dist/chunks/kbd-CH9rYghB.es.js +0 -15
  855. package/dist/chunks/kbd-CH9rYghB.es.js.map +0 -1
  856. package/dist/chunks/link-BEhlSTUU.es.js +0 -48
  857. package/dist/chunks/link-BEhlSTUU.es.js.map +0 -1
  858. package/dist/chunks/link-DpU4rPCp.cjs.js +0 -2
  859. package/dist/chunks/link-DpU4rPCp.cjs.js.map +0 -1
  860. package/dist/chunks/loading-spinner-BiVTAfmp.es.js +0 -59
  861. package/dist/chunks/loading-spinner-BiVTAfmp.es.js.map +0 -1
  862. package/dist/chunks/loading-spinner-DQM-6XnY.cjs.js +0 -2
  863. package/dist/chunks/loading-spinner-DQM-6XnY.cjs.js.map +0 -1
  864. package/dist/chunks/localized-field-Bp4N2Mvl.es.js +0 -470
  865. package/dist/chunks/localized-field-Bp4N2Mvl.es.js.map +0 -1
  866. package/dist/chunks/localized-field-Cmwb6fmQ.cjs.js +0 -2
  867. package/dist/chunks/localized-field-Cmwb6fmQ.cjs.js.map +0 -1
  868. package/dist/chunks/make-element-focusable-C4jhHHl0.es.js +0 -25
  869. package/dist/chunks/make-element-focusable-C4jhHHl0.es.js.map +0 -1
  870. package/dist/chunks/make-element-focusable-oedzOY_M.cjs.js +0 -2
  871. package/dist/chunks/make-element-focusable-oedzOY_M.cjs.js.map +0 -1
  872. package/dist/chunks/menu-SXtkybBB.cjs.js +0 -2
  873. package/dist/chunks/menu-SXtkybBB.cjs.js.map +0 -1
  874. package/dist/chunks/menu-XKnGXngu.es.js +0 -147
  875. package/dist/chunks/menu-XKnGXngu.es.js.map +0 -1
  876. package/dist/chunks/mergeProps-BA5Cwf5w.cjs.js +0 -2
  877. package/dist/chunks/mergeProps-BA5Cwf5w.cjs.js.map +0 -1
  878. package/dist/chunks/mergeProps-CzyOU2NE.es.js +0 -130
  879. package/dist/chunks/mergeProps-CzyOU2NE.es.js.map +0 -1
  880. package/dist/chunks/money-input-BqYBGLzc.es.js +0 -526
  881. package/dist/chunks/money-input-BqYBGLzc.es.js.map +0 -1
  882. package/dist/chunks/money-input-Cz8E18lq.cjs.js +0 -2
  883. package/dist/chunks/money-input-Cz8E18lq.cjs.js.map +0 -1
  884. package/dist/chunks/multiline-text-input-AyyHGKY2.es.js +0 -64
  885. package/dist/chunks/multiline-text-input-AyyHGKY2.es.js.map +0 -1
  886. package/dist/chunks/multiline-text-input-jGidPD3q.cjs.js +0 -2
  887. package/dist/chunks/multiline-text-input-jGidPD3q.cjs.js.map +0 -1
  888. package/dist/chunks/nimbus-provider-BHNFDQ0f.es.js +0 -101
  889. package/dist/chunks/nimbus-provider-BHNFDQ0f.es.js.map +0 -1
  890. package/dist/chunks/nimbus-provider-WX_qUCxo.cjs.js +0 -2
  891. package/dist/chunks/nimbus-provider-WX_qUCxo.cjs.js.map +0 -1
  892. package/dist/chunks/number-input-CynG_F-c.cjs.js +0 -2
  893. package/dist/chunks/number-input-CynG_F-c.cjs.js.map +0 -1
  894. package/dist/chunks/number-input-rotBI7ui.es.js +0 -691
  895. package/dist/chunks/number-input-rotBI7ui.es.js.map +0 -1
  896. package/dist/chunks/openLink-CY66vjvW.es.js +0 -105
  897. package/dist/chunks/openLink-CY66vjvW.es.js.map +0 -1
  898. package/dist/chunks/pagination-DdMhz-Ka.cjs.js +0 -2
  899. package/dist/chunks/pagination-DdMhz-Ka.cjs.js.map +0 -1
  900. package/dist/chunks/pagination-Dqt0f5WQ.es.js +0 -160
  901. package/dist/chunks/pagination-Dqt0f5WQ.es.js.map +0 -1
  902. package/dist/chunks/password-input-BVHKD6s2.cjs.js +0 -2
  903. package/dist/chunks/password-input-BVHKD6s2.cjs.js.map +0 -1
  904. package/dist/chunks/password-input-DRmX3C3I.es.js +0 -54
  905. package/dist/chunks/password-input-DRmX3C3I.es.js.map +0 -1
  906. package/dist/chunks/popover-CfEq5G5-.cjs.js +0 -2
  907. package/dist/chunks/popover-CfEq5G5-.cjs.js.map +0 -1
  908. package/dist/chunks/popover-DNaC7CwB.es.js +0 -14
  909. package/dist/chunks/popover-DNaC7CwB.es.js.map +0 -1
  910. package/dist/chunks/progress-bar-CmQaITmw.cjs.js +0 -2
  911. package/dist/chunks/progress-bar-CmQaITmw.cjs.js.map +0 -1
  912. package/dist/chunks/progress-bar-DGFMl3Vg.es.js +0 -77
  913. package/dist/chunks/progress-bar-DGFMl3Vg.es.js.map +0 -1
  914. package/dist/chunks/radio-input-Cg5MZ21w.cjs.js +0 -2
  915. package/dist/chunks/radio-input-Cg5MZ21w.cjs.js.map +0 -1
  916. package/dist/chunks/radio-input-DPwU5M16.es.js +0 -350
  917. package/dist/chunks/radio-input-DPwU5M16.es.js.map +0 -1
  918. package/dist/chunks/range-calendar-PUt59Hda.es.js +0 -187
  919. package/dist/chunks/range-calendar-PUt59Hda.es.js.map +0 -1
  920. package/dist/chunks/range-calendar-lhmomEF_.cjs.js +0 -2
  921. package/dist/chunks/range-calendar-lhmomEF_.cjs.js.map +0 -1
  922. package/dist/chunks/rich-text-input-Cm0M04n-.es.js +0 -7801
  923. package/dist/chunks/rich-text-input-Cm0M04n-.es.js.map +0 -1
  924. package/dist/chunks/rich-text-input-DqwZD5Di.cjs.js +0 -24
  925. package/dist/chunks/rich-text-input-DqwZD5Di.cjs.js.map +0 -1
  926. package/dist/chunks/scrollIntoView-DTfS0nWq.es.js +0 -96
  927. package/dist/chunks/scrollIntoView-DTfS0nWq.es.js.map +0 -1
  928. package/dist/chunks/scrollIntoView-x1EbcfEq.cjs.js +0 -2
  929. package/dist/chunks/scrollIntoView-x1EbcfEq.cjs.js.map +0 -1
  930. package/dist/chunks/search-input-BvJKOCVM.cjs.js +0 -2
  931. package/dist/chunks/search-input-BvJKOCVM.cjs.js.map +0 -1
  932. package/dist/chunks/search-input-C8cD1bnn.es.js +0 -361
  933. package/dist/chunks/search-input-C8cD1bnn.es.js.map +0 -1
  934. package/dist/chunks/select-DfuSGQSs.cjs.js +0 -2
  935. package/dist/chunks/select-DfuSGQSs.cjs.js.map +0 -1
  936. package/dist/chunks/select-X1qJU5Yn.es.js +0 -775
  937. package/dist/chunks/select-X1qJU5Yn.es.js.map +0 -1
  938. package/dist/chunks/separator-BHD3Ztot.es.js +0 -24
  939. package/dist/chunks/separator-BHD3Ztot.es.js.map +0 -1
  940. package/dist/chunks/separator-FEY8A05K.cjs.js +0 -2
  941. package/dist/chunks/separator-FEY8A05K.cjs.js.map +0 -1
  942. package/dist/chunks/split-button-LENwoBTF.es.js +0 -100
  943. package/dist/chunks/split-button-LENwoBTF.es.js.map +0 -1
  944. package/dist/chunks/split-button-go3Ez6Ea.cjs.js +0 -2
  945. package/dist/chunks/split-button-go3Ez6Ea.cjs.js.map +0 -1
  946. package/dist/chunks/switch-BDRu376G.es.js +0 -67
  947. package/dist/chunks/switch-BDRu376G.es.js.map +0 -1
  948. package/dist/chunks/switch-RPIMfaqs.cjs.js +0 -2
  949. package/dist/chunks/switch-RPIMfaqs.cjs.js.map +0 -1
  950. package/dist/chunks/tabs-BtWK-J_p.es.js +0 -428
  951. package/dist/chunks/tabs-BtWK-J_p.es.js.map +0 -1
  952. package/dist/chunks/tabs-CEB3Dfex.cjs.js +0 -2
  953. package/dist/chunks/tabs-CEB3Dfex.cjs.js.map +0 -1
  954. package/dist/chunks/tag-group-Btt0egzG.cjs.js +0 -2
  955. package/dist/chunks/tag-group-Btt0egzG.cjs.js.map +0 -1
  956. package/dist/chunks/tag-group-D2dgXSsV.es.js +0 -554
  957. package/dist/chunks/tag-group-D2dgXSsV.es.js.map +0 -1
  958. package/dist/chunks/text-BgiP8ZB6.es.js +0 -24
  959. package/dist/chunks/text-BgiP8ZB6.es.js.map +0 -1
  960. package/dist/chunks/text-CCW9kDT_.cjs.js +0 -2
  961. package/dist/chunks/text-CCW9kDT_.cjs.js.map +0 -1
  962. package/dist/chunks/text-input-CKGfCx6k.cjs.js +0 -2
  963. package/dist/chunks/text-input-CKGfCx6k.cjs.js.map +0 -1
  964. package/dist/chunks/text-input-DNorjU50.es.js +0 -49
  965. package/dist/chunks/text-input-DNorjU50.es.js.map +0 -1
  966. package/dist/chunks/time-input-B6we5H7C.es.js +0 -21
  967. package/dist/chunks/time-input-B6we5H7C.es.js.map +0 -1
  968. package/dist/chunks/time-input-CweVZv1Q.cjs.js +0 -2
  969. package/dist/chunks/time-input-CweVZv1Q.cjs.js.map +0 -1
  970. package/dist/chunks/toggle-button-CLEgCPGX.cjs.js +0 -2
  971. package/dist/chunks/toggle-button-CLEgCPGX.cjs.js.map +0 -1
  972. package/dist/chunks/toggle-button-D3M4e72c.es.js +0 -30
  973. package/dist/chunks/toggle-button-D3M4e72c.es.js.map +0 -1
  974. package/dist/chunks/toggle-button-group-CE2Urvj8.cjs.js +0 -2
  975. package/dist/chunks/toggle-button-group-CE2Urvj8.cjs.js.map +0 -1
  976. package/dist/chunks/toggle-button-group-Ce7ezOED.es.js +0 -29
  977. package/dist/chunks/toggle-button-group-Ce7ezOED.es.js.map +0 -1
  978. package/dist/chunks/toolbar-Bn9pAwjU.es.js +0 -61
  979. package/dist/chunks/toolbar-Bn9pAwjU.es.js.map +0 -1
  980. package/dist/chunks/toolbar-D3Jj83mp.cjs.js +0 -2
  981. package/dist/chunks/toolbar-D3Jj83mp.cjs.js.map +0 -1
  982. package/dist/chunks/tooltip-BPTOkK7W.cjs.js +0 -2
  983. package/dist/chunks/tooltip-BPTOkK7W.cjs.js.map +0 -1
  984. package/dist/chunks/tooltip-sgakxhiy.es.js +0 -268
  985. package/dist/chunks/tooltip-sgakxhiy.es.js.map +0 -1
  986. package/dist/chunks/useButton-KnJ6A32S.cjs.js +0 -2
  987. package/dist/chunks/useButton-KnJ6A32S.cjs.js.map +0 -1
  988. package/dist/chunks/useButton-_sJ3_8ha.es.js +0 -57
  989. package/dist/chunks/useButton-_sJ3_8ha.es.js.map +0 -1
  990. package/dist/chunks/useCollator-BHMZd1r6.es.js +0 -12
  991. package/dist/chunks/useCollator-BHMZd1r6.es.js.map +0 -1
  992. package/dist/chunks/useCollator-YVJAe1GI.cjs.js +0 -2
  993. package/dist/chunks/useCollator-YVJAe1GI.cjs.js.map +0 -1
  994. package/dist/chunks/useDateFormatter-BBcUQTYP.cjs.js +0 -2
  995. package/dist/chunks/useDateFormatter-BBcUQTYP.cjs.js.map +0 -1
  996. package/dist/chunks/useDateFormatter-C4zVAL_K.es.js +0 -1632
  997. package/dist/chunks/useDateFormatter-C4zVAL_K.es.js.map +0 -1
  998. package/dist/chunks/useDisclosureState-DtcHCDt4.es.js +0 -87
  999. package/dist/chunks/useDisclosureState-DtcHCDt4.es.js.map +0 -1
  1000. package/dist/chunks/useDisclosureState-ipt8A1Kc.cjs.js +0 -2
  1001. package/dist/chunks/useDisclosureState-ipt8A1Kc.cjs.js.map +0 -1
  1002. package/dist/chunks/useEvent-Bh_fbauk.es.js +0 -22
  1003. package/dist/chunks/useEvent-Bh_fbauk.es.js.map +0 -1
  1004. package/dist/chunks/useEvent-CuUOU5WV.cjs.js +0 -2
  1005. package/dist/chunks/useEvent-CuUOU5WV.cjs.js.map +0 -1
  1006. package/dist/chunks/useField-B0j4t47V.es.js +0 -36
  1007. package/dist/chunks/useField-B0j4t47V.es.js.map +0 -1
  1008. package/dist/chunks/useField-C_piDZ9g.cjs.js +0 -2
  1009. package/dist/chunks/useField-C_piDZ9g.cjs.js.map +0 -1
  1010. package/dist/chunks/useFilter-CG8lxfCP.cjs.js +0 -2
  1011. package/dist/chunks/useFilter-CG8lxfCP.cjs.js.map +0 -1
  1012. package/dist/chunks/useFilter-DOfNzeZ9.es.js +0 -36
  1013. package/dist/chunks/useFilter-DOfNzeZ9.es.js.map +0 -1
  1014. package/dist/chunks/useFocus-CwNVYldV.es.js +0 -29
  1015. package/dist/chunks/useFocus-CwNVYldV.es.js.map +0 -1
  1016. package/dist/chunks/useFocus-DVHC9n4e.cjs.js +0 -2
  1017. package/dist/chunks/useFocus-DVHC9n4e.cjs.js.map +0 -1
  1018. package/dist/chunks/useFocusRing-BuJmrp03.cjs.js +0 -2
  1019. package/dist/chunks/useFocusRing-BuJmrp03.cjs.js.map +0 -1
  1020. package/dist/chunks/useFocusRing-DRIG5NVg.es.js +0 -35
  1021. package/dist/chunks/useFocusRing-DRIG5NVg.es.js.map +0 -1
  1022. package/dist/chunks/useFocusVisible-BIPjFmFE.es.js +0 -111
  1023. package/dist/chunks/useFocusVisible-BIPjFmFE.es.js.map +0 -1
  1024. package/dist/chunks/useFocusVisible-CN9NILN7.cjs.js +0 -2
  1025. package/dist/chunks/useFocusVisible-CN9NILN7.cjs.js.map +0 -1
  1026. package/dist/chunks/useFocusWithin-CfiDXiVK.es.js +0 -56
  1027. package/dist/chunks/useFocusWithin-CfiDXiVK.es.js.map +0 -1
  1028. package/dist/chunks/useFocusWithin-CucqUylS.cjs.js +0 -2
  1029. package/dist/chunks/useFocusWithin-CucqUylS.cjs.js.map +0 -1
  1030. package/dist/chunks/useFocusable-D1mzTlxa.es.js +0 -77
  1031. package/dist/chunks/useFocusable-D1mzTlxa.es.js.map +0 -1
  1032. package/dist/chunks/useFocusable-Dv8K4Git.cjs.js +0 -2
  1033. package/dist/chunks/useFocusable-Dv8K4Git.cjs.js.map +0 -1
  1034. package/dist/chunks/useFormReset--wPlnEOl.cjs.js +0 -2
  1035. package/dist/chunks/useFormReset--wPlnEOl.cjs.js.map +0 -1
  1036. package/dist/chunks/useFormReset-D_wskGk5.es.js +0 -21
  1037. package/dist/chunks/useFormReset-D_wskGk5.es.js.map +0 -1
  1038. package/dist/chunks/useFormValidation-DR5NgZ9j.es.js +0 -202
  1039. package/dist/chunks/useFormValidation-DR5NgZ9j.es.js.map +0 -1
  1040. package/dist/chunks/useFormValidation-STNSjSmx.cjs.js +0 -2
  1041. package/dist/chunks/useFormValidation-STNSjSmx.cjs.js.map +0 -1
  1042. package/dist/chunks/useGlobalListeners-DcmIlwrO.cjs.js +0 -2
  1043. package/dist/chunks/useGlobalListeners-DcmIlwrO.cjs.js.map +0 -1
  1044. package/dist/chunks/useGridListItem--iMluO7K.es.js +0 -251
  1045. package/dist/chunks/useGridListItem--iMluO7K.es.js.map +0 -1
  1046. package/dist/chunks/useGridListItem-6gZ8SfZH.cjs.js +0 -2
  1047. package/dist/chunks/useGridListItem-6gZ8SfZH.cjs.js.map +0 -1
  1048. package/dist/chunks/useGridSelectionCheckbox-UA-rsjJv.cjs.js +0 -2
  1049. package/dist/chunks/useGridSelectionCheckbox-UA-rsjJv.cjs.js.map +0 -1
  1050. package/dist/chunks/useGridSelectionCheckbox-yspK-vJA.es.js +0 -23
  1051. package/dist/chunks/useGridSelectionCheckbox-yspK-vJA.es.js.map +0 -1
  1052. package/dist/chunks/useHasTabbableChild-Bif_c3Cz.cjs.js +0 -2
  1053. package/dist/chunks/useHasTabbableChild-Bif_c3Cz.cjs.js.map +0 -1
  1054. package/dist/chunks/useHasTabbableChild-Dq0HGz7B.es.js +0 -35
  1055. package/dist/chunks/useHasTabbableChild-Dq0HGz7B.es.js.map +0 -1
  1056. package/dist/chunks/useHighlightSelectionDescription-BVp60RjN.cjs.js +0 -2
  1057. package/dist/chunks/useHighlightSelectionDescription-BVp60RjN.cjs.js.map +0 -1
  1058. package/dist/chunks/useHighlightSelectionDescription-qks4kKs2.es.js +0 -568
  1059. package/dist/chunks/useHighlightSelectionDescription-qks4kKs2.es.js.map +0 -1
  1060. package/dist/chunks/useHover-271zEzph.cjs.js +0 -2
  1061. package/dist/chunks/useHover-271zEzph.cjs.js.map +0 -1
  1062. package/dist/chunks/useHover-9Xdm5U9d.es.js +0 -86
  1063. package/dist/chunks/useHover-9Xdm5U9d.es.js.map +0 -1
  1064. package/dist/chunks/useLabel-Cv-EvK4W.es.js +0 -24
  1065. package/dist/chunks/useLabel-Cv-EvK4W.es.js.map +0 -1
  1066. package/dist/chunks/useLabel-neE14Yau.cjs.js +0 -2
  1067. package/dist/chunks/useLabel-neE14Yau.cjs.js.map +0 -1
  1068. package/dist/chunks/useLabels-82wzG8z1.es.js +0 -18
  1069. package/dist/chunks/useLabels-82wzG8z1.es.js.map +0 -1
  1070. package/dist/chunks/useLabels-BsHtLxGl.cjs.js +0 -2
  1071. package/dist/chunks/useLabels-BsHtLxGl.cjs.js.map +0 -1
  1072. package/dist/chunks/useListState-Cf8n791-.es.js +0 -134
  1073. package/dist/chunks/useListState-Cf8n791-.es.js.map +0 -1
  1074. package/dist/chunks/useListState-CyKtsfSM.cjs.js +0 -2
  1075. package/dist/chunks/useListState-CyKtsfSM.cjs.js.map +0 -1
  1076. package/dist/chunks/useLocalizedStringFormatter-BRnRyxJp.es.js +0 -97
  1077. package/dist/chunks/useLocalizedStringFormatter-BRnRyxJp.es.js.map +0 -1
  1078. package/dist/chunks/useLocalizedStringFormatter-sB0mFYtL.cjs.js +0 -2
  1079. package/dist/chunks/useLocalizedStringFormatter-sB0mFYtL.cjs.js.map +0 -1
  1080. package/dist/chunks/useObjectRef-dXOJdONs.cjs.js +0 -2
  1081. package/dist/chunks/useObjectRef-dXOJdONs.cjs.js.map +0 -1
  1082. package/dist/chunks/usePress-D5REDWI3.cjs.js +0 -8
  1083. package/dist/chunks/usePress-D5REDWI3.cjs.js.map +0 -1
  1084. package/dist/chunks/usePress-Dc6amhnJ.es.js +0 -456
  1085. package/dist/chunks/usePress-Dc6amhnJ.es.js.map +0 -1
  1086. package/dist/chunks/useProgressBar-BsSMDAsi.es.js +0 -48
  1087. package/dist/chunks/useProgressBar-BsSMDAsi.es.js.map +0 -1
  1088. package/dist/chunks/useProgressBar-COda2Qef.cjs.js +0 -2
  1089. package/dist/chunks/useProgressBar-COda2Qef.cjs.js.map +0 -1
  1090. package/dist/chunks/useSingleSelectListState-CgOgZMJh.cjs.js +0 -2
  1091. package/dist/chunks/useSingleSelectListState-CgOgZMJh.cjs.js.map +0 -1
  1092. package/dist/chunks/useSingleSelectListState-DLY6K_dU.es.js +0 -35
  1093. package/dist/chunks/useSingleSelectListState-DLY6K_dU.es.js.map +0 -1
  1094. package/dist/chunks/useSpinButton-2dD53rZp.es.js +0 -433
  1095. package/dist/chunks/useSpinButton-2dD53rZp.es.js.map +0 -1
  1096. package/dist/chunks/useSpinButton-DA7sVP3T.cjs.js +0 -2
  1097. package/dist/chunks/useSpinButton-DA7sVP3T.cjs.js.map +0 -1
  1098. package/dist/chunks/useSyncRef-bcjp9eId.cjs.js +0 -2
  1099. package/dist/chunks/useSyncRef-bcjp9eId.cjs.js.map +0 -1
  1100. package/dist/chunks/useSyncRef-nVBzPD3o.es.js +0 -13
  1101. package/dist/chunks/useSyncRef-nVBzPD3o.es.js.map +0 -1
  1102. package/dist/chunks/useTextField-0jWzqKW2.cjs.js +0 -2
  1103. package/dist/chunks/useTextField-0jWzqKW2.cjs.js.map +0 -1
  1104. package/dist/chunks/useTextField-CT9tuc9X.es.js +0 -91
  1105. package/dist/chunks/useTextField-CT9tuc9X.es.js.map +0 -1
  1106. package/dist/chunks/useToggle-BXaU8bD5.cjs.js +0 -2
  1107. package/dist/chunks/useToggle-BXaU8bD5.cjs.js.map +0 -1
  1108. package/dist/chunks/useToggle-CKEhqMIa.es.js +0 -62
  1109. package/dist/chunks/useToggle-CKEhqMIa.es.js.map +0 -1
  1110. package/dist/chunks/useToggleState-Dl-o05wQ.cjs.js +0 -2
  1111. package/dist/chunks/useToggleState-Dl-o05wQ.cjs.js.map +0 -1
  1112. package/dist/chunks/useToolbar-CnYu1bn9.es.js +0 -55
  1113. package/dist/chunks/useToolbar-CnYu1bn9.es.js.map +0 -1
  1114. package/dist/chunks/useToolbar-iBRLn7DA.cjs.js +0 -2
  1115. package/dist/chunks/useToolbar-iBRLn7DA.cjs.js.map +0 -1
  1116. package/dist/chunks/useUpdateEffect-C5YQs_1w.cjs.js +0 -2
  1117. package/dist/chunks/useUpdateEffect-C5YQs_1w.cjs.js.map +0 -1
  1118. package/dist/chunks/utils-BHdR5Nww.cjs.js +0 -2
  1119. package/dist/chunks/utils-BHdR5Nww.cjs.js.map +0 -1
  1120. package/dist/chunks/utils-Cjs5h3ad.es.js +0 -190
  1121. package/dist/chunks/utils-Cjs5h3ad.es.js.map +0 -1
  1122. package/dist/chunks/utils-Cyja2WdR.es.js +0 -128
  1123. package/dist/chunks/utils-Cyja2WdR.es.js.map +0 -1
  1124. package/dist/chunks/utils-DUS_ZjvE.cjs.js +0 -2
  1125. package/dist/chunks/utils-DUS_ZjvE.cjs.js.map +0 -1
  1126. package/dist/chunks/visually-hidden-CVUszTlg.es.js +0 -11
  1127. package/dist/chunks/visually-hidden-CVUszTlg.es.js.map +0 -1
  1128. package/dist/chunks/visually-hidden-tTYCAVoQ.cjs.js +0 -2
  1129. package/dist/chunks/visually-hidden-tTYCAVoQ.cjs.js.map +0 -1
@@ -0,0 +1,187 @@
1
+ import { jsx as e, jsxs as d } from "react/jsx-runtime";
2
+ import { $ as R, a as I, b as F, c as G, d as H, e as j, f as S, g as A, h as B } from "./Heading-DPlDZAaf.es.js";
3
+ import { createSlotRecipeContext as L } from "@chakra-ui/react";
4
+ import { useContext as p } from "react";
5
+ import { $ as M, a as i } from "./useDateFormatter-BqUHVksS.es.js";
6
+ import { e as w, d as N } from "./utils-DF3YB901.es.js";
7
+ import { $ as D } from "./context-DW7UvQ8z.es.js";
8
+ import { B as P } from "./box-DuBoAZvq.es.js";
9
+ import { KeyboardArrowLeft as u, KeyboardArrowRight as x } from "@commercetools/nimbus-icons";
10
+ import { Flex as z } from "@chakra-ui/react/flex";
11
+ import { S as g } from "./stack-CoNreM7B.es.js";
12
+ import { V as k } from "./visually-hidden-CkxAz94w.es.js";
13
+ import { I as h } from "./icon-button-DR2FLlZ4.es.js";
14
+ import { T as C } from "./text-BufUKCee.es.js";
15
+ import { r as V } from "./index-D6WdXWQX.es.js";
16
+ import { useRecipe as K } from "@chakra-ui/react/styled-system";
17
+ import { e as W } from "./extract-style-props-Cg1pKYtC.es.js";
18
+ import { $ as y } from "./Button-CafJrK0a.es.js";
19
+ import { $ as v } from "./Text-DOcU1ycg.es.js";
20
+ const { withProvider: _, withContext: n } = /* @__PURE__ */ L({
21
+ key: "rangeCalendar"
22
+ }), q = /* @__PURE__ */ _("div", "root"), E = /* @__PURE__ */ n("div", "header"), J = /* @__PURE__ */ n("div", "grids"), O = /* @__PURE__ */ n("div", "monthTitle"), Q = /* @__PURE__ */ n("table", "grid"), U = /* @__PURE__ */ n("thead", "gridHeader"), X = /* @__PURE__ */ n("th", "headerCell"), Y = /* @__PURE__ */ n("tbody", "gridBody"), Z = /* @__PURE__ */ n("td", "bodyCell"), ee = () => {
23
+ const { locale: s } = D(), a = w(S), t = p(R), r = a?.visibleDuration?.months || 1, o = M(i()), l = r > 1;
24
+ return /* @__PURE__ */ e(J, { children: Array.from({ length: r }, (b, c) => {
25
+ const $ = t.visibleRange.start.add({
26
+ months: c
27
+ }), f = new Intl.DateTimeFormat(s, {
28
+ month: "long"
29
+ }).format($.toDate(i()));
30
+ return /* @__PURE__ */ d(
31
+ P,
32
+ {
33
+ width: r == 1 ? "full" : "auto",
34
+ children: [
35
+ l && /* @__PURE__ */ e(O, { children: f }),
36
+ /* @__PURE__ */ e(Q, { asChild: !0, children: /* @__PURE__ */ d(I, { offset: { months: c }, weekdayStyle: "short", children: [
37
+ /* @__PURE__ */ e(U, { asChild: !0, children: /* @__PURE__ */ e(F, { children: (m) => /* @__PURE__ */ e(X, { asChild: !0, children: /* @__PURE__ */ e(G, { children: m }) }) }) }),
38
+ /* @__PURE__ */ e(Y, { asChild: !0, children: /* @__PURE__ */ e(H, { children: (m) => {
39
+ const T = m.compare(o) === 0;
40
+ return /* @__PURE__ */ e(Z, { asChild: !0, "data-today": T, children: /* @__PURE__ */ e(j, { date: m }) });
41
+ } }) })
42
+ ] }) })
43
+ ]
44
+ },
45
+ f
46
+ );
47
+ }) });
48
+ }, te = () => {
49
+ const t = (w(S)?.visibleDuration?.months || 1) > 1;
50
+ return /* @__PURE__ */ e(E, { children: /* @__PURE__ */ d(z, { children: [
51
+ /* @__PURE__ */ d(g, { direction: "row", alignItems: "center", children: [
52
+ /* @__PURE__ */ e(k, { children: /* @__PURE__ */ e(A, {}) }),
53
+ /* @__PURE__ */ e(
54
+ h,
55
+ {
56
+ slot: t ? "previous" : "previous-month",
57
+ size: "xs",
58
+ variant: "ghost",
59
+ tone: "primary",
60
+ children: /* @__PURE__ */ e(u, {})
61
+ }
62
+ ),
63
+ /* @__PURE__ */ e(
64
+ C,
65
+ {
66
+ textStyle: "sm",
67
+ fontWeight: "500",
68
+ color: "neutral.11",
69
+ width: t ? "4000" : "2000",
70
+ textAlign: "center",
71
+ "aria-hidden": "true",
72
+ slot: t ? "monthRange" : "month"
73
+ }
74
+ ),
75
+ /* @__PURE__ */ e(
76
+ h,
77
+ {
78
+ slot: t ? "next" : "next-month",
79
+ size: "xs",
80
+ variant: "ghost",
81
+ tone: "primary",
82
+ children: /* @__PURE__ */ e(x, {})
83
+ }
84
+ )
85
+ ] }),
86
+ /* @__PURE__ */ e(P, { flexGrow: "1" }),
87
+ /* @__PURE__ */ d(g, { direction: "row", alignItems: "center", children: [
88
+ /* @__PURE__ */ e(
89
+ h,
90
+ {
91
+ slot: "previous-year",
92
+ size: "xs",
93
+ variant: "ghost",
94
+ tone: "primary",
95
+ children: /* @__PURE__ */ e(u, {})
96
+ }
97
+ ),
98
+ /* @__PURE__ */ e(
99
+ C,
100
+ {
101
+ textStyle: "sm",
102
+ fontWeight: "500",
103
+ color: "neutral.11",
104
+ width: "1400",
105
+ textAlign: "center",
106
+ "aria-hidden": "true",
107
+ slot: "year"
108
+ }
109
+ ),
110
+ /* @__PURE__ */ e(h, { slot: "next-year", size: "xs", variant: "ghost", tone: "primary", children: /* @__PURE__ */ e(x, {}) })
111
+ ] })
112
+ ] }) });
113
+ }, oe = ({
114
+ children: s
115
+ }) => {
116
+ const { locale: a } = D(), t = p(y), r = p(v), o = p(R), l = {
117
+ "next-month": {
118
+ onPress: () => o.focusNextSection(),
119
+ "aria-label": "Next month"
120
+ },
121
+ "previous-month": {
122
+ onPress: () => o.focusPreviousSection(),
123
+ "aria-label": "Previous month"
124
+ },
125
+ "next-year": {
126
+ onPress: () => o.focusNextSection(!0),
127
+ "aria-label": "Next year"
128
+ },
129
+ "previous-year": {
130
+ onPress: () => o.focusPreviousSection(!0),
131
+ "aria-label": "Previous year"
132
+ }
133
+ }, b = new Intl.DateTimeFormat(a, {
134
+ month: "long"
135
+ }).format(o.focusedDate.toDate(i())), c = [
136
+ new Intl.DateTimeFormat(a, {
137
+ month: "long"
138
+ }).format(o.visibleRange.start.toDate(i())),
139
+ new Intl.DateTimeFormat(a, {
140
+ month: "long"
141
+ }).format(o.visibleRange.end.toDate(i()))
142
+ ].join(" - "), $ = new Intl.DateTimeFormat(a, {
143
+ year: "numeric"
144
+ }).format(o.focusedDate.toDate(i())), f = {
145
+ month: { children: b },
146
+ monthRange: { children: c },
147
+ year: { children: $ }
148
+ };
149
+ return /* @__PURE__ */ e(
150
+ N,
151
+ {
152
+ values: [
153
+ [
154
+ y,
155
+ {
156
+ ...t,
157
+ slots: {
158
+ ...t && typeof t == "object" && "slots" in t ? t.slots : {},
159
+ ...l
160
+ }
161
+ }
162
+ ],
163
+ [
164
+ v,
165
+ {
166
+ ...r,
167
+ slots: {
168
+ ...r && typeof r == "object" && "slots" in r ? r.slots : {},
169
+ ...f
170
+ }
171
+ }
172
+ ]
173
+ ],
174
+ children: s
175
+ }
176
+ );
177
+ }, ve = (s) => {
178
+ const a = K({ recipe: V }), [t, r] = a.splitVariantProps(s), [o, l] = W(r);
179
+ return /* @__PURE__ */ e(q, { ...t, ...o, asChild: !0, children: /* @__PURE__ */ e(B, { ...l, children: /* @__PURE__ */ d(oe, { children: [
180
+ /* @__PURE__ */ e(te, {}),
181
+ /* @__PURE__ */ e(ee, {})
182
+ ] }) }) });
183
+ };
184
+ export {
185
+ ve as R
186
+ };
187
+ //# sourceMappingURL=range-calendar-DWiND2-r.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"range-calendar-DWiND2-r.es.js","sources":["../../src/components/range-calendar/range-calendar.slots.tsx","../../src/components/range-calendar/components/range-calendar.grids.tsx","../../src/components/range-calendar/components/range-calendar.header.tsx","../../src/components/range-calendar/components/range-calendar.custom-context.tsx","../../src/components/range-calendar/range-calendar.tsx"],"sourcesContent":["import { createSlotRecipeContext } from \"@chakra-ui/react\";\nimport type { SlotComponent } from \"@/type-utils\";\nimport type {\n RangeCalendarRootSlotProps,\n RangeCalendarHeaderSlotProps,\n RangeCalendarGridsSlotProps,\n RangeCalendarMonthTitleSlotProps,\n RangeCalendarGridSlotProps,\n RangeCalendarGridHeaderSlotProps,\n RangeCalendarHeaderCellSlotProps,\n RangeCalendarGridBodySlotProps,\n RangeCalendarCellSlotProps,\n} from \"./range-calendar.types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"rangeCalendar\",\n});\n\nexport const RangeCalendarRootSlot: SlotComponent<\n HTMLDivElement,\n RangeCalendarRootSlotProps\n> = withProvider<HTMLDivElement, RangeCalendarRootSlotProps>(\"div\", \"root\");\n\nexport const RangeCalendarHeaderSlot = withContext<\n HTMLDivElement,\n RangeCalendarHeaderSlotProps\n>(\"div\", \"header\");\n\nexport const RangeCalendarGridsSlot = withContext<\n HTMLDivElement,\n RangeCalendarGridsSlotProps\n>(\"div\", \"grids\");\n\nexport const RangeCalendarMonthTitleSlot = withContext<\n HTMLDivElement,\n RangeCalendarMonthTitleSlotProps\n>(\"div\", \"monthTitle\");\n\nexport const RangeCalendarGridSlot = withContext<\n HTMLTableElement,\n RangeCalendarGridSlotProps\n>(\"table\", \"grid\");\n\nexport const RangeCalendarGridHeaderSlot = withContext<\n HTMLTableSectionElement,\n RangeCalendarGridHeaderSlotProps\n>(\"thead\", \"gridHeader\");\n\nexport const RangeCalendarHeaderCellSlot = withContext<\n HTMLTableCellElement,\n RangeCalendarHeaderCellSlotProps\n>(\"th\", \"headerCell\");\n\nexport const RangeCalendarGridBodySlot = withContext<\n HTMLTableSectionElement,\n RangeCalendarGridBodySlotProps\n>(\"tbody\", \"gridBody\");\n\nexport const RangeCalendarCellSlot = withContext<\n HTMLTableCellElement,\n RangeCalendarCellSlotProps\n>(\"td\", \"bodyCell\");\n","import { useContext } from \"react\";\nimport { today, getLocalTimeZone } from \"@internationalized/date\";\nimport {\n CalendarGrid as RaCalendarGrid,\n CalendarGridBody as RaCalendarGridBody,\n CalendarGridHeader as RaCalendarGridHeader,\n CalendarHeaderCell as RaCalendarHeaderCell,\n CalendarCell as RaCalendarCell,\n useSlottedContext,\n RangeCalendarContext,\n RangeCalendarStateContext,\n useLocale,\n} from \"react-aria-components\";\nimport { Box } from \"@/components\";\n\nimport {\n RangeCalendarCellSlot,\n RangeCalendarGridBodySlot,\n RangeCalendarGridHeaderSlot,\n RangeCalendarGridsSlot,\n RangeCalendarGridSlot,\n RangeCalendarHeaderCellSlot,\n RangeCalendarMonthTitleSlot,\n} from \"../range-calendar.slots\";\n\nexport const RangeCalendarGrids = () => {\n const { locale } = useLocale();\n const context = useSlottedContext(RangeCalendarContext);\n\n const calendarState = useContext(RangeCalendarStateContext)!;\n const visibleMonthsCount = context?.visibleDuration?.months || 1;\n const todayDate = today(getLocalTimeZone());\n const showMonthTitles = visibleMonthsCount > 1;\n\n return (\n <RangeCalendarGridsSlot>\n {Array.from({ length: visibleMonthsCount }, (_, index) => {\n const gridDate = calendarState.visibleRange.start.add({\n months: index,\n });\n const monthName = new Intl.DateTimeFormat(locale, {\n month: \"long\",\n }).format(gridDate.toDate(getLocalTimeZone()));\n\n return (\n <Box\n key={monthName}\n width={visibleMonthsCount == 1 ? \"full\" : \"auto\"}\n >\n {showMonthTitles && (\n <RangeCalendarMonthTitleSlot>\n {monthName}\n </RangeCalendarMonthTitleSlot>\n )}\n <RangeCalendarGridSlot asChild>\n <RaCalendarGrid offset={{ months: index }} weekdayStyle=\"short\">\n <RangeCalendarGridHeaderSlot asChild>\n <RaCalendarGridHeader>\n {(day) => (\n <RangeCalendarHeaderCellSlot asChild>\n <RaCalendarHeaderCell>{day}</RaCalendarHeaderCell>\n </RangeCalendarHeaderCellSlot>\n )}\n </RaCalendarGridHeader>\n </RangeCalendarGridHeaderSlot>\n <RangeCalendarGridBodySlot asChild>\n <RaCalendarGridBody>\n {(date) => {\n const isToday = date.compare(todayDate) === 0;\n return (\n <RangeCalendarCellSlot asChild data-today={isToday}>\n <RaCalendarCell date={date} />\n </RangeCalendarCellSlot>\n );\n }}\n </RaCalendarGridBody>\n </RangeCalendarGridBodySlot>\n </RaCalendarGrid>\n </RangeCalendarGridSlot>\n </Box>\n );\n })}\n </RangeCalendarGridsSlot>\n );\n};\n","import {\n RangeCalendarContext,\n Heading,\n useSlottedContext,\n} from \"react-aria-components\";\nimport {\n Box,\n Flex,\n IconButton,\n Stack,\n Text,\n VisuallyHidden,\n} from \"@/components\";\nimport {\n KeyboardArrowLeft,\n KeyboardArrowRight,\n} from \"@commercetools/nimbus-icons\";\nimport { RangeCalendarHeaderSlot } from \"../range-calendar.slots\";\n\nexport const RangeCalendarHeader = () => {\n const rangeCalendarProps = useSlottedContext(RangeCalendarContext);\n\n // Needed to decide whether to show a single month or a range\n const visibleDurationMonths =\n rangeCalendarProps?.visibleDuration?.months || 1;\n const showRangeLabel = visibleDurationMonths > 1;\n\n return (\n <RangeCalendarHeaderSlot>\n <Flex>\n <Stack direction=\"row\" alignItems=\"center\">\n {/** solely for screen readers, if not present, a11y issues are raised */}\n <VisuallyHidden>\n <Heading />\n </VisuallyHidden>\n {/* @ts-expect-error - custom-context will add aria-label via the \"slot\" prop */}\n <IconButton\n slot={showRangeLabel ? \"previous\" : \"previous-month\"}\n size=\"xs\"\n variant=\"ghost\"\n tone=\"primary\"\n >\n <KeyboardArrowLeft />\n </IconButton>\n <Text\n textStyle=\"sm\"\n fontWeight=\"500\"\n color=\"neutral.11\"\n width={showRangeLabel ? \"4000\" : \"2000\"}\n textAlign=\"center\"\n aria-hidden=\"true\"\n slot={showRangeLabel ? \"monthRange\" : \"month\"}\n />\n {/* @ts-expect-error - custom-context will add aria-label via the \"slot\" prop */}\n <IconButton\n slot={showRangeLabel ? \"next\" : \"next-month\"}\n size=\"xs\"\n variant=\"ghost\"\n tone=\"primary\"\n >\n <KeyboardArrowRight />\n </IconButton>\n </Stack>\n <Box flexGrow=\"1\" />\n <Stack direction=\"row\" alignItems=\"center\">\n {/* @ts-expect-error - custom-context will add aria-label via the \"slot\" prop */}\n <IconButton\n slot=\"previous-year\"\n size=\"xs\"\n variant=\"ghost\"\n tone=\"primary\"\n >\n <KeyboardArrowLeft />\n </IconButton>\n <Text\n textStyle=\"sm\"\n fontWeight=\"500\"\n color=\"neutral.11\"\n width=\"1400\"\n textAlign=\"center\"\n aria-hidden=\"true\"\n slot=\"year\"\n />\n {/* @ts-expect-error - custom-context will add aria-label via the \"slot\" prop */}\n <IconButton slot=\"next-year\" size=\"xs\" variant=\"ghost\" tone=\"primary\">\n <KeyboardArrowRight />\n </IconButton>\n </Stack>\n </Flex>\n </RangeCalendarHeaderSlot>\n );\n};\n","import { getLocalTimeZone } from \"@internationalized/date\";\nimport { useContext } from \"react\";\nimport {\n Provider,\n ButtonContext,\n RangeCalendarStateContext,\n TextContext,\n useLocale,\n} from \"react-aria-components\";\n\nexport const RangeCalendarCustomContext = ({\n children,\n}: {\n children: React.ReactNode;\n}) => {\n const { locale } = useLocale();\n const buttonContext = useContext(ButtonContext)!;\n const textContext = useContext(TextContext)!;\n const calendarState = useContext(RangeCalendarStateContext)!;\n\n /**\n * Button slots\n * ================================\n */\n const buttonSlots = {\n \"next-month\": {\n onPress: () => calendarState.focusNextSection(),\n \"aria-label\": \"Next month\",\n },\n \"previous-month\": {\n onPress: () => calendarState.focusPreviousSection(),\n \"aria-label\": \"Previous month\",\n },\n \"next-year\": {\n onPress: () => calendarState.focusNextSection(true),\n \"aria-label\": \"Next year\",\n },\n \"previous-year\": {\n onPress: () => calendarState.focusPreviousSection(true),\n \"aria-label\": \"Previous year\",\n },\n };\n\n /**\n * Text slots\n * ================================\n */\n const monthLabel = new Intl.DateTimeFormat(locale, {\n month: \"long\",\n }).format(calendarState.focusedDate.toDate(getLocalTimeZone()));\n\n const monthRangeLabel = [\n new Intl.DateTimeFormat(locale, {\n month: \"long\",\n }).format(calendarState.visibleRange.start.toDate(getLocalTimeZone())),\n new Intl.DateTimeFormat(locale, {\n month: \"long\",\n }).format(calendarState.visibleRange.end.toDate(getLocalTimeZone())),\n ].join(\" - \");\n\n const yearLabel = new Intl.DateTimeFormat(locale, {\n year: \"numeric\",\n }).format(calendarState.focusedDate.toDate(getLocalTimeZone()));\n\n const textSlots = {\n month: { children: monthLabel },\n monthRange: { children: monthRangeLabel },\n year: { children: yearLabel },\n };\n\n return (\n <Provider\n values={[\n [\n ButtonContext,\n {\n ...buttonContext,\n slots: {\n ...(buttonContext &&\n typeof buttonContext === \"object\" &&\n \"slots\" in buttonContext\n ? buttonContext.slots\n : {}),\n ...buttonSlots,\n },\n },\n ],\n [\n TextContext,\n {\n ...textContext,\n slots: {\n ...(textContext &&\n typeof textContext === \"object\" &&\n \"slots\" in textContext\n ? textContext.slots\n : {}),\n ...textSlots,\n },\n },\n ],\n ]}\n >\n {children}\n </Provider>\n );\n};\n","import type { RangeCalendarProps } from \"./range-calendar.types\";\nimport type { DateValue } from \"@internationalized/date\";\n\nimport { RangeCalendar as RaRangeCalendar } from \"react-aria-components\";\n\nimport { RangeCalendarRootSlot } from \"./range-calendar.slots\";\nimport { RangeCalendarGrids } from \"./components/range-calendar.grids\";\nimport { RangeCalendarHeader } from \"./components/range-calendar.header\";\nimport { rangeCalendarSlotRecipe } from \"./range-calendar.recipe\";\nimport { useRecipe } from \"@chakra-ui/react/styled-system\";\nimport { extractStyleProps } from \"@/utils\";\nimport { RangeCalendarCustomContext } from \"./components/range-calendar.custom-context\";\n\nexport const RangeCalendar = (props: RangeCalendarProps<DateValue>) => {\n const recipe = useRecipe({ recipe: rangeCalendarSlotRecipe });\n const [recipeProps, remainingProps] = recipe.splitVariantProps(props);\n const [styleProps, otherProps] = extractStyleProps(remainingProps);\n\n return (\n <RangeCalendarRootSlot {...recipeProps} {...styleProps} asChild>\n <RaRangeCalendar {...otherProps}>\n <RangeCalendarCustomContext>\n <RangeCalendarHeader />\n <RangeCalendarGrids />\n </RangeCalendarCustomContext>\n </RaRangeCalendar>\n </RangeCalendarRootSlot>\n );\n};\n"],"names":["withProvider","withContext","createSlotRecipeContext","RangeCalendarRootSlot","RangeCalendarHeaderSlot","RangeCalendarGridsSlot","RangeCalendarMonthTitleSlot","RangeCalendarGridSlot","RangeCalendarGridHeaderSlot","RangeCalendarHeaderCellSlot","RangeCalendarGridBodySlot","RangeCalendarCellSlot","RangeCalendarGrids","locale","useLocale","context","useSlottedContext","RangeCalendarContext","calendarState","useContext","RangeCalendarStateContext","visibleMonthsCount","todayDate","today","getLocalTimeZone","showMonthTitles","jsx","_","index","gridDate","monthName","jsxs","Box","RaCalendarGrid","RaCalendarGridHeader","day","RaCalendarHeaderCell","RaCalendarGridBody","date","isToday","RaCalendarCell","RangeCalendarHeader","showRangeLabel","Flex","Stack","VisuallyHidden","Heading","IconButton","KeyboardArrowLeft","Text","KeyboardArrowRight","RangeCalendarCustomContext","children","buttonContext","ButtonContext","textContext","TextContext","buttonSlots","monthLabel","monthRangeLabel","yearLabel","textSlots","Provider","RangeCalendar","props","recipe","useRecipe","rangeCalendarSlotRecipe","recipeProps","remainingProps","styleProps","otherProps","extractStyleProps","RaRangeCalendar"],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ "use strict";const r=require("react/jsx-runtime"),f=require("react"),ee=require("@chakra-ui/react"),we=require("./extract-style-props-Dk3fpLyQ.cjs.js"),a=require("slate"),C=require("slate-react"),Re=require("slate-history"),Ce=require("./useObjectRef-4v2MxSjQ.cjs.js"),re=require("./group-Cjq5lNQD.cjs.js"),w=require("@commercetools/nimbus-icons"),R=require("./menu-x3kqOUl0.cjs.js"),y=require("./tooltip-Aar_qzmT.cjs.js"),J=require("./icon-button-DBJF6Y-T.cjs.js"),q=require("./box-CWni3A32.cjs.js"),A=require("./text-BtRhIklG.cjs.js"),ve=require("./toolbar-BkLgUhIG.cjs.js"),ne=require("./separator-C62eVjZN.cjs.js"),se=require("./toggle-button-group-BQczQ6D_.cjs.js"),P=require("./icon-toggle-button-Cqb4cQyZ.cjs.js"),$=require("./visually-hidden-BjtXUoFK.cjs.js"),Ie=require("./index-CRFg4Mhx.cjs.js");function te(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}const{withProvider:Me,withContext:pe}=ee.createSlotRecipeContext({key:"richTextInput"}),Ae=Me("div","root"),De=pe("div","toolbar"),He=pe("div","editable");/*!
2
+ * escape-html
3
+ * Copyright(c) 2012-2013 TJ Holowaychuk
4
+ * Copyright(c) 2015 Andreas Lubbe
5
+ * Copyright(c) 2015 Tiancheng "Timothy" Gu
6
+ * MIT Licensed
7
+ */var X,oe;function Ke(){if(oe)return X;oe=1;var t=/["'&<>]/;X=e;function e(n){var o=""+n,s=t.exec(o);if(!s)return o;var i,u="",d=0,p=0;for(d=s.index;d<o.length;d++){switch(o.charCodeAt(d)){case 34:i="&quot;";break;case 38:i="&amp;";break;case 39:i="&#39;";break;case 60:i="&lt;";break;case 62:i="&gt;";break;default:continue}p!==d&&(u+=o.substring(p,d)),p=d+1,u+=i}return p!==d?u+o.substring(p,d):u}return X}var Le=Ke();const _=te(Le),le={"mod+b":"bold","mod+i":"italic","mod+u":"underline","mod+`":"code"},z={placeholder:"Start typing...",isDisabled:!1,isReadOnly:!1,autoFocus:!1},ie={blockquote:"block-quote",p:"paragraph",pre:"code",h1:"heading-one",h2:"heading-two",h3:"heading-three",h4:"heading-four",h5:"heading-five",ul:"bulleted-list",ol:"numbered-list",li:"list-item",a:"link"},ae={strong:"bold",b:"bold",em:"italic",i:"italic",u:"underline",code:"code",sup:"superscript",sub:"subscript",del:"strikethrough",s:"strikethrough"},G={STRIKETHROUGH:"strikethrough",CODE:"code",SUPERSCRIPT:"superscript",SUBSCRIPT:"subscript"},Be=[G.STRIKETHROUGH,G.CODE],Ne=[G.SUPERSCRIPT,G.SUBSCRIPT],fe=[{id:"paragraph",label:"Paragraph",props:{textStyle:"md",fontWeight:"500"}},{id:"heading-one",label:"Heading 1",props:{textStyle:"2xl",fontWeight:"500"}},{id:"heading-two",label:"Heading 2",props:{textStyle:"xl",fontWeight:"500"}},{id:"heading-three",label:"Heading 3",props:{textStyle:"lg",fontWeight:"500"}},{id:"heading-four",label:"Heading 4",props:{textStyle:"md",fontWeight:"500"}},{id:"heading-five",label:"Heading 5",props:{textStyle:"xs",fontWeight:"500"}},{id:"block-quote",label:"Quote",props:{textStyle:"md",fontWeight:"400"}}],qe=["heading-one","heading-two","heading-three","heading-four","heading-five","block-quote"],xe=`​
8
+ `,K=()=>[{type:"paragraph",children:[{text:""}]}],Fe=t=>t.map(ge).join(""),ge=t=>{if(a.Text.isText(t)){const o=t;let s=_(o.text);return o.bold&&(s=`<strong>${s}</strong>`),o.code&&(s=`<code>${s}</code>`),o.italic&&(s=`<em>${s}</em>`),o.underline&&(s=`<u>${s}</u>`),o.superscript&&(s=`<sup>${s}</sup>`),o.subscript&&(s=`<sub>${s}</sub>`),o.strikethrough&&(s=`<del>${s}</del>`),s=s.replace(new RegExp(xe,"g"),"<br>"),s}const e=t.children.map(ge).join(""),n=t;switch(n.type){case"block-quote":return`<blockquote>${e}</blockquote>`;case"paragraph":return`<p>${e}</p>`;case"code":return`<pre><code>${e}</code></pre>`;case"bulleted-list":return`<ul>${e}</ul>`;case"numbered-list":return`<ol>${e}</ol>`;case"list-item":return`<li>${e}</li>`;case"heading-one":return`<h1>${e}</h1>`;case"heading-two":return`<h2>${e}</h2>`;case"heading-three":return`<h3>${e}</h3>`;case"heading-four":return`<h4>${e}</h4>`;case"heading-five":return`<h5>${e}</h5>`;case"link":{let o="";if(n.url){const i=Pe(n.url);o=` href="${_(i)}"`}let s="";if(n.htmlAttributes&&typeof n.htmlAttributes=="object")for(const[i,u]of Object.entries(n.htmlAttributes))i.toLowerCase().startsWith("on")||(s+=` ${_(i)}="${_(String(u))}"`);return`<a${o}${s}>${e}</a>`}default:return e}},Z=t=>{if(!t||t.trim()==="")return K();try{if(t.includes("<p>")||t.includes("<h")||t.includes("<div>")||t.includes("<blockquote>")||t.includes("<ul>")||t.includes("<ol>")){const n=new DOMParser().parseFromString(t,"text/html").body,o=Array.from(n.childNodes).map(ye).filter(Boolean);return be(o)}else return[{type:"paragraph",children:[{text:t}]}]}catch(e){return console.warn("Failed to parse HTML:",e),K()}},ye=t=>{if(t.nodeType===Node.TEXT_NODE)return(t.textContent||"").replace(/<br\s*\/?>/gi,xe);if(t.nodeType!==Node.ELEMENT_NODE)return null;const e=t,n=e.tagName.toLowerCase(),o=Array.from(e.childNodes).map(ye).filter(Boolean);if(n in ie){const i=ie[n],u={type:i,children:[]};if(i==="link"){const d=e.getAttribute("href");d&&(u.url=d);const p={};Array.from(e.attributes).forEach(x=>{x.name!=="href"&&!x.name.toLowerCase().startsWith("on")&&(p[x.name]=x.value)}),Object.keys(p).length>0&&(u.htmlAttributes=p)}return u.children=Oe(o),u}if(n in ae){const i=ae[n];return{text:Y(o),[i]:!0}}return n==="span"?{text:Y(o)}:{text:Y(o)}},Oe=t=>{const e=[];for(const n of t)typeof n=="string"?n.trim()&&e.push({text:n}):(n&&a.Text.isText(n)||n&&a.Element.isElement(n))&&e.push(n);return e.length===0&&e.push({text:""}),e},me=t=>t.children.map(e=>a.Text.isText(e)?e.text:a.Element.isElement(e)?me(e):"").join(""),Y=t=>t.filter(Boolean).map(e=>typeof e=="string"?e:e&&typeof e=="object"&&"text"in e?e.text:e&&typeof e=="object"&&"children"in e?me(e):String(e||"")).join(""),Pe=t=>{const e=String(t).trim().toLowerCase();return e.startsWith("javascript:")||e.startsWith("data:")||e.startsWith("vbscript:")?"#":String(t)},be=t=>!Array.isArray(t)||t.length===0?K():t.map(e=>a.Element.isElement(e)?!e.children||e.children.length===0?{...e,children:[{text:""}]}:e:{type:"paragraph",children:[{text:String(e)}]}),ce=t=>{try{const e=new URL(t);return e.protocol==="http:"||e.protocol==="https:"}catch{return!1}},ue=["bulleted-list","numbered-list"],$e=["bold","code","italic","underline","superscript","subscript","strikethrough"],U=t=>$e.includes(t),Ue=(t,e)=>U(e)?t[e]===!0:!1,D=(t,e)=>{const{selection:n}=t;if(!n||a.Range.isCollapsed(n)){const o=a.Editor.marks(t);if(o&&U(e))return o[e]===!0;if(!n&&t.children.length>0){const s=t.children[0];if(s.children&&s.children.length>0){const i=s.children[0];if(a.Text.isText(i)&&U(e))return i[e]===!0}}return!1}try{const o=Array.from(a.Editor.nodes(t,{at:n,match:s=>a.Text.isText(s)}));if(o.length===0){const s=a.Editor.marks(t);return!s||!U(e)?!1:s[e]===!0}return o.every(([s])=>Ue(s,e))}catch{const o=a.Editor.marks(t);return!o||!U(e)?!1:o[e]===!0}},N=(t,e)=>{const{selection:n}=t;if(n){const[o]=Array.from(a.Editor.nodes(t,{at:a.Editor.unhangRange(t,n),match:s=>!a.Editor.isEditor(s)&&a.Element.isElement(s)&&s.type===e}));return!!o}return t.children.length>0?t.children[0].type===e:!1},H=(t,e)=>{D(t,e)?a.Editor.removeMark(t,e):a.Editor.addMark(t,e,!0)},Q=(t,e)=>{const n=N(t,e),o=ue.includes(e);a.Transforms.unwrapNodes(t,{match:i=>!a.Editor.isEditor(i)&&a.Element.isElement(i)&&ue.includes(i.type),split:!0});let s;if(n?s={type:"paragraph"}:o?s={type:"list-item"}:s={type:e},a.Transforms.setNodes(t,s),!n&&o){const i={type:e,children:[]};a.Transforms.wrapNodes(t,i)}},Ve=t=>{C.ReactEditor.focus(t)},_e=(t,e)=>{const n=Z(e);a.Transforms.delete(t,{at:{anchor:a.Editor.start(t,[]),focus:a.Editor.end(t,[])}}),a.Transforms.insertNodes(t,n),a.Transforms.select(t,a.Editor.start(t,[]))},ze=t=>{const{insertData:e,insertText:n,isInline:o}=t;return t.isInline=s=>s.type==="link"?!0:o(s),t.insertText=s=>{s&&ce(s)?de(t,s):n(s)},t.insertData=s=>{const i=s.getData("text/plain");i&&ce(i)?de(t,i):e(s)},t},Ge=t=>{a.Transforms.unwrapNodes(t,{match:e=>!a.Editor.isEditor(e)&&a.Element.isElement(e)&&e.type==="link"})},de=(t,e)=>{N(t,"link")&&Ge(t);const{selection:n}=t,o=n&&a.Range.isCollapsed(n),s={type:"link",url:e,children:o?[{text:e}]:[]};o?a.Transforms.insertNodes(t,s):(a.Transforms.wrapNodes(t,s,{split:!0}),a.Transforms.collapse(t,{edge:"end"}))},We=({attributes:t,children:e,element:n})=>{const o=n,s={textAlign:o.align};switch(o.type){case"block-quote":return r.jsx("blockquote",{style:s,...t,children:e});case"bulleted-list":return r.jsx("ul",{style:s,...t,children:e});case"heading-one":return r.jsx("h1",{style:s,...t,children:e});case"heading-two":return r.jsx("h2",{style:s,...t,children:e});case"heading-three":return r.jsx("h3",{style:s,...t,children:e});case"heading-four":return r.jsx("h4",{style:s,...t,children:e});case"heading-five":return r.jsx("h5",{style:s,...t,children:e});case"list-item":return r.jsx("li",{style:s,...t,children:e});case"numbered-list":return r.jsx("ol",{style:s,...t,children:e});case"link":return r.jsx("a",{...t,href:o.url,rel:"noopener noreferrer",style:s,children:e});default:return r.jsx("p",{style:s,...t,children:e})}},Xe=({attributes:t,children:e,leaf:n})=>{const o=n;return o.bold&&(e=r.jsx("strong",{children:e})),o.code&&(e=r.jsx("code",{children:e})),o.italic&&(e=r.jsx("em",{children:e})),o.underline&&(e=r.jsx("u",{children:e})),o.strikethrough&&(e=r.jsx("del",{children:e})),o.superscript&&(e=r.jsx("sup",{children:e})),o.subscript&&(e=r.jsx("sub",{children:e})),r.jsx("span",{...t,children:e})},Ye={placeholderCharacter:`​
9
+ `};var E={},he;function Qe(){if(he)return E;he=1,Object.defineProperty(E,"__esModule",{value:!0});for(var t=typeof window<"u"&&/Mac|iPod|iPhone|iPad/.test(window.navigator.platform),e={alt:"altKey",control:"ctrlKey",meta:"metaKey",shift:"shiftKey"},n={add:"+",break:"pause",cmd:"meta",command:"meta",ctl:"control",ctrl:"control",del:"delete",down:"arrowdown",esc:"escape",ins:"insert",left:"arrowleft",mod:t?"meta":"control",opt:"alt",option:"alt",return:"enter",right:"arrowright",space:" ",spacebar:" ",up:"arrowup",win:"meta",windows:"meta"},o={backspace:8,tab:9,enter:13,shift:16,control:17,alt:18,pause:19,capslock:20,escape:27," ":32,pageup:33,pagedown:34,end:35,home:36,arrowleft:37,arrowup:38,arrowright:39,arrowdown:40,insert:45,delete:46,meta:91,numlock:144,scrolllock:145,";":186,"=":187,",":188,"-":189,".":190,"/":191,"`":192,"[":219,"\\":220,"]":221,"'":222},s=1;s<20;s++)o["f"+s]=111+s;function i(c,h,T){h&&!("byKey"in h)&&(T=h,h=null),Array.isArray(c)||(c=[c]);var m=c.map(function(M){return p(M,h)}),b=function(v){return m.some(function(I){return x(I,v)})},L=T==null?b:b(T);return L}function u(c,h){return i(c,h)}function d(c,h){return i(c,{byKey:!0},h)}function p(c,h){var T=h&&h.byKey,m={};c=c.replace("++","+add");var b=c.split("+"),L=b.length;for(var M in e)m[e[M]]=!1;var v=!0,I=!1,g=void 0;try{for(var F=b[Symbol.iterator](),V;!(v=(V=F.next()).done);v=!0){var k=V.value,W=k.endsWith("?")&&k.length>1;W&&(k=k.slice(0,-1));var O=l(k),S=e[O];if(k.length>1&&!S&&!n[k]&&!o[O])throw new TypeError('Unknown modifier: "'+k+'"');(L===1||!S)&&(T?m.key=O:m.which=j(k)),S&&(m[S]=W?null:!0)}}catch(B){I=!0,g=B}finally{try{!v&&F.return&&F.return()}finally{if(I)throw g}}return m}function x(c,h){for(var T in c){var m=c[T],b=void 0;if(m!=null&&(T==="key"&&h.key!=null?b=h.key.toLowerCase():T==="which"?b=m===91&&h.which===93?91:h.which:b=h[T],!(b==null&&m===!1)&&b!==m))return!1}return!0}function j(c){c=l(c);var h=o[c]||c.toUpperCase().charCodeAt(0);return h}function l(c){return c=c.toLowerCase(),c=n[c]||c,c}return E.default=i,E.isHotkey=i,E.isCodeHotkey=u,E.isKeyHotkey=d,E.parseHotkey=p,E.compareHotkey=x,E.toKeyCode=j,E.toKeyName=l,E}var Je=Qe();const Ze=te(Je),et=({editor:t})=>({handleKeyDown:f.useCallback(n=>{if((n.metaKey||n.ctrlKey)&&n.key==="z"){n.preventDefault(),n.shiftKey?t.redo():t.undo();return}for(const o in le)if(Ze(o,n)){n.preventDefault();const s=le[o];H(t,s);return}if(n.shiftKey&&n.key==="Enter"){n.preventDefault(),t.insertText(Ye.placeholderCharacter);return}},[t])}),Te=function({ref:e,value:n,onChange:o,onFocus:s,onBlur:i,placeholder:u=z.placeholder,isDisabled:d=z.isDisabled,isReadOnly:p=z.isReadOnly,autoFocus:x=z.autoFocus,toolbar:j}){const l=f.useRef(null),c=Ce.$df56164dff5785e2$export$4338b53315abf666(ee.mergeRefs(l,e)),h=f.useMemo(()=>{const g=a.createEditor();return ze(Re.withHistory(C.withReact(g)))},[]),{handleKeyDown:T}=et({editor:h}),m=f.useCallback(g=>{s&&s(g)},[s]),b=f.useCallback(g=>{i&&i(g)},[i]);f.useImperativeHandle(c,()=>({focus:()=>Ve(h),resetValue:g=>_e(h,g)}),[h]);const L=f.useCallback(g=>r.jsx(We,{...g}),[]),M=f.useCallback(g=>r.jsx(Xe,{...g}),[]),v=K(),I=Array.isArray(n)&&n.length>0?n:v;return r.jsxs(C.Slate,{editor:h,value:I,onChange:o,children:[j&&r.jsx(De,{children:j}),r.jsx(He,{asChild:!0,children:r.jsx(C.Editable,{renderElement:L,renderLeaf:M,placeholder:u,autoFocus:x,readOnly:p||d,onKeyDown:T,onFocus:m,onBlur:b,"aria-label":"Rich text editor",role:"textbox","aria-multiline":"true"})})]})};Te.displayName="RichTextEditor";const je=t=>f.useCallback(e=>()=>{const{selection:n}=t;e(),n&&!t.selection&&a.Transforms.select(t,n),C.ReactEditor.isFocused(t)||C.ReactEditor.focus(t)},[t]),tt=({withPreservedSelection:t})=>{const e=C.useSlate(),n=f.useMemo(()=>qe.find(l=>N(e,l))||"paragraph",[e.selection,e.children]),o=fe.find(l=>l.id===n),s=o?.label||"",i=f.useCallback(l=>{t(()=>{Q(e,l)})()},[e,t]),u=f.useCallback(l=>{t(()=>{const c=Array.from(l)[0],h=N(e,"bulleted-list")?"bulleted-list":N(e,"numbered-list")?"numbered-list":null;c?Q(e,c):h&&Q(e,h)})()},[e,t]),d=f.useMemo(()=>{const l=[];return D(e,"bold")&&l.push("bold"),D(e,"italic")&&l.push("italic"),D(e,"underline")&&l.push("underline"),new Set(l)},[e.selection,e.children,a.Editor.marks(e)]),p=f.useMemo(()=>{const l=[];return N(e,"bulleted-list")&&l.push("bulleted-list"),N(e,"numbered-list")&&l.push("numbered-list"),new Set(l)},[e.selection,e.children]),x=f.useMemo(()=>e.history&&e.history.undos.length>0,[e.selection,e.children]),j=f.useMemo(()=>e.history&&e.history.redos.length>0,[e.selection,e.children]);return{currentTextStyle:n,selectedTextStyle:o,selectedTextStyleLabel:s,handleTextStyleChange:i,handleListToggle:u,selectedFormatKeys:d,selectedListKeys:p,hasUndos:x,hasRedos:j}},rt=({withPreservedSelection:t})=>{const e=C.useSlate(),n=f.useMemo(()=>{const u=[];return Be.forEach(d=>{D(e,d)&&u.push(d)}),new Set(u)},[e.selection,e.children,a.Editor.marks(e)]),o=f.useMemo(()=>{const u=[];return Ne.forEach(d=>{D(e,d)&&u.push(d)}),new Set(u)},[e.selection,e.children,a.Editor.marks(e)]),s=f.useMemo(()=>new Set([...Array.from(n),...Array.from(o)]),[n,o]),i=f.useCallback(u=>{if(u==="all")return;const d=Array.from(u),p=Array.from(s),x=d.filter(l=>!p.includes(l)),j=p.filter(l=>!d.includes(l));[...x,...j].forEach(l=>{l==="superscript"||l==="subscript"?t(()=>{const c=D(e,"superscript")?"superscript":D(e,"subscript")?"subscript":null;x.includes(l)&&c&&c!==l&&H(e,c),H(e,l)})():t(()=>H(e,l))()})},[e,s,t]);return{selectedKeys:n,selectedScriptKeys:o,allSelectedKeys:s,handleAllSelectionChange:i}},nt=({isDisabled:t=!1})=>{const e=C.useSlate(),n=je(e),{allSelectedKeys:o,handleAllSelectionChange:s}=rt({withPreservedSelection:n});return r.jsxs(R.Menu.Root,{selectionMode:"multiple",selectedKeys:o,onSelectionChange:s,children:[r.jsxs(y.Tooltip.Root,{delay:0,closeDelay:0,children:[r.jsx(R.Menu.Trigger,{asChild:!0,children:r.jsx(J.IconButton,{size:"xs",variant:"ghost","aria-label":"More formatting options",isDisabled:t,onMouseDown:i=>i.preventDefault(),children:r.jsx(w.MoreHoriz,{})})}),r.jsx(y.Tooltip.Content,{placement:"top",children:"More styles"})]}),r.jsxs(R.Menu.Content,{children:[r.jsx(R.Menu.Item,{id:"strikethrough",children:r.jsxs(q.Box,{slot:"label",display:"flex",alignItems:"center",gap:"200",children:[r.jsx(w.FormatStrikethrough,{}),r.jsx(A.Text,{textStyle:"sm",children:"Strikethrough"})]})}),r.jsx(R.Menu.Item,{id:"code",children:r.jsxs(q.Box,{slot:"label",display:"flex",alignItems:"center",gap:"200",children:[r.jsx(w.Code,{}),r.jsx(A.Text,{textStyle:"sm",children:"Code"})]})}),r.jsx(R.Menu.Item,{id:"superscript",children:r.jsxs(q.Box,{slot:"label",display:"flex",alignItems:"center",gap:"200",children:[r.jsx(A.Text,{children:"X²"}),r.jsx(A.Text,{textStyle:"sm",children:"Superscript"})]})}),r.jsx(R.Menu.Item,{id:"subscript",children:r.jsxs(q.Box,{slot:"label",display:"flex",alignItems:"center",gap:"200",children:[r.jsx(A.Text,{children:"X₂"}),r.jsx(A.Text,{textStyle:"sm",children:"Subscript"})]})})]})]})},Se=({isDisabled:t=!1})=>{const e=C.useSlate(),n=je(e),{currentTextStyle:o,selectedTextStyleLabel:s,handleTextStyleChange:i,handleListToggle:u,selectedFormatKeys:d,selectedListKeys:p,hasUndos:x,hasRedos:j}=tt({withPreservedSelection:n});return r.jsxs(ve.Toolbar,{orientation:"horizontal","aria-label":"Text formatting",width:"full",overflow:"hidden",size:"xs",children:[r.jsx(re.Group,{children:r.jsxs(R.Menu.Root,{onAction:l=>i(String(l)),children:[r.jsxs(y.Tooltip.Root,{delay:0,closeDelay:0,children:[r.jsx(R.Menu.Trigger,{height:"800",width:"4000",bg:"primary.1",borderRadius:"200",_hover:{bg:"primary.2"},isDisabled:t,onMouseDown:l=>l.preventDefault(),"aria-label":"Text style menu",children:r.jsxs(q.Box,{display:"flex",alignItems:"center",gap:"200",px:"200",children:[r.jsx(q.Box,{display:"flex",alignItems:"center",gap:"200",flexGrow:"1",children:r.jsx(A.Text,{my:"auto",textStyle:"sm",fontWeight:"500",children:s})}),r.jsx(w.KeyboardArrowDown,{})]})}),r.jsx(y.Tooltip.Content,{placement:"top",children:"Text style"})]}),r.jsx(R.Menu.Content,{children:fe.map(l=>r.jsx(R.Menu.Item,{id:l.id,...o===l.id&&{"data-state":"checked"},children:r.jsx(A.Text,{...l.props,children:l.label})},l.id))})]})}),r.jsx(ne.Separator,{orientation:"vertical"}),r.jsxs(se.ToggleButtonGroup.Root,{selectionMode:"multiple",selectedKeys:d,isDisabled:t,children:[r.jsxs(y.Tooltip.Root,{delay:0,closeDelay:0,children:[r.jsxs(P.IconToggleButton,{id:"bold",size:"xs",variant:"ghost","aria-label":"Bold",isDisabled:t,onMouseDown:l=>l.preventDefault(),onPress:n(()=>H(e,"bold")),children:[r.jsx(w.FormatBold,{}),r.jsx($.VisuallyHidden,{children:"Bold"})]}),r.jsx(y.Tooltip.Content,{placement:"top",children:"Bold"})]}),r.jsxs(y.Tooltip.Root,{delay:0,closeDelay:0,children:[r.jsxs(P.IconToggleButton,{id:"italic",size:"xs",variant:"ghost","aria-label":"Italic",isDisabled:t,onMouseDown:l=>l.preventDefault(),onPress:n(()=>H(e,"italic")),children:[r.jsx(w.FormatItalic,{}),r.jsx($.VisuallyHidden,{children:"Italic"})]}),r.jsx(y.Tooltip.Content,{placement:"top",children:"Italic"})]}),r.jsxs(y.Tooltip.Root,{delay:0,closeDelay:0,children:[r.jsxs(P.IconToggleButton,{id:"underline",size:"xs",variant:"ghost","aria-label":"Underline",isDisabled:t,onMouseDown:l=>l.preventDefault(),onPress:n(()=>H(e,"underline")),children:[r.jsx(w.FormatUnderlined,{}),r.jsx($.VisuallyHidden,{children:"Underline"})]}),r.jsx(y.Tooltip.Content,{placement:"top",children:"Underline"})]})]}),r.jsx(nt,{isDisabled:t}),r.jsx(ne.Separator,{orientation:"vertical"}),r.jsxs(se.ToggleButtonGroup.Root,{selectionMode:"single",selectedKeys:p,onSelectionChange:u,"aria-label":"List formatting",isDisabled:t,children:[r.jsxs(y.Tooltip.Root,{delay:0,closeDelay:0,children:[r.jsx(P.IconToggleButton,{id:"bulleted-list",size:"xs",variant:"ghost","aria-label":"Bulleted List",isDisabled:t,onMouseDown:l=>l.preventDefault(),children:r.jsx(w.FormatListBulleted,{})}),r.jsx(y.Tooltip.Content,{placement:"top",children:"Bulleted list"})]}),r.jsxs(y.Tooltip.Root,{delay:0,closeDelay:0,children:[r.jsx(P.IconToggleButton,{id:"numbered-list",size:"xs",variant:"ghost","aria-label":"Numbered List",isDisabled:t,onMouseDown:l=>l.preventDefault(),children:r.jsx(w.FormatListNumbered,{})}),r.jsx(y.Tooltip.Content,{placement:"top",children:"Numbered list"})]})]}),r.jsx(q.Box,{flexGrow:"1"}),r.jsxs(re.Group,{children:[r.jsxs(y.Tooltip.Root,{delay:0,closeDelay:0,children:[r.jsxs(J.IconButton,{size:"xs",variant:"ghost","aria-label":"Undo",isDisabled:!x||t,onPress:n(()=>e.undo()),onMouseDown:l=>l.preventDefault(),children:[r.jsx(w.Undo,{}),r.jsx($.VisuallyHidden,{children:"Undo"})]}),r.jsx(y.Tooltip.Content,{placement:"top",children:"Undo"})]}),r.jsxs(y.Tooltip.Root,{delay:0,closeDelay:0,children:[r.jsxs(J.IconButton,{size:"xs",variant:"ghost","aria-label":"Redo",isDisabled:!j||t,onPress:n(()=>e.redo()),onMouseDown:l=>l.preventDefault(),children:[r.jsx(w.Redo,{}),r.jsx($.VisuallyHidden,{children:"Redo"})]}),r.jsx(y.Tooltip.Content,{placement:"top",children:"Redo"})]})]})]})};Se.displayName="RichTextToolbar";const ke=t=>{const{ref:e,value:n,defaultValue:o,onChange:s,onFocus:i,onBlur:u,placeholder:d="",isDisabled:p=!1,isReadOnly:x=!1,isInvalid:j=!1,autoFocus:l=!1,...c}=t,h=ee.useSlotRecipe({recipe:Ie.richTextInputRecipe}),[T,m]=h.splitVariantProps({...c}),[b,L]=we.extractStyleProps(m),M={"data-disabled":p?"true":void 0,"data-invalid":j?"true":void 0,"data-readonly":x?"true":void 0},[v,I]=f.useState(()=>{const S=n??o??"";try{return S?Z(S):K()}catch(B){return console.warn("Failed to parse initial HTML, using empty value:",B),K()}}),[g,F]=f.useState(()=>n??o??""),V=f.useRef(null);f.useEffect(()=>{if(n!==void 0&&n!==g){const S=n?Z(n):K();I(S),F(n)}},[n,g]);const k=f.useCallback(S=>{const B=Fe(S),Ee=B!==g;I(S),F(B),Ee&&s&&s(B)},[g,s]),O=be(v);return r.jsx(Ae,{role:"group",...T,...b,...L,...M,ref:e,children:r.jsx(Te,{ref:V,value:O,onChange:k,onFocus:i,onBlur:u,placeholder:d,isDisabled:p,isReadOnly:x,autoFocus:l,toolbar:x?null:r.jsx(Se,{isDisabled:p})})})};ke.displayName="RichTextInput";exports.RichTextInput=ke;exports.getDefaultExportFromCjs=te;
10
+ //# sourceMappingURL=rich-text-input-DXl_zylc.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rich-text-input-DXl_zylc.cjs.js","sources":["../../src/components/rich-text-input/rich-text-input.slots.tsx","../../../../node_modules/.pnpm/escape-html@1.0.3/node_modules/escape-html/index.js","../../src/components/rich-text-input/constants/editor-constants.ts","../../src/components/rich-text-input/constants/text-styles.ts","../../src/components/rich-text-input/utils/html-serialization.ts","../../src/components/rich-text-input/utils/slate-helpers.tsx","../../../../node_modules/.pnpm/is-hotkey@0.2.0/node_modules/is-hotkey/lib/index.js","../../src/components/rich-text-input/hooks/use-keyboard-shortcuts.ts","../../src/components/rich-text-input/components/rich-text-editor.tsx","../../src/components/rich-text-input/hooks/use-preserved-selection.ts","../../src/components/rich-text-input/hooks/use-toolbar-state.ts","../../src/components/rich-text-input/hooks/use-formatting-state.ts","../../src/components/rich-text-input/components/formatting-menu.tsx","../../src/components/rich-text-input/components/rich-text-toolbar.tsx","../../src/components/rich-text-input/rich-text-input.tsx"],"sourcesContent":["import { createSlotRecipeContext } from \"@chakra-ui/react\";\nimport type { SlotComponent } from \"@/type-utils\";\nimport type {\n RichTextInputRootSlotProps,\n RichTextInputToolbarSlotProps,\n RichTextInputEditableSlotProps,\n} from \"./rich-text-input.types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"richTextInput\",\n});\n\n// Root slot\nexport const RichTextInputRootSlot: SlotComponent<\n HTMLDivElement,\n RichTextInputRootSlotProps\n> = withProvider<HTMLDivElement, RichTextInputRootSlotProps>(\"div\", \"root\");\n\n// Toolbar slot\nexport const RichTextInputToolbarSlot = withContext<\n HTMLDivElement,\n RichTextInputToolbarSlotProps\n>(\"div\", \"toolbar\");\n\n// Editable slot\nexport const RichTextInputEditableSlot = withContext<\n HTMLDivElement,\n RichTextInputEditableSlotProps\n>(\"div\", \"editable\");\n","/*!\n * escape-html\n * Copyright(c) 2012-2013 TJ Holowaychuk\n * Copyright(c) 2015 Andreas Lubbe\n * Copyright(c) 2015 Tiancheng \"Timothy\" Gu\n * MIT Licensed\n */\n\n'use strict';\n\n/**\n * Module variables.\n * @private\n */\n\nvar matchHtmlRegExp = /[\"'&<>]/;\n\n/**\n * Module exports.\n * @public\n */\n\nmodule.exports = escapeHtml;\n\n/**\n * Escape special characters in the given string of html.\n *\n * @param {string} string The string to escape for inserting into HTML\n * @return {string}\n * @public\n */\n\nfunction escapeHtml(string) {\n var str = '' + string;\n var match = matchHtmlRegExp.exec(str);\n\n if (!match) {\n return str;\n }\n\n var escape;\n var html = '';\n var index = 0;\n var lastIndex = 0;\n\n for (index = match.index; index < str.length; index++) {\n switch (str.charCodeAt(index)) {\n case 34: // \"\n escape = '&quot;';\n break;\n case 38: // &\n escape = '&amp;';\n break;\n case 39: // '\n escape = '&#39;';\n break;\n case 60: // <\n escape = '&lt;';\n break;\n case 62: // >\n escape = '&gt;';\n break;\n default:\n continue;\n }\n\n if (lastIndex !== index) {\n html += str.substring(lastIndex, index);\n }\n\n lastIndex = index + 1;\n html += escape;\n }\n\n return lastIndex !== index\n ? html + str.substring(lastIndex, index)\n : html;\n}\n","/**\n * Constants for the rich text editor component\n *\n * This file consolidates all the configuration constants used by the rich text editor.\n * Previously split across multiple files, now consolidated for better maintainability.\n */\n\n// Keyboard shortcuts for formatting\nexport const HOTKEYS = {\n \"mod+b\": \"bold\",\n \"mod+i\": \"italic\",\n \"mod+u\": \"underline\",\n \"mod+`\": \"code\",\n} as const;\n\n// Default configuration values\nexport const EDITOR_DEFAULTS = {\n placeholder: \"Start typing...\",\n isDisabled: false,\n isReadOnly: false,\n autoFocus: false,\n} as const;\n\n// HTML to Slate element mapping for serialization\nexport const BLOCK_TAGS = {\n blockquote: \"block-quote\",\n p: \"paragraph\",\n pre: \"code\",\n h1: \"heading-one\",\n h2: \"heading-two\",\n h3: \"heading-three\",\n h4: \"heading-four\",\n h5: \"heading-five\",\n ul: \"bulleted-list\",\n ol: \"numbered-list\",\n li: \"list-item\",\n a: \"link\",\n} as const;\n\nexport const MARK_TAGS = {\n strong: \"bold\",\n b: \"bold\",\n em: \"italic\",\n i: \"italic\",\n u: \"underline\",\n code: \"code\",\n sup: \"superscript\",\n sub: \"subscript\",\n del: \"strikethrough\",\n s: \"strikethrough\",\n} as const;\n\n// Formatting options for the \"More Options\" menu\nexport const FORMATTING_OPTIONS = {\n STRIKETHROUGH: \"strikethrough\",\n CODE: \"code\",\n SUPERSCRIPT: \"superscript\",\n SUBSCRIPT: \"subscript\",\n} as const;\n\nexport const BASIC_FORMATTING = [\n FORMATTING_OPTIONS.STRIKETHROUGH,\n FORMATTING_OPTIONS.CODE,\n] as const;\n\nexport const SCRIPT_FORMATTING = [\n FORMATTING_OPTIONS.SUPERSCRIPT,\n FORMATTING_OPTIONS.SUBSCRIPT,\n] as const;\n\n// Mutual exclusion groups - superscript and subscript cannot both be active\nexport const MUTUALLY_EXCLUSIVE_GROUPS = {\n script: [FORMATTING_OPTIONS.SUPERSCRIPT, FORMATTING_OPTIONS.SUBSCRIPT],\n} as const;\n\n// Type definitions\nexport type HotkeyType = typeof HOTKEYS;\nexport type HotkeyKey = keyof HotkeyType;\nexport type HotkeyValue = HotkeyType[HotkeyKey];\nexport type BlockTagKey = keyof typeof BLOCK_TAGS;\nexport type MarkTagKey = keyof typeof MARK_TAGS;\nexport type BlockTagValue = (typeof BLOCK_TAGS)[BlockTagKey];\nexport type MarkTagValue = (typeof MARK_TAGS)[MarkTagKey];\nexport type FormattingType =\n (typeof FORMATTING_OPTIONS)[keyof typeof FORMATTING_OPTIONS];\nexport type BasicFormattingType = (typeof BASIC_FORMATTING)[number];\nexport type ScriptFormattingType = (typeof SCRIPT_FORMATTING)[number];\n","/**\n * Text style definitions for rich text editor block formatting\n *\n * Used by:\n * - components/rich-text-toolbar.tsx: Renders text style dropdown menu with these options\n * - hooks/useToolbarState.ts: Manages current text style state and selection logic\n * - utils/text-style-utils.ts: Helper functions for text style operations\n * - utils/validation-utils.ts: Validates if block types are supported\n *\n * Purpose:\n * - Centralizes all available text styles and their visual properties\n * - Maps block type IDs to user-friendly labels and Chakra UI styling props\n * - Ensures consistent styling across the editor and UI controls\n */\nexport type TextStyleDefinition = {\n id: string;\n label: string;\n props: {\n textStyle: string;\n fontWeight: string;\n };\n};\n\nexport const textStyles: TextStyleDefinition[] = [\n {\n id: \"paragraph\",\n label: \"Paragraph\",\n props: {\n textStyle: \"md\",\n fontWeight: \"500\",\n },\n },\n {\n id: \"heading-one\",\n label: \"Heading 1\",\n props: {\n textStyle: \"2xl\",\n fontWeight: \"500\",\n },\n },\n {\n id: \"heading-two\",\n label: \"Heading 2\",\n props: {\n textStyle: \"xl\",\n fontWeight: \"500\",\n },\n },\n {\n id: \"heading-three\",\n label: \"Heading 3\",\n props: {\n textStyle: \"lg\",\n fontWeight: \"500\",\n },\n },\n {\n id: \"heading-four\",\n label: \"Heading 4\",\n props: {\n textStyle: \"md\",\n fontWeight: \"500\",\n },\n },\n {\n id: \"heading-five\",\n label: \"Heading 5\",\n props: {\n textStyle: \"xs\",\n fontWeight: \"500\",\n },\n },\n {\n id: \"block-quote\",\n label: \"Quote\",\n props: {\n textStyle: \"md\",\n fontWeight: \"400\",\n },\n },\n];\n\n/**\n * Available block types for text style detection\n *\n * Used by:\n * - hooks/useToolbarState.ts: Detects currently active block type in editor\n * - Excludes \"paragraph\" as it's the default/fallback type\n */\nexport const blockTypes = [\n \"heading-one\",\n \"heading-two\",\n \"heading-three\",\n \"heading-four\",\n \"heading-five\",\n \"block-quote\",\n] as const;\n\nexport type BlockType = (typeof blockTypes)[number] | \"paragraph\";\n","import escapeHtml from \"escape-html\";\nimport {\n Text,\n Element as SlateElement,\n type Descendant,\n type Node as SlateNode,\n} from \"slate\";\nimport { BLOCK_TAGS, MARK_TAGS } from \"../constants\";\nimport type { CustomElement, CustomText } from \"./types\";\nimport { validSlateStateAdapter } from \"./slate-helpers\";\n\n// Soft line break placeholder character\nconst SOFT_BREAK_PLACEHOLDER = \"\\u200B\\n\";\n\n// Default empty state for the editor\nexport const createEmptyValue = (): Descendant[] => [\n {\n type: \"paragraph\",\n children: [{ text: \"\" }],\n } as CustomElement,\n];\n\n// Serialize Slate value to HTML\nexport const toHTML = (value: Descendant[]): string => {\n return value.map(serializeNode).join(\"\");\n};\n\nconst serializeNode = (node: SlateNode): string => {\n if (Text.isText(node)) {\n const textNode = node as CustomText;\n let string = escapeHtml(textNode.text);\n\n // Apply text formatting\n if (textNode.bold) {\n string = `<strong>${string}</strong>`;\n }\n if (textNode.code) {\n string = `<code>${string}</code>`;\n }\n if (textNode.italic) {\n string = `<em>${string}</em>`;\n }\n if (textNode.underline) {\n string = `<u>${string}</u>`;\n }\n if (textNode.superscript) {\n string = `<sup>${string}</sup>`;\n }\n if (textNode.subscript) {\n string = `<sub>${string}</sub>`;\n }\n if (textNode.strikethrough) {\n string = `<del>${string}</del>`;\n }\n\n // Replace soft line breaks with <br> tags\n string = string.replace(new RegExp(SOFT_BREAK_PLACEHOLDER, \"g\"), \"<br>\");\n\n return string;\n }\n\n const children = node.children.map(serializeNode).join(\"\");\n const element = node as CustomElement;\n\n switch (element.type) {\n case \"block-quote\":\n return `<blockquote>${children}</blockquote>`;\n case \"paragraph\":\n return `<p>${children}</p>`;\n case \"code\":\n return `<pre><code>${children}</code></pre>`;\n case \"bulleted-list\":\n return `<ul>${children}</ul>`;\n case \"numbered-list\":\n return `<ol>${children}</ol>`;\n case \"list-item\":\n return `<li>${children}</li>`;\n case \"heading-one\":\n return `<h1>${children}</h1>`;\n case \"heading-two\":\n return `<h2>${children}</h2>`;\n case \"heading-three\":\n return `<h3>${children}</h3>`;\n case \"heading-four\":\n return `<h4>${children}</h4>`;\n case \"heading-five\":\n return `<h5>${children}</h5>`;\n case \"link\": {\n let hrefAttr = \"\";\n if (element.url) {\n // Sanitize href to prevent XSS\n const sanitizedUrl = sanitizeUrl(element.url);\n hrefAttr = ` href=\"${escapeHtml(sanitizedUrl)}\"`;\n }\n\n let otherAttrsString = \"\";\n if (\n element.htmlAttributes &&\n typeof element.htmlAttributes === \"object\"\n ) {\n for (const [key, value] of Object.entries(element.htmlAttributes)) {\n // Filter out event handlers to prevent XSS\n if (!key.toLowerCase().startsWith(\"on\")) {\n otherAttrsString += ` ${escapeHtml(key)}=\"${escapeHtml(String(value))}\"`;\n }\n }\n }\n\n return `<a${hrefAttr}${otherAttrsString}>${children}</a>`;\n }\n default:\n return children;\n }\n};\n\n// Parse HTML string to Slate value\nexport const fromHTML = (html: string): Descendant[] => {\n if (!html || html.trim() === \"\") {\n return createEmptyValue();\n }\n\n try {\n // Simple HTML parsing - for now just handle basic cases\n if (\n html.includes(\"<p>\") ||\n html.includes(\"<h\") ||\n html.includes(\"<div>\") ||\n html.includes(\"<blockquote>\") ||\n html.includes(\"<ul>\") ||\n html.includes(\"<ol>\")\n ) {\n const document = new DOMParser().parseFromString(html, \"text/html\");\n const body = document.body;\n\n const nodes = Array.from(body.childNodes)\n .map(deserializeNode)\n .filter(Boolean) as Descendant[];\n\n // Use validSlateStateAdapter to ensure all nodes are valid Slate elements\n return validSlateStateAdapter(nodes);\n } else {\n // Simple text content\n return [\n {\n type: \"paragraph\",\n children: [{ text: html }],\n } as CustomElement,\n ];\n }\n } catch (error) {\n console.warn(\"Failed to parse HTML:\", error);\n return createEmptyValue();\n }\n};\n\nconst deserializeNode = (node: Node): Descendant | string | null => {\n if (node.nodeType === Node.TEXT_NODE) {\n const text = node.textContent || \"\";\n // Replace <br> tags with soft line breaks\n return text.replace(/<br\\s*\\/?>/gi, SOFT_BREAK_PLACEHOLDER);\n }\n\n if (node.nodeType !== Node.ELEMENT_NODE) {\n return null;\n }\n\n const element = node as Element;\n const tagName = element.tagName.toLowerCase();\n const children = Array.from(element.childNodes)\n .map(deserializeNode)\n .filter(Boolean);\n\n // Handle block elements\n if (tagName in BLOCK_TAGS) {\n const type = BLOCK_TAGS[tagName as keyof typeof BLOCK_TAGS];\n const slateElement: CustomElement = { type, children: [] };\n\n // Special handling for links\n if (type === \"link\") {\n const href = element.getAttribute(\"href\");\n if (href) {\n slateElement.url = href;\n }\n\n // Store other attributes\n const attrs: Record<string, string> = {};\n Array.from(element.attributes).forEach((attr) => {\n if (attr.name !== \"href\" && !attr.name.toLowerCase().startsWith(\"on\")) {\n attrs[attr.name] = attr.value;\n }\n });\n if (Object.keys(attrs).length > 0) {\n slateElement.htmlAttributes = attrs;\n }\n }\n\n // Process children\n slateElement.children = processChildren(children);\n return slateElement;\n }\n\n // Handle inline/mark elements - simplified without jsx\n if (tagName in MARK_TAGS) {\n const markType = MARK_TAGS[tagName as keyof typeof MARK_TAGS];\n const textContent = extractTextFromChildren(children);\n return { text: textContent, [markType]: true } as CustomText;\n }\n\n // Handle spans and other inline elements\n if (tagName === \"span\") {\n const textContent = extractTextFromChildren(children);\n return { text: textContent } as CustomText;\n }\n\n // For unknown elements, just return their text content\n const textContent = extractTextFromChildren(children);\n return { text: textContent } as CustomText;\n};\n\nconst processChildren = (\n children: (Descendant | string | null)[]\n): (CustomText | CustomElement)[] => {\n const processed: (CustomText | CustomElement)[] = [];\n\n for (const child of children) {\n if (typeof child === \"string\") {\n if (child.trim()) {\n processed.push({ text: child });\n }\n } else if (child && Text.isText(child)) {\n processed.push(child as CustomText);\n } else if (child && SlateElement.isElement(child)) {\n // Keep block elements (like li) as elements\n processed.push(child as CustomElement);\n }\n }\n\n // For list containers, ensure we have valid children\n // For other containers, ensure we always have at least one text node\n if (processed.length === 0) {\n processed.push({ text: \"\" });\n }\n\n return processed;\n};\n\nconst extractTextContent = (element: SlateElement): string => {\n return element.children\n .map((child) => {\n if (Text.isText(child)) {\n return child.text;\n } else if (SlateElement.isElement(child)) {\n return extractTextContent(child);\n }\n return \"\";\n })\n .join(\"\");\n};\n\nconst extractTextFromChildren = (\n children: (Descendant | string | null)[]\n): string => {\n return children\n .filter(Boolean)\n .map((child) => {\n if (typeof child === \"string\") {\n return child;\n } else if (child && typeof child === \"object\" && \"text\" in child) {\n return child.text;\n } else if (child && typeof child === \"object\" && \"children\" in child) {\n return extractTextContent(child as SlateElement);\n }\n return String(child || \"\");\n })\n .join(\"\");\n};\n\nconst sanitizeUrl = (url: string): string => {\n const trimmed = String(url).trim().toLowerCase();\n if (\n trimmed.startsWith(\"javascript:\") ||\n trimmed.startsWith(\"data:\") ||\n trimmed.startsWith(\"vbscript:\")\n ) {\n return \"#\";\n }\n return String(url);\n};\n","import { type ReactElement } from \"react\";\nimport {\n Editor,\n Transforms,\n Element as SlateElement,\n Range,\n Text,\n type Editor as SlateEditor,\n} from \"slate\";\nimport {\n ReactEditor,\n type RenderElementProps,\n type RenderLeafProps,\n} from \"slate-react\";\nimport type { CustomElement, CustomText, ElementFormat } from \"./types\";\nimport { fromHTML, createEmptyValue } from \"./html-serialization\";\nimport type { Descendant } from \"slate\";\n\n// Validate and normalize Slate state\nexport const validSlateStateAdapter = (value: unknown): Descendant[] => {\n if (!Array.isArray(value)) {\n return createEmptyValue();\n }\n\n if (value.length === 0) {\n return createEmptyValue();\n }\n\n return value.map((node) => {\n if (!SlateElement.isElement(node)) {\n return {\n type: \"paragraph\",\n children: [{ text: String(node) }],\n } as CustomElement;\n }\n\n if (!node.children || node.children.length === 0) {\n return { ...node, children: [{ text: \"\" }] } as CustomElement;\n }\n\n return node as CustomElement;\n });\n};\n\n// Simple URL validation function\nconst isUrl = (text: string): boolean => {\n try {\n const url = new URL(text);\n return url.protocol === \"http:\" || url.protocol === \"https:\";\n } catch {\n return false;\n }\n};\n\nconst LIST_TYPES = [\"bulleted-list\", \"numbered-list\"];\n\n// Define valid mark formats that can be checked\nconst VALID_MARK_FORMATS = [\n \"bold\",\n \"code\",\n \"italic\",\n \"underline\",\n \"superscript\",\n \"subscript\",\n \"strikethrough\",\n] as const;\n\ntype ValidMarkFormat = (typeof VALID_MARK_FORMATS)[number];\n\n// Type guard to check if a format is a valid mark format\nconst isValidMarkFormat = (format: string): format is ValidMarkFormat => {\n return VALID_MARK_FORMATS.includes(format as ValidMarkFormat);\n};\n\n// Type-safe function to check if a mark is active on a text node\nconst hasMarkFormat = (textNode: CustomText, format: string): boolean => {\n if (!isValidMarkFormat(format)) {\n return false;\n }\n return textNode[format] === true;\n};\n\n// Check if a mark is currently active\nexport const isMarkActive = (editor: SlateEditor, format: string): boolean => {\n const { selection } = editor;\n\n // For collapsed selection (cursor position), use the standard approach\n if (!selection || Range.isCollapsed(selection)) {\n const marks = Editor.marks(editor);\n if (marks && isValidMarkFormat(format)) {\n return (marks as CustomText)[format] === true;\n }\n\n // If no selection/marks (e.g., programmatically set content), check first text node\n if (!selection && editor.children.length > 0) {\n const firstNode = editor.children[0] as CustomElement;\n if (firstNode.children && firstNode.children.length > 0) {\n const firstText = firstNode.children[0];\n if (Text.isText(firstText) && isValidMarkFormat(format)) {\n return (firstText as CustomText)[format] === true;\n }\n }\n }\n\n return false;\n }\n\n // For text selection, check if any selected text has the mark\n // This provides better mixed formatting detection\n try {\n const textNodes = Array.from(\n Editor.nodes(editor, {\n at: selection,\n match: (n) => Text.isText(n),\n })\n );\n\n if (textNodes.length === 0) {\n const marks = Editor.marks(editor);\n if (!marks || !isValidMarkFormat(format)) {\n return false;\n }\n return (marks as CustomText)[format] === true;\n }\n\n // Show as active only if all selected text has this mark\n // Prioritizes unformatted text - if any text is unformatted, button shows inactive\n return textNodes.every(([node]) => {\n const textNode = node as CustomText;\n return hasMarkFormat(textNode, format);\n });\n } catch {\n // Fallback to original approach if node traversal fails\n const marks = Editor.marks(editor);\n if (!marks || !isValidMarkFormat(format)) {\n return false;\n }\n return (marks as CustomText)[format] === true;\n }\n};\n\n// Check if a block type is currently active\nexport const isBlockActive = (\n editor: SlateEditor,\n format: ElementFormat\n): boolean => {\n const { selection } = editor;\n\n // If there's a selection, use it to determine active block\n if (selection) {\n const [match] = Array.from(\n Editor.nodes(editor, {\n at: Editor.unhangRange(editor, selection),\n match: (n) =>\n !Editor.isEditor(n) &&\n SlateElement.isElement(n) &&\n (n as CustomElement).type === format,\n })\n );\n return !!match;\n }\n\n // If no selection, check the first block in the editor\n // This handles cases where content is set programmatically without focus\n if (editor.children.length > 0) {\n const firstNode = editor.children[0] as CustomElement;\n return firstNode.type === format;\n }\n\n return false;\n};\n\n// Toggle a text mark (bold, italic, etc.)\nexport const toggleMark = (editor: SlateEditor, format: string): void => {\n const isActive = isMarkActive(editor, format);\n\n if (isActive) {\n Editor.removeMark(editor, format);\n } else {\n Editor.addMark(editor, format, true);\n }\n};\n\n// Toggle a block type (heading, list, etc.)\nexport const toggleBlock = (\n editor: SlateEditor,\n format: ElementFormat\n): void => {\n const isActive = isBlockActive(editor, format);\n const isList = LIST_TYPES.includes(format);\n\n Transforms.unwrapNodes(editor, {\n match: (n) =>\n !Editor.isEditor(n) &&\n SlateElement.isElement(n) &&\n LIST_TYPES.includes((n as CustomElement).type),\n split: true,\n });\n\n let newProperties: Partial<CustomElement>;\n if (isActive) {\n newProperties = { type: \"paragraph\" };\n } else if (isList) {\n newProperties = { type: \"list-item\" };\n } else {\n newProperties = { type: format };\n }\n\n Transforms.setNodes<CustomElement>(editor, newProperties);\n\n if (!isActive && isList) {\n const block: CustomElement = { type: format, children: [] };\n Transforms.wrapNodes(editor, block);\n }\n};\n\n// Focus the editor\nexport const focusEditor = (editor: SlateEditor): void => {\n ReactEditor.focus(editor);\n};\n\n// Reset the editor to a specific value\nexport const resetEditor = (editor: SlateEditor, value: string): void => {\n const newValue = fromHTML(value);\n\n // Clear current content\n Transforms.delete(editor, {\n at: {\n anchor: Editor.start(editor, []),\n focus: Editor.end(editor, []),\n },\n });\n\n // Insert new content\n Transforms.insertNodes(editor, newValue);\n\n // Focus at the start\n Transforms.select(editor, Editor.start(editor, []));\n};\n\n// Link plugin\nexport const withLinks = (editor: SlateEditor): SlateEditor => {\n const { insertData, insertText, isInline } = editor;\n\n editor.isInline = (element: CustomElement) => {\n return element.type === \"link\" ? true : isInline(element);\n };\n\n editor.insertText = (text: string) => {\n if (text && isUrl(text)) {\n wrapLink(editor, text);\n } else {\n insertText(text);\n }\n };\n\n editor.insertData = (data: DataTransfer) => {\n const text = data.getData(\"text/plain\");\n\n if (text && isUrl(text)) {\n wrapLink(editor, text);\n } else {\n insertData(data);\n }\n };\n\n return editor;\n};\n\nconst unwrapLink = (editor: SlateEditor): void => {\n Transforms.unwrapNodes(editor, {\n match: (n) =>\n !Editor.isEditor(n) &&\n SlateElement.isElement(n) &&\n (n as CustomElement).type === \"link\",\n });\n};\n\nconst wrapLink = (editor: SlateEditor, url: string): void => {\n if (isBlockActive(editor, \"link\")) {\n unwrapLink(editor);\n }\n\n const { selection } = editor;\n const isCollapsed = selection && Range.isCollapsed(selection);\n const link: CustomElement = {\n type: \"link\",\n url,\n children: isCollapsed ? [{ text: url }] : [],\n };\n\n if (isCollapsed) {\n Transforms.insertNodes(editor, link);\n } else {\n Transforms.wrapNodes(editor, link, { split: true });\n Transforms.collapse(editor, { edge: \"end\" });\n }\n};\n\n// Render element component\nexport const Element = ({\n attributes,\n children,\n element,\n}: RenderElementProps): ReactElement => {\n const customElement = element as CustomElement;\n const style = { textAlign: customElement.align } as React.CSSProperties;\n\n switch (customElement.type) {\n case \"block-quote\":\n return (\n <blockquote style={style} {...attributes}>\n {children}\n </blockquote>\n );\n case \"bulleted-list\":\n return (\n <ul style={style} {...attributes}>\n {children}\n </ul>\n );\n case \"heading-one\":\n return (\n <h1 style={style} {...attributes}>\n {children}\n </h1>\n );\n case \"heading-two\":\n return (\n <h2 style={style} {...attributes}>\n {children}\n </h2>\n );\n case \"heading-three\":\n return (\n <h3 style={style} {...attributes}>\n {children}\n </h3>\n );\n case \"heading-four\":\n return (\n <h4 style={style} {...attributes}>\n {children}\n </h4>\n );\n case \"heading-five\":\n return (\n <h5 style={style} {...attributes}>\n {children}\n </h5>\n );\n case \"list-item\":\n return (\n <li style={style} {...attributes}>\n {children}\n </li>\n );\n case \"numbered-list\":\n return (\n <ol style={style} {...attributes}>\n {children}\n </ol>\n );\n case \"link\":\n return (\n <a\n {...attributes}\n href={customElement.url}\n rel=\"noopener noreferrer\"\n style={style}\n >\n {children}\n </a>\n );\n default:\n return (\n <p style={style} {...attributes}>\n {children}\n </p>\n );\n }\n};\n\n// Render leaf component\nexport const Leaf = ({\n attributes,\n children,\n leaf,\n}: RenderLeafProps): ReactElement => {\n const customLeaf = leaf as CustomText;\n if (customLeaf.bold) {\n children = <strong>{children}</strong>;\n }\n\n if (customLeaf.code) {\n children = <code>{children}</code>;\n }\n\n if (customLeaf.italic) {\n children = <em>{children}</em>;\n }\n\n if (customLeaf.underline) {\n children = <u>{children}</u>;\n }\n\n if (customLeaf.strikethrough) {\n children = <del>{children}</del>;\n }\n\n if (customLeaf.superscript) {\n children = <sup>{children}</sup>;\n }\n\n if (customLeaf.subscript) {\n children = <sub>{children}</sub>;\n }\n\n return <span {...attributes}>{children}</span>;\n};\n\n// Soft line break handling\nexport const Softbreaker = {\n placeholderCharacter: \"\\u200B\\n\",\n serialize: (string: string): string =>\n string.replace(new RegExp(Softbreaker.placeholderCharacter, \"g\"), \"<br>\"),\n deserialize: (string: string): string =>\n string.replace(/<br\\s*\\/?>/gi, Softbreaker.placeholderCharacter),\n};\n","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\n/**\n * Constants.\n */\n\nvar IS_MAC = typeof window != 'undefined' && /Mac|iPod|iPhone|iPad/.test(window.navigator.platform);\n\nvar MODIFIERS = {\n alt: 'altKey',\n control: 'ctrlKey',\n meta: 'metaKey',\n shift: 'shiftKey'\n};\n\nvar ALIASES = {\n add: '+',\n break: 'pause',\n cmd: 'meta',\n command: 'meta',\n ctl: 'control',\n ctrl: 'control',\n del: 'delete',\n down: 'arrowdown',\n esc: 'escape',\n ins: 'insert',\n left: 'arrowleft',\n mod: IS_MAC ? 'meta' : 'control',\n opt: 'alt',\n option: 'alt',\n return: 'enter',\n right: 'arrowright',\n space: ' ',\n spacebar: ' ',\n up: 'arrowup',\n win: 'meta',\n windows: 'meta'\n};\n\nvar CODES = {\n backspace: 8,\n tab: 9,\n enter: 13,\n shift: 16,\n control: 17,\n alt: 18,\n pause: 19,\n capslock: 20,\n escape: 27,\n ' ': 32,\n pageup: 33,\n pagedown: 34,\n end: 35,\n home: 36,\n arrowleft: 37,\n arrowup: 38,\n arrowright: 39,\n arrowdown: 40,\n insert: 45,\n delete: 46,\n meta: 91,\n numlock: 144,\n scrolllock: 145,\n ';': 186,\n '=': 187,\n ',': 188,\n '-': 189,\n '.': 190,\n '/': 191,\n '`': 192,\n '[': 219,\n '\\\\': 220,\n ']': 221,\n '\\'': 222\n};\n\nfor (var f = 1; f < 20; f++) {\n CODES['f' + f] = 111 + f;\n}\n\n/**\n * Is hotkey?\n */\n\nfunction isHotkey(hotkey, options, event) {\n if (options && !('byKey' in options)) {\n event = options;\n options = null;\n }\n\n if (!Array.isArray(hotkey)) {\n hotkey = [hotkey];\n }\n\n var array = hotkey.map(function (string) {\n return parseHotkey(string, options);\n });\n var check = function check(e) {\n return array.some(function (object) {\n return compareHotkey(object, e);\n });\n };\n var ret = event == null ? check : check(event);\n return ret;\n}\n\nfunction isCodeHotkey(hotkey, event) {\n return isHotkey(hotkey, event);\n}\n\nfunction isKeyHotkey(hotkey, event) {\n return isHotkey(hotkey, { byKey: true }, event);\n}\n\n/**\n * Parse.\n */\n\nfunction parseHotkey(hotkey, options) {\n var byKey = options && options.byKey;\n var ret = {};\n\n // Special case to handle the `+` key since we use it as a separator.\n hotkey = hotkey.replace('++', '+add');\n var values = hotkey.split('+');\n var length = values.length;\n\n // Ensure that all the modifiers are set to false unless the hotkey has them.\n\n for (var k in MODIFIERS) {\n ret[MODIFIERS[k]] = false;\n }\n\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = values[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var value = _step.value;\n\n var optional = value.endsWith('?') && value.length > 1;\n\n if (optional) {\n value = value.slice(0, -1);\n }\n\n var name = toKeyName(value);\n var modifier = MODIFIERS[name];\n\n if (value.length > 1 && !modifier && !ALIASES[value] && !CODES[name]) {\n throw new TypeError('Unknown modifier: \"' + value + '\"');\n }\n\n if (length === 1 || !modifier) {\n if (byKey) {\n ret.key = name;\n } else {\n ret.which = toKeyCode(value);\n }\n }\n\n if (modifier) {\n ret[modifier] = optional ? null : true;\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n\n return ret;\n}\n\n/**\n * Compare.\n */\n\nfunction compareHotkey(object, event) {\n for (var key in object) {\n var expected = object[key];\n var actual = void 0;\n\n if (expected == null) {\n continue;\n }\n\n if (key === 'key' && event.key != null) {\n actual = event.key.toLowerCase();\n } else if (key === 'which') {\n actual = expected === 91 && event.which === 93 ? 91 : event.which;\n } else {\n actual = event[key];\n }\n\n if (actual == null && expected === false) {\n continue;\n }\n\n if (actual !== expected) {\n return false;\n }\n }\n\n return true;\n}\n\n/**\n * Utils.\n */\n\nfunction toKeyCode(name) {\n name = toKeyName(name);\n var code = CODES[name] || name.toUpperCase().charCodeAt(0);\n return code;\n}\n\nfunction toKeyName(name) {\n name = name.toLowerCase();\n name = ALIASES[name] || name;\n return name;\n}\n\n/**\n * Export.\n */\n\nexports.default = isHotkey;\nexports.isHotkey = isHotkey;\nexports.isCodeHotkey = isCodeHotkey;\nexports.isKeyHotkey = isKeyHotkey;\nexports.parseHotkey = parseHotkey;\nexports.compareHotkey = compareHotkey;\nexports.toKeyCode = toKeyCode;\nexports.toKeyName = toKeyName;","/**\n * Hook for handling keyboard shortcuts in the rich text editor\n *\n * Used by:\n * - components/rich-text-editor.tsx: Attaches keyboard event handler to the editor\n *\n * Purpose:\n * - Centralizes all keyboard shortcut logic for the editor\n * - Handles formatting shortcuts (Cmd+B, Cmd+I, etc.)\n * - Manages undo/redo keyboard combinations\n * - Processes soft line breaks (Shift+Enter)\n * - Extracted from rich-text-editor.tsx to improve organization and testability\n *\n * @param editor - The Slate editor instance for applying changes\n * @returns Object containing the keyboard event handler\n */\nimport { useCallback } from \"react\";\nimport { Editor } from \"slate\";\nimport isHotkey from \"is-hotkey\";\nimport { HOTKEYS } from \"../constants\";\nimport { toggleMark } from \"../utils/slate-helpers\";\nimport { Softbreaker } from \"../utils/slate-helpers\";\n\nexport type UseKeyboardShortcutsProps = {\n editor: Editor;\n};\n\nexport const useKeyboardShortcuts = ({ editor }: UseKeyboardShortcutsProps) => {\n const handleKeyDown = useCallback(\n (event: React.KeyboardEvent) => {\n // Handle undo/redo shortcuts\n if ((event.metaKey || event.ctrlKey) && event.key === \"z\") {\n event.preventDefault();\n if (event.shiftKey) {\n editor.redo();\n } else {\n editor.undo();\n }\n return;\n }\n\n // Handle formatting shortcuts\n for (const hotkey in HOTKEYS) {\n if (isHotkey(hotkey, event)) {\n event.preventDefault();\n const mark = HOTKEYS[hotkey as keyof typeof HOTKEYS];\n toggleMark(editor, mark);\n return;\n }\n }\n\n // Handle soft line breaks (Shift+Enter)\n if (event.shiftKey && event.key === \"Enter\") {\n event.preventDefault();\n editor.insertText(Softbreaker.placeholderCharacter);\n return;\n }\n },\n [editor]\n );\n\n return { handleKeyDown };\n};\n","import {\n useMemo,\n useCallback,\n useImperativeHandle,\n useRef,\n type FocusEventHandler,\n type ReactNode,\n} from \"react\";\nimport { useObjectRef } from \"react-aria\";\nimport { mergeRefs } from \"@chakra-ui/react\";\nimport { createEditor, type Descendant } from \"slate\";\nimport { Slate, Editable, withReact } from \"slate-react\";\nimport { withHistory } from \"slate-history\";\nimport {\n RichTextInputEditableSlot,\n RichTextInputToolbarSlot,\n} from \"../rich-text-input.slots\";\nimport {\n Element,\n Leaf,\n withLinks,\n focusEditor,\n resetEditor,\n} from \"../utils/slate-helpers\";\nimport { createEmptyValue } from \"../utils/html-serialization\";\nimport { useKeyboardShortcuts } from \"../hooks/use-keyboard-shortcuts\";\nimport { EDITOR_DEFAULTS } from \"../constants\";\n\nexport type RichTextEditorProps = {\n value?: Descendant[];\n onChange: (value: Descendant[]) => void;\n onFocus?: FocusEventHandler<HTMLDivElement>;\n onBlur?: FocusEventHandler<HTMLDivElement>;\n placeholder?: string;\n isDisabled?: boolean;\n isReadOnly?: boolean;\n autoFocus?: boolean;\n toolbar?: ReactNode;\n /**\n * React ref to be forwarded to the editor\n */\n ref?: React.Ref<RichTextEditorRef>;\n};\n\nexport type RichTextEditorRef = {\n focus: () => void;\n resetValue: (html: string) => void;\n};\n\nexport const RichTextEditor = function RichTextEditor({\n ref: forwardedRef,\n value,\n onChange,\n onFocus,\n onBlur,\n placeholder = EDITOR_DEFAULTS.placeholder,\n isDisabled = EDITOR_DEFAULTS.isDisabled,\n isReadOnly = EDITOR_DEFAULTS.isReadOnly,\n autoFocus = EDITOR_DEFAULTS.autoFocus,\n toolbar,\n //...props\n}: RichTextEditorProps) {\n const localRef = useRef<RichTextEditorRef>(null);\n const ref = useObjectRef(mergeRefs(localRef, forwardedRef));\n\n // Create editor with plugins\n const editor = useMemo(() => {\n const baseEditor = createEditor();\n return withLinks(withHistory(withReact(baseEditor)));\n }, []);\n\n // Handle keyboard shortcuts using hook\n const { handleKeyDown } = useKeyboardShortcuts({ editor });\n\n // Handle focus\n const handleFocus = useCallback(\n (event: React.FocusEvent<HTMLDivElement>) => {\n if (onFocus) {\n onFocus(event);\n }\n },\n [onFocus]\n );\n\n // Handle blur\n const handleBlur = useCallback(\n (event: React.FocusEvent<HTMLDivElement>) => {\n if (onBlur) {\n onBlur(event);\n }\n },\n [onBlur]\n );\n\n // Expose methods through ref\n useImperativeHandle(\n ref,\n () => ({\n focus: () => focusEditor(editor),\n resetValue: (html: string) => resetEditor(editor, html),\n }),\n [editor]\n );\n\n // Render element\n const renderElement = useCallback(\n (props: Parameters<typeof Element>[0]) => <Element {...props} />,\n []\n );\n\n // Render leaf\n const renderLeaf = useCallback(\n (props: Parameters<typeof Leaf>[0]) => <Leaf {...props} />,\n []\n );\n\n // Ensure we always have a valid value\n const defaultValue = createEmptyValue();\n const safeInitialValue =\n Array.isArray(value) && value.length > 0 ? value : defaultValue;\n\n return (\n <Slate editor={editor} value={safeInitialValue} onChange={onChange}>\n {toolbar && (\n <RichTextInputToolbarSlot>{toolbar}</RichTextInputToolbarSlot>\n )}\n <RichTextInputEditableSlot asChild>\n <Editable\n renderElement={renderElement}\n renderLeaf={renderLeaf}\n placeholder={placeholder}\n autoFocus={autoFocus}\n readOnly={isReadOnly || isDisabled}\n onKeyDown={handleKeyDown}\n onFocus={handleFocus}\n onBlur={handleBlur}\n aria-label=\"Rich text editor\"\n role=\"textbox\"\n aria-multiline=\"true\"\n />\n </RichTextInputEditableSlot>\n </Slate>\n );\n};\n\nRichTextEditor.displayName = \"RichTextEditor\";\n","import { useCallback } from \"react\";\nimport { Editor, Transforms } from \"slate\";\nimport { ReactEditor } from \"slate-react\";\n\n/**\n * Hook that provides a helper function to preserve selection when toolbar actions are executed.\n * This prevents losing text selection when interacting with toolbar buttons and menus.\n *\n * TODO: This works for toggle buttons, but not for menus.\n *\n * @param editor - The Slate editor instance\n * @returns A function that wraps actions to preserve selection and focus\n */\nexport const usePreservedSelection = (editor: Editor) => {\n return useCallback(\n (action: () => void) => {\n return () => {\n // Save the current selection\n const { selection } = editor;\n\n // Execute the action\n action();\n\n // Restore selection if it was lost\n if (selection && !editor.selection) {\n Transforms.select(editor, selection);\n }\n\n // Ensure editor stays focused\n if (!ReactEditor.isFocused(editor)) {\n ReactEditor.focus(editor);\n }\n };\n },\n [editor]\n );\n};\n","/**\n * Hook for managing rich text toolbar state and interactions\n *\n * Used by:\n * - components/rich-text-toolbar.tsx: Manages all toolbar state and event handlers\n *\n * Purpose:\n * - Centralizes complex toolbar state management logic\n * - Handles text style changes, list toggling, format detection\n * - Manages undo/redo button states\n * - Extracted from rich-text-toolbar.tsx to improve organization and testability\n * - Provides clean separation between UI and business logic\n *\n * @param withPreservedSelection - Function for preserving editor selection during operations\n * @returns Object containing all toolbar state and event handlers\n */\nimport { useMemo, useCallback } from \"react\";\nimport { Editor } from \"slate\";\nimport { useSlate } from \"slate-react\";\nimport type { Key } from \"react-aria\";\nimport { textStyles, blockTypes, type BlockType } from \"../constants\";\nimport {\n isMarkActive,\n isBlockActive,\n toggleBlock,\n} from \"../utils/slate-helpers\";\nimport type { CustomElement } from \"../utils/types\";\n\nexport type UseToolbarStateProps = {\n withPreservedSelection: (fn: () => void) => () => void;\n};\n\nexport const useToolbarState = ({\n withPreservedSelection,\n}: UseToolbarStateProps) => {\n const editor = useSlate();\n\n // Get current block type - using useSlate() means this automatically updates\n const currentTextStyle = useMemo(() => {\n return (\n blockTypes.find((type) =>\n isBlockActive(editor, type as CustomElement[\"type\"])\n ) || \"paragraph\"\n );\n }, [editor.selection, editor.children]);\n\n const selectedTextStyle = textStyles.find((v) => v.id === currentTextStyle);\n const selectedTextStyleLabel = selectedTextStyle?.label || \"\";\n\n // Handle text style changes\n const handleTextStyleChange = useCallback(\n (styleId: string) => {\n withPreservedSelection(() => {\n toggleBlock(editor, styleId as BlockType);\n })();\n },\n [editor, withPreservedSelection]\n );\n\n // Handle list formatting\n const handleListToggle = useCallback(\n (selectedKeys: Set<Key>) => {\n withPreservedSelection(() => {\n const selected = Array.from(selectedKeys)[0] as BlockType | undefined;\n const currentlyActive = isBlockActive(editor, \"bulleted-list\")\n ? \"bulleted-list\"\n : isBlockActive(editor, \"numbered-list\")\n ? \"numbered-list\"\n : null;\n\n if (selected) {\n toggleBlock(editor, selected);\n } else if (currentlyActive) {\n toggleBlock(editor, currentlyActive);\n }\n })();\n },\n [editor, withPreservedSelection]\n );\n\n // Get currently selected formatting keys - simplified deps\n const selectedFormatKeys = useMemo(() => {\n const keys: string[] = [];\n if (isMarkActive(editor, \"bold\")) keys.push(\"bold\");\n if (isMarkActive(editor, \"italic\")) keys.push(\"italic\");\n if (isMarkActive(editor, \"underline\")) keys.push(\"underline\");\n return new Set(keys);\n }, [editor.selection, editor.children, Editor.marks(editor)]);\n\n // Get currently selected list formatting key\n const selectedListKeys = useMemo(() => {\n const keys: string[] = [];\n if (isBlockActive(editor, \"bulleted-list\")) keys.push(\"bulleted-list\");\n if (isBlockActive(editor, \"numbered-list\")) keys.push(\"numbered-list\");\n return new Set(keys);\n }, [editor.selection, editor.children]);\n\n // Check history state for undo/redo buttons\n const hasUndos = useMemo(() => {\n return editor.history && editor.history.undos.length > 0;\n }, [editor.selection, editor.children]);\n\n const hasRedos = useMemo(() => {\n return editor.history && editor.history.redos.length > 0;\n }, [editor.selection, editor.children]);\n\n return {\n currentTextStyle,\n selectedTextStyle,\n selectedTextStyleLabel,\n handleTextStyleChange,\n handleListToggle,\n selectedFormatKeys,\n selectedListKeys,\n hasUndos,\n hasRedos,\n };\n};\n","/**\n * Hook for managing formatting menu state with mutual exclusion logic\n *\n * Used by:\n * - components/formatting-menu.tsx: Manages complex formatting state and interactions\n *\n * Purpose:\n * - Handles mutual exclusion between superscript and subscript formatting\n * - Manages state for all formatting options in the \"More Options\" menu\n * - Processes complex selection changes with custom logic\n * - Extracted from formatting-menu.tsx to improve organization and testability\n * - Separates complex business logic from UI rendering\n *\n * @param withPreservedSelection - Function for preserving editor selection during operations\n * @returns Object containing formatting state and selection change handler\n */\nimport { useMemo, useCallback } from \"react\";\nimport { Editor } from \"slate\";\nimport { useSlate } from \"slate-react\";\nimport type { Key } from \"react-aria\";\nimport { BASIC_FORMATTING, SCRIPT_FORMATTING } from \"../constants\";\nimport { isMarkActive, toggleMark } from \"../utils/slate-helpers\";\n\nexport type UseFormattingStateProps = {\n withPreservedSelection: (fn: () => void) => () => void;\n};\n\nexport const useFormattingState = ({\n withPreservedSelection,\n}: UseFormattingStateProps) => {\n const editor = useSlate();\n\n // Get currently selected formatting keys (strikethrough and code)\n const selectedKeys = useMemo(() => {\n const keys: string[] = [];\n BASIC_FORMATTING.forEach((format) => {\n if (isMarkActive(editor, format)) keys.push(format);\n });\n return new Set(keys);\n }, [editor.selection, editor.children, Editor.marks(editor)]);\n\n // Get currently selected script formatting key (superscript or subscript - mutually exclusive)\n const selectedScriptKeys = useMemo(() => {\n const keys: string[] = [];\n SCRIPT_FORMATTING.forEach((format) => {\n if (isMarkActive(editor, format)) keys.push(format);\n });\n return new Set(keys);\n }, [editor.selection, editor.children, Editor.marks(editor)]);\n\n // Combine all selected keys for display purposes\n const allSelectedKeys = useMemo(() => {\n return new Set([\n ...Array.from(selectedKeys),\n ...Array.from(selectedScriptKeys),\n ]);\n }, [selectedKeys, selectedScriptKeys]);\n\n // Handle all selection changes with custom logic for mutual exclusion\n const handleAllSelectionChange = useCallback(\n (keys: \"all\" | Set<Key>) => {\n if (keys === \"all\") return;\n\n const keyArray = Array.from(keys) as string[];\n const currentKeys = Array.from(allSelectedKeys);\n\n // Find newly selected keys (toggle on)\n const newlySelected = keyArray.filter(\n (key) => !currentKeys.includes(key)\n );\n // Find newly deselected keys (toggle off)\n const newlyDeselected = currentKeys.filter(\n (key) => !keyArray.includes(key)\n );\n\n // Handle changes for each key\n [...newlySelected, ...newlyDeselected].forEach((key) => {\n if (key === \"superscript\" || key === \"subscript\") {\n // Handle script formatting with mutual exclusion\n withPreservedSelection(() => {\n const currentlyActive = isMarkActive(editor, \"superscript\")\n ? \"superscript\"\n : isMarkActive(editor, \"subscript\")\n ? \"subscript\"\n : null;\n\n if (newlySelected.includes(key)) {\n // If selecting a script format, deactivate the other one first\n if (currentlyActive && currentlyActive !== key) {\n toggleMark(editor, currentlyActive);\n }\n toggleMark(editor, key);\n } else {\n // Deselecting\n toggleMark(editor, key);\n }\n })();\n } else {\n // Handle regular formatting (strikethrough, code)\n withPreservedSelection(() => toggleMark(editor, key))();\n }\n });\n },\n [editor, allSelectedKeys, withPreservedSelection]\n );\n\n return {\n selectedKeys,\n selectedScriptKeys,\n allSelectedKeys,\n handleAllSelectionChange,\n };\n};\n","import { useSlate } from \"slate-react\";\nimport { Menu, IconButton, Text, Box, Tooltip } from \"@/components\";\nimport {\n MoreHoriz,\n FormatStrikethrough,\n Code,\n} from \"@commercetools/nimbus-icons\";\nimport { usePreservedSelection } from \"../hooks/use-preserved-selection\";\nimport { useFormattingState } from \"../hooks/use-formatting-state\";\n\nexport type FormattingMenuProps = {\n isDisabled?: boolean;\n};\n\nexport const FormattingMenu = ({ isDisabled = false }: FormattingMenuProps) => {\n const editor = useSlate();\n const withPreservedSelection = usePreservedSelection(editor);\n\n // Use the formatting state hook for all state management\n const { allSelectedKeys, handleAllSelectionChange } = useFormattingState({\n withPreservedSelection,\n });\n\n return (\n <Menu.Root\n selectionMode=\"multiple\"\n selectedKeys={allSelectedKeys}\n onSelectionChange={handleAllSelectionChange}\n >\n <Tooltip.Root delay={0} closeDelay={0}>\n <Menu.Trigger asChild>\n <IconButton\n size=\"xs\"\n variant=\"ghost\"\n aria-label=\"More formatting options\"\n isDisabled={isDisabled}\n onMouseDown={(event) => event.preventDefault()}\n >\n <MoreHoriz />\n </IconButton>\n </Menu.Trigger>\n <Tooltip.Content placement=\"top\">More styles</Tooltip.Content>\n </Tooltip.Root>\n <Menu.Content>\n <Menu.Item id=\"strikethrough\">\n <Box slot=\"label\" display=\"flex\" alignItems=\"center\" gap=\"200\">\n <FormatStrikethrough />\n <Text textStyle=\"sm\">Strikethrough</Text>\n </Box>\n </Menu.Item>\n <Menu.Item id=\"code\">\n <Box slot=\"label\" display=\"flex\" alignItems=\"center\" gap=\"200\">\n <Code />\n <Text textStyle=\"sm\">Code</Text>\n </Box>\n </Menu.Item>\n <Menu.Item id=\"superscript\">\n <Box slot=\"label\" display=\"flex\" alignItems=\"center\" gap=\"200\">\n <Text>X²</Text>\n <Text textStyle=\"sm\">Superscript</Text>\n </Box>\n </Menu.Item>\n <Menu.Item id=\"subscript\">\n <Box slot=\"label\" display=\"flex\" alignItems=\"center\" gap=\"200\">\n <Text>X₂</Text>\n <Text textStyle=\"sm\">Subscript</Text>\n </Box>\n </Menu.Item>\n </Menu.Content>\n </Menu.Root>\n );\n};\n","import { useSlate } from \"slate-react\";\nimport {\n Toolbar,\n Menu,\n VisuallyHidden,\n Separator,\n ToggleButtonGroup,\n IconToggleButton,\n IconButton,\n Text,\n Box,\n Tooltip,\n} from \"@/components\";\nimport { Group } from \"@/components/group\";\nimport {\n FormatBold,\n FormatItalic,\n FormatUnderlined,\n FormatListBulleted,\n FormatListNumbered,\n KeyboardArrowDown,\n Undo,\n Redo,\n} from \"@commercetools/nimbus-icons\";\nimport { toggleMark } from \"../utils/slate-helpers\";\nimport { usePreservedSelection } from \"../hooks/use-preserved-selection\";\nimport { useToolbarState } from \"../hooks/use-toolbar-state\";\nimport { textStyles } from \"../constants\";\nimport { FormattingMenu } from \"./formatting-menu\";\n\nexport type RichTextToolbarProps = {\n isDisabled?: boolean;\n};\n\nexport const RichTextToolbar = ({\n isDisabled = false,\n}: RichTextToolbarProps) => {\n const editor = useSlate();\n const withPreservedSelection = usePreservedSelection(editor);\n\n // Use the toolbar state hook for all state management\n const {\n currentTextStyle,\n selectedTextStyleLabel,\n handleTextStyleChange,\n handleListToggle,\n selectedFormatKeys,\n selectedListKeys,\n hasUndos,\n hasRedos,\n } = useToolbarState({ withPreservedSelection });\n\n return (\n <Toolbar\n orientation=\"horizontal\"\n aria-label=\"Text formatting\"\n width=\"full\"\n overflow=\"hidden\"\n size=\"xs\"\n >\n {/* Text Style Menu */}\n <Group>\n <Menu.Root\n onAction={(styleId) => handleTextStyleChange(String(styleId))}\n >\n <Tooltip.Root delay={0} closeDelay={0}>\n {/* Menu trigger styles mimic the Select component */}\n <Menu.Trigger\n height=\"800\"\n width=\"4000\"\n bg=\"primary.1\"\n borderRadius=\"200\"\n _hover={{ bg: \"primary.2\" }}\n isDisabled={isDisabled}\n onMouseDown={(event) => event.preventDefault()}\n aria-label=\"Text style menu\"\n >\n <Box display=\"flex\" alignItems=\"center\" gap=\"200\" px=\"200\">\n <Box display=\"flex\" alignItems=\"center\" gap=\"200\" flexGrow=\"1\">\n <Text my=\"auto\" textStyle=\"sm\" fontWeight=\"500\">\n {selectedTextStyleLabel}\n </Text>\n </Box>\n <KeyboardArrowDown />\n </Box>\n </Menu.Trigger>\n <Tooltip.Content placement=\"top\">Text style</Tooltip.Content>\n </Tooltip.Root>\n <Menu.Content>\n {textStyles.map((style) => (\n <Menu.Item\n key={style.id}\n id={style.id}\n {...(currentTextStyle === style.id && {\n \"data-state\": \"checked\",\n })}\n >\n <Text {...style.props}>{style.label}</Text>\n </Menu.Item>\n ))}\n </Menu.Content>\n </Menu.Root>\n </Group>\n\n <Separator orientation=\"vertical\" />\n\n {/* Text Formatting Toggles */}\n <ToggleButtonGroup.Root\n selectionMode=\"multiple\"\n selectedKeys={selectedFormatKeys}\n isDisabled={isDisabled}\n >\n <Tooltip.Root delay={0} closeDelay={0}>\n <IconToggleButton\n id=\"bold\"\n size=\"xs\"\n variant=\"ghost\"\n aria-label=\"Bold\"\n isDisabled={isDisabled}\n onMouseDown={(event) => event.preventDefault()}\n onPress={withPreservedSelection(() => toggleMark(editor, \"bold\"))}\n >\n <FormatBold />\n <VisuallyHidden>Bold</VisuallyHidden>\n </IconToggleButton>\n <Tooltip.Content placement=\"top\">Bold</Tooltip.Content>\n </Tooltip.Root>\n <Tooltip.Root delay={0} closeDelay={0}>\n <IconToggleButton\n id=\"italic\"\n size=\"xs\"\n variant=\"ghost\"\n aria-label=\"Italic\"\n isDisabled={isDisabled}\n onMouseDown={(event) => event.preventDefault()}\n onPress={withPreservedSelection(() => toggleMark(editor, \"italic\"))}\n >\n <FormatItalic />\n <VisuallyHidden>Italic</VisuallyHidden>\n </IconToggleButton>\n <Tooltip.Content placement=\"top\">Italic</Tooltip.Content>\n </Tooltip.Root>\n <Tooltip.Root delay={0} closeDelay={0}>\n <IconToggleButton\n id=\"underline\"\n size=\"xs\"\n variant=\"ghost\"\n aria-label=\"Underline\"\n isDisabled={isDisabled}\n onMouseDown={(event) => event.preventDefault()}\n onPress={withPreservedSelection(() =>\n toggleMark(editor, \"underline\")\n )}\n >\n <FormatUnderlined />\n <VisuallyHidden>Underline</VisuallyHidden>\n </IconToggleButton>\n <Tooltip.Content placement=\"top\">Underline</Tooltip.Content>\n </Tooltip.Root>\n </ToggleButtonGroup.Root>\n\n {/* Formatting Menu for additional options */}\n <FormattingMenu isDisabled={isDisabled} />\n\n <Separator orientation=\"vertical\" />\n\n {/* Lists & Indentation */}\n <ToggleButtonGroup.Root\n selectionMode=\"single\"\n selectedKeys={selectedListKeys}\n onSelectionChange={handleListToggle}\n aria-label=\"List formatting\"\n isDisabled={isDisabled}\n >\n <Tooltip.Root delay={0} closeDelay={0}>\n <IconToggleButton\n id=\"bulleted-list\"\n size=\"xs\"\n variant=\"ghost\"\n aria-label=\"Bulleted List\"\n isDisabled={isDisabled}\n onMouseDown={(event) => event.preventDefault()}\n >\n <FormatListBulleted />\n </IconToggleButton>\n <Tooltip.Content placement=\"top\">Bulleted list</Tooltip.Content>\n </Tooltip.Root>\n <Tooltip.Root delay={0} closeDelay={0}>\n <IconToggleButton\n id=\"numbered-list\"\n size=\"xs\"\n variant=\"ghost\"\n aria-label=\"Numbered List\"\n isDisabled={isDisabled}\n onMouseDown={(event) => event.preventDefault()}\n >\n <FormatListNumbered />\n </IconToggleButton>\n <Tooltip.Content placement=\"top\">Numbered list</Tooltip.Content>\n </Tooltip.Root>\n </ToggleButtonGroup.Root>\n\n {/* Spacer to push undo/redo buttons to the right */}\n <Box flexGrow=\"1\" />\n\n <Group>\n <Tooltip.Root delay={0} closeDelay={0}>\n <IconButton\n size=\"xs\"\n variant=\"ghost\"\n aria-label=\"Undo\"\n isDisabled={!hasUndos || isDisabled}\n onPress={withPreservedSelection(() => editor.undo())}\n onMouseDown={(event) => event.preventDefault()}\n >\n <Undo />\n <VisuallyHidden>Undo</VisuallyHidden>\n </IconButton>\n <Tooltip.Content placement=\"top\">Undo</Tooltip.Content>\n </Tooltip.Root>\n <Tooltip.Root delay={0} closeDelay={0}>\n <IconButton\n size=\"xs\"\n variant=\"ghost\"\n aria-label=\"Redo\"\n isDisabled={!hasRedos || isDisabled}\n onPress={withPreservedSelection(() => editor.redo())}\n onMouseDown={(event) => event.preventDefault()}\n >\n <Redo />\n <VisuallyHidden>Redo</VisuallyHidden>\n </IconButton>\n <Tooltip.Content placement=\"top\">Redo</Tooltip.Content>\n </Tooltip.Root>\n </Group>\n </Toolbar>\n );\n};\n\nRichTextToolbar.displayName = \"RichTextToolbar\";\n","import { useState, useCallback, useRef, useEffect } from \"react\";\nimport { useSlotRecipe } from \"@chakra-ui/react\";\nimport { extractStyleProps } from \"@/utils\";\nimport { RichTextInputRootSlot } from \"./rich-text-input.slots\";\nimport {\n RichTextEditor,\n type RichTextEditorRef,\n} from \"./components/rich-text-editor\";\nimport { RichTextToolbar } from \"./components/rich-text-toolbar\";\nimport type { RichTextInputProps } from \"./rich-text-input.types\";\nimport {\n toHTML,\n fromHTML,\n createEmptyValue,\n validSlateStateAdapter,\n} from \"./utils\";\nimport { richTextInputRecipe } from \"./rich-text-input.recipe\";\n\n/**\n RichTextInput - A rich text input component with formatting capabilities.\n */\nexport const RichTextInput = (props: RichTextInputProps) => {\n const {\n ref: forwardedRef,\n value,\n defaultValue,\n onChange,\n onFocus,\n onBlur,\n placeholder = \"\",\n isDisabled = false,\n isReadOnly = false,\n isInvalid = false,\n autoFocus = false,\n ...restProps\n } = props;\n\n const recipe = useSlotRecipe({ recipe: richTextInputRecipe });\n const [recipeProps, remainingProps] = recipe.splitVariantProps({\n // Only semantic variants go here (none currently defined)\n ...restProps,\n });\n const [styleProps, functionalProps] = extractStyleProps(remainingProps);\n\n // Data attributes for state-based styling\n const dataAttributes = {\n \"data-disabled\": isDisabled ? \"true\" : undefined,\n \"data-invalid\": isInvalid ? \"true\" : undefined,\n \"data-readonly\": isReadOnly ? \"true\" : undefined,\n };\n\n // Internal state management\n const [internalValue, setInternalValue] = useState(() => {\n const initialHtml = value ?? defaultValue ?? \"\";\n try {\n return initialHtml ? fromHTML(initialHtml) : createEmptyValue();\n } catch (error) {\n console.warn(\"Failed to parse initial HTML, using empty value:\", error);\n return createEmptyValue();\n }\n });\n\n const [serializedValue, setSerializedValue] = useState(() => {\n return value ?? defaultValue ?? \"\";\n });\n\n const editorRef = useRef<RichTextEditorRef>(null);\n\n // Handle controlled value changes\n useEffect(() => {\n if (value !== undefined && value !== serializedValue) {\n const newSlateValue = value ? fromHTML(value) : createEmptyValue();\n setInternalValue(newSlateValue);\n setSerializedValue(value);\n }\n }, [value, serializedValue]);\n\n const handleChange = useCallback(\n (slateValue: ReturnType<typeof createEmptyValue>) => {\n const newHtml = toHTML(slateValue);\n const hasSerializedValueChanged = newHtml !== serializedValue;\n\n setInternalValue(slateValue);\n setSerializedValue(newHtml);\n\n // Only call onChange if the serialized HTML actually changed\n if (hasSerializedValueChanged && onChange) {\n onChange(newHtml);\n }\n },\n [serializedValue, onChange]\n );\n\n const currentValue = internalValue;\n\n // Safety check: ensure we always have a valid Slate value\n const safeValue = validSlateStateAdapter(currentValue);\n\n return (\n <RichTextInputRootSlot\n role=\"group\"\n {...recipeProps}\n {...styleProps}\n {...functionalProps}\n {...dataAttributes}\n ref={forwardedRef}\n >\n <RichTextEditor\n ref={editorRef}\n value={safeValue}\n onChange={handleChange}\n onFocus={onFocus}\n onBlur={onBlur}\n placeholder={placeholder}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n autoFocus={autoFocus}\n toolbar={\n !isReadOnly ? <RichTextToolbar isDisabled={isDisabled} /> : null\n }\n />\n </RichTextInputRootSlot>\n );\n};\n\nRichTextInput.displayName = \"RichTextInput\";\n"],"names":["withProvider","withContext","createSlotRecipeContext","RichTextInputRootSlot","RichTextInputToolbarSlot","RichTextInputEditableSlot","matchHtmlRegExp","escapeHtml_1","escapeHtml","string","str","match","escape","html","index","lastIndex","HOTKEYS","EDITOR_DEFAULTS","BLOCK_TAGS","MARK_TAGS","FORMATTING_OPTIONS","BASIC_FORMATTING","SCRIPT_FORMATTING","textStyles","blockTypes","SOFT_BREAK_PLACEHOLDER","createEmptyValue","toHTML","value","serializeNode","node","Text","textNode","children","element","hrefAttr","sanitizedUrl","sanitizeUrl","otherAttrsString","key","fromHTML","body","nodes","deserializeNode","validSlateStateAdapter","error","tagName","type","slateElement","href","attrs","attr","processChildren","markType","extractTextFromChildren","textContent","processed","child","SlateElement","extractTextContent","url","trimmed","isUrl","text","LIST_TYPES","VALID_MARK_FORMATS","isValidMarkFormat","format","hasMarkFormat","isMarkActive","editor","selection","Range","marks","Editor","firstNode","firstText","textNodes","n","isBlockActive","toggleMark","toggleBlock","isActive","isList","Transforms","newProperties","block","focusEditor","ReactEditor","resetEditor","newValue","withLinks","insertData","insertText","isInline","wrapLink","data","unwrapLink","isCollapsed","link","Element","attributes","customElement","style","jsx","Leaf","leaf","customLeaf","Softbreaker","lib","IS_MAC","MODIFIERS","ALIASES","CODES","f","isHotkey","hotkey","options","event","array","parseHotkey","check","e","object","compareHotkey","ret","isCodeHotkey","isKeyHotkey","byKey","values","length","k","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","_step","optional","name","toKeyName","modifier","toKeyCode","err","expected","actual","code","useKeyboardShortcuts","useCallback","mark","RichTextEditor","forwardedRef","onChange","onFocus","onBlur","placeholder","isDisabled","isReadOnly","autoFocus","toolbar","localRef","useRef","ref","useObjectRef","mergeRefs","useMemo","baseEditor","createEditor","withHistory","withReact","handleKeyDown","handleFocus","handleBlur","useImperativeHandle","renderElement","props","renderLeaf","defaultValue","safeInitialValue","jsxs","Slate","Editable","usePreservedSelection","action","useToolbarState","withPreservedSelection","useSlate","currentTextStyle","selectedTextStyle","v","selectedTextStyleLabel","handleTextStyleChange","styleId","handleListToggle","selectedKeys","selected","currentlyActive","selectedFormatKeys","keys","selectedListKeys","hasUndos","hasRedos","useFormattingState","selectedScriptKeys","allSelectedKeys","handleAllSelectionChange","keyArray","currentKeys","newlySelected","newlyDeselected","FormattingMenu","Menu","Tooltip","IconButton","MoreHoriz","Box","FormatStrikethrough","Code","RichTextToolbar","Toolbar","Group","KeyboardArrowDown","Separator","ToggleButtonGroup","IconToggleButton","FormatBold","VisuallyHidden","FormatItalic","FormatUnderlined","FormatListBulleted","FormatListNumbered","Undo","Redo","RichTextInput","isInvalid","restProps","recipe","useSlotRecipe","richTextInputRecipe","recipeProps","remainingProps","styleProps","functionalProps","extractStyleProps","dataAttributes","internalValue","setInternalValue","useState","initialHtml","serializedValue","setSerializedValue","editorRef","useEffect","newSlateValue","handleChange","slateValue","newHtml","hasSerializedValueChanged","safeValue"],"mappings":"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","x_google_ignoreList":[1,6]}