boreal-ui 0.0.46 → 0.0.48
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/{Card-CbGHr_tX.js → Card-BzpcEKgi.js} +52 -7
- package/dist/core/Card-BzpcEKgi.js.map +1 -0
- package/dist/core/{Card-De2epy0R.cjs → Card-D6SI33n_.cjs} +52 -7
- package/dist/core/Card-D6SI33n_.cjs.map +1 -0
- package/dist/core/Card.cjs.js +1 -1
- package/dist/core/Card.js +1 -1
- package/dist/core/boreal-ui.css +897 -429
- package/dist/core/index.cjs.js +1 -1
- package/dist/core/index.js +1 -1
- package/dist/next/{Accordion-DY243Bq9.js → Accordion-CrUmV-HM.js} +50 -50
- package/dist/next/{Accordion-DY243Bq9.js.map → Accordion-CrUmV-HM.js.map} +1 -1
- package/dist/next/{Accordion-BPWTEHym.cjs → Accordion-ugkSb5dI.cjs} +50 -50
- package/dist/next/{Accordion-BPWTEHym.cjs.map → Accordion-ugkSb5dI.cjs.map} +1 -1
- package/dist/next/Accordion.cjs.js +1 -1
- package/dist/next/Accordion.js +1 -1
- package/dist/next/{Breadcrumbs-DsGClIKb.cjs → Breadcrumbs-CrKRsQf3.cjs} +2 -2
- package/dist/next/{Breadcrumbs-DsGClIKb.cjs.map → Breadcrumbs-CrKRsQf3.cjs.map} +1 -1
- package/dist/next/{Breadcrumbs-BbvkRUhf.js → Breadcrumbs-ZK64MIGd.js} +2 -2
- package/dist/next/{Breadcrumbs-BbvkRUhf.js.map → Breadcrumbs-ZK64MIGd.js.map} +1 -1
- package/dist/next/Breadcrumbs.cjs.js +1 -1
- package/dist/next/Breadcrumbs.js +1 -1
- package/dist/next/{Button-B1Fh4G0_.cjs → Button-BI0LErYM.cjs} +46 -46
- package/dist/next/{Button-B1Fh4G0_.cjs.map → Button-BI0LErYM.cjs.map} +1 -1
- package/dist/next/{Button-uZ3xTOOt.js → Button-qs4m4zx0.js} +46 -46
- package/dist/next/{Button-uZ3xTOOt.js.map → Button-qs4m4zx0.js.map} +1 -1
- package/dist/next/Button.cjs.js +1 -1
- package/dist/next/Button.js +1 -1
- package/dist/next/{Card-DtBEZZKo.cjs → Card-09MMj3o2.cjs} +114 -69
- package/dist/next/Card-09MMj3o2.cjs.map +1 -0
- package/dist/next/{Card-CBUZ2myq.js → Card-Btw1d4gS.js} +114 -69
- package/dist/next/Card-Btw1d4gS.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-BJ0rBZLF.js → Checkbox-DBidsakA.js} +44 -44
- package/dist/next/{Checkbox-BJ0rBZLF.js.map → Checkbox-DBidsakA.js.map} +1 -1
- package/dist/next/{Checkbox-Ch7osD3y.cjs → Checkbox-hA321207.cjs} +44 -44
- package/dist/next/{Checkbox-Ch7osD3y.cjs.map → Checkbox-hA321207.cjs.map} +1 -1
- package/dist/next/{Chip-DRR-cqkp.cjs → Chip-BWTBVAIE.cjs} +50 -50
- package/dist/next/{Chip-DRR-cqkp.cjs.map → Chip-BWTBVAIE.cjs.map} +1 -1
- package/dist/next/{Chip-Be5EUH1C.js → Chip-D2mvW5L7.js} +50 -50
- package/dist/next/{Chip-Be5EUH1C.js.map → Chip-D2mvW5L7.js.map} +1 -1
- package/dist/next/Chip.cjs.js +1 -1
- package/dist/next/Chip.js +1 -1
- package/dist/next/{CircularProgress-Cp2pGFmc.cjs → CircularProgress-BegWxawm.cjs} +37 -37
- package/dist/next/{CircularProgress-Cp2pGFmc.cjs.map → CircularProgress-BegWxawm.cjs.map} +1 -1
- package/dist/next/{CircularProgress-BUqdguII.js → CircularProgress-wBHZUhul.js} +37 -37
- package/dist/next/{CircularProgress-BUqdguII.js.map → CircularProgress-wBHZUhul.js.map} +1 -1
- package/dist/next/CircularProgress.cjs.js +1 -1
- package/dist/next/CircularProgress.js +1 -1
- package/dist/next/{ColorPicker-ChWOekWP.js → ColorPicker-Dd9iz-i8.js} +38 -38
- package/dist/next/{ColorPicker-ChWOekWP.js.map → ColorPicker-Dd9iz-i8.js.map} +1 -1
- package/dist/next/{ColorPicker-BHtO2mbU.cjs → ColorPicker-Tla92spe.cjs} +38 -38
- package/dist/next/{ColorPicker-BHtO2mbU.cjs.map → ColorPicker-Tla92spe.cjs.map} +1 -1
- package/dist/next/ColorPicker.cjs.js +1 -1
- package/dist/next/ColorPicker.js +1 -1
- package/dist/next/{CommandPalette-BjVJ7Nbm.cjs → CommandPalette-BO6R9zQs.cjs} +41 -41
- package/dist/next/{CommandPalette-BjVJ7Nbm.cjs.map → CommandPalette-BO6R9zQs.cjs.map} +1 -1
- package/dist/next/{CommandPalette--heYmAFP.js → CommandPalette-CN0BiN0R.js} +41 -41
- package/dist/next/{CommandPalette--heYmAFP.js.map → CommandPalette-CN0BiN0R.js.map} +1 -1
- package/dist/next/CommandPalette.cjs.js +1 -1
- package/dist/next/CommandPalette.js +1 -1
- package/dist/next/{DataTable-DQ1QRyZw.cjs → DataTable-CUJXAkHe.cjs} +40 -40
- package/dist/next/{DataTable-DQ1QRyZw.cjs.map → DataTable-CUJXAkHe.cjs.map} +1 -1
- package/dist/next/{DataTable-CnvOkZrU.js → DataTable-mMStogSP.js} +40 -40
- package/dist/next/{DataTable-CnvOkZrU.js.map → DataTable-mMStogSP.js.map} +1 -1
- package/dist/next/DataTable.cjs.js +1 -1
- package/dist/next/DataTable.js +1 -1
- package/dist/next/{DateTimePicker-IvBWNgkK.js → DateTimePicker-CphfYmZ8.js} +46 -46
- package/dist/next/{DateTimePicker-IvBWNgkK.js.map → DateTimePicker-CphfYmZ8.js.map} +1 -1
- package/dist/next/{DateTimePicker-2M4AJJXm.cjs → DateTimePicker-DwS2xQNw.cjs} +46 -46
- package/dist/next/{DateTimePicker-2M4AJJXm.cjs.map → DateTimePicker-DwS2xQNw.cjs.map} +1 -1
- package/dist/next/DateTimePicker.cjs.js +1 -1
- package/dist/next/DateTimePicker.js +1 -1
- package/dist/next/{Divider-ByDYa4v6.cjs → Divider-cx8e80sS.cjs} +28 -28
- package/dist/next/{Divider-ByDYa4v6.cjs.map → Divider-cx8e80sS.cjs.map} +1 -1
- package/dist/next/{Divider-BCCzNbAE.js → Divider-kiaQzYbi.js} +28 -28
- package/dist/next/{Divider-BCCzNbAE.js.map → Divider-kiaQzYbi.js.map} +1 -1
- package/dist/next/Divider.cjs.js +1 -1
- package/dist/next/Divider.js +1 -1
- package/dist/next/{EmptyState-BXPBiWSB.cjs → EmptyState-Bb90F-ej.cjs} +2 -2
- package/dist/next/{EmptyState-BXPBiWSB.cjs.map → EmptyState-Bb90F-ej.cjs.map} +1 -1
- package/dist/next/{EmptyState-BIDMx4a4.js → EmptyState-Brd4N36F.js} +2 -2
- package/dist/next/{EmptyState-BIDMx4a4.js.map → EmptyState-Brd4N36F.js.map} +1 -1
- package/dist/next/EmptyState.cjs.js +1 -1
- package/dist/next/EmptyState.js +1 -1
- package/dist/next/{FileUpload-DFhiesLM.js → FileUpload-BMMpH1El.js} +51 -51
- package/dist/next/{FileUpload-DFhiesLM.js.map → FileUpload-BMMpH1El.js.map} +1 -1
- package/dist/next/{FileUpload-CM6236DE.cjs → FileUpload-Drm5_xEx.cjs} +51 -51
- package/dist/next/{FileUpload-CM6236DE.cjs.map → FileUpload-Drm5_xEx.cjs.map} +1 -1
- package/dist/next/FileUpload.cjs.js +1 -1
- package/dist/next/FileUpload.js +1 -1
- package/dist/next/{Footer-tvOL2tDS.js → Footer-B6_LG958.js} +40 -40
- package/dist/next/{Footer-tvOL2tDS.js.map → Footer-B6_LG958.js.map} +1 -1
- package/dist/next/{Footer-BuPAIf5A.cjs → Footer-EF2-ryvY.cjs} +40 -40
- package/dist/next/{Footer-BuPAIf5A.cjs.map → Footer-EF2-ryvY.cjs.map} +1 -1
- package/dist/next/Footer.cjs.js +1 -1
- package/dist/next/Footer.js +1 -1
- package/dist/next/{FormGroup-U3EwnB0M.cjs → FormGroup-Bg2QlTu7.cjs} +30 -30
- package/dist/next/{FormGroup-U3EwnB0M.cjs.map → FormGroup-Bg2QlTu7.cjs.map} +1 -1
- package/dist/next/{FormGroup-QfUhtyhx.js → FormGroup-DmQChKxA.js} +30 -30
- package/dist/next/{FormGroup-QfUhtyhx.js.map → FormGroup-DmQChKxA.js.map} +1 -1
- package/dist/next/FormGroup.cjs.js +1 -1
- package/dist/next/FormGroup.js +1 -1
- package/dist/next/MessagePopUp.cjs.js +1 -1
- package/dist/next/MessagePopUp.js +1 -1
- package/dist/next/{MessagePopup-CqLFabp5.cjs → MessagePopup-DsquzWSn.cjs} +2 -2
- package/dist/next/{MessagePopup-CqLFabp5.cjs.map → MessagePopup-DsquzWSn.cjs.map} +1 -1
- package/dist/next/{MessagePopup-fyidnJOS.js → MessagePopup-WUBGyJ_F.js} +2 -2
- package/dist/next/{MessagePopup-fyidnJOS.js.map → MessagePopup-WUBGyJ_F.js.map} +1 -1
- package/dist/next/{MetricBox-BjdAzOrZ.js → MetricBox-C5KGkv7l.js} +47 -47
- package/dist/next/{MetricBox-BjdAzOrZ.js.map → MetricBox-C5KGkv7l.js.map} +1 -1
- package/dist/next/{MetricBox-C3B6Bkcb.cjs → MetricBox-D8eBxQ59.cjs} +47 -47
- package/dist/next/{MetricBox-C3B6Bkcb.cjs.map → MetricBox-D8eBxQ59.cjs.map} +1 -1
- package/dist/next/MetricBox.cjs.js +1 -1
- package/dist/next/MetricBox.js +1 -1
- package/dist/next/{NavBar-v_ckzQIo.js → NavBar-CmvgkEZt.js} +37 -37
- package/dist/next/{NavBar-v_ckzQIo.js.map → NavBar-CmvgkEZt.js.map} +1 -1
- package/dist/next/{NavBar-Ds_02bAe.cjs → NavBar-DVEf0iJH.cjs} +37 -37
- package/dist/next/{NavBar-Ds_02bAe.cjs.map → NavBar-DVEf0iJH.cjs.map} +1 -1
- package/dist/next/NavBar.cjs.js +1 -1
- package/dist/next/NavBar.js +1 -1
- package/dist/next/{NotificationCenter-5m57ahdP.cjs → NotificationCenter-CtL6rozQ.cjs} +42 -42
- package/dist/next/{NotificationCenter-5m57ahdP.cjs.map → NotificationCenter-CtL6rozQ.cjs.map} +1 -1
- package/dist/next/{NotificationCenter-CUTBk_oe.js → NotificationCenter-CtM10CVj.js} +42 -42
- package/dist/next/{NotificationCenter-CUTBk_oe.js.map → NotificationCenter-CtM10CVj.js.map} +1 -1
- package/dist/next/NotificationCenter.cjs.js +1 -1
- package/dist/next/NotificationCenter.js +1 -1
- package/dist/next/{Pager-sZUYcImi.cjs → Pager-Bxxewb8I.cjs} +2 -2
- package/dist/next/{Pager-sZUYcImi.cjs.map → Pager-Bxxewb8I.cjs.map} +1 -1
- package/dist/next/{Pager-Cug0N3GP.js → Pager-D0Mw7o7v.js} +2 -2
- package/dist/next/{Pager-Cug0N3GP.js.map → Pager-D0Mw7o7v.js.map} +1 -1
- package/dist/next/Pager.cjs.js +1 -1
- package/dist/next/Pager.js +1 -1
- package/dist/next/{PopOver-ixERZLpM.cjs → PopOver-gQfgHe9e.cjs} +40 -40
- package/dist/next/{PopOver-ixERZLpM.cjs.map → PopOver-gQfgHe9e.cjs.map} +1 -1
- package/dist/next/{PopOver-CmPp9PkL.js → PopOver-qSTx5y8g.js} +40 -40
- package/dist/next/{PopOver-CmPp9PkL.js.map → PopOver-qSTx5y8g.js.map} +1 -1
- package/dist/next/PopOver.cjs.js +1 -1
- package/dist/next/PopOver.js +1 -1
- package/dist/next/{ProgressBar-C6zKbiq5.cjs → ProgressBar-BMuv0kis.cjs} +42 -42
- package/dist/next/{ProgressBar-C6zKbiq5.cjs.map → ProgressBar-BMuv0kis.cjs.map} +1 -1
- package/dist/next/{ProgressBar-BoU2HJv3.js → ProgressBar-DuaWQouO.js} +42 -42
- package/dist/next/{ProgressBar-BoU2HJv3.js.map → ProgressBar-DuaWQouO.js.map} +1 -1
- package/dist/next/ProgressBar.cjs.js +1 -1
- package/dist/next/ProgressBar.js +1 -1
- package/dist/next/{RadioButton-C14Rsx9o.js → RadioButton-CEvIACkL.js} +38 -38
- package/dist/next/{RadioButton-C14Rsx9o.js.map → RadioButton-CEvIACkL.js.map} +1 -1
- package/dist/next/{RadioButton-BCu934Uo.cjs → RadioButton-D6oyNmVU.cjs} +38 -38
- package/dist/next/{RadioButton-BCu934Uo.cjs.map → RadioButton-D6oyNmVU.cjs.map} +1 -1
- package/dist/next/RadioButton.cjs.js +1 -1
- package/dist/next/RadioButton.js +1 -1
- package/dist/next/{Rating-C9BgQANc.cjs → Rating-BbqxsFU9.cjs} +34 -34
- package/dist/next/{Rating-C9BgQANc.cjs.map → Rating-BbqxsFU9.cjs.map} +1 -1
- package/dist/next/{Rating-aheV3uZJ.js → Rating-umLbRaAb.js} +34 -34
- package/dist/next/{Rating-aheV3uZJ.js.map → Rating-umLbRaAb.js.map} +1 -1
- package/dist/next/Rating.cjs.js +1 -1
- package/dist/next/Rating.js +1 -1
- package/dist/next/{Skeleton-Dmz7m0dj.cjs → Skeleton-C6wW8eyR.cjs} +26 -26
- package/dist/next/{Skeleton-Dmz7m0dj.cjs.map → Skeleton-C6wW8eyR.cjs.map} +1 -1
- package/dist/next/{Skeleton-D8C29p3K.js → Skeleton-DC4LJ059.js} +26 -26
- package/dist/next/{Skeleton-D8C29p3K.js.map → Skeleton-DC4LJ059.js.map} +1 -1
- package/dist/next/Skeleton.cjs.js +1 -1
- package/dist/next/Skeleton.js +1 -1
- package/dist/next/{Slider-DQM9nV1P.cjs → Slider-g41Qvh6s.cjs} +43 -43
- package/dist/next/{Slider-DQM9nV1P.cjs.map → Slider-g41Qvh6s.cjs.map} +1 -1
- package/dist/next/{Slider-BOAgWYkH.js → Slider-wAbg8hOH.js} +43 -43
- package/dist/next/{Slider-BOAgWYkH.js.map → Slider-wAbg8hOH.js.map} +1 -1
- package/dist/next/Slider.cjs.js +1 -1
- package/dist/next/Slider.js +1 -1
- package/dist/next/{Spinner-BFAOf4tt.js → Spinner-D3OQ29U9.js} +37 -37
- package/dist/next/{Spinner-BFAOf4tt.js.map → Spinner-D3OQ29U9.js.map} +1 -1
- package/dist/next/{Spinner-0GZngKjG.cjs → Spinner-Y53Z6fwK.cjs} +37 -37
- package/dist/next/{Spinner-0GZngKjG.cjs.map → Spinner-Y53Z6fwK.cjs.map} +1 -1
- package/dist/next/Spinner.cjs.js +1 -1
- package/dist/next/Spinner.js +1 -1
- package/dist/next/{Stepper-DY95eGPo.js → Stepper-BvA_ZAho.js} +39 -39
- package/dist/next/{Stepper-DY95eGPo.js.map → Stepper-BvA_ZAho.js.map} +1 -1
- package/dist/next/{Stepper-CfWc5rhd.cjs → Stepper-D6X70Sr6.cjs} +39 -39
- package/dist/next/{Stepper-CfWc5rhd.cjs.map → Stepper-D6X70Sr6.cjs.map} +1 -1
- package/dist/next/Stepper.cjs.js +1 -1
- package/dist/next/Stepper.js +1 -1
- package/dist/next/{Tabs-DmrS_FUa.js → Tabs-Bur4oYVF.js} +44 -44
- package/dist/next/{Tabs-DmrS_FUa.js.map → Tabs-Bur4oYVF.js.map} +1 -1
- package/dist/next/{Tabs-D8Efg8wn.cjs → Tabs-D-5VRbfh.cjs} +44 -44
- package/dist/next/{Tabs-D8Efg8wn.cjs.map → Tabs-D-5VRbfh.cjs.map} +1 -1
- package/dist/next/Tabs.cjs.js +1 -1
- package/dist/next/Tabs.js +1 -1
- package/dist/next/{TagInput-CUK5umXl.js → TagInput-DKzxPiwU.js} +46 -46
- package/dist/next/{TagInput-CUK5umXl.js.map → TagInput-DKzxPiwU.js.map} +1 -1
- package/dist/next/{TagInput-B3SUHn0c.cjs → TagInput-DfNJiPKh.cjs} +46 -46
- package/dist/next/{TagInput-B3SUHn0c.cjs.map → TagInput-DfNJiPKh.cjs.map} +1 -1
- package/dist/next/TagInput.cjs.js +1 -1
- package/dist/next/TagInput.js +1 -1
- package/dist/next/{Toolbar-C45B_I44.cjs → Toolbar-PwnuYGDR.cjs} +34 -34
- package/dist/next/{Toolbar-C45B_I44.cjs.map → Toolbar-PwnuYGDR.cjs.map} +1 -1
- package/dist/next/{Toolbar-Dq1qqx4P.js → Toolbar-wbusnAUV.js} +34 -34
- package/dist/next/{Toolbar-Dq1qqx4P.js.map → Toolbar-wbusnAUV.js.map} +1 -1
- package/dist/next/Toolbar.cjs.js +1 -1
- package/dist/next/Toolbar.js +1 -1
- package/dist/next/{Tooltip-BXd5FXXv.cjs → Tooltip-DPFnMhUd.cjs} +39 -39
- package/dist/next/{Tooltip-BXd5FXXv.cjs.map → Tooltip-DPFnMhUd.cjs.map} +1 -1
- package/dist/next/{Tooltip-BHIA1zE1.js → Tooltip-_GVlUXAq.js} +39 -39
- package/dist/next/{Tooltip-BHIA1zE1.js.map → Tooltip-_GVlUXAq.js.map} +1 -1
- package/dist/next/Tooltip.cjs.js +1 -1
- package/dist/next/Tooltip.js +1 -1
- package/dist/next/boreal-ui.css +3123 -2751
- package/dist/next/index.cjs.js +56 -56
- package/dist/next/index.js +56 -56
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/types/components/Card/Card.types.d.ts +2 -1
- package/dist/types/components/Card/Card.types.d.ts.map +1 -1
- package/dist/types/components/Card/CardBase.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/core/Card-CbGHr_tX.js.map +0 -1
- package/dist/core/Card-De2epy0R.cjs.map +0 -1
- package/dist/next/Card-CBUZ2myq.js.map +0 -1
- package/dist/next/Card-DtBEZZKo.cjs.map +0 -1
|
@@ -177,38 +177,38 @@ const FooterBase = ({
|
|
|
177
177
|
] }) });
|
|
178
178
|
};
|
|
179
179
|
FooterBase.displayName = "FooterBase";
|
|
180
|
-
const noScroll = "
|
|
181
|
-
const errorMessage = "
|
|
182
|
-
const loadingContainer = "
|
|
183
|
-
const hideScrollbar = "
|
|
184
|
-
const sr_only = "
|
|
185
|
-
const footer = "
|
|
186
|
-
const primary = "
|
|
187
|
-
const secondary = "
|
|
188
|
-
const tertiary = "
|
|
189
|
-
const quaternary = "
|
|
190
|
-
const clear = "
|
|
191
|
-
const roundNone = "
|
|
192
|
-
const roundSmall = "
|
|
193
|
-
const roundMedium = "
|
|
194
|
-
const roundLarge = "
|
|
195
|
-
const roundFull = "
|
|
196
|
-
const shadowNone = "
|
|
197
|
-
const shadowLight = "
|
|
198
|
-
const shadowMedium = "
|
|
199
|
-
const shadowStrong = "
|
|
200
|
-
const shadowIntense = "
|
|
201
|
-
const attachmentStatic = "
|
|
202
|
-
const attachmentSticky = "
|
|
203
|
-
const attachmentFixed = "
|
|
204
|
-
const content = "
|
|
205
|
-
const left = "
|
|
206
|
-
const links = "
|
|
207
|
-
const logo = "
|
|
208
|
-
const social = "
|
|
209
|
-
const themeToggle = "
|
|
210
|
-
const spin = "
|
|
211
|
-
const pulse = "
|
|
180
|
+
const noScroll = "_noScroll_1r3ca_108";
|
|
181
|
+
const errorMessage = "_errorMessage_1r3ca_109";
|
|
182
|
+
const loadingContainer = "_loadingContainer_1r3ca_110";
|
|
183
|
+
const hideScrollbar = "_hideScrollbar_1r3ca_102";
|
|
184
|
+
const sr_only = "_sr_only_1r3ca_111";
|
|
185
|
+
const footer = "_footer_1r3ca_552";
|
|
186
|
+
const primary = "_primary_1r3ca_557";
|
|
187
|
+
const secondary = "_secondary_1r3ca_561";
|
|
188
|
+
const tertiary = "_tertiary_1r3ca_565";
|
|
189
|
+
const quaternary = "_quaternary_1r3ca_569";
|
|
190
|
+
const clear = "_clear_1r3ca_573";
|
|
191
|
+
const roundNone = "_roundNone_1r3ca_577";
|
|
192
|
+
const roundSmall = "_roundSmall_1r3ca_581";
|
|
193
|
+
const roundMedium = "_roundMedium_1r3ca_585";
|
|
194
|
+
const roundLarge = "_roundLarge_1r3ca_589";
|
|
195
|
+
const roundFull = "_roundFull_1r3ca_593";
|
|
196
|
+
const shadowNone = "_shadowNone_1r3ca_597";
|
|
197
|
+
const shadowLight = "_shadowLight_1r3ca_600";
|
|
198
|
+
const shadowMedium = "_shadowMedium_1r3ca_603";
|
|
199
|
+
const shadowStrong = "_shadowStrong_1r3ca_606";
|
|
200
|
+
const shadowIntense = "_shadowIntense_1r3ca_609";
|
|
201
|
+
const attachmentStatic = "_attachmentStatic_1r3ca_612";
|
|
202
|
+
const attachmentSticky = "_attachmentSticky_1r3ca_615";
|
|
203
|
+
const attachmentFixed = "_attachmentFixed_1r3ca_623";
|
|
204
|
+
const content = "_content_1r3ca_632";
|
|
205
|
+
const left = "_left_1r3ca_651";
|
|
206
|
+
const links = "_links_1r3ca_674";
|
|
207
|
+
const logo = "_logo_1r3ca_714";
|
|
208
|
+
const social = "_social_1r3ca_730";
|
|
209
|
+
const themeToggle = "_themeToggle_1r3ca_747";
|
|
210
|
+
const spin = "_spin_1r3ca_1";
|
|
211
|
+
const pulse = "_pulse_1r3ca_1";
|
|
212
212
|
const styles = {
|
|
213
213
|
noScroll,
|
|
214
214
|
errorMessage,
|
|
@@ -240,15 +240,15 @@ const styles = {
|
|
|
240
240
|
logo,
|
|
241
241
|
social,
|
|
242
242
|
themeToggle,
|
|
243
|
-
"fade-in": "_fade-
|
|
244
|
-
"slide-up": "_slide-
|
|
245
|
-
"spin-3d": "_spin-
|
|
243
|
+
"fade-in": "_fade-in_1r3ca_1",
|
|
244
|
+
"slide-up": "_slide-up_1r3ca_1",
|
|
245
|
+
"spin-3d": "_spin-3d_1r3ca_1",
|
|
246
246
|
spin,
|
|
247
247
|
pulse,
|
|
248
|
-
"fade-in-up": "_fade-in-
|
|
249
|
-
"progress-grow": "_progress-
|
|
250
|
-
"indeterminate-move": "_indeterminate-
|
|
251
|
-
"skeleton-loading": "_skeleton-
|
|
248
|
+
"fade-in-up": "_fade-in-up_1r3ca_1",
|
|
249
|
+
"progress-grow": "_progress-grow_1r3ca_1",
|
|
250
|
+
"indeterminate-move": "_indeterminate-move_1r3ca_1",
|
|
251
|
+
"skeleton-loading": "_skeleton-loading_1r3ca_1"
|
|
252
252
|
};
|
|
253
253
|
const Footer = (props) => {
|
|
254
254
|
return /* @__PURE__ */ require$$2.jsx(
|
|
@@ -266,4 +266,4 @@ const Footer = (props) => {
|
|
|
266
266
|
Footer.displayName = "Footer";
|
|
267
267
|
exports.Footer = Footer;
|
|
268
268
|
exports.UserThemeSettings = UserThemeSettings;
|
|
269
|
-
//# sourceMappingURL=Footer-
|
|
269
|
+
//# sourceMappingURL=Footer-EF2-ryvY.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Footer-BuPAIf5A.cjs","sources":["../../src/components/Select/ThemeSelect/next/ThemeSelect.tsx","../../src/components/Footer/FooterBase.tsx","../../src/components/Footer/next/Footer.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport { useContext, useMemo, forwardRef } from \"react\";\r\nimport { Select } from \"@/index.next\";\r\nimport { ThemeContext } from \"../../../../context/ThemeContext\";\r\nimport {\r\n getDefaultRounding,\r\n getDefaultShadow,\r\n getDefaultTheme,\r\n} from \"@/config/boreal-style-config\";\r\nimport { ThemeSelectProps } from \"../../Select.types\";\r\n\r\nconst UserThemeSettings = forwardRef<HTMLSelectElement, ThemeSelectProps>(\r\n (\r\n {\r\n theme = getDefaultTheme(),\r\n shadow = getDefaultShadow(),\r\n rounding = getDefaultRounding(),\r\n state = \"\",\r\n \"data-testid\": testId = \"theme-select\",\r\n },\r\n ref\r\n ) => {\r\n const ctx = useContext(ThemeContext);\r\n if (!ctx)\r\n throw new Error(\"ThemeContext is undefined. Wrap with ThemeProvider.\");\r\n\r\n const { selectedScheme, setSelectedScheme, schemes } = ctx;\r\n\r\n const options = useMemo(\r\n () =>\r\n schemes.map((scheme, index) => ({\r\n value: String(index),\r\n label: scheme.name,\r\n })),\r\n [schemes]\r\n );\r\n\r\n return (\r\n <div className={`control-container`}>\r\n <Select\r\n ref={ref}\r\n theme={theme}\r\n state={state}\r\n shadow={shadow}\r\n rounding={rounding}\r\n options={options}\r\n data-testid={testId}\r\n value={String(selectedScheme)}\r\n ariaLabel=\"Select Theme\"\r\n onChange={(value: string | number) =>\r\n setSelectedScheme(parseInt(String(value), 10))\r\n }\r\n />\r\n </div>\r\n );\r\n }\r\n);\r\nUserThemeSettings.displayName = \"UserThemeSettings\";\r\nexport default UserThemeSettings;\r\n","import React, { useMemo } from \"react\";\r\nimport { BaseFooterProps, LogoSource } from \"./Footer.types\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport { getDefaultTheme } from \"../../config/boreal-style-config\";\r\nimport { capitalize } from \"@/utils/capitalize\";\r\n\r\nconst FooterBase: React.FC<BaseFooterProps> = ({\r\n theme = getDefaultTheme(),\r\n attachment = \"static\",\r\n shadow = \"none\",\r\n rounding = \"none\",\r\n className = \"\",\r\n \"data-testid\": testId = \"footer\",\r\n copyright,\r\n links = [],\r\n logo,\r\n socialLinks = [],\r\n showThemeSelect = false,\r\n IconButton,\r\n ImageComponent = \"img\",\r\n ThemeSelect,\r\n classMap,\r\n LinkWrapper = ({ href, children, ...rest }) => (\r\n <a href={href} {...rest}>\r\n {children}\r\n </a>\r\n ),\r\n}) => {\r\n const footerClass = useMemo(\r\n () =>\r\n combineClassNames(\r\n classMap.footer,\r\n classMap[theme],\r\n shadow !== \"none\" && classMap[`shadow${capitalize(shadow)}`],\r\n rounding !== \"none\" && classMap[`round${capitalize(rounding)}`],\r\n classMap[`attachment${capitalize(attachment)}`],\r\n className\r\n ),\r\n [classMap, theme, shadow, rounding, attachment, className]\r\n );\r\n\r\n const isLogoImage = (\r\n v: unknown\r\n ): v is { src: string; width?: number; height?: number } =>\r\n typeof v === \"object\" &&\r\n v !== null &&\r\n \"src\" in (v as Record<string, unknown>);\r\n\r\n const isImgLike = typeof logo === \"string\" || isLogoImage(logo);\r\n\r\n const imgLogo = isImgLike\r\n ? typeof logo === \"string\"\r\n ? { src: logo }\r\n : logo\r\n : undefined;\r\n\r\n const logoSrc = imgLogo?.src;\r\n const logoW = imgLogo?.width ?? 20;\r\n const logoH = imgLogo?.height ?? 20;\r\n\r\n return (\r\n <footer className={footerClass} data-testid={testId} role=\"contentinfo\">\r\n <div className={classMap.content}>\r\n <div className={classMap.left} data-testid={`${testId}-left`}>\r\n {isImgLike && logoSrc ? (\r\n typeof ImageComponent === \"string\" ? (\r\n <img\r\n className={classMap.logo}\r\n data-testid={`${testId}-logo`}\r\n loading=\"lazy\"\r\n src={logoSrc}\r\n alt=\"Logo\"\r\n height={logoH}\r\n width={logoW}\r\n />\r\n ) : (\r\n <ImageComponent\r\n className={classMap.logo}\r\n data-testid={`${testId}-logo`}\r\n src={logoSrc}\r\n alt=\"Logo\"\r\n height={logoH}\r\n width={logoW}\r\n />\r\n )\r\n ) : (\r\n <span\r\n className={classMap.logo}\r\n role=\"img\"\r\n aria-label=\"Logo\"\r\n data-testid={`${testId}-logo`}\r\n >\r\n {\r\n logo as Exclude<\r\n LogoSource,\r\n string | { src: string; width?: number; height?: number }\r\n >\r\n }\r\n </span>\r\n )}\r\n\r\n {copyright && (\r\n <div\r\n className={classMap.copyright ?? classMap.left}\r\n data-testid={`${testId}-copyright`}\r\n >\r\n <p>{copyright}</p>\r\n </div>\r\n )}\r\n </div>\r\n\r\n {links.length > 0 && (\r\n <nav\r\n className={classMap.links}\r\n aria-label=\"Footer site links\"\r\n data-testid={`${testId}-nav`}\r\n >\r\n <ul>\r\n {links.map((link, i) => {\r\n const slug = (link.label || link.href || `link-${i}`)\r\n .toLowerCase()\r\n .replace(/\\s+/g, \"-\");\r\n return (\r\n <li key={`${link.href ?? slug}-${i}`}>\r\n <LinkWrapper\r\n href={link.href}\r\n className={classMap.link}\r\n data-testid={`${testId}-link-${slug}`}\r\n >\r\n {link.label}\r\n </LinkWrapper>\r\n </li>\r\n );\r\n })}\r\n </ul>\r\n </nav>\r\n )}\r\n\r\n {showThemeSelect && (\r\n <div\r\n className={classMap.themeToggle}\r\n data-testid={`${testId}-theme-select`}\r\n >\r\n <ThemeSelect theme=\"clear\" shadow=\"none\" aria-label=\"Theme\" />\r\n </div>\r\n )}\r\n\r\n {socialLinks.length > 0 && (\r\n <nav\r\n className={classMap.social}\r\n aria-label=\"Social media\"\r\n data-testid={`${testId}-social`}\r\n >\r\n {socialLinks.map((social, index) => (\r\n <IconButton\r\n key={`${social.href ?? social.title}-${index}`}\r\n icon={social.icon}\r\n href={social.href}\r\n isExternal\r\n shadow=\"none\"\r\n ariaLabel={social.title}\r\n title={social.title}\r\n theme=\"clear\"\r\n data-testid={`${testId}-social-${social.title.toLowerCase().replace(/\\s+/g, \"-\")}`}\r\n />\r\n ))}\r\n </nav>\r\n )}\r\n </div>\r\n </footer>\r\n );\r\n};\r\n\r\nFooterBase.displayName = \"FooterBase\";\r\nexport default FooterBase;\r\n","\"use client\";\r\n\r\nimport React from \"react\";\r\nimport FooterBase from \"../FooterBase\";\r\nimport { FooterProps } from \"../Footer.types\";\r\nimport { IconButton, ThemeSelect } from \"@/index.next\";\r\nimport Link from \"next/link\";\r\nimport styles from \"./Footer.module.scss\";\r\nimport Image from \"next/image\";\r\n\r\nconst Footer: React.FC<FooterProps> = (props) => {\r\n return (\r\n <FooterBase\r\n {...props}\r\n IconButton={IconButton}\r\n ImageComponent={Image}\r\n ThemeSelect={ThemeSelect}\r\n LinkWrapper={({ href, children, className, ...rest }) => (\r\n <Link href={href} className={className} {...rest}>\r\n {children}\r\n </Link>\r\n )}\r\n classMap={styles}\r\n />\r\n );\r\n};\r\nFooter.displayName = \"Footer\";\r\nexport default Footer;\r\n"],"names":["forwardRef","getDefaultTheme","getDefaultShadow","getDefaultRounding","useContext","ThemeContext","useMemo","jsx","Select","links","logo","IconButton","combineClassNames","capitalize","jsxs","link","social","Image","ThemeSelect","Link"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Footer-EF2-ryvY.cjs","sources":["../../src/components/Select/ThemeSelect/next/ThemeSelect.tsx","../../src/components/Footer/FooterBase.tsx","../../src/components/Footer/next/Footer.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport { useContext, useMemo, forwardRef } from \"react\";\r\nimport { Select } from \"@/index.next\";\r\nimport { ThemeContext } from \"../../../../context/ThemeContext\";\r\nimport {\r\n getDefaultRounding,\r\n getDefaultShadow,\r\n getDefaultTheme,\r\n} from \"@/config/boreal-style-config\";\r\nimport { ThemeSelectProps } from \"../../Select.types\";\r\n\r\nconst UserThemeSettings = forwardRef<HTMLSelectElement, ThemeSelectProps>(\r\n (\r\n {\r\n theme = getDefaultTheme(),\r\n shadow = getDefaultShadow(),\r\n rounding = getDefaultRounding(),\r\n state = \"\",\r\n \"data-testid\": testId = \"theme-select\",\r\n },\r\n ref\r\n ) => {\r\n const ctx = useContext(ThemeContext);\r\n if (!ctx)\r\n throw new Error(\"ThemeContext is undefined. Wrap with ThemeProvider.\");\r\n\r\n const { selectedScheme, setSelectedScheme, schemes } = ctx;\r\n\r\n const options = useMemo(\r\n () =>\r\n schemes.map((scheme, index) => ({\r\n value: String(index),\r\n label: scheme.name,\r\n })),\r\n [schemes]\r\n );\r\n\r\n return (\r\n <div className={`control-container`}>\r\n <Select\r\n ref={ref}\r\n theme={theme}\r\n state={state}\r\n shadow={shadow}\r\n rounding={rounding}\r\n options={options}\r\n data-testid={testId}\r\n value={String(selectedScheme)}\r\n ariaLabel=\"Select Theme\"\r\n onChange={(value: string | number) =>\r\n setSelectedScheme(parseInt(String(value), 10))\r\n }\r\n />\r\n </div>\r\n );\r\n }\r\n);\r\nUserThemeSettings.displayName = \"UserThemeSettings\";\r\nexport default UserThemeSettings;\r\n","import React, { useMemo } from \"react\";\r\nimport { BaseFooterProps, LogoSource } from \"./Footer.types\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport { getDefaultTheme } from \"../../config/boreal-style-config\";\r\nimport { capitalize } from \"@/utils/capitalize\";\r\n\r\nconst FooterBase: React.FC<BaseFooterProps> = ({\r\n theme = getDefaultTheme(),\r\n attachment = \"static\",\r\n shadow = \"none\",\r\n rounding = \"none\",\r\n className = \"\",\r\n \"data-testid\": testId = \"footer\",\r\n copyright,\r\n links = [],\r\n logo,\r\n socialLinks = [],\r\n showThemeSelect = false,\r\n IconButton,\r\n ImageComponent = \"img\",\r\n ThemeSelect,\r\n classMap,\r\n LinkWrapper = ({ href, children, ...rest }) => (\r\n <a href={href} {...rest}>\r\n {children}\r\n </a>\r\n ),\r\n}) => {\r\n const footerClass = useMemo(\r\n () =>\r\n combineClassNames(\r\n classMap.footer,\r\n classMap[theme],\r\n shadow !== \"none\" && classMap[`shadow${capitalize(shadow)}`],\r\n rounding !== \"none\" && classMap[`round${capitalize(rounding)}`],\r\n classMap[`attachment${capitalize(attachment)}`],\r\n className\r\n ),\r\n [classMap, theme, shadow, rounding, attachment, className]\r\n );\r\n\r\n const isLogoImage = (\r\n v: unknown\r\n ): v is { src: string; width?: number; height?: number } =>\r\n typeof v === \"object\" &&\r\n v !== null &&\r\n \"src\" in (v as Record<string, unknown>);\r\n\r\n const isImgLike = typeof logo === \"string\" || isLogoImage(logo);\r\n\r\n const imgLogo = isImgLike\r\n ? typeof logo === \"string\"\r\n ? { src: logo }\r\n : logo\r\n : undefined;\r\n\r\n const logoSrc = imgLogo?.src;\r\n const logoW = imgLogo?.width ?? 20;\r\n const logoH = imgLogo?.height ?? 20;\r\n\r\n return (\r\n <footer className={footerClass} data-testid={testId} role=\"contentinfo\">\r\n <div className={classMap.content}>\r\n <div className={classMap.left} data-testid={`${testId}-left`}>\r\n {isImgLike && logoSrc ? (\r\n typeof ImageComponent === \"string\" ? (\r\n <img\r\n className={classMap.logo}\r\n data-testid={`${testId}-logo`}\r\n loading=\"lazy\"\r\n src={logoSrc}\r\n alt=\"Logo\"\r\n height={logoH}\r\n width={logoW}\r\n />\r\n ) : (\r\n <ImageComponent\r\n className={classMap.logo}\r\n data-testid={`${testId}-logo`}\r\n src={logoSrc}\r\n alt=\"Logo\"\r\n height={logoH}\r\n width={logoW}\r\n />\r\n )\r\n ) : (\r\n <span\r\n className={classMap.logo}\r\n role=\"img\"\r\n aria-label=\"Logo\"\r\n data-testid={`${testId}-logo`}\r\n >\r\n {\r\n logo as Exclude<\r\n LogoSource,\r\n string | { src: string; width?: number; height?: number }\r\n >\r\n }\r\n </span>\r\n )}\r\n\r\n {copyright && (\r\n <div\r\n className={classMap.copyright ?? classMap.left}\r\n data-testid={`${testId}-copyright`}\r\n >\r\n <p>{copyright}</p>\r\n </div>\r\n )}\r\n </div>\r\n\r\n {links.length > 0 && (\r\n <nav\r\n className={classMap.links}\r\n aria-label=\"Footer site links\"\r\n data-testid={`${testId}-nav`}\r\n >\r\n <ul>\r\n {links.map((link, i) => {\r\n const slug = (link.label || link.href || `link-${i}`)\r\n .toLowerCase()\r\n .replace(/\\s+/g, \"-\");\r\n return (\r\n <li key={`${link.href ?? slug}-${i}`}>\r\n <LinkWrapper\r\n href={link.href}\r\n className={classMap.link}\r\n data-testid={`${testId}-link-${slug}`}\r\n >\r\n {link.label}\r\n </LinkWrapper>\r\n </li>\r\n );\r\n })}\r\n </ul>\r\n </nav>\r\n )}\r\n\r\n {showThemeSelect && (\r\n <div\r\n className={classMap.themeToggle}\r\n data-testid={`${testId}-theme-select`}\r\n >\r\n <ThemeSelect theme=\"clear\" shadow=\"none\" aria-label=\"Theme\" />\r\n </div>\r\n )}\r\n\r\n {socialLinks.length > 0 && (\r\n <nav\r\n className={classMap.social}\r\n aria-label=\"Social media\"\r\n data-testid={`${testId}-social`}\r\n >\r\n {socialLinks.map((social, index) => (\r\n <IconButton\r\n key={`${social.href ?? social.title}-${index}`}\r\n icon={social.icon}\r\n href={social.href}\r\n isExternal\r\n shadow=\"none\"\r\n ariaLabel={social.title}\r\n title={social.title}\r\n theme=\"clear\"\r\n data-testid={`${testId}-social-${social.title.toLowerCase().replace(/\\s+/g, \"-\")}`}\r\n />\r\n ))}\r\n </nav>\r\n )}\r\n </div>\r\n </footer>\r\n );\r\n};\r\n\r\nFooterBase.displayName = \"FooterBase\";\r\nexport default FooterBase;\r\n","\"use client\";\r\n\r\nimport React from \"react\";\r\nimport FooterBase from \"../FooterBase\";\r\nimport { FooterProps } from \"../Footer.types\";\r\nimport { IconButton, ThemeSelect } from \"@/index.next\";\r\nimport Link from \"next/link\";\r\nimport styles from \"./Footer.module.scss\";\r\nimport Image from \"next/image\";\r\n\r\nconst Footer: React.FC<FooterProps> = (props) => {\r\n return (\r\n <FooterBase\r\n {...props}\r\n IconButton={IconButton}\r\n ImageComponent={Image}\r\n ThemeSelect={ThemeSelect}\r\n LinkWrapper={({ href, children, className, ...rest }) => (\r\n <Link href={href} className={className} {...rest}>\r\n {children}\r\n </Link>\r\n )}\r\n classMap={styles}\r\n />\r\n );\r\n};\r\nFooter.displayName = \"Footer\";\r\nexport default Footer;\r\n"],"names":["forwardRef","getDefaultTheme","getDefaultShadow","getDefaultRounding","useContext","ThemeContext","useMemo","jsx","Select","links","logo","IconButton","combineClassNames","capitalize","jsxs","link","social","Image","ThemeSelect","Link"],"mappings":"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"}
|
package/dist/next/Footer.cjs.js
CHANGED
package/dist/next/Footer.js
CHANGED
|
@@ -114,28 +114,28 @@ const BaseFormGroup = ({
|
|
|
114
114
|
);
|
|
115
115
|
};
|
|
116
116
|
BaseFormGroup.displayName = "BaseFormGroup";
|
|
117
|
-
const noScroll = "
|
|
118
|
-
const errorMessage = "
|
|
119
|
-
const loadingContainer = "
|
|
120
|
-
const hideScrollbar = "
|
|
121
|
-
const sr_only = "
|
|
122
|
-
const wrapper = "
|
|
123
|
-
const label = "
|
|
124
|
-
const required = "
|
|
125
|
-
const inputWrapper = "
|
|
126
|
-
const inputField = "
|
|
127
|
-
const controller = "
|
|
128
|
-
const description = "
|
|
129
|
-
const horizontal = "
|
|
130
|
-
const formError = "
|
|
131
|
-
const xs = "
|
|
132
|
-
const form_group_input_wrapper = "
|
|
133
|
-
const small = "
|
|
134
|
-
const medium = "
|
|
135
|
-
const large = "
|
|
136
|
-
const xl = "
|
|
137
|
-
const spin = "
|
|
138
|
-
const pulse = "
|
|
117
|
+
const noScroll = "_noScroll_1q819_108";
|
|
118
|
+
const errorMessage = "_errorMessage_1q819_109";
|
|
119
|
+
const loadingContainer = "_loadingContainer_1q819_110";
|
|
120
|
+
const hideScrollbar = "_hideScrollbar_1q819_102";
|
|
121
|
+
const sr_only = "_sr_only_1q819_111";
|
|
122
|
+
const wrapper = "_wrapper_1q819_552";
|
|
123
|
+
const label = "_label_1q819_564";
|
|
124
|
+
const required = "_required_1q819_580";
|
|
125
|
+
const inputWrapper = "_inputWrapper_1q819_585";
|
|
126
|
+
const inputField = "_inputField_1q819_597";
|
|
127
|
+
const controller = "_controller_1q819_606";
|
|
128
|
+
const description = "_description_1q819_618";
|
|
129
|
+
const horizontal = "_horizontal_1q819_644";
|
|
130
|
+
const formError = "_formError_1q819_678";
|
|
131
|
+
const xs = "_xs_1q819_693";
|
|
132
|
+
const form_group_input_wrapper = "_form_group_input_wrapper_1q819_697";
|
|
133
|
+
const small = "_small_1q819_702";
|
|
134
|
+
const medium = "_medium_1q819_711";
|
|
135
|
+
const large = "_large_1q819_720";
|
|
136
|
+
const xl = "_xl_1q819_729";
|
|
137
|
+
const spin = "_spin_1q819_1";
|
|
138
|
+
const pulse = "_pulse_1q819_1";
|
|
139
139
|
const styles = {
|
|
140
140
|
noScroll,
|
|
141
141
|
errorMessage,
|
|
@@ -157,19 +157,19 @@ const styles = {
|
|
|
157
157
|
medium,
|
|
158
158
|
large,
|
|
159
159
|
xl,
|
|
160
|
-
"fade-in": "_fade-
|
|
161
|
-
"slide-up": "_slide-
|
|
162
|
-
"spin-3d": "_spin-
|
|
160
|
+
"fade-in": "_fade-in_1q819_1",
|
|
161
|
+
"slide-up": "_slide-up_1q819_1",
|
|
162
|
+
"spin-3d": "_spin-3d_1q819_1",
|
|
163
163
|
spin,
|
|
164
164
|
pulse,
|
|
165
|
-
"fade-in-up": "_fade-in-
|
|
166
|
-
"progress-grow": "_progress-
|
|
167
|
-
"indeterminate-move": "_indeterminate-
|
|
168
|
-
"skeleton-loading": "_skeleton-
|
|
165
|
+
"fade-in-up": "_fade-in-up_1q819_1",
|
|
166
|
+
"progress-grow": "_progress-grow_1q819_1",
|
|
167
|
+
"indeterminate-move": "_indeterminate-move_1q819_1",
|
|
168
|
+
"skeleton-loading": "_skeleton-loading_1q819_1"
|
|
169
169
|
};
|
|
170
170
|
const FormGroup = (props) => {
|
|
171
171
|
return /* @__PURE__ */ require$$2.jsx(BaseFormGroup, { ...props, classMap: styles });
|
|
172
172
|
};
|
|
173
173
|
FormGroup.displayName = "FormGroup";
|
|
174
174
|
exports.FormGroup = FormGroup;
|
|
175
|
-
//# sourceMappingURL=FormGroup-
|
|
175
|
+
//# sourceMappingURL=FormGroup-Bg2QlTu7.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormGroup-
|
|
1
|
+
{"version":3,"file":"FormGroup-Bg2QlTu7.cjs","sources":["../../src/components/FormGroup/FormGroupBase.tsx","../../src/components/FormGroup/next/FormGroup.tsx"],"sourcesContent":["import React, { useMemo, useId } from \"react\";\r\nimport { BaseFormGroupProps } from \"./FormGroup.types\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\n\r\nconst BaseFormGroup: React.FC<BaseFormGroupProps> = ({\r\n label,\r\n description,\r\n error,\r\n children,\r\n id,\r\n required = false,\r\n className = \"\",\r\n layout = \"vertical\",\r\n hideLabel = false,\r\n spacing = \"xs\",\r\n controller,\r\n \"data-testid\": testId = \"form-group\",\r\n classMap,\r\n}) => {\r\n const auto = useId();\r\n const baseId = id ?? `${testId}-${auto}`;\r\n const labelId = label ? `${baseId}-label` : undefined;\r\n const descriptionId = description ? `${baseId}-description` : undefined;\r\n const errorId = error ? `${baseId}-error` : undefined;\r\n\r\n const describedBy =\r\n [errorId, descriptionId].filter(Boolean).join(\" \") || undefined;\r\n\r\n const childrenArray = React.Children.toArray(children);\r\n\r\n const wrapperClass = useMemo(\r\n () =>\r\n combineClassNames(\r\n classMap.wrapper,\r\n classMap[layout],\r\n classMap[spacing],\r\n error && classMap.error,\r\n className\r\n ),\r\n [classMap, layout, spacing, error, className]\r\n );\r\n\r\n return (\r\n <div\r\n className={wrapperClass}\r\n role=\"group\"\r\n aria-labelledby={labelId}\r\n aria-describedby={describedBy}\r\n data-testid={testId}\r\n >\r\n {label && (\r\n <label\r\n id={labelId}\r\n {...(id ? { htmlFor: id } : {})}\r\n className={combineClassNames(classMap.label, hideLabel && \"sr_only\")}\r\n data-testid={`${testId}-label`}\r\n >\r\n {label}\r\n {required && (\r\n <span\r\n className={classMap.required}\r\n aria-hidden=\"true\"\r\n data-testid={`${testId}-required`}\r\n >\r\n *\r\n </span>\r\n )}\r\n </label>\r\n )}\r\n\r\n {childrenArray.map((child, index) => (\r\n <div\r\n key={index}\r\n className={classMap.inputWrapper}\r\n data-testid={`${testId}-wrapper-${index}`}\r\n >\r\n <div\r\n className={classMap.inputField}\r\n data-testid={`${testId}-input-field-${index}`}\r\n >\r\n {child}\r\n </div>\r\n\r\n {controller && index === 0 && (\r\n <div\r\n className={classMap.controller}\r\n data-testid={`${testId}-controller`}\r\n >\r\n {controller}\r\n </div>\r\n )}\r\n </div>\r\n ))}\r\n\r\n {description && !error && (\r\n <p\r\n id={descriptionId}\r\n className={classMap.description}\r\n data-testid={`${testId}-description`}\r\n >\r\n {description}\r\n </p>\r\n )}\r\n\r\n {error && (\r\n <p\r\n id={errorId}\r\n className={classMap.errorMessage}\r\n role=\"alert\"\r\n data-testid={`${testId}-error`}\r\n >\r\n {error}\r\n </p>\r\n )}\r\n </div>\r\n );\r\n};\r\n\r\nBaseFormGroup.displayName = \"BaseFormGroup\";\r\nexport default BaseFormGroup;\r\n","\"use client\";\r\n\r\nimport React from \"react\";\r\nimport BaseFormGroup from \"../FormGroupBase\";\r\nimport styles from \"./FormGroup.module.scss\";\r\nimport { FormGroupProps } from \"../FormGroup.types\";\r\n\r\nconst FormGroup: React.FC<FormGroupProps> = (props) => {\r\n return <BaseFormGroup {...props} classMap={styles} />;\r\n};\r\nFormGroup.displayName = \"FormGroup\";\r\nexport default FormGroup;\r\n"],"names":["label","description","required","controller","useId","useMemo","combineClassNames","jsxs","jsx"],"mappings":"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"}
|
|
@@ -113,28 +113,28 @@ const BaseFormGroup = ({
|
|
|
113
113
|
);
|
|
114
114
|
};
|
|
115
115
|
BaseFormGroup.displayName = "BaseFormGroup";
|
|
116
|
-
const noScroll = "
|
|
117
|
-
const errorMessage = "
|
|
118
|
-
const loadingContainer = "
|
|
119
|
-
const hideScrollbar = "
|
|
120
|
-
const sr_only = "
|
|
121
|
-
const wrapper = "
|
|
122
|
-
const label = "
|
|
123
|
-
const required = "
|
|
124
|
-
const inputWrapper = "
|
|
125
|
-
const inputField = "
|
|
126
|
-
const controller = "
|
|
127
|
-
const description = "
|
|
128
|
-
const horizontal = "
|
|
129
|
-
const formError = "
|
|
130
|
-
const xs = "
|
|
131
|
-
const form_group_input_wrapper = "
|
|
132
|
-
const small = "
|
|
133
|
-
const medium = "
|
|
134
|
-
const large = "
|
|
135
|
-
const xl = "
|
|
136
|
-
const spin = "
|
|
137
|
-
const pulse = "
|
|
116
|
+
const noScroll = "_noScroll_1q819_108";
|
|
117
|
+
const errorMessage = "_errorMessage_1q819_109";
|
|
118
|
+
const loadingContainer = "_loadingContainer_1q819_110";
|
|
119
|
+
const hideScrollbar = "_hideScrollbar_1q819_102";
|
|
120
|
+
const sr_only = "_sr_only_1q819_111";
|
|
121
|
+
const wrapper = "_wrapper_1q819_552";
|
|
122
|
+
const label = "_label_1q819_564";
|
|
123
|
+
const required = "_required_1q819_580";
|
|
124
|
+
const inputWrapper = "_inputWrapper_1q819_585";
|
|
125
|
+
const inputField = "_inputField_1q819_597";
|
|
126
|
+
const controller = "_controller_1q819_606";
|
|
127
|
+
const description = "_description_1q819_618";
|
|
128
|
+
const horizontal = "_horizontal_1q819_644";
|
|
129
|
+
const formError = "_formError_1q819_678";
|
|
130
|
+
const xs = "_xs_1q819_693";
|
|
131
|
+
const form_group_input_wrapper = "_form_group_input_wrapper_1q819_697";
|
|
132
|
+
const small = "_small_1q819_702";
|
|
133
|
+
const medium = "_medium_1q819_711";
|
|
134
|
+
const large = "_large_1q819_720";
|
|
135
|
+
const xl = "_xl_1q819_729";
|
|
136
|
+
const spin = "_spin_1q819_1";
|
|
137
|
+
const pulse = "_pulse_1q819_1";
|
|
138
138
|
const styles = {
|
|
139
139
|
noScroll,
|
|
140
140
|
errorMessage,
|
|
@@ -156,15 +156,15 @@ const styles = {
|
|
|
156
156
|
medium,
|
|
157
157
|
large,
|
|
158
158
|
xl,
|
|
159
|
-
"fade-in": "_fade-
|
|
160
|
-
"slide-up": "_slide-
|
|
161
|
-
"spin-3d": "_spin-
|
|
159
|
+
"fade-in": "_fade-in_1q819_1",
|
|
160
|
+
"slide-up": "_slide-up_1q819_1",
|
|
161
|
+
"spin-3d": "_spin-3d_1q819_1",
|
|
162
162
|
spin,
|
|
163
163
|
pulse,
|
|
164
|
-
"fade-in-up": "_fade-in-
|
|
165
|
-
"progress-grow": "_progress-
|
|
166
|
-
"indeterminate-move": "_indeterminate-
|
|
167
|
-
"skeleton-loading": "_skeleton-
|
|
164
|
+
"fade-in-up": "_fade-in-up_1q819_1",
|
|
165
|
+
"progress-grow": "_progress-grow_1q819_1",
|
|
166
|
+
"indeterminate-move": "_indeterminate-move_1q819_1",
|
|
167
|
+
"skeleton-loading": "_skeleton-loading_1q819_1"
|
|
168
168
|
};
|
|
169
169
|
const FormGroup = (props) => {
|
|
170
170
|
return /* @__PURE__ */ jsx(BaseFormGroup, { ...props, classMap: styles });
|
|
@@ -173,4 +173,4 @@ FormGroup.displayName = "FormGroup";
|
|
|
173
173
|
export {
|
|
174
174
|
FormGroup as F
|
|
175
175
|
};
|
|
176
|
-
//# sourceMappingURL=FormGroup-
|
|
176
|
+
//# sourceMappingURL=FormGroup-DmQChKxA.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormGroup-
|
|
1
|
+
{"version":3,"file":"FormGroup-DmQChKxA.js","sources":["../../src/components/FormGroup/FormGroupBase.tsx","../../src/components/FormGroup/next/FormGroup.tsx"],"sourcesContent":["import React, { useMemo, useId } from \"react\";\r\nimport { BaseFormGroupProps } from \"./FormGroup.types\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\n\r\nconst BaseFormGroup: React.FC<BaseFormGroupProps> = ({\r\n label,\r\n description,\r\n error,\r\n children,\r\n id,\r\n required = false,\r\n className = \"\",\r\n layout = \"vertical\",\r\n hideLabel = false,\r\n spacing = \"xs\",\r\n controller,\r\n \"data-testid\": testId = \"form-group\",\r\n classMap,\r\n}) => {\r\n const auto = useId();\r\n const baseId = id ?? `${testId}-${auto}`;\r\n const labelId = label ? `${baseId}-label` : undefined;\r\n const descriptionId = description ? `${baseId}-description` : undefined;\r\n const errorId = error ? `${baseId}-error` : undefined;\r\n\r\n const describedBy =\r\n [errorId, descriptionId].filter(Boolean).join(\" \") || undefined;\r\n\r\n const childrenArray = React.Children.toArray(children);\r\n\r\n const wrapperClass = useMemo(\r\n () =>\r\n combineClassNames(\r\n classMap.wrapper,\r\n classMap[layout],\r\n classMap[spacing],\r\n error && classMap.error,\r\n className\r\n ),\r\n [classMap, layout, spacing, error, className]\r\n );\r\n\r\n return (\r\n <div\r\n className={wrapperClass}\r\n role=\"group\"\r\n aria-labelledby={labelId}\r\n aria-describedby={describedBy}\r\n data-testid={testId}\r\n >\r\n {label && (\r\n <label\r\n id={labelId}\r\n {...(id ? { htmlFor: id } : {})}\r\n className={combineClassNames(classMap.label, hideLabel && \"sr_only\")}\r\n data-testid={`${testId}-label`}\r\n >\r\n {label}\r\n {required && (\r\n <span\r\n className={classMap.required}\r\n aria-hidden=\"true\"\r\n data-testid={`${testId}-required`}\r\n >\r\n *\r\n </span>\r\n )}\r\n </label>\r\n )}\r\n\r\n {childrenArray.map((child, index) => (\r\n <div\r\n key={index}\r\n className={classMap.inputWrapper}\r\n data-testid={`${testId}-wrapper-${index}`}\r\n >\r\n <div\r\n className={classMap.inputField}\r\n data-testid={`${testId}-input-field-${index}`}\r\n >\r\n {child}\r\n </div>\r\n\r\n {controller && index === 0 && (\r\n <div\r\n className={classMap.controller}\r\n data-testid={`${testId}-controller`}\r\n >\r\n {controller}\r\n </div>\r\n )}\r\n </div>\r\n ))}\r\n\r\n {description && !error && (\r\n <p\r\n id={descriptionId}\r\n className={classMap.description}\r\n data-testid={`${testId}-description`}\r\n >\r\n {description}\r\n </p>\r\n )}\r\n\r\n {error && (\r\n <p\r\n id={errorId}\r\n className={classMap.errorMessage}\r\n role=\"alert\"\r\n data-testid={`${testId}-error`}\r\n >\r\n {error}\r\n </p>\r\n )}\r\n </div>\r\n );\r\n};\r\n\r\nBaseFormGroup.displayName = \"BaseFormGroup\";\r\nexport default BaseFormGroup;\r\n","\"use client\";\r\n\r\nimport React from \"react\";\r\nimport BaseFormGroup from \"../FormGroupBase\";\r\nimport styles from \"./FormGroup.module.scss\";\r\nimport { FormGroupProps } from \"../FormGroup.types\";\r\n\r\nconst FormGroup: React.FC<FormGroupProps> = (props) => {\r\n return <BaseFormGroup {...props} classMap={styles} />;\r\n};\r\nFormGroup.displayName = \"FormGroup\";\r\nexport default FormGroup;\r\n"],"names":["label","description","required","controller"],"mappings":"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"}
|
package/dist/next/FormGroup.js
CHANGED
|
@@ -7,7 +7,7 @@ const classNames = require("./classNames-BcWMx052.cjs");
|
|
|
7
7
|
const capitalize = require("./capitalize-DoV-nOmN.cjs");
|
|
8
8
|
const borealStyleConfig = require("./boreal-style-config-Rr5d5Qts.cjs");
|
|
9
9
|
;/* empty css */
|
|
10
|
-
const Button = require("./Button-
|
|
10
|
+
const Button = require("./Button-BI0LErYM.cjs");
|
|
11
11
|
const IconButton = require("./IconButton-2l-_HOMB.cjs");
|
|
12
12
|
const BaseMessagePopup = ({
|
|
13
13
|
message: message2,
|
|
@@ -224,4 +224,4 @@ const MessagePopUp = (props) => {
|
|
|
224
224
|
};
|
|
225
225
|
MessagePopUp.displayName = "MessagePopUp";
|
|
226
226
|
exports.MessagePopUp = MessagePopUp;
|
|
227
|
-
//# sourceMappingURL=MessagePopup-
|
|
227
|
+
//# sourceMappingURL=MessagePopup-DsquzWSn.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessagePopup-CqLFabp5.cjs","sources":["../../src/components/MessagePopUp/MessagePopupBase.tsx","../../src/components/MessagePopUp/next/MessagePopup.tsx"],"sourcesContent":["import React, {\r\n useEffect,\r\n useRef,\r\n useState,\r\n useId,\r\n KeyboardEvent,\r\n} from \"react\";\r\nimport ReactDOM from \"react-dom\";\r\nimport { CloseIcon } from \"../../Icons\";\r\nimport { BaseMessagePopupProps } from \"./MessagePopup.types\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport { capitalize } from \"../../utils/capitalize\";\r\nimport {\r\n getDefaultRounding,\r\n getDefaultShadow,\r\n} from \"../../config/boreal-style-config\";\r\n\r\nconst BaseMessagePopup: React.FC<BaseMessagePopupProps> = ({\r\n message,\r\n onClose,\r\n onConfirm,\r\n onCancel,\r\n controlsRounding = getDefaultRounding(),\r\n rounding = getDefaultRounding(),\r\n shadow = getDefaultShadow(),\r\n confirmText = \"Confirm\",\r\n cancelText = \"Cancel\",\r\n className = \"\",\r\n \"data-testid\": testId = \"message-popup\",\r\n Button,\r\n IconButton,\r\n classMap,\r\n}) => {\r\n const [isMounted, setIsMounted] = useState(false);\r\n const [portalElement, setPortalElement] = useState<HTMLElement | null>(null);\r\n const dialogRef = useRef<HTMLDivElement>(null);\r\n const firstButtonRef = useRef<HTMLButtonElement>(null);\r\n const cancelButtonRef = useRef<HTMLButtonElement>(null);\r\n const closeBtnRef = useRef<HTMLButtonElement>(null);\r\n const openerRef = useRef<HTMLElement | null>(null);\r\n const focusablesRef = useRef<HTMLElement[]>([]);\r\n const messageId = useId();\r\n\r\n useEffect(() => {\r\n setIsMounted(true);\r\n openerRef.current = (document.activeElement as HTMLElement) ?? null;\r\n\r\n let portal = document.getElementById(\"popup-portal\");\r\n if (!portal) {\r\n portal = document.createElement(\"div\");\r\n portal.id = \"popup-portal\";\r\n document.body.appendChild(portal);\r\n }\r\n setPortalElement(portal);\r\n document.body.classList.add(\"no-scroll\");\r\n\r\n const roots = Array.from(document.body.children);\r\n const restored: Array<HTMLElement> = [];\r\n roots.forEach((el) => {\r\n if (el !== portal && !el.hasAttribute(\"aria-hidden\")) {\r\n el.setAttribute(\"aria-hidden\", \"true\");\r\n restored.push(el as HTMLElement);\r\n }\r\n });\r\n\r\n const handleEscape = (e: globalThis.KeyboardEvent) => {\r\n if (e.key === \"Escape\") onClose();\r\n };\r\n document.addEventListener(\"keydown\", handleEscape);\r\n\r\n return () => {\r\n document.body.classList.remove(\"no-scroll\");\r\n document.removeEventListener(\"keydown\", handleEscape);\r\n restored.forEach((el) => el.removeAttribute(\"aria-hidden\"));\r\n openerRef.current?.focus?.();\r\n };\r\n }, [onClose]);\r\n\r\n useEffect(() => {\r\n if (!dialogRef.current) return;\r\n focusablesRef.current = Array.from(\r\n dialogRef.current.querySelectorAll<HTMLElement>(\r\n 'button, [href], input, select, textarea, [tabindex]:not([tabindex=\"-1\"])'\r\n )\r\n ).filter((el) => !el.hasAttribute(\"disabled\") && el.tabIndex !== -1);\r\n\r\n const target =\r\n firstButtonRef.current ||\r\n cancelButtonRef.current ||\r\n (closeBtnRef.current as HTMLElement | null) ||\r\n focusablesRef.current[0];\r\n target?.focus?.();\r\n }, [isMounted]);\r\n\r\n const handleKeyDown = (e: KeyboardEvent<HTMLDivElement>) => {\r\n if (e.key !== \"Tab\") return;\r\n const list = focusablesRef.current;\r\n if (!list.length) return;\r\n\r\n const first = list[0];\r\n const last = list[list.length - 1];\r\n\r\n if (e.shiftKey && document.activeElement === first) {\r\n e.preventDefault();\r\n last.focus();\r\n } else if (!e.shiftKey && document.activeElement === last) {\r\n e.preventDefault();\r\n first.focus();\r\n }\r\n };\r\n\r\n if (!isMounted || !portalElement) return null;\r\n\r\n const wrapperClass = combineClassNames(\r\n classMap.wrapper,\r\n shadow && classMap[`shadow${capitalize(shadow)}`],\r\n rounding && classMap[`round${capitalize(rounding)}`],\r\n className\r\n );\r\n\r\n return ReactDOM.createPortal(\r\n <div\r\n className={wrapperClass}\r\n onClick={onClose}\r\n role=\"presentation\"\r\n data-testid={testId}\r\n >\r\n <div\r\n className={classMap.content}\r\n onClick={(e) => e.stopPropagation()}\r\n role=\"dialog\"\r\n aria-modal=\"true\"\r\n aria-labelledby={messageId}\r\n tabIndex={-1}\r\n ref={dialogRef}\r\n onKeyDown={handleKeyDown}\r\n data-testid={`${testId}-dialog`}\r\n >\r\n <IconButton\r\n ref={closeBtnRef}\r\n className={classMap.close}\r\n onClick={onClose}\r\n aria-label=\"Close popup\"\r\n icon={CloseIcon}\r\n state=\"error\"\r\n size=\"small\"\r\n type=\"button\"\r\n data-testid={`${testId}-close`}\r\n />\r\n <h2\r\n id={messageId}\r\n className={classMap.message}\r\n data-testid={`${testId}-message`}\r\n >\r\n {message}\r\n </h2>\r\n <div className={classMap.actions} data-testid={`${testId}-actions`}>\r\n {onConfirm && (\r\n <Button\r\n className={classMap.confirm}\r\n state=\"success\"\r\n onClick={onConfirm}\r\n ref={firstButtonRef}\r\n rounding={controlsRounding}\r\n type=\"button\"\r\n data-testid={`${testId}-confirm`}\r\n >\r\n {confirmText}\r\n </Button>\r\n )}\r\n {onCancel && (\r\n <Button\r\n ref={cancelButtonRef}\r\n className={classMap.cancel}\r\n state=\"warning\"\r\n onClick={onCancel}\r\n type=\"button\"\r\n data-testid={`${testId}-cancel`}\r\n >\r\n {cancelText}\r\n </Button>\r\n )}\r\n </div>\r\n </div>\r\n </div>,\r\n portalElement\r\n );\r\n};\r\n\r\nBaseMessagePopup.displayName = \"BaseMessagePopup\";\r\nexport default BaseMessagePopup;\r\n","\"use client\";\r\n\r\nimport React from \"react\";\r\nimport BaseMessagePopUp from \"../MessagePopupBase\";\r\nimport { Button, IconButton } from \"../../../index.next\";\r\nimport styles from \"./MessagePopup.module.scss\";\r\nimport { MessagePopUpProps } from \"../MessagePopup.types\";\r\n\r\nconst MessagePopUp: React.FC<MessagePopUpProps> = (props) => {\r\n return (\r\n <BaseMessagePopUp\r\n {...props}\r\n Button={Button}\r\n IconButton={IconButton}\r\n classMap={styles}\r\n />\r\n );\r\n};\r\nMessagePopUp.displayName = \"MessagePopUp\";\r\nexport default MessagePopUp;\r\n"],"names":["message","getDefaultRounding","getDefaultShadow","Button","IconButton","useState","useRef","useId","useEffect","combineClassNames","capitalize","jsx","jsxs","CloseIcon","BaseMessagePopUp"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MessagePopup-DsquzWSn.cjs","sources":["../../src/components/MessagePopUp/MessagePopupBase.tsx","../../src/components/MessagePopUp/next/MessagePopup.tsx"],"sourcesContent":["import React, {\r\n useEffect,\r\n useRef,\r\n useState,\r\n useId,\r\n KeyboardEvent,\r\n} from \"react\";\r\nimport ReactDOM from \"react-dom\";\r\nimport { CloseIcon } from \"../../Icons\";\r\nimport { BaseMessagePopupProps } from \"./MessagePopup.types\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport { capitalize } from \"../../utils/capitalize\";\r\nimport {\r\n getDefaultRounding,\r\n getDefaultShadow,\r\n} from \"../../config/boreal-style-config\";\r\n\r\nconst BaseMessagePopup: React.FC<BaseMessagePopupProps> = ({\r\n message,\r\n onClose,\r\n onConfirm,\r\n onCancel,\r\n controlsRounding = getDefaultRounding(),\r\n rounding = getDefaultRounding(),\r\n shadow = getDefaultShadow(),\r\n confirmText = \"Confirm\",\r\n cancelText = \"Cancel\",\r\n className = \"\",\r\n \"data-testid\": testId = \"message-popup\",\r\n Button,\r\n IconButton,\r\n classMap,\r\n}) => {\r\n const [isMounted, setIsMounted] = useState(false);\r\n const [portalElement, setPortalElement] = useState<HTMLElement | null>(null);\r\n const dialogRef = useRef<HTMLDivElement>(null);\r\n const firstButtonRef = useRef<HTMLButtonElement>(null);\r\n const cancelButtonRef = useRef<HTMLButtonElement>(null);\r\n const closeBtnRef = useRef<HTMLButtonElement>(null);\r\n const openerRef = useRef<HTMLElement | null>(null);\r\n const focusablesRef = useRef<HTMLElement[]>([]);\r\n const messageId = useId();\r\n\r\n useEffect(() => {\r\n setIsMounted(true);\r\n openerRef.current = (document.activeElement as HTMLElement) ?? null;\r\n\r\n let portal = document.getElementById(\"popup-portal\");\r\n if (!portal) {\r\n portal = document.createElement(\"div\");\r\n portal.id = \"popup-portal\";\r\n document.body.appendChild(portal);\r\n }\r\n setPortalElement(portal);\r\n document.body.classList.add(\"no-scroll\");\r\n\r\n const roots = Array.from(document.body.children);\r\n const restored: Array<HTMLElement> = [];\r\n roots.forEach((el) => {\r\n if (el !== portal && !el.hasAttribute(\"aria-hidden\")) {\r\n el.setAttribute(\"aria-hidden\", \"true\");\r\n restored.push(el as HTMLElement);\r\n }\r\n });\r\n\r\n const handleEscape = (e: globalThis.KeyboardEvent) => {\r\n if (e.key === \"Escape\") onClose();\r\n };\r\n document.addEventListener(\"keydown\", handleEscape);\r\n\r\n return () => {\r\n document.body.classList.remove(\"no-scroll\");\r\n document.removeEventListener(\"keydown\", handleEscape);\r\n restored.forEach((el) => el.removeAttribute(\"aria-hidden\"));\r\n openerRef.current?.focus?.();\r\n };\r\n }, [onClose]);\r\n\r\n useEffect(() => {\r\n if (!dialogRef.current) return;\r\n focusablesRef.current = Array.from(\r\n dialogRef.current.querySelectorAll<HTMLElement>(\r\n 'button, [href], input, select, textarea, [tabindex]:not([tabindex=\"-1\"])'\r\n )\r\n ).filter((el) => !el.hasAttribute(\"disabled\") && el.tabIndex !== -1);\r\n\r\n const target =\r\n firstButtonRef.current ||\r\n cancelButtonRef.current ||\r\n (closeBtnRef.current as HTMLElement | null) ||\r\n focusablesRef.current[0];\r\n target?.focus?.();\r\n }, [isMounted]);\r\n\r\n const handleKeyDown = (e: KeyboardEvent<HTMLDivElement>) => {\r\n if (e.key !== \"Tab\") return;\r\n const list = focusablesRef.current;\r\n if (!list.length) return;\r\n\r\n const first = list[0];\r\n const last = list[list.length - 1];\r\n\r\n if (e.shiftKey && document.activeElement === first) {\r\n e.preventDefault();\r\n last.focus();\r\n } else if (!e.shiftKey && document.activeElement === last) {\r\n e.preventDefault();\r\n first.focus();\r\n }\r\n };\r\n\r\n if (!isMounted || !portalElement) return null;\r\n\r\n const wrapperClass = combineClassNames(\r\n classMap.wrapper,\r\n shadow && classMap[`shadow${capitalize(shadow)}`],\r\n rounding && classMap[`round${capitalize(rounding)}`],\r\n className\r\n );\r\n\r\n return ReactDOM.createPortal(\r\n <div\r\n className={wrapperClass}\r\n onClick={onClose}\r\n role=\"presentation\"\r\n data-testid={testId}\r\n >\r\n <div\r\n className={classMap.content}\r\n onClick={(e) => e.stopPropagation()}\r\n role=\"dialog\"\r\n aria-modal=\"true\"\r\n aria-labelledby={messageId}\r\n tabIndex={-1}\r\n ref={dialogRef}\r\n onKeyDown={handleKeyDown}\r\n data-testid={`${testId}-dialog`}\r\n >\r\n <IconButton\r\n ref={closeBtnRef}\r\n className={classMap.close}\r\n onClick={onClose}\r\n aria-label=\"Close popup\"\r\n icon={CloseIcon}\r\n state=\"error\"\r\n size=\"small\"\r\n type=\"button\"\r\n data-testid={`${testId}-close`}\r\n />\r\n <h2\r\n id={messageId}\r\n className={classMap.message}\r\n data-testid={`${testId}-message`}\r\n >\r\n {message}\r\n </h2>\r\n <div className={classMap.actions} data-testid={`${testId}-actions`}>\r\n {onConfirm && (\r\n <Button\r\n className={classMap.confirm}\r\n state=\"success\"\r\n onClick={onConfirm}\r\n ref={firstButtonRef}\r\n rounding={controlsRounding}\r\n type=\"button\"\r\n data-testid={`${testId}-confirm`}\r\n >\r\n {confirmText}\r\n </Button>\r\n )}\r\n {onCancel && (\r\n <Button\r\n ref={cancelButtonRef}\r\n className={classMap.cancel}\r\n state=\"warning\"\r\n onClick={onCancel}\r\n type=\"button\"\r\n data-testid={`${testId}-cancel`}\r\n >\r\n {cancelText}\r\n </Button>\r\n )}\r\n </div>\r\n </div>\r\n </div>,\r\n portalElement\r\n );\r\n};\r\n\r\nBaseMessagePopup.displayName = \"BaseMessagePopup\";\r\nexport default BaseMessagePopup;\r\n","\"use client\";\r\n\r\nimport React from \"react\";\r\nimport BaseMessagePopUp from \"../MessagePopupBase\";\r\nimport { Button, IconButton } from \"../../../index.next\";\r\nimport styles from \"./MessagePopup.module.scss\";\r\nimport { MessagePopUpProps } from \"../MessagePopup.types\";\r\n\r\nconst MessagePopUp: React.FC<MessagePopUpProps> = (props) => {\r\n return (\r\n <BaseMessagePopUp\r\n {...props}\r\n Button={Button}\r\n IconButton={IconButton}\r\n classMap={styles}\r\n />\r\n );\r\n};\r\nMessagePopUp.displayName = \"MessagePopUp\";\r\nexport default MessagePopUp;\r\n"],"names":["message","getDefaultRounding","getDefaultShadow","Button","IconButton","useState","useRef","useId","useEffect","combineClassNames","capitalize","jsx","jsxs","CloseIcon","BaseMessagePopUp"],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import { c as combineClassNames } from "./classNames-AS8QjFq7.js";
|
|
|
6
6
|
import { c as capitalize } from "./capitalize-C0TSQSPh.js";
|
|
7
7
|
import { a as getDefaultRounding, b as getDefaultShadow } from "./boreal-style-config-BILmxkZG.js";
|
|
8
8
|
/* empty css */
|
|
9
|
-
import { B as Button } from "./Button-
|
|
9
|
+
import { B as Button } from "./Button-qs4m4zx0.js";
|
|
10
10
|
import { I as IconButton } from "./IconButton-BTUFKRZt.js";
|
|
11
11
|
const BaseMessagePopup = ({
|
|
12
12
|
message: message2,
|
|
@@ -225,4 +225,4 @@ MessagePopUp.displayName = "MessagePopUp";
|
|
|
225
225
|
export {
|
|
226
226
|
MessagePopUp as M
|
|
227
227
|
};
|
|
228
|
-
//# sourceMappingURL=MessagePopup-
|
|
228
|
+
//# sourceMappingURL=MessagePopup-WUBGyJ_F.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessagePopup-fyidnJOS.js","sources":["../../src/components/MessagePopUp/MessagePopupBase.tsx","../../src/components/MessagePopUp/next/MessagePopup.tsx"],"sourcesContent":["import React, {\r\n useEffect,\r\n useRef,\r\n useState,\r\n useId,\r\n KeyboardEvent,\r\n} from \"react\";\r\nimport ReactDOM from \"react-dom\";\r\nimport { CloseIcon } from \"../../Icons\";\r\nimport { BaseMessagePopupProps } from \"./MessagePopup.types\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport { capitalize } from \"../../utils/capitalize\";\r\nimport {\r\n getDefaultRounding,\r\n getDefaultShadow,\r\n} from \"../../config/boreal-style-config\";\r\n\r\nconst BaseMessagePopup: React.FC<BaseMessagePopupProps> = ({\r\n message,\r\n onClose,\r\n onConfirm,\r\n onCancel,\r\n controlsRounding = getDefaultRounding(),\r\n rounding = getDefaultRounding(),\r\n shadow = getDefaultShadow(),\r\n confirmText = \"Confirm\",\r\n cancelText = \"Cancel\",\r\n className = \"\",\r\n \"data-testid\": testId = \"message-popup\",\r\n Button,\r\n IconButton,\r\n classMap,\r\n}) => {\r\n const [isMounted, setIsMounted] = useState(false);\r\n const [portalElement, setPortalElement] = useState<HTMLElement | null>(null);\r\n const dialogRef = useRef<HTMLDivElement>(null);\r\n const firstButtonRef = useRef<HTMLButtonElement>(null);\r\n const cancelButtonRef = useRef<HTMLButtonElement>(null);\r\n const closeBtnRef = useRef<HTMLButtonElement>(null);\r\n const openerRef = useRef<HTMLElement | null>(null);\r\n const focusablesRef = useRef<HTMLElement[]>([]);\r\n const messageId = useId();\r\n\r\n useEffect(() => {\r\n setIsMounted(true);\r\n openerRef.current = (document.activeElement as HTMLElement) ?? null;\r\n\r\n let portal = document.getElementById(\"popup-portal\");\r\n if (!portal) {\r\n portal = document.createElement(\"div\");\r\n portal.id = \"popup-portal\";\r\n document.body.appendChild(portal);\r\n }\r\n setPortalElement(portal);\r\n document.body.classList.add(\"no-scroll\");\r\n\r\n const roots = Array.from(document.body.children);\r\n const restored: Array<HTMLElement> = [];\r\n roots.forEach((el) => {\r\n if (el !== portal && !el.hasAttribute(\"aria-hidden\")) {\r\n el.setAttribute(\"aria-hidden\", \"true\");\r\n restored.push(el as HTMLElement);\r\n }\r\n });\r\n\r\n const handleEscape = (e: globalThis.KeyboardEvent) => {\r\n if (e.key === \"Escape\") onClose();\r\n };\r\n document.addEventListener(\"keydown\", handleEscape);\r\n\r\n return () => {\r\n document.body.classList.remove(\"no-scroll\");\r\n document.removeEventListener(\"keydown\", handleEscape);\r\n restored.forEach((el) => el.removeAttribute(\"aria-hidden\"));\r\n openerRef.current?.focus?.();\r\n };\r\n }, [onClose]);\r\n\r\n useEffect(() => {\r\n if (!dialogRef.current) return;\r\n focusablesRef.current = Array.from(\r\n dialogRef.current.querySelectorAll<HTMLElement>(\r\n 'button, [href], input, select, textarea, [tabindex]:not([tabindex=\"-1\"])'\r\n )\r\n ).filter((el) => !el.hasAttribute(\"disabled\") && el.tabIndex !== -1);\r\n\r\n const target =\r\n firstButtonRef.current ||\r\n cancelButtonRef.current ||\r\n (closeBtnRef.current as HTMLElement | null) ||\r\n focusablesRef.current[0];\r\n target?.focus?.();\r\n }, [isMounted]);\r\n\r\n const handleKeyDown = (e: KeyboardEvent<HTMLDivElement>) => {\r\n if (e.key !== \"Tab\") return;\r\n const list = focusablesRef.current;\r\n if (!list.length) return;\r\n\r\n const first = list[0];\r\n const last = list[list.length - 1];\r\n\r\n if (e.shiftKey && document.activeElement === first) {\r\n e.preventDefault();\r\n last.focus();\r\n } else if (!e.shiftKey && document.activeElement === last) {\r\n e.preventDefault();\r\n first.focus();\r\n }\r\n };\r\n\r\n if (!isMounted || !portalElement) return null;\r\n\r\n const wrapperClass = combineClassNames(\r\n classMap.wrapper,\r\n shadow && classMap[`shadow${capitalize(shadow)}`],\r\n rounding && classMap[`round${capitalize(rounding)}`],\r\n className\r\n );\r\n\r\n return ReactDOM.createPortal(\r\n <div\r\n className={wrapperClass}\r\n onClick={onClose}\r\n role=\"presentation\"\r\n data-testid={testId}\r\n >\r\n <div\r\n className={classMap.content}\r\n onClick={(e) => e.stopPropagation()}\r\n role=\"dialog\"\r\n aria-modal=\"true\"\r\n aria-labelledby={messageId}\r\n tabIndex={-1}\r\n ref={dialogRef}\r\n onKeyDown={handleKeyDown}\r\n data-testid={`${testId}-dialog`}\r\n >\r\n <IconButton\r\n ref={closeBtnRef}\r\n className={classMap.close}\r\n onClick={onClose}\r\n aria-label=\"Close popup\"\r\n icon={CloseIcon}\r\n state=\"error\"\r\n size=\"small\"\r\n type=\"button\"\r\n data-testid={`${testId}-close`}\r\n />\r\n <h2\r\n id={messageId}\r\n className={classMap.message}\r\n data-testid={`${testId}-message`}\r\n >\r\n {message}\r\n </h2>\r\n <div className={classMap.actions} data-testid={`${testId}-actions`}>\r\n {onConfirm && (\r\n <Button\r\n className={classMap.confirm}\r\n state=\"success\"\r\n onClick={onConfirm}\r\n ref={firstButtonRef}\r\n rounding={controlsRounding}\r\n type=\"button\"\r\n data-testid={`${testId}-confirm`}\r\n >\r\n {confirmText}\r\n </Button>\r\n )}\r\n {onCancel && (\r\n <Button\r\n ref={cancelButtonRef}\r\n className={classMap.cancel}\r\n state=\"warning\"\r\n onClick={onCancel}\r\n type=\"button\"\r\n data-testid={`${testId}-cancel`}\r\n >\r\n {cancelText}\r\n </Button>\r\n )}\r\n </div>\r\n </div>\r\n </div>,\r\n portalElement\r\n );\r\n};\r\n\r\nBaseMessagePopup.displayName = \"BaseMessagePopup\";\r\nexport default BaseMessagePopup;\r\n","\"use client\";\r\n\r\nimport React from \"react\";\r\nimport BaseMessagePopUp from \"../MessagePopupBase\";\r\nimport { Button, IconButton } from \"../../../index.next\";\r\nimport styles from \"./MessagePopup.module.scss\";\r\nimport { MessagePopUpProps } from \"../MessagePopup.types\";\r\n\r\nconst MessagePopUp: React.FC<MessagePopUpProps> = (props) => {\r\n return (\r\n <BaseMessagePopUp\r\n {...props}\r\n Button={Button}\r\n IconButton={IconButton}\r\n classMap={styles}\r\n />\r\n );\r\n};\r\nMessagePopUp.displayName = \"MessagePopUp\";\r\nexport default MessagePopUp;\r\n"],"names":["message","Button","IconButton","BaseMessagePopUp"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MessagePopup-WUBGyJ_F.js","sources":["../../src/components/MessagePopUp/MessagePopupBase.tsx","../../src/components/MessagePopUp/next/MessagePopup.tsx"],"sourcesContent":["import React, {\r\n useEffect,\r\n useRef,\r\n useState,\r\n useId,\r\n KeyboardEvent,\r\n} from \"react\";\r\nimport ReactDOM from \"react-dom\";\r\nimport { CloseIcon } from \"../../Icons\";\r\nimport { BaseMessagePopupProps } from \"./MessagePopup.types\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport { capitalize } from \"../../utils/capitalize\";\r\nimport {\r\n getDefaultRounding,\r\n getDefaultShadow,\r\n} from \"../../config/boreal-style-config\";\r\n\r\nconst BaseMessagePopup: React.FC<BaseMessagePopupProps> = ({\r\n message,\r\n onClose,\r\n onConfirm,\r\n onCancel,\r\n controlsRounding = getDefaultRounding(),\r\n rounding = getDefaultRounding(),\r\n shadow = getDefaultShadow(),\r\n confirmText = \"Confirm\",\r\n cancelText = \"Cancel\",\r\n className = \"\",\r\n \"data-testid\": testId = \"message-popup\",\r\n Button,\r\n IconButton,\r\n classMap,\r\n}) => {\r\n const [isMounted, setIsMounted] = useState(false);\r\n const [portalElement, setPortalElement] = useState<HTMLElement | null>(null);\r\n const dialogRef = useRef<HTMLDivElement>(null);\r\n const firstButtonRef = useRef<HTMLButtonElement>(null);\r\n const cancelButtonRef = useRef<HTMLButtonElement>(null);\r\n const closeBtnRef = useRef<HTMLButtonElement>(null);\r\n const openerRef = useRef<HTMLElement | null>(null);\r\n const focusablesRef = useRef<HTMLElement[]>([]);\r\n const messageId = useId();\r\n\r\n useEffect(() => {\r\n setIsMounted(true);\r\n openerRef.current = (document.activeElement as HTMLElement) ?? null;\r\n\r\n let portal = document.getElementById(\"popup-portal\");\r\n if (!portal) {\r\n portal = document.createElement(\"div\");\r\n portal.id = \"popup-portal\";\r\n document.body.appendChild(portal);\r\n }\r\n setPortalElement(portal);\r\n document.body.classList.add(\"no-scroll\");\r\n\r\n const roots = Array.from(document.body.children);\r\n const restored: Array<HTMLElement> = [];\r\n roots.forEach((el) => {\r\n if (el !== portal && !el.hasAttribute(\"aria-hidden\")) {\r\n el.setAttribute(\"aria-hidden\", \"true\");\r\n restored.push(el as HTMLElement);\r\n }\r\n });\r\n\r\n const handleEscape = (e: globalThis.KeyboardEvent) => {\r\n if (e.key === \"Escape\") onClose();\r\n };\r\n document.addEventListener(\"keydown\", handleEscape);\r\n\r\n return () => {\r\n document.body.classList.remove(\"no-scroll\");\r\n document.removeEventListener(\"keydown\", handleEscape);\r\n restored.forEach((el) => el.removeAttribute(\"aria-hidden\"));\r\n openerRef.current?.focus?.();\r\n };\r\n }, [onClose]);\r\n\r\n useEffect(() => {\r\n if (!dialogRef.current) return;\r\n focusablesRef.current = Array.from(\r\n dialogRef.current.querySelectorAll<HTMLElement>(\r\n 'button, [href], input, select, textarea, [tabindex]:not([tabindex=\"-1\"])'\r\n )\r\n ).filter((el) => !el.hasAttribute(\"disabled\") && el.tabIndex !== -1);\r\n\r\n const target =\r\n firstButtonRef.current ||\r\n cancelButtonRef.current ||\r\n (closeBtnRef.current as HTMLElement | null) ||\r\n focusablesRef.current[0];\r\n target?.focus?.();\r\n }, [isMounted]);\r\n\r\n const handleKeyDown = (e: KeyboardEvent<HTMLDivElement>) => {\r\n if (e.key !== \"Tab\") return;\r\n const list = focusablesRef.current;\r\n if (!list.length) return;\r\n\r\n const first = list[0];\r\n const last = list[list.length - 1];\r\n\r\n if (e.shiftKey && document.activeElement === first) {\r\n e.preventDefault();\r\n last.focus();\r\n } else if (!e.shiftKey && document.activeElement === last) {\r\n e.preventDefault();\r\n first.focus();\r\n }\r\n };\r\n\r\n if (!isMounted || !portalElement) return null;\r\n\r\n const wrapperClass = combineClassNames(\r\n classMap.wrapper,\r\n shadow && classMap[`shadow${capitalize(shadow)}`],\r\n rounding && classMap[`round${capitalize(rounding)}`],\r\n className\r\n );\r\n\r\n return ReactDOM.createPortal(\r\n <div\r\n className={wrapperClass}\r\n onClick={onClose}\r\n role=\"presentation\"\r\n data-testid={testId}\r\n >\r\n <div\r\n className={classMap.content}\r\n onClick={(e) => e.stopPropagation()}\r\n role=\"dialog\"\r\n aria-modal=\"true\"\r\n aria-labelledby={messageId}\r\n tabIndex={-1}\r\n ref={dialogRef}\r\n onKeyDown={handleKeyDown}\r\n data-testid={`${testId}-dialog`}\r\n >\r\n <IconButton\r\n ref={closeBtnRef}\r\n className={classMap.close}\r\n onClick={onClose}\r\n aria-label=\"Close popup\"\r\n icon={CloseIcon}\r\n state=\"error\"\r\n size=\"small\"\r\n type=\"button\"\r\n data-testid={`${testId}-close`}\r\n />\r\n <h2\r\n id={messageId}\r\n className={classMap.message}\r\n data-testid={`${testId}-message`}\r\n >\r\n {message}\r\n </h2>\r\n <div className={classMap.actions} data-testid={`${testId}-actions`}>\r\n {onConfirm && (\r\n <Button\r\n className={classMap.confirm}\r\n state=\"success\"\r\n onClick={onConfirm}\r\n ref={firstButtonRef}\r\n rounding={controlsRounding}\r\n type=\"button\"\r\n data-testid={`${testId}-confirm`}\r\n >\r\n {confirmText}\r\n </Button>\r\n )}\r\n {onCancel && (\r\n <Button\r\n ref={cancelButtonRef}\r\n className={classMap.cancel}\r\n state=\"warning\"\r\n onClick={onCancel}\r\n type=\"button\"\r\n data-testid={`${testId}-cancel`}\r\n >\r\n {cancelText}\r\n </Button>\r\n )}\r\n </div>\r\n </div>\r\n </div>,\r\n portalElement\r\n );\r\n};\r\n\r\nBaseMessagePopup.displayName = \"BaseMessagePopup\";\r\nexport default BaseMessagePopup;\r\n","\"use client\";\r\n\r\nimport React from \"react\";\r\nimport BaseMessagePopUp from \"../MessagePopupBase\";\r\nimport { Button, IconButton } from \"../../../index.next\";\r\nimport styles from \"./MessagePopup.module.scss\";\r\nimport { MessagePopUpProps } from \"../MessagePopup.types\";\r\n\r\nconst MessagePopUp: React.FC<MessagePopUpProps> = (props) => {\r\n return (\r\n <BaseMessagePopUp\r\n {...props}\r\n Button={Button}\r\n IconButton={IconButton}\r\n classMap={styles}\r\n />\r\n );\r\n};\r\nMessagePopUp.displayName = \"MessagePopUp\";\r\nexport default MessagePopUp;\r\n"],"names":["message","Button","IconButton","BaseMessagePopUp"],"mappings":"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"}
|