@techzyapp/ui-library 1.0.42 → 1.0.44
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -14
- package/dist/{Accordion-B4vdZXIu.cjs → Accordion-CFyeLfPT.cjs} +2 -2
- package/dist/{Accordion-B4vdZXIu.cjs.map → Accordion-CFyeLfPT.cjs.map} +1 -1
- package/dist/{Accordion-DhFZ25KV.js → Accordion-DOrTQJB9.js} +2 -2
- package/dist/{Accordion-DhFZ25KV.js.map → Accordion-DOrTQJB9.js.map} +1 -1
- package/dist/AdminRoot-9KE3ll-D.js +101 -0
- package/dist/AdminRoot-9KE3ll-D.js.map +1 -0
- package/dist/AdminRoot-BMzHo0n7.cjs +2 -0
- package/dist/AdminRoot-BMzHo0n7.cjs.map +1 -0
- package/dist/Alert-BFfzpPNd.js +70 -0
- package/dist/{Alert-D6oBxBdP.js.map → Alert-BFfzpPNd.js.map} +1 -1
- package/dist/Alert-DS8TzpIS.cjs +2 -0
- package/dist/{Alert-C8BBxL_7.cjs.map → Alert-DS8TzpIS.cjs.map} +1 -1
- package/dist/{AuthLayout-q8pbCGdt.js → AuthLayout-BI1wLuDl.js} +2 -2
- package/dist/{AuthLayout-q8pbCGdt.js.map → AuthLayout-BI1wLuDl.js.map} +1 -1
- package/dist/{AuthLayout-exuNQicH.cjs → AuthLayout-Bzlsvicf.cjs} +2 -2
- package/dist/{AuthLayout-exuNQicH.cjs.map → AuthLayout-Bzlsvicf.cjs.map} +1 -1
- package/dist/{Avatar-l48Ice6t.cjs → Avatar-BBqX1732.cjs} +2 -2
- package/dist/{Avatar-l48Ice6t.cjs.map → Avatar-BBqX1732.cjs.map} +1 -1
- package/dist/{Avatar-ClcmN0ba.js → Avatar-CaYyv5wk.js} +2 -2
- package/dist/{Avatar-ClcmN0ba.js.map → Avatar-CaYyv5wk.js.map} +1 -1
- package/dist/{AvatarGroup-l-KV3wdl.js → AvatarGroup-6fhm-van.js} +2 -2
- package/dist/{AvatarGroup-l-KV3wdl.js.map → AvatarGroup-6fhm-van.js.map} +1 -1
- package/dist/{AvatarGroup-CuvFX4di.cjs → AvatarGroup-DrkzAt1-.cjs} +2 -2
- package/dist/{AvatarGroup-CuvFX4di.cjs.map → AvatarGroup-DrkzAt1-.cjs.map} +1 -1
- package/dist/Breadcrumbs-CloqFpp1.js +34 -0
- package/dist/{Breadcrumbs-cXET6OM5.js.map → Breadcrumbs-CloqFpp1.js.map} +1 -1
- package/dist/Breadcrumbs-N2-sZWW5.cjs +2 -0
- package/dist/{Breadcrumbs-B-olYVdw.cjs.map → Breadcrumbs-N2-sZWW5.cjs.map} +1 -1
- package/dist/Button-5LQtDA9d.js +72 -0
- package/dist/{Button-0ZgdNjX-.js.map → Button-5LQtDA9d.js.map} +1 -1
- package/dist/Button-Bxztlybi.cjs +2 -0
- package/dist/{Button-CwrDiZek.cjs.map → Button-Bxztlybi.cjs.map} +1 -1
- package/dist/{Calendar-CxzdnzdK.js → Calendar-BIKo_aus.js} +5 -5
- package/dist/{Calendar-CxzdnzdK.js.map → Calendar-BIKo_aus.js.map} +1 -1
- package/dist/{Calendar-d3CX5UJp.cjs → Calendar-CsBgaKZ-.cjs} +2 -2
- package/dist/{Calendar-d3CX5UJp.cjs.map → Calendar-CsBgaKZ-.cjs.map} +1 -1
- package/dist/{Card-CxnUoWsi.cjs → Card-Csn3FaMl.cjs} +2 -2
- package/dist/{Card-CxnUoWsi.cjs.map → Card-Csn3FaMl.cjs.map} +1 -1
- package/dist/{Card-CjqStov5.js → Card-DMwQ7rMk.js} +4 -4
- package/dist/{Card-CjqStov5.js.map → Card-DMwQ7rMk.js.map} +1 -1
- package/dist/Chip-BdCZ44I8.cjs +2 -0
- package/dist/{Chip-BkU3yx6G.cjs.map → Chip-BdCZ44I8.cjs.map} +1 -1
- package/dist/Chip-C7IkFuM1.js +92 -0
- package/dist/{Chip-CzJjbaKx.js.map → Chip-C7IkFuM1.js.map} +1 -1
- package/dist/ChoiceCardGroup-Cj_YFj6C.cjs +2 -0
- package/dist/{ChoiceCardGroup-C7Eengyd.cjs.map → ChoiceCardGroup-Cj_YFj6C.cjs.map} +1 -1
- package/dist/ChoiceCardGroup-D37XREKV.js +180 -0
- package/dist/{ChoiceCardGroup-q0yN-TeQ.js.map → ChoiceCardGroup-D37XREKV.js.map} +1 -1
- package/dist/CodeBlock-BnXxxqAW.cjs +2 -0
- package/dist/{CodeBlock-DRBQ_S5t.cjs.map → CodeBlock-BnXxxqAW.cjs.map} +1 -1
- package/dist/CodeBlock-C10JN6DR.js +96 -0
- package/dist/{CodeBlock-BHcvQrs9.js.map → CodeBlock-C10JN6DR.js.map} +1 -1
- package/dist/{ColorPicker-BzCEMN7B.cjs → ColorPicker-CVddGc-n.cjs} +2 -2
- package/dist/{ColorPicker-BzCEMN7B.cjs.map → ColorPicker-CVddGc-n.cjs.map} +1 -1
- package/dist/{ColorPicker-BQKFdTNr.js → ColorPicker-z8_-77LO.js} +3 -3
- package/dist/{ColorPicker-BQKFdTNr.js.map → ColorPicker-z8_-77LO.js.map} +1 -1
- package/dist/{ColorPickerPanel-kl2jUix-.cjs → ColorPickerPanel-DJY6-EqO.cjs} +2 -2
- package/dist/{ColorPickerPanel-kl2jUix-.cjs.map → ColorPickerPanel-DJY6-EqO.cjs.map} +1 -1
- package/dist/{ColorPickerPanel-DKTKC9KH.js → ColorPickerPanel-y4A2LLLf.js} +3 -3
- package/dist/{ColorPickerPanel-DKTKC9KH.js.map → ColorPickerPanel-y4A2LLLf.js.map} +1 -1
- package/dist/{ColorRamp-n7muILK3.cjs → ColorRamp-DvRsdOWy.cjs} +2 -2
- package/dist/{ColorRamp-n7muILK3.cjs.map → ColorRamp-DvRsdOWy.cjs.map} +1 -1
- package/dist/{ColorRamp-yfMyJCyx.js → ColorRamp-Dvit8yoP.js} +2 -2
- package/dist/{ColorRamp-yfMyJCyx.js.map → ColorRamp-Dvit8yoP.js.map} +1 -1
- package/dist/{ConfigProvider-D61cpCz-.js → ConfigProvider-CYgmMH4j.js} +133 -126
- package/dist/ConfigProvider-CYgmMH4j.js.map +1 -0
- package/dist/ConfigProvider-Cf-awvZs.cjs +2 -0
- package/dist/ConfigProvider-Cf-awvZs.cjs.map +1 -0
- package/dist/{CopyButton-DlSi82gv.cjs → CopyButton-BOp7waEt.cjs} +2 -2
- package/dist/{CopyButton-DlSi82gv.cjs.map → CopyButton-BOp7waEt.cjs.map} +1 -1
- package/dist/{CopyButton-ecxn-ghi.js → CopyButton-_iMBE4q_.js} +4 -4
- package/dist/{CopyButton-ecxn-ghi.js.map → CopyButton-_iMBE4q_.js.map} +1 -1
- package/dist/DashedButton-BX8hfY1x.cjs +2 -0
- package/dist/{DashedButton-Dw7xHgIp.cjs.map → DashedButton-BX8hfY1x.cjs.map} +1 -1
- package/dist/DashedButton-wcmXTYBw.js +58 -0
- package/dist/{DashedButton-csz6Jt_K.js.map → DashedButton-wcmXTYBw.js.map} +1 -1
- package/dist/{DatePicker-BjZ_P21i.cjs → DatePicker-UQwpH-rw.cjs} +2 -2
- package/dist/{DatePicker-BjZ_P21i.cjs.map → DatePicker-UQwpH-rw.cjs.map} +1 -1
- package/dist/{DatePicker-CAGpJbDi.js → DatePicker-X5hZVSW6.js} +6 -6
- package/dist/{DatePicker-CAGpJbDi.js.map → DatePicker-X5hZVSW6.js.map} +1 -1
- package/dist/DatePicker.module-BaQyKOUM.cjs +2 -0
- package/dist/{DatePicker.module-BDtTsg8M.cjs.map → DatePicker.module-BaQyKOUM.cjs.map} +1 -1
- package/dist/DatePicker.module-DoywSvLu.js +138 -0
- package/dist/{DatePicker.module-CMMQyEhG.js.map → DatePicker.module-DoywSvLu.js.map} +1 -1
- package/dist/{DateTimePicker-BJmF0Su6.js → DateTimePicker-Ch1kUHEb.js} +9 -9
- package/dist/{DateTimePicker-BJmF0Su6.js.map → DateTimePicker-Ch1kUHEb.js.map} +1 -1
- package/dist/{DateTimePicker-DZqWQeUL.cjs → DateTimePicker-ClTZGMON.cjs} +2 -2
- package/dist/{DateTimePicker-DZqWQeUL.cjs.map → DateTimePicker-ClTZGMON.cjs.map} +1 -1
- package/dist/{DescriptionList-Knq5eCiY.js → DescriptionList-Cque-iYk.js} +69 -69
- package/dist/{DescriptionList-Knq5eCiY.js.map → DescriptionList-Cque-iYk.js.map} +1 -1
- package/dist/DescriptionList-IVAvgpEL.cjs +2 -0
- package/dist/{DescriptionList-CvPDn-kh.cjs.map → DescriptionList-IVAvgpEL.cjs.map} +1 -1
- package/dist/Dropdown-C_y9_dVn.cjs +2 -0
- package/dist/Dropdown-C_y9_dVn.cjs.map +1 -0
- package/dist/Dropdown-D-D_Z1Jo.js +154 -0
- package/dist/Dropdown-D-D_Z1Jo.js.map +1 -0
- package/dist/{EmptyState-CX1g47y_.cjs → EmptyState-C84B-E8a.cjs} +2 -2
- package/dist/{EmptyState-CX1g47y_.cjs.map → EmptyState-C84B-E8a.cjs.map} +1 -1
- package/dist/{EmptyState-Dqtpmtje.js → EmptyState-Yts_p-jZ.js} +3 -3
- package/dist/{EmptyState-Dqtpmtje.js.map → EmptyState-Yts_p-jZ.js.map} +1 -1
- package/dist/{ErrorBoundary-Dos7VLb-.js → ErrorBoundary-BgMOPle0.js} +3 -3
- package/dist/{ErrorBoundary-Dos7VLb-.js.map → ErrorBoundary-BgMOPle0.js.map} +1 -1
- package/dist/{ErrorBoundary-B8KwWXXp.cjs → ErrorBoundary-DtYswKp3.cjs} +2 -2
- package/dist/{ErrorBoundary-B8KwWXXp.cjs.map → ErrorBoundary-DtYswKp3.cjs.map} +1 -1
- package/dist/{ErrorState-CwCqd2PU.cjs → ErrorState-Aa8LVjkl.cjs} +2 -2
- package/dist/{ErrorState-CwCqd2PU.cjs.map → ErrorState-Aa8LVjkl.cjs.map} +1 -1
- package/dist/{ErrorState-KhzrGIJ-.js → ErrorState-BE9Rcmht.js} +8 -8
- package/dist/{ErrorState-KhzrGIJ-.js.map → ErrorState-BE9Rcmht.js.map} +1 -1
- package/dist/FileCard-Chfx0QdF.cjs +2 -0
- package/dist/{FileCard-DEc10T2G.cjs.map → FileCard-Chfx0QdF.cjs.map} +1 -1
- package/dist/{FileCard-SSuFS13E.js → FileCard-m3i_8yKR.js} +33 -33
- package/dist/{FileCard-SSuFS13E.js.map → FileCard-m3i_8yKR.js.map} +1 -1
- package/dist/FileUploader-B27Y4rak.js +706 -0
- package/dist/FileUploader-B27Y4rak.js.map +1 -0
- package/dist/FileUploader-DkvFO0N_.cjs +2 -0
- package/dist/FileUploader-DkvFO0N_.cjs.map +1 -0
- package/dist/{Flag-B1ZvZVXi.cjs → Flag-BvZB3295.cjs} +2 -2
- package/dist/{Flag-B1ZvZVXi.cjs.map → Flag-BvZB3295.cjs.map} +1 -1
- package/dist/{Flag-BEIqYQZg.js → Flag-C1HwnZXJ.js} +2 -2
- package/dist/{Flag-BEIqYQZg.js.map → Flag-C1HwnZXJ.js.map} +1 -1
- package/dist/{FullscreenToggle-I_In47BB.js → FullscreenToggle-B4ynXdCP.js} +4 -4
- package/dist/{FullscreenToggle-I_In47BB.js.map → FullscreenToggle-B4ynXdCP.js.map} +1 -1
- package/dist/{FullscreenToggle-Po769CoC.cjs → FullscreenToggle-CEFZQ5OC.cjs} +2 -2
- package/dist/{FullscreenToggle-Po769CoC.cjs.map → FullscreenToggle-CEFZQ5OC.cjs.map} +1 -1
- package/dist/Icon-B7DJn8Tw.js +5418 -0
- package/dist/Icon-B7DJn8Tw.js.map +1 -0
- package/dist/Icon-CBg21lKA.cjs +2 -0
- package/dist/Icon-CBg21lKA.cjs.map +1 -0
- package/dist/IconButton-EaExCXRq.js +68 -0
- package/dist/{IconButton-D9MCwRK_.js.map → IconButton-EaExCXRq.js.map} +1 -1
- package/dist/IconButton-wW1o4HHw.cjs +2 -0
- package/dist/{IconButton-CxSXEYce.cjs.map → IconButton-wW1o4HHw.cjs.map} +1 -1
- package/dist/ImageEditor-DTFQZ6ON.js +2709 -0
- package/dist/ImageEditor-DTFQZ6ON.js.map +1 -0
- package/dist/ImageEditor-D_HKfDbx.cjs +60 -0
- package/dist/ImageEditor-D_HKfDbx.cjs.map +1 -0
- package/dist/Link-BZjolIAF.js +48 -0
- package/dist/{Link-BQlvsu9V.js.map → Link-BZjolIAF.js.map} +1 -1
- package/dist/Link-CtttVM6w.cjs +2 -0
- package/dist/{Link-GZT51mKx.cjs.map → Link-CtttVM6w.cjs.map} +1 -1
- package/dist/{List-CKoNx21F.cjs → List-CLUXeaXS.cjs} +2 -2
- package/dist/{List-CKoNx21F.cjs.map → List-CLUXeaXS.cjs.map} +1 -1
- package/dist/{List-2Y3ktTcF.js → List-DS91CZUt.js} +2 -2
- package/dist/{List-2Y3ktTcF.js.map → List-DS91CZUt.js.map} +1 -1
- package/dist/ListItem-CguNjf-u.cjs +2 -0
- package/dist/{ListItem-DkCYXucd.cjs.map → ListItem-CguNjf-u.cjs.map} +1 -1
- package/dist/ListItem-Ezmdk7q-.js +76 -0
- package/dist/{ListItem-2Lr5_NRY.js.map → ListItem-Ezmdk7q-.js.map} +1 -1
- package/dist/{Loader-5zp2MPm5.cjs → Loader-DNR2_YHm.cjs} +2 -2
- package/dist/{Loader-5zp2MPm5.cjs.map → Loader-DNR2_YHm.cjs.map} +1 -1
- package/dist/{Loader-Bluu6z0-.js → Loader-D_Foo6Hj.js} +2 -2
- package/dist/{Loader-Bluu6z0-.js.map → Loader-D_Foo6Hj.js.map} +1 -1
- package/dist/{LocationPicker-CGHXTIml.cjs → LocationPicker-CdO37PKg.cjs} +2 -2
- package/dist/{LocationPicker-CGHXTIml.cjs.map → LocationPicker-CdO37PKg.cjs.map} +1 -1
- package/dist/{LocationPicker-hULpHBVG.js → LocationPicker-DGbnbTW9.js} +8 -8
- package/dist/{LocationPicker-hULpHBVG.js.map → LocationPicker-DGbnbTW9.js.map} +1 -1
- package/dist/Modal-1rIBMvKH.js +154 -0
- package/dist/Modal-1rIBMvKH.js.map +1 -0
- package/dist/Modal-Du-uVpYw.cjs +2 -0
- package/dist/Modal-Du-uVpYw.cjs.map +1 -0
- package/dist/MultiSelect-BoqunsM9.js +219 -0
- package/dist/{MultiSelect-CHLMpim4.js.map → MultiSelect-BoqunsM9.js.map} +1 -1
- package/dist/MultiSelect-lAAaD0uL.cjs +2 -0
- package/dist/{MultiSelect-BdPvjiTj.cjs.map → MultiSelect-lAAaD0uL.cjs.map} +1 -1
- package/dist/{NumberField-C-FZ-uRI.cjs → NumberField-CyUA6eob.cjs} +2 -2
- package/dist/{NumberField-C-FZ-uRI.cjs.map → NumberField-CyUA6eob.cjs.map} +1 -1
- package/dist/{NumberField-BlpFmetF.js → NumberField-DHFGNQjZ.js} +4 -4
- package/dist/{NumberField-BlpFmetF.js.map → NumberField-DHFGNQjZ.js.map} +1 -1
- package/dist/OtpField-CIy5OtXI.cjs +2 -0
- package/dist/{OtpField-Drjy2wwq.cjs.map → OtpField-CIy5OtXI.cjs.map} +1 -1
- package/dist/{OtpField-D4-r7I0A.js → OtpField-pL9nj4AW.js} +61 -61
- package/dist/{OtpField-D4-r7I0A.js.map → OtpField-pL9nj4AW.js.map} +1 -1
- package/dist/Overlay-CywFQfjm.cjs +2 -0
- package/dist/Overlay-CywFQfjm.cjs.map +1 -0
- package/dist/Overlay-DiL0ZARH.js +60 -0
- package/dist/Overlay-DiL0ZARH.js.map +1 -0
- package/dist/{PageError-DyDj1wQZ.js → PageError-C5SO0mVJ.js} +5 -5
- package/dist/{PageError-DyDj1wQZ.js.map → PageError-C5SO0mVJ.js.map} +1 -1
- package/dist/{PageError-DXUOkE14.cjs → PageError-DbokLmOY.cjs} +2 -2
- package/dist/{PageError-DXUOkE14.cjs.map → PageError-DbokLmOY.cjs.map} +1 -1
- package/dist/{PageLayout-CoG0AaUs.cjs → PageLayout-B7ZDiNq8.cjs} +2 -2
- package/dist/{PageLayout-CoG0AaUs.cjs.map → PageLayout-B7ZDiNq8.cjs.map} +1 -1
- package/dist/{PageLayout-nsJa8CbT.js → PageLayout-Du-D6Pd4.js} +5 -5
- package/dist/{PageLayout-nsJa8CbT.js.map → PageLayout-Du-D6Pd4.js.map} +1 -1
- package/dist/{PageNotFound-BNNwMkwE.js → PageNotFound-DSkoMfed.js} +5 -5
- package/dist/{PageNotFound-BNNwMkwE.js.map → PageNotFound-DSkoMfed.js.map} +1 -1
- package/dist/{PageNotFound-CGSxT_n9.cjs → PageNotFound-DfNwdtgJ.cjs} +2 -2
- package/dist/{PageNotFound-CGSxT_n9.cjs.map → PageNotFound-DfNwdtgJ.cjs.map} +1 -1
- package/dist/Pagination-BH8ACaAC.js +139 -0
- package/dist/{Pagination-tuWRnGwR.js.map → Pagination-BH8ACaAC.js.map} +1 -1
- package/dist/Pagination-DO2Os4an.cjs +2 -0
- package/dist/{Pagination-CZtewveA.cjs.map → Pagination-DO2Os4an.cjs.map} +1 -1
- package/dist/{PaletteField-CTPl3D43.js → PaletteField-BFb0PQ-S.js} +3 -3
- package/dist/{PaletteField-CTPl3D43.js.map → PaletteField-BFb0PQ-S.js.map} +1 -1
- package/dist/{PaletteField-PDcu2vUp.cjs → PaletteField-BfvcJvGM.cjs} +2 -2
- package/dist/{PaletteField-PDcu2vUp.cjs.map → PaletteField-BfvcJvGM.cjs.map} +1 -1
- package/dist/PhoneField-C-wOm7g5.cjs +2 -0
- package/dist/{PhoneField-BPYg5ZHW.cjs.map → PhoneField-C-wOm7g5.cjs.map} +1 -1
- package/dist/{PhoneField-pdWDCszb.js → PhoneField-DFhGWgbK.js} +106 -106
- package/dist/{PhoneField-pdWDCszb.js.map → PhoneField-DFhGWgbK.js.map} +1 -1
- package/dist/{Popconfirm-cNpJmkuR.cjs → Popconfirm-_53vtMI0.cjs} +2 -2
- package/dist/{Popconfirm-cNpJmkuR.cjs.map → Popconfirm-_53vtMI0.cjs.map} +1 -1
- package/dist/{Popconfirm-CMVzLaC_.js → Popconfirm-o5da44ra.js} +4 -4
- package/dist/{Popconfirm-CMVzLaC_.js.map → Popconfirm-o5da44ra.js.map} +1 -1
- package/dist/{Progress-x12Rkh06.cjs → Progress-BSinoQ8t.cjs} +2 -2
- package/dist/{Progress-x12Rkh06.cjs.map → Progress-BSinoQ8t.cjs.map} +1 -1
- package/dist/{Progress-BNEFGn-O.js → Progress-CHzNwegP.js} +2 -2
- package/dist/{Progress-BNEFGn-O.js.map → Progress-CHzNwegP.js.map} +1 -1
- package/dist/{QrCode-CrNJZV_8.js → QrCode-C3hAfNP6.js} +2 -2
- package/dist/{QrCode-CrNJZV_8.js.map → QrCode-C3hAfNP6.js.map} +1 -1
- package/dist/{QrCode-TcQQE0h7.cjs → QrCode-tNNnsbHM.cjs} +2 -2
- package/dist/{QrCode-TcQQE0h7.cjs.map → QrCode-tNNnsbHM.cjs.map} +1 -1
- package/dist/{RemoveDialog-ARFp1UJM.js → RemoveDialog-CXy-PY-G.js} +6 -6
- package/dist/{RemoveDialog-ARFp1UJM.js.map → RemoveDialog-CXy-PY-G.js.map} +1 -1
- package/dist/{RemoveDialog-IWOAQFNK.cjs → RemoveDialog-Hi_gV-8A.cjs} +2 -2
- package/dist/{RemoveDialog-IWOAQFNK.cjs.map → RemoveDialog-Hi_gV-8A.cjs.map} +1 -1
- package/dist/RichTextEditor-BhVE1q4U.cjs +2 -0
- package/dist/RichTextEditor-BhVE1q4U.cjs.map +1 -0
- package/dist/RichTextEditor-DQz9jGD3.js +1011 -0
- package/dist/RichTextEditor-DQz9jGD3.js.map +1 -0
- package/dist/{RootLayout-CZ2GQ8XA.js → RootLayout-CjT5uHlt.js} +21 -21
- package/dist/RootLayout-CjT5uHlt.js.map +1 -0
- package/dist/{RootLayout-DStUP263.cjs → RootLayout-iSGY4MsS.cjs} +2 -2
- package/dist/RootLayout-iSGY4MsS.cjs.map +1 -0
- package/dist/Select-DVoL547R.cjs +2 -0
- package/dist/{Select-C2DIfuoB.cjs.map → Select-DVoL547R.cjs.map} +1 -1
- package/dist/{Select-KGsA8PbI.js → Select-DuLDLnnb.js} +47 -47
- package/dist/{Select-KGsA8PbI.js.map → Select-DuLDLnnb.js.map} +1 -1
- package/dist/Sidebar-DRQo4zAF.cjs +2 -0
- package/dist/{Sidebar-wK1_xaY_.cjs.map → Sidebar-DRQo4zAF.cjs.map} +1 -1
- package/dist/{Sidebar-_pcwxdd8.js → Sidebar-DvQmuBNK.js} +59 -59
- package/dist/{Sidebar-_pcwxdd8.js.map → Sidebar-DvQmuBNK.js.map} +1 -1
- package/dist/{Slider-Cpc5_dPl.js → Slider-D-QjclQJ.js} +2 -2
- package/dist/{Slider-Cpc5_dPl.js.map → Slider-D-QjclQJ.js.map} +1 -1
- package/dist/{Slider-CXAz9SUY.cjs → Slider-DxnCQRSH.cjs} +2 -2
- package/dist/{Slider-CXAz9SUY.cjs.map → Slider-DxnCQRSH.cjs.map} +1 -1
- package/dist/{SpeedDial-BT_boD06.cjs → SpeedDial-37OMwj9C.cjs} +2 -2
- package/dist/{SpeedDial-BT_boD06.cjs.map → SpeedDial-37OMwj9C.cjs.map} +1 -1
- package/dist/{SpeedDial-SMMfes9f.js → SpeedDial-BBQ9y6lm.js} +3 -3
- package/dist/{SpeedDial-SMMfes9f.js.map → SpeedDial-BBQ9y6lm.js.map} +1 -1
- package/dist/Stepper-CU5Y0kfj.js +168 -0
- package/dist/{Stepper-CR0Mlkq7.js.map → Stepper-CU5Y0kfj.js.map} +1 -1
- package/dist/Stepper-WqkfGPnQ.cjs +2 -0
- package/dist/{Stepper-BmA_DjTS.cjs.map → Stepper-WqkfGPnQ.cjs.map} +1 -1
- package/dist/{SwatchPicker-0gnOvv7U.cjs → SwatchPicker-DCjE0T80.cjs} +2 -2
- package/dist/{SwatchPicker-0gnOvv7U.cjs.map → SwatchPicker-DCjE0T80.cjs.map} +1 -1
- package/dist/{SwatchPicker-BZHRELA-.js → SwatchPicker-DS4WY2eM.js} +2 -2
- package/dist/{SwatchPicker-BZHRELA-.js.map → SwatchPicker-DS4WY2eM.js.map} +1 -1
- package/dist/{Table-D-F68lcm.js → Table-BECUUZtf.js} +346 -346
- package/dist/Table-BECUUZtf.js.map +1 -0
- package/dist/Table-BnlvrRMr.cjs +2 -0
- package/dist/Table-BnlvrRMr.cjs.map +1 -0
- package/dist/Tabs-BXAHddi7.js +193 -0
- package/dist/{Tabs-DP0aZ5TB.js.map → Tabs-BXAHddi7.js.map} +1 -1
- package/dist/Tabs-DiL1vNW3.cjs +2 -0
- package/dist/{Tabs-Cgp6D1WP.cjs.map → Tabs-DiL1vNW3.cjs.map} +1 -1
- package/dist/{TagsField-9nKu6ZW4.cjs → TagsField-BsV_6dff.cjs} +2 -2
- package/dist/{TagsField-9nKu6ZW4.cjs.map → TagsField-BsV_6dff.cjs.map} +1 -1
- package/dist/{TagsField-CcY9MTMw.js → TagsField-C1SgykAj.js} +5 -5
- package/dist/{TagsField-CcY9MTMw.js.map → TagsField-C1SgykAj.js.map} +1 -1
- package/dist/{TextField-C5MgCQIV.cjs → TextField-DUv689u2.cjs} +2 -2
- package/dist/{TextField-C5MgCQIV.cjs.map → TextField-DUv689u2.cjs.map} +1 -1
- package/dist/{TextField-0WvJsHhA.js → TextField-oZI7thoU.js} +4 -4
- package/dist/{TextField-0WvJsHhA.js.map → TextField-oZI7thoU.js.map} +1 -1
- package/dist/{ThemeToggle-DmCePuTy.js → ThemeToggle-5uHCUsX7.js} +4 -4
- package/dist/{ThemeToggle-DmCePuTy.js.map → ThemeToggle-5uHCUsX7.js.map} +1 -1
- package/dist/{ThemeToggle-BvcCxRpF.cjs → ThemeToggle-xn3roH0u.cjs} +2 -2
- package/dist/{ThemeToggle-BvcCxRpF.cjs.map → ThemeToggle-xn3roH0u.cjs.map} +1 -1
- package/dist/TimeColumns-By23LHZw.cjs +2 -0
- package/dist/{TimeColumns-Q-vsHFZU.cjs.map → TimeColumns-By23LHZw.cjs.map} +1 -1
- package/dist/TimeColumns-lO33mhX7.js +147 -0
- package/dist/{TimeColumns-WJRHQuFv.js.map → TimeColumns-lO33mhX7.js.map} +1 -1
- package/dist/{TimePicker-CvbQFzBf.cjs → TimePicker-BHFNH8LR.cjs} +2 -2
- package/dist/{TimePicker-CvbQFzBf.cjs.map → TimePicker-BHFNH8LR.cjs.map} +1 -1
- package/dist/{TimePicker-DJDuSxAg.js → TimePicker-Dl5p833O.js} +7 -7
- package/dist/{TimePicker-DJDuSxAg.js.map → TimePicker-Dl5p833O.js.map} +1 -1
- package/dist/Timeline-DOojNvLG.cjs +2 -0
- package/dist/Timeline-DOojNvLG.cjs.map +1 -0
- package/dist/Timeline-Dg03dwTN.js +87 -0
- package/dist/Timeline-Dg03dwTN.js.map +1 -0
- package/dist/Toaster-BPBFZiTr.js +64 -0
- package/dist/Toaster-BPBFZiTr.js.map +1 -0
- package/dist/Toaster-D4T89N1S.cjs +2 -0
- package/dist/Toaster-D4T89N1S.cjs.map +1 -0
- package/dist/ToggleButtonGroup-CGNRLxjg.cjs +2 -0
- package/dist/{ToggleButtonGroup-Ci_DFvdt.cjs.map → ToggleButtonGroup-CGNRLxjg.cjs.map} +1 -1
- package/dist/{ToggleButtonGroup-Mdskkjdh.js → ToggleButtonGroup-K6ZcrTZT.js} +37 -37
- package/dist/{ToggleButtonGroup-Mdskkjdh.js.map → ToggleButtonGroup-K6ZcrTZT.js.map} +1 -1
- package/dist/{TranslatedFields-DKXznBtD.js → TranslatedFields-Clsr84XC.js} +13 -13
- package/dist/{TranslatedFields-DKXznBtD.js.map → TranslatedFields-Clsr84XC.js.map} +1 -1
- package/dist/{TranslatedFields-CuK5KKzE.cjs → TranslatedFields-LdeJeHEp.cjs} +2 -2
- package/dist/{TranslatedFields-CuK5KKzE.cjs.map → TranslatedFields-LdeJeHEp.cjs.map} +1 -1
- package/dist/{UserCard-DbudGMvG.cjs → UserCard-CQOiWppq.cjs} +2 -2
- package/dist/{UserCard-DbudGMvG.cjs.map → UserCard-CQOiWppq.cjs.map} +1 -1
- package/dist/{UserCard-UG_Cwe-Y.js → UserCard-Cr75RwZb.js} +5 -5
- package/dist/{UserCard-UG_Cwe-Y.js.map → UserCard-Cr75RwZb.js.map} +1 -1
- package/dist/app/AdminRoot.d.cts +11 -3
- package/dist/app/AdminRoot.d.ts +11 -3
- package/dist/chunks/icons/{25-knEB8mSp.js → 25-BMMPtr_E.js} +4 -5
- package/dist/chunks/icons/{25-Dho_3EHD.cjs → 25-uATZNfXE.cjs} +1 -1
- package/dist/chunks/icons/{2b-CQJdcF1h.js → 2b-Brkug4c-.js} +10 -11
- package/dist/chunks/icons/{2b-C2_97u16.cjs → 2b-CIVRGp1R.cjs} +1 -1
- package/dist/chunks/icons/57-BLoIUlhF.js +27 -0
- package/dist/chunks/icons/57-D4zLdDZ1.cjs +1 -0
- package/dist/chunks/icons/{75-DqLkMUyj.cjs → 75-C2eJ2Tvr.cjs} +1 -1
- package/dist/chunks/icons/{75-D5RQw6IJ.js → 75-D16WojvG.js} +6 -7
- package/dist/chunks/icons/{7c-DpnA_JOJ.js → 7c-0j5Sno5_.js} +6 -7
- package/dist/chunks/icons/{7c-DEaFwltT.cjs → 7c-LUfAyp72.cjs} +1 -1
- package/dist/chunks/icons/8a-BJ_LOjmW.js +26 -0
- package/dist/chunks/icons/8a-CYkhOibI.cjs +1 -0
- package/dist/chunks/icons/97-Bx7FkkGJ.js +12 -0
- package/dist/chunks/icons/97-D7pUHrOX.cjs +1 -0
- package/dist/chunks/icons/{b7-BtHkI92Y.js → b7-DmmkevXf.js} +17 -18
- package/dist/chunks/icons/{b7-B-dB5jrV.cjs → b7-rI1GpsxW.cjs} +1 -1
- package/dist/chunks/icons/b8-De0yKEKv.js +28 -0
- package/dist/chunks/icons/b8-eR814BVJ.cjs +1 -0
- package/dist/chunks/icons/{b9-Bw942fE3.js → b9-CJO6ZdSw.js} +10 -11
- package/dist/chunks/icons/{b9-Be-J4RIp.cjs → b9-DZdWz9qg.cjs} +1 -1
- package/dist/chunks/icons/d5-BAPeb6B0.cjs +1 -0
- package/dist/chunks/icons/d5-BJJanOLe.js +21 -0
- package/dist/chunks/icons/d8--vRkIVal.js +19 -0
- package/dist/chunks/icons/d8-BfMys92X.cjs +1 -0
- package/dist/chunks/icons/dd-CARhkHmU.js +21 -0
- package/dist/chunks/icons/dd-D61yllMP.cjs +1 -0
- package/dist/components/Accordion/index.cjs +1 -1
- package/dist/components/Accordion/index.js +1 -1
- 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/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/index.cjs +1 -1
- package/dist/components/Card/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/DashedButton/index.cjs +1 -1
- package/dist/components/DashedButton/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/index.cjs +1 -1
- package/dist/components/DescriptionList/index.js +1 -1
- package/dist/components/Dropdown/index.cjs +1 -1
- package/dist/components/Dropdown/index.js +1 -1
- package/dist/components/EmptyState/index.cjs +1 -1
- package/dist/components/EmptyState/index.js +1 -1
- package/dist/components/ErrorState/ErrorBoundary.d.cts +1 -1
- package/dist/components/ErrorState/ErrorBoundary.d.ts +1 -1
- package/dist/components/ErrorState/index.cjs +1 -1
- package/dist/components/ErrorState/index.js +2 -2
- package/dist/components/FileCard/index.cjs +1 -1
- package/dist/components/FileCard/index.js +1 -1
- package/dist/components/FileUploader/FileUploader.d.cts +33 -5
- package/dist/components/FileUploader/FileUploader.d.ts +33 -5
- package/dist/components/FileUploader/FileUploaderEditDialog.d.cts +8 -18
- package/dist/components/FileUploader/FileUploaderEditDialog.d.ts +8 -18
- 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/FullscreenToggle/index.cjs +1 -1
- package/dist/components/FullscreenToggle/index.js +1 -1
- package/dist/components/Icon/index.cjs +1 -1
- package/dist/components/Icon/index.js +1 -1
- package/dist/components/IconButton/index.cjs +1 -1
- package/dist/components/IconButton/index.js +1 -1
- package/dist/components/ImageEditor/CropShapeMenu.d.cts +17 -0
- package/dist/components/ImageEditor/CropShapeMenu.d.ts +17 -0
- package/dist/components/ImageEditor/EditorStage.d.cts +27 -0
- package/dist/components/ImageEditor/EditorStage.d.ts +27 -0
- package/dist/components/ImageEditor/FilterStrip.d.cts +14 -0
- package/dist/components/ImageEditor/FilterStrip.d.ts +14 -0
- package/dist/components/ImageEditor/ImageEditor.d.cts +30 -0
- package/dist/components/ImageEditor/ImageEditor.d.ts +30 -0
- package/dist/components/ImageEditor/ResizePanel.d.cts +19 -0
- package/dist/components/ImageEditor/ResizePanel.d.ts +19 -0
- package/dist/components/ImageEditor/RulerSlider.d.cts +37 -0
- package/dist/components/ImageEditor/RulerSlider.d.ts +37 -0
- package/dist/components/ImageEditor/core/affine.d.cts +11 -0
- package/dist/components/ImageEditor/core/affine.d.ts +11 -0
- package/dist/components/ImageEditor/core/editor.d.cts +69 -0
- package/dist/components/ImageEditor/core/editor.d.ts +69 -0
- package/dist/components/ImageEditor/core/geometry.d.cts +112 -0
- package/dist/components/ImageEditor/core/geometry.d.ts +112 -0
- package/dist/components/ImageEditor/core/load.d.cts +26 -0
- package/dist/components/ImageEditor/core/load.d.ts +26 -0
- package/dist/components/ImageEditor/core/matrix.d.cts +55 -0
- package/dist/components/ImageEditor/core/matrix.d.ts +55 -0
- package/dist/components/ImageEditor/core/pixels.d.cts +24 -0
- package/dist/components/ImageEditor/core/pixels.d.ts +24 -0
- package/dist/components/ImageEditor/core/redact.d.cts +37 -0
- package/dist/components/ImageEditor/core/redact.d.ts +37 -0
- package/dist/components/ImageEditor/core/render.d.cts +19 -0
- package/dist/components/ImageEditor/core/render.d.ts +19 -0
- package/dist/components/ImageEditor/core/scene.d.cts +47 -0
- package/dist/components/ImageEditor/core/scene.d.ts +47 -0
- package/dist/components/ImageEditor/core/spring.d.cts +17 -0
- package/dist/components/ImageEditor/core/spring.d.ts +17 -0
- package/dist/components/ImageEditor/core/types.d.cts +104 -0
- package/dist/components/ImageEditor/core/types.d.ts +104 -0
- package/dist/components/ImageEditor/core/webgl.d.cts +55 -0
- package/dist/components/ImageEditor/core/webgl.d.ts +55 -0
- package/dist/components/ImageEditor/index.cjs +2 -0
- package/dist/components/ImageEditor/index.cjs.map +1 -0
- package/dist/components/ImageEditor/index.d.cts +6 -0
- package/dist/components/ImageEditor/index.d.ts +6 -0
- package/dist/components/ImageEditor/index.js +9 -0
- package/dist/components/ImageEditor/index.js.map +1 -0
- package/dist/components/Link/index.cjs +1 -1
- package/dist/components/Link/index.js +1 -1
- package/dist/components/List/index.cjs +1 -1
- package/dist/components/List/index.js +2 -2
- package/dist/components/Loader/index.cjs +1 -1
- package/dist/components/Loader/index.js +1 -1
- package/dist/components/LocationPicker/index.cjs +1 -1
- package/dist/components/LocationPicker/index.js +1 -1
- 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/NumberField/index.cjs +1 -1
- package/dist/components/NumberField/index.js +1 -1
- package/dist/components/OtpField/index.cjs +1 -1
- package/dist/components/OtpField/index.js +1 -1
- package/dist/components/PageError/index.cjs +1 -1
- package/dist/components/PageError/index.js +1 -1
- package/dist/components/PageLayout/index.cjs +1 -1
- package/dist/components/PageLayout/index.js +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/index.cjs +1 -1
- package/dist/components/PhoneField/index.js +1 -1
- package/dist/components/Popconfirm/index.cjs +1 -1
- package/dist/components/Popconfirm/index.js +1 -1
- package/dist/components/Progress/index.cjs +1 -1
- package/dist/components/Progress/index.js +1 -1
- package/dist/components/QrCode/index.cjs +1 -1
- package/dist/components/QrCode/index.js +1 -1
- package/dist/components/RemoveDialog/index.cjs +1 -1
- package/dist/components/RemoveDialog/index.js +1 -1
- package/dist/components/RichTextEditor/RichTextEditor.d.cts +3 -2
- package/dist/components/RichTextEditor/RichTextEditor.d.ts +3 -2
- package/dist/components/RichTextEditor/index.cjs +1 -1
- package/dist/components/RichTextEditor/index.js +1 -1
- package/dist/components/RichTextEditor/nodes/ImageNode.d.cts +8 -5
- package/dist/components/RichTextEditor/nodes/ImageNode.d.ts +8 -5
- package/dist/components/RichTextEditor/nodes/VideoNode.d.cts +4 -4
- package/dist/components/RichTextEditor/nodes/VideoNode.d.ts +4 -4
- package/dist/components/RootLayout/RootLayout.d.cts +3 -2
- package/dist/components/RootLayout/RootLayout.d.ts +3 -2
- package/dist/components/RootLayout/index.cjs +1 -1
- package/dist/components/RootLayout/index.js +1 -1
- 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/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/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/Timeline/Timeline.d.cts +16 -4
- package/dist/components/Timeline/Timeline.d.ts +16 -4
- package/dist/components/Timeline/TimelineItem.d.cts +12 -6
- package/dist/components/Timeline/TimelineItem.d.ts +12 -6
- package/dist/components/Timeline/index.cjs +1 -1
- package/dist/components/Timeline/index.d.cts +1 -1
- package/dist/components/Timeline/index.d.ts +1 -1
- package/dist/components/Timeline/index.js +1 -1
- package/dist/components/Timeline/timelineContext.d.cts +3 -2
- package/dist/components/Timeline/timelineContext.d.ts +3 -2
- package/dist/components/Toast/Toaster.d.cts +10 -4
- package/dist/components/Toast/Toaster.d.ts +10 -4
- package/dist/components/Toast/index.cjs +1 -1
- package/dist/components/Toast/index.js +1 -1
- package/dist/components/ToggleButton/index.cjs +1 -1
- package/dist/components/ToggleButton/index.js +1 -1
- package/dist/components/TranslatedFields/index.cjs +1 -1
- package/dist/components/TranslatedFields/index.js +1 -1
- package/dist/components/UserCard/index.cjs +1 -1
- package/dist/components/UserCard/index.js +1 -1
- package/dist/components/index.d.cts +1 -0
- package/dist/components/index.d.ts +1 -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 +164 -159
- 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/icons.cjs +1 -1
- package/dist/entries/icons.js +1 -1
- package/dist/entries/theme.cjs +1 -1
- package/dist/entries/theme.d.cts +2 -2
- package/dist/entries/theme.d.ts +2 -2
- package/dist/entries/theme.js +14 -13
- package/dist/i18n/messages.d.cts +61 -4
- package/dist/i18n/messages.d.ts +61 -4
- package/dist/icons/names.d.cts +3 -3
- package/dist/icons/names.d.ts +3 -3
- package/dist/index.cjs +1 -1
- package/dist/index.css +1 -1
- package/dist/index.js +246 -240
- package/dist/index.js.map +1 -1
- package/dist/{messages-BiRLMy1E.js → messages-BZYBZ3GR.js} +101 -44
- package/dist/messages-BZYBZ3GR.js.map +1 -0
- package/dist/{messages-C_fRRCg6.cjs → messages-CTHjpVJq.cjs} +9 -9
- package/dist/messages-CTHjpVJq.cjs.map +1 -0
- package/dist/theme/ConfigProvider.d.cts +20 -0
- package/dist/theme/ConfigProvider.d.ts +20 -0
- package/dist/theme/index.d.cts +2 -2
- package/dist/theme/index.d.ts +2 -2
- package/dist/{useHomeTo-DQj9tVZI.js → useHomeTo-Biyc-Un8.js} +2 -2
- package/dist/{useHomeTo-DQj9tVZI.js.map → useHomeTo-Biyc-Un8.js.map} +1 -1
- package/dist/{useHomeTo-BaM7kBDh.cjs → useHomeTo-D7wcH6aw.cjs} +2 -2
- package/dist/{useHomeTo-BaM7kBDh.cjs.map → useHomeTo-D7wcH6aw.cjs.map} +1 -1
- package/dist/{useOptionMenu-BKC1y6oj.cjs → useOptionMenu-B40OOVsO.cjs} +2 -2
- package/dist/{useOptionMenu-BKC1y6oj.cjs.map → useOptionMenu-B40OOVsO.cjs.map} +1 -1
- package/dist/{useOptionMenu-Dom1-bqm.js → useOptionMenu-BTt8t9SM.js} +6 -6
- package/dist/{useOptionMenu-Dom1-bqm.js.map → useOptionMenu-BTt8t9SM.js.map} +1 -1
- package/package.json +1 -6
- package/dist/AdminRoot-DufZpgdm.js +0 -100
- package/dist/AdminRoot-DufZpgdm.js.map +0 -1
- package/dist/AdminRoot-DwJ5jdXr.cjs +0 -2
- package/dist/AdminRoot-DwJ5jdXr.cjs.map +0 -1
- package/dist/Alert-C8BBxL_7.cjs +0 -2
- package/dist/Alert-D6oBxBdP.js +0 -70
- package/dist/Breadcrumbs-B-olYVdw.cjs +0 -2
- package/dist/Breadcrumbs-cXET6OM5.js +0 -34
- package/dist/Button-0ZgdNjX-.js +0 -72
- package/dist/Button-CwrDiZek.cjs +0 -2
- package/dist/Chip-BkU3yx6G.cjs +0 -2
- package/dist/Chip-CzJjbaKx.js +0 -92
- package/dist/ChoiceCardGroup-C7Eengyd.cjs +0 -2
- package/dist/ChoiceCardGroup-q0yN-TeQ.js +0 -180
- package/dist/CodeBlock-BHcvQrs9.js +0 -96
- package/dist/CodeBlock-DRBQ_S5t.cjs +0 -2
- package/dist/ConfigProvider-BaiTKZKC.cjs +0 -2
- package/dist/ConfigProvider-BaiTKZKC.cjs.map +0 -1
- package/dist/ConfigProvider-D61cpCz-.js.map +0 -1
- package/dist/DashedButton-Dw7xHgIp.cjs +0 -2
- package/dist/DashedButton-csz6Jt_K.js +0 -58
- package/dist/DatePicker.module-BDtTsg8M.cjs +0 -2
- package/dist/DatePicker.module-CMMQyEhG.js +0 -138
- package/dist/DescriptionList-CvPDn-kh.cjs +0 -2
- package/dist/Dropdown-CMjURWYd.cjs +0 -2
- package/dist/Dropdown-CMjURWYd.cjs.map +0 -1
- package/dist/Dropdown-CnDBlB02.js +0 -146
- package/dist/Dropdown-CnDBlB02.js.map +0 -1
- package/dist/FileCard-DEc10T2G.cjs +0 -2
- package/dist/FileUploader-D58_6kDA.cjs +0 -2
- package/dist/FileUploader-D58_6kDA.cjs.map +0 -1
- package/dist/FileUploader-DfYOBFa4.js +0 -707
- package/dist/FileUploader-DfYOBFa4.js.map +0 -1
- package/dist/Icon-B6lz-V0A.cjs +0 -2
- package/dist/Icon-B6lz-V0A.cjs.map +0 -1
- package/dist/Icon-D5TxgfCc.js +0 -5404
- package/dist/Icon-D5TxgfCc.js.map +0 -1
- package/dist/IconButton-CxSXEYce.cjs +0 -2
- package/dist/IconButton-D9MCwRK_.js +0 -68
- package/dist/Link-BQlvsu9V.js +0 -48
- package/dist/Link-GZT51mKx.cjs +0 -2
- package/dist/ListItem-2Lr5_NRY.js +0 -76
- package/dist/ListItem-DkCYXucd.cjs +0 -2
- package/dist/Modal-C6Zgwz_6.js +0 -206
- package/dist/Modal-C6Zgwz_6.js.map +0 -1
- package/dist/Modal-D9_OG53G.cjs +0 -2
- package/dist/Modal-D9_OG53G.cjs.map +0 -1
- package/dist/MultiSelect-BdPvjiTj.cjs +0 -2
- package/dist/MultiSelect-CHLMpim4.js +0 -219
- package/dist/OtpField-Drjy2wwq.cjs +0 -2
- package/dist/Pagination-CZtewveA.cjs +0 -2
- package/dist/Pagination-tuWRnGwR.js +0 -139
- package/dist/PhoneField-BPYg5ZHW.cjs +0 -2
- package/dist/RichTextEditor-C9jT2cLl.cjs +0 -2
- package/dist/RichTextEditor-C9jT2cLl.cjs.map +0 -1
- package/dist/RichTextEditor-DrwJUEYz.js +0 -916
- package/dist/RichTextEditor-DrwJUEYz.js.map +0 -1
- package/dist/RootLayout-CZ2GQ8XA.js.map +0 -1
- package/dist/RootLayout-DStUP263.cjs.map +0 -1
- package/dist/Select-C2DIfuoB.cjs +0 -2
- package/dist/Sidebar-wK1_xaY_.cjs +0 -2
- package/dist/Stepper-BmA_DjTS.cjs +0 -2
- package/dist/Stepper-CR0Mlkq7.js +0 -168
- package/dist/Table-BkjY1Lwt.cjs +0 -2
- package/dist/Table-BkjY1Lwt.cjs.map +0 -1
- package/dist/Table-D-F68lcm.js.map +0 -1
- package/dist/Tabs-Cgp6D1WP.cjs +0 -2
- package/dist/Tabs-DP0aZ5TB.js +0 -193
- package/dist/TimeColumns-Q-vsHFZU.cjs +0 -2
- package/dist/TimeColumns-WJRHQuFv.js +0 -147
- package/dist/Timeline-Cb1krSlo.js +0 -70
- package/dist/Timeline-Cb1krSlo.js.map +0 -1
- package/dist/Timeline-CmluHBIT.cjs +0 -2
- package/dist/Timeline-CmluHBIT.cjs.map +0 -1
- package/dist/Toaster-Bb5YEN5j.js +0 -63
- package/dist/Toaster-Bb5YEN5j.js.map +0 -1
- package/dist/Toaster-Dy1AonLa.cjs +0 -2
- package/dist/Toaster-Dy1AonLa.cjs.map +0 -1
- package/dist/ToggleButtonGroup-Ci_DFvdt.cjs +0 -2
- package/dist/chunks/icons/57-Bxh2lSz-.cjs +0 -1
- package/dist/chunks/icons/57-CkmrDM9A.js +0 -28
- package/dist/chunks/icons/8a-CThAqelS.js +0 -27
- package/dist/chunks/icons/8a-DRBAtpxY.cjs +0 -1
- package/dist/chunks/icons/97-J9NBhX2o.js +0 -14
- package/dist/chunks/icons/97-r2YXIQ_T.cjs +0 -1
- package/dist/chunks/icons/b8-CyIivk3C.cjs +0 -1
- package/dist/chunks/icons/b8-DcK0w8WM.js +0 -29
- package/dist/chunks/icons/d5-3fWtNlXW.js +0 -20
- package/dist/chunks/icons/d5-CoG_Hfw9.cjs +0 -1
- package/dist/chunks/icons/d8-DsebfeMy.cjs +0 -1
- package/dist/chunks/icons/d8-DtOvDDrr.js +0 -20
- package/dist/chunks/icons/dd-BXVES9Ib.js +0 -22
- package/dist/chunks/icons/dd-beaqCKss.cjs +0 -1
- package/dist/messages-BiRLMy1E.js.map +0 -1
- package/dist/messages-C_fRRCg6.cjs.map +0 -1
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { ImageCropRatioOption } from './core/types';
|
|
2
|
+
/** The Crop Shape presets (landscape form — the portrait toggle flips them). */
|
|
3
|
+
export declare const DEFAULT_CROP_RATIOS: ImageCropRatioOption[];
|
|
4
|
+
export interface CropShapeMenuProps {
|
|
5
|
+
/** The current crop shape (width / height), `null` = custom. */
|
|
6
|
+
ratio: number | null;
|
|
7
|
+
/** The presets (landscape form). */
|
|
8
|
+
options: ImageCropRatioOption[];
|
|
9
|
+
/** Pick a shape (`null` = custom). */
|
|
10
|
+
onChange: (ratio: number | null) => void;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* The Crop tool's **Crop Shape** menu: a landscape / portrait toggle on top, then Custom (free) and the
|
|
14
|
+
* ratio presets, each with a little preview of its shape. Picking one reshapes the crop and locks it to
|
|
15
|
+
* that ratio. Internal to the ImageEditor.
|
|
16
|
+
*/
|
|
17
|
+
export declare function CropShapeMenu({ ratio, options, onChange }: CropShapeMenuProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { ImageCropRatioOption } from './core/types';
|
|
2
|
+
/** The Crop Shape presets (landscape form — the portrait toggle flips them). */
|
|
3
|
+
export declare const DEFAULT_CROP_RATIOS: ImageCropRatioOption[];
|
|
4
|
+
export interface CropShapeMenuProps {
|
|
5
|
+
/** The current crop shape (width / height), `null` = custom. */
|
|
6
|
+
ratio: number | null;
|
|
7
|
+
/** The presets (landscape form). */
|
|
8
|
+
options: ImageCropRatioOption[];
|
|
9
|
+
/** Pick a shape (`null` = custom). */
|
|
10
|
+
onChange: (ratio: number | null) => void;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* The Crop tool's **Crop Shape** menu: a landscape / portrait toggle on top, then Custom (free) and the
|
|
14
|
+
* ratio presets, each with a little preview of its shape. Picking one reshapes the crop and locks it to
|
|
15
|
+
* that ratio. Internal to the ImageEditor.
|
|
16
|
+
*/
|
|
17
|
+
export declare function CropShapeMenu({ ratio, options, onChange }: CropShapeMenuProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { type RefObject } from 'react';
|
|
2
|
+
import type { ImageEditorCore, ImageEditorSnapshot } from './core/editor';
|
|
3
|
+
export interface EditorStageHandle {
|
|
4
|
+
/** Call right before a rotate-left / flip / other jump changes the state, so the view animates it. */
|
|
5
|
+
transition(kind: 'rotate' | 'flip' | 'jump'): void;
|
|
6
|
+
}
|
|
7
|
+
export interface EditorStageProps {
|
|
8
|
+
core: ImageEditorCore;
|
|
9
|
+
snapshot: ImageEditorSnapshot;
|
|
10
|
+
/** Lock crop resizing to this ratio. */
|
|
11
|
+
cropAspectRatio?: number | null;
|
|
12
|
+
/** Filter / Finetune view zoom (CSS px per source px), `null` = fit. */
|
|
13
|
+
viewZoom: number | null;
|
|
14
|
+
onViewZoom: (zoom: number | null) => void;
|
|
15
|
+
/** Reports the effective view zoom (CSS px per source px) for the header label. */
|
|
16
|
+
onZoomReport: (zoom: number) => void;
|
|
17
|
+
/**
|
|
18
|
+
* The free area between the toolbars: the canvas fills the whole editor (the image runs behind the
|
|
19
|
+
* header / nav / footer), but the crop fits + centers in this element's box.
|
|
20
|
+
*/
|
|
21
|
+
areaRef?: RefObject<HTMLElement | null>;
|
|
22
|
+
}
|
|
23
|
+
/** The editor's canvas + crop overlay: renders the image, owns the view and the pointer gestures. */
|
|
24
|
+
export declare const EditorStage: import("react").ForwardRefExoticComponent<EditorStageProps & import("react").RefAttributes<EditorStageHandle>>;
|
|
25
|
+
/** The Filter / Finetune view zoom range (CSS px per source px). */
|
|
26
|
+
export declare const VIEW_ZOOM_MIN = 0.02;
|
|
27
|
+
export declare const VIEW_ZOOM_MAX = 8;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { type RefObject } from 'react';
|
|
2
|
+
import type { ImageEditorCore, ImageEditorSnapshot } from './core/editor';
|
|
3
|
+
export interface EditorStageHandle {
|
|
4
|
+
/** Call right before a rotate-left / flip / other jump changes the state, so the view animates it. */
|
|
5
|
+
transition(kind: 'rotate' | 'flip' | 'jump'): void;
|
|
6
|
+
}
|
|
7
|
+
export interface EditorStageProps {
|
|
8
|
+
core: ImageEditorCore;
|
|
9
|
+
snapshot: ImageEditorSnapshot;
|
|
10
|
+
/** Lock crop resizing to this ratio. */
|
|
11
|
+
cropAspectRatio?: number | null;
|
|
12
|
+
/** Filter / Finetune view zoom (CSS px per source px), `null` = fit. */
|
|
13
|
+
viewZoom: number | null;
|
|
14
|
+
onViewZoom: (zoom: number | null) => void;
|
|
15
|
+
/** Reports the effective view zoom (CSS px per source px) for the header label. */
|
|
16
|
+
onZoomReport: (zoom: number) => void;
|
|
17
|
+
/**
|
|
18
|
+
* The free area between the toolbars: the canvas fills the whole editor (the image runs behind the
|
|
19
|
+
* header / nav / footer), but the crop fits + centers in this element's box.
|
|
20
|
+
*/
|
|
21
|
+
areaRef?: RefObject<HTMLElement | null>;
|
|
22
|
+
}
|
|
23
|
+
/** The editor's canvas + crop overlay: renders the image, owns the view and the pointer gestures. */
|
|
24
|
+
export declare const EditorStage: import("react").ForwardRefExoticComponent<EditorStageProps & import("react").RefAttributes<EditorStageHandle>>;
|
|
25
|
+
/** The Filter / Finetune view zoom range (CSS px per source px). */
|
|
26
|
+
export declare const VIEW_ZOOM_MIN = 0.02;
|
|
27
|
+
export declare const VIEW_ZOOM_MAX = 8;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type Size } from './core/geometry';
|
|
2
|
+
import { type ImageSource } from './core/load';
|
|
3
|
+
import type { ImageFilterId, ImageState } from './core/types';
|
|
4
|
+
export interface FilterStripProps {
|
|
5
|
+
image: ImageSource;
|
|
6
|
+
size: Size;
|
|
7
|
+
state: ImageState;
|
|
8
|
+
onSelect: (id: ImageFilterId) => void;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* The Filter tool's footer: a horizontally scrolling strip of preset tiles (live thumbnails), grouped.
|
|
12
|
+
* Wheel scrolls it sideways, it drags with momentum, arrows move between tiles; the edges fade.
|
|
13
|
+
*/
|
|
14
|
+
export declare function FilterStrip({ image, size, state, onSelect }: FilterStripProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type Size } from './core/geometry';
|
|
2
|
+
import { type ImageSource } from './core/load';
|
|
3
|
+
import type { ImageFilterId, ImageState } from './core/types';
|
|
4
|
+
export interface FilterStripProps {
|
|
5
|
+
image: ImageSource;
|
|
6
|
+
size: Size;
|
|
7
|
+
state: ImageState;
|
|
8
|
+
onSelect: (id: ImageFilterId) => void;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* The Filter tool's footer: a horizontally scrolling strip of preset tiles (live thumbnails), grouped.
|
|
12
|
+
* Wheel scrolls it sideways, it drags with momentum, arrows move between tiles; the edges fade.
|
|
13
|
+
*/
|
|
14
|
+
export declare function FilterStrip({ image, size, state, onSelect }: FilterStripProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { type HTMLAttributes } from 'react';
|
|
2
|
+
import type { ImageEditorOptions, ImageEditorResult, ImageState } from './core/types';
|
|
3
|
+
export interface ImageEditorProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onLoad' | 'title' | 'children'>, Omit<ImageEditorOptions, 'src'> {
|
|
4
|
+
/** Whether the editor is shown (a fullscreen overlay). */
|
|
5
|
+
open: boolean;
|
|
6
|
+
/** The image to edit: a `File` / `Blob`, a URL or a data URL. */
|
|
7
|
+
src: ImageEditorOptions['src'] | null;
|
|
8
|
+
/** Fired once the image has loaded. */
|
|
9
|
+
onLoad?: (info: {
|
|
10
|
+
width: number;
|
|
11
|
+
height: number;
|
|
12
|
+
}) => void;
|
|
13
|
+
/** Fired on every committed change (a drag's end, a click, a preset). */
|
|
14
|
+
onUpdate?: (state: ImageState) => void;
|
|
15
|
+
/** Fired by **Done** with the rendered image + the state it came from; the editor then closes. */
|
|
16
|
+
onProcess?: (result: ImageEditorResult) => void;
|
|
17
|
+
/** Requested close (✕, Escape, or after **Done**). Changes are discarded unless processed. */
|
|
18
|
+
onClose: () => void;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* A fullscreen image editor — **Crop** (resize, pan, zoom, rotate ±45°, scale, rotate left, flip, Crop
|
|
22
|
+
* Shape presets), **Filter** (14 presets with live thumbnails), **Finetune** (brightness, contrast,
|
|
23
|
+
* saturation, exposure, temperature, gamma, clarity, vignette), **Redact** (blur or pixelate the whole
|
|
24
|
+
* image) and **Resize** (width × height, aspect lock, never upscales) — over a WebGL renderer (Canvas2D
|
|
25
|
+
* fallback), with undo / redo / revert (Revert = back to the original image). **Done** renders the result
|
|
26
|
+
* at full source resolution (JPEG / PNG / WebP keep their type, anything else becomes PNG) and hands it to
|
|
27
|
+
* `onProcess` with the `imageState`, which re-opens the edit non-destructively via `initialState`. Follows
|
|
28
|
+
* the app's light / dark theme.
|
|
29
|
+
*/
|
|
30
|
+
export declare const ImageEditor: import("react").ForwardRefExoticComponent<ImageEditorProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { type HTMLAttributes } from 'react';
|
|
2
|
+
import type { ImageEditorOptions, ImageEditorResult, ImageState } from './core/types';
|
|
3
|
+
export interface ImageEditorProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onLoad' | 'title' | 'children'>, Omit<ImageEditorOptions, 'src'> {
|
|
4
|
+
/** Whether the editor is shown (a fullscreen overlay). */
|
|
5
|
+
open: boolean;
|
|
6
|
+
/** The image to edit: a `File` / `Blob`, a URL or a data URL. */
|
|
7
|
+
src: ImageEditorOptions['src'] | null;
|
|
8
|
+
/** Fired once the image has loaded. */
|
|
9
|
+
onLoad?: (info: {
|
|
10
|
+
width: number;
|
|
11
|
+
height: number;
|
|
12
|
+
}) => void;
|
|
13
|
+
/** Fired on every committed change (a drag's end, a click, a preset). */
|
|
14
|
+
onUpdate?: (state: ImageState) => void;
|
|
15
|
+
/** Fired by **Done** with the rendered image + the state it came from; the editor then closes. */
|
|
16
|
+
onProcess?: (result: ImageEditorResult) => void;
|
|
17
|
+
/** Requested close (✕, Escape, or after **Done**). Changes are discarded unless processed. */
|
|
18
|
+
onClose: () => void;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* A fullscreen image editor — **Crop** (resize, pan, zoom, rotate ±45°, scale, rotate left, flip, Crop
|
|
22
|
+
* Shape presets), **Filter** (14 presets with live thumbnails), **Finetune** (brightness, contrast,
|
|
23
|
+
* saturation, exposure, temperature, gamma, clarity, vignette), **Redact** (blur or pixelate the whole
|
|
24
|
+
* image) and **Resize** (width × height, aspect lock, never upscales) — over a WebGL renderer (Canvas2D
|
|
25
|
+
* fallback), with undo / redo / revert (Revert = back to the original image). **Done** renders the result
|
|
26
|
+
* at full source resolution (JPEG / PNG / WebP keep their type, anything else becomes PNG) and hands it to
|
|
27
|
+
* `onProcess` with the `imageState`, which re-opens the edit non-destructively via `initialState`. Follows
|
|
28
|
+
* the app's light / dark theme.
|
|
29
|
+
*/
|
|
30
|
+
export declare const ImageEditor: import("react").ForwardRefExoticComponent<ImageEditorProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { Size } from './core/geometry';
|
|
2
|
+
export interface ResizePanelProps {
|
|
3
|
+
/** The largest size — the crop at full resolution (the tool never upscales). */
|
|
4
|
+
max: Size;
|
|
5
|
+
/** The current result size. */
|
|
6
|
+
value: Size;
|
|
7
|
+
/** Keep the crop's aspect ratio while typing. */
|
|
8
|
+
locked: boolean;
|
|
9
|
+
onLockedChange: (locked: boolean) => void;
|
|
10
|
+
/** A live change (while typing). */
|
|
11
|
+
onInput: (size: Size | null) => void;
|
|
12
|
+
/** A committed change (Enter, blur, a preset). */
|
|
13
|
+
onChange: (size: Size | null) => void;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* The Resize tool's footer: a Width × Height pair (with an aspect-ratio lock between them) under the
|
|
17
|
+
* full size it can go up to, and Original / 75% / 50% / 25% quick picks. Internal to the ImageEditor.
|
|
18
|
+
*/
|
|
19
|
+
export declare function ResizePanel({ max, value, locked, onLockedChange, onInput, onChange, }: ResizePanelProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { Size } from './core/geometry';
|
|
2
|
+
export interface ResizePanelProps {
|
|
3
|
+
/** The largest size — the crop at full resolution (the tool never upscales). */
|
|
4
|
+
max: Size;
|
|
5
|
+
/** The current result size. */
|
|
6
|
+
value: Size;
|
|
7
|
+
/** Keep the crop's aspect ratio while typing. */
|
|
8
|
+
locked: boolean;
|
|
9
|
+
onLockedChange: (locked: boolean) => void;
|
|
10
|
+
/** A live change (while typing). */
|
|
11
|
+
onInput: (size: Size | null) => void;
|
|
12
|
+
/** A committed change (Enter, blur, a preset). */
|
|
13
|
+
onChange: (size: Size | null) => void;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* The Resize tool's footer: a Width × Height pair (with an aspect-ratio lock between them) under the
|
|
17
|
+
* full size it can go up to, and Original / 75% / 50% / 25% quick picks. Internal to the ImageEditor.
|
|
18
|
+
*/
|
|
19
|
+
export declare function ResizePanel({ max, value, locked, onLockedChange, onInput, onChange, }: ResizePanelProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export interface RulerSliderProps {
|
|
2
|
+
/** Lowest value. */
|
|
3
|
+
min: number;
|
|
4
|
+
/** Highest value. */
|
|
5
|
+
max: number;
|
|
6
|
+
/** The current value. */
|
|
7
|
+
value: number;
|
|
8
|
+
/** Value granularity. Defaults to `1`. */
|
|
9
|
+
step?: number;
|
|
10
|
+
/** Arrow-key step (Shift = ×10). Defaults to `1`. */
|
|
11
|
+
keyStep?: number;
|
|
12
|
+
/** Values the ruler snaps to when within `snapThreshold`. Defaults to `[0]`. */
|
|
13
|
+
snapPoints?: number[];
|
|
14
|
+
/** Snap distance in value units. Defaults to 2% of the range. */
|
|
15
|
+
snapThreshold?: number;
|
|
16
|
+
/** Value units between two ruler dots. Defaults to 5% of the range. */
|
|
17
|
+
tickStep?: number;
|
|
18
|
+
/** Every n-th dot is a bigger one. Defaults to `5`. */
|
|
19
|
+
majorEvery?: number;
|
|
20
|
+
/** The value a double-click resets to. Defaults to `0` (clamped into the range). */
|
|
21
|
+
resetValue?: number;
|
|
22
|
+
/** The label shown at the center (and the `aria-valuetext`). */
|
|
23
|
+
format?: (value: number) => string;
|
|
24
|
+
/** Fired continuously while the value changes (drag, inertia, wheel). */
|
|
25
|
+
onInput: (value: number) => void;
|
|
26
|
+
/** Fired when a change is committed (pointer-up / inertia end, a key press, wheel idle, reset). */
|
|
27
|
+
onChange: (value: number) => void;
|
|
28
|
+
/** Accessible name. */
|
|
29
|
+
'aria-label': string;
|
|
30
|
+
className?: string;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* A tape-measure slider: a dotted ruler slides under a fixed center indicator (drag left → the value
|
|
34
|
+
* grows), with inertia, wheel and keyboard control, snapping to `snapPoints`, and a double-click reset.
|
|
35
|
+
* Internal to the ImageEditor (Rotation / Scale / Finetune).
|
|
36
|
+
*/
|
|
37
|
+
export declare function RulerSlider({ min, max, value, step, keyStep, snapPoints, snapThreshold, tickStep, majorEvery, resetValue, format, onInput, onChange, 'aria-label': ariaLabel, className, }: RulerSliderProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export interface RulerSliderProps {
|
|
2
|
+
/** Lowest value. */
|
|
3
|
+
min: number;
|
|
4
|
+
/** Highest value. */
|
|
5
|
+
max: number;
|
|
6
|
+
/** The current value. */
|
|
7
|
+
value: number;
|
|
8
|
+
/** Value granularity. Defaults to `1`. */
|
|
9
|
+
step?: number;
|
|
10
|
+
/** Arrow-key step (Shift = ×10). Defaults to `1`. */
|
|
11
|
+
keyStep?: number;
|
|
12
|
+
/** Values the ruler snaps to when within `snapThreshold`. Defaults to `[0]`. */
|
|
13
|
+
snapPoints?: number[];
|
|
14
|
+
/** Snap distance in value units. Defaults to 2% of the range. */
|
|
15
|
+
snapThreshold?: number;
|
|
16
|
+
/** Value units between two ruler dots. Defaults to 5% of the range. */
|
|
17
|
+
tickStep?: number;
|
|
18
|
+
/** Every n-th dot is a bigger one. Defaults to `5`. */
|
|
19
|
+
majorEvery?: number;
|
|
20
|
+
/** The value a double-click resets to. Defaults to `0` (clamped into the range). */
|
|
21
|
+
resetValue?: number;
|
|
22
|
+
/** The label shown at the center (and the `aria-valuetext`). */
|
|
23
|
+
format?: (value: number) => string;
|
|
24
|
+
/** Fired continuously while the value changes (drag, inertia, wheel). */
|
|
25
|
+
onInput: (value: number) => void;
|
|
26
|
+
/** Fired when a change is committed (pointer-up / inertia end, a key press, wheel idle, reset). */
|
|
27
|
+
onChange: (value: number) => void;
|
|
28
|
+
/** Accessible name. */
|
|
29
|
+
'aria-label': string;
|
|
30
|
+
className?: string;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* A tape-measure slider: a dotted ruler slides under a fixed center indicator (drag left → the value
|
|
34
|
+
* grows), with inertia, wheel and keyboard control, snapping to `snapPoints`, and a double-click reset.
|
|
35
|
+
* Internal to the ImageEditor (Rotation / Scale / Finetune).
|
|
36
|
+
*/
|
|
37
|
+
export declare function RulerSlider({ min, max, value, step, keyStep, snapPoints, snapThreshold, tickStep, majorEvery, resetValue, format, onInput, onChange, 'aria-label': ariaLabel, className, }: RulerSliderProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export type Affine = [number, number, number, number, number, number];
|
|
2
|
+
export declare const IDENTITY_AFFINE: Affine;
|
|
3
|
+
export declare const translate: (x: number, y: number) => Affine;
|
|
4
|
+
export declare const scaleAffine: (sx: number, sy?: number) => Affine;
|
|
5
|
+
export declare const rotateAffine: (theta: number) => Affine;
|
|
6
|
+
/** `a ∘ b` — apply `b` first, then `a`. */
|
|
7
|
+
export declare function multiplyAffine(a: Affine, b: Affine): Affine;
|
|
8
|
+
/** Compose in application order: `chain(t1, t2, t3)` applies t1, then t2, then t3. */
|
|
9
|
+
export declare const chain: (...ts: Affine[]) => Affine;
|
|
10
|
+
export declare function invertAffine([a, b, c, d, e, f]: Affine): Affine;
|
|
11
|
+
export declare const applyAffine: ([a, b, c, d, e, f]: Affine, x: number, y: number) => [number, number];
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export type Affine = [number, number, number, number, number, number];
|
|
2
|
+
export declare const IDENTITY_AFFINE: Affine;
|
|
3
|
+
export declare const translate: (x: number, y: number) => Affine;
|
|
4
|
+
export declare const scaleAffine: (sx: number, sy?: number) => Affine;
|
|
5
|
+
export declare const rotateAffine: (theta: number) => Affine;
|
|
6
|
+
/** `a ∘ b` — apply `b` first, then `a`. */
|
|
7
|
+
export declare function multiplyAffine(a: Affine, b: Affine): Affine;
|
|
8
|
+
/** Compose in application order: `chain(t1, t2, t3)` applies t1, then t2, then t3. */
|
|
9
|
+
export declare const chain: (...ts: Affine[]) => Affine;
|
|
10
|
+
export declare function invertAffine([a, b, c, d, e, f]: Affine): Affine;
|
|
11
|
+
export declare const applyAffine: ([a, b, c, d, e, f]: Affine, x: number, y: number) => [number, number];
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { type Size } from './geometry';
|
|
2
|
+
import { type LoadedImage } from './load';
|
|
3
|
+
import type { ImageEditorOptions, ImageEditorResult, ImageEditorUiState, ImageState } from './types';
|
|
4
|
+
export type ImageEditorEvent = 'load' | 'update' | 'process' | 'close' | 'undo' | 'redo' | 'revert';
|
|
5
|
+
/** The store snapshot (a new object on every change — safe for `useSyncExternalStore`). */
|
|
6
|
+
export interface ImageEditorSnapshot {
|
|
7
|
+
status: 'idle' | 'loading' | 'ready' | 'error';
|
|
8
|
+
error: unknown;
|
|
9
|
+
state: ImageState | null;
|
|
10
|
+
ui: ImageEditorUiState;
|
|
11
|
+
size: Size | null;
|
|
12
|
+
canUndo: boolean;
|
|
13
|
+
canRedo: boolean;
|
|
14
|
+
canRevert: boolean;
|
|
15
|
+
}
|
|
16
|
+
/** The headless editor API. */
|
|
17
|
+
export interface Editor {
|
|
18
|
+
open(options: ImageEditorOptions): Promise<void>;
|
|
19
|
+
close(): void;
|
|
20
|
+
getState(): ImageState;
|
|
21
|
+
setState(s: Partial<ImageState>): void;
|
|
22
|
+
undo(): void;
|
|
23
|
+
redo(): void;
|
|
24
|
+
revert(): void;
|
|
25
|
+
on(event: ImageEditorEvent, cb: (payload?: unknown) => void): () => void;
|
|
26
|
+
process(): Promise<ImageEditorResult>;
|
|
27
|
+
}
|
|
28
|
+
export declare class ImageEditorCore implements Editor {
|
|
29
|
+
private snapshot;
|
|
30
|
+
private storeListeners;
|
|
31
|
+
private events;
|
|
32
|
+
private history;
|
|
33
|
+
private index;
|
|
34
|
+
/** The untouched state of the loaded image (what `revert()` goes back to). */
|
|
35
|
+
private initial;
|
|
36
|
+
private loaded;
|
|
37
|
+
private options;
|
|
38
|
+
private openToken;
|
|
39
|
+
subscribe: (fn: () => void) => () => void;
|
|
40
|
+
getSnapshot: () => ImageEditorSnapshot;
|
|
41
|
+
private patch;
|
|
42
|
+
on(event: ImageEditorEvent, cb: (payload?: unknown) => void): () => void;
|
|
43
|
+
private emit;
|
|
44
|
+
/** The loaded image (full resolution) — for renderers. */
|
|
45
|
+
get image(): LoadedImage | null;
|
|
46
|
+
/** The `open()` options. */
|
|
47
|
+
get openOptions(): ImageEditorOptions | null;
|
|
48
|
+
open(options: ImageEditorOptions): Promise<void>;
|
|
49
|
+
close(): void;
|
|
50
|
+
getState(): ImageState;
|
|
51
|
+
/** Replace part of the state and commit it (one undo step). */
|
|
52
|
+
setState(s: Partial<ImageState>): void;
|
|
53
|
+
/** Apply a live (uncommitted) change — e.g. while dragging. Call `commit()` when the interaction ends. */
|
|
54
|
+
preview(s: Partial<ImageState>): void;
|
|
55
|
+
/** Push the current state onto the history (if it changed) and emit `update`. */
|
|
56
|
+
commit(): void;
|
|
57
|
+
undo(): void;
|
|
58
|
+
redo(): void;
|
|
59
|
+
/**
|
|
60
|
+
* Back to the original image — every edit dropped, including the ones an `initialState` re-opened with.
|
|
61
|
+
* It's one history step, so Undo brings the edits back.
|
|
62
|
+
*/
|
|
63
|
+
revert(): void;
|
|
64
|
+
setUi(ui: Partial<ImageEditorUiState>): void;
|
|
65
|
+
/** Render the current state at full resolution. */
|
|
66
|
+
process(): Promise<ImageEditorResult>;
|
|
67
|
+
}
|
|
68
|
+
/** Create a headless editor. */
|
|
69
|
+
export declare const createImageEditor: () => ImageEditorCore;
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { type Size } from './geometry';
|
|
2
|
+
import { type LoadedImage } from './load';
|
|
3
|
+
import type { ImageEditorOptions, ImageEditorResult, ImageEditorUiState, ImageState } from './types';
|
|
4
|
+
export type ImageEditorEvent = 'load' | 'update' | 'process' | 'close' | 'undo' | 'redo' | 'revert';
|
|
5
|
+
/** The store snapshot (a new object on every change — safe for `useSyncExternalStore`). */
|
|
6
|
+
export interface ImageEditorSnapshot {
|
|
7
|
+
status: 'idle' | 'loading' | 'ready' | 'error';
|
|
8
|
+
error: unknown;
|
|
9
|
+
state: ImageState | null;
|
|
10
|
+
ui: ImageEditorUiState;
|
|
11
|
+
size: Size | null;
|
|
12
|
+
canUndo: boolean;
|
|
13
|
+
canRedo: boolean;
|
|
14
|
+
canRevert: boolean;
|
|
15
|
+
}
|
|
16
|
+
/** The headless editor API. */
|
|
17
|
+
export interface Editor {
|
|
18
|
+
open(options: ImageEditorOptions): Promise<void>;
|
|
19
|
+
close(): void;
|
|
20
|
+
getState(): ImageState;
|
|
21
|
+
setState(s: Partial<ImageState>): void;
|
|
22
|
+
undo(): void;
|
|
23
|
+
redo(): void;
|
|
24
|
+
revert(): void;
|
|
25
|
+
on(event: ImageEditorEvent, cb: (payload?: unknown) => void): () => void;
|
|
26
|
+
process(): Promise<ImageEditorResult>;
|
|
27
|
+
}
|
|
28
|
+
export declare class ImageEditorCore implements Editor {
|
|
29
|
+
private snapshot;
|
|
30
|
+
private storeListeners;
|
|
31
|
+
private events;
|
|
32
|
+
private history;
|
|
33
|
+
private index;
|
|
34
|
+
/** The untouched state of the loaded image (what `revert()` goes back to). */
|
|
35
|
+
private initial;
|
|
36
|
+
private loaded;
|
|
37
|
+
private options;
|
|
38
|
+
private openToken;
|
|
39
|
+
subscribe: (fn: () => void) => () => void;
|
|
40
|
+
getSnapshot: () => ImageEditorSnapshot;
|
|
41
|
+
private patch;
|
|
42
|
+
on(event: ImageEditorEvent, cb: (payload?: unknown) => void): () => void;
|
|
43
|
+
private emit;
|
|
44
|
+
/** The loaded image (full resolution) — for renderers. */
|
|
45
|
+
get image(): LoadedImage | null;
|
|
46
|
+
/** The `open()` options. */
|
|
47
|
+
get openOptions(): ImageEditorOptions | null;
|
|
48
|
+
open(options: ImageEditorOptions): Promise<void>;
|
|
49
|
+
close(): void;
|
|
50
|
+
getState(): ImageState;
|
|
51
|
+
/** Replace part of the state and commit it (one undo step). */
|
|
52
|
+
setState(s: Partial<ImageState>): void;
|
|
53
|
+
/** Apply a live (uncommitted) change — e.g. while dragging. Call `commit()` when the interaction ends. */
|
|
54
|
+
preview(s: Partial<ImageState>): void;
|
|
55
|
+
/** Push the current state onto the history (if it changed) and emit `update`. */
|
|
56
|
+
commit(): void;
|
|
57
|
+
undo(): void;
|
|
58
|
+
redo(): void;
|
|
59
|
+
/**
|
|
60
|
+
* Back to the original image — every edit dropped, including the ones an `initialState` re-opened with.
|
|
61
|
+
* It's one history step, so Undo brings the edits back.
|
|
62
|
+
*/
|
|
63
|
+
revert(): void;
|
|
64
|
+
setUi(ui: Partial<ImageEditorUiState>): void;
|
|
65
|
+
/** Render the current state at full resolution. */
|
|
66
|
+
process(): Promise<ImageEditorResult>;
|
|
67
|
+
}
|
|
68
|
+
/** Create a headless editor. */
|
|
69
|
+
export declare const createImageEditor: () => ImageEditorCore;
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import type { ImageRect, ImageState } from './types';
|
|
2
|
+
export interface Size {
|
|
3
|
+
width: number;
|
|
4
|
+
height: number;
|
|
5
|
+
}
|
|
6
|
+
export type Vec = [number, number];
|
|
7
|
+
/** Rotate a vector by θ (positive = clockwise on a y-down screen). */
|
|
8
|
+
export declare const rotate: ([x, y]: Vec, theta: number) => Vec;
|
|
9
|
+
/** Half the size of a w×h box's bounding box once it's turned by θ. */
|
|
10
|
+
export declare function halfExtents(w: number, h: number, theta: number): Vec;
|
|
11
|
+
/** The crop's center. */
|
|
12
|
+
export declare const cropCenter: (crop: ImageRect) => Vec;
|
|
13
|
+
/**
|
|
14
|
+
* The minimum `scale` at which an image of `size` covers a w×h crop turned by θ **when centered on the
|
|
15
|
+
* image** — the "cover" scale every zoom is measured from (zoom = scale / coverScale).
|
|
16
|
+
*/
|
|
17
|
+
export declare function coverScale(w: number, h: number, theta: number, size: Size): number;
|
|
18
|
+
/** The image point (image-centered, unrotated, unscaled) under the crop's center. */
|
|
19
|
+
export declare function cropAnchor(state: ImageState, size: Size): Vec;
|
|
20
|
+
/** Clamp the crop anchor so a w×h crop (turned by θ, image scaled by s) stays inside the image. */
|
|
21
|
+
export declare function clampAnchor([ux, uy]: Vec, w: number, h: number, theta: number, s: number, size: Size): Vec;
|
|
22
|
+
/** Place a w×h crop so its center sits over image point `u` (inverse of `cropAnchor`). */
|
|
23
|
+
export declare function cropAt(u: Vec, w: number, h: number, theta: number, s: number, size: Size): {
|
|
24
|
+
x: number;
|
|
25
|
+
y: number;
|
|
26
|
+
width: number;
|
|
27
|
+
height: number;
|
|
28
|
+
};
|
|
29
|
+
/** Whether the image fully covers `crop` (with a small tolerance). */
|
|
30
|
+
export declare function coversCrop(crop: ImageRect, theta: number, s: number, size: Size): boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Re-fit a state so the image covers the crop: the scale is raised to at least the cover scale, then the
|
|
33
|
+
* anchor (the image point under the crop's center) is clamped. The crop's size never changes here.
|
|
34
|
+
*/
|
|
35
|
+
export declare function fitState(state: ImageState, size: Size): ImageState;
|
|
36
|
+
/** The output size in pixels — the crop at full source resolution. */
|
|
37
|
+
export declare function outputSize(state: ImageState): Size;
|
|
38
|
+
/** The size `process()` renders — the Resize tool's pick, else the crop at full resolution. */
|
|
39
|
+
export declare function finalSize(state: ImageState): Size;
|
|
40
|
+
/**
|
|
41
|
+
* The part of the crop the output shows — the crop itself, or for a Resize pick of another aspect its
|
|
42
|
+
* largest centered sub-rect of that aspect (`object-fit: cover`: the image is cut, never squashed).
|
|
43
|
+
*/
|
|
44
|
+
export declare function resizedCrop(state: ImageState): ImageRect;
|
|
45
|
+
/**
|
|
46
|
+
* Apply a Resize pick to `base` (the state the pick is made from). A size of the crop's own aspect just
|
|
47
|
+
* scales the output; another aspect first cuts the crop to it — its largest centered part of that aspect
|
|
48
|
+
* (`object-fit: cover`) — so the Crop tool shows exactly what's kept. `null` (or the crop's full size)
|
|
49
|
+
* clears it. The size never goes above what `base`'s crop holds.
|
|
50
|
+
*/
|
|
51
|
+
export declare function applyResize(base: ImageState, pick: Size | null): ImageState;
|
|
52
|
+
/**
|
|
53
|
+
* Keep a Resize pick in step when the crop changes under it: it keeps its share of the crop (a 25% pick
|
|
54
|
+
* stays 25% of the new crop), so the result size follows the crop. Unchanged when no resize is set or the
|
|
55
|
+
* crop's output size didn't move.
|
|
56
|
+
*/
|
|
57
|
+
export declare function syncResize(prev: ImageState, next: ImageState): ImageState['resize'];
|
|
58
|
+
/** The largest crop of the given ratio that fits the (unrotated) image, centered. */
|
|
59
|
+
export declare function initialCrop(size: Size, aspectRatio?: number | null): ImageRect;
|
|
60
|
+
/** The untouched state for an image of `size`. */
|
|
61
|
+
export declare function defaultState(size: Size, aspectRatio?: number | null): ImageState;
|
|
62
|
+
/** Split a rotation into its quarter turns (multiple of π/2, normalized to [0, 2π)) + the fine part. */
|
|
63
|
+
export declare function splitRotation(theta: number, quarterHint?: number): {
|
|
64
|
+
quarter: number;
|
|
65
|
+
fine: number;
|
|
66
|
+
};
|
|
67
|
+
/** Normalize an angle into [0, 2π). */
|
|
68
|
+
export declare const normalizeAngle: (a: number) => number;
|
|
69
|
+
/**
|
|
70
|
+
* Set the rotation to `theta`, keeping the same image point under the crop's center: the image scales up
|
|
71
|
+
* to cover the crop when needed (never below `base.scale`) and the anchor is clamped. `base` is the state
|
|
72
|
+
* at the start of the interaction, so turning back restores the original zoom.
|
|
73
|
+
*/
|
|
74
|
+
export declare function rotateTo(base: ImageState, theta: number, size: Size): ImageState;
|
|
75
|
+
/** Rotate the whole image −90° (counter-clockwise): the crop turns with it (its width/height swap, and so
|
|
76
|
+
* does a picked crop shape — 16:9 becomes 9:16). */
|
|
77
|
+
export declare function rotateLeft(state: ImageState, size: Size): ImageState;
|
|
78
|
+
/** Mirror the result horizontally (the image flips inside the crop; the crop mirrors about the center). */
|
|
79
|
+
export declare function flipHorizontal(state: ImageState, size: Size): ImageState;
|
|
80
|
+
/** The current zoom relative to the cover scale (1 = the image just covers the crop). */
|
|
81
|
+
export declare function zoomOf(state: ImageState, size: Size): number;
|
|
82
|
+
/** The largest zoom inside the crop (relative to the cover scale) — 500%. */
|
|
83
|
+
export declare const MAX_CROP_ZOOM = 5;
|
|
84
|
+
/**
|
|
85
|
+
* Set the zoom (1…`MAX_CROP_ZOOM`, relative to the cover scale), keeping the image point under the
|
|
86
|
+
* crop's center.
|
|
87
|
+
*/
|
|
88
|
+
export declare function zoomTo(state: ImageState, zoom: number, size: Size): ImageState;
|
|
89
|
+
/** Move the crop across the image by (dx, dy) plane units (the image moves the other way on screen). */
|
|
90
|
+
export declare function panBy(state: ImageState, dx: number, dy: number, size: Size): ImageState;
|
|
91
|
+
/**
|
|
92
|
+
* Pick a crop shape: `ratio` (width / height) reshapes the crop into the largest rect of that ratio the
|
|
93
|
+
* image covers at the current rotation + zoom, kept over the same image point (moved only as far as it
|
|
94
|
+
* must to stay on the image); `null` frees it (the crop itself is left as is).
|
|
95
|
+
*/
|
|
96
|
+
export declare function setCropRatio(state: ImageState, ratio: number | null, size: Size): ImageState;
|
|
97
|
+
export type CropHandle = 'n' | 's' | 'e' | 'w' | 'ne' | 'nw' | 'se' | 'sw';
|
|
98
|
+
export interface ResizeOptions {
|
|
99
|
+
/** Lock the crop to this width/height ratio. */
|
|
100
|
+
aspectRatio?: number | null;
|
|
101
|
+
/** The smallest crop side, in plane units. */
|
|
102
|
+
minSize: number;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Resize the crop by dragging `handle` by (dx, dy) plane units from the interaction's `start` state. A
|
|
106
|
+
* corner moves against its opposite corner, an edge moves one side (with a locked ratio the other side
|
|
107
|
+
* follows, centered). The result never leaves the image: an out-of-bounds request is pulled back along
|
|
108
|
+
* the way from `start` to it (so it stops at the image's edge instead of jumping).
|
|
109
|
+
*/
|
|
110
|
+
export declare function resizeCrop(start: ImageState, handle: CropHandle, dx: number, dy: number, size: Size, { aspectRatio, minSize }: ResizeOptions): ImageState;
|
|
111
|
+
/** Clamp a state's crop + scale into a valid configuration (used on `setState` / `initialState`). */
|
|
112
|
+
export declare function normalizeState(state: ImageState, size: Size): ImageState;
|