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.
- package/README.md +0 -2
- package/dist/core/boreal-ui.css +13739 -30851
- package/dist/next/{Accordion-Bg8V6T38.js → Accordion-ez41BXtb.js} +73 -94
- package/dist/next/{Accordion-Bg8V6T38.js.map → Accordion-ez41BXtb.js.map} +1 -1
- package/dist/next/{Accordion-BEa1jxTt.cjs → Accordion-yvdIcWj9.cjs} +74 -95
- package/dist/next/{Accordion-BEa1jxTt.cjs.map → Accordion-yvdIcWj9.cjs.map} +1 -1
- package/dist/next/Accordion.cjs.js +1 -1
- package/dist/next/Accordion.css +593 -0
- package/dist/next/Accordion.js +1 -1
- package/dist/next/{Avatar-DL_juTQA.cjs → Avatar-C-Z-ZPt8.cjs} +82 -82
- package/dist/next/{Avatar-DL_juTQA.cjs.map → Avatar-C-Z-ZPt8.cjs.map} +1 -1
- package/dist/next/{Avatar-nnjhILk-.js → Avatar-DymaVXDv.js} +81 -81
- package/dist/next/{Avatar-nnjhILk-.js.map → Avatar-DymaVXDv.js.map} +1 -1
- package/dist/next/Avatar.cjs.js +1 -1
- package/dist/next/Avatar.css +444 -0
- package/dist/next/Avatar.js +1 -1
- package/dist/next/{Badge-DzcjI-JI.cjs → Badge-56GHYTQN.cjs} +2 -2
- package/dist/next/{Badge-DzcjI-JI.cjs.map → Badge-56GHYTQN.cjs.map} +1 -1
- package/dist/next/{Badge-uyqxj7ag.js → Badge-BqVwp5Qj.js} +2 -2
- package/dist/next/{Badge-uyqxj7ag.js.map → Badge-BqVwp5Qj.js.map} +1 -1
- package/dist/next/Badge.cjs.js +1 -1
- package/dist/next/Badge.css +640 -0
- package/dist/next/Badge.js +1 -1
- package/dist/next/{Breadcrumbs-CuvOmgFe.cjs → Breadcrumbs-33eZmvpJ.cjs} +3 -3
- package/dist/next/{Breadcrumbs-CuvOmgFe.cjs.map → Breadcrumbs-33eZmvpJ.cjs.map} +1 -1
- package/dist/next/{Breadcrumbs-D0AmJB4U.js → Breadcrumbs-eetAtAHU.js} +3 -3
- package/dist/next/{Breadcrumbs-D0AmJB4U.js.map → Breadcrumbs-eetAtAHU.js.map} +1 -1
- package/dist/next/Breadcrumbs.cjs.js +1 -1
- package/dist/next/Breadcrumbs.css +579 -0
- package/dist/next/Breadcrumbs.js +1 -1
- package/dist/next/{Button-BZmph-Qr.cjs → Button-CmH6HYjc.cjs} +42 -52
- package/dist/next/{Button-BZmph-Qr.cjs.map → Button-CmH6HYjc.cjs.map} +1 -1
- package/dist/next/{Button-DWpImTmr.js → Button-oSOXL3At.js} +41 -51
- package/dist/next/{Button-DWpImTmr.js.map → Button-oSOXL3At.js.map} +1 -1
- package/dist/next/Button.cjs.js +1 -1
- package/dist/next/Button.css +721 -0
- package/dist/next/Button.js +1 -1
- package/dist/next/{Card-DnZOsQLP.js → Card-CO--D_GK.js} +65 -75
- package/dist/next/{Card-DnZOsQLP.js.map → Card-CO--D_GK.js.map} +1 -1
- package/dist/next/{Card-oPTXIvsb.cjs → Card-o8DszZPj.cjs} +65 -75
- package/dist/next/{Card-oPTXIvsb.cjs.map → Card-o8DszZPj.cjs.map} +1 -1
- package/dist/next/Card.cjs.js +1 -1
- package/dist/next/Card.css +993 -0
- 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-CRg5oEdB.js → Checkbox-KIXViPTB.js} +45 -55
- package/dist/next/{Checkbox-CRg5oEdB.js.map → Checkbox-KIXViPTB.js.map} +1 -1
- package/dist/next/{Checkbox-DXNxt-4b.cjs → Checkbox-UqOL3aqk.cjs} +45 -55
- package/dist/next/{Checkbox-DXNxt-4b.cjs.map → Checkbox-UqOL3aqk.cjs.map} +1 -1
- package/dist/next/Checkbox.css +756 -0
- package/dist/next/{Chip-DpMTNARP.cjs → Chip-BQv3NoJL.cjs} +47 -57
- package/dist/next/{Chip-DpMTNARP.cjs.map → Chip-BQv3NoJL.cjs.map} +1 -1
- package/dist/next/{Chip-Cg7khsSn.js → Chip-D-QH1huh.js} +47 -57
- package/dist/next/{Chip-Cg7khsSn.js.map → Chip-D-QH1huh.js.map} +1 -1
- package/dist/next/Chip.cjs.js +1 -1
- package/dist/next/Chip.css +598 -0
- package/dist/next/Chip.js +1 -1
- package/dist/next/{CircularProgress-CzFUYDX1.cjs → CircularProgress-BG83Q-uO.cjs} +33 -43
- package/dist/next/{CircularProgress-CzFUYDX1.cjs.map → CircularProgress-BG83Q-uO.cjs.map} +1 -1
- package/dist/next/{CircularProgress-Dn1VXFsq.js → CircularProgress-Bfanw-2S.js} +33 -43
- package/dist/next/{CircularProgress-Dn1VXFsq.js.map → CircularProgress-Bfanw-2S.js.map} +1 -1
- package/dist/next/CircularProgress.cjs.js +1 -1
- package/dist/next/CircularProgress.css +528 -0
- package/dist/next/CircularProgress.js +1 -1
- package/dist/next/{ColorPicker-CCzSZDjx.js → ColorPicker-BJfyM0Ay.js} +26 -47
- package/dist/next/{ColorPicker-CCzSZDjx.js.map → ColorPicker-BJfyM0Ay.js.map} +1 -1
- package/dist/next/{ColorPicker-ByPKPsMz.cjs → ColorPicker-DmubVH4p.cjs} +26 -47
- package/dist/next/{ColorPicker-ByPKPsMz.cjs.map → ColorPicker-DmubVH4p.cjs.map} +1 -1
- package/dist/next/ColorPicker.cjs.js +1 -1
- package/dist/next/ColorPicker.css +346 -0
- package/dist/next/ColorPicker.js +1 -1
- package/dist/next/{CommandPalette-D6R9_gmo.js → CommandPalette-CNaU5jTY.js} +38 -48
- package/dist/next/{CommandPalette-D6R9_gmo.js.map → CommandPalette-CNaU5jTY.js.map} +1 -1
- package/dist/next/{CommandPalette-BvjlLE14.cjs → CommandPalette-_Lpb0UOI.cjs} +38 -48
- package/dist/next/{CommandPalette-BvjlLE14.cjs.map → CommandPalette-_Lpb0UOI.cjs.map} +1 -1
- package/dist/next/CommandPalette.cjs.js +1 -1
- package/dist/next/CommandPalette.css +624 -0
- package/dist/next/CommandPalette.js +1 -1
- package/dist/next/{DataTable-Bt6D__oo.cjs → DataTable-BAwMYdQb.cjs} +29 -50
- package/dist/next/{DataTable-Bt6D__oo.cjs.map → DataTable-BAwMYdQb.cjs.map} +1 -1
- package/dist/next/{DataTable-CZj_U9rg.js → DataTable-F9mtABNi.js} +28 -49
- package/dist/next/{DataTable-CZj_U9rg.js.map → DataTable-F9mtABNi.js.map} +1 -1
- package/dist/next/DataTable.cjs.js +1 -1
- package/dist/next/DataTable.css +444 -0
- package/dist/next/DataTable.js +1 -1
- package/dist/next/{DateTimePicker-Cols3qxt.cjs → DateTimePicker-CU-b9irX.cjs} +34 -55
- package/dist/next/{DateTimePicker-Cols3qxt.cjs.map → DateTimePicker-CU-b9irX.cjs.map} +1 -1
- package/dist/next/{DateTimePicker-DB2exnHd.js → DateTimePicker-WVVLqcd9.js} +34 -55
- package/dist/next/{DateTimePicker-DB2exnHd.js.map → DateTimePicker-WVVLqcd9.js.map} +1 -1
- package/dist/next/DateTimePicker.cjs.js +1 -1
- package/dist/next/DateTimePicker.css +563 -0
- package/dist/next/DateTimePicker.js +1 -1
- package/dist/next/{Divider-Dr0xlon0.cjs → Divider-BGxUapmt.cjs} +16 -37
- package/dist/next/{Divider-Dr0xlon0.cjs.map → Divider-BGxUapmt.cjs.map} +1 -1
- package/dist/next/{Divider-DXGze_D2.js → Divider-BXSDTRTU.js} +16 -37
- package/dist/next/{Divider-DXGze_D2.js.map → Divider-BXSDTRTU.js.map} +1 -1
- package/dist/next/Divider.cjs.js +1 -1
- package/dist/next/Divider.css +248 -0
- package/dist/next/Divider.js +1 -1
- package/dist/next/{Dropdown-B7PgWHlY.js → Dropdown-B7vrHg0z.js} +3 -3
- package/dist/next/{Dropdown-B7PgWHlY.js.map → Dropdown-B7vrHg0z.js.map} +1 -1
- package/dist/next/{Dropdown-kQLhr7_M.cjs → Dropdown-CUYItZDk.cjs} +3 -3
- package/dist/next/{Dropdown-kQLhr7_M.cjs.map → Dropdown-CUYItZDk.cjs.map} +1 -1
- package/dist/next/Dropdown.cjs.js +1 -1
- package/dist/next/Dropdown.css +317 -0
- package/dist/next/Dropdown.js +1 -1
- package/dist/next/{EmptyState-DCCDQWOQ.js → EmptyState-MT9_qwrB.js} +44 -33
- package/dist/next/{EmptyState-DCCDQWOQ.js.map → EmptyState-MT9_qwrB.js.map} +1 -1
- package/dist/next/{EmptyState-BH1X81TH.cjs → EmptyState-sh7Vn6eC.cjs} +44 -33
- package/dist/next/{EmptyState-BH1X81TH.cjs.map → EmptyState-sh7Vn6eC.cjs.map} +1 -1
- package/dist/next/EmptyState.cjs.js +1 -1
- package/dist/next/EmptyState.css +663 -0
- package/dist/next/EmptyState.js +1 -1
- package/dist/next/{FileUpload-BQW5ol7P.js → FileUpload-Bvj5JEBv.js} +48 -58
- package/dist/next/{FileUpload-BQW5ol7P.js.map → FileUpload-Bvj5JEBv.js.map} +1 -1
- package/dist/next/{FileUpload-C9Ke2cTs.cjs → FileUpload-CD_i5Md2.cjs} +48 -58
- package/dist/next/{FileUpload-C9Ke2cTs.cjs.map → FileUpload-CD_i5Md2.cjs.map} +1 -1
- package/dist/next/FileUpload.cjs.js +1 -1
- package/dist/next/FileUpload.css +474 -0
- package/dist/next/FileUpload.js +1 -1
- package/dist/next/{Footer-Dl_wQwsb.js → Footer-Bdu_9H3p.js} +38 -48
- package/dist/next/{Footer-Dl_wQwsb.js.map → Footer-Bdu_9H3p.js.map} +1 -1
- package/dist/next/{Footer-i9rgxATK.cjs → Footer-DJjzgwpc.cjs} +38 -48
- package/dist/next/{Footer-i9rgxATK.cjs.map → Footer-DJjzgwpc.cjs.map} +1 -1
- package/dist/next/Footer.cjs.js +1 -1
- package/dist/next/Footer.css +493 -0
- package/dist/next/Footer.js +1 -1
- package/dist/next/{FormGroup-B4Xb3X61.cjs → FormGroup-BWJAlt3K.cjs} +28 -36
- package/dist/next/{FormGroup-B4Xb3X61.cjs.map → FormGroup-BWJAlt3K.cjs.map} +1 -1
- package/dist/next/{FormGroup-AHYiWnkX.js → FormGroup-QrGjujWn.js} +28 -36
- package/dist/next/{FormGroup-AHYiWnkX.js.map → FormGroup-QrGjujWn.js.map} +1 -1
- package/dist/next/FormGroup.cjs.js +1 -1
- package/dist/next/FormGroup.css +419 -0
- package/dist/next/FormGroup.js +1 -1
- package/dist/next/{IconButton-BWw3WPaS.js → IconButton-0JJ1aiqr.js} +2 -2
- package/dist/next/{IconButton-BWw3WPaS.js.map → IconButton-0JJ1aiqr.js.map} +1 -1
- package/dist/next/{IconButton-4ySBEhn1.cjs → IconButton-C66aQhKe.cjs} +2 -2
- package/dist/next/{IconButton-4ySBEhn1.cjs.map → IconButton-C66aQhKe.cjs.map} +1 -1
- package/dist/next/IconButton.cjs.js +1 -1
- package/dist/next/IconButton.css +570 -0
- package/dist/next/IconButton.js +1 -1
- package/dist/next/{MarkdownRenderer-CO_rlPOB.cjs → MarkdownRenderer-BQ1-Kd73.cjs} +25 -14
- package/dist/next/{MarkdownRenderer-CO_rlPOB.cjs.map → MarkdownRenderer-BQ1-Kd73.cjs.map} +1 -1
- package/dist/next/{MarkdownRenderer-CGnuIkVY.js → MarkdownRenderer-CmK00as_.js} +25 -14
- package/dist/next/{MarkdownRenderer-CGnuIkVY.js.map → MarkdownRenderer-CmK00as_.js.map} +1 -1
- package/dist/next/MarkdownRenderer.cjs.js +1 -1
- package/dist/next/MarkdownRenderer.css +483 -0
- package/dist/next/MarkdownRenderer.js +1 -1
- package/dist/next/{MessagePopup-D_gZy6eH.cjs → MessagePopup-CizqwWmH.cjs} +4 -4
- package/dist/next/{MessagePopup-D_gZy6eH.cjs.map → MessagePopup-CizqwWmH.cjs.map} +1 -1
- package/dist/next/{MessagePopup-DIrdAeyg.js → MessagePopup-DLodDCIa.js} +4 -4
- package/dist/next/{MessagePopup-DIrdAeyg.js.map → MessagePopup-DLodDCIa.js.map} +1 -1
- package/dist/next/MessagePopup.cjs.js +1 -1
- package/dist/next/MessagePopup.css +296 -0
- package/dist/next/MessagePopup.js +1 -1
- package/dist/next/{MetricBox-CeONzyEu.cjs → MetricBox-C55LoIfn.cjs} +43 -53
- package/dist/next/{MetricBox-CeONzyEu.cjs.map → MetricBox-C55LoIfn.cjs.map} +1 -1
- package/dist/next/{MetricBox-D9-RmZoy.js → MetricBox-CHNmWcTq.js} +43 -53
- package/dist/next/{MetricBox-D9-RmZoy.js.map → MetricBox-CHNmWcTq.js.map} +1 -1
- package/dist/next/MetricBox.cjs.js +1 -1
- package/dist/next/MetricBox.css +635 -0
- package/dist/next/MetricBox.js +1 -1
- package/dist/next/{Modal-Dre8TMtr.js → Modal-BajWiIo7.js} +3 -3
- package/dist/next/{Modal-Dre8TMtr.js.map → Modal-BajWiIo7.js.map} +1 -1
- package/dist/next/{Modal-D7hNuMII.cjs → Modal-j59Cj0t1.cjs} +3 -3
- package/dist/next/{Modal-D7hNuMII.cjs.map → Modal-j59Cj0t1.cjs.map} +1 -1
- package/dist/next/Modal.cjs.js +1 -1
- package/dist/next/Modal.css +320 -0
- package/dist/next/Modal.js +1 -1
- package/dist/next/{NavBar-dpbPYT0w.js → NavBar-B0G7ZuqP.js} +33 -43
- package/dist/next/{NavBar-dpbPYT0w.js.map → NavBar-B0G7ZuqP.js.map} +1 -1
- package/dist/next/{NavBar-d-Hx7gkg.cjs → NavBar-Cd6FlBPY.cjs} +33 -43
- package/dist/next/{NavBar-d-Hx7gkg.cjs.map → NavBar-Cd6FlBPY.cjs.map} +1 -1
- package/dist/next/NavBar.cjs.js +1 -1
- package/dist/next/NavBar.css +498 -0
- package/dist/next/NavBar.js +1 -1
- package/dist/next/{NotificationCenter-BrAzv2oD.js → NotificationCenter-BDd4Zr8Y.js} +39 -49
- package/dist/next/{NotificationCenter-BrAzv2oD.js.map → NotificationCenter-BDd4Zr8Y.js.map} +1 -1
- package/dist/next/{NotificationCenter-JIX-pouI.cjs → NotificationCenter-obd1jF2n.cjs} +39 -49
- package/dist/next/{NotificationCenter-JIX-pouI.cjs.map → NotificationCenter-obd1jF2n.cjs.map} +1 -1
- package/dist/next/NotificationCenter.cjs.js +1 -1
- package/dist/next/NotificationCenter.css +475 -0
- package/dist/next/NotificationCenter.js +1 -1
- package/dist/next/{Pager-DcibmVu1.cjs → Pager-8dIVqCGz.cjs} +4 -4
- package/dist/next/{Pager-DcibmVu1.cjs.map → Pager-8dIVqCGz.cjs.map} +1 -1
- package/dist/next/{Pager-DFKfUn1s.js → Pager-C7n5x44P.js} +4 -4
- package/dist/next/{Pager-DFKfUn1s.js.map → Pager-C7n5x44P.js.map} +1 -1
- package/dist/next/Pager.cjs.js +1 -1
- package/dist/next/Pager.css +173 -0
- package/dist/next/Pager.js +1 -1
- package/dist/next/{PopOver-CpSdILYS.cjs → PopOver-D8BwV2PM.cjs} +36 -46
- package/dist/next/{PopOver-CpSdILYS.cjs.map → PopOver-D8BwV2PM.cjs.map} +1 -1
- package/dist/next/{PopOver-CUON_Abe.js → PopOver-Dmf41W2o.js} +36 -46
- package/dist/next/{PopOver-CUON_Abe.js.map → PopOver-Dmf41W2o.js.map} +1 -1
- package/dist/next/PopOver.cjs.js +1 -1
- package/dist/next/PopOver.css +417 -0
- package/dist/next/PopOver.js +1 -1
- package/dist/next/{ProgressBar-CMYDs8uL.js → ProgressBar-BgCHpDo8.js} +44 -54
- package/dist/next/{ProgressBar-CMYDs8uL.js.map → ProgressBar-BgCHpDo8.js.map} +1 -1
- package/dist/next/{ProgressBar-sg1jxDfy.cjs → ProgressBar-DUarHTA6.cjs} +44 -54
- package/dist/next/{ProgressBar-sg1jxDfy.cjs.map → ProgressBar-DUarHTA6.cjs.map} +1 -1
- package/dist/next/ProgressBar.cjs.js +1 -1
- package/dist/next/ProgressBar.css +441 -0
- package/dist/next/ProgressBar.js +1 -1
- package/dist/next/{RadioButton-z26U6POV.js → RadioButton-BN63UX0c.js} +34 -44
- package/dist/next/{RadioButton-z26U6POV.js.map → RadioButton-BN63UX0c.js.map} +1 -1
- package/dist/next/{RadioButton-X5L9U53Y.cjs → RadioButton-Dla9uVC6.cjs} +34 -44
- package/dist/next/{RadioButton-X5L9U53Y.cjs.map → RadioButton-Dla9uVC6.cjs.map} +1 -1
- package/dist/next/RadioButton.cjs.js +1 -1
- package/dist/next/RadioButton.css +454 -0
- package/dist/next/RadioButton.js +1 -1
- package/dist/next/{Rating-DXYBYXmx.cjs → Rating-B8A_4Z44.cjs} +30 -40
- package/dist/next/{Rating-DXYBYXmx.cjs.map → Rating-B8A_4Z44.cjs.map} +1 -1
- package/dist/next/{Rating-D6JEDvn4.js → Rating-CCZoQJEB.js} +30 -40
- package/dist/next/{Rating-D6JEDvn4.js.map → Rating-CCZoQJEB.js.map} +1 -1
- package/dist/next/Rating.cjs.js +1 -1
- package/dist/next/Rating.css +402 -0
- package/dist/next/Rating.js +1 -1
- package/dist/next/{ScrollToTop-Cw7LXubo.js → ScrollToTop-C7ThHvxg.js} +2 -2
- package/dist/next/{ScrollToTop-Cw7LXubo.js.map → ScrollToTop-C7ThHvxg.js.map} +1 -1
- package/dist/next/{ScrollToTop-CBRFQNC0.cjs → ScrollToTop-CJxWoVhg.cjs} +2 -2
- package/dist/next/{ScrollToTop-CBRFQNC0.cjs.map → ScrollToTop-CJxWoVhg.cjs.map} +1 -1
- package/dist/next/ScrollToTop.cjs.js +1 -1
- package/dist/next/ScrollToTop.css +215 -0
- package/dist/next/ScrollToTop.js +1 -1
- package/dist/next/{Select-DAD4xA1b.cjs → Select-CiyDDVhq.cjs} +2 -2
- package/dist/next/{Select-DAD4xA1b.cjs.map → Select-CiyDDVhq.cjs.map} +1 -1
- package/dist/next/{Select-b8fO1q2K.js → Select-D4bH7djH.js} +2 -2
- package/dist/next/{Select-b8fO1q2K.js.map → Select-D4bH7djH.js.map} +1 -1
- package/dist/next/Select.cjs.js +1 -1
- package/dist/next/Select.css +459 -0
- package/dist/next/Select.js +1 -1
- package/dist/next/{Sidebar-BwW51HwF.js → Sidebar-3dbu221x.js} +2 -2
- package/dist/next/{Sidebar-BwW51HwF.js.map → Sidebar-3dbu221x.js.map} +1 -1
- package/dist/next/{Sidebar-U5BQKtKR.cjs → Sidebar-DpUTsAza.cjs} +2 -2
- package/dist/next/{Sidebar-U5BQKtKR.cjs.map → Sidebar-DpUTsAza.cjs.map} +1 -1
- package/dist/next/Sidebar.cjs.js +1 -1
- package/dist/next/Sidebar.css +515 -0
- package/dist/next/Sidebar.js +1 -1
- package/dist/next/{Skeleton-N1-8bK7i.cjs → Skeleton-B0mlVpUX.cjs} +22 -32
- package/dist/next/{Skeleton-N1-8bK7i.cjs.map → Skeleton-B0mlVpUX.cjs.map} +1 -1
- package/dist/next/{Skeleton-Bk8l48-D.js → Skeleton-BiBul6J3.js} +21 -31
- package/dist/next/{Skeleton-Bk8l48-D.js.map → Skeleton-BiBul6J3.js.map} +1 -1
- package/dist/next/Skeleton.cjs.js +1 -1
- package/dist/next/Skeleton.css +288 -0
- package/dist/next/Skeleton.js +1 -1
- package/dist/next/{Slider-DOGkUQYT.js → Slider-B4G0kHQA.js} +38 -48
- package/dist/next/{Slider-DOGkUQYT.js.map → Slider-B4G0kHQA.js.map} +1 -1
- package/dist/next/{Slider-BPtajU2m.cjs → Slider-Cli7b9xm.cjs} +39 -49
- package/dist/next/{Slider-BPtajU2m.cjs.map → Slider-Cli7b9xm.cjs.map} +1 -1
- package/dist/next/Slider.cjs.js +1 -1
- package/dist/next/Slider.css +645 -0
- package/dist/next/Slider.js +1 -1
- package/dist/next/{Spinner-CmaoTjNr.cjs → Spinner-BSjLK_0H.cjs} +33 -43
- package/dist/next/{Spinner-CmaoTjNr.cjs.map → Spinner-BSjLK_0H.cjs.map} +1 -1
- package/dist/next/{Spinner-D7jfVZGm.js → Spinner-C9Xiao9p.js} +32 -42
- package/dist/next/{Spinner-D7jfVZGm.js.map → Spinner-C9Xiao9p.js.map} +1 -1
- package/dist/next/Spinner.cjs.js +1 -1
- package/dist/next/Spinner.css +390 -0
- package/dist/next/Spinner.js +1 -1
- package/dist/next/{Stepper-C0cNzpY8.cjs → Stepper-CpgJBKz7.cjs} +36 -46
- package/dist/next/{Stepper-C0cNzpY8.cjs.map → Stepper-CpgJBKz7.cjs.map} +1 -1
- package/dist/next/{Stepper-CSh2wccK.js → Stepper-em6Gl32O.js} +36 -46
- package/dist/next/{Stepper-CSh2wccK.js.map → Stepper-em6Gl32O.js.map} +1 -1
- package/dist/next/Stepper.cjs.js +1 -1
- package/dist/next/Stepper.css +404 -0
- package/dist/next/Stepper.js +1 -1
- package/dist/next/{Tabs-Dors0bVs.js → Tabs-B5GbuYuA.js} +2 -2
- package/dist/next/{Tabs-Dors0bVs.js.map → Tabs-B5GbuYuA.js.map} +1 -1
- package/dist/next/{Tabs-B6zeG5AB.cjs → Tabs-or9GGDS3.cjs} +2 -2
- package/dist/next/{Tabs-B6zeG5AB.cjs.map → Tabs-or9GGDS3.cjs.map} +1 -1
- package/dist/next/Tabs.cjs.js +1 -1
- package/dist/next/Tabs.css +407 -0
- package/dist/next/Tabs.js +1 -1
- package/dist/next/{TagInput-V3zvXcNq.js → TagInput-8nVGDluu.js} +44 -54
- package/dist/next/{TagInput-V3zvXcNq.js.map → TagInput-8nVGDluu.js.map} +1 -1
- package/dist/next/{TagInput-ceV9Jjqe.cjs → TagInput-DVmBv7Mn.cjs} +44 -54
- package/dist/next/{TagInput-ceV9Jjqe.cjs.map → TagInput-DVmBv7Mn.cjs.map} +1 -1
- package/dist/next/TagInput.cjs.js +1 -1
- package/dist/next/TagInput.css +521 -0
- package/dist/next/TagInput.js +1 -1
- package/dist/next/{TextArea-BXmbrq4-.cjs → TextArea-Bh0FdkP2.cjs} +2 -2
- package/dist/next/{TextArea-BXmbrq4-.cjs.map → TextArea-Bh0FdkP2.cjs.map} +1 -1
- package/dist/next/{TextArea-BSO1_gaS.js → TextArea-CQgoM2yj.js} +2 -2
- package/dist/next/{TextArea-BSO1_gaS.js.map → TextArea-CQgoM2yj.js.map} +1 -1
- package/dist/next/TextArea.cjs.js +1 -1
- package/dist/next/TextArea.css +450 -0
- package/dist/next/TextArea.js +1 -1
- package/dist/next/{TextInput-7nN8g78V.cjs → TextInput-BRl37zMW.cjs} +3 -3
- package/dist/next/{TextInput-7nN8g78V.cjs.map → TextInput-BRl37zMW.cjs.map} +1 -1
- package/dist/next/{TextInput-yUHEWbdK.js → TextInput-CKM34-yu.js} +3 -3
- package/dist/next/{TextInput-yUHEWbdK.js.map → TextInput-CKM34-yu.js.map} +1 -1
- package/dist/next/TextInput.cjs.js +1 -1
- package/dist/next/TextInput.css +438 -0
- package/dist/next/TextInput.js +1 -1
- package/dist/next/{Timeline-BTsKMULd.js → Timeline-BF_ru3Qq.js} +2 -2
- package/dist/next/{Timeline-BTsKMULd.js.map → Timeline-BF_ru3Qq.js.map} +1 -1
- package/dist/next/{Timeline-Dep_oZrh.cjs → Timeline-uKeDlojT.cjs} +2 -2
- package/dist/next/{Timeline-Dep_oZrh.cjs.map → Timeline-uKeDlojT.cjs.map} +1 -1
- package/dist/next/Timeline.cjs.js +1 -1
- package/dist/next/Timeline.css +455 -0
- package/dist/next/Timeline.js +1 -1
- package/dist/next/{Toggle-BomUbOZa.js → Toggle-CegN5JEB.js} +2 -2
- package/dist/next/{Toggle-BomUbOZa.js.map → Toggle-CegN5JEB.js.map} +1 -1
- package/dist/next/{Toggle-C9uZG3i5.cjs → Toggle-CfIi--aC.cjs} +2 -2
- package/dist/next/{Toggle-C9uZG3i5.cjs.map → Toggle-CfIi--aC.cjs.map} +1 -1
- package/dist/next/Toggle.cjs.js +1 -1
- package/dist/next/Toggle.css +464 -0
- package/dist/next/Toggle.js +1 -1
- package/dist/next/{Toolbar-Be-YQqmX.js → Toolbar-DqBlTLsk.js} +30 -40
- package/dist/next/{Toolbar-Be-YQqmX.js.map → Toolbar-DqBlTLsk.js.map} +1 -1
- package/dist/next/{Toolbar-roQbIEcD.cjs → Toolbar-DqsQznCj.cjs} +31 -41
- package/dist/next/{Toolbar-roQbIEcD.cjs.map → Toolbar-DqsQznCj.cjs.map} +1 -1
- package/dist/next/Toolbar.cjs.js +1 -1
- package/dist/next/Toolbar.css +367 -0
- package/dist/next/Toolbar.js +1 -1
- package/dist/next/{Tooltip-DVI61ebD.cjs → Tooltip-LnIFKvJC.cjs} +35 -45
- package/dist/next/{Tooltip-DVI61ebD.cjs.map → Tooltip-LnIFKvJC.cjs.map} +1 -1
- package/dist/next/{Tooltip-lxpnIfpO.js → Tooltip-o7L3wCNR.js} +34 -44
- package/dist/next/{Tooltip-lxpnIfpO.js.map → Tooltip-o7L3wCNR.js.map} +1 -1
- package/dist/next/Tooltip.cjs.js +1 -1
- package/dist/next/Tooltip.css +529 -0
- package/dist/next/Tooltip.js +1 -1
- package/dist/next/{Typography-B6VNZtxH.cjs → Typography-BAQ61z2R.cjs} +2 -2
- package/dist/next/{Typography-B6VNZtxH.cjs.map → Typography-BAQ61z2R.cjs.map} +1 -1
- package/dist/next/{Typography-BdS7h4Eq.js → Typography-BDswZ9eq.js} +2 -2
- package/dist/next/{Typography-BdS7h4Eq.js.map → Typography-BDswZ9eq.js.map} +1 -1
- package/dist/next/Typography.cjs.js +1 -1
- package/dist/next/Typography.css +294 -0
- package/dist/next/Typography.js +1 -1
- package/dist/next/globals.css +674 -0
- package/dist/next/index.cjs.js +66 -76
- package/dist/next/index.cjs.js.map +1 -1
- package/dist/next/index.css +241 -0
- package/dist/next/index.js +66 -76
- package/dist/next/index.js.map +1 -1
- package/package.json +10 -6
- package/dist/generated-docs/Typography.props.js +0 -204
- package/dist/next/boreal-ui.css +0 -36643
|
@@ -1,11 +1,91 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
const require$$2 = require("react/jsx-runtime");
|
|
2
|
+
require('./Avatar.css');const require$$2 = require("react/jsx-runtime");
|
|
3
3
|
const React = require("react");
|
|
4
4
|
const image$1 = require("./image-DuTgdWOV.cjs");
|
|
5
5
|
const link = require("./link-CenftYXJ.cjs");
|
|
6
6
|
const classNames = require("./classNames-BcWMx052.cjs");
|
|
7
7
|
const capitalize = require("./capitalize-DoV-nOmN.cjs");
|
|
8
8
|
const borealStyleConfig = require("./boreal-style-config-C1UIwOFN.cjs");
|
|
9
|
+
const avatar = "_avatar_p3qsm_68";
|
|
10
|
+
const xs = "_xs_p3qsm_85";
|
|
11
|
+
const small = "_small_p3qsm_90";
|
|
12
|
+
const medium = "_medium_p3qsm_95";
|
|
13
|
+
const large = "_large_p3qsm_100";
|
|
14
|
+
const xl = "_xl_p3qsm_105";
|
|
15
|
+
const circle = "_circle_p3qsm_110";
|
|
16
|
+
const rounded = "_rounded_p3qsm_113";
|
|
17
|
+
const square = "_square_p3qsm_116";
|
|
18
|
+
const outline = "_outline_p3qsm_119";
|
|
19
|
+
const shadowNone = "_shadowNone_p3qsm_122";
|
|
20
|
+
const shadowLight = "_shadowLight_p3qsm_125";
|
|
21
|
+
const shadowMedium = "_shadowMedium_p3qsm_128";
|
|
22
|
+
const shadowStrong = "_shadowStrong_p3qsm_131";
|
|
23
|
+
const shadowIntense = "_shadowIntense_p3qsm_134";
|
|
24
|
+
const clickable = "_clickable_p3qsm_137";
|
|
25
|
+
const clear = "_clear_p3qsm_147";
|
|
26
|
+
const primary = "_primary_p3qsm_166";
|
|
27
|
+
const secondary = "_secondary_p3qsm_188";
|
|
28
|
+
const tertiary = "_tertiary_p3qsm_210";
|
|
29
|
+
const quaternary = "_quaternary_p3qsm_232";
|
|
30
|
+
const success = "_success_p3qsm_275";
|
|
31
|
+
const error = "_error_p3qsm_297";
|
|
32
|
+
const warning = "_warning_p3qsm_319";
|
|
33
|
+
const disabled = "_disabled_p3qsm_341";
|
|
34
|
+
const image = "_image_p3qsm_351";
|
|
35
|
+
const initials = "_initials_p3qsm_360";
|
|
36
|
+
const fallback_icon = "_fallback_icon_p3qsm_369";
|
|
37
|
+
const status = "_status_p3qsm_376";
|
|
38
|
+
const topLeft = "_topLeft_p3qsm_387";
|
|
39
|
+
const topRight = "_topRight_p3qsm_391";
|
|
40
|
+
const bottomLeft = "_bottomLeft_p3qsm_395";
|
|
41
|
+
const bottomRight = "_bottomRight_p3qsm_399";
|
|
42
|
+
const icon_only = "_icon_only_p3qsm_403";
|
|
43
|
+
const online = "_online_p3qsm_412";
|
|
44
|
+
const away = "_away_p3qsm_416";
|
|
45
|
+
const offline = "_offline_p3qsm_420";
|
|
46
|
+
const busy = "_busy_p3qsm_424";
|
|
47
|
+
const dot = "_dot_p3qsm_428";
|
|
48
|
+
const styles = {
|
|
49
|
+
avatar,
|
|
50
|
+
xs,
|
|
51
|
+
small,
|
|
52
|
+
medium,
|
|
53
|
+
large,
|
|
54
|
+
xl,
|
|
55
|
+
circle,
|
|
56
|
+
rounded,
|
|
57
|
+
square,
|
|
58
|
+
outline,
|
|
59
|
+
shadowNone,
|
|
60
|
+
shadowLight,
|
|
61
|
+
shadowMedium,
|
|
62
|
+
shadowStrong,
|
|
63
|
+
shadowIntense,
|
|
64
|
+
clickable,
|
|
65
|
+
clear,
|
|
66
|
+
primary,
|
|
67
|
+
secondary,
|
|
68
|
+
tertiary,
|
|
69
|
+
quaternary,
|
|
70
|
+
success,
|
|
71
|
+
error,
|
|
72
|
+
warning,
|
|
73
|
+
disabled,
|
|
74
|
+
image,
|
|
75
|
+
initials,
|
|
76
|
+
fallback_icon,
|
|
77
|
+
status,
|
|
78
|
+
topLeft,
|
|
79
|
+
topRight,
|
|
80
|
+
bottomLeft,
|
|
81
|
+
bottomRight,
|
|
82
|
+
icon_only,
|
|
83
|
+
online,
|
|
84
|
+
away,
|
|
85
|
+
offline,
|
|
86
|
+
busy,
|
|
87
|
+
dot
|
|
88
|
+
};
|
|
9
89
|
const getInitials = (name) => {
|
|
10
90
|
var _a, _b, _c;
|
|
11
91
|
const words = name.trim().split(/\s+/);
|
|
@@ -243,86 +323,6 @@ const AvatarBase = React.forwardRef(function AvatarBase2({
|
|
|
243
323
|
);
|
|
244
324
|
});
|
|
245
325
|
AvatarBase.displayName = "AvatarBase";
|
|
246
|
-
const avatar = "_avatar_p3qsm_68";
|
|
247
|
-
const xs = "_xs_p3qsm_85";
|
|
248
|
-
const small = "_small_p3qsm_90";
|
|
249
|
-
const medium = "_medium_p3qsm_95";
|
|
250
|
-
const large = "_large_p3qsm_100";
|
|
251
|
-
const xl = "_xl_p3qsm_105";
|
|
252
|
-
const circle = "_circle_p3qsm_110";
|
|
253
|
-
const rounded = "_rounded_p3qsm_113";
|
|
254
|
-
const square = "_square_p3qsm_116";
|
|
255
|
-
const outline = "_outline_p3qsm_119";
|
|
256
|
-
const shadowNone = "_shadowNone_p3qsm_122";
|
|
257
|
-
const shadowLight = "_shadowLight_p3qsm_125";
|
|
258
|
-
const shadowMedium = "_shadowMedium_p3qsm_128";
|
|
259
|
-
const shadowStrong = "_shadowStrong_p3qsm_131";
|
|
260
|
-
const shadowIntense = "_shadowIntense_p3qsm_134";
|
|
261
|
-
const clickable = "_clickable_p3qsm_137";
|
|
262
|
-
const clear = "_clear_p3qsm_147";
|
|
263
|
-
const primary = "_primary_p3qsm_166";
|
|
264
|
-
const secondary = "_secondary_p3qsm_188";
|
|
265
|
-
const tertiary = "_tertiary_p3qsm_210";
|
|
266
|
-
const quaternary = "_quaternary_p3qsm_232";
|
|
267
|
-
const success = "_success_p3qsm_275";
|
|
268
|
-
const error = "_error_p3qsm_297";
|
|
269
|
-
const warning = "_warning_p3qsm_319";
|
|
270
|
-
const disabled = "_disabled_p3qsm_341";
|
|
271
|
-
const image = "_image_p3qsm_351";
|
|
272
|
-
const initials = "_initials_p3qsm_360";
|
|
273
|
-
const fallback_icon = "_fallback_icon_p3qsm_369";
|
|
274
|
-
const status = "_status_p3qsm_376";
|
|
275
|
-
const topLeft = "_topLeft_p3qsm_387";
|
|
276
|
-
const topRight = "_topRight_p3qsm_391";
|
|
277
|
-
const bottomLeft = "_bottomLeft_p3qsm_395";
|
|
278
|
-
const bottomRight = "_bottomRight_p3qsm_399";
|
|
279
|
-
const icon_only = "_icon_only_p3qsm_403";
|
|
280
|
-
const online = "_online_p3qsm_412";
|
|
281
|
-
const away = "_away_p3qsm_416";
|
|
282
|
-
const offline = "_offline_p3qsm_420";
|
|
283
|
-
const busy = "_busy_p3qsm_424";
|
|
284
|
-
const dot = "_dot_p3qsm_428";
|
|
285
|
-
const styles = {
|
|
286
|
-
avatar,
|
|
287
|
-
xs,
|
|
288
|
-
small,
|
|
289
|
-
medium,
|
|
290
|
-
large,
|
|
291
|
-
xl,
|
|
292
|
-
circle,
|
|
293
|
-
rounded,
|
|
294
|
-
square,
|
|
295
|
-
outline,
|
|
296
|
-
shadowNone,
|
|
297
|
-
shadowLight,
|
|
298
|
-
shadowMedium,
|
|
299
|
-
shadowStrong,
|
|
300
|
-
shadowIntense,
|
|
301
|
-
clickable,
|
|
302
|
-
clear,
|
|
303
|
-
primary,
|
|
304
|
-
secondary,
|
|
305
|
-
tertiary,
|
|
306
|
-
quaternary,
|
|
307
|
-
success,
|
|
308
|
-
error,
|
|
309
|
-
warning,
|
|
310
|
-
disabled,
|
|
311
|
-
image,
|
|
312
|
-
initials,
|
|
313
|
-
fallback_icon,
|
|
314
|
-
status,
|
|
315
|
-
topLeft,
|
|
316
|
-
topRight,
|
|
317
|
-
bottomLeft,
|
|
318
|
-
bottomRight,
|
|
319
|
-
icon_only,
|
|
320
|
-
online,
|
|
321
|
-
away,
|
|
322
|
-
offline,
|
|
323
|
-
busy,
|
|
324
|
-
dot
|
|
325
|
-
};
|
|
326
326
|
const Avatar = React.forwardRef(
|
|
327
327
|
(props, ref) => /* @__PURE__ */ require$$2.jsx(
|
|
328
328
|
AvatarBase,
|
|
@@ -337,4 +337,4 @@ const Avatar = React.forwardRef(
|
|
|
337
337
|
);
|
|
338
338
|
Avatar.displayName = "Avatar";
|
|
339
339
|
exports.Avatar = Avatar;
|
|
340
|
-
//# sourceMappingURL=Avatar-
|
|
340
|
+
//# sourceMappingURL=Avatar-C-Z-ZPt8.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Avatar-DL_juTQA.cjs","sources":["../../src/utils/getInitials.ts","../../src/Icons/UserIcon.tsx","../../src/components/Avatar/AvatarBase.tsx","../../src/components/Avatar/next/Avatar.tsx"],"sourcesContent":["/**\r\n * Returns the initials from a given full name string.\r\n *\r\n * Extracts the first character from the first word and the first character of the second word (if available).\r\n * If only one word is provided, it uses the first two characters of that word as a fallback.\r\n * If no valid characters are found, it returns \"?\".\r\n *\r\n * @param {string} name - The full name to extract initials from.\r\n * @returns {string} A string of up to two uppercase initials, or \"?\" if the input is empty or invalid.\r\n *\r\n * @example\r\n * getInitials(\"John Doe\"); // \"JD\"\r\n * getInitials(\"Alice\"); // \"AL\"\r\n * getInitials(\" \"); // \"?\"\r\n */\r\nexport const getInitials = (name: string): string => {\r\n const words = name.trim().split(/\\s+/);\r\n const first = words[0]?.[0] || \"\";\r\n const second = words[1]?.[0] || words[0]?.[1] || \"\";\r\n return (first + second).toUpperCase() || \"?\";\r\n};\r\n","const FallbackUserIcon: 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=\"M5 20V19C5 15.134 8.13401 12 12 12V12C15.866 12 19 15.134 19 19V20\"\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=\"M12 12C14.2091 12 16 10.2091 16 8C16 5.79086 14.2091 4 12 4C9.79086 4 8 5.79086 8 8C8 10.2091 9.79086 12 12 12Z\"\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 FallbackUserIcon;\r\n","import React, {\r\n useMemo,\r\n useState,\r\n MouseEvent,\r\n AnchorHTMLAttributes,\r\n ButtonHTMLAttributes,\r\n forwardRef,\r\n useId,\r\n} from \"react\";\r\nimport { AvatarBaseProps } from \"./Avatar.types\";\r\nimport { getInitials } from \"../../utils/getInitials\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport { FallbackUserIcon } from \"../../Icons/index\";\r\nimport { capitalize } from \"../../utils/capitalize\";\r\nimport {\r\n getDefaultShadow,\r\n getDefaultSize,\r\n getDefaultTheme,\r\n} from \"../../config/boreal-style-config\";\r\n\r\nexport const AvatarBase = forwardRef<\r\n HTMLButtonElement | HTMLAnchorElement,\r\n AvatarBaseProps\r\n>(function AvatarBase(\r\n {\r\n src,\r\n alt,\r\n name = \"\",\r\n label,\r\n onClick,\r\n disabled = false,\r\n href,\r\n status,\r\n statusLabel,\r\n statusIcon,\r\n statusPosition = \"bottomRight\",\r\n fallback,\r\n children,\r\n size = getDefaultSize(),\r\n shadow = getDefaultShadow(),\r\n shape = \"circle\",\r\n outline = false,\r\n theme = getDefaultTheme(),\r\n state = \"\",\r\n className = \"\",\r\n priority = false,\r\n ImageComponent = \"img\",\r\n LinkComponent = \"a\",\r\n classMap,\r\n role,\r\n \"aria-label\": ariaLabel,\r\n \"aria-labelledby\": ariaLabelledBy,\r\n \"aria-describedby\": ariaDescribedBy,\r\n \"aria-current\": ariaCurrent,\r\n \"data-testid\": testId = \"avatar\",\r\n ...rest\r\n },\r\n ref,\r\n) {\r\n const [imgError, setImgError] = useState(false);\r\n const generatedStatusId = useId();\r\n\r\n const computedLabel = label || alt || name || \"User avatar\";\r\n\r\n const describedBy = useMemo(() => {\r\n const ids: string[] = [];\r\n\r\n if (ariaDescribedBy) {\r\n ids.push(ariaDescribedBy);\r\n }\r\n\r\n if (statusLabel && (status || statusIcon)) {\r\n ids.push(generatedStatusId);\r\n }\r\n\r\n return ids.length > 0 ? ids.join(\" \") : undefined;\r\n }, [ariaDescribedBy, statusLabel, status, statusIcon, generatedStatusId]);\r\n\r\n const linkAria = {\r\n role,\r\n \"aria-label\": ariaLabelledBy ? undefined : (ariaLabel ?? computedLabel),\r\n \"aria-labelledby\": ariaLabelledBy,\r\n \"aria-describedby\": describedBy,\r\n \"aria-current\": ariaCurrent,\r\n \"aria-disabled\": disabled || undefined,\r\n } as const;\r\n\r\n const buttonAria = {\r\n role,\r\n \"aria-label\": ariaLabelledBy ? undefined : (ariaLabel ?? computedLabel),\r\n \"aria-labelledby\": ariaLabelledBy,\r\n \"aria-describedby\": describedBy,\r\n \"aria-current\": ariaCurrent,\r\n } as const;\r\n\r\n const fallbackContent =\r\n fallback ??\r\n (name ? (\r\n getInitials(name)\r\n ) : (\r\n <FallbackUserIcon className={classMap.fallback_icon} />\r\n ));\r\n\r\n const combinedClassName = useMemo(\r\n () =>\r\n combineClassNames(\r\n classMap.avatar,\r\n classMap[theme],\r\n classMap[state],\r\n classMap[shape],\r\n classMap[size],\r\n shadow && classMap[`shadow${capitalize(shadow)}`],\r\n disabled && classMap.disabled,\r\n outline && classMap.outline,\r\n onClick && classMap.clickable,\r\n className,\r\n ),\r\n [\r\n theme,\r\n state,\r\n shape,\r\n size,\r\n shadow,\r\n disabled,\r\n outline,\r\n onClick,\r\n className,\r\n classMap,\r\n ],\r\n );\r\n\r\n const isNextImage = typeof ImageComponent !== \"string\";\r\n\r\n const avatarContent =\r\n !imgError && src ? (\r\n <ImageComponent\r\n src={src}\r\n alt={alt || computedLabel}\r\n className={classMap.image}\r\n onError={() => setImgError(true)}\r\n {...(priority\r\n ? { loading: \"eager\" as const }\r\n : { loading: \"lazy\" as const })}\r\n {...(isNextImage ? { fill: true } : {})}\r\n data-testid={testId ? `${testId}-image` : undefined}\r\n />\r\n ) : (\r\n <span\r\n className={classMap.initials}\r\n title={computedLabel}\r\n aria-hidden={children ? true : undefined}\r\n data-testid={testId ? `${testId}-initials` : undefined}\r\n >\r\n {fallbackContent}\r\n </span>\r\n );\r\n\r\n const statusIndicator = (status || statusIcon) && (\r\n <>\r\n <span\r\n className={combineClassNames(\r\n classMap.status,\r\n status && classMap[status],\r\n statusIcon ? classMap.icon_only : undefined,\r\n classMap[statusPosition],\r\n )}\r\n aria-hidden=\"true\"\r\n data-testid={testId ? `${testId}-status` : undefined}\r\n >\r\n {statusIcon || <span className={classMap.dot} />}\r\n </span>\r\n\r\n {statusLabel ? (\r\n <span\r\n id={generatedStatusId}\r\n className={classMap.srOnly}\r\n data-testid={testId ? `${testId}-status-label` : undefined}\r\n >\r\n {statusLabel}\r\n </span>\r\n ) : null}\r\n </>\r\n );\r\n\r\n const content = (\r\n <>\r\n {children ?? avatarContent}\r\n {statusIndicator}\r\n </>\r\n );\r\n\r\n const handleClick = (e: MouseEvent<HTMLElement>) => {\r\n if (disabled) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n return;\r\n }\r\n\r\n onClick?.(e as MouseEvent<HTMLButtonElement | HTMLAnchorElement>);\r\n };\r\n\r\n if (href) {\r\n const isHttp = /^https?:\\/\\//i.test(href);\r\n\r\n return LinkComponent === \"a\" ? (\r\n <a\r\n ref={ref as React.Ref<HTMLAnchorElement>}\r\n href={disabled ? undefined : href}\r\n className={combinedClassName}\r\n onClick={handleClick}\r\n data-testid={testId ? `${testId}-main` : undefined}\r\n target={isHttp && !disabled ? \"_blank\" : undefined}\r\n rel={isHttp && !disabled ? \"noopener noreferrer\" : undefined}\r\n tabIndex={disabled ? -1 : 0}\r\n {...linkAria}\r\n {...(rest as AnchorHTMLAttributes<HTMLAnchorElement>)}\r\n >\r\n {content}\r\n </a>\r\n ) : (\r\n <LinkComponent\r\n ref={ref}\r\n href={href}\r\n className={combinedClassName}\r\n onClick={handleClick}\r\n data-testid={testId ? `${testId}-main` : undefined}\r\n tabIndex={disabled ? -1 : 0}\r\n {...linkAria}\r\n {...(rest as Record<string, unknown>)}\r\n >\r\n {content}\r\n </LinkComponent>\r\n );\r\n }\r\n\r\n return (\r\n <button\r\n ref={ref as React.Ref<HTMLButtonElement>}\r\n type=\"button\"\r\n className={combinedClassName}\r\n onClick={handleClick}\r\n disabled={disabled}\r\n data-testid={testId ? `${testId}-main` : undefined}\r\n {...buttonAria}\r\n {...(rest as ButtonHTMLAttributes<HTMLButtonElement>)}\r\n >\r\n {content}\r\n </button>\r\n );\r\n});\r\n\r\nAvatarBase.displayName = \"AvatarBase\";\r\n","\"use client\";\r\n\r\nimport { forwardRef } from \"react\";\r\nimport Image from \"next/image\";\r\nimport Link from \"next/link\";\r\nimport { AvatarProps } from \"../Avatar.types\";\r\nimport { AvatarBase } from \"../AvatarBase\";\r\nimport styles from \"./Avatar.module.scss\";\r\n\r\nconst Avatar = forwardRef<HTMLAnchorElement | HTMLButtonElement, AvatarProps>(\r\n (props, ref) => (\r\n <AvatarBase\r\n {...props}\r\n ImageComponent={Image}\r\n LinkComponent={Link}\r\n classMap={styles}\r\n ref={ref}\r\n />\r\n )\r\n);\r\nAvatar.displayName = \"Avatar\";\r\nexport default Avatar;\r\n"],"names":["jsxs","jsx","forwardRef","AvatarBase","disabled","status","getDefaultSize","getDefaultShadow","outline","getDefaultTheme","useState","useId","useMemo","combineClassNames","capitalize","Fragment","Image","Link"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Avatar-C-Z-ZPt8.cjs","sources":["../../src/utils/getInitials.ts","../../src/Icons/UserIcon.tsx","../../src/components/Avatar/AvatarBase.tsx","../../src/components/Avatar/next/Avatar.tsx"],"sourcesContent":["/**\r\n * Returns the initials from a given full name string.\r\n *\r\n * Extracts the first character from the first word and the first character of the second word (if available).\r\n * If only one word is provided, it uses the first two characters of that word as a fallback.\r\n * If no valid characters are found, it returns \"?\".\r\n *\r\n * @param {string} name - The full name to extract initials from.\r\n * @returns {string} A string of up to two uppercase initials, or \"?\" if the input is empty or invalid.\r\n *\r\n * @example\r\n * getInitials(\"John Doe\"); // \"JD\"\r\n * getInitials(\"Alice\"); // \"AL\"\r\n * getInitials(\" \"); // \"?\"\r\n */\r\nexport const getInitials = (name: string): string => {\r\n const words = name.trim().split(/\\s+/);\r\n const first = words[0]?.[0] || \"\";\r\n const second = words[1]?.[0] || words[0]?.[1] || \"\";\r\n return (first + second).toUpperCase() || \"?\";\r\n};\r\n","const FallbackUserIcon: 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=\"M5 20V19C5 15.134 8.13401 12 12 12V12C15.866 12 19 15.134 19 19V20\"\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=\"M12 12C14.2091 12 16 10.2091 16 8C16 5.79086 14.2091 4 12 4C9.79086 4 8 5.79086 8 8C8 10.2091 9.79086 12 12 12Z\"\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 FallbackUserIcon;\r\n","import React, {\r\n useMemo,\r\n useState,\r\n MouseEvent,\r\n AnchorHTMLAttributes,\r\n ButtonHTMLAttributes,\r\n forwardRef,\r\n useId,\r\n} from \"react\";\r\nimport { AvatarBaseProps } from \"./Avatar.types\";\r\nimport { getInitials } from \"../../utils/getInitials\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport { FallbackUserIcon } from \"../../Icons/index\";\r\nimport { capitalize } from \"../../utils/capitalize\";\r\nimport {\r\n getDefaultShadow,\r\n getDefaultSize,\r\n getDefaultTheme,\r\n} from \"../../config/boreal-style-config\";\r\n\r\nexport const AvatarBase = forwardRef<\r\n HTMLButtonElement | HTMLAnchorElement,\r\n AvatarBaseProps\r\n>(function AvatarBase(\r\n {\r\n src,\r\n alt,\r\n name = \"\",\r\n label,\r\n onClick,\r\n disabled = false,\r\n href,\r\n status,\r\n statusLabel,\r\n statusIcon,\r\n statusPosition = \"bottomRight\",\r\n fallback,\r\n children,\r\n size = getDefaultSize(),\r\n shadow = getDefaultShadow(),\r\n shape = \"circle\",\r\n outline = false,\r\n theme = getDefaultTheme(),\r\n state = \"\",\r\n className = \"\",\r\n priority = false,\r\n ImageComponent = \"img\",\r\n LinkComponent = \"a\",\r\n classMap,\r\n role,\r\n \"aria-label\": ariaLabel,\r\n \"aria-labelledby\": ariaLabelledBy,\r\n \"aria-describedby\": ariaDescribedBy,\r\n \"aria-current\": ariaCurrent,\r\n \"data-testid\": testId = \"avatar\",\r\n ...rest\r\n },\r\n ref,\r\n) {\r\n const [imgError, setImgError] = useState(false);\r\n const generatedStatusId = useId();\r\n\r\n const computedLabel = label || alt || name || \"User avatar\";\r\n\r\n const describedBy = useMemo(() => {\r\n const ids: string[] = [];\r\n\r\n if (ariaDescribedBy) {\r\n ids.push(ariaDescribedBy);\r\n }\r\n\r\n if (statusLabel && (status || statusIcon)) {\r\n ids.push(generatedStatusId);\r\n }\r\n\r\n return ids.length > 0 ? ids.join(\" \") : undefined;\r\n }, [ariaDescribedBy, statusLabel, status, statusIcon, generatedStatusId]);\r\n\r\n const linkAria = {\r\n role,\r\n \"aria-label\": ariaLabelledBy ? undefined : (ariaLabel ?? computedLabel),\r\n \"aria-labelledby\": ariaLabelledBy,\r\n \"aria-describedby\": describedBy,\r\n \"aria-current\": ariaCurrent,\r\n \"aria-disabled\": disabled || undefined,\r\n } as const;\r\n\r\n const buttonAria = {\r\n role,\r\n \"aria-label\": ariaLabelledBy ? undefined : (ariaLabel ?? computedLabel),\r\n \"aria-labelledby\": ariaLabelledBy,\r\n \"aria-describedby\": describedBy,\r\n \"aria-current\": ariaCurrent,\r\n } as const;\r\n\r\n const fallbackContent =\r\n fallback ??\r\n (name ? (\r\n getInitials(name)\r\n ) : (\r\n <FallbackUserIcon className={classMap.fallback_icon} />\r\n ));\r\n\r\n const combinedClassName = useMemo(\r\n () =>\r\n combineClassNames(\r\n classMap.avatar,\r\n classMap[theme],\r\n classMap[state],\r\n classMap[shape],\r\n classMap[size],\r\n shadow && classMap[`shadow${capitalize(shadow)}`],\r\n disabled && classMap.disabled,\r\n outline && classMap.outline,\r\n onClick && classMap.clickable,\r\n className,\r\n ),\r\n [\r\n theme,\r\n state,\r\n shape,\r\n size,\r\n shadow,\r\n disabled,\r\n outline,\r\n onClick,\r\n className,\r\n classMap,\r\n ],\r\n );\r\n\r\n const isNextImage = typeof ImageComponent !== \"string\";\r\n\r\n const avatarContent =\r\n !imgError && src ? (\r\n <ImageComponent\r\n src={src}\r\n alt={alt || computedLabel}\r\n className={classMap.image}\r\n onError={() => setImgError(true)}\r\n {...(priority\r\n ? { loading: \"eager\" as const }\r\n : { loading: \"lazy\" as const })}\r\n {...(isNextImage ? { fill: true } : {})}\r\n data-testid={testId ? `${testId}-image` : undefined}\r\n />\r\n ) : (\r\n <span\r\n className={classMap.initials}\r\n title={computedLabel}\r\n aria-hidden={children ? true : undefined}\r\n data-testid={testId ? `${testId}-initials` : undefined}\r\n >\r\n {fallbackContent}\r\n </span>\r\n );\r\n\r\n const statusIndicator = (status || statusIcon) && (\r\n <>\r\n <span\r\n className={combineClassNames(\r\n classMap.status,\r\n status && classMap[status],\r\n statusIcon ? classMap.icon_only : undefined,\r\n classMap[statusPosition],\r\n )}\r\n aria-hidden=\"true\"\r\n data-testid={testId ? `${testId}-status` : undefined}\r\n >\r\n {statusIcon || <span className={classMap.dot} />}\r\n </span>\r\n\r\n {statusLabel ? (\r\n <span\r\n id={generatedStatusId}\r\n className={classMap.srOnly}\r\n data-testid={testId ? `${testId}-status-label` : undefined}\r\n >\r\n {statusLabel}\r\n </span>\r\n ) : null}\r\n </>\r\n );\r\n\r\n const content = (\r\n <>\r\n {children ?? avatarContent}\r\n {statusIndicator}\r\n </>\r\n );\r\n\r\n const handleClick = (e: MouseEvent<HTMLElement>) => {\r\n if (disabled) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n return;\r\n }\r\n\r\n onClick?.(e as MouseEvent<HTMLButtonElement | HTMLAnchorElement>);\r\n };\r\n\r\n if (href) {\r\n const isHttp = /^https?:\\/\\//i.test(href);\r\n\r\n return LinkComponent === \"a\" ? (\r\n <a\r\n ref={ref as React.Ref<HTMLAnchorElement>}\r\n href={disabled ? undefined : href}\r\n className={combinedClassName}\r\n onClick={handleClick}\r\n data-testid={testId ? `${testId}-main` : undefined}\r\n target={isHttp && !disabled ? \"_blank\" : undefined}\r\n rel={isHttp && !disabled ? \"noopener noreferrer\" : undefined}\r\n tabIndex={disabled ? -1 : 0}\r\n {...linkAria}\r\n {...(rest as AnchorHTMLAttributes<HTMLAnchorElement>)}\r\n >\r\n {content}\r\n </a>\r\n ) : (\r\n <LinkComponent\r\n ref={ref}\r\n href={href}\r\n className={combinedClassName}\r\n onClick={handleClick}\r\n data-testid={testId ? `${testId}-main` : undefined}\r\n tabIndex={disabled ? -1 : 0}\r\n {...linkAria}\r\n {...(rest as Record<string, unknown>)}\r\n >\r\n {content}\r\n </LinkComponent>\r\n );\r\n }\r\n\r\n return (\r\n <button\r\n ref={ref as React.Ref<HTMLButtonElement>}\r\n type=\"button\"\r\n className={combinedClassName}\r\n onClick={handleClick}\r\n disabled={disabled}\r\n data-testid={testId ? `${testId}-main` : undefined}\r\n {...buttonAria}\r\n {...(rest as ButtonHTMLAttributes<HTMLButtonElement>)}\r\n >\r\n {content}\r\n </button>\r\n );\r\n});\r\n\r\nAvatarBase.displayName = \"AvatarBase\";\r\n","\"use client\";\r\n\r\nimport { forwardRef } from \"react\";\r\nimport Image from \"next/image\";\r\nimport Link from \"next/link\";\r\nimport { AvatarProps } from \"../Avatar.types\";\r\nimport { AvatarBase } from \"../AvatarBase\";\r\nimport styles from \"./Avatar.module.scss\";\r\n\r\nconst Avatar = forwardRef<HTMLAnchorElement | HTMLButtonElement, AvatarProps>(\r\n (props, ref) => (\r\n <AvatarBase\r\n {...props}\r\n ImageComponent={Image}\r\n LinkComponent={Link}\r\n classMap={styles}\r\n ref={ref}\r\n />\r\n )\r\n);\r\nAvatar.displayName = \"Avatar\";\r\nexport default Avatar;\r\n"],"names":["jsxs","jsx","forwardRef","AvatarBase","disabled","status","getDefaultSize","getDefaultShadow","outline","getDefaultTheme","useState","useId","useMemo","combineClassNames","capitalize","Fragment","Image","Link"],"mappings":"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"}
|
|
@@ -5,6 +5,86 @@ import { L as Link } from "./link-4NcriBFB.js";
|
|
|
5
5
|
import { c as combineClassNames } from "./classNames-AS8QjFq7.js";
|
|
6
6
|
import { c as capitalize } from "./capitalize-C0TSQSPh.js";
|
|
7
7
|
import { c as getDefaultSize, b as getDefaultShadow, d as getDefaultTheme } from "./boreal-style-config-DsaRlxmw.js";
|
|
8
|
+
import './Avatar.css';const avatar = "_avatar_p3qsm_68";
|
|
9
|
+
const xs = "_xs_p3qsm_85";
|
|
10
|
+
const small = "_small_p3qsm_90";
|
|
11
|
+
const medium = "_medium_p3qsm_95";
|
|
12
|
+
const large = "_large_p3qsm_100";
|
|
13
|
+
const xl = "_xl_p3qsm_105";
|
|
14
|
+
const circle = "_circle_p3qsm_110";
|
|
15
|
+
const rounded = "_rounded_p3qsm_113";
|
|
16
|
+
const square = "_square_p3qsm_116";
|
|
17
|
+
const outline = "_outline_p3qsm_119";
|
|
18
|
+
const shadowNone = "_shadowNone_p3qsm_122";
|
|
19
|
+
const shadowLight = "_shadowLight_p3qsm_125";
|
|
20
|
+
const shadowMedium = "_shadowMedium_p3qsm_128";
|
|
21
|
+
const shadowStrong = "_shadowStrong_p3qsm_131";
|
|
22
|
+
const shadowIntense = "_shadowIntense_p3qsm_134";
|
|
23
|
+
const clickable = "_clickable_p3qsm_137";
|
|
24
|
+
const clear = "_clear_p3qsm_147";
|
|
25
|
+
const primary = "_primary_p3qsm_166";
|
|
26
|
+
const secondary = "_secondary_p3qsm_188";
|
|
27
|
+
const tertiary = "_tertiary_p3qsm_210";
|
|
28
|
+
const quaternary = "_quaternary_p3qsm_232";
|
|
29
|
+
const success = "_success_p3qsm_275";
|
|
30
|
+
const error = "_error_p3qsm_297";
|
|
31
|
+
const warning = "_warning_p3qsm_319";
|
|
32
|
+
const disabled = "_disabled_p3qsm_341";
|
|
33
|
+
const image = "_image_p3qsm_351";
|
|
34
|
+
const initials = "_initials_p3qsm_360";
|
|
35
|
+
const fallback_icon = "_fallback_icon_p3qsm_369";
|
|
36
|
+
const status = "_status_p3qsm_376";
|
|
37
|
+
const topLeft = "_topLeft_p3qsm_387";
|
|
38
|
+
const topRight = "_topRight_p3qsm_391";
|
|
39
|
+
const bottomLeft = "_bottomLeft_p3qsm_395";
|
|
40
|
+
const bottomRight = "_bottomRight_p3qsm_399";
|
|
41
|
+
const icon_only = "_icon_only_p3qsm_403";
|
|
42
|
+
const online = "_online_p3qsm_412";
|
|
43
|
+
const away = "_away_p3qsm_416";
|
|
44
|
+
const offline = "_offline_p3qsm_420";
|
|
45
|
+
const busy = "_busy_p3qsm_424";
|
|
46
|
+
const dot = "_dot_p3qsm_428";
|
|
47
|
+
const styles = {
|
|
48
|
+
avatar,
|
|
49
|
+
xs,
|
|
50
|
+
small,
|
|
51
|
+
medium,
|
|
52
|
+
large,
|
|
53
|
+
xl,
|
|
54
|
+
circle,
|
|
55
|
+
rounded,
|
|
56
|
+
square,
|
|
57
|
+
outline,
|
|
58
|
+
shadowNone,
|
|
59
|
+
shadowLight,
|
|
60
|
+
shadowMedium,
|
|
61
|
+
shadowStrong,
|
|
62
|
+
shadowIntense,
|
|
63
|
+
clickable,
|
|
64
|
+
clear,
|
|
65
|
+
primary,
|
|
66
|
+
secondary,
|
|
67
|
+
tertiary,
|
|
68
|
+
quaternary,
|
|
69
|
+
success,
|
|
70
|
+
error,
|
|
71
|
+
warning,
|
|
72
|
+
disabled,
|
|
73
|
+
image,
|
|
74
|
+
initials,
|
|
75
|
+
fallback_icon,
|
|
76
|
+
status,
|
|
77
|
+
topLeft,
|
|
78
|
+
topRight,
|
|
79
|
+
bottomLeft,
|
|
80
|
+
bottomRight,
|
|
81
|
+
icon_only,
|
|
82
|
+
online,
|
|
83
|
+
away,
|
|
84
|
+
offline,
|
|
85
|
+
busy,
|
|
86
|
+
dot
|
|
87
|
+
};
|
|
8
88
|
const getInitials = (name) => {
|
|
9
89
|
var _a, _b, _c;
|
|
10
90
|
const words = name.trim().split(/\s+/);
|
|
@@ -242,86 +322,6 @@ const AvatarBase = forwardRef(function AvatarBase2({
|
|
|
242
322
|
);
|
|
243
323
|
});
|
|
244
324
|
AvatarBase.displayName = "AvatarBase";
|
|
245
|
-
const avatar = "_avatar_p3qsm_68";
|
|
246
|
-
const xs = "_xs_p3qsm_85";
|
|
247
|
-
const small = "_small_p3qsm_90";
|
|
248
|
-
const medium = "_medium_p3qsm_95";
|
|
249
|
-
const large = "_large_p3qsm_100";
|
|
250
|
-
const xl = "_xl_p3qsm_105";
|
|
251
|
-
const circle = "_circle_p3qsm_110";
|
|
252
|
-
const rounded = "_rounded_p3qsm_113";
|
|
253
|
-
const square = "_square_p3qsm_116";
|
|
254
|
-
const outline = "_outline_p3qsm_119";
|
|
255
|
-
const shadowNone = "_shadowNone_p3qsm_122";
|
|
256
|
-
const shadowLight = "_shadowLight_p3qsm_125";
|
|
257
|
-
const shadowMedium = "_shadowMedium_p3qsm_128";
|
|
258
|
-
const shadowStrong = "_shadowStrong_p3qsm_131";
|
|
259
|
-
const shadowIntense = "_shadowIntense_p3qsm_134";
|
|
260
|
-
const clickable = "_clickable_p3qsm_137";
|
|
261
|
-
const clear = "_clear_p3qsm_147";
|
|
262
|
-
const primary = "_primary_p3qsm_166";
|
|
263
|
-
const secondary = "_secondary_p3qsm_188";
|
|
264
|
-
const tertiary = "_tertiary_p3qsm_210";
|
|
265
|
-
const quaternary = "_quaternary_p3qsm_232";
|
|
266
|
-
const success = "_success_p3qsm_275";
|
|
267
|
-
const error = "_error_p3qsm_297";
|
|
268
|
-
const warning = "_warning_p3qsm_319";
|
|
269
|
-
const disabled = "_disabled_p3qsm_341";
|
|
270
|
-
const image = "_image_p3qsm_351";
|
|
271
|
-
const initials = "_initials_p3qsm_360";
|
|
272
|
-
const fallback_icon = "_fallback_icon_p3qsm_369";
|
|
273
|
-
const status = "_status_p3qsm_376";
|
|
274
|
-
const topLeft = "_topLeft_p3qsm_387";
|
|
275
|
-
const topRight = "_topRight_p3qsm_391";
|
|
276
|
-
const bottomLeft = "_bottomLeft_p3qsm_395";
|
|
277
|
-
const bottomRight = "_bottomRight_p3qsm_399";
|
|
278
|
-
const icon_only = "_icon_only_p3qsm_403";
|
|
279
|
-
const online = "_online_p3qsm_412";
|
|
280
|
-
const away = "_away_p3qsm_416";
|
|
281
|
-
const offline = "_offline_p3qsm_420";
|
|
282
|
-
const busy = "_busy_p3qsm_424";
|
|
283
|
-
const dot = "_dot_p3qsm_428";
|
|
284
|
-
const styles = {
|
|
285
|
-
avatar,
|
|
286
|
-
xs,
|
|
287
|
-
small,
|
|
288
|
-
medium,
|
|
289
|
-
large,
|
|
290
|
-
xl,
|
|
291
|
-
circle,
|
|
292
|
-
rounded,
|
|
293
|
-
square,
|
|
294
|
-
outline,
|
|
295
|
-
shadowNone,
|
|
296
|
-
shadowLight,
|
|
297
|
-
shadowMedium,
|
|
298
|
-
shadowStrong,
|
|
299
|
-
shadowIntense,
|
|
300
|
-
clickable,
|
|
301
|
-
clear,
|
|
302
|
-
primary,
|
|
303
|
-
secondary,
|
|
304
|
-
tertiary,
|
|
305
|
-
quaternary,
|
|
306
|
-
success,
|
|
307
|
-
error,
|
|
308
|
-
warning,
|
|
309
|
-
disabled,
|
|
310
|
-
image,
|
|
311
|
-
initials,
|
|
312
|
-
fallback_icon,
|
|
313
|
-
status,
|
|
314
|
-
topLeft,
|
|
315
|
-
topRight,
|
|
316
|
-
bottomLeft,
|
|
317
|
-
bottomRight,
|
|
318
|
-
icon_only,
|
|
319
|
-
online,
|
|
320
|
-
away,
|
|
321
|
-
offline,
|
|
322
|
-
busy,
|
|
323
|
-
dot
|
|
324
|
-
};
|
|
325
325
|
const Avatar = forwardRef(
|
|
326
326
|
(props, ref) => /* @__PURE__ */ jsx(
|
|
327
327
|
AvatarBase,
|
|
@@ -338,4 +338,4 @@ Avatar.displayName = "Avatar";
|
|
|
338
338
|
export {
|
|
339
339
|
Avatar as A
|
|
340
340
|
};
|
|
341
|
-
//# sourceMappingURL=Avatar-
|
|
341
|
+
//# sourceMappingURL=Avatar-DymaVXDv.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Avatar-nnjhILk-.js","sources":["../../src/utils/getInitials.ts","../../src/Icons/UserIcon.tsx","../../src/components/Avatar/AvatarBase.tsx","../../src/components/Avatar/next/Avatar.tsx"],"sourcesContent":["/**\r\n * Returns the initials from a given full name string.\r\n *\r\n * Extracts the first character from the first word and the first character of the second word (if available).\r\n * If only one word is provided, it uses the first two characters of that word as a fallback.\r\n * If no valid characters are found, it returns \"?\".\r\n *\r\n * @param {string} name - The full name to extract initials from.\r\n * @returns {string} A string of up to two uppercase initials, or \"?\" if the input is empty or invalid.\r\n *\r\n * @example\r\n * getInitials(\"John Doe\"); // \"JD\"\r\n * getInitials(\"Alice\"); // \"AL\"\r\n * getInitials(\" \"); // \"?\"\r\n */\r\nexport const getInitials = (name: string): string => {\r\n const words = name.trim().split(/\\s+/);\r\n const first = words[0]?.[0] || \"\";\r\n const second = words[1]?.[0] || words[0]?.[1] || \"\";\r\n return (first + second).toUpperCase() || \"?\";\r\n};\r\n","const FallbackUserIcon: 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=\"M5 20V19C5 15.134 8.13401 12 12 12V12C15.866 12 19 15.134 19 19V20\"\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=\"M12 12C14.2091 12 16 10.2091 16 8C16 5.79086 14.2091 4 12 4C9.79086 4 8 5.79086 8 8C8 10.2091 9.79086 12 12 12Z\"\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 FallbackUserIcon;\r\n","import React, {\r\n useMemo,\r\n useState,\r\n MouseEvent,\r\n AnchorHTMLAttributes,\r\n ButtonHTMLAttributes,\r\n forwardRef,\r\n useId,\r\n} from \"react\";\r\nimport { AvatarBaseProps } from \"./Avatar.types\";\r\nimport { getInitials } from \"../../utils/getInitials\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport { FallbackUserIcon } from \"../../Icons/index\";\r\nimport { capitalize } from \"../../utils/capitalize\";\r\nimport {\r\n getDefaultShadow,\r\n getDefaultSize,\r\n getDefaultTheme,\r\n} from \"../../config/boreal-style-config\";\r\n\r\nexport const AvatarBase = forwardRef<\r\n HTMLButtonElement | HTMLAnchorElement,\r\n AvatarBaseProps\r\n>(function AvatarBase(\r\n {\r\n src,\r\n alt,\r\n name = \"\",\r\n label,\r\n onClick,\r\n disabled = false,\r\n href,\r\n status,\r\n statusLabel,\r\n statusIcon,\r\n statusPosition = \"bottomRight\",\r\n fallback,\r\n children,\r\n size = getDefaultSize(),\r\n shadow = getDefaultShadow(),\r\n shape = \"circle\",\r\n outline = false,\r\n theme = getDefaultTheme(),\r\n state = \"\",\r\n className = \"\",\r\n priority = false,\r\n ImageComponent = \"img\",\r\n LinkComponent = \"a\",\r\n classMap,\r\n role,\r\n \"aria-label\": ariaLabel,\r\n \"aria-labelledby\": ariaLabelledBy,\r\n \"aria-describedby\": ariaDescribedBy,\r\n \"aria-current\": ariaCurrent,\r\n \"data-testid\": testId = \"avatar\",\r\n ...rest\r\n },\r\n ref,\r\n) {\r\n const [imgError, setImgError] = useState(false);\r\n const generatedStatusId = useId();\r\n\r\n const computedLabel = label || alt || name || \"User avatar\";\r\n\r\n const describedBy = useMemo(() => {\r\n const ids: string[] = [];\r\n\r\n if (ariaDescribedBy) {\r\n ids.push(ariaDescribedBy);\r\n }\r\n\r\n if (statusLabel && (status || statusIcon)) {\r\n ids.push(generatedStatusId);\r\n }\r\n\r\n return ids.length > 0 ? ids.join(\" \") : undefined;\r\n }, [ariaDescribedBy, statusLabel, status, statusIcon, generatedStatusId]);\r\n\r\n const linkAria = {\r\n role,\r\n \"aria-label\": ariaLabelledBy ? undefined : (ariaLabel ?? computedLabel),\r\n \"aria-labelledby\": ariaLabelledBy,\r\n \"aria-describedby\": describedBy,\r\n \"aria-current\": ariaCurrent,\r\n \"aria-disabled\": disabled || undefined,\r\n } as const;\r\n\r\n const buttonAria = {\r\n role,\r\n \"aria-label\": ariaLabelledBy ? undefined : (ariaLabel ?? computedLabel),\r\n \"aria-labelledby\": ariaLabelledBy,\r\n \"aria-describedby\": describedBy,\r\n \"aria-current\": ariaCurrent,\r\n } as const;\r\n\r\n const fallbackContent =\r\n fallback ??\r\n (name ? (\r\n getInitials(name)\r\n ) : (\r\n <FallbackUserIcon className={classMap.fallback_icon} />\r\n ));\r\n\r\n const combinedClassName = useMemo(\r\n () =>\r\n combineClassNames(\r\n classMap.avatar,\r\n classMap[theme],\r\n classMap[state],\r\n classMap[shape],\r\n classMap[size],\r\n shadow && classMap[`shadow${capitalize(shadow)}`],\r\n disabled && classMap.disabled,\r\n outline && classMap.outline,\r\n onClick && classMap.clickable,\r\n className,\r\n ),\r\n [\r\n theme,\r\n state,\r\n shape,\r\n size,\r\n shadow,\r\n disabled,\r\n outline,\r\n onClick,\r\n className,\r\n classMap,\r\n ],\r\n );\r\n\r\n const isNextImage = typeof ImageComponent !== \"string\";\r\n\r\n const avatarContent =\r\n !imgError && src ? (\r\n <ImageComponent\r\n src={src}\r\n alt={alt || computedLabel}\r\n className={classMap.image}\r\n onError={() => setImgError(true)}\r\n {...(priority\r\n ? { loading: \"eager\" as const }\r\n : { loading: \"lazy\" as const })}\r\n {...(isNextImage ? { fill: true } : {})}\r\n data-testid={testId ? `${testId}-image` : undefined}\r\n />\r\n ) : (\r\n <span\r\n className={classMap.initials}\r\n title={computedLabel}\r\n aria-hidden={children ? true : undefined}\r\n data-testid={testId ? `${testId}-initials` : undefined}\r\n >\r\n {fallbackContent}\r\n </span>\r\n );\r\n\r\n const statusIndicator = (status || statusIcon) && (\r\n <>\r\n <span\r\n className={combineClassNames(\r\n classMap.status,\r\n status && classMap[status],\r\n statusIcon ? classMap.icon_only : undefined,\r\n classMap[statusPosition],\r\n )}\r\n aria-hidden=\"true\"\r\n data-testid={testId ? `${testId}-status` : undefined}\r\n >\r\n {statusIcon || <span className={classMap.dot} />}\r\n </span>\r\n\r\n {statusLabel ? (\r\n <span\r\n id={generatedStatusId}\r\n className={classMap.srOnly}\r\n data-testid={testId ? `${testId}-status-label` : undefined}\r\n >\r\n {statusLabel}\r\n </span>\r\n ) : null}\r\n </>\r\n );\r\n\r\n const content = (\r\n <>\r\n {children ?? avatarContent}\r\n {statusIndicator}\r\n </>\r\n );\r\n\r\n const handleClick = (e: MouseEvent<HTMLElement>) => {\r\n if (disabled) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n return;\r\n }\r\n\r\n onClick?.(e as MouseEvent<HTMLButtonElement | HTMLAnchorElement>);\r\n };\r\n\r\n if (href) {\r\n const isHttp = /^https?:\\/\\//i.test(href);\r\n\r\n return LinkComponent === \"a\" ? (\r\n <a\r\n ref={ref as React.Ref<HTMLAnchorElement>}\r\n href={disabled ? undefined : href}\r\n className={combinedClassName}\r\n onClick={handleClick}\r\n data-testid={testId ? `${testId}-main` : undefined}\r\n target={isHttp && !disabled ? \"_blank\" : undefined}\r\n rel={isHttp && !disabled ? \"noopener noreferrer\" : undefined}\r\n tabIndex={disabled ? -1 : 0}\r\n {...linkAria}\r\n {...(rest as AnchorHTMLAttributes<HTMLAnchorElement>)}\r\n >\r\n {content}\r\n </a>\r\n ) : (\r\n <LinkComponent\r\n ref={ref}\r\n href={href}\r\n className={combinedClassName}\r\n onClick={handleClick}\r\n data-testid={testId ? `${testId}-main` : undefined}\r\n tabIndex={disabled ? -1 : 0}\r\n {...linkAria}\r\n {...(rest as Record<string, unknown>)}\r\n >\r\n {content}\r\n </LinkComponent>\r\n );\r\n }\r\n\r\n return (\r\n <button\r\n ref={ref as React.Ref<HTMLButtonElement>}\r\n type=\"button\"\r\n className={combinedClassName}\r\n onClick={handleClick}\r\n disabled={disabled}\r\n data-testid={testId ? `${testId}-main` : undefined}\r\n {...buttonAria}\r\n {...(rest as ButtonHTMLAttributes<HTMLButtonElement>)}\r\n >\r\n {content}\r\n </button>\r\n );\r\n});\r\n\r\nAvatarBase.displayName = \"AvatarBase\";\r\n","\"use client\";\r\n\r\nimport { forwardRef } from \"react\";\r\nimport Image from \"next/image\";\r\nimport Link from \"next/link\";\r\nimport { AvatarProps } from \"../Avatar.types\";\r\nimport { AvatarBase } from \"../AvatarBase\";\r\nimport styles from \"./Avatar.module.scss\";\r\n\r\nconst Avatar = forwardRef<HTMLAnchorElement | HTMLButtonElement, AvatarProps>(\r\n (props, ref) => (\r\n <AvatarBase\r\n {...props}\r\n ImageComponent={Image}\r\n LinkComponent={Link}\r\n classMap={styles}\r\n ref={ref}\r\n />\r\n )\r\n);\r\nAvatar.displayName = \"Avatar\";\r\nexport default Avatar;\r\n"],"names":["AvatarBase","disabled","status","outline"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Avatar-DymaVXDv.js","sources":["../../src/utils/getInitials.ts","../../src/Icons/UserIcon.tsx","../../src/components/Avatar/AvatarBase.tsx","../../src/components/Avatar/next/Avatar.tsx"],"sourcesContent":["/**\r\n * Returns the initials from a given full name string.\r\n *\r\n * Extracts the first character from the first word and the first character of the second word (if available).\r\n * If only one word is provided, it uses the first two characters of that word as a fallback.\r\n * If no valid characters are found, it returns \"?\".\r\n *\r\n * @param {string} name - The full name to extract initials from.\r\n * @returns {string} A string of up to two uppercase initials, or \"?\" if the input is empty or invalid.\r\n *\r\n * @example\r\n * getInitials(\"John Doe\"); // \"JD\"\r\n * getInitials(\"Alice\"); // \"AL\"\r\n * getInitials(\" \"); // \"?\"\r\n */\r\nexport const getInitials = (name: string): string => {\r\n const words = name.trim().split(/\\s+/);\r\n const first = words[0]?.[0] || \"\";\r\n const second = words[1]?.[0] || words[0]?.[1] || \"\";\r\n return (first + second).toUpperCase() || \"?\";\r\n};\r\n","const FallbackUserIcon: 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=\"M5 20V19C5 15.134 8.13401 12 12 12V12C15.866 12 19 15.134 19 19V20\"\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=\"M12 12C14.2091 12 16 10.2091 16 8C16 5.79086 14.2091 4 12 4C9.79086 4 8 5.79086 8 8C8 10.2091 9.79086 12 12 12Z\"\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 FallbackUserIcon;\r\n","import React, {\r\n useMemo,\r\n useState,\r\n MouseEvent,\r\n AnchorHTMLAttributes,\r\n ButtonHTMLAttributes,\r\n forwardRef,\r\n useId,\r\n} from \"react\";\r\nimport { AvatarBaseProps } from \"./Avatar.types\";\r\nimport { getInitials } from \"../../utils/getInitials\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport { FallbackUserIcon } from \"../../Icons/index\";\r\nimport { capitalize } from \"../../utils/capitalize\";\r\nimport {\r\n getDefaultShadow,\r\n getDefaultSize,\r\n getDefaultTheme,\r\n} from \"../../config/boreal-style-config\";\r\n\r\nexport const AvatarBase = forwardRef<\r\n HTMLButtonElement | HTMLAnchorElement,\r\n AvatarBaseProps\r\n>(function AvatarBase(\r\n {\r\n src,\r\n alt,\r\n name = \"\",\r\n label,\r\n onClick,\r\n disabled = false,\r\n href,\r\n status,\r\n statusLabel,\r\n statusIcon,\r\n statusPosition = \"bottomRight\",\r\n fallback,\r\n children,\r\n size = getDefaultSize(),\r\n shadow = getDefaultShadow(),\r\n shape = \"circle\",\r\n outline = false,\r\n theme = getDefaultTheme(),\r\n state = \"\",\r\n className = \"\",\r\n priority = false,\r\n ImageComponent = \"img\",\r\n LinkComponent = \"a\",\r\n classMap,\r\n role,\r\n \"aria-label\": ariaLabel,\r\n \"aria-labelledby\": ariaLabelledBy,\r\n \"aria-describedby\": ariaDescribedBy,\r\n \"aria-current\": ariaCurrent,\r\n \"data-testid\": testId = \"avatar\",\r\n ...rest\r\n },\r\n ref,\r\n) {\r\n const [imgError, setImgError] = useState(false);\r\n const generatedStatusId = useId();\r\n\r\n const computedLabel = label || alt || name || \"User avatar\";\r\n\r\n const describedBy = useMemo(() => {\r\n const ids: string[] = [];\r\n\r\n if (ariaDescribedBy) {\r\n ids.push(ariaDescribedBy);\r\n }\r\n\r\n if (statusLabel && (status || statusIcon)) {\r\n ids.push(generatedStatusId);\r\n }\r\n\r\n return ids.length > 0 ? ids.join(\" \") : undefined;\r\n }, [ariaDescribedBy, statusLabel, status, statusIcon, generatedStatusId]);\r\n\r\n const linkAria = {\r\n role,\r\n \"aria-label\": ariaLabelledBy ? undefined : (ariaLabel ?? computedLabel),\r\n \"aria-labelledby\": ariaLabelledBy,\r\n \"aria-describedby\": describedBy,\r\n \"aria-current\": ariaCurrent,\r\n \"aria-disabled\": disabled || undefined,\r\n } as const;\r\n\r\n const buttonAria = {\r\n role,\r\n \"aria-label\": ariaLabelledBy ? undefined : (ariaLabel ?? computedLabel),\r\n \"aria-labelledby\": ariaLabelledBy,\r\n \"aria-describedby\": describedBy,\r\n \"aria-current\": ariaCurrent,\r\n } as const;\r\n\r\n const fallbackContent =\r\n fallback ??\r\n (name ? (\r\n getInitials(name)\r\n ) : (\r\n <FallbackUserIcon className={classMap.fallback_icon} />\r\n ));\r\n\r\n const combinedClassName = useMemo(\r\n () =>\r\n combineClassNames(\r\n classMap.avatar,\r\n classMap[theme],\r\n classMap[state],\r\n classMap[shape],\r\n classMap[size],\r\n shadow && classMap[`shadow${capitalize(shadow)}`],\r\n disabled && classMap.disabled,\r\n outline && classMap.outline,\r\n onClick && classMap.clickable,\r\n className,\r\n ),\r\n [\r\n theme,\r\n state,\r\n shape,\r\n size,\r\n shadow,\r\n disabled,\r\n outline,\r\n onClick,\r\n className,\r\n classMap,\r\n ],\r\n );\r\n\r\n const isNextImage = typeof ImageComponent !== \"string\";\r\n\r\n const avatarContent =\r\n !imgError && src ? (\r\n <ImageComponent\r\n src={src}\r\n alt={alt || computedLabel}\r\n className={classMap.image}\r\n onError={() => setImgError(true)}\r\n {...(priority\r\n ? { loading: \"eager\" as const }\r\n : { loading: \"lazy\" as const })}\r\n {...(isNextImage ? { fill: true } : {})}\r\n data-testid={testId ? `${testId}-image` : undefined}\r\n />\r\n ) : (\r\n <span\r\n className={classMap.initials}\r\n title={computedLabel}\r\n aria-hidden={children ? true : undefined}\r\n data-testid={testId ? `${testId}-initials` : undefined}\r\n >\r\n {fallbackContent}\r\n </span>\r\n );\r\n\r\n const statusIndicator = (status || statusIcon) && (\r\n <>\r\n <span\r\n className={combineClassNames(\r\n classMap.status,\r\n status && classMap[status],\r\n statusIcon ? classMap.icon_only : undefined,\r\n classMap[statusPosition],\r\n )}\r\n aria-hidden=\"true\"\r\n data-testid={testId ? `${testId}-status` : undefined}\r\n >\r\n {statusIcon || <span className={classMap.dot} />}\r\n </span>\r\n\r\n {statusLabel ? (\r\n <span\r\n id={generatedStatusId}\r\n className={classMap.srOnly}\r\n data-testid={testId ? `${testId}-status-label` : undefined}\r\n >\r\n {statusLabel}\r\n </span>\r\n ) : null}\r\n </>\r\n );\r\n\r\n const content = (\r\n <>\r\n {children ?? avatarContent}\r\n {statusIndicator}\r\n </>\r\n );\r\n\r\n const handleClick = (e: MouseEvent<HTMLElement>) => {\r\n if (disabled) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n return;\r\n }\r\n\r\n onClick?.(e as MouseEvent<HTMLButtonElement | HTMLAnchorElement>);\r\n };\r\n\r\n if (href) {\r\n const isHttp = /^https?:\\/\\//i.test(href);\r\n\r\n return LinkComponent === \"a\" ? (\r\n <a\r\n ref={ref as React.Ref<HTMLAnchorElement>}\r\n href={disabled ? undefined : href}\r\n className={combinedClassName}\r\n onClick={handleClick}\r\n data-testid={testId ? `${testId}-main` : undefined}\r\n target={isHttp && !disabled ? \"_blank\" : undefined}\r\n rel={isHttp && !disabled ? \"noopener noreferrer\" : undefined}\r\n tabIndex={disabled ? -1 : 0}\r\n {...linkAria}\r\n {...(rest as AnchorHTMLAttributes<HTMLAnchorElement>)}\r\n >\r\n {content}\r\n </a>\r\n ) : (\r\n <LinkComponent\r\n ref={ref}\r\n href={href}\r\n className={combinedClassName}\r\n onClick={handleClick}\r\n data-testid={testId ? `${testId}-main` : undefined}\r\n tabIndex={disabled ? -1 : 0}\r\n {...linkAria}\r\n {...(rest as Record<string, unknown>)}\r\n >\r\n {content}\r\n </LinkComponent>\r\n );\r\n }\r\n\r\n return (\r\n <button\r\n ref={ref as React.Ref<HTMLButtonElement>}\r\n type=\"button\"\r\n className={combinedClassName}\r\n onClick={handleClick}\r\n disabled={disabled}\r\n data-testid={testId ? `${testId}-main` : undefined}\r\n {...buttonAria}\r\n {...(rest as ButtonHTMLAttributes<HTMLButtonElement>)}\r\n >\r\n {content}\r\n </button>\r\n );\r\n});\r\n\r\nAvatarBase.displayName = \"AvatarBase\";\r\n","\"use client\";\r\n\r\nimport { forwardRef } from \"react\";\r\nimport Image from \"next/image\";\r\nimport Link from \"next/link\";\r\nimport { AvatarProps } from \"../Avatar.types\";\r\nimport { AvatarBase } from \"../AvatarBase\";\r\nimport styles from \"./Avatar.module.scss\";\r\n\r\nconst Avatar = forwardRef<HTMLAnchorElement | HTMLButtonElement, AvatarProps>(\r\n (props, ref) => (\r\n <AvatarBase\r\n {...props}\r\n ImageComponent={Image}\r\n LinkComponent={Link}\r\n classMap={styles}\r\n ref={ref}\r\n />\r\n )\r\n);\r\nAvatar.displayName = \"Avatar\";\r\nexport default Avatar;\r\n"],"names":["AvatarBase","disabled","status","outline"],"mappings":"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"}
|
package/dist/next/Avatar.cjs.js
CHANGED