@commercetools/nimbus 0.0.0-canary-20250826133439 → 0.0.0-canary-20250827101922

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 (277) hide show
  1. package/dist/accordion.d.ts +9 -0
  2. package/dist/alert.d.ts +9 -0
  3. package/dist/avatar.d.ts +9 -0
  4. package/dist/badge.d.ts +9 -0
  5. package/dist/box.d.ts +9 -0
  6. package/dist/button.d.ts +9 -0
  7. package/dist/calendar.d.ts +9 -0
  8. package/dist/card.d.ts +9 -0
  9. package/dist/checkbox.d.ts +9 -0
  10. package/dist/chunks/{alert-BhMfbMnN.cjs.js → alert-BZUgI30X.cjs.js} +2 -2
  11. package/dist/chunks/{alert-BhMfbMnN.cjs.js.map → alert-BZUgI30X.cjs.js.map} +1 -1
  12. package/dist/chunks/{alert-BvT6yjas.es.js → alert-BxQlH4k1.es.js} +2 -2
  13. package/dist/chunks/{alert-BvT6yjas.es.js.map → alert-BxQlH4k1.es.js.map} +1 -1
  14. package/dist/chunks/{button-Bg73nQk3.es.js → button-B4HX0fM_.es.js} +2 -2
  15. package/dist/chunks/{button-Bg73nQk3.es.js.map → button-B4HX0fM_.es.js.map} +1 -1
  16. package/dist/chunks/{button-BiBXrCVh.cjs.js → button-qv44IWcR.cjs.js} +2 -2
  17. package/dist/chunks/{button-BiBXrCVh.cjs.js.map → button-qv44IWcR.cjs.js.map} +1 -1
  18. package/dist/chunks/{calendar-Co4TTkzj.es.js → calendar-DABzfMco.es.js} +4 -4
  19. package/dist/chunks/{calendar-Co4TTkzj.es.js.map → calendar-DABzfMco.es.js.map} +1 -1
  20. package/dist/chunks/{calendar-BydrcPp3.cjs.js → calendar-v3st4EyG.cjs.js} +2 -2
  21. package/dist/chunks/{calendar-BydrcPp3.cjs.js.map → calendar-v3st4EyG.cjs.js.map} +1 -1
  22. package/dist/chunks/{checkbox-8eIhS2f6.cjs.js → checkbox-BN-_eQB9.cjs.js} +2 -2
  23. package/dist/chunks/{checkbox-8eIhS2f6.cjs.js.map → checkbox-BN-_eQB9.cjs.js.map} +1 -1
  24. package/dist/chunks/{checkbox-B2yJgtOJ.es.js → checkbox-VN2y-Prn.es.js} +2 -2
  25. package/dist/chunks/{checkbox-B2yJgtOJ.es.js.map → checkbox-VN2y-Prn.es.js.map} +1 -1
  26. package/dist/chunks/{combobox-CFH0OaAM.cjs.js → combobox-Ah0GQqSW.cjs.js} +2 -2
  27. package/dist/chunks/{combobox-CFH0OaAM.cjs.js.map → combobox-Ah0GQqSW.cjs.js.map} +1 -1
  28. package/dist/chunks/{combobox-CkVqkKdA.es.js → combobox-D_IGHRck.es.js} +5 -5
  29. package/dist/chunks/{combobox-CkVqkKdA.es.js.map → combobox-D_IGHRck.es.js.map} +1 -1
  30. package/dist/chunks/data-table-COrv-ddO.cjs.js +2 -0
  31. package/dist/chunks/{data-table-DIXPr3ke.cjs.js.map → data-table-COrv-ddO.cjs.js.map} +1 -1
  32. package/dist/chunks/{data-table-cBq9JXG7.es.js → data-table-DbhVtDHQ.es.js} +677 -676
  33. package/dist/chunks/{data-table-cBq9JXG7.es.js.map → data-table-DbhVtDHQ.es.js.map} +1 -1
  34. package/dist/chunks/{date-input-BSacD65z.es.js → date-input-BOKez7n5.es.js} +3 -3
  35. package/dist/chunks/{date-input-BSacD65z.es.js.map → date-input-BOKez7n5.es.js.map} +1 -1
  36. package/dist/chunks/{date-input-DwxNrZ3r.cjs.js → date-input-C6zs_WLw.cjs.js} +2 -2
  37. package/dist/chunks/{date-input-DwxNrZ3r.cjs.js.map → date-input-C6zs_WLw.cjs.js.map} +1 -1
  38. package/dist/chunks/{date-picker-Bx2J-sPg.es.js → date-picker-Bpi1PgR2.es.js} +7 -7
  39. package/dist/chunks/{date-picker-Bx2J-sPg.es.js.map → date-picker-Bpi1PgR2.es.js.map} +1 -1
  40. package/dist/chunks/{date-picker-UEQeFHA8.cjs.js → date-picker-DNROhe7B.cjs.js} +2 -2
  41. package/dist/chunks/{date-picker-UEQeFHA8.cjs.js.map → date-picker-DNROhe7B.cjs.js.map} +1 -1
  42. package/dist/chunks/{date-range-picker-DvaRIy3T.es.js → date-range-picker-CXKG84tw.es.js} +7 -7
  43. package/dist/chunks/{date-range-picker-DvaRIy3T.es.js.map → date-range-picker-CXKG84tw.es.js.map} +1 -1
  44. package/dist/chunks/{date-range-picker-Dx1nE1Br.cjs.js → date-range-picker-tyjYdQx1.cjs.js} +2 -2
  45. package/dist/chunks/{date-range-picker-Dx1nE1Br.cjs.js.map → date-range-picker-tyjYdQx1.cjs.js.map} +1 -1
  46. package/dist/chunks/{extractStyleProps-BEa9kwlY.es.js → extractStyleProps-DX5GBd9K.es.js} +2 -2
  47. package/dist/chunks/{extractStyleProps-BEa9kwlY.es.js.map → extractStyleProps-DX5GBd9K.es.js.map} +1 -1
  48. package/dist/chunks/{extractStyleProps-wjyId_vK.cjs.js → extractStyleProps-yFm0qaXg.cjs.js} +2 -2
  49. package/dist/chunks/{extractStyleProps-wjyId_vK.cjs.js.map → extractStyleProps-yFm0qaXg.cjs.js.map} +1 -1
  50. package/dist/chunks/{form-field-Do0NhI0D.es.js → form-field-DePRnFqm.es.js} +2 -2
  51. package/dist/chunks/{form-field-Do0NhI0D.es.js.map → form-field-DePRnFqm.es.js.map} +1 -1
  52. package/dist/chunks/{form-field-DiW_0hSy.cjs.js → form-field-JpzG70WX.cjs.js} +2 -2
  53. package/dist/chunks/{form-field-DiW_0hSy.cjs.js.map → form-field-JpzG70WX.cjs.js.map} +1 -1
  54. package/dist/chunks/{icon-button-BBkPfAM3.cjs.js → icon-button-CCrfnUUB.cjs.js} +2 -2
  55. package/dist/chunks/{icon-button-BBkPfAM3.cjs.js.map → icon-button-CCrfnUUB.cjs.js.map} +1 -1
  56. package/dist/chunks/{icon-button-D2qU4Eun.es.js → icon-button-O_dSWgZr.es.js} +2 -2
  57. package/dist/chunks/{icon-button-D2qU4Eun.es.js.map → icon-button-O_dSWgZr.es.js.map} +1 -1
  58. package/dist/chunks/{icon-toggle-button-L_kYjNhI.cjs.js → icon-toggle-button-D5Uji9qU.cjs.js} +2 -2
  59. package/dist/chunks/{icon-toggle-button-L_kYjNhI.cjs.js.map → icon-toggle-button-D5Uji9qU.cjs.js.map} +1 -1
  60. package/dist/chunks/{icon-toggle-button-wjYSiFhl.es.js → icon-toggle-button-sFqCJEvI.es.js} +2 -2
  61. package/dist/chunks/{icon-toggle-button-wjYSiFhl.es.js.map → icon-toggle-button-sFqCJEvI.es.js.map} +1 -1
  62. package/dist/chunks/index-COhQ_99G.cjs.js +4 -0
  63. package/dist/chunks/index-COhQ_99G.cjs.js.map +1 -0
  64. package/dist/chunks/{index-BDmBxsjm.es.js → index-DRWeBbu8.es.js} +31 -61
  65. package/dist/chunks/index-DRWeBbu8.es.js.map +1 -0
  66. package/dist/chunks/menu-BX993uzm.cjs.js +2 -0
  67. package/dist/chunks/menu-BX993uzm.cjs.js.map +1 -0
  68. package/dist/chunks/menu-DbKjf1RS.es.js +157 -0
  69. package/dist/chunks/menu-DbKjf1RS.es.js.map +1 -0
  70. package/dist/chunks/{multiline-text-input-MJPDSw2d.es.js → multiline-text-input-BvJxZ-xz.es.js} +2 -2
  71. package/dist/chunks/{multiline-text-input-MJPDSw2d.es.js.map → multiline-text-input-BvJxZ-xz.es.js.map} +1 -1
  72. package/dist/chunks/{multiline-text-input-BXpftZg5.cjs.js → multiline-text-input-mIiDJ-o1.cjs.js} +2 -2
  73. package/dist/chunks/{multiline-text-input-BXpftZg5.cjs.js.map → multiline-text-input-mIiDJ-o1.cjs.js.map} +1 -1
  74. package/dist/chunks/{nimbus-provider-DEQVQ5ZH.es.js → nimbus-provider-C68IpiXi.es.js} +2 -2
  75. package/dist/chunks/{nimbus-provider-DEQVQ5ZH.es.js.map → nimbus-provider-C68IpiXi.es.js.map} +1 -1
  76. package/dist/chunks/{nimbus-provider-DCCIMVE_.cjs.js → nimbus-provider-Yka95N38.cjs.js} +2 -2
  77. package/dist/chunks/{nimbus-provider-DCCIMVE_.cjs.js.map → nimbus-provider-Yka95N38.cjs.js.map} +1 -1
  78. package/dist/chunks/{number-input-DsQqe_99.cjs.js → number-input-BN6xiOXG.cjs.js} +2 -2
  79. package/dist/chunks/{number-input-DsQqe_99.cjs.js.map → number-input-BN6xiOXG.cjs.js.map} +1 -1
  80. package/dist/chunks/{number-input-CFa5dE3r.es.js → number-input-DFmXNyz2.es.js} +3 -3
  81. package/dist/chunks/{number-input-CFa5dE3r.es.js.map → number-input-DFmXNyz2.es.js.map} +1 -1
  82. package/dist/chunks/{password-input-BT594v5p.es.js → password-input-BtbZYHE8.es.js} +3 -3
  83. package/dist/chunks/{password-input-BT594v5p.es.js.map → password-input-BtbZYHE8.es.js.map} +1 -1
  84. package/dist/chunks/{password-input-D1LSzb9p.cjs.js → password-input-CGsQktks.cjs.js} +2 -2
  85. package/dist/chunks/{password-input-D1LSzb9p.cjs.js.map → password-input-CGsQktks.cjs.js.map} +1 -1
  86. package/dist/chunks/{progress-bar-DM8YmshZ.es.js → progress-bar-CDRI279T.es.js} +2 -2
  87. package/dist/chunks/{progress-bar-DM8YmshZ.es.js.map → progress-bar-CDRI279T.es.js.map} +1 -1
  88. package/dist/chunks/{progress-bar-QjY92GQn.cjs.js → progress-bar-nQCcdv_4.cjs.js} +2 -2
  89. package/dist/chunks/{progress-bar-QjY92GQn.cjs.js.map → progress-bar-nQCcdv_4.cjs.js.map} +1 -1
  90. package/dist/chunks/{radio-input-DRDeKoG2.es.js → radio-input-CE_kist9.es.js} +3 -3
  91. package/dist/chunks/{radio-input-DRDeKoG2.es.js.map → radio-input-CE_kist9.es.js.map} +1 -1
  92. package/dist/chunks/{radio-input-BOjuwflu.cjs.js → radio-input-CWRnpcxm.cjs.js} +2 -2
  93. package/dist/chunks/{radio-input-BOjuwflu.cjs.js.map → radio-input-CWRnpcxm.cjs.js.map} +1 -1
  94. package/dist/chunks/{range-calendar-Cup7ahCy.es.js → range-calendar-BNAIdxfK.es.js} +4 -4
  95. package/dist/chunks/{range-calendar-Cup7ahCy.es.js.map → range-calendar-BNAIdxfK.es.js.map} +1 -1
  96. package/dist/chunks/{range-calendar-C_x3yqnL.cjs.js → range-calendar-BW4gqU35.cjs.js} +2 -2
  97. package/dist/chunks/{range-calendar-C_x3yqnL.cjs.js.map → range-calendar-BW4gqU35.cjs.js.map} +1 -1
  98. package/dist/chunks/rich-text-input-D3xrDvLR.es.js +691 -0
  99. package/dist/chunks/rich-text-input-D3xrDvLR.es.js.map +1 -0
  100. package/dist/chunks/rich-text-input-iDEygf74.cjs.js +2 -0
  101. package/dist/chunks/rich-text-input-iDEygf74.cjs.js.map +1 -0
  102. package/dist/chunks/{select-BnN5zaBu.cjs.js → select-DihySN1w.cjs.js} +2 -2
  103. package/dist/chunks/{select-BnN5zaBu.cjs.js.map → select-DihySN1w.cjs.js.map} +1 -1
  104. package/dist/chunks/{select-Cr0CSahh.es.js → select-wby2GRxc.es.js} +16 -16
  105. package/dist/chunks/{select-Cr0CSahh.es.js.map → select-wby2GRxc.es.js.map} +1 -1
  106. package/dist/chunks/slate-helpers-BwRHJO4o.es.js +6919 -0
  107. package/dist/chunks/slate-helpers-BwRHJO4o.es.js.map +1 -0
  108. package/dist/chunks/slate-helpers-CMAwCMk0.cjs.js +24 -0
  109. package/dist/chunks/slate-helpers-CMAwCMk0.cjs.js.map +1 -0
  110. package/dist/chunks/split-button-CcVa5yVH.es.js +103 -0
  111. package/dist/chunks/split-button-CcVa5yVH.es.js.map +1 -0
  112. package/dist/chunks/split-button-RydlGh27.cjs.js +2 -0
  113. package/dist/chunks/split-button-RydlGh27.cjs.js.map +1 -0
  114. package/dist/chunks/{switch-DUiPm-aC.cjs.js → switch-D3w3xQ7Z.cjs.js} +2 -2
  115. package/dist/chunks/{switch-DUiPm-aC.cjs.js.map → switch-D3w3xQ7Z.cjs.js.map} +1 -1
  116. package/dist/chunks/{switch-BOvBbCnU.es.js → switch-DZBU6Cbk.es.js} +3 -3
  117. package/dist/chunks/{switch-BOvBbCnU.es.js.map → switch-DZBU6Cbk.es.js.map} +1 -1
  118. package/dist/chunks/{tag-group-wXtwUUis.cjs.js → tag-group-Cwcr_VDp.cjs.js} +2 -2
  119. package/dist/chunks/{tag-group-wXtwUUis.cjs.js.map → tag-group-Cwcr_VDp.cjs.js.map} +1 -1
  120. package/dist/chunks/{tag-group-C_oBSbrz.es.js → tag-group-DQ0jVbpR.es.js} +2 -2
  121. package/dist/chunks/{tag-group-C_oBSbrz.es.js.map → tag-group-DQ0jVbpR.es.js.map} +1 -1
  122. package/dist/chunks/{text-input-B7XCw3SS.es.js → text-input-DlNFZk9-.es.js} +3 -3
  123. package/dist/chunks/{text-input-B7XCw3SS.es.js.map → text-input-DlNFZk9-.es.js.map} +1 -1
  124. package/dist/chunks/{text-input-CCX8LUl1.cjs.js → text-input-i2bZeQZZ.cjs.js} +2 -2
  125. package/dist/chunks/{text-input-CCX8LUl1.cjs.js.map → text-input-i2bZeQZZ.cjs.js.map} +1 -1
  126. package/dist/chunks/{time-input-DiFCm9qO.es.js → time-input-BORpKwS7.es.js} +2 -2
  127. package/dist/chunks/{time-input-DiFCm9qO.es.js.map → time-input-BORpKwS7.es.js.map} +1 -1
  128. package/dist/chunks/{time-input-DQaDOtuT.cjs.js → time-input-Cc8RFGmz.cjs.js} +2 -2
  129. package/dist/chunks/{time-input-DQaDOtuT.cjs.js.map → time-input-Cc8RFGmz.cjs.js.map} +1 -1
  130. package/dist/chunks/{toggle-button-BpG_UgsK.es.js → toggle-button-C7BBLnfL.es.js} +9 -9
  131. package/dist/chunks/{toggle-button-BpG_UgsK.es.js.map → toggle-button-C7BBLnfL.es.js.map} +1 -1
  132. package/dist/chunks/{toggle-button-C9XUBlNB.cjs.js → toggle-button-DZpRqlmW.cjs.js} +2 -2
  133. package/dist/chunks/{toggle-button-C9XUBlNB.cjs.js.map → toggle-button-DZpRqlmW.cjs.js.map} +1 -1
  134. package/dist/chunks/{toolbar-D2CqoZzL.es.js → toolbar-CD5Nrn7W.es.js} +3 -3
  135. package/dist/chunks/{toolbar-D2CqoZzL.es.js.map → toolbar-CD5Nrn7W.es.js.map} +1 -1
  136. package/dist/chunks/{toolbar-BxIQI626.cjs.js → toolbar-Dbq_EngE.cjs.js} +2 -2
  137. package/dist/chunks/{toolbar-BxIQI626.cjs.js.map → toolbar-Dbq_EngE.cjs.js.map} +1 -1
  138. package/dist/chunks/use-formatting-state-Denpy3Zo.cjs.js +2 -0
  139. package/dist/chunks/use-formatting-state-Denpy3Zo.cjs.js.map +1 -0
  140. package/dist/chunks/use-formatting-state-RJvSR-Zg.es.js +247 -0
  141. package/dist/chunks/use-formatting-state-RJvSR-Zg.es.js.map +1 -0
  142. package/dist/code.d.ts +9 -0
  143. package/dist/combobox.d.ts +9 -0
  144. package/dist/components/alert.cjs +1 -1
  145. package/dist/components/alert.es.js +1 -1
  146. package/dist/components/button.cjs +1 -1
  147. package/dist/components/button.es.js +1 -1
  148. package/dist/components/calendar.cjs +1 -1
  149. package/dist/components/calendar.es.js +1 -1
  150. package/dist/components/checkbox.cjs +1 -1
  151. package/dist/components/checkbox.es.js +1 -1
  152. package/dist/components/combobox.cjs +1 -1
  153. package/dist/components/combobox.es.js +1 -1
  154. package/dist/components/components.cjs +1 -1
  155. package/dist/components/components.es.js +89 -86
  156. package/dist/components/components.es.js.map +1 -1
  157. package/dist/components/constants.cjs +2 -0
  158. package/dist/components/constants.cjs.map +1 -0
  159. package/dist/components/constants.es.js +125 -0
  160. package/dist/components/constants.es.js.map +1 -0
  161. package/dist/components/data-table.cjs +1 -1
  162. package/dist/components/data-table.es.js +1 -1
  163. package/dist/components/date-input.cjs +1 -1
  164. package/dist/components/date-input.es.js +1 -1
  165. package/dist/components/date-picker.cjs +1 -1
  166. package/dist/components/date-picker.es.js +1 -1
  167. package/dist/components/date-range-picker.cjs +1 -1
  168. package/dist/components/date-range-picker.es.js +1 -1
  169. package/dist/components/form-field.cjs +1 -1
  170. package/dist/components/form-field.es.js +1 -1
  171. package/dist/components/hooks.cjs +2 -0
  172. package/dist/components/hooks.cjs.map +1 -0
  173. package/dist/components/hooks.es.js +8 -0
  174. package/dist/components/hooks.es.js.map +1 -0
  175. package/dist/components/icon-button.cjs +1 -1
  176. package/dist/components/icon-button.es.js +1 -1
  177. package/dist/components/icon-toggle-button.cjs +1 -1
  178. package/dist/components/icon-toggle-button.es.js +1 -1
  179. package/dist/components/multiline-text-input.cjs +1 -1
  180. package/dist/components/multiline-text-input.es.js +1 -1
  181. package/dist/components/nimbus-provider.cjs +1 -1
  182. package/dist/components/nimbus-provider.es.js +1 -1
  183. package/dist/components/number-input.cjs +1 -1
  184. package/dist/components/number-input.es.js +1 -1
  185. package/dist/components/password-input.cjs +1 -1
  186. package/dist/components/password-input.es.js +1 -1
  187. package/dist/components/progress-bar.cjs +1 -1
  188. package/dist/components/progress-bar.es.js +1 -1
  189. package/dist/components/radio-input.cjs +1 -1
  190. package/dist/components/radio-input.es.js +1 -1
  191. package/dist/components/range-calendar.cjs +1 -1
  192. package/dist/components/range-calendar.es.js +1 -1
  193. package/dist/components/rich-text-input.cjs +2 -0
  194. package/dist/components/rich-text-input.cjs.map +1 -0
  195. package/dist/components/rich-text-input.es.js +5 -0
  196. package/dist/components/rich-text-input.es.js.map +1 -0
  197. package/dist/components/select.cjs +1 -1
  198. package/dist/components/select.es.js +1 -1
  199. package/dist/components/split-button.cjs +1 -1
  200. package/dist/components/split-button.es.js +1 -1
  201. package/dist/components/switch.cjs +1 -1
  202. package/dist/components/switch.es.js +1 -1
  203. package/dist/components/tag-group.cjs +1 -1
  204. package/dist/components/tag-group.es.js +1 -1
  205. package/dist/components/text-input.cjs +1 -1
  206. package/dist/components/text-input.es.js +1 -1
  207. package/dist/components/time-input.cjs +1 -1
  208. package/dist/components/time-input.es.js +1 -1
  209. package/dist/components/toggle-button.cjs +1 -1
  210. package/dist/components/toggle-button.es.js +1 -1
  211. package/dist/components/toolbar.cjs +1 -1
  212. package/dist/components/toolbar.es.js +1 -1
  213. package/dist/components/utils.cjs +2 -0
  214. package/dist/components/utils.cjs.map +1 -0
  215. package/dist/components/utils.es.js +76 -0
  216. package/dist/components/utils.es.js.map +1 -0
  217. package/dist/components.d.ts +76 -1
  218. package/dist/constants.d.ts +129 -0
  219. package/dist/data-table.d.ts +10 -0
  220. package/dist/date-input.d.ts +9 -0
  221. package/dist/date-picker.d.ts +9 -0
  222. package/dist/date-range-picker.d.ts +9 -0
  223. package/dist/dialog.d.ts +9 -0
  224. package/dist/divider.d.ts +9 -0
  225. package/dist/flex.d.ts +9 -0
  226. package/dist/form-field.d.ts +9 -0
  227. package/dist/grid.d.ts +9 -0
  228. package/dist/group.d.ts +9 -0
  229. package/dist/heading.d.ts +9 -0
  230. package/dist/hooks.d.ts +60 -0
  231. package/dist/icon-button.d.ts +9 -0
  232. package/dist/icon-toggle-button.d.ts +9 -0
  233. package/dist/icon.d.ts +9 -0
  234. package/dist/image.d.ts +9 -0
  235. package/dist/index.cjs +1 -1
  236. package/dist/index.cjs.map +1 -1
  237. package/dist/index.d.ts +115 -58
  238. package/dist/index.es.js +193 -192
  239. package/dist/kbd.d.ts +9 -0
  240. package/dist/link.d.ts +9 -0
  241. package/dist/list.d.ts +9 -0
  242. package/dist/loading-spinner.d.ts +9 -0
  243. package/dist/multiline-text-input.d.ts +9 -0
  244. package/dist/nimbus-provider.d.ts +9 -0
  245. package/dist/number-input.d.ts +9 -0
  246. package/dist/password-input.d.ts +9 -0
  247. package/dist/popover.d.ts +9 -0
  248. package/dist/progress-bar.d.ts +9 -0
  249. package/dist/radio-input.d.ts +9 -0
  250. package/dist/range-calendar.d.ts +9 -0
  251. package/dist/rich-text-input.d.ts +79 -0
  252. package/dist/select.d.ts +9 -0
  253. package/dist/setup-jsdom-polyfills.d.ts +9 -0
  254. package/dist/simple-grid.d.ts +9 -0
  255. package/dist/split-button.d.ts +9 -0
  256. package/dist/stack.d.ts +9 -0
  257. package/dist/switch.d.ts +9 -0
  258. package/dist/table.d.ts +9 -0
  259. package/dist/tag-group.d.ts +9 -0
  260. package/dist/text-input.d.ts +9 -0
  261. package/dist/text.d.ts +9 -0
  262. package/dist/time-input.d.ts +9 -0
  263. package/dist/toggle-button-group.d.ts +9 -0
  264. package/dist/toggle-button.d.ts +9 -0
  265. package/dist/toolbar.d.ts +13 -1
  266. package/dist/tooltip.d.ts +9 -0
  267. package/dist/utils.d.ts +164 -0
  268. package/dist/visually-hidden.d.ts +9 -0
  269. package/package.json +16 -8
  270. package/dist/chunks/data-table-DIXPr3ke.cjs.js +0 -2
  271. package/dist/chunks/index-BDmBxsjm.es.js.map +0 -1
  272. package/dist/chunks/index-XyB4gGC8.cjs.js +0 -4
  273. package/dist/chunks/index-XyB4gGC8.cjs.js.map +0 -1
  274. package/dist/chunks/split-button-DhYWuU3x.es.js +0 -262
  275. package/dist/chunks/split-button-DhYWuU3x.es.js.map +0 -1
  276. package/dist/chunks/split-button-DrujRAqS.cjs.js +0 -2
  277. package/dist/chunks/split-button-DrujRAqS.cjs.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rich-text-input-D3xrDvLR.es.js","sources":["../../src/components/rich-text-input/rich-text-input.recipe.tsx","../../src/components/rich-text-input/rich-text-input.slots.tsx","../../../../node_modules/.pnpm/slate-history@0.113.1_slate@0.75.0/node_modules/slate-history/dist/index.es.js","../../src/components/rich-text-input/components/rich-text-editor.tsx","../../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 { defineSlotRecipe } from \"@chakra-ui/react\";\n\nexport const richTextInputRecipe = defineSlotRecipe({\n slots: [\"root\", \"toolbar\", \"editable\"],\n className: \"nimbus-rich-text-input\",\n base: {\n root: {\n display: \"flex\",\n flexDirection: \"column\",\n position: \"relative\",\n width: \"full\",\n borderRadius: \"200\",\n borderWidth: \"{sizes.25}\",\n colorPalette: \"slate\",\n borderColor: \"colorPalette.7\",\n backgroundColor: \"colorPalette.contrast\",\n\n // Invalid state styling\n \"&[data-invalid='true']\": {\n borderWidth: \"{sizes.50}\",\n borderColor: \"critical.7\",\n },\n },\n toolbar: {\n boxShadow: \"1\",\n\n // Disabled state styling for toolbar\n \"[data-disabled='true'] &\": {\n opacity: \"0.5\",\n },\n },\n editable: {\n padding: \"400\",\n minHeight: \"inherit\",\n outline: \"none\",\n\n // Disabled state styling for editable\n \"[data-disabled='true'] &\": {\n cursor: \"not-allowed\",\n opacity: \"0.5\",\n },\n\n // Styling for user-facing editor text\n \"& p\": {\n textStyle: \"md\",\n fontWeight: \"500\",\n },\n \"& h1\": {\n textStyle: \"2xl\",\n fontWeight: \"500\",\n },\n \"& h2\": {\n textStyle: \"xl\",\n fontWeight: \"500\",\n },\n \"& h3\": {\n textStyle: \"lg\",\n fontWeight: \"500\",\n },\n \"& h4\": {\n textStyle: \"md\",\n fontWeight: \"500\",\n },\n \"& h5\": {\n textStyle: \"xs\",\n fontWeight: \"500\",\n },\n \"& blockquote\": {\n textStyle: \"md\",\n fontWeight: \"400\",\n borderLeftWidth: \"{sizes.100}\",\n paddingLeft: \"400\",\n },\n \"& ul\": {\n paddingLeft: \"600\",\n listStyleType: \"disc\",\n },\n \"& ol\": {\n paddingLeft: \"600\",\n listStyleType: \"decimal\",\n },\n \"& code\": {\n padding: \"100\",\n fontFamily: \"mono\",\n },\n \"& pre\": {\n padding: \"300\",\n borderRadius: \"200\",\n overflow: \"auto\",\n \"& code\": {\n padding: \"0\",\n },\n },\n \"& a\": {\n color: \"primary.11\",\n textDecoration: \"underline\",\n cursor: \"pointer\",\n _hover: {\n textDecoration: \"none\",\n },\n },\n \"& strong\": {\n fontWeight: \"700\",\n },\n \"& em\": {\n fontStyle: \"italic\",\n },\n \"& u\": {\n textDecoration: \"underline\",\n },\n \"& del\": {\n textDecoration: \"line-through\",\n },\n \"& sup\": {\n fontSize: \"75%\",\n verticalAlign: \"super\",\n lineHeight: \"0\",\n },\n \"& sub\": {\n fontSize: \"75%\",\n verticalAlign: \"sub\",\n lineHeight: \"0\",\n },\n },\n },\n variants: {},\n});\n","import {\n type HTMLChakraProps,\n type RecipeVariantProps,\n type UnstyledProp,\n createSlotRecipeContext,\n} from \"@chakra-ui/react\";\nimport { richTextInputRecipe } from \"./rich-text-input.recipe\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n recipe: richTextInputRecipe,\n});\n\n// Root slot\nexport type RichTextInputRootSlotProps = HTMLChakraProps<\n \"div\",\n RecipeVariantProps<typeof richTextInputRecipe> & UnstyledProp\n>;\n\nexport const RichTextInputRootSlot = withProvider<\n HTMLDivElement,\n RichTextInputRootSlotProps\n>(\"div\", \"root\");\n\n// Toolbar slot\nexport type RichTextInputToolbarSlotProps = HTMLChakraProps<\"div\">;\n\nexport const RichTextInputToolbarSlot = withContext<\n HTMLDivElement,\n RichTextInputToolbarSlotProps\n>(\"div\", \"toolbar\");\n\n// Editable slot\nexport type RichTextInputEditableSlotProps = HTMLChakraProps<\"div\">;\nexport const RichTextInputEditableSlot = withContext<\n HTMLDivElement,\n RichTextInputEditableSlotProps\n>(\"div\", \"editable\");\n","import { isPlainObject } from 'is-plain-object';\nimport { Operation, Editor, Transforms, Path } from 'slate';\n\n// eslint-disable-next-line no-redeclare\nvar History = {\n /**\n * Check if a value is a `History` object.\n */\n isHistory(value) {\n return isPlainObject(value) && Array.isArray(value.redos) && Array.isArray(value.undos) && (value.redos.length === 0 || Operation.isOperationList(value.redos[0].operations)) && (value.undos.length === 0 || Operation.isOperationList(value.undos[0].operations));\n }\n};\n\n/**\n * Weakmaps for attaching state to the editor.\n */\nvar HISTORY = new WeakMap();\nvar SAVING = new WeakMap();\nvar MERGING = new WeakMap();\nvar SPLITTING_ONCE = new WeakMap();\n// eslint-disable-next-line no-redeclare\nvar HistoryEditor = {\n /**\n * Check if a value is a `HistoryEditor` object.\n */\n isHistoryEditor(value) {\n return History.isHistory(value.history) && Editor.isEditor(value);\n },\n /**\n * Get the merge flag's current value.\n */\n isMerging(editor) {\n return MERGING.get(editor);\n },\n /**\n * Get the splitting once flag's current value.\n */\n isSplittingOnce(editor) {\n return SPLITTING_ONCE.get(editor);\n },\n setSplittingOnce(editor, value) {\n SPLITTING_ONCE.set(editor, value);\n },\n /**\n * Get the saving flag's current value.\n */\n isSaving(editor) {\n return SAVING.get(editor);\n },\n /**\n * Redo to the previous saved state.\n */\n redo(editor) {\n editor.redo();\n },\n /**\n * Undo to the previous saved state.\n */\n undo(editor) {\n editor.undo();\n },\n /**\n * Apply a series of changes inside a synchronous `fn`, These operations will\n * be merged into the previous history.\n */\n withMerging(editor, fn) {\n var prev = HistoryEditor.isMerging(editor);\n MERGING.set(editor, true);\n fn();\n MERGING.set(editor, prev);\n },\n /**\n * Apply a series of changes inside a synchronous `fn`, ensuring that the first\n * operation starts a new batch in the history. Subsequent operations will be\n * merged as usual.\n */\n withNewBatch(editor, fn) {\n var prev = HistoryEditor.isMerging(editor);\n MERGING.set(editor, true);\n SPLITTING_ONCE.set(editor, true);\n fn();\n MERGING.set(editor, prev);\n SPLITTING_ONCE.delete(editor);\n },\n /**\n * Apply a series of changes inside a synchronous `fn`, without merging any of\n * the new operations into previous save point in the history.\n */\n withoutMerging(editor, fn) {\n var prev = HistoryEditor.isMerging(editor);\n MERGING.set(editor, false);\n fn();\n MERGING.set(editor, prev);\n },\n /**\n * Apply a series of changes inside a synchronous `fn`, without saving any of\n * their operations into the history.\n */\n withoutSaving(editor, fn) {\n var prev = HistoryEditor.isSaving(editor);\n SAVING.set(editor, false);\n try {\n fn();\n } finally {\n SAVING.set(editor, prev);\n }\n }\n};\n\n/**\n * The `withHistory` plugin keeps track of the operation history of a Slate\n * editor as operations are applied to it, using undo and redo stacks.\n *\n * If you are using TypeScript, you must extend Slate's CustomTypes to use\n * this plugin.\n *\n * See https://docs.slatejs.org/concepts/11-typescript to learn how.\n */\nvar withHistory = editor => {\n var e = editor;\n var {\n apply\n } = e;\n e.history = {\n undos: [],\n redos: []\n };\n e.redo = () => {\n var {\n history\n } = e;\n var {\n redos\n } = history;\n if (redos.length > 0) {\n var batch = redos[redos.length - 1];\n if (batch.selectionBefore) {\n Transforms.setSelection(e, batch.selectionBefore);\n }\n HistoryEditor.withoutSaving(e, () => {\n Editor.withoutNormalizing(e, () => {\n for (var op of batch.operations) {\n e.apply(op);\n }\n });\n });\n history.redos.pop();\n e.writeHistory('undos', batch);\n }\n };\n e.undo = () => {\n var {\n history\n } = e;\n var {\n undos\n } = history;\n if (undos.length > 0) {\n var batch = undos[undos.length - 1];\n HistoryEditor.withoutSaving(e, () => {\n Editor.withoutNormalizing(e, () => {\n var inverseOps = batch.operations.map(Operation.inverse).reverse();\n for (var op of inverseOps) {\n e.apply(op);\n }\n if (batch.selectionBefore) {\n Transforms.setSelection(e, batch.selectionBefore);\n }\n });\n });\n e.writeHistory('redos', batch);\n history.undos.pop();\n }\n };\n e.apply = op => {\n var {\n operations,\n history\n } = e;\n var {\n undos\n } = history;\n var lastBatch = undos[undos.length - 1];\n var lastOp = lastBatch && lastBatch.operations[lastBatch.operations.length - 1];\n var save = HistoryEditor.isSaving(e);\n var merge = HistoryEditor.isMerging(e);\n if (save == null) {\n save = shouldSave(op);\n }\n if (save) {\n if (merge == null) {\n if (lastBatch == null) {\n merge = false;\n } else if (operations.length !== 0) {\n merge = true;\n } else {\n merge = shouldMerge(op, lastOp);\n }\n }\n if (HistoryEditor.isSplittingOnce(e)) {\n merge = false;\n HistoryEditor.setSplittingOnce(e, undefined);\n }\n if (lastBatch && merge) {\n lastBatch.operations.push(op);\n } else {\n var batch = {\n operations: [op],\n selectionBefore: e.selection\n };\n e.writeHistory('undos', batch);\n }\n while (undos.length > 100) {\n undos.shift();\n }\n history.redos = [];\n }\n apply(op);\n };\n e.writeHistory = (stack, batch) => {\n e.history[stack].push(batch);\n };\n return e;\n};\n/**\n * Check whether to merge an operation into the previous operation.\n */\nvar shouldMerge = (op, prev) => {\n if (prev && op.type === 'insert_text' && prev.type === 'insert_text' && op.offset === prev.offset + prev.text.length && Path.equals(op.path, prev.path)) {\n return true;\n }\n if (prev && op.type === 'remove_text' && prev.type === 'remove_text' && op.offset + op.text.length === prev.offset && Path.equals(op.path, prev.path)) {\n return true;\n }\n return false;\n};\n/**\n * Check whether an operation needs to be saved to the history.\n */\nvar shouldSave = (op, prev) => {\n if (op.type === 'set_selection') {\n return false;\n }\n return true;\n};\n\nexport { HISTORY, History, HistoryEditor, MERGING, SAVING, SPLITTING_ONCE, withHistory };\n//# sourceMappingURL=index.es.js.map\n","import {\n useMemo,\n useCallback,\n useImperativeHandle,\n forwardRef,\n type ForwardedRef,\n type FocusEventHandler,\n type ReactNode,\n} from \"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 interface 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\nexport interface RichTextEditorRef {\n focus: () => void;\n resetValue: (html: string) => void;\n}\n\nexport const RichTextEditor = forwardRef<\n RichTextEditorRef,\n RichTextEditorProps\n>((props, forwardedRef: ForwardedRef<RichTextEditorRef>) => {\n const {\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\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 forwardedRef,\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 { 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 interface 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 Divider,\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 interface 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 <Divider 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 <Divider 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/extractStyleProps\";\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 {...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":["richTextInputRecipe","defineSlotRecipe","withProvider","withContext","createSlotRecipeContext","RichTextInputRootSlot","RichTextInputToolbarSlot","RichTextInputEditableSlot","History","value","isPlainObject","Operation","SAVING","MERGING","SPLITTING_ONCE","HistoryEditor","Editor","editor","fn","prev","withHistory","e","apply","history","redos","batch","Transforms","op","undos","inverseOps","operations","lastBatch","lastOp","save","merge","shouldSave","shouldMerge","stack","Path","RichTextEditor","forwardRef","props","forwardedRef","onChange","onFocus","onBlur","placeholder","EDITOR_DEFAULTS","isDisabled","isReadOnly","autoFocus","toolbar","useMemo","baseEditor","createEditor","withLinks","withReact","handleKeyDown","useKeyboardShortcuts","handleFocus","useCallback","event","handleBlur","useImperativeHandle","focusEditor","html","resetEditor","renderElement","jsx","Element","renderLeaf","Leaf","defaultValue","createEmptyValue","safeInitialValue","jsxs","Slate","Editable","FormattingMenu","useSlate","withPreservedSelection","usePreservedSelection","allSelectedKeys","handleAllSelectionChange","useFormattingState","Menu","Tooltip","IconButton","MoreHoriz","Box","FormatStrikethrough","Text","Code","RichTextToolbar","currentTextStyle","selectedTextStyleLabel","handleTextStyleChange","handleListToggle","selectedFormatKeys","selectedListKeys","hasUndos","hasRedos","useToolbarState","Toolbar","Group","styleId","KeyboardArrowDown","textStyles","style","Divider","ToggleButtonGroup","IconToggleButton","toggleMark","FormatBold","VisuallyHidden","FormatItalic","FormatUnderlined","FormatListBulleted","FormatListNumbered","Undo","Redo","RichTextInput","isInvalid","restProps","recipe","useSlotRecipe","recipeProps","remainingProps","styleProps","functionalProps","extractStyleProps","dataAttributes","internalValue","setInternalValue","useState","initialHtml","fromHTML","error","serializedValue","setSerializedValue","editorRef","useRef","useEffect","newSlateValue","handleChange","slateValue","newHtml","toHTML","hasSerializedValueChanged","safeValue","validSlateStateAdapter"],"mappings":"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","x_google_ignoreList":[2]}
@@ -0,0 +1,2 @@
1
+ "use strict";const e=require("react/jsx-runtime"),p=require("react"),k=require("@chakra-ui/react"),oe=require("./extractStyleProps-yFm0qaXg.cjs.js"),n=require("./slate-helpers-CMAwCMk0.cjs.js"),D=require("./use-formatting-state-Denpy3Zo.cjs.js"),I=require("../components/constants.cjs"),b=require("./box-BPfqlznQ.cjs.js"),N=require("./divider-CTTExmLv.cjs.js"),U=require("./group-BwSwp_8B.cjs.js"),O=require("./icon-button-CCrfnUUB.cjs.js"),w=require("./icon-toggle-button-D5Uji9qU.cjs.js"),v=require("./text-hUMahKuA.cjs.js"),d=require("./tooltip-DjUjwciC.cjs.js"),M=require("./visually-hidden-Uhh-2Y-q.cjs.js"),_=require("./toggle-button-group-C-jzm7ev.cjs.js"),re=require("./toolbar-Dbq_EngE.cjs.js"),f=require("@commercetools/nimbus-icons"),y=require("./menu-BX993uzm.cjs.js"),G=k.defineSlotRecipe({slots:["root","toolbar","editable"],className:"nimbus-rich-text-input",base:{root:{display:"flex",flexDirection:"column",position:"relative",width:"full",borderRadius:"200",borderWidth:"{sizes.25}",colorPalette:"slate",borderColor:"colorPalette.7",backgroundColor:"colorPalette.contrast","&[data-invalid='true']":{borderWidth:"{sizes.50}",borderColor:"critical.7"}},toolbar:{boxShadow:"1","[data-disabled='true'] &":{opacity:"0.5"}},editable:{padding:"400",minHeight:"inherit",outline:"none","[data-disabled='true'] &":{cursor:"not-allowed",opacity:"0.5"},"& p":{textStyle:"md",fontWeight:"500"},"& h1":{textStyle:"2xl",fontWeight:"500"},"& h2":{textStyle:"xl",fontWeight:"500"},"& h3":{textStyle:"lg",fontWeight:"500"},"& h4":{textStyle:"md",fontWeight:"500"},"& h5":{textStyle:"xs",fontWeight:"500"},"& blockquote":{textStyle:"md",fontWeight:"400",borderLeftWidth:"{sizes.100}",paddingLeft:"400"},"& ul":{paddingLeft:"600",listStyleType:"disc"},"& ol":{paddingLeft:"600",listStyleType:"decimal"},"& code":{padding:"100",fontFamily:"mono"},"& pre":{padding:"300",borderRadius:"200",overflow:"auto","& code":{padding:"0"}},"& a":{color:"primary.11",textDecoration:"underline",cursor:"pointer",_hover:{textDecoration:"none"}},"& strong":{fontWeight:"700"},"& em":{fontStyle:"italic"},"& u":{textDecoration:"underline"},"& del":{textDecoration:"line-through"},"& sup":{fontSize:"75%",verticalAlign:"super",lineHeight:"0"},"& sub":{fontSize:"75%",verticalAlign:"sub",lineHeight:"0"}}},variants:{}}),{withProvider:ne,withContext:K}=k.createSlotRecipeContext({recipe:G}),ie=ne("div","root"),se=K("div","toolbar"),le=K("div","editable");var ae={isHistory(t){return n.isPlainObject(t)&&Array.isArray(t.redos)&&Array.isArray(t.undos)&&(t.redos.length===0||n.Operation.isOperationList(t.redos[0].operations))&&(t.undos.length===0||n.Operation.isOperationList(t.undos[0].operations))}},z=new WeakMap,S=new WeakMap,C=new WeakMap,m={isHistoryEditor(t){return ae.isHistory(t.history)&&n.Editor.isEditor(t)},isMerging(t){return S.get(t)},isSplittingOnce(t){return C.get(t)},setSplittingOnce(t,o){C.set(t,o)},isSaving(t){return z.get(t)},redo(t){t.redo()},undo(t){t.undo()},withMerging(t,o){var i=m.isMerging(t);S.set(t,!0),o(),S.set(t,i)},withNewBatch(t,o){var i=m.isMerging(t);S.set(t,!0),C.set(t,!0),o(),S.set(t,i),C.delete(t)},withoutMerging(t,o){var i=m.isMerging(t);S.set(t,!1),o(),S.set(t,i)},withoutSaving(t,o){var i=m.isSaving(t);z.set(t,!1);try{o()}finally{z.set(t,i)}}},de=t=>{var o=t,{apply:i}=o;return o.history={undos:[],redos:[]},o.redo=()=>{var{history:l}=o,{redos:s}=l;if(s.length>0){var a=s[s.length-1];a.selectionBefore&&n.Transforms.setSelection(o,a.selectionBefore),m.withoutSaving(o,()=>{n.Editor.withoutNormalizing(o,()=>{for(var c of a.operations)o.apply(c)})}),l.redos.pop(),o.writeHistory("undos",a)}},o.undo=()=>{var{history:l}=o,{undos:s}=l;if(s.length>0){var a=s[s.length-1];m.withoutSaving(o,()=>{n.Editor.withoutNormalizing(o,()=>{var c=a.operations.map(n.Operation.inverse).reverse();for(var u of c)o.apply(u);a.selectionBefore&&n.Transforms.setSelection(o,a.selectionBefore)})}),o.writeHistory("redos",a),l.undos.pop()}},o.apply=l=>{var{operations:s,history:a}=o,{undos:c}=a,u=c[c.length-1],j=u&&u.operations[u.operations.length-1],g=m.isSaving(o),h=m.isMerging(o);if(g==null&&(g=ue(l)),g){if(h==null&&(u==null?h=!1:s.length!==0?h=!0:h=ce(l,j)),m.isSplittingOnce(o)&&(h=!1,m.setSplittingOnce(o,void 0)),u&&h)u.operations.push(l);else{var r={operations:[l],selectionBefore:o.selection};o.writeHistory("undos",r)}for(;c.length>100;)c.shift();a.redos=[]}i(l)},o.writeHistory=(l,s)=>{o.history[l].push(s)},o},ce=(t,o)=>!!(o&&t.type==="insert_text"&&o.type==="insert_text"&&t.offset===o.offset+o.text.length&&n.Path.equals(t.path,o.path)||o&&t.type==="remove_text"&&o.type==="remove_text"&&t.offset+t.text.length===o.offset&&n.Path.equals(t.path,o.path)),ue=(t,o)=>t.type!=="set_selection";const X=p.forwardRef((t,o)=>{const{value:i,onChange:l,onFocus:s,onBlur:a,placeholder:c=I.EDITOR_DEFAULTS.placeholder,isDisabled:u=I.EDITOR_DEFAULTS.isDisabled,isReadOnly:j=I.EDITOR_DEFAULTS.isReadOnly,autoFocus:g=I.EDITOR_DEFAULTS.autoFocus,toolbar:h}=t,r=p.useMemo(()=>{const x=n.createEditor();return n.withLinks(de(n.withReact(x)))},[]),{handleKeyDown:E}=D.useKeyboardShortcuts({editor:r}),H=p.useCallback(x=>{s&&s(x)},[s]),L=p.useCallback(x=>{a&&a(x)},[a]);p.useImperativeHandle(o,()=>({focus:()=>n.focusEditor(r),resetValue:x=>n.resetEditor(r,x)}),[r]);const P=p.useCallback(x=>e.jsx(n.Element$1,{...x}),[]),F=p.useCallback(x=>e.jsx(n.Leaf,{...x}),[]),q=n.createEmptyValue(),V=Array.isArray(i)&&i.length>0?i:q;return e.jsxs(n.Slate,{editor:r,value:V,onChange:l,children:[h&&e.jsx(se,{children:h}),e.jsx(le,{asChild:!0,children:e.jsx(n.Editable,{renderElement:P,renderLeaf:F,placeholder:c,autoFocus:g,readOnly:j||u,onKeyDown:E,onFocus:H,onBlur:L,"aria-label":"Rich text editor",role:"textbox","aria-multiline":"true"})})]})});X.displayName="RichTextEditor";const he=({isDisabled:t=!1})=>{const o=n.useSlate(),i=D.usePreservedSelection(o),{allSelectedKeys:l,handleAllSelectionChange:s}=D.useFormattingState({withPreservedSelection:i});return e.jsxs(y.Menu.Root,{selectionMode:"multiple",selectedKeys:l,onSelectionChange:s,children:[e.jsxs(d.Tooltip.Root,{delay:0,closeDelay:0,children:[e.jsx(y.Menu.Trigger,{asChild:!0,children:e.jsx(O.IconButton,{size:"xs",variant:"ghost","aria-label":"More formatting options",isDisabled:t,onMouseDown:a=>a.preventDefault(),children:e.jsx(f.MoreHoriz,{})})}),e.jsx(d.Tooltip.Content,{placement:"top",children:"More styles"})]}),e.jsxs(y.Menu.Content,{children:[e.jsx(y.Menu.Item,{id:"strikethrough",children:e.jsxs(b.Box,{slot:"label",display:"flex",alignItems:"center",gap:"200",children:[e.jsx(f.FormatStrikethrough,{}),e.jsx(v.Text,{textStyle:"sm",children:"Strikethrough"})]})}),e.jsx(y.Menu.Item,{id:"code",children:e.jsxs(b.Box,{slot:"label",display:"flex",alignItems:"center",gap:"200",children:[e.jsx(f.Code,{}),e.jsx(v.Text,{textStyle:"sm",children:"Code"})]})}),e.jsx(y.Menu.Item,{id:"superscript",children:e.jsxs(b.Box,{slot:"label",display:"flex",alignItems:"center",gap:"200",children:[e.jsx(v.Text,{children:"X²"}),e.jsx(v.Text,{textStyle:"sm",children:"Superscript"})]})}),e.jsx(y.Menu.Item,{id:"subscript",children:e.jsxs(b.Box,{slot:"label",display:"flex",alignItems:"center",gap:"200",children:[e.jsx(v.Text,{children:"X₂"}),e.jsx(v.Text,{textStyle:"sm",children:"Subscript"})]})})]})]})},$=({isDisabled:t=!1})=>{const o=n.useSlate(),i=D.usePreservedSelection(o),{currentTextStyle:l,selectedTextStyleLabel:s,handleTextStyleChange:a,handleListToggle:c,selectedFormatKeys:u,selectedListKeys:j,hasUndos:g,hasRedos:h}=D.useToolbarState({withPreservedSelection:i});return e.jsxs(re.Toolbar,{orientation:"horizontal","aria-label":"Text formatting",width:"full",overflow:"hidden",size:"xs",children:[e.jsx(U.Group,{children:e.jsxs(y.Menu.Root,{onAction:r=>a(String(r)),children:[e.jsxs(d.Tooltip.Root,{delay:0,closeDelay:0,children:[e.jsx(y.Menu.Trigger,{height:"800",width:"4000",bg:"primary.1",borderRadius:"200",_hover:{bg:"primary.2"},isDisabled:t,onMouseDown:r=>r.preventDefault(),"aria-label":"Text style menu",children:e.jsxs(b.Box,{display:"flex",alignItems:"center",gap:"200",px:"200",children:[e.jsx(b.Box,{display:"flex",alignItems:"center",gap:"200",flexGrow:"1",children:e.jsx(v.Text,{my:"auto",textStyle:"sm",fontWeight:"500",children:s})}),e.jsx(f.KeyboardArrowDown,{})]})}),e.jsx(d.Tooltip.Content,{placement:"top",children:"Text style"})]}),e.jsx(y.Menu.Content,{children:I.textStyles.map(r=>e.jsx(y.Menu.Item,{id:r.id,...l===r.id&&{"data-state":"checked"},children:e.jsx(v.Text,{...r.props,children:r.label})},r.id))})]})}),e.jsx(N.Divider,{orientation:"vertical"}),e.jsxs(_.ToggleButtonGroup.Root,{selectionMode:"multiple",selectedKeys:u,isDisabled:t,children:[e.jsxs(d.Tooltip.Root,{delay:0,closeDelay:0,children:[e.jsxs(w.IconToggleButton,{id:"bold",size:"xs",variant:"ghost","aria-label":"Bold",isDisabled:t,onMouseDown:r=>r.preventDefault(),onPress:i(()=>n.toggleMark(o,"bold")),children:[e.jsx(f.FormatBold,{}),e.jsx(M.VisuallyHidden,{children:"Bold"})]}),e.jsx(d.Tooltip.Content,{placement:"top",children:"Bold"})]}),e.jsxs(d.Tooltip.Root,{delay:0,closeDelay:0,children:[e.jsxs(w.IconToggleButton,{id:"italic",size:"xs",variant:"ghost","aria-label":"Italic",isDisabled:t,onMouseDown:r=>r.preventDefault(),onPress:i(()=>n.toggleMark(o,"italic")),children:[e.jsx(f.FormatItalic,{}),e.jsx(M.VisuallyHidden,{children:"Italic"})]}),e.jsx(d.Tooltip.Content,{placement:"top",children:"Italic"})]}),e.jsxs(d.Tooltip.Root,{delay:0,closeDelay:0,children:[e.jsxs(w.IconToggleButton,{id:"underline",size:"xs",variant:"ghost","aria-label":"Underline",isDisabled:t,onMouseDown:r=>r.preventDefault(),onPress:i(()=>n.toggleMark(o,"underline")),children:[e.jsx(f.FormatUnderlined,{}),e.jsx(M.VisuallyHidden,{children:"Underline"})]}),e.jsx(d.Tooltip.Content,{placement:"top",children:"Underline"})]})]}),e.jsx(he,{isDisabled:t}),e.jsx(N.Divider,{orientation:"vertical"}),e.jsxs(_.ToggleButtonGroup.Root,{selectionMode:"single",selectedKeys:j,onSelectionChange:c,"aria-label":"List formatting",isDisabled:t,children:[e.jsxs(d.Tooltip.Root,{delay:0,closeDelay:0,children:[e.jsx(w.IconToggleButton,{id:"bulleted-list",size:"xs",variant:"ghost","aria-label":"Bulleted List",isDisabled:t,onMouseDown:r=>r.preventDefault(),children:e.jsx(f.FormatListBulleted,{})}),e.jsx(d.Tooltip.Content,{placement:"top",children:"Bulleted list"})]}),e.jsxs(d.Tooltip.Root,{delay:0,closeDelay:0,children:[e.jsx(w.IconToggleButton,{id:"numbered-list",size:"xs",variant:"ghost","aria-label":"Numbered List",isDisabled:t,onMouseDown:r=>r.preventDefault(),children:e.jsx(f.FormatListNumbered,{})}),e.jsx(d.Tooltip.Content,{placement:"top",children:"Numbered list"})]})]}),e.jsx(b.Box,{flexGrow:"1"}),e.jsxs(U.Group,{children:[e.jsxs(d.Tooltip.Root,{delay:0,closeDelay:0,children:[e.jsxs(O.IconButton,{size:"xs",variant:"ghost","aria-label":"Undo",isDisabled:!g||t,onPress:i(()=>o.undo()),onMouseDown:r=>r.preventDefault(),children:[e.jsx(f.Undo,{}),e.jsx(M.VisuallyHidden,{children:"Undo"})]}),e.jsx(d.Tooltip.Content,{placement:"top",children:"Undo"})]}),e.jsxs(d.Tooltip.Root,{delay:0,closeDelay:0,children:[e.jsxs(O.IconButton,{size:"xs",variant:"ghost","aria-label":"Redo",isDisabled:!h||t,onPress:i(()=>o.redo()),onMouseDown:r=>r.preventDefault(),children:[e.jsx(f.Redo,{}),e.jsx(M.VisuallyHidden,{children:"Redo"})]}),e.jsx(d.Tooltip.Content,{placement:"top",children:"Redo"})]})]})]})};$.displayName="RichTextToolbar";const J=t=>{const{ref:o,value:i,defaultValue:l,onChange:s,onFocus:a,onBlur:c,placeholder:u="",isDisabled:j=!1,isReadOnly:g=!1,isInvalid:h=!1,autoFocus:r=!1,...E}=t,H=k.useSlotRecipe({recipe:G}),[L,P]=H.splitVariantProps({...E}),[F,q]=oe.extractStyleProps(P),V={"data-disabled":j?"true":void 0,"data-invalid":h?"true":void 0,"data-readonly":g?"true":void 0},[x,A]=p.useState(()=>{const T=i??l??"";try{return T?n.fromHTML(T):n.createEmptyValue()}catch(R){return console.warn("Failed to parse initial HTML, using empty value:",R),n.createEmptyValue()}}),[B,W]=p.useState(()=>i??l??""),Q=p.useRef(null);p.useEffect(()=>{if(i!==void 0&&i!==B){const T=i?n.fromHTML(i):n.createEmptyValue();A(T),W(i)}},[i,B]);const Y=p.useCallback(T=>{const R=n.toHTML(T),te=R!==B;A(T),W(R),te&&s&&s(R)},[B,s]),Z=x,ee=n.validSlateStateAdapter(Z);return e.jsx(ie,{...L,...F,...q,...V,ref:o,children:e.jsx(X,{ref:Q,value:ee,onChange:Y,onFocus:a,onBlur:c,placeholder:u,isDisabled:j,isReadOnly:g,autoFocus:r,toolbar:g?null:e.jsx($,{isDisabled:j})})})};J.displayName="RichTextInput";exports.RichTextInput=J;
2
+ //# sourceMappingURL=rich-text-input-iDEygf74.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rich-text-input-iDEygf74.cjs.js","sources":["../../src/components/rich-text-input/rich-text-input.recipe.tsx","../../src/components/rich-text-input/rich-text-input.slots.tsx","../../../../node_modules/.pnpm/slate-history@0.113.1_slate@0.75.0/node_modules/slate-history/dist/index.es.js","../../src/components/rich-text-input/components/rich-text-editor.tsx","../../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 { defineSlotRecipe } from \"@chakra-ui/react\";\n\nexport const richTextInputRecipe = defineSlotRecipe({\n slots: [\"root\", \"toolbar\", \"editable\"],\n className: \"nimbus-rich-text-input\",\n base: {\n root: {\n display: \"flex\",\n flexDirection: \"column\",\n position: \"relative\",\n width: \"full\",\n borderRadius: \"200\",\n borderWidth: \"{sizes.25}\",\n colorPalette: \"slate\",\n borderColor: \"colorPalette.7\",\n backgroundColor: \"colorPalette.contrast\",\n\n // Invalid state styling\n \"&[data-invalid='true']\": {\n borderWidth: \"{sizes.50}\",\n borderColor: \"critical.7\",\n },\n },\n toolbar: {\n boxShadow: \"1\",\n\n // Disabled state styling for toolbar\n \"[data-disabled='true'] &\": {\n opacity: \"0.5\",\n },\n },\n editable: {\n padding: \"400\",\n minHeight: \"inherit\",\n outline: \"none\",\n\n // Disabled state styling for editable\n \"[data-disabled='true'] &\": {\n cursor: \"not-allowed\",\n opacity: \"0.5\",\n },\n\n // Styling for user-facing editor text\n \"& p\": {\n textStyle: \"md\",\n fontWeight: \"500\",\n },\n \"& h1\": {\n textStyle: \"2xl\",\n fontWeight: \"500\",\n },\n \"& h2\": {\n textStyle: \"xl\",\n fontWeight: \"500\",\n },\n \"& h3\": {\n textStyle: \"lg\",\n fontWeight: \"500\",\n },\n \"& h4\": {\n textStyle: \"md\",\n fontWeight: \"500\",\n },\n \"& h5\": {\n textStyle: \"xs\",\n fontWeight: \"500\",\n },\n \"& blockquote\": {\n textStyle: \"md\",\n fontWeight: \"400\",\n borderLeftWidth: \"{sizes.100}\",\n paddingLeft: \"400\",\n },\n \"& ul\": {\n paddingLeft: \"600\",\n listStyleType: \"disc\",\n },\n \"& ol\": {\n paddingLeft: \"600\",\n listStyleType: \"decimal\",\n },\n \"& code\": {\n padding: \"100\",\n fontFamily: \"mono\",\n },\n \"& pre\": {\n padding: \"300\",\n borderRadius: \"200\",\n overflow: \"auto\",\n \"& code\": {\n padding: \"0\",\n },\n },\n \"& a\": {\n color: \"primary.11\",\n textDecoration: \"underline\",\n cursor: \"pointer\",\n _hover: {\n textDecoration: \"none\",\n },\n },\n \"& strong\": {\n fontWeight: \"700\",\n },\n \"& em\": {\n fontStyle: \"italic\",\n },\n \"& u\": {\n textDecoration: \"underline\",\n },\n \"& del\": {\n textDecoration: \"line-through\",\n },\n \"& sup\": {\n fontSize: \"75%\",\n verticalAlign: \"super\",\n lineHeight: \"0\",\n },\n \"& sub\": {\n fontSize: \"75%\",\n verticalAlign: \"sub\",\n lineHeight: \"0\",\n },\n },\n },\n variants: {},\n});\n","import {\n type HTMLChakraProps,\n type RecipeVariantProps,\n type UnstyledProp,\n createSlotRecipeContext,\n} from \"@chakra-ui/react\";\nimport { richTextInputRecipe } from \"./rich-text-input.recipe\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n recipe: richTextInputRecipe,\n});\n\n// Root slot\nexport type RichTextInputRootSlotProps = HTMLChakraProps<\n \"div\",\n RecipeVariantProps<typeof richTextInputRecipe> & UnstyledProp\n>;\n\nexport const RichTextInputRootSlot = withProvider<\n HTMLDivElement,\n RichTextInputRootSlotProps\n>(\"div\", \"root\");\n\n// Toolbar slot\nexport type RichTextInputToolbarSlotProps = HTMLChakraProps<\"div\">;\n\nexport const RichTextInputToolbarSlot = withContext<\n HTMLDivElement,\n RichTextInputToolbarSlotProps\n>(\"div\", \"toolbar\");\n\n// Editable slot\nexport type RichTextInputEditableSlotProps = HTMLChakraProps<\"div\">;\nexport const RichTextInputEditableSlot = withContext<\n HTMLDivElement,\n RichTextInputEditableSlotProps\n>(\"div\", \"editable\");\n","import { isPlainObject } from 'is-plain-object';\nimport { Operation, Editor, Transforms, Path } from 'slate';\n\n// eslint-disable-next-line no-redeclare\nvar History = {\n /**\n * Check if a value is a `History` object.\n */\n isHistory(value) {\n return isPlainObject(value) && Array.isArray(value.redos) && Array.isArray(value.undos) && (value.redos.length === 0 || Operation.isOperationList(value.redos[0].operations)) && (value.undos.length === 0 || Operation.isOperationList(value.undos[0].operations));\n }\n};\n\n/**\n * Weakmaps for attaching state to the editor.\n */\nvar HISTORY = new WeakMap();\nvar SAVING = new WeakMap();\nvar MERGING = new WeakMap();\nvar SPLITTING_ONCE = new WeakMap();\n// eslint-disable-next-line no-redeclare\nvar HistoryEditor = {\n /**\n * Check if a value is a `HistoryEditor` object.\n */\n isHistoryEditor(value) {\n return History.isHistory(value.history) && Editor.isEditor(value);\n },\n /**\n * Get the merge flag's current value.\n */\n isMerging(editor) {\n return MERGING.get(editor);\n },\n /**\n * Get the splitting once flag's current value.\n */\n isSplittingOnce(editor) {\n return SPLITTING_ONCE.get(editor);\n },\n setSplittingOnce(editor, value) {\n SPLITTING_ONCE.set(editor, value);\n },\n /**\n * Get the saving flag's current value.\n */\n isSaving(editor) {\n return SAVING.get(editor);\n },\n /**\n * Redo to the previous saved state.\n */\n redo(editor) {\n editor.redo();\n },\n /**\n * Undo to the previous saved state.\n */\n undo(editor) {\n editor.undo();\n },\n /**\n * Apply a series of changes inside a synchronous `fn`, These operations will\n * be merged into the previous history.\n */\n withMerging(editor, fn) {\n var prev = HistoryEditor.isMerging(editor);\n MERGING.set(editor, true);\n fn();\n MERGING.set(editor, prev);\n },\n /**\n * Apply a series of changes inside a synchronous `fn`, ensuring that the first\n * operation starts a new batch in the history. Subsequent operations will be\n * merged as usual.\n */\n withNewBatch(editor, fn) {\n var prev = HistoryEditor.isMerging(editor);\n MERGING.set(editor, true);\n SPLITTING_ONCE.set(editor, true);\n fn();\n MERGING.set(editor, prev);\n SPLITTING_ONCE.delete(editor);\n },\n /**\n * Apply a series of changes inside a synchronous `fn`, without merging any of\n * the new operations into previous save point in the history.\n */\n withoutMerging(editor, fn) {\n var prev = HistoryEditor.isMerging(editor);\n MERGING.set(editor, false);\n fn();\n MERGING.set(editor, prev);\n },\n /**\n * Apply a series of changes inside a synchronous `fn`, without saving any of\n * their operations into the history.\n */\n withoutSaving(editor, fn) {\n var prev = HistoryEditor.isSaving(editor);\n SAVING.set(editor, false);\n try {\n fn();\n } finally {\n SAVING.set(editor, prev);\n }\n }\n};\n\n/**\n * The `withHistory` plugin keeps track of the operation history of a Slate\n * editor as operations are applied to it, using undo and redo stacks.\n *\n * If you are using TypeScript, you must extend Slate's CustomTypes to use\n * this plugin.\n *\n * See https://docs.slatejs.org/concepts/11-typescript to learn how.\n */\nvar withHistory = editor => {\n var e = editor;\n var {\n apply\n } = e;\n e.history = {\n undos: [],\n redos: []\n };\n e.redo = () => {\n var {\n history\n } = e;\n var {\n redos\n } = history;\n if (redos.length > 0) {\n var batch = redos[redos.length - 1];\n if (batch.selectionBefore) {\n Transforms.setSelection(e, batch.selectionBefore);\n }\n HistoryEditor.withoutSaving(e, () => {\n Editor.withoutNormalizing(e, () => {\n for (var op of batch.operations) {\n e.apply(op);\n }\n });\n });\n history.redos.pop();\n e.writeHistory('undos', batch);\n }\n };\n e.undo = () => {\n var {\n history\n } = e;\n var {\n undos\n } = history;\n if (undos.length > 0) {\n var batch = undos[undos.length - 1];\n HistoryEditor.withoutSaving(e, () => {\n Editor.withoutNormalizing(e, () => {\n var inverseOps = batch.operations.map(Operation.inverse).reverse();\n for (var op of inverseOps) {\n e.apply(op);\n }\n if (batch.selectionBefore) {\n Transforms.setSelection(e, batch.selectionBefore);\n }\n });\n });\n e.writeHistory('redos', batch);\n history.undos.pop();\n }\n };\n e.apply = op => {\n var {\n operations,\n history\n } = e;\n var {\n undos\n } = history;\n var lastBatch = undos[undos.length - 1];\n var lastOp = lastBatch && lastBatch.operations[lastBatch.operations.length - 1];\n var save = HistoryEditor.isSaving(e);\n var merge = HistoryEditor.isMerging(e);\n if (save == null) {\n save = shouldSave(op);\n }\n if (save) {\n if (merge == null) {\n if (lastBatch == null) {\n merge = false;\n } else if (operations.length !== 0) {\n merge = true;\n } else {\n merge = shouldMerge(op, lastOp);\n }\n }\n if (HistoryEditor.isSplittingOnce(e)) {\n merge = false;\n HistoryEditor.setSplittingOnce(e, undefined);\n }\n if (lastBatch && merge) {\n lastBatch.operations.push(op);\n } else {\n var batch = {\n operations: [op],\n selectionBefore: e.selection\n };\n e.writeHistory('undos', batch);\n }\n while (undos.length > 100) {\n undos.shift();\n }\n history.redos = [];\n }\n apply(op);\n };\n e.writeHistory = (stack, batch) => {\n e.history[stack].push(batch);\n };\n return e;\n};\n/**\n * Check whether to merge an operation into the previous operation.\n */\nvar shouldMerge = (op, prev) => {\n if (prev && op.type === 'insert_text' && prev.type === 'insert_text' && op.offset === prev.offset + prev.text.length && Path.equals(op.path, prev.path)) {\n return true;\n }\n if (prev && op.type === 'remove_text' && prev.type === 'remove_text' && op.offset + op.text.length === prev.offset && Path.equals(op.path, prev.path)) {\n return true;\n }\n return false;\n};\n/**\n * Check whether an operation needs to be saved to the history.\n */\nvar shouldSave = (op, prev) => {\n if (op.type === 'set_selection') {\n return false;\n }\n return true;\n};\n\nexport { HISTORY, History, HistoryEditor, MERGING, SAVING, SPLITTING_ONCE, withHistory };\n//# sourceMappingURL=index.es.js.map\n","import {\n useMemo,\n useCallback,\n useImperativeHandle,\n forwardRef,\n type ForwardedRef,\n type FocusEventHandler,\n type ReactNode,\n} from \"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 interface 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\nexport interface RichTextEditorRef {\n focus: () => void;\n resetValue: (html: string) => void;\n}\n\nexport const RichTextEditor = forwardRef<\n RichTextEditorRef,\n RichTextEditorProps\n>((props, forwardedRef: ForwardedRef<RichTextEditorRef>) => {\n const {\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\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 forwardedRef,\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 { 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 interface 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 Divider,\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 interface 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 <Divider 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 <Divider 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/extractStyleProps\";\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 {...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":["richTextInputRecipe","defineSlotRecipe","withProvider","withContext","createSlotRecipeContext","RichTextInputRootSlot","RichTextInputToolbarSlot","RichTextInputEditableSlot","History","value","isPlainObject","Operation","SAVING","MERGING","SPLITTING_ONCE","HistoryEditor","Editor","editor","fn","prev","withHistory","e","apply","history","redos","batch","Transforms","op","undos","inverseOps","operations","lastBatch","lastOp","save","merge","shouldSave","shouldMerge","stack","Path","RichTextEditor","forwardRef","props","forwardedRef","onChange","onFocus","onBlur","placeholder","EDITOR_DEFAULTS","isDisabled","isReadOnly","autoFocus","toolbar","useMemo","baseEditor","createEditor","withLinks","withReact","handleKeyDown","useKeyboardShortcuts","handleFocus","useCallback","event","handleBlur","useImperativeHandle","focusEditor","html","resetEditor","renderElement","jsx","Element","renderLeaf","Leaf","defaultValue","createEmptyValue","safeInitialValue","jsxs","Slate","Editable","FormattingMenu","useSlate","withPreservedSelection","usePreservedSelection","allSelectedKeys","handleAllSelectionChange","useFormattingState","Menu","Tooltip","IconButton","MoreHoriz","Box","FormatStrikethrough","Text","Code","RichTextToolbar","currentTextStyle","selectedTextStyleLabel","handleTextStyleChange","handleListToggle","selectedFormatKeys","selectedListKeys","hasUndos","hasRedos","useToolbarState","Toolbar","Group","styleId","KeyboardArrowDown","textStyles","style","Divider","ToggleButtonGroup","IconToggleButton","toggleMark","FormatBold","VisuallyHidden","FormatItalic","FormatUnderlined","FormatListBulleted","FormatListNumbered","Undo","Redo","RichTextInput","isInvalid","restProps","recipe","useSlotRecipe","recipeProps","remainingProps","styleProps","functionalProps","extractStyleProps","dataAttributes","internalValue","setInternalValue","useState","initialHtml","fromHTML","error","serializedValue","setSerializedValue","editorRef","useRef","useEffect","newSlateValue","handleChange","slateValue","newHtml","toHTML","hasSerializedValueChanged","currentValue","safeValue","validSlateStateAdapter"],"mappings":"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","x_google_ignoreList":[2]}
@@ -1,2 +1,2 @@
1
- "use strict";const s=require("react/jsx-runtime"),i=require("react"),z=require("@commercetools/nimbus-icons"),Y=require("./box-BPfqlznQ.cjs.js"),L=require("./Button-DQ_WkLNH.cjs.js"),F=require("./Dialog-Cbq66gyc.cjs.js"),h=require("./utils-BHdR5Nww.cjs.js"),re=require("./FieldError-DyGFfqST.cjs.js"),ae=require("./Form-BuOomA4T.cjs.js"),ne=require("./intlStrings-ClBuC6xN.cjs.js"),Z=require("./Label-BgrYyYXn.cjs.js"),B=require("./ListBox-CzZFXtHY.cjs.js"),N=require("./Text-BWSfeB9p.cjs.js"),O=require("./Collection-BsItrctR.cjs.js"),D=require("./mergeProps-BA5Cwf5w.cjs.js"),G=require("./filterDOMProps-WUskt27c.cjs.js"),_=require("./OverlayArrow-C5Ymp9MC.cjs.js"),se=require("./useLocalizedStringFormatter-fJnbqb2x.cjs.js"),ee=require("./useFormValidation-DJy_cdgv.cjs.js"),de=require("./useSingleSelectListState-BpAVpRdZ.cjs.js"),ce=require("./useFocusRing-DRIoF592.cjs.js"),ue=require("./useFocusVisible-bRnVksaU.cjs.js"),fe=require("./useCollator-ZqnkTllN.cjs.js"),be=require("./useField-DmqO9k7a.cjs.js"),$e=require("./useFormReset--wPlnEOl.cjs.js"),pe=require("./VisuallyHidden-B4l0wZHw.cjs.js"),te=require("./create-slot-recipe-context-HIF51Igr.cjs.js"),ve=require("./icon-button-BBkPfAM3.cjs.js"),xe=require("./index-XyB4gGC8.cjs.js"),le=require("./extractStyleProps-wjyId_vK.cjs.js"),me=require("./factory-DlCuwIGL.cjs.js"),T=require("./flex-BhVeeItQ.cjs.js"),he=require("./Separator-DBLZ41YB.cjs.js"),H=new WeakMap;function ye(e,t,n){let{keyboardDelegate:r,isDisabled:l,isRequired:d,name:u,form:a,validationBehavior:c="aria"}=e,$=fe.$325a3faab7a68acd$export$a16aca283550c30d({usage:"search",sensitivity:"base"}),o=i.useMemo(()=>r||new O.$2a25aae57d74318e$export$a05409b8bb224a5a(t.collection,t.disabledKeys,n,$),[r,t.collection,t.disabledKeys,$,n]),{menuTriggerProps:v,menuProps:p}=F.$168583247155ddda$export$dc9c12ed27dd1b49({isDisabled:l,type:"listbox"},t,n),f=b=>{switch(b.key){case"ArrowLeft":{var S,g;b.preventDefault();let q=t.selectedKey!=null?(S=o.getKeyAbove)===null||S===void 0?void 0:S.call(o,t.selectedKey):(g=o.getFirstKey)===null||g===void 0?void 0:g.call(o);q&&t.setSelectedKey(q);break}case"ArrowRight":{var M,V;b.preventDefault();let q=t.selectedKey!=null?(M=o.getKeyBelow)===null||M===void 0?void 0:M.call(o,t.selectedKey):(V=o.getFirstKey)===null||V===void 0?void 0:V.call(o);q&&t.setSelectedKey(q);break}}},{typeSelectProps:x}=O.$fb3050f43d946246$export$e32c88dfddc6e1d8({keyboardDelegate:o,selectionManager:t.selectionManager,onTypeSelect(b){t.setSelectedKey(b)}}),{isInvalid:P,validationErrors:R,validationDetails:I}=t.displayValidation,{labelProps:w,fieldProps:C,descriptionProps:y,errorMessageProps:E}=be.$2baaea4c71418dea$export$294aa081a6c6f55d({...e,labelElementType:"span",isInvalid:P,errorMessage:e.errorMessage||R});x.onKeyDown=x.onKeyDownCapture,delete x.onKeyDownCapture;let k=G.$65484d02dcb7eb3e$export$457c3d6518dd4c6f(e,{labelable:!0}),m=D.$3ef42575df84b30b$export$9d1611c77c2fe928(x,v,C),j=D.$bdb11010cef70236$export$f680877a34711e37();return H.set(t,{isDisabled:l,isRequired:d,name:u,form:a,validationBehavior:c}),{labelProps:{...w,onClick:()=>{if(!e.isDisabled){var b;(b=n.current)===null||b===void 0||b.focus(),ue.$507fabe10e71c6fb$export$8397ddfc504fdb9a("keyboard")}}},triggerProps:D.$3ef42575df84b30b$export$9d1611c77c2fe928(k,{...m,isDisabled:l,onKeyDown:D.$ff5963eb1fccf552$export$e08e3b67e392101e(m.onKeyDown,f,e.onKeyDown),onKeyUp:e.onKeyUp,"aria-labelledby":[j,m["aria-labelledby"],m["aria-label"]&&!m["aria-labelledby"]?m.id:null].filter(Boolean).join(" "),onFocus(b){t.isFocused||(e.onFocus&&e.onFocus(b),e.onFocusChange&&e.onFocusChange(!0),t.setFocused(!0))},onBlur(b){t.isOpen||(e.onBlur&&e.onBlur(b),e.onFocusChange&&e.onFocusChange(!1),t.setFocused(!1))}}),valueProps:{id:j},menuProps:{...p,autoFocus:t.focusStrategy||!0,shouldSelectOnPressUp:!0,shouldFocusOnHover:!0,disallowEmptySelection:!0,linkBehavior:"selection",onBlur:b=>{b.currentTarget.contains(b.relatedTarget)||(e.onBlur&&e.onBlur(b),e.onFocusChange&&e.onFocusChange(!1),t.setFocused(!1))},"aria-labelledby":[C["aria-labelledby"],m["aria-label"]&&!C["aria-labelledby"]?m.id:null].filter(Boolean).join(" ")},descriptionProps:y,errorMessageProps:E,isInvalid:P,validationErrors:R,validationDetails:I,hiddenSelectProps:{isDisabled:l,name:u,label:e.label,state:t,triggerRef:n,form:a}}}function Se(e,t,n){let r=H.get(t)||{},{autoComplete:l,name:d=r.name,form:u=r.form,isDisabled:a=r.isDisabled}=e,{validationBehavior:c,isRequired:$}=r,{visuallyHiddenProps:o}=pe.$5c3e21d68f1c4674$export$a966af930f325cab({style:{position:"fixed",top:0,left:0}});$e.$99facab73266f662$export$5add1d006293d136(e.selectRef,t.defaultSelectedKey,t.setSelectedKey),ee.$e93e671b31057976$export$b8473d3665f3a75a({validationBehavior:c,focus:()=>{var f;return(f=n.current)===null||f===void 0?void 0:f.focus()}},t,e.selectRef);let v=i.useCallback(f=>t.setSelectedKey(f.currentTarget.value),[t.setSelectedKey]);var p;return{containerProps:{...o,"aria-hidden":!0,"data-react-aria-prevent-focus":!0,"data-a11y-ignore":"aria-hidden-focus"},inputProps:{style:{display:"none"}},selectProps:{tabIndex:-1,autoComplete:l,disabled:a,required:c==="native"&&$,name:d,form:u,value:(p=t.selectedKey)!==null&&p!==void 0?p:"",onChange:v,onInput:v}}}function ge(e){let{state:t,triggerRef:n,label:r,name:l,form:d,isDisabled:u}=e,a=i.useRef(null),c=i.useRef(null),{containerProps:$,selectProps:o}=Se({...e,selectRef:t.collection.size<=300?a:c},t,n);if(t.collection.size<=300)return i.createElement("div",{...$,"data-testid":"hidden-select-container"},i.createElement("label",null,r,i.createElement("select",{...o,ref:a},i.createElement("option",null),[...t.collection.getKeys()].map(p=>{let f=t.collection.getItem(p);if(f&&f.type==="item")return i.createElement("option",{key:f.key,value:f.key},f.textValue)}))));if(l){let p=H.get(t)||{},{validationBehavior:f}=p;var v;let x={type:"hidden",autoComplete:o.autoComplete,name:l,form:d,disabled:u,value:(v=t.selectedKey)!==null&&v!==void 0?v:""};return f==="native"?i.createElement("input",{...x,ref:c,style:{display:"none"},type:"text",required:o.required,onChange:()=>{}}):i.createElement("input",{...x,ref:c})}return null}function Pe(e){let t=_.$fc909762b330b746$export$61c6a8c84e605fb6(e),[n,r]=i.useState(null),l=de.$a0d645289fe9b86b$export$e7f05e985daf4b5f({...e,onSelectionChange:o=>{e.onSelectionChange!=null&&e.onSelectionChange(o),t.close(),d.commitValidation()}}),d=ee.$e5be200c675c3b3a$export$fc1a364ae1f3ff10({...e,value:l.selectedKey}),[u,a]=i.useState(!1),[c]=i.useState(l.selectedKey);var $;return{...d,...l,...t,defaultSelectedKey:($=e.defaultSelectedKey)!==null&&$!==void 0?$:c,focusStrategy:n,open(o=null){l.collection.size!==0&&(r(o),t.open())},toggle(o=null){l.collection.size!==0&&(r(o),t.toggle())},isFocused:u,setFocused:a}}function Re(e){return e&&e.__esModule?e.default:e}const W=i.createContext(null),A=i.createContext(null),Ce=i.forwardRef(function(t,n){[t,n]=h.$64fa3d84918910a7$export$29f1550f4b0d4415(t,n,W);let{children:r,isDisabled:l=!1,isInvalid:d=!1,isRequired:u=!1}=t,a=i.useMemo(()=>typeof r=="function"?r({isOpen:!1,isDisabled:l,isInvalid:d,isRequired:u,isFocused:!1,isFocusVisible:!1,defaultChildren:null}):r,[r,l,d,u]);return i.createElement(O.$e1995378a142960e$export$bf788dd355e3a401,{content:a},c=>i.createElement(De,{props:t,collection:c,selectRef:n}))}),qe=[Z.$01b77f81d0f07f68$export$75b6ee27786ba447,L.$d2b4bc8c273e7be6$export$24d547caef80ccd1,N.$514c0188e459b4c0$export$9afb8bc826b033ea];function De({props:e,selectRef:t,collection:n}){let{validationBehavior:r}=h.$64fa3d84918910a7$export$fabf2dc03a41866e(ae.$d3e0e05bdfcf66bd$export$c24727297075ec6a)||{};var l,d;let u=(d=(l=e.validationBehavior)!==null&&l!==void 0?l:r)!==null&&d!==void 0?d:"native",a=Pe({...e,collection:n,children:void 0,validationBehavior:u}),{isFocusVisible:c,focusProps:$}=ce.$f7dceffc5ad7768b$export$4e328f61c538687f({within:!0}),o=i.useRef(null),[v,p]=h.$64fa3d84918910a7$export$9d4c57ee4c6ffdd8(!e["aria-label"]&&!e["aria-labelledby"]),{labelProps:f,triggerProps:x,valueProps:P,menuProps:R,descriptionProps:I,errorMessageProps:w,hiddenSelectProps:C,...y}=ye({...h.$64fa3d84918910a7$export$ef03459518577ad4(e),label:p,validationBehavior:u},a,o),[E,k]=i.useState(null),m=i.useCallback(()=>{o.current&&k(o.current.offsetWidth+"px")},[o]);_.$9daab02d461809db$export$683480f191c0e3ea({ref:o,onResize:m});let j=i.useMemo(()=>({isOpen:a.isOpen,isFocused:a.isFocused,isFocusVisible:c,isDisabled:e.isDisabled||!1,isInvalid:y.isInvalid||!1,isRequired:e.isRequired||!1}),[a.isOpen,a.isFocused,c,e.isDisabled,y.isInvalid,e.isRequired]),b=h.$64fa3d84918910a7$export$4d86445c2cf5e3({...e,values:j,defaultClassName:"react-aria-Select"}),S=G.$65484d02dcb7eb3e$export$457c3d6518dd4c6f(e,{global:!0});delete S.id;let g=i.useRef(null);return i.createElement(h.$64fa3d84918910a7$export$2881499e37b75b9a,{values:[[W,e],[A,a],[oe,P],[Z.$01b77f81d0f07f68$export$75b6ee27786ba447,{...f,ref:v,elementType:"span"}],[L.$d2b4bc8c273e7be6$export$24d547caef80ccd1,{...x,ref:o,isPressed:a.isOpen,autoFocus:e.autoFocus}],[F.$de32f1b87079253c$export$d2f961adcb0afbe,a],[F.$07b14b47974efb58$export$9b9a0cd73afb7ca4,{trigger:"Select",triggerRef:o,scrollRef:g,placement:"bottom start",style:{"--trigger-width":E},"aria-labelledby":R["aria-labelledby"],clearContexts:qe}],[B.$eed445e0843c11d0$export$7ff8f37d2d81a48d,{...R,ref:g}],[B.$eed445e0843c11d0$export$7c5906fe4f1f2af2,a],[N.$514c0188e459b4c0$export$9afb8bc826b033ea,{slots:{description:I,errorMessage:w}}],[re.$ee014567cb39d3f0$export$ff05c3ac10437e03,y]]},i.createElement("div",{...D.$3ef42575df84b30b$export$9d1611c77c2fe928(S,b,$),ref:t,slot:e.slot||void 0,"data-focused":a.isFocused||void 0,"data-focus-visible":c||void 0,"data-open":a.isOpen||void 0,"data-disabled":e.isDisabled||void 0,"data-invalid":y.isInvalid||void 0,"data-required":e.isRequired||void 0},b.children,i.createElement(ge,{...C,autoComplete:e.autoComplete})))}const oe=i.createContext(null),Fe=i.forwardRef(function(t,n){var r,l;[t,n]=h.$64fa3d84918910a7$export$29f1550f4b0d4415(t,n,oe);let d=i.useContext(A),{placeholder:u}=h.$64fa3d84918910a7$export$fabf2dc03a41866e(W),a=d.selectedKey!=null?d.collection.getItem(d.selectedKey):null,c=a?.props.children;typeof c=="function"&&(c=c({isHovered:!1,isPressed:!1,isSelected:!1,isFocused:!1,isFocusVisible:!1,isDisabled:!1,selectionMode:"single",selectionBehavior:"toggle"}));let $=se.$fca6afa0e843324b$export$f12b703ca79dfbb1(Re(ne.$df39c1238ae2b5f3$exports),"react-aria-components");var o,v,p;let f=h.$64fa3d84918910a7$export$4d86445c2cf5e3({...t,defaultChildren:(o=c??u)!==null&&o!==void 0?o:$.format("selectPlaceholder"),defaultClassName:"react-aria-SelectValue",values:{selectedItem:(v=(r=d.selectedItem)===null||r===void 0?void 0:r.value)!==null&&v!==void 0?v:null,selectedText:(p=(l=d.selectedItem)===null||l===void 0?void 0:l.textValue)!==null&&p!==void 0?p:null,isPlaceholder:!a}}),x=G.$65484d02dcb7eb3e$export$457c3d6518dd4c6f(t,{global:!0});return i.createElement("span",{ref:n,...x,...f,"data-placeholder":!a||void 0},i.createElement(N.$514c0188e459b4c0$export$9afb8bc826b033ea.Provider,{value:void 0},f.children))}),{withProvider:Be,withContext:K}=te.createSlotRecipeContext({key:"select"}),Ke=Be("div","root"),je=K("button","trigger"),Oe=K("span","triggerLabel"),Ie=K("div","options"),we=K("div","option"),Ee=K("div","optionGroup"),ie=()=>{const e=i.useContext(A);if(!e?.selectedKey)return null;const t=()=>{e?.setSelectedKey(null)};return s.jsx(F.$f1ab8c75478c6f73$export$cf75428e0b9ed1ea,{children:s.jsx(ve.IconButton,{pointerEvents:"all",size:"2xs",variant:"ghost",tone:"primary","aria-label":"Clear Selection",onPress:t,children:s.jsx(z.Close,{})})})};ie.displayName="Select.ClearButton";const U=i.forwardRef(({children:e,isLoading:t,isDisabled:n,...r},l)=>{const d=te.useSlotRecipe({recipe:xe.selectSlotRecipe}),[u,a]=d.splitVariantProps(r),[c,$]=le.extractStyleProps(a),o={...$,isDisabled:t||n};return s.jsx(Ke,{asChild:!0,ref:l,...u,...c,children:s.jsxs(Ce,{...o,children:[s.jsxs(me.chakra.div,{position:"relative",children:[s.jsx(je,{zIndex:0,asChild:!0,children:s.jsx(L.$d2b4bc8c273e7be6$export$353f5b6fc5456de1,{children:s.jsx(Oe,{asChild:!0,children:s.jsx(Fe,{})})})}),s.jsxs(T.Flex,{position:"absolute",top:"0",bottom:"0",zIndex:1,right:"400",pointerEvents:"none",children:[s.jsx(T.Flex,{width:"600",my:"auto",children:s.jsx(ie,{})}),s.jsx(T.Flex,{my:"auto",w:"600",h:"600",pointerEvents:"none",children:s.jsx(Y.Box,{color:"neutral.9",asChild:!0,m:"auto",w:"400",h:"400",children:t?s.jsx(Y.Box,{asChild:!0,animation:"spin",animationDuration:"slowest",children:s.jsx(z.Loop,{})}):s.jsx(z.KeyboardArrowDown,{})})})]})]}),s.jsx(F.$07b14b47974efb58$export$5b6b19405a83ff9d,{children:e})]})})});U.displayName="Select.Root";const X=e=>{const{ref:t,...n}=e,[r,l]=le.extractStyleProps(n);return s.jsx(Ie,{asChild:!0,...r,children:s.jsx(B.$eed445e0843c11d0$export$41f133550aa26f48,{ref:t,...l})})};X.displayName="Select.Options";const J=({ref:e,...t})=>s.jsx(we,{asChild:!0,ref:e,children:s.jsx(B.$eed445e0843c11d0$export$a11e76429ed99b4,{...t})});J.displayName="Select.Option";const Q=e=>{const{ref:t,label:n,items:r,children:l,...d}=e;if(r&&typeof l!="function")throw new Error('SelectOptionGroup: When "items" is provided, "children" must be a function');return s.jsxs(B.$eed445e0843c11d0$export$dca12b0bb56e4fc,{ref:t,...d,children:[s.jsx(Ee,{asChild:!0,children:s.jsx(he.$72a5793c14baf454$export$8b251419efc915eb,{children:n})}),r?s.jsx(O.$e1995378a142960e$export$fb8073518f34e6ec,{items:r,children:u=>typeof l=="function"?l(u):null}):l]})};Q.displayName="Select.OptionGroup";const ke={Root:U,Options:X,Option:J,OptionGroup:Q};exports.Select=ke;exports.SelectOption=J;exports.SelectOptionGroup=Q;exports.SelectOptions=X;exports.SelectRoot=U;
2
- //# sourceMappingURL=select-BnN5zaBu.cjs.js.map
1
+ "use strict";const s=require("react/jsx-runtime"),i=require("react"),z=require("@commercetools/nimbus-icons"),Y=require("./box-BPfqlznQ.cjs.js"),L=require("./Button-DQ_WkLNH.cjs.js"),F=require("./Dialog-Cbq66gyc.cjs.js"),h=require("./utils-BHdR5Nww.cjs.js"),re=require("./FieldError-DyGFfqST.cjs.js"),ae=require("./Form-BuOomA4T.cjs.js"),ne=require("./intlStrings-ClBuC6xN.cjs.js"),Z=require("./Label-BgrYyYXn.cjs.js"),B=require("./ListBox-CzZFXtHY.cjs.js"),N=require("./Text-BWSfeB9p.cjs.js"),O=require("./Collection-BsItrctR.cjs.js"),D=require("./mergeProps-BA5Cwf5w.cjs.js"),G=require("./filterDOMProps-WUskt27c.cjs.js"),_=require("./OverlayArrow-C5Ymp9MC.cjs.js"),se=require("./useLocalizedStringFormatter-fJnbqb2x.cjs.js"),ee=require("./useFormValidation-DJy_cdgv.cjs.js"),de=require("./useSingleSelectListState-BpAVpRdZ.cjs.js"),ce=require("./useFocusRing-DRIoF592.cjs.js"),ue=require("./useFocusVisible-bRnVksaU.cjs.js"),fe=require("./useCollator-ZqnkTllN.cjs.js"),be=require("./useField-DmqO9k7a.cjs.js"),$e=require("./useFormReset--wPlnEOl.cjs.js"),pe=require("./VisuallyHidden-B4l0wZHw.cjs.js"),te=require("./create-slot-recipe-context-HIF51Igr.cjs.js"),ve=require("./icon-button-CCrfnUUB.cjs.js"),xe=require("./index-COhQ_99G.cjs.js"),le=require("./extractStyleProps-yFm0qaXg.cjs.js"),me=require("./factory-DlCuwIGL.cjs.js"),T=require("./flex-BhVeeItQ.cjs.js"),he=require("./Separator-DBLZ41YB.cjs.js"),H=new WeakMap;function ye(e,t,n){let{keyboardDelegate:r,isDisabled:l,isRequired:d,name:u,form:a,validationBehavior:c="aria"}=e,$=fe.$325a3faab7a68acd$export$a16aca283550c30d({usage:"search",sensitivity:"base"}),o=i.useMemo(()=>r||new O.$2a25aae57d74318e$export$a05409b8bb224a5a(t.collection,t.disabledKeys,n,$),[r,t.collection,t.disabledKeys,$,n]),{menuTriggerProps:v,menuProps:p}=F.$168583247155ddda$export$dc9c12ed27dd1b49({isDisabled:l,type:"listbox"},t,n),f=b=>{switch(b.key){case"ArrowLeft":{var S,g;b.preventDefault();let q=t.selectedKey!=null?(S=o.getKeyAbove)===null||S===void 0?void 0:S.call(o,t.selectedKey):(g=o.getFirstKey)===null||g===void 0?void 0:g.call(o);q&&t.setSelectedKey(q);break}case"ArrowRight":{var M,V;b.preventDefault();let q=t.selectedKey!=null?(M=o.getKeyBelow)===null||M===void 0?void 0:M.call(o,t.selectedKey):(V=o.getFirstKey)===null||V===void 0?void 0:V.call(o);q&&t.setSelectedKey(q);break}}},{typeSelectProps:x}=O.$fb3050f43d946246$export$e32c88dfddc6e1d8({keyboardDelegate:o,selectionManager:t.selectionManager,onTypeSelect(b){t.setSelectedKey(b)}}),{isInvalid:P,validationErrors:R,validationDetails:I}=t.displayValidation,{labelProps:w,fieldProps:C,descriptionProps:y,errorMessageProps:E}=be.$2baaea4c71418dea$export$294aa081a6c6f55d({...e,labelElementType:"span",isInvalid:P,errorMessage:e.errorMessage||R});x.onKeyDown=x.onKeyDownCapture,delete x.onKeyDownCapture;let k=G.$65484d02dcb7eb3e$export$457c3d6518dd4c6f(e,{labelable:!0}),m=D.$3ef42575df84b30b$export$9d1611c77c2fe928(x,v,C),j=D.$bdb11010cef70236$export$f680877a34711e37();return H.set(t,{isDisabled:l,isRequired:d,name:u,form:a,validationBehavior:c}),{labelProps:{...w,onClick:()=>{if(!e.isDisabled){var b;(b=n.current)===null||b===void 0||b.focus(),ue.$507fabe10e71c6fb$export$8397ddfc504fdb9a("keyboard")}}},triggerProps:D.$3ef42575df84b30b$export$9d1611c77c2fe928(k,{...m,isDisabled:l,onKeyDown:D.$ff5963eb1fccf552$export$e08e3b67e392101e(m.onKeyDown,f,e.onKeyDown),onKeyUp:e.onKeyUp,"aria-labelledby":[j,m["aria-labelledby"],m["aria-label"]&&!m["aria-labelledby"]?m.id:null].filter(Boolean).join(" "),onFocus(b){t.isFocused||(e.onFocus&&e.onFocus(b),e.onFocusChange&&e.onFocusChange(!0),t.setFocused(!0))},onBlur(b){t.isOpen||(e.onBlur&&e.onBlur(b),e.onFocusChange&&e.onFocusChange(!1),t.setFocused(!1))}}),valueProps:{id:j},menuProps:{...p,autoFocus:t.focusStrategy||!0,shouldSelectOnPressUp:!0,shouldFocusOnHover:!0,disallowEmptySelection:!0,linkBehavior:"selection",onBlur:b=>{b.currentTarget.contains(b.relatedTarget)||(e.onBlur&&e.onBlur(b),e.onFocusChange&&e.onFocusChange(!1),t.setFocused(!1))},"aria-labelledby":[C["aria-labelledby"],m["aria-label"]&&!C["aria-labelledby"]?m.id:null].filter(Boolean).join(" ")},descriptionProps:y,errorMessageProps:E,isInvalid:P,validationErrors:R,validationDetails:I,hiddenSelectProps:{isDisabled:l,name:u,label:e.label,state:t,triggerRef:n,form:a}}}function Se(e,t,n){let r=H.get(t)||{},{autoComplete:l,name:d=r.name,form:u=r.form,isDisabled:a=r.isDisabled}=e,{validationBehavior:c,isRequired:$}=r,{visuallyHiddenProps:o}=pe.$5c3e21d68f1c4674$export$a966af930f325cab({style:{position:"fixed",top:0,left:0}});$e.$99facab73266f662$export$5add1d006293d136(e.selectRef,t.defaultSelectedKey,t.setSelectedKey),ee.$e93e671b31057976$export$b8473d3665f3a75a({validationBehavior:c,focus:()=>{var f;return(f=n.current)===null||f===void 0?void 0:f.focus()}},t,e.selectRef);let v=i.useCallback(f=>t.setSelectedKey(f.currentTarget.value),[t.setSelectedKey]);var p;return{containerProps:{...o,"aria-hidden":!0,"data-react-aria-prevent-focus":!0,"data-a11y-ignore":"aria-hidden-focus"},inputProps:{style:{display:"none"}},selectProps:{tabIndex:-1,autoComplete:l,disabled:a,required:c==="native"&&$,name:d,form:u,value:(p=t.selectedKey)!==null&&p!==void 0?p:"",onChange:v,onInput:v}}}function ge(e){let{state:t,triggerRef:n,label:r,name:l,form:d,isDisabled:u}=e,a=i.useRef(null),c=i.useRef(null),{containerProps:$,selectProps:o}=Se({...e,selectRef:t.collection.size<=300?a:c},t,n);if(t.collection.size<=300)return i.createElement("div",{...$,"data-testid":"hidden-select-container"},i.createElement("label",null,r,i.createElement("select",{...o,ref:a},i.createElement("option",null),[...t.collection.getKeys()].map(p=>{let f=t.collection.getItem(p);if(f&&f.type==="item")return i.createElement("option",{key:f.key,value:f.key},f.textValue)}))));if(l){let p=H.get(t)||{},{validationBehavior:f}=p;var v;let x={type:"hidden",autoComplete:o.autoComplete,name:l,form:d,disabled:u,value:(v=t.selectedKey)!==null&&v!==void 0?v:""};return f==="native"?i.createElement("input",{...x,ref:c,style:{display:"none"},type:"text",required:o.required,onChange:()=>{}}):i.createElement("input",{...x,ref:c})}return null}function Pe(e){let t=_.$fc909762b330b746$export$61c6a8c84e605fb6(e),[n,r]=i.useState(null),l=de.$a0d645289fe9b86b$export$e7f05e985daf4b5f({...e,onSelectionChange:o=>{e.onSelectionChange!=null&&e.onSelectionChange(o),t.close(),d.commitValidation()}}),d=ee.$e5be200c675c3b3a$export$fc1a364ae1f3ff10({...e,value:l.selectedKey}),[u,a]=i.useState(!1),[c]=i.useState(l.selectedKey);var $;return{...d,...l,...t,defaultSelectedKey:($=e.defaultSelectedKey)!==null&&$!==void 0?$:c,focusStrategy:n,open(o=null){l.collection.size!==0&&(r(o),t.open())},toggle(o=null){l.collection.size!==0&&(r(o),t.toggle())},isFocused:u,setFocused:a}}function Re(e){return e&&e.__esModule?e.default:e}const W=i.createContext(null),A=i.createContext(null),Ce=i.forwardRef(function(t,n){[t,n]=h.$64fa3d84918910a7$export$29f1550f4b0d4415(t,n,W);let{children:r,isDisabled:l=!1,isInvalid:d=!1,isRequired:u=!1}=t,a=i.useMemo(()=>typeof r=="function"?r({isOpen:!1,isDisabled:l,isInvalid:d,isRequired:u,isFocused:!1,isFocusVisible:!1,defaultChildren:null}):r,[r,l,d,u]);return i.createElement(O.$e1995378a142960e$export$bf788dd355e3a401,{content:a},c=>i.createElement(De,{props:t,collection:c,selectRef:n}))}),qe=[Z.$01b77f81d0f07f68$export$75b6ee27786ba447,L.$d2b4bc8c273e7be6$export$24d547caef80ccd1,N.$514c0188e459b4c0$export$9afb8bc826b033ea];function De({props:e,selectRef:t,collection:n}){let{validationBehavior:r}=h.$64fa3d84918910a7$export$fabf2dc03a41866e(ae.$d3e0e05bdfcf66bd$export$c24727297075ec6a)||{};var l,d;let u=(d=(l=e.validationBehavior)!==null&&l!==void 0?l:r)!==null&&d!==void 0?d:"native",a=Pe({...e,collection:n,children:void 0,validationBehavior:u}),{isFocusVisible:c,focusProps:$}=ce.$f7dceffc5ad7768b$export$4e328f61c538687f({within:!0}),o=i.useRef(null),[v,p]=h.$64fa3d84918910a7$export$9d4c57ee4c6ffdd8(!e["aria-label"]&&!e["aria-labelledby"]),{labelProps:f,triggerProps:x,valueProps:P,menuProps:R,descriptionProps:I,errorMessageProps:w,hiddenSelectProps:C,...y}=ye({...h.$64fa3d84918910a7$export$ef03459518577ad4(e),label:p,validationBehavior:u},a,o),[E,k]=i.useState(null),m=i.useCallback(()=>{o.current&&k(o.current.offsetWidth+"px")},[o]);_.$9daab02d461809db$export$683480f191c0e3ea({ref:o,onResize:m});let j=i.useMemo(()=>({isOpen:a.isOpen,isFocused:a.isFocused,isFocusVisible:c,isDisabled:e.isDisabled||!1,isInvalid:y.isInvalid||!1,isRequired:e.isRequired||!1}),[a.isOpen,a.isFocused,c,e.isDisabled,y.isInvalid,e.isRequired]),b=h.$64fa3d84918910a7$export$4d86445c2cf5e3({...e,values:j,defaultClassName:"react-aria-Select"}),S=G.$65484d02dcb7eb3e$export$457c3d6518dd4c6f(e,{global:!0});delete S.id;let g=i.useRef(null);return i.createElement(h.$64fa3d84918910a7$export$2881499e37b75b9a,{values:[[W,e],[A,a],[oe,P],[Z.$01b77f81d0f07f68$export$75b6ee27786ba447,{...f,ref:v,elementType:"span"}],[L.$d2b4bc8c273e7be6$export$24d547caef80ccd1,{...x,ref:o,isPressed:a.isOpen,autoFocus:e.autoFocus}],[F.$de32f1b87079253c$export$d2f961adcb0afbe,a],[F.$07b14b47974efb58$export$9b9a0cd73afb7ca4,{trigger:"Select",triggerRef:o,scrollRef:g,placement:"bottom start",style:{"--trigger-width":E},"aria-labelledby":R["aria-labelledby"],clearContexts:qe}],[B.$eed445e0843c11d0$export$7ff8f37d2d81a48d,{...R,ref:g}],[B.$eed445e0843c11d0$export$7c5906fe4f1f2af2,a],[N.$514c0188e459b4c0$export$9afb8bc826b033ea,{slots:{description:I,errorMessage:w}}],[re.$ee014567cb39d3f0$export$ff05c3ac10437e03,y]]},i.createElement("div",{...D.$3ef42575df84b30b$export$9d1611c77c2fe928(S,b,$),ref:t,slot:e.slot||void 0,"data-focused":a.isFocused||void 0,"data-focus-visible":c||void 0,"data-open":a.isOpen||void 0,"data-disabled":e.isDisabled||void 0,"data-invalid":y.isInvalid||void 0,"data-required":e.isRequired||void 0},b.children,i.createElement(ge,{...C,autoComplete:e.autoComplete})))}const oe=i.createContext(null),Fe=i.forwardRef(function(t,n){var r,l;[t,n]=h.$64fa3d84918910a7$export$29f1550f4b0d4415(t,n,oe);let d=i.useContext(A),{placeholder:u}=h.$64fa3d84918910a7$export$fabf2dc03a41866e(W),a=d.selectedKey!=null?d.collection.getItem(d.selectedKey):null,c=a?.props.children;typeof c=="function"&&(c=c({isHovered:!1,isPressed:!1,isSelected:!1,isFocused:!1,isFocusVisible:!1,isDisabled:!1,selectionMode:"single",selectionBehavior:"toggle"}));let $=se.$fca6afa0e843324b$export$f12b703ca79dfbb1(Re(ne.$df39c1238ae2b5f3$exports),"react-aria-components");var o,v,p;let f=h.$64fa3d84918910a7$export$4d86445c2cf5e3({...t,defaultChildren:(o=c??u)!==null&&o!==void 0?o:$.format("selectPlaceholder"),defaultClassName:"react-aria-SelectValue",values:{selectedItem:(v=(r=d.selectedItem)===null||r===void 0?void 0:r.value)!==null&&v!==void 0?v:null,selectedText:(p=(l=d.selectedItem)===null||l===void 0?void 0:l.textValue)!==null&&p!==void 0?p:null,isPlaceholder:!a}}),x=G.$65484d02dcb7eb3e$export$457c3d6518dd4c6f(t,{global:!0});return i.createElement("span",{ref:n,...x,...f,"data-placeholder":!a||void 0},i.createElement(N.$514c0188e459b4c0$export$9afb8bc826b033ea.Provider,{value:void 0},f.children))}),{withProvider:Be,withContext:K}=te.createSlotRecipeContext({key:"select"}),Ke=Be("div","root"),je=K("button","trigger"),Oe=K("span","triggerLabel"),Ie=K("div","options"),we=K("div","option"),Ee=K("div","optionGroup"),ie=()=>{const e=i.useContext(A);if(!e?.selectedKey)return null;const t=()=>{e?.setSelectedKey(null)};return s.jsx(F.$f1ab8c75478c6f73$export$cf75428e0b9ed1ea,{children:s.jsx(ve.IconButton,{pointerEvents:"all",size:"2xs",variant:"ghost",tone:"primary","aria-label":"Clear Selection",onPress:t,children:s.jsx(z.Close,{})})})};ie.displayName="Select.ClearButton";const U=i.forwardRef(({children:e,isLoading:t,isDisabled:n,...r},l)=>{const d=te.useSlotRecipe({recipe:xe.selectSlotRecipe}),[u,a]=d.splitVariantProps(r),[c,$]=le.extractStyleProps(a),o={...$,isDisabled:t||n};return s.jsx(Ke,{asChild:!0,ref:l,...u,...c,children:s.jsxs(Ce,{...o,children:[s.jsxs(me.chakra.div,{position:"relative",children:[s.jsx(je,{zIndex:0,asChild:!0,children:s.jsx(L.$d2b4bc8c273e7be6$export$353f5b6fc5456de1,{children:s.jsx(Oe,{asChild:!0,children:s.jsx(Fe,{})})})}),s.jsxs(T.Flex,{position:"absolute",top:"0",bottom:"0",zIndex:1,right:"400",pointerEvents:"none",children:[s.jsx(T.Flex,{width:"600",my:"auto",children:s.jsx(ie,{})}),s.jsx(T.Flex,{my:"auto",w:"600",h:"600",pointerEvents:"none",children:s.jsx(Y.Box,{color:"neutral.9",asChild:!0,m:"auto",w:"400",h:"400",children:t?s.jsx(Y.Box,{asChild:!0,animation:"spin",animationDuration:"slowest",children:s.jsx(z.Loop,{})}):s.jsx(z.KeyboardArrowDown,{})})})]})]}),s.jsx(F.$07b14b47974efb58$export$5b6b19405a83ff9d,{children:e})]})})});U.displayName="Select.Root";const X=e=>{const{ref:t,...n}=e,[r,l]=le.extractStyleProps(n);return s.jsx(Ie,{asChild:!0,...r,children:s.jsx(B.$eed445e0843c11d0$export$41f133550aa26f48,{ref:t,...l})})};X.displayName="Select.Options";const J=({ref:e,...t})=>s.jsx(we,{asChild:!0,ref:e,children:s.jsx(B.$eed445e0843c11d0$export$a11e76429ed99b4,{...t})});J.displayName="Select.Option";const Q=e=>{const{ref:t,label:n,items:r,children:l,...d}=e;if(r&&typeof l!="function")throw new Error('SelectOptionGroup: When "items" is provided, "children" must be a function');return s.jsxs(B.$eed445e0843c11d0$export$dca12b0bb56e4fc,{ref:t,...d,children:[s.jsx(Ee,{asChild:!0,children:s.jsx(he.$72a5793c14baf454$export$8b251419efc915eb,{children:n})}),r?s.jsx(O.$e1995378a142960e$export$fb8073518f34e6ec,{items:r,children:u=>typeof l=="function"?l(u):null}):l]})};Q.displayName="Select.OptionGroup";const ke={Root:U,Options:X,Option:J,OptionGroup:Q};exports.Select=ke;exports.SelectOption=J;exports.SelectOptionGroup=Q;exports.SelectOptions=X;exports.SelectRoot=U;
2
+ //# sourceMappingURL=select-DihySN1w.cjs.js.map