@techzyapp/ui-library 1.0.23 → 1.0.25
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-C7Idu7FQ.cjs → AdminRoot-BkPPRkyQ.cjs} +2 -2
- package/dist/{AdminRoot-C7Idu7FQ.cjs.map → AdminRoot-BkPPRkyQ.cjs.map} +1 -1
- package/dist/{AdminRoot-aDy6rNqI.js → AdminRoot-CgvtgUpW.js} +4 -4
- package/dist/{AdminRoot-aDy6rNqI.js.map → AdminRoot-CgvtgUpW.js.map} +1 -1
- package/dist/Alert-DXmzM_rh.js +71 -0
- package/dist/{Alert-D6VL2C-E.js.map → Alert-DXmzM_rh.js.map} +1 -1
- package/dist/Alert-udX1ybuC.cjs +2 -0
- package/dist/{Alert-Cl1zxmX9.cjs.map → Alert-udX1ybuC.cjs.map} +1 -1
- package/dist/Blockquote-BWGxIL_V.cjs +2 -0
- package/dist/{Blockquote-CxHwOecc.cjs.map → Blockquote-BWGxIL_V.cjs.map} +1 -1
- package/dist/Blockquote-Ma-2naET.js +46 -0
- package/dist/{Blockquote-CNIuJFHq.js.map → Blockquote-Ma-2naET.js.map} +1 -1
- package/dist/{Breadcrumbs-BnFW4LgK.cjs → Breadcrumbs-CsYTiX2h.cjs} +2 -2
- package/dist/{Breadcrumbs-BnFW4LgK.cjs.map → Breadcrumbs-CsYTiX2h.cjs.map} +1 -1
- package/dist/{Breadcrumbs-CicfjfIu.js → Breadcrumbs-DQHHeLId.js} +3 -3
- package/dist/{Breadcrumbs-CicfjfIu.js.map → Breadcrumbs-DQHHeLId.js.map} +1 -1
- package/dist/{Button-ZplrHYKw.cjs → Button-CXmDOzPk.cjs} +2 -2
- package/dist/{Button-ZplrHYKw.cjs.map → Button-CXmDOzPk.cjs.map} +1 -1
- package/dist/{Button-Cfxd7qhd.js → Button-DBs8xnA5.js} +2 -2
- package/dist/{Button-Cfxd7qhd.js.map → Button-DBs8xnA5.js.map} +1 -1
- package/dist/{Calendar-S9vyp-qv.cjs → Calendar-B2nMXk4C.cjs} +2 -2
- package/dist/{Calendar-S9vyp-qv.cjs.map → Calendar-B2nMXk4C.cjs.map} +1 -1
- package/dist/{Calendar-DTxCT-ki.js → Calendar-CtteUt82.js} +3 -3
- package/dist/{Calendar-DTxCT-ki.js.map → Calendar-CtteUt82.js.map} +1 -1
- package/dist/{Card-BeE2ohcn.cjs → Card-DGF22HbS.cjs} +2 -2
- package/dist/{Card-BeE2ohcn.cjs.map → Card-DGF22HbS.cjs.map} +1 -1
- package/dist/{Card-eXJfA4rU.js → Card-DYKnWt-L.js} +2 -2
- package/dist/{Card-eXJfA4rU.js.map → Card-DYKnWt-L.js.map} +1 -1
- package/dist/{Chip-BOXXdzap.js → Chip-DdKhcstm.js} +2 -2
- package/dist/{Chip-BOXXdzap.js.map → Chip-DdKhcstm.js.map} +1 -1
- package/dist/{Chip-B4XERWb_.cjs → Chip-gUH_7nQc.cjs} +2 -2
- package/dist/{Chip-B4XERWb_.cjs.map → Chip-gUH_7nQc.cjs.map} +1 -1
- package/dist/{CodeBlock-C7_A6CTT.cjs → CodeBlock-C6tQtbHU.cjs} +2 -2
- package/dist/{CodeBlock-C7_A6CTT.cjs.map → CodeBlock-C6tQtbHU.cjs.map} +1 -1
- package/dist/{CodeBlock-D_PRiWMq.js → CodeBlock-DD_d3-sM.js} +3 -3
- package/dist/{CodeBlock-D_PRiWMq.js.map → CodeBlock-DD_d3-sM.js.map} +1 -1
- package/dist/{ColorPicker-ClVpWf77.cjs → ColorPicker-DtzFwNWk.cjs} +2 -2
- package/dist/{ColorPicker-ClVpWf77.cjs.map → ColorPicker-DtzFwNWk.cjs.map} +1 -1
- package/dist/{ColorPicker-DAjs7PmR.js → ColorPicker-Dw6Qk0iy.js} +3 -3
- package/dist/{ColorPicker-DAjs7PmR.js.map → ColorPicker-Dw6Qk0iy.js.map} +1 -1
- package/dist/{ColorPickerPanel-Dk6bI0Xy.cjs → ColorPickerPanel--wBX-m7J.cjs} +2 -2
- package/dist/{ColorPickerPanel-Dk6bI0Xy.cjs.map → ColorPickerPanel--wBX-m7J.cjs.map} +1 -1
- package/dist/{ColorPickerPanel-BGzm2had.js → ColorPickerPanel-Dp7bnnVf.js} +2 -2
- package/dist/{ColorPickerPanel-BGzm2had.js.map → ColorPickerPanel-Dp7bnnVf.js.map} +1 -1
- package/dist/ConfigProvider-Bszl3Wr3.cjs +2 -0
- package/dist/ConfigProvider-Bszl3Wr3.cjs.map +1 -0
- package/dist/ConfigProvider-DR9YMy9U.js +320 -0
- package/dist/ConfigProvider-DR9YMy9U.js.map +1 -0
- package/dist/{CopyButton-COF3hIV-.cjs → CopyButton-Ct-8AmmX.cjs} +2 -2
- package/dist/{CopyButton-COF3hIV-.cjs.map → CopyButton-Ct-8AmmX.cjs.map} +1 -1
- package/dist/{CopyButton-Bv7L4xJf.js → CopyButton-DJ1PSJZU.js} +3 -3
- package/dist/{CopyButton-Bv7L4xJf.js.map → CopyButton-DJ1PSJZU.js.map} +1 -1
- package/dist/{DatePicker-kA-xn5ET.cjs → DatePicker-BxEydgfu.cjs} +2 -2
- package/dist/{DatePicker-kA-xn5ET.cjs.map → DatePicker-BxEydgfu.cjs.map} +1 -1
- package/dist/{DatePicker-DZfOvxUR.js → DatePicker-CJioG5M7.js} +4 -4
- package/dist/{DatePicker-DZfOvxUR.js.map → DatePicker-CJioG5M7.js.map} +1 -1
- package/dist/{DateTimePicker-DEGmn5UX.cjs → DateTimePicker-COEj2Z0F.cjs} +2 -2
- package/dist/{DateTimePicker-DEGmn5UX.cjs.map → DateTimePicker-COEj2Z0F.cjs.map} +1 -1
- package/dist/{DateTimePicker-BxBXhSN_.js → DateTimePicker-e2zj2bhS.js} +7 -7
- package/dist/{DateTimePicker-BxBXhSN_.js.map → DateTimePicker-e2zj2bhS.js.map} +1 -1
- package/dist/{EmptyState-Du4vA3bC.js → EmptyState-BTd7aVgu.js} +12 -12
- package/dist/{EmptyState-Du4vA3bC.js.map → EmptyState-BTd7aVgu.js.map} +1 -1
- package/dist/EmptyState-Bv4XXnD1.cjs +2 -0
- package/dist/{EmptyState-DlX-BLLI.cjs.map → EmptyState-Bv4XXnD1.cjs.map} +1 -1
- package/dist/{FileCard-zyCpTrJ-.cjs → FileCard-DW5Ur8Aj.cjs} +2 -2
- package/dist/{FileCard-zyCpTrJ-.cjs.map → FileCard-DW5Ur8Aj.cjs.map} +1 -1
- package/dist/{FileCard-juQ1fWbG.js → FileCard-DY8N9Lzz.js} +3 -3
- package/dist/{FileCard-juQ1fWbG.js.map → FileCard-DY8N9Lzz.js.map} +1 -1
- package/dist/{FileUploader-DOe3CyJB.cjs → FileUploader-B7VfhcR7.cjs} +2 -2
- package/dist/{FileUploader-DOe3CyJB.cjs.map → FileUploader-B7VfhcR7.cjs.map} +1 -1
- package/dist/{FileUploader-DL9atihI.js → FileUploader-BYF5FvUc.js} +5 -5
- package/dist/{FileUploader-DL9atihI.js.map → FileUploader-BYF5FvUc.js.map} +1 -1
- package/dist/{Flag-DFKHYnqk.cjs → Flag-CB4YyPj3.cjs} +2 -2
- package/dist/{Flag-DFKHYnqk.cjs.map → Flag-CB4YyPj3.cjs.map} +1 -1
- package/dist/{Flag-BxRrjCTB.js → Flag-yA1y5XzR.js} +2 -2
- package/dist/{Flag-BxRrjCTB.js.map → Flag-yA1y5XzR.js.map} +1 -1
- package/dist/{FullscreenToggle-BNK7RcRq.cjs → FullscreenToggle-0lskYnpx.cjs} +2 -2
- package/dist/{FullscreenToggle-BNK7RcRq.cjs.map → FullscreenToggle-0lskYnpx.cjs.map} +1 -1
- package/dist/{FullscreenToggle-BMCNsyzb.js → FullscreenToggle-jSLruiKt.js} +3 -3
- package/dist/{FullscreenToggle-BMCNsyzb.js.map → FullscreenToggle-jSLruiKt.js.map} +1 -1
- package/dist/{IconButton-CfvsE_p3.js → IconButton-BEGWfcVc.js} +2 -2
- package/dist/{IconButton-CfvsE_p3.js.map → IconButton-BEGWfcVc.js.map} +1 -1
- package/dist/{IconButton-B9eVM18U.cjs → IconButton-BN-bZxEi.cjs} +2 -2
- package/dist/{IconButton-B9eVM18U.cjs.map → IconButton-BN-bZxEi.cjs.map} +1 -1
- package/dist/{Loader-CxLrhAz9.cjs → Loader-B5YqzEYy.cjs} +2 -2
- package/dist/{Loader-CxLrhAz9.cjs.map → Loader-B5YqzEYy.cjs.map} +1 -1
- package/dist/Loader-BZIa8hwv.js +29 -0
- package/dist/{Loader-DwmyJFwG.js.map → Loader-BZIa8hwv.js.map} +1 -1
- package/dist/Modal-0V-REVV-.cjs +2 -0
- package/dist/{Modal-DXZdMmJh.cjs.map → Modal-0V-REVV-.cjs.map} +1 -1
- package/dist/Modal-B7yoFC3o.js +195 -0
- package/dist/{Modal-Cx0JEQ-j.js.map → Modal-B7yoFC3o.js.map} +1 -1
- package/dist/{MultiSelect-yGlvweEq.js → MultiSelect-C8xuXaoR.js} +4 -4
- package/dist/{MultiSelect-yGlvweEq.js.map → MultiSelect-C8xuXaoR.js.map} +1 -1
- package/dist/{MultiSelect-DfhyGxDU.cjs → MultiSelect-gj9Ymeh2.cjs} +2 -2
- package/dist/{MultiSelect-DfhyGxDU.cjs.map → MultiSelect-gj9Ymeh2.cjs.map} +1 -1
- package/dist/{NumberField-cAjPU1P5.js → NumberField-2yM0mmyj.js} +3 -3
- package/dist/{NumberField-cAjPU1P5.js.map → NumberField-2yM0mmyj.js.map} +1 -1
- package/dist/{NumberField-B7yPXIw_.cjs → NumberField-CEt95jcC.cjs} +2 -2
- package/dist/{NumberField-B7yPXIw_.cjs.map → NumberField-CEt95jcC.cjs.map} +1 -1
- package/dist/OtpField-CkliY82J.js +174 -0
- package/dist/OtpField-CkliY82J.js.map +1 -0
- package/dist/OtpField-on-K0_fM.cjs +2 -0
- package/dist/OtpField-on-K0_fM.cjs.map +1 -0
- package/dist/{PageLayout-BSHyKoQ4.cjs → PageLayout-DGHu7Vm3.cjs} +2 -2
- package/dist/{PageLayout-BSHyKoQ4.cjs.map → PageLayout-DGHu7Vm3.cjs.map} +1 -1
- package/dist/{PageLayout-C9Je7kfF.js → PageLayout-DzPh_G6H.js} +2 -2
- package/dist/{PageLayout-C9Je7kfF.js.map → PageLayout-DzPh_G6H.js.map} +1 -1
- package/dist/{PageNotFound-voB9ylPF.cjs → PageNotFound-B8_eIT8p.cjs} +2 -2
- package/dist/{PageNotFound-voB9ylPF.cjs.map → PageNotFound-B8_eIT8p.cjs.map} +1 -1
- package/dist/{PageNotFound-CUN2OntP.js → PageNotFound-CCFfPHgA.js} +5 -5
- package/dist/{PageNotFound-CUN2OntP.js.map → PageNotFound-CCFfPHgA.js.map} +1 -1
- package/dist/{Pagination-BUGaylZa.cjs → Pagination-BdVebW2L.cjs} +2 -2
- package/dist/{Pagination-BUGaylZa.cjs.map → Pagination-BdVebW2L.cjs.map} +1 -1
- package/dist/{Pagination-BaVHgIWT.js → Pagination-CmskZjcz.js} +2 -2
- package/dist/{Pagination-BaVHgIWT.js.map → Pagination-CmskZjcz.js.map} +1 -1
- package/dist/{RemoveDialog-BpL2-gnz.js → RemoveDialog-CV75B0aN.js} +4 -4
- package/dist/{RemoveDialog-BpL2-gnz.js.map → RemoveDialog-CV75B0aN.js.map} +1 -1
- package/dist/{RemoveDialog-DGt_72we.cjs → RemoveDialog-DmOk0ezc.cjs} +2 -2
- package/dist/{RemoveDialog-DGt_72we.cjs.map → RemoveDialog-DmOk0ezc.cjs.map} +1 -1
- package/dist/{RichTextEditor-C_6pzqYY.js → RichTextEditor-Bm8FFbcR.js} +7 -7
- package/dist/{RichTextEditor-C_6pzqYY.js.map → RichTextEditor-Bm8FFbcR.js.map} +1 -1
- package/dist/{RichTextEditor-BuoywqBu.cjs → RichTextEditor-uXddgtlk.cjs} +2 -2
- package/dist/{RichTextEditor-BuoywqBu.cjs.map → RichTextEditor-uXddgtlk.cjs.map} +1 -1
- package/dist/RootLayout-Cf7Rr9Iz.js +515 -0
- package/dist/RootLayout-Cf7Rr9Iz.js.map +1 -0
- package/dist/RootLayout-kssj9exn.cjs +2 -0
- package/dist/RootLayout-kssj9exn.cjs.map +1 -0
- package/dist/{Select-CVy5BnKe.cjs → Select-7vEGJCvA.cjs} +2 -2
- package/dist/{Select-CVy5BnKe.cjs.map → Select-7vEGJCvA.cjs.map} +1 -1
- package/dist/{Select-ChT-6_bM.js → Select-CdX3Ks7y.js} +3 -3
- package/dist/{Select-ChT-6_bM.js.map → Select-CdX3Ks7y.js.map} +1 -1
- package/dist/{Sidebar-D2MsR33k.cjs → Sidebar-DcKIEfhy.cjs} +2 -2
- package/dist/{Sidebar-D2MsR33k.cjs.map → Sidebar-DcKIEfhy.cjs.map} +1 -1
- package/dist/{Sidebar-ZA1wxCez.js → Sidebar-YH-DoNG9.js} +3 -3
- package/dist/{Sidebar-ZA1wxCez.js.map → Sidebar-YH-DoNG9.js.map} +1 -1
- package/dist/{SpeedDial-B9JTNNUU.cjs → SpeedDial-9_Yk8AGx.cjs} +2 -2
- package/dist/{SpeedDial-B9JTNNUU.cjs.map → SpeedDial-9_Yk8AGx.cjs.map} +1 -1
- package/dist/{SpeedDial-DUYQMDCY.js → SpeedDial-DWNuC6f8.js} +2 -2
- package/dist/{SpeedDial-DUYQMDCY.js.map → SpeedDial-DWNuC6f8.js.map} +1 -1
- package/dist/{Stepper-BaC934rb.cjs → Stepper-B1z_u650.cjs} +2 -2
- package/dist/{Stepper-BaC934rb.cjs.map → Stepper-B1z_u650.cjs.map} +1 -1
- package/dist/{Stepper-D89I17pC.js → Stepper-CuqFpamY.js} +2 -2
- package/dist/{Stepper-D89I17pC.js.map → Stepper-CuqFpamY.js.map} +1 -1
- package/dist/{Table-DvgBWTLx.cjs → Table-BPit83Pn.cjs} +2 -2
- package/dist/{Table-DvgBWTLx.cjs.map → Table-BPit83Pn.cjs.map} +1 -1
- package/dist/{Table-CdIQ5Wfh.js → Table-Drdhfm99.js} +15 -15
- package/dist/{Table-CdIQ5Wfh.js.map → Table-Drdhfm99.js.map} +1 -1
- package/dist/{Tabs-CejCwV3O.cjs → Tabs-BiKDy_fv.cjs} +2 -2
- package/dist/{Tabs-CejCwV3O.cjs.map → Tabs-BiKDy_fv.cjs.map} +1 -1
- package/dist/{Tabs-8-klG-y-.js → Tabs-ytbBzAxG.js} +2 -2
- package/dist/{Tabs-8-klG-y-.js.map → Tabs-ytbBzAxG.js.map} +1 -1
- package/dist/{TagsField-BQLqUckB.js → TagsField-CEt_PC5y.js} +4 -4
- package/dist/{TagsField-BQLqUckB.js.map → TagsField-CEt_PC5y.js.map} +1 -1
- package/dist/{TagsField-BSAd4eUr.cjs → TagsField-DpDbf0ru.cjs} +2 -2
- package/dist/{TagsField-BSAd4eUr.cjs.map → TagsField-DpDbf0ru.cjs.map} +1 -1
- package/dist/{TextField-B4YtjNUs.js → TextField-BWdmF-HE.js} +3 -3
- package/dist/{TextField-B4YtjNUs.js.map → TextField-BWdmF-HE.js.map} +1 -1
- package/dist/{TextField-DzYGA_St.cjs → TextField-Df_kGy2l.cjs} +2 -2
- package/dist/{TextField-DzYGA_St.cjs.map → TextField-Df_kGy2l.cjs.map} +1 -1
- package/dist/{ThemeToggle-BKk0eFiB.cjs → ThemeToggle-BJdXhmfc.cjs} +2 -2
- package/dist/{ThemeToggle-BKk0eFiB.cjs.map → ThemeToggle-BJdXhmfc.cjs.map} +1 -1
- package/dist/{ThemeToggle-B4_zRHJY.js → ThemeToggle-CgxF6oUu.js} +3 -3
- package/dist/{ThemeToggle-B4_zRHJY.js.map → ThemeToggle-CgxF6oUu.js.map} +1 -1
- package/dist/{TimeColumns-BAzRrkqY.cjs → TimeColumns-DxVN0V8l.cjs} +2 -2
- package/dist/{TimeColumns-BAzRrkqY.cjs.map → TimeColumns-DxVN0V8l.cjs.map} +1 -1
- package/dist/{TimeColumns-CAPyli9V.js → TimeColumns-n-fz50mr.js} +2 -2
- package/dist/{TimeColumns-CAPyli9V.js.map → TimeColumns-n-fz50mr.js.map} +1 -1
- package/dist/{TimePicker-BebBSlQF.js → TimePicker-Bopxx3zU.js} +5 -5
- package/dist/{TimePicker-BebBSlQF.js.map → TimePicker-Bopxx3zU.js.map} +1 -1
- package/dist/{TimePicker-BUnXYR5g.cjs → TimePicker-DvoemiGz.cjs} +2 -2
- package/dist/{TimePicker-BUnXYR5g.cjs.map → TimePicker-DvoemiGz.cjs.map} +1 -1
- package/dist/{Toaster-ywqAKP8s.js → Toaster-BxIY2H4V.js} +2 -2
- package/dist/{Toaster-ywqAKP8s.js.map → Toaster-BxIY2H4V.js.map} +1 -1
- package/dist/{Toaster-B2rO4BkG.cjs → Toaster-DZSzFse_.cjs} +2 -2
- package/dist/{Toaster-B2rO4BkG.cjs.map → Toaster-DZSzFse_.cjs.map} +1 -1
- package/dist/{TranslatedFields-DQQUb0RD.cjs → TranslatedFields-BtDLkQy7.cjs} +2 -2
- package/dist/{TranslatedFields-DQQUb0RD.cjs.map → TranslatedFields-BtDLkQy7.cjs.map} +1 -1
- package/dist/{TranslatedFields-C-wlh51E.js → TranslatedFields-DmR8LKSG.js} +5 -5
- package/dist/{TranslatedFields-C-wlh51E.js.map → TranslatedFields-DmR8LKSG.js.map} +1 -1
- package/dist/{UserCard-Be1kl0TZ.cjs → UserCard-C1yFvVIc.cjs} +2 -2
- package/dist/{UserCard-Be1kl0TZ.cjs.map → UserCard-C1yFvVIc.cjs.map} +1 -1
- package/dist/{UserCard-BqWt0S-c.js → UserCard-J8Bpbh3x.js} +3 -3
- package/dist/{UserCard-BqWt0S-c.js.map → UserCard-J8Bpbh3x.js.map} +1 -1
- package/dist/components/Alert/index.cjs +1 -1
- package/dist/components/Alert/index.js +1 -1
- package/dist/components/Blockquote/Blockquote.d.cts +1 -1
- package/dist/components/Blockquote/Blockquote.d.ts +1 -1
- package/dist/components/Blockquote/index.cjs +1 -1
- package/dist/components/Blockquote/index.js +1 -1
- 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/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/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/EmptyState/index.cjs +1 -1
- package/dist/components/EmptyState/index.js +1 -1
- 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/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/Loader/index.cjs +1 -1
- package/dist/components/Loader/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/OtpField.d.cts +3 -0
- package/dist/components/OtpField/OtpField.d.ts +3 -0
- package/dist/components/OtpField/index.cjs +1 -1
- package/dist/components/OtpField/index.d.cts +1 -1
- package/dist/components/OtpField/index.d.ts +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/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/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/SettingsDrawer.d.cts +3 -1
- package/dist/components/RootLayout/SettingsDrawer.d.ts +3 -1
- 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/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/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/UserCard/index.cjs +1 -1
- package/dist/components/UserCard/index.js +1 -1
- 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 +41 -41
- 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.d.cts +1 -1
- package/dist/entries/theme.d.ts +1 -1
- package/dist/entries/theme.js +1 -1
- package/dist/i18n/messages.d.cts +6 -0
- package/dist/i18n/messages.d.ts +6 -0
- package/dist/index.cjs +1 -1
- package/dist/index.css +25 -2
- package/dist/index.js +44 -44
- package/dist/{messages-Dvn_tEp0.cjs → messages-DKT0SRM0.cjs} +9 -9
- package/dist/messages-DKT0SRM0.cjs.map +1 -0
- package/dist/{messages-CL8uoIRj.js → messages-ogohLC5P.js} +67 -25
- package/dist/messages-ogohLC5P.js.map +1 -0
- package/dist/theme/ConfigProvider.d.cts +19 -0
- package/dist/theme/ConfigProvider.d.ts +19 -0
- package/dist/theme/index.d.cts +1 -1
- package/dist/theme/index.d.ts +1 -1
- package/package.json +1 -1
- package/dist/Alert-Cl1zxmX9.cjs +0 -2
- package/dist/Alert-D6VL2C-E.js +0 -71
- package/dist/Blockquote-CNIuJFHq.js +0 -46
- package/dist/Blockquote-CxHwOecc.cjs +0 -2
- package/dist/ConfigProvider-Blhvj6UQ.js +0 -296
- package/dist/ConfigProvider-Blhvj6UQ.js.map +0 -1
- package/dist/ConfigProvider-CUG8Mfy2.cjs +0 -2
- package/dist/ConfigProvider-CUG8Mfy2.cjs.map +0 -1
- package/dist/EmptyState-DlX-BLLI.cjs +0 -2
- package/dist/Loader-DwmyJFwG.js +0 -28
- package/dist/Modal-Cx0JEQ-j.js +0 -195
- package/dist/Modal-DXZdMmJh.cjs +0 -2
- package/dist/OtpField-BujZAy2A.cjs +0 -2
- package/dist/OtpField-BujZAy2A.cjs.map +0 -1
- package/dist/OtpField-D0eTOLtg.js +0 -171
- package/dist/OtpField-D0eTOLtg.js.map +0 -1
- package/dist/RootLayout-1am1CwPQ.cjs +0 -2
- package/dist/RootLayout-1am1CwPQ.cjs.map +0 -1
- package/dist/RootLayout-x7qWzXPc.js +0 -479
- package/dist/RootLayout-x7qWzXPc.js.map +0 -1
- package/dist/messages-CL8uoIRj.js.map +0 -1
- package/dist/messages-Dvn_tEp0.cjs.map +0 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const e=require("react/jsx-runtime"),o=require("@tanstack/react-router"),x=require("./AuthGuard-kfOZviar.cjs"),R=require("./RootLayout-
|
|
2
|
-
//# sourceMappingURL=AdminRoot-
|
|
1
|
+
"use strict";const e=require("react/jsx-runtime"),o=require("@tanstack/react-router"),x=require("./AuthGuard-kfOZviar.cjs"),R=require("./RootLayout-kssj9exn.cjs"),g=require("./UserCard-C1yFvVIc.cjs"),q=require("./Toaster-DZSzFse_.cjs"),A=({logo:s,getUser:u,onLogout:n,authRouteId:i="/_auth",loginPath:r="/login",showUserCard:c=!0,header:d})=>{const l=o.useNavigate(),m=o.useRouterState({select:j=>j.matches.some(v=>v.routeId.startsWith(i))}),t=u(),a=()=>{n(),l({to:r})},h=m?e.jsx(o.Outlet,{}):e.jsx(x.AuthGuard,{isAuthenticated:t!=null,redirectTo:r,children:e.jsx(R.RootLayout,{logo:s,toaster:!1,header:{user:t?{name:t.name,email:t.email,avatar:t.avatar}:void 0,onLogout:a,...d},sidebarFooter:c&&t?e.jsx(g.UserCard,{name:t.name,email:t.email,avatar:t.avatar,onLogout:a}):void 0,children:e.jsx(o.Outlet,{})})});return e.jsxs(e.Fragment,{children:[h,e.jsx(q.Toaster,{})]})};exports.AdminRoot=A;
|
|
2
|
+
//# sourceMappingURL=AdminRoot-BkPPRkyQ.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdminRoot-
|
|
1
|
+
{"version":3,"file":"AdminRoot-BkPPRkyQ.cjs","sources":["../src/app/AdminRoot.tsx"],"sourcesContent":["import type { ReactNode } from 'react'\nimport { Outlet, useNavigate, useRouterState, type LinkProps } from '@tanstack/react-router'\nimport { RootLayout, UserCard, Toaster, type RootLayoutHeader } from '../components'\nimport { AuthGuard } from '../auth/AuthGuard'\n\n/** The minimal user shape `AdminRoot` reads — apps pass their own richer type via the generic. */\nexport interface AdminUser {\n name?: string\n email?: string\n avatar?: string\n}\n\nexport interface AdminRootProps<U extends AdminUser = AdminUser> {\n /** Brand mark for the sidebar top. */\n logo?: ReactNode\n /** Current user, or `null` when signed out. */\n getUser: () => U | null\n /** Clears the session; `AdminRoot` navigates to `loginPath` afterwards. */\n onLogout: () => void\n /** Route-id prefix for standalone public pages (rendered outside the shell). Default `'/_auth'`. */\n authRouteId?: string\n /** Guard target for signed-out visitors + post-logout redirect. Default `'/login'`. */\n loginPath?: string\n /** Show a `UserCard` in the sidebar footer. Default `true`. */\n showUserCard?: boolean\n /**\n * Extra `RootLayout` header config, merged **over** the defaults (the app's fields win). Flows through\n * unchanged — e.g. **`header.menu`** (`HeaderMenuItem[]`) adds items to the account menu above Sign out.\n */\n header?: RootLayoutHeader\n}\n\n/**\n * Root-route component for admin apps — it wires up the whole shell orchestration so an app only has to\n * supply `logo` + `getUser` + `onLogout`. Public pages (route id under `authRouteId`) render standalone;\n * everything else renders inside the guarded admin shell (`RootLayout` + a sidebar `UserCard`), gated by\n * `AuthGuard` (signed-out visitors bounce to `loginPath`). Logout clears the session and navigates to\n * `loginPath`. Mounts exactly one app-wide `<Toaster/>` (the inner `RootLayout` gets `toaster={false}`).\n *\n * `loginPath` is a plain string, cast loosely to the router's `to` type (the library can't know the\n * app's typed route tree). The generic `<U>` preserves the app's own user type through `getUser`.\n *\n * @example\n * // routes/__root.tsx\n * export const Route = createRootRoute({\n * component: () => <AdminRoot<AuthUser> logo={<Logo />} getUser={getUser} onLogout={logout} />,\n * })\n */\nexport const AdminRoot = <U extends AdminUser = AdminUser>({\n logo,\n getUser,\n onLogout,\n authRouteId = '/_auth',\n loginPath = '/login',\n showUserCard = true,\n header,\n}: AdminRootProps<U>) => {\n const navigate = useNavigate()\n const isAuthRoute = useRouterState({\n select: (s) => s.matches.some((m) => m.routeId.startsWith(authRouteId)),\n })\n const user = getUser()\n const handleLogout = () => {\n onLogout()\n navigate({ to: loginPath as LinkProps['to'] })\n }\n const content = isAuthRoute ? (\n <Outlet />\n ) : (\n <AuthGuard isAuthenticated={user != null} redirectTo={loginPath}>\n <RootLayout\n logo={logo}\n toaster={false}\n header={{\n user: user ? { name: user.name, email: user.email, avatar: user.avatar } : undefined,\n onLogout: handleLogout,\n ...header,\n }}\n sidebarFooter={\n showUserCard && user ? (\n <UserCard\n name={user.name}\n email={user.email}\n avatar={user.avatar}\n onLogout={handleLogout}\n />\n ) : undefined\n }\n >\n <Outlet />\n </RootLayout>\n </AuthGuard>\n )\n return (\n <>\n {content}\n <Toaster />\n </>\n )\n}\n"],"names":["AdminRoot","logo","getUser","onLogout","authRouteId","loginPath","showUserCard","header","navigate","useNavigate","isAuthRoute","useRouterState","s","m","user","handleLogout","content","jsx","Outlet","AuthGuard","RootLayout","UserCard","jsxs","Fragment","Toaster"],"mappings":"4OAgDaA,EAAY,CAAkC,CACzD,KAAAC,EACA,QAAAC,EACA,SAAAC,EACA,YAAAC,EAAc,SACd,UAAAC,EAAY,SACZ,aAAAC,EAAe,GACf,OAAAC,CACF,IAAyB,CACvB,MAAMC,EAAWC,EAAAA,YAAA,EACXC,EAAcC,EAAAA,eAAe,CACjC,OAASC,GAAMA,EAAE,QAAQ,KAAMC,GAAMA,EAAE,QAAQ,WAAWT,CAAW,CAAC,CAAA,CACvE,EACKU,EAAOZ,EAAA,EACPa,EAAe,IAAM,CACzBZ,EAAA,EACAK,EAAS,CAAE,GAAIH,EAA8B,CAC/C,EACMW,EAAUN,EACdO,EAAAA,IAACC,EAAAA,OAAA,CAAA,CAAO,EAERD,EAAAA,IAACE,EAAAA,UAAA,CAAU,gBAAiBL,GAAQ,KAAM,WAAYT,EACpD,SAAAY,EAAAA,IAACG,EAAAA,WAAA,CACC,KAAAnB,EACA,QAAS,GACT,OAAQ,CACN,KAAMa,EAAO,CAAE,KAAMA,EAAK,KAAM,MAAOA,EAAK,MAAO,OAAQA,EAAK,MAAA,EAAW,OAC3E,SAAUC,EACV,GAAGR,CAAA,EAEL,cACED,GAAgBQ,EACdG,EAAAA,IAACI,EAAAA,SAAA,CACC,KAAMP,EAAK,KACX,MAAOA,EAAK,MACZ,OAAQA,EAAK,OACb,SAAUC,CAAA,CAAA,EAEV,OAGN,eAACG,EAAAA,OAAA,CAAA,CAAO,CAAA,CAAA,EAEZ,EAEF,OACEI,EAAAA,KAAAC,WAAA,CACG,SAAA,CAAAP,QACAQ,EAAAA,QAAA,CAAA,CAAQ,CAAA,EACX,CAEJ"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { jsx as o, jsxs as p, Fragment as g } from "react/jsx-runtime";
|
|
2
2
|
import { useNavigate as A, useRouterState as R, Outlet as r } from "@tanstack/react-router";
|
|
3
3
|
import { A as L } from "./AuthGuard-CVklwDbj.js";
|
|
4
|
-
import { R as x } from "./RootLayout-
|
|
5
|
-
import { U as T } from "./UserCard-
|
|
6
|
-
import { T as j } from "./Toaster-
|
|
4
|
+
import { R as x } from "./RootLayout-Cf7Rr9Iz.js";
|
|
5
|
+
import { U as T } from "./UserCard-J8Bpbh3x.js";
|
|
6
|
+
import { T as j } from "./Toaster-BxIY2H4V.js";
|
|
7
7
|
const I = ({
|
|
8
8
|
logo: s,
|
|
9
9
|
getUser: i,
|
|
@@ -47,4 +47,4 @@ const I = ({
|
|
|
47
47
|
export {
|
|
48
48
|
I as A
|
|
49
49
|
};
|
|
50
|
-
//# sourceMappingURL=AdminRoot-
|
|
50
|
+
//# sourceMappingURL=AdminRoot-CgvtgUpW.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdminRoot-
|
|
1
|
+
{"version":3,"file":"AdminRoot-CgvtgUpW.js","sources":["../src/app/AdminRoot.tsx"],"sourcesContent":["import type { ReactNode } from 'react'\nimport { Outlet, useNavigate, useRouterState, type LinkProps } from '@tanstack/react-router'\nimport { RootLayout, UserCard, Toaster, type RootLayoutHeader } from '../components'\nimport { AuthGuard } from '../auth/AuthGuard'\n\n/** The minimal user shape `AdminRoot` reads — apps pass their own richer type via the generic. */\nexport interface AdminUser {\n name?: string\n email?: string\n avatar?: string\n}\n\nexport interface AdminRootProps<U extends AdminUser = AdminUser> {\n /** Brand mark for the sidebar top. */\n logo?: ReactNode\n /** Current user, or `null` when signed out. */\n getUser: () => U | null\n /** Clears the session; `AdminRoot` navigates to `loginPath` afterwards. */\n onLogout: () => void\n /** Route-id prefix for standalone public pages (rendered outside the shell). Default `'/_auth'`. */\n authRouteId?: string\n /** Guard target for signed-out visitors + post-logout redirect. Default `'/login'`. */\n loginPath?: string\n /** Show a `UserCard` in the sidebar footer. Default `true`. */\n showUserCard?: boolean\n /**\n * Extra `RootLayout` header config, merged **over** the defaults (the app's fields win). Flows through\n * unchanged — e.g. **`header.menu`** (`HeaderMenuItem[]`) adds items to the account menu above Sign out.\n */\n header?: RootLayoutHeader\n}\n\n/**\n * Root-route component for admin apps — it wires up the whole shell orchestration so an app only has to\n * supply `logo` + `getUser` + `onLogout`. Public pages (route id under `authRouteId`) render standalone;\n * everything else renders inside the guarded admin shell (`RootLayout` + a sidebar `UserCard`), gated by\n * `AuthGuard` (signed-out visitors bounce to `loginPath`). Logout clears the session and navigates to\n * `loginPath`. Mounts exactly one app-wide `<Toaster/>` (the inner `RootLayout` gets `toaster={false}`).\n *\n * `loginPath` is a plain string, cast loosely to the router's `to` type (the library can't know the\n * app's typed route tree). The generic `<U>` preserves the app's own user type through `getUser`.\n *\n * @example\n * // routes/__root.tsx\n * export const Route = createRootRoute({\n * component: () => <AdminRoot<AuthUser> logo={<Logo />} getUser={getUser} onLogout={logout} />,\n * })\n */\nexport const AdminRoot = <U extends AdminUser = AdminUser>({\n logo,\n getUser,\n onLogout,\n authRouteId = '/_auth',\n loginPath = '/login',\n showUserCard = true,\n header,\n}: AdminRootProps<U>) => {\n const navigate = useNavigate()\n const isAuthRoute = useRouterState({\n select: (s) => s.matches.some((m) => m.routeId.startsWith(authRouteId)),\n })\n const user = getUser()\n const handleLogout = () => {\n onLogout()\n navigate({ to: loginPath as LinkProps['to'] })\n }\n const content = isAuthRoute ? (\n <Outlet />\n ) : (\n <AuthGuard isAuthenticated={user != null} redirectTo={loginPath}>\n <RootLayout\n logo={logo}\n toaster={false}\n header={{\n user: user ? { name: user.name, email: user.email, avatar: user.avatar } : undefined,\n onLogout: handleLogout,\n ...header,\n }}\n sidebarFooter={\n showUserCard && user ? (\n <UserCard\n name={user.name}\n email={user.email}\n avatar={user.avatar}\n onLogout={handleLogout}\n />\n ) : undefined\n }\n >\n <Outlet />\n </RootLayout>\n </AuthGuard>\n )\n return (\n <>\n {content}\n <Toaster />\n </>\n )\n}\n"],"names":["AdminRoot","logo","getUser","onLogout","authRouteId","loginPath","showUserCard","header","navigate","useNavigate","isAuthRoute","useRouterState","s","m","user","handleLogout","content","jsx","Outlet","AuthGuard","RootLayout","UserCard","jsxs","Fragment","Toaster"],"mappings":";;;;;;AAgDO,MAAMA,IAAY,CAAkC;AAAA,EACzD,MAAAC;AAAA,EACA,SAAAC;AAAA,EACA,UAAAC;AAAA,EACA,aAAAC,IAAc;AAAA,EACd,WAAAC,IAAY;AAAA,EACZ,cAAAC,IAAe;AAAA,EACf,QAAAC;AACF,MAAyB;AACvB,QAAMC,IAAWC,EAAA,GACXC,IAAcC,EAAe;AAAA,IACjC,QAAQ,CAACC,MAAMA,EAAE,QAAQ,KAAK,CAACC,MAAMA,EAAE,QAAQ,WAAWT,CAAW,CAAC;AAAA,EAAA,CACvE,GACKU,IAAOZ,EAAA,GACPa,IAAe,MAAM;AACzB,IAAAZ,EAAA,GACAK,EAAS,EAAE,IAAIH,GAA8B;AAAA,EAC/C,GACMW,IAAUN,IACd,gBAAAO,EAACC,GAAA,CAAA,CAAO,IAER,gBAAAD,EAACE,GAAA,EAAU,iBAAiBL,KAAQ,MAAM,YAAYT,GACpD,UAAA,gBAAAY;AAAA,IAACG;AAAA,IAAA;AAAA,MACC,MAAAnB;AAAA,MACA,SAAS;AAAA,MACT,QAAQ;AAAA,QACN,MAAMa,IAAO,EAAE,MAAMA,EAAK,MAAM,OAAOA,EAAK,OAAO,QAAQA,EAAK,OAAA,IAAW;AAAA,QAC3E,UAAUC;AAAA,QACV,GAAGR;AAAA,MAAA;AAAA,MAEL,eACED,KAAgBQ,IACd,gBAAAG;AAAA,QAACI;AAAA,QAAA;AAAA,UACC,MAAMP,EAAK;AAAA,UACX,OAAOA,EAAK;AAAA,UACZ,QAAQA,EAAK;AAAA,UACb,UAAUC;AAAA,QAAA;AAAA,MAAA,IAEV;AAAA,MAGN,4BAACG,GAAA,CAAA,CAAO;AAAA,IAAA;AAAA,EAAA,GAEZ;AAEF,SACE,gBAAAI,EAAAC,GAAA,EACG,UAAA;AAAA,IAAAP;AAAA,sBACAQ,GAAA,CAAA,CAAQ;AAAA,EAAA,GACX;AAEJ;"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { jsx as e, jsxs as p } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as I } from "react";
|
|
3
|
+
import { clsx as N } from "clsx";
|
|
4
|
+
import { I as l } from "./Icon-DaTvzLBu.js";
|
|
5
|
+
import { a as g } from "./names-r21QPjcU.js";
|
|
6
|
+
import { I as C } from "./IconButton-BEGWfcVc.js";
|
|
7
|
+
import { a as x } from "./ConfigProvider-DR9YMy9U.js";
|
|
8
|
+
const h = "_alert_13lvf_3", A = "_filled_13lvf_19", b = "_contained_13lvf_22", z = "_outlined_13lvf_26", E = "_text_13lvf_30", T = "_icon_13lvf_35", w = "_message_13lvf_44", y = "_action_13lvf_50", O = "_close_13lvf_57", n = {
|
|
9
|
+
alert: h,
|
|
10
|
+
filled: A,
|
|
11
|
+
contained: b,
|
|
12
|
+
outlined: z,
|
|
13
|
+
text: E,
|
|
14
|
+
icon: T,
|
|
15
|
+
message: w,
|
|
16
|
+
action: y,
|
|
17
|
+
close: O
|
|
18
|
+
}, S = new Set(g), j = {
|
|
19
|
+
success: "TickCircle",
|
|
20
|
+
error: "CloseCircle",
|
|
21
|
+
warning: "Warning",
|
|
22
|
+
info: "InfoCircle"
|
|
23
|
+
}, U = I(function({
|
|
24
|
+
variant: c = "filled",
|
|
25
|
+
color: s = "info",
|
|
26
|
+
icon: t,
|
|
27
|
+
action: o,
|
|
28
|
+
onClose: a,
|
|
29
|
+
closeLabel: i,
|
|
30
|
+
className: f,
|
|
31
|
+
style: _,
|
|
32
|
+
children: m,
|
|
33
|
+
...d
|
|
34
|
+
}, v) {
|
|
35
|
+
const u = x(), r = t === !1 ? null : t == null ? /* @__PURE__ */ e(l, { name: j[s] ?? "InfoCircle" }) : typeof t == "string" && S.has(t) ? /* @__PURE__ */ e(l, { name: t }) : t;
|
|
36
|
+
return /* @__PURE__ */ p(
|
|
37
|
+
"div",
|
|
38
|
+
{
|
|
39
|
+
ref: v,
|
|
40
|
+
role: "alert",
|
|
41
|
+
className: N(n.alert, n[c], f),
|
|
42
|
+
style: {
|
|
43
|
+
"--tz-btn-rgb": `var(--tz-color-${s}-rgb)`,
|
|
44
|
+
"--tz-btn-on": `var(--tz-color-${s}-contrast, #fff)`,
|
|
45
|
+
..._
|
|
46
|
+
},
|
|
47
|
+
...d,
|
|
48
|
+
children: [
|
|
49
|
+
r != null && /* @__PURE__ */ e("span", { className: n.icon, "aria-hidden": !0, children: r }),
|
|
50
|
+
/* @__PURE__ */ e("div", { className: n.message, children: m }),
|
|
51
|
+
o != null && /* @__PURE__ */ e("div", { className: n.action, children: o }),
|
|
52
|
+
a && /* @__PURE__ */ e(
|
|
53
|
+
C,
|
|
54
|
+
{
|
|
55
|
+
variant: "text",
|
|
56
|
+
color: s,
|
|
57
|
+
size: "sm",
|
|
58
|
+
className: n.close,
|
|
59
|
+
"aria-label": i ?? u("common.close"),
|
|
60
|
+
onClick: a,
|
|
61
|
+
children: /* @__PURE__ */ e(l, { name: "Close" })
|
|
62
|
+
}
|
|
63
|
+
)
|
|
64
|
+
]
|
|
65
|
+
}
|
|
66
|
+
);
|
|
67
|
+
});
|
|
68
|
+
export {
|
|
69
|
+
U as A
|
|
70
|
+
};
|
|
71
|
+
//# sourceMappingURL=Alert-DXmzM_rh.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Alert-
|
|
1
|
+
{"version":3,"file":"Alert-DXmzM_rh.js","sources":["../src/components/Alert/Alert.tsx"],"sourcesContent":["import { forwardRef, type CSSProperties, type HTMLAttributes, type ReactNode } from 'react'\nimport { clsx } from 'clsx'\nimport { Icon } from '../Icon'\nimport { IconButton } from '../IconButton'\nimport { ICON_NAMES, type IconName } from '../../icons/names'\nimport { useT, type ThemeColor } from '../../theme'\nimport styles from './Alert.module.css'\n\nexport type AlertVariant = 'contained' | 'filled' | 'outlined' | 'text'\n\nconst ICON_NAME_SET = new Set<string>(ICON_NAMES)\n\n/** Default leading icon per semantic color (other colors fall back to `InfoCircle`). */\nconst DEFAULT_ICON: Partial<Record<ThemeColor, IconName>> = {\n success: 'TickCircle',\n error: 'CloseCircle',\n warning: 'Warning',\n info: 'InfoCircle',\n}\n\nexport interface AlertProps extends Omit<HTMLAttributes<HTMLDivElement>, 'color' | 'title'> {\n /** Tint style. Defaults to `filled` (the soft tint). */\n variant?: AlertVariant\n /** Brand / semantic palette token that tints the alert. Defaults to `info`. */\n color?: ThemeColor\n /**\n * Leading icon — a known `IconName`, any node, or `false` to hide it. Defaults to the semantic icon\n * for `color` (success → `TickCircle`, error → `CloseCircle`, warning → `Warning`, info → `InfoCircle`).\n */\n icon?: IconName | ReactNode | false\n /** Trailing action (e.g. an `UNDO` button), placed before the close button. */\n action?: ReactNode\n /** When provided, a trailing × close button appears that calls this. */\n onClose?: () => void\n /** Accessible label for the close button. Defaults to `\"Close\"`. */\n closeLabel?: string\n /** Alert message. */\n children?: ReactNode\n}\n\n/**\n * A message banner — the library's inline feedback surface (info, success, warning, error). Tinted by\n * `color` via the shared `--tz-btn-rgb` pattern across the 4 standard `variant`s; a semantic leading\n * `icon` is auto-picked per color (override with `icon`, or `icon={false}` to drop it). An optional\n * `action` slot (e.g. an `UNDO` button) and an `onClose` × button trail the message. `role=\"alert\"`.\n */\nexport const Alert = forwardRef<HTMLDivElement, AlertProps>(function Alert(\n {\n variant = 'filled',\n color = 'info',\n icon,\n action,\n onClose,\n closeLabel,\n className,\n style,\n children,\n ...props\n },\n ref,\n) {\n const t = useT()\n const renderedIcon =\n icon === false ? null : icon == null ? (\n <Icon name={DEFAULT_ICON[color] ?? 'InfoCircle'} />\n ) : typeof icon === 'string' && ICON_NAME_SET.has(icon) ? (\n <Icon name={icon as IconName} />\n ) : (\n icon\n )\n\n return (\n <div\n ref={ref}\n role=\"alert\"\n className={clsx(styles.alert, styles[variant], className)}\n style={\n {\n '--tz-btn-rgb': `var(--tz-color-${color}-rgb)`,\n '--tz-btn-on': `var(--tz-color-${color}-contrast, #fff)`,\n ...style,\n } as CSSProperties\n }\n {...props}\n >\n {renderedIcon != null && (\n <span className={styles.icon} aria-hidden>\n {renderedIcon}\n </span>\n )}\n <div className={styles.message}>{children}</div>\n {action != null && <div className={styles.action}>{action}</div>}\n {onClose && (\n <IconButton\n variant=\"text\"\n color={color}\n size=\"sm\"\n className={styles.close}\n aria-label={closeLabel ?? t('common.close')}\n onClick={onClose}\n >\n <Icon name=\"Close\" />\n </IconButton>\n )}\n </div>\n )\n})\n"],"names":["ICON_NAME_SET","ICON_NAMES","DEFAULT_ICON","Alert","forwardRef","variant","color","icon","action","onClose","closeLabel","className","style","children","props","ref","t","useT","renderedIcon","jsx","Icon","jsxs","clsx","styles","IconButton"],"mappings":";;;;;;;;;;;;;;;;;GAUMA,IAAgB,IAAI,IAAYC,CAAU,GAG1CC,IAAsD;AAAA,EAC1D,SAAS;AAAA,EACT,OAAO;AAAA,EACP,SAAS;AAAA,EACT,MAAM;AACR,GA4BaC,IAAQC,EAAuC,SAC1D;AAAA,EACE,SAAAC,IAAU;AAAA,EACV,OAAAC,IAAQ;AAAA,EACR,MAAAC;AAAA,EACA,QAAAC;AAAA,EACA,SAAAC;AAAA,EACA,YAAAC;AAAA,EACA,WAAAC;AAAA,EACA,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,GAAGC;AACL,GACAC,GACA;AACA,QAAMC,IAAIC,EAAA,GACJC,IACJX,MAAS,KAAQ,OAAOA,KAAQ,OAC9B,gBAAAY,EAACC,GAAA,EAAK,MAAMlB,EAAaI,CAAK,KAAK,cAAc,IAC/C,OAAOC,KAAS,YAAYP,EAAc,IAAIO,CAAI,IACpD,gBAAAY,EAACC,GAAA,EAAK,MAAMb,EAAA,CAAkB,IAE9BA;AAGJ,SACE,gBAAAc;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAAN;AAAA,MACA,MAAK;AAAA,MACL,WAAWO,EAAKC,EAAO,OAAOA,EAAOlB,CAAO,GAAGM,CAAS;AAAA,MACxD,OACE;AAAA,QACE,gBAAgB,kBAAkBL,CAAK;AAAA,QACvC,eAAe,kBAAkBA,CAAK;AAAA,QACtC,GAAGM;AAAA,MAAA;AAAA,MAGN,GAAGE;AAAA,MAEH,UAAA;AAAA,QAAAI,KAAgB,0BACd,QAAA,EAAK,WAAWK,EAAO,MAAM,eAAW,IACtC,UAAAL,EAAA,CACH;AAAA,QAEF,gBAAAC,EAAC,OAAA,EAAI,WAAWI,EAAO,SAAU,UAAAV,GAAS;AAAA,QACzCL,KAAU,QAAQ,gBAAAW,EAAC,SAAI,WAAWI,EAAO,QAAS,UAAAf,GAAO;AAAA,QACzDC,KACC,gBAAAU;AAAA,UAACK;AAAA,UAAA;AAAA,YACC,SAAQ;AAAA,YACR,OAAAlB;AAAA,YACA,MAAK;AAAA,YACL,WAAWiB,EAAO;AAAA,YAClB,cAAYb,KAAcM,EAAE,cAAc;AAAA,YAC1C,SAASP;AAAA,YAET,UAAA,gBAAAU,EAACC,GAAA,EAAK,MAAK,QAAA,CAAQ;AAAA,UAAA;AAAA,QAAA;AAAA,MACrB;AAAA,IAAA;AAAA,EAAA;AAIR,CAAC;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";const e=require("react/jsx-runtime"),x=require("react"),I=require("clsx"),l=require("./Icon-BVULqOJD.cjs"),g=require("./names-BJnFU_5m.cjs"),C=require("./IconButton-BN-bZxEi.cjs"),N=require("./ConfigProvider-Bszl3Wr3.cjs"),j="_alert_13lvf_3",q="_filled_13lvf_19",h="_contained_13lvf_22",A="_outlined_13lvf_26",b="_text_13lvf_30",z="_icon_13lvf_35",E="_message_13lvf_44",T="_action_13lvf_50",w="_close_13lvf_57",s={alert:j,filled:q,contained:h,outlined:A,text:b,icon:z,message:E,action:T,close:w},y=new Set(g.ICON_NAMES),O={success:"TickCircle",error:"CloseCircle",warning:"Warning",info:"InfoCircle"},S=x.forwardRef(function({variant:i="filled",color:t="info",icon:n,action:c,onClose:o,closeLabel:a,className:_,style:f,children:d,...u},m){const v=N.useT(),r=n===!1?null:n==null?e.jsx(l.Icon,{name:O[t]??"InfoCircle"}):typeof n=="string"&&y.has(n)?e.jsx(l.Icon,{name:n}):n;return e.jsxs("div",{ref:m,role:"alert",className:I.clsx(s.alert,s[i],_),style:{"--tz-btn-rgb":`var(--tz-color-${t}-rgb)`,"--tz-btn-on":`var(--tz-color-${t}-contrast, #fff)`,...f},...u,children:[r!=null&&e.jsx("span",{className:s.icon,"aria-hidden":!0,children:r}),e.jsx("div",{className:s.message,children:d}),c!=null&&e.jsx("div",{className:s.action,children:c}),o&&e.jsx(C.IconButton,{variant:"text",color:t,size:"sm",className:s.close,"aria-label":a??v("common.close"),onClick:o,children:e.jsx(l.Icon,{name:"Close"})})]})});exports.Alert=S;
|
|
2
|
+
//# sourceMappingURL=Alert-udX1ybuC.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Alert-
|
|
1
|
+
{"version":3,"file":"Alert-udX1ybuC.cjs","sources":["../src/components/Alert/Alert.tsx"],"sourcesContent":["import { forwardRef, type CSSProperties, type HTMLAttributes, type ReactNode } from 'react'\nimport { clsx } from 'clsx'\nimport { Icon } from '../Icon'\nimport { IconButton } from '../IconButton'\nimport { ICON_NAMES, type IconName } from '../../icons/names'\nimport { useT, type ThemeColor } from '../../theme'\nimport styles from './Alert.module.css'\n\nexport type AlertVariant = 'contained' | 'filled' | 'outlined' | 'text'\n\nconst ICON_NAME_SET = new Set<string>(ICON_NAMES)\n\n/** Default leading icon per semantic color (other colors fall back to `InfoCircle`). */\nconst DEFAULT_ICON: Partial<Record<ThemeColor, IconName>> = {\n success: 'TickCircle',\n error: 'CloseCircle',\n warning: 'Warning',\n info: 'InfoCircle',\n}\n\nexport interface AlertProps extends Omit<HTMLAttributes<HTMLDivElement>, 'color' | 'title'> {\n /** Tint style. Defaults to `filled` (the soft tint). */\n variant?: AlertVariant\n /** Brand / semantic palette token that tints the alert. Defaults to `info`. */\n color?: ThemeColor\n /**\n * Leading icon — a known `IconName`, any node, or `false` to hide it. Defaults to the semantic icon\n * for `color` (success → `TickCircle`, error → `CloseCircle`, warning → `Warning`, info → `InfoCircle`).\n */\n icon?: IconName | ReactNode | false\n /** Trailing action (e.g. an `UNDO` button), placed before the close button. */\n action?: ReactNode\n /** When provided, a trailing × close button appears that calls this. */\n onClose?: () => void\n /** Accessible label for the close button. Defaults to `\"Close\"`. */\n closeLabel?: string\n /** Alert message. */\n children?: ReactNode\n}\n\n/**\n * A message banner — the library's inline feedback surface (info, success, warning, error). Tinted by\n * `color` via the shared `--tz-btn-rgb` pattern across the 4 standard `variant`s; a semantic leading\n * `icon` is auto-picked per color (override with `icon`, or `icon={false}` to drop it). An optional\n * `action` slot (e.g. an `UNDO` button) and an `onClose` × button trail the message. `role=\"alert\"`.\n */\nexport const Alert = forwardRef<HTMLDivElement, AlertProps>(function Alert(\n {\n variant = 'filled',\n color = 'info',\n icon,\n action,\n onClose,\n closeLabel,\n className,\n style,\n children,\n ...props\n },\n ref,\n) {\n const t = useT()\n const renderedIcon =\n icon === false ? null : icon == null ? (\n <Icon name={DEFAULT_ICON[color] ?? 'InfoCircle'} />\n ) : typeof icon === 'string' && ICON_NAME_SET.has(icon) ? (\n <Icon name={icon as IconName} />\n ) : (\n icon\n )\n\n return (\n <div\n ref={ref}\n role=\"alert\"\n className={clsx(styles.alert, styles[variant], className)}\n style={\n {\n '--tz-btn-rgb': `var(--tz-color-${color}-rgb)`,\n '--tz-btn-on': `var(--tz-color-${color}-contrast, #fff)`,\n ...style,\n } as CSSProperties\n }\n {...props}\n >\n {renderedIcon != null && (\n <span className={styles.icon} aria-hidden>\n {renderedIcon}\n </span>\n )}\n <div className={styles.message}>{children}</div>\n {action != null && <div className={styles.action}>{action}</div>}\n {onClose && (\n <IconButton\n variant=\"text\"\n color={color}\n size=\"sm\"\n className={styles.close}\n aria-label={closeLabel ?? t('common.close')}\n onClick={onClose}\n >\n <Icon name=\"Close\" />\n </IconButton>\n )}\n </div>\n )\n})\n"],"names":["ICON_NAME_SET","ICON_NAMES","DEFAULT_ICON","Alert","forwardRef","variant","color","icon","action","onClose","closeLabel","className","style","children","props","ref","t","useT","renderedIcon","jsx","Icon","jsxs","clsx","styles","IconButton"],"mappings":"6fAUMA,EAAgB,IAAI,IAAYC,YAAU,EAG1CC,EAAsD,CAC1D,QAAS,aACT,MAAO,cACP,QAAS,UACT,KAAM,YACR,EA4BaC,EAAQC,EAAAA,WAAuC,SAC1D,CACE,QAAAC,EAAU,SACV,MAAAC,EAAQ,OACR,KAAAC,EACA,OAAAC,EACA,QAAAC,EACA,WAAAC,EACA,UAAAC,EACA,MAAAC,EACA,SAAAC,EACA,GAAGC,CACL,EACAC,EACA,CACA,MAAMC,EAAIC,EAAAA,KAAA,EACJC,EACJX,IAAS,GAAQ,KAAOA,GAAQ,KAC9BY,EAAAA,IAACC,EAAAA,KAAA,CAAK,KAAMlB,EAAaI,CAAK,GAAK,aAAc,EAC/C,OAAOC,GAAS,UAAYP,EAAc,IAAIO,CAAI,EACpDY,EAAAA,IAACC,EAAAA,KAAA,CAAK,KAAMb,CAAA,CAAkB,EAE9BA,EAGJ,OACEc,EAAAA,KAAC,MAAA,CACC,IAAAN,EACA,KAAK,QACL,UAAWO,EAAAA,KAAKC,EAAO,MAAOA,EAAOlB,CAAO,EAAGM,CAAS,EACxD,MACE,CACE,eAAgB,kBAAkBL,CAAK,QACvC,cAAe,kBAAkBA,CAAK,mBACtC,GAAGM,CAAA,EAGN,GAAGE,EAEH,SAAA,CAAAI,GAAgB,YACd,OAAA,CAAK,UAAWK,EAAO,KAAM,cAAW,GACtC,SAAAL,CAAA,CACH,EAEFC,EAAAA,IAAC,MAAA,CAAI,UAAWI,EAAO,QAAU,SAAAV,EAAS,EACzCL,GAAU,MAAQW,EAAAA,IAAC,OAAI,UAAWI,EAAO,OAAS,SAAAf,EAAO,EACzDC,GACCU,EAAAA,IAACK,EAAAA,WAAA,CACC,QAAQ,OACR,MAAAlB,EACA,KAAK,KACL,UAAWiB,EAAO,MAClB,aAAYb,GAAcM,EAAE,cAAc,EAC1C,QAASP,EAET,SAAAU,EAAAA,IAACC,EAAAA,KAAA,CAAK,KAAK,OAAA,CAAQ,CAAA,CAAA,CACrB,CAAA,CAAA,CAIR,CAAC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";const t=require("react/jsx-runtime"),q=require("react"),x=require("clsx"),m="_blockquote_qx04v_3",u="_filled_qx04v_16",v="_plain_qx04v_19",b="_sm_qx04v_24",k="_md_qx04v_29",f="_lg_qx04v_32",j="_mark_qx04v_37",h="_body_qx04v_47",y="_content_qx04v_56",g="_cite_qx04v_61",c={blockquote:m,filled:u,plain:v,sm:b,md:k,lg:f,mark:j,body:h,content:y,cite:g},N=q.forwardRef(function({variant:s="filled",color:o="accent",size:l="sm",cite:e,quoteMark:n=!1,className:_,style:r,children:i,...a},d){return t.jsxs("blockquote",{ref:d,className:x.clsx(c.blockquote,c[s],c[l],_),style:{"--tz-btn-rgb":`var(--tz-color-${o}-rgb)`,...r},...a,children:[n&&t.jsx("span",{className:c.mark,"aria-hidden":!0,children:"“"}),t.jsxs("div",{className:c.body,children:[t.jsx("div",{className:c.content,children:i}),e!=null&&t.jsx("footer",{className:c.cite,children:t.jsx("cite",{children:e})})]})]})});exports.Blockquote=N;
|
|
2
|
+
//# sourceMappingURL=Blockquote-BWGxIL_V.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Blockquote-
|
|
1
|
+
{"version":3,"file":"Blockquote-BWGxIL_V.cjs","sources":["../src/components/Blockquote/Blockquote.tsx"],"sourcesContent":["import {\n forwardRef,\n type BlockquoteHTMLAttributes,\n type CSSProperties,\n type ReactNode,\n} from 'react'\nimport { clsx } from 'clsx'\nimport type { ThemeColor } from '../../theme'\nimport styles from './Blockquote.module.css'\n\nexport type BlockquoteVariant = 'filled' | 'plain'\nexport type BlockquoteSize = 'sm' | 'md' | 'lg'\n\nexport interface BlockquoteProps extends Omit<\n BlockquoteHTMLAttributes<HTMLQuoteElement>,\n 'color' | 'cite'\n> {\n /** Tint style — `filled` (soft tinted background + accent bar) or `plain` (accent bar only). Defaults to `filled`. */\n variant?: BlockquoteVariant\n /** Theme palette token that tints the accent bar, background and quote mark. Defaults to `accent`. */\n color?: ThemeColor\n /** Quote text size. Defaults to `sm`. */\n size?: BlockquoteSize\n /** Optional attribution shown below the quote (e.g. an author or source), prefixed with an em dash. */\n cite?: ReactNode\n /** Show the decorative leading quote mark. Defaults to `false`. */\n quoteMark?: boolean\n /** The quoted content. */\n children?: ReactNode\n}\n\n/**\n * A styled quotation block. Renders a semantic `<blockquote>` with a tinted left accent bar, an\n * optional decorative quote mark, and an optional `cite` attribution line. Tinted by `color` via the\n * shared `--tz-btn-rgb` pattern; `variant` toggles a soft tinted background (`filled`) vs. a bare bar\n * (`plain`). The attribution renders in a `<footer>` with a semantic `<cite>`.\n */\nexport const Blockquote = forwardRef<HTMLQuoteElement, BlockquoteProps>(function Blockquote(\n {\n variant = 'filled',\n color = 'accent',\n size = 'sm',\n cite,\n quoteMark = false,\n className,\n style,\n children,\n ...props\n },\n ref,\n) {\n return (\n <blockquote\n ref={ref}\n className={clsx(styles.blockquote, styles[variant], styles[size], className)}\n style={{ '--tz-btn-rgb': `var(--tz-color-${color}-rgb)`, ...style } as CSSProperties}\n {...props}\n >\n {quoteMark && (\n <span className={styles.mark} aria-hidden>\n “\n </span>\n )}\n <div className={styles.body}>\n <div className={styles.content}>{children}</div>\n {cite != null && (\n <footer className={styles.cite}>\n <cite>{cite}</cite>\n </footer>\n )}\n </div>\n </blockquote>\n )\n})\n"],"names":["Blockquote","forwardRef","variant","color","size","cite","quoteMark","className","style","children","props","ref","jsxs","clsx","styles","jsx"],"mappings":"0WAqCaA,EAAaC,EAAAA,WAA8C,SACtE,CACE,QAAAC,EAAU,SACV,MAAAC,EAAQ,SACR,KAAAC,EAAO,KACP,KAAAC,EACA,UAAAC,EAAY,GACZ,UAAAC,EACA,MAAAC,EACA,SAAAC,EACA,GAAGC,CACL,EACAC,EACA,CACA,OACEC,EAAAA,KAAC,aAAA,CACC,IAAAD,EACA,UAAWE,EAAAA,KAAKC,EAAO,WAAYA,EAAOZ,CAAO,EAAGY,EAAOV,CAAI,EAAGG,CAAS,EAC3E,MAAO,CAAE,eAAgB,kBAAkBJ,CAAK,QAAS,GAAGK,CAAA,EAC3D,GAAGE,EAEH,SAAA,CAAAJ,SACE,OAAA,CAAK,UAAWQ,EAAO,KAAM,cAAW,GAAC,SAAA,GAAA,CAE1C,EAEFF,EAAAA,KAAC,MAAA,CAAI,UAAWE,EAAO,KACrB,SAAA,CAAAC,EAAAA,IAAC,MAAA,CAAI,UAAWD,EAAO,QAAU,SAAAL,EAAS,EACzCJ,GAAQ,MACPU,EAAAA,IAAC,SAAA,CAAO,UAAWD,EAAO,KACxB,SAAAC,EAAAA,IAAC,OAAA,CAAM,SAAAV,CAAA,CAAK,CAAA,CACd,CAAA,CAAA,CAEJ,CAAA,CAAA,CAAA,CAGN,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { jsxs as e, jsx as t } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as q } from "react";
|
|
3
|
+
import { clsx as x } from "clsx";
|
|
4
|
+
const v = "_blockquote_qx04v_3", b = "_filled_qx04v_16", f = "_plain_qx04v_19", k = "_sm_qx04v_24", u = "_md_qx04v_29", p = "_lg_qx04v_32", h = "_mark_qx04v_37", y = "_body_qx04v_47", g = "_content_qx04v_56", N = "_cite_qx04v_61", o = {
|
|
5
|
+
blockquote: v,
|
|
6
|
+
filled: b,
|
|
7
|
+
plain: f,
|
|
8
|
+
sm: k,
|
|
9
|
+
md: u,
|
|
10
|
+
lg: p,
|
|
11
|
+
mark: h,
|
|
12
|
+
body: y,
|
|
13
|
+
content: g,
|
|
14
|
+
cite: N
|
|
15
|
+
}, R = q(function({
|
|
16
|
+
variant: l = "filled",
|
|
17
|
+
color: n = "accent",
|
|
18
|
+
size: s = "sm",
|
|
19
|
+
cite: c,
|
|
20
|
+
quoteMark: _ = !1,
|
|
21
|
+
className: r,
|
|
22
|
+
style: a,
|
|
23
|
+
children: i,
|
|
24
|
+
...m
|
|
25
|
+
}, d) {
|
|
26
|
+
return /* @__PURE__ */ e(
|
|
27
|
+
"blockquote",
|
|
28
|
+
{
|
|
29
|
+
ref: d,
|
|
30
|
+
className: x(o.blockquote, o[l], o[s], r),
|
|
31
|
+
style: { "--tz-btn-rgb": `var(--tz-color-${n}-rgb)`, ...a },
|
|
32
|
+
...m,
|
|
33
|
+
children: [
|
|
34
|
+
_ && /* @__PURE__ */ t("span", { className: o.mark, "aria-hidden": !0, children: "“" }),
|
|
35
|
+
/* @__PURE__ */ e("div", { className: o.body, children: [
|
|
36
|
+
/* @__PURE__ */ t("div", { className: o.content, children: i }),
|
|
37
|
+
c != null && /* @__PURE__ */ t("footer", { className: o.cite, children: /* @__PURE__ */ t("cite", { children: c }) })
|
|
38
|
+
] })
|
|
39
|
+
]
|
|
40
|
+
}
|
|
41
|
+
);
|
|
42
|
+
});
|
|
43
|
+
export {
|
|
44
|
+
R as B
|
|
45
|
+
};
|
|
46
|
+
//# sourceMappingURL=Blockquote-Ma-2naET.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Blockquote-
|
|
1
|
+
{"version":3,"file":"Blockquote-Ma-2naET.js","sources":["../src/components/Blockquote/Blockquote.tsx"],"sourcesContent":["import {\n forwardRef,\n type BlockquoteHTMLAttributes,\n type CSSProperties,\n type ReactNode,\n} from 'react'\nimport { clsx } from 'clsx'\nimport type { ThemeColor } from '../../theme'\nimport styles from './Blockquote.module.css'\n\nexport type BlockquoteVariant = 'filled' | 'plain'\nexport type BlockquoteSize = 'sm' | 'md' | 'lg'\n\nexport interface BlockquoteProps extends Omit<\n BlockquoteHTMLAttributes<HTMLQuoteElement>,\n 'color' | 'cite'\n> {\n /** Tint style — `filled` (soft tinted background + accent bar) or `plain` (accent bar only). Defaults to `filled`. */\n variant?: BlockquoteVariant\n /** Theme palette token that tints the accent bar, background and quote mark. Defaults to `accent`. */\n color?: ThemeColor\n /** Quote text size. Defaults to `sm`. */\n size?: BlockquoteSize\n /** Optional attribution shown below the quote (e.g. an author or source), prefixed with an em dash. */\n cite?: ReactNode\n /** Show the decorative leading quote mark. Defaults to `false`. */\n quoteMark?: boolean\n /** The quoted content. */\n children?: ReactNode\n}\n\n/**\n * A styled quotation block. Renders a semantic `<blockquote>` with a tinted left accent bar, an\n * optional decorative quote mark, and an optional `cite` attribution line. Tinted by `color` via the\n * shared `--tz-btn-rgb` pattern; `variant` toggles a soft tinted background (`filled`) vs. a bare bar\n * (`plain`). The attribution renders in a `<footer>` with a semantic `<cite>`.\n */\nexport const Blockquote = forwardRef<HTMLQuoteElement, BlockquoteProps>(function Blockquote(\n {\n variant = 'filled',\n color = 'accent',\n size = 'sm',\n cite,\n quoteMark = false,\n className,\n style,\n children,\n ...props\n },\n ref,\n) {\n return (\n <blockquote\n ref={ref}\n className={clsx(styles.blockquote, styles[variant], styles[size], className)}\n style={{ '--tz-btn-rgb': `var(--tz-color-${color}-rgb)`, ...style } as CSSProperties}\n {...props}\n >\n {quoteMark && (\n <span className={styles.mark} aria-hidden>\n “\n </span>\n )}\n <div className={styles.body}>\n <div className={styles.content}>{children}</div>\n {cite != null && (\n <footer className={styles.cite}>\n <cite>{cite}</cite>\n </footer>\n )}\n </div>\n </blockquote>\n )\n})\n"],"names":["Blockquote","forwardRef","variant","color","size","cite","quoteMark","className","style","children","props","ref","jsxs","clsx","styles","jsx"],"mappings":";;;;;;;;;;;;;;GAqCaA,IAAaC,EAA8C,SACtE;AAAA,EACE,SAAAC,IAAU;AAAA,EACV,OAAAC,IAAQ;AAAA,EACR,MAAAC,IAAO;AAAA,EACP,MAAAC;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,WAAAC;AAAA,EACA,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,GAAGC;AACL,GACAC,GACA;AACA,SACE,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAAD;AAAA,MACA,WAAWE,EAAKC,EAAO,YAAYA,EAAOZ,CAAO,GAAGY,EAAOV,CAAI,GAAGG,CAAS;AAAA,MAC3E,OAAO,EAAE,gBAAgB,kBAAkBJ,CAAK,SAAS,GAAGK,EAAA;AAAA,MAC3D,GAAGE;AAAA,MAEH,UAAA;AAAA,QAAAJ,uBACE,QAAA,EAAK,WAAWQ,EAAO,MAAM,eAAW,IAAC,UAAA,IAAA,CAE1C;AAAA,QAEF,gBAAAF,EAAC,OAAA,EAAI,WAAWE,EAAO,MACrB,UAAA;AAAA,UAAA,gBAAAC,EAAC,OAAA,EAAI,WAAWD,EAAO,SAAU,UAAAL,GAAS;AAAA,UACzCJ,KAAQ,QACP,gBAAAU,EAAC,UAAA,EAAO,WAAWD,EAAO,MACxB,UAAA,gBAAAC,EAAC,QAAA,EAAM,UAAAV,EAAA,CAAK,EAAA,CACd;AAAA,QAAA,EAAA,CAEJ;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGN,CAAC;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const e=require("react/jsx-runtime"),m=require("@tanstack/react-router"),t=require("./Icon-BVULqOJD.cjs"),b=require("./names-BJnFU_5m.cjs"),_=require("./Sidebar-
|
|
2
|
-
//# sourceMappingURL=Breadcrumbs-
|
|
1
|
+
"use strict";const e=require("react/jsx-runtime"),m=require("@tanstack/react-router"),t=require("./Icon-BVULqOJD.cjs"),b=require("./names-BJnFU_5m.cjs"),_=require("./Sidebar-DcKIEfhy.cjs"),d=require("./ConfigProvider-Bszl3Wr3.cjs"),h="_breadcrumbs_c3mqv_4",j="_list_c3mqv_8",N="_item_c3mqv_18",q="_home_c3mqv_27",x="_separator_c3mqv_39",v="_link_c3mqv_50",p="_current_c3mqv_61",s={breadcrumbs:h,list:j,item:N,home:q,separator:x,link:v,current:p},u=r=>r,k=new Set(b.ICON_NAMES);function f({separator:r}){return typeof r=="string"&&k.has(r)?e.jsx(t.Icon,{name:r,size:"sm",className:s.separator}):e.jsx("span",{className:s.separator,"aria-hidden":"true",children:r})}function g({separator:r="ArrowRight4"}={}){const{homeTo:i,items:n}=_.useBreadcrumbs(),a=d.useT();return n.length===0?null:e.jsx("nav",{"aria-label":a("breadcrumbs.label"),className:s.breadcrumbs,children:e.jsxs("ol",{className:s.list,children:[e.jsx("li",{className:s.item,children:i?e.jsx(m.Link,{to:u(i),className:s.home,"aria-label":a("breadcrumbs.home"),children:e.jsx(t.Icon,{name:"Home2",size:"sm"})}):e.jsx("span",{className:s.home,"aria-label":a("breadcrumbs.home"),children:e.jsx(t.Icon,{name:"Home2",size:"sm"})})}),n.map((c,o)=>{const l=o===n.length-1;return e.jsxs("li",{className:s.item,children:[e.jsx(f,{separator:r}),c.to&&!l?e.jsx(m.Link,{to:u(c.to),className:s.link,children:c.label}):e.jsx("span",{className:s.current,"aria-current":l?"page":void 0,children:c.label})]},`${c.label}-${o}`)})]})})}exports.Breadcrumbs=g;
|
|
2
|
+
//# sourceMappingURL=Breadcrumbs-CsYTiX2h.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Breadcrumbs-
|
|
1
|
+
{"version":3,"file":"Breadcrumbs-CsYTiX2h.cjs","sources":["../src/components/Breadcrumbs/Breadcrumbs.tsx"],"sourcesContent":["import type { ReactNode } from 'react'\nimport { Link, type LinkProps } from '@tanstack/react-router'\nimport { useT } from '../../theme'\nimport { Icon } from '../Icon'\nimport { ICON_NAMES, type IconName } from '../../icons/names'\nimport { useBreadcrumbs } from '../Sidebar/Sidebar'\nimport styles from './Breadcrumbs.module.css'\n\nconst linkTo = (to: string) => to as LinkProps['to']\nconst ICON_NAME_SET = new Set<string>(ICON_NAMES)\n\nexport interface BreadcrumbsProps {\n /**\n * Separator between crumbs. A known `IconName` (the default `\"ArrowRight4\"`) renders as an icon; any\n * other string renders as plain text; or pass a node.\n */\n separator?: IconName | ReactNode\n}\n\nfunction Separator({ separator }: { separator: IconName | ReactNode }) {\n if (typeof separator === 'string' && ICON_NAME_SET.has(separator)) {\n return <Icon name={separator as IconName} size=\"sm\" className={styles.separator} />\n }\n return (\n <span className={styles.separator} aria-hidden=\"true\">\n {separator}\n </span>\n )\n}\n\n/**\n * Auto-generated breadcrumb trail for the current route, rendered at the top of `RootLayout`'s\n * content. It always starts with a home icon that links to the first allowed menu page (the same\n * target as `FirstRouteRedirect`), followed by one crumb per matched route that declares a\n * `staticData.name`. Intermediate crumbs link to their page when navigable; the current page is\n * plain text. Renders nothing when the current route has no named matches. Token-only styling.\n */\nexport function Breadcrumbs({ separator = 'ArrowRight4' }: BreadcrumbsProps = {}) {\n const { homeTo, items } = useBreadcrumbs()\n const t = useT()\n if (items.length === 0) return null\n\n return (\n <nav aria-label={t('breadcrumbs.label')} className={styles.breadcrumbs}>\n <ol className={styles.list}>\n <li className={styles.item}>\n {homeTo ? (\n <Link to={linkTo(homeTo)} className={styles.home} aria-label={t('breadcrumbs.home')}>\n <Icon name=\"Home2\" size=\"sm\" />\n </Link>\n ) : (\n <span className={styles.home} aria-label={t('breadcrumbs.home')}>\n <Icon name=\"Home2\" size=\"sm\" />\n </span>\n )}\n </li>\n {items.map((item, index) => {\n const isLast = index === items.length - 1\n return (\n <li className={styles.item} key={`${item.label}-${index}`}>\n <Separator separator={separator} />\n {item.to && !isLast ? (\n <Link to={linkTo(item.to)} className={styles.link}>\n {item.label}\n </Link>\n ) : (\n <span className={styles.current} aria-current={isLast ? 'page' : undefined}>\n {item.label}\n </span>\n )}\n </li>\n )\n })}\n </ol>\n </nav>\n )\n}\n"],"names":["linkTo","to","ICON_NAME_SET","ICON_NAMES","Separator","separator","jsx","Icon","styles","Breadcrumbs","homeTo","items","useBreadcrumbs","t","useT","jsxs","Link","item","index","isLast"],"mappings":"8bAQMA,EAAUC,GAAeA,EACzBC,EAAgB,IAAI,IAAYC,YAAU,EAUhD,SAASC,EAAU,CAAE,UAAAC,GAAkD,CACrE,OAAI,OAAOA,GAAc,UAAYH,EAAc,IAAIG,CAAS,EACvDC,MAACC,EAAAA,MAAK,KAAMF,EAAuB,KAAK,KAAK,UAAWG,EAAO,UAAW,QAGhF,OAAA,CAAK,UAAWA,EAAO,UAAW,cAAY,OAC5C,SAAAH,EACH,CAEJ,CASO,SAASI,EAAY,CAAE,UAAAJ,EAAY,aAAA,EAAoC,CAAA,EAAI,CAChF,KAAM,CAAE,OAAAK,EAAQ,MAAAC,CAAA,EAAUC,iBAAA,EACpBC,EAAIC,EAAAA,KAAA,EACV,OAAIH,EAAM,SAAW,EAAU,KAG7BL,EAAAA,IAAC,MAAA,CAAI,aAAYO,EAAE,mBAAmB,EAAG,UAAWL,EAAO,YACzD,SAAAO,EAAAA,KAAC,KAAA,CAAG,UAAWP,EAAO,KACpB,SAAA,CAAAF,EAAAA,IAAC,MAAG,UAAWE,EAAO,KACnB,SAAAE,EACCJ,EAAAA,IAACU,EAAAA,MAAK,GAAIhB,EAAOU,CAAM,EAAG,UAAWF,EAAO,KAAM,aAAYK,EAAE,kBAAkB,EAChF,eAACN,EAAAA,KAAA,CAAK,KAAK,QAAQ,KAAK,KAAK,CAAA,CAC/B,QAEC,OAAA,CAAK,UAAWC,EAAO,KAAM,aAAYK,EAAE,kBAAkB,EAC5D,eAACN,EAAAA,KAAA,CAAK,KAAK,QAAQ,KAAK,KAAK,EAC/B,CAAA,CAEJ,EACCI,EAAM,IAAI,CAACM,EAAMC,IAAU,CAC1B,MAAMC,EAASD,IAAUP,EAAM,OAAS,EACxC,OACEI,EAAAA,KAAC,KAAA,CAAG,UAAWP,EAAO,KACpB,SAAA,CAAAF,MAACF,GAAU,UAAAC,EAAsB,EAChCY,EAAK,IAAM,CAACE,EACXb,EAAAA,IAACU,EAAAA,KAAA,CAAK,GAAIhB,EAAOiB,EAAK,EAAE,EAAG,UAAWT,EAAO,KAC1C,SAAAS,EAAK,KAAA,CACR,EAEAX,EAAAA,IAAC,OAAA,CAAK,UAAWE,EAAO,QAAS,eAAcW,EAAS,OAAS,OAC9D,SAAAF,EAAK,KAAA,CACR,CAAA,CAAA,EAT6B,GAAGA,EAAK,KAAK,IAAIC,CAAK,EAWvD,CAEJ,CAAC,CAAA,CAAA,CACH,CAAA,CACF,CAEJ"}
|
|
@@ -2,8 +2,8 @@ import { jsx as e, jsxs as i } from "react/jsx-runtime";
|
|
|
2
2
|
import { Link as u } from "@tanstack/react-router";
|
|
3
3
|
import { I as n } from "./Icon-DaTvzLBu.js";
|
|
4
4
|
import { a as b } from "./names-r21QPjcU.js";
|
|
5
|
-
import { u as h } from "./Sidebar-
|
|
6
|
-
import { a as d } from "./ConfigProvider-
|
|
5
|
+
import { u as h } from "./Sidebar-YH-DoNG9.js";
|
|
6
|
+
import { a as d } from "./ConfigProvider-DR9YMy9U.js";
|
|
7
7
|
const p = "_breadcrumbs_c3mqv_4", N = "_list_c3mqv_8", f = "_item_c3mqv_18", v = "_home_c3mqv_27", q = "_separator_c3mqv_39", k = "_link_c3mqv_50", g = "_current_c3mqv_61", r = {
|
|
8
8
|
breadcrumbs: p,
|
|
9
9
|
list: N,
|
|
@@ -32,4 +32,4 @@ function w({ separator: s = "ArrowRight4" } = {}) {
|
|
|
32
32
|
export {
|
|
33
33
|
w as B
|
|
34
34
|
};
|
|
35
|
-
//# sourceMappingURL=Breadcrumbs-
|
|
35
|
+
//# sourceMappingURL=Breadcrumbs-DQHHeLId.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Breadcrumbs-
|
|
1
|
+
{"version":3,"file":"Breadcrumbs-DQHHeLId.js","sources":["../src/components/Breadcrumbs/Breadcrumbs.tsx"],"sourcesContent":["import type { ReactNode } from 'react'\nimport { Link, type LinkProps } from '@tanstack/react-router'\nimport { useT } from '../../theme'\nimport { Icon } from '../Icon'\nimport { ICON_NAMES, type IconName } from '../../icons/names'\nimport { useBreadcrumbs } from '../Sidebar/Sidebar'\nimport styles from './Breadcrumbs.module.css'\n\nconst linkTo = (to: string) => to as LinkProps['to']\nconst ICON_NAME_SET = new Set<string>(ICON_NAMES)\n\nexport interface BreadcrumbsProps {\n /**\n * Separator between crumbs. A known `IconName` (the default `\"ArrowRight4\"`) renders as an icon; any\n * other string renders as plain text; or pass a node.\n */\n separator?: IconName | ReactNode\n}\n\nfunction Separator({ separator }: { separator: IconName | ReactNode }) {\n if (typeof separator === 'string' && ICON_NAME_SET.has(separator)) {\n return <Icon name={separator as IconName} size=\"sm\" className={styles.separator} />\n }\n return (\n <span className={styles.separator} aria-hidden=\"true\">\n {separator}\n </span>\n )\n}\n\n/**\n * Auto-generated breadcrumb trail for the current route, rendered at the top of `RootLayout`'s\n * content. It always starts with a home icon that links to the first allowed menu page (the same\n * target as `FirstRouteRedirect`), followed by one crumb per matched route that declares a\n * `staticData.name`. Intermediate crumbs link to their page when navigable; the current page is\n * plain text. Renders nothing when the current route has no named matches. Token-only styling.\n */\nexport function Breadcrumbs({ separator = 'ArrowRight4' }: BreadcrumbsProps = {}) {\n const { homeTo, items } = useBreadcrumbs()\n const t = useT()\n if (items.length === 0) return null\n\n return (\n <nav aria-label={t('breadcrumbs.label')} className={styles.breadcrumbs}>\n <ol className={styles.list}>\n <li className={styles.item}>\n {homeTo ? (\n <Link to={linkTo(homeTo)} className={styles.home} aria-label={t('breadcrumbs.home')}>\n <Icon name=\"Home2\" size=\"sm\" />\n </Link>\n ) : (\n <span className={styles.home} aria-label={t('breadcrumbs.home')}>\n <Icon name=\"Home2\" size=\"sm\" />\n </span>\n )}\n </li>\n {items.map((item, index) => {\n const isLast = index === items.length - 1\n return (\n <li className={styles.item} key={`${item.label}-${index}`}>\n <Separator separator={separator} />\n {item.to && !isLast ? (\n <Link to={linkTo(item.to)} className={styles.link}>\n {item.label}\n </Link>\n ) : (\n <span className={styles.current} aria-current={isLast ? 'page' : undefined}>\n {item.label}\n </span>\n )}\n </li>\n )\n })}\n </ol>\n </nav>\n )\n}\n"],"names":["linkTo","to","ICON_NAME_SET","ICON_NAMES","Separator","separator","jsx","Icon","styles","Breadcrumbs","homeTo","items","useBreadcrumbs","t","useT","jsxs","Link","item","index","isLast"],"mappings":";;;;;;;;;;;;;;GAQMA,IAAS,CAACC,MAAeA,GACzBC,IAAgB,IAAI,IAAYC,CAAU;AAUhD,SAASC,EAAU,EAAE,WAAAC,KAAkD;AACrE,SAAI,OAAOA,KAAc,YAAYH,EAAc,IAAIG,CAAS,IACvD,gBAAAC,EAACC,KAAK,MAAMF,GAAuB,MAAK,MAAK,WAAWG,EAAO,WAAW,sBAGhF,QAAA,EAAK,WAAWA,EAAO,WAAW,eAAY,QAC5C,UAAAH,GACH;AAEJ;AASO,SAASI,EAAY,EAAE,WAAAJ,IAAY,cAAA,IAAoC,CAAA,GAAI;AAChF,QAAM,EAAE,QAAAK,GAAQ,OAAAC,EAAA,IAAUC,EAAA,GACpBC,IAAIC,EAAA;AACV,SAAIH,EAAM,WAAW,IAAU,OAG7B,gBAAAL,EAAC,OAAA,EAAI,cAAYO,EAAE,mBAAmB,GAAG,WAAWL,EAAO,aACzD,UAAA,gBAAAO,EAAC,MAAA,EAAG,WAAWP,EAAO,MACpB,UAAA;AAAA,IAAA,gBAAAF,EAAC,QAAG,WAAWE,EAAO,MACnB,UAAAE,IACC,gBAAAJ,EAACU,KAAK,IAAIhB,EAAOU,CAAM,GAAG,WAAWF,EAAO,MAAM,cAAYK,EAAE,kBAAkB,GAChF,4BAACN,GAAA,EAAK,MAAK,SAAQ,MAAK,MAAK,EAAA,CAC/B,sBAEC,QAAA,EAAK,WAAWC,EAAO,MAAM,cAAYK,EAAE,kBAAkB,GAC5D,4BAACN,GAAA,EAAK,MAAK,SAAQ,MAAK,MAAK,GAC/B,EAAA,CAEJ;AAAA,IACCI,EAAM,IAAI,CAACM,GAAMC,MAAU;AAC1B,YAAMC,IAASD,MAAUP,EAAM,SAAS;AACxC,aACE,gBAAAI,EAAC,MAAA,EAAG,WAAWP,EAAO,MACpB,UAAA;AAAA,QAAA,gBAAAF,EAACF,KAAU,WAAAC,GAAsB;AAAA,QAChCY,EAAK,MAAM,CAACE,IACX,gBAAAb,EAACU,GAAA,EAAK,IAAIhB,EAAOiB,EAAK,EAAE,GAAG,WAAWT,EAAO,MAC1C,UAAAS,EAAK,MAAA,CACR,IAEA,gBAAAX,EAAC,QAAA,EAAK,WAAWE,EAAO,SAAS,gBAAcW,IAAS,SAAS,QAC9D,UAAAF,EAAK,MAAA,CACR;AAAA,MAAA,EAAA,GAT6B,GAAGA,EAAK,KAAK,IAAIC,CAAK,EAWvD;AAAA,IAEJ,CAAC;AAAA,EAAA,EAAA,CACH,EAAA,CACF;AAEJ;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const o=require("react/jsx-runtime"),d=require("react"),z=require("clsx"),u=require("./Loader-
|
|
2
|
-
//# sourceMappingURL=Button-
|
|
1
|
+
"use strict";const o=require("react/jsx-runtime"),d=require("react"),z=require("clsx"),u=require("./Loader-B5YqzEYy.cjs"),W="_button_eb4w2_1",p="_sm_eb4w2_23",v="_md_eb4w2_29",y="_lg_eb4w2_35",B="_contained_eb4w2_42",E="_filled_eb4w2_52",L="_outlined_eb4w2_61",N="_text_eb4w2_72",R="_fullWidth_eb4w2_82",$="_rounded_eb4w2_86",A="_disabled_eb4w2_94",V="_loading_eb4w2_98",k="_label_eb4w2_103",t={button:W,sm:p,md:v,lg:y,contained:B,filled:E,outlined:L,text:N,fullWidth:R,rounded:$,disabled:A,loading:V,label:k},C=d.forwardRef(function({variant:i="contained",color:_="accent",size:n="md",loading:e=!1,fullWidth:f=!1,rounded:w=!1,disabled:a=!1,startIcon:c,endIcon:m,className:x,style:h,type:j="button",children:l,...g},q){const b=e&&!c,r=s=>d.isValidElement(s)?d.cloneElement(s,{size:s.props.size??n}):s;return o.jsxs("button",{ref:q,type:j,disabled:a||e,"aria-busy":e||void 0,className:z.clsx(t.button,t[i],t[n],f&&t.fullWidth,w&&t.rounded,e&&t.loading,a&&t.disabled,x),style:{"--tz-btn-rgb":`var(--tz-color-${_}-rgb)`,"--tz-btn-on":`var(--tz-color-${_}-contrast, #fff)`,...h},...g,children:[e&&!b?o.jsx(u.Loader,{size:n,"aria-hidden":"true"}):r(c),l!=null&&l!==!1&&o.jsx("span",{className:t.label,children:l}),b?o.jsx(u.Loader,{size:n,"aria-hidden":"true"}):!e&&r(m)]})});exports.Button=C;
|
|
2
|
+
//# sourceMappingURL=Button-CXmDOzPk.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button-
|
|
1
|
+
{"version":3,"file":"Button-CXmDOzPk.cjs","sources":["../src/components/Button/Button.tsx"],"sourcesContent":["import {\n cloneElement,\n forwardRef,\n isValidElement,\n type ButtonHTMLAttributes,\n type CSSProperties,\n type ReactElement,\n type ReactNode,\n} from 'react'\nimport { clsx } from 'clsx'\nimport type { ThemeColor } from '../../theme'\nimport { Loader } from '../Loader'\nimport styles from './Button.module.css'\n\nexport type ButtonVariant = 'contained' | 'filled' | 'outlined' | 'text'\nexport type ButtonSize = 'sm' | 'md' | 'lg'\n\nexport interface ButtonProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'color'> {\n /** Visual style. `contained` solid · `filled` soft tint · `outlined` border · `text` bare. */\n variant?: ButtonVariant\n /** Theme palette token that tints the button. Defaults to `accent`. */\n color?: ThemeColor\n /** Preset size — drives height (`--tz-control-height-*`), padding and font size. */\n size?: ButtonSize\n /** Shows the loader and blocks interaction (also sets the native `disabled`). The loader replaces the `startIcon` when present, otherwise it trails the label at the end (right) — so a plain button shows the spinner on the right. The text stays visible. */\n loading?: boolean\n /** Stretches the button to fill its container. */\n fullWidth?: boolean\n /** Pill shape (fully rounded corners). */\n rounded?: boolean\n /** Icon before the label. Replaced by the loader while `loading`. */\n startIcon?: ReactNode\n /** Icon after the label. Replaced by the loader while `loading` when no `startIcon` is set. */\n endIcon?: ReactNode\n}\n\nexport const Button = forwardRef<HTMLButtonElement, ButtonProps>(function Button(\n {\n variant = 'contained',\n color = 'accent',\n size = 'md',\n loading = false,\n fullWidth = false,\n rounded = false,\n disabled = false,\n startIcon,\n endIcon,\n className,\n style,\n type = 'button',\n children,\n ...props\n },\n ref,\n) {\n // The loader replaces the start icon when there is one; otherwise it sits at the end (right) —\n // including a plain button with no icons, so the spinner trails the label.\n const loaderAtEnd = loading && !startIcon\n\n // size an icon slot to match the button (an explicit icon `size` still wins)\n const sizeIcon = (node: ReactNode): ReactNode =>\n isValidElement(node)\n ? cloneElement(node as ReactElement<{ size?: ButtonSize }>, {\n size: (node.props as { size?: ButtonSize }).size ?? size,\n })\n : node\n\n return (\n <button\n ref={ref}\n type={type}\n disabled={disabled || loading}\n aria-busy={loading || undefined}\n className={clsx(\n styles.button,\n styles[variant],\n styles[size],\n fullWidth && styles.fullWidth,\n rounded && styles.rounded,\n loading && styles.loading,\n disabled && styles.disabled,\n className,\n )}\n style={\n {\n '--tz-btn-rgb': `var(--tz-color-${color}-rgb)`,\n '--tz-btn-on': `var(--tz-color-${color}-contrast, #fff)`,\n ...style,\n } as CSSProperties\n }\n {...props}\n >\n {/* leading slot — the loader takes the start icon's place while loading */}\n {loading && !loaderAtEnd ? <Loader size={size} aria-hidden=\"true\" /> : sizeIcon(startIcon)}\n {children != null && children !== false && <span className={styles.label}>{children}</span>}\n {/* trailing slot — the loader takes the end icon's place when there's no start icon */}\n {loaderAtEnd ? <Loader size={size} aria-hidden=\"true\" /> : !loading && sizeIcon(endIcon)}\n </button>\n )\n})\n"],"names":["Button","forwardRef","variant","color","size","loading","fullWidth","rounded","disabled","startIcon","endIcon","className","style","type","children","props","ref","loaderAtEnd","sizeIcon","node","isValidElement","cloneElement","jsxs","clsx","styles","jsx","Loader"],"mappings":"8fAoCaA,EAASC,EAAAA,WAA2C,SAC/D,CACE,QAAAC,EAAU,YACV,MAAAC,EAAQ,SACR,KAAAC,EAAO,KACP,QAAAC,EAAU,GACV,UAAAC,EAAY,GACZ,QAAAC,EAAU,GACV,SAAAC,EAAW,GACX,UAAAC,EACA,QAAAC,EACA,UAAAC,EACA,MAAAC,EACA,KAAAC,EAAO,SACP,SAAAC,EACA,GAAGC,CACL,EACAC,EACA,CAGA,MAAMC,EAAcZ,GAAW,CAACI,EAG1BS,EAAYC,GAChBC,EAAAA,eAAeD,CAAI,EACfE,EAAAA,aAAaF,EAA6C,CACxD,KAAOA,EAAK,MAAgC,MAAQf,CAAA,CACrD,EACDe,EAEN,OACEG,EAAAA,KAAC,SAAA,CACC,IAAAN,EACA,KAAAH,EACA,SAAUL,GAAYH,EACtB,YAAWA,GAAW,OACtB,UAAWkB,EAAAA,KACTC,EAAO,OACPA,EAAOtB,CAAO,EACdsB,EAAOpB,CAAI,EACXE,GAAakB,EAAO,UACpBjB,GAAWiB,EAAO,QAClBnB,GAAWmB,EAAO,QAClBhB,GAAYgB,EAAO,SACnBb,CAAA,EAEF,MACE,CACE,eAAgB,kBAAkBR,CAAK,QACvC,cAAe,kBAAkBA,CAAK,mBACtC,GAAGS,CAAA,EAGN,GAAGG,EAGH,SAAA,CAAAV,GAAW,CAACY,EAAcQ,EAAAA,IAACC,SAAA,CAAO,KAAAtB,EAAY,cAAY,MAAA,CAAO,EAAKc,EAAST,CAAS,EACxFK,GAAY,MAAQA,IAAa,UAAU,OAAA,CAAK,UAAWU,EAAO,MAAQ,SAAAV,CAAA,CAAS,EAEnFG,EAAcQ,EAAAA,IAACC,SAAA,CAAO,KAAAtB,EAAY,cAAY,OAAO,EAAK,CAACC,GAAWa,EAASR,CAAO,CAAA,CAAA,CAAA,CAG7F,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsxs as z, jsx as s } from "react/jsx-runtime";
|
|
2
2
|
import { forwardRef as W, isValidElement as v, cloneElement as y } from "react";
|
|
3
3
|
import { clsx as B } from "clsx";
|
|
4
|
-
import { L as i } from "./Loader-
|
|
4
|
+
import { L as i } from "./Loader-BZIa8hwv.js";
|
|
5
5
|
const E = "_button_eb4w2_1", j = "_sm_eb4w2_23", L = "_md_eb4w2_29", N = "_lg_eb4w2_35", $ = "_contained_eb4w2_42", A = "_filled_eb4w2_52", R = "_outlined_eb4w2_61", V = "_text_eb4w2_72", k = "_fullWidth_eb4w2_82", q = "_rounded_eb4w2_86", C = "_disabled_eb4w2_94", D = "_loading_eb4w2_98", F = "_label_eb4w2_103", t = {
|
|
6
6
|
button: E,
|
|
7
7
|
sm: j,
|
|
@@ -69,4 +69,4 @@ const E = "_button_eb4w2_1", j = "_sm_eb4w2_23", L = "_md_eb4w2_29", N = "_lg_eb
|
|
|
69
69
|
export {
|
|
70
70
|
M as B
|
|
71
71
|
};
|
|
72
|
-
//# sourceMappingURL=Button-
|
|
72
|
+
//# sourceMappingURL=Button-DBs8xnA5.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button-
|
|
1
|
+
{"version":3,"file":"Button-DBs8xnA5.js","sources":["../src/components/Button/Button.tsx"],"sourcesContent":["import {\n cloneElement,\n forwardRef,\n isValidElement,\n type ButtonHTMLAttributes,\n type CSSProperties,\n type ReactElement,\n type ReactNode,\n} from 'react'\nimport { clsx } from 'clsx'\nimport type { ThemeColor } from '../../theme'\nimport { Loader } from '../Loader'\nimport styles from './Button.module.css'\n\nexport type ButtonVariant = 'contained' | 'filled' | 'outlined' | 'text'\nexport type ButtonSize = 'sm' | 'md' | 'lg'\n\nexport interface ButtonProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'color'> {\n /** Visual style. `contained` solid · `filled` soft tint · `outlined` border · `text` bare. */\n variant?: ButtonVariant\n /** Theme palette token that tints the button. Defaults to `accent`. */\n color?: ThemeColor\n /** Preset size — drives height (`--tz-control-height-*`), padding and font size. */\n size?: ButtonSize\n /** Shows the loader and blocks interaction (also sets the native `disabled`). The loader replaces the `startIcon` when present, otherwise it trails the label at the end (right) — so a plain button shows the spinner on the right. The text stays visible. */\n loading?: boolean\n /** Stretches the button to fill its container. */\n fullWidth?: boolean\n /** Pill shape (fully rounded corners). */\n rounded?: boolean\n /** Icon before the label. Replaced by the loader while `loading`. */\n startIcon?: ReactNode\n /** Icon after the label. Replaced by the loader while `loading` when no `startIcon` is set. */\n endIcon?: ReactNode\n}\n\nexport const Button = forwardRef<HTMLButtonElement, ButtonProps>(function Button(\n {\n variant = 'contained',\n color = 'accent',\n size = 'md',\n loading = false,\n fullWidth = false,\n rounded = false,\n disabled = false,\n startIcon,\n endIcon,\n className,\n style,\n type = 'button',\n children,\n ...props\n },\n ref,\n) {\n // The loader replaces the start icon when there is one; otherwise it sits at the end (right) —\n // including a plain button with no icons, so the spinner trails the label.\n const loaderAtEnd = loading && !startIcon\n\n // size an icon slot to match the button (an explicit icon `size` still wins)\n const sizeIcon = (node: ReactNode): ReactNode =>\n isValidElement(node)\n ? cloneElement(node as ReactElement<{ size?: ButtonSize }>, {\n size: (node.props as { size?: ButtonSize }).size ?? size,\n })\n : node\n\n return (\n <button\n ref={ref}\n type={type}\n disabled={disabled || loading}\n aria-busy={loading || undefined}\n className={clsx(\n styles.button,\n styles[variant],\n styles[size],\n fullWidth && styles.fullWidth,\n rounded && styles.rounded,\n loading && styles.loading,\n disabled && styles.disabled,\n className,\n )}\n style={\n {\n '--tz-btn-rgb': `var(--tz-color-${color}-rgb)`,\n '--tz-btn-on': `var(--tz-color-${color}-contrast, #fff)`,\n ...style,\n } as CSSProperties\n }\n {...props}\n >\n {/* leading slot — the loader takes the start icon's place while loading */}\n {loading && !loaderAtEnd ? <Loader size={size} aria-hidden=\"true\" /> : sizeIcon(startIcon)}\n {children != null && children !== false && <span className={styles.label}>{children}</span>}\n {/* trailing slot — the loader takes the end icon's place when there's no start icon */}\n {loaderAtEnd ? <Loader size={size} aria-hidden=\"true\" /> : !loading && sizeIcon(endIcon)}\n </button>\n )\n})\n"],"names":["Button","forwardRef","variant","color","size","loading","fullWidth","rounded","disabled","startIcon","endIcon","className","style","type","children","props","ref","loaderAtEnd","sizeIcon","node","isValidElement","cloneElement","jsxs","clsx","styles","jsx","Loader"],"mappings":";;;;;;;;;;;;;;;;;;GAoCaA,IAASC,EAA2C,SAC/D;AAAA,EACE,SAAAC,IAAU;AAAA,EACV,OAAAC,IAAQ;AAAA,EACR,MAAAC,IAAO;AAAA,EACP,SAAAC,IAAU;AAAA,EACV,WAAAC,IAAY;AAAA,EACZ,SAAAC,IAAU;AAAA,EACV,UAAAC,IAAW;AAAA,EACX,WAAAC;AAAA,EACA,SAAAC;AAAA,EACA,WAAAC;AAAA,EACA,OAAAC;AAAA,EACA,MAAAC,IAAO;AAAA,EACP,UAAAC;AAAA,EACA,GAAGC;AACL,GACAC,GACA;AAGA,QAAMC,IAAcZ,KAAW,CAACI,GAG1BS,IAAW,CAACC,MAChBC,EAAeD,CAAI,IACfE,EAAaF,GAA6C;AAAA,IACxD,MAAOA,EAAK,MAAgC,QAAQf;AAAA,EAAA,CACrD,IACDe;AAEN,SACE,gBAAAG;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAAN;AAAA,MACA,MAAAH;AAAA,MACA,UAAUL,KAAYH;AAAA,MACtB,aAAWA,KAAW;AAAA,MACtB,WAAWkB;AAAA,QACTC,EAAO;AAAA,QACPA,EAAOtB,CAAO;AAAA,QACdsB,EAAOpB,CAAI;AAAA,QACXE,KAAakB,EAAO;AAAA,QACpBjB,KAAWiB,EAAO;AAAA,QAClBnB,KAAWmB,EAAO;AAAA,QAClBhB,KAAYgB,EAAO;AAAA,QACnBb;AAAA,MAAA;AAAA,MAEF,OACE;AAAA,QACE,gBAAgB,kBAAkBR,CAAK;AAAA,QACvC,eAAe,kBAAkBA,CAAK;AAAA,QACtC,GAAGS;AAAA,MAAA;AAAA,MAGN,GAAGG;AAAA,MAGH,UAAA;AAAA,QAAAV,KAAW,CAACY,IAAc,gBAAAQ,EAACC,GAAA,EAAO,MAAAtB,GAAY,eAAY,OAAA,CAAO,IAAKc,EAAST,CAAS;AAAA,QACxFK,KAAY,QAAQA,MAAa,wBAAU,QAAA,EAAK,WAAWU,EAAO,OAAQ,UAAAV,EAAA,CAAS;AAAA,QAEnFG,IAAc,gBAAAQ,EAACC,GAAA,EAAO,MAAAtB,GAAY,eAAY,QAAO,IAAK,CAACC,KAAWa,EAASR,CAAO;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAG7F,CAAC;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const o=require("react/jsx-runtime"),f=require("react"),j=require("clsx"),E=require("./Icon-BVULqOJD.cjs"),L=require("./IconButton-
|
|
2
|
-
//# sourceMappingURL=Calendar-
|
|
1
|
+
"use strict";const o=require("react/jsx-runtime"),f=require("react"),j=require("clsx"),E=require("./Icon-BVULqOJD.cjs"),L=require("./IconButton-BN-bZxEi.cjs"),r=require("./DatePicker.module-tE-tGNBd.cjs"),z=require("./ConfigProvider-Bszl3Wr3.cjs");function T(n,s){if(n&&n.isSame(s,"month"))return n;const i=r.today();return i.isSame(s,"month")?i:s.startOf("month")}const A=3;function H({value:n,month:s,onMonthChange:i,onSelect:I,min:p,max:b,disabledDate:K,weekStartsOn:S,autoFocus:O,labelId:k}){const m=z.useT(),[l,N]=f.useState("day"),[a,u]=f.useState(()=>T(n,s)),h=f.useRef(null),d=f.useRef(!!O);f.useEffect(()=>{u(e=>e.isSame(s,"month")?e:T(n,s))},[s]),f.useEffect(()=>{var t,c;if(!d.current)return;d.current=!1;const e=(t=h.current)==null?void 0:t.querySelector('[tabindex="0"]');e==null||e.focus(),(c=e==null?void 0:e.scrollIntoView)==null||c.call(e,{block:"nearest"})},[a,l,s]);const R=e=>{d.current=!0,N(e)},y=e=>{d.current=!0,e.isSame(s,"month")||i(e.startOf("month")),u(e)},w=e=>{const t=a.add(e,"month");d.current=!0,u(t),i(t.startOf("month"))},D=e=>{let t=a.year()+e;p&&(t=Math.max(t,p.year())),b&&(t=Math.min(t,b.year()));const c=a.year(t);d.current=!0,u(c),i(c.startOf("month"))},q=e=>{const t=s.year(e);d.current=!0,u(t),i(t),N("month")},g=e=>{const t=s.month(e);d.current=!0,u(T(n,t)),i(t),N("day")},G=e=>{const t=(a.day()-S+7)%7;switch(e.key){case"ArrowLeft":e.preventDefault(),y(a.subtract(1,"day"));break;case"ArrowRight":e.preventDefault(),y(a.add(1,"day"));break;case"ArrowUp":e.preventDefault(),y(a.subtract(7,"day"));break;case"ArrowDown":e.preventDefault(),y(a.add(7,"day"));break;case"Home":e.preventDefault(),y(a.subtract(t,"day"));break;case"End":e.preventDefault(),y(a.add(6-t,"day"));break;case"PageUp":e.preventDefault(),y(a.subtract(1,e.shiftKey?"year":"month"));break;case"PageDown":e.preventDefault(),y(a.add(1,e.shiftKey?"year":"month"));break;case"Enter":case" ":e.preventDefault(),r.isDisabled(a,p,b,K)||I(r.toISO(a));break}},P=e=>{switch(e.key){case"ArrowLeft":e.preventDefault(),w(-1);break;case"ArrowRight":e.preventDefault(),w(1);break;case"ArrowUp":e.preventDefault(),w(-A);break;case"ArrowDown":e.preventDefault(),w(A);break;case"Enter":case" ":e.preventDefault(),g(a.month());break}},_=e=>{switch(e.key){case"ArrowLeft":e.preventDefault(),D(-1);break;case"ArrowRight":e.preventDefault(),D(1);break;case"ArrowUp":e.preventDefault(),D(-A);break;case"ArrowDown":e.preventDefault(),D(A);break;case"Enter":case" ":e.preventDefault(),q(a.year());break}},B=r.today(),Y=e=>m(`calendar.month${e}`),v=Array.from({length:7},(e,t)=>m(`calendar.weekday${(S+t)%7}`)),U=l==="day"?r.buildMonthGrid(s,S):[],$=l==="month"?Array.from({length:12},(e,t)=>Y(t)):[],M=l==="year"?r.yearList(p,b,s.year()):[];return o.jsxs("div",{className:r.styles.calendar,children:[o.jsxs("div",{className:r.styles.calHeader,children:[l==="day"&&o.jsx(L.IconButton,{variant:"text",color:"primary",size:"sm","aria-label":m("calendar.prevMonth"),onClick:()=>i(s.subtract(1,"month")),children:o.jsx(E.Icon,{name:"ArrowCircleLeft"})}),o.jsxs("div",{className:r.styles.calTitleGroup,children:[(l==="day"||l==="month")&&o.jsx("button",{type:"button",id:k,className:r.styles.calTitle,onClick:()=>R("year"),children:s.format("YYYY")}),l==="day"&&o.jsx("button",{type:"button",className:r.styles.calTitle,onClick:()=>R("month"),children:Y(s.month())}),l==="year"&&o.jsx("span",{id:k,className:r.styles.calTitleStatic,children:m("calendar.selectYear")})]}),l==="day"&&o.jsx(L.IconButton,{variant:"text",color:"primary",size:"sm","aria-label":m("calendar.nextMonth"),onClick:()=>i(s.add(1,"month")),children:o.jsx(E.Icon,{name:"ArrowCircleRight"})})]}),l==="year"?o.jsx("div",{ref:h,className:j.clsx(r.styles.pickGrid,r.styles.pickScroll),role:"listbox","aria-labelledby":k,onKeyDown:_,children:M.map(e=>{const t=n?n.year()===e:!1;return o.jsx("button",{type:"button",role:"option",className:j.clsx(r.styles.pickCell,t&&r.styles.pickSelected,!t&&e===B.year()&&r.styles.pickToday),tabIndex:e===a.year()?0:-1,"aria-selected":t,onClick:()=>q(e),children:e},e)})}):l==="month"?o.jsx("div",{ref:h,className:r.styles.pickGrid,role:"listbox","aria-labelledby":k,onKeyDown:P,children:$.map((e,t)=>{const c=n?n.isSame(s.month(t),"month"):!1,x=B.isSame(s.month(t),"month");return o.jsx("button",{type:"button",role:"option",className:j.clsx(r.styles.pickCell,c&&r.styles.pickSelected,!c&&x&&r.styles.pickToday),tabIndex:t===a.month()?0:-1,"aria-selected":c,onClick:()=>g(t),children:e},e)})}):o.jsxs("div",{ref:h,className:r.styles.grid,role:"grid","aria-label":`${Y(s.month())} ${s.format("YYYY")}`,onKeyDown:G,children:[o.jsx("div",{className:r.styles.weekdays,role:"row",children:v.map((e,t)=>o.jsx("span",{role:"columnheader",className:r.styles.weekday,children:e},t))}),Array.from({length:6},(e,t)=>o.jsx("div",{role:"row",className:r.styles.week,children:U.slice(t*7,t*7+7).map(c=>{const x=n?c.date.isSame(n,"day"):!1,C=r.isDisabled(c.date,p,b,K);return o.jsx("button",{type:"button",role:"gridcell",className:j.clsx(r.styles.day,!c.inMonth&&r.styles.dayOutside,x&&r.styles.daySelected,c.isToday&&r.styles.dayToday,C&&r.styles.dayDisabled),tabIndex:c.date.isSame(a,"day")?0:-1,"aria-selected":x,"aria-disabled":C||void 0,"aria-current":c.isToday?"date":void 0,onClick:()=>!C&&I(c.iso),children:c.date.date()},c.iso)})},t))]})]})}exports.Calendar=H;
|
|
2
|
+
//# sourceMappingURL=Calendar-B2nMXk4C.cjs.map
|