@commercetools/nimbus 3.3.0 → 3.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (648) hide show
  1. package/dist/chunks/{Button-FcraQeen.esm.js → Button-B5g2BgY8.esm.js} +2 -2
  2. package/dist/chunks/{Button-FcraQeen.esm.js.map → Button-B5g2BgY8.esm.js.map} +1 -1
  3. package/dist/chunks/{Button-z5JjDtpy.cjs → Button-CZDjIKB1.cjs} +2 -2
  4. package/dist/chunks/{Button-z5JjDtpy.cjs.map → Button-CZDjIKB1.cjs.map} +1 -1
  5. package/dist/chunks/{Calendar-1qYv3Pn9.cjs → Calendar-B-gzTAl8.cjs} +2 -2
  6. package/dist/chunks/{Calendar-1qYv3Pn9.cjs.map → Calendar-B-gzTAl8.cjs.map} +1 -1
  7. package/dist/chunks/{Calendar-oiqHeWzY.esm.js → Calendar-B6F41FfL.esm.js} +2 -2
  8. package/dist/chunks/{Calendar-oiqHeWzY.esm.js.map → Calendar-B6F41FfL.esm.js.map} +1 -1
  9. package/dist/chunks/Collection-CgMG1nwQ.esm.js +53 -0
  10. package/dist/chunks/Collection-CgMG1nwQ.esm.js.map +1 -0
  11. package/dist/chunks/Collection-yMt_pwdK.cjs +2 -0
  12. package/dist/chunks/Collection-yMt_pwdK.cjs.map +1 -0
  13. package/dist/chunks/DateField-CHfV6zH4.cjs +2 -0
  14. package/dist/chunks/{DateField-DI1RhZqo.cjs.map → DateField-CHfV6zH4.cjs.map} +1 -1
  15. package/dist/chunks/{DateField-DUetJOyf.esm.js → DateField-C_r7fpt5.esm.js} +49 -48
  16. package/dist/chunks/{DateField-DUetJOyf.esm.js.map → DateField-C_r7fpt5.esm.js.map} +1 -1
  17. package/dist/chunks/{DatePicker-DRwvjTID.cjs → DatePicker--pX-2Qq-.cjs} +2 -2
  18. package/dist/chunks/{DatePicker-DRwvjTID.cjs.map → DatePicker--pX-2Qq-.cjs.map} +1 -1
  19. package/dist/chunks/{DatePicker-DeVufONT.esm.js → DatePicker-xQCOjOZ5.esm.js} +6 -6
  20. package/dist/chunks/{DatePicker-DeVufONT.esm.js.map → DatePicker-xQCOjOZ5.esm.js.map} +1 -1
  21. package/dist/chunks/{Dialog-tQOfG_On.esm.js → Dialog-Dy3vyR1i.esm.js} +488 -487
  22. package/dist/chunks/{Dialog-tQOfG_On.esm.js.map → Dialog-Dy3vyR1i.esm.js.map} +1 -1
  23. package/dist/chunks/Dialog-UjK50qiN.cjs +6 -0
  24. package/dist/chunks/{Dialog-s5tFTj72.cjs.map → Dialog-UjK50qiN.cjs.map} +1 -1
  25. package/dist/chunks/{Header-Cmmm6XZs.cjs → Header-Bp89-vFq.cjs} +2 -2
  26. package/dist/chunks/{Header-Cmmm6XZs.cjs.map → Header-Bp89-vFq.cjs.map} +1 -1
  27. package/dist/chunks/{Header-CdFIlJp5.esm.js → Header-CwBpRO8i.esm.js} +2 -2
  28. package/dist/chunks/{Header-CdFIlJp5.esm.js.map → Header-CwBpRO8i.esm.js.map} +1 -1
  29. package/dist/chunks/Link-BmoXcCA3.cjs +2 -0
  30. package/dist/chunks/Link-BmoXcCA3.cjs.map +1 -0
  31. package/dist/chunks/Link-D_CNmmCC.esm.js +41 -0
  32. package/dist/chunks/Link-D_CNmmCC.esm.js.map +1 -0
  33. package/dist/chunks/{ListBox-DlI6zwM7.esm.js → ListBox-B8JwiURT.esm.js} +62 -61
  34. package/dist/chunks/{ListBox-DlI6zwM7.esm.js.map → ListBox-B8JwiURT.esm.js.map} +1 -1
  35. package/dist/chunks/ListBox-Ccgvv13w.cjs +2 -0
  36. package/dist/chunks/{ListBox-CXgfDQSn.cjs.map → ListBox-Ccgvv13w.cjs.map} +1 -1
  37. package/dist/chunks/{Modal-BG58sEN8.esm.js → Modal-B0a1NTkk.esm.js} +3 -3
  38. package/dist/chunks/{Modal-BG58sEN8.esm.js.map → Modal-B0a1NTkk.esm.js.map} +1 -1
  39. package/dist/chunks/{Modal-B5d_4wBp.cjs → Modal-BhGqV2ga.cjs} +2 -2
  40. package/dist/chunks/{Modal-B5d_4wBp.cjs.map → Modal-BhGqV2ga.cjs.map} +1 -1
  41. package/dist/chunks/{ProgressBar-BleovkZ3.esm.js → ProgressBar-6_KRPPYN.esm.js} +2 -2
  42. package/dist/chunks/{ProgressBar-BleovkZ3.esm.js.map → ProgressBar-6_KRPPYN.esm.js.map} +1 -1
  43. package/dist/chunks/{ProgressBar-DAbyWfVX.cjs → ProgressBar-nd1ahEJC.cjs} +2 -2
  44. package/dist/chunks/{ProgressBar-DAbyWfVX.cjs.map → ProgressBar-nd1ahEJC.cjs.map} +1 -1
  45. package/dist/chunks/{accordion-BYfM5qEG.cjs → accordion-BJQKQHIG.cjs} +2 -2
  46. package/dist/chunks/{accordion-BYfM5qEG.cjs.map → accordion-BJQKQHIG.cjs.map} +1 -1
  47. package/dist/chunks/{accordion-BqlBCwmN.esm.js → accordion-DPnhySdl.esm.js} +2 -2
  48. package/dist/chunks/{accordion-BqlBCwmN.esm.js.map → accordion-DPnhySdl.esm.js.map} +1 -1
  49. package/dist/chunks/{alert-C4J2fv__.esm.js → alert-Coz95VgD.esm.js} +2 -2
  50. package/dist/chunks/{alert-C4J2fv__.esm.js.map → alert-Coz95VgD.esm.js.map} +1 -1
  51. package/dist/chunks/{alert-BeQzAjMf.cjs → alert-GP75E0QV.cjs} +2 -2
  52. package/dist/chunks/{alert-BeQzAjMf.cjs.map → alert-GP75E0QV.cjs.map} +1 -1
  53. package/dist/chunks/breadcrumbs-1MAxlCTS.esm.js +322 -0
  54. package/dist/chunks/breadcrumbs-1MAxlCTS.esm.js.map +1 -0
  55. package/dist/chunks/breadcrumbs-TP5PrTuN.cjs +2 -0
  56. package/dist/chunks/breadcrumbs-TP5PrTuN.cjs.map +1 -0
  57. package/dist/chunks/{button-Dc_J_PNN.cjs → button-D6f5OX0h.cjs} +2 -2
  58. package/dist/chunks/{button-Dc_J_PNN.cjs.map → button-D6f5OX0h.cjs.map} +1 -1
  59. package/dist/chunks/{button-BhvlZrT2.esm.js → button-DyM-iqBq.esm.js} +3 -3
  60. package/dist/chunks/{button-BhvlZrT2.esm.js.map → button-DyM-iqBq.esm.js.map} +1 -1
  61. package/dist/chunks/{calendar-DS0rNrhj.cjs → calendar-YtVTt0Tm.cjs} +2 -2
  62. package/dist/chunks/{calendar-DS0rNrhj.cjs.map → calendar-YtVTt0Tm.cjs.map} +1 -1
  63. package/dist/chunks/{calendar-C5GZoGge.esm.js → calendar-bydCjK4Q.esm.js} +5 -5
  64. package/dist/chunks/{calendar-C5GZoGge.esm.js.map → calendar-bydCjK4Q.esm.js.map} +1 -1
  65. package/dist/chunks/{chat-message-DW8IO5YJ.cjs → chat-message-BcuYfXqe.cjs} +2 -2
  66. package/dist/chunks/{chat-message-DW8IO5YJ.cjs.map → chat-message-BcuYfXqe.cjs.map} +1 -1
  67. package/dist/chunks/{chat-message-CDLvkgaw.esm.js → chat-message-D9947sio.esm.js} +2 -2
  68. package/dist/chunks/{chat-message-CDLvkgaw.esm.js.map → chat-message-D9947sio.esm.js.map} +1 -1
  69. package/dist/chunks/chat-message-list-BEQEQzhV.cjs +2 -0
  70. package/dist/chunks/chat-message-list-BEQEQzhV.cjs.map +1 -0
  71. package/dist/chunks/{chat-message-list-BhWZEg4l.esm.js → chat-message-list-D_4ZLopT.esm.js} +10 -10
  72. package/dist/chunks/chat-message-list-D_4ZLopT.esm.js.map +1 -0
  73. package/dist/chunks/{checkbox-CZCLSrFV.cjs → checkbox-DCVW3K9i.cjs} +2 -2
  74. package/dist/chunks/{checkbox-CZCLSrFV.cjs.map → checkbox-DCVW3K9i.cjs.map} +1 -1
  75. package/dist/chunks/{checkbox-Bto3lCdU.esm.js → checkbox-dSuozQvl.esm.js} +4 -4
  76. package/dist/chunks/{checkbox-Bto3lCdU.esm.js.map → checkbox-dSuozQvl.esm.js.map} +1 -1
  77. package/dist/chunks/{collapsible-motion-C5-B_qO-.cjs → collapsible-motion-BW3mF74f.cjs} +2 -2
  78. package/dist/chunks/{collapsible-motion-C5-B_qO-.cjs.map → collapsible-motion-BW3mF74f.cjs.map} +1 -1
  79. package/dist/chunks/{collapsible-motion-5Y-srpM4.esm.js → collapsible-motion-CKrXIpgY.esm.js} +3 -3
  80. package/dist/chunks/{collapsible-motion-5Y-srpM4.esm.js.map → collapsible-motion-CKrXIpgY.esm.js.map} +1 -1
  81. package/dist/chunks/{combobox-ot7fVTI7.cjs → combobox-3_YvuwlN.cjs} +2 -2
  82. package/dist/chunks/{combobox-ot7fVTI7.cjs.map → combobox-3_YvuwlN.cjs.map} +1 -1
  83. package/dist/chunks/{combobox-BW_VrIHV.esm.js → combobox-C9gMnokj.esm.js} +11 -11
  84. package/dist/chunks/{combobox-BW_VrIHV.esm.js.map → combobox-C9gMnokj.esm.js.map} +1 -1
  85. package/dist/chunks/{components-BaZ6iHgw.esm.js → components-DJj34Iqi.esm.js} +3 -3
  86. package/dist/chunks/{components-BaZ6iHgw.esm.js.map → components-DJj34Iqi.esm.js.map} +1 -1
  87. package/dist/chunks/{components-DHYEVZM_.cjs → components-tMYnGsnG.cjs} +2 -2
  88. package/dist/chunks/{components-DHYEVZM_.cjs.map → components-tMYnGsnG.cjs.map} +1 -1
  89. package/dist/chunks/{confirmation-dialog-JqWYM_7U.cjs → confirmation-dialog-DGV0mgM8.cjs} +2 -2
  90. package/dist/chunks/{confirmation-dialog-JqWYM_7U.cjs.map → confirmation-dialog-DGV0mgM8.cjs.map} +1 -1
  91. package/dist/chunks/{confirmation-dialog-CHUQLqNJ.esm.js → confirmation-dialog-EiNUlhQA.esm.js} +4 -4
  92. package/dist/chunks/{confirmation-dialog-CHUQLqNJ.esm.js.map → confirmation-dialog-EiNUlhQA.esm.js.map} +1 -1
  93. package/dist/chunks/{data-table-LoaR2VL5.esm.js → data-table-BjU1lBAt.esm.js} +715 -714
  94. package/dist/chunks/{data-table-LoaR2VL5.esm.js.map → data-table-BjU1lBAt.esm.js.map} +1 -1
  95. package/dist/chunks/data-table-DnlEkUhO.cjs +2 -0
  96. package/dist/chunks/{data-table-CHpJecej.cjs.map → data-table-DnlEkUhO.cjs.map} +1 -1
  97. package/dist/chunks/{date-input-BfCEzDBX.esm.js → date-input-BIMZk2u6.esm.js} +4 -4
  98. package/dist/chunks/{date-input-BfCEzDBX.esm.js.map → date-input-BIMZk2u6.esm.js.map} +1 -1
  99. package/dist/chunks/{date-input-B5yBTSm8.cjs → date-input-DbikA3Az.cjs} +2 -2
  100. package/dist/chunks/{date-input-B5yBTSm8.cjs.map → date-input-DbikA3Az.cjs.map} +1 -1
  101. package/dist/chunks/{date-picker-CcmAJYux.esm.js → date-picker--voC39id.esm.js} +11 -11
  102. package/dist/chunks/{date-picker-CcmAJYux.esm.js.map → date-picker--voC39id.esm.js.map} +1 -1
  103. package/dist/chunks/{date-picker-BYUOjbCN.cjs → date-picker-Dhb3cRFN.cjs} +2 -2
  104. package/dist/chunks/{date-picker-BYUOjbCN.cjs.map → date-picker-Dhb3cRFN.cjs.map} +1 -1
  105. package/dist/chunks/{date-range-picker-CD6CmAlq.esm.js → date-range-picker-B02yjYC_.esm.js} +11 -11
  106. package/dist/chunks/{date-range-picker-CD6CmAlq.esm.js.map → date-range-picker-B02yjYC_.esm.js.map} +1 -1
  107. package/dist/chunks/{date-range-picker-BladYzh3.cjs → date-range-picker-oFS0SF97.cjs} +2 -2
  108. package/dist/chunks/{date-range-picker-BladYzh3.cjs.map → date-range-picker-oFS0SF97.cjs.map} +1 -1
  109. package/dist/chunks/{default-page-B5bFn9gJ.cjs → default-page-BW66R099.cjs} +2 -2
  110. package/dist/chunks/{default-page-B5bFn9gJ.cjs.map → default-page-BW66R099.cjs.map} +1 -1
  111. package/dist/chunks/{default-page-De3ZyX7n.esm.js → default-page-oB4oiflC.esm.js} +2 -2
  112. package/dist/chunks/{default-page-De3ZyX7n.esm.js.map → default-page-oB4oiflC.esm.js.map} +1 -1
  113. package/dist/chunks/{dialog-Y4HKBxUr.cjs → dialog-CwCG4NKh.cjs} +2 -2
  114. package/dist/chunks/{dialog-Y4HKBxUr.cjs.map → dialog-CwCG4NKh.cjs.map} +1 -1
  115. package/dist/chunks/{dialog-XeM4qOa_.esm.js → dialog-lxgomHvu.esm.js} +6 -6
  116. package/dist/chunks/{dialog-XeM4qOa_.esm.js.map → dialog-lxgomHvu.esm.js.map} +1 -1
  117. package/dist/chunks/draggable-list-CAGO6acz.cjs +2 -0
  118. package/dist/chunks/{draggable-list-CKKl6A_a.cjs.map → draggable-list-CAGO6acz.cjs.map} +1 -1
  119. package/dist/chunks/{draggable-list-C5aulsay.esm.js → draggable-list-DKGfS4ob.esm.js} +243 -243
  120. package/dist/chunks/{draggable-list-C5aulsay.esm.js.map → draggable-list-DKGfS4ob.esm.js.map} +1 -1
  121. package/dist/chunks/{drawer-BKPP4f5K.cjs → drawer-Cj7eGaLQ.cjs} +2 -2
  122. package/dist/chunks/{drawer-BKPP4f5K.cjs.map → drawer-Cj7eGaLQ.cjs.map} +1 -1
  123. package/dist/chunks/{drawer-I6J9g1l4.esm.js → drawer-Dsnrsu2k.esm.js} +7 -7
  124. package/dist/chunks/{drawer-I6J9g1l4.esm.js.map → drawer-Dsnrsu2k.esm.js.map} +1 -1
  125. package/dist/chunks/{drop-zone-vRl7IFzc.esm.js → drop-zone-BKJQrFGG.esm.js} +6 -6
  126. package/dist/chunks/{drop-zone-vRl7IFzc.esm.js.map → drop-zone-BKJQrFGG.esm.js.map} +1 -1
  127. package/dist/chunks/{drop-zone-Dr4VzY5B.cjs → drop-zone-N7k0XExn.cjs} +2 -2
  128. package/dist/chunks/{drop-zone-Dr4VzY5B.cjs.map → drop-zone-N7k0XExn.cjs.map} +1 -1
  129. package/dist/chunks/{extract-style-props-BPnHKmWR.esm.js → extract-style-props-D519tVOc.esm.js} +2 -2
  130. package/dist/chunks/{extract-style-props-BPnHKmWR.esm.js.map → extract-style-props-D519tVOc.esm.js.map} +1 -1
  131. package/dist/chunks/{extract-style-props-CA1O0IF2.cjs → extract-style-props-WNdpT-ME.cjs} +2 -2
  132. package/dist/chunks/{extract-style-props-CA1O0IF2.cjs.map → extract-style-props-WNdpT-ME.cjs.map} +1 -1
  133. package/dist/chunks/{form-action-bar-C8wkuLiF.esm.js → form-action-bar-CfJjVyeS.esm.js} +3 -3
  134. package/dist/chunks/{form-action-bar-C8wkuLiF.esm.js.map → form-action-bar-CfJjVyeS.esm.js.map} +1 -1
  135. package/dist/chunks/{form-action-bar-C_pQubyB.cjs → form-action-bar-DhmjijBw.cjs} +2 -2
  136. package/dist/chunks/{form-action-bar-C_pQubyB.cjs.map → form-action-bar-DhmjijBw.cjs.map} +1 -1
  137. package/dist/chunks/{form-dialog-D14UuUnS.cjs → form-dialog-CLrL718p.cjs} +2 -2
  138. package/dist/chunks/{form-dialog-D14UuUnS.cjs.map → form-dialog-CLrL718p.cjs.map} +1 -1
  139. package/dist/chunks/{form-dialog-BaD03TZo.esm.js → form-dialog-D86jNeIZ.esm.js} +4 -4
  140. package/dist/chunks/{form-dialog-BaD03TZo.esm.js.map → form-dialog-D86jNeIZ.esm.js.map} +1 -1
  141. package/dist/chunks/{form-field-DRhB7O5k.esm.js → form-field-B5H98u7s.esm.js} +3 -3
  142. package/dist/chunks/{form-field-DRhB7O5k.esm.js.map → form-field-B5H98u7s.esm.js.map} +1 -1
  143. package/dist/chunks/{form-field-CrSE8x3q.cjs → form-field-CaTJgt57.cjs} +2 -2
  144. package/dist/chunks/{form-field-CrSE8x3q.cjs.map → form-field-CaTJgt57.cjs.map} +1 -1
  145. package/dist/chunks/{icon-button-CSlFdpjB.cjs → icon-button-BG5cQycc.cjs} +2 -2
  146. package/dist/chunks/{icon-button-CSlFdpjB.cjs.map → icon-button-BG5cQycc.cjs.map} +1 -1
  147. package/dist/chunks/{icon-button-6dtfz6Yf.esm.js → icon-button-CyhrlrIv.esm.js} +2 -2
  148. package/dist/chunks/{icon-button-6dtfz6Yf.esm.js.map → icon-button-CyhrlrIv.esm.js.map} +1 -1
  149. package/dist/chunks/{icon-toggle-button-DJbu9dBg.cjs → icon-toggle-button-CH90F1eK.cjs} +2 -2
  150. package/dist/chunks/{icon-toggle-button-DJbu9dBg.cjs.map → icon-toggle-button-CH90F1eK.cjs.map} +1 -1
  151. package/dist/chunks/{icon-toggle-button-Cesx6J1H.esm.js → icon-toggle-button-DzYb5JyL.esm.js} +2 -2
  152. package/dist/chunks/{icon-toggle-button-Cesx6J1H.esm.js.map → icon-toggle-button-DzYb5JyL.esm.js.map} +1 -1
  153. package/dist/chunks/item-DW8Z2EjT.cjs +2 -0
  154. package/dist/chunks/item-DW8Z2EjT.cjs.map +1 -0
  155. package/dist/chunks/item-YJDIjMGY.esm.js +132 -0
  156. package/dist/chunks/item-YJDIjMGY.esm.js.map +1 -0
  157. package/dist/chunks/item-group-BA2CvxjT.cjs +2 -0
  158. package/dist/chunks/item-group-BA2CvxjT.cjs.map +1 -0
  159. package/dist/chunks/item-group-Bu78JFep.esm.js +35 -0
  160. package/dist/chunks/item-group-Bu78JFep.esm.js.map +1 -0
  161. package/dist/chunks/{list-DpS1s3Ww.cjs → list-ClGk4Q7n.cjs} +2 -2
  162. package/dist/chunks/{list-DpS1s3Ww.cjs.map → list-ClGk4Q7n.cjs.map} +1 -1
  163. package/dist/chunks/{list-CuA_gr8m.esm.js → list-CvVw2FgQ.esm.js} +2 -2
  164. package/dist/chunks/{list-CuA_gr8m.esm.js.map → list-CvVw2FgQ.esm.js.map} +1 -1
  165. package/dist/chunks/{loading-spinner-CTPm1sYC.esm.js → loading-spinner-DZoySVDH.esm.js} +2 -2
  166. package/dist/chunks/{loading-spinner-CTPm1sYC.esm.js.map → loading-spinner-DZoySVDH.esm.js.map} +1 -1
  167. package/dist/chunks/{loading-spinner-DAZGwhe6.cjs → loading-spinner-p_cYuGNg.cjs} +2 -2
  168. package/dist/chunks/{loading-spinner-DAZGwhe6.cjs.map → loading-spinner-p_cYuGNg.cjs.map} +1 -1
  169. package/dist/chunks/{localized-field-tpT6376o.cjs → localized-field-CQ8GkZKo.cjs} +2 -2
  170. package/dist/chunks/{localized-field-tpT6376o.cjs.map → localized-field-CQ8GkZKo.cjs.map} +1 -1
  171. package/dist/chunks/{localized-field-rPZczTNY.esm.js → localized-field-edbtofV6.esm.js} +10 -10
  172. package/dist/chunks/{localized-field-rPZczTNY.esm.js.map → localized-field-edbtofV6.esm.js.map} +1 -1
  173. package/dist/chunks/{markdown-CxE72YNo.esm.js → markdown-C1aT-ZDT.esm.js} +34 -34
  174. package/dist/chunks/{markdown-CxE72YNo.esm.js.map → markdown-C1aT-ZDT.esm.js.map} +1 -1
  175. package/dist/chunks/{markdown-Dvf4iLu2.cjs → markdown-RayGWo-B.cjs} +2 -2
  176. package/dist/chunks/{markdown-Dvf4iLu2.cjs.map → markdown-RayGWo-B.cjs.map} +1 -1
  177. package/dist/chunks/{menu-tAepHyH2.esm.js → menu-C2ZLfnJM.esm.js} +5 -5
  178. package/dist/chunks/{menu-tAepHyH2.esm.js.map → menu-C2ZLfnJM.esm.js.map} +1 -1
  179. package/dist/chunks/{menu-WFLbN6in.cjs → menu-sokBButj.cjs} +2 -2
  180. package/dist/chunks/{menu-WFLbN6in.cjs.map → menu-sokBButj.cjs.map} +1 -1
  181. package/dist/chunks/{modal-page-BRDY8JIO.cjs → modal-page-BGs7DHvn.cjs} +2 -2
  182. package/dist/chunks/{modal-page-BRDY8JIO.cjs.map → modal-page-BGs7DHvn.cjs.map} +1 -1
  183. package/dist/chunks/{modal-page-CH6Dlz-D.esm.js → modal-page-BZGoeMPR.esm.js} +3 -3
  184. package/dist/chunks/{modal-page-CH6Dlz-D.esm.js.map → modal-page-BZGoeMPR.esm.js.map} +1 -1
  185. package/dist/chunks/{money-input-D-h6tlpV.cjs → money-input-3_CQxVa3.cjs} +2 -2
  186. package/dist/chunks/{money-input-D-h6tlpV.cjs.map → money-input-3_CQxVa3.cjs.map} +1 -1
  187. package/dist/chunks/{money-input-field-Dy6VCxeQ.esm.js → money-input-field-DMZMbP9B.esm.js} +3 -3
  188. package/dist/chunks/{money-input-field-Dy6VCxeQ.esm.js.map → money-input-field-DMZMbP9B.esm.js.map} +1 -1
  189. package/dist/chunks/{money-input-field-DeajMPme.cjs → money-input-field-Deavtpts.cjs} +2 -2
  190. package/dist/chunks/{money-input-field-DeajMPme.cjs.map → money-input-field-Deavtpts.cjs.map} +1 -1
  191. package/dist/chunks/{money-input-CKNrFSKT.esm.js → money-input-hdeI43mM.esm.js} +5 -5
  192. package/dist/chunks/{money-input-CKNrFSKT.esm.js.map → money-input-hdeI43mM.esm.js.map} +1 -1
  193. package/dist/chunks/{multiline-text-input-BZU8t53J.esm.js → multiline-text-input-BlQChE3E.esm.js} +4 -4
  194. package/dist/chunks/{multiline-text-input-BZU8t53J.esm.js.map → multiline-text-input-BlQChE3E.esm.js.map} +1 -1
  195. package/dist/chunks/{multiline-text-input-ipy-1vwz.cjs → multiline-text-input-BnbYMYjn.cjs} +2 -2
  196. package/dist/chunks/{multiline-text-input-ipy-1vwz.cjs.map → multiline-text-input-BnbYMYjn.cjs.map} +1 -1
  197. package/dist/chunks/{multiline-text-input-field-DDzHc9t0.cjs → multiline-text-input-field-Dmrep7c1.cjs} +2 -2
  198. package/dist/chunks/{multiline-text-input-field-DDzHc9t0.cjs.map → multiline-text-input-field-Dmrep7c1.cjs.map} +1 -1
  199. package/dist/chunks/{multiline-text-input-field-Dj3yuO2D.esm.js → multiline-text-input-field-DtKT6KA3.esm.js} +3 -3
  200. package/dist/chunks/{multiline-text-input-field-Dj3yuO2D.esm.js.map → multiline-text-input-field-DtKT6KA3.esm.js.map} +1 -1
  201. package/dist/chunks/{nimbus-provider-DcYjdMwh.cjs → nimbus-provider-DyiUPBgB.cjs} +2 -2
  202. package/dist/chunks/{nimbus-provider-DcYjdMwh.cjs.map → nimbus-provider-DyiUPBgB.cjs.map} +1 -1
  203. package/dist/chunks/{nimbus-provider-qYnfenns.esm.js → nimbus-provider-TxuMyLri.esm.js} +3 -3
  204. package/dist/chunks/{nimbus-provider-qYnfenns.esm.js.map → nimbus-provider-TxuMyLri.esm.js.map} +1 -1
  205. package/dist/chunks/number-input-DTS_KQVk.cjs +2 -0
  206. package/dist/chunks/{number-input-DU3522fK.cjs.map → number-input-DTS_KQVk.cjs.map} +1 -1
  207. package/dist/chunks/{number-input-D5jL0iW-.esm.js → number-input-Gpg_2UbB.esm.js} +23 -22
  208. package/dist/chunks/{number-input-D5jL0iW-.esm.js.map → number-input-Gpg_2UbB.esm.js.map} +1 -1
  209. package/dist/chunks/{number-input-field-C5DhaRwc.cjs → number-input-field-C0XJ94dJ.cjs} +2 -2
  210. package/dist/chunks/{number-input-field-C5DhaRwc.cjs.map → number-input-field-C0XJ94dJ.cjs.map} +1 -1
  211. package/dist/chunks/{number-input-field-BKAb5VQ2.esm.js → number-input-field-Da0Hux_Q.esm.js} +3 -3
  212. package/dist/chunks/{number-input-field-BKAb5VQ2.esm.js.map → number-input-field-Da0Hux_Q.esm.js.map} +1 -1
  213. package/dist/chunks/{pagination-ZSf9r9bz.esm.js → pagination-FtHeZ5vD.esm.js} +4 -4
  214. package/dist/chunks/{pagination-ZSf9r9bz.esm.js.map → pagination-FtHeZ5vD.esm.js.map} +1 -1
  215. package/dist/chunks/{pagination-CmXQNDbp.cjs → pagination-Teyq3Fc-.cjs} +2 -2
  216. package/dist/chunks/{pagination-CmXQNDbp.cjs.map → pagination-Teyq3Fc-.cjs.map} +1 -1
  217. package/dist/chunks/{password-input-DMJGpUt6.cjs → password-input-B6xQTVt3.cjs} +2 -2
  218. package/dist/chunks/{password-input-DMJGpUt6.cjs.map → password-input-B6xQTVt3.cjs.map} +1 -1
  219. package/dist/chunks/{password-input-B2OHc-gn.esm.js → password-input-ZHMvWFue.esm.js} +3 -3
  220. package/dist/chunks/{password-input-B2OHc-gn.esm.js.map → password-input-ZHMvWFue.esm.js.map} +1 -1
  221. package/dist/chunks/{password-input-field-BFj95JMU.esm.js → password-input-field-B6I17gLd.esm.js} +3 -3
  222. package/dist/chunks/{password-input-field-BFj95JMU.esm.js.map → password-input-field-B6I17gLd.esm.js.map} +1 -1
  223. package/dist/chunks/{password-input-field-Cf-zBu2O.cjs → password-input-field-Bh-LmgfF.cjs} +2 -2
  224. package/dist/chunks/{password-input-field-Cf-zBu2O.cjs.map → password-input-field-Bh-LmgfF.cjs.map} +1 -1
  225. package/dist/chunks/{popover-eUvkAe8L.cjs → popover-B4aHN9qY.cjs} +2 -2
  226. package/dist/chunks/{popover-eUvkAe8L.cjs.map → popover-B4aHN9qY.cjs.map} +1 -1
  227. package/dist/chunks/{popover-CwdOyGHr.esm.js → popover-biPpujsV.esm.js} +2 -2
  228. package/dist/chunks/{popover-CwdOyGHr.esm.js.map → popover-biPpujsV.esm.js.map} +1 -1
  229. package/dist/chunks/{progress-bar-DhZVJqY_.cjs → progress-bar-D_PAUwhj.cjs} +2 -2
  230. package/dist/chunks/{progress-bar-DhZVJqY_.cjs.map → progress-bar-D_PAUwhj.cjs.map} +1 -1
  231. package/dist/chunks/{progress-bar-Be7o97DL.esm.js → progress-bar-PjyuiZvS.esm.js} +3 -3
  232. package/dist/chunks/{progress-bar-Be7o97DL.esm.js.map → progress-bar-PjyuiZvS.esm.js.map} +1 -1
  233. package/dist/chunks/{radio-input-Cj03oX72.esm.js → radio-input-CZNQh41n.esm.js} +10 -9
  234. package/dist/chunks/{radio-input-Cj03oX72.esm.js.map → radio-input-CZNQh41n.esm.js.map} +1 -1
  235. package/dist/chunks/radio-input-FRyDwoTk.cjs +2 -0
  236. package/dist/chunks/{radio-input-_eEv0K2W.cjs.map → radio-input-FRyDwoTk.cjs.map} +1 -1
  237. package/dist/chunks/{range-calendar-B0U51wMd.cjs → range-calendar-D1yls6jq.cjs} +2 -2
  238. package/dist/chunks/{range-calendar-B0U51wMd.cjs.map → range-calendar-D1yls6jq.cjs.map} +1 -1
  239. package/dist/chunks/{range-calendar-DA5hJpYL.esm.js → range-calendar-DhgT-Y8T.esm.js} +6 -6
  240. package/dist/chunks/{range-calendar-DA5hJpYL.esm.js.map → range-calendar-DhgT-Y8T.esm.js.map} +1 -1
  241. package/dist/chunks/range-slider-Ch4kXVc3.cjs +2 -0
  242. package/dist/chunks/range-slider-Ch4kXVc3.cjs.map +1 -0
  243. package/dist/chunks/range-slider-CiNJCiKg.esm.js +600 -0
  244. package/dist/chunks/range-slider-CiNJCiKg.esm.js.map +1 -0
  245. package/dist/chunks/{rich-text-input-PYMjw5DQ.esm.js → rich-text-input-CLwl2b63.esm.js} +8 -8
  246. package/dist/chunks/{rich-text-input-PYMjw5DQ.esm.js.map → rich-text-input-CLwl2b63.esm.js.map} +1 -1
  247. package/dist/chunks/{rich-text-input-C0UU1Uoq.cjs → rich-text-input-D9MMIdJJ.cjs} +3 -3
  248. package/dist/chunks/{rich-text-input-C0UU1Uoq.cjs.map → rich-text-input-D9MMIdJJ.cjs.map} +1 -1
  249. package/dist/chunks/{scoped-search-input-D80PFOdN.esm.js → scoped-search-input-BzTmH7Ms.esm.js} +5 -5
  250. package/dist/chunks/{scoped-search-input-D80PFOdN.esm.js.map → scoped-search-input-BzTmH7Ms.esm.js.map} +1 -1
  251. package/dist/chunks/{scoped-search-input-Kj-JJpvo.cjs → scoped-search-input-C9PJWoSh.cjs} +2 -2
  252. package/dist/chunks/{scoped-search-input-Kj-JJpvo.cjs.map → scoped-search-input-C9PJWoSh.cjs.map} +1 -1
  253. package/dist/chunks/{search-input-yUmma36U.cjs → search-input-Cocic3Im.cjs} +2 -2
  254. package/dist/chunks/{search-input-yUmma36U.cjs.map → search-input-Cocic3Im.cjs.map} +1 -1
  255. package/dist/chunks/{search-input-BMq6pRov.esm.js → search-input-DLixG2wL.esm.js} +6 -6
  256. package/dist/chunks/{search-input-BMq6pRov.esm.js.map → search-input-DLixG2wL.esm.js.map} +1 -1
  257. package/dist/chunks/{select-D39rm0xA.esm.js → select-CZzyQOhP.esm.js} +17 -16
  258. package/dist/chunks/{select-D39rm0xA.esm.js.map → select-CZzyQOhP.esm.js.map} +1 -1
  259. package/dist/chunks/select-g5OICT61.cjs +2 -0
  260. package/dist/chunks/{select-DdeLYdJ3.cjs.map → select-g5OICT61.cjs.map} +1 -1
  261. package/dist/chunks/{separator-CRFMcKYe.cjs → separator-DW1Lj5oz.cjs} +2 -2
  262. package/dist/chunks/{separator-CRFMcKYe.cjs.map → separator-DW1Lj5oz.cjs.map} +1 -1
  263. package/dist/chunks/{separator-AUEVwjXs.esm.js → separator-DYgOOvtr.esm.js} +3 -3
  264. package/dist/chunks/{separator-AUEVwjXs.esm.js.map → separator-DYgOOvtr.esm.js.map} +1 -1
  265. package/dist/chunks/skeleton-C-MXf-Vh.esm.js +16 -0
  266. package/dist/chunks/skeleton-C-MXf-Vh.esm.js.map +1 -0
  267. package/dist/chunks/skeleton-SWjnk1LM.cjs +2 -0
  268. package/dist/chunks/skeleton-SWjnk1LM.cjs.map +1 -0
  269. package/dist/chunks/skeleton-circle-C5RFsv29.esm.js +18 -0
  270. package/dist/chunks/skeleton-circle-C5RFsv29.esm.js.map +1 -0
  271. package/dist/chunks/skeleton-circle-CbqEiVJ8.cjs +2 -0
  272. package/dist/chunks/skeleton-circle-CbqEiVJ8.cjs.map +1 -0
  273. package/dist/chunks/skeleton-text-B-r_Iovw.esm.js +33 -0
  274. package/dist/chunks/skeleton-text-B-r_Iovw.esm.js.map +1 -0
  275. package/dist/chunks/skeleton-text-CEr3QStr.cjs +2 -0
  276. package/dist/chunks/skeleton-text-CEr3QStr.cjs.map +1 -0
  277. package/dist/chunks/slider-CE2eEViT.esm.js +9 -0
  278. package/dist/chunks/slider-CE2eEViT.esm.js.map +1 -0
  279. package/dist/chunks/slider-CxvxZzOB.cjs +2 -0
  280. package/dist/chunks/slider-CxvxZzOB.cjs.map +1 -0
  281. package/dist/chunks/{split-button-DelUgBth.cjs → split-button-Dr_RsxyR.cjs} +2 -2
  282. package/dist/chunks/{split-button-DelUgBth.cjs.map → split-button-Dr_RsxyR.cjs.map} +1 -1
  283. package/dist/chunks/{split-button-C9MIlSe4.esm.js → split-button-lLEz3Ddi.esm.js} +4 -4
  284. package/dist/chunks/{split-button-C9MIlSe4.esm.js.map → split-button-lLEz3Ddi.esm.js.map} +1 -1
  285. package/dist/chunks/{steps-BLrpE2PL.cjs → steps-BvqxvDfJ.cjs} +2 -2
  286. package/dist/chunks/{steps-BLrpE2PL.cjs.map → steps-BvqxvDfJ.cjs.map} +1 -1
  287. package/dist/chunks/{steps-OnZi-T9x.esm.js → steps-DIRtxFO6.esm.js} +2 -2
  288. package/dist/chunks/{steps-OnZi-T9x.esm.js.map → steps-DIRtxFO6.esm.js.map} +1 -1
  289. package/dist/chunks/{switch-D1rdYruG.esm.js → switch-B351GNnT.esm.js} +4 -4
  290. package/dist/chunks/{switch-D1rdYruG.esm.js.map → switch-B351GNnT.esm.js.map} +1 -1
  291. package/dist/chunks/{switch-BPk30JYZ.cjs → switch-BSws2Bn9.cjs} +2 -2
  292. package/dist/chunks/{switch-BPk30JYZ.cjs.map → switch-BSws2Bn9.cjs.map} +1 -1
  293. package/dist/chunks/tab-nav-BMNdumQw.esm.js +66 -0
  294. package/dist/chunks/tab-nav-BMNdumQw.esm.js.map +1 -0
  295. package/dist/chunks/tab-nav-Dy6pg3Cf.cjs +2 -0
  296. package/dist/chunks/tab-nav-Dy6pg3Cf.cjs.map +1 -0
  297. package/dist/chunks/{table-DEKXq5nE.cjs → table-BF5v-4YU.cjs} +2 -2
  298. package/dist/chunks/{table-DEKXq5nE.cjs.map → table-BF5v-4YU.cjs.map} +1 -1
  299. package/dist/chunks/{table-O8T8871k.esm.js → table-OZDDVGWu.esm.js} +2 -2
  300. package/dist/chunks/{table-O8T8871k.esm.js.map → table-OZDDVGWu.esm.js.map} +1 -1
  301. package/dist/chunks/{tabs-IjuTjmW5.esm.js → tabs-C7zLoP1D.esm.js} +101 -100
  302. package/dist/chunks/{tabs-IjuTjmW5.esm.js.map → tabs-C7zLoP1D.esm.js.map} +1 -1
  303. package/dist/chunks/tabs-DLr47HN_.cjs +2 -0
  304. package/dist/chunks/{tabs-BbC8to5L.cjs.map → tabs-DLr47HN_.cjs.map} +1 -1
  305. package/dist/chunks/{tag-group-DJ2Eyzr6.esm.js → tag-group-DKiwZtum.esm.js} +160 -160
  306. package/dist/chunks/{tag-group-DJ2Eyzr6.esm.js.map → tag-group-DKiwZtum.esm.js.map} +1 -1
  307. package/dist/chunks/tag-group-JEE8r8Jl.cjs +2 -0
  308. package/dist/chunks/{tag-group-t9CCZs9w.cjs.map → tag-group-JEE8r8Jl.cjs.map} +1 -1
  309. package/dist/chunks/{text-input-DzHnlufM.esm.js → text-input-4YjslLxr.esm.js} +4 -4
  310. package/dist/chunks/{text-input-DzHnlufM.esm.js.map → text-input-4YjslLxr.esm.js.map} +1 -1
  311. package/dist/chunks/{text-input-Bc2XftOM.cjs → text-input-BttCyWCt.cjs} +2 -2
  312. package/dist/chunks/{text-input-Bc2XftOM.cjs.map → text-input-BttCyWCt.cjs.map} +1 -1
  313. package/dist/chunks/{theme-BR3bc6tH.esm.js → theme-CFqa_6UM.esm.js} +710 -195
  314. package/dist/chunks/theme-CFqa_6UM.esm.js.map +1 -0
  315. package/dist/chunks/theme-DA63MDZQ.cjs +34 -0
  316. package/dist/chunks/theme-DA63MDZQ.cjs.map +1 -0
  317. package/dist/chunks/{time-input--A7teyZm.esm.js → time-input-CJcXuGHH.esm.js} +4 -4
  318. package/dist/chunks/{time-input--A7teyZm.esm.js.map → time-input-CJcXuGHH.esm.js.map} +1 -1
  319. package/dist/chunks/{time-input-CnqA54LG.cjs → time-input-Cv-8dl-n.cjs} +2 -2
  320. package/dist/chunks/{time-input-CnqA54LG.cjs.map → time-input-Cv-8dl-n.cjs.map} +1 -1
  321. package/dist/chunks/{toast.outlet-CiElRAMb.cjs → toast.outlet-BGy4NZoL.cjs} +2 -2
  322. package/dist/chunks/{toast.outlet-CiElRAMb.cjs.map → toast.outlet-BGy4NZoL.cjs.map} +1 -1
  323. package/dist/chunks/{toast.outlet-DfFHdsij.esm.js → toast.outlet-DQ7Z1sG7.esm.js} +4 -4
  324. package/dist/chunks/{toast.outlet-DfFHdsij.esm.js.map → toast.outlet-DQ7Z1sG7.esm.js.map} +1 -1
  325. package/dist/chunks/{toggle-button-szYkDbB4.cjs → toggle-button-B9m2DON6.cjs} +2 -2
  326. package/dist/chunks/{toggle-button-szYkDbB4.cjs.map → toggle-button-B9m2DON6.cjs.map} +1 -1
  327. package/dist/chunks/{toggle-button-DnjpkkaG.esm.js → toggle-button-D3UZNm_4.esm.js} +3 -3
  328. package/dist/chunks/{toggle-button-DnjpkkaG.esm.js.map → toggle-button-D3UZNm_4.esm.js.map} +1 -1
  329. package/dist/chunks/{toolbar-BTl4PMN6.esm.js → toolbar-BUb2xcXt.esm.js} +3 -3
  330. package/dist/chunks/{toolbar-BTl4PMN6.esm.js.map → toolbar-BUb2xcXt.esm.js.map} +1 -1
  331. package/dist/chunks/{toolbar-CDuqJw86.cjs → toolbar-CxYGox-m.cjs} +2 -2
  332. package/dist/chunks/{toolbar-CDuqJw86.cjs.map → toolbar-CxYGox-m.cjs.map} +1 -1
  333. package/dist/chunks/{use-responsive-splitter-sizes-CO-POrVJ.esm.js → use-responsive-splitter-sizes-BgEYraHy.esm.js} +2 -2
  334. package/dist/chunks/{use-responsive-splitter-sizes-CO-POrVJ.esm.js.map → use-responsive-splitter-sizes-BgEYraHy.esm.js.map} +1 -1
  335. package/dist/chunks/{use-responsive-splitter-sizes-DApY1vey.cjs → use-responsive-splitter-sizes-CzfdjEjf.cjs} +2 -2
  336. package/dist/chunks/{use-responsive-splitter-sizes-DApY1vey.cjs.map → use-responsive-splitter-sizes-CzfdjEjf.cjs.map} +1 -1
  337. package/dist/chunks/{use-tree-wsHR3c7J.esm.js → use-tree-BFKFaiiu.esm.js} +147 -147
  338. package/dist/chunks/{use-tree-wsHR3c7J.esm.js.map → use-tree-BFKFaiiu.esm.js.map} +1 -1
  339. package/dist/chunks/use-tree-NiiqPu0M.cjs +2 -0
  340. package/dist/chunks/{use-tree-CrwSJhB8.cjs.map → use-tree-NiiqPu0M.cjs.map} +1 -1
  341. package/dist/chunks/{useCollection-CGf4ZguH.esm.js → useCollection-BCbt2V3u.esm.js} +258 -307
  342. package/dist/chunks/useCollection-BCbt2V3u.esm.js.map +1 -0
  343. package/dist/chunks/useCollection-BjHtDvt-.cjs +2 -0
  344. package/dist/chunks/useCollection-BjHtDvt-.cjs.map +1 -0
  345. package/dist/chunks/{useDragAndDrop-CoNOA7E9.cjs → useDragAndDrop-B8UfdCMX.cjs} +2 -2
  346. package/dist/chunks/{useDragAndDrop-CoNOA7E9.cjs.map → useDragAndDrop-B8UfdCMX.cjs.map} +1 -1
  347. package/dist/chunks/{useDragAndDrop-D_i3CWeg.esm.js → useDragAndDrop-BAyAtCYg.esm.js} +2 -2
  348. package/dist/chunks/{useDragAndDrop-D_i3CWeg.esm.js.map → useDragAndDrop-BAyAtCYg.esm.js.map} +1 -1
  349. package/dist/chunks/useFormReset-C6H3spHM.cjs +2 -0
  350. package/dist/chunks/useFormReset-C6H3spHM.cjs.map +1 -0
  351. package/dist/chunks/useFormReset-CAZratNG.esm.js +18 -0
  352. package/dist/chunks/useFormReset-CAZratNG.esm.js.map +1 -0
  353. package/dist/chunks/useFormValidationState-CMK07tQk.cjs +2 -0
  354. package/dist/chunks/useFormValidationState-CMK07tQk.cjs.map +1 -0
  355. package/dist/chunks/{useFormValidationState-rjMRhdnd.esm.js → useFormValidationState-hfa069v5.esm.js} +40 -53
  356. package/dist/chunks/useFormValidationState-hfa069v5.esm.js.map +1 -0
  357. package/dist/chunks/{useGridListItem-DVNb2d76.esm.js → useGridListItem-C6LMK1Mv.esm.js} +3 -3
  358. package/dist/chunks/{useGridListItem-DVNb2d76.esm.js.map → useGridListItem-C6LMK1Mv.esm.js.map} +1 -1
  359. package/dist/chunks/{useGridListItem-d-i-pqAt.cjs → useGridListItem-CmLWoZGe.cjs} +2 -2
  360. package/dist/chunks/{useGridListItem-d-i-pqAt.cjs.map → useGridListItem-CmLWoZGe.cjs.map} +1 -1
  361. package/dist/chunks/{useListState-6F4go-kc.cjs → useListState-BBQE4IFG.cjs} +2 -2
  362. package/dist/chunks/{useListState-6F4go-kc.cjs.map → useListState-BBQE4IFG.cjs.map} +1 -1
  363. package/dist/chunks/{useListState-BiT-W669.esm.js → useListState-TSrPXjzi.esm.js} +2 -2
  364. package/dist/chunks/{useListState-BiT-W669.esm.js.map → useListState-TSrPXjzi.esm.js.map} +1 -1
  365. package/dist/chunks/useNumberFormatter-Drsf_lwe.cjs +2 -0
  366. package/dist/chunks/useNumberFormatter-Drsf_lwe.cjs.map +1 -0
  367. package/dist/chunks/useNumberFormatter-L64UBjdR.esm.js +12 -0
  368. package/dist/chunks/useNumberFormatter-L64UBjdR.esm.js.map +1 -0
  369. package/dist/chunks/useProgressBar-C-UZQWBC.cjs +2 -0
  370. package/dist/chunks/useProgressBar-C-UZQWBC.cjs.map +1 -0
  371. package/dist/chunks/useProgressBar-DVPx9_dg.esm.js +33 -0
  372. package/dist/chunks/useProgressBar-DVPx9_dg.esm.js.map +1 -0
  373. package/dist/chunks/{useSelectableList-DDytBtRR.cjs → useSelectableList-Bgv2nxTX.cjs} +2 -2
  374. package/dist/chunks/{useSelectableList-DDytBtRR.cjs.map → useSelectableList-Bgv2nxTX.cjs.map} +1 -1
  375. package/dist/chunks/{useSelectableList-umEtkxYN.esm.js → useSelectableList-gohzq7dg.esm.js} +2 -2
  376. package/dist/chunks/{useSelectableList-umEtkxYN.esm.js.map → useSelectableList-gohzq7dg.esm.js.map} +1 -1
  377. package/dist/chunks/useTextField-ABtLd27L.cjs +2 -0
  378. package/dist/chunks/{useTextField-CzF6gZ6-.cjs.map → useTextField-ABtLd27L.cjs.map} +1 -1
  379. package/dist/chunks/{useTextField-CdCrgSsV.esm.js → useTextField-FAMJ18ah.esm.js} +5 -4
  380. package/dist/chunks/{useTextField-CdCrgSsV.esm.js.map → useTextField-FAMJ18ah.esm.js.map} +1 -1
  381. package/dist/chunks/{useToggle-oUUHIEEp.esm.js → useToggle-B9oH7p52.esm.js} +7 -6
  382. package/dist/chunks/{useToggle-oUUHIEEp.esm.js.map → useToggle-B9oH7p52.esm.js.map} +1 -1
  383. package/dist/chunks/useToggle-WawJgKE5.cjs +2 -0
  384. package/dist/chunks/{useToggle-DOG2OJN_.cjs.map → useToggle-WawJgKE5.cjs.map} +1 -1
  385. package/dist/chunks/{useTreeState-Bi7rvUKr.cjs → useTreeState-C5z4FPeF.cjs} +2 -2
  386. package/dist/chunks/{useTreeState-Bi7rvUKr.cjs.map → useTreeState-C5z4FPeF.cjs.map} +1 -1
  387. package/dist/chunks/{useTreeState-BlJtuLmC.esm.js → useTreeState-DuW0JMo8.esm.js} +2 -2
  388. package/dist/chunks/{useTreeState-BlJtuLmC.esm.js.map → useTreeState-DuW0JMo8.esm.js.map} +1 -1
  389. package/dist/components/accordion.cjs +1 -1
  390. package/dist/components/accordion.es.js +2 -2
  391. package/dist/components/actions.cjs +1 -1
  392. package/dist/components/actions.es.js +1 -1
  393. package/dist/components/alert.cjs +1 -1
  394. package/dist/components/alert.es.js +1 -1
  395. package/dist/components/breadcrumbs/breadcrumbs.d.ts +71 -0
  396. package/dist/components/breadcrumbs/breadcrumbs.recipe.d.ts +31 -0
  397. package/dist/components/breadcrumbs/breadcrumbs.slots.d.ts +27 -0
  398. package/dist/components/breadcrumbs/breadcrumbs.types.d.ts +142 -0
  399. package/dist/components/breadcrumbs/components/breadcrumbs.context.d.ts +13 -0
  400. package/dist/components/breadcrumbs/components/breadcrumbs.item.d.ts +20 -0
  401. package/dist/components/breadcrumbs/components/breadcrumbs.root.d.ts +19 -0
  402. package/dist/components/breadcrumbs/components/index.d.ts +2 -0
  403. package/dist/components/breadcrumbs/index.d.ts +2 -0
  404. package/dist/components/breadcrumbs.cjs +1 -0
  405. package/dist/components/breadcrumbs.es.js +2 -0
  406. package/dist/components/button.cjs +1 -1
  407. package/dist/components/button.es.js +1 -1
  408. package/dist/components/calendar.cjs +1 -1
  409. package/dist/components/calendar.es.js +1 -1
  410. package/dist/components/chat-message-list.cjs +1 -1
  411. package/dist/components/chat-message-list.es.js +1 -1
  412. package/dist/components/chat-message.cjs +1 -1
  413. package/dist/components/chat-message.es.js +1 -1
  414. package/dist/components/checkbox.cjs +1 -1
  415. package/dist/components/checkbox.es.js +1 -1
  416. package/dist/components/collapsible-motion.cjs +1 -1
  417. package/dist/components/collapsible-motion.es.js +1 -1
  418. package/dist/components/combobox.cjs +1 -1
  419. package/dist/components/combobox.es.js +1 -1
  420. package/dist/components/components.cjs +1 -1
  421. package/dist/components/components.es.js +1 -1
  422. package/dist/components/confirmation-dialog.cjs +1 -1
  423. package/dist/components/confirmation-dialog.es.js +1 -1
  424. package/dist/components/data-table.cjs +1 -1
  425. package/dist/components/data-table.es.js +1 -1
  426. package/dist/components/date-input.cjs +1 -1
  427. package/dist/components/date-input.es.js +1 -1
  428. package/dist/components/date-picker.cjs +1 -1
  429. package/dist/components/date-picker.es.js +1 -1
  430. package/dist/components/date-range-picker-field.cjs +1 -1
  431. package/dist/components/date-range-picker-field.es.js +2 -2
  432. package/dist/components/date-range-picker.cjs +1 -1
  433. package/dist/components/date-range-picker.es.js +1 -1
  434. package/dist/components/default-page.cjs +1 -1
  435. package/dist/components/default-page.es.js +1 -1
  436. package/dist/components/dialog.cjs +1 -1
  437. package/dist/components/dialog.es.js +1 -1
  438. package/dist/components/dialogs.cjs +1 -1
  439. package/dist/components/dialogs.es.js +2 -2
  440. package/dist/components/draggable-list.cjs +1 -1
  441. package/dist/components/draggable-list.es.js +1 -1
  442. package/dist/components/drawer.cjs +1 -1
  443. package/dist/components/drawer.es.js +1 -1
  444. package/dist/components/drop-zone.cjs +1 -1
  445. package/dist/components/drop-zone.es.js +1 -1
  446. package/dist/components/fields.cjs +1 -1
  447. package/dist/components/fields.es.js +4 -4
  448. package/dist/components/floating-action-button.cjs +1 -1
  449. package/dist/components/floating-action-button.es.js +1 -1
  450. package/dist/components/form-action-bar.cjs +1 -1
  451. package/dist/components/form-action-bar.es.js +1 -1
  452. package/dist/components/form-dialog.cjs +1 -1
  453. package/dist/components/form-dialog.es.js +1 -1
  454. package/dist/components/form-field.cjs +1 -1
  455. package/dist/components/form-field.es.js +1 -1
  456. package/dist/components/icon-button.cjs +1 -1
  457. package/dist/components/icon-button.es.js +1 -1
  458. package/dist/components/icon-toggle-button.cjs +1 -1
  459. package/dist/components/icon-toggle-button.es.js +1 -1
  460. package/dist/components/index.d.ts +5 -0
  461. package/dist/components/info-dialog.cjs +1 -1
  462. package/dist/components/info-dialog.es.js +1 -1
  463. package/dist/components/item/components/index.d.ts +8 -0
  464. package/dist/components/item/components/item.actions.d.ts +14 -0
  465. package/dist/components/item/components/item.content.d.ts +11 -0
  466. package/dist/components/item/components/item.description.d.ts +10 -0
  467. package/dist/components/item/components/item.footer.d.ts +10 -0
  468. package/dist/components/item/components/item.header.d.ts +10 -0
  469. package/dist/components/item/components/item.media.d.ts +18 -0
  470. package/dist/components/item/components/item.root.d.ts +16 -0
  471. package/dist/components/item/components/item.title.d.ts +10 -0
  472. package/dist/components/item/index.d.ts +2 -0
  473. package/dist/components/item/item.d.ts +177 -0
  474. package/dist/components/item/item.recipe.d.ts +52 -0
  475. package/dist/components/item/item.slots.d.ts +15 -0
  476. package/dist/components/item/item.types.d.ts +81 -0
  477. package/dist/components/item-group/components/index.d.ts +2 -0
  478. package/dist/components/item-group/components/item-group.root.d.ts +22 -0
  479. package/dist/components/item-group/components/item-group.separator.d.ts +11 -0
  480. package/dist/components/item-group/index.d.ts +2 -0
  481. package/dist/components/item-group/item-group.d.ts +62 -0
  482. package/dist/components/item-group/item-group.recipe.d.ts +11 -0
  483. package/dist/components/item-group/item-group.slots.d.ts +11 -0
  484. package/dist/components/item-group/item-group.types.d.ts +14 -0
  485. package/dist/components/item-group.cjs +1 -0
  486. package/dist/components/item-group.es.js +2 -0
  487. package/dist/components/item.cjs +1 -0
  488. package/dist/components/item.es.js +2 -0
  489. package/dist/components/list.cjs +1 -1
  490. package/dist/components/list.es.js +1 -1
  491. package/dist/components/loading-spinner.cjs +1 -1
  492. package/dist/components/loading-spinner.es.js +1 -1
  493. package/dist/components/localized-field.cjs +1 -1
  494. package/dist/components/localized-field.es.js +1 -1
  495. package/dist/components/markdown.cjs +1 -1
  496. package/dist/components/markdown.es.js +1 -1
  497. package/dist/components/modal-page.cjs +1 -1
  498. package/dist/components/modal-page.es.js +1 -1
  499. package/dist/components/money-input-field.cjs +1 -1
  500. package/dist/components/money-input-field.es.js +1 -1
  501. package/dist/components/money-input.cjs +1 -1
  502. package/dist/components/money-input.es.js +1 -1
  503. package/dist/components/multiline-text-input-field.cjs +1 -1
  504. package/dist/components/multiline-text-input-field.es.js +1 -1
  505. package/dist/components/multiline-text-input.cjs +1 -1
  506. package/dist/components/multiline-text-input.es.js +1 -1
  507. package/dist/components/nimbus-provider.cjs +1 -1
  508. package/dist/components/nimbus-provider.es.js +1 -1
  509. package/dist/components/number-input-field.cjs +1 -1
  510. package/dist/components/number-input-field.es.js +1 -1
  511. package/dist/components/number-input.cjs +1 -1
  512. package/dist/components/number-input.es.js +1 -1
  513. package/dist/components/pagination.cjs +1 -1
  514. package/dist/components/pagination.es.js +1 -1
  515. package/dist/components/password-input-field.cjs +1 -1
  516. package/dist/components/password-input-field.es.js +1 -1
  517. package/dist/components/password-input.cjs +1 -1
  518. package/dist/components/password-input.es.js +1 -1
  519. package/dist/components/patterns.cjs +1 -1
  520. package/dist/components/patterns.es.js +7 -7
  521. package/dist/components/popover.cjs +1 -1
  522. package/dist/components/popover.es.js +1 -1
  523. package/dist/components/progress-bar.cjs +1 -1
  524. package/dist/components/progress-bar.es.js +1 -1
  525. package/dist/components/radio-input.cjs +1 -1
  526. package/dist/components/radio-input.es.js +1 -1
  527. package/dist/components/range-calendar.cjs +1 -1
  528. package/dist/components/range-calendar.es.js +1 -1
  529. package/dist/components/range-slider.cjs +1 -0
  530. package/dist/components/range-slider.es.js +2 -0
  531. package/dist/components/rich-text-input.cjs +1 -1
  532. package/dist/components/rich-text-input.es.js +1 -1
  533. package/dist/components/scoped-search-input.cjs +1 -1
  534. package/dist/components/scoped-search-input.es.js +1 -1
  535. package/dist/components/search-input-field.cjs +1 -1
  536. package/dist/components/search-input-field.es.js +2 -2
  537. package/dist/components/search-input.cjs +1 -1
  538. package/dist/components/search-input.es.js +1 -1
  539. package/dist/components/select.cjs +1 -1
  540. package/dist/components/select.es.js +1 -1
  541. package/dist/components/separator.cjs +1 -1
  542. package/dist/components/separator.es.js +1 -1
  543. package/dist/components/skeleton/derivatives/skeleton-circle/index.d.ts +2 -0
  544. package/dist/components/skeleton/derivatives/skeleton-circle/skeleton-circle.d.ts +17 -0
  545. package/dist/components/skeleton/derivatives/skeleton-circle/skeleton-circle.types.d.ts +21 -0
  546. package/dist/components/skeleton/derivatives/skeleton-text/index.d.ts +2 -0
  547. package/dist/components/skeleton/derivatives/skeleton-text/skeleton-text.d.ts +16 -0
  548. package/dist/components/skeleton/derivatives/skeleton-text/skeleton-text.types.d.ts +45 -0
  549. package/dist/components/skeleton/index.d.ts +6 -0
  550. package/dist/components/skeleton/skeleton.d.ts +20 -0
  551. package/dist/components/skeleton/skeleton.recipe.d.ts +59 -0
  552. package/dist/components/skeleton/skeleton.slots.d.ts +7 -0
  553. package/dist/components/skeleton/skeleton.types.d.ts +50 -0
  554. package/dist/components/skeleton-circle.cjs +1 -0
  555. package/dist/components/skeleton-circle.es.js +2 -0
  556. package/dist/components/skeleton-text.cjs +1 -0
  557. package/dist/components/skeleton-text.es.js +2 -0
  558. package/dist/components/skeleton.cjs +1 -0
  559. package/dist/components/skeleton.es.js +6 -0
  560. package/dist/components/slider/derivatives/range-slider/index.d.ts +2 -0
  561. package/dist/components/slider/derivatives/range-slider/range-slider.d.ts +20 -0
  562. package/dist/components/slider/derivatives/range-slider/range-slider.types.d.ts +13 -0
  563. package/dist/components/slider/index.d.ts +4 -0
  564. package/dist/components/slider/intl/de.d.ts +10 -0
  565. package/dist/components/slider/intl/en.d.ts +10 -0
  566. package/dist/components/slider/intl/es.d.ts +10 -0
  567. package/dist/components/slider/intl/fr-FR.d.ts +10 -0
  568. package/dist/components/slider/intl/pt-BR.d.ts +10 -0
  569. package/dist/components/slider/slider-base.d.ts +10 -0
  570. package/dist/components/slider/slider.d.ts +13 -0
  571. package/dist/components/slider/slider.i18n.d.ts +12 -0
  572. package/dist/components/slider/slider.messages.d.ts +6 -0
  573. package/dist/components/slider/slider.recipe.d.ts +138 -0
  574. package/dist/components/slider/slider.slots.d.ts +9 -0
  575. package/dist/components/slider/slider.types.d.ts +57 -0
  576. package/dist/components/slider.cjs +1 -0
  577. package/dist/components/slider.es.js +4 -0
  578. package/dist/components/split-button.cjs +1 -1
  579. package/dist/components/split-button.es.js +1 -1
  580. package/dist/components/splitter.cjs +1 -1
  581. package/dist/components/splitter.es.js +1 -1
  582. package/dist/components/steps.cjs +1 -1
  583. package/dist/components/steps.es.js +1 -1
  584. package/dist/components/switch.cjs +1 -1
  585. package/dist/components/switch.es.js +1 -1
  586. package/dist/components/tab-nav.cjs +1 -1
  587. package/dist/components/tab-nav.es.js +1 -1
  588. package/dist/components/table.cjs +1 -1
  589. package/dist/components/table.es.js +1 -1
  590. package/dist/components/tabs.cjs +1 -1
  591. package/dist/components/tabs.es.js +1 -1
  592. package/dist/components/tag-group.cjs +1 -1
  593. package/dist/components/tag-group.es.js +1 -1
  594. package/dist/components/text-input-field.cjs +1 -1
  595. package/dist/components/text-input-field.es.js +2 -2
  596. package/dist/components/text-input.cjs +1 -1
  597. package/dist/components/text-input.es.js +1 -1
  598. package/dist/components/time-input.cjs +1 -1
  599. package/dist/components/time-input.es.js +1 -1
  600. package/dist/components/toast.cjs +1 -1
  601. package/dist/components/toast.es.js +1 -1
  602. package/dist/components/toggle-button.cjs +1 -1
  603. package/dist/components/toggle-button.es.js +1 -1
  604. package/dist/components/toolbar.cjs +1 -1
  605. package/dist/components/toolbar.es.js +1 -1
  606. package/dist/components/tree.cjs +1 -1
  607. package/dist/components/tree.es.js +1 -1
  608. package/dist/index.cjs +2 -2
  609. package/dist/index.cjs.map +1 -1
  610. package/dist/index.es.js +170 -162
  611. package/dist/index.es.js.map +1 -1
  612. package/dist/theme/keyframes.d.ts +11 -0
  613. package/dist/theme/recipes/index.d.ts +46 -0
  614. package/dist/theme/slot-recipes/index.d.ts +193 -0
  615. package/package.json +6 -6
  616. package/dist/chunks/DateField-DI1RhZqo.cjs +0 -2
  617. package/dist/chunks/Dialog-s5tFTj72.cjs +0 -6
  618. package/dist/chunks/ListBox-CXgfDQSn.cjs +0 -2
  619. package/dist/chunks/chat-message-list-BhWZEg4l.esm.js.map +0 -1
  620. package/dist/chunks/chat-message-list-BvzHnJHs.cjs +0 -2
  621. package/dist/chunks/chat-message-list-BvzHnJHs.cjs.map +0 -1
  622. package/dist/chunks/data-table-CHpJecej.cjs +0 -2
  623. package/dist/chunks/draggable-list-CKKl6A_a.cjs +0 -2
  624. package/dist/chunks/number-input-DU3522fK.cjs +0 -2
  625. package/dist/chunks/radio-input-_eEv0K2W.cjs +0 -2
  626. package/dist/chunks/select-DdeLYdJ3.cjs +0 -2
  627. package/dist/chunks/tab-nav-CunrpVeV.cjs +0 -2
  628. package/dist/chunks/tab-nav-CunrpVeV.cjs.map +0 -1
  629. package/dist/chunks/tab-nav-EHnsfeUM.esm.js +0 -99
  630. package/dist/chunks/tab-nav-EHnsfeUM.esm.js.map +0 -1
  631. package/dist/chunks/tabs-BbC8to5L.cjs +0 -2
  632. package/dist/chunks/tag-group-t9CCZs9w.cjs +0 -2
  633. package/dist/chunks/theme-BR3bc6tH.esm.js.map +0 -1
  634. package/dist/chunks/theme-tOoHVZZ6.cjs +0 -34
  635. package/dist/chunks/theme-tOoHVZZ6.cjs.map +0 -1
  636. package/dist/chunks/use-tree-CrwSJhB8.cjs +0 -2
  637. package/dist/chunks/useCollection-C04LezXC.cjs +0 -2
  638. package/dist/chunks/useCollection-C04LezXC.cjs.map +0 -1
  639. package/dist/chunks/useCollection-CGf4ZguH.esm.js.map +0 -1
  640. package/dist/chunks/useFormValidationState-B5e8EeJ8.cjs +0 -2
  641. package/dist/chunks/useFormValidationState-B5e8EeJ8.cjs.map +0 -1
  642. package/dist/chunks/useFormValidationState-rjMRhdnd.esm.js.map +0 -1
  643. package/dist/chunks/useProgressBar-DDrlZQv4.cjs +0 -2
  644. package/dist/chunks/useProgressBar-DDrlZQv4.cjs.map +0 -1
  645. package/dist/chunks/useProgressBar-DmcvqOjq.esm.js +0 -41
  646. package/dist/chunks/useProgressBar-DmcvqOjq.esm.js.map +0 -1
  647. package/dist/chunks/useTextField-CzF6gZ6-.cjs +0 -2
  648. package/dist/chunks/useToggle-DOG2OJN_.cjs +0 -2
@@ -1 +1 @@
1
- {"version":3,"file":"drawer-I6J9g1l4.esm.js","names":[],"sources":["../../src/components/drawer/drawer.slots.tsx","../../src/components/drawer/components/drawer.context.tsx","../../src/components/drawer/components/drawer.root.tsx","../../src/components/drawer/components/drawer.trigger.tsx","../../src/components/drawer/components/drawer.content.tsx","../../src/components/drawer/components/drawer.header.tsx","../../src/components/drawer/components/drawer.body.tsx","../../src/components/drawer/components/drawer.footer.tsx","../../src/components/drawer/components/drawer.title.tsx","../../src/components/drawer/intl/en.ts","../../src/components/drawer/intl/de.ts","../../src/components/drawer/intl/es.ts","../../src/components/drawer/intl/fr-FR.ts","../../src/components/drawer/intl/pt-BR.ts","../../src/components/drawer/drawer.messages.ts","../../src/components/drawer/components/drawer.close-trigger.tsx","../../src/components/drawer/drawer.tsx"],"sourcesContent":["import {\n createSlotRecipeContext,\n type HTMLChakraProps,\n} from \"@chakra-ui/react/styled-system\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"nimbusDrawer\",\n});\n\n// Root slot - provides recipe context + config to all child components\nexport type DrawerRootSlotProps = HTMLChakraProps<\"div\">;\nexport const DrawerRootSlot = withProvider<HTMLDivElement, DrawerRootSlotProps>(\n \"div\",\n \"root\"\n);\n\n// Trigger slot - button that opens the drawer\nexport type DrawerTriggerSlotProps = HTMLChakraProps<\"button\">;\nexport const DrawerTriggerSlot = withContext<\n HTMLButtonElement,\n DrawerTriggerSlotProps\n>(\"button\", \"trigger\");\n\n// Backdrop slot - overlay displayed behind the drawer\nexport type DrawerModalOverlaySlotProps = HTMLChakraProps<\"div\">;\nexport const DrawerModalOverlaySlot = withContext<\n HTMLDivElement,\n DrawerModalOverlaySlotProps\n>(\"div\", \"modalOverlay\");\n\n// modal slot - positions the drawer content\nexport type DrawerModalSlotProps = HTMLChakraProps<\"div\">;\nexport const DrawerModalSlot = withContext<\n HTMLDivElement,\n DrawerModalSlotProps\n>(\"div\", \"modal\");\n\n// Content slot - main drawer container\nexport type DrawerContentSlotProps = HTMLChakraProps<\"div\">;\nexport const DrawerContentSlot = withContext<\n HTMLDivElement,\n DrawerContentSlotProps\n>(\"div\", \"content\");\n\n// Header slot - drawer header section\nexport type DrawerHeaderSlotProps = HTMLChakraProps<\"header\">;\nexport const DrawerHeaderSlot = withContext<HTMLElement, DrawerHeaderSlotProps>(\n \"header\",\n \"header\"\n);\n\n// Body slot - drawer body content\nexport type DrawerBodySlotProps = HTMLChakraProps<\"div\">;\nexport const DrawerBodySlot = withContext<HTMLDivElement, DrawerBodySlotProps>(\n \"div\",\n \"body\"\n);\n\n// Footer slot - drawer footer section with actions\nexport type DrawerFooterSlotProps = HTMLChakraProps<\"footer\">;\nexport const DrawerFooterSlot = withContext<HTMLElement, DrawerFooterSlotProps>(\n \"footer\",\n \"footer\"\n);\n\n// Title slot - accessible drawer title\nexport type DrawerTitleSlotProps = HTMLChakraProps<\"h2\">;\nexport const DrawerTitleSlot = withContext<\n HTMLHeadingElement,\n DrawerTitleSlotProps\n>(\"h2\", \"title\");\n\n// Close trigger slot - div container for positioning close button\nexport type DrawerCloseTriggerSlotProps = HTMLChakraProps<\"div\">;\nexport const DrawerCloseTriggerSlot = withContext<\n HTMLDivElement,\n DrawerCloseTriggerSlotProps\n>(\"div\", \"closeTrigger\");\n","import { createContext, useContext } from \"react\";\nimport type { DrawerRootProps } from \"../drawer.types\";\n\n/**\n * Context value containing drawer configuration passed from Root to child components\n */\nexport type DrawerContextValue = DrawerRootProps & {\n /**\n * Internal flag indicating whether the drawer has a Drawer.Trigger component.\n * Used by DrawerContent to determine whether DialogTrigger is managing state.\n */\n hasDrawerTrigger?: boolean;\n};\n\nexport const DrawerContext = createContext<DrawerContextValue | undefined>(\n undefined\n);\n\n/**\n * Hook to access drawer configuration from DrawerContext\n * @returns Drawer configuration from context\n * @throws Error if used outside of Drawer.Root\n */\nexport const useDrawerRootContext = (): DrawerContextValue => {\n const context = useContext(DrawerContext);\n if (!context) {\n throw new Error(\"useDrawerContext must be used within Drawer.Root\");\n }\n return context;\n};\n\n/**\n * Provider component that passes drawer configuration down to child components\n */\nexport const DrawerProvider = ({\n children,\n value,\n}: {\n children: React.ReactNode;\n value: DrawerContextValue;\n}) => {\n return <DrawerContext value={value}>{children}</DrawerContext>;\n};\n","import React from \"react\";\nimport { DialogTrigger as RaDialogTrigger } from \"react-aria-components\";\nimport { useSlotRecipe } from \"@chakra-ui/react/styled-system\";\nimport { DrawerRootSlot } from \"../drawer.slots\";\nimport type { DrawerRootProps } from \"../drawer.types\";\nimport { DrawerProvider } from \"./drawer.context\";\nimport { drawerSlotRecipe } from \"../drawer.recipe\";\n\nexport const DrawerRoot = (props: DrawerRootProps) => {\n const recipe = useSlotRecipe({ recipe: drawerSlotRecipe });\n // Extract recipe props\n const [recipeProps] = recipe.splitVariantProps(props);\n // Extract props that are usable on RaDialogTrigger\n const { children, isOpen, onOpenChange, defaultOpen = false } = props;\n\n const content = <DrawerRootSlot {...recipeProps}>{children}</DrawerRootSlot>;\n\n // Check if any child is a Drawer.Trigger component\n // React Aria's DialogTrigger needs a pressable child, so we only use it when there's a trigger\n const hasDrawerTrigger = React.Children.toArray(children).some((child) => {\n if (React.isValidElement(child) && typeof child.type === \"function\") {\n const displayName = (\n child.type as React.ComponentType & { displayName?: string }\n )?.displayName;\n return (\n displayName === \"DrawerTrigger\" || displayName === \"Drawer.Trigger\"\n );\n }\n return false;\n });\n\n // Share all props (config + variant props) with the Drawer subcomponents\n // Also pass hasDrawerTrigger so DrawerContent knows whether to manage its own state\n return (\n <DrawerProvider value={{ ...props, hasDrawerTrigger }}>\n {hasDrawerTrigger ? (\n // When there's a Drawer.Trigger, use DialogTrigger for React Aria integration\n <RaDialogTrigger\n isOpen={isOpen}\n onOpenChange={onOpenChange}\n defaultOpen={defaultOpen}\n >\n {content}\n </RaDialogTrigger>\n ) : (\n // When no Drawer.Trigger, skip DialogTrigger to avoid the warning\n content\n )}\n </DrawerProvider>\n );\n};\n\nDrawerRoot.displayName = \"Drawer.Root\";\n","import { Button as RaButton } from \"react-aria-components\";\nimport { DrawerTriggerSlot } from \"../drawer.slots\";\nimport type { DrawerTriggerProps } from \"../drawer.types\";\nimport { extractStyleProps } from \"@/utils\";\nimport { chakra } from \"@chakra-ui/react/styled-system\";\n\n/**\n * Drawer.Trigger - The trigger element that opens the drawer when activated\n *\n * @supportsStyleProps\n */\nexport const DrawerTrigger = ({\n ref: forwardedRef,\n children,\n asChild,\n ...props\n}: DrawerTriggerProps) => {\n // If asChild is true, wrap children directly in RaButton with asChild\n if (asChild) {\n return (\n <chakra.button ref={forwardedRef} asChild {...props}>\n {children}\n </chakra.button>\n );\n }\n\n const [styleProps, restProps] = extractStyleProps(props);\n\n // Otherwise, wrap with both DrawerTriggerSlot and RaButton\n // Only pass React Aria compatible props to avoid type conflicts\n return (\n <DrawerTriggerSlot {...styleProps} asChild>\n <RaButton ref={forwardedRef} {...restProps}>\n {children}\n </RaButton>\n </DrawerTriggerSlot>\n );\n};\n\nDrawerTrigger.displayName = \"Drawer.Trigger\";\n","import {\n Modal as RaModal,\n ModalOverlay as RaModalOverlay,\n Dialog as RaDialog,\n} from \"react-aria-components\";\nimport {\n DrawerModalOverlaySlot,\n DrawerModalSlot,\n DrawerContentSlot,\n} from \"../drawer.slots\";\nimport type { DrawerContentProps } from \"../drawer.types\";\nimport { extractStyleProps } from \"@/utils\";\nimport { useDrawerRootContext } from \"./drawer.context\";\n\n/**\n * Drawer.Content - The main drawer content container\n *\n * @supportsStyleProps\n */\nexport const DrawerContent = (props: DrawerContentProps) => {\n const { ref: forwardedRef, children, ...restProps } = props;\n\n // Get configuration from context\n const {\n hasDrawerTrigger,\n isDismissable = true, // Default to true so clicking outside closes the drawer\n isKeyboardDismissDisabled,\n shouldCloseOnInteractOutside,\n isOpen,\n onOpenChange,\n defaultOpen,\n } = useDrawerRootContext();\n\n // When there's a Drawer.Trigger, DialogTrigger manages state via React Context\n // When there's NO Drawer.Trigger, ModalOverlay must manage its own state\n const modalProps = hasDrawerTrigger\n ? {\n // With trigger: Only pass dismissal props, state is managed by DialogTrigger\n isDismissable,\n isKeyboardDismissDisabled,\n shouldCloseOnInteractOutside,\n }\n : {\n // Without trigger: Pass state management props to ModalOverlay\n isDismissable,\n isKeyboardDismissDisabled,\n shouldCloseOnInteractOutside,\n isOpen,\n onOpenChange,\n defaultOpen,\n };\n\n const [styleProps, functionalProps] = extractStyleProps(restProps);\n\n return (\n <DrawerModalOverlaySlot asChild>\n <RaModalOverlay {...modalProps}>\n <DrawerModalSlot asChild>\n <RaModal>\n <DrawerContentSlot asChild {...styleProps}>\n <RaDialog ref={forwardedRef} {...functionalProps}>\n {children}\n </RaDialog>\n </DrawerContentSlot>\n </RaModal>\n </DrawerModalSlot>\n </RaModalOverlay>\n </DrawerModalOverlaySlot>\n );\n};\n\nDrawerContent.displayName = \"Drawer.Content\";\n","import { DrawerHeaderSlot } from \"../drawer.slots\";\nimport type { DrawerHeaderProps } from \"../drawer.types\";\n\n/**\n * Drawer.Header - The header section of the drawer\n *\n * @supportsStyleProps\n */\nexport const DrawerHeader = (props: DrawerHeaderProps) => {\n const { ref: forwardedRef, children, ...restProps } = props;\n\n return (\n <DrawerHeaderSlot ref={forwardedRef} {...restProps}>\n {children}\n </DrawerHeaderSlot>\n );\n};\n\nDrawerHeader.displayName = \"Drawer.Header\";\n","import { DrawerBodySlot } from \"../drawer.slots\";\nimport type { DrawerBodyProps } from \"../drawer.types\";\n\n/**\n * Drawer.Body - The main body content section of the drawer\n *\n * @supportsStyleProps\n */\nexport const DrawerBody = (props: DrawerBodyProps) => {\n const { ref: forwardedRef, children, ...restProps } = props;\n\n const defaultProps = {\n /**\n * Set tabIndex to 0 to allow the body to receive focus,\n * effectively enabling scrolling via keyboard arrow keys.\n */\n tabIndex: 0,\n };\n\n return (\n <DrawerBodySlot ref={forwardedRef} {...defaultProps} {...restProps}>\n {children}\n </DrawerBodySlot>\n );\n};\n\nDrawerBody.displayName = \"Drawer.Body\";\n","import { DrawerFooterSlot } from \"../drawer.slots\";\nimport type { DrawerFooterProps } from \"../drawer.types\";\n\n/**\n * Drawer.Footer - The footer section of the drawer\n *\n * @supportsStyleProps\n */\nexport const DrawerFooter = (props: DrawerFooterProps) => {\n const { ref: forwardedRef, children, ...restProps } = props;\n\n return (\n <DrawerFooterSlot ref={forwardedRef} {...restProps}>\n {children}\n </DrawerFooterSlot>\n );\n};\n\nDrawerFooter.displayName = \"Drawer.Footer\";\n","import { DrawerTitleSlot } from \"../drawer.slots\";\nimport type { DrawerTitleProps } from \"../drawer.types\";\nimport { Heading } from \"@/components\";\n\n/**\n * Drawer.Title - The accessible title element for the drawer\n *\n * @supportsStyleProps\n */\nexport const DrawerTitle = (props: DrawerTitleProps) => {\n const { ref: forwardedRef, children, ...restProps } = props;\n\n return (\n <DrawerTitleSlot asChild {...restProps}>\n <Heading ref={forwardedRef} slot=\"title\" as=\"h2\" textStyle=\"lg\">\n {children}\n </Heading>\n </DrawerTitleSlot>\n );\n};\n\nDrawerTitle.displayName = \"Drawer.Title\";\n","/**\n * Pre-compiled en messages for Drawer\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { closeTrigger: `Close drawer` };\n","/**\n * Pre-compiled de messages for Drawer\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { closeTrigger: `Schublade schließen` };\n","/**\n * Pre-compiled es messages for Drawer\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { closeTrigger: `Cerrar bandeja` };\n","/**\n * Pre-compiled fr-FR messages for Drawer\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { closeTrigger: `Fermer le volet` };\n","/**\n * Pre-compiled pt-BR messages for Drawer\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { closeTrigger: `Fechar gaveta` };\n","/**\n * Pre-compiled localized messages for Drawer component\n *\n * Generated by scripts/generate-dictionaries.ts\n * DO NOT EDIT MANUALLY\n *\n * @see https://react-spectrum.adobe.com/react-aria/internationalization.html\n */\n\nimport {\n type LocalizedString,\n type LocalizedStrings,\n} from \"@internationalized/string\";\nimport { normalizeMessages } from \"../../utils/normalize-messages\";\n\n// Pre-compiled message functions\nimport drawerMessages_en from \"./intl/en\";\nimport drawerMessages_de from \"./intl/de\";\nimport drawerMessages_es from \"./intl/es\";\nimport drawerMessages_fr from \"./intl/fr-FR\";\nimport drawerMessages_pt from \"./intl/pt-BR\";\n\n// Raw LocalizedStrings object for use with useLocalizedStringFormatter hook\nexport const drawerMessagesStrings: LocalizedStrings<string, LocalizedString> =\n {\n en: normalizeMessages(drawerMessages_en),\n de: normalizeMessages(drawerMessages_de),\n es: normalizeMessages(drawerMessages_es),\n \"fr-FR\": normalizeMessages(drawerMessages_fr),\n \"pt-BR\": normalizeMessages(drawerMessages_pt),\n } as LocalizedStrings<string, LocalizedString>;\n\n/**\n * Available message keys for Drawer component\n */\nexport type DrawerMessageKey = \"closeTrigger\";\n","import { Close } from \"@commercetools/nimbus-icons\";\nimport { DrawerCloseTriggerSlot } from \"../drawer.slots\";\nimport type { DrawerCloseTriggerProps } from \"../drawer.types\";\nimport { IconButton } from \"@/components\";\nimport { useLocalizedStringFormatter } from \"@/hooks\";\nimport { drawerMessagesStrings } from \"../drawer.messages\";\n\n/**\n * Drawer.CloseTrigger - A button that closes the drawer when activated\n *\n * @supportsStyleProps\n */\nexport const DrawerCloseTrigger = (props: DrawerCloseTriggerProps) => {\n const msg = useLocalizedStringFormatter(drawerMessagesStrings);\n const { ref: forwardedRef, \"aria-label\": ariaLabel, ...restProps } = props;\n\n return (\n <DrawerCloseTriggerSlot>\n <IconButton\n ref={forwardedRef}\n slot=\"close\"\n size=\"xs\"\n variant=\"ghost\"\n aria-label={ariaLabel || msg.format(\"closeTrigger\")}\n {...restProps}\n >\n <Close />\n </IconButton>\n </DrawerCloseTriggerSlot>\n );\n};\n\nDrawerCloseTrigger.displayName = \"Drawer.CloseTrigger\";\n","import { DrawerRoot } from \"./components/drawer.root\";\nimport { DrawerTrigger } from \"./components/drawer.trigger\";\nimport { DrawerContent } from \"./components/drawer.content\";\nimport { DrawerHeader } from \"./components/drawer.header\";\nimport { DrawerBody } from \"./components/drawer.body\";\nimport { DrawerFooter } from \"./components/drawer.footer\";\nimport { DrawerTitle } from \"./components/drawer.title\";\nimport { DrawerCloseTrigger } from \"./components/drawer.close-trigger\";\n\n/**\n * Drawer\n * ============================================================\n * A foundational drawer component for overlays that require user attention.\n * Built for accessibility and WCAG 2.1 AA compliance.\n *\n * Features:\n * - Controlled and uncontrolled modes\n * - Customizable placement, size, and animations\n * - Focus management and keyboard navigation\n * - Click-outside and Escape key dismissal\n * - Portal rendering support\n * - Backdrop overlay with animations\n *\n * @example\n * ```tsx\n * <Drawer.Root>\n * <Drawer.Trigger>Open Drawer</Drawer.Trigger>\n * <Drawer.Content size=\"md\" placement=\"center\">\n * <Drawer.Header>\n * <Drawer.Title>Drawer Title</Drawer.Title>\n * <Drawer.CloseTrigger>×</Drawer.CloseTrigger>\n * </Drawer.Header>\n * <Drawer.Body>\n * Drawer content goes here\n * </Drawer.Body>\n * <Drawer.Footer>\n * <button>Cancel</button>\n * <button>Save</button>\n * </Drawer.Footer>\n * </Drawer.Content>\n * </Drawer.Root>\n * ```\n * @see https://nimbus-documentation.vercel.app/components/feedback/drawer\n */\nexport const Drawer = {\n /**\n * # Drawer.Root\n *\n * The root component that provides context and state management for the drawer.\n * Handles accessibility and keyboard interaction.\n *\n * This component must wrap all drawer parts (Trigger, Content, etc.) and provides\n * the drawer open/close state and variant styling context.\n *\n * @example\n * ```tsx\n * <Drawer.Root>\n * <Drawer.Trigger>Open Drawer</Drawer.Trigger>\n * <Drawer.Content>\n * <Drawer.Header>\n * <Drawer.Title>Drawer Title</Drawer.Title>\n * </Drawer.Header>\n * <Drawer.Body>Drawer content</Drawer.Body>\n * </Drawer.Content>\n * </Drawer.Root>\n * ```\n */\n Root: DrawerRoot,\n /**\n * # Drawer.Trigger\n *\n * The trigger element that opens the drawer when activated.\n * Provides accessibility and keyboard support.\n *\n * @example\n * ```tsx\n * <Drawer.Root>\n * <Drawer.Trigger>Open Drawer</Drawer.Trigger>\n * <Drawer.Content>...</Drawer.Content>\n * </Drawer.Root>\n * ```\n */\n Trigger: DrawerTrigger,\n /**\n * # Drawer.Content\n *\n * The main drawer content container that handles portalling, backdrop,\n * positioning, and content styling.\n *\n * This component creates the drawer overlay, positions the content, and provides\n * accessibility features like focus management and keyboard dismissal.\n *\n * @example\n * ```tsx\n * <Drawer.Root>\n * <Drawer.Trigger>Open Drawer</Drawer.Trigger>\n * <Drawer.Content size=\"md\" placement=\"center\">\n * <Drawer.Header>\n * <Drawer.Title>Title</Drawer.Title>\n * </Drawer.Header>\n * <Drawer.Body>Content</Drawer.Body>\n * <Drawer.Footer>Actions</Drawer.Footer>\n * </Drawer.Content>\n * </Drawer.Root>\n * ```\n */\n Content: DrawerContent,\n /**\n * # Drawer.Header\n *\n * The header section of the drawer content.\n * Typically contains the title and close button.\n *\n * @example\n * ```tsx\n * <Drawer.Content>\n * <Drawer.Header>\n * <Drawer.Title>Drawer Title</Drawer.Title>\n * <Drawer.CloseTrigger />\n * </Drawer.Header>\n * <Drawer.Body>...</Drawer.Body>\n * </Drawer.Content>\n * ```\n */\n Header: DrawerHeader,\n /**\n * # Drawer.Body\n *\n * The main body content section of the drawer.\n * Contains the primary drawer content and handles overflow/scrolling.\n *\n * @example\n * ```tsx\n * <Drawer.Content>\n * <Drawer.Header>...</Drawer.Header>\n * <Drawer.Body>\n * <p>This is the main content of the drawer.</p>\n * </Drawer.Body>\n * <Drawer.Footer>...</Drawer.Footer>\n * </Drawer.Content>\n * ```\n */\n Body: DrawerBody,\n /**\n * # Drawer.Footer\n *\n * The footer section of the drawer, typically containing action buttons.\n * Provides consistent spacing and alignment for drawer actions.\n *\n * @example\n * ```tsx\n * <Drawer.Content>\n * <Drawer.Header>...</Drawer.Header>\n * <Drawer.Body>...</Drawer.Body>\n * <Drawer.Footer>\n * <Button variant=\"outline\">Cancel</Button>\n * <Button>Confirm</Button>\n * </Drawer.Footer>\n * </Drawer.Content>\n * ```\n */\n Footer: DrawerFooter,\n /**\n * # Drawer.Title\n *\n * The accessible title element for the drawer.\n * Provides proper accessibility and screen reader support.\n *\n * @example\n * ```tsx\n * <Drawer.Content>\n * <Drawer.Header>\n * <Drawer.Title>Confirm Action</Drawer.Title>\n * </Drawer.Header>\n * <Drawer.Body>...</Drawer.Body>\n * </Drawer.Content>\n * ```\n */\n Title: DrawerTitle,\n /**\n * # Drawer.CloseTrigger\n *\n * A button that closes the drawer when activated.\n * Displays an IconButton with a close (X) icon by default.\n *\n * The component automatically handles the close behavior,\n * so no additional onPress handler is needed.\n *\n * @example\n * ```tsx\n * <Drawer.Root>\n * <Drawer.Trigger>Open Drawer</Drawer.Trigger>\n * <Drawer.Content>\n * <Drawer.Header>\n * <Drawer.Title>Title</Drawer.Title>\n * <Drawer.CloseTrigger aria-label=\"Close drawer\" />\n * </Drawer.Header>\n * <Drawer.Body>Content</Drawer.Body>\n * </Drawer.Content>\n * </Drawer.Root>\n * ```\n */\n CloseTrigger: DrawerCloseTrigger,\n};\n\n// Internal exports for react-docgen\nexport {\n DrawerRoot as _DrawerRoot,\n DrawerTrigger as _DrawerTrigger,\n DrawerContent as _DrawerContent,\n DrawerHeader as _DrawerHeader,\n DrawerBody as _DrawerBody,\n DrawerFooter as _DrawerFooter,\n DrawerTitle as _DrawerTitle,\n DrawerCloseTrigger as _DrawerCloseTrigger,\n};\n"],"mappings":";;;;;;;;;;;;;AAKA,IAAM,EAAE,iBAAc,mBAAgB,EAAwB,EAC5D,KAAK,eACP,CAAC,GAIY,IAAiB,EAC5B,OACA,MACF,GAIa,IAAoB,EAG/B,UAAU,SAAS,GAIR,IAAyB,EAGpC,OAAO,cAAc,GAIV,IAAkB,EAG7B,OAAO,OAAO,GAIH,IAAoB,EAG/B,OAAO,SAAS,GAIL,IAAmB,EAC9B,UACA,QACF,GAIa,IAAiB,EAC5B,OACA,MACF,GAIa,IAAmB,EAC9B,UACA,QACF,GAIa,IAAkB,EAG7B,MAAM,OAAO,GAIF,IAAyB,EAGpC,OAAO,cAAc,GC/DV,IAAgB,EAC3B,KAAA,CACF,GAOa,UAAiD;CAC5D,IAAM,IAAU,EAAW,CAAa;CACxC,IAAI,CAAC,GACH,MAAU,MAAM,kDAAkD;CAEpE,OAAO;AACT,GAKa,KAAkB,EAC7B,aACA,eAKO,kBAAC,GAAD;CAAsB;CAAQ;AAAwB,CAAA,GCjClD,KAAc,MAA2B;CAGpD,IAAM,CAAC,KAFQ,EAAc,EAAE,QAAQ,EAAiB,CAElC,CAAA,CAAO,kBAAkB,CAAK,GAE9C,EAAE,aAAU,WAAQ,iBAAc,iBAAc,OAAU,GAE1D,IAAU,kBAAC,GAAD;EAAgB,GAAI;EAAc;CAAyB,CAAA,GAIrE,IAAmB,EAAM,SAAS,QAAQ,CAAQ,CAAC,CAAC,MAAM,MAAU;EACxE,IAAI,EAAM,eAAe,CAAK,KAAK,OAAO,EAAM,QAAS,YAAY;GACnE,IAAM,IACJ,EAAM,MACL;GACH,OACE,MAAgB,mBAAmB,MAAgB;EAEvD;EACA,OAAO;CACT,CAAC;CAID,OACE,kBAAC,GAAD;EAAgB,OAAO;GAAE,GAAG;GAAO;EAAiB;YACjD,IAEC,kBAAC,GAAD;GACU;GACM;GACD;aAEZ;EACc,CAAA,IAGjB;CAEY,CAAA;AAEpB;AAEA,EAAW,cAAc;;;ACzCzB,IAAa,KAAiB,EAC5B,KAAK,GACL,aACA,YACA,GAAG,QACqB;CAExB,IAAI,GACF,OACE,kBAAC,EAAO,QAAR;EAAe,KAAK;EAAc,SAAA;EAAQ,GAAI;EAC3C;CACY,CAAA;CAInB,IAAM,CAAC,GAAY,KAAa,EAAkB,CAAK;CAIvD,OACE,kBAAC,GAAD;EAAmB,GAAI;EAAY,SAAA;YACjC,kBAAC,GAAD;GAAU,KAAK;GAAc,GAAI;GAC9B;EACO,CAAA;CACO,CAAA;AAEvB;AAEA,EAAc,cAAc;;;ACpB5B,IAAa,KAAiB,MAA8B;CAC1D,IAAM,EAAE,KAAK,GAAc,aAAU,GAAG,MAAc,GAGhD,EACJ,qBACA,mBAAgB,IAChB,8BACA,iCACA,WACA,iBACA,mBACE,EAAqB,GAInB,IAAa,IACf;EAEE;EACA;EACA;CACF,IACA;EAEE;EACA;EACA;EACA;EACA;EACA;CACF,GAEE,CAAC,GAAY,KAAmB,EAAkB,CAAS;CAEjE,OACE,kBAAC,GAAD;EAAwB,SAAA;YACtB,kBAAC,GAAD;GAAgB,GAAI;aAClB,kBAAC,GAAD;IAAiB,SAAA;cACf,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;KAAmB,SAAA;KAAQ,GAAI;eAC7B,kBAAC,GAAD;MAAU,KAAK;MAAc,GAAI;MAC9B;KACO,CAAA;IACO,CAAA,EACZ,CAAA;GACM,CAAA;EACH,CAAA;CACM,CAAA;AAE5B;AAEA,EAAc,cAAc;;;AC/D5B,IAAa,KAAgB,MAA6B;CACxD,IAAM,EAAE,KAAK,GAAc,aAAU,GAAG,MAAc;CAEtD,OACE,kBAAC,GAAD;EAAkB,KAAK;EAAc,GAAI;EACtC;CACe,CAAA;AAEtB;AAEA,EAAa,cAAc;;;ACV3B,IAAa,KAAc,MAA2B;CACpD,IAAM,EAAE,KAAK,GAAc,aAAU,GAAG,MAAc;CAUtD,OACE,kBAAC,GAAD;EAAgB,KAAK;EAJrB,UAAU;EAI2C,GAAI;EACtD;CACa,CAAA;AAEpB;AAEA,EAAW,cAAc;;;AClBzB,IAAa,KAAgB,MAA6B;CACxD,IAAM,EAAE,KAAK,GAAc,aAAU,GAAG,MAAc;CAEtD,OACE,kBAAC,GAAD;EAAkB,KAAK;EAAc,GAAI;EACtC;CACe,CAAA;AAEtB;AAEA,EAAa,cAAc;;;ACT3B,IAAa,KAAe,MAA4B;CACtD,IAAM,EAAE,KAAK,GAAc,aAAU,GAAG,MAAc;CAEtD,OACE,kBAAC,GAAD;EAAiB,SAAA;EAAQ,GAAI;YAC3B,kBAAC,GAAD;GAAS,KAAK;GAAc,MAAK;GAAQ,IAAG;GAAK,WAAU;GACxD;EACM,CAAA;CACM,CAAA;AAErB;AAEA,EAAY,cAAc;;;AME1B,IAAa,IACX;CACE,IAAI,EAAkB,ELnBT,cAAc,eKmBL,CAAiB;CACvC,IAAI,EAAkB,EJpBT,cAAc,sBIoBL,CAAiB;CACvC,IAAI,EAAkB,EHrBT,cAAc,iBGqBL,CAAiB;CACvC,SAAS,EAAkB,EFtBd,cAAc,kBEsBA,CAAiB;CAC5C,SAAS,EAAkB,EDvBd,cAAc,gBCuBA,CAAiB;AAC9C,GClBW,KAAsB,MAAmC;CACpE,IAAM,IAAM,EAA4B,CAAqB,GACvD,EAAE,KAAK,GAAc,cAAc,GAAW,GAAG,MAAc;CAErE,OACE,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;EACE,KAAK;EACL,MAAK;EACL,MAAK;EACL,SAAQ;EACR,cAAY,KAAa,EAAI,OAAO,cAAc;EAClD,GAAI;YAEJ,kBAAC,GAAD,CAAQ,CAAA;CACE,CAAA,EACU,CAAA;AAE5B;AAEA,EAAmB,cAAc;;;ACYjC,IAAa,IAAS;CAuBpB,MAAM;CAeN,SAAS;CAwBT,SAAS;CAkBT,QAAQ;CAkBR,MAAM;CAmBN,QAAQ;CAiBR,OAAO;CAwBP,cAAc;AAChB"}
1
+ {"version":3,"file":"drawer-Dsnrsu2k.esm.js","names":[],"sources":["../../src/components/drawer/drawer.slots.tsx","../../src/components/drawer/components/drawer.context.tsx","../../src/components/drawer/components/drawer.root.tsx","../../src/components/drawer/components/drawer.trigger.tsx","../../src/components/drawer/components/drawer.content.tsx","../../src/components/drawer/components/drawer.header.tsx","../../src/components/drawer/components/drawer.body.tsx","../../src/components/drawer/components/drawer.footer.tsx","../../src/components/drawer/components/drawer.title.tsx","../../src/components/drawer/intl/en.ts","../../src/components/drawer/intl/de.ts","../../src/components/drawer/intl/es.ts","../../src/components/drawer/intl/fr-FR.ts","../../src/components/drawer/intl/pt-BR.ts","../../src/components/drawer/drawer.messages.ts","../../src/components/drawer/components/drawer.close-trigger.tsx","../../src/components/drawer/drawer.tsx"],"sourcesContent":["import {\n createSlotRecipeContext,\n type HTMLChakraProps,\n} from \"@chakra-ui/react/styled-system\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"nimbusDrawer\",\n});\n\n// Root slot - provides recipe context + config to all child components\nexport type DrawerRootSlotProps = HTMLChakraProps<\"div\">;\nexport const DrawerRootSlot = withProvider<HTMLDivElement, DrawerRootSlotProps>(\n \"div\",\n \"root\"\n);\n\n// Trigger slot - button that opens the drawer\nexport type DrawerTriggerSlotProps = HTMLChakraProps<\"button\">;\nexport const DrawerTriggerSlot = withContext<\n HTMLButtonElement,\n DrawerTriggerSlotProps\n>(\"button\", \"trigger\");\n\n// Backdrop slot - overlay displayed behind the drawer\nexport type DrawerModalOverlaySlotProps = HTMLChakraProps<\"div\">;\nexport const DrawerModalOverlaySlot = withContext<\n HTMLDivElement,\n DrawerModalOverlaySlotProps\n>(\"div\", \"modalOverlay\");\n\n// modal slot - positions the drawer content\nexport type DrawerModalSlotProps = HTMLChakraProps<\"div\">;\nexport const DrawerModalSlot = withContext<\n HTMLDivElement,\n DrawerModalSlotProps\n>(\"div\", \"modal\");\n\n// Content slot - main drawer container\nexport type DrawerContentSlotProps = HTMLChakraProps<\"div\">;\nexport const DrawerContentSlot = withContext<\n HTMLDivElement,\n DrawerContentSlotProps\n>(\"div\", \"content\");\n\n// Header slot - drawer header section\nexport type DrawerHeaderSlotProps = HTMLChakraProps<\"header\">;\nexport const DrawerHeaderSlot = withContext<HTMLElement, DrawerHeaderSlotProps>(\n \"header\",\n \"header\"\n);\n\n// Body slot - drawer body content\nexport type DrawerBodySlotProps = HTMLChakraProps<\"div\">;\nexport const DrawerBodySlot = withContext<HTMLDivElement, DrawerBodySlotProps>(\n \"div\",\n \"body\"\n);\n\n// Footer slot - drawer footer section with actions\nexport type DrawerFooterSlotProps = HTMLChakraProps<\"footer\">;\nexport const DrawerFooterSlot = withContext<HTMLElement, DrawerFooterSlotProps>(\n \"footer\",\n \"footer\"\n);\n\n// Title slot - accessible drawer title\nexport type DrawerTitleSlotProps = HTMLChakraProps<\"h2\">;\nexport const DrawerTitleSlot = withContext<\n HTMLHeadingElement,\n DrawerTitleSlotProps\n>(\"h2\", \"title\");\n\n// Close trigger slot - div container for positioning close button\nexport type DrawerCloseTriggerSlotProps = HTMLChakraProps<\"div\">;\nexport const DrawerCloseTriggerSlot = withContext<\n HTMLDivElement,\n DrawerCloseTriggerSlotProps\n>(\"div\", \"closeTrigger\");\n","import { createContext, useContext } from \"react\";\nimport type { DrawerRootProps } from \"../drawer.types\";\n\n/**\n * Context value containing drawer configuration passed from Root to child components\n */\nexport type DrawerContextValue = DrawerRootProps & {\n /**\n * Internal flag indicating whether the drawer has a Drawer.Trigger component.\n * Used by DrawerContent to determine whether DialogTrigger is managing state.\n */\n hasDrawerTrigger?: boolean;\n};\n\nexport const DrawerContext = createContext<DrawerContextValue | undefined>(\n undefined\n);\n\n/**\n * Hook to access drawer configuration from DrawerContext\n * @returns Drawer configuration from context\n * @throws Error if used outside of Drawer.Root\n */\nexport const useDrawerRootContext = (): DrawerContextValue => {\n const context = useContext(DrawerContext);\n if (!context) {\n throw new Error(\"useDrawerContext must be used within Drawer.Root\");\n }\n return context;\n};\n\n/**\n * Provider component that passes drawer configuration down to child components\n */\nexport const DrawerProvider = ({\n children,\n value,\n}: {\n children: React.ReactNode;\n value: DrawerContextValue;\n}) => {\n return <DrawerContext value={value}>{children}</DrawerContext>;\n};\n","import React from \"react\";\nimport { DialogTrigger as RaDialogTrigger } from \"react-aria-components\";\nimport { useSlotRecipe } from \"@chakra-ui/react/styled-system\";\nimport { DrawerRootSlot } from \"../drawer.slots\";\nimport type { DrawerRootProps } from \"../drawer.types\";\nimport { DrawerProvider } from \"./drawer.context\";\nimport { drawerSlotRecipe } from \"../drawer.recipe\";\n\nexport const DrawerRoot = (props: DrawerRootProps) => {\n const recipe = useSlotRecipe({ recipe: drawerSlotRecipe });\n // Extract recipe props\n const [recipeProps] = recipe.splitVariantProps(props);\n // Extract props that are usable on RaDialogTrigger\n const { children, isOpen, onOpenChange, defaultOpen = false } = props;\n\n const content = <DrawerRootSlot {...recipeProps}>{children}</DrawerRootSlot>;\n\n // Check if any child is a Drawer.Trigger component\n // React Aria's DialogTrigger needs a pressable child, so we only use it when there's a trigger\n const hasDrawerTrigger = React.Children.toArray(children).some((child) => {\n if (React.isValidElement(child) && typeof child.type === \"function\") {\n const displayName = (\n child.type as React.ComponentType & { displayName?: string }\n )?.displayName;\n return (\n displayName === \"DrawerTrigger\" || displayName === \"Drawer.Trigger\"\n );\n }\n return false;\n });\n\n // Share all props (config + variant props) with the Drawer subcomponents\n // Also pass hasDrawerTrigger so DrawerContent knows whether to manage its own state\n return (\n <DrawerProvider value={{ ...props, hasDrawerTrigger }}>\n {hasDrawerTrigger ? (\n // When there's a Drawer.Trigger, use DialogTrigger for React Aria integration\n <RaDialogTrigger\n isOpen={isOpen}\n onOpenChange={onOpenChange}\n defaultOpen={defaultOpen}\n >\n {content}\n </RaDialogTrigger>\n ) : (\n // When no Drawer.Trigger, skip DialogTrigger to avoid the warning\n content\n )}\n </DrawerProvider>\n );\n};\n\nDrawerRoot.displayName = \"Drawer.Root\";\n","import { Button as RaButton } from \"react-aria-components\";\nimport { DrawerTriggerSlot } from \"../drawer.slots\";\nimport type { DrawerTriggerProps } from \"../drawer.types\";\nimport { extractStyleProps } from \"@/utils\";\nimport { chakra } from \"@chakra-ui/react/styled-system\";\n\n/**\n * Drawer.Trigger - The trigger element that opens the drawer when activated\n *\n * @supportsStyleProps\n */\nexport const DrawerTrigger = ({\n ref: forwardedRef,\n children,\n asChild,\n ...props\n}: DrawerTriggerProps) => {\n // If asChild is true, wrap children directly in RaButton with asChild\n if (asChild) {\n return (\n <chakra.button ref={forwardedRef} asChild {...props}>\n {children}\n </chakra.button>\n );\n }\n\n const [styleProps, restProps] = extractStyleProps(props);\n\n // Otherwise, wrap with both DrawerTriggerSlot and RaButton\n // Only pass React Aria compatible props to avoid type conflicts\n return (\n <DrawerTriggerSlot {...styleProps} asChild>\n <RaButton ref={forwardedRef} {...restProps}>\n {children}\n </RaButton>\n </DrawerTriggerSlot>\n );\n};\n\nDrawerTrigger.displayName = \"Drawer.Trigger\";\n","import {\n Modal as RaModal,\n ModalOverlay as RaModalOverlay,\n Dialog as RaDialog,\n} from \"react-aria-components\";\nimport {\n DrawerModalOverlaySlot,\n DrawerModalSlot,\n DrawerContentSlot,\n} from \"../drawer.slots\";\nimport type { DrawerContentProps } from \"../drawer.types\";\nimport { extractStyleProps } from \"@/utils\";\nimport { useDrawerRootContext } from \"./drawer.context\";\n\n/**\n * Drawer.Content - The main drawer content container\n *\n * @supportsStyleProps\n */\nexport const DrawerContent = (props: DrawerContentProps) => {\n const { ref: forwardedRef, children, ...restProps } = props;\n\n // Get configuration from context\n const {\n hasDrawerTrigger,\n isDismissable = true, // Default to true so clicking outside closes the drawer\n isKeyboardDismissDisabled,\n shouldCloseOnInteractOutside,\n isOpen,\n onOpenChange,\n defaultOpen,\n } = useDrawerRootContext();\n\n // When there's a Drawer.Trigger, DialogTrigger manages state via React Context\n // When there's NO Drawer.Trigger, ModalOverlay must manage its own state\n const modalProps = hasDrawerTrigger\n ? {\n // With trigger: Only pass dismissal props, state is managed by DialogTrigger\n isDismissable,\n isKeyboardDismissDisabled,\n shouldCloseOnInteractOutside,\n }\n : {\n // Without trigger: Pass state management props to ModalOverlay\n isDismissable,\n isKeyboardDismissDisabled,\n shouldCloseOnInteractOutside,\n isOpen,\n onOpenChange,\n defaultOpen,\n };\n\n const [styleProps, functionalProps] = extractStyleProps(restProps);\n\n return (\n <DrawerModalOverlaySlot asChild>\n <RaModalOverlay {...modalProps}>\n <DrawerModalSlot asChild>\n <RaModal>\n <DrawerContentSlot asChild {...styleProps}>\n <RaDialog ref={forwardedRef} {...functionalProps}>\n {children}\n </RaDialog>\n </DrawerContentSlot>\n </RaModal>\n </DrawerModalSlot>\n </RaModalOverlay>\n </DrawerModalOverlaySlot>\n );\n};\n\nDrawerContent.displayName = \"Drawer.Content\";\n","import { DrawerHeaderSlot } from \"../drawer.slots\";\nimport type { DrawerHeaderProps } from \"../drawer.types\";\n\n/**\n * Drawer.Header - The header section of the drawer\n *\n * @supportsStyleProps\n */\nexport const DrawerHeader = (props: DrawerHeaderProps) => {\n const { ref: forwardedRef, children, ...restProps } = props;\n\n return (\n <DrawerHeaderSlot ref={forwardedRef} {...restProps}>\n {children}\n </DrawerHeaderSlot>\n );\n};\n\nDrawerHeader.displayName = \"Drawer.Header\";\n","import { DrawerBodySlot } from \"../drawer.slots\";\nimport type { DrawerBodyProps } from \"../drawer.types\";\n\n/**\n * Drawer.Body - The main body content section of the drawer\n *\n * @supportsStyleProps\n */\nexport const DrawerBody = (props: DrawerBodyProps) => {\n const { ref: forwardedRef, children, ...restProps } = props;\n\n const defaultProps = {\n /**\n * Set tabIndex to 0 to allow the body to receive focus,\n * effectively enabling scrolling via keyboard arrow keys.\n */\n tabIndex: 0,\n };\n\n return (\n <DrawerBodySlot ref={forwardedRef} {...defaultProps} {...restProps}>\n {children}\n </DrawerBodySlot>\n );\n};\n\nDrawerBody.displayName = \"Drawer.Body\";\n","import { DrawerFooterSlot } from \"../drawer.slots\";\nimport type { DrawerFooterProps } from \"../drawer.types\";\n\n/**\n * Drawer.Footer - The footer section of the drawer\n *\n * @supportsStyleProps\n */\nexport const DrawerFooter = (props: DrawerFooterProps) => {\n const { ref: forwardedRef, children, ...restProps } = props;\n\n return (\n <DrawerFooterSlot ref={forwardedRef} {...restProps}>\n {children}\n </DrawerFooterSlot>\n );\n};\n\nDrawerFooter.displayName = \"Drawer.Footer\";\n","import { DrawerTitleSlot } from \"../drawer.slots\";\nimport type { DrawerTitleProps } from \"../drawer.types\";\nimport { Heading } from \"@/components\";\n\n/**\n * Drawer.Title - The accessible title element for the drawer\n *\n * @supportsStyleProps\n */\nexport const DrawerTitle = (props: DrawerTitleProps) => {\n const { ref: forwardedRef, children, ...restProps } = props;\n\n return (\n <DrawerTitleSlot asChild {...restProps}>\n <Heading ref={forwardedRef} slot=\"title\" as=\"h2\" textStyle=\"lg\">\n {children}\n </Heading>\n </DrawerTitleSlot>\n );\n};\n\nDrawerTitle.displayName = \"Drawer.Title\";\n","/**\n * Pre-compiled en messages for Drawer\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { closeTrigger: `Close drawer` };\n","/**\n * Pre-compiled de messages for Drawer\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { closeTrigger: `Schublade schließen` };\n","/**\n * Pre-compiled es messages for Drawer\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { closeTrigger: `Cerrar bandeja` };\n","/**\n * Pre-compiled fr-FR messages for Drawer\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { closeTrigger: `Fermer le volet` };\n","/**\n * Pre-compiled pt-BR messages for Drawer\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { closeTrigger: `Fechar gaveta` };\n","/**\n * Pre-compiled localized messages for Drawer component\n *\n * Generated by scripts/generate-dictionaries.ts\n * DO NOT EDIT MANUALLY\n *\n * @see https://react-spectrum.adobe.com/react-aria/internationalization.html\n */\n\nimport {\n type LocalizedString,\n type LocalizedStrings,\n} from \"@internationalized/string\";\nimport { normalizeMessages } from \"../../utils/normalize-messages\";\n\n// Pre-compiled message functions\nimport drawerMessages_en from \"./intl/en\";\nimport drawerMessages_de from \"./intl/de\";\nimport drawerMessages_es from \"./intl/es\";\nimport drawerMessages_fr from \"./intl/fr-FR\";\nimport drawerMessages_pt from \"./intl/pt-BR\";\n\n// Raw LocalizedStrings object for use with useLocalizedStringFormatter hook\nexport const drawerMessagesStrings: LocalizedStrings<string, LocalizedString> =\n {\n en: normalizeMessages(drawerMessages_en),\n de: normalizeMessages(drawerMessages_de),\n es: normalizeMessages(drawerMessages_es),\n \"fr-FR\": normalizeMessages(drawerMessages_fr),\n \"pt-BR\": normalizeMessages(drawerMessages_pt),\n } as LocalizedStrings<string, LocalizedString>;\n\n/**\n * Available message keys for Drawer component\n */\nexport type DrawerMessageKey = \"closeTrigger\";\n","import { Close } from \"@commercetools/nimbus-icons\";\nimport { DrawerCloseTriggerSlot } from \"../drawer.slots\";\nimport type { DrawerCloseTriggerProps } from \"../drawer.types\";\nimport { IconButton } from \"@/components\";\nimport { useLocalizedStringFormatter } from \"@/hooks\";\nimport { drawerMessagesStrings } from \"../drawer.messages\";\n\n/**\n * Drawer.CloseTrigger - A button that closes the drawer when activated\n *\n * @supportsStyleProps\n */\nexport const DrawerCloseTrigger = (props: DrawerCloseTriggerProps) => {\n const msg = useLocalizedStringFormatter(drawerMessagesStrings);\n const { ref: forwardedRef, \"aria-label\": ariaLabel, ...restProps } = props;\n\n return (\n <DrawerCloseTriggerSlot>\n <IconButton\n ref={forwardedRef}\n slot=\"close\"\n size=\"xs\"\n variant=\"ghost\"\n aria-label={ariaLabel || msg.format(\"closeTrigger\")}\n {...restProps}\n >\n <Close />\n </IconButton>\n </DrawerCloseTriggerSlot>\n );\n};\n\nDrawerCloseTrigger.displayName = \"Drawer.CloseTrigger\";\n","import { DrawerRoot } from \"./components/drawer.root\";\nimport { DrawerTrigger } from \"./components/drawer.trigger\";\nimport { DrawerContent } from \"./components/drawer.content\";\nimport { DrawerHeader } from \"./components/drawer.header\";\nimport { DrawerBody } from \"./components/drawer.body\";\nimport { DrawerFooter } from \"./components/drawer.footer\";\nimport { DrawerTitle } from \"./components/drawer.title\";\nimport { DrawerCloseTrigger } from \"./components/drawer.close-trigger\";\n\n/**\n * Drawer\n * ============================================================\n * A foundational drawer component for overlays that require user attention.\n * Built for accessibility and WCAG 2.1 AA compliance.\n *\n * Features:\n * - Controlled and uncontrolled modes\n * - Customizable placement, size, and animations\n * - Focus management and keyboard navigation\n * - Click-outside and Escape key dismissal\n * - Portal rendering support\n * - Backdrop overlay with animations\n *\n * @example\n * ```tsx\n * <Drawer.Root>\n * <Drawer.Trigger>Open Drawer</Drawer.Trigger>\n * <Drawer.Content size=\"md\" placement=\"center\">\n * <Drawer.Header>\n * <Drawer.Title>Drawer Title</Drawer.Title>\n * <Drawer.CloseTrigger>×</Drawer.CloseTrigger>\n * </Drawer.Header>\n * <Drawer.Body>\n * Drawer content goes here\n * </Drawer.Body>\n * <Drawer.Footer>\n * <button>Cancel</button>\n * <button>Save</button>\n * </Drawer.Footer>\n * </Drawer.Content>\n * </Drawer.Root>\n * ```\n * @see https://nimbus-documentation.vercel.app/components/feedback/drawer\n */\nexport const Drawer = {\n /**\n * # Drawer.Root\n *\n * The root component that provides context and state management for the drawer.\n * Handles accessibility and keyboard interaction.\n *\n * This component must wrap all drawer parts (Trigger, Content, etc.) and provides\n * the drawer open/close state and variant styling context.\n *\n * @example\n * ```tsx\n * <Drawer.Root>\n * <Drawer.Trigger>Open Drawer</Drawer.Trigger>\n * <Drawer.Content>\n * <Drawer.Header>\n * <Drawer.Title>Drawer Title</Drawer.Title>\n * </Drawer.Header>\n * <Drawer.Body>Drawer content</Drawer.Body>\n * </Drawer.Content>\n * </Drawer.Root>\n * ```\n */\n Root: DrawerRoot,\n /**\n * # Drawer.Trigger\n *\n * The trigger element that opens the drawer when activated.\n * Provides accessibility and keyboard support.\n *\n * @example\n * ```tsx\n * <Drawer.Root>\n * <Drawer.Trigger>Open Drawer</Drawer.Trigger>\n * <Drawer.Content>...</Drawer.Content>\n * </Drawer.Root>\n * ```\n */\n Trigger: DrawerTrigger,\n /**\n * # Drawer.Content\n *\n * The main drawer content container that handles portalling, backdrop,\n * positioning, and content styling.\n *\n * This component creates the drawer overlay, positions the content, and provides\n * accessibility features like focus management and keyboard dismissal.\n *\n * @example\n * ```tsx\n * <Drawer.Root>\n * <Drawer.Trigger>Open Drawer</Drawer.Trigger>\n * <Drawer.Content size=\"md\" placement=\"center\">\n * <Drawer.Header>\n * <Drawer.Title>Title</Drawer.Title>\n * </Drawer.Header>\n * <Drawer.Body>Content</Drawer.Body>\n * <Drawer.Footer>Actions</Drawer.Footer>\n * </Drawer.Content>\n * </Drawer.Root>\n * ```\n */\n Content: DrawerContent,\n /**\n * # Drawer.Header\n *\n * The header section of the drawer content.\n * Typically contains the title and close button.\n *\n * @example\n * ```tsx\n * <Drawer.Content>\n * <Drawer.Header>\n * <Drawer.Title>Drawer Title</Drawer.Title>\n * <Drawer.CloseTrigger />\n * </Drawer.Header>\n * <Drawer.Body>...</Drawer.Body>\n * </Drawer.Content>\n * ```\n */\n Header: DrawerHeader,\n /**\n * # Drawer.Body\n *\n * The main body content section of the drawer.\n * Contains the primary drawer content and handles overflow/scrolling.\n *\n * @example\n * ```tsx\n * <Drawer.Content>\n * <Drawer.Header>...</Drawer.Header>\n * <Drawer.Body>\n * <p>This is the main content of the drawer.</p>\n * </Drawer.Body>\n * <Drawer.Footer>...</Drawer.Footer>\n * </Drawer.Content>\n * ```\n */\n Body: DrawerBody,\n /**\n * # Drawer.Footer\n *\n * The footer section of the drawer, typically containing action buttons.\n * Provides consistent spacing and alignment for drawer actions.\n *\n * @example\n * ```tsx\n * <Drawer.Content>\n * <Drawer.Header>...</Drawer.Header>\n * <Drawer.Body>...</Drawer.Body>\n * <Drawer.Footer>\n * <Button variant=\"outline\">Cancel</Button>\n * <Button>Confirm</Button>\n * </Drawer.Footer>\n * </Drawer.Content>\n * ```\n */\n Footer: DrawerFooter,\n /**\n * # Drawer.Title\n *\n * The accessible title element for the drawer.\n * Provides proper accessibility and screen reader support.\n *\n * @example\n * ```tsx\n * <Drawer.Content>\n * <Drawer.Header>\n * <Drawer.Title>Confirm Action</Drawer.Title>\n * </Drawer.Header>\n * <Drawer.Body>...</Drawer.Body>\n * </Drawer.Content>\n * ```\n */\n Title: DrawerTitle,\n /**\n * # Drawer.CloseTrigger\n *\n * A button that closes the drawer when activated.\n * Displays an IconButton with a close (X) icon by default.\n *\n * The component automatically handles the close behavior,\n * so no additional onPress handler is needed.\n *\n * @example\n * ```tsx\n * <Drawer.Root>\n * <Drawer.Trigger>Open Drawer</Drawer.Trigger>\n * <Drawer.Content>\n * <Drawer.Header>\n * <Drawer.Title>Title</Drawer.Title>\n * <Drawer.CloseTrigger aria-label=\"Close drawer\" />\n * </Drawer.Header>\n * <Drawer.Body>Content</Drawer.Body>\n * </Drawer.Content>\n * </Drawer.Root>\n * ```\n */\n CloseTrigger: DrawerCloseTrigger,\n};\n\n// Internal exports for react-docgen\nexport {\n DrawerRoot as _DrawerRoot,\n DrawerTrigger as _DrawerTrigger,\n DrawerContent as _DrawerContent,\n DrawerHeader as _DrawerHeader,\n DrawerBody as _DrawerBody,\n DrawerFooter as _DrawerFooter,\n DrawerTitle as _DrawerTitle,\n DrawerCloseTrigger as _DrawerCloseTrigger,\n};\n"],"mappings":";;;;;;;;;;;;;AAKA,IAAM,EAAE,iBAAc,mBAAgB,EAAwB,EAC5D,KAAK,eACP,CAAC,GAIY,IAAiB,EAC5B,OACA,MACF,GAIa,IAAoB,EAG/B,UAAU,SAAS,GAIR,IAAyB,EAGpC,OAAO,cAAc,GAIV,IAAkB,EAG7B,OAAO,OAAO,GAIH,IAAoB,EAG/B,OAAO,SAAS,GAIL,IAAmB,EAC9B,UACA,QACF,GAIa,IAAiB,EAC5B,OACA,MACF,GAIa,IAAmB,EAC9B,UACA,QACF,GAIa,IAAkB,EAG7B,MAAM,OAAO,GAIF,IAAyB,EAGpC,OAAO,cAAc,GC/DV,IAAgB,EAC3B,KAAA,CACF,GAOa,UAAiD;CAC5D,IAAM,IAAU,EAAW,CAAa;CACxC,IAAI,CAAC,GACH,MAAU,MAAM,kDAAkD;CAEpE,OAAO;AACT,GAKa,KAAkB,EAC7B,aACA,eAKO,kBAAC,GAAD;CAAsB;CAAQ;AAAwB,CAAA,GCjClD,KAAc,MAA2B;CAGpD,IAAM,CAAC,KAFQ,EAAc,EAAE,QAAQ,EAAiB,CAElC,CAAA,CAAO,kBAAkB,CAAK,GAE9C,EAAE,aAAU,WAAQ,iBAAc,iBAAc,OAAU,GAE1D,IAAU,kBAAC,GAAD;EAAgB,GAAI;EAAc;CAAyB,CAAA,GAIrE,IAAmB,EAAM,SAAS,QAAQ,CAAQ,CAAC,CAAC,MAAM,MAAU;EACxE,IAAI,EAAM,eAAe,CAAK,KAAK,OAAO,EAAM,QAAS,YAAY;GACnE,IAAM,IACJ,EAAM,MACL;GACH,OACE,MAAgB,mBAAmB,MAAgB;EAEvD;EACA,OAAO;CACT,CAAC;CAID,OACE,kBAAC,GAAD;EAAgB,OAAO;GAAE,GAAG;GAAO;EAAiB;YACjD,IAEC,kBAAC,GAAD;GACU;GACM;GACD;aAEZ;EACc,CAAA,IAGjB;CAEY,CAAA;AAEpB;AAEA,EAAW,cAAc;;;ACzCzB,IAAa,KAAiB,EAC5B,KAAK,GACL,aACA,YACA,GAAG,QACqB;CAExB,IAAI,GACF,OACE,kBAAC,EAAO,QAAR;EAAe,KAAK;EAAc,SAAA;EAAQ,GAAI;EAC3C;CACY,CAAA;CAInB,IAAM,CAAC,GAAY,KAAa,EAAkB,CAAK;CAIvD,OACE,kBAAC,GAAD;EAAmB,GAAI;EAAY,SAAA;YACjC,kBAAC,GAAD;GAAU,KAAK;GAAc,GAAI;GAC9B;EACO,CAAA;CACO,CAAA;AAEvB;AAEA,EAAc,cAAc;;;ACpB5B,IAAa,KAAiB,MAA8B;CAC1D,IAAM,EAAE,KAAK,GAAc,aAAU,GAAG,MAAc,GAGhD,EACJ,qBACA,mBAAgB,IAChB,8BACA,iCACA,WACA,iBACA,mBACE,EAAqB,GAInB,IAAa,IACf;EAEE;EACA;EACA;CACF,IACA;EAEE;EACA;EACA;EACA;EACA;EACA;CACF,GAEE,CAAC,GAAY,KAAmB,EAAkB,CAAS;CAEjE,OACE,kBAAC,GAAD;EAAwB,SAAA;YACtB,kBAAC,GAAD;GAAgB,GAAI;aAClB,kBAAC,GAAD;IAAiB,SAAA;cACf,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;KAAmB,SAAA;KAAQ,GAAI;eAC7B,kBAAC,GAAD;MAAU,KAAK;MAAc,GAAI;MAC9B;KACO,CAAA;IACO,CAAA,EACZ,CAAA;GACM,CAAA;EACH,CAAA;CACM,CAAA;AAE5B;AAEA,EAAc,cAAc;;;AC/D5B,IAAa,KAAgB,MAA6B;CACxD,IAAM,EAAE,KAAK,GAAc,aAAU,GAAG,MAAc;CAEtD,OACE,kBAAC,GAAD;EAAkB,KAAK;EAAc,GAAI;EACtC;CACe,CAAA;AAEtB;AAEA,EAAa,cAAc;;;ACV3B,IAAa,KAAc,MAA2B;CACpD,IAAM,EAAE,KAAK,GAAc,aAAU,GAAG,MAAc;CAUtD,OACE,kBAAC,GAAD;EAAgB,KAAK;EAJrB,UAAU;EAI2C,GAAI;EACtD;CACa,CAAA;AAEpB;AAEA,EAAW,cAAc;;;AClBzB,IAAa,KAAgB,MAA6B;CACxD,IAAM,EAAE,KAAK,GAAc,aAAU,GAAG,MAAc;CAEtD,OACE,kBAAC,GAAD;EAAkB,KAAK;EAAc,GAAI;EACtC;CACe,CAAA;AAEtB;AAEA,EAAa,cAAc;;;ACT3B,IAAa,KAAe,MAA4B;CACtD,IAAM,EAAE,KAAK,GAAc,aAAU,GAAG,MAAc;CAEtD,OACE,kBAAC,GAAD;EAAiB,SAAA;EAAQ,GAAI;YAC3B,kBAAC,GAAD;GAAS,KAAK;GAAc,MAAK;GAAQ,IAAG;GAAK,WAAU;GACxD;EACM,CAAA;CACM,CAAA;AAErB;AAEA,EAAY,cAAc;;;AME1B,IAAa,IACX;CACE,IAAI,EAAkB,ELnBT,cAAc,eKmBL,CAAiB;CACvC,IAAI,EAAkB,EJpBT,cAAc,sBIoBL,CAAiB;CACvC,IAAI,EAAkB,EHrBT,cAAc,iBGqBL,CAAiB;CACvC,SAAS,EAAkB,EFtBd,cAAc,kBEsBA,CAAiB;CAC5C,SAAS,EAAkB,EDvBd,cAAc,gBCuBA,CAAiB;AAC9C,GClBW,KAAsB,MAAmC;CACpE,IAAM,IAAM,EAA4B,CAAqB,GACvD,EAAE,KAAK,GAAc,cAAc,GAAW,GAAG,MAAc;CAErE,OACE,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;EACE,KAAK;EACL,MAAK;EACL,MAAK;EACL,SAAQ;EACR,cAAY,KAAa,EAAI,OAAO,cAAc;EAClD,GAAI;YAEJ,kBAAC,GAAD,CAAQ,CAAA;CACE,CAAA,EACU,CAAA;AAE5B;AAEA,EAAmB,cAAc;;;ACYjC,IAAa,IAAS;CAuBpB,MAAM;CAeN,SAAS;CAwBT,SAAS;CAkBT,QAAQ;CAkBR,MAAM;CAmBN,QAAQ;CAiBR,OAAO;CAwBP,cAAc;AAChB"}
@@ -16,7 +16,7 @@ import { n as C, t as w } from "./Text-B7tENZ_I.esm.js";
16
16
  import { t as T } from "./intlStrings-DTJ9HMKY.esm.js";
17
17
  import { n as E, t as D } from "./normalize-messages-B_f-0I5n.esm.js";
18
18
  import { t as O } from "./icon-CSCRP1_5.esm.js";
19
- import { t as k } from "./extract-style-props-BPnHKmWR.esm.js";
19
+ import { t as k } from "./extract-style-props-D519tVOc.esm.js";
20
20
  import { t as A } from "./merge-refs-C1GcH9iY.esm.js";
21
21
  import j, { Children as M, createContext as N, forwardRef as P, useEffect as F, useRef as I } from "react";
22
22
  import { Fragment as L, jsx as R, jsxs as z } from "react/jsx-runtime";
@@ -125,10 +125,10 @@ var q = /*#__PURE__*/ N(null), J = /*#__PURE__*/ P(function(r, o) {
125
125
  })), B.children));
126
126
  }), { withContext: Y } = V({ key: "nimbusDropZone" }), X = Y("div"), Z = {
127
127
  en: D({ defaultLabel: "Drag and drop files here" }),
128
- de: D({ defaultLabel: "Drag and drop files here" }),
129
- es: D({ defaultLabel: "Drag and drop files here" }),
130
- "fr-FR": D({ defaultLabel: "Drag and drop files here" }),
131
- "pt-BR": D({ defaultLabel: "Drag and drop files here" })
128
+ de: D({ defaultLabel: "Dateinen per Drag & Drop hier ablegen" }),
129
+ es: D({ defaultLabel: "Arrastar y soltar archivos aquí" }),
130
+ "fr-FR": D({ defaultLabel: "Glissez-déposez les fichiers ici" }),
131
+ "pt-BR": D({ defaultLabel: "Arraste e solte arquivos aqui" })
132
132
  }, Q = (e) => {
133
133
  let { ref: t, children: n, ...r } = e, [i, a] = H({ key: "nimbusDropZone" }).splitVariantProps({ ...r }), [o, c] = k(a), l = s(A(I(null), t)), u = E(Z), d = M.count(n) > 0, f = !!(e["aria-label"] || e["aria-labelledby"]), p = u.format("defaultLabel");
134
134
  return /* @__PURE__ */ R(X, {
@@ -154,4 +154,4 @@ Q.displayName = "DropZone";
154
154
  //#endregion
155
155
  export { Q as t };
156
156
 
157
- //# sourceMappingURL=drop-zone-vRl7IFzc.esm.js.map
157
+ //# sourceMappingURL=drop-zone-BKJQrFGG.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"drop-zone-vRl7IFzc.esm.js","names":["$d3JvD$useRef","$d3JvD$useEffect","$7DqZ6$createContext","$7DqZ6$forwardRef","$7DqZ6$useObjectRef","$7DqZ6$useRef","$7DqZ6$useDrop","$7DqZ6$useButton","$7DqZ6$useHover","$7DqZ6$useFocusRing","$7DqZ6$useLocalizedStringFormatter","$7DqZ6$intlStringsmjs","$7DqZ6$useSlotId","$7DqZ6$useLabels","$7DqZ6$useClipboard","$7DqZ6$filterDOMProps","$7DqZ6$react","$7DqZ6$mergeProps","$7DqZ6$getEventTarget","$7DqZ6$nodeContains","$7DqZ6$isFocusable","$7DqZ6$VisuallyHidden"],"sources":["../../../../node_modules/.pnpm/react-aria@3.50.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/react-aria/dist/private/dnd/useClipboard.mjs","../../../../node_modules/.pnpm/react-aria-components@1.19.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/react-aria-components/dist/private/DropZone.mjs","../../src/components/drop-zone/drop-zone.slots.tsx","../../src/components/drop-zone/intl/en.ts","../../src/components/drop-zone/intl/de.ts","../../src/components/drop-zone/intl/es.ts","../../src/components/drop-zone/intl/fr-FR.ts","../../src/components/drop-zone/intl/pt-BR.ts","../../src/components/drop-zone/drop-zone.messages.ts","../../src/components/drop-zone/drop-zone.tsx"],"sourcesContent":["import {chain as $a4e76a5424781910$export$e08e3b67e392101e} from \"../utils/chain.mjs\";\nimport {readFromDataTransfer as $d40e85a29b831dd6$export$d9e760437831f8b3, writeToDataTransfer as $d40e85a29b831dd6$export$f9c1490890ddd063} from \"./utils.mjs\";\nimport {useEffectEvent as $fe16bffc7a557bf0$export$7f54fc3180508a52} from \"../utils/useEffectEvent.mjs\";\nimport {useFocus as $1e74c67db218ce67$export$f8168d8dd8fd66e6} from \"../interactions/useFocus.mjs\";\nimport {useRef as $d3JvD$useRef, useEffect as $d3JvD$useEffect} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\nconst $692863997030a376$var$globalEvents = new Map();\nfunction $692863997030a376$var$addGlobalEventListener(event, fn) {\n let eventData = $692863997030a376$var$globalEvents.get(event);\n if (!eventData) {\n let handlers = new Set();\n let listener = (e)=>{\n for (let handler of handlers)handler(e);\n };\n eventData = {\n listener: listener,\n handlers: handlers\n };\n $692863997030a376$var$globalEvents.set(event, eventData);\n document.addEventListener(event, listener);\n }\n eventData.handlers.add(fn);\n return ()=>{\n eventData.handlers.delete(fn);\n if (eventData.handlers.size === 0) {\n document.removeEventListener(event, eventData.listener);\n $692863997030a376$var$globalEvents.delete(event);\n }\n };\n}\nfunction $692863997030a376$export$2314ca2a3e892862(options) {\n let { isDisabled: isDisabled } = options;\n let isFocusedRef = (0, $d3JvD$useRef)(false);\n let { focusProps: focusProps } = (0, $1e74c67db218ce67$export$f8168d8dd8fd66e6)({\n onFocusChange: (isFocused)=>{\n isFocusedRef.current = isFocused;\n }\n });\n let onBeforeCopy = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)((e)=>{\n // Enable the \"Copy\" menu item in Safari if this element is focused and copying is supported.\n if (isFocusedRef.current && options.getItems) e.preventDefault();\n });\n let onCopy = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)((e)=>{\n if (!isFocusedRef.current || !options.getItems) return;\n e.preventDefault();\n if (e.clipboardData) {\n (0, $d40e85a29b831dd6$export$f9c1490890ddd063)(e.clipboardData, options.getItems({\n action: 'copy'\n }));\n options.onCopy?.();\n }\n });\n let onBeforeCut = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)((e)=>{\n if (isFocusedRef.current && options.onCut && options.getItems) e.preventDefault();\n });\n let onCut = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)((e)=>{\n if (!isFocusedRef.current || !options.onCut || !options.getItems) return;\n e.preventDefault();\n if (e.clipboardData) {\n (0, $d40e85a29b831dd6$export$f9c1490890ddd063)(e.clipboardData, options.getItems({\n action: 'cut'\n }));\n options.onCut();\n }\n });\n let onBeforePaste = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)((e)=>{\n // Unfortunately, e.clipboardData.types is not available in this event so we always\n // have to enable the Paste menu item even if the type of data is unsupported.\n if (isFocusedRef.current && options.onPaste) e.preventDefault();\n });\n let onPaste = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)((e)=>{\n if (!isFocusedRef.current || !options.onPaste) return;\n e.preventDefault();\n if (e.clipboardData) {\n let items = (0, $d40e85a29b831dd6$export$d9e760437831f8b3)(e.clipboardData);\n options.onPaste(items);\n }\n });\n (0, $d3JvD$useEffect)(()=>{\n if (isDisabled) return;\n return (0, $a4e76a5424781910$export$e08e3b67e392101e)($692863997030a376$var$addGlobalEventListener('beforecopy', onBeforeCopy), $692863997030a376$var$addGlobalEventListener('copy', onCopy), $692863997030a376$var$addGlobalEventListener('beforecut', onBeforeCut), $692863997030a376$var$addGlobalEventListener('cut', onCut), $692863997030a376$var$addGlobalEventListener('beforepaste', onBeforePaste), $692863997030a376$var$addGlobalEventListener('paste', onPaste));\n }, [\n isDisabled\n ]);\n return {\n clipboardProps: focusProps\n };\n}\n\n\nexport {$692863997030a376$export$2314ca2a3e892862 as useClipboard};\n//# sourceMappingURL=useClipboard.mjs.map\n","import {dom as $7230ffa83bc0c2cf$export$df3a06d6289f983e, Provider as $7230ffa83bc0c2cf$export$2881499e37b75b9a, useContextProps as $7230ffa83bc0c2cf$export$29f1550f4b0d4415, useRenderProps as $7230ffa83bc0c2cf$export$4d86445c2cf5e3} from \"./utils.mjs\";\nimport $7DqZ6$intlStringsmjs from \"./intlStrings.mjs\";\nimport {TextContext as $efe09c6d1c304b50$export$9afb8bc826b033ea} from \"./Text.mjs\";\nimport {useDrop as $7DqZ6$useDrop} from \"react-aria/useDrop\";\nimport {filterDOMProps as $7DqZ6$filterDOMProps} from \"react-aria/filterDOMProps\";\nimport {getEventTarget as $7DqZ6$getEventTarget, nodeContains as $7DqZ6$nodeContains} from \"react-aria/private/utils/shadowdom/DOMFunctions\";\nimport {isFocusable as $7DqZ6$isFocusable} from \"react-aria/private/utils/isFocusable\";\nimport {mergeProps as $7DqZ6$mergeProps} from \"react-aria/mergeProps\";\nimport $7DqZ6$react, {createContext as $7DqZ6$createContext, forwardRef as $7DqZ6$forwardRef, useRef as $7DqZ6$useRef} from \"react\";\nimport {useButton as $7DqZ6$useButton} from \"react-aria/useButton\";\nimport {useClipboard as $7DqZ6$useClipboard} from \"react-aria/useClipboard\";\nimport {useFocusRing as $7DqZ6$useFocusRing} from \"react-aria/useFocusRing\";\nimport {useHover as $7DqZ6$useHover} from \"react-aria/useHover\";\nimport {useLabels as $7DqZ6$useLabels} from \"react-aria/private/utils/useLabels\";\nimport {useLocalizedStringFormatter as $7DqZ6$useLocalizedStringFormatter} from \"react-aria/useLocalizedStringFormatter\";\nimport {useObjectRef as $7DqZ6$useObjectRef} from \"react-aria/useObjectRef\";\nimport {useSlotId as $7DqZ6$useSlotId} from \"react-aria/private/utils/useId\";\nimport {VisuallyHidden as $7DqZ6$VisuallyHidden} from \"react-aria/VisuallyHidden\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n/*\n * Copyright 2023 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst $070c0dd15dc89b58$export$14a72053295ff9a6 = /*#__PURE__*/ (0, $7DqZ6$createContext)(null);\nconst $070c0dd15dc89b58$export$3c6489d84dc98b6 = /*#__PURE__*/ (0, $7DqZ6$forwardRef)(function DropZone(props, ref) {\n let { isDisabled: isDisabled = false } = props;\n [props, ref] = (0, $7230ffa83bc0c2cf$export$29f1550f4b0d4415)(props, ref, $070c0dd15dc89b58$export$14a72053295ff9a6);\n let dropzoneRef = (0, $7DqZ6$useObjectRef)(ref);\n let buttonRef = (0, $7DqZ6$useRef)(null);\n let { dropProps: dropProps, dropButtonProps: dropButtonProps, isDropTarget: isDropTarget } = (0, $7DqZ6$useDrop)({\n ...props,\n ref: buttonRef,\n hasDropButton: true\n });\n let { buttonProps: buttonProps } = (0, $7DqZ6$useButton)(dropButtonProps || {}, buttonRef);\n let { hoverProps: hoverProps, isHovered: isHovered } = (0, $7DqZ6$useHover)(props);\n let { focusProps: focusProps, isFocused: isFocused, isFocusVisible: isFocusVisible } = (0, $7DqZ6$useFocusRing)();\n let stringFormatter = (0, $7DqZ6$useLocalizedStringFormatter)((0, ($parcel$interopDefault($7DqZ6$intlStringsmjs))), 'react-aria-components');\n let textId = (0, $7DqZ6$useSlotId)();\n let ariaLabel = props['aria-label'] || stringFormatter.format('dropzoneLabel');\n let messageId = props['aria-labelledby'];\n let ariaLabelledby = [\n textId,\n messageId\n ].filter(Boolean).join(' ');\n let labelProps = (0, $7DqZ6$useLabels)({\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby\n });\n let { clipboardProps: clipboardProps } = (0, $7DqZ6$useClipboard)({\n isDisabled: isDisabled,\n onPaste: (items)=>props.onDrop?.({\n type: 'drop',\n items: items,\n x: 0,\n y: 0,\n dropOperation: 'copy'\n })\n });\n let renderProps = (0, $7230ffa83bc0c2cf$export$4d86445c2cf5e3)({\n ...props,\n values: {\n isHovered: isHovered,\n isFocused: isFocused,\n isFocusVisible: isFocusVisible,\n isDropTarget: isDropTarget,\n isDisabled: isDisabled\n },\n defaultClassName: 'react-aria-DropZone'\n });\n let DOMProps = (0, $7DqZ6$filterDOMProps)(props, {\n global: true\n });\n delete DOMProps.id;\n return /*#__PURE__*/ (0, $7DqZ6$react).createElement((0, $7230ffa83bc0c2cf$export$2881499e37b75b9a), {\n values: [\n [\n (0, $efe09c6d1c304b50$export$9afb8bc826b033ea),\n {\n id: textId,\n slot: 'label'\n }\n ]\n ]\n }, /*#__PURE__*/ (0, $7DqZ6$react).createElement((0, $7230ffa83bc0c2cf$export$df3a06d6289f983e).div, {\n ...(0, $7DqZ6$mergeProps)(DOMProps, renderProps, dropProps, hoverProps),\n slot: props.slot || undefined,\n ref: dropzoneRef,\n onClick: (e)=>{\n let target = (0, $7DqZ6$getEventTarget)(e);\n while(target && (0, $7DqZ6$nodeContains)(dropzoneRef.current, target)){\n if ((0, $7DqZ6$isFocusable)(target)) break;\n else if (target === dropzoneRef.current) {\n buttonRef.current?.focus();\n break;\n }\n target = target.parentElement;\n }\n },\n \"data-hovered\": isHovered || undefined,\n \"data-focused\": isFocused || undefined,\n \"data-focus-visible\": isFocusVisible || undefined,\n \"data-drop-target\": isDropTarget || undefined,\n \"data-disabled\": isDisabled || undefined\n }, /*#__PURE__*/ (0, $7DqZ6$react).createElement((0, $7DqZ6$VisuallyHidden), null, /*#__PURE__*/ (0, $7DqZ6$react).createElement(\"button\", {\n ...(0, $7DqZ6$mergeProps)(buttonProps, focusProps, clipboardProps, labelProps),\n ref: buttonRef\n })), renderProps.children));\n});\n\n\nexport {$070c0dd15dc89b58$export$14a72053295ff9a6 as DropZoneContext, $070c0dd15dc89b58$export$3c6489d84dc98b6 as DropZone};\n//# sourceMappingURL=DropZone.mjs.map\n","import { createRecipeContext } from \"@chakra-ui/react/styled-system\";\nimport type { DropZoneRootSlotProps } from \"./drop-zone.types\";\n\nconst { withContext } = createRecipeContext({ key: \"nimbusDropZone\" });\n\n// DropZone Root - rendered `asChild` onto React Aria's `DropZone` element so\n// the recipe's styles apply directly to the RAC element (no intermediate\n// wrapper), keeping the forwarded ref pointed at the real drop target.\nexport const DropZoneRootSlot = withContext<\n HTMLDivElement,\n DropZoneRootSlotProps\n>(\"div\");\n","/**\n * Pre-compiled en messages for DropZone\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { defaultLabel: `Drag and drop files here` };\n","/**\n * Pre-compiled de messages for DropZone\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { defaultLabel: `Drag and drop files here` };\n","/**\n * Pre-compiled es messages for DropZone\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { defaultLabel: `Drag and drop files here` };\n","/**\n * Pre-compiled fr-FR messages for DropZone\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { defaultLabel: `Drag and drop files here` };\n","/**\n * Pre-compiled pt-BR messages for DropZone\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { defaultLabel: `Drag and drop files here` };\n","/**\n * Pre-compiled localized messages for DropZone component\n *\n * Generated by scripts/generate-dictionaries.ts\n * DO NOT EDIT MANUALLY\n *\n * @see https://react-spectrum.adobe.com/react-aria/internationalization.html\n */\n\nimport {\n type LocalizedString,\n type LocalizedStrings,\n} from \"@internationalized/string\";\nimport { normalizeMessages } from \"../../utils/normalize-messages\";\n\n// Pre-compiled message functions\nimport dropZoneMessages_en from \"./intl/en\";\nimport dropZoneMessages_de from \"./intl/de\";\nimport dropZoneMessages_es from \"./intl/es\";\nimport dropZoneMessages_fr from \"./intl/fr-FR\";\nimport dropZoneMessages_pt from \"./intl/pt-BR\";\n\n// Raw LocalizedStrings object for use with useLocalizedStringFormatter hook\nexport const dropZoneMessagesStrings: LocalizedStrings<\n string,\n LocalizedString\n> = {\n en: normalizeMessages(dropZoneMessages_en),\n de: normalizeMessages(dropZoneMessages_de),\n es: normalizeMessages(dropZoneMessages_es),\n \"fr-FR\": normalizeMessages(dropZoneMessages_fr),\n \"pt-BR\": normalizeMessages(dropZoneMessages_pt),\n} as LocalizedStrings<string, LocalizedString>;\n\n/**\n * Available message keys for DropZone component\n */\nexport type DropZoneMessageKey = \"defaultLabel\";\n","import { Children, useRef } from \"react\";\nimport { DropZone as RaDropZone, Text } from \"react-aria-components\";\nimport { useObjectRef } from \"react-aria\";\nimport { useRecipe } from \"@chakra-ui/react/styled-system\";\nimport { extractStyleProps, mergeRefs } from \"@/utils\";\nimport { useLocalizedStringFormatter } from \"@/hooks\";\nimport { Icon } from \"@/components\";\nimport { UploadFile } from \"@commercetools/nimbus-icons\";\nimport { DropZoneRootSlot } from \"./drop-zone.slots\";\nimport { dropZoneMessagesStrings } from \"./drop-zone.messages\";\nimport type { DropZoneProps } from \"./drop-zone.types\";\n\n/**\n * # DropZone\n *\n * An area into which files (or other draggable data) can be dragged and\n * dropped. DropZone does not itself provide a file picker — compose the\n * Nimbus `FileTrigger` component in its children for click-to-upload.\n *\n * Features:\n *\n * - Wraps React Aria's `DropZone` for full drag-and-drop behavior and\n * keyboard accessibility\n * - Renders a default upload icon and localized instruction label when no\n * children are provided; children, when provided, fully replace that\n * default (for example a composed `FileTrigger` + `Button`, or a\n * dropped-file list)\n * - Forwards `aria-label` / `aria-labelledby` straight to React Aria's\n * `DropZone`, which applies them to its focusable element. An explicit\n * label overrides only the accessible name — the default icon and visible\n * instruction still render — because the default's visible text is opted\n * out of the name via `slot={null}` and so never conflicts with it\n * - Supports Nimbus style props\n *\n * @see {@link https://nimbus-documentation.vercel.app/components/inputs/dropzone}\n * @supportsStyleProps\n */\nexport const DropZone = (props: DropZoneProps) => {\n const { ref: forwardedRef, children, ...rest } = props;\n\n const recipe = useRecipe({ key: \"nimbusDropZone\" });\n const [recipeProps, remainingProps] = recipe.splitVariantProps({\n ...rest,\n });\n const [styleProps, elementProps] = extractStyleProps(remainingProps);\n\n const localRef = useRef<HTMLDivElement>(null);\n const ref = useObjectRef(mergeRefs(localRef, forwardedRef));\n\n const msg = useLocalizedStringFormatter(dropZoneMessagesStrings);\n const hasChildren = Children.count(children) > 0;\n // React Aria's `DropZone` always computes an `aria-label` for its focusable\n // element — either the consumer's explicit `aria-label`, or (if absent) its\n // own internal, English-only \"DropZone\" fallback string — and, whenever a\n // `Text slot=\"label\"` descendant exists, combines that fallback with the\n // slotted text via `aria-labelledby`, concatenating both into the\n // accessible name. There is no prop to suppress React Aria's internal\n // fallback. So for the default content we supply our own localized label\n // directly as `aria-label` (which wins over React Aria's fallback) and\n // render the matching visible line with `slot={null}` — an explicit,\n // React-Aria-documented opt-out that stops it from being auto-wired into\n // `DropZone`'s label slot — so nothing is left to concatenate against.\n const hasExplicitLabel = Boolean(\n props[\"aria-label\"] || props[\"aria-labelledby\"]\n );\n const defaultLabel = msg.format(\"defaultLabel\");\n\n return (\n <DropZoneRootSlot {...recipeProps} {...styleProps} asChild>\n <RaDropZone\n ref={ref}\n aria-label={hasExplicitLabel ? undefined : defaultLabel}\n {...elementProps}\n >\n {hasChildren ? (\n children\n ) : (\n <>\n <Icon boxSize=\"var(--drop-zone-icon-size)\" flexShrink={0}>\n <UploadFile />\n </Icon>\n {/* eslint-disable-next-line @typescript-eslint/no-explicit-any -- RAC's `TextProps` type omits `SlotProps`, even though `Text` reads `slot` at runtime via `useContextProps`; `slot={null}` is RAC's documented opt-out from an ambient parent slot (here, `DropZone`'s own `label` slot). */}\n <Text {...({ slot: null } as any)}>{defaultLabel}</Text>\n </>\n )}\n </RaDropZone>\n </DropZoneRootSlot>\n );\n};\n\nDropZone.displayName = \"DropZone\";\n"],"x_google_ignoreList":[0,1],"mappings":"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"}
1
+ {"version":3,"file":"drop-zone-BKJQrFGG.esm.js","names":["$d3JvD$useRef","$d3JvD$useEffect","$7DqZ6$createContext","$7DqZ6$forwardRef","$7DqZ6$useObjectRef","$7DqZ6$useRef","$7DqZ6$useDrop","$7DqZ6$useButton","$7DqZ6$useHover","$7DqZ6$useFocusRing","$7DqZ6$useLocalizedStringFormatter","$7DqZ6$intlStringsmjs","$7DqZ6$useSlotId","$7DqZ6$useLabels","$7DqZ6$useClipboard","$7DqZ6$filterDOMProps","$7DqZ6$react","$7DqZ6$mergeProps","$7DqZ6$getEventTarget","$7DqZ6$nodeContains","$7DqZ6$isFocusable","$7DqZ6$VisuallyHidden"],"sources":["../../../../node_modules/.pnpm/react-aria@3.50.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/react-aria/dist/private/dnd/useClipboard.mjs","../../../../node_modules/.pnpm/react-aria-components@1.19.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/react-aria-components/dist/private/DropZone.mjs","../../src/components/drop-zone/drop-zone.slots.tsx","../../src/components/drop-zone/intl/en.ts","../../src/components/drop-zone/intl/de.ts","../../src/components/drop-zone/intl/es.ts","../../src/components/drop-zone/intl/fr-FR.ts","../../src/components/drop-zone/intl/pt-BR.ts","../../src/components/drop-zone/drop-zone.messages.ts","../../src/components/drop-zone/drop-zone.tsx"],"sourcesContent":["import {chain as $a4e76a5424781910$export$e08e3b67e392101e} from \"../utils/chain.mjs\";\nimport {readFromDataTransfer as $d40e85a29b831dd6$export$d9e760437831f8b3, writeToDataTransfer as $d40e85a29b831dd6$export$f9c1490890ddd063} from \"./utils.mjs\";\nimport {useEffectEvent as $fe16bffc7a557bf0$export$7f54fc3180508a52} from \"../utils/useEffectEvent.mjs\";\nimport {useFocus as $1e74c67db218ce67$export$f8168d8dd8fd66e6} from \"../interactions/useFocus.mjs\";\nimport {useRef as $d3JvD$useRef, useEffect as $d3JvD$useEffect} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\nconst $692863997030a376$var$globalEvents = new Map();\nfunction $692863997030a376$var$addGlobalEventListener(event, fn) {\n let eventData = $692863997030a376$var$globalEvents.get(event);\n if (!eventData) {\n let handlers = new Set();\n let listener = (e)=>{\n for (let handler of handlers)handler(e);\n };\n eventData = {\n listener: listener,\n handlers: handlers\n };\n $692863997030a376$var$globalEvents.set(event, eventData);\n document.addEventListener(event, listener);\n }\n eventData.handlers.add(fn);\n return ()=>{\n eventData.handlers.delete(fn);\n if (eventData.handlers.size === 0) {\n document.removeEventListener(event, eventData.listener);\n $692863997030a376$var$globalEvents.delete(event);\n }\n };\n}\nfunction $692863997030a376$export$2314ca2a3e892862(options) {\n let { isDisabled: isDisabled } = options;\n let isFocusedRef = (0, $d3JvD$useRef)(false);\n let { focusProps: focusProps } = (0, $1e74c67db218ce67$export$f8168d8dd8fd66e6)({\n onFocusChange: (isFocused)=>{\n isFocusedRef.current = isFocused;\n }\n });\n let onBeforeCopy = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)((e)=>{\n // Enable the \"Copy\" menu item in Safari if this element is focused and copying is supported.\n if (isFocusedRef.current && options.getItems) e.preventDefault();\n });\n let onCopy = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)((e)=>{\n if (!isFocusedRef.current || !options.getItems) return;\n e.preventDefault();\n if (e.clipboardData) {\n (0, $d40e85a29b831dd6$export$f9c1490890ddd063)(e.clipboardData, options.getItems({\n action: 'copy'\n }));\n options.onCopy?.();\n }\n });\n let onBeforeCut = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)((e)=>{\n if (isFocusedRef.current && options.onCut && options.getItems) e.preventDefault();\n });\n let onCut = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)((e)=>{\n if (!isFocusedRef.current || !options.onCut || !options.getItems) return;\n e.preventDefault();\n if (e.clipboardData) {\n (0, $d40e85a29b831dd6$export$f9c1490890ddd063)(e.clipboardData, options.getItems({\n action: 'cut'\n }));\n options.onCut();\n }\n });\n let onBeforePaste = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)((e)=>{\n // Unfortunately, e.clipboardData.types is not available in this event so we always\n // have to enable the Paste menu item even if the type of data is unsupported.\n if (isFocusedRef.current && options.onPaste) e.preventDefault();\n });\n let onPaste = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)((e)=>{\n if (!isFocusedRef.current || !options.onPaste) return;\n e.preventDefault();\n if (e.clipboardData) {\n let items = (0, $d40e85a29b831dd6$export$d9e760437831f8b3)(e.clipboardData);\n options.onPaste(items);\n }\n });\n (0, $d3JvD$useEffect)(()=>{\n if (isDisabled) return;\n return (0, $a4e76a5424781910$export$e08e3b67e392101e)($692863997030a376$var$addGlobalEventListener('beforecopy', onBeforeCopy), $692863997030a376$var$addGlobalEventListener('copy', onCopy), $692863997030a376$var$addGlobalEventListener('beforecut', onBeforeCut), $692863997030a376$var$addGlobalEventListener('cut', onCut), $692863997030a376$var$addGlobalEventListener('beforepaste', onBeforePaste), $692863997030a376$var$addGlobalEventListener('paste', onPaste));\n }, [\n isDisabled\n ]);\n return {\n clipboardProps: focusProps\n };\n}\n\n\nexport {$692863997030a376$export$2314ca2a3e892862 as useClipboard};\n//# sourceMappingURL=useClipboard.mjs.map\n","import {dom as $7230ffa83bc0c2cf$export$df3a06d6289f983e, Provider as $7230ffa83bc0c2cf$export$2881499e37b75b9a, useContextProps as $7230ffa83bc0c2cf$export$29f1550f4b0d4415, useRenderProps as $7230ffa83bc0c2cf$export$4d86445c2cf5e3} from \"./utils.mjs\";\nimport $7DqZ6$intlStringsmjs from \"./intlStrings.mjs\";\nimport {TextContext as $efe09c6d1c304b50$export$9afb8bc826b033ea} from \"./Text.mjs\";\nimport {useDrop as $7DqZ6$useDrop} from \"react-aria/useDrop\";\nimport {filterDOMProps as $7DqZ6$filterDOMProps} from \"react-aria/filterDOMProps\";\nimport {getEventTarget as $7DqZ6$getEventTarget, nodeContains as $7DqZ6$nodeContains} from \"react-aria/private/utils/shadowdom/DOMFunctions\";\nimport {isFocusable as $7DqZ6$isFocusable} from \"react-aria/private/utils/isFocusable\";\nimport {mergeProps as $7DqZ6$mergeProps} from \"react-aria/mergeProps\";\nimport $7DqZ6$react, {createContext as $7DqZ6$createContext, forwardRef as $7DqZ6$forwardRef, useRef as $7DqZ6$useRef} from \"react\";\nimport {useButton as $7DqZ6$useButton} from \"react-aria/useButton\";\nimport {useClipboard as $7DqZ6$useClipboard} from \"react-aria/useClipboard\";\nimport {useFocusRing as $7DqZ6$useFocusRing} from \"react-aria/useFocusRing\";\nimport {useHover as $7DqZ6$useHover} from \"react-aria/useHover\";\nimport {useLabels as $7DqZ6$useLabels} from \"react-aria/private/utils/useLabels\";\nimport {useLocalizedStringFormatter as $7DqZ6$useLocalizedStringFormatter} from \"react-aria/useLocalizedStringFormatter\";\nimport {useObjectRef as $7DqZ6$useObjectRef} from \"react-aria/useObjectRef\";\nimport {useSlotId as $7DqZ6$useSlotId} from \"react-aria/private/utils/useId\";\nimport {VisuallyHidden as $7DqZ6$VisuallyHidden} from \"react-aria/VisuallyHidden\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n/*\n * Copyright 2023 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst $070c0dd15dc89b58$export$14a72053295ff9a6 = /*#__PURE__*/ (0, $7DqZ6$createContext)(null);\nconst $070c0dd15dc89b58$export$3c6489d84dc98b6 = /*#__PURE__*/ (0, $7DqZ6$forwardRef)(function DropZone(props, ref) {\n let { isDisabled: isDisabled = false } = props;\n [props, ref] = (0, $7230ffa83bc0c2cf$export$29f1550f4b0d4415)(props, ref, $070c0dd15dc89b58$export$14a72053295ff9a6);\n let dropzoneRef = (0, $7DqZ6$useObjectRef)(ref);\n let buttonRef = (0, $7DqZ6$useRef)(null);\n let { dropProps: dropProps, dropButtonProps: dropButtonProps, isDropTarget: isDropTarget } = (0, $7DqZ6$useDrop)({\n ...props,\n ref: buttonRef,\n hasDropButton: true\n });\n let { buttonProps: buttonProps } = (0, $7DqZ6$useButton)(dropButtonProps || {}, buttonRef);\n let { hoverProps: hoverProps, isHovered: isHovered } = (0, $7DqZ6$useHover)(props);\n let { focusProps: focusProps, isFocused: isFocused, isFocusVisible: isFocusVisible } = (0, $7DqZ6$useFocusRing)();\n let stringFormatter = (0, $7DqZ6$useLocalizedStringFormatter)((0, ($parcel$interopDefault($7DqZ6$intlStringsmjs))), 'react-aria-components');\n let textId = (0, $7DqZ6$useSlotId)();\n let ariaLabel = props['aria-label'] || stringFormatter.format('dropzoneLabel');\n let messageId = props['aria-labelledby'];\n let ariaLabelledby = [\n textId,\n messageId\n ].filter(Boolean).join(' ');\n let labelProps = (0, $7DqZ6$useLabels)({\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby\n });\n let { clipboardProps: clipboardProps } = (0, $7DqZ6$useClipboard)({\n isDisabled: isDisabled,\n onPaste: (items)=>props.onDrop?.({\n type: 'drop',\n items: items,\n x: 0,\n y: 0,\n dropOperation: 'copy'\n })\n });\n let renderProps = (0, $7230ffa83bc0c2cf$export$4d86445c2cf5e3)({\n ...props,\n values: {\n isHovered: isHovered,\n isFocused: isFocused,\n isFocusVisible: isFocusVisible,\n isDropTarget: isDropTarget,\n isDisabled: isDisabled\n },\n defaultClassName: 'react-aria-DropZone'\n });\n let DOMProps = (0, $7DqZ6$filterDOMProps)(props, {\n global: true\n });\n delete DOMProps.id;\n return /*#__PURE__*/ (0, $7DqZ6$react).createElement((0, $7230ffa83bc0c2cf$export$2881499e37b75b9a), {\n values: [\n [\n (0, $efe09c6d1c304b50$export$9afb8bc826b033ea),\n {\n id: textId,\n slot: 'label'\n }\n ]\n ]\n }, /*#__PURE__*/ (0, $7DqZ6$react).createElement((0, $7230ffa83bc0c2cf$export$df3a06d6289f983e).div, {\n ...(0, $7DqZ6$mergeProps)(DOMProps, renderProps, dropProps, hoverProps),\n slot: props.slot || undefined,\n ref: dropzoneRef,\n onClick: (e)=>{\n let target = (0, $7DqZ6$getEventTarget)(e);\n while(target && (0, $7DqZ6$nodeContains)(dropzoneRef.current, target)){\n if ((0, $7DqZ6$isFocusable)(target)) break;\n else if (target === dropzoneRef.current) {\n buttonRef.current?.focus();\n break;\n }\n target = target.parentElement;\n }\n },\n \"data-hovered\": isHovered || undefined,\n \"data-focused\": isFocused || undefined,\n \"data-focus-visible\": isFocusVisible || undefined,\n \"data-drop-target\": isDropTarget || undefined,\n \"data-disabled\": isDisabled || undefined\n }, /*#__PURE__*/ (0, $7DqZ6$react).createElement((0, $7DqZ6$VisuallyHidden), null, /*#__PURE__*/ (0, $7DqZ6$react).createElement(\"button\", {\n ...(0, $7DqZ6$mergeProps)(buttonProps, focusProps, clipboardProps, labelProps),\n ref: buttonRef\n })), renderProps.children));\n});\n\n\nexport {$070c0dd15dc89b58$export$14a72053295ff9a6 as DropZoneContext, $070c0dd15dc89b58$export$3c6489d84dc98b6 as DropZone};\n//# sourceMappingURL=DropZone.mjs.map\n","import { createRecipeContext } from \"@chakra-ui/react/styled-system\";\nimport type { DropZoneRootSlotProps } from \"./drop-zone.types\";\n\nconst { withContext } = createRecipeContext({ key: \"nimbusDropZone\" });\n\n// DropZone Root - rendered `asChild` onto React Aria's `DropZone` element so\n// the recipe's styles apply directly to the RAC element (no intermediate\n// wrapper), keeping the forwarded ref pointed at the real drop target.\nexport const DropZoneRootSlot = withContext<\n HTMLDivElement,\n DropZoneRootSlotProps\n>(\"div\");\n","/**\n * Pre-compiled en messages for DropZone\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { defaultLabel: `Drag and drop files here` };\n","/**\n * Pre-compiled de messages for DropZone\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { defaultLabel: `Dateinen per Drag & Drop hier ablegen` };\n","/**\n * Pre-compiled es messages for DropZone\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { defaultLabel: `Arrastar y soltar archivos aquí` };\n","/**\n * Pre-compiled fr-FR messages for DropZone\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { defaultLabel: `Glissez-déposez les fichiers ici` };\n","/**\n * Pre-compiled pt-BR messages for DropZone\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { defaultLabel: `Arraste e solte arquivos aqui` };\n","/**\n * Pre-compiled localized messages for DropZone component\n *\n * Generated by scripts/generate-dictionaries.ts\n * DO NOT EDIT MANUALLY\n *\n * @see https://react-spectrum.adobe.com/react-aria/internationalization.html\n */\n\nimport {\n type LocalizedString,\n type LocalizedStrings,\n} from \"@internationalized/string\";\nimport { normalizeMessages } from \"../../utils/normalize-messages\";\n\n// Pre-compiled message functions\nimport dropZoneMessages_en from \"./intl/en\";\nimport dropZoneMessages_de from \"./intl/de\";\nimport dropZoneMessages_es from \"./intl/es\";\nimport dropZoneMessages_fr from \"./intl/fr-FR\";\nimport dropZoneMessages_pt from \"./intl/pt-BR\";\n\n// Raw LocalizedStrings object for use with useLocalizedStringFormatter hook\nexport const dropZoneMessagesStrings: LocalizedStrings<\n string,\n LocalizedString\n> = {\n en: normalizeMessages(dropZoneMessages_en),\n de: normalizeMessages(dropZoneMessages_de),\n es: normalizeMessages(dropZoneMessages_es),\n \"fr-FR\": normalizeMessages(dropZoneMessages_fr),\n \"pt-BR\": normalizeMessages(dropZoneMessages_pt),\n} as LocalizedStrings<string, LocalizedString>;\n\n/**\n * Available message keys for DropZone component\n */\nexport type DropZoneMessageKey = \"defaultLabel\";\n","import { Children, useRef } from \"react\";\nimport { DropZone as RaDropZone, Text } from \"react-aria-components\";\nimport { useObjectRef } from \"react-aria\";\nimport { useRecipe } from \"@chakra-ui/react/styled-system\";\nimport { extractStyleProps, mergeRefs } from \"@/utils\";\nimport { useLocalizedStringFormatter } from \"@/hooks\";\nimport { Icon } from \"@/components\";\nimport { UploadFile } from \"@commercetools/nimbus-icons\";\nimport { DropZoneRootSlot } from \"./drop-zone.slots\";\nimport { dropZoneMessagesStrings } from \"./drop-zone.messages\";\nimport type { DropZoneProps } from \"./drop-zone.types\";\n\n/**\n * # DropZone\n *\n * An area into which files (or other draggable data) can be dragged and\n * dropped. DropZone does not itself provide a file picker — compose the\n * Nimbus `FileTrigger` component in its children for click-to-upload.\n *\n * Features:\n *\n * - Wraps React Aria's `DropZone` for full drag-and-drop behavior and\n * keyboard accessibility\n * - Renders a default upload icon and localized instruction label when no\n * children are provided; children, when provided, fully replace that\n * default (for example a composed `FileTrigger` + `Button`, or a\n * dropped-file list)\n * - Forwards `aria-label` / `aria-labelledby` straight to React Aria's\n * `DropZone`, which applies them to its focusable element. An explicit\n * label overrides only the accessible name — the default icon and visible\n * instruction still render — because the default's visible text is opted\n * out of the name via `slot={null}` and so never conflicts with it\n * - Supports Nimbus style props\n *\n * @see {@link https://nimbus-documentation.vercel.app/components/inputs/dropzone}\n * @supportsStyleProps\n */\nexport const DropZone = (props: DropZoneProps) => {\n const { ref: forwardedRef, children, ...rest } = props;\n\n const recipe = useRecipe({ key: \"nimbusDropZone\" });\n const [recipeProps, remainingProps] = recipe.splitVariantProps({\n ...rest,\n });\n const [styleProps, elementProps] = extractStyleProps(remainingProps);\n\n const localRef = useRef<HTMLDivElement>(null);\n const ref = useObjectRef(mergeRefs(localRef, forwardedRef));\n\n const msg = useLocalizedStringFormatter(dropZoneMessagesStrings);\n const hasChildren = Children.count(children) > 0;\n // React Aria's `DropZone` always computes an `aria-label` for its focusable\n // element — either the consumer's explicit `aria-label`, or (if absent) its\n // own internal, English-only \"DropZone\" fallback string — and, whenever a\n // `Text slot=\"label\"` descendant exists, combines that fallback with the\n // slotted text via `aria-labelledby`, concatenating both into the\n // accessible name. There is no prop to suppress React Aria's internal\n // fallback. So for the default content we supply our own localized label\n // directly as `aria-label` (which wins over React Aria's fallback) and\n // render the matching visible line with `slot={null}` — an explicit,\n // React-Aria-documented opt-out that stops it from being auto-wired into\n // `DropZone`'s label slot — so nothing is left to concatenate against.\n const hasExplicitLabel = Boolean(\n props[\"aria-label\"] || props[\"aria-labelledby\"]\n );\n const defaultLabel = msg.format(\"defaultLabel\");\n\n return (\n <DropZoneRootSlot {...recipeProps} {...styleProps} asChild>\n <RaDropZone\n ref={ref}\n aria-label={hasExplicitLabel ? undefined : defaultLabel}\n {...elementProps}\n >\n {hasChildren ? (\n children\n ) : (\n <>\n <Icon boxSize=\"var(--drop-zone-icon-size)\" flexShrink={0}>\n <UploadFile />\n </Icon>\n {/* eslint-disable-next-line @typescript-eslint/no-explicit-any -- RAC's `TextProps` type omits `SlotProps`, even though `Text` reads `slot` at runtime via `useContextProps`; `slot={null}` is RAC's documented opt-out from an ambient parent slot (here, `DropZone`'s own `label` slot). */}\n <Text {...({ slot: null } as any)}>{defaultLabel}</Text>\n </>\n )}\n </RaDropZone>\n </DropZoneRootSlot>\n );\n};\n\nDropZone.displayName = \"DropZone\";\n"],"x_google_ignoreList":[0,1],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- const e=require("./SSRProvider-CM04-CXZ.cjs.js"),t=require("./utils-igUjp_4h.cjs.js"),n=require("./mergeProps-B4zz6EqI.cjs.js"),r=require("./useFocus-Cw03jXPe.cjs.js"),i=require("./useObjectRef-B_VeQHvx.cjs.js"),a=require("./useEffectEvent-B628M4bY.cjs.js"),o=require("./useLabels-B-4HgOQw.cjs.js"),s=require("./useLocalizedStringFormatter-C0lcQbF_.cjs.js"),c=require("./filterDOMProps-DnOwsDRm.cjs.js"),l=require("./useButton-DisIwqgE.cjs.js"),u=require("./VisuallyHidden-CtikuHFk.cjs.js"),d=require("./useDrop-DYmvIAou.cjs.js"),f=require("./useFocusRing-Bx86kFi9.cjs.js"),p=require("./useHover-JjQ5Tf8X.cjs.js"),m=require("./utils-Clf3FzjT.cjs.js"),h=require("./Text-CJwD_Rm8.cjs.js"),g=require("./intlStrings-BpyCH0Lk.cjs.js"),_=require("./normalize-messages-BMq9y_ae.cjs.js"),v=require("./icon-DjrMssEK.cjs.js"),y=require("./extract-style-props-CA1O0IF2.cjs.js"),b=require("./merge-refs-DjTl2ATo.cjs.js");let x=require("react");x=e.a(x,1);let S=require("react/jsx-runtime"),C=require("@commercetools/nimbus-icons"),w=require("@chakra-ui/react/styled-system");var T=new Map;function E(e,t){let n=T.get(e);if(!n){let t=new Set,r=e=>{for(let n of t)n(e)};n={listener:r,handlers:t},T.set(e,n),document.addEventListener(e,r)}return n.handlers.add(t),()=>{n.handlers.delete(t),n.handlers.size===0&&(document.removeEventListener(e,n.listener),T.delete(e))}}function D(e){let{isDisabled:t}=e,i=(0,x.useRef)(!1),{focusProps:o}=r.t({onFocusChange:e=>{i.current=e}}),s=a.t(t=>{i.current&&e.getItems&&t.preventDefault()}),c=a.t(t=>{!i.current||!e.getItems||(t.preventDefault(),t.clipboardData&&(d.O(t.clipboardData,e.getItems({action:`copy`})),e.onCopy?.()))}),l=a.t(t=>{i.current&&e.onCut&&e.getItems&&t.preventDefault()}),u=a.t(t=>{!i.current||!e.onCut||!e.getItems||(t.preventDefault(),t.clipboardData&&(d.O(t.clipboardData,e.getItems({action:`cut`})),e.onCut()))}),f=a.t(t=>{i.current&&e.onPaste&&t.preventDefault()}),p=a.t(t=>{if(!(!i.current||!e.onPaste)&&(t.preventDefault(),t.clipboardData)){let n=d.C(t.clipboardData);e.onPaste(n)}});return(0,x.useEffect)(()=>{if(!t)return n.a(E(`beforecopy`,s),E(`copy`,c),E(`beforecut`,l),E(`cut`,u),E(`beforepaste`,f),E(`paste`,p))},[t]),{clipboardProps:o}}function O(e){return e&&e.__esModule?e.default:e}var k=(0,x.createContext)(null),A=(0,x.forwardRef)(function(e,r){let{isDisabled:a=!1}=e;[e,r]=m.n(e,r,k);let _=i.t(r),v=(0,x.useRef)(null),{dropProps:y,dropButtonProps:b,isDropTarget:S}=d.t({...e,ref:v,hasDropButton:!0}),{buttonProps:C}=l.t(b||{},v),{hoverProps:w,isHovered:T}=p.t(e),{focusProps:E,isFocused:A,isFocusVisible:j}=f.t(),M=s.n(O(g.t),`react-aria-components`),N=n.r(),P=o.t({"aria-label":e[`aria-label`]||M.format(`dropzoneLabel`),"aria-labelledby":[N,e[`aria-labelledby`]].filter(Boolean).join(` `)}),{clipboardProps:F}=D({isDisabled:a,onPaste:t=>e.onDrop?.({type:`drop`,items:t,x:0,y:0,dropOperation:`copy`})}),I=m.r({...e,values:{isHovered:T,isFocused:A,isFocusVisible:j,isDropTarget:S,isDisabled:a},defaultClassName:`react-aria-DropZone`}),L=c.t(e,{global:!0});return delete L.id,x.default.createElement(m.t,{values:[[h.n,{id:N,slot:`label`}]]},x.default.createElement(m.o.div,{...n.t(L,I,y,w),slot:e.slot||void 0,ref:_,onClick:e=>{let n=t.d(e);for(;n&&t.c(_.current,n)&&!t.o(n);){if(n===_.current){v.current?.focus();break}n=n.parentElement}},"data-hovered":T||void 0,"data-focused":A||void 0,"data-focus-visible":j||void 0,"data-drop-target":S||void 0,"data-disabled":a||void 0},x.default.createElement(u.t,null,x.default.createElement(`button`,{...n.t(C,E,F,P),ref:v})),I.children))}),{withContext:j}=(0,w.createRecipeContext)({key:`nimbusDropZone`}),M=j(`div`),N={en:_.t({defaultLabel:`Drag and drop files here`}),de:_.t({defaultLabel:`Drag and drop files here`}),es:_.t({defaultLabel:`Drag and drop files here`}),"fr-FR":_.t({defaultLabel:`Drag and drop files here`}),"pt-BR":_.t({defaultLabel:`Drag and drop files here`})},P=e=>{let{ref:t,children:n,...r}=e,[a,o]=(0,w.useRecipe)({key:`nimbusDropZone`}).splitVariantProps({...r}),[s,c]=y.t(o),l=i.t(b.t((0,x.useRef)(null),t)),u=_.n(N),d=x.Children.count(n)>0,f=!!(e[`aria-label`]||e[`aria-labelledby`]),p=u.format(`defaultLabel`);return(0,S.jsx)(M,{...a,...s,asChild:!0,children:(0,S.jsx)(A,{ref:l,"aria-label":f?void 0:p,...c,children:d?n:(0,S.jsxs)(S.Fragment,{children:[(0,S.jsx)(v.t,{boxSize:`var(--drop-zone-icon-size)`,flexShrink:0,children:(0,S.jsx)(C.UploadFile,{})}),(0,S.jsx)(h.t,{slot:null,children:p})]})})})};P.displayName=`DropZone`,Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return P}});
2
- //# sourceMappingURL=drop-zone-Dr4VzY5B.cjs.js.map
1
+ const e=require("./SSRProvider-CM04-CXZ.cjs.js"),t=require("./utils-igUjp_4h.cjs.js"),n=require("./mergeProps-B4zz6EqI.cjs.js"),r=require("./useFocus-Cw03jXPe.cjs.js"),i=require("./useObjectRef-B_VeQHvx.cjs.js"),a=require("./useEffectEvent-B628M4bY.cjs.js"),o=require("./useLabels-B-4HgOQw.cjs.js"),s=require("./useLocalizedStringFormatter-C0lcQbF_.cjs.js"),c=require("./filterDOMProps-DnOwsDRm.cjs.js"),l=require("./useButton-DisIwqgE.cjs.js"),u=require("./VisuallyHidden-CtikuHFk.cjs.js"),d=require("./useDrop-DYmvIAou.cjs.js"),f=require("./useFocusRing-Bx86kFi9.cjs.js"),p=require("./useHover-JjQ5Tf8X.cjs.js"),m=require("./utils-Clf3FzjT.cjs.js"),h=require("./Text-CJwD_Rm8.cjs.js"),g=require("./intlStrings-BpyCH0Lk.cjs.js"),_=require("./normalize-messages-BMq9y_ae.cjs.js"),v=require("./icon-DjrMssEK.cjs.js"),y=require("./extract-style-props-WNdpT-ME.cjs.js"),b=require("./merge-refs-DjTl2ATo.cjs.js");let x=require("react");x=e.a(x,1);let S=require("react/jsx-runtime"),C=require("@commercetools/nimbus-icons"),w=require("@chakra-ui/react/styled-system");var T=new Map;function E(e,t){let n=T.get(e);if(!n){let t=new Set,r=e=>{for(let n of t)n(e)};n={listener:r,handlers:t},T.set(e,n),document.addEventListener(e,r)}return n.handlers.add(t),()=>{n.handlers.delete(t),n.handlers.size===0&&(document.removeEventListener(e,n.listener),T.delete(e))}}function D(e){let{isDisabled:t}=e,i=(0,x.useRef)(!1),{focusProps:o}=r.t({onFocusChange:e=>{i.current=e}}),s=a.t(t=>{i.current&&e.getItems&&t.preventDefault()}),c=a.t(t=>{!i.current||!e.getItems||(t.preventDefault(),t.clipboardData&&(d.O(t.clipboardData,e.getItems({action:`copy`})),e.onCopy?.()))}),l=a.t(t=>{i.current&&e.onCut&&e.getItems&&t.preventDefault()}),u=a.t(t=>{!i.current||!e.onCut||!e.getItems||(t.preventDefault(),t.clipboardData&&(d.O(t.clipboardData,e.getItems({action:`cut`})),e.onCut()))}),f=a.t(t=>{i.current&&e.onPaste&&t.preventDefault()}),p=a.t(t=>{if(!(!i.current||!e.onPaste)&&(t.preventDefault(),t.clipboardData)){let n=d.C(t.clipboardData);e.onPaste(n)}});return(0,x.useEffect)(()=>{if(!t)return n.a(E(`beforecopy`,s),E(`copy`,c),E(`beforecut`,l),E(`cut`,u),E(`beforepaste`,f),E(`paste`,p))},[t]),{clipboardProps:o}}function O(e){return e&&e.__esModule?e.default:e}var k=(0,x.createContext)(null),A=(0,x.forwardRef)(function(e,r){let{isDisabled:a=!1}=e;[e,r]=m.n(e,r,k);let _=i.t(r),v=(0,x.useRef)(null),{dropProps:y,dropButtonProps:b,isDropTarget:S}=d.t({...e,ref:v,hasDropButton:!0}),{buttonProps:C}=l.t(b||{},v),{hoverProps:w,isHovered:T}=p.t(e),{focusProps:E,isFocused:A,isFocusVisible:j}=f.t(),M=s.n(O(g.t),`react-aria-components`),N=n.r(),P=o.t({"aria-label":e[`aria-label`]||M.format(`dropzoneLabel`),"aria-labelledby":[N,e[`aria-labelledby`]].filter(Boolean).join(` `)}),{clipboardProps:F}=D({isDisabled:a,onPaste:t=>e.onDrop?.({type:`drop`,items:t,x:0,y:0,dropOperation:`copy`})}),I=m.r({...e,values:{isHovered:T,isFocused:A,isFocusVisible:j,isDropTarget:S,isDisabled:a},defaultClassName:`react-aria-DropZone`}),L=c.t(e,{global:!0});return delete L.id,x.default.createElement(m.t,{values:[[h.n,{id:N,slot:`label`}]]},x.default.createElement(m.o.div,{...n.t(L,I,y,w),slot:e.slot||void 0,ref:_,onClick:e=>{let n=t.d(e);for(;n&&t.c(_.current,n)&&!t.o(n);){if(n===_.current){v.current?.focus();break}n=n.parentElement}},"data-hovered":T||void 0,"data-focused":A||void 0,"data-focus-visible":j||void 0,"data-drop-target":S||void 0,"data-disabled":a||void 0},x.default.createElement(u.t,null,x.default.createElement(`button`,{...n.t(C,E,F,P),ref:v})),I.children))}),{withContext:j}=(0,w.createRecipeContext)({key:`nimbusDropZone`}),M=j(`div`),N={en:_.t({defaultLabel:`Drag and drop files here`}),de:_.t({defaultLabel:`Dateinen per Drag & Drop hier ablegen`}),es:_.t({defaultLabel:`Arrastar y soltar archivos aquí`}),"fr-FR":_.t({defaultLabel:`Glissez-déposez les fichiers ici`}),"pt-BR":_.t({defaultLabel:`Arraste e solte arquivos aqui`})},P=e=>{let{ref:t,children:n,...r}=e,[a,o]=(0,w.useRecipe)({key:`nimbusDropZone`}).splitVariantProps({...r}),[s,c]=y.t(o),l=i.t(b.t((0,x.useRef)(null),t)),u=_.n(N),d=x.Children.count(n)>0,f=!!(e[`aria-label`]||e[`aria-labelledby`]),p=u.format(`defaultLabel`);return(0,S.jsx)(M,{...a,...s,asChild:!0,children:(0,S.jsx)(A,{ref:l,"aria-label":f?void 0:p,...c,children:d?n:(0,S.jsxs)(S.Fragment,{children:[(0,S.jsx)(v.t,{boxSize:`var(--drop-zone-icon-size)`,flexShrink:0,children:(0,S.jsx)(C.UploadFile,{})}),(0,S.jsx)(h.t,{slot:null,children:p})]})})})};P.displayName=`DropZone`,Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return P}});
2
+ //# sourceMappingURL=drop-zone-N7k0XExn.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"drop-zone-Dr4VzY5B.cjs.js","names":["$1e74c67db218ce67$export$f8168d8dd8fd66e6","$fe16bffc7a557bf0$export$7f54fc3180508a52","$d40e85a29b831dd6$export$f9c1490890ddd063","$d40e85a29b831dd6$export$d9e760437831f8b3","$a4e76a5424781910$export$e08e3b67e392101e","$7230ffa83bc0c2cf$export$29f1550f4b0d4415","$7DqZ6$useObjectRef","$7DqZ6$useDrop","$7DqZ6$useButton","$7DqZ6$useHover","$7DqZ6$useFocusRing","$7DqZ6$useLocalizedStringFormatter","$7DqZ6$intlStringsmjs","$7DqZ6$useSlotId","$7DqZ6$useLabels","$7DqZ6$useClipboard","$7230ffa83bc0c2cf$export$4d86445c2cf5e3","$7DqZ6$filterDOMProps","$7DqZ6$react","$7230ffa83bc0c2cf$export$2881499e37b75b9a","$efe09c6d1c304b50$export$9afb8bc826b033ea","$7230ffa83bc0c2cf$export$df3a06d6289f983e","$7DqZ6$mergeProps","$7DqZ6$getEventTarget","$7DqZ6$nodeContains","$7DqZ6$isFocusable","$7DqZ6$VisuallyHidden"],"sources":["../../../../node_modules/.pnpm/react-aria@3.50.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/react-aria/dist/private/dnd/useClipboard.mjs","../../../../node_modules/.pnpm/react-aria-components@1.19.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/react-aria-components/dist/private/DropZone.mjs","../../src/components/drop-zone/drop-zone.slots.tsx","../../src/components/drop-zone/intl/en.ts","../../src/components/drop-zone/intl/de.ts","../../src/components/drop-zone/intl/es.ts","../../src/components/drop-zone/intl/fr-FR.ts","../../src/components/drop-zone/intl/pt-BR.ts","../../src/components/drop-zone/drop-zone.messages.ts","../../src/components/drop-zone/drop-zone.tsx"],"sourcesContent":["import {chain as $a4e76a5424781910$export$e08e3b67e392101e} from \"../utils/chain.mjs\";\nimport {readFromDataTransfer as $d40e85a29b831dd6$export$d9e760437831f8b3, writeToDataTransfer as $d40e85a29b831dd6$export$f9c1490890ddd063} from \"./utils.mjs\";\nimport {useEffectEvent as $fe16bffc7a557bf0$export$7f54fc3180508a52} from \"../utils/useEffectEvent.mjs\";\nimport {useFocus as $1e74c67db218ce67$export$f8168d8dd8fd66e6} from \"../interactions/useFocus.mjs\";\nimport {useRef as $d3JvD$useRef, useEffect as $d3JvD$useEffect} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\nconst $692863997030a376$var$globalEvents = new Map();\nfunction $692863997030a376$var$addGlobalEventListener(event, fn) {\n let eventData = $692863997030a376$var$globalEvents.get(event);\n if (!eventData) {\n let handlers = new Set();\n let listener = (e)=>{\n for (let handler of handlers)handler(e);\n };\n eventData = {\n listener: listener,\n handlers: handlers\n };\n $692863997030a376$var$globalEvents.set(event, eventData);\n document.addEventListener(event, listener);\n }\n eventData.handlers.add(fn);\n return ()=>{\n eventData.handlers.delete(fn);\n if (eventData.handlers.size === 0) {\n document.removeEventListener(event, eventData.listener);\n $692863997030a376$var$globalEvents.delete(event);\n }\n };\n}\nfunction $692863997030a376$export$2314ca2a3e892862(options) {\n let { isDisabled: isDisabled } = options;\n let isFocusedRef = (0, $d3JvD$useRef)(false);\n let { focusProps: focusProps } = (0, $1e74c67db218ce67$export$f8168d8dd8fd66e6)({\n onFocusChange: (isFocused)=>{\n isFocusedRef.current = isFocused;\n }\n });\n let onBeforeCopy = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)((e)=>{\n // Enable the \"Copy\" menu item in Safari if this element is focused and copying is supported.\n if (isFocusedRef.current && options.getItems) e.preventDefault();\n });\n let onCopy = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)((e)=>{\n if (!isFocusedRef.current || !options.getItems) return;\n e.preventDefault();\n if (e.clipboardData) {\n (0, $d40e85a29b831dd6$export$f9c1490890ddd063)(e.clipboardData, options.getItems({\n action: 'copy'\n }));\n options.onCopy?.();\n }\n });\n let onBeforeCut = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)((e)=>{\n if (isFocusedRef.current && options.onCut && options.getItems) e.preventDefault();\n });\n let onCut = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)((e)=>{\n if (!isFocusedRef.current || !options.onCut || !options.getItems) return;\n e.preventDefault();\n if (e.clipboardData) {\n (0, $d40e85a29b831dd6$export$f9c1490890ddd063)(e.clipboardData, options.getItems({\n action: 'cut'\n }));\n options.onCut();\n }\n });\n let onBeforePaste = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)((e)=>{\n // Unfortunately, e.clipboardData.types is not available in this event so we always\n // have to enable the Paste menu item even if the type of data is unsupported.\n if (isFocusedRef.current && options.onPaste) e.preventDefault();\n });\n let onPaste = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)((e)=>{\n if (!isFocusedRef.current || !options.onPaste) return;\n e.preventDefault();\n if (e.clipboardData) {\n let items = (0, $d40e85a29b831dd6$export$d9e760437831f8b3)(e.clipboardData);\n options.onPaste(items);\n }\n });\n (0, $d3JvD$useEffect)(()=>{\n if (isDisabled) return;\n return (0, $a4e76a5424781910$export$e08e3b67e392101e)($692863997030a376$var$addGlobalEventListener('beforecopy', onBeforeCopy), $692863997030a376$var$addGlobalEventListener('copy', onCopy), $692863997030a376$var$addGlobalEventListener('beforecut', onBeforeCut), $692863997030a376$var$addGlobalEventListener('cut', onCut), $692863997030a376$var$addGlobalEventListener('beforepaste', onBeforePaste), $692863997030a376$var$addGlobalEventListener('paste', onPaste));\n }, [\n isDisabled\n ]);\n return {\n clipboardProps: focusProps\n };\n}\n\n\nexport {$692863997030a376$export$2314ca2a3e892862 as useClipboard};\n//# sourceMappingURL=useClipboard.mjs.map\n","import {dom as $7230ffa83bc0c2cf$export$df3a06d6289f983e, Provider as $7230ffa83bc0c2cf$export$2881499e37b75b9a, useContextProps as $7230ffa83bc0c2cf$export$29f1550f4b0d4415, useRenderProps as $7230ffa83bc0c2cf$export$4d86445c2cf5e3} from \"./utils.mjs\";\nimport $7DqZ6$intlStringsmjs from \"./intlStrings.mjs\";\nimport {TextContext as $efe09c6d1c304b50$export$9afb8bc826b033ea} from \"./Text.mjs\";\nimport {useDrop as $7DqZ6$useDrop} from \"react-aria/useDrop\";\nimport {filterDOMProps as $7DqZ6$filterDOMProps} from \"react-aria/filterDOMProps\";\nimport {getEventTarget as $7DqZ6$getEventTarget, nodeContains as $7DqZ6$nodeContains} from \"react-aria/private/utils/shadowdom/DOMFunctions\";\nimport {isFocusable as $7DqZ6$isFocusable} from \"react-aria/private/utils/isFocusable\";\nimport {mergeProps as $7DqZ6$mergeProps} from \"react-aria/mergeProps\";\nimport $7DqZ6$react, {createContext as $7DqZ6$createContext, forwardRef as $7DqZ6$forwardRef, useRef as $7DqZ6$useRef} from \"react\";\nimport {useButton as $7DqZ6$useButton} from \"react-aria/useButton\";\nimport {useClipboard as $7DqZ6$useClipboard} from \"react-aria/useClipboard\";\nimport {useFocusRing as $7DqZ6$useFocusRing} from \"react-aria/useFocusRing\";\nimport {useHover as $7DqZ6$useHover} from \"react-aria/useHover\";\nimport {useLabels as $7DqZ6$useLabels} from \"react-aria/private/utils/useLabels\";\nimport {useLocalizedStringFormatter as $7DqZ6$useLocalizedStringFormatter} from \"react-aria/useLocalizedStringFormatter\";\nimport {useObjectRef as $7DqZ6$useObjectRef} from \"react-aria/useObjectRef\";\nimport {useSlotId as $7DqZ6$useSlotId} from \"react-aria/private/utils/useId\";\nimport {VisuallyHidden as $7DqZ6$VisuallyHidden} from \"react-aria/VisuallyHidden\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n/*\n * Copyright 2023 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst $070c0dd15dc89b58$export$14a72053295ff9a6 = /*#__PURE__*/ (0, $7DqZ6$createContext)(null);\nconst $070c0dd15dc89b58$export$3c6489d84dc98b6 = /*#__PURE__*/ (0, $7DqZ6$forwardRef)(function DropZone(props, ref) {\n let { isDisabled: isDisabled = false } = props;\n [props, ref] = (0, $7230ffa83bc0c2cf$export$29f1550f4b0d4415)(props, ref, $070c0dd15dc89b58$export$14a72053295ff9a6);\n let dropzoneRef = (0, $7DqZ6$useObjectRef)(ref);\n let buttonRef = (0, $7DqZ6$useRef)(null);\n let { dropProps: dropProps, dropButtonProps: dropButtonProps, isDropTarget: isDropTarget } = (0, $7DqZ6$useDrop)({\n ...props,\n ref: buttonRef,\n hasDropButton: true\n });\n let { buttonProps: buttonProps } = (0, $7DqZ6$useButton)(dropButtonProps || {}, buttonRef);\n let { hoverProps: hoverProps, isHovered: isHovered } = (0, $7DqZ6$useHover)(props);\n let { focusProps: focusProps, isFocused: isFocused, isFocusVisible: isFocusVisible } = (0, $7DqZ6$useFocusRing)();\n let stringFormatter = (0, $7DqZ6$useLocalizedStringFormatter)((0, ($parcel$interopDefault($7DqZ6$intlStringsmjs))), 'react-aria-components');\n let textId = (0, $7DqZ6$useSlotId)();\n let ariaLabel = props['aria-label'] || stringFormatter.format('dropzoneLabel');\n let messageId = props['aria-labelledby'];\n let ariaLabelledby = [\n textId,\n messageId\n ].filter(Boolean).join(' ');\n let labelProps = (0, $7DqZ6$useLabels)({\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby\n });\n let { clipboardProps: clipboardProps } = (0, $7DqZ6$useClipboard)({\n isDisabled: isDisabled,\n onPaste: (items)=>props.onDrop?.({\n type: 'drop',\n items: items,\n x: 0,\n y: 0,\n dropOperation: 'copy'\n })\n });\n let renderProps = (0, $7230ffa83bc0c2cf$export$4d86445c2cf5e3)({\n ...props,\n values: {\n isHovered: isHovered,\n isFocused: isFocused,\n isFocusVisible: isFocusVisible,\n isDropTarget: isDropTarget,\n isDisabled: isDisabled\n },\n defaultClassName: 'react-aria-DropZone'\n });\n let DOMProps = (0, $7DqZ6$filterDOMProps)(props, {\n global: true\n });\n delete DOMProps.id;\n return /*#__PURE__*/ (0, $7DqZ6$react).createElement((0, $7230ffa83bc0c2cf$export$2881499e37b75b9a), {\n values: [\n [\n (0, $efe09c6d1c304b50$export$9afb8bc826b033ea),\n {\n id: textId,\n slot: 'label'\n }\n ]\n ]\n }, /*#__PURE__*/ (0, $7DqZ6$react).createElement((0, $7230ffa83bc0c2cf$export$df3a06d6289f983e).div, {\n ...(0, $7DqZ6$mergeProps)(DOMProps, renderProps, dropProps, hoverProps),\n slot: props.slot || undefined,\n ref: dropzoneRef,\n onClick: (e)=>{\n let target = (0, $7DqZ6$getEventTarget)(e);\n while(target && (0, $7DqZ6$nodeContains)(dropzoneRef.current, target)){\n if ((0, $7DqZ6$isFocusable)(target)) break;\n else if (target === dropzoneRef.current) {\n buttonRef.current?.focus();\n break;\n }\n target = target.parentElement;\n }\n },\n \"data-hovered\": isHovered || undefined,\n \"data-focused\": isFocused || undefined,\n \"data-focus-visible\": isFocusVisible || undefined,\n \"data-drop-target\": isDropTarget || undefined,\n \"data-disabled\": isDisabled || undefined\n }, /*#__PURE__*/ (0, $7DqZ6$react).createElement((0, $7DqZ6$VisuallyHidden), null, /*#__PURE__*/ (0, $7DqZ6$react).createElement(\"button\", {\n ...(0, $7DqZ6$mergeProps)(buttonProps, focusProps, clipboardProps, labelProps),\n ref: buttonRef\n })), renderProps.children));\n});\n\n\nexport {$070c0dd15dc89b58$export$14a72053295ff9a6 as DropZoneContext, $070c0dd15dc89b58$export$3c6489d84dc98b6 as DropZone};\n//# sourceMappingURL=DropZone.mjs.map\n","import { createRecipeContext } from \"@chakra-ui/react/styled-system\";\nimport type { DropZoneRootSlotProps } from \"./drop-zone.types\";\n\nconst { withContext } = createRecipeContext({ key: \"nimbusDropZone\" });\n\n// DropZone Root - rendered `asChild` onto React Aria's `DropZone` element so\n// the recipe's styles apply directly to the RAC element (no intermediate\n// wrapper), keeping the forwarded ref pointed at the real drop target.\nexport const DropZoneRootSlot = withContext<\n HTMLDivElement,\n DropZoneRootSlotProps\n>(\"div\");\n","/**\n * Pre-compiled en messages for DropZone\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { defaultLabel: `Drag and drop files here` };\n","/**\n * Pre-compiled de messages for DropZone\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { defaultLabel: `Drag and drop files here` };\n","/**\n * Pre-compiled es messages for DropZone\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { defaultLabel: `Drag and drop files here` };\n","/**\n * Pre-compiled fr-FR messages for DropZone\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { defaultLabel: `Drag and drop files here` };\n","/**\n * Pre-compiled pt-BR messages for DropZone\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { defaultLabel: `Drag and drop files here` };\n","/**\n * Pre-compiled localized messages for DropZone component\n *\n * Generated by scripts/generate-dictionaries.ts\n * DO NOT EDIT MANUALLY\n *\n * @see https://react-spectrum.adobe.com/react-aria/internationalization.html\n */\n\nimport {\n type LocalizedString,\n type LocalizedStrings,\n} from \"@internationalized/string\";\nimport { normalizeMessages } from \"../../utils/normalize-messages\";\n\n// Pre-compiled message functions\nimport dropZoneMessages_en from \"./intl/en\";\nimport dropZoneMessages_de from \"./intl/de\";\nimport dropZoneMessages_es from \"./intl/es\";\nimport dropZoneMessages_fr from \"./intl/fr-FR\";\nimport dropZoneMessages_pt from \"./intl/pt-BR\";\n\n// Raw LocalizedStrings object for use with useLocalizedStringFormatter hook\nexport const dropZoneMessagesStrings: LocalizedStrings<\n string,\n LocalizedString\n> = {\n en: normalizeMessages(dropZoneMessages_en),\n de: normalizeMessages(dropZoneMessages_de),\n es: normalizeMessages(dropZoneMessages_es),\n \"fr-FR\": normalizeMessages(dropZoneMessages_fr),\n \"pt-BR\": normalizeMessages(dropZoneMessages_pt),\n} as LocalizedStrings<string, LocalizedString>;\n\n/**\n * Available message keys for DropZone component\n */\nexport type DropZoneMessageKey = \"defaultLabel\";\n","import { Children, useRef } from \"react\";\nimport { DropZone as RaDropZone, Text } from \"react-aria-components\";\nimport { useObjectRef } from \"react-aria\";\nimport { useRecipe } from \"@chakra-ui/react/styled-system\";\nimport { extractStyleProps, mergeRefs } from \"@/utils\";\nimport { useLocalizedStringFormatter } from \"@/hooks\";\nimport { Icon } from \"@/components\";\nimport { UploadFile } from \"@commercetools/nimbus-icons\";\nimport { DropZoneRootSlot } from \"./drop-zone.slots\";\nimport { dropZoneMessagesStrings } from \"./drop-zone.messages\";\nimport type { DropZoneProps } from \"./drop-zone.types\";\n\n/**\n * # DropZone\n *\n * An area into which files (or other draggable data) can be dragged and\n * dropped. DropZone does not itself provide a file picker — compose the\n * Nimbus `FileTrigger` component in its children for click-to-upload.\n *\n * Features:\n *\n * - Wraps React Aria's `DropZone` for full drag-and-drop behavior and\n * keyboard accessibility\n * - Renders a default upload icon and localized instruction label when no\n * children are provided; children, when provided, fully replace that\n * default (for example a composed `FileTrigger` + `Button`, or a\n * dropped-file list)\n * - Forwards `aria-label` / `aria-labelledby` straight to React Aria's\n * `DropZone`, which applies them to its focusable element. An explicit\n * label overrides only the accessible name — the default icon and visible\n * instruction still render — because the default's visible text is opted\n * out of the name via `slot={null}` and so never conflicts with it\n * - Supports Nimbus style props\n *\n * @see {@link https://nimbus-documentation.vercel.app/components/inputs/dropzone}\n * @supportsStyleProps\n */\nexport const DropZone = (props: DropZoneProps) => {\n const { ref: forwardedRef, children, ...rest } = props;\n\n const recipe = useRecipe({ key: \"nimbusDropZone\" });\n const [recipeProps, remainingProps] = recipe.splitVariantProps({\n ...rest,\n });\n const [styleProps, elementProps] = extractStyleProps(remainingProps);\n\n const localRef = useRef<HTMLDivElement>(null);\n const ref = useObjectRef(mergeRefs(localRef, forwardedRef));\n\n const msg = useLocalizedStringFormatter(dropZoneMessagesStrings);\n const hasChildren = Children.count(children) > 0;\n // React Aria's `DropZone` always computes an `aria-label` for its focusable\n // element — either the consumer's explicit `aria-label`, or (if absent) its\n // own internal, English-only \"DropZone\" fallback string — and, whenever a\n // `Text slot=\"label\"` descendant exists, combines that fallback with the\n // slotted text via `aria-labelledby`, concatenating both into the\n // accessible name. There is no prop to suppress React Aria's internal\n // fallback. So for the default content we supply our own localized label\n // directly as `aria-label` (which wins over React Aria's fallback) and\n // render the matching visible line with `slot={null}` — an explicit,\n // React-Aria-documented opt-out that stops it from being auto-wired into\n // `DropZone`'s label slot — so nothing is left to concatenate against.\n const hasExplicitLabel = Boolean(\n props[\"aria-label\"] || props[\"aria-labelledby\"]\n );\n const defaultLabel = msg.format(\"defaultLabel\");\n\n return (\n <DropZoneRootSlot {...recipeProps} {...styleProps} asChild>\n <RaDropZone\n ref={ref}\n aria-label={hasExplicitLabel ? undefined : defaultLabel}\n {...elementProps}\n >\n {hasChildren ? (\n children\n ) : (\n <>\n <Icon boxSize=\"var(--drop-zone-icon-size)\" flexShrink={0}>\n <UploadFile />\n </Icon>\n {/* eslint-disable-next-line @typescript-eslint/no-explicit-any -- RAC's `TextProps` type omits `SlotProps`, even though `Text` reads `slot` at runtime via `useContextProps`; `slot={null}` is RAC's documented opt-out from an ambient parent slot (here, `DropZone`'s own `label` slot). */}\n <Text {...({ slot: null } as any)}>{defaultLabel}</Text>\n </>\n )}\n </RaDropZone>\n </DropZoneRootSlot>\n );\n};\n\nDropZone.displayName = \"DropZone\";\n"],"x_google_ignoreList":[0,1],"mappings":"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"}
1
+ {"version":3,"file":"drop-zone-N7k0XExn.cjs.js","names":["$1e74c67db218ce67$export$f8168d8dd8fd66e6","$fe16bffc7a557bf0$export$7f54fc3180508a52","$d40e85a29b831dd6$export$f9c1490890ddd063","$d40e85a29b831dd6$export$d9e760437831f8b3","$a4e76a5424781910$export$e08e3b67e392101e","$7230ffa83bc0c2cf$export$29f1550f4b0d4415","$7DqZ6$useObjectRef","$7DqZ6$useDrop","$7DqZ6$useButton","$7DqZ6$useHover","$7DqZ6$useFocusRing","$7DqZ6$useLocalizedStringFormatter","$7DqZ6$intlStringsmjs","$7DqZ6$useSlotId","$7DqZ6$useLabels","$7DqZ6$useClipboard","$7230ffa83bc0c2cf$export$4d86445c2cf5e3","$7DqZ6$filterDOMProps","$7DqZ6$react","$7230ffa83bc0c2cf$export$2881499e37b75b9a","$efe09c6d1c304b50$export$9afb8bc826b033ea","$7230ffa83bc0c2cf$export$df3a06d6289f983e","$7DqZ6$mergeProps","$7DqZ6$getEventTarget","$7DqZ6$nodeContains","$7DqZ6$isFocusable","$7DqZ6$VisuallyHidden"],"sources":["../../../../node_modules/.pnpm/react-aria@3.50.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/react-aria/dist/private/dnd/useClipboard.mjs","../../../../node_modules/.pnpm/react-aria-components@1.19.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/react-aria-components/dist/private/DropZone.mjs","../../src/components/drop-zone/drop-zone.slots.tsx","../../src/components/drop-zone/intl/en.ts","../../src/components/drop-zone/intl/de.ts","../../src/components/drop-zone/intl/es.ts","../../src/components/drop-zone/intl/fr-FR.ts","../../src/components/drop-zone/intl/pt-BR.ts","../../src/components/drop-zone/drop-zone.messages.ts","../../src/components/drop-zone/drop-zone.tsx"],"sourcesContent":["import {chain as $a4e76a5424781910$export$e08e3b67e392101e} from \"../utils/chain.mjs\";\nimport {readFromDataTransfer as $d40e85a29b831dd6$export$d9e760437831f8b3, writeToDataTransfer as $d40e85a29b831dd6$export$f9c1490890ddd063} from \"./utils.mjs\";\nimport {useEffectEvent as $fe16bffc7a557bf0$export$7f54fc3180508a52} from \"../utils/useEffectEvent.mjs\";\nimport {useFocus as $1e74c67db218ce67$export$f8168d8dd8fd66e6} from \"../interactions/useFocus.mjs\";\nimport {useRef as $d3JvD$useRef, useEffect as $d3JvD$useEffect} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\nconst $692863997030a376$var$globalEvents = new Map();\nfunction $692863997030a376$var$addGlobalEventListener(event, fn) {\n let eventData = $692863997030a376$var$globalEvents.get(event);\n if (!eventData) {\n let handlers = new Set();\n let listener = (e)=>{\n for (let handler of handlers)handler(e);\n };\n eventData = {\n listener: listener,\n handlers: handlers\n };\n $692863997030a376$var$globalEvents.set(event, eventData);\n document.addEventListener(event, listener);\n }\n eventData.handlers.add(fn);\n return ()=>{\n eventData.handlers.delete(fn);\n if (eventData.handlers.size === 0) {\n document.removeEventListener(event, eventData.listener);\n $692863997030a376$var$globalEvents.delete(event);\n }\n };\n}\nfunction $692863997030a376$export$2314ca2a3e892862(options) {\n let { isDisabled: isDisabled } = options;\n let isFocusedRef = (0, $d3JvD$useRef)(false);\n let { focusProps: focusProps } = (0, $1e74c67db218ce67$export$f8168d8dd8fd66e6)({\n onFocusChange: (isFocused)=>{\n isFocusedRef.current = isFocused;\n }\n });\n let onBeforeCopy = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)((e)=>{\n // Enable the \"Copy\" menu item in Safari if this element is focused and copying is supported.\n if (isFocusedRef.current && options.getItems) e.preventDefault();\n });\n let onCopy = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)((e)=>{\n if (!isFocusedRef.current || !options.getItems) return;\n e.preventDefault();\n if (e.clipboardData) {\n (0, $d40e85a29b831dd6$export$f9c1490890ddd063)(e.clipboardData, options.getItems({\n action: 'copy'\n }));\n options.onCopy?.();\n }\n });\n let onBeforeCut = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)((e)=>{\n if (isFocusedRef.current && options.onCut && options.getItems) e.preventDefault();\n });\n let onCut = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)((e)=>{\n if (!isFocusedRef.current || !options.onCut || !options.getItems) return;\n e.preventDefault();\n if (e.clipboardData) {\n (0, $d40e85a29b831dd6$export$f9c1490890ddd063)(e.clipboardData, options.getItems({\n action: 'cut'\n }));\n options.onCut();\n }\n });\n let onBeforePaste = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)((e)=>{\n // Unfortunately, e.clipboardData.types is not available in this event so we always\n // have to enable the Paste menu item even if the type of data is unsupported.\n if (isFocusedRef.current && options.onPaste) e.preventDefault();\n });\n let onPaste = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)((e)=>{\n if (!isFocusedRef.current || !options.onPaste) return;\n e.preventDefault();\n if (e.clipboardData) {\n let items = (0, $d40e85a29b831dd6$export$d9e760437831f8b3)(e.clipboardData);\n options.onPaste(items);\n }\n });\n (0, $d3JvD$useEffect)(()=>{\n if (isDisabled) return;\n return (0, $a4e76a5424781910$export$e08e3b67e392101e)($692863997030a376$var$addGlobalEventListener('beforecopy', onBeforeCopy), $692863997030a376$var$addGlobalEventListener('copy', onCopy), $692863997030a376$var$addGlobalEventListener('beforecut', onBeforeCut), $692863997030a376$var$addGlobalEventListener('cut', onCut), $692863997030a376$var$addGlobalEventListener('beforepaste', onBeforePaste), $692863997030a376$var$addGlobalEventListener('paste', onPaste));\n }, [\n isDisabled\n ]);\n return {\n clipboardProps: focusProps\n };\n}\n\n\nexport {$692863997030a376$export$2314ca2a3e892862 as useClipboard};\n//# sourceMappingURL=useClipboard.mjs.map\n","import {dom as $7230ffa83bc0c2cf$export$df3a06d6289f983e, Provider as $7230ffa83bc0c2cf$export$2881499e37b75b9a, useContextProps as $7230ffa83bc0c2cf$export$29f1550f4b0d4415, useRenderProps as $7230ffa83bc0c2cf$export$4d86445c2cf5e3} from \"./utils.mjs\";\nimport $7DqZ6$intlStringsmjs from \"./intlStrings.mjs\";\nimport {TextContext as $efe09c6d1c304b50$export$9afb8bc826b033ea} from \"./Text.mjs\";\nimport {useDrop as $7DqZ6$useDrop} from \"react-aria/useDrop\";\nimport {filterDOMProps as $7DqZ6$filterDOMProps} from \"react-aria/filterDOMProps\";\nimport {getEventTarget as $7DqZ6$getEventTarget, nodeContains as $7DqZ6$nodeContains} from \"react-aria/private/utils/shadowdom/DOMFunctions\";\nimport {isFocusable as $7DqZ6$isFocusable} from \"react-aria/private/utils/isFocusable\";\nimport {mergeProps as $7DqZ6$mergeProps} from \"react-aria/mergeProps\";\nimport $7DqZ6$react, {createContext as $7DqZ6$createContext, forwardRef as $7DqZ6$forwardRef, useRef as $7DqZ6$useRef} from \"react\";\nimport {useButton as $7DqZ6$useButton} from \"react-aria/useButton\";\nimport {useClipboard as $7DqZ6$useClipboard} from \"react-aria/useClipboard\";\nimport {useFocusRing as $7DqZ6$useFocusRing} from \"react-aria/useFocusRing\";\nimport {useHover as $7DqZ6$useHover} from \"react-aria/useHover\";\nimport {useLabels as $7DqZ6$useLabels} from \"react-aria/private/utils/useLabels\";\nimport {useLocalizedStringFormatter as $7DqZ6$useLocalizedStringFormatter} from \"react-aria/useLocalizedStringFormatter\";\nimport {useObjectRef as $7DqZ6$useObjectRef} from \"react-aria/useObjectRef\";\nimport {useSlotId as $7DqZ6$useSlotId} from \"react-aria/private/utils/useId\";\nimport {VisuallyHidden as $7DqZ6$VisuallyHidden} from \"react-aria/VisuallyHidden\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n/*\n * Copyright 2023 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst $070c0dd15dc89b58$export$14a72053295ff9a6 = /*#__PURE__*/ (0, $7DqZ6$createContext)(null);\nconst $070c0dd15dc89b58$export$3c6489d84dc98b6 = /*#__PURE__*/ (0, $7DqZ6$forwardRef)(function DropZone(props, ref) {\n let { isDisabled: isDisabled = false } = props;\n [props, ref] = (0, $7230ffa83bc0c2cf$export$29f1550f4b0d4415)(props, ref, $070c0dd15dc89b58$export$14a72053295ff9a6);\n let dropzoneRef = (0, $7DqZ6$useObjectRef)(ref);\n let buttonRef = (0, $7DqZ6$useRef)(null);\n let { dropProps: dropProps, dropButtonProps: dropButtonProps, isDropTarget: isDropTarget } = (0, $7DqZ6$useDrop)({\n ...props,\n ref: buttonRef,\n hasDropButton: true\n });\n let { buttonProps: buttonProps } = (0, $7DqZ6$useButton)(dropButtonProps || {}, buttonRef);\n let { hoverProps: hoverProps, isHovered: isHovered } = (0, $7DqZ6$useHover)(props);\n let { focusProps: focusProps, isFocused: isFocused, isFocusVisible: isFocusVisible } = (0, $7DqZ6$useFocusRing)();\n let stringFormatter = (0, $7DqZ6$useLocalizedStringFormatter)((0, ($parcel$interopDefault($7DqZ6$intlStringsmjs))), 'react-aria-components');\n let textId = (0, $7DqZ6$useSlotId)();\n let ariaLabel = props['aria-label'] || stringFormatter.format('dropzoneLabel');\n let messageId = props['aria-labelledby'];\n let ariaLabelledby = [\n textId,\n messageId\n ].filter(Boolean).join(' ');\n let labelProps = (0, $7DqZ6$useLabels)({\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby\n });\n let { clipboardProps: clipboardProps } = (0, $7DqZ6$useClipboard)({\n isDisabled: isDisabled,\n onPaste: (items)=>props.onDrop?.({\n type: 'drop',\n items: items,\n x: 0,\n y: 0,\n dropOperation: 'copy'\n })\n });\n let renderProps = (0, $7230ffa83bc0c2cf$export$4d86445c2cf5e3)({\n ...props,\n values: {\n isHovered: isHovered,\n isFocused: isFocused,\n isFocusVisible: isFocusVisible,\n isDropTarget: isDropTarget,\n isDisabled: isDisabled\n },\n defaultClassName: 'react-aria-DropZone'\n });\n let DOMProps = (0, $7DqZ6$filterDOMProps)(props, {\n global: true\n });\n delete DOMProps.id;\n return /*#__PURE__*/ (0, $7DqZ6$react).createElement((0, $7230ffa83bc0c2cf$export$2881499e37b75b9a), {\n values: [\n [\n (0, $efe09c6d1c304b50$export$9afb8bc826b033ea),\n {\n id: textId,\n slot: 'label'\n }\n ]\n ]\n }, /*#__PURE__*/ (0, $7DqZ6$react).createElement((0, $7230ffa83bc0c2cf$export$df3a06d6289f983e).div, {\n ...(0, $7DqZ6$mergeProps)(DOMProps, renderProps, dropProps, hoverProps),\n slot: props.slot || undefined,\n ref: dropzoneRef,\n onClick: (e)=>{\n let target = (0, $7DqZ6$getEventTarget)(e);\n while(target && (0, $7DqZ6$nodeContains)(dropzoneRef.current, target)){\n if ((0, $7DqZ6$isFocusable)(target)) break;\n else if (target === dropzoneRef.current) {\n buttonRef.current?.focus();\n break;\n }\n target = target.parentElement;\n }\n },\n \"data-hovered\": isHovered || undefined,\n \"data-focused\": isFocused || undefined,\n \"data-focus-visible\": isFocusVisible || undefined,\n \"data-drop-target\": isDropTarget || undefined,\n \"data-disabled\": isDisabled || undefined\n }, /*#__PURE__*/ (0, $7DqZ6$react).createElement((0, $7DqZ6$VisuallyHidden), null, /*#__PURE__*/ (0, $7DqZ6$react).createElement(\"button\", {\n ...(0, $7DqZ6$mergeProps)(buttonProps, focusProps, clipboardProps, labelProps),\n ref: buttonRef\n })), renderProps.children));\n});\n\n\nexport {$070c0dd15dc89b58$export$14a72053295ff9a6 as DropZoneContext, $070c0dd15dc89b58$export$3c6489d84dc98b6 as DropZone};\n//# sourceMappingURL=DropZone.mjs.map\n","import { createRecipeContext } from \"@chakra-ui/react/styled-system\";\nimport type { DropZoneRootSlotProps } from \"./drop-zone.types\";\n\nconst { withContext } = createRecipeContext({ key: \"nimbusDropZone\" });\n\n// DropZone Root - rendered `asChild` onto React Aria's `DropZone` element so\n// the recipe's styles apply directly to the RAC element (no intermediate\n// wrapper), keeping the forwarded ref pointed at the real drop target.\nexport const DropZoneRootSlot = withContext<\n HTMLDivElement,\n DropZoneRootSlotProps\n>(\"div\");\n","/**\n * Pre-compiled en messages for DropZone\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { defaultLabel: `Drag and drop files here` };\n","/**\n * Pre-compiled de messages for DropZone\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { defaultLabel: `Dateinen per Drag & Drop hier ablegen` };\n","/**\n * Pre-compiled es messages for DropZone\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { defaultLabel: `Arrastar y soltar archivos aquí` };\n","/**\n * Pre-compiled fr-FR messages for DropZone\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { defaultLabel: `Glissez-déposez les fichiers ici` };\n","/**\n * Pre-compiled pt-BR messages for DropZone\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default { defaultLabel: `Arraste e solte arquivos aqui` };\n","/**\n * Pre-compiled localized messages for DropZone component\n *\n * Generated by scripts/generate-dictionaries.ts\n * DO NOT EDIT MANUALLY\n *\n * @see https://react-spectrum.adobe.com/react-aria/internationalization.html\n */\n\nimport {\n type LocalizedString,\n type LocalizedStrings,\n} from \"@internationalized/string\";\nimport { normalizeMessages } from \"../../utils/normalize-messages\";\n\n// Pre-compiled message functions\nimport dropZoneMessages_en from \"./intl/en\";\nimport dropZoneMessages_de from \"./intl/de\";\nimport dropZoneMessages_es from \"./intl/es\";\nimport dropZoneMessages_fr from \"./intl/fr-FR\";\nimport dropZoneMessages_pt from \"./intl/pt-BR\";\n\n// Raw LocalizedStrings object for use with useLocalizedStringFormatter hook\nexport const dropZoneMessagesStrings: LocalizedStrings<\n string,\n LocalizedString\n> = {\n en: normalizeMessages(dropZoneMessages_en),\n de: normalizeMessages(dropZoneMessages_de),\n es: normalizeMessages(dropZoneMessages_es),\n \"fr-FR\": normalizeMessages(dropZoneMessages_fr),\n \"pt-BR\": normalizeMessages(dropZoneMessages_pt),\n} as LocalizedStrings<string, LocalizedString>;\n\n/**\n * Available message keys for DropZone component\n */\nexport type DropZoneMessageKey = \"defaultLabel\";\n","import { Children, useRef } from \"react\";\nimport { DropZone as RaDropZone, Text } from \"react-aria-components\";\nimport { useObjectRef } from \"react-aria\";\nimport { useRecipe } from \"@chakra-ui/react/styled-system\";\nimport { extractStyleProps, mergeRefs } from \"@/utils\";\nimport { useLocalizedStringFormatter } from \"@/hooks\";\nimport { Icon } from \"@/components\";\nimport { UploadFile } from \"@commercetools/nimbus-icons\";\nimport { DropZoneRootSlot } from \"./drop-zone.slots\";\nimport { dropZoneMessagesStrings } from \"./drop-zone.messages\";\nimport type { DropZoneProps } from \"./drop-zone.types\";\n\n/**\n * # DropZone\n *\n * An area into which files (or other draggable data) can be dragged and\n * dropped. DropZone does not itself provide a file picker — compose the\n * Nimbus `FileTrigger` component in its children for click-to-upload.\n *\n * Features:\n *\n * - Wraps React Aria's `DropZone` for full drag-and-drop behavior and\n * keyboard accessibility\n * - Renders a default upload icon and localized instruction label when no\n * children are provided; children, when provided, fully replace that\n * default (for example a composed `FileTrigger` + `Button`, or a\n * dropped-file list)\n * - Forwards `aria-label` / `aria-labelledby` straight to React Aria's\n * `DropZone`, which applies them to its focusable element. An explicit\n * label overrides only the accessible name — the default icon and visible\n * instruction still render — because the default's visible text is opted\n * out of the name via `slot={null}` and so never conflicts with it\n * - Supports Nimbus style props\n *\n * @see {@link https://nimbus-documentation.vercel.app/components/inputs/dropzone}\n * @supportsStyleProps\n */\nexport const DropZone = (props: DropZoneProps) => {\n const { ref: forwardedRef, children, ...rest } = props;\n\n const recipe = useRecipe({ key: \"nimbusDropZone\" });\n const [recipeProps, remainingProps] = recipe.splitVariantProps({\n ...rest,\n });\n const [styleProps, elementProps] = extractStyleProps(remainingProps);\n\n const localRef = useRef<HTMLDivElement>(null);\n const ref = useObjectRef(mergeRefs(localRef, forwardedRef));\n\n const msg = useLocalizedStringFormatter(dropZoneMessagesStrings);\n const hasChildren = Children.count(children) > 0;\n // React Aria's `DropZone` always computes an `aria-label` for its focusable\n // element — either the consumer's explicit `aria-label`, or (if absent) its\n // own internal, English-only \"DropZone\" fallback string — and, whenever a\n // `Text slot=\"label\"` descendant exists, combines that fallback with the\n // slotted text via `aria-labelledby`, concatenating both into the\n // accessible name. There is no prop to suppress React Aria's internal\n // fallback. So for the default content we supply our own localized label\n // directly as `aria-label` (which wins over React Aria's fallback) and\n // render the matching visible line with `slot={null}` — an explicit,\n // React-Aria-documented opt-out that stops it from being auto-wired into\n // `DropZone`'s label slot — so nothing is left to concatenate against.\n const hasExplicitLabel = Boolean(\n props[\"aria-label\"] || props[\"aria-labelledby\"]\n );\n const defaultLabel = msg.format(\"defaultLabel\");\n\n return (\n <DropZoneRootSlot {...recipeProps} {...styleProps} asChild>\n <RaDropZone\n ref={ref}\n aria-label={hasExplicitLabel ? undefined : defaultLabel}\n {...elementProps}\n >\n {hasChildren ? (\n children\n ) : (\n <>\n <Icon boxSize=\"var(--drop-zone-icon-size)\" flexShrink={0}>\n <UploadFile />\n </Icon>\n {/* eslint-disable-next-line @typescript-eslint/no-explicit-any -- RAC's `TextProps` type omits `SlotProps`, even though `Text` reads `slot` at runtime via `useContextProps`; `slot={null}` is RAC's documented opt-out from an ambient parent slot (here, `DropZone`'s own `label` slot). */}\n <Text {...({ slot: null } as any)}>{defaultLabel}</Text>\n </>\n )}\n </RaDropZone>\n </DropZoneRootSlot>\n );\n};\n\nDropZone.displayName = \"DropZone\";\n"],"x_google_ignoreList":[0,1],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { t as e } from "./theme-BR3bc6tH.esm.js";
1
+ import { t as e } from "./theme-CFqa_6UM.esm.js";
2
2
  //#region src/utils/extract-style-props.ts
3
3
  function t(t) {
4
4
  let n = {}, r = { ...t };
@@ -9,4 +9,4 @@ function t(t) {
9
9
  //#endregion
10
10
  export { t };
11
11
 
12
- //# sourceMappingURL=extract-style-props-BPnHKmWR.esm.js.map
12
+ //# sourceMappingURL=extract-style-props-D519tVOc.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"extract-style-props-BPnHKmWR.esm.js","names":[],"sources":["../../src/utils/extract-style-props.ts"],"sourcesContent":["import { system } from \"@/theme\";\n\n/**\n * Extracts chakra-ui style-props from an object, separating them from other props\n * @param props The props object to separate\n * @returns A tuple containing [styleProps, otherProps]\n */\nexport function extractStyleProps<T extends object>(\n props: T\n): [Record<string, unknown>, Omit<T, string>] {\n const styleProps: Record<string, unknown> = {};\n const otherProps = { ...props } as Record<string, unknown>;\n\n // Process only own properties\n Object.keys(props).forEach((key) => {\n if (\n Object.prototype.hasOwnProperty.call(props, key) &&\n system.isValidProperty(key)\n ) {\n styleProps[key] = props[key as keyof T];\n delete otherProps[key];\n }\n });\n\n return [styleProps, otherProps as Omit<T, string>];\n}\n"],"mappings":";;AAOA,SAAgB,EACd,GAC4C;CAC5C,IAAM,IAAsC,CAAC,GACvC,IAAa,EAAE,GAAG,EAAM;CAa9B,OAVA,OAAO,KAAK,CAAK,CAAC,CAAC,SAAS,MAAQ;EAClC,AACE,OAAO,UAAU,eAAe,KAAK,GAAO,CAAG,KAC/C,EAAO,gBAAgB,CAAG,MAE1B,EAAW,KAAO,EAAM,IACxB,OAAO,EAAW;CAEtB,CAAC,GAEM,CAAC,GAAY,CAA6B;AACnD"}
1
+ {"version":3,"file":"extract-style-props-D519tVOc.esm.js","names":[],"sources":["../../src/utils/extract-style-props.ts"],"sourcesContent":["import { system } from \"@/theme\";\n\n/**\n * Extracts chakra-ui style-props from an object, separating them from other props\n * @param props The props object to separate\n * @returns A tuple containing [styleProps, otherProps]\n */\nexport function extractStyleProps<T extends object>(\n props: T\n): [Record<string, unknown>, Omit<T, string>] {\n const styleProps: Record<string, unknown> = {};\n const otherProps = { ...props } as Record<string, unknown>;\n\n // Process only own properties\n Object.keys(props).forEach((key) => {\n if (\n Object.prototype.hasOwnProperty.call(props, key) &&\n system.isValidProperty(key)\n ) {\n styleProps[key] = props[key as keyof T];\n delete otherProps[key];\n }\n });\n\n return [styleProps, otherProps as Omit<T, string>];\n}\n"],"mappings":";;AAOA,SAAgB,EACd,GAC4C;CAC5C,IAAM,IAAsC,CAAC,GACvC,IAAa,EAAE,GAAG,EAAM;CAa9B,OAVA,OAAO,KAAK,CAAK,CAAC,CAAC,SAAS,MAAQ;EAClC,AACE,OAAO,UAAU,eAAe,KAAK,GAAO,CAAG,KAC/C,EAAO,gBAAgB,CAAG,MAE1B,EAAW,KAAO,EAAM,IACxB,OAAO,EAAW;CAEtB,CAAC,GAEM,CAAC,GAAY,CAA6B;AACnD"}
@@ -1,2 +1,2 @@
1
- const e=require("./theme-tOoHVZZ6.cjs.js");function t(t){let n={},r={...t};return Object.keys(t).forEach(i=>{Object.prototype.hasOwnProperty.call(t,i)&&e.t.isValidProperty(i)&&(n[i]=t[i],delete r[i])}),[n,r]}Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return t}});
2
- //# sourceMappingURL=extract-style-props-CA1O0IF2.cjs.js.map
1
+ const e=require("./theme-DA63MDZQ.cjs.js");function t(t){let n={},r={...t};return Object.keys(t).forEach(i=>{Object.prototype.hasOwnProperty.call(t,i)&&e.t.isValidProperty(i)&&(n[i]=t[i],delete r[i])}),[n,r]}Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return t}});
2
+ //# sourceMappingURL=extract-style-props-WNdpT-ME.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"extract-style-props-CA1O0IF2.cjs.js","names":[],"sources":["../../src/utils/extract-style-props.ts"],"sourcesContent":["import { system } from \"@/theme\";\n\n/**\n * Extracts chakra-ui style-props from an object, separating them from other props\n * @param props The props object to separate\n * @returns A tuple containing [styleProps, otherProps]\n */\nexport function extractStyleProps<T extends object>(\n props: T\n): [Record<string, unknown>, Omit<T, string>] {\n const styleProps: Record<string, unknown> = {};\n const otherProps = { ...props } as Record<string, unknown>;\n\n // Process only own properties\n Object.keys(props).forEach((key) => {\n if (\n Object.prototype.hasOwnProperty.call(props, key) &&\n system.isValidProperty(key)\n ) {\n styleProps[key] = props[key as keyof T];\n delete otherProps[key];\n }\n });\n\n return [styleProps, otherProps as Omit<T, string>];\n}\n"],"mappings":"2CAOA,SAAgB,EACd,EAC4C,CAC5C,IAAM,EAAsC,CAAC,EACvC,EAAa,CAAE,GAAG,CAAM,EAa9B,OAVA,OAAO,KAAK,CAAK,CAAC,CAAC,QAAS,GAAQ,CAEhC,OAAO,UAAU,eAAe,KAAK,EAAO,CAAG,GAC/C,EAAA,EAAO,gBAAgB,CAAG,IAE1B,EAAW,GAAO,EAAM,GACxB,OAAO,EAAW,GAEtB,CAAC,EAEM,CAAC,EAAY,CAA6B,CACnD"}
1
+ {"version":3,"file":"extract-style-props-WNdpT-ME.cjs.js","names":[],"sources":["../../src/utils/extract-style-props.ts"],"sourcesContent":["import { system } from \"@/theme\";\n\n/**\n * Extracts chakra-ui style-props from an object, separating them from other props\n * @param props The props object to separate\n * @returns A tuple containing [styleProps, otherProps]\n */\nexport function extractStyleProps<T extends object>(\n props: T\n): [Record<string, unknown>, Omit<T, string>] {\n const styleProps: Record<string, unknown> = {};\n const otherProps = { ...props } as Record<string, unknown>;\n\n // Process only own properties\n Object.keys(props).forEach((key) => {\n if (\n Object.prototype.hasOwnProperty.call(props, key) &&\n system.isValidProperty(key)\n ) {\n styleProps[key] = props[key as keyof T];\n delete otherProps[key];\n }\n });\n\n return [styleProps, otherProps as Omit<T, string>];\n}\n"],"mappings":"2CAOA,SAAgB,EACd,EAC4C,CAC5C,IAAM,EAAsC,CAAC,EACvC,EAAa,CAAE,GAAG,CAAM,EAa9B,OAVA,OAAO,KAAK,CAAK,CAAC,CAAC,QAAS,GAAQ,CAEhC,OAAO,UAAU,eAAe,KAAK,EAAO,CAAG,GAC/C,EAAA,EAAO,gBAAgB,CAAG,IAE1B,EAAW,GAAO,EAAM,GACxB,OAAO,EAAW,GAEtB,CAAC,EAEM,CAAC,EAAY,CAA6B,CACnD"}
@@ -1,7 +1,7 @@
1
- import { t as e } from "./loading-spinner-CTPm1sYC.esm.js";
1
+ import { t as e } from "./loading-spinner-DZoySVDH.esm.js";
2
2
  import { n as t, t as n } from "./normalize-messages-B_f-0I5n.esm.js";
3
3
  import { t as r } from "./group-BdWGHf4v.esm.js";
4
- import { t as i } from "./button-BhvlZrT2.esm.js";
4
+ import { t as i } from "./button-DyM-iqBq.esm.js";
5
5
  import { jsx as a, jsxs as o } from "react/jsx-runtime";
6
6
  //#endregion
7
7
  //#region src/patterns/actions/form-action-bar/form-action-bar.messages.ts
@@ -82,4 +82,4 @@ c.displayName = "FormActionBar";
82
82
  //#endregion
83
83
  export { c as t };
84
84
 
85
- //# sourceMappingURL=form-action-bar-C8wkuLiF.esm.js.map
85
+ //# sourceMappingURL=form-action-bar-CfJjVyeS.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"form-action-bar-C8wkuLiF.esm.js","names":[],"sources":["../../src/patterns/actions/form-action-bar/intl/en.ts","../../src/patterns/actions/form-action-bar/intl/de.ts","../../src/patterns/actions/form-action-bar/intl/es.ts","../../src/patterns/actions/form-action-bar/intl/fr-FR.ts","../../src/patterns/actions/form-action-bar/intl/pt-BR.ts","../../src/patterns/actions/form-action-bar/form-action-bar.messages.ts","../../src/patterns/actions/form-action-bar/form-action-bar.tsx"],"sourcesContent":["/**\n * Pre-compiled en messages for FormActionBar\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default {\n ariaLabel: `Form actions`,\n cancel: `Cancel`,\n delete: `Delete`,\n save: `Save`,\n};\n","/**\n * Pre-compiled de messages for FormActionBar\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default {\n ariaLabel: `Formular-Aktionen`,\n cancel: `Abbrechen`,\n delete: `Löschen`,\n save: `Speichern`,\n};\n","/**\n * Pre-compiled es messages for FormActionBar\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default {\n ariaLabel: `Crear acciones`,\n cancel: `Cancelar`,\n delete: `Eliminar`,\n save: `Guardar`,\n};\n","/**\n * Pre-compiled fr-FR messages for FormActionBar\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default {\n ariaLabel: `Actions du formulaire`,\n cancel: `Annuler`,\n delete: `Supprimer`,\n save: `Enregistrer`,\n};\n","/**\n * Pre-compiled pt-BR messages for FormActionBar\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default {\n ariaLabel: `Ações de formulários`,\n cancel: `Cancelar`,\n delete: `Excluir`,\n save: `Salvar`,\n};\n","/**\n * Pre-compiled localized messages for FormActionBar component\n *\n * Generated by scripts/generate-dictionaries.ts\n * DO NOT EDIT MANUALLY\n *\n * @see https://react-spectrum.adobe.com/react-aria/internationalization.html\n */\n\nimport {\n type LocalizedString,\n type LocalizedStrings,\n} from \"@internationalized/string\";\nimport { normalizeMessages } from \"../../../utils/normalize-messages\";\n\n// Pre-compiled message functions\nimport formActionBarMessages_en from \"./intl/en\";\nimport formActionBarMessages_de from \"./intl/de\";\nimport formActionBarMessages_es from \"./intl/es\";\nimport formActionBarMessages_fr from \"./intl/fr-FR\";\nimport formActionBarMessages_pt from \"./intl/pt-BR\";\n\n// Raw LocalizedStrings object for use with useLocalizedStringFormatter hook\nexport const formActionBarMessagesStrings: LocalizedStrings<\n string,\n LocalizedString\n> = {\n en: normalizeMessages(formActionBarMessages_en),\n de: normalizeMessages(formActionBarMessages_de),\n es: normalizeMessages(formActionBarMessages_es),\n \"fr-FR\": normalizeMessages(formActionBarMessages_fr),\n \"pt-BR\": normalizeMessages(formActionBarMessages_pt),\n} as LocalizedStrings<string, LocalizedString>;\n\n/**\n * Available message keys for FormActionBar component\n */\nexport type FormActionBarMessageKey =\n \"ariaLabel\" | \"cancel\" | \"delete\" | \"save\";\n","import { Button } from \"@/components/button/button\";\nimport { Group } from \"@/components/group/group\";\nimport { LoadingSpinner } from \"@/components/loading-spinner/loading-spinner\";\nimport { useLocalizedStringFormatter } from \"@/hooks\";\nimport { formActionBarMessagesStrings } from \"./form-action-bar.messages\";\nimport type { FormActionBarProps } from \"./form-action-bar.types\";\n\n/**\n * # FormActionBar\n *\n * A pattern providing save / cancel / optional delete buttons for form footers.\n *\n * Works inside any footer slot: `DefaultPage.Footer`, `ModalPage.Footer`,\n * `Drawer.Footer`, `Dialog.Footer`. Replaces separate form-page wrappers.\n *\n * @example\n * ```tsx\n * <FormActionBar\n * onSave={handleSave}\n * onCancel={handleCancel}\n * onDelete={handleDelete}\n * isSaveDisabled={!isDirty}\n * isSaveLoading={isSaving}\n * />\n * ```\n */\nexport const FormActionBar = ({\n onSave,\n onCancel,\n onDelete,\n saveLabel,\n cancelLabel,\n deleteLabel,\n isSaveDisabled = false,\n isSaveLoading = false,\n isDeleteLoading = false,\n \"aria-label\": ariaLabel,\n cancelSlot,\n buttonSize,\n}: FormActionBarProps) => {\n const msg = useLocalizedStringFormatter(formActionBarMessagesStrings);\n const isBusy = isSaveLoading || isDeleteLoading;\n\n const resolvedSaveLabel = saveLabel ?? msg.format(\"save\");\n const resolvedCancelLabel = cancelLabel ?? msg.format(\"cancel\");\n const resolvedDeleteLabel = deleteLabel ?? msg.format(\"delete\");\n const resolvedAriaLabel = ariaLabel ?? msg.format(\"ariaLabel\");\n\n return (\n <Group aria-label={resolvedAriaLabel} gap=\"300\">\n {onDelete && (\n <Button\n variant=\"solid\"\n colorPalette=\"critical\"\n size={buttonSize}\n isDisabled={isBusy}\n onPress={onDelete}\n data-slot=\"delete\"\n >\n {resolvedDeleteLabel}\n {isDeleteLoading && <LoadingSpinner ml=\"100\" size=\"2xs\" />}\n </Button>\n )}\n <Button\n variant=\"outline\"\n size={buttonSize}\n isDisabled={isBusy}\n onPress={onCancel}\n slot={cancelSlot}\n data-slot=\"cancel\"\n >\n {resolvedCancelLabel}\n </Button>\n <Button\n variant=\"solid\"\n colorPalette=\"primary\"\n size={buttonSize}\n isDisabled={isSaveDisabled || isBusy}\n onPress={onSave}\n data-slot=\"save\"\n >\n {resolvedSaveLabel}\n {isSaveLoading && <LoadingSpinner ml=\"100\" size=\"2xs\" />}\n </Button>\n </Group>\n );\n};\n\nFormActionBar.displayName = \"FormActionBar\";\n"],"mappings":";;;;;;;AKuBA,IAAa,IAGT;CACF,IAAI,EAAkB;ELpBtB,WAAW;EACX,QAAQ;EACR,QAAQ;EACR,MAAM;CKiBgB,CAAwB;CAC9C,IAAI,EAAkB;EJrBtB,WAAW;EACX,QAAQ;EACR,QAAQ;EACR,MAAM;CIkBgB,CAAwB;CAC9C,IAAI,EAAkB;EHtBtB,WAAW;EACX,QAAQ;EACR,QAAQ;EACR,MAAM;CGmBgB,CAAwB;CAC9C,SAAS,EAAkB;EFvB3B,WAAW;EACX,QAAQ;EACR,QAAQ;EACR,MAAM;CEoBqB,CAAwB;CACnD,SAAS,EAAkB;EDxB3B,WAAW;EACX,QAAQ;EACR,QAAQ;EACR,MAAM;CCqBqB,CAAwB;AACrD,GCNa,KAAiB,EAC5B,WACA,aACA,aACA,cACA,gBACA,gBACA,oBAAiB,IACjB,mBAAgB,IAChB,qBAAkB,IAClB,cAAc,GACd,eACA,oBACwB;CACxB,IAAM,IAAM,EAA4B,CAA4B,GAC9D,IAAS,KAAiB,GAE1B,IAAoB,KAAa,EAAI,OAAO,MAAM,GAClD,IAAsB,KAAe,EAAI,OAAO,QAAQ,GACxD,IAAsB,KAAe,EAAI,OAAO,QAAQ;CAG9D,OACE,kBAAC,GAAD;EAAO,cAHiB,KAAa,EAAI,OAAO,WAAW;EAGrB,KAAI;YAA1C;GACG,KACC,kBAAC,GAAD;IACE,SAAQ;IACR,cAAa;IACb,MAAM;IACN,YAAY;IACZ,SAAS;IACT,aAAU;cANZ,CAQG,GACA,KAAmB,kBAAC,GAAD;KAAgB,IAAG;KAAM,MAAK;IAAO,CAAA,CACnD;;GAEV,kBAAC,GAAD;IACE,SAAQ;IACR,MAAM;IACN,YAAY;IACZ,SAAS;IACT,MAAM;IACN,aAAU;cAET;GACK,CAAA;GACR,kBAAC,GAAD;IACE,SAAQ;IACR,cAAa;IACb,MAAM;IACN,YAAY,KAAkB;IAC9B,SAAS;IACT,aAAU;cANZ,CAQG,GACA,KAAiB,kBAAC,GAAD;KAAgB,IAAG;KAAM,MAAK;IAAO,CAAA,CACjD;;EACH;;AAEX;AAEA,EAAc,cAAc"}
1
+ {"version":3,"file":"form-action-bar-CfJjVyeS.esm.js","names":[],"sources":["../../src/patterns/actions/form-action-bar/intl/en.ts","../../src/patterns/actions/form-action-bar/intl/de.ts","../../src/patterns/actions/form-action-bar/intl/es.ts","../../src/patterns/actions/form-action-bar/intl/fr-FR.ts","../../src/patterns/actions/form-action-bar/intl/pt-BR.ts","../../src/patterns/actions/form-action-bar/form-action-bar.messages.ts","../../src/patterns/actions/form-action-bar/form-action-bar.tsx"],"sourcesContent":["/**\n * Pre-compiled en messages for FormActionBar\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default {\n ariaLabel: `Form actions`,\n cancel: `Cancel`,\n delete: `Delete`,\n save: `Save`,\n};\n","/**\n * Pre-compiled de messages for FormActionBar\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default {\n ariaLabel: `Formular-Aktionen`,\n cancel: `Abbrechen`,\n delete: `Löschen`,\n save: `Speichern`,\n};\n","/**\n * Pre-compiled es messages for FormActionBar\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default {\n ariaLabel: `Crear acciones`,\n cancel: `Cancelar`,\n delete: `Eliminar`,\n save: `Guardar`,\n};\n","/**\n * Pre-compiled fr-FR messages for FormActionBar\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default {\n ariaLabel: `Actions du formulaire`,\n cancel: `Annuler`,\n delete: `Supprimer`,\n save: `Enregistrer`,\n};\n","/**\n * Pre-compiled pt-BR messages for FormActionBar\n * Generated by @internationalized/string-compiler\n * DO NOT EDIT MANUALLY\n */\n\nexport default {\n ariaLabel: `Ações de formulários`,\n cancel: `Cancelar`,\n delete: `Excluir`,\n save: `Salvar`,\n};\n","/**\n * Pre-compiled localized messages for FormActionBar component\n *\n * Generated by scripts/generate-dictionaries.ts\n * DO NOT EDIT MANUALLY\n *\n * @see https://react-spectrum.adobe.com/react-aria/internationalization.html\n */\n\nimport {\n type LocalizedString,\n type LocalizedStrings,\n} from \"@internationalized/string\";\nimport { normalizeMessages } from \"../../../utils/normalize-messages\";\n\n// Pre-compiled message functions\nimport formActionBarMessages_en from \"./intl/en\";\nimport formActionBarMessages_de from \"./intl/de\";\nimport formActionBarMessages_es from \"./intl/es\";\nimport formActionBarMessages_fr from \"./intl/fr-FR\";\nimport formActionBarMessages_pt from \"./intl/pt-BR\";\n\n// Raw LocalizedStrings object for use with useLocalizedStringFormatter hook\nexport const formActionBarMessagesStrings: LocalizedStrings<\n string,\n LocalizedString\n> = {\n en: normalizeMessages(formActionBarMessages_en),\n de: normalizeMessages(formActionBarMessages_de),\n es: normalizeMessages(formActionBarMessages_es),\n \"fr-FR\": normalizeMessages(formActionBarMessages_fr),\n \"pt-BR\": normalizeMessages(formActionBarMessages_pt),\n} as LocalizedStrings<string, LocalizedString>;\n\n/**\n * Available message keys for FormActionBar component\n */\nexport type FormActionBarMessageKey =\n \"ariaLabel\" | \"cancel\" | \"delete\" | \"save\";\n","import { Button } from \"@/components/button/button\";\nimport { Group } from \"@/components/group/group\";\nimport { LoadingSpinner } from \"@/components/loading-spinner/loading-spinner\";\nimport { useLocalizedStringFormatter } from \"@/hooks\";\nimport { formActionBarMessagesStrings } from \"./form-action-bar.messages\";\nimport type { FormActionBarProps } from \"./form-action-bar.types\";\n\n/**\n * # FormActionBar\n *\n * A pattern providing save / cancel / optional delete buttons for form footers.\n *\n * Works inside any footer slot: `DefaultPage.Footer`, `ModalPage.Footer`,\n * `Drawer.Footer`, `Dialog.Footer`. Replaces separate form-page wrappers.\n *\n * @example\n * ```tsx\n * <FormActionBar\n * onSave={handleSave}\n * onCancel={handleCancel}\n * onDelete={handleDelete}\n * isSaveDisabled={!isDirty}\n * isSaveLoading={isSaving}\n * />\n * ```\n */\nexport const FormActionBar = ({\n onSave,\n onCancel,\n onDelete,\n saveLabel,\n cancelLabel,\n deleteLabel,\n isSaveDisabled = false,\n isSaveLoading = false,\n isDeleteLoading = false,\n \"aria-label\": ariaLabel,\n cancelSlot,\n buttonSize,\n}: FormActionBarProps) => {\n const msg = useLocalizedStringFormatter(formActionBarMessagesStrings);\n const isBusy = isSaveLoading || isDeleteLoading;\n\n const resolvedSaveLabel = saveLabel ?? msg.format(\"save\");\n const resolvedCancelLabel = cancelLabel ?? msg.format(\"cancel\");\n const resolvedDeleteLabel = deleteLabel ?? msg.format(\"delete\");\n const resolvedAriaLabel = ariaLabel ?? msg.format(\"ariaLabel\");\n\n return (\n <Group aria-label={resolvedAriaLabel} gap=\"300\">\n {onDelete && (\n <Button\n variant=\"solid\"\n colorPalette=\"critical\"\n size={buttonSize}\n isDisabled={isBusy}\n onPress={onDelete}\n data-slot=\"delete\"\n >\n {resolvedDeleteLabel}\n {isDeleteLoading && <LoadingSpinner ml=\"100\" size=\"2xs\" />}\n </Button>\n )}\n <Button\n variant=\"outline\"\n size={buttonSize}\n isDisabled={isBusy}\n onPress={onCancel}\n slot={cancelSlot}\n data-slot=\"cancel\"\n >\n {resolvedCancelLabel}\n </Button>\n <Button\n variant=\"solid\"\n colorPalette=\"primary\"\n size={buttonSize}\n isDisabled={isSaveDisabled || isBusy}\n onPress={onSave}\n data-slot=\"save\"\n >\n {resolvedSaveLabel}\n {isSaveLoading && <LoadingSpinner ml=\"100\" size=\"2xs\" />}\n </Button>\n </Group>\n );\n};\n\nFormActionBar.displayName = \"FormActionBar\";\n"],"mappings":";;;;;;;AKuBA,IAAa,IAGT;CACF,IAAI,EAAkB;ELpBtB,WAAW;EACX,QAAQ;EACR,QAAQ;EACR,MAAM;CKiBgB,CAAwB;CAC9C,IAAI,EAAkB;EJrBtB,WAAW;EACX,QAAQ;EACR,QAAQ;EACR,MAAM;CIkBgB,CAAwB;CAC9C,IAAI,EAAkB;EHtBtB,WAAW;EACX,QAAQ;EACR,QAAQ;EACR,MAAM;CGmBgB,CAAwB;CAC9C,SAAS,EAAkB;EFvB3B,WAAW;EACX,QAAQ;EACR,QAAQ;EACR,MAAM;CEoBqB,CAAwB;CACnD,SAAS,EAAkB;EDxB3B,WAAW;EACX,QAAQ;EACR,QAAQ;EACR,MAAM;CCqBqB,CAAwB;AACrD,GCNa,KAAiB,EAC5B,WACA,aACA,aACA,cACA,gBACA,gBACA,oBAAiB,IACjB,mBAAgB,IAChB,qBAAkB,IAClB,cAAc,GACd,eACA,oBACwB;CACxB,IAAM,IAAM,EAA4B,CAA4B,GAC9D,IAAS,KAAiB,GAE1B,IAAoB,KAAa,EAAI,OAAO,MAAM,GAClD,IAAsB,KAAe,EAAI,OAAO,QAAQ,GACxD,IAAsB,KAAe,EAAI,OAAO,QAAQ;CAG9D,OACE,kBAAC,GAAD;EAAO,cAHiB,KAAa,EAAI,OAAO,WAAW;EAGrB,KAAI;YAA1C;GACG,KACC,kBAAC,GAAD;IACE,SAAQ;IACR,cAAa;IACb,MAAM;IACN,YAAY;IACZ,SAAS;IACT,aAAU;cANZ,CAQG,GACA,KAAmB,kBAAC,GAAD;KAAgB,IAAG;KAAM,MAAK;IAAO,CAAA,CACnD;;GAEV,kBAAC,GAAD;IACE,SAAQ;IACR,MAAM;IACN,YAAY;IACZ,SAAS;IACT,MAAM;IACN,aAAU;cAET;GACK,CAAA;GACR,kBAAC,GAAD;IACE,SAAQ;IACR,cAAa;IACb,MAAM;IACN,YAAY,KAAkB;IAC9B,SAAS;IACT,aAAU;cANZ,CAQG,GACA,KAAiB,kBAAC,GAAD;KAAgB,IAAG;KAAM,MAAK;IAAO,CAAA,CACjD;;EACH;;AAEX;AAEA,EAAc,cAAc"}
@@ -1,2 +1,2 @@
1
- const e=require("./loading-spinner-DAZGwhe6.cjs.js"),t=require("./normalize-messages-BMq9y_ae.cjs.js"),n=require("./group-CXRp7_JB.cjs.js"),r=require("./button-Dc_J_PNN.cjs.js");let i=require("react/jsx-runtime");var a={en:t.t({ariaLabel:`Form actions`,cancel:`Cancel`,delete:`Delete`,save:`Save`}),de:t.t({ariaLabel:`Formular-Aktionen`,cancel:`Abbrechen`,delete:`Löschen`,save:`Speichern`}),es:t.t({ariaLabel:`Crear acciones`,cancel:`Cancelar`,delete:`Eliminar`,save:`Guardar`}),"fr-FR":t.t({ariaLabel:`Actions du formulaire`,cancel:`Annuler`,delete:`Supprimer`,save:`Enregistrer`}),"pt-BR":t.t({ariaLabel:`Ações de formulários`,cancel:`Cancelar`,delete:`Excluir`,save:`Salvar`})},o=({onSave:o,onCancel:s,onDelete:c,saveLabel:l,cancelLabel:u,deleteLabel:d,isSaveDisabled:f=!1,isSaveLoading:p=!1,isDeleteLoading:m=!1,"aria-label":h,cancelSlot:g,buttonSize:_})=>{let v=t.n(a),y=p||m,b=l??v.format(`save`),x=u??v.format(`cancel`),S=d??v.format(`delete`);return(0,i.jsxs)(n.t,{"aria-label":h??v.format(`ariaLabel`),gap:`300`,children:[c&&(0,i.jsxs)(r.t,{variant:`solid`,colorPalette:`critical`,size:_,isDisabled:y,onPress:c,"data-slot":`delete`,children:[S,m&&(0,i.jsx)(e.t,{ml:`100`,size:`2xs`})]}),(0,i.jsx)(r.t,{variant:`outline`,size:_,isDisabled:y,onPress:s,slot:g,"data-slot":`cancel`,children:x}),(0,i.jsxs)(r.t,{variant:`solid`,colorPalette:`primary`,size:_,isDisabled:f||y,onPress:o,"data-slot":`save`,children:[b,p&&(0,i.jsx)(e.t,{ml:`100`,size:`2xs`})]})]})};o.displayName=`FormActionBar`,Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return o}});
2
- //# sourceMappingURL=form-action-bar-C_pQubyB.cjs.js.map
1
+ const e=require("./loading-spinner-p_cYuGNg.cjs.js"),t=require("./normalize-messages-BMq9y_ae.cjs.js"),n=require("./group-CXRp7_JB.cjs.js"),r=require("./button-D6f5OX0h.cjs.js");let i=require("react/jsx-runtime");var a={en:t.t({ariaLabel:`Form actions`,cancel:`Cancel`,delete:`Delete`,save:`Save`}),de:t.t({ariaLabel:`Formular-Aktionen`,cancel:`Abbrechen`,delete:`Löschen`,save:`Speichern`}),es:t.t({ariaLabel:`Crear acciones`,cancel:`Cancelar`,delete:`Eliminar`,save:`Guardar`}),"fr-FR":t.t({ariaLabel:`Actions du formulaire`,cancel:`Annuler`,delete:`Supprimer`,save:`Enregistrer`}),"pt-BR":t.t({ariaLabel:`Ações de formulários`,cancel:`Cancelar`,delete:`Excluir`,save:`Salvar`})},o=({onSave:o,onCancel:s,onDelete:c,saveLabel:l,cancelLabel:u,deleteLabel:d,isSaveDisabled:f=!1,isSaveLoading:p=!1,isDeleteLoading:m=!1,"aria-label":h,cancelSlot:g,buttonSize:_})=>{let v=t.n(a),y=p||m,b=l??v.format(`save`),x=u??v.format(`cancel`),S=d??v.format(`delete`);return(0,i.jsxs)(n.t,{"aria-label":h??v.format(`ariaLabel`),gap:`300`,children:[c&&(0,i.jsxs)(r.t,{variant:`solid`,colorPalette:`critical`,size:_,isDisabled:y,onPress:c,"data-slot":`delete`,children:[S,m&&(0,i.jsx)(e.t,{ml:`100`,size:`2xs`})]}),(0,i.jsx)(r.t,{variant:`outline`,size:_,isDisabled:y,onPress:s,slot:g,"data-slot":`cancel`,children:x}),(0,i.jsxs)(r.t,{variant:`solid`,colorPalette:`primary`,size:_,isDisabled:f||y,onPress:o,"data-slot":`save`,children:[b,p&&(0,i.jsx)(e.t,{ml:`100`,size:`2xs`})]})]})};o.displayName=`FormActionBar`,Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return o}});
2
+ //# sourceMappingURL=form-action-bar-DhmjijBw.cjs.js.map