@utilitywarehouse/hearth-react 0.34.4 → 0.34.5
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/SKILL.md +7 -5
- package/dist/{chunk-AOWHE3JS.cjs → chunk-2DOX5QRE.cjs} +2 -2
- package/dist/{chunk-AOWHE3JS.cjs.map → chunk-2DOX5QRE.cjs.map} +1 -1
- package/dist/{chunk-2MQ6FGCP.js → chunk-2T6JOGY4.js} +2 -2
- package/dist/{chunk-SWIT4LGB.cjs → chunk-2UQFNTOW.cjs} +2 -2
- package/dist/{chunk-SWIT4LGB.cjs.map → chunk-2UQFNTOW.cjs.map} +1 -1
- package/dist/{chunk-OOUAAVCO.cjs → chunk-2YOFE27F.cjs} +2 -2
- package/dist/{chunk-OOUAAVCO.cjs.map → chunk-2YOFE27F.cjs.map} +1 -1
- package/dist/chunk-3KHNXMYU.js +4 -0
- package/dist/chunk-3KHNXMYU.js.map +1 -0
- package/dist/chunk-53VJM6HN.js +4 -0
- package/dist/chunk-53VJM6HN.js.map +1 -0
- package/dist/{chunk-75OLYAFB.cjs → chunk-6BVOGEQF.cjs} +2 -2
- package/dist/{chunk-75OLYAFB.cjs.map → chunk-6BVOGEQF.cjs.map} +1 -1
- package/dist/{chunk-X2QPGOUI.cjs → chunk-6GC2HQ72.cjs} +2 -2
- package/dist/{chunk-X2QPGOUI.cjs.map → chunk-6GC2HQ72.cjs.map} +1 -1
- package/dist/chunk-6TVIKYYN.js +4 -0
- package/dist/chunk-6TVIKYYN.js.map +1 -0
- package/dist/{chunk-GAFUPNEN.js → chunk-7BU5PUFF.js} +2 -2
- package/dist/chunk-7BU5PUFF.js.map +1 -0
- package/dist/{chunk-UNIBG2C6.js → chunk-7VHYXPJC.js} +2 -2
- package/dist/chunk-AEY4Y3ZM.cjs +4 -0
- package/dist/{chunk-YEZ6N62U.cjs.map → chunk-AEY4Y3ZM.cjs.map} +1 -1
- package/dist/chunk-AJDKAYX2.js +4 -0
- package/dist/{chunk-FSOQCT7B.js.map → chunk-AJDKAYX2.js.map} +1 -1
- package/dist/{chunk-I4T6DB7C.js → chunk-ALOYQFUV.js} +2 -2
- package/dist/chunk-ALOYQFUV.js.map +1 -0
- package/dist/chunk-ASLPRJKG.cjs +4 -0
- package/dist/chunk-ASLPRJKG.cjs.map +1 -0
- package/dist/{chunk-F7A4D3PD.cjs → chunk-BCWX6IU3.cjs} +2 -2
- package/dist/chunk-BCWX6IU3.cjs.map +1 -0
- package/dist/{chunk-RF5NDA46.cjs → chunk-C7UHLFA4.cjs} +2 -2
- package/dist/chunk-C7UHLFA4.cjs.map +1 -0
- package/dist/{chunk-WYLVXCEC.js → chunk-DDEAM7YH.js} +2 -2
- package/dist/chunk-DDEAM7YH.js.map +1 -0
- package/dist/{chunk-BB2SOLJS.cjs → chunk-DFHWFPXL.cjs} +2 -2
- package/dist/{chunk-BB2SOLJS.cjs.map → chunk-DFHWFPXL.cjs.map} +1 -1
- package/dist/{chunk-OQ7TRS57.js → chunk-DYMXUQM4.js} +2 -2
- package/dist/{chunk-VVBUEPWH.js → chunk-EERWIJJE.js} +2 -2
- package/dist/chunk-EEUINYIO.js +4 -0
- package/dist/{chunk-ICJHFSP5.js.map → chunk-EEUINYIO.js.map} +1 -1
- package/dist/chunk-ESNSLBNQ.js +4 -0
- package/dist/{chunk-BXDF7Z4R.js.map → chunk-ESNSLBNQ.js.map} +1 -1
- package/dist/{chunk-Y2YBHHIX.js → chunk-EWEFZ6ZZ.js} +2 -2
- package/dist/{chunk-IEKB4IRY.js → chunk-F4VHCEOC.js} +2 -2
- package/dist/{chunk-UNDW2NW7.cjs → chunk-FODRPEXV.cjs} +2 -2
- package/dist/chunk-FODRPEXV.cjs.map +1 -0
- package/dist/chunk-FOTB6NKY.cjs +4 -0
- package/dist/chunk-FOTB6NKY.cjs.map +1 -0
- package/dist/chunk-GI6ISM62.js +4 -0
- package/dist/chunk-GI6ISM62.js.map +1 -0
- package/dist/{chunk-7ILZKQOQ.js → chunk-HH27I2KI.js} +2 -2
- package/dist/chunk-HKZR7WEU.js +4 -0
- package/dist/chunk-HKZR7WEU.js.map +1 -0
- package/dist/chunk-HMJ7G2EA.cjs +4 -0
- package/dist/chunk-HMJ7G2EA.cjs.map +1 -0
- package/dist/{chunk-LUPMXBAE.cjs → chunk-HWN35OXS.cjs} +2 -2
- package/dist/{chunk-LUPMXBAE.cjs.map → chunk-HWN35OXS.cjs.map} +1 -1
- package/dist/chunk-I34GF57U.cjs +4 -0
- package/dist/{chunk-WMOTZLQC.cjs.map → chunk-I34GF57U.cjs.map} +1 -1
- package/dist/chunk-IV4TGFTS.cjs +4 -0
- package/dist/chunk-IV4TGFTS.cjs.map +1 -0
- package/dist/chunk-IWL2NRQW.js +4 -0
- package/dist/chunk-IWL2NRQW.js.map +1 -0
- package/dist/chunk-J4MYTSQR.js +4 -0
- package/dist/chunk-J4MYTSQR.js.map +1 -0
- package/dist/chunk-J6RR5ZAC.js +4 -0
- package/dist/chunk-J6RR5ZAC.js.map +1 -0
- package/dist/chunk-KLWPH3KA.js +4 -0
- package/dist/{chunk-XBK44AAM.js.map → chunk-KLWPH3KA.js.map} +1 -1
- package/dist/{chunk-XAJGQUSC.js → chunk-KNPNKYUS.js} +2 -2
- package/dist/chunk-LWJNN4FX.cjs +4 -0
- package/dist/chunk-LWJNN4FX.cjs.map +1 -0
- package/dist/{chunk-A5H4YOM6.cjs → chunk-LY2R2ZLM.cjs} +2 -2
- package/dist/{chunk-A5H4YOM6.cjs.map → chunk-LY2R2ZLM.cjs.map} +1 -1
- package/dist/{chunk-GLKPD2GP.cjs → chunk-MIQ4OWR2.cjs} +2 -2
- package/dist/{chunk-GLKPD2GP.cjs.map → chunk-MIQ4OWR2.cjs.map} +1 -1
- package/dist/chunk-MLPWLB6K.js +4 -0
- package/dist/chunk-MLPWLB6K.js.map +1 -0
- package/dist/chunk-MQPXIAIR.js +4 -0
- package/dist/chunk-MQPXIAIR.js.map +1 -0
- package/dist/{chunk-HE73I4VO.cjs → chunk-MT7HVLG6.cjs} +2 -2
- package/dist/{chunk-HE73I4VO.cjs.map → chunk-MT7HVLG6.cjs.map} +1 -1
- package/dist/{chunk-EC7L4PCG.cjs → chunk-NADTSPIX.cjs} +2 -2
- package/dist/{chunk-EC7L4PCG.cjs.map → chunk-NADTSPIX.cjs.map} +1 -1
- package/dist/chunk-NP362J2E.cjs +4 -0
- package/dist/chunk-NP362J2E.cjs.map +1 -0
- package/dist/chunk-OO46QHIG.js +4 -0
- package/dist/chunk-OO46QHIG.js.map +1 -0
- package/dist/{chunk-RVXQZ4CI.cjs → chunk-OP6OD46L.cjs} +2 -2
- package/dist/{chunk-RVXQZ4CI.cjs.map → chunk-OP6OD46L.cjs.map} +1 -1
- package/dist/{chunk-L3VPQN5T.js → chunk-OTXFBNCU.js} +2 -2
- package/dist/{chunk-XMFWH5SU.js → chunk-OUXB7ICZ.js} +2 -2
- package/dist/chunk-OUXB7ICZ.js.map +1 -0
- package/dist/chunk-P7QOD4IU.cjs +4 -0
- package/dist/chunk-P7QOD4IU.cjs.map +1 -0
- package/dist/chunk-PFUJ3AOW.cjs +4 -0
- package/dist/chunk-PFUJ3AOW.cjs.map +1 -0
- package/dist/{chunk-KKHWPT5B.js → chunk-PGDFEVA5.js} +2 -2
- package/dist/{chunk-N2PQS6HG.js → chunk-PJCXETFD.js} +2 -2
- package/dist/chunk-PUDGKBPK.cjs +4 -0
- package/dist/chunk-PUDGKBPK.cjs.map +1 -0
- package/dist/chunk-Q3DKQMOH.cjs +4 -0
- package/dist/chunk-Q3DKQMOH.cjs.map +1 -0
- package/dist/chunk-Q6ZC2EJ2.js +4 -0
- package/dist/chunk-Q6ZC2EJ2.js.map +1 -0
- package/dist/{chunk-OLBF7CZD.cjs → chunk-QE5G52MR.cjs} +2 -2
- package/dist/{chunk-OLBF7CZD.cjs.map → chunk-QE5G52MR.cjs.map} +1 -1
- package/dist/chunk-QLMLIOWZ.cjs +4 -0
- package/dist/chunk-QLMLIOWZ.cjs.map +1 -0
- package/dist/chunk-QNITBIE4.js +4 -0
- package/dist/chunk-QNITBIE4.js.map +1 -0
- package/dist/chunk-RLXZVTER.js +4 -0
- package/dist/chunk-RLXZVTER.js.map +1 -0
- package/dist/chunk-RNP3S7YU.js +4 -0
- package/dist/chunk-RNP3S7YU.js.map +1 -0
- package/dist/{chunk-3OBTLZHR.js → chunk-RQVUMCZA.js} +2 -2
- package/dist/chunk-RQXSWZUH.cjs +4 -0
- package/dist/chunk-RQXSWZUH.cjs.map +1 -0
- package/dist/chunk-RS5YT3MK.cjs +4 -0
- package/dist/chunk-RS5YT3MK.cjs.map +1 -0
- package/dist/chunk-RV2FEKIE.cjs +4 -0
- package/dist/chunk-RV2FEKIE.cjs.map +1 -0
- package/dist/{chunk-XCT44JDG.js → chunk-S4U7KSTZ.js} +2 -2
- package/dist/chunk-SIUB7RNN.js +4 -0
- package/dist/chunk-SIUB7RNN.js.map +1 -0
- package/dist/chunk-SSI6IYHS.cjs +4 -0
- package/dist/chunk-SSI6IYHS.cjs.map +1 -0
- package/dist/chunk-TEIATTNR.js +4 -0
- package/dist/chunk-TEIATTNR.js.map +1 -0
- package/dist/chunk-U7CFC6Z2.cjs +4 -0
- package/dist/chunk-U7CFC6Z2.cjs.map +1 -0
- package/dist/{chunk-JCNQCBO7.cjs → chunk-UG5NCEQH.cjs} +2 -2
- package/dist/{chunk-JCNQCBO7.cjs.map → chunk-UG5NCEQH.cjs.map} +1 -1
- package/dist/chunk-UPYADVVW.js +4 -0
- package/dist/chunk-UPYADVVW.js.map +1 -0
- package/dist/{chunk-U44ALMBI.js → chunk-UYQNCEW5.js} +2 -2
- package/dist/{chunk-HNPNWQMD.js → chunk-V4BZIPQB.js} +2 -2
- package/dist/{chunk-R6KCU4S7.cjs → chunk-V5F33HLX.cjs} +2 -2
- package/dist/{chunk-R6KCU4S7.cjs.map → chunk-V5F33HLX.cjs.map} +1 -1
- package/dist/chunk-VEOECLHI.cjs +4 -0
- package/dist/chunk-VEOECLHI.cjs.map +1 -0
- package/dist/chunk-VSV7P6QO.cjs +4 -0
- package/dist/{chunk-WB4GZ3CX.cjs.map → chunk-VSV7P6QO.cjs.map} +1 -1
- package/dist/{chunk-3SXNUUIV.cjs → chunk-VZ37XNSE.cjs} +2 -2
- package/dist/{chunk-3SXNUUIV.cjs.map → chunk-VZ37XNSE.cjs.map} +1 -1
- package/dist/chunk-WCHIJDDF.cjs +4 -0
- package/dist/chunk-WCHIJDDF.cjs.map +1 -0
- package/dist/{chunk-WAS47BSQ.js → chunk-X6FC4KSH.js} +2 -2
- package/dist/{chunk-NEUOBQLL.cjs → chunk-XKBBOWVM.cjs} +2 -2
- package/dist/{chunk-NEUOBQLL.cjs.map → chunk-XKBBOWVM.cjs.map} +1 -1
- package/dist/{chunk-L7I7AUWH.cjs → chunk-XL66CZU5.cjs} +2 -2
- package/dist/{chunk-L7I7AUWH.cjs.map → chunk-XL66CZU5.cjs.map} +1 -1
- package/dist/{chunk-UQEUXEEG.js → chunk-XNL45RW3.js} +2 -2
- package/dist/{chunk-4VS7B2ZG.cjs → chunk-XPN7BKU2.cjs} +2 -2
- package/dist/{chunk-4VS7B2ZG.cjs.map → chunk-XPN7BKU2.cjs.map} +1 -1
- package/dist/{chunk-TGMNEOLU.cjs → chunk-XYL3ZE55.cjs} +2 -2
- package/dist/chunk-XYL3ZE55.cjs.map +1 -0
- package/dist/{chunk-QVE4N4F2.js → chunk-YEUIB4QY.js} +2 -2
- package/dist/chunk-YOSI2OCC.js +4 -0
- package/dist/{chunk-F6H2C3OA.js.map → chunk-YOSI2OCC.js.map} +1 -1
- package/dist/{chunk-XZBPR3WG.cjs → chunk-ZKHAEQHH.cjs} +2 -2
- package/dist/{chunk-XZBPR3WG.cjs.map → chunk-ZKHAEQHH.cjs.map} +1 -1
- package/dist/components/Accordion/Accordion.cjs +1 -1
- package/dist/components/Accordion/Accordion.js +1 -1
- package/dist/components/Alert/Alert.cjs +1 -1
- package/dist/components/Alert/Alert.d.ts.map +1 -1
- package/dist/components/Alert/Alert.js +1 -1
- package/dist/components/Alert/AlertIconButton.cjs +1 -1
- package/dist/components/Alert/AlertIconButton.js +1 -1
- package/dist/components/Button/Button.cjs +1 -1
- package/dist/components/Button/Button.js +1 -1
- package/dist/components/ButtonBase/ButtonBase.cjs +1 -1
- package/dist/components/ButtonBase/ButtonBase.d.ts.map +1 -1
- package/dist/components/ButtonBase/ButtonBase.js +1 -1
- package/dist/components/CardAccordion/CardAccordion.cjs +1 -1
- package/dist/components/CardAccordion/CardAccordion.js +1 -1
- package/dist/components/CardAccordion/CardAccordionButton.cjs +1 -1
- package/dist/components/CardAccordion/CardAccordionButton.js +1 -1
- package/dist/components/CardAccordion/CardAccordionItem.cjs +1 -1
- package/dist/components/CardAccordion/CardAccordionItem.js +1 -1
- package/dist/components/Checkbox/Checkbox.cjs +1 -1
- package/dist/components/Checkbox/Checkbox.d.ts.map +1 -1
- package/dist/components/Checkbox/Checkbox.js +1 -1
- package/dist/components/CheckboxGroup/CheckboxGroup.cjs +1 -1
- package/dist/components/CheckboxGroup/CheckboxGroup.js +1 -1
- package/dist/components/CheckboxTile/CheckboxTile.cjs +1 -1
- package/dist/components/CheckboxTile/CheckboxTile.d.ts.map +1 -1
- package/dist/components/CheckboxTile/CheckboxTile.js +1 -1
- package/dist/components/Combobox/Combobox.cjs +1 -1
- package/dist/components/Combobox/Combobox.cjs.map +1 -1
- package/dist/components/Combobox/Combobox.d.ts.map +1 -1
- package/dist/components/Combobox/Combobox.js +1 -1
- package/dist/components/CurrencyInput/CurrencyInput.cjs +1 -1
- package/dist/components/CurrencyInput/CurrencyInput.js +1 -1
- package/dist/components/DateInput/DateInput.cjs +1 -1
- package/dist/components/DateInput/DateInput.d.ts.map +1 -1
- package/dist/components/DateInput/DateInput.js +1 -1
- package/dist/components/DatePicker/DatePicker.cjs +1 -1
- package/dist/components/DatePicker/DatePicker.d.ts.map +1 -1
- package/dist/components/DatePicker/DatePicker.js +1 -1
- package/dist/components/DatePicker/DatePickerHeader.cjs +1 -1
- package/dist/components/DatePicker/DatePickerHeader.d.ts.map +1 -1
- package/dist/components/DatePicker/DatePickerHeader.js +1 -1
- package/dist/components/DescriptionList/DescriptionList.cjs +1 -1
- package/dist/components/DescriptionList/DescriptionList.js +1 -1
- package/dist/components/ExpandableCard/ExpandableCardGroup.cjs +1 -1
- package/dist/components/ExpandableCard/ExpandableCardGroup.js +1 -1
- package/dist/components/FormGroupBase/FormGroupBase.cjs +1 -1
- package/dist/components/FormGroupBase/FormGroupBase.d.ts.map +1 -1
- package/dist/components/FormGroupBase/FormGroupBase.js +1 -1
- package/dist/components/IconButton/IconButton.cjs +1 -1
- package/dist/components/IconButton/IconButton.js +1 -1
- package/dist/components/List/List.cjs +1 -1
- package/dist/components/List/List.js +1 -1
- package/dist/components/List/ListActionButton.cjs +1 -1
- package/dist/components/List/ListActionButton.d.ts.map +1 -1
- package/dist/components/List/ListActionButton.js +1 -1
- package/dist/components/List/ListItemButton.cjs +1 -1
- package/dist/components/List/ListItemButton.d.ts.map +1 -1
- package/dist/components/List/ListItemButton.js +1 -1
- package/dist/components/Modal/Modal.cjs +1 -1
- package/dist/components/Modal/Modal.js +1 -1
- package/dist/components/Pagination/Pagination.cjs +1 -1
- package/dist/components/Pagination/Pagination.d.ts.map +1 -1
- package/dist/components/Pagination/Pagination.js +1 -1
- package/dist/components/PasswordInput/PasswordInput.cjs +1 -1
- package/dist/components/PasswordInput/PasswordInput.js +1 -1
- package/dist/components/ProgressStepper/ProgressStepButton.cjs +1 -1
- package/dist/components/ProgressStepper/ProgressStepButton.js +1 -1
- package/dist/components/Radio/Radio.cjs +1 -1
- package/dist/components/Radio/Radio.cjs.map +1 -1
- package/dist/components/Radio/Radio.d.ts.map +1 -1
- package/dist/components/Radio/Radio.js +1 -1
- package/dist/components/RadioCard/RadioCard.cjs +1 -1
- package/dist/components/RadioCard/RadioCard.js +1 -1
- package/dist/components/RadioGroup/RadioGroup.cjs +1 -1
- package/dist/components/RadioGroup/RadioGroup.js +1 -1
- package/dist/components/RadioTile/RadioTile.cjs +1 -1
- package/dist/components/RadioTile/RadioTile.cjs.map +1 -1
- package/dist/components/RadioTile/RadioTile.d.ts.map +1 -1
- package/dist/components/RadioTile/RadioTile.js +1 -1
- package/dist/components/SearchInput/SearchInput.cjs +1 -1
- package/dist/components/SearchInput/SearchInput.js +1 -1
- package/dist/components/SectionHeader/SectionHeader.cjs +1 -1
- package/dist/components/SectionHeader/SectionHeader.js +1 -1
- package/dist/components/Select/Select.cjs +1 -1
- package/dist/components/Select/Select.cjs.map +1 -1
- package/dist/components/Select/Select.d.ts.map +1 -1
- package/dist/components/Select/Select.js +1 -1
- package/dist/components/Skeleton/SkeletonBodyText.cjs +1 -1
- package/dist/components/Skeleton/SkeletonBodyText.js +1 -1
- package/dist/components/Switch/Switch.cjs +1 -1
- package/dist/components/Switch/Switch.d.ts.map +1 -1
- package/dist/components/Switch/Switch.js +1 -1
- package/dist/components/Table/Table.cjs +1 -1
- package/dist/components/Table/Table.d.ts.map +1 -1
- package/dist/components/Table/Table.js +1 -1
- package/dist/components/Table/TablePagination.cjs +1 -1
- package/dist/components/Table/TablePagination.js +1 -1
- package/dist/components/Tabs/TabsList.cjs +1 -1
- package/dist/components/Tabs/TabsList.d.ts.map +1 -1
- package/dist/components/Tabs/TabsList.js +1 -1
- package/dist/components/TextArea/TextArea.cjs +1 -1
- package/dist/components/TextArea/TextArea.d.ts.map +1 -1
- package/dist/components/TextArea/TextArea.js +1 -1
- package/dist/components/TextInput/TextInput.cjs +1 -1
- package/dist/components/TextInput/TextInput.d.ts.map +1 -1
- package/dist/components/TextInput/TextInput.js +1 -1
- package/dist/components/Toast/Toast.cjs +1 -1
- package/dist/components/Toast/Toast.js +1 -1
- package/dist/components/Toast/ToastProvider.cjs +1 -1
- package/dist/components/Toast/ToastProvider.cjs.map +1 -1
- package/dist/components/Toast/ToastProvider.d.ts +1 -1
- package/dist/components/Toast/ToastProvider.d.ts.map +1 -1
- package/dist/components/Toast/ToastProvider.js +1 -1
- package/dist/components/UnstyledIconButton/UnstyledIconButton.cjs +1 -1
- package/dist/components/UnstyledIconButton/UnstyledIconButton.d.ts.map +1 -1
- package/dist/components/UnstyledIconButton/UnstyledIconButton.js +1 -1
- package/dist/components/VerificationInput/VerificationInput.cjs +1 -1
- package/dist/components/VerificationInput/VerificationInput.d.ts.map +1 -1
- package/dist/components/VerificationInput/VerificationInput.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +1 -1
- package/package.json +3 -3
- package/public/llms/components/button.md +5 -3
- package/public/llms/components/icon-button.md +5 -3
- package/public/llms/components/search-input.md +4 -3
- package/public/llms/components/switch.md +2 -3
- package/public/llms/components/unstyled-icon-button.md +5 -3
- package/public/llms/docs/getting-started.md +1 -1
- package/dist/chunk-2MIDU3YN.cjs +0 -4
- package/dist/chunk-2MIDU3YN.cjs.map +0 -1
- package/dist/chunk-55RXL2DV.js +0 -4
- package/dist/chunk-55RXL2DV.js.map +0 -1
- package/dist/chunk-6WCPGWVO.cjs +0 -4
- package/dist/chunk-6WCPGWVO.cjs.map +0 -1
- package/dist/chunk-B2HYTGSB.js +0 -4
- package/dist/chunk-B2HYTGSB.js.map +0 -1
- package/dist/chunk-BDJRXINR.js +0 -4
- package/dist/chunk-BDJRXINR.js.map +0 -1
- package/dist/chunk-BVXR3BGZ.cjs +0 -4
- package/dist/chunk-BVXR3BGZ.cjs.map +0 -1
- package/dist/chunk-BXDF7Z4R.js +0 -4
- package/dist/chunk-C3INLFOU.cjs +0 -4
- package/dist/chunk-C3INLFOU.cjs.map +0 -1
- package/dist/chunk-CAZQKOY3.cjs +0 -4
- package/dist/chunk-CAZQKOY3.cjs.map +0 -1
- package/dist/chunk-CQ2YNOHB.js +0 -4
- package/dist/chunk-CQ2YNOHB.js.map +0 -1
- package/dist/chunk-CVKTRCKW.js +0 -4
- package/dist/chunk-CVKTRCKW.js.map +0 -1
- package/dist/chunk-CW6UT3QU.js +0 -4
- package/dist/chunk-CW6UT3QU.js.map +0 -1
- package/dist/chunk-EFQSAW3M.js +0 -4
- package/dist/chunk-EFQSAW3M.js.map +0 -1
- package/dist/chunk-F6H2C3OA.js +0 -4
- package/dist/chunk-F7A4D3PD.cjs.map +0 -1
- package/dist/chunk-FSOQCT7B.js +0 -4
- package/dist/chunk-GAFUPNEN.js.map +0 -1
- package/dist/chunk-HMT3R4UW.cjs +0 -4
- package/dist/chunk-HMT3R4UW.cjs.map +0 -1
- package/dist/chunk-I4T6DB7C.js.map +0 -1
- package/dist/chunk-ICJHFSP5.js +0 -4
- package/dist/chunk-IXUXDCQL.cjs +0 -4
- package/dist/chunk-IXUXDCQL.cjs.map +0 -1
- package/dist/chunk-J55UWDJJ.js +0 -4
- package/dist/chunk-J55UWDJJ.js.map +0 -1
- package/dist/chunk-JEJLX5DM.js +0 -4
- package/dist/chunk-JEJLX5DM.js.map +0 -1
- package/dist/chunk-KZRXT3QQ.cjs +0 -4
- package/dist/chunk-KZRXT3QQ.cjs.map +0 -1
- package/dist/chunk-LBC2WFPQ.js +0 -4
- package/dist/chunk-LBC2WFPQ.js.map +0 -1
- package/dist/chunk-LRFEHB5Y.js +0 -4
- package/dist/chunk-LRFEHB5Y.js.map +0 -1
- package/dist/chunk-MD3VAECH.js +0 -4
- package/dist/chunk-MD3VAECH.js.map +0 -1
- package/dist/chunk-O7X6QXBO.js +0 -4
- package/dist/chunk-O7X6QXBO.js.map +0 -1
- package/dist/chunk-P4FX42C6.cjs +0 -4
- package/dist/chunk-P4FX42C6.cjs.map +0 -1
- package/dist/chunk-PEG7JY2N.js +0 -4
- package/dist/chunk-PEG7JY2N.js.map +0 -1
- package/dist/chunk-QLKWVS6B.js +0 -4
- package/dist/chunk-QLKWVS6B.js.map +0 -1
- package/dist/chunk-QWB4MMLE.js +0 -4
- package/dist/chunk-QWB4MMLE.js.map +0 -1
- package/dist/chunk-RF5NDA46.cjs.map +0 -1
- package/dist/chunk-S7R53S6F.js +0 -4
- package/dist/chunk-S7R53S6F.js.map +0 -1
- package/dist/chunk-TGMNEOLU.cjs.map +0 -1
- package/dist/chunk-TTW4NON4.cjs +0 -4
- package/dist/chunk-TTW4NON4.cjs.map +0 -1
- package/dist/chunk-UFHEYLW3.cjs +0 -4
- package/dist/chunk-UFHEYLW3.cjs.map +0 -1
- package/dist/chunk-UNDW2NW7.cjs.map +0 -1
- package/dist/chunk-UVHPJNXC.cjs +0 -4
- package/dist/chunk-UVHPJNXC.cjs.map +0 -1
- package/dist/chunk-VME2FDDL.cjs +0 -4
- package/dist/chunk-VME2FDDL.cjs.map +0 -1
- package/dist/chunk-WB4GZ3CX.cjs +0 -4
- package/dist/chunk-WFVKT4MG.cjs +0 -4
- package/dist/chunk-WFVKT4MG.cjs.map +0 -1
- package/dist/chunk-WMOTZLQC.cjs +0 -4
- package/dist/chunk-WW43YAWT.cjs +0 -4
- package/dist/chunk-WW43YAWT.cjs.map +0 -1
- package/dist/chunk-WYLVXCEC.js.map +0 -1
- package/dist/chunk-XBK44AAM.js +0 -4
- package/dist/chunk-XMFWH5SU.js.map +0 -1
- package/dist/chunk-YAI34QHN.cjs +0 -4
- package/dist/chunk-YAI34QHN.cjs.map +0 -1
- package/dist/chunk-YEZ6N62U.cjs +0 -4
- package/dist/chunk-YMTA7AWP.cjs +0 -4
- package/dist/chunk-YMTA7AWP.cjs.map +0 -1
- package/dist/chunk-Z6QLCWLT.js +0 -4
- package/dist/chunk-Z6QLCWLT.js.map +0 -1
- package/dist/chunk-ZMDXNCUJ.cjs +0 -4
- package/dist/chunk-ZMDXNCUJ.cjs.map +0 -1
- /package/dist/{chunk-2MQ6FGCP.js.map → chunk-2T6JOGY4.js.map} +0 -0
- /package/dist/{chunk-UNIBG2C6.js.map → chunk-7VHYXPJC.js.map} +0 -0
- /package/dist/{chunk-OQ7TRS57.js.map → chunk-DYMXUQM4.js.map} +0 -0
- /package/dist/{chunk-VVBUEPWH.js.map → chunk-EERWIJJE.js.map} +0 -0
- /package/dist/{chunk-Y2YBHHIX.js.map → chunk-EWEFZ6ZZ.js.map} +0 -0
- /package/dist/{chunk-IEKB4IRY.js.map → chunk-F4VHCEOC.js.map} +0 -0
- /package/dist/{chunk-7ILZKQOQ.js.map → chunk-HH27I2KI.js.map} +0 -0
- /package/dist/{chunk-XAJGQUSC.js.map → chunk-KNPNKYUS.js.map} +0 -0
- /package/dist/{chunk-L3VPQN5T.js.map → chunk-OTXFBNCU.js.map} +0 -0
- /package/dist/{chunk-KKHWPT5B.js.map → chunk-PGDFEVA5.js.map} +0 -0
- /package/dist/{chunk-N2PQS6HG.js.map → chunk-PJCXETFD.js.map} +0 -0
- /package/dist/{chunk-3OBTLZHR.js.map → chunk-RQVUMCZA.js.map} +0 -0
- /package/dist/{chunk-XCT44JDG.js.map → chunk-S4U7KSTZ.js.map} +0 -0
- /package/dist/{chunk-U44ALMBI.js.map → chunk-UYQNCEW5.js.map} +0 -0
- /package/dist/{chunk-HNPNWQMD.js.map → chunk-V4BZIPQB.js.map} +0 -0
- /package/dist/{chunk-WAS47BSQ.js.map → chunk-X6FC4KSH.js.map} +0 -0
- /package/dist/{chunk-UQEUXEEG.js.map → chunk-XNL45RW3.js.map} +0 -0
- /package/dist/{chunk-QVE4N4F2.js.map → chunk-YEUIB4QY.js.map} +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
import{a as l}from"./chunk-NMFPRBPK.js";import{a}from"./chunk-
|
|
4
|
-
//# sourceMappingURL=chunk-
|
|
3
|
+
import{a as l}from"./chunk-NMFPRBPK.js";import{a}from"./chunk-PJCXETFD.js";import{a as m}from"./chunk-4MNQRAHO.js";import{a as p}from"./chunk-RXW6PYP7.js";import{a as n}from"./chunk-OPPG3NOC.js";import{a as s}from"./chunk-KGEVWEVL.js";import{a as e}from"./chunk-J3AJBV4B.js";import{b as r}from"./chunk-PDEVCIQ3.js";import{forwardRef as B}from"react";import{jsx as t,jsxs as H}from"react/jsx-runtime";var c="DescriptionList",o=r(c),F=B((d,f)=>{let{className:x,style:P,heading:i,headingElement:D,helperText:h,trailingContent:C,children:L,direction:N,validationText:v,validationStatus:y,width:E,maxWidth:g,minWidth:u,...w}=s(d,n),R={style:P,width:E,maxWidth:g,minWidth:u},T={heading:i,headingElement:D,helperText:h,trailingContent:C,validationText:v,validationStatus:y};return H(p,{className:e(o,x),"data-testid":o,...R,children:[i?t(a,{...T}):null,t(m,{asChild:!0,className:`${o}Container`,role:"list",children:t("dl",{ref:f,role:"list",...w,children:t(l.Provider,{value:{direction:N},children:L})})})]})});F.displayName=c;export{F as a};
|
|
4
|
+
//# sourceMappingURL=chunk-PGDFEVA5.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
import{a as f}from"./chunk-QQR2AVHA.js";import{a as s}from"./chunk-JWPVXXER.js";import{a as l}from"./chunk-3KEOP2WO.js";import{a as
|
|
4
|
-
//# sourceMappingURL=chunk-
|
|
3
|
+
import{a as f}from"./chunk-QQR2AVHA.js";import{a as s}from"./chunk-JWPVXXER.js";import{a as l}from"./chunk-3KEOP2WO.js";import{a as p}from"./chunk-4MNQRAHO.js";import{a as d}from"./chunk-RXW6PYP7.js";import{a as m}from"./chunk-J3AJBV4B.js";import{b as a}from"./chunk-PDEVCIQ3.js";import{forwardRef as y}from"react";import{jsx as e,jsxs as c}from"react/jsx-runtime";var H="SectionHeader",o=a(H),P=y(({className:x,heading:N,id:C,headingElement:E="div",helperText:t,trailingContent:n,validationText:r,validationStatus:i,direction:S,...u},T)=>{let g=i!==void 0&&r!==void 0;return c(p,{ref:T,className:m(o,x),direction:S,"data-testid":o,...u,children:[c(d,{className:`${o}Content`,children:[e(l,{asChild:!0,size:"md",id:C,children:e(E,{children:N})}),t?e(s,{children:t}):null,g?e(f,{status:i,children:r}):null]}),n?e("span",{className:`${o}TrailingContent`,children:n}):null]})});P.displayName=H;export{P as a};
|
|
4
|
+
//# sourceMappingURL=chunk-PJCXETFD.js.map
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
|
|
2
|
+
|
|
3
|
+
var _chunkVEOECLHIcjs = require('./chunk-VEOECLHI.cjs');var _chunkIAFYIHVPcjs = require('./chunk-IAFYIHVP.cjs');var _chunkRS5YT3MKcjs = require('./chunk-RS5YT3MK.cjs');var _chunkHHKQ3ZBDcjs = require('./chunk-HHKQ3ZBD.cjs');var _chunkRIHABKWYcjs = require('./chunk-RIHABKWY.cjs');var _chunkONNSZMWFcjs = require('./chunk-ONNSZMWF.cjs');var _chunk4Q432K4Wcjs = require('./chunk-4Q432K4W.cjs');var _hearthreacticons = require('@utilitywarehouse/hearth-react-icons');var _react = require('react');var _useMergedRefs = require('@base-ui/utils/useMergedRefs');var _jsxruntime = require('react/jsx-runtime');var a="SearchInput",f=_chunk4Q432K4Wcjs.b.call(void 0, a),L= exports.a =_react.forwardRef.call(void 0, ({className:I,disabled:p,value:r,onClear:n,loading:d,hideLabel:h=!0,helperText:S,id:y,...x},b)=>{let e=_react.useRef.call(void 0, null),E=_useMergedRefs.useMergedRefs.call(void 0, b,e),M=_react.useCallback.call(void 0, N=>{typeof n!="function"||N.button!==0||(n(),e&&typeof e=="object"&&e.current&&e.current.focus())},[e,n]),{id:B}=_chunkRIHABKWYcjs.a.call(void 0, {providedId:y,prefix:"search-input"});return _jsxruntime.jsxs.call(void 0, _chunkVEOECLHIcjs.a,{ref:E,className:_chunkONNSZMWFcjs.a.call(void 0, f,I),type:"search",enterKeyHint:"search",disabled:p,hideLabel:h,helperText:S,value:r,id:B,"data-testid":f,...x,children:[_jsxruntime.jsx.call(void 0, _chunkIAFYIHVPcjs.a,{placement:"prefix",children:_jsxruntime.jsx.call(void 0, _hearthreacticons.SearchMediumIcon,{})}),d?_jsxruntime.jsx.call(void 0, _chunkIAFYIHVPcjs.a,{placement:"suffix",children:_jsxruntime.jsx.call(void 0, _chunkHHKQ3ZBDcjs.a,{size:"xs",color:"primary"})}):null,n!==void 0&&r!==void 0&&String(r).length>0?_jsxruntime.jsx.call(void 0, _chunkIAFYIHVPcjs.a,{placement:"suffix",children:_jsxruntime.jsx.call(void 0, _chunkRS5YT3MKcjs.a,{type:"button",label:"clear search",onClick:M,disabled:p,children:_jsxruntime.jsx.call(void 0, _hearthreacticons.CloseSmallIcon,{})})}):null]})});L.displayName=a;exports.a = L;
|
|
4
|
+
//# sourceMappingURL=chunk-PUDGKBPK.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-PUDGKBPK.cjs","../src/components/SearchInput/SearchInput.tsx"],"names":["COMPONENT_NAME","componentClassName","withGlobalPrefix","SearchInput","forwardRef","className","disabled","value","onClear","loading","hideLabel","helperText","providedId","props","forwardedRef","internalRef","useRef","inputRef","useMergedRefs","handleClear","useCallback","event","id","useIds","jsxs","TextInput","cn","jsx","InputSlot","SearchMediumIcon","Spinner","UnstyledIconButton","CloseSmallIcon"],"mappings":"AAAA,qFAAY;AACZ;AACA,wDAAwC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,wECO7O,8BAED,6DAGlB,+CAkDxB,IAhDAA,CAAAA,CAAiB,aAAA,CACjBC,CAAAA,CAAqBC,iCAAAA,CAA+B,CAAA,CAY7CC,CAAAA,aAAcC,+BAAAA,CAEvB,CACE,SAAA,CAAAC,CAAAA,CACA,QAAA,CAAAC,CAAAA,CACA,KAAA,CAAAC,CAAAA,CACA,OAAA,CAAAC,CAAAA,CACA,OAAA,CAAAC,CAAAA,CACA,SAAA,CAAAC,CAAAA,CAAY,CAAA,CAAA,CACZ,UAAA,CAAAC,CAAAA,CACA,EAAA,CAAIC,CAAAA,CACJ,GAAGC,CACL,CAAA,CACAC,CAAAA,CAAAA,EACG,CACH,IAAMC,CAAAA,CAAcC,2BAAAA,IAAoC,CAAA,CAClDC,CAAAA,CAAWC,0CAAAA,CAAcJ,CAAcC,CAAW,CAAA,CAElDI,CAAAA,CAAcC,gCAAAA,CACjBC,EAAyC,CACpC,OAAOb,CAAAA,EAAY,UAAA,EAAca,CAAAA,CAAM,MAAA,GAAW,CAAA,EAAA,CAGtDb,CAAAA,CAAQ,CAAA,CAEJO,CAAAA,EAAe,OAAOA,CAAAA,EAAgB,QAAA,EAAYA,CAAAA,CAAY,OAAA,EAChEA,CAAAA,CAAY,OAAA,CAAQ,KAAA,CAAM,CAAA,CAE9B,CAAA,CACA,CAACA,CAAAA,CAAaP,CAAO,CACvB,CAAA,CAEM,CAAE,EAAA,CAAAc,CAAG,CAAA,CAAIC,iCAAAA,CAAS,UAAA,CAAAX,CAAAA,CAAY,MAAA,CAAQ,cAAe,CAAC,CAAA,CAE5D,OACEY,8BAAAA,mBAACC,CAAA,CACC,GAAA,CAAKR,CAAAA,CACL,SAAA,CAAWS,iCAAAA,CAAGzB,CAAoBI,CAAS,CAAA,CAC3C,IAAA,CAAK,QAAA,CACL,YAAA,CAAa,QAAA,CACb,QAAA,CAAUC,CAAAA,CACV,SAAA,CAAWI,CAAAA,CACX,UAAA,CAAYC,CAAAA,CACZ,KAAA,CAAOJ,CAAAA,CACP,EAAA,CAAIe,CAAAA,CACJ,aAAA,CAAarB,CAAAA,CACZ,GAAGY,CAAAA,CAEJ,QAAA,CAAA,CAAAc,6BAAAA,mBAACC,CAAA,CAAU,SAAA,CAAU,QAAA,CACnB,QAAA,CAAAD,6BAAAA,kCAACE,CAAA,CAAA,CAAiB,CAAA,CACpB,CAAA,CACCpB,CAAAA,CACCkB,6BAAAA,mBAACC,CAAA,CAAU,SAAA,CAAU,QAAA,CACnB,QAAA,CAAAD,6BAAAA,mBAACG,CAAA,CAAQ,IAAA,CAAK,IAAA,CAAK,KAAA,CAAM,SAAA,CAAU,CAAA,CACrC,CAAA,CACE,IAAA,CACHtB,CAAAA,GAAY,KAAA,CAAA,EAAaD,CAAAA,GAAU,KAAA,CAAA,EAAa,MAAA,CAAOA,CAAK,CAAA,CAAE,MAAA,CAAS,CAAA,CACtEoB,6BAAAA,mBAACC,CAAA,CAAU,SAAA,CAAU,QAAA,CACnB,QAAA,CAAAD,6BAAAA,mBAACI,CAAA,CACC,IAAA,CAAK,QAAA,CACL,KAAA,CAAM,cAAA,CACN,OAAA,CAASZ,CAAAA,CACT,QAAA,CAAUb,CAAAA,CAEV,QAAA,CAAAqB,6BAAAA,gCAACK,CAAA,CAAA,CAAe,CAAA,CAClB,CAAA,CACF,CAAA,CACE,IAAA,CAAA,CACN,CAEJ,CACF,CAAA,CAEA7B,CAAAA,CAAY,WAAA,CAAcH,CAAAA,CAAAA,cAAAA","file":"/home/runner/work/hearth/hearth/packages/react/dist/chunk-PUDGKBPK.cjs","sourcesContent":[null,"'use client';\n\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport { cn } from '../../helpers/cn';\nimport { TextInput } from '../TextInput/TextInput';\nimport { InputSlot } from '../InputSlot/InputSlot';\nimport { UnstyledIconButton } from '../UnstyledIconButton/UnstyledIconButton';\nimport type { SearchInputProps } from './SearchInput.props';\nimport { Spinner } from '../Spinner/Spinner';\nimport { CloseSmallIcon, SearchMediumIcon } from '@utilitywarehouse/hearth-react-icons';\nimport { useIds } from '../../hooks/use-ids';\nimport { forwardRef, useRef, useCallback } from 'react';\nimport type { InputBaseElement } from '../InputBase/InputBase';\nimport type { MouseEvent } from 'react';\nimport { useMergedRefs } from '@base-ui/utils/useMergedRefs';\n\nconst COMPONENT_NAME = 'SearchInput';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\n/**\n * Use SearchInput to let users enter a keyword or phrase to search content\n * related to the context it's placed in. Pass an `onClear` handler to show a\n * clear button, and set `loading` to display a spinner while results are\n * fetched. On desktop and tablet it must be paired with a button to trigger\n * the search; on mobile the keyboard's search action can trigger it instead.\n * For general text entry use TextInput instead.\n *\n * @summary An input for entering a search keyword or phrase.\n */\nexport const SearchInput = forwardRef<InputBaseElement, SearchInputProps>(\n (\n {\n className,\n disabled,\n value,\n onClear,\n loading,\n hideLabel = true,\n helperText,\n id: providedId,\n ...props\n },\n forwardedRef\n ) => {\n const internalRef = useRef<HTMLInputElement | null>(null);\n const inputRef = useMergedRefs(forwardedRef, internalRef);\n\n const handleClear = useCallback(\n (event: MouseEvent<HTMLButtonElement>) => {\n if (typeof onClear !== 'function' || event.button !== 0) {\n return;\n }\n onClear();\n\n if (internalRef && typeof internalRef === 'object' && internalRef.current) {\n internalRef.current.focus();\n }\n },\n [internalRef, onClear]\n );\n\n const { id } = useIds({ providedId, prefix: 'search-input' });\n\n return (\n <TextInput\n ref={inputRef}\n className={cn(componentClassName, className)}\n type=\"search\"\n enterKeyHint=\"search\"\n disabled={disabled}\n hideLabel={hideLabel}\n helperText={helperText}\n value={value}\n id={id}\n data-testid={componentClassName}\n {...props}\n >\n <InputSlot placement=\"prefix\">\n <SearchMediumIcon />\n </InputSlot>\n {loading ? (\n <InputSlot placement=\"suffix\">\n <Spinner size=\"xs\" color=\"primary\" />\n </InputSlot>\n ) : null}\n {onClear !== undefined && value !== undefined && String(value).length > 0 ? (\n <InputSlot placement=\"suffix\">\n <UnstyledIconButton\n type=\"button\"\n label=\"clear search\"\n onClick={handleClear}\n disabled={disabled}\n >\n <CloseSmallIcon />\n </UnstyledIconButton>\n </InputSlot>\n ) : null}\n </TextInput>\n );\n }\n);\n\nSearchInput.displayName = COMPONENT_NAME;\n"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
|
|
2
|
+
|
|
3
|
+
var _chunkIAFYIHVPcjs = require('./chunk-IAFYIHVP.cjs');var _chunkB2HYSLUXcjs = require('./chunk-B2HYSLUX.cjs');var _chunkZ6OA4XPPcjs = require('./chunk-Z6OA4XPP.cjs');var _chunkY4KCRRDDcjs = require('./chunk-Y4KCRRDD.cjs');var _chunkN4PBDFEJcjs = require('./chunk-N4PBDFEJ.cjs');var _chunkRS5YT3MKcjs = require('./chunk-RS5YT3MK.cjs');var _chunkHHKQ3ZBDcjs = require('./chunk-HHKQ3ZBD.cjs');var _chunkOB7O3UFLcjs = require('./chunk-OB7O3UFL.cjs');var _chunkRIHABKWYcjs = require('./chunk-RIHABKWY.cjs');var _chunkHIF6HKZ3cjs = require('./chunk-HIF6HKZ3.cjs');var _chunkZPJNQBTNcjs = require('./chunk-ZPJNQBTN.cjs');var _chunkONNSZMWFcjs = require('./chunk-ONNSZMWF.cjs');var _chunk4Q432K4Wcjs = require('./chunk-4Q432K4W.cjs');var _combobox = require('@base-ui/react/combobox');var _hearthreacticons = require('@utilitywarehouse/hearth-react-icons');var _radixui = require('radix-ui');var _jsxruntime = require('react/jsx-runtime');var F="Combobox",r=_chunk4Q432K4Wcjs.b.call(void 0, F);function Y(d){let{className:w,children:p,triggerOnlyOnType:C,validationStatus:b,validationText:u,label:M,labelVariant:R,helperText:P,id:L,disabled:t,required:U,noOptionsFoundText:$,statusText:c,loading:D,hideLabel:k,placeholder:q,"aria-describedby":z,...G}=_chunkZPJNQBTNcjs.a.call(void 0, d,_chunkOB7O3UFLcjs.a),{id:S,labelId:H,helperTextId:I,validationTextId:f}=_chunkRIHABKWYcjs.a.call(void 0, {providedId:L,prefix:"combobox"}),a=!t,_={id:S,labelId:H,helperTextId:I,validationTextId:f,label:M,labelVariant:R,helperText:P,validationText:a?u:void 0,validationStatus:a?b:void 0,required:U,hideLabel:k},v=a&&b==="invalid",J=_chunkHIF6HKZ3cjs.a.call(void 0, z,P?I:void 0,a&&b!==void 0&&u!==void 0?f:void 0),K=!!c||!!d.items||!!p;return _jsxruntime.jsx.call(void 0, _chunkZ6OA4XPPcjs.a,{className:_chunkONNSZMWFcjs.a.call(void 0, r,w),"data-disabled":t?"":void 0,"data-testid":r,..._,children:_jsxruntime.jsxs.call(void 0, _combobox.Combobox.Root,{openOnInputClick:!C,...G,children:[_jsxruntime.jsx.call(void 0, _combobox.Combobox.Input,{render:_jsxruntime.jsxs.call(void 0, _chunkB2HYSLUXcjs.a,{id:S,disabled:t,placeholder:q,"aria-describedby":J,"aria-invalid":v?!0:void 0,"aria-errormessage":v&&u!==void 0?f:void 0,children:[_jsxruntime.jsx.call(void 0, _combobox.Combobox.Trigger,{disabled:t,render:_jsxruntime.jsx.call(void 0, _chunkIAFYIHVPcjs.a,{placement:"prefix",asChild:!0,children:_jsxruntime.jsx.call(void 0, _chunkRS5YT3MKcjs.a,{type:"button",label:"Open popup",disabled:t,children:_jsxruntime.jsx.call(void 0, _hearthreacticons.SearchMediumIcon,{})})})}),D?_jsxruntime.jsx.call(void 0, _chunkIAFYIHVPcjs.a,{placement:"suffix",children:_jsxruntime.jsx.call(void 0, _chunkHHKQ3ZBDcjs.a,{size:"xs",color:"primary"})}):null,_jsxruntime.jsx.call(void 0, _combobox.Combobox.Clear,{render:_jsxruntime.jsx.call(void 0, _chunkIAFYIHVPcjs.a,{placement:"suffix",asChild:!0,children:_jsxruntime.jsx.call(void 0, _chunkRS5YT3MKcjs.a,{type:"button",label:"Clear selection",disabled:t,children:_jsxruntime.jsx.call(void 0, _hearthreacticons.CloseSmallIcon,{})})})}),C?null:_jsxruntime.jsx.call(void 0, _combobox.Combobox.Trigger,{disabled:t,render:_jsxruntime.jsx.call(void 0, _chunkIAFYIHVPcjs.a,{placement:"suffix",asChild:!0,children:_jsxruntime.jsx.call(void 0, _chunkRS5YT3MKcjs.a,{type:"button",label:"Open popup",disabled:t,children:_jsxruntime.jsx.call(void 0, _hearthreacticons.ExpandSmallIcon,{})})})})]})}),K?_jsxruntime.jsx.call(void 0, _combobox.Combobox.Portal,{children:_jsxruntime.jsx.call(void 0, _combobox.Combobox.Positioner,{side:"bottom",sideOffset:16,align:"start",alignOffset:-47,children:_jsxruntime.jsxs.call(void 0, _combobox.Combobox.Popup,{className:`${r}Popup`,children:[c?_jsxruntime.jsx.call(void 0, _combobox.Combobox.Status,{className:`${r}StatusText`,children:c}):null,d.items?_jsxruntime.jsx.call(void 0, _chunkY4KCRRDDcjs.a,{className:`${r}Empty`,children:$}):null,_jsxruntime.jsxs.call(void 0, _radixui.ScrollArea.Root,{className:_chunk4Q432K4Wcjs.b.call(void 0, "ScrollAreaRoot"),type:"auto",children:[_jsxruntime.jsx.call(void 0, _radixui.ScrollArea.Viewport,{className:_chunk4Q432K4Wcjs.b.call(void 0, "ScrollAreaViewport"),children:_jsxruntime.jsx.call(void 0, _combobox.Combobox.List,{className:`${r}List`,children:p||(x=>_jsxruntime.jsx.call(void 0, _chunkN4PBDFEJcjs.a,{value:x,children:x},x))})}),_jsxruntime.jsx.call(void 0, _radixui.ScrollArea.Scrollbar,{className:_chunk4Q432K4Wcjs.b.call(void 0, "ScrollAreaScrollbar"),orientation:"vertical",children:_jsxruntime.jsx.call(void 0, _radixui.ScrollArea.Thumb,{className:_chunk4Q432K4Wcjs.b.call(void 0, "ScrollAreaThumb")})})]})]})})}):null]})})}Y.displayName=F;exports.a = Y;
|
|
4
|
+
//# sourceMappingURL=chunk-Q3DKQMOH.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-Q3DKQMOH.cjs","../src/components/Combobox/Combobox.tsx"],"names":["COMPONENT_NAME","componentClassName","withGlobalPrefix","Combobox","props","className","children","triggerOnlyOnType","validationStatus","validationText","label","labelVariant","helperText","providedId","disabled","required","noOptionsFoundText","statusText","loading","hideLabel","placeholder","ariaDescribedby","comboboxProps","extractProps","marginPropDefs","id","labelId","helperTextId","validationTextId","useIds","showValidation","formFieldProps","isInvalid","ariaDescribedbyValue","mergeIds","popupHasContent","jsx","FormField","cn","jsxs","ComboboxPrimitive","InputBase","InputSlot","UnstyledIconButton","SearchMediumIcon","Spinner","CloseSmallIcon","ExpandSmallIcon"],"mappings":"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","file":"/home/runner/work/hearth/hearth/packages/react/dist/chunk-Q3DKQMOH.cjs","sourcesContent":[null,"'use client';\n\nimport { cn } from '../../helpers/cn';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport { extractProps } from '../../helpers/extract-props';\nimport { marginPropDefs } from '../../props/margin.props';\nimport { useIds } from '../../hooks/use-ids';\nimport { mergeIds } from '../../helpers/merge-ids';\nimport { FormField } from '../FormField/FormField';\nimport type { ComboboxProps } from './Combobox.props';\nimport { Combobox as ComboboxPrimitive } from '@base-ui/react/combobox';\nimport { InputBase } from '../InputBase/InputBase';\nimport { InputSlot } from '../InputSlot/InputSlot';\nimport {\n CloseSmallIcon,\n ExpandSmallIcon,\n SearchMediumIcon,\n} from '@utilitywarehouse/hearth-react-icons';\nimport { ComboboxItem } from './ComboboxItem';\nimport { ScrollArea as ScrollAreaPrimitive } from 'radix-ui';\nimport { UnstyledIconButton } from '../UnstyledIconButton/UnstyledIconButton';\nimport { ComboboxEmpty } from './ComboboxEmpty';\nimport { Spinner } from '../Spinner/Spinner';\n\nconst COMPONENT_NAME = 'Combobox';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\n/**\n * Use Combobox to let users type to filter results and select from a\n * predefined list of options. Pass options via the `items` prop to have them\n * rendered automatically, or render `ComboboxItem` children yourself for more\n * control. Set `triggerOnlyOnType` when the user must type before options are\n * surfaced (e.g. a postcode or address lookup); leave it unset when there is a\n * predefined list to choose from by clicking.\n *\n * @summary A text input that lets users filter and select from a list of options.\n */\nexport function Combobox<Value, Multiple extends boolean | undefined = false>(\n props: ComboboxProps<Value, Multiple>\n) {\n const {\n className,\n children,\n triggerOnlyOnType,\n validationStatus,\n validationText,\n label,\n labelVariant,\n helperText,\n id: providedId,\n disabled,\n required,\n noOptionsFoundText,\n statusText,\n loading,\n hideLabel,\n placeholder,\n 'aria-describedby': ariaDescribedby,\n ...comboboxProps\n } = extractProps(props, marginPropDefs);\n\n const { id, labelId, helperTextId, validationTextId } = useIds({\n providedId,\n prefix: 'combobox',\n });\n\n const showValidation = !disabled;\n\n const formFieldProps = {\n id,\n labelId,\n helperTextId,\n validationTextId,\n label,\n labelVariant,\n helperText,\n validationText: showValidation ? validationText : undefined,\n validationStatus: showValidation ? validationStatus : undefined,\n required,\n hideLabel,\n };\n\n const isInvalid = showValidation && validationStatus === 'invalid';\n\n const ariaDescribedbyValue = mergeIds(\n ariaDescribedby,\n helperText ? helperTextId : undefined,\n showValidation && validationStatus !== undefined && validationText !== undefined\n ? validationTextId\n : undefined\n );\n\n const popupHasContent = Boolean(statusText) || Boolean(props.items) || Boolean(children);\n\n return (\n <FormField\n className={cn(componentClassName, className)}\n data-disabled={disabled ? '' : undefined}\n data-testid={componentClassName}\n {...formFieldProps}\n >\n <ComboboxPrimitive.Root openOnInputClick={!triggerOnlyOnType} {...comboboxProps}>\n <ComboboxPrimitive.Input\n render={\n <InputBase\n id={id}\n disabled={disabled}\n placeholder={placeholder}\n aria-describedby={ariaDescribedbyValue}\n aria-invalid={isInvalid ? true : undefined}\n aria-errormessage={\n isInvalid && validationText !== undefined ? validationTextId : undefined\n }\n >\n <ComboboxPrimitive.Trigger\n disabled={disabled}\n render={\n <InputSlot placement=\"prefix\" asChild>\n <UnstyledIconButton type=\"button\" label=\"Open popup\" disabled={disabled}>\n <SearchMediumIcon />\n </UnstyledIconButton>\n </InputSlot>\n }\n />\n {loading ? (\n <InputSlot placement=\"suffix\">\n <Spinner size=\"xs\" color=\"primary\" />\n </InputSlot>\n ) : null}\n <ComboboxPrimitive.Clear\n render={\n <InputSlot placement=\"suffix\" asChild>\n <UnstyledIconButton type=\"button\" label=\"Clear selection\" disabled={disabled}>\n <CloseSmallIcon />\n </UnstyledIconButton>\n </InputSlot>\n }\n />\n {triggerOnlyOnType ? null : (\n <ComboboxPrimitive.Trigger\n disabled={disabled}\n render={\n <InputSlot placement=\"suffix\" asChild>\n <UnstyledIconButton type=\"button\" label=\"Open popup\" disabled={disabled}>\n <ExpandSmallIcon />\n </UnstyledIconButton>\n </InputSlot>\n }\n />\n )}\n </InputBase>\n }\n />\n\n {popupHasContent ? (\n <ComboboxPrimitive.Portal>\n <ComboboxPrimitive.Positioner\n side=\"bottom\"\n sideOffset={16}\n align=\"start\"\n alignOffset={-47}\n >\n <ComboboxPrimitive.Popup className={`${componentClassName}Popup`}>\n {statusText ? (\n <ComboboxPrimitive.Status className={`${componentClassName}StatusText`}>\n {statusText}\n </ComboboxPrimitive.Status>\n ) : null}\n {props.items ? (\n <ComboboxEmpty className={`${componentClassName}Empty`}>\n {noOptionsFoundText}\n </ComboboxEmpty>\n ) : null}\n <ScrollAreaPrimitive.Root\n className={withGlobalPrefix('ScrollAreaRoot')}\n type=\"auto\"\n >\n <ScrollAreaPrimitive.Viewport className={withGlobalPrefix('ScrollAreaViewport')}>\n <ComboboxPrimitive.List className={`${componentClassName}List`}>\n {children\n ? children\n : (item: string) => (\n <ComboboxItem key={item} value={item}>\n {item}\n </ComboboxItem>\n )}\n </ComboboxPrimitive.List>\n </ScrollAreaPrimitive.Viewport>\n <ScrollAreaPrimitive.Scrollbar\n className={withGlobalPrefix('ScrollAreaScrollbar')}\n orientation=\"vertical\"\n >\n <ScrollAreaPrimitive.Thumb className={withGlobalPrefix('ScrollAreaThumb')} />\n </ScrollAreaPrimitive.Scrollbar>\n </ScrollAreaPrimitive.Root>\n </ComboboxPrimitive.Popup>\n </ComboboxPrimitive.Positioner>\n </ComboboxPrimitive.Portal>\n ) : null}\n </ComboboxPrimitive.Root>\n </FormField>\n );\n}\n\nCombobox.displayName = COMPONENT_NAME;\n"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import{a as b}from"./chunk-QNITBIE4.js";import{a as m}from"./chunk-J3AJBV4B.js";import{b as v}from"./chunk-PDEVCIQ3.js";import{forwardRef as B,useCallback as l,useLayoutEffect as P,useRef as T,useState as f}from"react";import{Tabs as k}from"radix-ui";import{ChevronLeftSmallIcon as A,ChevronRightSmallIcon as H}from"@utilitywarehouse/hearth-react-icons";import{jsx as n,jsxs as y}from"react/jsx-runtime";var S="TabsList",s=v(S),U=B(({className:g,children:I,...R},C)=>{let u=T(null),c=T(null),[E,N]=f(0),[W,w]=f(0),[h,M]=f(!1),[p,O]=f(!1),a=l(()=>{let e=u.current;if(!e)return;let t=e.querySelector("."+v('Tab[data-state="active"]'));t&&(N(t.offsetLeft),w(t.offsetWidth))},[]),i=l(()=>{let e=c.current;if(!e)return;let t=e.scrollWidth>e.clientWidth+1,o=t&&e.scrollLeft>0,r=t&&e.scrollLeft+e.clientWidth<e.scrollWidth-1;M(o),O(r)},[]);P(()=>{a(),i();let e=u.current,t=c.current;if(!e&&!t)return;let o=new ResizeObserver(()=>{a(),i()});e&&o.observe(e),t&&o.observe(t);let r=new MutationObserver(()=>{a(),i()});e&&r.observe(e,{subtree:!0,attributes:!0,attributeFilter:["data-state"],childList:!0});let L=()=>i();return t?.addEventListener("scroll",L,{passive:!0}),()=>{o.disconnect(),r.disconnect(),t?.removeEventListener("scroll",L)}},[a,i]);let d=l(e=>{let t=c.current;if(!t)return;let o=t.clientWidth*.6,r=Math.max(0,Math.min(t.scrollLeft+e*o,t.scrollWidth-t.clientWidth));t.scrollTo({left:r,behavior:"smooth"})},[]),$=l(()=>d(-1),[d]),x=l(()=>d(1),[d]);return y(k.List,{ref:C,className:m(s,g),...R,children:[h?n("div",{className:`${s}ScrollButtonLeft`,"aria-hidden":!0,children:n(b,{type:"button",label:"scroll left",tabIndex:-1,onClick:$,children:n(A,{})})}):null,n("div",{className:m(`${s}Scroll`),"data-scroll-left":h?"":void 0,"data-scroll-right":p?"":void 0,ref:c,children:y("div",{className:`${s}Container`,ref:u,children:[I,n("div",{className:`${s}Indicator`,style:{transform:`translateX(${E}px)`,width:`${W}px`}})]})}),p?n("div",{className:`${s}ScrollButtonRight`,"aria-hidden":!0,children:n(b,{type:"button",label:"scroll right",tabIndex:-1,onClick:x,children:n(H,{})})}):null]})});U.displayName=S;export{U as a};
|
|
4
|
+
//# sourceMappingURL=chunk-Q6ZC2EJ2.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/Tabs/TabsList.tsx"],"sourcesContent":["'use client';\n\nimport { forwardRef, useCallback, useLayoutEffect, useRef, useState } from 'react';\nimport type { ComponentRef } from 'react';\nimport { cn } from '../../helpers/cn';\nimport { Tabs as TabsPrimitive } from 'radix-ui';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport { ChevronLeftSmallIcon, ChevronRightSmallIcon } from '@utilitywarehouse/hearth-react-icons';\nimport { UnstyledIconButton } from '../UnstyledIconButton/UnstyledIconButton';\nimport type { TabsListProps } from './Tabs.props';\n\nconst COMPONENT_NAME = 'TabsList';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\ntype TabsListElement = ComponentRef<'div'>;\n\nexport const TabsList = forwardRef<TabsListElement, TabsListProps>(\n ({ className, children, ...rest }, ref) => {\n const containerRef = useRef<HTMLDivElement | null>(null);\n const scrollRef = useRef<HTMLDivElement | null>(null);\n\n // Underline indicator that animates to match the active tab trigger\n const [activeTabIndicatorX, setActiveTabIndicatorX] = useState(0);\n const [activeTabIndicatorWidth, setActiveTabIndicatorWidth] = useState(0);\n\n // Whether horizontal scroll icons should be shown\n const [canScrollLeft, setCanScrollLeft] = useState(false);\n const [canScrollRight, setCanScrollRight] = useState(false);\n\n // Sync indicator position/size to the current active tab trigger\n const updateIndicator = useCallback(() => {\n const container = containerRef.current;\n if (!container) return;\n\n const activeTrigger = container.querySelector<HTMLElement>(\n '.' + withGlobalPrefix('Tab[data-state=\"active\"]')\n );\n if (!activeTrigger) return;\n\n setActiveTabIndicatorX(activeTrigger.offsetLeft);\n setActiveTabIndicatorWidth(activeTrigger.offsetWidth);\n }, []);\n\n // Compute overflow and whether we can scroll left/right to show scroll icons\n const checkOverflow = useCallback(() => {\n const el = scrollRef.current;\n if (!el) return;\n\n const overflow = el.scrollWidth > el.clientWidth + 1;\n const canLeft = overflow && el.scrollLeft > 0;\n const canRight = overflow && el.scrollLeft + el.clientWidth < el.scrollWidth - 1;\n\n setCanScrollLeft(canLeft);\n setCanScrollRight(canRight);\n }, []);\n\n // Keep indicator and scroll buttons in sync with DOM/layout changes\n useLayoutEffect(() => {\n updateIndicator();\n checkOverflow();\n\n const container = containerRef.current;\n const scrollEl = scrollRef.current;\n if (!container && !scrollEl) return;\n\n // Watch size changes (container and scroll viewport)\n const resizeObserver = new ResizeObserver(() => {\n updateIndicator();\n checkOverflow();\n });\n\n if (container) resizeObserver.observe(container);\n if (scrollEl) resizeObserver.observe(scrollEl);\n\n // Watch DOM mutations that can affect which tab is active or present\n const mutationObserver = new MutationObserver(() => {\n updateIndicator();\n checkOverflow();\n });\n\n if (container) {\n mutationObserver.observe(container, {\n subtree: true,\n attributes: true,\n attributeFilter: ['data-state'],\n childList: true,\n });\n }\n\n // Update scroll icons as the user scrolls\n const onScroll = () => checkOverflow();\n scrollEl?.addEventListener('scroll', onScroll, { passive: true });\n\n return () => {\n resizeObserver.disconnect();\n mutationObserver.disconnect();\n scrollEl?.removeEventListener('scroll', onScroll);\n };\n }, [updateIndicator, checkOverflow]);\n\n // Smoothly scroll the tab section by ~60% of the viewport width\n const scrollBy = useCallback((direction: 1 | -1) => {\n const el = scrollRef.current;\n if (!el) return;\n\n const step = el.clientWidth * 0.6;\n const target = Math.max(\n 0,\n Math.min(el.scrollLeft + direction * step, el.scrollWidth - el.clientWidth)\n );\n el.scrollTo({ left: target, behavior: 'smooth' });\n }, []);\n\n const handleScrollLeft = useCallback(() => scrollBy(-1), [scrollBy]);\n const handleScrollRight = useCallback(() => scrollBy(1), [scrollBy]);\n\n return (\n <TabsPrimitive.List ref={ref} className={cn(componentClassName, className)} {...rest}>\n {canScrollLeft ? (\n <div className={`${componentClassName}ScrollButtonLeft`} aria-hidden>\n <UnstyledIconButton\n type=\"button\"\n label=\"scroll left\"\n tabIndex={-1}\n onClick={handleScrollLeft}\n >\n <ChevronLeftSmallIcon />\n </UnstyledIconButton>\n </div>\n ) : null}\n <div\n className={cn(`${componentClassName}Scroll`)}\n data-scroll-left={canScrollLeft ? '' : undefined}\n data-scroll-right={canScrollRight ? '' : undefined}\n ref={scrollRef}\n >\n <div className={`${componentClassName}Container`} ref={containerRef}>\n {children}\n <div\n className={`${componentClassName}Indicator`}\n // Animated underline: position and width driven by active trigger\n style={{\n transform: `translateX(${activeTabIndicatorX}px)`,\n width: `${activeTabIndicatorWidth}px`,\n }}\n />\n </div>\n </div>\n {canScrollRight ? (\n <div className={`${componentClassName}ScrollButtonRight`} aria-hidden>\n <UnstyledIconButton\n type=\"button\"\n label=\"scroll right\"\n tabIndex={-1}\n onClick={handleScrollRight}\n >\n <ChevronRightSmallIcon />\n </UnstyledIconButton>\n </div>\n ) : null}\n </TabsPrimitive.List>\n );\n }\n);\n\nTabsList.displayName = COMPONENT_NAME;\n"],"mappings":"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","names":["forwardRef","useCallback","useLayoutEffect","useRef","useState","TabsPrimitive","ChevronLeftSmallIcon","ChevronRightSmallIcon","jsx","jsxs","COMPONENT_NAME","componentClassName","withGlobalPrefix","TabsList","forwardRef","className","children","rest","ref","containerRef","useRef","scrollRef","activeTabIndicatorX","setActiveTabIndicatorX","useState","activeTabIndicatorWidth","setActiveTabIndicatorWidth","canScrollLeft","setCanScrollLeft","canScrollRight","setCanScrollRight","updateIndicator","useCallback","container","activeTrigger","checkOverflow","el","overflow","canLeft","canRight","useLayoutEffect","scrollEl","resizeObserver","mutationObserver","onScroll","scrollBy","direction","step","target","handleScrollLeft","handleScrollRight","TabsPrimitive","cn","UnstyledIconButton","ChevronLeftSmallIcon","ChevronRightSmallIcon"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
//# sourceMappingURL=chunk-
|
|
3
|
+
var _chunkFOTB6NKYcjs = require('./chunk-FOTB6NKY.cjs');var _chunkDR4D5JX2cjs = require('./chunk-DR4D5JX2.cjs');var _chunkQKGE3FJXcjs = require('./chunk-QKGE3FJX.cjs');var _chunkONNSZMWFcjs = require('./chunk-ONNSZMWF.cjs');var _chunk4Q432K4Wcjs = require('./chunk-4Q432K4W.cjs');var _react = require('react');var _reactusecontrollablestate = require('@radix-ui/react-use-controllable-state');var _jsxruntime = require('react/jsx-runtime');var G="CheckboxGroup",a=_chunk4Q432K4Wcjs.b.call(void 0, G),q= exports.a =_react.forwardRef.call(void 0, (v,P)=>{let{disabled:o,required:l,label:N,labelVariant:g,helperText:y,validationText:V,validationStatus:w,value:p,contentWidth:c="fit-content",direction:i="column",defaultValue:s,onValueChange:m,children:u,className:E,name:d,...F}=v,I={...F,disabled:o,required:l,label:N,labelVariant:g,helperText:y,validationText:V,validationStatus:w},B={width:c,direction:i,name:d,required:l,disabled:o,defaultValue:s,value:p,onValueChange:m,children:u},[R=[],e]=_reactusecontrollablestate.useControllableState.call(void 0, {prop:p,defaultProp:s||[],onChange:m}),T=_react.useCallback.call(void 0, t=>e((r=[])=>[...r,t]),[e]),A=_react.useCallback.call(void 0, t=>e((r=[])=>r.filter(O=>O!==t)),[e]),M={name:d,value:R,onItemCheck:T,onItemUncheck:A};return _jsxruntime.jsx.call(void 0, _chunkFOTB6NKYcjs.a,{ref:P,className:_chunkONNSZMWFcjs.a.call(void 0, a,E),"data-testid":a,...I,children:_jsxruntime.jsx.call(void 0, _chunkQKGE3FJXcjs.a,{...B,className:`${a}Content`,"data-orientation":i==="column"?"vertical":"horizontal","data-disabled":o?"":void 0,width:c,children:_jsxruntime.jsx.call(void 0, _chunkDR4D5JX2cjs.b,{value:M,children:u})})})});q.displayName=G;exports.a = q;
|
|
4
|
+
//# sourceMappingURL=chunk-QE5G52MR.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-QE5G52MR.cjs","../src/components/CheckboxGroup/CheckboxGroup.tsx"],"names":["COMPONENT_NAME","componentClassName","withGlobalPrefix","CheckboxGroup","forwardRef","props","ref","disabled","required","label","labelVariant","helperText","validationText","validationStatus","valueProp","contentWidth","direction","defaultValue","onValueChange","children","className","name","restProps","formGroupBaseProps","checkboxGroupProps","value","setValue","useControllableState","handleItemCheck","useCallback","itemValue","prevValue","handleItemUncheck","providerValue","jsx","FormGroupBase","cn","Flex"],"mappings":"AAAA,qFAAY;AACZ;AACA,wDAAwC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,8BCApK,mFAMH,+CAoG7B,IA9FFA,CAAAA,CAAiB,eAAA,CACjBC,CAAAA,CAAqBC,iCAAAA,CAA+B,CAAA,CAW7CC,CAAAA,aAAgBC,+BAAAA,CAAsDC,CAAAA,CAAOC,CAAAA,CAAAA,EAAQ,CAChG,GAAM,CACJ,QAAA,CAAAC,CAAAA,CACA,QAAA,CAAAC,CAAAA,CACA,KAAA,CAAAC,CAAAA,CACA,YAAA,CAAAC,CAAAA,CACA,UAAA,CAAAC,CAAAA,CACA,cAAA,CAAAC,CAAAA,CACA,gBAAA,CAAAC,CAAAA,CACA,KAAA,CAAOC,CAAAA,CACP,YAAA,CAAAC,CAAAA,CAAe,aAAA,CACf,SAAA,CAAAC,CAAAA,CAAY,QAAA,CACZ,YAAA,CAAAC,CAAAA,CACA,aAAA,CAAAC,CAAAA,CACA,QAAA,CAAAC,CAAAA,CACA,SAAA,CAAAC,CAAAA,CACA,IAAA,CAAAC,CAAAA,CACA,GAAGC,CACL,CAAA,CAAIjB,CAAAA,CAEEkB,CAAAA,CAAqB,CACzB,GAAGD,CAAAA,CACH,QAAA,CAAAf,CAAAA,CACA,QAAA,CAAAC,CAAAA,CACA,KAAA,CAAAC,CAAAA,CACA,YAAA,CAAAC,CAAAA,CACA,UAAA,CAAAC,CAAAA,CACA,cAAA,CAAAC,CAAAA,CACA,gBAAA,CAAAC,CACF,CAAA,CAEMW,CAAAA,CAAqB,CACzB,KAAA,CAAOT,CAAAA,CACP,SAAA,CAAAC,CAAAA,CACA,IAAA,CAAAK,CAAAA,CACA,QAAA,CAAAb,CAAAA,CACA,QAAA,CAAAD,CAAAA,CACA,YAAA,CAAAU,CAAAA,CACA,KAAA,CAAOH,CAAAA,CACP,aAAA,CAAAI,CAAAA,CACA,QAAA,CAAAC,CACF,CAAA,CAGM,CAACM,CAAAA,CAAQ,CAAC,CAAA,CAAGC,CAAQ,CAAA,CAAIC,6DAAAA,CAC7B,IAAA,CAAMb,CAAAA,CACN,WAAA,CAAaG,CAAAA,EAAiB,CAAC,CAAA,CAC/B,QAAA,CAAUC,CACZ,CAAC,CAAA,CAEKU,CAAAA,CAAkBC,gCAAAA,CACrBC,EAAsBJ,CAAAA,CAAS,CAACK,CAAAA,CAAY,CAAC,CAAA,CAAA,EAAM,CAAC,GAAGA,CAAAA,CAAWD,CAAS,CAAC,CAAA,CAC7E,CAACJ,CAAQ,CACX,CAAA,CAEMM,CAAAA,CAAoBH,gCAAAA,CACvBC,EACCJ,CAAAA,CAAS,CAACK,CAAAA,CAAY,CAAC,CAAA,CAAA,EAAMA,CAAAA,CAAU,MAAA,CAAON,CAAAA,EAASA,CAAAA,GAAUK,CAAS,CAAC,CAAA,CAC7E,CAACJ,CAAQ,CACX,CAAA,CAEMO,CAAAA,CAAgB,CACpB,IAAA,CAAAZ,CAAAA,CACA,KAAA,CAAAI,CAAAA,CACA,WAAA,CAAaG,CAAAA,CACb,aAAA,CAAeI,CACjB,CAAA,CAEA,OACEE,6BAAAA,mBAACC,CAAA,CACC,GAAA,CAAK7B,CAAAA,CACL,SAAA,CAAW8B,iCAAAA,CAAGnC,CAAoBmB,CAAS,CAAA,CAC3C,aAAA,CAAanB,CAAAA,CACZ,GAAGsB,CAAAA,CAEJ,QAAA,CAAAW,6BAAAA,mBAACG,CAAA,CACE,GAAGb,CAAAA,CACJ,SAAA,CAAW,CAAA,EAAA","file":"/home/runner/work/hearth/hearth/packages/react/dist/chunk-QE5G52MR.cjs","sourcesContent":[null,"'use client';\n\nimport { forwardRef, useCallback } from 'react';\nimport { cn } from '../../helpers/cn';\nimport type { CheckboxGroupProps } from './CheckboxGroup.props';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport { Flex } from '../Flex/Flex';\nimport { FormGroupBase } from '../FormGroupBase/FormGroupBase';\nimport { useControllableState } from '@radix-ui/react-use-controllable-state';\nimport { CheckboxGroupProvider } from './CheckboxGroup.context';\nimport type { ComponentRef } from 'react';\n\ntype CheckboxGroupElement = ComponentRef<'fieldset'>;\n\nconst COMPONENT_NAME = 'CheckboxGroup';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\n/**\n * Use CheckboxGroup to present a set of `Checkbox` controls where multiple\n * options can be selected at once. It groups related checkboxes in a\n * `fieldset` and handles their shared label, helper text, validation, and\n * disabled state, as well as their layout. For single-select options, use\n * RadioGroup instead.\n *\n * @summary A fieldset grouping multiple related checkboxes that can each be selected independently.\n */\nexport const CheckboxGroup = forwardRef<CheckboxGroupElement, CheckboxGroupProps>((props, ref) => {\n const {\n disabled,\n required,\n label,\n labelVariant,\n helperText,\n validationText,\n validationStatus,\n value: valueProp,\n contentWidth = 'fit-content',\n direction = 'column',\n defaultValue,\n onValueChange,\n children,\n className,\n name,\n ...restProps\n } = props;\n\n const formGroupBaseProps = {\n ...restProps,\n disabled,\n required,\n label,\n labelVariant,\n helperText,\n validationText,\n validationStatus,\n };\n\n const checkboxGroupProps = {\n width: contentWidth,\n direction,\n name,\n required,\n disabled,\n defaultValue,\n value: valueProp,\n onValueChange,\n children,\n };\n\n // useControllableState will handle whether controlled or uncontrolled\n const [value = [], setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue || ([] as Array<string>),\n onChange: onValueChange,\n });\n\n const handleItemCheck = useCallback(\n (itemValue: string) => setValue((prevValue = []) => [...prevValue, itemValue]),\n [setValue]\n );\n\n const handleItemUncheck = useCallback(\n (itemValue: string) =>\n setValue((prevValue = []) => prevValue.filter(value => value !== itemValue)),\n [setValue]\n );\n\n const providerValue = {\n name,\n value,\n onItemCheck: handleItemCheck,\n onItemUncheck: handleItemUncheck,\n };\n\n return (\n <FormGroupBase\n ref={ref}\n className={cn(componentClassName, className)}\n data-testid={componentClassName}\n {...formGroupBaseProps}\n >\n <Flex\n {...checkboxGroupProps}\n className={`${componentClassName}Content`}\n data-orientation={direction === 'column' ? 'vertical' : 'horizontal'}\n data-disabled={disabled ? '' : undefined}\n width={contentWidth}\n >\n <CheckboxGroupProvider value={providerValue}>{children}</CheckboxGroupProvider>\n </Flex>\n </FormGroupBase>\n );\n});\n\nCheckboxGroup.displayName = COMPONENT_NAME;\n"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }"use client";
|
|
2
|
+
|
|
3
|
+
var _chunkMZMYW4KCcjs = require('./chunk-MZMYW4KC.cjs');var _chunkWSD52THLcjs = require('./chunk-WSD52THL.cjs');var _chunkDR4D5JX2cjs = require('./chunk-DR4D5JX2.cjs');var _chunkS3DGCUDLcjs = require('./chunk-S3DGCUDL.cjs');var _chunkRAIRXO6Fcjs = require('./chunk-RAIRXO6F.cjs');var _chunkQKGE3FJXcjs = require('./chunk-QKGE3FJX.cjs');var _chunkRIHABKWYcjs = require('./chunk-RIHABKWY.cjs');var _chunkHIF6HKZ3cjs = require('./chunk-HIF6HKZ3.cjs');var _chunkONNSZMWFcjs = require('./chunk-ONNSZMWF.cjs');var _chunk4Q432K4Wcjs = require('./chunk-4Q432K4W.cjs');var _hearthreacticons = require('@utilitywarehouse/hearth-react-icons');var _radixui = require('radix-ui');var _react = require('react');var _jsxruntime = require('react/jsx-runtime');var S="CheckboxTile",n=_chunk4Q432K4Wcjs.b.call(void 0, S),Q= exports.a =_react.forwardRef.call(void 0, (E,L)=>{let{className:U,id:D,disabled:s,value:i="on",onCheckedChange:c,label:m,helperText:b,image:F,"aria-labelledby":p,"aria-describedby":A,validationStatus:t,validationText:h,...M}=E,{id:O,labelId:x,helperTextId:f,validationTextId:r}=_chunkRIHABKWYcjs.a.call(void 0, {providedId:D,prefix:"checkboxtile"}),e=_chunkWSD52THLcjs.c.call(void 0, ),a=_chunkDR4D5JX2cjs.c.call(void 0, ),B=_optionalChain([a, 'optionalAccess', _2 => _2.value, 'optionalAccess', _3 => _3.includes, 'call', _4 => _4(i)]),_=_optionalChain([e, 'optionalAccess', _5 => _5.hasGroupHelperText]),u=_optionalChain([e, 'optionalAccess', _6 => _6.hasGroupValidationText]),$=e?e["aria-describedby"]:"",C=!_&&!!b,q=!!m,l=!u&&t!==void 0&&h!==void 0,z=_chunkHIF6HKZ3cjs.a.call(void 0, A,$,C?f:void 0,l?r:void 0),k=!u&&t==="invalid";return _jsxruntime.jsxs.call(void 0, "label",{className:_chunkONNSZMWFcjs.a.call(void 0, n,U),"data-testid":n,"data-disabled":s?"":void 0,children:[_jsxruntime.jsx.call(void 0, _radixui.Checkbox.Root,{ref:L,className:"h-CheckboxRoot",name:_optionalChain([a, 'optionalAccess', _7 => _7.name]),checked:B,value:i,...M,id:O,disabled:s,"aria-describedby":z,"aria-labelledby":p||(q?x:void 0),"aria-invalid":k?!0:void 0,"aria-errormessage":k&&l?r:void 0,onCheckedChange:T=>{e&&(T?_optionalChain([a, 'optionalAccess', _8 => _8.onItemCheck, 'call', _9 => _9(i)]):_optionalChain([a, 'optionalAccess', _10 => _10.onItemUncheck, 'call', _11 => _11(i)])),c&&c(T)},children:_jsxruntime.jsx.call(void 0, _radixui.Checkbox.Indicator,{asChild:!0,className:`${n}Indicator`,children:_jsxruntime.jsx.call(void 0, _hearthreacticons.TickSmallIcon,{})})}),_jsxruntime.jsxs.call(void 0, _chunkQKGE3FJXcjs.a,{direction:"column",children:[_jsxruntime.jsxs.call(void 0, _chunkMZMYW4KCcjs.a,{as:"span",id:x,disableUserSelect:!0,children:[F,m]}),C?_jsxruntime.jsx.call(void 0, _chunkRAIRXO6Fcjs.a,{id:f,disableUserSelect:!0,children:b}):null,l?_jsxruntime.jsx.call(void 0, _chunkS3DGCUDLcjs.a,{id:r,status:t,disableUserSelect:!0,children:h}):null]})]})});Q.displayName=S;exports.a = Q;
|
|
4
|
+
//# sourceMappingURL=chunk-QLMLIOWZ.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-QLMLIOWZ.cjs","../src/components/CheckboxTile/CheckboxTile.tsx"],"names":["COMPONENT_NAME","componentClassName","withGlobalPrefix","CheckboxTile","forwardRef","props","ref","className","providedId","disabled","value","onCheckedChange","label","helperText","image","ariaLabelledby","consumerAriaDescribedby","validationStatus","validationText","restProps","id","labelId","helperTextId","validationTextId","useIds","context","useFormGroupBase","checkboxContext","useCheckboxGroup","checked","hasGroupHelperText","hasGroupValidationText","ariaDescribedby","showHelperText","showLabel","showValidation","ariaDescribedbyValue","mergeIds","isInvalid","jsxs","cn","jsx","CheckboxPrimitive"],"mappings":"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","file":"/home/runner/work/hearth/hearth/packages/react/dist/chunk-QLMLIOWZ.cjs","sourcesContent":[null,"'use client';\n\nimport { cn } from '../../helpers/cn';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport { useIds } from '../../hooks/use-ids';\nimport { TickSmallIcon } from '@utilitywarehouse/hearth-react-icons';\nimport { Label } from '../Label/Label';\nimport { HelperText } from '../HelperText/HelperText';\nimport { Flex } from '../Flex/Flex';\nimport { Checkbox as CheckboxPrimitive } from 'radix-ui';\nimport { useCheckboxGroup } from '../CheckboxGroup/CheckboxGroup.context';\nimport { useFormGroupBase } from '../FormGroupBase/FormGroupBase.context';\nimport type { CheckboxProps } from '../Checkbox/Checkbox.props';\nimport { ValidationText } from '../ValidationText/ValidationText';\nimport { mergeIds } from '../../helpers/merge-ids';\nimport type { ComponentRef } from 'react';\nimport { forwardRef } from 'react';\n\ntype CheckboxTileElement = ComponentRef<'button'>;\n\nconst COMPONENT_NAME = 'CheckboxTile';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\n/**\n * Use CheckboxTile to let a user toggle a dual-state option between checked\n * and not checked, presented as a larger, tile-style control rather than a\n * standard checkbox. It can be used independently, but when presenting\n * multiple options together use `CheckboxGroup` instead, which handles their\n * state and layout. If not using the `label` prop, provide an `aria-label` or\n * `aria-labelledby` so the tile has an accessible name.\n *\n * @summary A tile-style, dual-state control letting a user toggle between checked and not checked.\n */\nexport const CheckboxTile = forwardRef<CheckboxTileElement, CheckboxProps>((props, ref) => {\n const {\n className,\n id: providedId,\n disabled,\n value = 'on',\n onCheckedChange,\n label,\n helperText,\n image,\n 'aria-labelledby': ariaLabelledby,\n 'aria-describedby': consumerAriaDescribedby,\n validationStatus,\n validationText,\n ...restProps\n } = props;\n\n const { id, labelId, helperTextId, validationTextId } = useIds({\n providedId,\n prefix: 'checkboxtile',\n });\n const context = useFormGroupBase();\n const checkboxContext = useCheckboxGroup();\n const checked = checkboxContext?.value?.includes(value);\n const hasGroupHelperText = context?.hasGroupHelperText;\n const hasGroupValidationText = context?.hasGroupValidationText;\n const ariaDescribedby = context ? context['aria-describedby'] : '';\n const showHelperText = !hasGroupHelperText && !!helperText;\n const showLabel = !!label;\n const showValidation =\n !hasGroupValidationText && validationStatus !== undefined && validationText !== undefined;\n const ariaDescribedbyValue = mergeIds(\n consumerAriaDescribedby,\n ariaDescribedby,\n showHelperText ? helperTextId : undefined,\n showValidation ? validationTextId : undefined\n );\n const isInvalid = !hasGroupValidationText && validationStatus === 'invalid';\n\n return (\n <label\n className={cn(componentClassName, className)}\n data-testid={componentClassName}\n data-disabled={disabled ? '' : undefined}\n >\n <CheckboxPrimitive.Root\n ref={ref}\n className=\"h-CheckboxRoot\"\n name={checkboxContext?.name}\n checked={checked}\n value={value}\n {...restProps}\n id={id}\n disabled={disabled}\n aria-describedby={ariaDescribedbyValue}\n aria-labelledby={ariaLabelledby ? ariaLabelledby : showLabel ? labelId : undefined}\n aria-invalid={isInvalid ? true : undefined}\n aria-errormessage={isInvalid && showValidation ? validationTextId : undefined}\n onCheckedChange={(checked: boolean) => {\n if (context) {\n if (checked) {\n checkboxContext?.onItemCheck(value);\n } else {\n checkboxContext?.onItemUncheck(value);\n }\n }\n if (onCheckedChange) {\n onCheckedChange(checked);\n }\n }}\n >\n <CheckboxPrimitive.Indicator asChild className={`${componentClassName}Indicator`}>\n <TickSmallIcon />\n </CheckboxPrimitive.Indicator>\n </CheckboxPrimitive.Root>\n <Flex direction=\"column\">\n <Label as=\"span\" id={labelId} disableUserSelect>\n {image}\n {label}\n </Label>\n {showHelperText ? (\n <HelperText id={helperTextId} disableUserSelect>\n {helperText}\n </HelperText>\n ) : null}\n {showValidation ? (\n <ValidationText id={validationTextId} status={validationStatus} disableUserSelect>\n {validationText}\n </ValidationText>\n ) : null}\n </Flex>\n </label>\n );\n});\n\nCheckboxTile.displayName = COMPONENT_NAME;\n"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import{a as c}from"./chunk-HPQHFDUN.js";import{a as l}from"./chunk-DAEIJDP7.js";import{a as p}from"./chunk-KGEVWEVL.js";import{a as s}from"./chunk-J3AJBV4B.js";import{b as i}from"./chunk-PDEVCIQ3.js";import{a}from"./chunk-KGSRRRQN.js";import{a as m}from"./chunk-VCC5YQTQ.js";import{forwardRef as U}from"react";import{Slot as x}from"radix-ui";import{jsx as f}from"react/jsx-runtime";var d=t=>t.preventDefault(),y="UnstyledIconButton",u=i(y),M=U((t,C)=>{let{className:B,children:e,label:I,disabled:n,inverted:P,loading:o,onClick:b,onAuxClick:S,asChild:r,...v}=p(t,c),E=a(t.size||"md",{md:"sm",sm:"xs"}),N=r?x.Root:"button";return f(N,{ref:C,className:s(u,B),"aria-label":I,"aria-disabled":n||o,"data-inverted":P?"":void 0,onClick:n||o?d:b,onAuxClick:n||o?d:S,"data-testid":u,...v,children:o?m({asChild:r,children:e},()=>f(l,{size:E,currentColor:!0})):e})});M.displayName=y;export{M as a};
|
|
4
|
+
//# sourceMappingURL=chunk-QNITBIE4.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/UnstyledIconButton/UnstyledIconButton.tsx"],"sourcesContent":["'use client';\n\nimport { forwardRef } from 'react';\nimport type { ComponentRef, MouseEvent } from 'react';\nimport { cn } from '../../helpers/cn';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport { unstyledIconButtonPropDefs } from './UnstyledIconButton.props';\nimport type { UnstyledIconButtonProps } from './UnstyledIconButton.props';\nimport { extractProps } from '../../helpers/extract-props';\nimport { Spinner } from '../Spinner/Spinner';\nimport type { SpinnerProps } from '../Spinner/Spinner.props';\nimport { Slot } from 'radix-ui';\nimport { getSubtree } from '../../helpers/get-subtree';\nimport { getResponsiveTranslation } from '../../helpers/get-responsive-translation';\n\n// aria-disabled keeps the button focusable but doesn't block its default\n// action, so cancel clicks (including middle-click via auxclick) to stop form\n// submission and link navigation.\nconst preventDefault = (event: MouseEvent<HTMLButtonElement>) => event.preventDefault();\n\nconst COMPONENT_NAME = 'UnstyledIconButton';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\ntype UnstyledIconButtonElement = ComponentRef<'button'>;\n\n/**\n * Use UnstyledIconButton for an icon-only button with no visual styling of\n * its own: a plain, unstyled base for building custom icon button variants.\n * For a fully-styled icon button, use IconButton instead. A `label` is\n * required, since the button contains only an icon with no visible text.\n *\n * @summary An unstyled, icon-only button base for building custom icon buttons.\n */\nexport const UnstyledIconButton = forwardRef<UnstyledIconButtonElement, UnstyledIconButtonProps>(\n (props, ref) => {\n const {\n className,\n children,\n label,\n disabled,\n inverted,\n loading,\n onClick,\n onAuxClick,\n asChild,\n ...unstyledIconButtonProps\n } = extractProps(props, unstyledIconButtonPropDefs);\n\n const spinnerSize = getResponsiveTranslation(props.size || 'md', { md: 'sm', sm: 'xs' });\n const Component = asChild ? Slot.Root : 'button';\n\n return (\n <Component\n ref={ref}\n className={cn(componentClassName, className)}\n aria-label={label}\n aria-disabled={disabled || loading}\n data-inverted={inverted ? '' : undefined}\n onClick={disabled || loading ? preventDefault : onClick}\n onAuxClick={disabled || loading ? preventDefault : onAuxClick}\n data-testid={componentClassName}\n {...unstyledIconButtonProps}\n >\n {loading\n ? getSubtree({ asChild, children }, () => (\n <Spinner size={spinnerSize as SpinnerProps['size']} currentColor />\n ))\n : children}\n </Component>\n );\n }\n);\n\nUnstyledIconButton.displayName = COMPONENT_NAME;\n"],"mappings":";;mRAEA,OAAS,cAAAA,MAAkB,QAS3B,OAAS,QAAAC,MAAY,WAsDP,cAAAC,MAAA,oBA/Cd,IAAMC,EAAkBC,GAAyCA,EAAM,eAAe,EAEhFC,EAAiB,qBACjBC,EAAqBC,EAAiBF,CAAc,EAY7CG,EAAqBC,EAChC,CAACC,EAAOC,IAAQ,CACd,GAAM,CACJ,UAAAC,EACA,SAAAC,EACA,MAAAC,EACA,SAAAC,EACA,SAAAC,EACA,QAAAC,EACA,QAAAC,EACA,WAAAC,EACA,QAAAC,EACA,GAAGC,CACL,EAAIC,EAAaZ,EAAOa,CAA0B,EAE5CC,EAAcC,EAAyBf,EAAM,MAAQ,KAAM,CAAE,GAAI,KAAM,GAAI,IAAK,CAAC,EACjFgB,EAAYN,EAAUO,EAAK,KAAO,SAExC,OACEzB,EAACwB,EAAA,CACC,IAAKf,EACL,UAAWiB,EAAGtB,EAAoBM,CAAS,EAC3C,aAAYE,EACZ,gBAAeC,GAAYE,EAC3B,gBAAeD,EAAW,GAAK,OAC/B,QAASD,GAAYE,EAAUd,EAAiBe,EAChD,WAAYH,GAAYE,EAAUd,EAAiBgB,EACnD,cAAab,EACZ,GAAGe,EAEH,SAAAJ,EACGY,EAAW,CAAE,QAAAT,EAAS,SAAAP,CAAS,EAAG,IAChCX,EAAC4B,EAAA,CAAQ,KAAMN,EAAqC,aAAY,GAAC,CAClE,EACDX,EACN,CAEJ,CACF,EAEAL,EAAmB,YAAcH","names":["forwardRef","Slot","jsx","preventDefault","event","COMPONENT_NAME","componentClassName","withGlobalPrefix","UnstyledIconButton","forwardRef","props","ref","className","children","label","disabled","inverted","loading","onClick","onAuxClick","asChild","unstyledIconButtonProps","extractProps","unstyledIconButtonPropDefs","spinnerSize","getResponsiveTranslation","Component","Slot","cn","getSubtree","Spinner"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import{a as l}from"./chunk-TJHI42VN.js";import{a as O}from"./chunk-ZL7L2WXW.js";import{a as B}from"./chunk-UDOSOH3G.js";import{a as E}from"./chunk-L7XVQXSE.js";import{a as V}from"./chunk-CANHKUAY.js";import{a as n}from"./chunk-QNITBIE4.js";import{a as T}from"./chunk-DAEIJDP7.js";import{a as h}from"./chunk-OPPG3NOC.js";import{a as g}from"./chunk-7X24J4CX.js";import{a as A}from"./chunk-VKE2TXPE.js";import{a as N}from"./chunk-KGEVWEVL.js";import{a as y}from"./chunk-J3AJBV4B.js";import{b as i}from"./chunk-PDEVCIQ3.js";import{Combobox as e}from"@base-ui/react/combobox";import{CloseSmallIcon as Q,ExpandSmallIcon as W,SearchMediumIcon as X}from"@utilitywarehouse/hearth-react-icons";import{ScrollArea as s}from"radix-ui";import{jsx as o,jsxs as m}from"react/jsx-runtime";var F="Combobox",r=i(F);function Y(d){let{className:w,children:p,triggerOnlyOnType:C,validationStatus:b,validationText:u,label:M,labelVariant:R,helperText:P,id:L,disabled:t,required:U,noOptionsFoundText:$,statusText:c,loading:D,hideLabel:k,placeholder:q,"aria-describedby":z,...G}=N(d,h),{id:S,labelId:H,helperTextId:I,validationTextId:f}=g({providedId:L,prefix:"combobox"}),a=!t,_={id:S,labelId:H,helperTextId:I,validationTextId:f,label:M,labelVariant:R,helperText:P,validationText:a?u:void 0,validationStatus:a?b:void 0,required:U,hideLabel:k},v=a&&b==="invalid",J=A(z,P?I:void 0,a&&b!==void 0&&u!==void 0?f:void 0),K=!!c||!!d.items||!!p;return o(B,{className:y(r,w),"data-disabled":t?"":void 0,"data-testid":r,..._,children:m(e.Root,{openOnInputClick:!C,...G,children:[o(e.Input,{render:m(O,{id:S,disabled:t,placeholder:q,"aria-describedby":J,"aria-invalid":v?!0:void 0,"aria-errormessage":v&&u!==void 0?f:void 0,children:[o(e.Trigger,{disabled:t,render:o(l,{placement:"prefix",asChild:!0,children:o(n,{type:"button",label:"Open popup",disabled:t,children:o(X,{})})})}),D?o(l,{placement:"suffix",children:o(T,{size:"xs",color:"primary"})}):null,o(e.Clear,{render:o(l,{placement:"suffix",asChild:!0,children:o(n,{type:"button",label:"Clear selection",disabled:t,children:o(Q,{})})})}),C?null:o(e.Trigger,{disabled:t,render:o(l,{placement:"suffix",asChild:!0,children:o(n,{type:"button",label:"Open popup",disabled:t,children:o(W,{})})})})]})}),K?o(e.Portal,{children:o(e.Positioner,{side:"bottom",sideOffset:16,align:"start",alignOffset:-47,children:m(e.Popup,{className:`${r}Popup`,children:[c?o(e.Status,{className:`${r}StatusText`,children:c}):null,d.items?o(E,{className:`${r}Empty`,children:$}):null,m(s.Root,{className:i("ScrollAreaRoot"),type:"auto",children:[o(s.Viewport,{className:i("ScrollAreaViewport"),children:o(e.List,{className:`${r}List`,children:p||(x=>o(V,{value:x,children:x},x))})}),o(s.Scrollbar,{className:i("ScrollAreaScrollbar"),orientation:"vertical",children:o(s.Thumb,{className:i("ScrollAreaThumb")})})]})]})})}):null]})})}Y.displayName=F;export{Y as a};
|
|
4
|
+
//# sourceMappingURL=chunk-RLXZVTER.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/Combobox/Combobox.tsx"],"sourcesContent":["'use client';\n\nimport { cn } from '../../helpers/cn';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport { extractProps } from '../../helpers/extract-props';\nimport { marginPropDefs } from '../../props/margin.props';\nimport { useIds } from '../../hooks/use-ids';\nimport { mergeIds } from '../../helpers/merge-ids';\nimport { FormField } from '../FormField/FormField';\nimport type { ComboboxProps } from './Combobox.props';\nimport { Combobox as ComboboxPrimitive } from '@base-ui/react/combobox';\nimport { InputBase } from '../InputBase/InputBase';\nimport { InputSlot } from '../InputSlot/InputSlot';\nimport {\n CloseSmallIcon,\n ExpandSmallIcon,\n SearchMediumIcon,\n} from '@utilitywarehouse/hearth-react-icons';\nimport { ComboboxItem } from './ComboboxItem';\nimport { ScrollArea as ScrollAreaPrimitive } from 'radix-ui';\nimport { UnstyledIconButton } from '../UnstyledIconButton/UnstyledIconButton';\nimport { ComboboxEmpty } from './ComboboxEmpty';\nimport { Spinner } from '../Spinner/Spinner';\n\nconst COMPONENT_NAME = 'Combobox';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\n/**\n * Use Combobox to let users type to filter results and select from a\n * predefined list of options. Pass options via the `items` prop to have them\n * rendered automatically, or render `ComboboxItem` children yourself for more\n * control. Set `triggerOnlyOnType` when the user must type before options are\n * surfaced (e.g. a postcode or address lookup); leave it unset when there is a\n * predefined list to choose from by clicking.\n *\n * @summary A text input that lets users filter and select from a list of options.\n */\nexport function Combobox<Value, Multiple extends boolean | undefined = false>(\n props: ComboboxProps<Value, Multiple>\n) {\n const {\n className,\n children,\n triggerOnlyOnType,\n validationStatus,\n validationText,\n label,\n labelVariant,\n helperText,\n id: providedId,\n disabled,\n required,\n noOptionsFoundText,\n statusText,\n loading,\n hideLabel,\n placeholder,\n 'aria-describedby': ariaDescribedby,\n ...comboboxProps\n } = extractProps(props, marginPropDefs);\n\n const { id, labelId, helperTextId, validationTextId } = useIds({\n providedId,\n prefix: 'combobox',\n });\n\n const showValidation = !disabled;\n\n const formFieldProps = {\n id,\n labelId,\n helperTextId,\n validationTextId,\n label,\n labelVariant,\n helperText,\n validationText: showValidation ? validationText : undefined,\n validationStatus: showValidation ? validationStatus : undefined,\n required,\n hideLabel,\n };\n\n const isInvalid = showValidation && validationStatus === 'invalid';\n\n const ariaDescribedbyValue = mergeIds(\n ariaDescribedby,\n helperText ? helperTextId : undefined,\n showValidation && validationStatus !== undefined && validationText !== undefined\n ? validationTextId\n : undefined\n );\n\n const popupHasContent = Boolean(statusText) || Boolean(props.items) || Boolean(children);\n\n return (\n <FormField\n className={cn(componentClassName, className)}\n data-disabled={disabled ? '' : undefined}\n data-testid={componentClassName}\n {...formFieldProps}\n >\n <ComboboxPrimitive.Root openOnInputClick={!triggerOnlyOnType} {...comboboxProps}>\n <ComboboxPrimitive.Input\n render={\n <InputBase\n id={id}\n disabled={disabled}\n placeholder={placeholder}\n aria-describedby={ariaDescribedbyValue}\n aria-invalid={isInvalid ? true : undefined}\n aria-errormessage={\n isInvalid && validationText !== undefined ? validationTextId : undefined\n }\n >\n <ComboboxPrimitive.Trigger\n disabled={disabled}\n render={\n <InputSlot placement=\"prefix\" asChild>\n <UnstyledIconButton type=\"button\" label=\"Open popup\" disabled={disabled}>\n <SearchMediumIcon />\n </UnstyledIconButton>\n </InputSlot>\n }\n />\n {loading ? (\n <InputSlot placement=\"suffix\">\n <Spinner size=\"xs\" color=\"primary\" />\n </InputSlot>\n ) : null}\n <ComboboxPrimitive.Clear\n render={\n <InputSlot placement=\"suffix\" asChild>\n <UnstyledIconButton type=\"button\" label=\"Clear selection\" disabled={disabled}>\n <CloseSmallIcon />\n </UnstyledIconButton>\n </InputSlot>\n }\n />\n {triggerOnlyOnType ? null : (\n <ComboboxPrimitive.Trigger\n disabled={disabled}\n render={\n <InputSlot placement=\"suffix\" asChild>\n <UnstyledIconButton type=\"button\" label=\"Open popup\" disabled={disabled}>\n <ExpandSmallIcon />\n </UnstyledIconButton>\n </InputSlot>\n }\n />\n )}\n </InputBase>\n }\n />\n\n {popupHasContent ? (\n <ComboboxPrimitive.Portal>\n <ComboboxPrimitive.Positioner\n side=\"bottom\"\n sideOffset={16}\n align=\"start\"\n alignOffset={-47}\n >\n <ComboboxPrimitive.Popup className={`${componentClassName}Popup`}>\n {statusText ? (\n <ComboboxPrimitive.Status className={`${componentClassName}StatusText`}>\n {statusText}\n </ComboboxPrimitive.Status>\n ) : null}\n {props.items ? (\n <ComboboxEmpty className={`${componentClassName}Empty`}>\n {noOptionsFoundText}\n </ComboboxEmpty>\n ) : null}\n <ScrollAreaPrimitive.Root\n className={withGlobalPrefix('ScrollAreaRoot')}\n type=\"auto\"\n >\n <ScrollAreaPrimitive.Viewport className={withGlobalPrefix('ScrollAreaViewport')}>\n <ComboboxPrimitive.List className={`${componentClassName}List`}>\n {children\n ? children\n : (item: string) => (\n <ComboboxItem key={item} value={item}>\n {item}\n </ComboboxItem>\n )}\n </ComboboxPrimitive.List>\n </ScrollAreaPrimitive.Viewport>\n <ScrollAreaPrimitive.Scrollbar\n className={withGlobalPrefix('ScrollAreaScrollbar')}\n orientation=\"vertical\"\n >\n <ScrollAreaPrimitive.Thumb className={withGlobalPrefix('ScrollAreaThumb')} />\n </ScrollAreaPrimitive.Scrollbar>\n </ScrollAreaPrimitive.Root>\n </ComboboxPrimitive.Popup>\n </ComboboxPrimitive.Positioner>\n </ComboboxPrimitive.Portal>\n ) : null}\n </ComboboxPrimitive.Root>\n </FormField>\n );\n}\n\nCombobox.displayName = COMPONENT_NAME;\n"],"mappings":"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","names":["ComboboxPrimitive","CloseSmallIcon","ExpandSmallIcon","SearchMediumIcon","ScrollAreaPrimitive","jsx","jsxs","COMPONENT_NAME","componentClassName","withGlobalPrefix","Combobox","props","className","children","triggerOnlyOnType","validationStatus","validationText","label","labelVariant","helperText","providedId","disabled","required","noOptionsFoundText","statusText","loading","hideLabel","placeholder","ariaDescribedby","comboboxProps","extractProps","marginPropDefs","id","labelId","helperTextId","validationTextId","useIds","showValidation","formFieldProps","isInvalid","ariaDescribedbyValue","mergeIds","popupHasContent","FormField","cn","ComboboxPrimitive","InputBase","InputSlot","UnstyledIconButton","SearchMediumIcon","Spinner","CloseSmallIcon","ExpandSmallIcon","ComboboxEmpty","ScrollAreaPrimitive","item","ComboboxItem"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import{b as g}from"./chunk-HY32GRZP.js";import{a as n}from"./chunk-QQR2AVHA.js";import{a as F}from"./chunk-JWPVXXER.js";import{a as G}from"./chunk-4MNQRAHO.js";import{a as y}from"./chunk-OPPG3NOC.js";import{a as h}from"./chunk-7X24J4CX.js";import{a as P}from"./chunk-VKE2TXPE.js";import{a as B}from"./chunk-KGEVWEVL.js";import{a as T}from"./chunk-J3AJBV4B.js";import{b as v}from"./chunk-PDEVCIQ3.js";import{forwardRef as _}from"react";import{Fragment as k,jsx as o,jsxs as p}from"react/jsx-runtime";var I="FormGroupBase",m=v(I),$=_((N,V)=>{let{children:C,className:E,id:H,label:t,labelVariant:w="body",helperText:d,validationText:r,validationStatus:e,validationPlacement:f="top",disabled:l,"aria-labelledby":D,"aria-describedby":M,"aria-errormessage":R,...L}=B(N,y),{id:O,labelId:u,helperTextId:b,validationTextId:i}=h({providedId:H,prefix:"fieldset"}),A=!!t,s=!!d,a=!!(e&&r),c=a&&e==="invalid",x=P(M,s?b:void 0,a?i:void 0),S={hasGroupHelperText:s,hasGroupValidationText:e!==void 0&&r!==void 0,"aria-describedby":x};return p("fieldset",{ref:V,className:T(m,E),"data-testid":m,...L,disabled:l,id:O,"data-disabled":l?"":void 0,"aria-errormessage":R??(c?i:void 0),"aria-labelledby":D??(t?u:void 0),"aria-invalid":c,"aria-describedby":x,"data-validation-status":e||void 0,children:[A?p(k,{children:[o("legend",{id:u,"data-label-variant":w,children:t}),s||a?p(G,{direction:"column",alignItems:"start",className:`${m}HelperTextContainer`,children:[d?o(F,{id:b,disabled:l,children:d}):null,a&&f==="top"?o(n,{id:i,status:e,children:r}):null]}):null]}):null,o(g,{value:S,children:C}),a&&f==="bottom"?o(n,{id:i,status:e,children:r}):null]})});$.displayName=I;export{$ as a};
|
|
4
|
+
//# sourceMappingURL=chunk-RNP3S7YU.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/FormGroupBase/FormGroupBase.tsx"],"sourcesContent":["'use client';\n\nimport { forwardRef } from 'react';\nimport type { ComponentRef } from 'react';\nimport { useIds } from '../../hooks/use-ids';\nimport { mergeIds } from '../../helpers/merge-ids';\nimport { Flex } from '../Flex/Flex';\nimport { HelperText } from '../HelperText/HelperText';\nimport { ValidationText } from '../ValidationText/ValidationText';\nimport { cn } from '../../helpers/cn';\nimport type { FormGroupBaseProps } from './FormGroupBase.props';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport { extractProps } from '../../helpers/extract-props';\nimport { marginPropDefs } from '../../props/margin.props';\nimport { FormGroupBaseProvider } from './FormGroupBase.context';\n\nconst COMPONENT_NAME = 'FormGroupBase';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\ntype FormGroupBaseElement = ComponentRef<'fieldset'>;\n\nexport const FormGroupBase = forwardRef<FormGroupBaseElement, FormGroupBaseProps>((props, ref) => {\n const {\n children,\n className,\n id: providedId,\n label,\n labelVariant = 'body',\n helperText,\n validationText,\n validationStatus,\n validationPlacement = 'top',\n disabled,\n 'aria-labelledby': ariaLabelledby,\n 'aria-describedby': ariaDescribedby,\n 'aria-errormessage': ariaErrorMessage,\n ...fieldsetProps\n } = extractProps(props, marginPropDefs);\n const { id, labelId, helperTextId, validationTextId } = useIds({\n providedId,\n prefix: 'fieldset',\n });\n const hasLabel = Boolean(label);\n const hasHelperText = Boolean(helperText);\n const showValidationText = Boolean(validationStatus && validationText);\n const showInvalid = showValidationText && validationStatus === 'invalid';\n const ariaDescribedbyValue = mergeIds(\n ariaDescribedby,\n hasHelperText ? helperTextId : undefined,\n showValidationText ? validationTextId : undefined\n );\n const value = {\n hasGroupHelperText: hasHelperText,\n hasGroupValidationText: Boolean(validationStatus !== undefined && validationText !== undefined),\n 'aria-describedby': ariaDescribedbyValue,\n };\n\n return (\n <fieldset\n ref={ref}\n className={cn(componentClassName, className)}\n data-testid={componentClassName}\n {...fieldsetProps}\n disabled={disabled}\n id={id}\n data-disabled={disabled ? '' : undefined}\n aria-errormessage={ariaErrorMessage ?? (showInvalid ? validationTextId : undefined)}\n aria-labelledby={ariaLabelledby ?? (Boolean(label) ? labelId : undefined)}\n aria-invalid={showInvalid}\n aria-describedby={ariaDescribedbyValue}\n data-validation-status={validationStatus ? validationStatus : undefined}\n >\n {hasLabel ? (\n <>\n <legend id={labelId} data-label-variant={labelVariant}>\n {label}\n </legend>\n {hasHelperText || showValidationText ? (\n <Flex\n direction=\"column\"\n alignItems=\"start\"\n className={`${componentClassName}HelperTextContainer`}\n >\n {helperText ? (\n <HelperText id={helperTextId} disabled={disabled}>\n {helperText}\n </HelperText>\n ) : null}\n {showValidationText && validationPlacement === 'top' ? (\n <ValidationText id={validationTextId} status={validationStatus}>\n {validationText}\n </ValidationText>\n ) : null}\n </Flex>\n ) : null}\n </>\n ) : null}\n <FormGroupBaseProvider value={value}>{children}</FormGroupBaseProvider>\n {showValidationText && validationPlacement === 'bottom' ? (\n <ValidationText id={validationTextId} status={validationStatus}>\n {validationText}\n </ValidationText>\n ) : null}\n </fieldset>\n );\n});\n\nFormGroupBase.displayName = COMPONENT_NAME;\n"],"mappings":";;gZAEA,OAAS,cAAAA,MAAkB,QAuEnB,mBAAAC,EACE,OAAAC,EAIE,QAAAC,MALJ,oBAzDR,IAAMC,EAAiB,gBACjBC,EAAqBC,EAAiBF,CAAc,EAI7CG,EAAgBC,EAAqD,CAACC,EAAOC,IAAQ,CAChG,GAAM,CACJ,SAAAC,EACA,UAAAC,EACA,GAAIC,EACJ,MAAAC,EACA,aAAAC,EAAe,OACf,WAAAC,EACA,eAAAC,EACA,iBAAAC,EACA,oBAAAC,EAAsB,MACtB,SAAAC,EACA,kBAAmBC,EACnB,mBAAoBC,EACpB,oBAAqBC,EACrB,GAAGC,CACL,EAAIC,EAAahB,EAAOiB,CAAc,EAChC,CAAE,GAAAC,EAAI,QAAAC,EAAS,aAAAC,EAAc,iBAAAC,CAAiB,EAAIC,EAAO,CAC7D,WAAAlB,EACA,OAAQ,UACV,CAAC,EACKmB,EAAW,EAAQlB,EACnBmB,EAAgB,EAAQjB,EACxBkB,EAAqB,GAAQhB,GAAoBD,GACjDkB,EAAcD,GAAsBhB,IAAqB,UACzDkB,EAAuBC,EAC3Bf,EACAW,EAAgBJ,EAAe,OAC/BK,EAAqBJ,EAAmB,MAC1C,EACMQ,EAAQ,CACZ,mBAAoBL,EACpB,uBAAgCf,IAAqB,QAAaD,IAAmB,OACrF,mBAAoBmB,CACtB,EAEA,OACEjC,EAAC,YACC,IAAKO,EACL,UAAW6B,EAAGlC,EAAoBO,CAAS,EAC3C,cAAaP,EACZ,GAAGmB,EACJ,SAAUJ,EACV,GAAIO,EACJ,gBAAeP,EAAW,GAAK,OAC/B,oBAAmBG,IAAqBY,EAAcL,EAAmB,QACzE,kBAAiBT,IAA2BP,EAASc,EAAU,QAC/D,eAAcO,EACd,mBAAkBC,EAClB,yBAAwBlB,GAAsC,OAE7D,UAAAc,EACC7B,EAAAF,EAAA,CACE,UAAAC,EAAC,UAAO,GAAI0B,EAAS,qBAAoBb,EACtC,SAAAD,EACH,EACCmB,GAAiBC,EAChB/B,EAACqC,EAAA,CACC,UAAU,SACV,WAAW,QACX,UAAW,GAAGnC,CAAkB,sBAE/B,UAAAW,EACCd,EAACuC,EAAA,CAAW,GAAIZ,EAAc,SAAUT,EACrC,SAAAJ,EACH,EACE,KACHkB,GAAsBf,IAAwB,MAC7CjB,EAACwC,EAAA,CAAe,GAAIZ,EAAkB,OAAQZ,EAC3C,SAAAD,EACH,EACE,MACN,EACE,MACN,EACE,KACJf,EAACyC,EAAA,CAAsB,MAAOL,EAAQ,SAAA3B,EAAS,EAC9CuB,GAAsBf,IAAwB,SAC7CjB,EAACwC,EAAA,CAAe,GAAIZ,EAAkB,OAAQZ,EAC3C,SAAAD,EACH,EACE,MACN,CAEJ,CAAC,EAEDV,EAAc,YAAcH","names":["forwardRef","Fragment","jsx","jsxs","COMPONENT_NAME","componentClassName","withGlobalPrefix","FormGroupBase","forwardRef","props","ref","children","className","providedId","label","labelVariant","helperText","validationText","validationStatus","validationPlacement","disabled","ariaLabelledby","ariaDescribedby","ariaErrorMessage","fieldsetProps","extractProps","marginPropDefs","id","labelId","helperTextId","validationTextId","useIds","hasLabel","hasHelperText","showValidationText","showInvalid","ariaDescribedbyValue","mergeIds","value","cn","Flex","HelperText","ValidationText","FormGroupBaseProvider"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
import{a as r}from"./chunk-
|
|
4
|
-
//# sourceMappingURL=chunk-
|
|
3
|
+
import{a as r}from"./chunk-QNITBIE4.js";import{a as e}from"./chunk-J3AJBV4B.js";import{b as i}from"./chunk-PDEVCIQ3.js";import{forwardRef as d}from"react";import{Toast as t}from"radix-ui";import{CloseMediumIcon as C}from"@utilitywarehouse/hearth-react-icons";import{jsx as o,jsxs as v}from"react/jsx-runtime";var m="Toast",s=i(m),P=d(({className:a,icon:n,description:p,showDismissButton:l,children:c,...f},T)=>v(t.Root,{ref:T,className:e(s,a),"data-testid":s,...f,children:[n,o(t.Description,{asChild:!0,children:o("div",{className:`${s}Description`,children:p})}),c,l?o(t.Close,{asChild:!0,children:o(r,{label:"Dismiss toast",inverted:!0,children:o(C,{})})}):null]}));P.displayName=m;export{P as a};
|
|
4
|
+
//# sourceMappingURL=chunk-RQVUMCZA.js.map
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }"use client";
|
|
2
|
+
|
|
3
|
+
var _chunkVSV7P6QOcjs = require('./chunk-VSV7P6QO.cjs');var _chunkEHKTA7G5cjs = require('./chunk-EHKTA7G5.cjs');var _chunkZ6OA4XPPcjs = require('./chunk-Z6OA4XPP.cjs');var _chunkOB7O3UFLcjs = require('./chunk-OB7O3UFL.cjs');var _chunkRIHABKWYcjs = require('./chunk-RIHABKWY.cjs');var _chunkHIF6HKZ3cjs = require('./chunk-HIF6HKZ3.cjs');var _chunkZPJNQBTNcjs = require('./chunk-ZPJNQBTN.cjs');var _chunkONNSZMWFcjs = require('./chunk-ONNSZMWF.cjs');var _chunk4Q432K4Wcjs = require('./chunk-4Q432K4W.cjs');var _reactdatepicker = require('react-datepicker'); var _reactdatepicker2 = _interopRequireDefault(_reactdatepicker);var _dom = require('@floating-ui/dom');var _radixui = require('radix-ui');var _react = require('react');var _jsxruntime = require('react/jsx-runtime');var T="DatePicker",e=_chunk4Q432K4Wcjs.b.call(void 0, T),se= exports.a =_react.forwardRef.call(void 0, (E,O)=>{let{className:H,onChange:l,onCalendarOpen:p,onCalendarClose:c,validationStatus:s,validationText:n,label:R,labelVariant:S,helperText:m,id:F,disabled:f,readOnly:y,required:P,disableTodayIndicator:$,...A}=_chunkZPJNQBTNcjs.a.call(void 0, E,_chunkOB7O3UFLcjs.a),[Y,u]=_react.useState.call(void 0, !1),[a,i]=_react.useState.call(void 0, "days"),{id:K,labelId:C,helperTextId:h,validationTextId:d}=_chunkRIHABKWYcjs.a.call(void 0, {providedId:F,prefix:"date-picker"}),o=!y&&!f,L={id:K,labelId:C,helperTextId:h,validationTextId:d,label:R,labelVariant:S,helperText:m,validationText:o?n:void 0,validationStatus:o?s:void 0,required:P},W=_chunkHIF6HKZ3cjs.a.call(void 0, m?h:void 0,o&&s!==void 0&&n!==void 0?d:void 0),q={days:"days",months:"days",years:"months"},B={days:"months",months:"years",years:"days"},G=(t,ee)=>{a!=="days"&&i(q[a]),l!==void 0&&l(t,ee)},_=()=>{u(!0),p&&p()},z=()=>{u(!1),i("days"),c&&c()},J={customInput:_jsxruntime.jsx.call(void 0, _chunkEHKTA7G5cjs.a,{ref:O,className:"","data-calendar-state":Y?"open":"closed"}),renderCustomHeader:t=>_jsxruntime.jsx.call(void 0, _chunkVSV7P6QOcjs.a,{...t,view:a,onClick:()=>{i(B[a])},disableTodayIndicator:$})},k=o&&s==="invalid",Q={"aria-labelledby":C,"aria-describedby":W,"aria-invalid":k?!0:void 0,"aria-errormessage":k&&n!==void 0?d:void 0},U={calendarClassName:`${e}Calendar`,dayClassName:()=>`${e}Day`,weekClassName:()=>`${e}Week`,monthClassName:()=>`${e}Month`,yearClassName:()=>`${e}Year`,popperClassName:`${e}Popper`},X={required:P,disabled:f,readOnly:y,calendarStartDay:1,showIcon:!1,dateFormat:"dd/MM/yyyy",formatWeekDay:t=>t.toString().charAt(0)},Z={showPopperArrow:!1,popperModifiers:[_dom.offset.call(void 0, -6)],popperPlacement:"bottom-start",popperProps:{strategy:"fixed"},popperContainer:_radixui.Portal.Root},j={...{onChange:G,onCalendarClose:z,onCalendarOpen:_},...X,...Q,...Z,...U,...{showMonthYearPicker:a==="months",showYearPicker:a==="years",shouldCloseOnSelect:a==="days",closeOnScroll:!0},...J,...A};return _jsxruntime.jsx.call(void 0, _chunkZ6OA4XPPcjs.a,{className:_chunkONNSZMWFcjs.a.call(void 0, e,H),"data-testid":e,...L,children:_jsxruntime.jsx.call(void 0, _reactdatepicker2.default,{...j,selectsRange:!1,selectsMultiple:!1})})});se.displayName=T;exports.a = se;
|
|
4
|
+
//# sourceMappingURL=chunk-RQXSWZUH.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-RQXSWZUH.cjs","../src/components/DatePicker/DatePicker.tsx"],"names":["COMPONENT_NAME","componentClassName","withGlobalPrefix","DatePicker","forwardRef","props","ref","className","onChange","onCalendarOpen","onCalendarClose","validationStatus","validationText","label","labelVariant","helperText","providedId","disabled","readOnly","required","disableTodayIndicator","datePickerProps","extractProps","marginPropDefs","calendarOpen","setCalendarOpen","useState","view","setView","id","labelId","helperTextId","validationTextId","useIds","showValidation","formFieldProps","ariaDescribedbyValue","mergeIds","prevView","nextView","handleChange","date","event","handleCalendarOpen","handleCalendarClose","customComponents","jsx","DatePickerTrigger","DatePickerHeader","isInvalid","ariaProps","classNameProps"],"mappings":"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","file":"/home/runner/work/hearth/hearth/packages/react/dist/chunk-RQXSWZUH.cjs","sourcesContent":[null,"'use client';\n\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport DatePickerPrimitive from 'react-datepicker';\nimport type { ReactDatePickerCustomHeaderProps } from 'react-datepicker';\nimport { extractProps } from '../../helpers/extract-props';\nimport { marginPropDefs } from '../../props/margin.props';\nimport { cn } from '../../helpers/cn';\nimport { offset } from '@floating-ui/dom';\nimport type { DatePickerProps, View } from './DatePicker.props';\nimport { DatePickerTrigger } from './DatePickerTrigger';\nimport { DatePickerHeader } from './DatePickerHeader';\nimport { FormField } from '../FormField/FormField';\nimport { useIds } from '../../hooks/use-ids';\nimport { mergeIds } from '../../helpers/merge-ids';\nimport { Portal } from 'radix-ui';\nimport { forwardRef, useState } from 'react';\nimport type { ComponentRef, MouseEvent, KeyboardEvent } from 'react';\n\nconst COMPONENT_NAME = 'DatePicker';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\ntype DatePickerElement = ComponentRef<'button'>;\n\n/**\n * Use DatePicker when a user needs to specify a single date via an\n * expandable calendar. It is built on the React Datepicker library and only\n * supports single-date selection — range and multi-date selection are not\n * supported.\n *\n * For faster, manual date entry without a calendar, use DateInput instead.\n *\n * @summary A field for selecting a single date from an expandable calendar.\n */\nexport const DatePicker = forwardRef<DatePickerElement, DatePickerProps>((props, ref) => {\n const {\n className,\n onChange,\n onCalendarOpen,\n onCalendarClose,\n validationStatus,\n validationText,\n label,\n labelVariant,\n helperText,\n id: providedId,\n disabled,\n readOnly,\n required,\n disableTodayIndicator,\n ...datePickerProps\n } = extractProps(props, marginPropDefs);\n\n const [calendarOpen, setCalendarOpen] = useState(false);\n const [view, setView] = useState<View>('days');\n\n const { id, labelId, helperTextId, validationTextId } = useIds({\n providedId,\n prefix: 'date-picker',\n });\n\n const showValidation = Boolean(!readOnly && !disabled);\n\n const formFieldProps = {\n id,\n labelId,\n helperTextId,\n validationTextId,\n label,\n labelVariant,\n helperText,\n validationText: showValidation ? validationText : undefined,\n validationStatus: showValidation ? validationStatus : undefined,\n required,\n };\n\n const ariaDescribedbyValue = mergeIds(\n !!helperText ? helperTextId : undefined,\n showValidation && validationStatus !== undefined && validationText !== undefined\n ? validationTextId\n : undefined\n );\n\n const prevView: { [key in View]: View } = {\n days: 'days',\n months: 'days',\n years: 'months',\n };\n\n const nextView: { [key in View]: View } = {\n days: 'months',\n months: 'years',\n years: 'days',\n };\n\n const handleChange = (\n date: Date | null,\n event?: MouseEvent<HTMLElement> | KeyboardEvent<HTMLElement>\n ) => {\n if (view !== 'days') {\n setView(prevView[view]);\n }\n if (onChange !== undefined) {\n onChange(date, event);\n }\n };\n\n const handleCalendarOpen = () => {\n setCalendarOpen(true);\n if (onCalendarOpen) {\n onCalendarOpen();\n }\n };\n\n const handleCalendarClose = () => {\n setCalendarOpen(false);\n setView('days');\n if (onCalendarClose) {\n onCalendarClose();\n }\n };\n\n const customComponents = {\n customInput: (\n <DatePickerTrigger\n ref={ref}\n className=\"\"\n data-calendar-state={calendarOpen ? 'open' : 'closed'}\n />\n ),\n renderCustomHeader: (props: ReactDatePickerCustomHeaderProps) => (\n <DatePickerHeader\n {...props}\n view={view}\n onClick={() => {\n setView(nextView[view]);\n }}\n disableTodayIndicator={disableTodayIndicator}\n />\n ),\n };\n\n const isInvalid = showValidation && validationStatus === 'invalid';\n\n const ariaProps = {\n 'aria-labelledby': labelId,\n 'aria-describedby': ariaDescribedbyValue,\n 'aria-invalid': isInvalid ? true : undefined,\n 'aria-errormessage': isInvalid && validationText !== undefined ? validationTextId : undefined,\n };\n\n const classNameProps = {\n calendarClassName: `${componentClassName}Calendar`,\n dayClassName: () => `${componentClassName}Day`,\n weekClassName: () => `${componentClassName}Week`,\n monthClassName: () => `${componentClassName}Month`,\n yearClassName: () => `${componentClassName}Year`,\n popperClassName: `${componentClassName}Popper`,\n };\n\n const defaultProps = {\n required,\n disabled,\n readOnly,\n calendarStartDay: 1,\n showIcon: false,\n dateFormat: 'dd/MM/yyyy',\n formatWeekDay: (day: Date) => day.toString().charAt(0),\n };\n\n const popperProps = {\n showPopperArrow: false,\n popperModifiers: [offset(-6)],\n popperPlacement: 'bottom-start',\n popperProps: { strategy: 'fixed' },\n popperContainer: Portal.Root,\n };\n\n const eventHandlingProps = {\n onChange: handleChange,\n onCalendarClose: handleCalendarClose,\n onCalendarOpen: handleCalendarOpen,\n };\n\n const stateProps = {\n showMonthYearPicker: view === 'months',\n showYearPicker: view === 'years',\n shouldCloseOnSelect: view === 'days',\n closeOnScroll: true,\n };\n\n const reactDatePickerProps = {\n ...eventHandlingProps,\n ...defaultProps,\n ...ariaProps,\n ...popperProps,\n ...classNameProps,\n ...stateProps,\n ...customComponents,\n ...datePickerProps,\n };\n\n return (\n <FormField\n className={cn(componentClassName, className)}\n data-testid={componentClassName}\n {...formFieldProps}\n >\n <DatePickerPrimitive\n {...reactDatePickerProps}\n // @ts-expect-error having to be explicit about these types to ensure onChange type is correct\n selectsRange={false}\n // @ts-expect-error having to be explicit about these types to ensure onChange type is correct\n selectsMultiple={false}\n />\n </FormField>\n );\n});\n\nDatePicker.displayName = COMPONENT_NAME;\n"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
|
|
2
|
+
|
|
3
|
+
var _chunkYQOUIHWNcjs = require('./chunk-YQOUIHWN.cjs');var _chunkHHKQ3ZBDcjs = require('./chunk-HHKQ3ZBD.cjs');var _chunkZPJNQBTNcjs = require('./chunk-ZPJNQBTN.cjs');var _chunkONNSZMWFcjs = require('./chunk-ONNSZMWF.cjs');var _chunk4Q432K4Wcjs = require('./chunk-4Q432K4W.cjs');var _chunk5XQBCR7Qcjs = require('./chunk-5XQBCR7Q.cjs');var _chunkZSLWPF2Ucjs = require('./chunk-ZSLWPF2U.cjs');var _react = require('react');var _radixui = require('radix-ui');var _jsxruntime = require('react/jsx-runtime');var d=t=>t.preventDefault(),y="UnstyledIconButton",u=_chunk4Q432K4Wcjs.b.call(void 0, y),M= exports.a =_react.forwardRef.call(void 0, (t,C)=>{let{className:B,children:e,label:I,disabled:n,inverted:P,loading:o,onClick:b,onAuxClick:S,asChild:r,...v}=_chunkZPJNQBTNcjs.a.call(void 0, t,_chunkYQOUIHWNcjs.a),E=_chunk5XQBCR7Qcjs.a.call(void 0, t.size||"md",{md:"sm",sm:"xs"}),N=r?_radixui.Slot.Root:"button";return _jsxruntime.jsx.call(void 0, N,{ref:C,className:_chunkONNSZMWFcjs.a.call(void 0, u,B),"aria-label":I,"aria-disabled":n||o,"data-inverted":P?"":void 0,onClick:n||o?d:b,onAuxClick:n||o?d:S,"data-testid":u,...v,children:o?_chunkZSLWPF2Ucjs.a.call(void 0, {asChild:r,children:e},()=>_jsxruntime.jsx.call(void 0, _chunkHHKQ3ZBDcjs.a,{size:E,currentColor:!0})):e})});M.displayName=y;exports.a = M;
|
|
4
|
+
//# sourceMappingURL=chunk-RS5YT3MK.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-RS5YT3MK.cjs","../src/components/UnstyledIconButton/UnstyledIconButton.tsx"],"names":["preventDefault","event","COMPONENT_NAME","componentClassName","withGlobalPrefix","UnstyledIconButton","forwardRef","props","ref","className","children","label","disabled","inverted","loading","onClick","onAuxClick","asChild","unstyledIconButtonProps","extractProps","unstyledIconButtonPropDefs","spinnerSize","getResponsiveTranslation","Component","Slot","jsx","cn","getSubtree","Spinner"],"mappings":"AAAA,qFAAY;AACZ;AACA,wDAAwC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,wDAAoC,wDAAyC,8BCA9P,mCASN,+CAsDP,IA/CRA,CAAAA,CAAkBC,CAAAA,EAAyCA,CAAAA,CAAM,cAAA,CAAe,CAAA,CAEhFC,CAAAA,CAAiB,oBAAA,CACjBC,CAAAA,CAAqBC,iCAAAA,CAA+B,CAAA,CAY7CC,CAAAA,aAAqBC,+BAAAA,CAC/BC,CAAAA,CAAOC,CAAAA,CAAAA,EAAQ,CACd,GAAM,CACJ,SAAA,CAAAC,CAAAA,CACA,QAAA,CAAAC,CAAAA,CACA,KAAA,CAAAC,CAAAA,CACA,QAAA,CAAAC,CAAAA,CACA,QAAA,CAAAC,CAAAA,CACA,OAAA,CAAAC,CAAAA,CACA,OAAA,CAAAC,CAAAA,CACA,UAAA,CAAAC,CAAAA,CACA,OAAA,CAAAC,CAAAA,CACA,GAAGC,CACL,CAAA,CAAIC,iCAAAA,CAAaZ,CAAOa,mBAA0B,CAAA,CAE5CC,CAAAA,CAAcC,iCAAAA,CAAyBf,CAAM,IAAA,EAAQ,IAAA,CAAM,CAAE,EAAA,CAAI,IAAA,CAAM,EAAA,CAAI,IAAK,CAAC,CAAA,CACjFgB,CAAAA,CAAYN,CAAAA,CAAUO,aAAAA,CAAK,IAAA,CAAO,QAAA,CAExC,OACEC,6BAAAA,CAACF,CAAA,CACC,GAAA,CAAKf,CAAAA,CACL,SAAA,CAAWkB,iCAAAA,CAAGvB,CAAoBM,CAAS,CAAA,CAC3C,YAAA,CAAYE,CAAAA,CACZ,eAAA,CAAeC,CAAAA,EAAYE,CAAAA,CAC3B,eAAA,CAAeD,CAAAA,CAAW,EAAA,CAAK,KAAA,CAAA,CAC/B,OAAA,CAASD,CAAAA,EAAYE,CAAAA,CAAUd,CAAAA,CAAiBe,CAAAA,CAChD,UAAA,CAAYH,CAAAA,EAAYE,CAAAA,CAAUd,CAAAA,CAAiBgB,CAAAA,CACnD,aAAA,CAAab,CAAAA,CACZ,GAAGe,CAAAA,CAEH,QAAA,CAAAJ,CAAAA,CACGa,iCAAAA,CAAa,OAAA,CAAAV,CAAAA,CAAS,QAAA,CAAAP,CAAS,CAAA,CAAG,CAAA,CAAA,EAChCe,6BAAAA,mBAACG,CAAA,CAAQ,IAAA,CAAMP,CAAAA,CAAqC,YAAA,CAAY,CAAA,CAAA,CAAC,CAClE,CAAA,CACDX,CAAAA,CACN,CAEJ,CACF,CAAA,CAEAL,CAAAA,CAAmB,WAAA,CAAcH,CAAAA,CAAAA,cAAAA","file":"/home/runner/work/hearth/hearth/packages/react/dist/chunk-RS5YT3MK.cjs","sourcesContent":[null,"'use client';\n\nimport { forwardRef } from 'react';\nimport type { ComponentRef, MouseEvent } from 'react';\nimport { cn } from '../../helpers/cn';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport { unstyledIconButtonPropDefs } from './UnstyledIconButton.props';\nimport type { UnstyledIconButtonProps } from './UnstyledIconButton.props';\nimport { extractProps } from '../../helpers/extract-props';\nimport { Spinner } from '../Spinner/Spinner';\nimport type { SpinnerProps } from '../Spinner/Spinner.props';\nimport { Slot } from 'radix-ui';\nimport { getSubtree } from '../../helpers/get-subtree';\nimport { getResponsiveTranslation } from '../../helpers/get-responsive-translation';\n\n// aria-disabled keeps the button focusable but doesn't block its default\n// action, so cancel clicks (including middle-click via auxclick) to stop form\n// submission and link navigation.\nconst preventDefault = (event: MouseEvent<HTMLButtonElement>) => event.preventDefault();\n\nconst COMPONENT_NAME = 'UnstyledIconButton';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\ntype UnstyledIconButtonElement = ComponentRef<'button'>;\n\n/**\n * Use UnstyledIconButton for an icon-only button with no visual styling of\n * its own: a plain, unstyled base for building custom icon button variants.\n * For a fully-styled icon button, use IconButton instead. A `label` is\n * required, since the button contains only an icon with no visible text.\n *\n * @summary An unstyled, icon-only button base for building custom icon buttons.\n */\nexport const UnstyledIconButton = forwardRef<UnstyledIconButtonElement, UnstyledIconButtonProps>(\n (props, ref) => {\n const {\n className,\n children,\n label,\n disabled,\n inverted,\n loading,\n onClick,\n onAuxClick,\n asChild,\n ...unstyledIconButtonProps\n } = extractProps(props, unstyledIconButtonPropDefs);\n\n const spinnerSize = getResponsiveTranslation(props.size || 'md', { md: 'sm', sm: 'xs' });\n const Component = asChild ? Slot.Root : 'button';\n\n return (\n <Component\n ref={ref}\n className={cn(componentClassName, className)}\n aria-label={label}\n aria-disabled={disabled || loading}\n data-inverted={inverted ? '' : undefined}\n onClick={disabled || loading ? preventDefault : onClick}\n onAuxClick={disabled || loading ? preventDefault : onAuxClick}\n data-testid={componentClassName}\n {...unstyledIconButtonProps}\n >\n {loading\n ? getSubtree({ asChild, children }, () => (\n <Spinner size={spinnerSize as SpinnerProps['size']} currentColor />\n ))\n : children}\n </Component>\n );\n }\n);\n\nUnstyledIconButton.displayName = COMPONENT_NAME;\n"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }"use client";
|
|
2
|
+
|
|
3
|
+
var _chunkMZMYW4KCcjs = require('./chunk-MZMYW4KC.cjs');var _chunkWSD52THLcjs = require('./chunk-WSD52THL.cjs');var _chunkDR4D5JX2cjs = require('./chunk-DR4D5JX2.cjs');var _chunkS3DGCUDLcjs = require('./chunk-S3DGCUDL.cjs');var _chunkRAIRXO6Fcjs = require('./chunk-RAIRXO6F.cjs');var _chunkQKGE3FJXcjs = require('./chunk-QKGE3FJX.cjs');var _chunkOB7O3UFLcjs = require('./chunk-OB7O3UFL.cjs');var _chunkRIHABKWYcjs = require('./chunk-RIHABKWY.cjs');var _chunkHIF6HKZ3cjs = require('./chunk-HIF6HKZ3.cjs');var _chunkZPJNQBTNcjs = require('./chunk-ZPJNQBTN.cjs');var _chunkONNSZMWFcjs = require('./chunk-ONNSZMWF.cjs');var _chunk4Q432K4Wcjs = require('./chunk-4Q432K4W.cjs');var _hearthreacticons = require('@utilitywarehouse/hearth-react-icons');var _radixui = require('radix-ui');var _react = require('react');var _jsxruntime = require('react/jsx-runtime');var U="Checkbox",a=_chunk4Q432K4Wcjs.b.call(void 0, U),Y= exports.a =_react.forwardRef.call(void 0, (A,M)=>{let{id:O,label:c,helperText:m,className:$,disabled:b,onCheckedChange:p,value:i="on","aria-labelledby":x,"aria-describedby":B,image:_,validationStatus:r,validationText:f,...q}=_chunkZPJNQBTNcjs.a.call(void 0, A,_chunkOB7O3UFLcjs.a),{id:h,labelId:u,helperTextId:C,validationTextId:n}=_chunkRIHABKWYcjs.a.call(void 0, {providedId:O,prefix:"checkbox"}),e=_chunkWSD52THLcjs.c.call(void 0, ),t=_chunkDR4D5JX2cjs.c.call(void 0, ),z=_optionalChain([t, 'optionalAccess', _2 => _2.value, 'optionalAccess', _3 => _3.includes, 'call', _4 => _4(i)]),J=_optionalChain([e, 'optionalAccess', _5 => _5.hasGroupHelperText]),k=_optionalChain([e, 'optionalAccess', _6 => _6.hasGroupValidationText]),K=e?e["aria-describedby"]:"",T=!J&&!!m,d=!!c,v=!k&&r!==void 0&&f!==void 0,y=v&&d,Q=_chunkHIF6HKZ3cjs.a.call(void 0, B,K,T?C:void 0,y?n:void 0),I=!k&&r==="invalid";return _jsxruntime.jsxs.call(void 0, _chunkQKGE3FJXcjs.a,{className:_chunkONNSZMWFcjs.a.call(void 0, a,$),"data-testid":a,"data-disabled":b?"":void 0,children:[_jsxruntime.jsx.call(void 0, _radixui.Checkbox.Root,{ref:M,className:`${a}Root`,name:_optionalChain([t, 'optionalAccess', _7 => _7.name]),checked:z,value:i,...q,id:h,disabled:b,"aria-describedby":Q,"aria-labelledby":x||(d?u:void 0),"aria-invalid":I?!0:void 0,"aria-errormessage":I&&y?n:void 0,onCheckedChange:P=>{e&&(P?_optionalChain([t, 'optionalAccess', _8 => _8.onItemCheck, 'call', _9 => _9(i)]):_optionalChain([t, 'optionalAccess', _10 => _10.onItemUncheck, 'call', _11 => _11(i)])),p&&p(P)},children:_jsxruntime.jsx.call(void 0, _radixui.Checkbox.Indicator,{asChild:!0,className:`${a}Indicator`,children:_jsxruntime.jsx.call(void 0, _hearthreacticons.TickSmallIcon,{})})}),d?_jsxruntime.jsxs.call(void 0, _chunkQKGE3FJXcjs.a,{direction:"column",children:[_jsxruntime.jsxs.call(void 0, _chunkMZMYW4KCcjs.a,{id:u,htmlFor:h,disableUserSelect:!0,children:[_,c]}),T?_jsxruntime.jsx.call(void 0, _chunkRAIRXO6Fcjs.a,{id:C,disableUserSelect:!0,children:m}):null,v?_jsxruntime.jsx.call(void 0, _chunkS3DGCUDLcjs.a,{id:n,status:r,disableUserSelect:!0,children:f}):null]}):null]})});Y.displayName=U;exports.a = Y;
|
|
4
|
+
//# sourceMappingURL=chunk-RV2FEKIE.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-RV2FEKIE.cjs","../src/components/Checkbox/Checkbox.tsx"],"names":["COMPONENT_NAME","componentClassName","withGlobalPrefix","Checkbox","forwardRef","props","ref","providedId","label","helperText","className","disabled","onCheckedChange","value","ariaLabelledby","consumerAriaDescribedby","image","validationStatus","validationText","checkboxProps","extractProps","marginPropDefs","id","labelId","helperTextId","validationTextId","useIds","context","useFormGroupBase","checkboxContext","useCheckboxGroup","checked","hasGroupHelperText","hasGroupValidationText","ariaDescribedby","showHelperText","showLabel","showValidation","showValidationText","ariaDescribedbyValue","mergeIds","isInvalid","jsxs","Flex","cn","jsx","CheckboxPrimitive"],"mappings":"AAAA,ylBAAY;AACZ;AACA,wDAAwC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,wECK7c,mCAKgB,8BAMnB,+CA0FjB,IAxFJA,CAAAA,CAAiB,UAAA,CACjBC,CAAAA,CAAqBC,iCAAAA,CAA+B,CAAA,CAa7CC,CAAAA,aAAWC,+BAAAA,CAA4CC,CAAAA,CAAOC,CAAAA,CAAAA,EAAQ,CACjF,GAAM,CACJ,EAAA,CAAIC,CAAAA,CACJ,KAAA,CAAAC,CAAAA,CACA,UAAA,CAAAC,CAAAA,CACA,SAAA,CAAAC,CAAAA,CACA,QAAA,CAAAC,CAAAA,CACA,eAAA,CAAAC,CAAAA,CACA,KAAA,CAAAC,CAAAA,CAAQ,IAAA,CACR,iBAAA,CAAmBC,CAAAA,CACnB,kBAAA,CAAoBC,CAAAA,CACpB,KAAA,CAAAC,CAAAA,CACA,gBAAA,CAAAC,CAAAA,CACA,cAAA,CAAAC,CAAAA,CACA,GAAGC,CACL,CAAA,CAAIC,iCAAAA,CAAaf,CAAOgB,mBAAc,CAAA,CAChC,CAAE,EAAA,CAAAC,CAAAA,CAAI,OAAA,CAAAC,CAAAA,CAAS,YAAA,CAAAC,CAAAA,CAAc,gBAAA,CAAAC,CAAiB,CAAA,CAAIC,iCAAAA,CACtD,UAAA,CAAAnB,CAAAA,CACA,MAAA,CAAQ,UACV,CAAC,CAAA,CACKoB,CAAAA,CAAUC,iCAAAA,CAAiB,CAC3BC,CAAAA,CAAkBC,iCAAAA,CAAiB,CACnCC,CAAAA,iBAAUF,CAAAA,6BAAiB,KAAA,6BAAO,QAAA,mBAAShB,CAAK,GAAA,CAChDmB,CAAAA,iBAAqBL,CAAAA,6BAAS,oBAAA,CAC9BM,CAAAA,iBAAyBN,CAAAA,6BAAS,wBAAA,CAClCO,CAAAA,CAAkBP,CAAAA,CAAUA,CAAAA,CAAQ,kBAAkB,CAAA,CAAI,EAAA,CAC1DQ,CAAAA,CAAiB,CAACH,CAAAA,EAAsB,CAAC,CAACvB,CAAAA,CAC1C2B,CAAAA,CAAY,CAAC,CAAC5B,CAAAA,CACd6B,CAAAA,CACJ,CAACJ,CAAAA,EAA0BhB,CAAAA,GAAqB,KAAA,CAAA,EAAaC,CAAAA,GAAmB,KAAA,CAAA,CAE5EoB,CAAAA,CAAqBD,CAAAA,EAAkBD,CAAAA,CAEvCG,CAAAA,CAAuBC,iCAAAA,CAC3BzB,CACAmB,CAAAA,CACAC,CAAAA,CAAiBX,CAAAA,CAAe,KAAA,CAAA,CAChCc,CAAAA,CAAqBb,CAAAA,CAAmB,KAAA,CAC1C,CAAA,CACMgB,CAAAA,CAAY,CAACR,CAAAA,EAA0BhB,CAAAA,GAAqB,SAAA,CAElE,OACEyB,8BAAAA,mBAACC,CAAA,CACC,SAAA,CAAWC,iCAAAA,CAAG3C,CAAoBS,CAAS,CAAA,CAC3C,aAAA,CAAaT,CAAAA,CACb,eAAA,CAAeU,CAAAA,CAAW,EAAA,CAAK,KAAA,CAAA,CAE/B,QAAA,CAAA,CAAAkC,6BAAAA,iBAACC,CAAkB,IAAA,CAAlB,CACC,GAAA,CAAKxC,CAAAA,CACL,SAAA,CAAW,CAAA,EAAA","file":"/home/runner/work/hearth/hearth/packages/react/dist/chunk-RV2FEKIE.cjs","sourcesContent":[null,"'use client';\n\nimport { cn } from '../../helpers/cn';\nimport type { CheckboxProps } from './Checkbox.props';\nimport { Flex } from '../Flex/Flex';\nimport { Label } from '../Label/Label';\nimport { HelperText } from '../HelperText/HelperText';\nimport { TickSmallIcon } from '@utilitywarehouse/hearth-react-icons';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport { useIds } from '../../hooks/use-ids';\nimport { marginPropDefs } from '../../props/margin.props';\nimport { extractProps } from '../../helpers/extract-props';\nimport { Checkbox as CheckboxPrimitive } from 'radix-ui';\nimport { useCheckboxGroup } from '../CheckboxGroup/CheckboxGroup.context';\nimport { useFormGroupBase } from '../FormGroupBase/FormGroupBase.context';\nimport { ValidationText } from '../ValidationText/ValidationText';\nimport { mergeIds } from '../../helpers/merge-ids';\nimport type { ComponentRef } from 'react';\nimport { forwardRef } from 'react';\n\nconst COMPONENT_NAME = 'Checkbox';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\ntype CheckboxElement = ComponentRef<'button'>;\n\n/**\n * Use Checkbox to let a user toggle a dual-state option between checked and\n * not checked. It can be used independently, but when presenting multiple\n * checkboxes together use `CheckboxGroup` instead, which handles their state\n * and layout. If not using the `label` prop, provide an `aria-label` or\n * `aria-labelledby` so the checkbox has an accessible name.\n *\n * @summary A dual-state control letting a user toggle between checked and not checked.\n */\nexport const Checkbox = forwardRef<CheckboxElement, CheckboxProps>((props, ref) => {\n const {\n id: providedId,\n label,\n helperText,\n className,\n disabled,\n onCheckedChange,\n value = 'on',\n 'aria-labelledby': ariaLabelledby,\n 'aria-describedby': consumerAriaDescribedby,\n image,\n validationStatus,\n validationText,\n ...checkboxProps\n } = extractProps(props, marginPropDefs);\n const { id, labelId, helperTextId, validationTextId } = useIds({\n providedId,\n prefix: 'checkbox',\n });\n const context = useFormGroupBase();\n const checkboxContext = useCheckboxGroup();\n const checked = checkboxContext?.value?.includes(value);\n const hasGroupHelperText = context?.hasGroupHelperText;\n const hasGroupValidationText = context?.hasGroupValidationText;\n const ariaDescribedby = context ? context['aria-describedby'] : '';\n const showHelperText = !hasGroupHelperText && !!helperText;\n const showLabel = !!label;\n const showValidation =\n !hasGroupValidationText && validationStatus !== undefined && validationText !== undefined;\n // Validation text is rendered alongside the label, so it's absent without one\n const showValidationText = showValidation && showLabel;\n\n const ariaDescribedbyValue = mergeIds(\n consumerAriaDescribedby,\n ariaDescribedby,\n showHelperText ? helperTextId : undefined,\n showValidationText ? validationTextId : undefined\n );\n const isInvalid = !hasGroupValidationText && validationStatus === 'invalid';\n\n return (\n <Flex\n className={cn(componentClassName, className)}\n data-testid={componentClassName}\n data-disabled={disabled ? '' : undefined}\n >\n <CheckboxPrimitive.Root\n ref={ref}\n className={`${componentClassName}Root`}\n name={checkboxContext?.name}\n checked={checked}\n value={value}\n {...checkboxProps}\n id={id}\n disabled={disabled}\n aria-describedby={ariaDescribedbyValue}\n aria-labelledby={ariaLabelledby ? ariaLabelledby : showLabel ? labelId : undefined}\n aria-invalid={isInvalid ? true : undefined}\n aria-errormessage={isInvalid && showValidationText ? validationTextId : undefined}\n onCheckedChange={(checked: boolean) => {\n if (context) {\n if (checked) {\n checkboxContext?.onItemCheck(value);\n } else {\n checkboxContext?.onItemUncheck(value);\n }\n }\n if (onCheckedChange) {\n onCheckedChange(checked);\n }\n }}\n >\n <CheckboxPrimitive.Indicator asChild className={`${componentClassName}Indicator`}>\n <TickSmallIcon />\n </CheckboxPrimitive.Indicator>\n </CheckboxPrimitive.Root>\n {showLabel ? (\n <Flex direction=\"column\">\n <Label id={labelId} htmlFor={id} disableUserSelect>\n {image}\n {label}\n </Label>\n {showHelperText ? (\n <HelperText id={helperTextId} disableUserSelect>\n {helperText}\n </HelperText>\n ) : null}\n {showValidation ? (\n <ValidationText id={validationTextId} status={validationStatus} disableUserSelect>\n {validationText}\n </ValidationText>\n ) : null}\n </Flex>\n ) : null}\n </Flex>\n );\n});\n\nCheckbox.displayName = COMPONENT_NAME;\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
import{a as h}from"./chunk-V6QXHP4D.js";import{a as N}from"./chunk-
|
|
4
|
-
//# sourceMappingURL=chunk-
|
|
3
|
+
import{a as h}from"./chunk-V6QXHP4D.js";import{a as N}from"./chunk-PJCXETFD.js";import{a as L}from"./chunk-RXW6PYP7.js";import{a as u}from"./chunk-OPPG3NOC.js";import{a as C}from"./chunk-7X24J4CX.js";import{a as g}from"./chunk-KGEVWEVL.js";import{a as c}from"./chunk-J3AJBV4B.js";import{b}from"./chunk-PDEVCIQ3.js";import{forwardRef as M}from"react";import{jsx as e,jsxs as V}from"react/jsx-runtime";var y="List",a=b(y),O=M((P,o)=>{let{id:v,as:t="ul",className:x,colorScheme:r=void 0,variant:n,heading:i,headingElement:T,helperText:E,trailingContent:H,validationText:S,validationStatus:B,children:l,paddingNone:I,"aria-label":d,"aria-labelledby":R,...s}=g(P,u),w={heading:i,headingElement:T,helperText:E,trailingContent:H,validationText:S,validationStatus:B},{id:m,labelId:p}=C({providedId:v,prefix:"list"}),f={"aria-label":d,"aria-labelledby":R??(!!i&&!d?p:void 0),"data-padding-none":I?"":void 0};return V("div",{className:c(a,x),"data-testid":a,children:[i?e(N,{id:p,...w}):null,n===void 0||r===void 0?e(L,{asChild:!0,id:m,className:`${a}Container`,role:"list",...f,children:e(t,{ref:o,...s,children:l})}):e(h,{className:`${a}Container`,paddingNone:!0,variant:n,colorScheme:r,children:e(t,{ref:o,role:"list",id:m,...s,...f,children:l})})]})});O.displayName=y;export{O as a};
|
|
4
|
+
//# sourceMappingURL=chunk-S4U7KSTZ.js.map
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import{a as F}from"./chunk-GBTQPGQG.js";import{c as D}from"./chunk-HY32GRZP.js";import{c as E}from"./chunk-YRTWVR3H.js";import{a as R}from"./chunk-QQR2AVHA.js";import{a as w}from"./chunk-JWPVXXER.js";import{a as l}from"./chunk-4MNQRAHO.js";import{a as g}from"./chunk-OPPG3NOC.js";import{a as H}from"./chunk-7X24J4CX.js";import{a as S}from"./chunk-VKE2TXPE.js";import{a as V}from"./chunk-KGEVWEVL.js";import{a as N}from"./chunk-J3AJBV4B.js";import{b as G}from"./chunk-PDEVCIQ3.js";import{TickSmallIcon as W}from"@utilitywarehouse/hearth-react-icons";import{Checkbox as L}from"radix-ui";import{forwardRef as X}from"react";import{jsx as o,jsxs as s}from"react/jsx-runtime";var U="Checkbox",a=G(U),Y=X((A,M)=>{let{id:O,label:c,helperText:m,className:$,disabled:b,onCheckedChange:p,value:i="on","aria-labelledby":x,"aria-describedby":B,image:_,validationStatus:r,validationText:f,...q}=V(A,g),{id:h,labelId:u,helperTextId:C,validationTextId:n}=H({providedId:O,prefix:"checkbox"}),e=D(),t=E(),z=t?.value?.includes(i),J=e?.hasGroupHelperText,k=e?.hasGroupValidationText,K=e?e["aria-describedby"]:"",T=!J&&!!m,d=!!c,v=!k&&r!==void 0&&f!==void 0,y=v&&d,Q=S(B,K,T?C:void 0,y?n:void 0),I=!k&&r==="invalid";return s(l,{className:N(a,$),"data-testid":a,"data-disabled":b?"":void 0,children:[o(L.Root,{ref:M,className:`${a}Root`,name:t?.name,checked:z,value:i,...q,id:h,disabled:b,"aria-describedby":Q,"aria-labelledby":x||(d?u:void 0),"aria-invalid":I?!0:void 0,"aria-errormessage":I&&y?n:void 0,onCheckedChange:P=>{e&&(P?t?.onItemCheck(i):t?.onItemUncheck(i)),p&&p(P)},children:o(L.Indicator,{asChild:!0,className:`${a}Indicator`,children:o(W,{})})}),d?s(l,{direction:"column",children:[s(F,{id:u,htmlFor:h,disableUserSelect:!0,children:[_,c]}),T?o(w,{id:C,disableUserSelect:!0,children:m}):null,v?o(R,{id:n,status:r,disableUserSelect:!0,children:f}):null]}):null]})});Y.displayName=U;export{Y as a};
|
|
4
|
+
//# sourceMappingURL=chunk-SIUB7RNN.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/Checkbox/Checkbox.tsx"],"sourcesContent":["'use client';\n\nimport { cn } from '../../helpers/cn';\nimport type { CheckboxProps } from './Checkbox.props';\nimport { Flex } from '../Flex/Flex';\nimport { Label } from '../Label/Label';\nimport { HelperText } from '../HelperText/HelperText';\nimport { TickSmallIcon } from '@utilitywarehouse/hearth-react-icons';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport { useIds } from '../../hooks/use-ids';\nimport { marginPropDefs } from '../../props/margin.props';\nimport { extractProps } from '../../helpers/extract-props';\nimport { Checkbox as CheckboxPrimitive } from 'radix-ui';\nimport { useCheckboxGroup } from '../CheckboxGroup/CheckboxGroup.context';\nimport { useFormGroupBase } from '../FormGroupBase/FormGroupBase.context';\nimport { ValidationText } from '../ValidationText/ValidationText';\nimport { mergeIds } from '../../helpers/merge-ids';\nimport type { ComponentRef } from 'react';\nimport { forwardRef } from 'react';\n\nconst COMPONENT_NAME = 'Checkbox';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\ntype CheckboxElement = ComponentRef<'button'>;\n\n/**\n * Use Checkbox to let a user toggle a dual-state option between checked and\n * not checked. It can be used independently, but when presenting multiple\n * checkboxes together use `CheckboxGroup` instead, which handles their state\n * and layout. If not using the `label` prop, provide an `aria-label` or\n * `aria-labelledby` so the checkbox has an accessible name.\n *\n * @summary A dual-state control letting a user toggle between checked and not checked.\n */\nexport const Checkbox = forwardRef<CheckboxElement, CheckboxProps>((props, ref) => {\n const {\n id: providedId,\n label,\n helperText,\n className,\n disabled,\n onCheckedChange,\n value = 'on',\n 'aria-labelledby': ariaLabelledby,\n 'aria-describedby': consumerAriaDescribedby,\n image,\n validationStatus,\n validationText,\n ...checkboxProps\n } = extractProps(props, marginPropDefs);\n const { id, labelId, helperTextId, validationTextId } = useIds({\n providedId,\n prefix: 'checkbox',\n });\n const context = useFormGroupBase();\n const checkboxContext = useCheckboxGroup();\n const checked = checkboxContext?.value?.includes(value);\n const hasGroupHelperText = context?.hasGroupHelperText;\n const hasGroupValidationText = context?.hasGroupValidationText;\n const ariaDescribedby = context ? context['aria-describedby'] : '';\n const showHelperText = !hasGroupHelperText && !!helperText;\n const showLabel = !!label;\n const showValidation =\n !hasGroupValidationText && validationStatus !== undefined && validationText !== undefined;\n // Validation text is rendered alongside the label, so it's absent without one\n const showValidationText = showValidation && showLabel;\n\n const ariaDescribedbyValue = mergeIds(\n consumerAriaDescribedby,\n ariaDescribedby,\n showHelperText ? helperTextId : undefined,\n showValidationText ? validationTextId : undefined\n );\n const isInvalid = !hasGroupValidationText && validationStatus === 'invalid';\n\n return (\n <Flex\n className={cn(componentClassName, className)}\n data-testid={componentClassName}\n data-disabled={disabled ? '' : undefined}\n >\n <CheckboxPrimitive.Root\n ref={ref}\n className={`${componentClassName}Root`}\n name={checkboxContext?.name}\n checked={checked}\n value={value}\n {...checkboxProps}\n id={id}\n disabled={disabled}\n aria-describedby={ariaDescribedbyValue}\n aria-labelledby={ariaLabelledby ? ariaLabelledby : showLabel ? labelId : undefined}\n aria-invalid={isInvalid ? true : undefined}\n aria-errormessage={isInvalid && showValidationText ? validationTextId : undefined}\n onCheckedChange={(checked: boolean) => {\n if (context) {\n if (checked) {\n checkboxContext?.onItemCheck(value);\n } else {\n checkboxContext?.onItemUncheck(value);\n }\n }\n if (onCheckedChange) {\n onCheckedChange(checked);\n }\n }}\n >\n <CheckboxPrimitive.Indicator asChild className={`${componentClassName}Indicator`}>\n <TickSmallIcon />\n </CheckboxPrimitive.Indicator>\n </CheckboxPrimitive.Root>\n {showLabel ? (\n <Flex direction=\"column\">\n <Label id={labelId} htmlFor={id} disableUserSelect>\n {image}\n {label}\n </Label>\n {showHelperText ? (\n <HelperText id={helperTextId} disableUserSelect>\n {helperText}\n </HelperText>\n ) : null}\n {showValidation ? (\n <ValidationText id={validationTextId} status={validationStatus} disableUserSelect>\n {validationText}\n </ValidationText>\n ) : null}\n </Flex>\n ) : null}\n </Flex>\n );\n});\n\nCheckbox.displayName = COMPONENT_NAME;\n"],"mappings":";;geAOA,OAAS,iBAAAA,MAAqB,uCAK9B,OAAS,YAAYC,MAAyB,WAM9C,OAAS,cAAAC,MAAkB,QA0FjB,cAAAC,EAKA,QAAAC,MALA,oBAxFV,IAAMC,EAAiB,WACjBC,EAAqBC,EAAiBF,CAAc,EAa7CG,EAAWN,EAA2C,CAACO,EAAOC,IAAQ,CACjF,GAAM,CACJ,GAAIC,EACJ,MAAAC,EACA,WAAAC,EACA,UAAAC,EACA,SAAAC,EACA,gBAAAC,EACA,MAAAC,EAAQ,KACR,kBAAmBC,EACnB,mBAAoBC,EACpB,MAAAC,EACA,iBAAAC,EACA,eAAAC,EACA,GAAGC,CACL,EAAIC,EAAaf,EAAOgB,CAAc,EAChC,CAAE,GAAAC,EAAI,QAAAC,EAAS,aAAAC,EAAc,iBAAAC,CAAiB,EAAIC,EAAO,CAC7D,WAAAnB,EACA,OAAQ,UACV,CAAC,EACKoB,EAAUC,EAAiB,EAC3BC,EAAkBC,EAAiB,EACnCC,EAAUF,GAAiB,OAAO,SAAShB,CAAK,EAChDmB,EAAqBL,GAAS,mBAC9BM,EAAyBN,GAAS,uBAClCO,EAAkBP,EAAUA,EAAQ,kBAAkB,EAAI,GAC1DQ,EAAiB,CAACH,GAAsB,CAAC,CAACvB,EAC1C2B,EAAY,CAAC,CAAC5B,EACd6B,EACJ,CAACJ,GAA0BhB,IAAqB,QAAaC,IAAmB,OAE5EoB,EAAqBD,GAAkBD,EAEvCG,EAAuBC,EAC3BzB,EACAmB,EACAC,EAAiBX,EAAe,OAChCc,EAAqBb,EAAmB,MAC1C,EACMgB,EAAY,CAACR,GAA0BhB,IAAqB,UAElE,OACEjB,EAAC0C,EAAA,CACC,UAAWC,EAAGzC,EAAoBQ,CAAS,EAC3C,cAAaR,EACb,gBAAeS,EAAW,GAAK,OAE/B,UAAAZ,EAAC6C,EAAkB,KAAlB,CACC,IAAKtC,EACL,UAAW,GAAGJ,CAAkB,OAChC,KAAM2B,GAAiB,KACvB,QAASE,EACT,MAAOlB,EACN,GAAGM,EACJ,GAAIG,EACJ,SAAUX,EACV,mBAAkB4B,EAClB,kBAAiBzB,IAAkCsB,EAAYb,EAAU,QACzE,eAAckB,EAAY,GAAO,OACjC,oBAAmBA,GAAaH,EAAqBb,EAAmB,OACxE,gBAAkBM,GAAqB,CACjCJ,IACEI,EACFF,GAAiB,YAAYhB,CAAK,EAElCgB,GAAiB,cAAchB,CAAK,GAGpCD,GACFA,EAAgBmB,CAAO,CAE3B,EAEA,SAAAhC,EAAC6C,EAAkB,UAAlB,CAA4B,QAAO,GAAC,UAAW,GAAG1C,CAAkB,YACnE,SAAAH,EAAC8C,EAAA,EAAc,EACjB,EACF,EACCT,EACCpC,EAAC0C,EAAA,CAAK,UAAU,SACd,UAAA1C,EAAC8C,EAAA,CAAM,GAAIvB,EAAS,QAASD,EAAI,kBAAiB,GAC/C,UAAAN,EACAR,GACH,EACC2B,EACCpC,EAACgD,EAAA,CAAW,GAAIvB,EAAc,kBAAiB,GAC5C,SAAAf,EACH,EACE,KACH4B,EACCtC,EAACiD,EAAA,CAAe,GAAIvB,EAAkB,OAAQR,EAAkB,kBAAiB,GAC9E,SAAAC,EACH,EACE,MACN,EACE,MACN,CAEJ,CAAC,EAEDd,EAAS,YAAcH","names":["TickSmallIcon","CheckboxPrimitive","forwardRef","jsx","jsxs","COMPONENT_NAME","componentClassName","withGlobalPrefix","Checkbox","props","ref","providedId","label","helperText","className","disabled","onCheckedChange","value","ariaLabelledby","consumerAriaDescribedby","image","validationStatus","validationText","checkboxProps","extractProps","marginPropDefs","id","labelId","helperTextId","validationTextId","useIds","context","useFormGroupBase","checkboxContext","useCheckboxGroup","checked","hasGroupHelperText","hasGroupValidationText","ariaDescribedby","showHelperText","showLabel","showValidation","showValidationText","ariaDescribedbyValue","mergeIds","isInvalid","Flex","cn","CheckboxPrimitive","TickSmallIcon","Label","HelperText","ValidationText"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
|
|
2
|
+
|
|
3
|
+
var _chunkMZMYW4KCcjs = require('./chunk-MZMYW4KC.cjs');var _chunkWSD52THLcjs = require('./chunk-WSD52THL.cjs');var _chunkRAIRXO6Fcjs = require('./chunk-RAIRXO6F.cjs');var _chunkQKGE3FJXcjs = require('./chunk-QKGE3FJX.cjs');var _chunkRIHABKWYcjs = require('./chunk-RIHABKWY.cjs');var _chunkHIF6HKZ3cjs = require('./chunk-HIF6HKZ3.cjs');var _chunkONNSZMWFcjs = require('./chunk-ONNSZMWF.cjs');var _chunk4Q432K4Wcjs = require('./chunk-4Q432K4W.cjs');var _react = require('react');var _radixui = require('radix-ui');var _jsxruntime = require('react/jsx-runtime');var v="Radio",e=_chunk4Q432K4Wcjs.b.call(void 0, v),B= exports.a =_react.forwardRef.call(void 0, ({id:w,label:i,helperText:t,image:x,className:I,labelFontWeight:N,disabled:a,"aria-labelledby":d,"aria-describedby":G,...P},C)=>{let{id:s,labelId:m,helperTextId:n}=_chunkRIHABKWYcjs.a.call(void 0, {providedId:w,prefix:"radio"}),{hasGroupHelperText:T,"aria-describedby":E}=_chunkWSD52THLcjs.c.call(void 0, ),l=!T&&t!==void 0,F=!!i;return _jsxruntime.jsxs.call(void 0, "div",{className:_chunkONNSZMWFcjs.a.call(void 0, e,I),"data-testid":e,"data-disabled":a?!0:void 0,children:[_jsxruntime.jsx.call(void 0, "div",{className:`${e}Container`,children:_jsxruntime.jsx.call(void 0, _radixui.RadioGroup.Item,{ref:C,...P,disabled:a,id:s,"aria-describedby":_chunkHIF6HKZ3cjs.a.call(void 0, G,l?n:E),"aria-labelledby":d||(i?m:void 0),className:`${e}Item`,children:_jsxruntime.jsx.call(void 0, _radixui.RadioGroup.Indicator,{className:`${e}Indicator`})})}),F?_jsxruntime.jsxs.call(void 0, _chunkQKGE3FJXcjs.a,{direction:"column",gap:"50",children:[_jsxruntime.jsxs.call(void 0, _chunkMZMYW4KCcjs.a,{id:m,htmlFor:s,disableUserSelect:!0,fontWeight:N,children:[x,i]}),l?_jsxruntime.jsx.call(void 0, _chunkRAIRXO6Fcjs.a,{id:n,disableUserSelect:!0,children:t}):null]}):null]})});B.displayName=v;exports.a = B;
|
|
4
|
+
//# sourceMappingURL=chunk-SSI6IYHS.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-SSI6IYHS.cjs","../src/components/Radio/Radio.tsx"],"names":["COMPONENT_NAME","componentClassName","withGlobalPrefix","Radio","forwardRef","providedId","label","helperText","image","className","labelFontWeight","disabled","ariaLabelledby","consumerAriaDescribedby","props","ref","id","labelId","helperTextId","useIds","hasGroupHelperText","ariaDescribedby","useFormGroupBase","showHelperText","showLabel","jsxs","cn","jsx"],"mappings":"AAAA,qFAAY;AACZ;AACA,wDAAwC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,8BCA5S,mCAIuB,+CAmEtC,IA1DNA,CAAAA,CAAiB,OAAA,CACjBC,CAAAA,CAAqBC,iCAAAA,CAA+B,CAAA,CAY7CC,CAAAA,aAAQC,+BAAAA,CAEjB,CACE,EAAA,CAAIC,CAAAA,CACJ,KAAA,CAAAC,CAAAA,CACA,UAAA,CAAAC,CAAAA,CACA,KAAA,CAAAC,CAAAA,CACA,SAAA,CAAAC,CAAAA,CACA,eAAA,CAAAC,CAAAA,CACA,QAAA,CAAAC,CAAAA,CACA,iBAAA,CAAmBC,CAAAA,CACnB,kBAAA,CAAoBC,CAAAA,CACpB,GAAGC,CACL,CAAA,CACAC,CAAAA,CAAAA,EACG,CACH,GAAM,CAAE,EAAA,CAAAC,CAAAA,CAAI,OAAA,CAAAC,CAAAA,CAAS,YAAA,CAAAC,CAAa,CAAA,CAAIC,iCAAAA,CAAS,UAAA,CAAAd,CAAAA,CAAY,MAAA,CAAQ,OAAQ,CAAC,CAAA,CACtE,CAAE,kBAAA,CAAAe,CAAAA,CAAoB,kBAAA,CAAoBC,CAAgB,CAAA,CAAIC,iCAAAA,CAAiB,CAC/EC,CAAAA,CAAyB,CAACH,CAAAA,EAAsBb,CAAAA,GAAe,KAAA,CAAA,CAC/DiB,CAAAA,CAAY,CAAC,CAAClB,CAAAA,CACpB,OACEmB,8BAAAA,KAAC,CAAA,CACC,SAAA,CAAWC,iCAAAA,CAAGzB,CAAoBQ,CAAS,CAAA,CAC3C,aAAA,CAAaR,CAAAA,CACb,eAAA,CAAeU,CAAAA,CAAW,CAAA,CAAA,CAAO,KAAA,CAAA,CAEjC,QAAA,CAAA,CAAAgB,6BAAAA,KAAC,CAAA,CAAI,SAAA,CAAW,CAAA,EAAA","file":"/home/runner/work/hearth/hearth/packages/react/dist/chunk-SSI6IYHS.cjs","sourcesContent":[null,"'use client';\n\nimport { forwardRef } from 'react';\nimport type { ComponentRef } from 'react';\nimport { cn } from '../../helpers/cn';\nimport type { RadioProps } from './Radio.props';\nimport { RadioGroup as RadioGroupPrimitive } from 'radix-ui';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport { Flex } from '../Flex/Flex';\nimport { Label } from '../Label/Label';\nimport { useIds } from '../../hooks/use-ids';\nimport { mergeIds } from '../../helpers/merge-ids';\nimport { HelperText } from '../HelperText/HelperText';\nimport { useFormGroupBase } from '../FormGroupBase/FormGroupBase.context';\n\nconst COMPONENT_NAME = 'Radio';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\ntype RadioElement = ComponentRef<'button'>;\n\n/**\n * Use Radio to let a user select a single option from a set of mutually\n * exclusive choices, always as a child of RadioGroup. RadioTile is preferred\n * for most cases as it offers a larger, more prominent target — reach for\n * Radio only when a compact, plain radio button is needed.\n *\n * @summary A single radio button for selecting one option from a set, used within RadioGroup.\n */\nexport const Radio = forwardRef<RadioElement, RadioProps>(\n (\n {\n id: providedId,\n label,\n helperText,\n image,\n className,\n labelFontWeight,\n disabled,\n 'aria-labelledby': ariaLabelledby,\n 'aria-describedby': consumerAriaDescribedby,\n ...props\n },\n ref\n ) => {\n const { id, labelId, helperTextId } = useIds({ providedId, prefix: 'radio' });\n const { hasGroupHelperText, 'aria-describedby': ariaDescribedby } = useFormGroupBase();\n const showHelperText = Boolean(!hasGroupHelperText && helperText !== undefined);\n const showLabel = !!label;\n return (\n <div\n className={cn(componentClassName, className)}\n data-testid={componentClassName}\n data-disabled={disabled ? true : undefined}\n >\n <div className={`${componentClassName}Container`}>\n <RadioGroupPrimitive.Item\n ref={ref}\n {...props}\n // We're not following the same pattern as Button here, where we\n // use `aria-disabled` instead, as focusing the radio item\n // selects it. Screen readers users can still navigate to the\n // radio item using the virtual keyboard. At the same time\n // keyboard users will not need to tab through disabled radio\n // items, which is the expected behavior for radio groups.\n disabled={disabled}\n id={id}\n aria-describedby={mergeIds(\n consumerAriaDescribedby,\n showHelperText ? helperTextId : ariaDescribedby\n )}\n aria-labelledby={ariaLabelledby ? ariaLabelledby : label ? labelId : undefined}\n className={`${componentClassName}Item`}\n >\n <RadioGroupPrimitive.Indicator className={`${componentClassName}Indicator`} />\n </RadioGroupPrimitive.Item>\n </div>\n {showLabel ? (\n <Flex direction=\"column\" gap=\"50\">\n <Label id={labelId} htmlFor={id} disableUserSelect fontWeight={labelFontWeight}>\n {image}\n {label}\n </Label>\n {showHelperText ? (\n <HelperText id={helperTextId} disableUserSelect>\n {helperText}\n </HelperText>\n ) : null}\n </Flex>\n ) : null}\n </div>\n );\n }\n);\n\nRadio.displayName = COMPONENT_NAME;\n"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import{a as o}from"./chunk-J3AJBV4B.js";import{b as r}from"./chunk-PDEVCIQ3.js";import{Toast as i}from"radix-ui";import{jsx as l,jsxs as v}from"react/jsx-runtime";var m="ToastProvider",T=({children:t,duration:e=5e3,label:s,viewportLabel:a,viewportHotkey:p,className:P,...d})=>v(i.Provider,{label:s,duration:e,swipeDirection:"down",swipeThreshold:50,children:[t,l(i.Viewport,{...d,className:o(r("ToastViewport"),P),label:a,hotkey:p})]});T.displayName=m;export{T as a};
|
|
4
|
+
//# sourceMappingURL=chunk-TEIATTNR.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/Toast/ToastProvider.tsx"],"sourcesContent":["import { Toast as ToastPrimitive } from 'radix-ui';\nimport type { ToastProviderProps } from './ToastProvider.props';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport { cn } from '../../helpers/cn';\n\nconst COMPONENT_NAME = 'ToastProvider';\n\n/**\n * Use ToastProvider to wrap the part of the app where `Toast` components\n * should render, providing the context and viewport they mount into.\n *\n * @summary Provides context and a mount point for Toast components.\n */\nexport const ToastProvider = ({\n children,\n duration = 5000,\n label,\n viewportLabel,\n viewportHotkey,\n className,\n ...viewportProps\n}: ToastProviderProps) => {\n return (\n <ToastPrimitive.Provider\n label={label}\n duration={duration}\n swipeDirection=\"down\"\n swipeThreshold={50}\n >\n {children}\n <ToastPrimitive.Viewport\n {...viewportProps}\n className={cn(withGlobalPrefix('ToastViewport'), className)}\n label={viewportLabel}\n hotkey={viewportHotkey}\n />\n </ToastPrimitive.Provider>\n );\n};\nToastProvider.displayName = COMPONENT_NAME;\n"],"mappings":";;gFAAA,OAAS,SAASA,MAAsB,WAuBpC,OAOE,OAAAC,EAPF,QAAAC,MAAA,oBAlBJ,IAAMC,EAAiB,gBAQVC,EAAgB,CAAC,CAC5B,SAAAC,EACA,SAAAC,EAAW,IACX,MAAAC,EACA,cAAAC,EACA,eAAAC,EACA,UAAAC,EACA,GAAGC,CACL,IAEIT,EAACU,EAAe,SAAf,CACC,MAAOL,EACP,SAAUD,EACV,eAAe,OACf,eAAgB,GAEf,UAAAD,EACDJ,EAACW,EAAe,SAAf,CACE,GAAGD,EACJ,UAAWE,EAAGC,EAAiB,eAAe,EAAGJ,CAAS,EAC1D,MAAOF,EACP,OAAQC,EACV,GACF,EAGJL,EAAc,YAAcD","names":["ToastPrimitive","jsx","jsxs","COMPONENT_NAME","ToastProvider","children","duration","label","viewportLabel","viewportHotkey","className","viewportProps","ToastPrimitive","cn","withGlobalPrefix"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
|
|
2
|
+
|
|
3
|
+
var _chunkGS47QEXRcjs = require('./chunk-GS47QEXR.cjs');var _chunkOB7O3UFLcjs = require('./chunk-OB7O3UFL.cjs');var _chunkZPJNQBTNcjs = require('./chunk-ZPJNQBTN.cjs');var _chunkONNSZMWFcjs = require('./chunk-ONNSZMWF.cjs');var _chunk4Q432K4Wcjs = require('./chunk-4Q432K4W.cjs');var _react = require('react');var _jsxruntime = require('react/jsx-runtime');var N="Table",e=_chunk4Q432K4Wcjs.b.call(void 0, N),P= exports.a =_react.forwardRef.call(void 0, (T,a)=>{let{className:r,style:o,children:l,variant:n,pagination:m,...p}=_chunkZPJNQBTNcjs.a.call(void 0, T,_chunkOB7O3UFLcjs.a);return n===void 0?_jsxruntime.jsxs.call(void 0, "div",{className:_chunkONNSZMWFcjs.a.call(void 0, e,r),"data-testid":e,style:o,children:[_jsxruntime.jsx.call(void 0, "table",{ref:a,...p,children:l}),m]}):_jsxruntime.jsxs.call(void 0, _chunkGS47QEXRcjs.a,{className:_chunkONNSZMWFcjs.a.call(void 0, e,r),"data-table-container":"card","data-testid":e,style:o,variant:n,colorScheme:"neutralStrong",paddingNone:!0,children:[_jsxruntime.jsx.call(void 0, "table",{ref:a,...p,children:l}),m]})});P.displayName=N;exports.a = P;
|
|
4
|
+
//# sourceMappingURL=chunk-U7CFC6Z2.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-U7CFC6Z2.cjs","../src/components/Table/Table.tsx"],"names":["COMPONENT_NAME","componentClassName","withGlobalPrefix","Table","forwardRef","props","ref","className","style","children","variant","pagination","tableProps","extractProps","marginPropDefs","jsxs","cn","jsx","Card"],"mappings":"AAAA,qFAAY;AACZ;AACA,wDAAwC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,8BCKjL,+CAyBrB,IAtBAA,CAAAA,CAAiB,OAAA,CACjBC,CAAAA,CAAqBC,iCAAAA,CAA+B,CAAA,CAa7CC,CAAAA,aAAQC,+BAAAA,CAAsCC,CAAAA,CAAOC,CAAAA,CAAAA,EAAQ,CACxE,GAAM,CAAE,SAAA,CAAAC,CAAAA,CAAW,KAAA,CAAAC,CAAAA,CAAO,QAAA,CAAAC,CAAAA,CAAU,OAAA,CAAAC,CAAAA,CAAS,UAAA,CAAAC,CAAAA,CAAY,GAAGC,CAAW,CAAA,CAAIC,iCAAAA,CACzER,CACAS,mBACF,CAAA,CAEA,OAAIJ,CAAAA,GAAY,KAAA,CAAA,CAEZK,8BAAAA,KAAC,CAAA,CACC,SAAA,CAAWC,iCAAAA,CAAGf,CAAoBM,CAAS,CAAA,CAC3C,aAAA,CAAaN,CAAAA,CACb,KAAA,CAAOO,CAAAA,CAEP,QAAA,CAAA,CAAAS,6BAAAA,OAAC,CAAA,CAAM,GAAA,CAAKX,CAAAA,CAAM,GAAGM,CAAAA,CAClB,QAAA,CAAAH,CAAAA,CACH,CAAA,CACCE,CAAAA,CAAAA,CACH,CAAA,CAKFI,8BAAAA,mBAACG,CAAA,CACC,SAAA,CAAWF,iCAAAA,CAAGf,CAAoBM,CAAS,CAAA,CAC3C,sBAAA,CAAqB,MAAA,CACrB,aAAA,CAAaN,CAAAA,CACb,KAAA,CAAOO,CAAAA,CACP,OAAA,CAASE,CAAAA,CACT,WAAA,CAAY,eAAA,CACZ,WAAA,CAAW,CAAA,CAAA,CAEX,QAAA,CAAA,CAAAO,6BAAAA,OAAC,CAAA,CAAM,GAAA,CAAKX,CAAAA,CAAM,GAAGM,CAAAA,CAClB,QAAA,CAAAH,CAAAA,CACH,CAAA,CACCE,CAAAA,CAAAA,CACH,CAEJ,CAAC,CAAA,CAEDR,CAAAA,CAAM,WAAA,CAAcH,CAAAA,CAAAA,cAAAA","file":"/home/runner/work/hearth/hearth/packages/react/dist/chunk-U7CFC6Z2.cjs","sourcesContent":[null,"import { cn } from '../../helpers/cn';\n\nimport type { TableProps } from './Table.props';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport { extractProps } from '../../helpers/extract-props';\nimport { marginPropDefs } from '../../props/margin.props';\nimport { Card } from '../Card/Card';\nimport { forwardRef } from 'react';\nimport type { ComponentRef } from 'react';\n\nconst COMPONENT_NAME = 'Table';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\ntype TableElement = ComponentRef<'table'>;\n\n/**\n * Use Table to arrange data in rows and columns, to communicate relationships\n * between content and to display references, comparisons, and choices. Compose\n * it with TableHeader, TableBody, TableRow, TableHeaderCell, and TableCell.\n * Pass `variant` to wrap the table in a Card container; omit it for a minimal,\n * unwrapped table.\n *\n * @summary A component for arranging data in rows and columns.\n */\nexport const Table = forwardRef<TableElement, TableProps>((props, ref) => {\n const { className, style, children, variant, pagination, ...tableProps } = extractProps(\n props,\n marginPropDefs\n );\n\n if (variant === undefined) {\n return (\n <div\n className={cn(componentClassName, className)}\n data-testid={componentClassName}\n style={style}\n >\n <table ref={ref} {...tableProps}>\n {children}\n </table>\n {pagination}\n </div>\n );\n }\n\n return (\n <Card\n className={cn(componentClassName, className)}\n data-table-container=\"card\"\n data-testid={componentClassName}\n style={style}\n variant={variant}\n colorScheme=\"neutralStrong\"\n paddingNone\n >\n <table ref={ref} {...tableProps}>\n {children}\n </table>\n {pagination}\n </Card>\n );\n});\n\nTable.displayName = COMPONENT_NAME;\n"]}
|