boreal-ui 0.0.76 → 0.0.78

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 (340) hide show
  1. package/README.md +0 -2
  2. package/dist/core/boreal-ui.css +13739 -30851
  3. package/dist/next/{Accordion-Bg8V6T38.js → Accordion-ez41BXtb.js} +73 -94
  4. package/dist/next/{Accordion-Bg8V6T38.js.map → Accordion-ez41BXtb.js.map} +1 -1
  5. package/dist/next/{Accordion-BEa1jxTt.cjs → Accordion-yvdIcWj9.cjs} +74 -95
  6. package/dist/next/{Accordion-BEa1jxTt.cjs.map → Accordion-yvdIcWj9.cjs.map} +1 -1
  7. package/dist/next/Accordion.cjs.js +1 -1
  8. package/dist/next/Accordion.css +593 -0
  9. package/dist/next/Accordion.js +1 -1
  10. package/dist/next/{Avatar-DL_juTQA.cjs → Avatar-C-Z-ZPt8.cjs} +82 -82
  11. package/dist/next/{Avatar-DL_juTQA.cjs.map → Avatar-C-Z-ZPt8.cjs.map} +1 -1
  12. package/dist/next/{Avatar-nnjhILk-.js → Avatar-DymaVXDv.js} +81 -81
  13. package/dist/next/{Avatar-nnjhILk-.js.map → Avatar-DymaVXDv.js.map} +1 -1
  14. package/dist/next/Avatar.cjs.js +1 -1
  15. package/dist/next/Avatar.css +444 -0
  16. package/dist/next/Avatar.js +1 -1
  17. package/dist/next/{Badge-DzcjI-JI.cjs → Badge-56GHYTQN.cjs} +2 -2
  18. package/dist/next/{Badge-DzcjI-JI.cjs.map → Badge-56GHYTQN.cjs.map} +1 -1
  19. package/dist/next/{Badge-uyqxj7ag.js → Badge-BqVwp5Qj.js} +2 -2
  20. package/dist/next/{Badge-uyqxj7ag.js.map → Badge-BqVwp5Qj.js.map} +1 -1
  21. package/dist/next/Badge.cjs.js +1 -1
  22. package/dist/next/Badge.css +640 -0
  23. package/dist/next/Badge.js +1 -1
  24. package/dist/next/{Breadcrumbs-CuvOmgFe.cjs → Breadcrumbs-33eZmvpJ.cjs} +3 -3
  25. package/dist/next/{Breadcrumbs-CuvOmgFe.cjs.map → Breadcrumbs-33eZmvpJ.cjs.map} +1 -1
  26. package/dist/next/{Breadcrumbs-D0AmJB4U.js → Breadcrumbs-eetAtAHU.js} +3 -3
  27. package/dist/next/{Breadcrumbs-D0AmJB4U.js.map → Breadcrumbs-eetAtAHU.js.map} +1 -1
  28. package/dist/next/Breadcrumbs.cjs.js +1 -1
  29. package/dist/next/Breadcrumbs.css +579 -0
  30. package/dist/next/Breadcrumbs.js +1 -1
  31. package/dist/next/{Button-BZmph-Qr.cjs → Button-CmH6HYjc.cjs} +42 -52
  32. package/dist/next/{Button-BZmph-Qr.cjs.map → Button-CmH6HYjc.cjs.map} +1 -1
  33. package/dist/next/{Button-DWpImTmr.js → Button-oSOXL3At.js} +41 -51
  34. package/dist/next/{Button-DWpImTmr.js.map → Button-oSOXL3At.js.map} +1 -1
  35. package/dist/next/Button.cjs.js +1 -1
  36. package/dist/next/Button.css +721 -0
  37. package/dist/next/Button.js +1 -1
  38. package/dist/next/{Card-DnZOsQLP.js → Card-CO--D_GK.js} +65 -75
  39. package/dist/next/{Card-DnZOsQLP.js.map → Card-CO--D_GK.js.map} +1 -1
  40. package/dist/next/{Card-oPTXIvsb.cjs → Card-o8DszZPj.cjs} +65 -75
  41. package/dist/next/{Card-oPTXIvsb.cjs.map → Card-o8DszZPj.cjs.map} +1 -1
  42. package/dist/next/Card.cjs.js +1 -1
  43. package/dist/next/Card.css +993 -0
  44. package/dist/next/Card.js +1 -1
  45. package/dist/next/CheckBox.cjs.js +1 -1
  46. package/dist/next/CheckBox.js +1 -1
  47. package/dist/next/{Checkbox-CRg5oEdB.js → Checkbox-KIXViPTB.js} +45 -55
  48. package/dist/next/{Checkbox-CRg5oEdB.js.map → Checkbox-KIXViPTB.js.map} +1 -1
  49. package/dist/next/{Checkbox-DXNxt-4b.cjs → Checkbox-UqOL3aqk.cjs} +45 -55
  50. package/dist/next/{Checkbox-DXNxt-4b.cjs.map → Checkbox-UqOL3aqk.cjs.map} +1 -1
  51. package/dist/next/Checkbox.css +756 -0
  52. package/dist/next/{Chip-DpMTNARP.cjs → Chip-BQv3NoJL.cjs} +47 -57
  53. package/dist/next/{Chip-DpMTNARP.cjs.map → Chip-BQv3NoJL.cjs.map} +1 -1
  54. package/dist/next/{Chip-Cg7khsSn.js → Chip-D-QH1huh.js} +47 -57
  55. package/dist/next/{Chip-Cg7khsSn.js.map → Chip-D-QH1huh.js.map} +1 -1
  56. package/dist/next/Chip.cjs.js +1 -1
  57. package/dist/next/Chip.css +598 -0
  58. package/dist/next/Chip.js +1 -1
  59. package/dist/next/{CircularProgress-CzFUYDX1.cjs → CircularProgress-BG83Q-uO.cjs} +33 -43
  60. package/dist/next/{CircularProgress-CzFUYDX1.cjs.map → CircularProgress-BG83Q-uO.cjs.map} +1 -1
  61. package/dist/next/{CircularProgress-Dn1VXFsq.js → CircularProgress-Bfanw-2S.js} +33 -43
  62. package/dist/next/{CircularProgress-Dn1VXFsq.js.map → CircularProgress-Bfanw-2S.js.map} +1 -1
  63. package/dist/next/CircularProgress.cjs.js +1 -1
  64. package/dist/next/CircularProgress.css +528 -0
  65. package/dist/next/CircularProgress.js +1 -1
  66. package/dist/next/{ColorPicker-CCzSZDjx.js → ColorPicker-BJfyM0Ay.js} +26 -47
  67. package/dist/next/{ColorPicker-CCzSZDjx.js.map → ColorPicker-BJfyM0Ay.js.map} +1 -1
  68. package/dist/next/{ColorPicker-ByPKPsMz.cjs → ColorPicker-DmubVH4p.cjs} +26 -47
  69. package/dist/next/{ColorPicker-ByPKPsMz.cjs.map → ColorPicker-DmubVH4p.cjs.map} +1 -1
  70. package/dist/next/ColorPicker.cjs.js +1 -1
  71. package/dist/next/ColorPicker.css +346 -0
  72. package/dist/next/ColorPicker.js +1 -1
  73. package/dist/next/{CommandPalette-D6R9_gmo.js → CommandPalette-CNaU5jTY.js} +38 -48
  74. package/dist/next/{CommandPalette-D6R9_gmo.js.map → CommandPalette-CNaU5jTY.js.map} +1 -1
  75. package/dist/next/{CommandPalette-BvjlLE14.cjs → CommandPalette-_Lpb0UOI.cjs} +38 -48
  76. package/dist/next/{CommandPalette-BvjlLE14.cjs.map → CommandPalette-_Lpb0UOI.cjs.map} +1 -1
  77. package/dist/next/CommandPalette.cjs.js +1 -1
  78. package/dist/next/CommandPalette.css +624 -0
  79. package/dist/next/CommandPalette.js +1 -1
  80. package/dist/next/{DataTable-Bt6D__oo.cjs → DataTable-BAwMYdQb.cjs} +29 -50
  81. package/dist/next/{DataTable-Bt6D__oo.cjs.map → DataTable-BAwMYdQb.cjs.map} +1 -1
  82. package/dist/next/{DataTable-CZj_U9rg.js → DataTable-F9mtABNi.js} +28 -49
  83. package/dist/next/{DataTable-CZj_U9rg.js.map → DataTable-F9mtABNi.js.map} +1 -1
  84. package/dist/next/DataTable.cjs.js +1 -1
  85. package/dist/next/DataTable.css +444 -0
  86. package/dist/next/DataTable.js +1 -1
  87. package/dist/next/{DateTimePicker-Cols3qxt.cjs → DateTimePicker-CU-b9irX.cjs} +34 -55
  88. package/dist/next/{DateTimePicker-Cols3qxt.cjs.map → DateTimePicker-CU-b9irX.cjs.map} +1 -1
  89. package/dist/next/{DateTimePicker-DB2exnHd.js → DateTimePicker-WVVLqcd9.js} +34 -55
  90. package/dist/next/{DateTimePicker-DB2exnHd.js.map → DateTimePicker-WVVLqcd9.js.map} +1 -1
  91. package/dist/next/DateTimePicker.cjs.js +1 -1
  92. package/dist/next/DateTimePicker.css +563 -0
  93. package/dist/next/DateTimePicker.js +1 -1
  94. package/dist/next/{Divider-Dr0xlon0.cjs → Divider-BGxUapmt.cjs} +16 -37
  95. package/dist/next/{Divider-Dr0xlon0.cjs.map → Divider-BGxUapmt.cjs.map} +1 -1
  96. package/dist/next/{Divider-DXGze_D2.js → Divider-BXSDTRTU.js} +16 -37
  97. package/dist/next/{Divider-DXGze_D2.js.map → Divider-BXSDTRTU.js.map} +1 -1
  98. package/dist/next/Divider.cjs.js +1 -1
  99. package/dist/next/Divider.css +248 -0
  100. package/dist/next/Divider.js +1 -1
  101. package/dist/next/{Dropdown-B7PgWHlY.js → Dropdown-B7vrHg0z.js} +3 -3
  102. package/dist/next/{Dropdown-B7PgWHlY.js.map → Dropdown-B7vrHg0z.js.map} +1 -1
  103. package/dist/next/{Dropdown-kQLhr7_M.cjs → Dropdown-CUYItZDk.cjs} +3 -3
  104. package/dist/next/{Dropdown-kQLhr7_M.cjs.map → Dropdown-CUYItZDk.cjs.map} +1 -1
  105. package/dist/next/Dropdown.cjs.js +1 -1
  106. package/dist/next/Dropdown.css +317 -0
  107. package/dist/next/Dropdown.js +1 -1
  108. package/dist/next/{EmptyState-DCCDQWOQ.js → EmptyState-MT9_qwrB.js} +44 -33
  109. package/dist/next/{EmptyState-DCCDQWOQ.js.map → EmptyState-MT9_qwrB.js.map} +1 -1
  110. package/dist/next/{EmptyState-BH1X81TH.cjs → EmptyState-sh7Vn6eC.cjs} +44 -33
  111. package/dist/next/{EmptyState-BH1X81TH.cjs.map → EmptyState-sh7Vn6eC.cjs.map} +1 -1
  112. package/dist/next/EmptyState.cjs.js +1 -1
  113. package/dist/next/EmptyState.css +663 -0
  114. package/dist/next/EmptyState.js +1 -1
  115. package/dist/next/{FileUpload-BQW5ol7P.js → FileUpload-Bvj5JEBv.js} +48 -58
  116. package/dist/next/{FileUpload-BQW5ol7P.js.map → FileUpload-Bvj5JEBv.js.map} +1 -1
  117. package/dist/next/{FileUpload-C9Ke2cTs.cjs → FileUpload-CD_i5Md2.cjs} +48 -58
  118. package/dist/next/{FileUpload-C9Ke2cTs.cjs.map → FileUpload-CD_i5Md2.cjs.map} +1 -1
  119. package/dist/next/FileUpload.cjs.js +1 -1
  120. package/dist/next/FileUpload.css +474 -0
  121. package/dist/next/FileUpload.js +1 -1
  122. package/dist/next/{Footer-Dl_wQwsb.js → Footer-Bdu_9H3p.js} +38 -48
  123. package/dist/next/{Footer-Dl_wQwsb.js.map → Footer-Bdu_9H3p.js.map} +1 -1
  124. package/dist/next/{Footer-i9rgxATK.cjs → Footer-DJjzgwpc.cjs} +38 -48
  125. package/dist/next/{Footer-i9rgxATK.cjs.map → Footer-DJjzgwpc.cjs.map} +1 -1
  126. package/dist/next/Footer.cjs.js +1 -1
  127. package/dist/next/Footer.css +493 -0
  128. package/dist/next/Footer.js +1 -1
  129. package/dist/next/{FormGroup-B4Xb3X61.cjs → FormGroup-BWJAlt3K.cjs} +28 -36
  130. package/dist/next/{FormGroup-B4Xb3X61.cjs.map → FormGroup-BWJAlt3K.cjs.map} +1 -1
  131. package/dist/next/{FormGroup-AHYiWnkX.js → FormGroup-QrGjujWn.js} +28 -36
  132. package/dist/next/{FormGroup-AHYiWnkX.js.map → FormGroup-QrGjujWn.js.map} +1 -1
  133. package/dist/next/FormGroup.cjs.js +1 -1
  134. package/dist/next/FormGroup.css +419 -0
  135. package/dist/next/FormGroup.js +1 -1
  136. package/dist/next/{IconButton-BWw3WPaS.js → IconButton-0JJ1aiqr.js} +2 -2
  137. package/dist/next/{IconButton-BWw3WPaS.js.map → IconButton-0JJ1aiqr.js.map} +1 -1
  138. package/dist/next/{IconButton-4ySBEhn1.cjs → IconButton-C66aQhKe.cjs} +2 -2
  139. package/dist/next/{IconButton-4ySBEhn1.cjs.map → IconButton-C66aQhKe.cjs.map} +1 -1
  140. package/dist/next/IconButton.cjs.js +1 -1
  141. package/dist/next/IconButton.css +570 -0
  142. package/dist/next/IconButton.js +1 -1
  143. package/dist/next/{MarkdownRenderer-CO_rlPOB.cjs → MarkdownRenderer-BQ1-Kd73.cjs} +25 -14
  144. package/dist/next/{MarkdownRenderer-CO_rlPOB.cjs.map → MarkdownRenderer-BQ1-Kd73.cjs.map} +1 -1
  145. package/dist/next/{MarkdownRenderer-CGnuIkVY.js → MarkdownRenderer-CmK00as_.js} +25 -14
  146. package/dist/next/{MarkdownRenderer-CGnuIkVY.js.map → MarkdownRenderer-CmK00as_.js.map} +1 -1
  147. package/dist/next/MarkdownRenderer.cjs.js +1 -1
  148. package/dist/next/MarkdownRenderer.css +483 -0
  149. package/dist/next/MarkdownRenderer.js +1 -1
  150. package/dist/next/{MessagePopup-D_gZy6eH.cjs → MessagePopup-CizqwWmH.cjs} +4 -4
  151. package/dist/next/{MessagePopup-D_gZy6eH.cjs.map → MessagePopup-CizqwWmH.cjs.map} +1 -1
  152. package/dist/next/{MessagePopup-DIrdAeyg.js → MessagePopup-DLodDCIa.js} +4 -4
  153. package/dist/next/{MessagePopup-DIrdAeyg.js.map → MessagePopup-DLodDCIa.js.map} +1 -1
  154. package/dist/next/MessagePopup.cjs.js +1 -1
  155. package/dist/next/MessagePopup.css +296 -0
  156. package/dist/next/MessagePopup.js +1 -1
  157. package/dist/next/{MetricBox-CeONzyEu.cjs → MetricBox-C55LoIfn.cjs} +43 -53
  158. package/dist/next/{MetricBox-CeONzyEu.cjs.map → MetricBox-C55LoIfn.cjs.map} +1 -1
  159. package/dist/next/{MetricBox-D9-RmZoy.js → MetricBox-CHNmWcTq.js} +43 -53
  160. package/dist/next/{MetricBox-D9-RmZoy.js.map → MetricBox-CHNmWcTq.js.map} +1 -1
  161. package/dist/next/MetricBox.cjs.js +1 -1
  162. package/dist/next/MetricBox.css +635 -0
  163. package/dist/next/MetricBox.js +1 -1
  164. package/dist/next/{Modal-Dre8TMtr.js → Modal-BajWiIo7.js} +3 -3
  165. package/dist/next/{Modal-Dre8TMtr.js.map → Modal-BajWiIo7.js.map} +1 -1
  166. package/dist/next/{Modal-D7hNuMII.cjs → Modal-j59Cj0t1.cjs} +3 -3
  167. package/dist/next/{Modal-D7hNuMII.cjs.map → Modal-j59Cj0t1.cjs.map} +1 -1
  168. package/dist/next/Modal.cjs.js +1 -1
  169. package/dist/next/Modal.css +320 -0
  170. package/dist/next/Modal.js +1 -1
  171. package/dist/next/{NavBar-dpbPYT0w.js → NavBar-B0G7ZuqP.js} +33 -43
  172. package/dist/next/{NavBar-dpbPYT0w.js.map → NavBar-B0G7ZuqP.js.map} +1 -1
  173. package/dist/next/{NavBar-d-Hx7gkg.cjs → NavBar-Cd6FlBPY.cjs} +33 -43
  174. package/dist/next/{NavBar-d-Hx7gkg.cjs.map → NavBar-Cd6FlBPY.cjs.map} +1 -1
  175. package/dist/next/NavBar.cjs.js +1 -1
  176. package/dist/next/NavBar.css +498 -0
  177. package/dist/next/NavBar.js +1 -1
  178. package/dist/next/{NotificationCenter-BrAzv2oD.js → NotificationCenter-BDd4Zr8Y.js} +39 -49
  179. package/dist/next/{NotificationCenter-BrAzv2oD.js.map → NotificationCenter-BDd4Zr8Y.js.map} +1 -1
  180. package/dist/next/{NotificationCenter-JIX-pouI.cjs → NotificationCenter-obd1jF2n.cjs} +39 -49
  181. package/dist/next/{NotificationCenter-JIX-pouI.cjs.map → NotificationCenter-obd1jF2n.cjs.map} +1 -1
  182. package/dist/next/NotificationCenter.cjs.js +1 -1
  183. package/dist/next/NotificationCenter.css +475 -0
  184. package/dist/next/NotificationCenter.js +1 -1
  185. package/dist/next/{Pager-DcibmVu1.cjs → Pager-8dIVqCGz.cjs} +4 -4
  186. package/dist/next/{Pager-DcibmVu1.cjs.map → Pager-8dIVqCGz.cjs.map} +1 -1
  187. package/dist/next/{Pager-DFKfUn1s.js → Pager-C7n5x44P.js} +4 -4
  188. package/dist/next/{Pager-DFKfUn1s.js.map → Pager-C7n5x44P.js.map} +1 -1
  189. package/dist/next/Pager.cjs.js +1 -1
  190. package/dist/next/Pager.css +173 -0
  191. package/dist/next/Pager.js +1 -1
  192. package/dist/next/{PopOver-CpSdILYS.cjs → PopOver-D8BwV2PM.cjs} +36 -46
  193. package/dist/next/{PopOver-CpSdILYS.cjs.map → PopOver-D8BwV2PM.cjs.map} +1 -1
  194. package/dist/next/{PopOver-CUON_Abe.js → PopOver-Dmf41W2o.js} +36 -46
  195. package/dist/next/{PopOver-CUON_Abe.js.map → PopOver-Dmf41W2o.js.map} +1 -1
  196. package/dist/next/PopOver.cjs.js +1 -1
  197. package/dist/next/PopOver.css +417 -0
  198. package/dist/next/PopOver.js +1 -1
  199. package/dist/next/{ProgressBar-CMYDs8uL.js → ProgressBar-BgCHpDo8.js} +44 -54
  200. package/dist/next/{ProgressBar-CMYDs8uL.js.map → ProgressBar-BgCHpDo8.js.map} +1 -1
  201. package/dist/next/{ProgressBar-sg1jxDfy.cjs → ProgressBar-DUarHTA6.cjs} +44 -54
  202. package/dist/next/{ProgressBar-sg1jxDfy.cjs.map → ProgressBar-DUarHTA6.cjs.map} +1 -1
  203. package/dist/next/ProgressBar.cjs.js +1 -1
  204. package/dist/next/ProgressBar.css +441 -0
  205. package/dist/next/ProgressBar.js +1 -1
  206. package/dist/next/{RadioButton-z26U6POV.js → RadioButton-BN63UX0c.js} +34 -44
  207. package/dist/next/{RadioButton-z26U6POV.js.map → RadioButton-BN63UX0c.js.map} +1 -1
  208. package/dist/next/{RadioButton-X5L9U53Y.cjs → RadioButton-Dla9uVC6.cjs} +34 -44
  209. package/dist/next/{RadioButton-X5L9U53Y.cjs.map → RadioButton-Dla9uVC6.cjs.map} +1 -1
  210. package/dist/next/RadioButton.cjs.js +1 -1
  211. package/dist/next/RadioButton.css +454 -0
  212. package/dist/next/RadioButton.js +1 -1
  213. package/dist/next/{Rating-DXYBYXmx.cjs → Rating-B8A_4Z44.cjs} +30 -40
  214. package/dist/next/{Rating-DXYBYXmx.cjs.map → Rating-B8A_4Z44.cjs.map} +1 -1
  215. package/dist/next/{Rating-D6JEDvn4.js → Rating-CCZoQJEB.js} +30 -40
  216. package/dist/next/{Rating-D6JEDvn4.js.map → Rating-CCZoQJEB.js.map} +1 -1
  217. package/dist/next/Rating.cjs.js +1 -1
  218. package/dist/next/Rating.css +402 -0
  219. package/dist/next/Rating.js +1 -1
  220. package/dist/next/{ScrollToTop-Cw7LXubo.js → ScrollToTop-C7ThHvxg.js} +2 -2
  221. package/dist/next/{ScrollToTop-Cw7LXubo.js.map → ScrollToTop-C7ThHvxg.js.map} +1 -1
  222. package/dist/next/{ScrollToTop-CBRFQNC0.cjs → ScrollToTop-CJxWoVhg.cjs} +2 -2
  223. package/dist/next/{ScrollToTop-CBRFQNC0.cjs.map → ScrollToTop-CJxWoVhg.cjs.map} +1 -1
  224. package/dist/next/ScrollToTop.cjs.js +1 -1
  225. package/dist/next/ScrollToTop.css +215 -0
  226. package/dist/next/ScrollToTop.js +1 -1
  227. package/dist/next/{Select-DAD4xA1b.cjs → Select-CiyDDVhq.cjs} +2 -2
  228. package/dist/next/{Select-DAD4xA1b.cjs.map → Select-CiyDDVhq.cjs.map} +1 -1
  229. package/dist/next/{Select-b8fO1q2K.js → Select-D4bH7djH.js} +2 -2
  230. package/dist/next/{Select-b8fO1q2K.js.map → Select-D4bH7djH.js.map} +1 -1
  231. package/dist/next/Select.cjs.js +1 -1
  232. package/dist/next/Select.css +459 -0
  233. package/dist/next/Select.js +1 -1
  234. package/dist/next/{Sidebar-BwW51HwF.js → Sidebar-3dbu221x.js} +2 -2
  235. package/dist/next/{Sidebar-BwW51HwF.js.map → Sidebar-3dbu221x.js.map} +1 -1
  236. package/dist/next/{Sidebar-U5BQKtKR.cjs → Sidebar-DpUTsAza.cjs} +2 -2
  237. package/dist/next/{Sidebar-U5BQKtKR.cjs.map → Sidebar-DpUTsAza.cjs.map} +1 -1
  238. package/dist/next/Sidebar.cjs.js +1 -1
  239. package/dist/next/Sidebar.css +515 -0
  240. package/dist/next/Sidebar.js +1 -1
  241. package/dist/next/{Skeleton-N1-8bK7i.cjs → Skeleton-B0mlVpUX.cjs} +22 -32
  242. package/dist/next/{Skeleton-N1-8bK7i.cjs.map → Skeleton-B0mlVpUX.cjs.map} +1 -1
  243. package/dist/next/{Skeleton-Bk8l48-D.js → Skeleton-BiBul6J3.js} +21 -31
  244. package/dist/next/{Skeleton-Bk8l48-D.js.map → Skeleton-BiBul6J3.js.map} +1 -1
  245. package/dist/next/Skeleton.cjs.js +1 -1
  246. package/dist/next/Skeleton.css +288 -0
  247. package/dist/next/Skeleton.js +1 -1
  248. package/dist/next/{Slider-DOGkUQYT.js → Slider-B4G0kHQA.js} +38 -48
  249. package/dist/next/{Slider-DOGkUQYT.js.map → Slider-B4G0kHQA.js.map} +1 -1
  250. package/dist/next/{Slider-BPtajU2m.cjs → Slider-Cli7b9xm.cjs} +39 -49
  251. package/dist/next/{Slider-BPtajU2m.cjs.map → Slider-Cli7b9xm.cjs.map} +1 -1
  252. package/dist/next/Slider.cjs.js +1 -1
  253. package/dist/next/Slider.css +645 -0
  254. package/dist/next/Slider.js +1 -1
  255. package/dist/next/{Spinner-CmaoTjNr.cjs → Spinner-BSjLK_0H.cjs} +33 -43
  256. package/dist/next/{Spinner-CmaoTjNr.cjs.map → Spinner-BSjLK_0H.cjs.map} +1 -1
  257. package/dist/next/{Spinner-D7jfVZGm.js → Spinner-C9Xiao9p.js} +32 -42
  258. package/dist/next/{Spinner-D7jfVZGm.js.map → Spinner-C9Xiao9p.js.map} +1 -1
  259. package/dist/next/Spinner.cjs.js +1 -1
  260. package/dist/next/Spinner.css +390 -0
  261. package/dist/next/Spinner.js +1 -1
  262. package/dist/next/{Stepper-C0cNzpY8.cjs → Stepper-CpgJBKz7.cjs} +36 -46
  263. package/dist/next/{Stepper-C0cNzpY8.cjs.map → Stepper-CpgJBKz7.cjs.map} +1 -1
  264. package/dist/next/{Stepper-CSh2wccK.js → Stepper-em6Gl32O.js} +36 -46
  265. package/dist/next/{Stepper-CSh2wccK.js.map → Stepper-em6Gl32O.js.map} +1 -1
  266. package/dist/next/Stepper.cjs.js +1 -1
  267. package/dist/next/Stepper.css +404 -0
  268. package/dist/next/Stepper.js +1 -1
  269. package/dist/next/{Tabs-Dors0bVs.js → Tabs-B5GbuYuA.js} +2 -2
  270. package/dist/next/{Tabs-Dors0bVs.js.map → Tabs-B5GbuYuA.js.map} +1 -1
  271. package/dist/next/{Tabs-B6zeG5AB.cjs → Tabs-or9GGDS3.cjs} +2 -2
  272. package/dist/next/{Tabs-B6zeG5AB.cjs.map → Tabs-or9GGDS3.cjs.map} +1 -1
  273. package/dist/next/Tabs.cjs.js +1 -1
  274. package/dist/next/Tabs.css +407 -0
  275. package/dist/next/Tabs.js +1 -1
  276. package/dist/next/{TagInput-V3zvXcNq.js → TagInput-8nVGDluu.js} +44 -54
  277. package/dist/next/{TagInput-V3zvXcNq.js.map → TagInput-8nVGDluu.js.map} +1 -1
  278. package/dist/next/{TagInput-ceV9Jjqe.cjs → TagInput-DVmBv7Mn.cjs} +44 -54
  279. package/dist/next/{TagInput-ceV9Jjqe.cjs.map → TagInput-DVmBv7Mn.cjs.map} +1 -1
  280. package/dist/next/TagInput.cjs.js +1 -1
  281. package/dist/next/TagInput.css +521 -0
  282. package/dist/next/TagInput.js +1 -1
  283. package/dist/next/{TextArea-BXmbrq4-.cjs → TextArea-Bh0FdkP2.cjs} +2 -2
  284. package/dist/next/{TextArea-BXmbrq4-.cjs.map → TextArea-Bh0FdkP2.cjs.map} +1 -1
  285. package/dist/next/{TextArea-BSO1_gaS.js → TextArea-CQgoM2yj.js} +2 -2
  286. package/dist/next/{TextArea-BSO1_gaS.js.map → TextArea-CQgoM2yj.js.map} +1 -1
  287. package/dist/next/TextArea.cjs.js +1 -1
  288. package/dist/next/TextArea.css +450 -0
  289. package/dist/next/TextArea.js +1 -1
  290. package/dist/next/{TextInput-7nN8g78V.cjs → TextInput-BRl37zMW.cjs} +3 -3
  291. package/dist/next/{TextInput-7nN8g78V.cjs.map → TextInput-BRl37zMW.cjs.map} +1 -1
  292. package/dist/next/{TextInput-yUHEWbdK.js → TextInput-CKM34-yu.js} +3 -3
  293. package/dist/next/{TextInput-yUHEWbdK.js.map → TextInput-CKM34-yu.js.map} +1 -1
  294. package/dist/next/TextInput.cjs.js +1 -1
  295. package/dist/next/TextInput.css +438 -0
  296. package/dist/next/TextInput.js +1 -1
  297. package/dist/next/{Timeline-BTsKMULd.js → Timeline-BF_ru3Qq.js} +2 -2
  298. package/dist/next/{Timeline-BTsKMULd.js.map → Timeline-BF_ru3Qq.js.map} +1 -1
  299. package/dist/next/{Timeline-Dep_oZrh.cjs → Timeline-uKeDlojT.cjs} +2 -2
  300. package/dist/next/{Timeline-Dep_oZrh.cjs.map → Timeline-uKeDlojT.cjs.map} +1 -1
  301. package/dist/next/Timeline.cjs.js +1 -1
  302. package/dist/next/Timeline.css +455 -0
  303. package/dist/next/Timeline.js +1 -1
  304. package/dist/next/{Toggle-BomUbOZa.js → Toggle-CegN5JEB.js} +2 -2
  305. package/dist/next/{Toggle-BomUbOZa.js.map → Toggle-CegN5JEB.js.map} +1 -1
  306. package/dist/next/{Toggle-C9uZG3i5.cjs → Toggle-CfIi--aC.cjs} +2 -2
  307. package/dist/next/{Toggle-C9uZG3i5.cjs.map → Toggle-CfIi--aC.cjs.map} +1 -1
  308. package/dist/next/Toggle.cjs.js +1 -1
  309. package/dist/next/Toggle.css +464 -0
  310. package/dist/next/Toggle.js +1 -1
  311. package/dist/next/{Toolbar-Be-YQqmX.js → Toolbar-DqBlTLsk.js} +30 -40
  312. package/dist/next/{Toolbar-Be-YQqmX.js.map → Toolbar-DqBlTLsk.js.map} +1 -1
  313. package/dist/next/{Toolbar-roQbIEcD.cjs → Toolbar-DqsQznCj.cjs} +31 -41
  314. package/dist/next/{Toolbar-roQbIEcD.cjs.map → Toolbar-DqsQznCj.cjs.map} +1 -1
  315. package/dist/next/Toolbar.cjs.js +1 -1
  316. package/dist/next/Toolbar.css +367 -0
  317. package/dist/next/Toolbar.js +1 -1
  318. package/dist/next/{Tooltip-DVI61ebD.cjs → Tooltip-LnIFKvJC.cjs} +35 -45
  319. package/dist/next/{Tooltip-DVI61ebD.cjs.map → Tooltip-LnIFKvJC.cjs.map} +1 -1
  320. package/dist/next/{Tooltip-lxpnIfpO.js → Tooltip-o7L3wCNR.js} +34 -44
  321. package/dist/next/{Tooltip-lxpnIfpO.js.map → Tooltip-o7L3wCNR.js.map} +1 -1
  322. package/dist/next/Tooltip.cjs.js +1 -1
  323. package/dist/next/Tooltip.css +529 -0
  324. package/dist/next/Tooltip.js +1 -1
  325. package/dist/next/{Typography-B6VNZtxH.cjs → Typography-BAQ61z2R.cjs} +2 -2
  326. package/dist/next/{Typography-B6VNZtxH.cjs.map → Typography-BAQ61z2R.cjs.map} +1 -1
  327. package/dist/next/{Typography-BdS7h4Eq.js → Typography-BDswZ9eq.js} +2 -2
  328. package/dist/next/{Typography-BdS7h4Eq.js.map → Typography-BDswZ9eq.js.map} +1 -1
  329. package/dist/next/Typography.cjs.js +1 -1
  330. package/dist/next/Typography.css +294 -0
  331. package/dist/next/Typography.js +1 -1
  332. package/dist/next/globals.css +674 -0
  333. package/dist/next/index.cjs.js +66 -76
  334. package/dist/next/index.cjs.js.map +1 -1
  335. package/dist/next/index.css +241 -0
  336. package/dist/next/index.js +66 -76
  337. package/dist/next/index.js.map +1 -1
  338. package/package.json +10 -6
  339. package/dist/generated-docs/Typography.props.js +0 -204
  340. package/dist/next/boreal-ui.css +0 -36643
@@ -2,7 +2,7 @@ import { jsx } from "react/jsx-runtime";
2
2
  import { forwardRef } from "react";
3
3
  import { c as combineClassNames } from "./classNames-AS8QjFq7.js";
4
4
  import { d as getDefaultTheme } from "./boreal-style-config-DsaRlxmw.js";
5
- const DividerBase = forwardRef(
5
+ import './Divider.css';const DividerBase = forwardRef(
6
6
  ({
7
7
  orientation = "horizontal",
8
8
  thickness = "1px",
@@ -69,32 +69,20 @@ const DividerBase = forwardRef(
69
69
  }
70
70
  );
71
71
  DividerBase.displayName = "DividerBase";
72
- const noScroll = "_noScroll_9zawq_109";
73
- const errorMessage = "_errorMessage_9zawq_110";
74
- const loadingContainer = "_loadingContainer_9zawq_111";
75
- const hideScrollbar = "_hideScrollbar_9zawq_103";
76
- const sr_only = "_sr_only_9zawq_112";
77
- const divider = "_divider_9zawq_637";
78
- const horizontal = "_horizontal_9zawq_646";
79
- const vertical = "_vertical_9zawq_663";
80
- const dashed = "_dashed_9zawq_680";
81
- const disabled = "_disabled_9zawq_703";
82
- const primary = "_primary_9zawq_708";
83
- const secondary = "_secondary_9zawq_717";
84
- const tertiary = "_tertiary_9zawq_726";
85
- const quaternary = "_quaternary_9zawq_735";
86
- const clear = "_clear_9zawq_744";
87
- const success = "_success_9zawq_753";
88
- const error = "_error_9zawq_110";
89
- const warning = "_warning_9zawq_771";
90
- const spin = "_spin_9zawq_1";
91
- const pulse = "_pulse_9zawq_1";
72
+ const divider = "_divider_h9or9_85";
73
+ const horizontal = "_horizontal_h9or9_94";
74
+ const vertical = "_vertical_h9or9_111";
75
+ const dashed = "_dashed_h9or9_128";
76
+ const disabled = "_disabled_h9or9_151";
77
+ const primary = "_primary_h9or9_156";
78
+ const secondary = "_secondary_h9or9_165";
79
+ const tertiary = "_tertiary_h9or9_174";
80
+ const quaternary = "_quaternary_h9or9_183";
81
+ const clear = "_clear_h9or9_192";
82
+ const success = "_success_h9or9_201";
83
+ const error = "_error_h9or9_210";
84
+ const warning = "_warning_h9or9_219";
92
85
  const styles = {
93
- noScroll,
94
- errorMessage,
95
- loadingContainer,
96
- hideScrollbar,
97
- sr_only,
98
86
  divider,
99
87
  horizontal,
100
88
  vertical,
@@ -107,20 +95,11 @@ const styles = {
107
95
  clear,
108
96
  success,
109
97
  error,
110
- warning,
111
- "fade-in": "_fade-in_9zawq_1",
112
- "slide-up": "_slide-up_9zawq_1",
113
- "spin-3d": "_spin-3d_9zawq_1",
114
- spin,
115
- pulse,
116
- "fade-in-up": "_fade-in-up_9zawq_1",
117
- "progress-grow": "_progress-grow_9zawq_1",
118
- "indeterminate-move": "_indeterminate-move_9zawq_1",
119
- "skeleton-loading": "_skeleton-loading_9zawq_1"
98
+ warning
120
99
  };
121
100
  const Divider = forwardRef((props, ref) => /* @__PURE__ */ jsx(DividerBase, { ...props, classMap: styles, ref }));
122
101
  Divider.displayName = "Divider";
123
102
  export {
124
103
  Divider as D
125
104
  };
126
- //# sourceMappingURL=Divider-DXGze_D2.js.map
105
+ //# sourceMappingURL=Divider-BXSDTRTU.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Divider-DXGze_D2.js","sources":["../../src/components/Divider/DividerBase.tsx","../../src/components/Divider/next/Divider.tsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\r\nimport { DividerBaseProps } from \"./Divider.types\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport { getDefaultTheme } from \"../../config/boreal-style-config\";\r\n\r\nconst DividerBase = forwardRef<HTMLElement, DividerBaseProps>(\r\n (\r\n {\r\n orientation = \"horizontal\",\r\n thickness = \"1px\",\r\n length = \"100%\",\r\n className = \"\",\r\n dashed = false,\r\n theme = getDefaultTheme(),\r\n state = \"\",\r\n as = \"div\",\r\n decorative = true,\r\n label,\r\n labelledBy,\r\n classMap,\r\n \"data-testid\": testId = \"divider\",\r\n style,\r\n ...rest\r\n },\r\n ref,\r\n ) => {\r\n const isVertical = orientation === \"vertical\";\r\n const ComponentTag = as;\r\n\r\n const isHr = ComponentTag === \"hr\";\r\n\r\n const computedRole = decorative\r\n ? undefined\r\n : isHr && !isVertical\r\n ? undefined\r\n : \"separator\";\r\n\r\n const computedStyle: React.CSSProperties = isHr\r\n ? {\r\n border: 0,\r\n margin: 0,\r\n ...(isVertical\r\n ? {\r\n width: 0,\r\n height: length,\r\n borderLeft: `${thickness} ${dashed ? \"dashed\" : \"solid\"} currentColor`,\r\n }\r\n : {\r\n height: 0,\r\n width: length,\r\n borderTop: `${thickness} ${dashed ? \"dashed\" : \"solid\"} currentColor`,\r\n }),\r\n ...style,\r\n }\r\n : {\r\n width: isVertical ? thickness : length,\r\n height: isVertical ? length : thickness,\r\n backgroundColor: dashed ? \"transparent\" : undefined,\r\n ...style,\r\n };\r\n\r\n return (\r\n <ComponentTag\r\n ref={ref as never}\r\n className={combineClassNames(\r\n classMap.divider,\r\n classMap[orientation],\r\n theme && classMap[theme],\r\n state && classMap[state],\r\n dashed && classMap.dashed,\r\n className,\r\n )}\r\n role={computedRole}\r\n aria-hidden={decorative ? true : undefined}\r\n aria-orientation={!decorative && isVertical ? \"vertical\" : undefined}\r\n aria-label={!decorative ? label : undefined}\r\n aria-labelledby={!decorative ? labelledBy : undefined}\r\n data-orientation={orientation}\r\n style={computedStyle}\r\n data-testid={testId}\r\n {...rest}\r\n />\r\n );\r\n },\r\n);\r\n\r\nDividerBase.displayName = \"DividerBase\";\r\n\r\nexport default DividerBase;\r\n","\"use client\";\r\n\r\nimport { forwardRef } from \"react\";\r\nimport DividerBase from \"../DividerBase\";\r\nimport styles from \"./Divider.module.scss\";\r\nimport { DividerProps } from \"../Divider.types\";\r\n\r\nconst Divider = forwardRef<HTMLDivElement, DividerProps>((props, ref) => (\r\n <DividerBase {...props} classMap={styles} ref={ref} />\r\n));\r\nDivider.displayName = \"Divider\";\r\nexport default Divider;\r\n"],"names":["dashed"],"mappings":";;;;AAKA,MAAM,cAAc;AAAA,EAClB,CACE;AAAA,IACE,cAAc;AAAA,IACd,YAAY;AAAA,IACZ,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,QAAAA,UAAS;AAAA,IACT,QAAQ,gBAAA;AAAA,IACR,QAAQ;AAAA,IACR,KAAK;AAAA,IACL,aAAa;AAAA,IACb;AAAA,IACA;AAAA,IACA;AAAA,IACA,eAAe,SAAS;AAAA,IACxB;AAAA,IACA,GAAG;AAAA,EAAA,GAEL,QACG;AACH,UAAM,aAAa,gBAAgB;AACnC,UAAM,eAAe;AAErB,UAAM,OAAO,iBAAiB;AAE9B,UAAM,eAAe,aACjB,SACA,QAAQ,CAAC,aACP,SACA;AAEN,UAAM,gBAAqC,OACvC;AAAA,MACE,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,GAAI,aACA;AAAA,QACE,OAAO;AAAA,QACP,QAAQ;AAAA,QACR,YAAY,GAAG,SAAS,IAAIA,UAAS,WAAW,OAAO;AAAA,MAAA,IAEzD;AAAA,QACE,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,WAAW,GAAG,SAAS,IAAIA,UAAS,WAAW,OAAO;AAAA,MAAA;AAAA,MAE5D,GAAG;AAAA,IAAA,IAEL;AAAA,MACE,OAAO,aAAa,YAAY;AAAA,MAChC,QAAQ,aAAa,SAAS;AAAA,MAC9B,iBAAiBA,UAAS,gBAAgB;AAAA,MAC1C,GAAG;AAAA,IAAA;AAGT,WACE;AAAA,MAAC;AAAA,MAAA;AAAA,QACC;AAAA,QACA,WAAW;AAAA,UACT,SAAS;AAAA,UACT,SAAS,WAAW;AAAA,UACpB,SAAS,SAAS,KAAK;AAAA,UACvB,SAAS,SAAS,KAAK;AAAA,UACvBA,WAAU,SAAS;AAAA,UACnB;AAAA,QAAA;AAAA,QAEF,MAAM;AAAA,QACN,eAAa,aAAa,OAAO;AAAA,QACjC,oBAAkB,CAAC,cAAc,aAAa,aAAa;AAAA,QAC3D,cAAY,CAAC,aAAa,QAAQ;AAAA,QAClC,mBAAiB,CAAC,aAAa,aAAa;AAAA,QAC5C,oBAAkB;AAAA,QAClB,OAAO;AAAA,QACP,eAAa;AAAA,QACZ,GAAG;AAAA,MAAA;AAAA,IAAA;AAAA,EAGV;AACF;AAEA,YAAY,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC/E1B,MAAM,UAAU,WAAyC,CAAC,OAAO,QAC/D,oBAAC,aAAA,EAAa,GAAG,OAAO,UAAU,QAAQ,IAAA,CAAU,CACrD;AACD,QAAQ,cAAc;"}
1
+ {"version":3,"file":"Divider-BXSDTRTU.js","sources":["../../src/components/Divider/DividerBase.tsx","../../src/components/Divider/next/Divider.tsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\r\nimport { DividerBaseProps } from \"./Divider.types\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport { getDefaultTheme } from \"../../config/boreal-style-config\";\r\n\r\nconst DividerBase = forwardRef<HTMLElement, DividerBaseProps>(\r\n (\r\n {\r\n orientation = \"horizontal\",\r\n thickness = \"1px\",\r\n length = \"100%\",\r\n className = \"\",\r\n dashed = false,\r\n theme = getDefaultTheme(),\r\n state = \"\",\r\n as = \"div\",\r\n decorative = true,\r\n label,\r\n labelledBy,\r\n classMap,\r\n \"data-testid\": testId = \"divider\",\r\n style,\r\n ...rest\r\n },\r\n ref,\r\n ) => {\r\n const isVertical = orientation === \"vertical\";\r\n const ComponentTag = as;\r\n\r\n const isHr = ComponentTag === \"hr\";\r\n\r\n const computedRole = decorative\r\n ? undefined\r\n : isHr && !isVertical\r\n ? undefined\r\n : \"separator\";\r\n\r\n const computedStyle: React.CSSProperties = isHr\r\n ? {\r\n border: 0,\r\n margin: 0,\r\n ...(isVertical\r\n ? {\r\n width: 0,\r\n height: length,\r\n borderLeft: `${thickness} ${dashed ? \"dashed\" : \"solid\"} currentColor`,\r\n }\r\n : {\r\n height: 0,\r\n width: length,\r\n borderTop: `${thickness} ${dashed ? \"dashed\" : \"solid\"} currentColor`,\r\n }),\r\n ...style,\r\n }\r\n : {\r\n width: isVertical ? thickness : length,\r\n height: isVertical ? length : thickness,\r\n backgroundColor: dashed ? \"transparent\" : undefined,\r\n ...style,\r\n };\r\n\r\n return (\r\n <ComponentTag\r\n ref={ref as never}\r\n className={combineClassNames(\r\n classMap.divider,\r\n classMap[orientation],\r\n theme && classMap[theme],\r\n state && classMap[state],\r\n dashed && classMap.dashed,\r\n className,\r\n )}\r\n role={computedRole}\r\n aria-hidden={decorative ? true : undefined}\r\n aria-orientation={!decorative && isVertical ? \"vertical\" : undefined}\r\n aria-label={!decorative ? label : undefined}\r\n aria-labelledby={!decorative ? labelledBy : undefined}\r\n data-orientation={orientation}\r\n style={computedStyle}\r\n data-testid={testId}\r\n {...rest}\r\n />\r\n );\r\n },\r\n);\r\n\r\nDividerBase.displayName = \"DividerBase\";\r\n\r\nexport default DividerBase;\r\n","\"use client\";\r\n\r\nimport { forwardRef } from \"react\";\r\nimport DividerBase from \"../DividerBase\";\r\nimport styles from \"./Divider.module.scss\";\r\nimport { DividerProps } from \"../Divider.types\";\r\n\r\nconst Divider = forwardRef<HTMLDivElement, DividerProps>((props, ref) => (\r\n <DividerBase {...props} classMap={styles} ref={ref} />\r\n));\r\nDivider.displayName = \"Divider\";\r\nexport default Divider;\r\n"],"names":["dashed"],"mappings":";;;;AAKA,MAAM,cAAc;AAAA,EAClB,CACE;AAAA,IACE,cAAc;AAAA,IACd,YAAY;AAAA,IACZ,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,QAAAA,UAAS;AAAA,IACT,QAAQ,gBAAA;AAAA,IACR,QAAQ;AAAA,IACR,KAAK;AAAA,IACL,aAAa;AAAA,IACb;AAAA,IACA;AAAA,IACA;AAAA,IACA,eAAe,SAAS;AAAA,IACxB;AAAA,IACA,GAAG;AAAA,EAAA,GAEL,QACG;AACH,UAAM,aAAa,gBAAgB;AACnC,UAAM,eAAe;AAErB,UAAM,OAAO,iBAAiB;AAE9B,UAAM,eAAe,aACjB,SACA,QAAQ,CAAC,aACP,SACA;AAEN,UAAM,gBAAqC,OACvC;AAAA,MACE,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,GAAI,aACA;AAAA,QACE,OAAO;AAAA,QACP,QAAQ;AAAA,QACR,YAAY,GAAG,SAAS,IAAIA,UAAS,WAAW,OAAO;AAAA,MAAA,IAEzD;AAAA,QACE,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,WAAW,GAAG,SAAS,IAAIA,UAAS,WAAW,OAAO;AAAA,MAAA;AAAA,MAE5D,GAAG;AAAA,IAAA,IAEL;AAAA,MACE,OAAO,aAAa,YAAY;AAAA,MAChC,QAAQ,aAAa,SAAS;AAAA,MAC9B,iBAAiBA,UAAS,gBAAgB;AAAA,MAC1C,GAAG;AAAA,IAAA;AAGT,WACE;AAAA,MAAC;AAAA,MAAA;AAAA,QACC;AAAA,QACA,WAAW;AAAA,UACT,SAAS;AAAA,UACT,SAAS,WAAW;AAAA,UACpB,SAAS,SAAS,KAAK;AAAA,UACvB,SAAS,SAAS,KAAK;AAAA,UACvBA,WAAU,SAAS;AAAA,UACnB;AAAA,QAAA;AAAA,QAEF,MAAM;AAAA,QACN,eAAa,aAAa,OAAO;AAAA,QACjC,oBAAkB,CAAC,cAAc,aAAa,aAAa;AAAA,QAC3D,cAAY,CAAC,aAAa,QAAQ;AAAA,QAClC,mBAAiB,CAAC,aAAa,aAAa;AAAA,QAC5C,oBAAkB;AAAA,QAClB,OAAO;AAAA,QACP,eAAa;AAAA,QACZ,GAAG;AAAA,MAAA;AAAA,IAAA;AAAA,EAGV;AACF;AAEA,YAAY,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC/E1B,MAAM,UAAU,WAAyC,CAAC,OAAO,QAC/D,oBAAC,aAAA,EAAa,GAAG,OAAO,UAAU,QAAQ,IAAA,CAAU,CACrD;AACD,QAAQ,cAAc;"}
@@ -1,4 +1,4 @@
1
1
  "use strict";
2
- const Divider = require("./Divider-Dr0xlon0.cjs");
2
+ const Divider = require("./Divider-BGxUapmt.cjs");
3
3
  module.exports = Divider.Divider;
4
4
  //# sourceMappingURL=Divider.cjs.js.map
@@ -0,0 +1,248 @@
1
+ @charset "UTF-8";
2
+ /**
3
+ * ---------------------------------------------------------------------
4
+ * theme.scss
5
+ * ---------------------------------------------------------------------
6
+ * Global design tokens and theme configuration for the Boreal UI system.
7
+ * This file defines SCSS variables, maps, and constants for:
8
+ * - Colors (brand, background, feedback, text)
9
+ * - Fonts (families, sizes, weights)
10
+ * - Spacing
11
+ * - Border radii
12
+ * - Shadows
13
+ * - Transitions
14
+ * - Z-index layers
15
+ * - Thematic color maps
16
+ * - UI states (success, error, warning)
17
+ * - Rounding and shadow presets
18
+ *
19
+ * All variables support the `!default` flag to allow overrides via user-defined themes.
20
+ * ---------------------------------------------------------------------
21
+ *
22
+ * == Color Palette ==
23
+ * $primary-color – Brand primary color
24
+ * $secondary-color – Secondary accent color
25
+ * $tertiary-color – Alternate accent color
26
+ * $quaternary-color – Alternate accent color
27
+ * $background-color – Main background color (dark)
28
+ * $background-color-surface – Surface layer background (cards, modals)
29
+ * $error-color, $success-color, $warning-color – Feedback states
30
+ * $link-color – Link default color
31
+ * $link-hover-color – Link hover state
32
+ * $text-color, $text-color-light, $text-color-primary, $text-color-secondary – Text coloring
33
+ *
34
+ * == Typography ==
35
+ * $font-family-primary / secondary – Primary typefaces
36
+ * $font-size-xxs to $font-size-xxl – Font size scale
37
+ * $font-weight-light to bolder – Font weights
38
+ *
39
+ * == Spacing ==
40
+ * $spacing-xxs to $spacing-xl – Margin/padding utility scale
41
+ *
42
+ * == Border Radius ==
43
+ * $border-radius-xs to full – Border rounding presets
44
+ *
45
+ * == Shadows ==
46
+ * $box-shadow-light to intense – Shadow elevation levels
47
+ * $inverted-shadows – Shadows used on dark surfaces (e.g. modals)
48
+ *
49
+ * == Transitions ==
50
+ * $transition-fast / default / slow – Standard easing transitions
51
+ *
52
+ * == Z-Index Layers ==
53
+ * $z-index-drawer – For slide-out panels
54
+ * $z-index-modal – For modals and overlays
55
+ * $z-index-tooltip – Highest layer for tooltips and floating labels
56
+ *
57
+ * == Theme Map ==
58
+ * $themes: map of theme names (e.g. "primary", "secondary") to their visual styles
59
+ * - Each theme includes: bg, hover, text, border, text-hover
60
+ *
61
+ * == State Map ==
62
+ * $states: visual styles for UI feedback states (success, error, warning)
63
+ *
64
+ * == Rounding / Shadow Maps ==
65
+ * $rounding: key-value pairs for component rounding levels
66
+ * $shadow: key-value pairs for shadow levels
67
+ */
68
+ /**
69
+ * -----------------------------------------------------
70
+ * _breakpoints.scss
71
+ * -----------------------------------------------------
72
+ * These constants define the standard device-width breakpoints
73
+ * used in responsive media queries throughout the theme.
74
+ *
75
+ * - $breakpoint-xs: 320px (Extra small, portrait phones)
76
+ * - $breakpoint-sm: 480px (Small devices, larger phones)
77
+ * - $breakpoint-md: 768px (Medium devices, tablets)
78
+ * - $breakpoint-lg: 1024px (Large devices, desktops)
79
+ * - $breakpoint-xl: 1280px (Extra large desktops)
80
+ * - $breakpoint-xxl: 1536px (Widescreens, large monitors)
81
+ *
82
+ * $breakpoints map:
83
+ * Use this map to loop over breakpoints or access named values.
84
+ */
85
+ ._divider_h9or9_85 {
86
+ display: block;
87
+ margin: 0 auto;
88
+ flex-shrink: 0;
89
+ transition: all 0.3s ease-in-out;
90
+ background-color: var(--text-color-primary);
91
+ border: none;
92
+ }
93
+
94
+ ._horizontal_h9or9_94 {
95
+ width: 100%;
96
+ height: 1px;
97
+ margin: var(--spacing-sm) 0;
98
+ }
99
+ @media (width <= 479.98px) {
100
+ ._horizontal_h9or9_94 {
101
+ margin: var(--spacing-xs) 0;
102
+ }
103
+ }
104
+ @media (min-width: 1024px) {
105
+ ._horizontal_h9or9_94 {
106
+ height: 2px;
107
+ margin: var(--spacing-md) 0;
108
+ }
109
+ }
110
+
111
+ ._vertical_h9or9_111 {
112
+ width: 1px;
113
+ height: 100%;
114
+ margin: 0 var(--spacing-sm);
115
+ }
116
+ @media (width <= 479.98px) {
117
+ ._vertical_h9or9_111 {
118
+ margin: 0 var(--spacing-xs);
119
+ }
120
+ }
121
+ @media (min-width: 1024px) {
122
+ ._vertical_h9or9_111 {
123
+ width: 2px;
124
+ margin: 0 var(--spacing-md);
125
+ }
126
+ }
127
+
128
+ ._dashed_h9or9_128 {
129
+ background-color: transparent;
130
+ border-color: transparent;
131
+ }
132
+ ._dashed_h9or9_128._horizontal_h9or9_94 {
133
+ height: 0;
134
+ border-top: 1px dashed currentcolor;
135
+ }
136
+ @media (min-width: 1024px) {
137
+ ._dashed_h9or9_128._horizontal_h9or9_94 {
138
+ border-top-width: 2px;
139
+ }
140
+ }
141
+ ._dashed_h9or9_128._vertical_h9or9_111 {
142
+ width: 0;
143
+ border-left: 1px dashed currentcolor;
144
+ }
145
+ @media (min-width: 1024px) {
146
+ ._dashed_h9or9_128._vertical_h9or9_111 {
147
+ border-left-width: 2px;
148
+ }
149
+ }
150
+
151
+ ._disabled_h9or9_151 {
152
+ opacity: 0.6;
153
+ cursor: not-allowed;
154
+ }
155
+
156
+ ._primary_h9or9_156 {
157
+ background-color: var(--primary-color);
158
+ border-color: var(--primary-color);
159
+ }
160
+
161
+ ._primary_h9or9_156._dashed_h9or9_128 {
162
+ color: var(--primary-color);
163
+ }
164
+
165
+ ._secondary_h9or9_165 {
166
+ background-color: var(--secondary-color);
167
+ border-color: var(--secondary-color);
168
+ }
169
+
170
+ ._secondary_h9or9_165._dashed_h9or9_128 {
171
+ color: var(--secondary-color);
172
+ }
173
+
174
+ ._tertiary_h9or9_174 {
175
+ background-color: var(--tertiary-color);
176
+ border-color: var(--tertiary-color);
177
+ }
178
+
179
+ ._tertiary_h9or9_174._dashed_h9or9_128 {
180
+ color: var(--tertiary-color);
181
+ }
182
+
183
+ ._quaternary_h9or9_183 {
184
+ background-color: var(--quaternary-color);
185
+ border-color: var(--quaternary-color);
186
+ }
187
+
188
+ ._quaternary_h9or9_183._dashed_h9or9_128 {
189
+ color: var(--quaternary-color);
190
+ }
191
+
192
+ ._clear_h9or9_192 {
193
+ background-color: var(--text-color-primary);
194
+ border-color: var(--text-color-primary);
195
+ }
196
+
197
+ ._clear_h9or9_192._dashed_h9or9_128 {
198
+ color: var(--text-color-primary);
199
+ }
200
+
201
+ ._success_h9or9_201 {
202
+ background-color: var(--success-color);
203
+ border-color: var(--success-color);
204
+ }
205
+
206
+ ._success_h9or9_201._dashed_h9or9_128 {
207
+ color: var(--success-color);
208
+ }
209
+
210
+ ._error_h9or9_210 {
211
+ background-color: var(--error-color);
212
+ border-color: var(--error-color);
213
+ }
214
+
215
+ ._error_h9or9_210._dashed_h9or9_128 {
216
+ color: var(--error-color);
217
+ }
218
+
219
+ ._warning_h9or9_219 {
220
+ background-color: var(--warning-color);
221
+ border-color: var(--warning-color);
222
+ }
223
+
224
+ ._warning_h9or9_219._dashed_h9or9_128 {
225
+ color: var(--warning-color);
226
+ }
227
+
228
+ @media (prefers-reduced-motion: reduce) {
229
+ ._divider_h9or9_85 {
230
+ transition: none !important;
231
+ }
232
+ }
233
+ @media (forced-colors: active) {
234
+ ._divider_h9or9_85 {
235
+ background: ButtonText;
236
+ border-color: ButtonText;
237
+ }
238
+ ._divider_h9or9_85._dashed_h9or9_128 {
239
+ background: transparent;
240
+ border-color: transparent;
241
+ }
242
+ ._divider_h9or9_85._dashed_h9or9_128._horizontal_h9or9_94 {
243
+ border-top: 1px dashed ButtonText;
244
+ }
245
+ ._divider_h9or9_85._dashed_h9or9_128._vertical_h9or9_111 {
246
+ border-left: 1px dashed ButtonText;
247
+ }
248
+ }
@@ -1,4 +1,4 @@
1
- import { D } from "./Divider-DXGze_D2.js";
1
+ import { D } from "./Divider-BXSDTRTU.js";
2
2
  export {
3
3
  D as default
4
4
  };
@@ -3,8 +3,8 @@ import { useState, useRef, useId, useCallback, useEffect, useMemo } from "react"
3
3
  import { c as combineClassNames } from "./classNames-AS8QjFq7.js";
4
4
  import { c as capitalize } from "./capitalize-C0TSQSPh.js";
5
5
  import { d as getDefaultTheme, a as getDefaultRounding, b as getDefaultShadow } from "./boreal-style-config-DsaRlxmw.js";
6
- /* empty css */
7
- import { I as IconButton } from "./IconButton-BWw3WPaS.js";
6
+ import './globals.css';import './Dropdown.css';/* empty css */
7
+ import { I as IconButton } from "./IconButton-0JJ1aiqr.js";
8
8
  const MenuIcon = (props) => /* @__PURE__ */ jsxs(
9
9
  "svg",
10
10
  {
@@ -387,4 +387,4 @@ Dropdown.displayName = "Dropdown";
387
387
  export {
388
388
  Dropdown as D
389
389
  };
390
- //# sourceMappingURL=Dropdown-B7PgWHlY.js.map
390
+ //# sourceMappingURL=Dropdown-B7vrHg0z.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dropdown-B7PgWHlY.js","sources":["../../src/Icons/MenuIcon.tsx","../../src/components/Dropdown/DropdownBase.tsx","../../src/components/Dropdown/next/Dropdown.tsx"],"sourcesContent":["const MenuIcon: React.FC<React.SVGProps<SVGSVGElement>> = (props) => (\r\n <svg\r\n width=\"24px\"\r\n height=\"24px\"\r\n strokeWidth=\"1.5\"\r\n viewBox=\"0 0 24 24\"\r\n fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n color=\"currentColor\"\r\n {...props}\r\n >\r\n <path\r\n d=\"M3 5H21\"\r\n stroke=\"currentColor\"\r\n strokeWidth=\"1.5\"\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n ></path>\r\n <path\r\n d=\"M3 12H21\"\r\n stroke=\"currentColor\"\r\n strokeWidth=\"1.5\"\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n ></path>\r\n <path\r\n d=\"M3 19H21\"\r\n stroke=\"currentColor\"\r\n strokeWidth=\"1.5\"\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n ></path>\r\n </svg>\r\n);\r\n\r\nexport default MenuIcon;\r\n","import React, {\r\n useState,\r\n useRef,\r\n useEffect,\r\n useCallback,\r\n KeyboardEvent,\r\n useId,\r\n JSX,\r\n useMemo,\r\n} from \"react\";\r\nimport { BaseDropdownProps, IconButtonLikeRef } from \"./Dropdown.types\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport MenuIcon from \"../../Icons/MenuIcon\";\r\nimport { capitalize } from \"../../utils/capitalize\";\r\nimport {\r\n getDefaultRounding,\r\n getDefaultShadow,\r\n getDefaultTheme,\r\n} from \"../../config/boreal-style-config\";\r\n\r\nconst BaseDropdown: React.FC<BaseDropdownProps> = ({\r\n triggerIcon,\r\n items,\r\n align = \"right\",\r\n className = \"\",\r\n menuClassName = \"\",\r\n \"aria-label\": ariaLabel = \"Dropdown menu\",\r\n \"aria-labelledby\": ariaLabelledBy,\r\n \"aria-describedby\": ariaDescribedBy,\r\n menuAriaLabel,\r\n menuAriaLabelledby,\r\n menuAriaDescribedby,\r\n menuId: menuIdProp,\r\n triggerId,\r\n focusFirstItemOnOpen = true,\r\n closeOnSelect = true,\r\n theme = getDefaultTheme(),\r\n toggleRounding = getDefaultRounding(),\r\n menuRounding = getDefaultRounding(),\r\n toggleShadow = getDefaultShadow(),\r\n menuShadow = getDefaultShadow(),\r\n toggleOutline = false,\r\n state = \"\",\r\n title,\r\n triggerProps,\r\n menuProps,\r\n \"data-testid\": testId = \"dropdown\",\r\n IconButton,\r\n classMap,\r\n ...rest\r\n}: BaseDropdownProps): JSX.Element => {\r\n const [open, setOpen] = useState(false);\r\n const [activeIndex, setActiveIndex] = useState<number>(-1);\r\n\r\n const dropdownRef = useRef<HTMLDivElement>(null);\r\n const menuRef = useRef<HTMLDivElement>(null);\r\n const triggerRef = useRef<IconButtonLikeRef | null>(null);\r\n\r\n const generatedMenuId = useId();\r\n const resolvedMenuId = menuIdProp ?? generatedMenuId;\r\n\r\n const Icon = triggerIcon ?? MenuIcon;\r\n\r\n const getEnabledItemIndexes = useCallback(() => {\r\n return items.reduce<number[]>((acc, item, index) => {\r\n if (!item.disabled) {\r\n acc.push(index);\r\n }\r\n return acc;\r\n }, []);\r\n }, [items]);\r\n\r\n const focusItemAtIndex = useCallback((index: number) => {\r\n const menuItems =\r\n menuRef.current?.querySelectorAll<HTMLElement>(\"a, button\");\r\n\r\n const target = menuItems?.[index];\r\n\r\n if (target instanceof HTMLButtonElement && target.disabled) {\r\n return;\r\n }\r\n\r\n target?.focus();\r\n }, []);\r\n\r\n const toggleDropdown = () => {\r\n setOpen((prev) => !prev);\r\n };\r\n\r\n const closeDropdown = useCallback(() => {\r\n setOpen(false);\r\n setActiveIndex(-1);\r\n triggerRef.current?.focus?.();\r\n }, []);\r\n\r\n const handleItemSelect = useCallback(\r\n (item: BaseDropdownProps[\"items\"][number]) => {\r\n if (item.disabled) return;\r\n\r\n item.onClick?.();\r\n\r\n if (closeOnSelect) {\r\n closeDropdown();\r\n }\r\n },\r\n [closeDropdown, closeOnSelect],\r\n );\r\n\r\n useEffect(() => {\r\n if (!open) return;\r\n\r\n const enabledIndexes = getEnabledItemIndexes();\r\n\r\n if (!focusFirstItemOnOpen || enabledIndexes.length === 0) {\r\n setActiveIndex(-1);\r\n return;\r\n }\r\n\r\n setActiveIndex(enabledIndexes[0] ?? -1);\r\n }, [open, focusFirstItemOnOpen, getEnabledItemIndexes]);\r\n\r\n useEffect(() => {\r\n if (!open || activeIndex < 0) return;\r\n focusItemAtIndex(activeIndex);\r\n }, [activeIndex, open, focusItemAtIndex]);\r\n\r\n useEffect(() => {\r\n const handleClickOutside = (e: MouseEvent) => {\r\n if (\r\n dropdownRef.current &&\r\n !dropdownRef.current.contains(e.target as Node)\r\n ) {\r\n closeDropdown();\r\n }\r\n };\r\n\r\n document.addEventListener(\"mousedown\", handleClickOutside);\r\n\r\n if (open && menuRef.current) {\r\n const rect = menuRef.current.getBoundingClientRect();\r\n const right = rect.right > window.innerWidth;\r\n const left = rect.left < 0;\r\n\r\n if (right) {\r\n menuRef.current.setAttribute(\"data-overflow-right\", \"true\");\r\n menuRef.current.removeAttribute(\"data-overflow-left\");\r\n } else if (left) {\r\n menuRef.current.setAttribute(\"data-overflow-left\", \"true\");\r\n menuRef.current.removeAttribute(\"data-overflow-right\");\r\n } else {\r\n menuRef.current.removeAttribute(\"data-overflow-right\");\r\n menuRef.current.removeAttribute(\"data-overflow-left\");\r\n }\r\n }\r\n\r\n return () => document.removeEventListener(\"mousedown\", handleClickOutside);\r\n }, [open, closeDropdown]);\r\n\r\n const handleKeyDown = useCallback(\r\n (e: KeyboardEvent<HTMLDivElement>) => {\r\n if (!open) return;\r\n\r\n const enabledIndexes = getEnabledItemIndexes();\r\n const hasItems = enabledIndexes.length > 0;\r\n\r\n if (e.key === \"Escape\") {\r\n e.preventDefault();\r\n closeDropdown();\r\n return;\r\n }\r\n\r\n if (e.key === \"Tab\") {\r\n closeDropdown();\r\n return;\r\n }\r\n\r\n if (!hasItems) return;\r\n\r\n const currentEnabledPosition = enabledIndexes.indexOf(activeIndex);\r\n\r\n if (e.key === \"ArrowDown\") {\r\n e.preventDefault();\r\n\r\n if (currentEnabledPosition < 0) {\r\n setActiveIndex(enabledIndexes[0] ?? -1);\r\n } else {\r\n const nextPosition =\r\n (currentEnabledPosition + 1) % enabledIndexes.length;\r\n setActiveIndex(enabledIndexes[nextPosition] ?? -1);\r\n }\r\n } else if (e.key === \"ArrowUp\") {\r\n e.preventDefault();\r\n\r\n if (currentEnabledPosition < 0) {\r\n setActiveIndex(enabledIndexes[enabledIndexes.length - 1] ?? -1);\r\n } else {\r\n const prevPosition =\r\n (currentEnabledPosition - 1 + enabledIndexes.length) %\r\n enabledIndexes.length;\r\n setActiveIndex(enabledIndexes[prevPosition] ?? -1);\r\n }\r\n } else if (e.key === \"Home\") {\r\n e.preventDefault();\r\n setActiveIndex(enabledIndexes[0] ?? -1);\r\n } else if (e.key === \"End\") {\r\n e.preventDefault();\r\n setActiveIndex(enabledIndexes[enabledIndexes.length - 1] ?? -1);\r\n } else if ((e.key === \"Enter\" || e.key === \" \") && activeIndex >= 0) {\r\n e.preventDefault();\r\n const item = items[activeIndex];\r\n if (item && !item.disabled) {\r\n handleItemSelect(item);\r\n }\r\n }\r\n },\r\n [\r\n open,\r\n items,\r\n activeIndex,\r\n getEnabledItemIndexes,\r\n closeDropdown,\r\n handleItemSelect,\r\n ],\r\n );\r\n\r\n const menuClassNames = useMemo(\r\n () =>\r\n combineClassNames(\r\n classMap.menu,\r\n align === \"right\" ? classMap.alignRight : classMap.alignLeft,\r\n menuShadow && classMap[`shadow${capitalize(menuShadow)}`],\r\n menuRounding && classMap[`round${capitalize(menuRounding)}`],\r\n menuClassName,\r\n menuProps?.className,\r\n ),\r\n [\r\n classMap,\r\n align,\r\n menuShadow,\r\n menuRounding,\r\n menuClassName,\r\n menuProps?.className,\r\n ],\r\n );\r\n\r\n return (\r\n <div\r\n ref={dropdownRef}\r\n className={combineClassNames(classMap.wrapper, className)}\r\n onKeyDown={handleKeyDown}\r\n data-testid={testId}\r\n {...rest}\r\n >\r\n <IconButton\r\n ref={triggerRef}\r\n id={triggerId}\r\n icon={Icon}\r\n aria-label={ariaLabelledBy ? undefined : ariaLabel}\r\n aria-labelledby={ariaLabelledBy}\r\n aria-describedby={ariaDescribedBy}\r\n aria-haspopup=\"menu\"\r\n aria-expanded={open}\r\n aria-controls={resolvedMenuId}\r\n rounding={toggleRounding}\r\n shadow={toggleShadow}\r\n outline={toggleOutline}\r\n theme={theme}\r\n state={state}\r\n onClick={toggleDropdown}\r\n title={title}\r\n data-testid={`${testId}-trigger`}\r\n {...triggerProps}\r\n />\r\n\r\n {open && (\r\n <div\r\n id={resolvedMenuId}\r\n ref={menuRef}\r\n aria-label={\r\n menuAriaLabelledby ? undefined : (menuAriaLabel ?? ariaLabel)\r\n }\r\n aria-labelledby={menuAriaLabelledby}\r\n aria-describedby={menuAriaDescribedby}\r\n className={menuClassNames}\r\n data-testid={`${testId}-menu`}\r\n {...menuProps}\r\n >\r\n {items.map((item, index) => {\r\n const commonProps = {\r\n id: item.id,\r\n className: combineClassNames(\r\n classMap.item,\r\n item.disabled ? classMap.disabled : \"\",\r\n ),\r\n \"aria-label\": item[\"aria-label\"],\r\n \"aria-describedby\": item[\"aria-describedby\"],\r\n \"aria-current\": item[\"aria-current\"],\r\n \"aria-disabled\": item.disabled || undefined,\r\n title: item.title,\r\n \"data-testid\": item[\"data-testid\"],\r\n onClick: () => handleItemSelect(item),\r\n };\r\n\r\n if (item.href) {\r\n return (\r\n <a\r\n key={item.id ?? index}\r\n href={item.disabled ? undefined : item.href}\r\n {...commonProps}\r\n onClick={(e) => {\r\n if (item.disabled) {\r\n e.preventDefault();\r\n return;\r\n }\r\n item.onClick?.();\r\n if (closeOnSelect) {\r\n closeDropdown();\r\n }\r\n }}\r\n >\r\n {item.icon && (\r\n <span className={classMap.icon} aria-hidden=\"true\">\r\n {item.icon}\r\n </span>\r\n )}\r\n {item.label}\r\n </a>\r\n );\r\n }\r\n\r\n return (\r\n <button\r\n key={item.id ?? index}\r\n type=\"button\"\r\n disabled={item.disabled}\r\n {...commonProps}\r\n >\r\n {item.icon && (\r\n <span className={classMap.icon} aria-hidden=\"true\">\r\n {item.icon}\r\n </span>\r\n )}\r\n {item.label}\r\n </button>\r\n );\r\n })}\r\n </div>\r\n )}\r\n </div>\r\n );\r\n};\r\n\r\nBaseDropdown.displayName = \"BaseDropdown\";\r\nexport default BaseDropdown;\r\n","\"use client\";\r\nimport React from \"react\";\r\nimport BaseDropdown from \"../DropdownBase\";\r\nimport { DropdownProps } from \"../Dropdown.types\";\r\nimport { IconButton } from \"@/index.next\";\r\nimport styles from \"./Dropdown.module.scss\";\r\n\r\nconst Dropdown: React.FC<DropdownProps> = (props) => {\r\n return <BaseDropdown {...props} IconButton={IconButton} classMap={styles} />;\r\n};\r\nDropdown.displayName = \"Dropdown\";\r\nexport default Dropdown;\r\n"],"names":["IconButton","item"],"mappings":";;;;;;;AAAA,MAAM,WAAoD,CAAC,UACzD;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,OAAM;AAAA,IACN,QAAO;AAAA,IACP,aAAY;AAAA,IACZ,SAAQ;AAAA,IACR,MAAK;AAAA,IACL,OAAM;AAAA,IACN,OAAM;AAAA,IACL,GAAG;AAAA,IAEJ,UAAA;AAAA,MAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,GAAE;AAAA,UACF,QAAO;AAAA,UACP,aAAY;AAAA,UACZ,eAAc;AAAA,UACd,gBAAe;AAAA,QAAA;AAAA,MAAA;AAAA,MAEjB;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,GAAE;AAAA,UACF,QAAO;AAAA,UACP,aAAY;AAAA,UACZ,eAAc;AAAA,UACd,gBAAe;AAAA,QAAA;AAAA,MAAA;AAAA,MAEjB;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,GAAE;AAAA,UACF,QAAO;AAAA,UACP,aAAY;AAAA,UACZ,eAAc;AAAA,UACd,gBAAe;AAAA,QAAA;AAAA,MAAA;AAAA,IAChB;AAAA,EAAA;AACH;ACZF,MAAM,eAA4C,CAAC;AAAA,EACjD;AAAA,EACA;AAAA,EACA,QAAQ;AAAA,EACR,YAAY;AAAA,EACZ,gBAAgB;AAAA,EAChB,cAAc,YAAY;AAAA,EAC1B,mBAAmB;AAAA,EACnB,oBAAoB;AAAA,EACpB;AAAA,EACA;AAAA,EACA;AAAA,EACA,QAAQ;AAAA,EACR;AAAA,EACA,uBAAuB;AAAA,EACvB,gBAAgB;AAAA,EAChB,QAAQ,gBAAA;AAAA,EACR,iBAAiB,mBAAA;AAAA,EACjB,eAAe,mBAAA;AAAA,EACf,eAAe,iBAAA;AAAA,EACf,aAAa,iBAAA;AAAA,EACb,gBAAgB;AAAA,EAChB,QAAQ;AAAA,EACR;AAAA,EACA;AAAA,EACA;AAAA,EACA,eAAe,SAAS;AAAA,EACxB,YAAAA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAsC;AACpC,QAAM,CAAC,MAAM,OAAO,IAAI,SAAS,KAAK;AACtC,QAAM,CAAC,aAAa,cAAc,IAAI,SAAiB,EAAE;AAEzD,QAAM,cAAc,OAAuB,IAAI;AAC/C,QAAM,UAAU,OAAuB,IAAI;AAC3C,QAAM,aAAa,OAAiC,IAAI;AAExD,QAAM,kBAAkB,MAAA;AACxB,QAAM,iBAAiB,cAAc;AAErC,QAAM,OAAO,eAAe;AAE5B,QAAM,wBAAwB,YAAY,MAAM;AAC9C,WAAO,MAAM,OAAiB,CAAC,KAAKC,OAAM,UAAU;AAClD,UAAI,CAACA,MAAK,UAAU;AAClB,YAAI,KAAK,KAAK;AAAA,MAChB;AACA,aAAO;AAAA,IACT,GAAG,CAAA,CAAE;AAAA,EACP,GAAG,CAAC,KAAK,CAAC;AAEV,QAAM,mBAAmB,YAAY,CAAC,UAAkB;;AACtD,UAAM,aACJ,aAAQ,YAAR,mBAAiB,iBAA8B;AAEjD,UAAM,SAAS,uCAAY;AAE3B,QAAI,kBAAkB,qBAAqB,OAAO,UAAU;AAC1D;AAAA,IACF;AAEA,qCAAQ;AAAA,EACV,GAAG,CAAA,CAAE;AAEL,QAAM,iBAAiB,MAAM;AAC3B,YAAQ,CAAC,SAAS,CAAC,IAAI;AAAA,EACzB;AAEA,QAAM,gBAAgB,YAAY,MAAM;;AACtC,YAAQ,KAAK;AACb,mBAAe,EAAE;AACjB,2BAAW,YAAX,mBAAoB,UAApB;AAAA,EACF,GAAG,CAAA,CAAE;AAEL,QAAM,mBAAmB;AAAA,IACvB,CAACA,UAA6C;;AAC5C,UAAIA,MAAK,SAAU;AAEnB,YAAAA,MAAK,YAAL,wBAAAA;AAEA,UAAI,eAAe;AACjB,sBAAA;AAAA,MACF;AAAA,IACF;AAAA,IACA,CAAC,eAAe,aAAa;AAAA,EAAA;AAG/B,YAAU,MAAM;AACd,QAAI,CAAC,KAAM;AAEX,UAAM,iBAAiB,sBAAA;AAEvB,QAAI,CAAC,wBAAwB,eAAe,WAAW,GAAG;AACxD,qBAAe,EAAE;AACjB;AAAA,IACF;AAEA,mBAAe,eAAe,CAAC,KAAK,EAAE;AAAA,EACxC,GAAG,CAAC,MAAM,sBAAsB,qBAAqB,CAAC;AAEtD,YAAU,MAAM;AACd,QAAI,CAAC,QAAQ,cAAc,EAAG;AAC9B,qBAAiB,WAAW;AAAA,EAC9B,GAAG,CAAC,aAAa,MAAM,gBAAgB,CAAC;AAExC,YAAU,MAAM;AACd,UAAM,qBAAqB,CAAC,MAAkB;AAC5C,UACE,YAAY,WACZ,CAAC,YAAY,QAAQ,SAAS,EAAE,MAAc,GAC9C;AACA,sBAAA;AAAA,MACF;AAAA,IACF;AAEA,aAAS,iBAAiB,aAAa,kBAAkB;AAEzD,QAAI,QAAQ,QAAQ,SAAS;AAC3B,YAAM,OAAO,QAAQ,QAAQ,sBAAA;AAC7B,YAAM,QAAQ,KAAK,QAAQ,OAAO;AAClC,YAAM,OAAO,KAAK,OAAO;AAEzB,UAAI,OAAO;AACT,gBAAQ,QAAQ,aAAa,uBAAuB,MAAM;AAC1D,gBAAQ,QAAQ,gBAAgB,oBAAoB;AAAA,MACtD,WAAW,MAAM;AACf,gBAAQ,QAAQ,aAAa,sBAAsB,MAAM;AACzD,gBAAQ,QAAQ,gBAAgB,qBAAqB;AAAA,MACvD,OAAO;AACL,gBAAQ,QAAQ,gBAAgB,qBAAqB;AACrD,gBAAQ,QAAQ,gBAAgB,oBAAoB;AAAA,MACtD;AAAA,IACF;AAEA,WAAO,MAAM,SAAS,oBAAoB,aAAa,kBAAkB;AAAA,EAC3E,GAAG,CAAC,MAAM,aAAa,CAAC;AAExB,QAAM,gBAAgB;AAAA,IACpB,CAAC,MAAqC;AACpC,UAAI,CAAC,KAAM;AAEX,YAAM,iBAAiB,sBAAA;AACvB,YAAM,WAAW,eAAe,SAAS;AAEzC,UAAI,EAAE,QAAQ,UAAU;AACtB,UAAE,eAAA;AACF,sBAAA;AACA;AAAA,MACF;AAEA,UAAI,EAAE,QAAQ,OAAO;AACnB,sBAAA;AACA;AAAA,MACF;AAEA,UAAI,CAAC,SAAU;AAEf,YAAM,yBAAyB,eAAe,QAAQ,WAAW;AAEjE,UAAI,EAAE,QAAQ,aAAa;AACzB,UAAE,eAAA;AAEF,YAAI,yBAAyB,GAAG;AAC9B,yBAAe,eAAe,CAAC,KAAK,EAAE;AAAA,QACxC,OAAO;AACL,gBAAM,gBACH,yBAAyB,KAAK,eAAe;AAChD,yBAAe,eAAe,YAAY,KAAK,EAAE;AAAA,QACnD;AAAA,MACF,WAAW,EAAE,QAAQ,WAAW;AAC9B,UAAE,eAAA;AAEF,YAAI,yBAAyB,GAAG;AAC9B,yBAAe,eAAe,eAAe,SAAS,CAAC,KAAK,EAAE;AAAA,QAChE,OAAO;AACL,gBAAM,gBACH,yBAAyB,IAAI,eAAe,UAC7C,eAAe;AACjB,yBAAe,eAAe,YAAY,KAAK,EAAE;AAAA,QACnD;AAAA,MACF,WAAW,EAAE,QAAQ,QAAQ;AAC3B,UAAE,eAAA;AACF,uBAAe,eAAe,CAAC,KAAK,EAAE;AAAA,MACxC,WAAW,EAAE,QAAQ,OAAO;AAC1B,UAAE,eAAA;AACF,uBAAe,eAAe,eAAe,SAAS,CAAC,KAAK,EAAE;AAAA,MAChE,YAAY,EAAE,QAAQ,WAAW,EAAE,QAAQ,QAAQ,eAAe,GAAG;AACnE,UAAE,eAAA;AACF,cAAMA,QAAO,MAAM,WAAW;AAC9B,YAAIA,SAAQ,CAACA,MAAK,UAAU;AAC1B,2BAAiBA,KAAI;AAAA,QACvB;AAAA,MACF;AAAA,IACF;AAAA,IACA;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,EACF;AAGF,QAAM,iBAAiB;AAAA,IACrB,MACE;AAAA,MACE,SAAS;AAAA,MACT,UAAU,UAAU,SAAS,aAAa,SAAS;AAAA,MACnD,cAAc,SAAS,SAAS,WAAW,UAAU,CAAC,EAAE;AAAA,MACxD,gBAAgB,SAAS,QAAQ,WAAW,YAAY,CAAC,EAAE;AAAA,MAC3D;AAAA,MACA,uCAAW;AAAA,IAAA;AAAA,IAEf;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,uCAAW;AAAA,IAAA;AAAA,EACb;AAGF,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAK;AAAA,MACL,WAAW,kBAAkB,SAAS,SAAS,SAAS;AAAA,MACxD,WAAW;AAAA,MACX,eAAa;AAAA,MACZ,GAAG;AAAA,MAEJ,UAAA;AAAA,QAAA;AAAA,UAACD;AAAA,UAAA;AAAA,YACC,KAAK;AAAA,YACL,IAAI;AAAA,YACJ,MAAM;AAAA,YACN,cAAY,iBAAiB,SAAY;AAAA,YACzC,mBAAiB;AAAA,YACjB,oBAAkB;AAAA,YAClB,iBAAc;AAAA,YACd,iBAAe;AAAA,YACf,iBAAe;AAAA,YACf,UAAU;AAAA,YACV,QAAQ;AAAA,YACR,SAAS;AAAA,YACT;AAAA,YACA;AAAA,YACA,SAAS;AAAA,YACT;AAAA,YACA,eAAa,GAAG,MAAM;AAAA,YACrB,GAAG;AAAA,UAAA;AAAA,QAAA;AAAA,QAGL,QACC;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,IAAI;AAAA,YACJ,KAAK;AAAA,YACL,cACE,qBAAqB,SAAa,iBAAiB;AAAA,YAErD,mBAAiB;AAAA,YACjB,oBAAkB;AAAA,YAClB,WAAW;AAAA,YACX,eAAa,GAAG,MAAM;AAAA,YACrB,GAAG;AAAA,YAEH,UAAA,MAAM,IAAI,CAACC,OAAM,UAAU;AAC1B,oBAAM,cAAc;AAAA,gBAClB,IAAIA,MAAK;AAAA,gBACT,WAAW;AAAA,kBACT,SAAS;AAAA,kBACTA,MAAK,WAAW,SAAS,WAAW;AAAA,gBAAA;AAAA,gBAEtC,cAAcA,MAAK,YAAY;AAAA,gBAC/B,oBAAoBA,MAAK,kBAAkB;AAAA,gBAC3C,gBAAgBA,MAAK,cAAc;AAAA,gBACnC,iBAAiBA,MAAK,YAAY;AAAA,gBAClC,OAAOA,MAAK;AAAA,gBACZ,eAAeA,MAAK,aAAa;AAAA,gBACjC,SAAS,MAAM,iBAAiBA,KAAI;AAAA,cAAA;AAGtC,kBAAIA,MAAK,MAAM;AACb,uBACE;AAAA,kBAAC;AAAA,kBAAA;AAAA,oBAEC,MAAMA,MAAK,WAAW,SAAYA,MAAK;AAAA,oBACtC,GAAG;AAAA,oBACJ,SAAS,CAAC,MAAM;;AACd,0BAAIA,MAAK,UAAU;AACjB,0BAAE,eAAA;AACF;AAAA,sBACF;AACA,4BAAAA,MAAK,YAAL,wBAAAA;AACA,0BAAI,eAAe;AACjB,sCAAA;AAAA,sBACF;AAAA,oBACF;AAAA,oBAEC,UAAA;AAAA,sBAAAA,MAAK,4BACH,QAAA,EAAK,WAAW,SAAS,MAAM,eAAY,QACzC,UAAAA,MAAK,KAAA,CACR;AAAA,sBAEDA,MAAK;AAAA,oBAAA;AAAA,kBAAA;AAAA,kBAnBDA,MAAK,MAAM;AAAA,gBAAA;AAAA,cAsBtB;AAEA,qBACE;AAAA,gBAAC;AAAA,gBAAA;AAAA,kBAEC,MAAK;AAAA,kBACL,UAAUA,MAAK;AAAA,kBACd,GAAG;AAAA,kBAEH,UAAA;AAAA,oBAAAA,MAAK,4BACH,QAAA,EAAK,WAAW,SAAS,MAAM,eAAY,QACzC,UAAAA,MAAK,KAAA,CACR;AAAA,oBAEDA,MAAK;AAAA,kBAAA;AAAA,gBAAA;AAAA,gBAVDA,MAAK,MAAM;AAAA,cAAA;AAAA,YAatB,CAAC;AAAA,UAAA;AAAA,QAAA;AAAA,MACH;AAAA,IAAA;AAAA,EAAA;AAIR;AAEA,aAAa,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACzV3B,MAAM,WAAoC,CAAC,UAAU;AACnD,6BAAQ,cAAA,EAAc,GAAG,OAAO,YAAwB,UAAU,QAAQ;AAC5E;AACA,SAAS,cAAc;"}
1
+ {"version":3,"file":"Dropdown-B7vrHg0z.js","sources":["../../src/Icons/MenuIcon.tsx","../../src/components/Dropdown/DropdownBase.tsx","../../src/components/Dropdown/next/Dropdown.tsx"],"sourcesContent":["const MenuIcon: React.FC<React.SVGProps<SVGSVGElement>> = (props) => (\r\n <svg\r\n width=\"24px\"\r\n height=\"24px\"\r\n strokeWidth=\"1.5\"\r\n viewBox=\"0 0 24 24\"\r\n fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n color=\"currentColor\"\r\n {...props}\r\n >\r\n <path\r\n d=\"M3 5H21\"\r\n stroke=\"currentColor\"\r\n strokeWidth=\"1.5\"\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n ></path>\r\n <path\r\n d=\"M3 12H21\"\r\n stroke=\"currentColor\"\r\n strokeWidth=\"1.5\"\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n ></path>\r\n <path\r\n d=\"M3 19H21\"\r\n stroke=\"currentColor\"\r\n strokeWidth=\"1.5\"\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n ></path>\r\n </svg>\r\n);\r\n\r\nexport default MenuIcon;\r\n","import React, {\r\n useState,\r\n useRef,\r\n useEffect,\r\n useCallback,\r\n KeyboardEvent,\r\n useId,\r\n JSX,\r\n useMemo,\r\n} from \"react\";\r\nimport { BaseDropdownProps, IconButtonLikeRef } from \"./Dropdown.types\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport MenuIcon from \"../../Icons/MenuIcon\";\r\nimport { capitalize } from \"../../utils/capitalize\";\r\nimport {\r\n getDefaultRounding,\r\n getDefaultShadow,\r\n getDefaultTheme,\r\n} from \"../../config/boreal-style-config\";\r\n\r\nconst BaseDropdown: React.FC<BaseDropdownProps> = ({\r\n triggerIcon,\r\n items,\r\n align = \"right\",\r\n className = \"\",\r\n menuClassName = \"\",\r\n \"aria-label\": ariaLabel = \"Dropdown menu\",\r\n \"aria-labelledby\": ariaLabelledBy,\r\n \"aria-describedby\": ariaDescribedBy,\r\n menuAriaLabel,\r\n menuAriaLabelledby,\r\n menuAriaDescribedby,\r\n menuId: menuIdProp,\r\n triggerId,\r\n focusFirstItemOnOpen = true,\r\n closeOnSelect = true,\r\n theme = getDefaultTheme(),\r\n toggleRounding = getDefaultRounding(),\r\n menuRounding = getDefaultRounding(),\r\n toggleShadow = getDefaultShadow(),\r\n menuShadow = getDefaultShadow(),\r\n toggleOutline = false,\r\n state = \"\",\r\n title,\r\n triggerProps,\r\n menuProps,\r\n \"data-testid\": testId = \"dropdown\",\r\n IconButton,\r\n classMap,\r\n ...rest\r\n}: BaseDropdownProps): JSX.Element => {\r\n const [open, setOpen] = useState(false);\r\n const [activeIndex, setActiveIndex] = useState<number>(-1);\r\n\r\n const dropdownRef = useRef<HTMLDivElement>(null);\r\n const menuRef = useRef<HTMLDivElement>(null);\r\n const triggerRef = useRef<IconButtonLikeRef | null>(null);\r\n\r\n const generatedMenuId = useId();\r\n const resolvedMenuId = menuIdProp ?? generatedMenuId;\r\n\r\n const Icon = triggerIcon ?? MenuIcon;\r\n\r\n const getEnabledItemIndexes = useCallback(() => {\r\n return items.reduce<number[]>((acc, item, index) => {\r\n if (!item.disabled) {\r\n acc.push(index);\r\n }\r\n return acc;\r\n }, []);\r\n }, [items]);\r\n\r\n const focusItemAtIndex = useCallback((index: number) => {\r\n const menuItems =\r\n menuRef.current?.querySelectorAll<HTMLElement>(\"a, button\");\r\n\r\n const target = menuItems?.[index];\r\n\r\n if (target instanceof HTMLButtonElement && target.disabled) {\r\n return;\r\n }\r\n\r\n target?.focus();\r\n }, []);\r\n\r\n const toggleDropdown = () => {\r\n setOpen((prev) => !prev);\r\n };\r\n\r\n const closeDropdown = useCallback(() => {\r\n setOpen(false);\r\n setActiveIndex(-1);\r\n triggerRef.current?.focus?.();\r\n }, []);\r\n\r\n const handleItemSelect = useCallback(\r\n (item: BaseDropdownProps[\"items\"][number]) => {\r\n if (item.disabled) return;\r\n\r\n item.onClick?.();\r\n\r\n if (closeOnSelect) {\r\n closeDropdown();\r\n }\r\n },\r\n [closeDropdown, closeOnSelect],\r\n );\r\n\r\n useEffect(() => {\r\n if (!open) return;\r\n\r\n const enabledIndexes = getEnabledItemIndexes();\r\n\r\n if (!focusFirstItemOnOpen || enabledIndexes.length === 0) {\r\n setActiveIndex(-1);\r\n return;\r\n }\r\n\r\n setActiveIndex(enabledIndexes[0] ?? -1);\r\n }, [open, focusFirstItemOnOpen, getEnabledItemIndexes]);\r\n\r\n useEffect(() => {\r\n if (!open || activeIndex < 0) return;\r\n focusItemAtIndex(activeIndex);\r\n }, [activeIndex, open, focusItemAtIndex]);\r\n\r\n useEffect(() => {\r\n const handleClickOutside = (e: MouseEvent) => {\r\n if (\r\n dropdownRef.current &&\r\n !dropdownRef.current.contains(e.target as Node)\r\n ) {\r\n closeDropdown();\r\n }\r\n };\r\n\r\n document.addEventListener(\"mousedown\", handleClickOutside);\r\n\r\n if (open && menuRef.current) {\r\n const rect = menuRef.current.getBoundingClientRect();\r\n const right = rect.right > window.innerWidth;\r\n const left = rect.left < 0;\r\n\r\n if (right) {\r\n menuRef.current.setAttribute(\"data-overflow-right\", \"true\");\r\n menuRef.current.removeAttribute(\"data-overflow-left\");\r\n } else if (left) {\r\n menuRef.current.setAttribute(\"data-overflow-left\", \"true\");\r\n menuRef.current.removeAttribute(\"data-overflow-right\");\r\n } else {\r\n menuRef.current.removeAttribute(\"data-overflow-right\");\r\n menuRef.current.removeAttribute(\"data-overflow-left\");\r\n }\r\n }\r\n\r\n return () => document.removeEventListener(\"mousedown\", handleClickOutside);\r\n }, [open, closeDropdown]);\r\n\r\n const handleKeyDown = useCallback(\r\n (e: KeyboardEvent<HTMLDivElement>) => {\r\n if (!open) return;\r\n\r\n const enabledIndexes = getEnabledItemIndexes();\r\n const hasItems = enabledIndexes.length > 0;\r\n\r\n if (e.key === \"Escape\") {\r\n e.preventDefault();\r\n closeDropdown();\r\n return;\r\n }\r\n\r\n if (e.key === \"Tab\") {\r\n closeDropdown();\r\n return;\r\n }\r\n\r\n if (!hasItems) return;\r\n\r\n const currentEnabledPosition = enabledIndexes.indexOf(activeIndex);\r\n\r\n if (e.key === \"ArrowDown\") {\r\n e.preventDefault();\r\n\r\n if (currentEnabledPosition < 0) {\r\n setActiveIndex(enabledIndexes[0] ?? -1);\r\n } else {\r\n const nextPosition =\r\n (currentEnabledPosition + 1) % enabledIndexes.length;\r\n setActiveIndex(enabledIndexes[nextPosition] ?? -1);\r\n }\r\n } else if (e.key === \"ArrowUp\") {\r\n e.preventDefault();\r\n\r\n if (currentEnabledPosition < 0) {\r\n setActiveIndex(enabledIndexes[enabledIndexes.length - 1] ?? -1);\r\n } else {\r\n const prevPosition =\r\n (currentEnabledPosition - 1 + enabledIndexes.length) %\r\n enabledIndexes.length;\r\n setActiveIndex(enabledIndexes[prevPosition] ?? -1);\r\n }\r\n } else if (e.key === \"Home\") {\r\n e.preventDefault();\r\n setActiveIndex(enabledIndexes[0] ?? -1);\r\n } else if (e.key === \"End\") {\r\n e.preventDefault();\r\n setActiveIndex(enabledIndexes[enabledIndexes.length - 1] ?? -1);\r\n } else if ((e.key === \"Enter\" || e.key === \" \") && activeIndex >= 0) {\r\n e.preventDefault();\r\n const item = items[activeIndex];\r\n if (item && !item.disabled) {\r\n handleItemSelect(item);\r\n }\r\n }\r\n },\r\n [\r\n open,\r\n items,\r\n activeIndex,\r\n getEnabledItemIndexes,\r\n closeDropdown,\r\n handleItemSelect,\r\n ],\r\n );\r\n\r\n const menuClassNames = useMemo(\r\n () =>\r\n combineClassNames(\r\n classMap.menu,\r\n align === \"right\" ? classMap.alignRight : classMap.alignLeft,\r\n menuShadow && classMap[`shadow${capitalize(menuShadow)}`],\r\n menuRounding && classMap[`round${capitalize(menuRounding)}`],\r\n menuClassName,\r\n menuProps?.className,\r\n ),\r\n [\r\n classMap,\r\n align,\r\n menuShadow,\r\n menuRounding,\r\n menuClassName,\r\n menuProps?.className,\r\n ],\r\n );\r\n\r\n return (\r\n <div\r\n ref={dropdownRef}\r\n className={combineClassNames(classMap.wrapper, className)}\r\n onKeyDown={handleKeyDown}\r\n data-testid={testId}\r\n {...rest}\r\n >\r\n <IconButton\r\n ref={triggerRef}\r\n id={triggerId}\r\n icon={Icon}\r\n aria-label={ariaLabelledBy ? undefined : ariaLabel}\r\n aria-labelledby={ariaLabelledBy}\r\n aria-describedby={ariaDescribedBy}\r\n aria-haspopup=\"menu\"\r\n aria-expanded={open}\r\n aria-controls={resolvedMenuId}\r\n rounding={toggleRounding}\r\n shadow={toggleShadow}\r\n outline={toggleOutline}\r\n theme={theme}\r\n state={state}\r\n onClick={toggleDropdown}\r\n title={title}\r\n data-testid={`${testId}-trigger`}\r\n {...triggerProps}\r\n />\r\n\r\n {open && (\r\n <div\r\n id={resolvedMenuId}\r\n ref={menuRef}\r\n aria-label={\r\n menuAriaLabelledby ? undefined : (menuAriaLabel ?? ariaLabel)\r\n }\r\n aria-labelledby={menuAriaLabelledby}\r\n aria-describedby={menuAriaDescribedby}\r\n className={menuClassNames}\r\n data-testid={`${testId}-menu`}\r\n {...menuProps}\r\n >\r\n {items.map((item, index) => {\r\n const commonProps = {\r\n id: item.id,\r\n className: combineClassNames(\r\n classMap.item,\r\n item.disabled ? classMap.disabled : \"\",\r\n ),\r\n \"aria-label\": item[\"aria-label\"],\r\n \"aria-describedby\": item[\"aria-describedby\"],\r\n \"aria-current\": item[\"aria-current\"],\r\n \"aria-disabled\": item.disabled || undefined,\r\n title: item.title,\r\n \"data-testid\": item[\"data-testid\"],\r\n onClick: () => handleItemSelect(item),\r\n };\r\n\r\n if (item.href) {\r\n return (\r\n <a\r\n key={item.id ?? index}\r\n href={item.disabled ? undefined : item.href}\r\n {...commonProps}\r\n onClick={(e) => {\r\n if (item.disabled) {\r\n e.preventDefault();\r\n return;\r\n }\r\n item.onClick?.();\r\n if (closeOnSelect) {\r\n closeDropdown();\r\n }\r\n }}\r\n >\r\n {item.icon && (\r\n <span className={classMap.icon} aria-hidden=\"true\">\r\n {item.icon}\r\n </span>\r\n )}\r\n {item.label}\r\n </a>\r\n );\r\n }\r\n\r\n return (\r\n <button\r\n key={item.id ?? index}\r\n type=\"button\"\r\n disabled={item.disabled}\r\n {...commonProps}\r\n >\r\n {item.icon && (\r\n <span className={classMap.icon} aria-hidden=\"true\">\r\n {item.icon}\r\n </span>\r\n )}\r\n {item.label}\r\n </button>\r\n );\r\n })}\r\n </div>\r\n )}\r\n </div>\r\n );\r\n};\r\n\r\nBaseDropdown.displayName = \"BaseDropdown\";\r\nexport default BaseDropdown;\r\n","\"use client\";\r\nimport React from \"react\";\r\nimport BaseDropdown from \"../DropdownBase\";\r\nimport { DropdownProps } from \"../Dropdown.types\";\r\nimport { IconButton } from \"@/index.next\";\r\nimport styles from \"./Dropdown.module.scss\";\r\n\r\nconst Dropdown: React.FC<DropdownProps> = (props) => {\r\n return <BaseDropdown {...props} IconButton={IconButton} classMap={styles} />;\r\n};\r\nDropdown.displayName = \"Dropdown\";\r\nexport default Dropdown;\r\n"],"names":["IconButton","item"],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
- const require$$2 = require("react/jsx-runtime");
2
+ require('./globals.css');require('./Dropdown.css');const require$$2 = require("react/jsx-runtime");
3
3
  const React = require("react");
4
4
  const classNames = require("./classNames-BcWMx052.cjs");
5
5
  const capitalize = require("./capitalize-DoV-nOmN.cjs");
6
6
  const borealStyleConfig = require("./boreal-style-config-C1UIwOFN.cjs");
7
7
  ;/* empty css */
8
- const IconButton = require("./IconButton-4ySBEhn1.cjs");
8
+ const IconButton = require("./IconButton-C66aQhKe.cjs");
9
9
  const MenuIcon = (props) => /* @__PURE__ */ require$$2.jsxs(
10
10
  "svg",
11
11
  {
@@ -386,4 +386,4 @@ const Dropdown = (props) => {
386
386
  };
387
387
  Dropdown.displayName = "Dropdown";
388
388
  exports.Dropdown = Dropdown;
389
- //# sourceMappingURL=Dropdown-kQLhr7_M.cjs.map
389
+ //# sourceMappingURL=Dropdown-CUYItZDk.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dropdown-kQLhr7_M.cjs","sources":["../../src/Icons/MenuIcon.tsx","../../src/components/Dropdown/DropdownBase.tsx","../../src/components/Dropdown/next/Dropdown.tsx"],"sourcesContent":["const MenuIcon: React.FC<React.SVGProps<SVGSVGElement>> = (props) => (\r\n <svg\r\n width=\"24px\"\r\n height=\"24px\"\r\n strokeWidth=\"1.5\"\r\n viewBox=\"0 0 24 24\"\r\n fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n color=\"currentColor\"\r\n {...props}\r\n >\r\n <path\r\n d=\"M3 5H21\"\r\n stroke=\"currentColor\"\r\n strokeWidth=\"1.5\"\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n ></path>\r\n <path\r\n d=\"M3 12H21\"\r\n stroke=\"currentColor\"\r\n strokeWidth=\"1.5\"\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n ></path>\r\n <path\r\n d=\"M3 19H21\"\r\n stroke=\"currentColor\"\r\n strokeWidth=\"1.5\"\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n ></path>\r\n </svg>\r\n);\r\n\r\nexport default MenuIcon;\r\n","import React, {\r\n useState,\r\n useRef,\r\n useEffect,\r\n useCallback,\r\n KeyboardEvent,\r\n useId,\r\n JSX,\r\n useMemo,\r\n} from \"react\";\r\nimport { BaseDropdownProps, IconButtonLikeRef } from \"./Dropdown.types\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport MenuIcon from \"../../Icons/MenuIcon\";\r\nimport { capitalize } from \"../../utils/capitalize\";\r\nimport {\r\n getDefaultRounding,\r\n getDefaultShadow,\r\n getDefaultTheme,\r\n} from \"../../config/boreal-style-config\";\r\n\r\nconst BaseDropdown: React.FC<BaseDropdownProps> = ({\r\n triggerIcon,\r\n items,\r\n align = \"right\",\r\n className = \"\",\r\n menuClassName = \"\",\r\n \"aria-label\": ariaLabel = \"Dropdown menu\",\r\n \"aria-labelledby\": ariaLabelledBy,\r\n \"aria-describedby\": ariaDescribedBy,\r\n menuAriaLabel,\r\n menuAriaLabelledby,\r\n menuAriaDescribedby,\r\n menuId: menuIdProp,\r\n triggerId,\r\n focusFirstItemOnOpen = true,\r\n closeOnSelect = true,\r\n theme = getDefaultTheme(),\r\n toggleRounding = getDefaultRounding(),\r\n menuRounding = getDefaultRounding(),\r\n toggleShadow = getDefaultShadow(),\r\n menuShadow = getDefaultShadow(),\r\n toggleOutline = false,\r\n state = \"\",\r\n title,\r\n triggerProps,\r\n menuProps,\r\n \"data-testid\": testId = \"dropdown\",\r\n IconButton,\r\n classMap,\r\n ...rest\r\n}: BaseDropdownProps): JSX.Element => {\r\n const [open, setOpen] = useState(false);\r\n const [activeIndex, setActiveIndex] = useState<number>(-1);\r\n\r\n const dropdownRef = useRef<HTMLDivElement>(null);\r\n const menuRef = useRef<HTMLDivElement>(null);\r\n const triggerRef = useRef<IconButtonLikeRef | null>(null);\r\n\r\n const generatedMenuId = useId();\r\n const resolvedMenuId = menuIdProp ?? generatedMenuId;\r\n\r\n const Icon = triggerIcon ?? MenuIcon;\r\n\r\n const getEnabledItemIndexes = useCallback(() => {\r\n return items.reduce<number[]>((acc, item, index) => {\r\n if (!item.disabled) {\r\n acc.push(index);\r\n }\r\n return acc;\r\n }, []);\r\n }, [items]);\r\n\r\n const focusItemAtIndex = useCallback((index: number) => {\r\n const menuItems =\r\n menuRef.current?.querySelectorAll<HTMLElement>(\"a, button\");\r\n\r\n const target = menuItems?.[index];\r\n\r\n if (target instanceof HTMLButtonElement && target.disabled) {\r\n return;\r\n }\r\n\r\n target?.focus();\r\n }, []);\r\n\r\n const toggleDropdown = () => {\r\n setOpen((prev) => !prev);\r\n };\r\n\r\n const closeDropdown = useCallback(() => {\r\n setOpen(false);\r\n setActiveIndex(-1);\r\n triggerRef.current?.focus?.();\r\n }, []);\r\n\r\n const handleItemSelect = useCallback(\r\n (item: BaseDropdownProps[\"items\"][number]) => {\r\n if (item.disabled) return;\r\n\r\n item.onClick?.();\r\n\r\n if (closeOnSelect) {\r\n closeDropdown();\r\n }\r\n },\r\n [closeDropdown, closeOnSelect],\r\n );\r\n\r\n useEffect(() => {\r\n if (!open) return;\r\n\r\n const enabledIndexes = getEnabledItemIndexes();\r\n\r\n if (!focusFirstItemOnOpen || enabledIndexes.length === 0) {\r\n setActiveIndex(-1);\r\n return;\r\n }\r\n\r\n setActiveIndex(enabledIndexes[0] ?? -1);\r\n }, [open, focusFirstItemOnOpen, getEnabledItemIndexes]);\r\n\r\n useEffect(() => {\r\n if (!open || activeIndex < 0) return;\r\n focusItemAtIndex(activeIndex);\r\n }, [activeIndex, open, focusItemAtIndex]);\r\n\r\n useEffect(() => {\r\n const handleClickOutside = (e: MouseEvent) => {\r\n if (\r\n dropdownRef.current &&\r\n !dropdownRef.current.contains(e.target as Node)\r\n ) {\r\n closeDropdown();\r\n }\r\n };\r\n\r\n document.addEventListener(\"mousedown\", handleClickOutside);\r\n\r\n if (open && menuRef.current) {\r\n const rect = menuRef.current.getBoundingClientRect();\r\n const right = rect.right > window.innerWidth;\r\n const left = rect.left < 0;\r\n\r\n if (right) {\r\n menuRef.current.setAttribute(\"data-overflow-right\", \"true\");\r\n menuRef.current.removeAttribute(\"data-overflow-left\");\r\n } else if (left) {\r\n menuRef.current.setAttribute(\"data-overflow-left\", \"true\");\r\n menuRef.current.removeAttribute(\"data-overflow-right\");\r\n } else {\r\n menuRef.current.removeAttribute(\"data-overflow-right\");\r\n menuRef.current.removeAttribute(\"data-overflow-left\");\r\n }\r\n }\r\n\r\n return () => document.removeEventListener(\"mousedown\", handleClickOutside);\r\n }, [open, closeDropdown]);\r\n\r\n const handleKeyDown = useCallback(\r\n (e: KeyboardEvent<HTMLDivElement>) => {\r\n if (!open) return;\r\n\r\n const enabledIndexes = getEnabledItemIndexes();\r\n const hasItems = enabledIndexes.length > 0;\r\n\r\n if (e.key === \"Escape\") {\r\n e.preventDefault();\r\n closeDropdown();\r\n return;\r\n }\r\n\r\n if (e.key === \"Tab\") {\r\n closeDropdown();\r\n return;\r\n }\r\n\r\n if (!hasItems) return;\r\n\r\n const currentEnabledPosition = enabledIndexes.indexOf(activeIndex);\r\n\r\n if (e.key === \"ArrowDown\") {\r\n e.preventDefault();\r\n\r\n if (currentEnabledPosition < 0) {\r\n setActiveIndex(enabledIndexes[0] ?? -1);\r\n } else {\r\n const nextPosition =\r\n (currentEnabledPosition + 1) % enabledIndexes.length;\r\n setActiveIndex(enabledIndexes[nextPosition] ?? -1);\r\n }\r\n } else if (e.key === \"ArrowUp\") {\r\n e.preventDefault();\r\n\r\n if (currentEnabledPosition < 0) {\r\n setActiveIndex(enabledIndexes[enabledIndexes.length - 1] ?? -1);\r\n } else {\r\n const prevPosition =\r\n (currentEnabledPosition - 1 + enabledIndexes.length) %\r\n enabledIndexes.length;\r\n setActiveIndex(enabledIndexes[prevPosition] ?? -1);\r\n }\r\n } else if (e.key === \"Home\") {\r\n e.preventDefault();\r\n setActiveIndex(enabledIndexes[0] ?? -1);\r\n } else if (e.key === \"End\") {\r\n e.preventDefault();\r\n setActiveIndex(enabledIndexes[enabledIndexes.length - 1] ?? -1);\r\n } else if ((e.key === \"Enter\" || e.key === \" \") && activeIndex >= 0) {\r\n e.preventDefault();\r\n const item = items[activeIndex];\r\n if (item && !item.disabled) {\r\n handleItemSelect(item);\r\n }\r\n }\r\n },\r\n [\r\n open,\r\n items,\r\n activeIndex,\r\n getEnabledItemIndexes,\r\n closeDropdown,\r\n handleItemSelect,\r\n ],\r\n );\r\n\r\n const menuClassNames = useMemo(\r\n () =>\r\n combineClassNames(\r\n classMap.menu,\r\n align === \"right\" ? classMap.alignRight : classMap.alignLeft,\r\n menuShadow && classMap[`shadow${capitalize(menuShadow)}`],\r\n menuRounding && classMap[`round${capitalize(menuRounding)}`],\r\n menuClassName,\r\n menuProps?.className,\r\n ),\r\n [\r\n classMap,\r\n align,\r\n menuShadow,\r\n menuRounding,\r\n menuClassName,\r\n menuProps?.className,\r\n ],\r\n );\r\n\r\n return (\r\n <div\r\n ref={dropdownRef}\r\n className={combineClassNames(classMap.wrapper, className)}\r\n onKeyDown={handleKeyDown}\r\n data-testid={testId}\r\n {...rest}\r\n >\r\n <IconButton\r\n ref={triggerRef}\r\n id={triggerId}\r\n icon={Icon}\r\n aria-label={ariaLabelledBy ? undefined : ariaLabel}\r\n aria-labelledby={ariaLabelledBy}\r\n aria-describedby={ariaDescribedBy}\r\n aria-haspopup=\"menu\"\r\n aria-expanded={open}\r\n aria-controls={resolvedMenuId}\r\n rounding={toggleRounding}\r\n shadow={toggleShadow}\r\n outline={toggleOutline}\r\n theme={theme}\r\n state={state}\r\n onClick={toggleDropdown}\r\n title={title}\r\n data-testid={`${testId}-trigger`}\r\n {...triggerProps}\r\n />\r\n\r\n {open && (\r\n <div\r\n id={resolvedMenuId}\r\n ref={menuRef}\r\n aria-label={\r\n menuAriaLabelledby ? undefined : (menuAriaLabel ?? ariaLabel)\r\n }\r\n aria-labelledby={menuAriaLabelledby}\r\n aria-describedby={menuAriaDescribedby}\r\n className={menuClassNames}\r\n data-testid={`${testId}-menu`}\r\n {...menuProps}\r\n >\r\n {items.map((item, index) => {\r\n const commonProps = {\r\n id: item.id,\r\n className: combineClassNames(\r\n classMap.item,\r\n item.disabled ? classMap.disabled : \"\",\r\n ),\r\n \"aria-label\": item[\"aria-label\"],\r\n \"aria-describedby\": item[\"aria-describedby\"],\r\n \"aria-current\": item[\"aria-current\"],\r\n \"aria-disabled\": item.disabled || undefined,\r\n title: item.title,\r\n \"data-testid\": item[\"data-testid\"],\r\n onClick: () => handleItemSelect(item),\r\n };\r\n\r\n if (item.href) {\r\n return (\r\n <a\r\n key={item.id ?? index}\r\n href={item.disabled ? undefined : item.href}\r\n {...commonProps}\r\n onClick={(e) => {\r\n if (item.disabled) {\r\n e.preventDefault();\r\n return;\r\n }\r\n item.onClick?.();\r\n if (closeOnSelect) {\r\n closeDropdown();\r\n }\r\n }}\r\n >\r\n {item.icon && (\r\n <span className={classMap.icon} aria-hidden=\"true\">\r\n {item.icon}\r\n </span>\r\n )}\r\n {item.label}\r\n </a>\r\n );\r\n }\r\n\r\n return (\r\n <button\r\n key={item.id ?? index}\r\n type=\"button\"\r\n disabled={item.disabled}\r\n {...commonProps}\r\n >\r\n {item.icon && (\r\n <span className={classMap.icon} aria-hidden=\"true\">\r\n {item.icon}\r\n </span>\r\n )}\r\n {item.label}\r\n </button>\r\n );\r\n })}\r\n </div>\r\n )}\r\n </div>\r\n );\r\n};\r\n\r\nBaseDropdown.displayName = \"BaseDropdown\";\r\nexport default BaseDropdown;\r\n","\"use client\";\r\nimport React from \"react\";\r\nimport BaseDropdown from \"../DropdownBase\";\r\nimport { DropdownProps } from \"../Dropdown.types\";\r\nimport { IconButton } from \"@/index.next\";\r\nimport styles from \"./Dropdown.module.scss\";\r\n\r\nconst Dropdown: React.FC<DropdownProps> = (props) => {\r\n return <BaseDropdown {...props} IconButton={IconButton} classMap={styles} />;\r\n};\r\nDropdown.displayName = \"Dropdown\";\r\nexport default Dropdown;\r\n"],"names":["jsxs","jsx","getDefaultTheme","getDefaultRounding","getDefaultShadow","IconButton","useState","useRef","useId","useCallback","item","useEffect","useMemo","combineClassNames","capitalize"],"mappings":"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"}
1
+ {"version":3,"file":"Dropdown-CUYItZDk.cjs","sources":["../../src/Icons/MenuIcon.tsx","../../src/components/Dropdown/DropdownBase.tsx","../../src/components/Dropdown/next/Dropdown.tsx"],"sourcesContent":["const MenuIcon: React.FC<React.SVGProps<SVGSVGElement>> = (props) => (\r\n <svg\r\n width=\"24px\"\r\n height=\"24px\"\r\n strokeWidth=\"1.5\"\r\n viewBox=\"0 0 24 24\"\r\n fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n color=\"currentColor\"\r\n {...props}\r\n >\r\n <path\r\n d=\"M3 5H21\"\r\n stroke=\"currentColor\"\r\n strokeWidth=\"1.5\"\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n ></path>\r\n <path\r\n d=\"M3 12H21\"\r\n stroke=\"currentColor\"\r\n strokeWidth=\"1.5\"\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n ></path>\r\n <path\r\n d=\"M3 19H21\"\r\n stroke=\"currentColor\"\r\n strokeWidth=\"1.5\"\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n ></path>\r\n </svg>\r\n);\r\n\r\nexport default MenuIcon;\r\n","import React, {\r\n useState,\r\n useRef,\r\n useEffect,\r\n useCallback,\r\n KeyboardEvent,\r\n useId,\r\n JSX,\r\n useMemo,\r\n} from \"react\";\r\nimport { BaseDropdownProps, IconButtonLikeRef } from \"./Dropdown.types\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport MenuIcon from \"../../Icons/MenuIcon\";\r\nimport { capitalize } from \"../../utils/capitalize\";\r\nimport {\r\n getDefaultRounding,\r\n getDefaultShadow,\r\n getDefaultTheme,\r\n} from \"../../config/boreal-style-config\";\r\n\r\nconst BaseDropdown: React.FC<BaseDropdownProps> = ({\r\n triggerIcon,\r\n items,\r\n align = \"right\",\r\n className = \"\",\r\n menuClassName = \"\",\r\n \"aria-label\": ariaLabel = \"Dropdown menu\",\r\n \"aria-labelledby\": ariaLabelledBy,\r\n \"aria-describedby\": ariaDescribedBy,\r\n menuAriaLabel,\r\n menuAriaLabelledby,\r\n menuAriaDescribedby,\r\n menuId: menuIdProp,\r\n triggerId,\r\n focusFirstItemOnOpen = true,\r\n closeOnSelect = true,\r\n theme = getDefaultTheme(),\r\n toggleRounding = getDefaultRounding(),\r\n menuRounding = getDefaultRounding(),\r\n toggleShadow = getDefaultShadow(),\r\n menuShadow = getDefaultShadow(),\r\n toggleOutline = false,\r\n state = \"\",\r\n title,\r\n triggerProps,\r\n menuProps,\r\n \"data-testid\": testId = \"dropdown\",\r\n IconButton,\r\n classMap,\r\n ...rest\r\n}: BaseDropdownProps): JSX.Element => {\r\n const [open, setOpen] = useState(false);\r\n const [activeIndex, setActiveIndex] = useState<number>(-1);\r\n\r\n const dropdownRef = useRef<HTMLDivElement>(null);\r\n const menuRef = useRef<HTMLDivElement>(null);\r\n const triggerRef = useRef<IconButtonLikeRef | null>(null);\r\n\r\n const generatedMenuId = useId();\r\n const resolvedMenuId = menuIdProp ?? generatedMenuId;\r\n\r\n const Icon = triggerIcon ?? MenuIcon;\r\n\r\n const getEnabledItemIndexes = useCallback(() => {\r\n return items.reduce<number[]>((acc, item, index) => {\r\n if (!item.disabled) {\r\n acc.push(index);\r\n }\r\n return acc;\r\n }, []);\r\n }, [items]);\r\n\r\n const focusItemAtIndex = useCallback((index: number) => {\r\n const menuItems =\r\n menuRef.current?.querySelectorAll<HTMLElement>(\"a, button\");\r\n\r\n const target = menuItems?.[index];\r\n\r\n if (target instanceof HTMLButtonElement && target.disabled) {\r\n return;\r\n }\r\n\r\n target?.focus();\r\n }, []);\r\n\r\n const toggleDropdown = () => {\r\n setOpen((prev) => !prev);\r\n };\r\n\r\n const closeDropdown = useCallback(() => {\r\n setOpen(false);\r\n setActiveIndex(-1);\r\n triggerRef.current?.focus?.();\r\n }, []);\r\n\r\n const handleItemSelect = useCallback(\r\n (item: BaseDropdownProps[\"items\"][number]) => {\r\n if (item.disabled) return;\r\n\r\n item.onClick?.();\r\n\r\n if (closeOnSelect) {\r\n closeDropdown();\r\n }\r\n },\r\n [closeDropdown, closeOnSelect],\r\n );\r\n\r\n useEffect(() => {\r\n if (!open) return;\r\n\r\n const enabledIndexes = getEnabledItemIndexes();\r\n\r\n if (!focusFirstItemOnOpen || enabledIndexes.length === 0) {\r\n setActiveIndex(-1);\r\n return;\r\n }\r\n\r\n setActiveIndex(enabledIndexes[0] ?? -1);\r\n }, [open, focusFirstItemOnOpen, getEnabledItemIndexes]);\r\n\r\n useEffect(() => {\r\n if (!open || activeIndex < 0) return;\r\n focusItemAtIndex(activeIndex);\r\n }, [activeIndex, open, focusItemAtIndex]);\r\n\r\n useEffect(() => {\r\n const handleClickOutside = (e: MouseEvent) => {\r\n if (\r\n dropdownRef.current &&\r\n !dropdownRef.current.contains(e.target as Node)\r\n ) {\r\n closeDropdown();\r\n }\r\n };\r\n\r\n document.addEventListener(\"mousedown\", handleClickOutside);\r\n\r\n if (open && menuRef.current) {\r\n const rect = menuRef.current.getBoundingClientRect();\r\n const right = rect.right > window.innerWidth;\r\n const left = rect.left < 0;\r\n\r\n if (right) {\r\n menuRef.current.setAttribute(\"data-overflow-right\", \"true\");\r\n menuRef.current.removeAttribute(\"data-overflow-left\");\r\n } else if (left) {\r\n menuRef.current.setAttribute(\"data-overflow-left\", \"true\");\r\n menuRef.current.removeAttribute(\"data-overflow-right\");\r\n } else {\r\n menuRef.current.removeAttribute(\"data-overflow-right\");\r\n menuRef.current.removeAttribute(\"data-overflow-left\");\r\n }\r\n }\r\n\r\n return () => document.removeEventListener(\"mousedown\", handleClickOutside);\r\n }, [open, closeDropdown]);\r\n\r\n const handleKeyDown = useCallback(\r\n (e: KeyboardEvent<HTMLDivElement>) => {\r\n if (!open) return;\r\n\r\n const enabledIndexes = getEnabledItemIndexes();\r\n const hasItems = enabledIndexes.length > 0;\r\n\r\n if (e.key === \"Escape\") {\r\n e.preventDefault();\r\n closeDropdown();\r\n return;\r\n }\r\n\r\n if (e.key === \"Tab\") {\r\n closeDropdown();\r\n return;\r\n }\r\n\r\n if (!hasItems) return;\r\n\r\n const currentEnabledPosition = enabledIndexes.indexOf(activeIndex);\r\n\r\n if (e.key === \"ArrowDown\") {\r\n e.preventDefault();\r\n\r\n if (currentEnabledPosition < 0) {\r\n setActiveIndex(enabledIndexes[0] ?? -1);\r\n } else {\r\n const nextPosition =\r\n (currentEnabledPosition + 1) % enabledIndexes.length;\r\n setActiveIndex(enabledIndexes[nextPosition] ?? -1);\r\n }\r\n } else if (e.key === \"ArrowUp\") {\r\n e.preventDefault();\r\n\r\n if (currentEnabledPosition < 0) {\r\n setActiveIndex(enabledIndexes[enabledIndexes.length - 1] ?? -1);\r\n } else {\r\n const prevPosition =\r\n (currentEnabledPosition - 1 + enabledIndexes.length) %\r\n enabledIndexes.length;\r\n setActiveIndex(enabledIndexes[prevPosition] ?? -1);\r\n }\r\n } else if (e.key === \"Home\") {\r\n e.preventDefault();\r\n setActiveIndex(enabledIndexes[0] ?? -1);\r\n } else if (e.key === \"End\") {\r\n e.preventDefault();\r\n setActiveIndex(enabledIndexes[enabledIndexes.length - 1] ?? -1);\r\n } else if ((e.key === \"Enter\" || e.key === \" \") && activeIndex >= 0) {\r\n e.preventDefault();\r\n const item = items[activeIndex];\r\n if (item && !item.disabled) {\r\n handleItemSelect(item);\r\n }\r\n }\r\n },\r\n [\r\n open,\r\n items,\r\n activeIndex,\r\n getEnabledItemIndexes,\r\n closeDropdown,\r\n handleItemSelect,\r\n ],\r\n );\r\n\r\n const menuClassNames = useMemo(\r\n () =>\r\n combineClassNames(\r\n classMap.menu,\r\n align === \"right\" ? classMap.alignRight : classMap.alignLeft,\r\n menuShadow && classMap[`shadow${capitalize(menuShadow)}`],\r\n menuRounding && classMap[`round${capitalize(menuRounding)}`],\r\n menuClassName,\r\n menuProps?.className,\r\n ),\r\n [\r\n classMap,\r\n align,\r\n menuShadow,\r\n menuRounding,\r\n menuClassName,\r\n menuProps?.className,\r\n ],\r\n );\r\n\r\n return (\r\n <div\r\n ref={dropdownRef}\r\n className={combineClassNames(classMap.wrapper, className)}\r\n onKeyDown={handleKeyDown}\r\n data-testid={testId}\r\n {...rest}\r\n >\r\n <IconButton\r\n ref={triggerRef}\r\n id={triggerId}\r\n icon={Icon}\r\n aria-label={ariaLabelledBy ? undefined : ariaLabel}\r\n aria-labelledby={ariaLabelledBy}\r\n aria-describedby={ariaDescribedBy}\r\n aria-haspopup=\"menu\"\r\n aria-expanded={open}\r\n aria-controls={resolvedMenuId}\r\n rounding={toggleRounding}\r\n shadow={toggleShadow}\r\n outline={toggleOutline}\r\n theme={theme}\r\n state={state}\r\n onClick={toggleDropdown}\r\n title={title}\r\n data-testid={`${testId}-trigger`}\r\n {...triggerProps}\r\n />\r\n\r\n {open && (\r\n <div\r\n id={resolvedMenuId}\r\n ref={menuRef}\r\n aria-label={\r\n menuAriaLabelledby ? undefined : (menuAriaLabel ?? ariaLabel)\r\n }\r\n aria-labelledby={menuAriaLabelledby}\r\n aria-describedby={menuAriaDescribedby}\r\n className={menuClassNames}\r\n data-testid={`${testId}-menu`}\r\n {...menuProps}\r\n >\r\n {items.map((item, index) => {\r\n const commonProps = {\r\n id: item.id,\r\n className: combineClassNames(\r\n classMap.item,\r\n item.disabled ? classMap.disabled : \"\",\r\n ),\r\n \"aria-label\": item[\"aria-label\"],\r\n \"aria-describedby\": item[\"aria-describedby\"],\r\n \"aria-current\": item[\"aria-current\"],\r\n \"aria-disabled\": item.disabled || undefined,\r\n title: item.title,\r\n \"data-testid\": item[\"data-testid\"],\r\n onClick: () => handleItemSelect(item),\r\n };\r\n\r\n if (item.href) {\r\n return (\r\n <a\r\n key={item.id ?? index}\r\n href={item.disabled ? undefined : item.href}\r\n {...commonProps}\r\n onClick={(e) => {\r\n if (item.disabled) {\r\n e.preventDefault();\r\n return;\r\n }\r\n item.onClick?.();\r\n if (closeOnSelect) {\r\n closeDropdown();\r\n }\r\n }}\r\n >\r\n {item.icon && (\r\n <span className={classMap.icon} aria-hidden=\"true\">\r\n {item.icon}\r\n </span>\r\n )}\r\n {item.label}\r\n </a>\r\n );\r\n }\r\n\r\n return (\r\n <button\r\n key={item.id ?? index}\r\n type=\"button\"\r\n disabled={item.disabled}\r\n {...commonProps}\r\n >\r\n {item.icon && (\r\n <span className={classMap.icon} aria-hidden=\"true\">\r\n {item.icon}\r\n </span>\r\n )}\r\n {item.label}\r\n </button>\r\n );\r\n })}\r\n </div>\r\n )}\r\n </div>\r\n );\r\n};\r\n\r\nBaseDropdown.displayName = \"BaseDropdown\";\r\nexport default BaseDropdown;\r\n","\"use client\";\r\nimport React from \"react\";\r\nimport BaseDropdown from \"../DropdownBase\";\r\nimport { DropdownProps } from \"../Dropdown.types\";\r\nimport { IconButton } from \"@/index.next\";\r\nimport styles from \"./Dropdown.module.scss\";\r\n\r\nconst Dropdown: React.FC<DropdownProps> = (props) => {\r\n return <BaseDropdown {...props} IconButton={IconButton} classMap={styles} />;\r\n};\r\nDropdown.displayName = \"Dropdown\";\r\nexport default Dropdown;\r\n"],"names":["jsxs","jsx","getDefaultTheme","getDefaultRounding","getDefaultShadow","IconButton","useState","useRef","useId","useCallback","item","useEffect","useMemo","combineClassNames","capitalize"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  "use strict";
2
- const Dropdown = require("./Dropdown-kQLhr7_M.cjs");
2
+ const Dropdown = require("./Dropdown-CUYItZDk.cjs");
3
3
  module.exports = Dropdown.Dropdown;
4
4
  //# sourceMappingURL=Dropdown.cjs.js.map