boreal-ui 0.0.38 → 0.0.40
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.
- package/dist/core/{Badge-DOn6E2bS.cjs → Badge-CyGz8K5W.cjs} +4 -1
- package/dist/core/Badge-CyGz8K5W.cjs.map +1 -0
- package/dist/core/{Badge-Dpjq6lUF.js → Badge-DnE8lt7-.js} +4 -1
- package/dist/core/Badge-DnE8lt7-.js.map +1 -0
- package/dist/core/Badge.cjs.js +1 -1
- package/dist/core/Badge.js +1 -1
- package/dist/core/{Card-Bp8OvH80.cjs → Card-CmyXglyZ.cjs} +9 -6
- package/dist/core/Card-CmyXglyZ.cjs.map +1 -0
- package/dist/core/{Card-B7Hjcknf.js → Card-v8Cu1hJe.js} +9 -6
- package/dist/core/Card-v8Cu1hJe.js.map +1 -0
- package/dist/core/Card.cjs.js +1 -1
- package/dist/core/Card.js +1 -1
- package/dist/core/{Chip-D4vbSudX.js → Chip-BjbtoFKm.js} +2 -2
- package/dist/core/{Chip-D4vbSudX.js.map → Chip-BjbtoFKm.js.map} +1 -1
- package/dist/core/{Chip-CWsfLyyU.cjs → Chip-c2mN7R-R.cjs} +2 -2
- package/dist/core/{Chip-CWsfLyyU.cjs.map → Chip-c2mN7R-R.cjs.map} +1 -1
- package/dist/core/Chip.cjs.js +1 -1
- package/dist/core/Chip.js +1 -1
- package/dist/core/{CommandPalette-CXKBDCbP.cjs → CommandPalette-CPhVbQAc.cjs} +2 -2
- package/dist/core/{CommandPalette-CXKBDCbP.cjs.map → CommandPalette-CPhVbQAc.cjs.map} +1 -1
- package/dist/core/{CommandPalette-N556smLj.js → CommandPalette-Df69KRv4.js} +2 -2
- package/dist/core/{CommandPalette-N556smLj.js.map → CommandPalette-Df69KRv4.js.map} +1 -1
- package/dist/core/CommandPalette.cjs.js +1 -1
- package/dist/core/CommandPalette.js +1 -1
- package/dist/core/{Dropdown-CwofYHjq.js → Dropdown-CR3xr5K-.js} +2 -2
- package/dist/core/{Dropdown-CwofYHjq.js.map → Dropdown-CR3xr5K-.js.map} +1 -1
- package/dist/core/{Dropdown-DvwHouyC.cjs → Dropdown-CjPfU1K-.cjs} +2 -2
- package/dist/core/{Dropdown-DvwHouyC.cjs.map → Dropdown-CjPfU1K-.cjs.map} +1 -1
- package/dist/core/Dropdown.cjs.js +1 -1
- package/dist/core/Dropdown.js +1 -1
- package/dist/core/{FileUpload-Du7vDDdf.cjs → FileUpload-BJ3RJxT3.cjs} +3 -3
- package/dist/core/{FileUpload-Du7vDDdf.cjs.map → FileUpload-BJ3RJxT3.cjs.map} +1 -1
- package/dist/core/{FileUpload-Q8aDsaFs.js → FileUpload-C0eHx1h8.js} +3 -3
- package/dist/core/{FileUpload-Q8aDsaFs.js.map → FileUpload-C0eHx1h8.js.map} +1 -1
- package/dist/core/FileUpload.cjs.js +1 -1
- package/dist/core/FileUpload.js +1 -1
- package/dist/core/{Footer-DMOA1W7N.cjs → Footer-CYIUIgV1.cjs} +3 -3
- package/dist/core/Footer-CYIUIgV1.cjs.map +1 -0
- package/dist/core/{Footer-zO4RGjCl.js → Footer-D9RimHx9.js} +3 -3
- package/dist/core/Footer-D9RimHx9.js.map +1 -0
- package/dist/core/Footer.cjs.js +1 -1
- package/dist/core/Footer.js +1 -1
- package/dist/core/{FormGroup-C2TWC17P.cjs → FormGroup-Cit_2_Wo.cjs} +5 -8
- package/dist/core/FormGroup-Cit_2_Wo.cjs.map +1 -0
- package/dist/core/{FormGroup-tSK_NN0-.js → FormGroup-DDZ1D_CI.js} +5 -8
- package/dist/core/FormGroup-DDZ1D_CI.js.map +1 -0
- package/dist/core/FormGroup.cjs.js +1 -1
- package/dist/core/FormGroup.js +1 -1
- package/dist/core/{IconButton-_lxTppua.js → IconButton-BMZhwYXB.js} +2 -2
- package/dist/core/IconButton-BMZhwYXB.js.map +1 -0
- package/dist/core/{IconButton-CR9bTZoJ.cjs → IconButton-Bio6Azm-.cjs} +2 -2
- package/dist/core/IconButton-Bio6Azm-.cjs.map +1 -0
- package/dist/core/IconButton.cjs.js +1 -1
- package/dist/core/IconButton.js +1 -1
- package/dist/core/{MarkdownRenderer-LUXCa_a8.cjs → MarkdownRenderer-Bn6vcfSd.cjs} +3 -2
- package/dist/core/MarkdownRenderer-Bn6vcfSd.cjs.map +1 -0
- package/dist/core/{MarkdownRenderer-B1LmmpZm.js → MarkdownRenderer-Co787hku.js} +3 -2
- package/dist/core/MarkdownRenderer-Co787hku.js.map +1 -0
- package/dist/core/MarkdownRenderer.cjs.js +1 -1
- package/dist/core/MarkdownRenderer.js +1 -1
- package/dist/core/MessagePopUp.cjs.js +1 -1
- package/dist/core/MessagePopUp.js +1 -1
- package/dist/core/{MessagePopup-BlbPMecd.js → MessagePopup-B3lEfar7.js} +2 -2
- package/dist/core/{MessagePopup-BlbPMecd.js.map → MessagePopup-B3lEfar7.js.map} +1 -1
- package/dist/core/{MessagePopup-hxloT7aK.cjs → MessagePopup-CtdpuRFv.cjs} +2 -2
- package/dist/core/{MessagePopup-hxloT7aK.cjs.map → MessagePopup-CtdpuRFv.cjs.map} +1 -1
- package/dist/core/{MetricBox-Dh911MS2.js → MetricBox-CPug-nxo.js} +11 -2
- package/dist/core/MetricBox-CPug-nxo.js.map +1 -0
- package/dist/core/{MetricBox-BcOdQM-l.cjs → MetricBox-DVo4UUQv.cjs} +11 -2
- package/dist/core/MetricBox-DVo4UUQv.cjs.map +1 -0
- package/dist/core/MetricBox.cjs.js +1 -1
- package/dist/core/MetricBox.js +1 -1
- package/dist/core/{Modal-D1G1Csp9.js → Modal-DFhYDYb9.js} +2 -2
- package/dist/core/{Modal-D1G1Csp9.js.map → Modal-DFhYDYb9.js.map} +1 -1
- package/dist/core/{Modal-D-ZoA_xx.cjs → Modal-FB4mTmQW.cjs} +2 -2
- package/dist/core/{Modal-D-ZoA_xx.cjs.map → Modal-FB4mTmQW.cjs.map} +1 -1
- package/dist/core/Modal.cjs.js +1 -1
- package/dist/core/Modal.js +1 -1
- package/dist/core/{NotificationCenter-BrUNpJAx.js → NotificationCenter-DLCzWNve.js} +2 -2
- package/dist/core/{NotificationCenter-BrUNpJAx.js.map → NotificationCenter-DLCzWNve.js.map} +1 -1
- package/dist/core/{NotificationCenter-Dqwu2Z6s.cjs → NotificationCenter-DfOOEt9N.cjs} +2 -2
- package/dist/core/{NotificationCenter-Dqwu2Z6s.cjs.map → NotificationCenter-DfOOEt9N.cjs.map} +1 -1
- package/dist/core/NotificationCenter.cjs.js +1 -1
- package/dist/core/NotificationCenter.js +1 -1
- package/dist/core/{Pager-CZF6O7rq.js → Pager-DBHI7yRW.js} +2 -2
- package/dist/core/{Pager-CZF6O7rq.js.map → Pager-DBHI7yRW.js.map} +1 -1
- package/dist/core/{Pager-C_SG4CIc.cjs → Pager-Dv6D3kXa.cjs} +2 -2
- package/dist/core/{Pager-C_SG4CIc.cjs.map → Pager-Dv6D3kXa.cjs.map} +1 -1
- package/dist/core/Pager.cjs.js +1 -1
- package/dist/core/Pager.js +1 -1
- package/dist/core/{Skeleton-Cwn3_gc7.js → Skeleton-BjpQHG5i.js} +2 -2
- package/dist/core/{Skeleton-Cwn3_gc7.js.map → Skeleton-BjpQHG5i.js.map} +1 -1
- package/dist/core/{Skeleton-BLVD5mDI.cjs → Skeleton-tetAZCSl.cjs} +2 -2
- package/dist/core/{Skeleton-BLVD5mDI.cjs.map → Skeleton-tetAZCSl.cjs.map} +1 -1
- package/dist/core/Skeleton.cjs.js +1 -1
- package/dist/core/Skeleton.js +1 -1
- package/dist/core/{Spinner-D81UG24n.js → Spinner-D1CHbKYU.js} +2 -2
- package/dist/core/Spinner-D1CHbKYU.js.map +1 -0
- package/dist/core/{Spinner-CEIk_hpT.cjs → Spinner-JTcQ_d4T.cjs} +2 -2
- package/dist/core/Spinner-JTcQ_d4T.cjs.map +1 -0
- package/dist/core/Spinner.cjs.js +1 -1
- package/dist/core/Spinner.js +1 -1
- package/dist/core/{Stepper-Cjb7ckXo.js → Stepper-C6xjvhZJ.js} +2 -2
- package/dist/core/{Stepper-Cjb7ckXo.js.map → Stepper-C6xjvhZJ.js.map} +1 -1
- package/dist/core/{Stepper-BuCLqbtQ.cjs → Stepper-JNVBVHc3.cjs} +2 -2
- package/dist/core/{Stepper-BuCLqbtQ.cjs.map → Stepper-JNVBVHc3.cjs.map} +1 -1
- package/dist/core/Stepper.cjs.js +1 -1
- package/dist/core/Stepper.js +1 -1
- package/dist/core/TagInput.cjs.js +1 -1
- package/dist/core/TagInput.js +1 -1
- package/dist/core/{Taginput-DgbxDttA.cjs → Taginput-BXCxdLf0.cjs} +3 -3
- package/dist/core/{Taginput-DgbxDttA.cjs.map → Taginput-BXCxdLf0.cjs.map} +1 -1
- package/dist/core/{Taginput-CKekAR72.js → Taginput-CoxxwLXg.js} +3 -3
- package/dist/core/{Taginput-CKekAR72.js.map → Taginput-CoxxwLXg.js.map} +1 -1
- package/dist/core/{TextInput-DFOjxri2.cjs → TextInput-DYALlUc_.cjs} +2 -2
- package/dist/core/{TextInput-DFOjxri2.cjs.map → TextInput-DYALlUc_.cjs.map} +1 -1
- package/dist/core/{TextInput-7kV66ccj.js → TextInput-qw-jAx_3.js} +2 -2
- package/dist/core/{TextInput-7kV66ccj.js.map → TextInput-qw-jAx_3.js.map} +1 -1
- package/dist/core/TextInput.cjs.js +1 -1
- package/dist/core/TextInput.js +1 -1
- package/dist/core/{style.css → boreal-ui.css} +6976 -6974
- package/dist/core/index.cjs.js +20 -20
- package/dist/core/index.js +20 -20
- package/dist/next/{Accordion-DKNh8FaP.cjs → Accordion-BPWTEHym.cjs} +50 -50
- package/dist/next/{Accordion-DKNh8FaP.cjs.map → Accordion-BPWTEHym.cjs.map} +1 -1
- package/dist/next/{Accordion-BkiAI6vY.js → Accordion-DY243Bq9.js} +50 -50
- package/dist/next/{Accordion-BkiAI6vY.js.map → Accordion-DY243Bq9.js.map} +1 -1
- package/dist/next/Accordion.cjs.js +1 -1
- package/dist/next/Accordion.js +1 -1
- package/dist/next/{Avatar-ijMVfQpY.js → Avatar-B-Ws4Ueo.js} +42 -42
- package/dist/next/{Avatar-ijMVfQpY.js.map → Avatar-B-Ws4Ueo.js.map} +1 -1
- package/dist/next/{Avatar-Ctm74prt.cjs → Avatar-B9sMyRWr.cjs} +42 -42
- package/dist/next/{Avatar-Ctm74prt.cjs.map → Avatar-B9sMyRWr.cjs.map} +1 -1
- package/dist/next/Avatar.cjs.js +1 -1
- package/dist/next/Avatar.js +1 -1
- package/dist/next/{Badge-k6Dk5S_p.js → Badge-BZNYm0IU.js} +34 -31
- package/dist/next/Badge-BZNYm0IU.js.map +1 -0
- package/dist/next/{Badge-DbmM5wGc.cjs → Badge-dTyh833r.cjs} +34 -31
- package/dist/next/Badge-dTyh833r.cjs.map +1 -0
- package/dist/next/Badge.cjs.js +1 -1
- package/dist/next/Badge.js +1 -1
- package/dist/next/{Breadcrumbs-CWv3TrV_.js → Breadcrumbs-BPWmV24h.js} +39 -39
- package/dist/next/{Breadcrumbs-CWv3TrV_.js.map → Breadcrumbs-BPWmV24h.js.map} +1 -1
- package/dist/next/{Breadcrumbs-BrH6_8Kt.cjs → Breadcrumbs-BcXj2PgR.cjs} +39 -39
- package/dist/next/{Breadcrumbs-BrH6_8Kt.cjs.map → Breadcrumbs-BcXj2PgR.cjs.map} +1 -1
- package/dist/next/Breadcrumbs.cjs.js +1 -1
- package/dist/next/Breadcrumbs.js +1 -1
- package/dist/next/{Button-D8Kff8sN.cjs → Button-B1Fh4G0_.cjs} +47 -47
- package/dist/next/{Button-D8Kff8sN.cjs.map → Button-B1Fh4G0_.cjs.map} +1 -1
- package/dist/next/{Button-BjY7f3mw.js → Button-uZ3xTOOt.js} +47 -47
- package/dist/next/{Button-BjY7f3mw.js.map → Button-uZ3xTOOt.js.map} +1 -1
- package/dist/next/Button.cjs.js +1 -1
- package/dist/next/Button.js +1 -1
- package/dist/next/{Card-9Uf34mPf.cjs → Card-BOu9cws1.cjs} +71 -68
- package/dist/next/Card-BOu9cws1.cjs.map +1 -0
- package/dist/next/{Card-CL8WOI8g.js → Card-CZu4-xEt.js} +71 -68
- package/dist/next/Card-CZu4-xEt.js.map +1 -0
- package/dist/next/Card.cjs.js +1 -1
- package/dist/next/Card.js +1 -1
- package/dist/next/CheckBox.cjs.js +1 -1
- package/dist/next/CheckBox.js +1 -1
- package/dist/next/{Checkbox-DVr6H6mN.js → Checkbox-BJ0rBZLF.js} +44 -44
- package/dist/next/{Checkbox-DVr6H6mN.js.map → Checkbox-BJ0rBZLF.js.map} +1 -1
- package/dist/next/{Checkbox-B-y0lEjJ.cjs → Checkbox-Ch7osD3y.cjs} +44 -44
- package/dist/next/{Checkbox-B-y0lEjJ.cjs.map → Checkbox-Ch7osD3y.cjs.map} +1 -1
- package/dist/next/{Chip-C8ayWG9-.js → Chip-BB3Awc2g.js} +51 -51
- package/dist/next/{Chip-C8ayWG9-.js.map → Chip-BB3Awc2g.js.map} +1 -1
- package/dist/next/{Chip-C4-KUcHh.cjs → Chip-DzFaUPed.cjs} +51 -51
- package/dist/next/{Chip-C4-KUcHh.cjs.map → Chip-DzFaUPed.cjs.map} +1 -1
- package/dist/next/Chip.cjs.js +1 -1
- package/dist/next/Chip.js +1 -1
- package/dist/next/{CircularProgress-Cz9G0WeQ.js → CircularProgress-BUqdguII.js} +37 -37
- package/dist/next/{CircularProgress-Cz9G0WeQ.js.map → CircularProgress-BUqdguII.js.map} +1 -1
- package/dist/next/{CircularProgress-UhpLA94q.cjs → CircularProgress-Cp2pGFmc.cjs} +37 -37
- package/dist/next/{CircularProgress-UhpLA94q.cjs.map → CircularProgress-Cp2pGFmc.cjs.map} +1 -1
- package/dist/next/CircularProgress.cjs.js +1 -1
- package/dist/next/CircularProgress.js +1 -1
- package/dist/next/{ColorPicker-DvgeIT_p.cjs → ColorPicker-BHtO2mbU.cjs} +38 -38
- package/dist/next/{ColorPicker-DvgeIT_p.cjs.map → ColorPicker-BHtO2mbU.cjs.map} +1 -1
- package/dist/next/{ColorPicker-1naDOGhp.js → ColorPicker-ChWOekWP.js} +38 -38
- package/dist/next/{ColorPicker-1naDOGhp.js.map → ColorPicker-ChWOekWP.js.map} +1 -1
- package/dist/next/ColorPicker.cjs.js +1 -1
- package/dist/next/ColorPicker.js +1 -1
- package/dist/next/{CommandPalette-ypXbi8zW.cjs → CommandPalette-BT9X_yL0.cjs} +42 -42
- package/dist/next/{CommandPalette-ypXbi8zW.cjs.map → CommandPalette-BT9X_yL0.cjs.map} +1 -1
- package/dist/next/{CommandPalette-XP4v5FE6.js → CommandPalette-DEf12Et3.js} +42 -42
- package/dist/next/{CommandPalette-XP4v5FE6.js.map → CommandPalette-DEf12Et3.js.map} +1 -1
- package/dist/next/CommandPalette.cjs.js +1 -1
- package/dist/next/CommandPalette.js +1 -1
- package/dist/next/{DataTable-jUelgv2H.js → DataTable-CnvOkZrU.js} +40 -40
- package/dist/next/{DataTable-jUelgv2H.js.map → DataTable-CnvOkZrU.js.map} +1 -1
- package/dist/next/{DataTable-jq0suGoA.cjs → DataTable-DQ1QRyZw.cjs} +40 -40
- package/dist/next/{DataTable-jq0suGoA.cjs.map → DataTable-DQ1QRyZw.cjs.map} +1 -1
- package/dist/next/DataTable.cjs.js +1 -1
- package/dist/next/DataTable.js +1 -1
- package/dist/next/{DateTimePicker-D5gEfxvd.cjs → DateTimePicker-2M4AJJXm.cjs} +46 -46
- package/dist/next/{DateTimePicker-D5gEfxvd.cjs.map → DateTimePicker-2M4AJJXm.cjs.map} +1 -1
- package/dist/next/{DateTimePicker-BTm6T3-E.js → DateTimePicker-IvBWNgkK.js} +46 -46
- package/dist/next/{DateTimePicker-BTm6T3-E.js.map → DateTimePicker-IvBWNgkK.js.map} +1 -1
- package/dist/next/DateTimePicker.cjs.js +1 -1
- package/dist/next/DateTimePicker.js +1 -1
- package/dist/next/{Divider-BYKFFi3a.js → Divider-BCCzNbAE.js} +28 -28
- package/dist/next/{Divider-BYKFFi3a.js.map → Divider-BCCzNbAE.js.map} +1 -1
- package/dist/next/{Divider-CczNc7mx.cjs → Divider-ByDYa4v6.cjs} +28 -28
- package/dist/next/{Divider-CczNc7mx.cjs.map → Divider-ByDYa4v6.cjs.map} +1 -1
- package/dist/next/Divider.cjs.js +1 -1
- package/dist/next/Divider.js +1 -1
- package/dist/next/{Dropdown-yaMx19im.cjs → Dropdown-DEdk2QjS.cjs} +22 -22
- package/dist/next/{Dropdown-yaMx19im.cjs.map → Dropdown-DEdk2QjS.cjs.map} +1 -1
- package/dist/next/{Dropdown-CJGb6wyQ.js → Dropdown-qdxH-NQR.js} +22 -22
- package/dist/next/{Dropdown-CJGb6wyQ.js.map → Dropdown-qdxH-NQR.js.map} +1 -1
- package/dist/next/Dropdown.cjs.js +1 -1
- package/dist/next/Dropdown.js +1 -1
- package/dist/next/{EmptyState-DIymA2cZ.js → EmptyState-BNzFHAk3.js} +31 -31
- package/dist/next/{EmptyState-DIymA2cZ.js.map → EmptyState-BNzFHAk3.js.map} +1 -1
- package/dist/next/{EmptyState-CGPIGpz2.cjs → EmptyState-CXyx1WlG.cjs} +31 -31
- package/dist/next/{EmptyState-CGPIGpz2.cjs.map → EmptyState-CXyx1WlG.cjs.map} +1 -1
- package/dist/next/EmptyState.cjs.js +1 -1
- package/dist/next/EmptyState.js +1 -1
- package/dist/next/{FileUpload-CIued3w1.js → FileUpload-DBSXPL55.js} +52 -52
- package/dist/next/{FileUpload-CIued3w1.js.map → FileUpload-DBSXPL55.js.map} +1 -1
- package/dist/next/{FileUpload-MVXOV0j9.cjs → FileUpload-DwlqapHn.cjs} +52 -52
- package/dist/next/{FileUpload-MVXOV0j9.cjs.map → FileUpload-DwlqapHn.cjs.map} +1 -1
- package/dist/next/FileUpload.cjs.js +1 -1
- package/dist/next/FileUpload.js +1 -1
- package/dist/next/{Footer-DAZLz11H.cjs → Footer-BxrsmJyY.cjs} +45 -45
- package/dist/next/Footer-BxrsmJyY.cjs.map +1 -0
- package/dist/next/{Footer-BSEbf6CL.js → Footer-CP_PaLon.js} +45 -45
- package/dist/next/Footer-CP_PaLon.js.map +1 -0
- package/dist/next/Footer.cjs.js +1 -1
- package/dist/next/Footer.js +1 -1
- package/dist/next/{FormGroup-DbUqgg_b.js → FormGroup-QfUhtyhx.js} +34 -37
- package/dist/next/FormGroup-QfUhtyhx.js.map +1 -0
- package/dist/next/{FormGroup-6Ss6pNqV.cjs → FormGroup-U3EwnB0M.cjs} +34 -37
- package/dist/next/FormGroup-U3EwnB0M.cjs.map +1 -0
- package/dist/next/FormGroup.cjs.js +1 -1
- package/dist/next/FormGroup.js +1 -1
- package/dist/next/{IconButton-VSz8qAIg.cjs → IconButton-2l-_HOMB.cjs} +31 -31
- package/dist/next/IconButton-2l-_HOMB.cjs.map +1 -0
- package/dist/next/{IconButton-qQljwBB2.js → IconButton-BTUFKRZt.js} +31 -31
- package/dist/next/IconButton-BTUFKRZt.js.map +1 -0
- package/dist/next/IconButton.cjs.js +1 -1
- package/dist/next/IconButton.js +1 -1
- package/dist/next/{MarkdownRenderer-B7lwemDw.js → MarkdownRenderer-B8_D0j7d.js} +14 -13
- package/dist/next/{MarkdownRenderer-B7lwemDw.js.map → MarkdownRenderer-B8_D0j7d.js.map} +1 -1
- package/dist/next/{MarkdownRenderer-BvfBDz9X.cjs → MarkdownRenderer-l6hdKOt0.cjs} +14 -13
- package/dist/next/{MarkdownRenderer-BvfBDz9X.cjs.map → MarkdownRenderer-l6hdKOt0.cjs.map} +1 -1
- package/dist/next/MarkdownRenderer.cjs.js +1 -1
- package/dist/next/MarkdownRenderer.js +1 -1
- package/dist/next/MessagePopUp.cjs.js +1 -1
- package/dist/next/MessagePopUp.js +1 -1
- package/dist/next/{MessagePopup-B5OaSUBr.js → MessagePopup-N2n3NvgX.js} +19 -19
- package/dist/next/{MessagePopup-B5OaSUBr.js.map → MessagePopup-N2n3NvgX.js.map} +1 -1
- package/dist/next/{MessagePopup-BQ4OFvwo.cjs → MessagePopup-PB3e2lTg.cjs} +19 -19
- package/dist/next/{MessagePopup-BQ4OFvwo.cjs.map → MessagePopup-PB3e2lTg.cjs.map} +1 -1
- package/dist/next/{MetricBox-Dl3iruBZ.js → MetricBox-BjdAzOrZ.js} +57 -48
- package/dist/next/MetricBox-BjdAzOrZ.js.map +1 -0
- package/dist/next/{MetricBox-BylPOvoO.cjs → MetricBox-C3B6Bkcb.cjs} +57 -48
- package/dist/next/MetricBox-C3B6Bkcb.cjs.map +1 -0
- package/dist/next/MetricBox.cjs.js +1 -1
- package/dist/next/MetricBox.js +1 -1
- package/dist/next/{Modal-CevpqeOy.cjs → Modal-DHTrvNfc.cjs} +17 -17
- package/dist/next/{Modal-CevpqeOy.cjs.map → Modal-DHTrvNfc.cjs.map} +1 -1
- package/dist/next/{Modal-BARibygG.js → Modal-QTq5IcKa.js} +17 -17
- package/dist/next/{Modal-BARibygG.js.map → Modal-QTq5IcKa.js.map} +1 -1
- package/dist/next/Modal.cjs.js +1 -1
- package/dist/next/Modal.js +1 -1
- package/dist/next/{NavBar-C5FBdZT6.cjs → NavBar-Ds_02bAe.cjs} +40 -40
- package/dist/next/{NavBar-C5FBdZT6.cjs.map → NavBar-Ds_02bAe.cjs.map} +1 -1
- package/dist/next/{NavBar-Bucpo8_3.js → NavBar-v_ckzQIo.js} +40 -40
- package/dist/next/{NavBar-Bucpo8_3.js.map → NavBar-v_ckzQIo.js.map} +1 -1
- package/dist/next/NavBar.cjs.js +1 -1
- package/dist/next/NavBar.js +1 -1
- package/dist/next/{NotificationCenter-BD58bbOZ.cjs → NotificationCenter-DbYxpoy6.cjs} +43 -43
- package/dist/next/{NotificationCenter-BD58bbOZ.cjs.map → NotificationCenter-DbYxpoy6.cjs.map} +1 -1
- package/dist/next/{NotificationCenter-CSwbscYh.js → NotificationCenter-DxK09uJd.js} +43 -43
- package/dist/next/{NotificationCenter-CSwbscYh.js.map → NotificationCenter-DxK09uJd.js.map} +1 -1
- package/dist/next/NotificationCenter.cjs.js +1 -1
- package/dist/next/NotificationCenter.js +1 -1
- package/dist/next/{Pager-B-xaM28_.cjs → Pager-BU5RjNwR.cjs} +7 -7
- package/dist/next/{Pager-B-xaM28_.cjs.map → Pager-BU5RjNwR.cjs.map} +1 -1
- package/dist/next/{Pager-DWzCtb2Q.js → Pager-CtzyTqIl.js} +7 -7
- package/dist/next/{Pager-DWzCtb2Q.js.map → Pager-CtzyTqIl.js.map} +1 -1
- package/dist/next/Pager.cjs.js +1 -1
- package/dist/next/Pager.js +1 -1
- package/dist/next/{PopOver-QAYHaYcd.js → PopOver-CmPp9PkL.js} +40 -40
- package/dist/next/{PopOver-QAYHaYcd.js.map → PopOver-CmPp9PkL.js.map} +1 -1
- package/dist/next/{PopOver-Dp4eqN8G.cjs → PopOver-ixERZLpM.cjs} +40 -40
- package/dist/next/{PopOver-Dp4eqN8G.cjs.map → PopOver-ixERZLpM.cjs.map} +1 -1
- package/dist/next/PopOver.cjs.js +1 -1
- package/dist/next/PopOver.js +1 -1
- package/dist/next/{ProgressBar-BrO0fvaM.js → ProgressBar-BoU2HJv3.js} +42 -42
- package/dist/next/{ProgressBar-BrO0fvaM.js.map → ProgressBar-BoU2HJv3.js.map} +1 -1
- package/dist/next/{ProgressBar-DfXSlpKX.cjs → ProgressBar-C6zKbiq5.cjs} +42 -42
- package/dist/next/{ProgressBar-DfXSlpKX.cjs.map → ProgressBar-C6zKbiq5.cjs.map} +1 -1
- package/dist/next/ProgressBar.cjs.js +1 -1
- package/dist/next/ProgressBar.js +1 -1
- package/dist/next/{RadioButton-6cb-ZRjy.cjs → RadioButton-BCu934Uo.cjs} +38 -38
- package/dist/next/{RadioButton-6cb-ZRjy.cjs.map → RadioButton-BCu934Uo.cjs.map} +1 -1
- package/dist/next/{RadioButton-Dz_e0WUT.js → RadioButton-C14Rsx9o.js} +38 -38
- package/dist/next/{RadioButton-Dz_e0WUT.js.map → RadioButton-C14Rsx9o.js.map} +1 -1
- package/dist/next/RadioButton.cjs.js +1 -1
- package/dist/next/RadioButton.js +1 -1
- package/dist/next/{Rating-C4pqzKNQ.cjs → Rating-C9BgQANc.cjs} +34 -34
- package/dist/next/{Rating-C4pqzKNQ.cjs.map → Rating-C9BgQANc.cjs.map} +1 -1
- package/dist/next/{Rating-DbQ61tMY.js → Rating-aheV3uZJ.js} +34 -34
- package/dist/next/{Rating-DbQ61tMY.js.map → Rating-aheV3uZJ.js.map} +1 -1
- package/dist/next/Rating.cjs.js +1 -1
- package/dist/next/Rating.js +1 -1
- package/dist/next/{STT-CCzJFcVP.js → STT-CFFr1_Ls.js} +14 -14
- package/dist/next/{STT-CCzJFcVP.js.map → STT-CFFr1_Ls.js.map} +1 -1
- package/dist/next/{STT-C6kV0zwW.cjs → STT-GyAuX3-m.cjs} +14 -14
- package/dist/next/{STT-C6kV0zwW.cjs.map → STT-GyAuX3-m.cjs.map} +1 -1
- package/dist/next/ScrollToTop.cjs.js +1 -1
- package/dist/next/ScrollToTop.js +1 -1
- package/dist/next/{Select-CZivQIlV.js → Select-CPwU0IV9.js} +32 -32
- package/dist/next/{Select-CZivQIlV.js.map → Select-CPwU0IV9.js.map} +1 -1
- package/dist/next/{Select-CSAN6B98.cjs → Select-Dgcy2vVe.cjs} +32 -32
- package/dist/next/{Select-CSAN6B98.cjs.map → Select-Dgcy2vVe.cjs.map} +1 -1
- package/dist/next/Select.cjs.js +1 -1
- package/dist/next/Select.js +1 -1
- package/dist/next/{Sidebar-BVeRWv61.js → Sidebar-CJ4VrQIW.js} +38 -38
- package/dist/next/{Sidebar-BVeRWv61.js.map → Sidebar-CJ4VrQIW.js.map} +1 -1
- package/dist/next/{Sidebar-DcDJjNrK.cjs → Sidebar-DajVSn82.cjs} +38 -38
- package/dist/next/{Sidebar-DcDJjNrK.cjs.map → Sidebar-DajVSn82.cjs.map} +1 -1
- package/dist/next/Sidebar.cjs.js +1 -1
- package/dist/next/Sidebar.js +1 -1
- package/dist/next/{Skeleton-rSW1X4hk.js → Skeleton-D8C29p3K.js} +27 -27
- package/dist/next/{Skeleton-rSW1X4hk.js.map → Skeleton-D8C29p3K.js.map} +1 -1
- package/dist/next/{Skeleton-JgU17y-3.cjs → Skeleton-Dmz7m0dj.cjs} +27 -27
- package/dist/next/{Skeleton-JgU17y-3.cjs.map → Skeleton-Dmz7m0dj.cjs.map} +1 -1
- package/dist/next/Skeleton.cjs.js +1 -1
- package/dist/next/Skeleton.js +1 -1
- package/dist/next/{Slider-CdSPPw1x.js → Slider-BOAgWYkH.js} +43 -43
- package/dist/next/{Slider-CdSPPw1x.js.map → Slider-BOAgWYkH.js.map} +1 -1
- package/dist/next/{Slider-B8e96nMm.cjs → Slider-DQM9nV1P.cjs} +43 -43
- package/dist/next/{Slider-B8e96nMm.cjs.map → Slider-DQM9nV1P.cjs.map} +1 -1
- package/dist/next/Slider.cjs.js +1 -1
- package/dist/next/Slider.js +1 -1
- package/dist/next/{Spinner-B89FhxVt.cjs → Spinner-0GZngKjG.cjs} +38 -38
- package/dist/next/Spinner-0GZngKjG.cjs.map +1 -0
- package/dist/next/{Spinner-ChiOXzru.js → Spinner-BFAOf4tt.js} +38 -38
- package/dist/next/Spinner-BFAOf4tt.js.map +1 -0
- package/dist/next/Spinner.cjs.js +1 -1
- package/dist/next/Spinner.js +1 -1
- package/dist/next/{Stepper-9uHSgp7y.js → Stepper-B03bz8wT.js} +40 -40
- package/dist/next/{Stepper-9uHSgp7y.js.map → Stepper-B03bz8wT.js.map} +1 -1
- package/dist/next/{Stepper-UwSloxRf.cjs → Stepper-XZSIlydV.cjs} +40 -40
- package/dist/next/{Stepper-UwSloxRf.cjs.map → Stepper-XZSIlydV.cjs.map} +1 -1
- package/dist/next/Stepper.cjs.js +1 -1
- package/dist/next/Stepper.js +1 -1
- package/dist/next/{Tabs-D2jqRrxR.cjs → Tabs-D8Efg8wn.cjs} +44 -44
- package/dist/next/{Tabs-D2jqRrxR.cjs.map → Tabs-D8Efg8wn.cjs.map} +1 -1
- package/dist/next/{Tabs-CvYx2xtH.js → Tabs-DmrS_FUa.js} +44 -44
- package/dist/next/{Tabs-CvYx2xtH.js.map → Tabs-DmrS_FUa.js.map} +1 -1
- package/dist/next/Tabs.cjs.js +1 -1
- package/dist/next/Tabs.js +1 -1
- package/dist/next/{TagInput-Dym0BPK1.cjs → TagInput-Bfjg9pZQ.cjs} +48 -48
- package/dist/next/{TagInput-Dym0BPK1.cjs.map → TagInput-Bfjg9pZQ.cjs.map} +1 -1
- package/dist/next/{TagInput-DUWgLslk.js → TagInput-CtYKwhEi.js} +48 -48
- package/dist/next/{TagInput-DUWgLslk.js.map → TagInput-CtYKwhEi.js.map} +1 -1
- package/dist/next/TagInput.cjs.js +1 -1
- package/dist/next/TagInput.js +1 -1
- package/dist/next/{TextArea-xg4t0Lzo.js → TextArea-n9HgwyJE.js} +25 -25
- package/dist/next/{TextArea-xg4t0Lzo.js.map → TextArea-n9HgwyJE.js.map} +1 -1
- package/dist/next/{TextArea-9AvILSCY.cjs → TextArea-rwkjK4Rf.cjs} +25 -25
- package/dist/next/{TextArea-9AvILSCY.cjs.map → TextArea-rwkjK4Rf.cjs.map} +1 -1
- package/dist/next/TextArea.cjs.js +1 -1
- package/dist/next/TextArea.js +1 -1
- package/dist/next/{TextInput-D9dzooMU.js → TextInput-ChmIMzj2.js} +26 -26
- package/dist/next/{TextInput-D9dzooMU.js.map → TextInput-ChmIMzj2.js.map} +1 -1
- package/dist/next/{TextInput-Cr0WjibW.cjs → TextInput-Z2izAjJj.cjs} +26 -26
- package/dist/next/{TextInput-Cr0WjibW.cjs.map → TextInput-Z2izAjJj.cjs.map} +1 -1
- package/dist/next/TextInput.cjs.js +1 -1
- package/dist/next/TextInput.js +1 -1
- package/dist/next/{Timeline-DXSXZumg.cjs → Timeline-3bNOgI6C.cjs} +28 -28
- package/dist/next/{Timeline-DXSXZumg.cjs.map → Timeline-3bNOgI6C.cjs.map} +1 -1
- package/dist/next/{Timeline-Cg0FWWVc.js → Timeline-9947mxJO.js} +28 -28
- package/dist/next/{Timeline-Cg0FWWVc.js.map → Timeline-9947mxJO.js.map} +1 -1
- package/dist/next/Timeline.cjs.js +1 -1
- package/dist/next/Timeline.js +1 -1
- package/dist/next/{Toggle-CnpONDwl.js → Toggle-C60HtU15.js} +30 -30
- package/dist/next/{Toggle-CnpONDwl.js.map → Toggle-C60HtU15.js.map} +1 -1
- package/dist/next/{Toggle-BNK7uC_N.cjs → Toggle-XcxNC4zl.cjs} +30 -30
- package/dist/next/{Toggle-BNK7uC_N.cjs.map → Toggle-XcxNC4zl.cjs.map} +1 -1
- package/dist/next/Toggle.cjs.js +1 -1
- package/dist/next/Toggle.js +1 -1
- package/dist/next/{Toolbar-DHUozW08.cjs → Toolbar-C45B_I44.cjs} +35 -35
- package/dist/next/{Toolbar-DHUozW08.cjs.map → Toolbar-C45B_I44.cjs.map} +1 -1
- package/dist/next/{Toolbar-007Q19jl.js → Toolbar-Dq1qqx4P.js} +35 -35
- package/dist/next/{Toolbar-007Q19jl.js.map → Toolbar-Dq1qqx4P.js.map} +1 -1
- package/dist/next/Toolbar.cjs.js +1 -1
- package/dist/next/Toolbar.js +1 -1
- package/dist/next/{Tooltip-2XEuDIAw.js → Tooltip-BHIA1zE1.js} +39 -39
- package/dist/next/{Tooltip-2XEuDIAw.js.map → Tooltip-BHIA1zE1.js.map} +1 -1
- package/dist/next/{Tooltip-FCqrcC7D.cjs → Tooltip-BXd5FXXv.cjs} +39 -39
- package/dist/next/{Tooltip-FCqrcC7D.cjs.map → Tooltip-BXd5FXXv.cjs.map} +1 -1
- package/dist/next/Tooltip.cjs.js +1 -1
- package/dist/next/Tooltip.js +1 -1
- package/dist/next/{style.css → boreal-ui.css} +9636 -9636
- package/dist/next/{image-VX9Ty9NQ.cjs → image-A4nTeRaX.cjs} +1079 -1025
- package/dist/next/image-A4nTeRaX.cjs.map +1 -0
- package/dist/next/{image-CEz9QtOW.js → image-BBS8QO15.js} +1083 -1029
- package/dist/next/image-BBS8QO15.js.map +1 -0
- package/dist/next/index.cjs.js +69 -69
- package/dist/next/index.js +69 -69
- package/dist/next/link-CxWP3aXr.js +3829 -0
- package/dist/next/link-CxWP3aXr.js.map +1 -0
- package/dist/next/link-lNk_lOdS.cjs +3828 -0
- package/dist/next/link-lNk_lOdS.cjs.map +1 -0
- package/dist/next/navigation-CZU71Pmb.cjs +2443 -0
- package/dist/next/navigation-CZU71Pmb.cjs.map +1 -0
- package/dist/next/navigation-DxXFNXZM.js +2444 -0
- package/dist/next/navigation-DxXFNXZM.js.map +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/types/components/Badge/BadgeBase.d.ts.map +1 -1
- package/dist/types/components/Card/Card.types.d.ts +2 -0
- package/dist/types/components/Card/Card.types.d.ts.map +1 -1
- package/dist/types/components/Card/CardBase.d.ts.map +1 -1
- package/dist/types/components/FormGroup/FormGroupBase.d.ts.map +1 -1
- package/dist/types/components/MarkdownRenderer/MarkdownRendererBase.d.ts.map +1 -1
- package/dist/types/components/MetricBox/MetricBoxBase.d.ts.map +1 -1
- package/package.json +12 -11
- package/dist/core/Badge-DOn6E2bS.cjs.map +0 -1
- package/dist/core/Badge-Dpjq6lUF.js.map +0 -1
- package/dist/core/Card-B7Hjcknf.js.map +0 -1
- package/dist/core/Card-Bp8OvH80.cjs.map +0 -1
- package/dist/core/Footer-DMOA1W7N.cjs.map +0 -1
- package/dist/core/Footer-zO4RGjCl.js.map +0 -1
- package/dist/core/FormGroup-C2TWC17P.cjs.map +0 -1
- package/dist/core/FormGroup-tSK_NN0-.js.map +0 -1
- package/dist/core/IconButton-CR9bTZoJ.cjs.map +0 -1
- package/dist/core/IconButton-_lxTppua.js.map +0 -1
- package/dist/core/MarkdownRenderer-B1LmmpZm.js.map +0 -1
- package/dist/core/MarkdownRenderer-LUXCa_a8.cjs.map +0 -1
- package/dist/core/MetricBox-BcOdQM-l.cjs.map +0 -1
- package/dist/core/MetricBox-Dh911MS2.js.map +0 -1
- package/dist/core/Spinner-CEIk_hpT.cjs.map +0 -1
- package/dist/core/Spinner-D81UG24n.js.map +0 -1
- package/dist/next/Badge-DbmM5wGc.cjs.map +0 -1
- package/dist/next/Badge-k6Dk5S_p.js.map +0 -1
- package/dist/next/Card-9Uf34mPf.cjs.map +0 -1
- package/dist/next/Card-CL8WOI8g.js.map +0 -1
- package/dist/next/Footer-BSEbf6CL.js.map +0 -1
- package/dist/next/Footer-DAZLz11H.cjs.map +0 -1
- package/dist/next/FormGroup-6Ss6pNqV.cjs.map +0 -1
- package/dist/next/FormGroup-DbUqgg_b.js.map +0 -1
- package/dist/next/IconButton-VSz8qAIg.cjs.map +0 -1
- package/dist/next/IconButton-qQljwBB2.js.map +0 -1
- package/dist/next/MetricBox-BylPOvoO.cjs.map +0 -1
- package/dist/next/MetricBox-Dl3iruBZ.js.map +0 -1
- package/dist/next/Spinner-B89FhxVt.cjs.map +0 -1
- package/dist/next/Spinner-ChiOXzru.js.map +0 -1
- package/dist/next/image-CEz9QtOW.js.map +0 -1
- package/dist/next/image-VX9Ty9NQ.cjs.map +0 -1
- package/dist/next/link-Bik5xH00.js +0 -2878
- package/dist/next/link-Bik5xH00.js.map +0 -1
- package/dist/next/link-hxAaLm0Q.cjs +0 -2877
- package/dist/next/link-hxAaLm0Q.cjs.map +0 -1
- package/dist/next/navigation-DTwYCgCL.js +0 -1991
- package/dist/next/navigation-DTwYCgCL.js.map +0 -1
- package/dist/next/navigation-m012syo9.cjs +0 -1990
- package/dist/next/navigation-m012syo9.cjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Breadcrumbs-CWv3TrV_.js","sources":["../../src/components/Breadcrumbs/Breadcrumbs.types.ts","../../src/components/Breadcrumbs/BreadcrumbsBase.tsx","../../src/components/Breadcrumbs/next/Breadcrumbs.tsx"],"sourcesContent":["import {\r\n RoundingType,\r\n ShadowType,\r\n SizeType,\r\n StateType,\r\n ThemeType,\r\n} from \"@/types/types\";\r\n\r\n/**\r\n * A breadcrumb item used to define a single step in the navigation path.\r\n */\r\nexport interface Breadcrumb {\r\n /**\r\n * The display label for the breadcrumb.\r\n */\r\n label: string;\r\n\r\n /**\r\n * Optional URL the breadcrumb should link to.\r\n * If not provided, it is rendered as plain text.\r\n */\r\n href?: string;\r\n}\r\n\r\n/**\r\n * Props for the Breadcrumbs component.\r\n */\r\nexport interface BreadcrumbsProps {\r\n /**\r\n * An array of breadcrumb items.\r\n */\r\n items: Breadcrumb[];\r\n\r\n /**\r\n * Disables interaction and styles as disabled.\r\n */\r\n disabled?: boolean;\r\n\r\n /**\r\n * Optional custom separator node between breadcrumb items.\r\n * Defaults to a right chevron icon.\r\n */\r\n separator?: React.ReactNode;\r\n\r\n /**\r\n * Theme style to apply to the breadcrumbs\r\n * ('primary' | 'secondary' | 'tertiary' | 'quaternary' | 'clear').\r\n */\r\n theme?: ThemeType;\r\n\r\n /**\r\n * Rounding style to apply to the breadcrumbs\r\n * ('none' | 'small' | 'medium' | 'large' | 'full').\r\n */\r\n rounding?: RoundingType;\r\n\r\n /**\r\n * Shadow style to apply to the breadcrumbs\r\n * ('none' | 'light' | 'medium' | 'strong' | 'intense').\r\n */\r\n shadow?: ShadowType;\r\n\r\n /**\r\n * State of the breadcrumbs\r\n * ('success' | 'error' | 'warning' | 'disabled' | '').\r\n * Used for visual feedback.\r\n */\r\n state?: StateType;\r\n\r\n /**\r\n * Size of the breadcrumbs\r\n * ('xs' | 'small' | 'medium' | 'large' | 'xl').\r\n */\r\n size?: SizeType;\r\n\r\n /**\r\n * Additional class name for custom styling.\r\n */\r\n className?: string;\r\n\r\n /**\r\n * Whether to use the outline style.\r\n */\r\n outline?: boolean;\r\n\r\n /**\r\n * Maximum number of visible items before collapsing into an ellipsis.\r\n */\r\n maxVisible?: number;\r\n\r\n /**\r\n * Optional test ID for testing frameworks.\r\n */\r\n \"data-testid\"?: string;\r\n}\r\n\r\n/**\r\n * Label used to represent collapsed breadcrumb items.\r\n */\r\nexport const ELLIPSIS_LABEL = \"…\";\r\n\r\nexport interface BreadcrumbsBaseProps extends BreadcrumbsProps {\r\n classMap: Record<string, string>;\r\n LinkComponent?: React.ElementType;\r\n ButtonComponent: React.ElementType;\r\n}\r\n","import React, { useMemo, useState } from \"react\";\r\nimport {\r\n Breadcrumb,\r\n BreadcrumbsBaseProps,\r\n ELLIPSIS_LABEL,\r\n} from \"./Breadcrumbs.types\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport { ArrowRightIcon } from \"../../Icons/index\";\r\nimport { capitalize } from \"../../utils/capitalize\";\r\nimport {\r\n getDefaultRounding,\r\n getDefaultShadow,\r\n getDefaultSize,\r\n getDefaultTheme,\r\n} from \"../../config/boreal-style-config\";\r\n\r\nexport const BreadcrumbsBase: React.FC<BreadcrumbsBaseProps> = ({\r\n items,\r\n theme = getDefaultTheme(),\r\n rounding = getDefaultRounding(),\r\n shadow = getDefaultShadow(),\r\n state = \"\",\r\n separator,\r\n classMap,\r\n disabled = false,\r\n size = getDefaultSize(),\r\n outline = false,\r\n className = \"\",\r\n maxVisible,\r\n LinkComponent = \"a\",\r\n ButtonComponent = \"button\",\r\n \"data-testid\": testId = \"breadcrumbs\",\r\n}) => {\r\n const [isExpanded, setIsExpanded] = useState(false);\r\n const handleExpand = () => setIsExpanded(true);\r\n\r\n if (!items || items.length === 0) return null;\r\n\r\n const visibleItems: Breadcrumb[] = useMemo(() => {\r\n if (isExpanded || !maxVisible || items.length <= maxVisible) return items;\r\n const first = items[0];\r\n const lastItems = items.slice(items.length - (maxVisible - 2));\r\n return [first, { label: ELLIPSIS_LABEL }, ...lastItems];\r\n }, [items, isExpanded, maxVisible]);\r\n\r\n const breadcrumbsClass = useMemo(\r\n () =>\r\n combineClassNames(\r\n classMap.breadcrumbs,\r\n classMap[theme],\r\n classMap[state],\r\n classMap[size],\r\n shadow && classMap[`shadow${capitalize(shadow)}`],\r\n rounding && classMap[`round${capitalize(rounding)}`],\r\n disabled && classMap.disabled,\r\n outline && classMap.outline,\r\n className\r\n ),\r\n [\r\n theme,\r\n state,\r\n size,\r\n shadow,\r\n rounding,\r\n disabled,\r\n outline,\r\n className,\r\n classMap,\r\n ]\r\n );\r\n\r\n return (\r\n <nav\r\n aria-label=\"Breadcrumb\"\r\n data-testid={testId ? `${testId}-nav-container` : undefined}\r\n className={breadcrumbsClass}\r\n >\r\n <ol\r\n className={classMap.list}\r\n data-testid={testId ? `${testId}-nav-list` : undefined}\r\n itemScope\r\n itemType=\"https://schema.org/BreadcrumbList\"\r\n >\r\n {visibleItems.map((item, index) => {\r\n const isLast = index === visibleItems.length - 1;\r\n const isEllipsis = item.label === ELLIPSIS_LABEL;\r\n\r\n const itemClassName = combineClassNames(\r\n classMap.item,\r\n isExpanded && !isEllipsis && classMap.item_animate,\r\n isLast && classMap.item_active\r\n );\r\n\r\n return (\r\n <li\r\n data-testid={testId ? `${testId}-nav-item` : undefined}\r\n key={`${item.label}-${item.href ?? index}`}\r\n className={itemClassName}\r\n itemProp=\"itemListElement\"\r\n itemScope\r\n itemType=\"https://schema.org/ListItem\"\r\n >\r\n {isEllipsis ? (\r\n <ButtonComponent\r\n theme=\"clear\"\r\n size=\"xs\"\r\n className={classMap.ellipsis}\r\n aria-label=\"Show all breadcrumbs\"\r\n aria-expanded={isExpanded}\r\n onClick={disabled ? undefined : handleExpand}\r\n disabled={disabled}\r\n tabIndex={disabled ? -1 : 0}\r\n data-testid={testId ? `${testId}-ellipsis` : undefined}\r\n >\r\n {item.label}\r\n </ButtonComponent>\r\n ) : item.href && !isLast ? (\r\n disabled ? (\r\n // Disabled: render non-interactive label for links\r\n <span\r\n className={classMap.link_disabled}\r\n title={item.label}\r\n itemProp=\"name\"\r\n data-testid={\r\n testId ? `${testId}-nav-item-label` : undefined\r\n }\r\n >\r\n {item.label}\r\n </span>\r\n ) : (\r\n <LinkComponent\r\n href={item.href}\r\n className={classMap.link}\r\n title={item.label}\r\n itemProp=\"item\"\r\n data-testid={\r\n testId ? `${testId}-nav-item-label` : undefined\r\n }\r\n >\r\n <span itemProp=\"name\" className={classMap.link_label}>\r\n {item.label}\r\n </span>\r\n </LinkComponent>\r\n )\r\n ) : (\r\n <span\r\n className={classMap.current}\r\n itemProp=\"name\"\r\n aria-current=\"page\"\r\n data-testid={\r\n testId ? `${testId}-nav-item-current` : undefined\r\n }\r\n >\r\n {item.label}\r\n </span>\r\n )}\r\n\r\n {!isLast && (\r\n <span className={classMap.separator} aria-hidden=\"true\">\r\n {separator ?? <ArrowRightIcon />}\r\n </span>\r\n )}\r\n <meta itemProp=\"position\" content={`${index + 1}`} />\r\n </li>\r\n );\r\n })}\r\n </ol>\r\n </nav>\r\n );\r\n};\r\n\r\nBreadcrumbsBase.displayName = \"BreadcrumbsBase\";\r\n","\"use client\";\r\n\r\nimport React from \"react\";\r\nimport Link from \"next/link\";\r\nimport styles from \"./Breadcrumbs.module.scss\";\r\nimport { BreadcrumbsBase } from \"../BreadcrumbsBase\";\r\nimport { BreadcrumbsProps } from \"../Breadcrumbs.types\";\r\nimport { Button } from \"../../../index.next\";\r\n\r\nconst Breadcrumbs: React.FC<BreadcrumbsProps> = (props) => {\r\n return (\r\n <BreadcrumbsBase\r\n {...props}\r\n classMap={styles}\r\n LinkComponent={Link}\r\n ButtonComponent={Button}\r\n />\r\n );\r\n};\r\nBreadcrumbs.displayName = \"Breadcrumbs\";\r\nexport default Breadcrumbs;\r\n"],"names":["separator","disabled","outline","item"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Breadcrumbs-BPWmV24h.js","sources":["../../src/components/Breadcrumbs/Breadcrumbs.types.ts","../../src/components/Breadcrumbs/BreadcrumbsBase.tsx","../../src/components/Breadcrumbs/next/Breadcrumbs.tsx"],"sourcesContent":["import {\r\n RoundingType,\r\n ShadowType,\r\n SizeType,\r\n StateType,\r\n ThemeType,\r\n} from \"@/types/types\";\r\n\r\n/**\r\n * A breadcrumb item used to define a single step in the navigation path.\r\n */\r\nexport interface Breadcrumb {\r\n /**\r\n * The display label for the breadcrumb.\r\n */\r\n label: string;\r\n\r\n /**\r\n * Optional URL the breadcrumb should link to.\r\n * If not provided, it is rendered as plain text.\r\n */\r\n href?: string;\r\n}\r\n\r\n/**\r\n * Props for the Breadcrumbs component.\r\n */\r\nexport interface BreadcrumbsProps {\r\n /**\r\n * An array of breadcrumb items.\r\n */\r\n items: Breadcrumb[];\r\n\r\n /**\r\n * Disables interaction and styles as disabled.\r\n */\r\n disabled?: boolean;\r\n\r\n /**\r\n * Optional custom separator node between breadcrumb items.\r\n * Defaults to a right chevron icon.\r\n */\r\n separator?: React.ReactNode;\r\n\r\n /**\r\n * Theme style to apply to the breadcrumbs\r\n * ('primary' | 'secondary' | 'tertiary' | 'quaternary' | 'clear').\r\n */\r\n theme?: ThemeType;\r\n\r\n /**\r\n * Rounding style to apply to the breadcrumbs\r\n * ('none' | 'small' | 'medium' | 'large' | 'full').\r\n */\r\n rounding?: RoundingType;\r\n\r\n /**\r\n * Shadow style to apply to the breadcrumbs\r\n * ('none' | 'light' | 'medium' | 'strong' | 'intense').\r\n */\r\n shadow?: ShadowType;\r\n\r\n /**\r\n * State of the breadcrumbs\r\n * ('success' | 'error' | 'warning' | 'disabled' | '').\r\n * Used for visual feedback.\r\n */\r\n state?: StateType;\r\n\r\n /**\r\n * Size of the breadcrumbs\r\n * ('xs' | 'small' | 'medium' | 'large' | 'xl').\r\n */\r\n size?: SizeType;\r\n\r\n /**\r\n * Additional class name for custom styling.\r\n */\r\n className?: string;\r\n\r\n /**\r\n * Whether to use the outline style.\r\n */\r\n outline?: boolean;\r\n\r\n /**\r\n * Maximum number of visible items before collapsing into an ellipsis.\r\n */\r\n maxVisible?: number;\r\n\r\n /**\r\n * Optional test ID for testing frameworks.\r\n */\r\n \"data-testid\"?: string;\r\n}\r\n\r\n/**\r\n * Label used to represent collapsed breadcrumb items.\r\n */\r\nexport const ELLIPSIS_LABEL = \"…\";\r\n\r\nexport interface BreadcrumbsBaseProps extends BreadcrumbsProps {\r\n classMap: Record<string, string>;\r\n LinkComponent?: React.ElementType;\r\n ButtonComponent: React.ElementType;\r\n}\r\n","import React, { useMemo, useState } from \"react\";\r\nimport {\r\n Breadcrumb,\r\n BreadcrumbsBaseProps,\r\n ELLIPSIS_LABEL,\r\n} from \"./Breadcrumbs.types\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport { ArrowRightIcon } from \"../../Icons/index\";\r\nimport { capitalize } from \"../../utils/capitalize\";\r\nimport {\r\n getDefaultRounding,\r\n getDefaultShadow,\r\n getDefaultSize,\r\n getDefaultTheme,\r\n} from \"../../config/boreal-style-config\";\r\n\r\nexport const BreadcrumbsBase: React.FC<BreadcrumbsBaseProps> = ({\r\n items,\r\n theme = getDefaultTheme(),\r\n rounding = getDefaultRounding(),\r\n shadow = getDefaultShadow(),\r\n state = \"\",\r\n separator,\r\n classMap,\r\n disabled = false,\r\n size = getDefaultSize(),\r\n outline = false,\r\n className = \"\",\r\n maxVisible,\r\n LinkComponent = \"a\",\r\n ButtonComponent = \"button\",\r\n \"data-testid\": testId = \"breadcrumbs\",\r\n}) => {\r\n const [isExpanded, setIsExpanded] = useState(false);\r\n const handleExpand = () => setIsExpanded(true);\r\n\r\n if (!items || items.length === 0) return null;\r\n\r\n const visibleItems: Breadcrumb[] = useMemo(() => {\r\n if (isExpanded || !maxVisible || items.length <= maxVisible) return items;\r\n const first = items[0];\r\n const lastItems = items.slice(items.length - (maxVisible - 2));\r\n return [first, { label: ELLIPSIS_LABEL }, ...lastItems];\r\n }, [items, isExpanded, maxVisible]);\r\n\r\n const breadcrumbsClass = useMemo(\r\n () =>\r\n combineClassNames(\r\n classMap.breadcrumbs,\r\n classMap[theme],\r\n classMap[state],\r\n classMap[size],\r\n shadow && classMap[`shadow${capitalize(shadow)}`],\r\n rounding && classMap[`round${capitalize(rounding)}`],\r\n disabled && classMap.disabled,\r\n outline && classMap.outline,\r\n className\r\n ),\r\n [\r\n theme,\r\n state,\r\n size,\r\n shadow,\r\n rounding,\r\n disabled,\r\n outline,\r\n className,\r\n classMap,\r\n ]\r\n );\r\n\r\n return (\r\n <nav\r\n aria-label=\"Breadcrumb\"\r\n data-testid={testId ? `${testId}-nav-container` : undefined}\r\n className={breadcrumbsClass}\r\n >\r\n <ol\r\n className={classMap.list}\r\n data-testid={testId ? `${testId}-nav-list` : undefined}\r\n itemScope\r\n itemType=\"https://schema.org/BreadcrumbList\"\r\n >\r\n {visibleItems.map((item, index) => {\r\n const isLast = index === visibleItems.length - 1;\r\n const isEllipsis = item.label === ELLIPSIS_LABEL;\r\n\r\n const itemClassName = combineClassNames(\r\n classMap.item,\r\n isExpanded && !isEllipsis && classMap.item_animate,\r\n isLast && classMap.item_active\r\n );\r\n\r\n return (\r\n <li\r\n data-testid={testId ? `${testId}-nav-item` : undefined}\r\n key={`${item.label}-${item.href ?? index}`}\r\n className={itemClassName}\r\n itemProp=\"itemListElement\"\r\n itemScope\r\n itemType=\"https://schema.org/ListItem\"\r\n >\r\n {isEllipsis ? (\r\n <ButtonComponent\r\n theme=\"clear\"\r\n size=\"xs\"\r\n className={classMap.ellipsis}\r\n aria-label=\"Show all breadcrumbs\"\r\n aria-expanded={isExpanded}\r\n onClick={disabled ? undefined : handleExpand}\r\n disabled={disabled}\r\n tabIndex={disabled ? -1 : 0}\r\n data-testid={testId ? `${testId}-ellipsis` : undefined}\r\n >\r\n {item.label}\r\n </ButtonComponent>\r\n ) : item.href && !isLast ? (\r\n disabled ? (\r\n // Disabled: render non-interactive label for links\r\n <span\r\n className={classMap.link_disabled}\r\n title={item.label}\r\n itemProp=\"name\"\r\n data-testid={\r\n testId ? `${testId}-nav-item-label` : undefined\r\n }\r\n >\r\n {item.label}\r\n </span>\r\n ) : (\r\n <LinkComponent\r\n href={item.href}\r\n className={classMap.link}\r\n title={item.label}\r\n itemProp=\"item\"\r\n data-testid={\r\n testId ? `${testId}-nav-item-label` : undefined\r\n }\r\n >\r\n <span itemProp=\"name\" className={classMap.link_label}>\r\n {item.label}\r\n </span>\r\n </LinkComponent>\r\n )\r\n ) : (\r\n <span\r\n className={classMap.current}\r\n itemProp=\"name\"\r\n aria-current=\"page\"\r\n data-testid={\r\n testId ? `${testId}-nav-item-current` : undefined\r\n }\r\n >\r\n {item.label}\r\n </span>\r\n )}\r\n\r\n {!isLast && (\r\n <span className={classMap.separator} aria-hidden=\"true\">\r\n {separator ?? <ArrowRightIcon />}\r\n </span>\r\n )}\r\n <meta itemProp=\"position\" content={`${index + 1}`} />\r\n </li>\r\n );\r\n })}\r\n </ol>\r\n </nav>\r\n );\r\n};\r\n\r\nBreadcrumbsBase.displayName = \"BreadcrumbsBase\";\r\n","\"use client\";\r\n\r\nimport React from \"react\";\r\nimport Link from \"next/link\";\r\nimport styles from \"./Breadcrumbs.module.scss\";\r\nimport { BreadcrumbsBase } from \"../BreadcrumbsBase\";\r\nimport { BreadcrumbsProps } from \"../Breadcrumbs.types\";\r\nimport { Button } from \"../../../index.next\";\r\n\r\nconst Breadcrumbs: React.FC<BreadcrumbsProps> = (props) => {\r\n return (\r\n <BreadcrumbsBase\r\n {...props}\r\n classMap={styles}\r\n LinkComponent={Link}\r\n ButtonComponent={Button}\r\n />\r\n );\r\n};\r\nBreadcrumbs.displayName = \"Breadcrumbs\";\r\nexport default Breadcrumbs;\r\n"],"names":["separator","disabled","outline","item"],"mappings":"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"}
|
|
@@ -1,47 +1,47 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
const require$$2 = require("react/jsx-runtime");
|
|
3
|
-
const link$1 = require("./link-
|
|
3
|
+
const link$1 = require("./link-lNk_lOdS.cjs");
|
|
4
4
|
const React = require("react");
|
|
5
5
|
const classNames = require("./classNames-BcWMx052.cjs");
|
|
6
6
|
const ArrowRightIcon = require("./ArrowRightIcon-BVb75OpX.cjs");
|
|
7
7
|
const capitalize = require("./capitalize-DoV-nOmN.cjs");
|
|
8
8
|
const borealStyleConfig = require("./boreal-style-config-Rr5d5Qts.cjs");
|
|
9
|
-
const Button = require("./Button-
|
|
10
|
-
const breadcrumbs = "
|
|
11
|
-
const ellipsis = "
|
|
12
|
-
const roundNone = "
|
|
13
|
-
const roundSmall = "
|
|
14
|
-
const roundMedium = "
|
|
15
|
-
const roundLarge = "
|
|
16
|
-
const roundFull = "
|
|
17
|
-
const shadowNone = "
|
|
18
|
-
const shadowLight = "
|
|
19
|
-
const shadowMedium = "
|
|
20
|
-
const shadowStrong = "
|
|
21
|
-
const shadowIntense = "
|
|
22
|
-
const primary = "
|
|
23
|
-
const outline = "
|
|
24
|
-
const secondary = "
|
|
25
|
-
const tertiary = "
|
|
26
|
-
const quaternary = "
|
|
27
|
-
const clear = "
|
|
28
|
-
const success = "
|
|
29
|
-
const error = "
|
|
30
|
-
const warning = "
|
|
31
|
-
const xs = "
|
|
32
|
-
const small = "
|
|
33
|
-
const medium = "
|
|
34
|
-
const large = "
|
|
35
|
-
const xl = "
|
|
36
|
-
const list = "
|
|
37
|
-
const item = "
|
|
38
|
-
const item_animate = "
|
|
39
|
-
const item_active = "
|
|
40
|
-
const disabled = "
|
|
41
|
-
const link = "
|
|
42
|
-
const link_label = "
|
|
43
|
-
const current = "
|
|
44
|
-
const separator = "
|
|
9
|
+
const Button = require("./Button-B1Fh4G0_.cjs");
|
|
10
|
+
const breadcrumbs = "_breadcrumbs_1c6om_85";
|
|
11
|
+
const ellipsis = "_ellipsis_1c6om_111";
|
|
12
|
+
const roundNone = "_roundNone_1c6om_115";
|
|
13
|
+
const roundSmall = "_roundSmall_1c6om_119";
|
|
14
|
+
const roundMedium = "_roundMedium_1c6om_123";
|
|
15
|
+
const roundLarge = "_roundLarge_1c6om_127";
|
|
16
|
+
const roundFull = "_roundFull_1c6om_131";
|
|
17
|
+
const shadowNone = "_shadowNone_1c6om_135";
|
|
18
|
+
const shadowLight = "_shadowLight_1c6om_139";
|
|
19
|
+
const shadowMedium = "_shadowMedium_1c6om_143";
|
|
20
|
+
const shadowStrong = "_shadowStrong_1c6om_147";
|
|
21
|
+
const shadowIntense = "_shadowIntense_1c6om_151";
|
|
22
|
+
const primary = "_primary_1c6om_155";
|
|
23
|
+
const outline = "_outline_1c6om_175";
|
|
24
|
+
const secondary = "_secondary_1c6om_192";
|
|
25
|
+
const tertiary = "_tertiary_1c6om_229";
|
|
26
|
+
const quaternary = "_quaternary_1c6om_266";
|
|
27
|
+
const clear = "_clear_1c6om_300";
|
|
28
|
+
const success = "_success_1c6om_337";
|
|
29
|
+
const error = "_error_1c6om_374";
|
|
30
|
+
const warning = "_warning_1c6om_411";
|
|
31
|
+
const xs = "_xs_1c6om_448";
|
|
32
|
+
const small = "_small_1c6om_462";
|
|
33
|
+
const medium = "_medium_1c6om_476";
|
|
34
|
+
const large = "_large_1c6om_490";
|
|
35
|
+
const xl = "_xl_1c6om_504";
|
|
36
|
+
const list = "_list_1c6om_518";
|
|
37
|
+
const item = "_item_1c6om_537";
|
|
38
|
+
const item_animate = "_item_animate_1c6om_545";
|
|
39
|
+
const item_active = "_item_active_1c6om_549";
|
|
40
|
+
const disabled = "_disabled_1c6om_554";
|
|
41
|
+
const link = "_link_1c6om_561";
|
|
42
|
+
const link_label = "_link_label_1c6om_566";
|
|
43
|
+
const current = "_current_1c6om_573";
|
|
44
|
+
const separator = "_separator_1c6om_578";
|
|
45
45
|
const styles = {
|
|
46
46
|
breadcrumbs,
|
|
47
47
|
ellipsis,
|
|
@@ -72,7 +72,7 @@ const styles = {
|
|
|
72
72
|
list,
|
|
73
73
|
item,
|
|
74
74
|
item_animate,
|
|
75
|
-
"fade-in": "_fade-
|
|
75
|
+
"fade-in": "_fade-in_1c6om_1",
|
|
76
76
|
item_active,
|
|
77
77
|
disabled,
|
|
78
78
|
link,
|
|
@@ -234,4 +234,4 @@ const Breadcrumbs = (props) => {
|
|
|
234
234
|
Breadcrumbs.displayName = "Breadcrumbs";
|
|
235
235
|
exports.Breadcrumbs = Breadcrumbs;
|
|
236
236
|
exports.ELLIPSIS_LABEL = ELLIPSIS_LABEL;
|
|
237
|
-
//# sourceMappingURL=Breadcrumbs-
|
|
237
|
+
//# sourceMappingURL=Breadcrumbs-BcXj2PgR.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Breadcrumbs-BrH6_8Kt.cjs","sources":["../../src/components/Breadcrumbs/Breadcrumbs.types.ts","../../src/components/Breadcrumbs/BreadcrumbsBase.tsx","../../src/components/Breadcrumbs/next/Breadcrumbs.tsx"],"sourcesContent":["import {\r\n RoundingType,\r\n ShadowType,\r\n SizeType,\r\n StateType,\r\n ThemeType,\r\n} from \"@/types/types\";\r\n\r\n/**\r\n * A breadcrumb item used to define a single step in the navigation path.\r\n */\r\nexport interface Breadcrumb {\r\n /**\r\n * The display label for the breadcrumb.\r\n */\r\n label: string;\r\n\r\n /**\r\n * Optional URL the breadcrumb should link to.\r\n * If not provided, it is rendered as plain text.\r\n */\r\n href?: string;\r\n}\r\n\r\n/**\r\n * Props for the Breadcrumbs component.\r\n */\r\nexport interface BreadcrumbsProps {\r\n /**\r\n * An array of breadcrumb items.\r\n */\r\n items: Breadcrumb[];\r\n\r\n /**\r\n * Disables interaction and styles as disabled.\r\n */\r\n disabled?: boolean;\r\n\r\n /**\r\n * Optional custom separator node between breadcrumb items.\r\n * Defaults to a right chevron icon.\r\n */\r\n separator?: React.ReactNode;\r\n\r\n /**\r\n * Theme style to apply to the breadcrumbs\r\n * ('primary' | 'secondary' | 'tertiary' | 'quaternary' | 'clear').\r\n */\r\n theme?: ThemeType;\r\n\r\n /**\r\n * Rounding style to apply to the breadcrumbs\r\n * ('none' | 'small' | 'medium' | 'large' | 'full').\r\n */\r\n rounding?: RoundingType;\r\n\r\n /**\r\n * Shadow style to apply to the breadcrumbs\r\n * ('none' | 'light' | 'medium' | 'strong' | 'intense').\r\n */\r\n shadow?: ShadowType;\r\n\r\n /**\r\n * State of the breadcrumbs\r\n * ('success' | 'error' | 'warning' | 'disabled' | '').\r\n * Used for visual feedback.\r\n */\r\n state?: StateType;\r\n\r\n /**\r\n * Size of the breadcrumbs\r\n * ('xs' | 'small' | 'medium' | 'large' | 'xl').\r\n */\r\n size?: SizeType;\r\n\r\n /**\r\n * Additional class name for custom styling.\r\n */\r\n className?: string;\r\n\r\n /**\r\n * Whether to use the outline style.\r\n */\r\n outline?: boolean;\r\n\r\n /**\r\n * Maximum number of visible items before collapsing into an ellipsis.\r\n */\r\n maxVisible?: number;\r\n\r\n /**\r\n * Optional test ID for testing frameworks.\r\n */\r\n \"data-testid\"?: string;\r\n}\r\n\r\n/**\r\n * Label used to represent collapsed breadcrumb items.\r\n */\r\nexport const ELLIPSIS_LABEL = \"…\";\r\n\r\nexport interface BreadcrumbsBaseProps extends BreadcrumbsProps {\r\n classMap: Record<string, string>;\r\n LinkComponent?: React.ElementType;\r\n ButtonComponent: React.ElementType;\r\n}\r\n","import React, { useMemo, useState } from \"react\";\r\nimport {\r\n Breadcrumb,\r\n BreadcrumbsBaseProps,\r\n ELLIPSIS_LABEL,\r\n} from \"./Breadcrumbs.types\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport { ArrowRightIcon } from \"../../Icons/index\";\r\nimport { capitalize } from \"../../utils/capitalize\";\r\nimport {\r\n getDefaultRounding,\r\n getDefaultShadow,\r\n getDefaultSize,\r\n getDefaultTheme,\r\n} from \"../../config/boreal-style-config\";\r\n\r\nexport const BreadcrumbsBase: React.FC<BreadcrumbsBaseProps> = ({\r\n items,\r\n theme = getDefaultTheme(),\r\n rounding = getDefaultRounding(),\r\n shadow = getDefaultShadow(),\r\n state = \"\",\r\n separator,\r\n classMap,\r\n disabled = false,\r\n size = getDefaultSize(),\r\n outline = false,\r\n className = \"\",\r\n maxVisible,\r\n LinkComponent = \"a\",\r\n ButtonComponent = \"button\",\r\n \"data-testid\": testId = \"breadcrumbs\",\r\n}) => {\r\n const [isExpanded, setIsExpanded] = useState(false);\r\n const handleExpand = () => setIsExpanded(true);\r\n\r\n if (!items || items.length === 0) return null;\r\n\r\n const visibleItems: Breadcrumb[] = useMemo(() => {\r\n if (isExpanded || !maxVisible || items.length <= maxVisible) return items;\r\n const first = items[0];\r\n const lastItems = items.slice(items.length - (maxVisible - 2));\r\n return [first, { label: ELLIPSIS_LABEL }, ...lastItems];\r\n }, [items, isExpanded, maxVisible]);\r\n\r\n const breadcrumbsClass = useMemo(\r\n () =>\r\n combineClassNames(\r\n classMap.breadcrumbs,\r\n classMap[theme],\r\n classMap[state],\r\n classMap[size],\r\n shadow && classMap[`shadow${capitalize(shadow)}`],\r\n rounding && classMap[`round${capitalize(rounding)}`],\r\n disabled && classMap.disabled,\r\n outline && classMap.outline,\r\n className\r\n ),\r\n [\r\n theme,\r\n state,\r\n size,\r\n shadow,\r\n rounding,\r\n disabled,\r\n outline,\r\n className,\r\n classMap,\r\n ]\r\n );\r\n\r\n return (\r\n <nav\r\n aria-label=\"Breadcrumb\"\r\n data-testid={testId ? `${testId}-nav-container` : undefined}\r\n className={breadcrumbsClass}\r\n >\r\n <ol\r\n className={classMap.list}\r\n data-testid={testId ? `${testId}-nav-list` : undefined}\r\n itemScope\r\n itemType=\"https://schema.org/BreadcrumbList\"\r\n >\r\n {visibleItems.map((item, index) => {\r\n const isLast = index === visibleItems.length - 1;\r\n const isEllipsis = item.label === ELLIPSIS_LABEL;\r\n\r\n const itemClassName = combineClassNames(\r\n classMap.item,\r\n isExpanded && !isEllipsis && classMap.item_animate,\r\n isLast && classMap.item_active\r\n );\r\n\r\n return (\r\n <li\r\n data-testid={testId ? `${testId}-nav-item` : undefined}\r\n key={`${item.label}-${item.href ?? index}`}\r\n className={itemClassName}\r\n itemProp=\"itemListElement\"\r\n itemScope\r\n itemType=\"https://schema.org/ListItem\"\r\n >\r\n {isEllipsis ? (\r\n <ButtonComponent\r\n theme=\"clear\"\r\n size=\"xs\"\r\n className={classMap.ellipsis}\r\n aria-label=\"Show all breadcrumbs\"\r\n aria-expanded={isExpanded}\r\n onClick={disabled ? undefined : handleExpand}\r\n disabled={disabled}\r\n tabIndex={disabled ? -1 : 0}\r\n data-testid={testId ? `${testId}-ellipsis` : undefined}\r\n >\r\n {item.label}\r\n </ButtonComponent>\r\n ) : item.href && !isLast ? (\r\n disabled ? (\r\n // Disabled: render non-interactive label for links\r\n <span\r\n className={classMap.link_disabled}\r\n title={item.label}\r\n itemProp=\"name\"\r\n data-testid={\r\n testId ? `${testId}-nav-item-label` : undefined\r\n }\r\n >\r\n {item.label}\r\n </span>\r\n ) : (\r\n <LinkComponent\r\n href={item.href}\r\n className={classMap.link}\r\n title={item.label}\r\n itemProp=\"item\"\r\n data-testid={\r\n testId ? `${testId}-nav-item-label` : undefined\r\n }\r\n >\r\n <span itemProp=\"name\" className={classMap.link_label}>\r\n {item.label}\r\n </span>\r\n </LinkComponent>\r\n )\r\n ) : (\r\n <span\r\n className={classMap.current}\r\n itemProp=\"name\"\r\n aria-current=\"page\"\r\n data-testid={\r\n testId ? `${testId}-nav-item-current` : undefined\r\n }\r\n >\r\n {item.label}\r\n </span>\r\n )}\r\n\r\n {!isLast && (\r\n <span className={classMap.separator} aria-hidden=\"true\">\r\n {separator ?? <ArrowRightIcon />}\r\n </span>\r\n )}\r\n <meta itemProp=\"position\" content={`${index + 1}`} />\r\n </li>\r\n );\r\n })}\r\n </ol>\r\n </nav>\r\n );\r\n};\r\n\r\nBreadcrumbsBase.displayName = \"BreadcrumbsBase\";\r\n","\"use client\";\r\n\r\nimport React from \"react\";\r\nimport Link from \"next/link\";\r\nimport styles from \"./Breadcrumbs.module.scss\";\r\nimport { BreadcrumbsBase } from \"../BreadcrumbsBase\";\r\nimport { BreadcrumbsProps } from \"../Breadcrumbs.types\";\r\nimport { Button } from \"../../../index.next\";\r\n\r\nconst Breadcrumbs: React.FC<BreadcrumbsProps> = (props) => {\r\n return (\r\n <BreadcrumbsBase\r\n {...props}\r\n classMap={styles}\r\n LinkComponent={Link}\r\n ButtonComponent={Button}\r\n />\r\n );\r\n};\r\nBreadcrumbs.displayName = \"Breadcrumbs\";\r\nexport default Breadcrumbs;\r\n"],"names":["getDefaultTheme","getDefaultRounding","getDefaultShadow","separator","disabled","getDefaultSize","outline","useState","useMemo","combineClassNames","capitalize","jsx","item","jsxs","ArrowRightIcon","Link","Button"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Breadcrumbs-BcXj2PgR.cjs","sources":["../../src/components/Breadcrumbs/Breadcrumbs.types.ts","../../src/components/Breadcrumbs/BreadcrumbsBase.tsx","../../src/components/Breadcrumbs/next/Breadcrumbs.tsx"],"sourcesContent":["import {\r\n RoundingType,\r\n ShadowType,\r\n SizeType,\r\n StateType,\r\n ThemeType,\r\n} from \"@/types/types\";\r\n\r\n/**\r\n * A breadcrumb item used to define a single step in the navigation path.\r\n */\r\nexport interface Breadcrumb {\r\n /**\r\n * The display label for the breadcrumb.\r\n */\r\n label: string;\r\n\r\n /**\r\n * Optional URL the breadcrumb should link to.\r\n * If not provided, it is rendered as plain text.\r\n */\r\n href?: string;\r\n}\r\n\r\n/**\r\n * Props for the Breadcrumbs component.\r\n */\r\nexport interface BreadcrumbsProps {\r\n /**\r\n * An array of breadcrumb items.\r\n */\r\n items: Breadcrumb[];\r\n\r\n /**\r\n * Disables interaction and styles as disabled.\r\n */\r\n disabled?: boolean;\r\n\r\n /**\r\n * Optional custom separator node between breadcrumb items.\r\n * Defaults to a right chevron icon.\r\n */\r\n separator?: React.ReactNode;\r\n\r\n /**\r\n * Theme style to apply to the breadcrumbs\r\n * ('primary' | 'secondary' | 'tertiary' | 'quaternary' | 'clear').\r\n */\r\n theme?: ThemeType;\r\n\r\n /**\r\n * Rounding style to apply to the breadcrumbs\r\n * ('none' | 'small' | 'medium' | 'large' | 'full').\r\n */\r\n rounding?: RoundingType;\r\n\r\n /**\r\n * Shadow style to apply to the breadcrumbs\r\n * ('none' | 'light' | 'medium' | 'strong' | 'intense').\r\n */\r\n shadow?: ShadowType;\r\n\r\n /**\r\n * State of the breadcrumbs\r\n * ('success' | 'error' | 'warning' | 'disabled' | '').\r\n * Used for visual feedback.\r\n */\r\n state?: StateType;\r\n\r\n /**\r\n * Size of the breadcrumbs\r\n * ('xs' | 'small' | 'medium' | 'large' | 'xl').\r\n */\r\n size?: SizeType;\r\n\r\n /**\r\n * Additional class name for custom styling.\r\n */\r\n className?: string;\r\n\r\n /**\r\n * Whether to use the outline style.\r\n */\r\n outline?: boolean;\r\n\r\n /**\r\n * Maximum number of visible items before collapsing into an ellipsis.\r\n */\r\n maxVisible?: number;\r\n\r\n /**\r\n * Optional test ID for testing frameworks.\r\n */\r\n \"data-testid\"?: string;\r\n}\r\n\r\n/**\r\n * Label used to represent collapsed breadcrumb items.\r\n */\r\nexport const ELLIPSIS_LABEL = \"…\";\r\n\r\nexport interface BreadcrumbsBaseProps extends BreadcrumbsProps {\r\n classMap: Record<string, string>;\r\n LinkComponent?: React.ElementType;\r\n ButtonComponent: React.ElementType;\r\n}\r\n","import React, { useMemo, useState } from \"react\";\r\nimport {\r\n Breadcrumb,\r\n BreadcrumbsBaseProps,\r\n ELLIPSIS_LABEL,\r\n} from \"./Breadcrumbs.types\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport { ArrowRightIcon } from \"../../Icons/index\";\r\nimport { capitalize } from \"../../utils/capitalize\";\r\nimport {\r\n getDefaultRounding,\r\n getDefaultShadow,\r\n getDefaultSize,\r\n getDefaultTheme,\r\n} from \"../../config/boreal-style-config\";\r\n\r\nexport const BreadcrumbsBase: React.FC<BreadcrumbsBaseProps> = ({\r\n items,\r\n theme = getDefaultTheme(),\r\n rounding = getDefaultRounding(),\r\n shadow = getDefaultShadow(),\r\n state = \"\",\r\n separator,\r\n classMap,\r\n disabled = false,\r\n size = getDefaultSize(),\r\n outline = false,\r\n className = \"\",\r\n maxVisible,\r\n LinkComponent = \"a\",\r\n ButtonComponent = \"button\",\r\n \"data-testid\": testId = \"breadcrumbs\",\r\n}) => {\r\n const [isExpanded, setIsExpanded] = useState(false);\r\n const handleExpand = () => setIsExpanded(true);\r\n\r\n if (!items || items.length === 0) return null;\r\n\r\n const visibleItems: Breadcrumb[] = useMemo(() => {\r\n if (isExpanded || !maxVisible || items.length <= maxVisible) return items;\r\n const first = items[0];\r\n const lastItems = items.slice(items.length - (maxVisible - 2));\r\n return [first, { label: ELLIPSIS_LABEL }, ...lastItems];\r\n }, [items, isExpanded, maxVisible]);\r\n\r\n const breadcrumbsClass = useMemo(\r\n () =>\r\n combineClassNames(\r\n classMap.breadcrumbs,\r\n classMap[theme],\r\n classMap[state],\r\n classMap[size],\r\n shadow && classMap[`shadow${capitalize(shadow)}`],\r\n rounding && classMap[`round${capitalize(rounding)}`],\r\n disabled && classMap.disabled,\r\n outline && classMap.outline,\r\n className\r\n ),\r\n [\r\n theme,\r\n state,\r\n size,\r\n shadow,\r\n rounding,\r\n disabled,\r\n outline,\r\n className,\r\n classMap,\r\n ]\r\n );\r\n\r\n return (\r\n <nav\r\n aria-label=\"Breadcrumb\"\r\n data-testid={testId ? `${testId}-nav-container` : undefined}\r\n className={breadcrumbsClass}\r\n >\r\n <ol\r\n className={classMap.list}\r\n data-testid={testId ? `${testId}-nav-list` : undefined}\r\n itemScope\r\n itemType=\"https://schema.org/BreadcrumbList\"\r\n >\r\n {visibleItems.map((item, index) => {\r\n const isLast = index === visibleItems.length - 1;\r\n const isEllipsis = item.label === ELLIPSIS_LABEL;\r\n\r\n const itemClassName = combineClassNames(\r\n classMap.item,\r\n isExpanded && !isEllipsis && classMap.item_animate,\r\n isLast && classMap.item_active\r\n );\r\n\r\n return (\r\n <li\r\n data-testid={testId ? `${testId}-nav-item` : undefined}\r\n key={`${item.label}-${item.href ?? index}`}\r\n className={itemClassName}\r\n itemProp=\"itemListElement\"\r\n itemScope\r\n itemType=\"https://schema.org/ListItem\"\r\n >\r\n {isEllipsis ? (\r\n <ButtonComponent\r\n theme=\"clear\"\r\n size=\"xs\"\r\n className={classMap.ellipsis}\r\n aria-label=\"Show all breadcrumbs\"\r\n aria-expanded={isExpanded}\r\n onClick={disabled ? undefined : handleExpand}\r\n disabled={disabled}\r\n tabIndex={disabled ? -1 : 0}\r\n data-testid={testId ? `${testId}-ellipsis` : undefined}\r\n >\r\n {item.label}\r\n </ButtonComponent>\r\n ) : item.href && !isLast ? (\r\n disabled ? (\r\n // Disabled: render non-interactive label for links\r\n <span\r\n className={classMap.link_disabled}\r\n title={item.label}\r\n itemProp=\"name\"\r\n data-testid={\r\n testId ? `${testId}-nav-item-label` : undefined\r\n }\r\n >\r\n {item.label}\r\n </span>\r\n ) : (\r\n <LinkComponent\r\n href={item.href}\r\n className={classMap.link}\r\n title={item.label}\r\n itemProp=\"item\"\r\n data-testid={\r\n testId ? `${testId}-nav-item-label` : undefined\r\n }\r\n >\r\n <span itemProp=\"name\" className={classMap.link_label}>\r\n {item.label}\r\n </span>\r\n </LinkComponent>\r\n )\r\n ) : (\r\n <span\r\n className={classMap.current}\r\n itemProp=\"name\"\r\n aria-current=\"page\"\r\n data-testid={\r\n testId ? `${testId}-nav-item-current` : undefined\r\n }\r\n >\r\n {item.label}\r\n </span>\r\n )}\r\n\r\n {!isLast && (\r\n <span className={classMap.separator} aria-hidden=\"true\">\r\n {separator ?? <ArrowRightIcon />}\r\n </span>\r\n )}\r\n <meta itemProp=\"position\" content={`${index + 1}`} />\r\n </li>\r\n );\r\n })}\r\n </ol>\r\n </nav>\r\n );\r\n};\r\n\r\nBreadcrumbsBase.displayName = \"BreadcrumbsBase\";\r\n","\"use client\";\r\n\r\nimport React from \"react\";\r\nimport Link from \"next/link\";\r\nimport styles from \"./Breadcrumbs.module.scss\";\r\nimport { BreadcrumbsBase } from \"../BreadcrumbsBase\";\r\nimport { BreadcrumbsProps } from \"../Breadcrumbs.types\";\r\nimport { Button } from \"../../../index.next\";\r\n\r\nconst Breadcrumbs: React.FC<BreadcrumbsProps> = (props) => {\r\n return (\r\n <BreadcrumbsBase\r\n {...props}\r\n classMap={styles}\r\n LinkComponent={Link}\r\n ButtonComponent={Button}\r\n />\r\n );\r\n};\r\nBreadcrumbs.displayName = \"Breadcrumbs\";\r\nexport default Breadcrumbs;\r\n"],"names":["getDefaultTheme","getDefaultRounding","getDefaultShadow","separator","disabled","getDefaultSize","outline","useState","useMemo","combineClassNames","capitalize","jsx","item","jsxs","ArrowRightIcon","Link","Button"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
|
-
const Breadcrumbs = require("./Breadcrumbs-
|
|
3
|
+
const Breadcrumbs = require("./Breadcrumbs-BcXj2PgR.cjs");
|
|
4
4
|
exports.ELLIPSIS_LABEL = Breadcrumbs.ELLIPSIS_LABEL;
|
|
5
5
|
exports.default = Breadcrumbs.Breadcrumbs;
|
|
6
6
|
//# sourceMappingURL=Breadcrumbs.cjs.js.map
|
package/dist/next/Breadcrumbs.js
CHANGED
|
@@ -1,48 +1,48 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
const require$$2 = require("react/jsx-runtime");
|
|
3
3
|
const React = require("react");
|
|
4
|
-
const link = require("./link-
|
|
4
|
+
const link = require("./link-lNk_lOdS.cjs");
|
|
5
5
|
const classNames = require("./classNames-BcWMx052.cjs");
|
|
6
6
|
const capitalize = require("./capitalize-DoV-nOmN.cjs");
|
|
7
7
|
const borealStyleConfig = require("./boreal-style-config-Rr5d5Qts.cjs");
|
|
8
|
-
const noScroll = "
|
|
9
|
-
const errorMessage = "
|
|
10
|
-
const loadingContainer = "
|
|
11
|
-
const hideScrollbar = "
|
|
12
|
-
const sr_only = "
|
|
13
|
-
const button = "
|
|
14
|
-
const loader = "
|
|
15
|
-
const fullWidth = "
|
|
16
|
-
const autoFull = "
|
|
17
|
-
const roundNone = "
|
|
18
|
-
const roundSmall = "
|
|
19
|
-
const roundMedium = "
|
|
20
|
-
const roundLarge = "
|
|
21
|
-
const roundFull = "
|
|
22
|
-
const shadowNone = "
|
|
23
|
-
const shadowLight = "
|
|
24
|
-
const shadowMedium = "
|
|
25
|
-
const shadowStrong = "
|
|
26
|
-
const shadowIntense = "
|
|
27
|
-
const spin = "
|
|
28
|
-
const buttonIcon = "
|
|
29
|
-
const buttonLabel = "
|
|
30
|
-
const clear = "
|
|
31
|
-
const outline = "
|
|
32
|
-
const primary = "
|
|
33
|
-
const secondary = "
|
|
34
|
-
const tertiary = "
|
|
35
|
-
const quaternary = "
|
|
36
|
-
const success = "
|
|
37
|
-
const error = "
|
|
38
|
-
const warning = "
|
|
39
|
-
const disabled = "
|
|
40
|
-
const xs = "
|
|
41
|
-
const small = "
|
|
42
|
-
const medium = "
|
|
43
|
-
const large = "
|
|
44
|
-
const xl = "
|
|
45
|
-
const pulse = "
|
|
8
|
+
const noScroll = "_noScroll_1hffq_108";
|
|
9
|
+
const errorMessage = "_errorMessage_1hffq_109";
|
|
10
|
+
const loadingContainer = "_loadingContainer_1hffq_110";
|
|
11
|
+
const hideScrollbar = "_hideScrollbar_1hffq_102";
|
|
12
|
+
const sr_only = "_sr_only_1hffq_111";
|
|
13
|
+
const button = "_button_1hffq_541";
|
|
14
|
+
const loader = "_loader_1hffq_544";
|
|
15
|
+
const fullWidth = "_fullWidth_1hffq_602";
|
|
16
|
+
const autoFull = "_autoFull_1hffq_614";
|
|
17
|
+
const roundNone = "_roundNone_1hffq_620";
|
|
18
|
+
const roundSmall = "_roundSmall_1hffq_624";
|
|
19
|
+
const roundMedium = "_roundMedium_1hffq_628";
|
|
20
|
+
const roundLarge = "_roundLarge_1hffq_632";
|
|
21
|
+
const roundFull = "_roundFull_1hffq_636";
|
|
22
|
+
const shadowNone = "_shadowNone_1hffq_640";
|
|
23
|
+
const shadowLight = "_shadowLight_1hffq_644";
|
|
24
|
+
const shadowMedium = "_shadowMedium_1hffq_648";
|
|
25
|
+
const shadowStrong = "_shadowStrong_1hffq_652";
|
|
26
|
+
const shadowIntense = "_shadowIntense_1hffq_656";
|
|
27
|
+
const spin = "_spin_1hffq_1";
|
|
28
|
+
const buttonIcon = "_buttonIcon_1hffq_669";
|
|
29
|
+
const buttonLabel = "_buttonLabel_1hffq_686";
|
|
30
|
+
const clear = "_clear_1hffq_690";
|
|
31
|
+
const outline = "_outline_1hffq_696";
|
|
32
|
+
const primary = "_primary_1hffq_712";
|
|
33
|
+
const secondary = "_secondary_1hffq_733";
|
|
34
|
+
const tertiary = "_tertiary_1hffq_754";
|
|
35
|
+
const quaternary = "_quaternary_1hffq_775";
|
|
36
|
+
const success = "_success_1hffq_817";
|
|
37
|
+
const error = "_error_1hffq_109";
|
|
38
|
+
const warning = "_warning_1hffq_859";
|
|
39
|
+
const disabled = "_disabled_1hffq_880";
|
|
40
|
+
const xs = "_xs_1hffq_893";
|
|
41
|
+
const small = "_small_1hffq_925";
|
|
42
|
+
const medium = "_medium_1hffq_957";
|
|
43
|
+
const large = "_large_1hffq_989";
|
|
44
|
+
const xl = "_xl_1hffq_1021";
|
|
45
|
+
const pulse = "_pulse_1hffq_1";
|
|
46
46
|
const styles = {
|
|
47
47
|
noScroll,
|
|
48
48
|
errorMessage,
|
|
@@ -81,14 +81,14 @@ const styles = {
|
|
|
81
81
|
medium,
|
|
82
82
|
large,
|
|
83
83
|
xl,
|
|
84
|
-
"fade-in": "_fade-
|
|
85
|
-
"slide-up": "_slide-
|
|
86
|
-
"spin-3d": "_spin-
|
|
84
|
+
"fade-in": "_fade-in_1hffq_1",
|
|
85
|
+
"slide-up": "_slide-up_1hffq_1",
|
|
86
|
+
"spin-3d": "_spin-3d_1hffq_1",
|
|
87
87
|
pulse,
|
|
88
|
-
"fade-in-up": "_fade-in-
|
|
89
|
-
"progress-grow": "_progress-
|
|
90
|
-
"indeterminate-move": "_indeterminate-
|
|
91
|
-
"skeleton-loading": "_skeleton-
|
|
88
|
+
"fade-in-up": "_fade-in-up_1hffq_1",
|
|
89
|
+
"progress-grow": "_progress-grow_1hffq_1",
|
|
90
|
+
"indeterminate-move": "_indeterminate-move_1hffq_1",
|
|
91
|
+
"skeleton-loading": "_skeleton-loading_1hffq_1"
|
|
92
92
|
};
|
|
93
93
|
const ButtonBase = React.forwardRef(
|
|
94
94
|
({
|
|
@@ -228,4 +228,4 @@ ButtonBase.displayName = "ButtonBase";
|
|
|
228
228
|
const Button = React.forwardRef((props, ref) => /* @__PURE__ */ require$$2.jsx(ButtonBase, { ...props, classMap: styles, LinkComponent: link.Link, ref }));
|
|
229
229
|
Button.displayName = "Button";
|
|
230
230
|
exports.Button = Button;
|
|
231
|
-
//# sourceMappingURL=Button-
|
|
231
|
+
//# sourceMappingURL=Button-B1Fh4G0_.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button-
|
|
1
|
+
{"version":3,"file":"Button-B1Fh4G0_.cjs","sources":["../../src/components/Button/ButtonBase.tsx","../../src/components/Button/next/Button.tsx"],"sourcesContent":["import React, { forwardRef, useMemo } from \"react\";\r\nimport { ButtonBaseProps } from \"./Button.types\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport { capitalize } from \"../../utils/capitalize\";\r\nimport {\r\n getDefaultRounding,\r\n getDefaultShadow,\r\n getDefaultSize,\r\n getDefaultTheme,\r\n} from \"../../config/boreal-style-config\";\r\n\r\nconst ButtonBase = forwardRef<\r\n HTMLButtonElement | HTMLAnchorElement,\r\n ButtonBaseProps\r\n>(\r\n (\r\n {\r\n icon: Icon,\r\n theme = getDefaultTheme(),\r\n state = \"\",\r\n onClick,\r\n type = \"button\",\r\n rounding = getDefaultRounding(),\r\n shadow = getDefaultShadow(),\r\n children,\r\n className = \"\",\r\n disabled = false,\r\n ariaLabel,\r\n href,\r\n isExternal = false,\r\n outline = false,\r\n size = getDefaultSize(),\r\n loading = false,\r\n fullWidth = false,\r\n \"data-testid\": testId = \"button\",\r\n classMap,\r\n LinkComponent = \"a\",\r\n ...rest\r\n },\r\n ref\r\n ) => {\r\n const iconOnly =\r\n !children ||\r\n (typeof children !== \"string\" && React.Children.count(children) === 0);\r\n const computedAriaLabel = iconOnly ? ariaLabel : undefined;\r\n\r\n if (process.env.NODE_ENV === \"development\" && iconOnly && !ariaLabel) {\r\n console.warn(\"ButtonBase: icon-only buttons must provide `ariaLabel`.\");\r\n }\r\n\r\n const combinedClassName = useMemo(\r\n () =>\r\n combineClassNames(\r\n classMap.button,\r\n classMap[theme],\r\n classMap[state],\r\n classMap[size],\r\n outline && classMap.outline,\r\n shadow && classMap[`shadow${capitalize(shadow)}`],\r\n rounding && classMap[`round${capitalize(rounding)}`],\r\n fullWidth && classMap.fullWidth,\r\n disabled && classMap.disabled,\r\n className\r\n ),\r\n [\r\n theme,\r\n state,\r\n outline,\r\n size,\r\n shadow,\r\n rounding,\r\n fullWidth,\r\n disabled,\r\n className,\r\n classMap,\r\n ]\r\n );\r\n\r\n const content = (\r\n <>\r\n {Icon && (\r\n <span\r\n className={classMap.buttonIcon}\r\n aria-hidden=\"true\"\r\n data-testid={testId ? `${testId}-icon` : undefined}\r\n >\r\n <Icon className={classMap.icon} />\r\n </span>\r\n )}\r\n <span\r\n className={classMap.buttonLabel}\r\n aria-live={loading ? \"polite\" : undefined}\r\n aria-atomic={loading || undefined}\r\n data-testid={testId ? `${testId}-loading` : undefined}\r\n >\r\n {loading ? (\r\n <>\r\n <div className={classMap.loader} aria-hidden=\"true\" />\r\n <span className=\"sr_only\">Loading</span>\r\n </>\r\n ) : (\r\n <>\r\n {children}\r\n {href && (isExternal ?? /^https?:\\/\\//i.test(href)) && (\r\n <span className=\"sr_only\"> (opens in a new tab)</span>\r\n )}\r\n </>\r\n )}\r\n </span>\r\n </>\r\n );\r\n\r\n if (href) {\r\n const Comp = (LinkComponent ?? \"a\") as React.ElementType;\r\n const external = (isExternal ?? /^https?:\\/\\//i.test(href)) && !disabled;\r\n\r\n const linkCommon = {\r\n ref: ref as React.Ref<HTMLAnchorElement>,\r\n className: combineClassNames(combinedClassName, classMap.link),\r\n onClick: disabled\r\n ? (e: React.MouseEvent) => e.preventDefault()\r\n : onClick,\r\n \"aria-disabled\": disabled || undefined,\r\n tabIndex: disabled ? -1 : undefined,\r\n ...(computedAriaLabel ? { \"aria-label\": computedAriaLabel } : {}),\r\n \"data-testid\": testId,\r\n } as const;\r\n\r\n if (Comp === \"a\") {\r\n return (\r\n <a\r\n {...linkCommon}\r\n href={disabled ? undefined : href}\r\n target={external ? \"_blank\" : undefined}\r\n rel={external ? \"noopener noreferrer\" : undefined}\r\n {...(rest as React.AnchorHTMLAttributes<HTMLAnchorElement>)}\r\n >\r\n {content}\r\n </a>\r\n );\r\n }\r\n\r\n return (\r\n <Comp\r\n {...(linkCommon as Omit<\r\n React.ComponentPropsWithoutRef<typeof Comp>,\r\n \"children\"\r\n >)}\r\n href={href as never}\r\n {...(rest as React.ComponentPropsWithoutRef<typeof Comp>)}\r\n >\r\n {content}\r\n </Comp>\r\n );\r\n }\r\n\r\n return (\r\n <button\r\n ref={ref as React.Ref<HTMLButtonElement>}\r\n type={type}\r\n className={combinedClassName}\r\n disabled={disabled || loading}\r\n aria-busy={loading || undefined}\r\n {...(computedAriaLabel ? { \"aria-label\": computedAriaLabel } : {})}\r\n data-testid={testId}\r\n onClick={disabled ? undefined : onClick}\r\n {...(rest as React.ButtonHTMLAttributes<HTMLButtonElement>)}\r\n >\r\n {content}\r\n </button>\r\n );\r\n }\r\n);\r\n\r\nButtonBase.displayName = \"ButtonBase\";\r\n\r\nexport default ButtonBase;\r\n","\"use client\";\r\n\r\nimport { forwardRef } from \"react\";\r\nimport Link from \"next/link\";\r\nimport styles from \"./Button.module.scss\";\r\nimport ButtonBase from \"../ButtonBase\";\r\nimport { ButtonProps } from \"../Button.types\";\r\n\r\nconst Button = forwardRef<HTMLButtonElement, ButtonProps>((props, ref) => (\r\n <ButtonBase {...props} classMap={styles} LinkComponent={Link} ref={ref} />\r\n));\r\nButton.displayName = \"Button\";\r\nexport default Button;\r\n"],"names":["forwardRef","getDefaultTheme","getDefaultRounding","getDefaultShadow","disabled","outline","getDefaultSize","fullWidth","useMemo","combineClassNames","capitalize","jsxs","Fragment","jsx","Link"],"mappings":"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"}
|
|
@@ -1,47 +1,47 @@
|
|
|
1
1
|
import { jsxs, Fragment, jsx } from "react/jsx-runtime";
|
|
2
2
|
import React, { forwardRef, useMemo } from "react";
|
|
3
|
-
import { L as Link } from "./link-
|
|
3
|
+
import { L as Link } from "./link-CxWP3aXr.js";
|
|
4
4
|
import { c as combineClassNames } from "./classNames-AS8QjFq7.js";
|
|
5
5
|
import { c as capitalize } from "./capitalize-C0TSQSPh.js";
|
|
6
6
|
import { a as getDefaultRounding, b as getDefaultShadow, c as getDefaultSize, d as getDefaultTheme } from "./boreal-style-config-BILmxkZG.js";
|
|
7
|
-
const noScroll = "
|
|
8
|
-
const errorMessage = "
|
|
9
|
-
const loadingContainer = "
|
|
10
|
-
const hideScrollbar = "
|
|
11
|
-
const sr_only = "
|
|
12
|
-
const button = "
|
|
13
|
-
const loader = "
|
|
14
|
-
const fullWidth = "
|
|
15
|
-
const autoFull = "
|
|
16
|
-
const roundNone = "
|
|
17
|
-
const roundSmall = "
|
|
18
|
-
const roundMedium = "
|
|
19
|
-
const roundLarge = "
|
|
20
|
-
const roundFull = "
|
|
21
|
-
const shadowNone = "
|
|
22
|
-
const shadowLight = "
|
|
23
|
-
const shadowMedium = "
|
|
24
|
-
const shadowStrong = "
|
|
25
|
-
const shadowIntense = "
|
|
26
|
-
const spin = "
|
|
27
|
-
const buttonIcon = "
|
|
28
|
-
const buttonLabel = "
|
|
29
|
-
const clear = "
|
|
30
|
-
const outline = "
|
|
31
|
-
const primary = "
|
|
32
|
-
const secondary = "
|
|
33
|
-
const tertiary = "
|
|
34
|
-
const quaternary = "
|
|
35
|
-
const success = "
|
|
36
|
-
const error = "
|
|
37
|
-
const warning = "
|
|
38
|
-
const disabled = "
|
|
39
|
-
const xs = "
|
|
40
|
-
const small = "
|
|
41
|
-
const medium = "
|
|
42
|
-
const large = "
|
|
43
|
-
const xl = "
|
|
44
|
-
const pulse = "
|
|
7
|
+
const noScroll = "_noScroll_1hffq_108";
|
|
8
|
+
const errorMessage = "_errorMessage_1hffq_109";
|
|
9
|
+
const loadingContainer = "_loadingContainer_1hffq_110";
|
|
10
|
+
const hideScrollbar = "_hideScrollbar_1hffq_102";
|
|
11
|
+
const sr_only = "_sr_only_1hffq_111";
|
|
12
|
+
const button = "_button_1hffq_541";
|
|
13
|
+
const loader = "_loader_1hffq_544";
|
|
14
|
+
const fullWidth = "_fullWidth_1hffq_602";
|
|
15
|
+
const autoFull = "_autoFull_1hffq_614";
|
|
16
|
+
const roundNone = "_roundNone_1hffq_620";
|
|
17
|
+
const roundSmall = "_roundSmall_1hffq_624";
|
|
18
|
+
const roundMedium = "_roundMedium_1hffq_628";
|
|
19
|
+
const roundLarge = "_roundLarge_1hffq_632";
|
|
20
|
+
const roundFull = "_roundFull_1hffq_636";
|
|
21
|
+
const shadowNone = "_shadowNone_1hffq_640";
|
|
22
|
+
const shadowLight = "_shadowLight_1hffq_644";
|
|
23
|
+
const shadowMedium = "_shadowMedium_1hffq_648";
|
|
24
|
+
const shadowStrong = "_shadowStrong_1hffq_652";
|
|
25
|
+
const shadowIntense = "_shadowIntense_1hffq_656";
|
|
26
|
+
const spin = "_spin_1hffq_1";
|
|
27
|
+
const buttonIcon = "_buttonIcon_1hffq_669";
|
|
28
|
+
const buttonLabel = "_buttonLabel_1hffq_686";
|
|
29
|
+
const clear = "_clear_1hffq_690";
|
|
30
|
+
const outline = "_outline_1hffq_696";
|
|
31
|
+
const primary = "_primary_1hffq_712";
|
|
32
|
+
const secondary = "_secondary_1hffq_733";
|
|
33
|
+
const tertiary = "_tertiary_1hffq_754";
|
|
34
|
+
const quaternary = "_quaternary_1hffq_775";
|
|
35
|
+
const success = "_success_1hffq_817";
|
|
36
|
+
const error = "_error_1hffq_109";
|
|
37
|
+
const warning = "_warning_1hffq_859";
|
|
38
|
+
const disabled = "_disabled_1hffq_880";
|
|
39
|
+
const xs = "_xs_1hffq_893";
|
|
40
|
+
const small = "_small_1hffq_925";
|
|
41
|
+
const medium = "_medium_1hffq_957";
|
|
42
|
+
const large = "_large_1hffq_989";
|
|
43
|
+
const xl = "_xl_1hffq_1021";
|
|
44
|
+
const pulse = "_pulse_1hffq_1";
|
|
45
45
|
const styles = {
|
|
46
46
|
noScroll,
|
|
47
47
|
errorMessage,
|
|
@@ -80,14 +80,14 @@ const styles = {
|
|
|
80
80
|
medium,
|
|
81
81
|
large,
|
|
82
82
|
xl,
|
|
83
|
-
"fade-in": "_fade-
|
|
84
|
-
"slide-up": "_slide-
|
|
85
|
-
"spin-3d": "_spin-
|
|
83
|
+
"fade-in": "_fade-in_1hffq_1",
|
|
84
|
+
"slide-up": "_slide-up_1hffq_1",
|
|
85
|
+
"spin-3d": "_spin-3d_1hffq_1",
|
|
86
86
|
pulse,
|
|
87
|
-
"fade-in-up": "_fade-in-
|
|
88
|
-
"progress-grow": "_progress-
|
|
89
|
-
"indeterminate-move": "_indeterminate-
|
|
90
|
-
"skeleton-loading": "_skeleton-
|
|
87
|
+
"fade-in-up": "_fade-in-up_1hffq_1",
|
|
88
|
+
"progress-grow": "_progress-grow_1hffq_1",
|
|
89
|
+
"indeterminate-move": "_indeterminate-move_1hffq_1",
|
|
90
|
+
"skeleton-loading": "_skeleton-loading_1hffq_1"
|
|
91
91
|
};
|
|
92
92
|
const ButtonBase = forwardRef(
|
|
93
93
|
({
|
|
@@ -229,4 +229,4 @@ Button.displayName = "Button";
|
|
|
229
229
|
export {
|
|
230
230
|
Button as B
|
|
231
231
|
};
|
|
232
|
-
//# sourceMappingURL=Button-
|
|
232
|
+
//# sourceMappingURL=Button-uZ3xTOOt.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button-
|
|
1
|
+
{"version":3,"file":"Button-uZ3xTOOt.js","sources":["../../src/components/Button/ButtonBase.tsx","../../src/components/Button/next/Button.tsx"],"sourcesContent":["import React, { forwardRef, useMemo } from \"react\";\r\nimport { ButtonBaseProps } from \"./Button.types\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport { capitalize } from \"../../utils/capitalize\";\r\nimport {\r\n getDefaultRounding,\r\n getDefaultShadow,\r\n getDefaultSize,\r\n getDefaultTheme,\r\n} from \"../../config/boreal-style-config\";\r\n\r\nconst ButtonBase = forwardRef<\r\n HTMLButtonElement | HTMLAnchorElement,\r\n ButtonBaseProps\r\n>(\r\n (\r\n {\r\n icon: Icon,\r\n theme = getDefaultTheme(),\r\n state = \"\",\r\n onClick,\r\n type = \"button\",\r\n rounding = getDefaultRounding(),\r\n shadow = getDefaultShadow(),\r\n children,\r\n className = \"\",\r\n disabled = false,\r\n ariaLabel,\r\n href,\r\n isExternal = false,\r\n outline = false,\r\n size = getDefaultSize(),\r\n loading = false,\r\n fullWidth = false,\r\n \"data-testid\": testId = \"button\",\r\n classMap,\r\n LinkComponent = \"a\",\r\n ...rest\r\n },\r\n ref\r\n ) => {\r\n const iconOnly =\r\n !children ||\r\n (typeof children !== \"string\" && React.Children.count(children) === 0);\r\n const computedAriaLabel = iconOnly ? ariaLabel : undefined;\r\n\r\n if (process.env.NODE_ENV === \"development\" && iconOnly && !ariaLabel) {\r\n console.warn(\"ButtonBase: icon-only buttons must provide `ariaLabel`.\");\r\n }\r\n\r\n const combinedClassName = useMemo(\r\n () =>\r\n combineClassNames(\r\n classMap.button,\r\n classMap[theme],\r\n classMap[state],\r\n classMap[size],\r\n outline && classMap.outline,\r\n shadow && classMap[`shadow${capitalize(shadow)}`],\r\n rounding && classMap[`round${capitalize(rounding)}`],\r\n fullWidth && classMap.fullWidth,\r\n disabled && classMap.disabled,\r\n className\r\n ),\r\n [\r\n theme,\r\n state,\r\n outline,\r\n size,\r\n shadow,\r\n rounding,\r\n fullWidth,\r\n disabled,\r\n className,\r\n classMap,\r\n ]\r\n );\r\n\r\n const content = (\r\n <>\r\n {Icon && (\r\n <span\r\n className={classMap.buttonIcon}\r\n aria-hidden=\"true\"\r\n data-testid={testId ? `${testId}-icon` : undefined}\r\n >\r\n <Icon className={classMap.icon} />\r\n </span>\r\n )}\r\n <span\r\n className={classMap.buttonLabel}\r\n aria-live={loading ? \"polite\" : undefined}\r\n aria-atomic={loading || undefined}\r\n data-testid={testId ? `${testId}-loading` : undefined}\r\n >\r\n {loading ? (\r\n <>\r\n <div className={classMap.loader} aria-hidden=\"true\" />\r\n <span className=\"sr_only\">Loading</span>\r\n </>\r\n ) : (\r\n <>\r\n {children}\r\n {href && (isExternal ?? /^https?:\\/\\//i.test(href)) && (\r\n <span className=\"sr_only\"> (opens in a new tab)</span>\r\n )}\r\n </>\r\n )}\r\n </span>\r\n </>\r\n );\r\n\r\n if (href) {\r\n const Comp = (LinkComponent ?? \"a\") as React.ElementType;\r\n const external = (isExternal ?? /^https?:\\/\\//i.test(href)) && !disabled;\r\n\r\n const linkCommon = {\r\n ref: ref as React.Ref<HTMLAnchorElement>,\r\n className: combineClassNames(combinedClassName, classMap.link),\r\n onClick: disabled\r\n ? (e: React.MouseEvent) => e.preventDefault()\r\n : onClick,\r\n \"aria-disabled\": disabled || undefined,\r\n tabIndex: disabled ? -1 : undefined,\r\n ...(computedAriaLabel ? { \"aria-label\": computedAriaLabel } : {}),\r\n \"data-testid\": testId,\r\n } as const;\r\n\r\n if (Comp === \"a\") {\r\n return (\r\n <a\r\n {...linkCommon}\r\n href={disabled ? undefined : href}\r\n target={external ? \"_blank\" : undefined}\r\n rel={external ? \"noopener noreferrer\" : undefined}\r\n {...(rest as React.AnchorHTMLAttributes<HTMLAnchorElement>)}\r\n >\r\n {content}\r\n </a>\r\n );\r\n }\r\n\r\n return (\r\n <Comp\r\n {...(linkCommon as Omit<\r\n React.ComponentPropsWithoutRef<typeof Comp>,\r\n \"children\"\r\n >)}\r\n href={href as never}\r\n {...(rest as React.ComponentPropsWithoutRef<typeof Comp>)}\r\n >\r\n {content}\r\n </Comp>\r\n );\r\n }\r\n\r\n return (\r\n <button\r\n ref={ref as React.Ref<HTMLButtonElement>}\r\n type={type}\r\n className={combinedClassName}\r\n disabled={disabled || loading}\r\n aria-busy={loading || undefined}\r\n {...(computedAriaLabel ? { \"aria-label\": computedAriaLabel } : {})}\r\n data-testid={testId}\r\n onClick={disabled ? undefined : onClick}\r\n {...(rest as React.ButtonHTMLAttributes<HTMLButtonElement>)}\r\n >\r\n {content}\r\n </button>\r\n );\r\n }\r\n);\r\n\r\nButtonBase.displayName = \"ButtonBase\";\r\n\r\nexport default ButtonBase;\r\n","\"use client\";\r\n\r\nimport { forwardRef } from \"react\";\r\nimport Link from \"next/link\";\r\nimport styles from \"./Button.module.scss\";\r\nimport ButtonBase from \"../ButtonBase\";\r\nimport { ButtonProps } from \"../Button.types\";\r\n\r\nconst Button = forwardRef<HTMLButtonElement, ButtonProps>((props, ref) => (\r\n <ButtonBase {...props} classMap={styles} LinkComponent={Link} ref={ref} />\r\n));\r\nButton.displayName = \"Button\";\r\nexport default Button;\r\n"],"names":["disabled","outline","fullWidth"],"mappings":"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"}
|
package/dist/next/Button.cjs.js
CHANGED
package/dist/next/Button.js
CHANGED