@techzyapp/ui-library 1.0.27 → 1.0.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AdminRoot-BTvmassR.js +55 -0
- package/dist/AdminRoot-BTvmassR.js.map +1 -0
- package/dist/AdminRoot-DM-cZCpN.cjs +2 -0
- package/dist/AdminRoot-DM-cZCpN.cjs.map +1 -0
- package/dist/{Alert-DeGgilkH.cjs → Alert-CFm6MU0u.cjs} +2 -2
- package/dist/{Alert-DeGgilkH.cjs.map → Alert-CFm6MU0u.cjs.map} +1 -1
- package/dist/{Alert-rNjfqj2Z.js → Alert-v-lelDih.js} +3 -3
- package/dist/{Alert-rNjfqj2Z.js.map → Alert-v-lelDih.js.map} +1 -1
- package/dist/{AuthLayout-zAS3jlYc.js → AuthLayout-DOFYw_z5.js} +3 -3
- package/dist/{AuthLayout-zAS3jlYc.js.map → AuthLayout-DOFYw_z5.js.map} +1 -1
- package/dist/{AuthLayout-ChILVWZ-.cjs → AuthLayout-QAtW2GAT.cjs} +2 -2
- package/dist/{AuthLayout-ChILVWZ-.cjs.map → AuthLayout-QAtW2GAT.cjs.map} +1 -1
- package/dist/Avatar-DXNPg23a.js +90 -0
- package/dist/Avatar-DXNPg23a.js.map +1 -0
- package/dist/Avatar-DrV_F7Ex.cjs +2 -0
- package/dist/Avatar-DrV_F7Ex.cjs.map +1 -0
- package/dist/{AvatarGroup-Bnf_RSc9.cjs → AvatarGroup-CHesdo-M.cjs} +2 -2
- package/dist/{AvatarGroup-Bnf_RSc9.cjs.map → AvatarGroup-CHesdo-M.cjs.map} +1 -1
- package/dist/{AvatarGroup-Difz4lLR.js → AvatarGroup-CwlYqDCI.js} +2 -2
- package/dist/{AvatarGroup-Difz4lLR.js.map → AvatarGroup-CwlYqDCI.js.map} +1 -1
- package/dist/{Breadcrumbs-CGcpMlxm.cjs → Breadcrumbs-3wHPNa0P.cjs} +2 -2
- package/dist/{Breadcrumbs-CGcpMlxm.cjs.map → Breadcrumbs-3wHPNa0P.cjs.map} +1 -1
- package/dist/{Breadcrumbs-BJHKk0Sn.js → Breadcrumbs-Cgd-u3aK.js} +3 -3
- package/dist/{Breadcrumbs-BJHKk0Sn.js.map → Breadcrumbs-Cgd-u3aK.js.map} +1 -1
- package/dist/{Button-obe6rono.js → Button-BLW9yV8W.js} +2 -2
- package/dist/{Button-obe6rono.js.map → Button-BLW9yV8W.js.map} +1 -1
- package/dist/{Button-BZ_o-akc.cjs → Button-KRGjJdMV.cjs} +2 -2
- package/dist/{Button-BZ_o-akc.cjs.map → Button-KRGjJdMV.cjs.map} +1 -1
- package/dist/{Calendar-lfpNwivC.cjs → Calendar-CoTCOOUu.cjs} +2 -2
- package/dist/{Calendar-lfpNwivC.cjs.map → Calendar-CoTCOOUu.cjs.map} +1 -1
- package/dist/{Calendar-SCih0NtS.js → Calendar-sLA-xa0B.js} +3 -3
- package/dist/{Calendar-SCih0NtS.js.map → Calendar-sLA-xa0B.js.map} +1 -1
- package/dist/Card-6fiSEC0z.js +121 -0
- package/dist/Card-6fiSEC0z.js.map +1 -0
- package/dist/Card-zTkvreQu.cjs +2 -0
- package/dist/Card-zTkvreQu.cjs.map +1 -0
- package/dist/Checkbox-CTp1xFW7.cjs +2 -0
- package/dist/{Checkbox-fzJCwe0j.cjs.map → Checkbox-CTp1xFW7.cjs.map} +1 -1
- package/dist/Checkbox-DyKBIgVT.js +98 -0
- package/dist/{Checkbox-ZYOSBYRt.js.map → Checkbox-DyKBIgVT.js.map} +1 -1
- package/dist/{Chip-CQ4cYVl_.js → Chip-C-5Z5wsC.js} +2 -2
- package/dist/{Chip-CQ4cYVl_.js.map → Chip-C-5Z5wsC.js.map} +1 -1
- package/dist/{Chip-CYz4vxHm.cjs → Chip-CqOqfafx.cjs} +2 -2
- package/dist/{Chip-CYz4vxHm.cjs.map → Chip-CqOqfafx.cjs.map} +1 -1
- package/dist/{ChoiceCardGroup-pIOKIUI0.cjs → ChoiceCardGroup-BSagRbPI.cjs} +2 -2
- package/dist/{ChoiceCardGroup-pIOKIUI0.cjs.map → ChoiceCardGroup-BSagRbPI.cjs.map} +1 -1
- package/dist/{ChoiceCardGroup-D3HL7dHj.js → ChoiceCardGroup-CEniY_HJ.js} +2 -2
- package/dist/{ChoiceCardGroup-D3HL7dHj.js.map → ChoiceCardGroup-CEniY_HJ.js.map} +1 -1
- package/dist/{CodeBlock-H75dbOvg.cjs → CodeBlock-DFiHDZXh.cjs} +2 -2
- package/dist/{CodeBlock-H75dbOvg.cjs.map → CodeBlock-DFiHDZXh.cjs.map} +1 -1
- package/dist/{CodeBlock-DddGTLu1.js → CodeBlock-rPaqO7yD.js} +3 -3
- package/dist/{CodeBlock-DddGTLu1.js.map → CodeBlock-rPaqO7yD.js.map} +1 -1
- package/dist/{ColorPicker-CKc8k-Dp.cjs → ColorPicker-Bqypsy5E.cjs} +2 -2
- package/dist/{ColorPicker-CKc8k-Dp.cjs.map → ColorPicker-Bqypsy5E.cjs.map} +1 -1
- package/dist/{ColorPicker-Cw-2X6u9.js → ColorPicker-DXDAXvlA.js} +5 -5
- package/dist/{ColorPicker-Cw-2X6u9.js.map → ColorPicker-DXDAXvlA.js.map} +1 -1
- package/dist/{ColorPickerPanel-PYaF5wPL.js → ColorPickerPanel-6lQC1URc.js} +2 -2
- package/dist/{ColorPickerPanel-PYaF5wPL.js.map → ColorPickerPanel-6lQC1URc.js.map} +1 -1
- package/dist/{ColorPickerPanel-DQ4CFnGa.cjs → ColorPickerPanel-C9ARc_uD.cjs} +2 -2
- package/dist/{ColorPickerPanel-DQ4CFnGa.cjs.map → ColorPickerPanel-C9ARc_uD.cjs.map} +1 -1
- package/dist/{ColorRamp-AkY9gq6Y.cjs → ColorRamp-B9OWxCOK.cjs} +2 -2
- package/dist/{ColorRamp-AkY9gq6Y.cjs.map → ColorRamp-B9OWxCOK.cjs.map} +1 -1
- package/dist/{ColorRamp-DnlJNKfy.js → ColorRamp-DQ8wkgvF.js} +3 -3
- package/dist/{ColorRamp-DnlJNKfy.js.map → ColorRamp-DQ8wkgvF.js.map} +1 -1
- package/dist/{ConfigProvider-BicoaBLj.cjs → ConfigProvider-BElY0HuV.cjs} +2 -2
- package/dist/{ConfigProvider-BicoaBLj.cjs.map → ConfigProvider-BElY0HuV.cjs.map} +1 -1
- package/dist/{ConfigProvider-DL9fylMo.js → ConfigProvider-B_RSn9bb.js} +2 -2
- package/dist/{ConfigProvider-DL9fylMo.js.map → ConfigProvider-B_RSn9bb.js.map} +1 -1
- package/dist/{CopyButton-BqFGC-Ca.cjs → CopyButton-B5aicGl3.cjs} +2 -2
- package/dist/{CopyButton-BqFGC-Ca.cjs.map → CopyButton-B5aicGl3.cjs.map} +1 -1
- package/dist/{CopyButton-D6-kcVCA.js → CopyButton-BplPYm8i.js} +3 -3
- package/dist/{CopyButton-D6-kcVCA.js.map → CopyButton-BplPYm8i.js.map} +1 -1
- package/dist/{DatePicker-BvGFP2AL.cjs → DatePicker-Cdl2JYBd.cjs} +2 -2
- package/dist/{DatePicker-BvGFP2AL.cjs.map → DatePicker-Cdl2JYBd.cjs.map} +1 -1
- package/dist/{DatePicker-DP7yASzq.js → DatePicker-U5TJ9FYM.js} +6 -6
- package/dist/{DatePicker-DP7yASzq.js.map → DatePicker-U5TJ9FYM.js.map} +1 -1
- package/dist/{DateTimePicker-DOzft9kg.cjs → DateTimePicker-DUFtddxJ.cjs} +2 -2
- package/dist/{DateTimePicker-DOzft9kg.cjs.map → DateTimePicker-DUFtddxJ.cjs.map} +1 -1
- package/dist/{DateTimePicker-CzRduOFz.js → DateTimePicker-laJsZYJX.js} +9 -9
- package/dist/{DateTimePicker-CzRduOFz.js.map → DateTimePicker-laJsZYJX.js.map} +1 -1
- package/dist/DescriptionList-BCvOX8fg.cjs +2 -0
- package/dist/DescriptionList-BCvOX8fg.cjs.map +1 -0
- package/dist/DescriptionList-Y9jF_4L0.js +176 -0
- package/dist/DescriptionList-Y9jF_4L0.js.map +1 -0
- package/dist/{Dropdown-FfkmluRu.js → Dropdown--1mNTVZJ.js} +2 -2
- package/dist/{Dropdown-FfkmluRu.js.map → Dropdown--1mNTVZJ.js.map} +1 -1
- package/dist/{Dropdown-Ui7h2TGd.cjs → Dropdown-DNZ9S_zQ.cjs} +2 -2
- package/dist/{Dropdown-Ui7h2TGd.cjs.map → Dropdown-DNZ9S_zQ.cjs.map} +1 -1
- package/dist/EmptyState-BtwuzX9Z.js +58 -0
- package/dist/EmptyState-BtwuzX9Z.js.map +1 -0
- package/dist/EmptyState-CO_NRZ6w.cjs +2 -0
- package/dist/EmptyState-CO_NRZ6w.cjs.map +1 -0
- package/dist/ErrorBoundary-DJ6R1M9k.js +126 -0
- package/dist/ErrorBoundary-DJ6R1M9k.js.map +1 -0
- package/dist/ErrorBoundary-unvC1vZQ.cjs +2 -0
- package/dist/ErrorBoundary-unvC1vZQ.cjs.map +1 -0
- package/dist/FileCard-C3a2yDhK.js +149 -0
- package/dist/FileCard-C3a2yDhK.js.map +1 -0
- package/dist/FileCard-DKjDQRzZ.cjs +2 -0
- package/dist/FileCard-DKjDQRzZ.cjs.map +1 -0
- package/dist/FileUploader-CuOHWkiG.js +707 -0
- package/dist/FileUploader-CuOHWkiG.js.map +1 -0
- package/dist/FileUploader-VIOg03pl.cjs +2 -0
- package/dist/FileUploader-VIOg03pl.cjs.map +1 -0
- package/dist/{Flag-BM_2VJ1v.cjs → Flag-aOQncoEZ.cjs} +2 -2
- package/dist/{Flag-BM_2VJ1v.cjs.map → Flag-aOQncoEZ.cjs.map} +1 -1
- package/dist/{Flag-CzCEpB8E.js → Flag-kpUfmrwC.js} +2 -2
- package/dist/{Flag-CzCEpB8E.js.map → Flag-kpUfmrwC.js.map} +1 -1
- package/dist/FloatingPanel-BIC4WrFa.cjs +2 -0
- package/dist/FloatingPanel-BIC4WrFa.cjs.map +1 -0
- package/dist/FloatingPanel-CeSOtE_D.js +135 -0
- package/dist/FloatingPanel-CeSOtE_D.js.map +1 -0
- package/dist/{FullscreenToggle-BL0nBrsL.cjs → FullscreenToggle-BSwxQEaG.cjs} +2 -2
- package/dist/{FullscreenToggle-BL0nBrsL.cjs.map → FullscreenToggle-BSwxQEaG.cjs.map} +1 -1
- package/dist/{FullscreenToggle-HZQOIa21.js → FullscreenToggle-CMifmPD3.js} +3 -3
- package/dist/{FullscreenToggle-HZQOIa21.js.map → FullscreenToggle-CMifmPD3.js.map} +1 -1
- package/dist/{IconButton-B87ipBK3.cjs → IconButton-A2B0bqC-.cjs} +2 -2
- package/dist/{IconButton-B87ipBK3.cjs.map → IconButton-A2B0bqC-.cjs.map} +1 -1
- package/dist/{IconButton-CBp8QuTO.js → IconButton-Dq17Fekm.js} +2 -2
- package/dist/{IconButton-CBp8QuTO.js.map → IconButton-Dq17Fekm.js.map} +1 -1
- package/dist/List-9lUjapQ5.cjs +2 -0
- package/dist/List-9lUjapQ5.cjs.map +1 -0
- package/dist/List-CZwNGxuP.js +107 -0
- package/dist/List-CZwNGxuP.js.map +1 -0
- package/dist/{Loader-fffFnQqS.js → Loader-CwyoKoWY.js} +2 -2
- package/dist/{Loader-fffFnQqS.js.map → Loader-CwyoKoWY.js.map} +1 -1
- package/dist/{Loader-0Imnbael.cjs → Loader-D9nteBXt.cjs} +2 -2
- package/dist/{Loader-0Imnbael.cjs.map → Loader-D9nteBXt.cjs.map} +1 -1
- package/dist/Modal-CQDcYS-Y.cjs +2 -0
- package/dist/Modal-CQDcYS-Y.cjs.map +1 -0
- package/dist/Modal-cz6JIsZn.js +196 -0
- package/dist/Modal-cz6JIsZn.js.map +1 -0
- package/dist/MultiSelect-BIwE6wb7.cjs +2 -0
- package/dist/MultiSelect-BIwE6wb7.cjs.map +1 -0
- package/dist/MultiSelect-C6l0LpIs.js +219 -0
- package/dist/MultiSelect-C6l0LpIs.js.map +1 -0
- package/dist/{MultilineTextField-Dz6Fg8RJ.cjs → MultilineTextField-B6EYAdik.cjs} +2 -2
- package/dist/{MultilineTextField-Dz6Fg8RJ.cjs.map → MultilineTextField-B6EYAdik.cjs.map} +1 -1
- package/dist/{MultilineTextField-CwNCJ9lZ.js → MultilineTextField-BgfBFeeF.js} +2 -2
- package/dist/{MultilineTextField-CwNCJ9lZ.js.map → MultilineTextField-BgfBFeeF.js.map} +1 -1
- package/dist/{NumberField-DYGVQdL5.js → NumberField-BpUTV_Qn.js} +4 -4
- package/dist/{NumberField-DYGVQdL5.js.map → NumberField-BpUTV_Qn.js.map} +1 -1
- package/dist/{NumberField-C_HZXBuw.cjs → NumberField-IyhO4OpJ.cjs} +2 -2
- package/dist/{NumberField-C_HZXBuw.cjs.map → NumberField-IyhO4OpJ.cjs.map} +1 -1
- package/dist/{OtpField-CpQr_ZqL.js → OtpField-BoLxbGtY.js} +3 -3
- package/dist/{OtpField-CpQr_ZqL.js.map → OtpField-BoLxbGtY.js.map} +1 -1
- package/dist/{OtpField-DKbUP0F6.cjs → OtpField-HMrxkdiy.cjs} +2 -2
- package/dist/{OtpField-DKbUP0F6.cjs.map → OtpField-HMrxkdiy.cjs.map} +1 -1
- package/dist/{PageLayout-CuWXukUv.cjs → PageLayout-DtWG-6dn.cjs} +2 -2
- package/dist/{PageLayout-CuWXukUv.cjs.map → PageLayout-DtWG-6dn.cjs.map} +1 -1
- package/dist/{PageLayout-CCcPCfJF.js → PageLayout-G8F1WgC-.js} +2 -2
- package/dist/{PageLayout-CCcPCfJF.js.map → PageLayout-G8F1WgC-.js.map} +1 -1
- package/dist/{PageNotFound-LWH2tU5E.js → PageNotFound-CeKIMZ55.js} +5 -5
- package/dist/PageNotFound-CeKIMZ55.js.map +1 -0
- package/dist/{PageNotFound-JKOnpyHD.cjs → PageNotFound-DG8xXPL3.cjs} +2 -2
- package/dist/PageNotFound-DG8xXPL3.cjs.map +1 -0
- package/dist/{Pagination-M7njqOUt.cjs → Pagination-Br8P3KwE.cjs} +2 -2
- package/dist/{Pagination-M7njqOUt.cjs.map → Pagination-Br8P3KwE.cjs.map} +1 -1
- package/dist/{Pagination-BwtbmITJ.js → Pagination-CE1uKrR4.js} +2 -2
- package/dist/{Pagination-BwtbmITJ.js.map → Pagination-CE1uKrR4.js.map} +1 -1
- package/dist/{PaletteField-CUyzLrny.js → PaletteField-BBPbkDcp.js} +3 -3
- package/dist/{PaletteField-CUyzLrny.js.map → PaletteField-BBPbkDcp.js.map} +1 -1
- package/dist/{PaletteField-iBIvOvNi.cjs → PaletteField-DwvSn6V6.cjs} +2 -2
- package/dist/{PaletteField-iBIvOvNi.cjs.map → PaletteField-DwvSn6V6.cjs.map} +1 -1
- package/dist/PhoneField-B-L0xAtD.js +372 -0
- package/dist/PhoneField-B-L0xAtD.js.map +1 -0
- package/dist/PhoneField-BclMbl7L.cjs +2 -0
- package/dist/PhoneField-BclMbl7L.cjs.map +1 -0
- package/dist/Popconfirm-BgpvCBy1.js +113 -0
- package/dist/Popconfirm-BgpvCBy1.js.map +1 -0
- package/dist/Popconfirm-DD8F8SXn.cjs +2 -0
- package/dist/Popconfirm-DD8F8SXn.cjs.map +1 -0
- package/dist/{Popover-CgIU4Rhg.js → Popover-B82Id9Ut.js} +2 -2
- package/dist/{Popover-CgIU4Rhg.js.map → Popover-B82Id9Ut.js.map} +1 -1
- package/dist/{Popover-CBI1icIM.cjs → Popover-DAT6DcM9.cjs} +2 -2
- package/dist/{Popover-CBI1icIM.cjs.map → Popover-DAT6DcM9.cjs.map} +1 -1
- package/dist/Progress-L5koRRJp.js +119 -0
- package/dist/Progress-L5koRRJp.js.map +1 -0
- package/dist/Progress-_aZ8XOJr.cjs +2 -0
- package/dist/Progress-_aZ8XOJr.cjs.map +1 -0
- package/dist/QrCode-BQ1eUiAJ.cjs +2 -0
- package/dist/QrCode-BQ1eUiAJ.cjs.map +1 -0
- package/dist/QrCode-osD23Vkt.js +80 -0
- package/dist/QrCode-osD23Vkt.js.map +1 -0
- package/dist/QueryError-BMH8X69O.cjs +2 -0
- package/dist/QueryError-BMH8X69O.cjs.map +1 -0
- package/dist/QueryError-tBuIQRgv.js +19 -0
- package/dist/QueryError-tBuIQRgv.js.map +1 -0
- package/dist/RadioGroup-BcFBdFhh.cjs +2 -0
- package/dist/{RadioGroup-Byy-eSY3.cjs.map → RadioGroup-BcFBdFhh.cjs.map} +1 -1
- package/dist/RadioGroup-dVx_hMCY.js +141 -0
- package/dist/{RadioGroup-D_1_Heta.js.map → RadioGroup-dVx_hMCY.js.map} +1 -1
- package/dist/RemoveDialog-C9_UzFBf.js +109 -0
- package/dist/RemoveDialog-C9_UzFBf.js.map +1 -0
- package/dist/RemoveDialog-DBKYnTYU.cjs +2 -0
- package/dist/RemoveDialog-DBKYnTYU.cjs.map +1 -0
- package/dist/RichTextEditor-DTz7Qcn_.cjs +2 -0
- package/dist/{RichTextEditor-mpMCG8jX.cjs.map → RichTextEditor-DTz7Qcn_.cjs.map} +1 -1
- package/dist/{RichTextEditor-CG6LoNiw.js → RichTextEditor-fXcbUjTl.js} +11 -11
- package/dist/{RichTextEditor-CG6LoNiw.js.map → RichTextEditor-fXcbUjTl.js.map} +1 -1
- package/dist/RootLayout-DG2dXhXn.cjs +2 -0
- package/dist/{RootLayout-CPxDqfGb.cjs.map → RootLayout-DG2dXhXn.cjs.map} +1 -1
- package/dist/{RootLayout-D3K-pAMO.js → RootLayout-p8ArA6wA.js} +19 -19
- package/dist/{RootLayout-D3K-pAMO.js.map → RootLayout-p8ArA6wA.js.map} +1 -1
- package/dist/Select-BAR_aVSz.js +199 -0
- package/dist/Select-BAR_aVSz.js.map +1 -0
- package/dist/Select-BuVfUiw-.cjs +2 -0
- package/dist/Select-BuVfUiw-.cjs.map +1 -0
- package/dist/{Sidebar-CsPnv4mu.js → Sidebar-CsWcjSTx.js} +173 -163
- package/dist/Sidebar-CsWcjSTx.js.map +1 -0
- package/dist/Sidebar-NI5HGGYF.cjs +2 -0
- package/dist/Sidebar-NI5HGGYF.cjs.map +1 -0
- package/dist/Skeleton-DK0lAjS9.cjs +2 -0
- package/dist/Skeleton-DK0lAjS9.cjs.map +1 -0
- package/dist/Skeleton-_-uGax2j.js +56 -0
- package/dist/Skeleton-_-uGax2j.js.map +1 -0
- package/dist/{Slider-D3dbEOQY.cjs → Slider-Cu1FhxR2.cjs} +2 -2
- package/dist/{Slider-D3dbEOQY.cjs.map → Slider-Cu1FhxR2.cjs.map} +1 -1
- package/dist/{Slider-D7SvowmM.js → Slider-DoQJWgGU.js} +2 -2
- package/dist/{Slider-D7SvowmM.js.map → Slider-DoQJWgGU.js.map} +1 -1
- package/dist/{SpeedDial-CZ22T8GL.cjs → SpeedDial-C_rZkHmF.cjs} +2 -2
- package/dist/{SpeedDial-CZ22T8GL.cjs.map → SpeedDial-C_rZkHmF.cjs.map} +1 -1
- package/dist/{SpeedDial-B8XMUATN.js → SpeedDial-DF-ILheU.js} +2 -2
- package/dist/{SpeedDial-B8XMUATN.js.map → SpeedDial-DF-ILheU.js.map} +1 -1
- package/dist/{Stepper-B_e_PGZE.js → Stepper-B39Ax_w6.js} +2 -2
- package/dist/{Stepper-B_e_PGZE.js.map → Stepper-B39Ax_w6.js.map} +1 -1
- package/dist/{Stepper-BjkkWawQ.cjs → Stepper-CT7n113R.cjs} +2 -2
- package/dist/{Stepper-BjkkWawQ.cjs.map → Stepper-CT7n113R.cjs.map} +1 -1
- package/dist/{SwatchPicker-C8amdDnA.cjs → SwatchPicker-BWXqgsEy.cjs} +2 -2
- package/dist/{SwatchPicker-C8amdDnA.cjs.map → SwatchPicker-BWXqgsEy.cjs.map} +1 -1
- package/dist/{SwatchPicker-DXEE9xqY.js → SwatchPicker-Bpxk0IOe.js} +2 -2
- package/dist/{SwatchPicker-DXEE9xqY.js.map → SwatchPicker-Bpxk0IOe.js.map} +1 -1
- package/dist/Switch-DSs2Y0IR.cjs +2 -0
- package/dist/{Switch-CodRZD3y.cjs.map → Switch-DSs2Y0IR.cjs.map} +1 -1
- package/dist/Switch-Jh2Ch8GO.js +85 -0
- package/dist/{Switch-ESrhkpJC.js.map → Switch-Jh2Ch8GO.js.map} +1 -1
- package/dist/Table-CH_oiEP3.js +1170 -0
- package/dist/Table-CH_oiEP3.js.map +1 -0
- package/dist/Table-DD_uysnY.cjs +2 -0
- package/dist/Table-DD_uysnY.cjs.map +1 -0
- package/dist/{Tabs-v1GEGUDQ.js → Tabs-By86Cmpw.js} +2 -2
- package/dist/{Tabs-v1GEGUDQ.js.map → Tabs-By86Cmpw.js.map} +1 -1
- package/dist/{Tabs-CZDX7BN-.cjs → Tabs-C1N9FgAq.cjs} +2 -2
- package/dist/{Tabs-CZDX7BN-.cjs.map → Tabs-C1N9FgAq.cjs.map} +1 -1
- package/dist/{TagsField-B389eDp4.js → TagsField-BiOyAadf.js} +5 -5
- package/dist/{TagsField-B389eDp4.js.map → TagsField-BiOyAadf.js.map} +1 -1
- package/dist/{TagsField-OfrpyHZO.cjs → TagsField-RX-x45-j.cjs} +2 -2
- package/dist/{TagsField-OfrpyHZO.cjs.map → TagsField-RX-x45-j.cjs.map} +1 -1
- package/dist/{TextField-B785pRgK.cjs → TextField-CdbanZuk.cjs} +2 -2
- package/dist/{TextField-B785pRgK.cjs.map → TextField-CdbanZuk.cjs.map} +1 -1
- package/dist/{TextField-7MobCad5.js → TextField-CkronCRC.js} +4 -4
- package/dist/{TextField-7MobCad5.js.map → TextField-CkronCRC.js.map} +1 -1
- package/dist/{ThemeToggle-BGdvqXad.js → ThemeToggle-BYUEH6be.js} +3 -3
- package/dist/{ThemeToggle-BGdvqXad.js.map → ThemeToggle-BYUEH6be.js.map} +1 -1
- package/dist/{ThemeToggle-BkmZ7s_u.cjs → ThemeToggle-C4QhDd76.cjs} +2 -2
- package/dist/{ThemeToggle-BkmZ7s_u.cjs.map → ThemeToggle-C4QhDd76.cjs.map} +1 -1
- package/dist/{TimeColumns-B-xm1DGM.cjs → TimeColumns-Cl0_IRf0.cjs} +2 -2
- package/dist/{TimeColumns-B-xm1DGM.cjs.map → TimeColumns-Cl0_IRf0.cjs.map} +1 -1
- package/dist/{TimeColumns-BRlDKx_i.js → TimeColumns-yzjScNU8.js} +2 -2
- package/dist/{TimeColumns-BRlDKx_i.js.map → TimeColumns-yzjScNU8.js.map} +1 -1
- package/dist/{TimePicker-DvEIdE4v.cjs → TimePicker-CJGVGETl.cjs} +2 -2
- package/dist/{TimePicker-DvEIdE4v.cjs.map → TimePicker-CJGVGETl.cjs.map} +1 -1
- package/dist/{TimePicker-B_3Ubip0.js → TimePicker-CoIdMv1S.js} +7 -7
- package/dist/{TimePicker-B_3Ubip0.js.map → TimePicker-CoIdMv1S.js.map} +1 -1
- package/dist/{Toaster-DuzcRbio.js → Toaster-Dhz2mYq_.js} +2 -2
- package/dist/{Toaster-DuzcRbio.js.map → Toaster-Dhz2mYq_.js.map} +1 -1
- package/dist/{Toaster-BIFRuqbC.cjs → Toaster-lv5cJhib.cjs} +2 -2
- package/dist/{Toaster-BIFRuqbC.cjs.map → Toaster-lv5cJhib.cjs.map} +1 -1
- package/dist/{TranslatedFields-D_a0NVKI.cjs → TranslatedFields-BCJ86Tqp.cjs} +2 -2
- package/dist/{TranslatedFields-D_a0NVKI.cjs.map → TranslatedFields-BCJ86Tqp.cjs.map} +1 -1
- package/dist/{TranslatedFields-HmP0Mg5t.js → TranslatedFields-BtNUAyrY.js} +5 -5
- package/dist/{TranslatedFields-HmP0Mg5t.js.map → TranslatedFields-BtNUAyrY.js.map} +1 -1
- package/dist/Typography-B6ASPrzT.cjs +2 -0
- package/dist/Typography-B6ASPrzT.cjs.map +1 -0
- package/dist/Typography-CJv5AnRP.js +70 -0
- package/dist/Typography-CJv5AnRP.js.map +1 -0
- package/dist/UserCard-B-eNyZuT.js +78 -0
- package/dist/UserCard-B-eNyZuT.js.map +1 -0
- package/dist/UserCard-CiQUrZjb.cjs +2 -0
- package/dist/UserCard-CiQUrZjb.cjs.map +1 -0
- package/dist/app/AdminRoot.d.cts +10 -3
- package/dist/app/AdminRoot.d.ts +10 -3
- package/dist/components/Alert/index.cjs +1 -1
- package/dist/components/Alert/index.js +1 -1
- package/dist/components/AuthLayout/index.cjs +1 -1
- package/dist/components/AuthLayout/index.js +1 -1
- package/dist/components/Avatar/Avatar.d.cts +7 -1
- package/dist/components/Avatar/Avatar.d.ts +7 -1
- package/dist/components/Avatar/index.cjs +1 -1
- package/dist/components/Avatar/index.js +2 -2
- package/dist/components/Breadcrumbs/index.cjs +1 -1
- package/dist/components/Breadcrumbs/index.js +1 -1
- package/dist/components/Button/index.cjs +1 -1
- package/dist/components/Button/index.js +1 -1
- package/dist/components/Card/Card.d.cts +2 -0
- package/dist/components/Card/Card.d.ts +2 -0
- package/dist/components/Card/index.cjs +1 -1
- package/dist/components/Card/index.js +1 -1
- package/dist/components/Checkbox/index.cjs +1 -1
- package/dist/components/Checkbox/index.js +1 -1
- package/dist/components/Chip/index.cjs +1 -1
- package/dist/components/Chip/index.js +1 -1
- package/dist/components/ChoiceCard/index.cjs +1 -1
- package/dist/components/ChoiceCard/index.js +1 -1
- package/dist/components/CodeBlock/index.cjs +1 -1
- package/dist/components/CodeBlock/index.js +1 -1
- package/dist/components/ColorPicker/index.cjs +1 -1
- package/dist/components/ColorPicker/index.js +1 -1
- package/dist/components/ColorRamp/index.cjs +1 -1
- package/dist/components/ColorRamp/index.js +1 -1
- package/dist/components/CopyButton/index.cjs +1 -1
- package/dist/components/CopyButton/index.js +1 -1
- package/dist/components/DatePicker/index.cjs +1 -1
- package/dist/components/DatePicker/index.js +1 -1
- package/dist/components/DateTimePicker/index.cjs +1 -1
- package/dist/components/DateTimePicker/index.js +1 -1
- package/dist/components/DescriptionList/DescriptionList.d.cts +76 -0
- package/dist/components/DescriptionList/DescriptionList.d.ts +76 -0
- package/dist/components/DescriptionList/index.cjs +2 -0
- package/dist/components/DescriptionList/index.cjs.map +1 -0
- package/dist/components/DescriptionList/index.d.cts +2 -0
- package/dist/components/DescriptionList/index.d.ts +2 -0
- package/dist/components/DescriptionList/index.js +6 -0
- package/dist/components/DescriptionList/index.js.map +1 -0
- package/dist/components/Dropdown/index.cjs +1 -1
- package/dist/components/Dropdown/index.js +1 -1
- package/dist/components/EmptyState/EmptyState.d.cts +4 -1
- package/dist/components/EmptyState/EmptyState.d.ts +4 -1
- package/dist/components/EmptyState/index.cjs +1 -1
- package/dist/components/EmptyState/index.js +1 -1
- package/dist/components/ErrorState/ErrorBoundary.d.cts +35 -0
- package/dist/components/ErrorState/ErrorBoundary.d.ts +35 -0
- package/dist/components/ErrorState/ErrorState.d.cts +36 -0
- package/dist/components/ErrorState/ErrorState.d.ts +36 -0
- package/dist/components/ErrorState/QueryError.d.cts +18 -0
- package/dist/components/ErrorState/QueryError.d.ts +18 -0
- package/dist/components/ErrorState/errorMessage.d.cts +14 -0
- package/dist/components/ErrorState/errorMessage.d.ts +14 -0
- package/dist/components/ErrorState/index.cjs +2 -0
- package/dist/components/ErrorState/index.cjs.map +1 -0
- package/dist/components/ErrorState/index.d.cts +7 -0
- package/dist/components/ErrorState/index.d.ts +7 -0
- package/dist/components/ErrorState/index.js +11 -0
- package/dist/components/ErrorState/index.js.map +1 -0
- package/dist/components/FileCard/index.cjs +1 -1
- package/dist/components/FileCard/index.js +1 -1
- package/dist/components/FileUploader/index.cjs +1 -1
- package/dist/components/FileUploader/index.js +1 -1
- package/dist/components/Flag/index.cjs +1 -1
- package/dist/components/Flag/index.js +1 -1
- package/dist/components/FloatingPanel/FloatingPanel.d.cts +4 -0
- package/dist/components/FloatingPanel/FloatingPanel.d.ts +4 -0
- package/dist/components/FullscreenToggle/index.cjs +1 -1
- package/dist/components/FullscreenToggle/index.js +1 -1
- package/dist/components/IconButton/index.cjs +1 -1
- package/dist/components/IconButton/index.js +1 -1
- package/dist/components/List/List.d.cts +13 -3
- package/dist/components/List/List.d.ts +13 -3
- package/dist/components/List/ListItem.d.cts +5 -0
- package/dist/components/List/ListItem.d.ts +5 -0
- package/dist/components/List/index.cjs +1 -1
- package/dist/components/List/index.js +4 -5
- package/dist/components/List/index.js.map +1 -1
- package/dist/components/List/listContext.d.cts +9 -3
- package/dist/components/List/listContext.d.ts +9 -3
- package/dist/components/Loader/index.cjs +1 -1
- package/dist/components/Loader/index.js +1 -1
- package/dist/components/Modal/Modal.d.cts +2 -0
- package/dist/components/Modal/Modal.d.ts +2 -0
- package/dist/components/Modal/index.cjs +1 -1
- package/dist/components/Modal/index.js +1 -1
- package/dist/components/MultiSelect/index.cjs +1 -1
- package/dist/components/MultiSelect/index.js +1 -1
- package/dist/components/MultilineTextField/index.cjs +1 -1
- package/dist/components/MultilineTextField/index.js +1 -1
- package/dist/components/NumberField/index.cjs +1 -1
- package/dist/components/NumberField/index.js +1 -1
- package/dist/components/OptionMenu/OptionMenu.d.cts +40 -0
- package/dist/components/OptionMenu/OptionMenu.d.ts +40 -0
- package/dist/components/OptionMenu/useOptionMenu.d.cts +81 -0
- package/dist/components/OptionMenu/useOptionMenu.d.ts +81 -0
- package/dist/components/OtpField/index.cjs +1 -1
- package/dist/components/OtpField/index.js +1 -1
- package/dist/components/PageLayout/index.cjs +1 -1
- package/dist/components/PageLayout/index.js +1 -1
- package/dist/components/PageNotFound/PageNotFound.d.cts +1 -1
- package/dist/components/PageNotFound/PageNotFound.d.ts +1 -1
- package/dist/components/PageNotFound/index.cjs +1 -1
- package/dist/components/PageNotFound/index.js +1 -1
- package/dist/components/Pagination/index.cjs +1 -1
- package/dist/components/Pagination/index.js +1 -1
- package/dist/components/PaletteField/index.cjs +1 -1
- package/dist/components/PaletteField/index.js +1 -1
- package/dist/components/PhoneField/PhoneField.d.cts +54 -0
- package/dist/components/PhoneField/PhoneField.d.ts +54 -0
- package/dist/components/PhoneField/index.cjs +2 -0
- package/dist/components/PhoneField/index.cjs.map +1 -0
- package/dist/components/PhoneField/index.d.cts +4 -0
- package/dist/components/PhoneField/index.d.ts +4 -0
- package/dist/components/PhoneField/index.js +7 -0
- package/dist/components/PhoneField/index.js.map +1 -0
- package/dist/components/PhoneField/phone.d.cts +50 -0
- package/dist/components/PhoneField/phone.d.ts +50 -0
- package/dist/components/Popconfirm/Popconfirm.d.cts +53 -0
- package/dist/components/Popconfirm/Popconfirm.d.ts +53 -0
- package/dist/components/Popconfirm/index.cjs +2 -0
- package/dist/components/Popconfirm/index.cjs.map +1 -0
- package/dist/components/Popconfirm/index.d.cts +2 -0
- package/dist/components/Popconfirm/index.d.ts +2 -0
- package/dist/components/Popconfirm/index.js +6 -0
- package/dist/components/Popconfirm/index.js.map +1 -0
- package/dist/components/Popover/index.cjs +1 -1
- package/dist/components/Popover/index.js +1 -1
- package/dist/components/Progress/Progress.d.cts +50 -0
- package/dist/components/Progress/Progress.d.ts +50 -0
- package/dist/components/Progress/index.cjs +2 -0
- package/dist/components/Progress/index.cjs.map +1 -0
- package/dist/components/Progress/index.d.cts +2 -0
- package/dist/components/Progress/index.d.ts +2 -0
- package/dist/components/Progress/index.js +6 -0
- package/dist/components/Progress/index.js.map +1 -0
- package/dist/components/QrCode/QrCode.d.cts +3 -0
- package/dist/components/QrCode/QrCode.d.ts +3 -0
- package/dist/components/QrCode/index.cjs +1 -1
- package/dist/components/QrCode/index.js +1 -1
- package/dist/components/Radio/index.cjs +1 -1
- package/dist/components/Radio/index.js +1 -1
- package/dist/components/RemoveDialog/RemoveDialog.d.cts +8 -1
- package/dist/components/RemoveDialog/RemoveDialog.d.ts +8 -1
- package/dist/components/RemoveDialog/index.cjs +1 -1
- package/dist/components/RemoveDialog/index.js +1 -1
- package/dist/components/RichTextEditor/index.cjs +1 -1
- package/dist/components/RichTextEditor/index.js +1 -1
- package/dist/components/RootLayout/index.cjs +1 -1
- package/dist/components/RootLayout/index.js +1 -1
- package/dist/components/Select/Select.d.cts +2 -12
- package/dist/components/Select/Select.d.ts +2 -12
- package/dist/components/Select/index.cjs +1 -1
- package/dist/components/Select/index.js +1 -1
- package/dist/components/Sidebar/index.cjs +1 -1
- package/dist/components/Sidebar/index.js +1 -1
- package/dist/components/Skeleton/Skeleton.d.cts +31 -0
- package/dist/components/Skeleton/Skeleton.d.ts +31 -0
- package/dist/components/Skeleton/index.cjs +2 -0
- package/dist/components/Skeleton/index.cjs.map +1 -0
- package/dist/components/Skeleton/index.d.cts +2 -0
- package/dist/components/Skeleton/index.d.ts +2 -0
- package/dist/components/Skeleton/index.js +6 -0
- package/dist/components/Skeleton/index.js.map +1 -0
- package/dist/components/Slider/index.cjs +1 -1
- package/dist/components/Slider/index.js +1 -1
- package/dist/components/SpeedDial/index.cjs +1 -1
- package/dist/components/SpeedDial/index.js +1 -1
- package/dist/components/Stepper/index.cjs +1 -1
- package/dist/components/Stepper/index.js +1 -1
- package/dist/components/SwatchPicker/index.cjs +1 -1
- package/dist/components/SwatchPicker/index.js +1 -1
- package/dist/components/Switch/index.cjs +1 -1
- package/dist/components/Switch/index.js +1 -1
- package/dist/components/Table/Table.d.cts +7 -1
- package/dist/components/Table/Table.d.ts +7 -1
- package/dist/components/Table/index.cjs +1 -1
- package/dist/components/Table/index.js +1 -1
- package/dist/components/Tabs/index.cjs +1 -1
- package/dist/components/Tabs/index.js +1 -1
- package/dist/components/TagsField/index.cjs +1 -1
- package/dist/components/TagsField/index.js +1 -1
- package/dist/components/TextField/index.cjs +1 -1
- package/dist/components/TextField/index.js +1 -1
- package/dist/components/ThemeToggle/index.cjs +1 -1
- package/dist/components/ThemeToggle/index.js +1 -1
- package/dist/components/TimePicker/index.cjs +1 -1
- package/dist/components/TimePicker/index.js +1 -1
- package/dist/components/Toast/index.cjs +1 -1
- package/dist/components/Toast/index.js +1 -1
- package/dist/components/TranslatedFields/index.cjs +1 -1
- package/dist/components/TranslatedFields/index.js +1 -1
- package/dist/components/Typography/Typography.d.cts +10 -3
- package/dist/components/Typography/Typography.d.ts +10 -3
- package/dist/components/Typography/index.cjs +1 -1
- package/dist/components/Typography/index.js +1 -1
- package/dist/components/UserCard/UserCard.d.cts +3 -1
- package/dist/components/UserCard/UserCard.d.ts +3 -1
- package/dist/components/UserCard/index.cjs +1 -1
- package/dist/components/UserCard/index.js +1 -1
- package/dist/components/index.d.cts +6 -0
- package/dist/components/index.d.ts +6 -0
- package/dist/entries/app.cjs +1 -1
- package/dist/entries/app.js +1 -1
- package/dist/entries/components.cjs +1 -1
- package/dist/entries/components.js +169 -152
- package/dist/entries/components.js.map +1 -1
- package/dist/entries/i18n.cjs +1 -1
- package/dist/entries/i18n.js +2 -2
- package/dist/entries/theme.cjs +1 -1
- package/dist/entries/theme.js +1 -1
- package/dist/hooks/useOptionalPeer.d.cts +21 -0
- package/dist/hooks/useOptionalPeer.d.ts +21 -0
- package/dist/i18n/messages.d.cts +13 -0
- package/dist/i18n/messages.d.ts +13 -0
- package/dist/index.cjs +1 -1
- package/dist/index.css +1 -1
- package/dist/index.js +183 -166
- package/dist/index.js.map +1 -1
- package/dist/{messages-B06Kl5rI.js → messages-BF2ft7yD.js} +120 -29
- package/dist/messages-BF2ft7yD.js.map +1 -0
- package/dist/messages-ihnE1jVG.cjs +36 -0
- package/dist/messages-ihnE1jVG.cjs.map +1 -0
- package/dist/useOptionMenu-C0xSaZ4t.cjs +2 -0
- package/dist/useOptionMenu-C0xSaZ4t.cjs.map +1 -0
- package/dist/useOptionMenu-Cq_eHdab.js +286 -0
- package/dist/useOptionMenu-Cq_eHdab.js.map +1 -0
- package/dist/useOptionalPeer-49f3XcO5.js +28 -0
- package/dist/useOptionalPeer-49f3XcO5.js.map +1 -0
- package/dist/useOptionalPeer-9Fkx5Leb.cjs +2 -0
- package/dist/useOptionalPeer-9Fkx5Leb.cjs.map +1 -0
- package/package.json +6 -1
- package/dist/AdminRoot-C4OyuOIr.js +0 -50
- package/dist/AdminRoot-C4OyuOIr.js.map +0 -1
- package/dist/AdminRoot-bHywlbML.cjs +0 -2
- package/dist/AdminRoot-bHywlbML.cjs.map +0 -1
- package/dist/Avatar-BGPGxry2.js +0 -60
- package/dist/Avatar-BGPGxry2.js.map +0 -1
- package/dist/Avatar-D_YivyqV.cjs +0 -2
- package/dist/Avatar-D_YivyqV.cjs.map +0 -1
- package/dist/Card-BRJV2JZE.js +0 -118
- package/dist/Card-BRJV2JZE.js.map +0 -1
- package/dist/Card-KvvNlchc.cjs +0 -2
- package/dist/Card-KvvNlchc.cjs.map +0 -1
- package/dist/Checkbox-ZYOSBYRt.js +0 -98
- package/dist/Checkbox-fzJCwe0j.cjs +0 -2
- package/dist/EmptyState-A5nPGnHA.js +0 -38
- package/dist/EmptyState-A5nPGnHA.js.map +0 -1
- package/dist/EmptyState-CTTOy9aY.cjs +0 -2
- package/dist/EmptyState-CTTOy9aY.cjs.map +0 -1
- package/dist/FileCard-BmPEEcue.js +0 -148
- package/dist/FileCard-BmPEEcue.js.map +0 -1
- package/dist/FileCard-C4BkGMtK.cjs +0 -2
- package/dist/FileCard-C4BkGMtK.cjs.map +0 -1
- package/dist/FileUploader-D_F64mob.cjs +0 -2
- package/dist/FileUploader-D_F64mob.cjs.map +0 -1
- package/dist/FileUploader-Dv_3bjZA.js +0 -684
- package/dist/FileUploader-Dv_3bjZA.js.map +0 -1
- package/dist/FloatingPanel-BG9Uag__.js +0 -131
- package/dist/FloatingPanel-BG9Uag__.js.map +0 -1
- package/dist/FloatingPanel-U6sGYiSK.cjs +0 -2
- package/dist/FloatingPanel-U6sGYiSK.cjs.map +0 -1
- package/dist/List-ChXO0Hz-.cjs +0 -2
- package/dist/List-ChXO0Hz-.cjs.map +0 -1
- package/dist/List-LqbfF6gU.js +0 -26
- package/dist/List-LqbfF6gU.js.map +0 -1
- package/dist/ListItem-Cn15lJBr.js +0 -74
- package/dist/ListItem-Cn15lJBr.js.map +0 -1
- package/dist/ListItem-yXXjtepZ.cjs +0 -2
- package/dist/ListItem-yXXjtepZ.cjs.map +0 -1
- package/dist/Modal--e2qGisF.cjs +0 -2
- package/dist/Modal--e2qGisF.cjs.map +0 -1
- package/dist/Modal-DJljaPqV.js +0 -195
- package/dist/Modal-DJljaPqV.js.map +0 -1
- package/dist/MultiSelect-CvecZeMU.cjs +0 -2
- package/dist/MultiSelect-CvecZeMU.cjs.map +0 -1
- package/dist/MultiSelect-DLoS04lZ.js +0 -350
- package/dist/MultiSelect-DLoS04lZ.js.map +0 -1
- package/dist/PageNotFound-JKOnpyHD.cjs.map +0 -1
- package/dist/PageNotFound-LWH2tU5E.js.map +0 -1
- package/dist/QrCode-Bcj9_Emc.js +0 -70
- package/dist/QrCode-Bcj9_Emc.js.map +0 -1
- package/dist/QrCode-DfDfGhG-.cjs +0 -2
- package/dist/QrCode-DfDfGhG-.cjs.map +0 -1
- package/dist/RadioGroup-Byy-eSY3.cjs +0 -2
- package/dist/RadioGroup-D_1_Heta.js +0 -141
- package/dist/RemoveDialog-DUrD2Em8.js +0 -47
- package/dist/RemoveDialog-DUrD2Em8.js.map +0 -1
- package/dist/RemoveDialog-FZWYAxRy.cjs +0 -2
- package/dist/RemoveDialog-FZWYAxRy.cjs.map +0 -1
- package/dist/RichTextEditor-mpMCG8jX.cjs +0 -2
- package/dist/RootLayout-CPxDqfGb.cjs +0 -2
- package/dist/Select-BB9oOoWZ.js +0 -338
- package/dist/Select-BB9oOoWZ.js.map +0 -1
- package/dist/Select-iP2p5jad.cjs +0 -2
- package/dist/Select-iP2p5jad.cjs.map +0 -1
- package/dist/Sidebar-Boi7UgHV.cjs +0 -2
- package/dist/Sidebar-Boi7UgHV.cjs.map +0 -1
- package/dist/Sidebar-CsPnv4mu.js.map +0 -1
- package/dist/Switch-CodRZD3y.cjs +0 -2
- package/dist/Switch-ESrhkpJC.js +0 -85
- package/dist/Table-Cr1zUtNQ.cjs +0 -2
- package/dist/Table-Cr1zUtNQ.cjs.map +0 -1
- package/dist/Table-DdoUcZoN.js +0 -1099
- package/dist/Table-DdoUcZoN.js.map +0 -1
- package/dist/Typography-BFatE1_A.cjs +0 -2
- package/dist/Typography-BFatE1_A.cjs.map +0 -1
- package/dist/Typography-Cta6Rg4L.js +0 -51
- package/dist/Typography-Cta6Rg4L.js.map +0 -1
- package/dist/UserCard-B1phOVKj.js +0 -74
- package/dist/UserCard-B1phOVKj.js.map +0 -1
- package/dist/UserCard-BvOcDm5W.cjs +0 -2
- package/dist/UserCard-BvOcDm5W.cjs.map +0 -1
- package/dist/messages-B06Kl5rI.js.map +0 -1
- package/dist/messages-CJqxqL3t.cjs +0 -36
- package/dist/messages-CJqxqL3t.cjs.map +0 -1
|
@@ -1,350 +0,0 @@
|
|
|
1
|
-
import { jsxs as y, jsx as a } from "react/jsx-runtime";
|
|
2
|
-
import { forwardRef as Me, useId as Ce, useState as R, useRef as D, useCallback as G, useMemo as Ee, useEffect as q } from "react";
|
|
3
|
-
import { clsx as K } from "clsx";
|
|
4
|
-
import { u as Be } from "./formContext-B7ln1Miy.js";
|
|
5
|
-
import { F as Re } from "./FloatingPanel-BG9Uag__.js";
|
|
6
|
-
import { C as qe } from "./Chip-CQ4cYVl_.js";
|
|
7
|
-
import { I as V } from "./Icon-DaTvzLBu.js";
|
|
8
|
-
import { L as Ke } from "./List-LqbfF6gU.js";
|
|
9
|
-
import { L as Ve } from "./ListItem-Cn15lJBr.js";
|
|
10
|
-
import { L as We } from "./Loader-fffFnQqS.js";
|
|
11
|
-
import { T as W } from "./Typography-Cta6Rg4L.js";
|
|
12
|
-
import { a as $e } from "./ConfigProvider-DL9fylMo.js";
|
|
13
|
-
const Ae = "_field_16ykc_1", Fe = "_fullWidth_16ykc_7", Oe = "_label_16ykc_12", Pe = "_required_16ykc_21", Se = "_control_16ykc_27", He = "_filled_16ykc_47", je = "_open_16ykc_51", Qe = "_error_16ykc_56", Ue = "_disabled_16ykc_64", ze = "_chips_16ykc_31", Ge = "_value_16ykc_84", Je = "_valueLabel_16ykc_91", Xe = "_placeholder_16ykc_96", Ye = "_clear_16ykc_100", Ze = "_chevron_16ykc_117", er = "_sm_16ykc_127", rr = "_md_16ykc_131", lr = "_lg_16ykc_135", tr = "_helper_16ykc_140", or = "_popover_16ykc_145", ar = "_search_16ykc_152", cr = "_searchIcon_16ykc_161", sr = "_searchInput_16ykc_165", nr = "_listbox_16ykc_180", ir = "_active_16ykc_188", dr = "_noOptions_16ykc_192", ur = "_loading_16ykc_198", l = {
|
|
14
|
-
field: Ae,
|
|
15
|
-
fullWidth: Fe,
|
|
16
|
-
label: Oe,
|
|
17
|
-
required: Pe,
|
|
18
|
-
control: Se,
|
|
19
|
-
filled: He,
|
|
20
|
-
open: je,
|
|
21
|
-
error: Qe,
|
|
22
|
-
disabled: Ue,
|
|
23
|
-
chips: ze,
|
|
24
|
-
value: Ge,
|
|
25
|
-
valueLabel: Je,
|
|
26
|
-
placeholder: Xe,
|
|
27
|
-
clear: Ye,
|
|
28
|
-
chevron: Ze,
|
|
29
|
-
sm: er,
|
|
30
|
-
md: rr,
|
|
31
|
-
lg: lr,
|
|
32
|
-
helper: tr,
|
|
33
|
-
popover: or,
|
|
34
|
-
search: ar,
|
|
35
|
-
searchIcon: cr,
|
|
36
|
-
searchInput: sr,
|
|
37
|
-
listbox: nr,
|
|
38
|
-
active: ir,
|
|
39
|
-
noOptions: dr,
|
|
40
|
-
loading: ur
|
|
41
|
-
}, Dr = Me(function({
|
|
42
|
-
label: N,
|
|
43
|
-
options: L,
|
|
44
|
-
size: b = "md",
|
|
45
|
-
error: ie,
|
|
46
|
-
helperText: de,
|
|
47
|
-
required: J = !1,
|
|
48
|
-
fullWidth: ue = !0,
|
|
49
|
-
disabled: f = !1,
|
|
50
|
-
value: $,
|
|
51
|
-
defaultValue: fe,
|
|
52
|
-
onChange: A,
|
|
53
|
-
placeholder: me,
|
|
54
|
-
color: pe = "primary",
|
|
55
|
-
clearable: _e = !0,
|
|
56
|
-
searchable: d = !1,
|
|
57
|
-
searchPlaceholder: he,
|
|
58
|
-
onSearchChange: k,
|
|
59
|
-
loading: ve = !1,
|
|
60
|
-
loadingText: ye,
|
|
61
|
-
noOptionsText: T,
|
|
62
|
-
name: _,
|
|
63
|
-
id: be,
|
|
64
|
-
className: ke,
|
|
65
|
-
style: ge
|
|
66
|
-
}, g) {
|
|
67
|
-
const Ie = Ce(), I = be ?? Ie, F = `${I}-label`, O = `${I}-listbox`, X = `${I}-helper`, P = (e) => `${I}-opt-${e}`, w = $e(), Y = he ?? w("common.search"), M = Be(), C = !!(M && _), s = C ? M.field(_) : void 0, we = $ !== void 0 ? $ : C ? M.values[_] ?? [] : void 0, Z = $ !== void 0 || C, [xe, De] = R(fe ?? []), n = Z ? we : xe, S = ie ?? (s == null ? void 0 : s.error) ?? !1, H = de ?? (s == null ? void 0 : s.helperText), j = (e) => {
|
|
68
|
-
Z || De(e), C && M.setValue(_, e), A == null || A(e);
|
|
69
|
-
}, h = D(null), ee = D(null), Q = D({ buffer: "", timer: 0 }), E = D(void 0);
|
|
70
|
-
E.current = s ? () => s.onBlur({}) : void 0;
|
|
71
|
-
const [t, re] = R(!1), [p, le] = R(""), [m, u] = R(-1), Ne = G(
|
|
72
|
-
(e) => {
|
|
73
|
-
h.current = e, typeof g == "function" ? g(e) : g && (g.current = e);
|
|
74
|
-
},
|
|
75
|
-
[g]
|
|
76
|
-
), c = Ee(() => {
|
|
77
|
-
if (!d || k || !p.trim()) return L;
|
|
78
|
-
const e = p.trim().toLowerCase();
|
|
79
|
-
return L.filter((r) => r.label.toLowerCase().includes(e));
|
|
80
|
-
}, [d, k, p, L]), v = G(
|
|
81
|
-
(e, r) => {
|
|
82
|
-
let o = e;
|
|
83
|
-
for (; o >= 0 && o < c.length; ) {
|
|
84
|
-
if (!c[o].disabled) return o;
|
|
85
|
-
o += r;
|
|
86
|
-
}
|
|
87
|
-
return -1;
|
|
88
|
-
},
|
|
89
|
-
[c]
|
|
90
|
-
), te = D(null), B = G((e) => {
|
|
91
|
-
var r, o;
|
|
92
|
-
re(!1), le(""), window.clearTimeout(Q.current.timer), Q.current.buffer = "", (r = E.current) == null || r.call(E), e && ((o = h.current) == null || o.focus());
|
|
93
|
-
}, []);
|
|
94
|
-
q(() => {
|
|
95
|
-
t && (u(v(0, 1)), d && requestAnimationFrame(() => {
|
|
96
|
-
var e;
|
|
97
|
-
return (e = ee.current) == null ? void 0 : e.focus();
|
|
98
|
-
}));
|
|
99
|
-
}, [t]), q(() => {
|
|
100
|
-
var e, r;
|
|
101
|
-
!t || m < 0 || (r = (e = document.getElementById(P(m))) == null ? void 0 : e.scrollIntoView) == null || r.call(e, { block: "nearest" });
|
|
102
|
-
}, [t, m]), q(() => {
|
|
103
|
-
t && d && u(v(0, 1));
|
|
104
|
-
}, [p]), q(() => {
|
|
105
|
-
t && u((e) => e < c.length ? e : v(0, 1));
|
|
106
|
-
}, [c.length]);
|
|
107
|
-
const x = () => {
|
|
108
|
-
f || re(!0);
|
|
109
|
-
}, U = (e) => {
|
|
110
|
-
!e || e.disabled || j(
|
|
111
|
-
n.includes(e.value) ? n.filter((r) => r !== e.value) : [...n, e.value]
|
|
112
|
-
);
|
|
113
|
-
}, oe = (e) => j(n.filter((r) => r !== e)), ae = (e) => {
|
|
114
|
-
u((r) => {
|
|
115
|
-
const o = r < 0 ? e > 0 ? 0 : c.length - 1 : r + e, i = v(o, e);
|
|
116
|
-
return i === -1 ? r : i;
|
|
117
|
-
});
|
|
118
|
-
}, Le = (e) => {
|
|
119
|
-
const r = Q.current;
|
|
120
|
-
window.clearTimeout(r.timer), r.buffer += e.toLowerCase(), r.timer = window.setTimeout(() => r.buffer = "", 500);
|
|
121
|
-
const o = c.findIndex(
|
|
122
|
-
(i) => !i.disabled && i.label.toLowerCase().startsWith(r.buffer)
|
|
123
|
-
);
|
|
124
|
-
o >= 0 && u(o);
|
|
125
|
-
}, ce = (e) => {
|
|
126
|
-
if (!f)
|
|
127
|
-
switch (e.key) {
|
|
128
|
-
case "ArrowDown":
|
|
129
|
-
e.preventDefault(), t ? ae(1) : x();
|
|
130
|
-
break;
|
|
131
|
-
case "ArrowUp":
|
|
132
|
-
e.preventDefault(), t ? ae(-1) : x();
|
|
133
|
-
break;
|
|
134
|
-
case "Enter":
|
|
135
|
-
e.preventDefault(), t ? U(c[m]) : x();
|
|
136
|
-
break;
|
|
137
|
-
case " ":
|
|
138
|
-
t ? d || (e.preventDefault(), U(c[m])) : (e.preventDefault(), x());
|
|
139
|
-
break;
|
|
140
|
-
case "Escape":
|
|
141
|
-
t && (e.preventDefault(), e.stopPropagation(), B(!0));
|
|
142
|
-
break;
|
|
143
|
-
case "Tab":
|
|
144
|
-
t && B(!0);
|
|
145
|
-
break;
|
|
146
|
-
case "Backspace":
|
|
147
|
-
t && (!d || p === "") && n.length > 0 && (e.preventDefault(), oe(n[n.length - 1]));
|
|
148
|
-
break;
|
|
149
|
-
case "Home":
|
|
150
|
-
t && (e.preventDefault(), u(v(0, 1)));
|
|
151
|
-
break;
|
|
152
|
-
case "End":
|
|
153
|
-
t && (e.preventDefault(), u(v(c.length - 1, -1)));
|
|
154
|
-
break;
|
|
155
|
-
default:
|
|
156
|
-
!d && t && e.key.length === 1 && !e.metaKey && !e.ctrlKey && !e.altKey && Le(e.key);
|
|
157
|
-
}
|
|
158
|
-
}, Te = (e) => {
|
|
159
|
-
var o, i;
|
|
160
|
-
const r = e.relatedTarget;
|
|
161
|
-
r && ((o = te.current) != null && o.contains(r) || (i = h.current) != null && i.contains(r)) || s == null || s.onBlur(e);
|
|
162
|
-
}, se = t && m >= 0 ? P(m) : void 0, ne = b === "sm" ? 16 : b === "md" ? 14 : 12, z = n.length > 0;
|
|
163
|
-
return /* @__PURE__ */ y(
|
|
164
|
-
"div",
|
|
165
|
-
{
|
|
166
|
-
className: K(
|
|
167
|
-
l.field,
|
|
168
|
-
l[b],
|
|
169
|
-
ue && l.fullWidth,
|
|
170
|
-
S && l.error,
|
|
171
|
-
f && l.disabled,
|
|
172
|
-
ke
|
|
173
|
-
),
|
|
174
|
-
style: ge,
|
|
175
|
-
children: [
|
|
176
|
-
N != null && /* @__PURE__ */ y(
|
|
177
|
-
"span",
|
|
178
|
-
{
|
|
179
|
-
id: F,
|
|
180
|
-
className: l.label,
|
|
181
|
-
onClick: () => {
|
|
182
|
-
var e;
|
|
183
|
-
return !f && ((e = h.current) == null ? void 0 : e.focus());
|
|
184
|
-
},
|
|
185
|
-
children: [
|
|
186
|
-
/* @__PURE__ */ a(W, { as: "span", variant: "bodySmall", color: "muted", children: N }),
|
|
187
|
-
J && /* @__PURE__ */ a("span", { className: l.required, "aria-hidden": "true", children: "*" })
|
|
188
|
-
]
|
|
189
|
-
}
|
|
190
|
-
),
|
|
191
|
-
/* @__PURE__ */ y(
|
|
192
|
-
"div",
|
|
193
|
-
{
|
|
194
|
-
ref: Ne,
|
|
195
|
-
id: I,
|
|
196
|
-
..._ ? { name: _ } : {},
|
|
197
|
-
role: "combobox",
|
|
198
|
-
tabIndex: f ? -1 : 0,
|
|
199
|
-
"aria-haspopup": "listbox",
|
|
200
|
-
"aria-expanded": t,
|
|
201
|
-
"aria-controls": t ? O : void 0,
|
|
202
|
-
"aria-activedescendant": d ? void 0 : se,
|
|
203
|
-
"aria-labelledby": N != null ? F : void 0,
|
|
204
|
-
"aria-disabled": f || void 0,
|
|
205
|
-
"aria-required": J || void 0,
|
|
206
|
-
"aria-invalid": S || void 0,
|
|
207
|
-
"aria-describedby": H != null ? X : void 0,
|
|
208
|
-
className: K(l.control, t && l.open, z && l.filled),
|
|
209
|
-
onClick: () => t ? B(!1) : x(),
|
|
210
|
-
onKeyDown: ce,
|
|
211
|
-
onBlur: Te,
|
|
212
|
-
children: [
|
|
213
|
-
z ? /* @__PURE__ */ a("span", { className: l.chips, children: n.map((e) => {
|
|
214
|
-
const r = L.find((o) => o.value === e);
|
|
215
|
-
return /* @__PURE__ */ a(
|
|
216
|
-
qe,
|
|
217
|
-
{
|
|
218
|
-
size: b,
|
|
219
|
-
color: pe,
|
|
220
|
-
disabled: f,
|
|
221
|
-
onDelete: () => oe(e),
|
|
222
|
-
deleteLabel: `Remove ${(r == null ? void 0 : r.label) ?? e}`,
|
|
223
|
-
deleteTabIndex: -1,
|
|
224
|
-
children: (r == null ? void 0 : r.label) ?? e
|
|
225
|
-
},
|
|
226
|
-
e
|
|
227
|
-
);
|
|
228
|
-
}) }) : /* @__PURE__ */ a("span", { className: K(l.value, l.placeholder), children: /* @__PURE__ */ a("span", { className: l.valueLabel, children: me ?? w("select.placeholder") }) }),
|
|
229
|
-
_e && z && !f && /* @__PURE__ */ a(
|
|
230
|
-
"button",
|
|
231
|
-
{
|
|
232
|
-
type: "button",
|
|
233
|
-
className: l.clear,
|
|
234
|
-
"aria-label": w("multiSelect.clearAll"),
|
|
235
|
-
tabIndex: -1,
|
|
236
|
-
onMouseDown: (e) => e.preventDefault(),
|
|
237
|
-
onClick: (e) => {
|
|
238
|
-
var r;
|
|
239
|
-
e.stopPropagation(), j([]), (r = h.current) == null || r.focus();
|
|
240
|
-
},
|
|
241
|
-
children: /* @__PURE__ */ a(V, { name: "CloseCircle", size: "sm" })
|
|
242
|
-
}
|
|
243
|
-
),
|
|
244
|
-
/* @__PURE__ */ a(
|
|
245
|
-
V,
|
|
246
|
-
{
|
|
247
|
-
name: "ArrowDown4",
|
|
248
|
-
className: l.chevron,
|
|
249
|
-
style: { width: ne, height: ne },
|
|
250
|
-
"aria-hidden": "true"
|
|
251
|
-
}
|
|
252
|
-
)
|
|
253
|
-
]
|
|
254
|
-
}
|
|
255
|
-
),
|
|
256
|
-
/* @__PURE__ */ y(
|
|
257
|
-
Re,
|
|
258
|
-
{
|
|
259
|
-
ref: te,
|
|
260
|
-
open: t,
|
|
261
|
-
triggerRef: h,
|
|
262
|
-
onClose: B,
|
|
263
|
-
matchTriggerWidth: !0,
|
|
264
|
-
className: l.popover,
|
|
265
|
-
children: [
|
|
266
|
-
d && /* @__PURE__ */ y("div", { className: l.search, children: [
|
|
267
|
-
/* @__PURE__ */ a(V, { name: "SearchNormal", size: "sm", className: l.searchIcon, "aria-hidden": "true" }),
|
|
268
|
-
/* @__PURE__ */ a(
|
|
269
|
-
"input",
|
|
270
|
-
{
|
|
271
|
-
ref: ee,
|
|
272
|
-
className: l.searchInput,
|
|
273
|
-
type: "text",
|
|
274
|
-
role: "combobox",
|
|
275
|
-
"aria-expanded": "true",
|
|
276
|
-
"aria-controls": O,
|
|
277
|
-
"aria-activedescendant": se,
|
|
278
|
-
"aria-autocomplete": "list",
|
|
279
|
-
"aria-label": Y,
|
|
280
|
-
placeholder: Y,
|
|
281
|
-
value: p,
|
|
282
|
-
spellCheck: !1,
|
|
283
|
-
onChange: (e) => {
|
|
284
|
-
le(e.target.value), k == null || k(e.target.value);
|
|
285
|
-
},
|
|
286
|
-
onKeyDown: ce
|
|
287
|
-
}
|
|
288
|
-
)
|
|
289
|
-
] }),
|
|
290
|
-
/* @__PURE__ */ a(
|
|
291
|
-
Ke,
|
|
292
|
-
{
|
|
293
|
-
role: "listbox",
|
|
294
|
-
id: O,
|
|
295
|
-
"aria-labelledby": N != null ? F : void 0,
|
|
296
|
-
"aria-multiselectable": "true",
|
|
297
|
-
size: b,
|
|
298
|
-
className: l.listbox,
|
|
299
|
-
onMouseLeave: () => u(-1),
|
|
300
|
-
children: ve ? /* @__PURE__ */ y("div", { className: l.loading, children: [
|
|
301
|
-
/* @__PURE__ */ a(We, { size: "sm" }),
|
|
302
|
-
/* @__PURE__ */ a(W, { as: "span", variant: "bodySmall", color: "muted", children: ye ?? w("common.loading") })
|
|
303
|
-
] }) : c.length === 0 ? /* @__PURE__ */ a("div", { className: l.noOptions, children: /* @__PURE__ */ a(W, { as: "span", variant: "bodySmall", color: "muted", children: T == null ? w("select.noOptions") : typeof T == "function" ? T(p) : T }) }) : c.map((e, r) => {
|
|
304
|
-
const o = n.includes(e.value);
|
|
305
|
-
return /* @__PURE__ */ a(
|
|
306
|
-
Ve,
|
|
307
|
-
{
|
|
308
|
-
id: P(r),
|
|
309
|
-
role: "option",
|
|
310
|
-
tabIndex: -1,
|
|
311
|
-
"aria-selected": o,
|
|
312
|
-
"aria-current": void 0,
|
|
313
|
-
clickable: !0,
|
|
314
|
-
selected: o,
|
|
315
|
-
disabled: e.disabled,
|
|
316
|
-
icon: e.icon,
|
|
317
|
-
className: K(r === m && l.active),
|
|
318
|
-
trailing: o ? /* @__PURE__ */ a(V, { name: "TickCircle", size: "sm" }) : void 0,
|
|
319
|
-
onMouseEnter: () => !e.disabled && u(r),
|
|
320
|
-
onMouseDown: (i) => i.preventDefault(),
|
|
321
|
-
onClick: () => U(e),
|
|
322
|
-
children: e.label
|
|
323
|
-
},
|
|
324
|
-
e.value
|
|
325
|
-
);
|
|
326
|
-
})
|
|
327
|
-
}
|
|
328
|
-
)
|
|
329
|
-
]
|
|
330
|
-
}
|
|
331
|
-
),
|
|
332
|
-
H != null && /* @__PURE__ */ a(
|
|
333
|
-
W,
|
|
334
|
-
{
|
|
335
|
-
as: "span",
|
|
336
|
-
id: X,
|
|
337
|
-
variant: "bodySmall",
|
|
338
|
-
color: S ? "error" : "muted",
|
|
339
|
-
className: l.helper,
|
|
340
|
-
children: H
|
|
341
|
-
}
|
|
342
|
-
)
|
|
343
|
-
]
|
|
344
|
-
}
|
|
345
|
-
);
|
|
346
|
-
});
|
|
347
|
-
export {
|
|
348
|
-
Dr as M
|
|
349
|
-
};
|
|
350
|
-
//# sourceMappingURL=MultiSelect-DLoS04lZ.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MultiSelect-DLoS04lZ.js","sources":["../src/components/MultiSelect/MultiSelect.tsx"],"sourcesContent":["import {\n forwardRef,\n useCallback,\n useEffect,\n useId,\n useMemo,\n useRef,\n useState,\n type CSSProperties,\n type FocusEvent,\n type KeyboardEvent as ReactKeyboardEvent,\n type ReactNode,\n} from 'react'\nimport { clsx } from 'clsx'\nimport { useFormContext } from '../../form/formContext'\nimport { FloatingPanel } from '../FloatingPanel/FloatingPanel'\nimport { useT, type ThemeColor } from '../../theme'\nimport { Chip } from '../Chip'\nimport { Icon } from '../Icon'\nimport { List, ListItem } from '../List'\nimport { Loader } from '../Loader'\nimport { Typography } from '../Typography'\nimport type { SelectOption, SelectSize } from '../Select'\nimport styles from './MultiSelect.module.css'\n\nexport interface MultiSelectProps {\n /** Label rendered above the field. */\n label?: ReactNode\n /** The selectable options. */\n options: SelectOption[]\n /** Preset size — control height, font, chips and option density. */\n size?: SelectSize\n /** Marks the field invalid: red border/ring + the `helperText` in the error color. */\n error?: boolean\n /** Helper / validation text under the field. Adopts the error color while `error`. */\n helperText?: ReactNode\n /** Adds a red asterisk after the label. */\n required?: boolean\n /** Stretches the field to fill its container width. Defaults to `true`. */\n fullWidth?: boolean\n /** Disables the field. */\n disabled?: boolean\n /** Controlled value — the chosen options' `value`s. */\n value?: string[]\n /** Initial value for uncontrolled use. */\n defaultValue?: string[]\n /** Fires with the next array of selected values. */\n onChange?: (value: string[]) => void\n /** Text shown in the trigger when nothing is selected. Defaults to `\"Select…\"`. */\n placeholder?: string\n /** Theme palette token tinting the selected chips. Defaults to `primary`. */\n color?: ThemeColor\n /** Shows a clear (×) button in the trigger when anything is selected. Defaults to `true`. */\n clearable?: boolean\n /** Adds a search box inside the popover that filters options by label. */\n searchable?: boolean\n /** Placeholder for the search box. Defaults to `\"Search…\"`. */\n searchPlaceholder?: string\n /**\n * Fires with the search query as the user types. **Providing this switches off the built-in\n * local filtering** — you own `options` (e.g. fetch them from a server for the current query).\n */\n onSearchChange?: (query: string) => void\n /** Shows a loading indicator in the popover (e.g. while fetching server-side search results). */\n loading?: boolean\n /** Text shown next to the loader while `loading`. Defaults to `\"Loading…\"`. */\n loadingText?: ReactNode\n /**\n * Shown in the popover when no option matches. Defaults to `\"No options\"`. Pass a function\n * `(query) => node` to vary the message by the current search text — e.g. a \"Type to search\" hint\n * while it's empty vs a \"No results\" message after typing.\n */\n noOptionsText?: ReactNode | ((query: string) => ReactNode)\n /** Form field name — auto-binds to a surrounding `<Form>` (value is a `string[]`). */\n name?: string\n /** Id for the trigger (label association). */\n id?: string\n className?: string\n style?: CSSProperties\n}\n\n/**\n * A labeled multi-select — the `string[]` sibling of `Select`. The trigger shows the chosen options\n * as deletable `Chip`s (wrapping, growing like `TagsField`) or a placeholder; clicking it opens the\n * same `Dropdown`-style popover (portaled, flips, scroll-locked, trigger-width, animated — shared via\n * `useFloatingPanel`). Options render as `ListItem`s in a `role=\"listbox\"` `aria-multiselectable`\n * list; selecting **toggles** an option and keeps the popover open, the chosen ones showing a tick.\n * Full keyboard support (Arrow/Home/End, Enter/Space to toggle, Escape to close, type-ahead) and\n * ARIA. Optionally `searchable` + `clearable`; pass `onSearchChange` to drive the search\n * **server-side** (you own `options` — local filtering is skipped) with a `loading` indicator.\n * Controlled (`value` + `onChange`) or uncontrolled\n * (`defaultValue`), and binds to a surrounding `<Form>` by `name` (value = `string[]`; validate with\n * e.g. `z.array(z.string()).min(1, 'Pick at least one')`). Token-only styling.\n */\nexport const MultiSelect = forwardRef<HTMLDivElement, MultiSelectProps>(function MultiSelect(\n {\n label,\n options,\n size = 'md',\n error,\n helperText,\n required = false,\n fullWidth = true,\n disabled = false,\n value,\n defaultValue,\n onChange,\n placeholder,\n color = 'primary',\n clearable = true,\n searchable = false,\n searchPlaceholder,\n onSearchChange,\n loading = false,\n loadingText,\n noOptionsText,\n name,\n id: idProp,\n className,\n style,\n },\n ref,\n) {\n const reactId = useId()\n const id = idProp ?? reactId\n const labelId = `${id}-label`\n const listboxId = `${id}-listbox`\n const helperId = `${id}-helper`\n const optionId = (index: number) => `${id}-opt-${index}`\n\n // ── value (controlled / form-bound / uncontrolled) — always a string[] ─────────────────────────\n // Read the RAW form value (field().value String-coerces, which would flatten the array).\n const t = useT()\n const searchPh = searchPlaceholder ?? t('common.search')\n const form = useFormContext()\n const isFormBound = Boolean(form && name)\n const bound = isFormBound ? form!.field(name!) : undefined\n const externalValue =\n value !== undefined\n ? value\n : isFormBound\n ? ((form!.values[name!] as string[] | undefined) ?? [])\n : undefined\n const isControlled = value !== undefined || isFormBound\n const [internal, setInternal] = useState<string[]>(defaultValue ?? [])\n const selectedValues = isControlled ? externalValue! : internal\n\n const resolvedError = error ?? bound?.error ?? false\n const resolvedHelperText = helperText ?? bound?.helperText\n\n const commit = (next: string[]) => {\n if (!isControlled) setInternal(next)\n if (isFormBound) form!.setValue(name!, next)\n onChange?.(next)\n }\n\n // ── popover open state ─────────────────────────────────────────────────────────────────────────\n const triggerRef = useRef<HTMLDivElement | null>(null)\n const searchInputRef = useRef<HTMLInputElement | null>(null)\n const typeahead = useRef({ buffer: '', timer: 0 })\n const fieldBlur = useRef<(() => void) | undefined>(undefined)\n fieldBlur.current = bound ? () => bound.onBlur({} as FocusEvent<HTMLInputElement>) : undefined\n const [open, setOpen] = useState(false)\n const [searchQuery, setSearchQuery] = useState('')\n const [highlightedIndex, setHighlightedIndex] = useState(-1)\n\n const setTriggerRef = useCallback(\n (node: HTMLDivElement | null) => {\n triggerRef.current = node\n if (typeof ref === 'function') ref(node)\n else if (ref) (ref as { current: HTMLDivElement | null }).current = node\n },\n [ref],\n )\n\n // when `onSearchChange` is set the consumer owns `options` (server-side search) — skip local filter\n const filteredOptions = useMemo(() => {\n if (!searchable || onSearchChange || !searchQuery.trim()) return options\n const q = searchQuery.trim().toLowerCase()\n return options.filter((o) => o.label.toLowerCase().includes(q))\n }, [searchable, onSearchChange, searchQuery, options])\n\n const findEnabled = useCallback(\n (start: number, delta: number) => {\n let i = start\n while (i >= 0 && i < filteredOptions.length) {\n if (!filteredOptions[i].disabled) return i\n i += delta\n }\n return -1\n },\n [filteredOptions],\n )\n\n // the floating panel forwards its node here, for the focus-leaves-the-widget check on blur\n const popoverRef = useRef<HTMLDivElement | null>(null)\n\n const closeMenu = useCallback((refocus: boolean) => {\n setOpen(false)\n setSearchQuery('')\n window.clearTimeout(typeahead.current.timer)\n typeahead.current.buffer = ''\n fieldBlur.current?.()\n if (refocus) triggerRef.current?.focus()\n }, [])\n\n // on open: highlight the first enabled option, focus the search box if searchable\n useEffect(() => {\n if (!open) return\n setHighlightedIndex(findEnabled(0, 1))\n if (searchable) requestAnimationFrame(() => searchInputRef.current?.focus())\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [open])\n\n useEffect(() => {\n if (!open || highlightedIndex < 0) return\n document.getElementById(optionId(highlightedIndex))?.scrollIntoView?.({ block: 'nearest' })\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [open, highlightedIndex])\n\n // search filter → re-anchor to the first match\n useEffect(() => {\n if (open && searchable) setHighlightedIndex(findEnabled(0, 1))\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [searchQuery])\n\n // keep the highlight in range if the option count changes while open\n useEffect(() => {\n if (open) setHighlightedIndex((i) => (i < filteredOptions.length ? i : findEnabled(0, 1)))\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [filteredOptions.length])\n\n const openMenu = () => {\n if (!disabled) setOpen(true)\n }\n const toggleOption = (opt: SelectOption | undefined) => {\n if (!opt || opt.disabled) return\n commit(\n selectedValues.includes(opt.value)\n ? selectedValues.filter((v) => v !== opt.value)\n : [...selectedValues, opt.value],\n )\n // multi-select stays open\n }\n const removeValue = (v: string) => commit(selectedValues.filter((x) => x !== v))\n const moveHighlight = (delta: number) => {\n setHighlightedIndex((cur) => {\n const start = cur < 0 ? (delta > 0 ? 0 : filteredOptions.length - 1) : cur + delta\n const found = findEnabled(start, delta)\n return found === -1 ? cur : found\n })\n }\n\n const handleTypeahead = (char: string) => {\n const t = typeahead.current\n window.clearTimeout(t.timer)\n t.buffer += char.toLowerCase()\n t.timer = window.setTimeout(() => (t.buffer = ''), 500)\n const match = filteredOptions.findIndex(\n (o) => !o.disabled && o.label.toLowerCase().startsWith(t.buffer),\n )\n if (match >= 0) setHighlightedIndex(match)\n }\n\n const handleKeyDown = (event: ReactKeyboardEvent) => {\n if (disabled) return\n switch (event.key) {\n case 'ArrowDown':\n event.preventDefault()\n open ? moveHighlight(1) : openMenu()\n break\n case 'ArrowUp':\n event.preventDefault()\n open ? moveHighlight(-1) : openMenu()\n break\n case 'Enter':\n event.preventDefault()\n if (!open) openMenu()\n else toggleOption(filteredOptions[highlightedIndex])\n break\n case ' ':\n // Space opens a closed menu (any mode); toggles only when open & not searchable\n if (!open) {\n event.preventDefault()\n openMenu()\n } else if (!searchable) {\n event.preventDefault()\n toggleOption(filteredOptions[highlightedIndex])\n }\n break\n case 'Escape':\n if (open) {\n event.preventDefault()\n event.stopPropagation() // don't let FloatingPanel's own Escape also fire closeMenu/onBlur\n closeMenu(true)\n }\n break\n case 'Tab':\n // refocus the trigger so Tab continues from the field's visual location, not the portaled\n // search input's DOM position (end of <body>); don't preventDefault — let Tab move on\n if (open) closeMenu(true)\n break\n case 'Backspace':\n // remove the last chip when the (search) input is empty or there's no search box\n if (open && (!searchable || searchQuery === '') && selectedValues.length > 0) {\n event.preventDefault()\n removeValue(selectedValues[selectedValues.length - 1])\n }\n break\n case 'Home':\n if (open) {\n event.preventDefault()\n setHighlightedIndex(findEnabled(0, 1))\n }\n break\n case 'End':\n if (open) {\n event.preventDefault()\n setHighlightedIndex(findEnabled(filteredOptions.length - 1, -1))\n }\n break\n default:\n if (\n !searchable &&\n open &&\n event.key.length === 1 &&\n !event.metaKey &&\n !event.ctrlKey &&\n !event.altKey\n ) {\n handleTypeahead(event.key)\n }\n }\n }\n\n const handleTriggerBlur = (event: FocusEvent<HTMLDivElement>) => {\n const next = event.relatedTarget as Node | null\n if (next && (popoverRef.current?.contains(next) || triggerRef.current?.contains(next))) return\n bound?.onBlur(event as unknown as FocusEvent<HTMLInputElement>)\n }\n\n const activeId = open && highlightedIndex >= 0 ? optionId(highlightedIndex) : undefined\n // chevron size per field size: sm 16 · md 14 · lg 12\n const chevronPx = size === 'sm' ? 16 : size === 'md' ? 14 : 12\n const hasValue = selectedValues.length > 0\n\n return (\n <div\n className={clsx(\n styles.field,\n styles[size],\n fullWidth && styles.fullWidth,\n resolvedError && styles.error,\n disabled && styles.disabled,\n className,\n )}\n style={style}\n >\n {label != null && (\n <span\n id={labelId}\n className={styles.label}\n onClick={() => !disabled && triggerRef.current?.focus()}\n >\n <Typography as=\"span\" variant=\"bodySmall\" color=\"muted\">\n {label}\n </Typography>\n {required && (\n <span className={styles.required} aria-hidden=\"true\">\n *\n </span>\n )}\n </span>\n )}\n\n <div\n ref={setTriggerRef}\n id={id}\n {...(name ? { name } : {})}\n role=\"combobox\"\n tabIndex={disabled ? -1 : 0}\n aria-haspopup=\"listbox\"\n aria-expanded={open}\n aria-controls={open ? listboxId : undefined}\n aria-activedescendant={searchable ? undefined : activeId}\n aria-labelledby={label != null ? labelId : undefined}\n aria-disabled={disabled || undefined}\n aria-required={required || undefined}\n aria-invalid={resolvedError || undefined}\n aria-describedby={resolvedHelperText != null ? helperId : undefined}\n className={clsx(styles.control, open && styles.open, hasValue && styles.filled)}\n onClick={() => (open ? closeMenu(false) : openMenu())}\n onKeyDown={handleKeyDown}\n onBlur={handleTriggerBlur}\n >\n {hasValue ? (\n <span className={styles.chips}>\n {selectedValues.map((v) => {\n const opt = options.find((o) => o.value === v)\n return (\n <Chip\n key={v}\n size={size}\n color={color}\n disabled={disabled}\n onDelete={() => removeValue(v)}\n deleteLabel={`Remove ${opt?.label ?? v}`}\n // the combobox owns keyboard focus — keep chip deletes out of the tab order\n deleteTabIndex={-1}\n >\n {opt?.label ?? v}\n </Chip>\n )\n })}\n </span>\n ) : (\n <span className={clsx(styles.value, styles.placeholder)}>\n <span className={styles.valueLabel}>{placeholder ?? t('select.placeholder')}</span>\n </span>\n )}\n\n {clearable && hasValue && !disabled && (\n <button\n type=\"button\"\n className={styles.clear}\n aria-label={t('multiSelect.clearAll')}\n tabIndex={-1}\n onMouseDown={(e) => e.preventDefault()}\n onClick={(e) => {\n e.stopPropagation()\n commit([])\n triggerRef.current?.focus()\n }}\n >\n <Icon name=\"CloseCircle\" size=\"sm\" />\n </button>\n )}\n\n <Icon\n name=\"ArrowDown4\"\n className={styles.chevron}\n style={{ width: chevronPx, height: chevronPx }}\n aria-hidden=\"true\"\n />\n </div>\n\n <FloatingPanel\n ref={popoverRef}\n open={open}\n triggerRef={triggerRef}\n onClose={closeMenu}\n matchTriggerWidth\n className={styles.popover}\n >\n {searchable && (\n <div className={styles.search}>\n <Icon name=\"SearchNormal\" size=\"sm\" className={styles.searchIcon} aria-hidden=\"true\" />\n <input\n ref={searchInputRef}\n className={styles.searchInput}\n type=\"text\"\n role=\"combobox\"\n aria-expanded=\"true\"\n aria-controls={listboxId}\n aria-activedescendant={activeId}\n aria-autocomplete=\"list\"\n aria-label={searchPh}\n placeholder={searchPh}\n value={searchQuery}\n spellCheck={false}\n onChange={(e) => {\n setSearchQuery(e.target.value)\n onSearchChange?.(e.target.value)\n }}\n onKeyDown={handleKeyDown}\n />\n </div>\n )}\n\n <List\n role=\"listbox\"\n id={listboxId}\n aria-labelledby={label != null ? labelId : undefined}\n aria-multiselectable=\"true\"\n size={size}\n className={styles.listbox}\n // clear the mouse highlight when the pointer leaves the list (no lingering hover)\n onMouseLeave={() => setHighlightedIndex(-1)}\n >\n {loading ? (\n <div className={styles.loading}>\n <Loader size=\"sm\" />\n <Typography as=\"span\" variant=\"bodySmall\" color=\"muted\">\n {loadingText ?? t('common.loading')}\n </Typography>\n </div>\n ) : filteredOptions.length === 0 ? (\n <div className={styles.noOptions}>\n <Typography as=\"span\" variant=\"bodySmall\" color=\"muted\">\n {noOptionsText == null\n ? t('select.noOptions')\n : typeof noOptionsText === 'function'\n ? noOptionsText(searchQuery)\n : noOptionsText}\n </Typography>\n </div>\n ) : (\n filteredOptions.map((opt, index) => {\n const isSelected = selectedValues.includes(opt.value)\n return (\n <ListItem\n key={opt.value}\n id={optionId(index)}\n role=\"option\"\n tabIndex={-1}\n aria-selected={isSelected}\n aria-current={undefined}\n clickable\n selected={isSelected}\n disabled={opt.disabled}\n icon={opt.icon}\n className={clsx(index === highlightedIndex && styles.active)}\n trailing={isSelected ? <Icon name=\"TickCircle\" size=\"sm\" /> : undefined}\n onMouseEnter={() => !opt.disabled && setHighlightedIndex(index)}\n // keep focus on the search input (menu stays open on toggle) so typing keeps working\n onMouseDown={(e) => e.preventDefault()}\n onClick={() => toggleOption(opt)}\n >\n {opt.label}\n </ListItem>\n )\n })\n )}\n </List>\n </FloatingPanel>\n\n {resolvedHelperText != null && (\n <Typography\n as=\"span\"\n id={helperId}\n variant=\"bodySmall\"\n color={resolvedError ? 'error' : 'muted'}\n className={styles.helper}\n >\n {resolvedHelperText}\n </Typography>\n )}\n </div>\n )\n})\n"],"names":["MultiSelect","forwardRef","label","options","size","error","helperText","required","fullWidth","disabled","value","defaultValue","onChange","placeholder","color","clearable","searchable","searchPlaceholder","onSearchChange","loading","loadingText","noOptionsText","name","idProp","className","style","ref","reactId","useId","id","labelId","listboxId","helperId","optionId","index","t","useT","searchPh","form","useFormContext","isFormBound","bound","externalValue","isControlled","internal","setInternal","useState","selectedValues","resolvedError","resolvedHelperText","commit","next","triggerRef","useRef","searchInputRef","typeahead","fieldBlur","open","setOpen","searchQuery","setSearchQuery","highlightedIndex","setHighlightedIndex","setTriggerRef","useCallback","node","filteredOptions","useMemo","q","o","findEnabled","start","delta","i","popoverRef","closeMenu","refocus","_a","_b","useEffect","openMenu","toggleOption","opt","v","removeValue","x","moveHighlight","cur","found","handleTypeahead","char","match","handleKeyDown","event","handleTriggerBlur","activeId","chevronPx","hasValue","jsxs","clsx","styles","jsx","Typography","Chip","Icon","FloatingPanel","List","Loader","isSelected","ListItem","e"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PageNotFound-JKOnpyHD.cjs","sources":["../src/components/PageNotFound/PageNotFound.tsx"],"sourcesContent":["import { forwardRef, useMemo, type HTMLAttributes, type ReactNode } from 'react'\nimport { useRouter, type LinkProps } from '@tanstack/react-router'\nimport { useT } from '../../theme'\nimport { hasAccess, useAccessKeys } from '../../helpers/access'\nimport { EmptyState, type EmptyStateSize } from '../EmptyState'\nimport { Button } from '../Button'\nimport { buildNavTree, firstNavTo } from '../Sidebar/Sidebar'\nimport type { IconName } from '../../icons/names'\n\nexport interface PageNotFoundProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title'> {\n /** Hero glyph — an `IconName`, any node, or `false` to hide it. Defaults to `SearchStatus`. */\n icon?: IconName | ReactNode | false\n /** Heading. Defaults to the localized `notFound.title`. */\n title?: ReactNode\n /** Muted description. Defaults to the localized `notFound.description`. */\n description?: ReactNode\n /** Action button label. Defaults to the localized `notFound.action`. */\n actionLabel?: ReactNode\n /** Where the action navigates. Defaults to the first allowed menu page (RBAC-aware), else `/`. */\n to?: string\n /** Show the \"back home\" action button. Defaults to `true` (hidden anyway when there's no router). */\n showAction?: boolean\n /** Faded-grid hero backdrop — passed to `EmptyState`. Defaults to `true` (its default). */\n pattern?: boolean\n /** Size — passed to `EmptyState`. Defaults to `md`. */\n size?: EmptyStateSize\n}\n\n/**\n * The shared **404** page. Drop it straight into TanStack Router as the\n * `defaultNotFoundComponent` — zero props needed: the title/description/action strings come from the\n * built-in i18n (`useT`), so they translate with the panel language, and the action navigates to the\n * **first allowed menu page** (the same RBAC-aware target as `FirstRouteRedirect`), falling back to\n * `/`. Built on `EmptyState` (hero glyph + title + description + action, `pattern` on by default), so\n * it renders inside the `RootLayout` content area with the shell/sidebar intact. Lenient: with no\n * router context the `EmptyState` still renders, just without the action button. Token-only styling.\n *\n * @example\n * const router = createRouter({ routeTree, defaultNotFoundComponent: PageNotFound })\n */\nexport const PageNotFound = forwardRef<HTMLDivElement, PageNotFoundProps>(function PageNotFound(\n { icon = 'SearchStatus', title, description, actionLabel, to, showAction = true, ...props },\n ref,\n) {\n const t = useT()\n // lenient router access — returns undefined (no throw) outside a <RouterProvider>\n const router = useRouter({ warn: false })\n const accessKeys = useAccessKeys()\n\n // the first allowed menu page — same logic as FirstRouteRedirect, RBAC-aware; `/` fallback\n const resolvedTo = useMemo(() => {\n if (to != null) return to\n if (!router) return undefined\n const tree = buildNavTree(\n Object.values(router.looseRoutesById)\n .map((route) => ({ fullPath: route.fullPath, staticData: route.options?.staticData }))\n .filter((route) => hasAccess(route.staticData?.roles)),\n )\n return firstNavTo(tree) ?? '/'\n }, [router, to, accessKeys])\n\n const canNavigate = !!router && resolvedTo != null\n const action =\n showAction && canNavigate ? (\n <Button size=\"sm\" onClick={() => router.navigate({ to: resolvedTo as LinkProps['to'] })}>\n {actionLabel ?? t('notFound.action')}\n </Button>\n ) : undefined\n\n return (\n <EmptyState\n ref={ref}\n icon={icon}\n title={title ?? t('notFound.title')}\n description={description ?? t('notFound.description')}\n action={action}\n {...props}\n />\n )\n})\n"],"names":["PageNotFound","forwardRef","icon","title","description","actionLabel","to","showAction","props","ref","t","useT","router","useRouter","accessKeys","useAccessKeys","resolvedTo","useMemo","tree","buildNavTree","route","_a","hasAccess","firstNavTo","canNavigate","action","jsx","Button","EmptyState"],"mappings":"qSAwCaA,EAAeC,EAAAA,WAA8C,SACxE,CAAE,KAAAC,EAAO,eAAgB,MAAAC,EAAO,YAAAC,EAAa,YAAAC,EAAa,GAAAC,EAAI,WAAAC,EAAa,GAAM,GAAGC,CAAA,EACpFC,EACA,CACA,MAAMC,EAAIC,EAAAA,KAAA,EAEJC,EAASC,EAAAA,UAAU,CAAE,KAAM,GAAO,EAClCC,EAAaC,EAAAA,cAAA,EAGbC,EAAaC,EAAAA,QAAQ,IAAM,CAC/B,GAAIX,GAAM,KAAM,OAAOA,EACvB,GAAI,CAACM,EAAQ,OACb,MAAMM,EAAOC,EAAAA,aACX,OAAO,OAAOP,EAAO,eAAe,EACjC,IAAKQ,UAAW,OAAE,SAAUA,EAAM,SAAU,YAAYC,EAAAD,EAAM,UAAN,YAAAC,EAAe,YAAa,EACpF,OAAQD,GAAA,OAAUE,OAAAA,aAAUD,EAAAD,EAAM,aAAN,YAAAC,EAAkB,KAAK,EAAC,CAAA,EAEzD,OAAOE,EAAAA,WAAWL,CAAI,GAAK,GAC7B,EAAG,CAACN,EAAQN,EAAIQ,CAAU,CAAC,EAErBU,EAAc,CAAC,CAACZ,GAAUI,GAAc,KACxCS,EACJlB,GAAciB,EACZE,EAAAA,IAACC,EAAAA,QAAO,KAAK,KAAK,QAAS,IAAMf,EAAO,SAAS,CAAE,GAAII,EAA+B,EACnF,YAAeN,EAAE,iBAAiB,EACrC,EACE,OAEN,OACEgB,EAAAA,IAACE,EAAAA,WAAA,CACC,IAAAnB,EACA,KAAAP,EACA,MAAOC,GAASO,EAAE,gBAAgB,EAClC,YAAaN,GAAeM,EAAE,sBAAsB,EACpD,OAAAe,EACC,GAAGjB,CAAA,CAAA,CAGV,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PageNotFound-LWH2tU5E.js","sources":["../src/components/PageNotFound/PageNotFound.tsx"],"sourcesContent":["import { forwardRef, useMemo, type HTMLAttributes, type ReactNode } from 'react'\nimport { useRouter, type LinkProps } from '@tanstack/react-router'\nimport { useT } from '../../theme'\nimport { hasAccess, useAccessKeys } from '../../helpers/access'\nimport { EmptyState, type EmptyStateSize } from '../EmptyState'\nimport { Button } from '../Button'\nimport { buildNavTree, firstNavTo } from '../Sidebar/Sidebar'\nimport type { IconName } from '../../icons/names'\n\nexport interface PageNotFoundProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title'> {\n /** Hero glyph — an `IconName`, any node, or `false` to hide it. Defaults to `SearchStatus`. */\n icon?: IconName | ReactNode | false\n /** Heading. Defaults to the localized `notFound.title`. */\n title?: ReactNode\n /** Muted description. Defaults to the localized `notFound.description`. */\n description?: ReactNode\n /** Action button label. Defaults to the localized `notFound.action`. */\n actionLabel?: ReactNode\n /** Where the action navigates. Defaults to the first allowed menu page (RBAC-aware), else `/`. */\n to?: string\n /** Show the \"back home\" action button. Defaults to `true` (hidden anyway when there's no router). */\n showAction?: boolean\n /** Faded-grid hero backdrop — passed to `EmptyState`. Defaults to `true` (its default). */\n pattern?: boolean\n /** Size — passed to `EmptyState`. Defaults to `md`. */\n size?: EmptyStateSize\n}\n\n/**\n * The shared **404** page. Drop it straight into TanStack Router as the\n * `defaultNotFoundComponent` — zero props needed: the title/description/action strings come from the\n * built-in i18n (`useT`), so they translate with the panel language, and the action navigates to the\n * **first allowed menu page** (the same RBAC-aware target as `FirstRouteRedirect`), falling back to\n * `/`. Built on `EmptyState` (hero glyph + title + description + action, `pattern` on by default), so\n * it renders inside the `RootLayout` content area with the shell/sidebar intact. Lenient: with no\n * router context the `EmptyState` still renders, just without the action button. Token-only styling.\n *\n * @example\n * const router = createRouter({ routeTree, defaultNotFoundComponent: PageNotFound })\n */\nexport const PageNotFound = forwardRef<HTMLDivElement, PageNotFoundProps>(function PageNotFound(\n { icon = 'SearchStatus', title, description, actionLabel, to, showAction = true, ...props },\n ref,\n) {\n const t = useT()\n // lenient router access — returns undefined (no throw) outside a <RouterProvider>\n const router = useRouter({ warn: false })\n const accessKeys = useAccessKeys()\n\n // the first allowed menu page — same logic as FirstRouteRedirect, RBAC-aware; `/` fallback\n const resolvedTo = useMemo(() => {\n if (to != null) return to\n if (!router) return undefined\n const tree = buildNavTree(\n Object.values(router.looseRoutesById)\n .map((route) => ({ fullPath: route.fullPath, staticData: route.options?.staticData }))\n .filter((route) => hasAccess(route.staticData?.roles)),\n )\n return firstNavTo(tree) ?? '/'\n }, [router, to, accessKeys])\n\n const canNavigate = !!router && resolvedTo != null\n const action =\n showAction && canNavigate ? (\n <Button size=\"sm\" onClick={() => router.navigate({ to: resolvedTo as LinkProps['to'] })}>\n {actionLabel ?? t('notFound.action')}\n </Button>\n ) : undefined\n\n return (\n <EmptyState\n ref={ref}\n icon={icon}\n title={title ?? t('notFound.title')}\n description={description ?? t('notFound.description')}\n action={action}\n {...props}\n />\n )\n})\n"],"names":["PageNotFound","forwardRef","icon","title","description","actionLabel","to","showAction","props","ref","t","useT","router","useRouter","accessKeys","useAccessKeys","resolvedTo","useMemo","tree","buildNavTree","route","_a","hasAccess","firstNavTo","canNavigate","action","jsx","Button","EmptyState"],"mappings":";;;;;;;;AAwCO,MAAMA,IAAeC,EAA8C,SACxE,EAAE,MAAAC,IAAO,gBAAgB,OAAAC,GAAO,aAAAC,GAAa,aAAAC,GAAa,IAAAC,GAAI,YAAAC,IAAa,IAAM,GAAGC,EAAA,GACpFC,GACA;AACA,QAAMC,IAAIC,EAAA,GAEJC,IAASC,EAAU,EAAE,MAAM,IAAO,GAClCC,IAAaC,EAAA,GAGbC,IAAaC,EAAQ,MAAM;AAC/B,QAAIX,KAAM,KAAM,QAAOA;AACvB,QAAI,CAACM,EAAQ;AACb,UAAMM,IAAOC;AAAA,MACX,OAAO,OAAOP,EAAO,eAAe,EACjC,IAAI,CAACQ;;AAAW,iBAAE,UAAUA,EAAM,UAAU,aAAYC,IAAAD,EAAM,YAAN,gBAAAC,EAAe;OAAa,EACpF,OAAO,CAACD,MAAA;;AAAU,eAAAE,GAAUD,IAAAD,EAAM,eAAN,gBAAAC,EAAkB,KAAK;AAAA,OAAC;AAAA,IAAA;AAEzD,WAAOE,EAAWL,CAAI,KAAK;AAAA,EAC7B,GAAG,CAACN,GAAQN,GAAIQ,CAAU,CAAC,GAErBU,IAAc,CAAC,CAACZ,KAAUI,KAAc,MACxCS,IACJlB,KAAciB,IACZ,gBAAAE,EAACC,KAAO,MAAK,MAAK,SAAS,MAAMf,EAAO,SAAS,EAAE,IAAII,GAA+B,GACnF,eAAeN,EAAE,iBAAiB,GACrC,IACE;AAEN,SACE,gBAAAgB;AAAA,IAACE;AAAA,IAAA;AAAA,MACC,KAAAnB;AAAA,MACA,MAAAP;AAAA,MACA,OAAOC,KAASO,EAAE,gBAAgB;AAAA,MAClC,aAAaN,KAAeM,EAAE,sBAAsB;AAAA,MACpD,QAAAe;AAAA,MACC,GAAGjB;AAAA,IAAA;AAAA,EAAA;AAGV,CAAC;"}
|
package/dist/QrCode-Bcj9_Emc.js
DELETED
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import { jsxs as q, jsx as n } from "react/jsx-runtime";
|
|
2
|
-
import { forwardRef as w } from "react";
|
|
3
|
-
import { clsx as y } from "clsx";
|
|
4
|
-
import { QRCodeSVG as s } from "qrcode.react";
|
|
5
|
-
import { T as C } from "./Typography-Cta6Rg4L.js";
|
|
6
|
-
const Q = "_root_15ibt_1", z = "_framed_15ibt_12", N = "_code_15ibt_30", R = "_caption_15ibt_35", o = {
|
|
7
|
-
root: Q,
|
|
8
|
-
framed: z,
|
|
9
|
-
code: N,
|
|
10
|
-
caption: R
|
|
11
|
-
}, G = w(function({
|
|
12
|
-
value: d,
|
|
13
|
-
size: e = 180,
|
|
14
|
-
level: l,
|
|
15
|
-
color: a = "text",
|
|
16
|
-
margin: m = 2,
|
|
17
|
-
image: r,
|
|
18
|
-
caption: c,
|
|
19
|
-
framed: f = !0,
|
|
20
|
-
className: p,
|
|
21
|
-
style: h,
|
|
22
|
-
"aria-label": u = "QR code",
|
|
23
|
-
...v
|
|
24
|
-
}, _) {
|
|
25
|
-
if (s == null)
|
|
26
|
-
throw new Error(
|
|
27
|
-
"QrCode requires the optional peer dependency 'qrcode.react'. Install it with `npm i qrcode.react`."
|
|
28
|
-
);
|
|
29
|
-
const g = l ?? (r ? "H" : "M"), b = r != null ? (() => {
|
|
30
|
-
const t = typeof r == "string" ? { src: r } : r, i = Math.round(e * 0.22);
|
|
31
|
-
return {
|
|
32
|
-
src: t.src,
|
|
33
|
-
width: t.width ?? i,
|
|
34
|
-
height: t.height ?? i,
|
|
35
|
-
excavate: t.excavate ?? !0
|
|
36
|
-
};
|
|
37
|
-
})() : void 0, x = a === "text" ? void 0 : { "--tz-qr-fg": `var(--tz-color-${a})` };
|
|
38
|
-
return /* @__PURE__ */ q(
|
|
39
|
-
"div",
|
|
40
|
-
{
|
|
41
|
-
ref: _,
|
|
42
|
-
role: "img",
|
|
43
|
-
"aria-label": u,
|
|
44
|
-
className: y(o.root, f && o.framed, p),
|
|
45
|
-
style: { ...x, ...h },
|
|
46
|
-
...v,
|
|
47
|
-
children: [
|
|
48
|
-
/* @__PURE__ */ n(
|
|
49
|
-
s,
|
|
50
|
-
{
|
|
51
|
-
className: o.code,
|
|
52
|
-
value: d,
|
|
53
|
-
size: e,
|
|
54
|
-
level: g,
|
|
55
|
-
marginSize: m,
|
|
56
|
-
fgColor: "var(--tz-qr-fg)",
|
|
57
|
-
bgColor: "var(--tz-qr-bg)",
|
|
58
|
-
imageSettings: b,
|
|
59
|
-
"aria-hidden": !0
|
|
60
|
-
}
|
|
61
|
-
),
|
|
62
|
-
c != null && /* @__PURE__ */ n(C, { variant: "caption", color: "muted", className: o.caption, children: c })
|
|
63
|
-
]
|
|
64
|
-
}
|
|
65
|
-
);
|
|
66
|
-
});
|
|
67
|
-
export {
|
|
68
|
-
G as Q
|
|
69
|
-
};
|
|
70
|
-
//# sourceMappingURL=QrCode-Bcj9_Emc.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"QrCode-Bcj9_Emc.js","sources":["../src/components/QrCode/QrCode.tsx"],"sourcesContent":["import { forwardRef, type CSSProperties, type HTMLAttributes, type ReactNode } from 'react'\nimport { clsx } from 'clsx'\nimport { QRCodeSVG } from 'qrcode.react'\nimport type { ThemeColor } from '../../theme'\nimport { Typography } from '../Typography'\nimport styles from './QrCode.module.css'\n\nexport type QrCodeLevel = 'L' | 'M' | 'Q' | 'H'\n\nexport interface QrCodeProps extends Omit<HTMLAttributes<HTMLDivElement>, 'color'> {\n /** The encoded text (URL, `otpauth://…` URI, plain string). Required. */\n value: string\n /** Rendered edge length in px. Default `180`. */\n size?: number\n /** Error-correction level. Default `'M'` (`'H'` when `image` is set, so the logo can cover the middle). */\n level?: QrCodeLevel\n /** Module (foreground) tint — a theme token. Default `'text'` (so it follows light/dark). */\n color?: ThemeColor | 'text'\n /** Quiet zone in modules. Default `2`. */\n margin?: number\n /**\n * Optional centre image (a brand mark), as a URL or `{ src, width?, height?, excavate? }`.\n * `excavate` clears the modules under it (default `true`). Sizes default to ~22% of `size`.\n */\n image?: string | { src: string; width?: number; height?: number; excavate?: boolean }\n /** Caption rendered under the code (muted, centred) — e.g. \"Scan with your authenticator app\". */\n caption?: ReactNode\n /**\n * Wrap the code in a soft `surface` frame with padding and radius, so it sits cleanly on the\n * page `background`. Default `true`. Pass `false` for a bare SVG.\n */\n framed?: boolean\n /** Accessible name. Default `\"QR code\"`. The `value` is never exposed as text by this component. */\n 'aria-label'?: string\n}\n\n/**\n * A QR code, rendered as a crisp **SVG** — wraps the optional peer **`qrcode.react`** (`npm i\n * qrcode.react`) so apps don't pull in their own encoder. The modules take a theme `color` token\n * (default `text`) via the `--tz-qr-fg` var; `framed` (default) wraps the code in a soft, elevated card.\n *\n * **Scannability:** a framed code always sits on a **white** card in both light and dark mode, and its\n * default modules stay **dark** in both — a QR must be dark-on-light to read reliably, so the frame is\n * kept white even in dark mode (a deliberate literal-color exception, like `CodeBlock`'s dark surface).\n * A custom `color` is honored as-is (pick one dark enough to scan). The wrapper is `role=\"img\"` with an\n * `aria-label`; the SVG itself is `aria-hidden`, so the encoded `value` is never read out as text.\n */\nexport const QrCode = forwardRef<HTMLDivElement, QrCodeProps>(function QrCode(\n {\n value,\n size = 180,\n level,\n color = 'text',\n margin = 2,\n image,\n caption,\n framed = true,\n className,\n style,\n 'aria-label': ariaLabel = 'QR code',\n ...props\n },\n ref,\n) {\n // Static import keeps `qrcode.react` off every other consumer's bundle (only the `./components/QrCode`\n // subpath pulls it in); guard for the case where the optional peer isn't installed / resolves empty.\n if (QRCodeSVG == null) {\n throw new Error(\n \"QrCode requires the optional peer dependency 'qrcode.react'. Install it with `npm i qrcode.react`.\",\n )\n }\n\n // 'H' error correction by default when a centre image is present, so the logo can cover the middle\n // without breaking the code; otherwise 'M'. An explicit `level` always wins.\n const resolvedLevel: QrCodeLevel = level ?? (image ? 'H' : 'M')\n\n const imageSettings =\n image != null\n ? (() => {\n const img = typeof image === 'string' ? { src: image } : image\n const dim = Math.round(size * 0.22)\n return {\n src: img.src,\n width: img.width ?? dim,\n height: img.height ?? dim,\n excavate: img.excavate ?? true,\n }\n })()\n : undefined\n\n // The foreground (modules) follows the `color` token via `--tz-qr-fg`. The default `text` is left to\n // CSS (so `.framed` can force dark modules on the white card in dark mode); a custom token is pinned\n // inline, so it wins over that CSS fallback and is rendered exactly as asked.\n const fgVar = color === 'text' ? undefined : { '--tz-qr-fg': `var(--tz-color-${color})` }\n\n return (\n <div\n ref={ref}\n role=\"img\"\n aria-label={ariaLabel}\n className={clsx(styles.root, framed && styles.framed, className)}\n style={{ ...fgVar, ...style } as CSSProperties}\n {...props}\n >\n <QRCodeSVG\n className={styles.code}\n value={value}\n size={size}\n level={resolvedLevel}\n marginSize={margin}\n // colors flow through CSS vars so `.framed` can guarantee contrast per theme (see the module)\n fgColor=\"var(--tz-qr-fg)\"\n bgColor=\"var(--tz-qr-bg)\"\n imageSettings={imageSettings}\n aria-hidden\n />\n {caption != null && (\n <Typography variant=\"caption\" color=\"muted\" className={styles.caption}>\n {caption}\n </Typography>\n )}\n </div>\n )\n})\n"],"names":["QrCode","forwardRef","value","size","level","color","margin","image","caption","framed","className","style","ariaLabel","props","ref","QRCodeSVG","resolvedLevel","imageSettings","img","dim","fgVar","jsxs","clsx","styles","jsx","Typography"],"mappings":";;;;;;;;;;GA+CaA,IAASC,EAAwC,SAC5D;AAAA,EACE,OAAAC;AAAA,EACA,MAAAC,IAAO;AAAA,EACP,OAAAC;AAAA,EACA,OAAAC,IAAQ;AAAA,EACR,QAAAC,IAAS;AAAA,EACT,OAAAC;AAAA,EACA,SAAAC;AAAA,EACA,QAAAC,IAAS;AAAA,EACT,WAAAC;AAAA,EACA,OAAAC;AAAA,EACA,cAAcC,IAAY;AAAA,EAC1B,GAAGC;AACL,GACAC,GACA;AAGA,MAAIC,KAAa;AACf,UAAM,IAAI;AAAA,MACR;AAAA,IAAA;AAMJ,QAAMC,IAA6BZ,MAAUG,IAAQ,MAAM,MAErDU,IACJV,KAAS,QACJ,MAAM;AACL,UAAMW,IAAM,OAAOX,KAAU,WAAW,EAAE,KAAKA,MAAUA,GACnDY,IAAM,KAAK,MAAMhB,IAAO,IAAI;AAClC,WAAO;AAAA,MACL,KAAKe,EAAI;AAAA,MACT,OAAOA,EAAI,SAASC;AAAA,MACpB,QAAQD,EAAI,UAAUC;AAAA,MACtB,UAAUD,EAAI,YAAY;AAAA,IAAA;AAAA,EAE9B,OACA,QAKAE,IAAQf,MAAU,SAAS,SAAY,EAAE,cAAc,kBAAkBA,CAAK,IAAA;AAEpF,SACE,gBAAAgB;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAAP;AAAA,MACA,MAAK;AAAA,MACL,cAAYF;AAAA,MACZ,WAAWU,EAAKC,EAAO,MAAMd,KAAUc,EAAO,QAAQb,CAAS;AAAA,MAC/D,OAAO,EAAE,GAAGU,GAAO,GAAGT,EAAA;AAAA,MACrB,GAAGE;AAAA,MAEJ,UAAA;AAAA,QAAA,gBAAAW;AAAA,UAACT;AAAA,UAAA;AAAA,YACC,WAAWQ,EAAO;AAAA,YAClB,OAAArB;AAAA,YACA,MAAAC;AAAA,YACA,OAAOa;AAAA,YACP,YAAYV;AAAA,YAEZ,SAAQ;AAAA,YACR,SAAQ;AAAA,YACR,eAAAW;AAAA,YACA,eAAW;AAAA,UAAA;AAAA,QAAA;AAAA,QAEZT,KAAW,QACV,gBAAAgB,EAACC,GAAA,EAAW,SAAQ,WAAU,OAAM,SAAQ,WAAWF,EAAO,SAC3D,UAAAf,EAAA,CACH;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAIR,CAAC;"}
|
package/dist/QrCode-DfDfGhG-.cjs
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";const o=require("react/jsx-runtime"),b=require("react"),y=require("clsx"),i=require("qrcode.react"),C=require("./Typography-BFatE1_A.cjs"),Q="_root_15ibt_1",w="_framed_15ibt_12",R="_code_15ibt_30",j="_caption_15ibt_35",t={root:Q,framed:w,code:R,caption:j},z=b.forwardRef(function({value:d,size:c=180,level:l,color:n="text",margin:u=2,image:e,caption:s,framed:h=!0,className:f,style:p,"aria-label":_="QR code",...g},q){if(i.QRCodeSVG==null)throw new Error("QrCode requires the optional peer dependency 'qrcode.react'. Install it with `npm i qrcode.react`.");const v=l??(e?"H":"M"),m=e!=null?(()=>{const r=typeof e=="string"?{src:e}:e,a=Math.round(c*.22);return{src:r.src,width:r.width??a,height:r.height??a,excavate:r.excavate??!0}})():void 0,x=n==="text"?void 0:{"--tz-qr-fg":`var(--tz-color-${n})`};return o.jsxs("div",{ref:q,role:"img","aria-label":_,className:y.clsx(t.root,h&&t.framed,f),style:{...x,...p},...g,children:[o.jsx(i.QRCodeSVG,{className:t.code,value:d,size:c,level:v,marginSize:u,fgColor:"var(--tz-qr-fg)",bgColor:"var(--tz-qr-bg)",imageSettings:m,"aria-hidden":!0}),s!=null&&o.jsx(C.Typography,{variant:"caption",color:"muted",className:t.caption,children:s})]})});exports.QrCode=z;
|
|
2
|
-
//# sourceMappingURL=QrCode-DfDfGhG-.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"QrCode-DfDfGhG-.cjs","sources":["../src/components/QrCode/QrCode.tsx"],"sourcesContent":["import { forwardRef, type CSSProperties, type HTMLAttributes, type ReactNode } from 'react'\nimport { clsx } from 'clsx'\nimport { QRCodeSVG } from 'qrcode.react'\nimport type { ThemeColor } from '../../theme'\nimport { Typography } from '../Typography'\nimport styles from './QrCode.module.css'\n\nexport type QrCodeLevel = 'L' | 'M' | 'Q' | 'H'\n\nexport interface QrCodeProps extends Omit<HTMLAttributes<HTMLDivElement>, 'color'> {\n /** The encoded text (URL, `otpauth://…` URI, plain string). Required. */\n value: string\n /** Rendered edge length in px. Default `180`. */\n size?: number\n /** Error-correction level. Default `'M'` (`'H'` when `image` is set, so the logo can cover the middle). */\n level?: QrCodeLevel\n /** Module (foreground) tint — a theme token. Default `'text'` (so it follows light/dark). */\n color?: ThemeColor | 'text'\n /** Quiet zone in modules. Default `2`. */\n margin?: number\n /**\n * Optional centre image (a brand mark), as a URL or `{ src, width?, height?, excavate? }`.\n * `excavate` clears the modules under it (default `true`). Sizes default to ~22% of `size`.\n */\n image?: string | { src: string; width?: number; height?: number; excavate?: boolean }\n /** Caption rendered under the code (muted, centred) — e.g. \"Scan with your authenticator app\". */\n caption?: ReactNode\n /**\n * Wrap the code in a soft `surface` frame with padding and radius, so it sits cleanly on the\n * page `background`. Default `true`. Pass `false` for a bare SVG.\n */\n framed?: boolean\n /** Accessible name. Default `\"QR code\"`. The `value` is never exposed as text by this component. */\n 'aria-label'?: string\n}\n\n/**\n * A QR code, rendered as a crisp **SVG** — wraps the optional peer **`qrcode.react`** (`npm i\n * qrcode.react`) so apps don't pull in their own encoder. The modules take a theme `color` token\n * (default `text`) via the `--tz-qr-fg` var; `framed` (default) wraps the code in a soft, elevated card.\n *\n * **Scannability:** a framed code always sits on a **white** card in both light and dark mode, and its\n * default modules stay **dark** in both — a QR must be dark-on-light to read reliably, so the frame is\n * kept white even in dark mode (a deliberate literal-color exception, like `CodeBlock`'s dark surface).\n * A custom `color` is honored as-is (pick one dark enough to scan). The wrapper is `role=\"img\"` with an\n * `aria-label`; the SVG itself is `aria-hidden`, so the encoded `value` is never read out as text.\n */\nexport const QrCode = forwardRef<HTMLDivElement, QrCodeProps>(function QrCode(\n {\n value,\n size = 180,\n level,\n color = 'text',\n margin = 2,\n image,\n caption,\n framed = true,\n className,\n style,\n 'aria-label': ariaLabel = 'QR code',\n ...props\n },\n ref,\n) {\n // Static import keeps `qrcode.react` off every other consumer's bundle (only the `./components/QrCode`\n // subpath pulls it in); guard for the case where the optional peer isn't installed / resolves empty.\n if (QRCodeSVG == null) {\n throw new Error(\n \"QrCode requires the optional peer dependency 'qrcode.react'. Install it with `npm i qrcode.react`.\",\n )\n }\n\n // 'H' error correction by default when a centre image is present, so the logo can cover the middle\n // without breaking the code; otherwise 'M'. An explicit `level` always wins.\n const resolvedLevel: QrCodeLevel = level ?? (image ? 'H' : 'M')\n\n const imageSettings =\n image != null\n ? (() => {\n const img = typeof image === 'string' ? { src: image } : image\n const dim = Math.round(size * 0.22)\n return {\n src: img.src,\n width: img.width ?? dim,\n height: img.height ?? dim,\n excavate: img.excavate ?? true,\n }\n })()\n : undefined\n\n // The foreground (modules) follows the `color` token via `--tz-qr-fg`. The default `text` is left to\n // CSS (so `.framed` can force dark modules on the white card in dark mode); a custom token is pinned\n // inline, so it wins over that CSS fallback and is rendered exactly as asked.\n const fgVar = color === 'text' ? undefined : { '--tz-qr-fg': `var(--tz-color-${color})` }\n\n return (\n <div\n ref={ref}\n role=\"img\"\n aria-label={ariaLabel}\n className={clsx(styles.root, framed && styles.framed, className)}\n style={{ ...fgVar, ...style } as CSSProperties}\n {...props}\n >\n <QRCodeSVG\n className={styles.code}\n value={value}\n size={size}\n level={resolvedLevel}\n marginSize={margin}\n // colors flow through CSS vars so `.framed` can guarantee contrast per theme (see the module)\n fgColor=\"var(--tz-qr-fg)\"\n bgColor=\"var(--tz-qr-bg)\"\n imageSettings={imageSettings}\n aria-hidden\n />\n {caption != null && (\n <Typography variant=\"caption\" color=\"muted\" className={styles.caption}>\n {caption}\n </Typography>\n )}\n </div>\n )\n})\n"],"names":["QrCode","forwardRef","value","size","level","color","margin","image","caption","framed","className","style","ariaLabel","props","ref","QRCodeSVG","resolvedLevel","imageSettings","img","dim","fgVar","jsxs","clsx","styles","jsx","Typography"],"mappings":"6QA+CaA,EAASC,EAAAA,WAAwC,SAC5D,CACE,MAAAC,EACA,KAAAC,EAAO,IACP,MAAAC,EACA,MAAAC,EAAQ,OACR,OAAAC,EAAS,EACT,MAAAC,EACA,QAAAC,EACA,OAAAC,EAAS,GACT,UAAAC,EACA,MAAAC,EACA,aAAcC,EAAY,UAC1B,GAAGC,CACL,EACAC,EACA,CAGA,GAAIC,EAAAA,WAAa,KACf,MAAM,IAAI,MACR,oGAAA,EAMJ,MAAMC,EAA6BZ,IAAUG,EAAQ,IAAM,KAErDU,EACJV,GAAS,MACJ,IAAM,CACL,MAAMW,EAAM,OAAOX,GAAU,SAAW,CAAE,IAAKA,GAAUA,EACnDY,EAAM,KAAK,MAAMhB,EAAO,GAAI,EAClC,MAAO,CACL,IAAKe,EAAI,IACT,MAAOA,EAAI,OAASC,EACpB,OAAQD,EAAI,QAAUC,EACtB,SAAUD,EAAI,UAAY,EAAA,CAE9B,KACA,OAKAE,EAAQf,IAAU,OAAS,OAAY,CAAE,aAAc,kBAAkBA,CAAK,GAAA,EAEpF,OACEgB,EAAAA,KAAC,MAAA,CACC,IAAAP,EACA,KAAK,MACL,aAAYF,EACZ,UAAWU,EAAAA,KAAKC,EAAO,KAAMd,GAAUc,EAAO,OAAQb,CAAS,EAC/D,MAAO,CAAE,GAAGU,EAAO,GAAGT,CAAA,EACrB,GAAGE,EAEJ,SAAA,CAAAW,EAAAA,IAACT,EAAAA,UAAA,CACC,UAAWQ,EAAO,KAClB,MAAArB,EACA,KAAAC,EACA,MAAOa,EACP,WAAYV,EAEZ,QAAQ,kBACR,QAAQ,kBACR,cAAAW,EACA,cAAW,EAAA,CAAA,EAEZT,GAAW,MACVgB,EAAAA,IAACC,EAAAA,WAAA,CAAW,QAAQ,UAAU,MAAM,QAAQ,UAAWF,EAAO,QAC3D,SAAAf,CAAA,CACH,CAAA,CAAA,CAAA,CAIR,CAAC"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";const r=require("react/jsx-runtime"),c=require("react"),y=require("clsx"),E=require("./formContext-bTWrqdEV.cjs"),F=require("./Typography-BFatE1_A.cjs"),S=c.createContext(null);function T(){return c.useContext(S)}const D="_field_dlync_2",P="_row_dlync_9",$="_disabled_dlync_17",A="_input_dlync_23",H="_circle_dlync_37",J="_dot_dlync_59",K="_error_dlync_73",M="_label_dlync_77",O="_required_dlync_82",Q="_sm_dlync_88",U="_md_dlync_92",W="_lg_dlync_96",X="_group_dlync_112",Y="_groupLabel_dlync_119",Z="_options_dlync_124",ee="_horizontal_dlync_130",s={field:D,row:P,disabled:$,input:A,circle:H,dot:J,error:K,label:M,required:O,sm:Q,md:U,lg:W,group:X,groupLabel:Y,options:Z,horizontal:ee},V=c.forwardRef(function({value:t,label:i,color:h,size:u,error:l,checked:d,onChange:_,name:p,disabled:b,id:j,className:N,style:R,...q},z){const g=c.useId(),C=j??g,e=T(),n=h??(e==null?void 0:e.color)??"accent",x=u??(e==null?void 0:e.size)??"md",a=l??(e==null?void 0:e.error)??!1,v=b??(e==null?void 0:e.disabled)??!1,f=p??(e==null?void 0:e.name),[w,G]=c.useState(!1),I=e?e.value===t:d!==void 0?d:w,m=L=>{if(e){e.onChange(t);return}d===void 0&&G(L.target.checked),_==null||_(L.target.checked)};return r.jsx("div",{className:y.clsx(s.field,a&&s.error,v&&s.disabled,N),style:{"--tz-btn-rgb":`var(--tz-color-${n}-rgb)`,...R},children:r.jsxs("label",{className:y.clsx(s.row,s[x]),children:[r.jsx("input",{ref:z,id:C,name:f,type:"radio",className:s.input,value:t,checked:I,onChange:m,disabled:v,"aria-invalid":a||void 0,...q}),r.jsx("span",{className:s.circle,"aria-hidden":"true",children:r.jsx("span",{className:s.dot})}),i!=null&&r.jsx("span",{className:s.label,children:i})]})})}),se=c.forwardRef(function({label:t,value:i,defaultValue:h,onChange:u,name:l,options:d,orientation:_="vertical",size:p="md",color:b="accent",error:j,required:N=!1,disabled:R=!1,children:q,className:z,style:g,...C},e){const n=E.useFormContext(),x=!!(n&&l),a=n&&l?n.field(l):void 0,v=i!==void 0?i:x?n.values[l]:void 0,f=v!==void 0,[w,G]=c.useState(h),I=f?v:w,m=j??(a==null?void 0:a.error)??!1,B={name:l,value:I,onChange:o=>{f||G(o),x&&n.setValue(l,o),u==null||u(o)},size:p,color:b,disabled:R,error:m};return r.jsxs("div",{ref:e,role:"radiogroup","aria-invalid":m||void 0,className:y.clsx(s.group,z),style:g,...C,children:[t!=null&&r.jsxs("span",{className:s.groupLabel,children:[r.jsx(F.Typography,{as:"span",variant:"bodySmall",color:"muted",children:t}),N&&r.jsx("span",{className:s.required,"aria-hidden":"true",children:"*"})]}),r.jsx("div",{className:y.clsx(s.options,_==="horizontal"&&s.horizontal),children:r.jsx(S.Provider,{value:B,children:d?d.map(o=>r.jsx(V,{value:o.value,label:o.label,disabled:o.disabled},o.value)):q})})]})});exports.Radio=V;exports.RadioGroup=se;
|
|
2
|
-
//# sourceMappingURL=RadioGroup-Byy-eSY3.cjs.map
|