@customafk/lunas-ui 0.0.55 → 0.0.57
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/{add-new-CA9V8pbi.js → add-new-B9KK77jE.js} +2 -2
- package/dist/{add-new-CA9V8pbi.js.map → add-new-B9KK77jE.js.map} +1 -1
- package/dist/{add-new-BaVesOJy.cjs → add-new-B9vW0r69.cjs} +2 -2
- package/dist/{add-new-BaVesOJy.cjs.map → add-new-B9vW0r69.cjs.map} +1 -1
- package/dist/{alert-dialog-C9LwU1T8.cjs → alert-dialog-Bc-61QzL.cjs} +2 -2
- package/dist/{alert-dialog-C9LwU1T8.cjs.map → alert-dialog-Bc-61QzL.cjs.map} +1 -1
- package/dist/{alert-dialog-GCCtNwEq.js → alert-dialog-kpuqvmVo.js} +2 -2
- package/dist/{alert-dialog-GCCtNwEq.js.map → alert-dialog-kpuqvmVo.js.map} +1 -1
- package/dist/{badge-CdZeMxiB.js → badge-1pcWNSLo.js} +2 -2
- package/dist/{badge-CdZeMxiB.js.map → badge-1pcWNSLo.js.map} +1 -1
- package/dist/{badge-BRw92rqK.cjs → badge-xqIWOEbF.cjs} +2 -2
- package/dist/{badge-BRw92rqK.cjs.map → badge-xqIWOEbF.cjs.map} +1 -1
- package/dist/{button-BtOq_Eix.d.ts → button-ChLnQHG9.d.ts} +6 -6
- package/dist/{button-CYDoL-W5.cjs → button-ChpGfVjG.cjs} +2 -2
- package/dist/{button-CYDoL-W5.cjs.map → button-ChpGfVjG.cjs.map} +1 -1
- package/dist/{button-DpDXj4yk.js → button-DL_i4AVi.js} +2 -2
- package/dist/{button-DpDXj4yk.js.map → button-DL_i4AVi.js.map} +1 -1
- package/dist/{button-D1vz8YHA.d.cts → button-QTiWGKzL.d.cts} +6 -6
- package/dist/{calendar-C-3ppZ7O.js → calendar-CB_hTeGT.js} +2 -2
- package/dist/{calendar-C-3ppZ7O.js.map → calendar-CB_hTeGT.js.map} +1 -1
- package/dist/{calendar-CgjleuEj.cjs → calendar-rpgciCA-.cjs} +2 -2
- package/dist/{calendar-CgjleuEj.cjs.map → calendar-rpgciCA-.cjs.map} +1 -1
- package/dist/{card-CoTzjonP.cjs → card-BNMBjSC_.cjs} +1 -1
- package/dist/{card-CoTzjonP.cjs.map → card-BNMBjSC_.cjs.map} +1 -1
- package/dist/{card-B6f87ajM.js → card-jtQVsG4Y.js} +1 -1
- package/dist/{card-B6f87ajM.js.map → card-jtQVsG4Y.js.map} +1 -1
- package/dist/cards/simple-card.cjs +1 -1
- package/dist/cards/simple-card.d.cts +2 -2
- package/dist/cards/simple-card.d.ts +2 -2
- package/dist/cards/simple-card.js +1 -1
- package/dist/{command-GiPDH7SK.d.cts → command-BkU08119.d.cts} +12 -12
- package/dist/{command--EHtTM6z.d.ts → command-CQ0BKof5.d.ts} +12 -12
- package/dist/data-display/country.cjs +1 -1
- package/dist/data-display/country.js +1 -1
- package/dist/data-display/data-list.cjs +1 -1
- package/dist/data-display/data-list.js +1 -1
- package/dist/data-display/date-tooltip.cjs +1 -1
- package/dist/data-display/date-tooltip.js +1 -1
- package/dist/data-display/date.cjs +1 -1
- package/dist/data-display/date.js +1 -1
- package/dist/data-display/empty.cjs +1 -1
- package/dist/data-display/empty.js +1 -1
- package/dist/data-display/name.cjs +1 -1
- package/dist/data-display/name.js +1 -1
- package/dist/data-display/phone-number.cjs +1 -1
- package/dist/data-display/phone-number.js +1 -1
- package/dist/data-display/role-badge.cjs +1 -1
- package/dist/data-display/role-badge.js +1 -1
- package/dist/data-display/statistic.cjs +1 -1
- package/dist/data-display/statistic.d.cts +2 -2
- package/dist/data-display/statistic.d.ts +2 -2
- package/dist/data-display/statistic.js +1 -1
- package/dist/{date-C5tbtGM-.js → date-D7i-nFOS.js} +1 -1
- package/dist/{date-C5tbtGM-.js.map → date-D7i-nFOS.js.map} +1 -1
- package/dist/{date-C0z2FXYp.cjs → date-DevNulgp.cjs} +1 -1
- package/dist/{date-C0z2FXYp.cjs.map → date-DevNulgp.cjs.map} +1 -1
- package/dist/{dialog-DI0dG1nN.d.cts → dialog-DBHKJa6T.d.cts} +12 -12
- package/dist/{dialog-K7XGi4-3.d.ts → dialog-Dt7Z19tQ.d.ts} +12 -12
- package/dist/dialogs/confirm-dialog.cjs +1 -1
- package/dist/dialogs/confirm-dialog.js +1 -1
- package/dist/dialogs/detail-dialog/component/sidebar.cjs +1 -1
- package/dist/dialogs/detail-dialog/component/sidebar.d.cts +28 -28
- package/dist/dialogs/detail-dialog/component/sidebar.d.ts +28 -28
- package/dist/dialogs/detail-dialog/component/sidebar.js +1 -1
- package/dist/dialogs/detail-dialog/index.cjs +1 -1
- package/dist/dialogs/detail-dialog/index.cjs.map +1 -1
- package/dist/dialogs/detail-dialog/index.js +1 -1
- package/dist/dialogs/error-dialog.cjs +1 -1
- package/dist/dialogs/error-dialog.js +1 -1
- package/dist/dialogs/form-dialog.cjs +1 -1
- package/dist/dialogs/form-dialog.cjs.map +1 -1
- package/dist/dialogs/form-dialog.d.cts +2 -2
- package/dist/dialogs/form-dialog.d.ts +2 -2
- package/dist/dialogs/form-dialog.js +1 -1
- package/dist/dialogs/form-dialog.js.map +1 -1
- package/dist/{error-dialog-C4MDPBp3.cjs → error-dialog-DvTlwpSn.cjs} +2 -2
- package/dist/{error-dialog-C4MDPBp3.cjs.map → error-dialog-DvTlwpSn.cjs.map} +1 -1
- package/dist/{error-dialog-CSKdmmJr.js → error-dialog-e9mFaOuG.js} +2 -2
- package/dist/{error-dialog-CSKdmmJr.js.map → error-dialog-e9mFaOuG.js.map} +1 -1
- package/dist/{flex-BZQ2cN9R.cjs → flex-DHnsdjKn.cjs} +2 -2
- package/dist/{flex-BZQ2cN9R.cjs.map → flex-DHnsdjKn.cjs.map} +1 -1
- package/dist/{flex-BjOEOc7S.js → flex-uJ4bFSYt.js} +2 -2
- package/dist/{flex-BjOEOc7S.js.map → flex-uJ4bFSYt.js.map} +1 -1
- package/dist/{form-wrapper-C90Uwr2D.cjs → form-wrapper-CZKtb1j5.cjs} +2 -2
- package/dist/{form-wrapper-C90Uwr2D.cjs.map → form-wrapper-CZKtb1j5.cjs.map} +1 -1
- package/dist/{form-wrapper-CiBEh5T6.js → form-wrapper-Cks4xmCV.js} +2 -2
- package/dist/{form-wrapper-CiBEh5T6.js.map → form-wrapper-Cks4xmCV.js.map} +1 -1
- package/dist/forms/combobox-field.cjs +1 -1
- package/dist/forms/combobox-field.d.cts +2 -2
- package/dist/forms/combobox-field.d.ts +2 -2
- package/dist/forms/combobox-field.js +1 -1
- package/dist/forms/date-field.cjs +1 -1
- package/dist/forms/date-field.d.cts +2 -2
- package/dist/forms/date-field.d.ts +2 -2
- package/dist/forms/date-field.js +1 -1
- package/dist/forms/form-wrapper.cjs +1 -1
- package/dist/forms/form-wrapper.d.cts +2 -2
- package/dist/forms/form-wrapper.d.ts +2 -2
- package/dist/forms/form-wrapper.js +1 -1
- package/dist/forms/multi-select-field.cjs +1 -1
- package/dist/forms/multi-select-field.d.cts +2 -2
- package/dist/forms/multi-select-field.d.ts +2 -2
- package/dist/forms/multi-select-field.js +1 -1
- package/dist/forms/number-field.d.cts +2 -2
- package/dist/forms/number-field.d.ts +2 -2
- package/dist/forms/password-field.d.cts +2 -2
- package/dist/forms/password-field.d.ts +2 -2
- package/dist/forms/select-field.d.cts +2 -2
- package/dist/forms/select-field.d.ts +2 -2
- package/dist/forms/switch-field.d.cts +2 -2
- package/dist/forms/switch-field.d.ts +2 -2
- package/dist/forms/text-field.cjs +1 -1
- package/dist/forms/text-field.d.cts +2 -2
- package/dist/forms/text-field.d.ts +2 -2
- package/dist/forms/text-field.js +1 -1
- package/dist/forms/textarea-field.d.cts +2 -2
- package/dist/forms/textarea-field.d.ts +2 -2
- package/dist/{input-BwEN2Wpj.d.ts → input-B8FXpdwz.d.ts} +3 -3
- package/dist/{input-U-QjIyJP.d.cts → input-BQYGZywO.d.cts} +3 -3
- package/dist/layouts/app-layout/index.cjs +1 -1
- package/dist/layouts/app-layout/index.cjs.map +1 -1
- package/dist/layouts/app-layout/index.d.cts +3 -3
- package/dist/layouts/app-layout/index.d.ts +4 -4
- package/dist/layouts/app-layout/index.js +1 -1
- package/dist/layouts/app-layout/index.js.map +1 -1
- package/dist/layouts/flex.cjs +1 -1
- package/dist/layouts/flex.d.cts +2 -2
- package/dist/layouts/flex.d.ts +4 -4
- package/dist/layouts/flex.js +1 -1
- package/dist/layouts/main/index.cjs +1 -1
- package/dist/layouts/main/index.d.ts +4 -4
- package/dist/layouts/main/index.js +1 -1
- package/dist/{multi-select-BPqWe046.js → multi-select-DkEzuDXi.js} +2 -2
- package/dist/{multi-select-BPqWe046.js.map → multi-select-DkEzuDXi.js.map} +1 -1
- package/dist/{multi-select-CEe5Cvod.cjs → multi-select-DoV9aD32.cjs} +2 -2
- package/dist/{multi-select-CEe5Cvod.cjs.map → multi-select-DoV9aD32.cjs.map} +1 -1
- package/dist/paragraph-BsEYXIR3.cjs +2 -0
- package/dist/{paragraph-DI_ILU8j.cjs.map → paragraph-BsEYXIR3.cjs.map} +1 -1
- package/dist/paragraph-D4klQX4h.js +2 -0
- package/dist/{paragraph-B9i0Ct66.js.map → paragraph-D4klQX4h.js.map} +1 -1
- package/dist/{refresh-C-TZGfFW.cjs → refresh-By25Z7zj.cjs} +2 -2
- package/dist/{refresh-C-TZGfFW.cjs.map → refresh-By25Z7zj.cjs.map} +1 -1
- package/dist/{refresh-CCSNv6HC.js → refresh-CMzmHeMf.js} +2 -2
- package/dist/{refresh-CCSNv6HC.js.map → refresh-CMzmHeMf.js.map} +1 -1
- package/dist/{separator-CH5EWPlQ.d.ts → separator-CJHYnmH1.d.ts} +3 -3
- package/dist/{separator-Dxf2wDl5.d.cts → separator-DJ-8s4B1.d.cts} +3 -3
- package/dist/{sidebar-C8HoWRT5.js → sidebar-BDefeoUz.js} +2 -2
- package/dist/{sidebar-C8HoWRT5.js.map → sidebar-BDefeoUz.js.map} +1 -1
- package/dist/{sidebar-BgPlXsnG.cjs → sidebar-C6MoqLW4.cjs} +2 -2
- package/dist/{sidebar-BgPlXsnG.cjs.map → sidebar-C6MoqLW4.cjs.map} +1 -1
- package/dist/{sidebar-BM-cIAIR.js → sidebar-CoAMlkou.js} +2 -2
- package/dist/{sidebar-BM-cIAIR.js.map → sidebar-CoAMlkou.js.map} +1 -1
- package/dist/{sidebar-DnaWwRUj.cjs → sidebar-Dzl9-lVV.cjs} +2 -2
- package/dist/{sidebar-DnaWwRUj.cjs.map → sidebar-Dzl9-lVV.cjs.map} +1 -1
- package/dist/table/index.cjs +1 -1
- package/dist/table/index.d.cts +2 -2
- package/dist/table/index.d.ts +2 -2
- package/dist/table/index.js +1 -1
- package/dist/{title-DsM70qVj.cjs → title-DONX1fR6.cjs} +2 -2
- package/dist/{title-DsM70qVj.cjs.map → title-DONX1fR6.cjs.map} +1 -1
- package/dist/title-itXqz0us.js +2 -0
- package/dist/{title-Di22OEtI.js.map → title-itXqz0us.js.map} +1 -1
- package/dist/{toggle-BKfcADc8.js → toggle-06cycHir.js} +2 -2
- package/dist/{toggle-BKfcADc8.js.map → toggle-06cycHir.js.map} +1 -1
- package/dist/{toggle-B3OtHnDv.cjs → toggle-BIHM3COb.cjs} +2 -2
- package/dist/{toggle-B3OtHnDv.cjs.map → toggle-BIHM3COb.cjs.map} +1 -1
- package/dist/{toggle-C8X0pW5k.d.ts → toggle-D5tumZ8L.d.cts} +5 -5
- package/dist/{toggle-CqXOX6jj.d.cts → toggle-Dd0rFKhT.d.ts} +4 -4
- package/dist/{tooltip-Xk3kG3mc.js → tooltip-Ba2AdN_7.js} +1 -1
- package/dist/{tooltip-Xk3kG3mc.js.map → tooltip-Ba2AdN_7.js.map} +1 -1
- package/dist/{tooltip-Dfc9X9ev.d.ts → tooltip-BnRE0jV2.d.ts} +6 -6
- package/dist/{tooltip-C07dUvb2.cjs → tooltip-DRqQqSFW.cjs} +1 -1
- package/dist/{tooltip-C07dUvb2.cjs.map → tooltip-DRqQqSFW.cjs.map} +1 -1
- package/dist/{tooltip-CB_EvSpF.d.cts → tooltip-Dkh_dieJ.d.cts} +6 -6
- package/dist/{types-D4VheH3v.cjs → types-BN8HhYHR.cjs} +1 -1
- package/dist/{types-D4VheH3v.cjs.map → types-BN8HhYHR.cjs.map} +1 -1
- package/dist/{types-C1zngBcL.js → types-DDfAVYxf.js} +1 -1
- package/dist/{types-C1zngBcL.js.map → types-DDfAVYxf.js.map} +1 -1
- package/dist/typography/paragraph.cjs +1 -1
- package/dist/typography/paragraph.d.cts +2 -2
- package/dist/typography/paragraph.d.ts +2 -2
- package/dist/typography/paragraph.js +1 -1
- package/dist/typography/title.cjs +1 -1
- package/dist/typography/title.d.cts +2 -2
- package/dist/typography/title.d.ts +2 -2
- package/dist/typography/title.js +1 -1
- package/dist/ui/alert-dialog.cjs +1 -1
- package/dist/ui/alert-dialog.d.cts +12 -12
- package/dist/ui/alert-dialog.d.ts +12 -12
- package/dist/ui/alert-dialog.js +1 -1
- package/dist/ui/alert.cjs +1 -1
- package/dist/ui/alert.d.cts +4 -4
- package/dist/ui/alert.d.ts +6 -6
- package/dist/ui/alert.js +1 -1
- package/dist/ui/aspect-ratio.d.cts +2 -2
- package/dist/ui/aspect-ratio.d.ts +2 -2
- package/dist/ui/avatar.d.cts +4 -4
- package/dist/ui/avatar.d.ts +4 -4
- package/dist/ui/badge.cjs +1 -1
- package/dist/ui/badge.d.cts +4 -4
- package/dist/ui/badge.d.ts +4 -4
- package/dist/ui/badge.js +1 -1
- package/dist/ui/breadcrumb.d.cts +8 -8
- package/dist/ui/breadcrumb.d.ts +8 -8
- package/dist/ui/button.cjs +1 -1
- package/dist/ui/button.d.cts +1 -1
- package/dist/ui/button.d.ts +1 -1
- package/dist/ui/button.js +1 -1
- package/dist/ui/buttons/add-new.cjs +1 -1
- package/dist/ui/buttons/add-new.js +1 -1
- package/dist/ui/buttons/edit.cjs +1 -1
- package/dist/ui/buttons/edit.js +1 -1
- package/dist/ui/buttons/refresh.cjs +1 -1
- package/dist/ui/buttons/refresh.js +1 -1
- package/dist/ui/buttons/trash.cjs +1 -1
- package/dist/ui/buttons/trash.js +1 -1
- package/dist/ui/buttons/upload-image.cjs +1 -1
- package/dist/ui/buttons/upload-image.js +1 -1
- package/dist/ui/calendar.cjs +1 -1
- package/dist/ui/calendar.d.cts +4 -4
- package/dist/ui/calendar.d.ts +4 -4
- package/dist/ui/calendar.js +1 -1
- package/dist/ui/card.cjs +1 -1
- package/dist/ui/card.d.cts +8 -8
- package/dist/ui/card.d.ts +8 -8
- package/dist/ui/card.js +1 -1
- package/dist/ui/carousel.cjs +1 -1
- package/dist/ui/carousel.d.cts +7 -7
- package/dist/ui/carousel.d.ts +7 -7
- package/dist/ui/carousel.js +1 -1
- package/dist/ui/collapsible.d.cts +4 -4
- package/dist/ui/collapsible.d.ts +4 -4
- package/dist/ui/command.d.cts +2 -2
- package/dist/ui/command.d.ts +2 -2
- package/dist/ui/context-menu.d.cts +16 -16
- package/dist/ui/context-menu.d.ts +16 -16
- package/dist/ui/dialog.d.cts +1 -1
- package/dist/ui/dialog.d.ts +1 -1
- package/dist/ui/dropdown-menu.d.cts +16 -16
- package/dist/ui/dropdown-menu.d.ts +16 -16
- package/dist/ui/file-uploader.cjs +1 -1
- package/dist/ui/file-uploader.d.cts +2 -2
- package/dist/ui/file-uploader.d.ts +2 -2
- package/dist/ui/file-uploader.js +1 -1
- package/dist/ui/form.d.cts +7 -7
- package/dist/ui/form.d.ts +7 -7
- package/dist/ui/hover-card.d.cts +4 -4
- package/dist/ui/hover-card.d.ts +4 -4
- package/dist/ui/input-otp.d.cts +5 -5
- package/dist/ui/input-otp.d.ts +5 -5
- package/dist/ui/input.d.cts +1 -1
- package/dist/ui/input.d.ts +1 -1
- package/dist/ui/inputs/search-input.d.cts +3 -3
- package/dist/ui/inputs/search-input.d.ts +3 -3
- package/dist/ui/label.d.cts +2 -2
- package/dist/ui/label.d.ts +2 -2
- package/dist/ui/menubar.d.cts +17 -17
- package/dist/ui/menubar.d.ts +17 -17
- package/dist/ui/multi-select.cjs +1 -1
- package/dist/ui/multi-select.d.cts +2 -2
- package/dist/ui/multi-select.d.ts +2 -2
- package/dist/ui/multi-select.js +1 -1
- package/dist/ui/navigation-menu.cjs +1 -1
- package/dist/ui/navigation-menu.d.cts +11 -11
- package/dist/ui/navigation-menu.d.ts +11 -11
- package/dist/ui/navigation-menu.js +1 -1
- package/dist/ui/pagination.cjs +1 -1
- package/dist/ui/pagination.d.cts +9 -9
- package/dist/ui/pagination.d.ts +9 -9
- package/dist/ui/pagination.js +1 -1
- package/dist/ui/popover.d.cts +5 -5
- package/dist/ui/popover.d.ts +5 -5
- package/dist/ui/progress.d.cts +2 -2
- package/dist/ui/progress.d.ts +2 -2
- package/dist/ui/radio-group.d.cts +3 -3
- package/dist/ui/radio-group.d.ts +3 -3
- package/dist/ui/resizable.d.cts +4 -4
- package/dist/ui/resizable.d.ts +4 -4
- package/dist/ui/scroll-area.d.cts +3 -3
- package/dist/ui/scroll-area.d.ts +3 -3
- package/dist/ui/select.d.cts +11 -11
- package/dist/ui/select.d.ts +11 -11
- package/dist/ui/separator.d.cts +1 -1
- package/dist/ui/separator.d.ts +1 -1
- package/dist/ui/sheet.d.cts +9 -9
- package/dist/ui/sheet.d.ts +9 -9
- package/dist/ui/sidebar.cjs +1 -1
- package/dist/ui/sidebar.d.cts +30 -30
- package/dist/ui/sidebar.d.ts +30 -30
- package/dist/ui/sidebar.js +1 -1
- package/dist/ui/skeleton.d.cts +2 -2
- package/dist/ui/skeleton.d.ts +2 -2
- package/dist/ui/slider.d.cts +2 -2
- package/dist/ui/slider.d.ts +2 -2
- package/dist/ui/sonner.d.cts +2 -2
- package/dist/ui/sonner.d.ts +2 -2
- package/dist/ui/switch.d.cts +2 -2
- package/dist/ui/switch.d.ts +2 -2
- package/dist/ui/table.d.cts +9 -9
- package/dist/ui/table.d.ts +9 -9
- package/dist/ui/tabs.d.cts +5 -5
- package/dist/ui/tabs.d.ts +5 -5
- package/dist/ui/textarea.d.cts +2 -2
- package/dist/ui/textarea.d.ts +2 -2
- package/dist/ui/toggle-group.cjs +1 -1
- package/dist/ui/toggle-group.d.cts +4 -4
- package/dist/ui/toggle-group.d.ts +4 -4
- package/dist/ui/toggle-group.js +1 -1
- package/dist/ui/toggle.cjs +1 -1
- package/dist/ui/toggle.d.cts +1 -1
- package/dist/ui/toggle.d.ts +1 -1
- package/dist/ui/toggle.js +1 -1
- package/dist/ui/tooltip.cjs +1 -1
- package/dist/ui/tooltip.d.cts +1 -1
- package/dist/ui/tooltip.d.ts +1 -1
- package/dist/ui/tooltip.js +1 -1
- package/package.json +1 -1
- package/dist/paragraph-B9i0Ct66.js +0 -2
- package/dist/paragraph-DI_ILU8j.cjs +0 -2
- package/dist/title-Di22OEtI.js +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calendar-CgjleuEj.cjs","names":["DayPicker","buttonVariants","props","className","ChevronLeftIcon","ChevronRightIcon","ChevronDownIcon","React","Button"],"sources":["../packages/components/ui/calendar.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\nimport { ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon } from 'lucide-react'\nimport { DayButton, DayPicker, getDefaultClassNames } from 'react-day-picker'\n\nimport { Button, buttonVariants } from '@/components/ui/button'\nimport { cn } from '@customafk/react-toolkit/utils'\n\nfunction Calendar({\n className,\n classNames,\n showOutsideDays = true,\n captionLayout = 'label',\n buttonVariant = 'ghost',\n formatters,\n components,\n ...props\n}: React.ComponentProps<typeof DayPicker> & {\n buttonVariant?: React.ComponentProps<typeof Button>['variant']\n}) {\n const defaultClassNames = getDefaultClassNames()\n\n return (\n <DayPicker\n showOutsideDays={showOutsideDays}\n className={cn(\n 'bg-background group/calendar p-3',\n '[--cell-size:--spacing(8)]',\n '[[data-slot=card-content]_&]:bg-transparent',\n '[[data-slot=popover-content]_&]:bg-transparent',\n String.raw`rtl:**:[.rdp-button\\_next>svg]:rotate-180`,\n String.raw`rtl:**:[.rdp-button\\_previous>svg]:rotate-180`,\n className,\n )}\n captionLayout={captionLayout}\n formatters={{\n formatMonthDropdown: (date) => date.toLocaleString('default', { month: 'short' }),\n ...formatters,\n }}\n classNames={{\n root: cn('w-fit', defaultClassNames.root),\n months: cn('flex gap-4 flex-col md:flex-row relative', defaultClassNames.months),\n month: cn('flex flex-col w-full gap-4', defaultClassNames.month),\n nav: cn('flex items-center gap-1 w-full absolute top-0 inset-x-0 justify-between', defaultClassNames.nav),\n button_previous: cn(\n buttonVariants({ variant: buttonVariant }),\n 'size-(--cell-size) aria-disabled:opacity-50 p-0 select-none',\n defaultClassNames.button_previous,\n ),\n button_next: cn(\n buttonVariants({ variant: buttonVariant }),\n 'size-(--cell-size) aria-disabled:opacity-50 p-0 select-none',\n defaultClassNames.button_next,\n ),\n month_caption: cn('flex items-center justify-center h-(--cell-size) w-full px-(--cell-size)', defaultClassNames.month_caption),\n dropdowns: cn('w-full flex items-center text-sm font-medium justify-center h-(--cell-size) gap-1.5', defaultClassNames.dropdowns),\n dropdown_root: cn(\n 'relative has-focus:border-primary-strong border border-border-weak shadow-xs has-focus:ring-primary-weak has-focus:ring-[3px] rounded-md',\n defaultClassNames.dropdown_root,\n ),\n dropdown: cn('absolute inset-0 opacity-0', defaultClassNames.dropdown),\n caption_label: cn(\n 'select-none font-medium',\n captionLayout === 'label' ? 'text-sm' : 'rounded-md pl-2 pr-1 flex items-center gap-1 text-sm h-8 [&>svg]:text-text-positive [&>svg]:size-3.5',\n defaultClassNames.caption_label,\n ),\n table: 'w-full border-collapse',\n weekdays: cn('flex', defaultClassNames.weekdays),\n weekday: cn('text-text-positive rounded-md flex-1 font-normal text-[0.8rem] select-none', defaultClassNames.weekday),\n week: cn('flex w-full mt-2', defaultClassNames.week),\n week_number_header: cn('select-none w-(--cell-size)', defaultClassNames.week_number_header),\n week_number: cn('text-[0.8rem] select-none text-text-positive', defaultClassNames.week_number),\n day: cn(\n 'relative w-full h-full p-0 text-center [&:first-child[data-selected=true]_button]:rounded-l-md [&:last-child[data-selected=true]_button]:rounded-r-md group/day aspect-square select-none',\n defaultClassNames.day,\n ),\n range_start: cn('rounded-l-md bg-muted-muted', defaultClassNames.range_start),\n range_middle: cn('rounded-none', defaultClassNames.range_middle),\n range_end: cn('rounded-r-md bg-muted-muted', defaultClassNames.range_end),\n today: cn('bg-muted-muted text-text-positive rounded-md data-[selected=true]:rounded-none', defaultClassNames.today),\n outside: cn('text-text-positive aria-selected:text-text-positive', defaultClassNames.outside),\n disabled: cn('text-text-positive opacity-50', defaultClassNames.disabled),\n hidden: cn('invisible', defaultClassNames.hidden),\n ...classNames,\n }}\n components={{\n Root: ({ className, rootRef, ...props }) => {\n return <div data-slot=\"calendar\" ref={rootRef} className={cn(className)} {...props} />\n },\n Chevron: ({ className, orientation, ...props }) => {\n if (orientation === 'left') {\n return <ChevronLeftIcon className={cn('size-4', className)} {...props} />\n }\n\n if (orientation === 'right') {\n return <ChevronRightIcon className={cn('size-4', className)} {...props} />\n }\n\n return <ChevronDownIcon className={cn('size-4', className)} {...props} />\n },\n DayButton: CalendarDayButton,\n WeekNumber: ({ children, ...props }) => {\n return (\n <td {...props}>\n <div className=\"flex size-(--cell-size) items-center justify-center text-center\">{children}</div>\n </td>\n )\n },\n ...components,\n }}\n {...props}\n />\n )\n}\n\nfunction CalendarDayButton({ className, day, modifiers, ...props }: React.ComponentProps<typeof DayButton>) {\n const defaultClassNames = getDefaultClassNames()\n\n const ref = React.useRef<HTMLButtonElement>(null)\n React.useEffect(() => {\n if (modifiers.focused) ref.current?.focus()\n }, [modifiers.focused])\n\n return (\n <Button\n ref={ref}\n variant=\"ghost\"\n size=\"icon\"\n data-day={day.date.toLocaleDateString()}\n data-selected-single={modifiers.selected && !modifiers.range_start && !modifiers.range_end && !modifiers.range_middle}\n data-range-start={modifiers.range_start}\n data-range-end={modifiers.range_end}\n data-range-middle={modifiers.range_middle}\n className={cn(\n 'flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 leading-none font-normal',\n 'data-[selected-single=true]:bg-primary',\n 'data-[selected-single=true]:text-text-positive',\n 'data-[range-middle=true]:bg-muted-muted',\n 'data-[range-middle=true]:text-text-positive',\n 'data-[range-start=true]:bg-primary-muted',\n 'data-[range-start=true]:text-text-positive-strong',\n 'data-[range-end=true]:bg-primary',\n 'data-[range-end=true]:text-text-positive-strong',\n 'group-data-[focused=true]/day:border-primary-strong',\n 'group-data-[focused=true]/day:ring-primary-weak',\n 'group-data-[focused=true]/day:relative',\n 'group-data-[focused=true]/day:z-10',\n 'group-data-[focused=true]/day:ring-[3px]',\n 'data-[range-end=true]:rounded-md',\n 'data-[range-end=true]:rounded-r-md',\n 'data-[range-middle=true]:rounded-none',\n 'data-[range-start=true]:rounded-md',\n 'data-[range-start=true]:rounded-l-md',\n '[&>span]:text-xs [&>span]:opacity-70',\n defaultClassNames.day,\n className,\n )}\n {...props}\n color=\"secondary\"\n />\n )\n}\n\nexport { Calendar, CalendarDayButton }\n"],"mappings":"wRAQA,SAAS,EAAS,CAChB,YACA,aACA,kBAAkB,GAClB,gBAAgB,QAChB,gBAAgB,QAChB,aACA,aACA,GAAG,GAGF,CACD,IAAM,GAAA,EAAA,EAAA,wBAEN,OACE,EAAA,EAAA,KAACA,EAAAA,UAAAA,CACkB,kBACjB,WAAA,EAAA,EAAA,IACE,mCACA,6BACA,8CACA,iDACA,OAAO,GAAG,4CACV,OAAO,GAAG,gDACV,GAEa,gBACf,WAAY,CACV,oBAAsB,GAAS,EAAK,eAAe,UAAW,CAAE,MAAO,UACvE,GAAG,GAEL,WAAY,CACV,MAAA,EAAA,EAAA,IAAS,QAAS,EAAkB,MACpC,QAAA,EAAA,EAAA,IAAW,2CAA4C,EAAkB,QACzE,OAAA,EAAA,EAAA,IAAU,6BAA8B,EAAkB,OAC1D,KAAA,EAAA,EAAA,IAAQ,0EAA2E,EAAkB,KACrG,iBAAA,EAAA,EAAA,IACEC,EAAAA,eAAe,CAAE,QAAS,IAC1B,8DACA,EAAkB,iBAEpB,aAAA,EAAA,EAAA,IACEA,EAAAA,eAAe,CAAE,QAAS,IAC1B,8DACA,EAAkB,aAEpB,eAAA,EAAA,EAAA,IAAkB,2EAA4E,EAAkB,eAChH,WAAA,EAAA,EAAA,IAAc,sFAAuF,EAAkB,WACvH,eAAA,EAAA,EAAA,IACE,2IACA,EAAkB,eAEpB,UAAA,EAAA,EAAA,IAAa,6BAA8B,EAAkB,UAC7D,eAAA,EAAA,EAAA,IACE,0BACA,IAAkB,QAAU,UAAY,uGACxC,EAAkB,eAEpB,MAAO,yBACP,UAAA,EAAA,EAAA,IAAa,OAAQ,EAAkB,UACvC,SAAA,EAAA,EAAA,IAAY,6EAA8E,EAAkB,SAC5G,MAAA,EAAA,EAAA,IAAS,mBAAoB,EAAkB,MAC/C,oBAAA,EAAA,EAAA,IAAuB,8BAA+B,EAAkB,oBACxE,aAAA,EAAA,EAAA,IAAgB,+CAAgD,EAAkB,aAClF,KAAA,EAAA,EAAA,IACE,4LACA,EAAkB,KAEpB,aAAA,EAAA,EAAA,IAAgB,8BAA+B,EAAkB,aACjE,cAAA,EAAA,EAAA,IAAiB,eAAgB,EAAkB,cACnD,WAAA,EAAA,EAAA,IAAc,8BAA+B,EAAkB,WAC/D,OAAA,EAAA,EAAA,IAAU,iFAAkF,EAAkB,OAC9G,SAAA,EAAA,EAAA,IAAY,sDAAuD,EAAkB,SACrF,UAAA,EAAA,EAAA,IAAa,gCAAiC,EAAkB,UAChE,QAAA,EAAA,EAAA,IAAW,YAAa,EAAkB,QAC1C,GAAG,GAEL,WAAY,CACV,MAAO,CAAE,UAAA,EAAW,UAAS,GAAGC,MACvB,EAAA,EAAA,KAAC,MAAA,CAAI,YAAU,WAAW,IAAK,EAAS,WAAA,EAAA,EAAA,IAAcC,GAAY,GAAID,IAE/E,SAAU,CAAE,UAAA,EAAW,cAAa,GAAGA,KACjC,IAAgB,QACX,EAAA,EAAA,KAACE,EAAAA,gBAAAA,CAAgB,WAAA,EAAA,EAAA,IAAc,SAAUD,GAAY,GAAID,IAG9D,IAAgB,SACX,EAAA,EAAA,KAACG,EAAAA,iBAAAA,CAAiB,WAAA,EAAA,EAAA,IAAc,SAAUF,GAAY,GAAID,KAG5D,EAAA,EAAA,KAACI,EAAAA,gBAAAA,CAAgB,WAAA,EAAA,EAAA,IAAc,SAAUH,GAAY,GAAID,IAElE,UAAW,EACX,YAAa,CAAE,WAAU,GAAGA,MAExB,EAAA,EAAA,KAAC,KAAA,CAAG,GAAIA,YACN,EAAA,EAAA,KAAC,MAAA,CAAI,UAAU,kEAAmE,eAIxF,GAAG,GAEL,GAAI,IAKV,SAAS,EAAkB,CAAE,YAAW,MAAK,YAAW,GAAG,GAAiD,CAC1G,IAAM,GAAA,EAAA,EAAA,wBAEA,EAAMK,EAAAA,QAAM,OAA0B,MAK5C,OAJA,EAAA,QAAM,cAAgB,CAChB,EAAU,SAAS,EAAI,SAAS,SACnC,CAAC,EAAU,WAGZ,EAAA,EAAA,KAACC,EAAAA,OAAAA,CACM,MACL,QAAQ,QACR,KAAK,OACL,WAAU,EAAI,KAAK,qBACnB,uBAAsB,EAAU,UAAY,CAAC,EAAU,aAAe,CAAC,EAAU,WAAa,CAAC,EAAU,aACzG,mBAAkB,EAAU,YAC5B,iBAAgB,EAAU,UAC1B,oBAAmB,EAAU,aAC7B,WAAA,EAAA,EAAA,IACE,kGACA,yCACA,iDACA,0CACA,8CACA,2CACA,oDACA,mCACA,kDACA,sDACA,kDACA,yCACA,qCACA,2CACA,mCACA,qCACA,wCACA,qCACA,uCACA,uCACA,EAAkB,IAClB,GAEF,GAAI,EACJ,MAAM"}
|
|
1
|
+
{"version":3,"file":"calendar-rpgciCA-.cjs","names":["DayPicker","buttonVariants","props","className","ChevronLeftIcon","ChevronRightIcon","ChevronDownIcon","React","Button"],"sources":["../packages/components/ui/calendar.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\nimport { ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon } from 'lucide-react'\nimport { DayButton, DayPicker, getDefaultClassNames } from 'react-day-picker'\n\nimport { Button, buttonVariants } from '@/components/ui/button'\nimport { cn } from '@customafk/react-toolkit/utils'\n\nfunction Calendar({\n className,\n classNames,\n showOutsideDays = true,\n captionLayout = 'label',\n buttonVariant = 'ghost',\n formatters,\n components,\n ...props\n}: React.ComponentProps<typeof DayPicker> & {\n buttonVariant?: React.ComponentProps<typeof Button>['variant']\n}) {\n const defaultClassNames = getDefaultClassNames()\n\n return (\n <DayPicker\n showOutsideDays={showOutsideDays}\n className={cn(\n 'bg-background group/calendar p-3',\n '[--cell-size:--spacing(8)]',\n '[[data-slot=card-content]_&]:bg-transparent',\n '[[data-slot=popover-content]_&]:bg-transparent',\n String.raw`rtl:**:[.rdp-button\\_next>svg]:rotate-180`,\n String.raw`rtl:**:[.rdp-button\\_previous>svg]:rotate-180`,\n className,\n )}\n captionLayout={captionLayout}\n formatters={{\n formatMonthDropdown: (date) => date.toLocaleString('default', { month: 'short' }),\n ...formatters,\n }}\n classNames={{\n root: cn('w-fit', defaultClassNames.root),\n months: cn('flex gap-4 flex-col md:flex-row relative', defaultClassNames.months),\n month: cn('flex flex-col w-full gap-4', defaultClassNames.month),\n nav: cn('flex items-center gap-1 w-full absolute top-0 inset-x-0 justify-between', defaultClassNames.nav),\n button_previous: cn(\n buttonVariants({ variant: buttonVariant }),\n 'size-(--cell-size) aria-disabled:opacity-50 p-0 select-none',\n defaultClassNames.button_previous,\n ),\n button_next: cn(\n buttonVariants({ variant: buttonVariant }),\n 'size-(--cell-size) aria-disabled:opacity-50 p-0 select-none',\n defaultClassNames.button_next,\n ),\n month_caption: cn('flex items-center justify-center h-(--cell-size) w-full px-(--cell-size)', defaultClassNames.month_caption),\n dropdowns: cn('w-full flex items-center text-sm font-medium justify-center h-(--cell-size) gap-1.5', defaultClassNames.dropdowns),\n dropdown_root: cn(\n 'relative has-focus:border-primary-strong border border-border-weak shadow-xs has-focus:ring-primary-weak has-focus:ring-[3px] rounded-md',\n defaultClassNames.dropdown_root,\n ),\n dropdown: cn('absolute inset-0 opacity-0', defaultClassNames.dropdown),\n caption_label: cn(\n 'select-none font-medium',\n captionLayout === 'label' ? 'text-sm' : 'rounded-md pl-2 pr-1 flex items-center gap-1 text-sm h-8 [&>svg]:text-text-positive [&>svg]:size-3.5',\n defaultClassNames.caption_label,\n ),\n table: 'w-full border-collapse',\n weekdays: cn('flex', defaultClassNames.weekdays),\n weekday: cn('text-text-positive rounded-md flex-1 font-normal text-[0.8rem] select-none', defaultClassNames.weekday),\n week: cn('flex w-full mt-2', defaultClassNames.week),\n week_number_header: cn('select-none w-(--cell-size)', defaultClassNames.week_number_header),\n week_number: cn('text-[0.8rem] select-none text-text-positive', defaultClassNames.week_number),\n day: cn(\n 'relative w-full h-full p-0 text-center [&:first-child[data-selected=true]_button]:rounded-l-md [&:last-child[data-selected=true]_button]:rounded-r-md group/day aspect-square select-none',\n defaultClassNames.day,\n ),\n range_start: cn('rounded-l-md bg-muted-muted', defaultClassNames.range_start),\n range_middle: cn('rounded-none', defaultClassNames.range_middle),\n range_end: cn('rounded-r-md bg-muted-muted', defaultClassNames.range_end),\n today: cn('bg-muted-muted text-text-positive rounded-md data-[selected=true]:rounded-none', defaultClassNames.today),\n outside: cn('text-text-positive aria-selected:text-text-positive', defaultClassNames.outside),\n disabled: cn('text-text-positive opacity-50', defaultClassNames.disabled),\n hidden: cn('invisible', defaultClassNames.hidden),\n ...classNames,\n }}\n components={{\n Root: ({ className, rootRef, ...props }) => {\n return <div data-slot=\"calendar\" ref={rootRef} className={cn(className)} {...props} />\n },\n Chevron: ({ className, orientation, ...props }) => {\n if (orientation === 'left') {\n return <ChevronLeftIcon className={cn('size-4', className)} {...props} />\n }\n\n if (orientation === 'right') {\n return <ChevronRightIcon className={cn('size-4', className)} {...props} />\n }\n\n return <ChevronDownIcon className={cn('size-4', className)} {...props} />\n },\n DayButton: CalendarDayButton,\n WeekNumber: ({ children, ...props }) => {\n return (\n <td {...props}>\n <div className=\"flex size-(--cell-size) items-center justify-center text-center\">{children}</div>\n </td>\n )\n },\n ...components,\n }}\n {...props}\n />\n )\n}\n\nfunction CalendarDayButton({ className, day, modifiers, ...props }: React.ComponentProps<typeof DayButton>) {\n const defaultClassNames = getDefaultClassNames()\n\n const ref = React.useRef<HTMLButtonElement>(null)\n React.useEffect(() => {\n if (modifiers.focused) ref.current?.focus()\n }, [modifiers.focused])\n\n return (\n <Button\n ref={ref}\n variant=\"ghost\"\n size=\"icon\"\n data-day={day.date.toLocaleDateString()}\n data-selected-single={modifiers.selected && !modifiers.range_start && !modifiers.range_end && !modifiers.range_middle}\n data-range-start={modifiers.range_start}\n data-range-end={modifiers.range_end}\n data-range-middle={modifiers.range_middle}\n className={cn(\n 'flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 leading-none font-normal',\n 'data-[selected-single=true]:bg-primary',\n 'data-[selected-single=true]:text-text-positive',\n 'data-[range-middle=true]:bg-muted-muted',\n 'data-[range-middle=true]:text-text-positive',\n 'data-[range-start=true]:bg-primary-muted',\n 'data-[range-start=true]:text-text-positive-strong',\n 'data-[range-end=true]:bg-primary',\n 'data-[range-end=true]:text-text-positive-strong',\n 'group-data-[focused=true]/day:border-primary-strong',\n 'group-data-[focused=true]/day:ring-primary-weak',\n 'group-data-[focused=true]/day:relative',\n 'group-data-[focused=true]/day:z-10',\n 'group-data-[focused=true]/day:ring-[3px]',\n 'data-[range-end=true]:rounded-md',\n 'data-[range-end=true]:rounded-r-md',\n 'data-[range-middle=true]:rounded-none',\n 'data-[range-start=true]:rounded-md',\n 'data-[range-start=true]:rounded-l-md',\n '[&>span]:text-xs [&>span]:opacity-70',\n defaultClassNames.day,\n className,\n )}\n {...props}\n color=\"secondary\"\n />\n )\n}\n\nexport { Calendar, CalendarDayButton }\n"],"mappings":"wRAQA,SAAS,EAAS,CAChB,YACA,aACA,kBAAkB,GAClB,gBAAgB,QAChB,gBAAgB,QAChB,aACA,aACA,GAAG,GAGF,CACD,IAAM,GAAA,EAAA,EAAA,wBAEN,OACE,EAAA,EAAA,KAACA,EAAAA,UAAAA,CACkB,kBACjB,WAAA,EAAA,EAAA,IACE,mCACA,6BACA,8CACA,iDACA,OAAO,GAAG,4CACV,OAAO,GAAG,gDACV,GAEa,gBACf,WAAY,CACV,oBAAsB,GAAS,EAAK,eAAe,UAAW,CAAE,MAAO,UACvE,GAAG,GAEL,WAAY,CACV,MAAA,EAAA,EAAA,IAAS,QAAS,EAAkB,MACpC,QAAA,EAAA,EAAA,IAAW,2CAA4C,EAAkB,QACzE,OAAA,EAAA,EAAA,IAAU,6BAA8B,EAAkB,OAC1D,KAAA,EAAA,EAAA,IAAQ,0EAA2E,EAAkB,KACrG,iBAAA,EAAA,EAAA,IACEC,EAAAA,eAAe,CAAE,QAAS,IAC1B,8DACA,EAAkB,iBAEpB,aAAA,EAAA,EAAA,IACEA,EAAAA,eAAe,CAAE,QAAS,IAC1B,8DACA,EAAkB,aAEpB,eAAA,EAAA,EAAA,IAAkB,2EAA4E,EAAkB,eAChH,WAAA,EAAA,EAAA,IAAc,sFAAuF,EAAkB,WACvH,eAAA,EAAA,EAAA,IACE,2IACA,EAAkB,eAEpB,UAAA,EAAA,EAAA,IAAa,6BAA8B,EAAkB,UAC7D,eAAA,EAAA,EAAA,IACE,0BACA,IAAkB,QAAU,UAAY,uGACxC,EAAkB,eAEpB,MAAO,yBACP,UAAA,EAAA,EAAA,IAAa,OAAQ,EAAkB,UACvC,SAAA,EAAA,EAAA,IAAY,6EAA8E,EAAkB,SAC5G,MAAA,EAAA,EAAA,IAAS,mBAAoB,EAAkB,MAC/C,oBAAA,EAAA,EAAA,IAAuB,8BAA+B,EAAkB,oBACxE,aAAA,EAAA,EAAA,IAAgB,+CAAgD,EAAkB,aAClF,KAAA,EAAA,EAAA,IACE,4LACA,EAAkB,KAEpB,aAAA,EAAA,EAAA,IAAgB,8BAA+B,EAAkB,aACjE,cAAA,EAAA,EAAA,IAAiB,eAAgB,EAAkB,cACnD,WAAA,EAAA,EAAA,IAAc,8BAA+B,EAAkB,WAC/D,OAAA,EAAA,EAAA,IAAU,iFAAkF,EAAkB,OAC9G,SAAA,EAAA,EAAA,IAAY,sDAAuD,EAAkB,SACrF,UAAA,EAAA,EAAA,IAAa,gCAAiC,EAAkB,UAChE,QAAA,EAAA,EAAA,IAAW,YAAa,EAAkB,QAC1C,GAAG,GAEL,WAAY,CACV,MAAO,CAAE,UAAA,EAAW,UAAS,GAAGC,MACvB,EAAA,EAAA,KAAC,MAAA,CAAI,YAAU,WAAW,IAAK,EAAS,WAAA,EAAA,EAAA,IAAcC,GAAY,GAAID,IAE/E,SAAU,CAAE,UAAA,EAAW,cAAa,GAAGA,KACjC,IAAgB,QACX,EAAA,EAAA,KAACE,EAAAA,gBAAAA,CAAgB,WAAA,EAAA,EAAA,IAAc,SAAUD,GAAY,GAAID,IAG9D,IAAgB,SACX,EAAA,EAAA,KAACG,EAAAA,iBAAAA,CAAiB,WAAA,EAAA,EAAA,IAAc,SAAUF,GAAY,GAAID,KAG5D,EAAA,EAAA,KAACI,EAAAA,gBAAAA,CAAgB,WAAA,EAAA,EAAA,IAAc,SAAUH,GAAY,GAAID,IAElE,UAAW,EACX,YAAa,CAAE,WAAU,GAAGA,MAExB,EAAA,EAAA,KAAC,KAAA,CAAG,GAAIA,YACN,EAAA,EAAA,KAAC,MAAA,CAAI,UAAU,kEAAmE,eAIxF,GAAG,GAEL,GAAI,IAKV,SAAS,EAAkB,CAAE,YAAW,MAAK,YAAW,GAAG,GAAiD,CAC1G,IAAM,GAAA,EAAA,EAAA,wBAEA,EAAMK,EAAAA,QAAM,OAA0B,MAK5C,OAJA,EAAA,QAAM,cAAgB,CAChB,EAAU,SAAS,EAAI,SAAS,SACnC,CAAC,EAAU,WAGZ,EAAA,EAAA,KAACC,EAAAA,OAAAA,CACM,MACL,QAAQ,QACR,KAAK,OACL,WAAU,EAAI,KAAK,qBACnB,uBAAsB,EAAU,UAAY,CAAC,EAAU,aAAe,CAAC,EAAU,WAAa,CAAC,EAAU,aACzG,mBAAkB,EAAU,YAC5B,iBAAgB,EAAU,UAC1B,oBAAmB,EAAU,aAC7B,WAAA,EAAA,EAAA,IACE,kGACA,yCACA,iDACA,0CACA,8CACA,2CACA,oDACA,mCACA,kDACA,sDACA,kDACA,yCACA,qCACA,2CACA,mCACA,qCACA,wCACA,qCACA,uCACA,uCACA,EAAkB,IAClB,GAEF,GAAI,EACJ,MAAM"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
const e=require(`./chunk-CUT6urMc.cjs`),t=e.__toESM(require(`@customafk/react-toolkit/utils`)),n=e.__toESM(require(`react/jsx-runtime`));function r({className:e,...r}){return(0,n.jsx)(`div`,{"data-slot":`card`,className:(0,t.cn)(`bg-card text-text-positive shadow-card flex flex-col gap-6 rounded-2xl py-6`,e),...r})}function i({className:e,...r}){return(0,n.jsx)(`div`,{"data-slot":`card-header`,className:(0,t.cn)(`@container/card-header`,`grid auto-rows-min grid-rows-[auto_auto]`,`text-text-positive-strong items-start gap-1.5 px-6`,`has-data-[slot=card-action]:grid-cols-[1fr_auto]`,`[.border-b]:pb-6`,e),...r})}function a({className:e,...r}){return(0,n.jsx)(`div`,{"data-slot":`card-title`,className:(0,t.cn)(`leading-none font-semibold`,e),...r})}function o({className:e,...r}){return(0,n.jsx)(`div`,{"data-slot":`card-description`,className:(0,t.cn)(`text-text-positive-weak text-sm`,e),...r})}function s({className:e,...r}){return(0,n.jsx)(`div`,{"data-slot":`card-action`,className:(0,t.cn)(`col-start-2 row-span-2 row-start-1 self-start justify-self-end`,e),...r})}function c({className:e,...r}){return(0,n.jsx)(`div`,{"data-slot":`card-content`,className:(0,t.cn)(`px-6 text-sm`,e),...r})}function l({className:e,...r}){return(0,n.jsx)(`div`,{"data-slot":`card-footer`,className:(0,t.cn)(`flex items-center px-6 text-sm [.border-t]:pt-6`,e),...r})}Object.defineProperty(exports,`Card`,{enumerable:!0,get:function(){return r}}),Object.defineProperty(exports,`CardAction`,{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,`CardContent`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`CardDescription`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`CardFooter`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,`CardHeader`,{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,`CardTitle`,{enumerable:!0,get:function(){return a}});
|
|
2
|
-
//# sourceMappingURL=card-
|
|
2
|
+
//# sourceMappingURL=card-BNMBjSC_.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"card-
|
|
1
|
+
{"version":3,"file":"card-BNMBjSC_.cjs","names":[],"sources":["../packages/components/ui/card.tsx"],"sourcesContent":["import { cn } from '@customafk/react-toolkit/utils'\n\nfunction Card({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card\" className={cn('bg-card text-text-positive shadow-card flex flex-col gap-6 rounded-2xl py-6', className)} {...props} />\n}\n\nfunction CardHeader({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card-header\"\n className={cn(\n '@container/card-header',\n 'grid auto-rows-min grid-rows-[auto_auto]',\n 'text-text-positive-strong items-start gap-1.5 px-6',\n 'has-data-[slot=card-action]:grid-cols-[1fr_auto]',\n '[.border-b]:pb-6',\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction CardTitle({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card-title\" className={cn('leading-none font-semibold', className)} {...props} />\n}\n\nfunction CardDescription({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card-description\" className={cn('text-text-positive-weak text-sm', className)} {...props} />\n}\n\nfunction CardAction({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card-action\" className={cn('col-start-2 row-span-2 row-start-1 self-start justify-self-end', className)} {...props} />\n}\n\nfunction CardContent({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card-content\" className={cn('px-6 text-sm', className)} {...props} />\n}\n\nfunction CardFooter({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card-footer\" className={cn('flex items-center px-6 text-sm [.border-t]:pt-6', className)} {...props} />\n}\n\nexport { Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle }\n"],"mappings":"yIAEA,SAAS,EAAK,CAAE,YAAW,GAAG,GAAsC,CAClE,OAAO,EAAA,EAAA,KAAC,MAAA,CAAI,YAAU,OAAO,WAAA,EAAA,EAAA,IAAc,8EAA+E,GAAY,GAAI,IAG5I,SAAS,EAAW,CAAE,YAAW,GAAG,GAAsC,CACxE,OACE,EAAA,EAAA,KAAC,MAAA,CACC,YAAU,cACV,WAAA,EAAA,EAAA,IACE,yBACA,2CACA,qDACA,mDACA,mBACA,GAEF,GAAI,IAKV,SAAS,EAAU,CAAE,YAAW,GAAG,GAAsC,CACvE,OAAO,EAAA,EAAA,KAAC,MAAA,CAAI,YAAU,aAAa,WAAA,EAAA,EAAA,IAAc,6BAA8B,GAAY,GAAI,IAGjG,SAAS,EAAgB,CAAE,YAAW,GAAG,GAAsC,CAC7E,OAAO,EAAA,EAAA,KAAC,MAAA,CAAI,YAAU,mBAAmB,WAAA,EAAA,EAAA,IAAc,kCAAmC,GAAY,GAAI,IAG5G,SAAS,EAAW,CAAE,YAAW,GAAG,GAAsC,CACxE,OAAO,EAAA,EAAA,KAAC,MAAA,CAAI,YAAU,cAAc,WAAA,EAAA,EAAA,IAAc,iEAAkE,GAAY,GAAI,IAGtI,SAAS,EAAY,CAAE,YAAW,GAAG,GAAsC,CACzE,OAAO,EAAA,EAAA,KAAC,MAAA,CAAI,YAAU,eAAe,WAAA,EAAA,EAAA,IAAc,eAAgB,GAAY,GAAI,IAGrF,SAAS,EAAW,CAAE,YAAW,GAAG,GAAsC,CACxE,OAAO,EAAA,EAAA,KAAC,MAAA,CAAI,YAAU,cAAc,WAAA,EAAA,EAAA,IAAc,kDAAmD,GAAY,GAAI"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import{cn as e}from"@customafk/react-toolkit/utils";import{jsx as t}from"react/jsx-runtime";function n({className:n,...r}){return t(`div`,{"data-slot":`card`,className:e(`bg-card text-text-positive shadow-card flex flex-col gap-6 rounded-2xl py-6`,n),...r})}function r({className:n,...r}){return t(`div`,{"data-slot":`card-header`,className:e(`@container/card-header`,`grid auto-rows-min grid-rows-[auto_auto]`,`text-text-positive-strong items-start gap-1.5 px-6`,`has-data-[slot=card-action]:grid-cols-[1fr_auto]`,`[.border-b]:pb-6`,n),...r})}function i({className:n,...r}){return t(`div`,{"data-slot":`card-title`,className:e(`leading-none font-semibold`,n),...r})}function a({className:n,...r}){return t(`div`,{"data-slot":`card-description`,className:e(`text-text-positive-weak text-sm`,n),...r})}function o({className:n,...r}){return t(`div`,{"data-slot":`card-action`,className:e(`col-start-2 row-span-2 row-start-1 self-start justify-self-end`,n),...r})}function s({className:n,...r}){return t(`div`,{"data-slot":`card-content`,className:e(`px-6 text-sm`,n),...r})}function c({className:n,...r}){return t(`div`,{"data-slot":`card-footer`,className:e(`flex items-center px-6 text-sm [.border-t]:pt-6`,n),...r})}export{n as Card,o as CardAction,s as CardContent,a as CardDescription,c as CardFooter,r as CardHeader,i as CardTitle};
|
|
2
|
-
//# sourceMappingURL=card-
|
|
2
|
+
//# sourceMappingURL=card-jtQVsG4Y.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"card-
|
|
1
|
+
{"version":3,"file":"card-jtQVsG4Y.js","names":[],"sources":["../packages/components/ui/card.tsx"],"sourcesContent":["import { cn } from '@customafk/react-toolkit/utils'\n\nfunction Card({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card\" className={cn('bg-card text-text-positive shadow-card flex flex-col gap-6 rounded-2xl py-6', className)} {...props} />\n}\n\nfunction CardHeader({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card-header\"\n className={cn(\n '@container/card-header',\n 'grid auto-rows-min grid-rows-[auto_auto]',\n 'text-text-positive-strong items-start gap-1.5 px-6',\n 'has-data-[slot=card-action]:grid-cols-[1fr_auto]',\n '[.border-b]:pb-6',\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction CardTitle({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card-title\" className={cn('leading-none font-semibold', className)} {...props} />\n}\n\nfunction CardDescription({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card-description\" className={cn('text-text-positive-weak text-sm', className)} {...props} />\n}\n\nfunction CardAction({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card-action\" className={cn('col-start-2 row-span-2 row-start-1 self-start justify-self-end', className)} {...props} />\n}\n\nfunction CardContent({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card-content\" className={cn('px-6 text-sm', className)} {...props} />\n}\n\nfunction CardFooter({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card-footer\" className={cn('flex items-center px-6 text-sm [.border-t]:pt-6', className)} {...props} />\n}\n\nexport { Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle }\n"],"mappings":"4FAEA,SAAS,EAAK,CAAE,YAAW,GAAG,GAAsC,CAClE,OAAO,EAAC,MAAA,CAAI,YAAU,OAAO,UAAW,EAAG,8EAA+E,GAAY,GAAI,IAG5I,SAAS,EAAW,CAAE,YAAW,GAAG,GAAsC,CACxE,OACE,EAAC,MAAA,CACC,YAAU,cACV,UAAW,EACT,yBACA,2CACA,qDACA,mDACA,mBACA,GAEF,GAAI,IAKV,SAAS,EAAU,CAAE,YAAW,GAAG,GAAsC,CACvE,OAAO,EAAC,MAAA,CAAI,YAAU,aAAa,UAAW,EAAG,6BAA8B,GAAY,GAAI,IAGjG,SAAS,EAAgB,CAAE,YAAW,GAAG,GAAsC,CAC7E,OAAO,EAAC,MAAA,CAAI,YAAU,mBAAmB,UAAW,EAAG,kCAAmC,GAAY,GAAI,IAG5G,SAAS,EAAW,CAAE,YAAW,GAAG,GAAsC,CACxE,OAAO,EAAC,MAAA,CAAI,YAAU,cAAc,UAAW,EAAG,iEAAkE,GAAY,GAAI,IAGtI,SAAS,EAAY,CAAE,YAAW,GAAG,GAAsC,CACzE,OAAO,EAAC,MAAA,CAAI,YAAU,eAAe,UAAW,EAAG,eAAgB,GAAY,GAAI,IAGrF,SAAS,EAAW,CAAE,YAAW,GAAG,GAAsC,CACxE,OAAO,EAAC,MAAA,CAAI,YAAU,cAAc,UAAW,EAAG,kDAAmD,GAAY,GAAI"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use client";const e=require(`../chunk-CUT6urMc.cjs`),t=require(`../card-
|
|
1
|
+
"use client";const e=require(`../chunk-CUT6urMc.cjs`),t=require(`../card-BNMBjSC_.cjs`),n=e.__toESM(require(`react`)),r=e.__toESM(require(`react/jsx-runtime`)),i=({title:e,description:n,action:i,footer:a,children:o})=>(0,r.jsxs)(t.Card,{children:[(0,r.jsxs)(t.CardHeader,{children:[(0,r.jsx)(t.CardTitle,{children:e}),(0,r.jsx)(t.CardDescription,{children:n}),i&&(0,r.jsx)(t.CardAction,{children:i})]}),(0,r.jsx)(t.CardContent,{children:o}),a&&(0,r.jsx)(t.CardFooter,{children:a})]});exports.SimpleCard=i;
|
|
2
2
|
//# sourceMappingURL=simple-card.cjs.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
2
2
|
import React from "react";
|
|
3
3
|
|
|
4
4
|
//#region packages/components/cards/simple-card.d.ts
|
|
@@ -14,7 +14,7 @@ declare const SimpleCard: ({
|
|
|
14
14
|
action,
|
|
15
15
|
footer,
|
|
16
16
|
children
|
|
17
|
-
}: React.PropsWithChildren<Props>) =>
|
|
17
|
+
}: React.PropsWithChildren<Props>) => react_jsx_runtime0.JSX.Element;
|
|
18
18
|
//#endregion
|
|
19
19
|
export { SimpleCard };
|
|
20
20
|
//# sourceMappingURL=simple-card.d.cts.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
3
3
|
|
|
4
4
|
//#region packages/components/cards/simple-card.d.ts
|
|
5
5
|
type Props = {
|
|
@@ -14,7 +14,7 @@ declare const SimpleCard: ({
|
|
|
14
14
|
action,
|
|
15
15
|
footer,
|
|
16
16
|
children
|
|
17
|
-
}: React.PropsWithChildren<Props>) =>
|
|
17
|
+
}: React.PropsWithChildren<Props>) => react_jsx_runtime0.JSX.Element;
|
|
18
18
|
//#endregion
|
|
19
19
|
export { SimpleCard };
|
|
20
20
|
//# sourceMappingURL=simple-card.d.ts.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use client";import{Card as e,CardAction as t,CardContent as n,CardDescription as r,CardFooter as i,CardHeader as a,CardTitle as o}from"../card-
|
|
1
|
+
"use client";import{Card as e,CardAction as t,CardContent as n,CardDescription as r,CardFooter as i,CardHeader as a,CardTitle as o}from"../card-jtQVsG4Y.js";import s from"react";import{jsx as c,jsxs as l}from"react/jsx-runtime";const u=({title:s,description:u,action:d,footer:f,children:p})=>l(e,{children:[l(a,{children:[c(o,{children:s}),c(r,{children:u}),d&&c(t,{children:d})]}),c(n,{children:p}),f&&c(i,{children:f})]});export{u as SimpleCard};
|
|
2
2
|
//# sourceMappingURL=simple-card.js.map
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { Dialog } from "./dialog-
|
|
2
|
-
import * as
|
|
1
|
+
import { Dialog } from "./dialog-DBHKJa6T.cjs";
|
|
2
|
+
import * as react_jsx_runtime69 from "react/jsx-runtime";
|
|
3
3
|
import { Command } from "cmdk";
|
|
4
4
|
|
|
5
5
|
//#region packages/components/ui/command.d.ts
|
|
6
6
|
declare function Command$1({
|
|
7
7
|
className,
|
|
8
8
|
...props
|
|
9
|
-
}: React.ComponentProps<typeof Command>):
|
|
9
|
+
}: React.ComponentProps<typeof Command>): react_jsx_runtime69.JSX.Element;
|
|
10
10
|
declare function CommandDialog({
|
|
11
11
|
title,
|
|
12
12
|
description,
|
|
@@ -19,34 +19,34 @@ declare function CommandDialog({
|
|
|
19
19
|
description?: string;
|
|
20
20
|
className?: string;
|
|
21
21
|
showCloseButton?: boolean;
|
|
22
|
-
}):
|
|
22
|
+
}): react_jsx_runtime69.JSX.Element;
|
|
23
23
|
declare function CommandInput({
|
|
24
24
|
className,
|
|
25
25
|
...props
|
|
26
|
-
}: React.ComponentProps<typeof Command.Input>):
|
|
26
|
+
}: React.ComponentProps<typeof Command.Input>): react_jsx_runtime69.JSX.Element;
|
|
27
27
|
declare function CommandList({
|
|
28
28
|
className,
|
|
29
29
|
...props
|
|
30
|
-
}: React.ComponentProps<typeof Command.List>):
|
|
30
|
+
}: React.ComponentProps<typeof Command.List>): react_jsx_runtime69.JSX.Element;
|
|
31
31
|
declare function CommandEmpty({
|
|
32
32
|
...props
|
|
33
|
-
}: React.ComponentProps<typeof Command.Empty>):
|
|
33
|
+
}: React.ComponentProps<typeof Command.Empty>): react_jsx_runtime69.JSX.Element;
|
|
34
34
|
declare function CommandGroup({
|
|
35
35
|
className,
|
|
36
36
|
...props
|
|
37
|
-
}: React.ComponentProps<typeof Command.Group>):
|
|
37
|
+
}: React.ComponentProps<typeof Command.Group>): react_jsx_runtime69.JSX.Element;
|
|
38
38
|
declare function CommandSeparator({
|
|
39
39
|
className,
|
|
40
40
|
...props
|
|
41
|
-
}: React.ComponentProps<typeof Command.Separator>):
|
|
41
|
+
}: React.ComponentProps<typeof Command.Separator>): react_jsx_runtime69.JSX.Element;
|
|
42
42
|
declare function CommandItem({
|
|
43
43
|
className,
|
|
44
44
|
...props
|
|
45
|
-
}: React.ComponentProps<typeof Command.Item>):
|
|
45
|
+
}: React.ComponentProps<typeof Command.Item>): react_jsx_runtime69.JSX.Element;
|
|
46
46
|
declare function CommandShortcut({
|
|
47
47
|
className,
|
|
48
48
|
...props
|
|
49
|
-
}: React.ComponentProps<'span'>):
|
|
49
|
+
}: React.ComponentProps<'span'>): react_jsx_runtime69.JSX.Element;
|
|
50
50
|
//#endregion
|
|
51
51
|
export { Command$1 as Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut };
|
|
52
|
-
//# sourceMappingURL=command-
|
|
52
|
+
//# sourceMappingURL=command-BkU08119.d.cts.map
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { Dialog } from "./dialog-
|
|
2
|
-
import * as
|
|
1
|
+
import { Dialog } from "./dialog-Dt7Z19tQ.js";
|
|
2
|
+
import * as react_jsx_runtime35 from "react/jsx-runtime";
|
|
3
3
|
import { Command } from "cmdk";
|
|
4
4
|
|
|
5
5
|
//#region packages/components/ui/command.d.ts
|
|
6
6
|
declare function Command$1({
|
|
7
7
|
className,
|
|
8
8
|
...props
|
|
9
|
-
}: React.ComponentProps<typeof Command>):
|
|
9
|
+
}: React.ComponentProps<typeof Command>): react_jsx_runtime35.JSX.Element;
|
|
10
10
|
declare function CommandDialog({
|
|
11
11
|
title,
|
|
12
12
|
description,
|
|
@@ -19,34 +19,34 @@ declare function CommandDialog({
|
|
|
19
19
|
description?: string;
|
|
20
20
|
className?: string;
|
|
21
21
|
showCloseButton?: boolean;
|
|
22
|
-
}):
|
|
22
|
+
}): react_jsx_runtime35.JSX.Element;
|
|
23
23
|
declare function CommandInput({
|
|
24
24
|
className,
|
|
25
25
|
...props
|
|
26
|
-
}: React.ComponentProps<typeof Command.Input>):
|
|
26
|
+
}: React.ComponentProps<typeof Command.Input>): react_jsx_runtime35.JSX.Element;
|
|
27
27
|
declare function CommandList({
|
|
28
28
|
className,
|
|
29
29
|
...props
|
|
30
|
-
}: React.ComponentProps<typeof Command.List>):
|
|
30
|
+
}: React.ComponentProps<typeof Command.List>): react_jsx_runtime35.JSX.Element;
|
|
31
31
|
declare function CommandEmpty({
|
|
32
32
|
...props
|
|
33
|
-
}: React.ComponentProps<typeof Command.Empty>):
|
|
33
|
+
}: React.ComponentProps<typeof Command.Empty>): react_jsx_runtime35.JSX.Element;
|
|
34
34
|
declare function CommandGroup({
|
|
35
35
|
className,
|
|
36
36
|
...props
|
|
37
|
-
}: React.ComponentProps<typeof Command.Group>):
|
|
37
|
+
}: React.ComponentProps<typeof Command.Group>): react_jsx_runtime35.JSX.Element;
|
|
38
38
|
declare function CommandSeparator({
|
|
39
39
|
className,
|
|
40
40
|
...props
|
|
41
|
-
}: React.ComponentProps<typeof Command.Separator>):
|
|
41
|
+
}: React.ComponentProps<typeof Command.Separator>): react_jsx_runtime35.JSX.Element;
|
|
42
42
|
declare function CommandItem({
|
|
43
43
|
className,
|
|
44
44
|
...props
|
|
45
|
-
}: React.ComponentProps<typeof Command.Item>):
|
|
45
|
+
}: React.ComponentProps<typeof Command.Item>): react_jsx_runtime35.JSX.Element;
|
|
46
46
|
declare function CommandShortcut({
|
|
47
47
|
className,
|
|
48
48
|
...props
|
|
49
|
-
}: React.ComponentProps<'span'>):
|
|
49
|
+
}: React.ComponentProps<'span'>): react_jsx_runtime35.JSX.Element;
|
|
50
50
|
//#endregion
|
|
51
51
|
export { Command$1 as Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut };
|
|
52
|
-
//# sourceMappingURL=command
|
|
52
|
+
//# sourceMappingURL=command-CQ0BKof5.d.ts.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e=require(`../chunk-CUT6urMc.cjs`),t=require(`../types-
|
|
1
|
+
const e=require(`../chunk-CUT6urMc.cjs`),t=require(`../types-BN8HhYHR.cjs`),n=require(`../flex-DHnsdjKn.cjs`),r=require(`../paragraph-BsEYXIR3.cjs`),i=e.__toESM(require(`react`)),a=e.__toESM(require(`react/jsx-runtime`)),o=e.__toESM(require(`react-country-flag`)),s=({country:e})=>{let s=i.default.useMemo(()=>({[t.ECountry.VIETNAM]:`VN`,[t.ECountry.USA]:`US`,[t.ECountry.JAPAN]:`JP`,[t.ECountry.CHINA]:`CN`,[t.ECountry.KOREA]:`KR`,[t.ECountry.SINGAPORE]:`SG`,[t.ECountry.MALAYSIA]:`MY`,[t.ECountry.INDONESIA]:`ID`,[t.ECountry.TAIWAN]:`TW`,[t.ECountry.THAILAND]:`TH`}),[]);return e?(0,a.jsxs)(n.Flex,{padding:`none`,className:`h-4 px-1`,children:[(0,a.jsx)(o.default,{svg:!0,countryCode:e?s[e]:`VN`,className:`emojiFlag border`}),(0,a.jsxs)(r.Paragraph,{variant:`sm`,children:[e===t.ECountry.VIETNAM&&`Vietnam`,e===t.ECountry.USA&&`America`,e===t.ECountry.JAPAN&&`Japan`,e===t.ECountry.CHINA&&`China`,e===t.ECountry.KOREA&&`Korea`,e===t.ECountry.SINGAPORE&&`Singapore`,e===t.ECountry.MALAYSIA&&`Malaysia`,e===t.ECountry.INDONESIA&&`Indonesia`,e===t.ECountry.TAIWAN&&`Taiwan`,e===t.ECountry.THAILAND&&`Thailand`]})]}):(0,a.jsx)(n.Flex,{padding:`none`,className:`h-4 px-1`,children:(0,a.jsx)(r.Paragraph,{variant:`muted`,className:`line-clamp-1 text-xs`,children:`No country`})})};exports.CountryDisplay=s;
|
|
2
2
|
//# sourceMappingURL=country.cjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{ECountry as e}from"../types-
|
|
1
|
+
import{ECountry as e}from"../types-DDfAVYxf.js";import{Flex as t}from"../flex-uJ4bFSYt.js";import{Paragraph as n}from"../paragraph-D4klQX4h.js";import r from"react";import{jsx as i,jsxs as a}from"react/jsx-runtime";import o from"react-country-flag";const s=({country:s})=>{let c=r.useMemo(()=>({[e.VIETNAM]:`VN`,[e.USA]:`US`,[e.JAPAN]:`JP`,[e.CHINA]:`CN`,[e.KOREA]:`KR`,[e.SINGAPORE]:`SG`,[e.MALAYSIA]:`MY`,[e.INDONESIA]:`ID`,[e.TAIWAN]:`TW`,[e.THAILAND]:`TH`}),[]);return s?a(t,{padding:`none`,className:`h-4 px-1`,children:[i(o,{svg:!0,countryCode:s?c[s]:`VN`,className:`emojiFlag border`}),a(n,{variant:`sm`,children:[s===e.VIETNAM&&`Vietnam`,s===e.USA&&`America`,s===e.JAPAN&&`Japan`,s===e.CHINA&&`China`,s===e.KOREA&&`Korea`,s===e.SINGAPORE&&`Singapore`,s===e.MALAYSIA&&`Malaysia`,s===e.INDONESIA&&`Indonesia`,s===e.TAIWAN&&`Taiwan`,s===e.THAILAND&&`Thailand`]})]}):i(t,{padding:`none`,className:`h-4 px-1`,children:i(n,{variant:`muted`,className:`line-clamp-1 text-xs`,children:`No country`})})};export{s as CountryDisplay};
|
|
2
2
|
//# sourceMappingURL=country.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e=require(`../chunk-CUT6urMc.cjs`),t=require(`../flex-
|
|
1
|
+
const e=require(`../chunk-CUT6urMc.cjs`),t=require(`../flex-DHnsdjKn.cjs`),n=e.__toESM(require(`react/jsx-runtime`)),r=({children:e})=>(0,n.jsx)(t.Flex,{vertical:!0,padding:`none`,gap:`md`,width:`full`,children:e}),i=({label:e,value:r,minLabelWidth:i=`120px`})=>(0,n.jsxs)(t.Flex,{align:`center`,justify:`start`,width:`full`,padding:`none`,gap:`md`,className:`flex-col items-start gap-1 md:flex-row md:items-center md:gap-4`,children:[(0,n.jsx)(`div`,{style:{minWidth:i},className:`text-muted-foreground text-sm`,children:e}),(0,n.jsx)(`div`,{className:`text-secondary-foreground text-sm`,children:r})]});exports.DataList=r,exports.DataListItem=i;
|
|
2
2
|
//# sourceMappingURL=data-list.cjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{Flex as e}from"../flex-
|
|
1
|
+
import{Flex as e}from"../flex-uJ4bFSYt.js";import{jsx as t,jsxs as n}from"react/jsx-runtime";const r=({children:n})=>t(e,{vertical:!0,padding:`none`,gap:`md`,width:`full`,children:n}),i=({label:r,value:i,minLabelWidth:a=`120px`})=>n(e,{align:`center`,justify:`start`,width:`full`,padding:`none`,gap:`md`,className:`flex-col items-start gap-1 md:flex-row md:items-center md:gap-4`,children:[t(`div`,{style:{minWidth:a},className:`text-muted-foreground text-sm`,children:r}),t(`div`,{className:`text-secondary-foreground text-sm`,children:i})]});export{r as DataList,i as DataListItem};
|
|
2
2
|
//# sourceMappingURL=data-list.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e=require(`../chunk-CUT6urMc.cjs`),t=require(`../date-
|
|
1
|
+
const e=require(`../chunk-CUT6urMc.cjs`),t=require(`../date-DevNulgp.cjs`),n=require(`../badge-xqIWOEbF.cjs`),r=require(`../tooltip-DRqQqSFW.cjs`),i=e.__toESM(require(`react/jsx-runtime`)),a=({date:e})=>(0,i.jsx)(r.TooltipProvider,{children:(0,i.jsxs)(r.Tooltip,{children:[(0,i.jsx)(r.TooltipTrigger,{asChild:!0,children:(0,i.jsx)(n.Badge,{children:(0,i.jsx)(t.DateDisplay,{date:e,format:`medium`,className:`font-normal text-white`})})}),(0,i.jsx)(r.TooltipContent,{children:(0,i.jsx)(t.DateDisplay,{date:e,format:`full`,showTime:!0,className:`!font-[Inter] font-medium`})})]})});exports.DateTooltip=a;
|
|
2
2
|
//# sourceMappingURL=date-tooltip.cjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{DateDisplay as e}from"../date-
|
|
1
|
+
import{DateDisplay as e}from"../date-D7i-nFOS.js";import{Badge as t}from"../badge-1pcWNSLo.js";import{Tooltip as n,TooltipContent as r,TooltipProvider as i,TooltipTrigger as a}from"../tooltip-Ba2AdN_7.js";import{jsx as o,jsxs as s}from"react/jsx-runtime";const c=({date:c})=>o(i,{children:s(n,{children:[o(a,{asChild:!0,children:o(t,{children:o(e,{date:c,format:`medium`,className:`font-normal text-white`})})}),o(r,{children:o(e,{date:c,format:`full`,showTime:!0,className:`!font-[Inter] font-medium`})})]})});export{c as DateTooltip};
|
|
2
2
|
//# sourceMappingURL=date-tooltip.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require(`../date-
|
|
1
|
+
const e=require(`../date-DevNulgp.cjs`);exports.DateDisplay=e.DateDisplay;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{DateDisplay as e}from"../date-
|
|
1
|
+
import{DateDisplay as e}from"../date-D7i-nFOS.js";export{e as DateDisplay};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use client";const e=require(`../chunk-CUT6urMc.cjs`),t=require(`../flex-
|
|
1
|
+
"use client";const e=require(`../chunk-CUT6urMc.cjs`),t=require(`../flex-DHnsdjKn.cjs`),n=e.__toESM(require(`react/jsx-runtime`)),r=e.__toESM(require(`lucide-react`)),i=()=>(0,n.jsxs)(t.Flex,{vertical:!0,justify:`center`,align:`center`,gap:`sm`,className:`text-text-positive-muted size-full`,children:[(0,n.jsx)(r.PackageOpenIcon,{size:52,strokeWidth:1}),(0,n.jsx)(`p`,{className:`text-sm`,children:`Không có dữ liệu nào để hiển thị.`})]});exports.EmptyDisplay=i;
|
|
2
2
|
//# sourceMappingURL=empty.cjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use client";import{Flex as e}from"../flex-
|
|
1
|
+
"use client";import{Flex as e}from"../flex-uJ4bFSYt.js";import{jsx as t,jsxs as n}from"react/jsx-runtime";import{PackageOpenIcon as r}from"lucide-react";const i=()=>n(e,{vertical:!0,justify:`center`,align:`center`,gap:`sm`,className:`text-text-positive-muted size-full`,children:[t(r,{size:52,strokeWidth:1}),t(`p`,{className:`text-sm`,children:`Không có dữ liệu nào để hiển thị.`})]});export{i as EmptyDisplay};
|
|
2
2
|
//# sourceMappingURL=empty.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e=require(`../chunk-CUT6urMc.cjs`),t=require(`../paragraph-
|
|
1
|
+
const e=require(`../chunk-CUT6urMc.cjs`),t=require(`../paragraph-BsEYXIR3.cjs`),n=require(`../tooltip-DRqQqSFW.cjs`),r=e.__toESM(require(`react`)),i=e.__toESM(require(`react/jsx-runtime`)),a=({name:e})=>(0,i.jsxs)(n.Tooltip,{children:[(0,i.jsx)(n.TooltipTrigger,{children:(0,i.jsx)(t.Paragraph,{variant:`sm`,className:`line-clamp-2 w-full cursor-help truncate`,children:e})}),(0,i.jsx)(n.TooltipContent,{align:`start`,className:`max-w-80 text-wrap break-keep whitespace-pre-line`,children:e})]});exports.NameDisplay=a;
|
|
2
2
|
//# sourceMappingURL=name.cjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{Paragraph as e}from"../paragraph-
|
|
1
|
+
import{Paragraph as e}from"../paragraph-D4klQX4h.js";import{Tooltip as t,TooltipContent as n,TooltipTrigger as r}from"../tooltip-Ba2AdN_7.js";import i from"react";import{jsx as a,jsxs as o}from"react/jsx-runtime";const s=({name:i})=>o(t,{children:[a(r,{children:a(e,{variant:`sm`,className:`line-clamp-2 w-full cursor-help truncate`,children:i})}),a(n,{align:`start`,className:`max-w-80 text-wrap break-keep whitespace-pre-line`,children:i})]});export{s as NameDisplay};
|
|
2
2
|
//# sourceMappingURL=name.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e=require(`../chunk-CUT6urMc.cjs`),t=require(`../tooltip-
|
|
1
|
+
const e=require(`../chunk-CUT6urMc.cjs`),t=require(`../tooltip-DRqQqSFW.cjs`),n=e.__toESM(require(`react/jsx-runtime`)),r=({value:e})=>(0,n.jsxs)(t.Tooltip,{children:[(0,n.jsx)(t.TooltipTrigger,{asChild:!0,children:(0,n.jsx)(`p`,{className:`font-number text-secondary-foreground text-sm`,children:e.replace(/(\d{3})(\d{3})(\d{4})/,`($1) $2-$3`)})}),(0,n.jsx)(t.TooltipContent,{align:`start`,children:(0,n.jsx)(`p`,{children:e.slice(1).replace(/(\d{2})(\d{3})(\d{4})/,`(00) (+84) ($1) $2-$3`)})})]});exports.PhoneNumberDisplay=r;
|
|
2
2
|
//# sourceMappingURL=phone-number.cjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{Tooltip as e,TooltipContent as t,TooltipTrigger as n}from"../tooltip-
|
|
1
|
+
import{Tooltip as e,TooltipContent as t,TooltipTrigger as n}from"../tooltip-Ba2AdN_7.js";import{jsx as r,jsxs as i}from"react/jsx-runtime";const a=({value:a})=>i(e,{children:[r(n,{asChild:!0,children:r(`p`,{className:`font-number text-secondary-foreground text-sm`,children:a.replace(/(\d{3})(\d{3})(\d{4})/,`($1) $2-$3`)})}),r(t,{align:`start`,children:r(`p`,{children:a.slice(1).replace(/(\d{2})(\d{3})(\d{4})/,`(00) (+84) ($1) $2-$3`)})})]});export{a as PhoneNumberDisplay};
|
|
2
2
|
//# sourceMappingURL=phone-number.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e=require(`../chunk-CUT6urMc.cjs`),t=require(`../types-
|
|
1
|
+
const e=require(`../chunk-CUT6urMc.cjs`),t=require(`../types-BN8HhYHR.cjs`),n=require(`../badge-xqIWOEbF.cjs`),r=e.__toESM(require(`react`)),i=e.__toESM(require(`react/jsx-runtime`)),a=({status:e})=>{let a=r.default.useMemo(()=>({[t.ERole.ADMIN]:`red`,[t.ERole.SUPER_ADMIN]:`purple`,[t.ERole.MODERATOR]:`indigo`,[t.ERole.STAFF]:`green`,[t.ERole.USER]:`blue`}),[]);return(0,i.jsxs)(n.Badge,{color:a[e],className:`min-w-24 justify-center`,children:[e===t.ERole.SUPER_ADMIN&&`Super Admin`,e===t.ERole.ADMIN&&`Admin`,e===t.ERole.MODERATOR&&`Moderator`,e===t.ERole.STAFF&&`Staff`,e===t.ERole.USER&&`User`]})};exports.RoleBadge=a;
|
|
2
2
|
//# sourceMappingURL=role-badge.cjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{ERole as e}from"../types-
|
|
1
|
+
import{ERole as e}from"../types-DDfAVYxf.js";import{Badge as t}from"../badge-1pcWNSLo.js";import n from"react";import{jsxs as r}from"react/jsx-runtime";const i=({status:i})=>{let a=n.useMemo(()=>({[e.ADMIN]:`red`,[e.SUPER_ADMIN]:`purple`,[e.MODERATOR]:`indigo`,[e.STAFF]:`green`,[e.USER]:`blue`}),[]);return r(t,{color:a[i],className:`min-w-24 justify-center`,children:[i===e.SUPER_ADMIN&&`Super Admin`,i===e.ADMIN&&`Admin`,i===e.MODERATOR&&`Moderator`,i===e.STAFF&&`Staff`,i===e.USER&&`User`]})};export{i as RoleBadge};
|
|
2
2
|
//# sourceMappingURL=role-badge.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e=require(`../chunk-CUT6urMc.cjs`),t=require(`../flex-
|
|
1
|
+
const e=require(`../chunk-CUT6urMc.cjs`),t=require(`../flex-DHnsdjKn.cjs`),n=e.__toESM(require(`react`)),r=e.__toESM(require(`@customafk/react-toolkit/utils`)),i=e.__toESM(require(`react/jsx-runtime`)),a=n.default.memo(({decimalSeparator:e=`.`,groupSeparator:a=`,`,prefix:o,suffix:s,precision:c,roundingMode:l=`round`,showTrailingZeros:u=!1,size:d=`lg`,value:f})=>{let p=n.default.useCallback((e,t)=>{let n=Math.pow(10,t);switch(l){case`floor`:return Math.floor(e*n)/n;case`ceil`:return Math.ceil(e*n)/n;case`round`:default:return Math.round(e*n)/n}},[l]),m=n.default.useMemo(()=>{let e={};return typeof c==`number`&&c>=0&&(u&&(e.minimumFractionDigits=c),e.maximumFractionDigits=c),e},[c,u]),h=n.default.useCallback(e=>{let t=e;return typeof c==`number`&&c>=0&&(t=p(e,c)),t.toLocaleString(`en-US`,m)},[p,m,c]),g=n.default.useMemo(()=>{if(typeof f==`number`)return isNaN(f)||!isFinite(f)?`N/A`:h(f);if(typeof f==`string`){let e=f.trim();if(!e)return`N/A`;let t=Number(e);return isNaN(t)||!isFinite(t)?`N/A`:h(t)}return`N/A`},[f,h]),_=n.default.useMemo(()=>e===`.`&&a===`,`?g:g.replace(/,/g,a).replace(/\./g,e),[g,e,a]);return(0,i.jsxs)(t.Flex,{padding:`none`,className:(0,r.cn)(`text-secondary-foreground font-number text-lg`,d===`xs`&&`text-xs`,d===`sm`&&`text-sm`,d===`md`&&`text-base`,d===`lg`&&`text-lg`,d===`xl`&&`text-xl`),children:[o,(0,i.jsx)(`p`,{children:_}),s]})});a.displayName=`Statistic`,exports.Statistic=a;
|
|
2
2
|
//# sourceMappingURL=statistic.cjs.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as react_jsx_runtime4 from "react/jsx-runtime";
|
|
2
2
|
import React from "react";
|
|
3
3
|
|
|
4
4
|
//#region packages/components/data-display/statistic.d.ts
|
|
@@ -23,7 +23,7 @@ declare const Statistic: React.MemoExoticComponent<({
|
|
|
23
23
|
showTrailingZeros,
|
|
24
24
|
size,
|
|
25
25
|
value
|
|
26
|
-
}: Props) =>
|
|
26
|
+
}: Props) => react_jsx_runtime4.JSX.Element>;
|
|
27
27
|
//#endregion
|
|
28
28
|
export { Statistic };
|
|
29
29
|
//# sourceMappingURL=statistic.d.cts.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
3
3
|
|
|
4
4
|
//#region packages/components/data-display/statistic.d.ts
|
|
5
5
|
type Props = {
|
|
@@ -23,7 +23,7 @@ declare const Statistic: React.MemoExoticComponent<({
|
|
|
23
23
|
showTrailingZeros,
|
|
24
24
|
size,
|
|
25
25
|
value
|
|
26
|
-
}: Props) =>
|
|
26
|
+
}: Props) => react_jsx_runtime0.JSX.Element>;
|
|
27
27
|
//#endregion
|
|
28
28
|
export { Statistic };
|
|
29
29
|
//# sourceMappingURL=statistic.d.ts.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{Flex as e}from"../flex-
|
|
1
|
+
import{Flex as e}from"../flex-uJ4bFSYt.js";import t from"react";import{cn as n}from"@customafk/react-toolkit/utils";import{jsx as r,jsxs as i}from"react/jsx-runtime";const a=t.memo(({decimalSeparator:a=`.`,groupSeparator:o=`,`,prefix:s,suffix:c,precision:l,roundingMode:u=`round`,showTrailingZeros:d=!1,size:f=`lg`,value:p})=>{let m=t.useCallback((e,t)=>{let n=Math.pow(10,t);switch(u){case`floor`:return Math.floor(e*n)/n;case`ceil`:return Math.ceil(e*n)/n;case`round`:default:return Math.round(e*n)/n}},[u]),h=t.useMemo(()=>{let e={};return typeof l==`number`&&l>=0&&(d&&(e.minimumFractionDigits=l),e.maximumFractionDigits=l),e},[l,d]),g=t.useCallback(e=>{let t=e;return typeof l==`number`&&l>=0&&(t=m(e,l)),t.toLocaleString(`en-US`,h)},[m,h,l]),_=t.useMemo(()=>{if(typeof p==`number`)return isNaN(p)||!isFinite(p)?`N/A`:g(p);if(typeof p==`string`){let e=p.trim();if(!e)return`N/A`;let t=Number(e);return isNaN(t)||!isFinite(t)?`N/A`:g(t)}return`N/A`},[p,g]),v=t.useMemo(()=>a===`.`&&o===`,`?_:_.replace(/,/g,o).replace(/\./g,a),[_,a,o]);return i(e,{padding:`none`,className:n(`text-secondary-foreground font-number text-lg`,f===`xs`&&`text-xs`,f===`sm`&&`text-sm`,f===`md`&&`text-base`,f===`lg`&&`text-lg`,f===`xl`&&`text-xl`),children:[s,r(`p`,{children:v}),c]})});a.displayName=`Statistic`;export{a as Statistic};
|
|
2
2
|
//# sourceMappingURL=statistic.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import e from"react";import{cn as t}from"@customafk/react-toolkit/utils";import{jsx as n}from"react/jsx-runtime";import{format as r,isThisMonth as i,isThisWeek as a,isThisYear as o,isToday as s,isTomorrow as c,isValid as l,isYesterday as u,parseISO as d}from"@customafk/react-toolkit/date-fns";const f={weekdays:[`Chủ Nhật`,`Thứ Hai`,`Thứ Ba`,`Thứ Tư`,`Thứ Năm`,`Thứ Sáu`,`Thứ Bảy`],weekdaysShort:[`CN`,`T2`,`T3`,`T4`,`T5`,`T6`,`T7`],months:[`Tháng 1`,`Tháng 2`,`Tháng 3`,`Tháng 4`,`Tháng 5`,`Tháng 6`,`Tháng 7`,`Tháng 8`,`Tháng 9`,`Tháng 10`,`Tháng 11`,`Tháng 12`],monthsShort:[`T1`,`T2`,`T3`,`T4`,`T5`,`T6`,`T7`,`T8`,`T9`,`T10`,`T11`,`T12`]},p={"01-01":`Tết Dương lịch`,"03-08":`Quốc tế Phụ nữ`,"04-30":`Ngày Giải phóng miền Nam`,"05-01":`Quốc tế Lao động`,"09-02":`Quốc khánh`,"10-20":`Ngày Phụ nữ Việt Nam`,"11-20":`Ngày Nhà giáo Việt Nam`};Object.freeze({SECOND:1e3,MINUTE:60*1e3,HOUR:3600*1e3,DAY:1440*60*1e3,WEEK:10080*60*1e3,MONTH:720*60*60*1e3,YEAR:365*24*60*60*1e3});const m=Object.freeze({MINUTE:60,HOUR:3600,DAY:1440*60,WEEK:10080*60,MONTH:720*60*60,YEAR:365*24*60*60});Object.freeze({HOUR:60,DAY:1440,WEEK:10080,MONTH:720*60});const h=({date:h,format:g=`medium`,showHoliday:_=!1,showTime:v=!1,className:y=``,title:b})=>{let x=e.useMemo(()=>{try{if(h instanceof Date)return l(h)?h:null;if(typeof h==`string`){let e=d(h);return l(e)?e:new Date(h)}if(typeof h==`number`){let e=new Date(h);return l(e)?e:null}return null}catch{return null}},[h]),S=e.useCallback(e=>{let t=new Date,n=Math.floor((t.getTime()-e.getTime())/1e3);return n<60?`Vừa xong`:n<3600?`${Math.floor(n/m.MINUTE)} phút trước`:n<86400?`${Math.floor(n/m.HOUR)} giờ trước`:n<604800?`${Math.floor(n/m.DAY)} ngày trước`:n<2592e3?`${Math.floor(n/m.WEEK)} tuần trước`:n<31536e3?`${Math.floor(n/m.MONTH)} tháng trước`:`${Math.floor(n/m.YEAR)} năm trước`},[]),C=e.useCallback((e,t=!1)=>{let n=e.getDay();return t?f.weekdaysShort[n]:f.weekdays[n]},[]),w=e.useCallback((e,t=!1)=>{let n=e.getMonth();return t?f.monthsShort[n]:f.months[n]},[]),T=e.useCallback(e=>{let t=r(e,`MM-dd`);return p[t]||null},[]),E=e.useCallback(e=>{if(s(e))return v?`Hôm nay ${r(e,`HH:mm`)}`:`Hôm nay`;if(u(e))return v?`Hôm qua ${r(e,`HH:mm`)}`:`Hôm qua`;if(c(e))return v?`Ngày mai ${r(e,`HH:mm`)}`:`Ngày mai`;if(a(e)){let t=C(e);return v?`${t} ${r(e,`HH:mm`)}`:t}if(i(e)){let t=r(e,`d`);return v?`${t}/${r(e,`M`)} ${r(e,`HH:mm`)}`:`${t}/${r(e,`M`)}`}return o(e)?v?r(e,`d/M HH:mm`):r(e,`d/M`):v?r(e,`d/M/yyyy HH:mm`):r(e,`d/M/yyyy`)},[C,v]),D=e.useCallback((e,t)=>{let n=v?r(e,`, HH:mm`):``;switch(t){case`short`:return r(e,`d/M/yy`)+n;case`medium`:return r(e,`dd/MM/yyyy`)+n;case`long`:return`${r(e,`d`)} ${w(e)} ${r(e,`yyyy`)}`+n;case`full`:{let t=`${C(e)}, ngày ${r(e,`d`)} ${w(e)} năm ${r(e,`yyyy`)}`;return t+n}case`relative`:return S(e);case`datetime`:return r(e,`d/M/yyyy HH:mm`);case`time`:return r(e,`HH:mm`);case`smart`:return E(e);default:return r(e,`d/M/yyyy`)+n}},[E,w,C,S,v]);if(!x)return n(`span`,{className:t(`text-muted-foreground text-sm`,y),children:`--/--/----`});let O=D(x,g),k=_?T(x):null,A=k?`${O} (${k})`:O,j=b||r(x,`EEEE, d MMMM yyyy HH:mm:ss`);return n(`time`,{dateTime:x.toISOString(),className:t(`text-accent-foreground font-number text-sm`,y),title:j,children:A})};export{h as DateDisplay};
|
|
2
|
-
//# sourceMappingURL=date-
|
|
2
|
+
//# sourceMappingURL=date-D7i-nFOS.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date-C5tbtGM-.js","names":["DateDisplay: React.FC<Props>","date"],"sources":["../packages/constants.tsx","../packages/components/data-display/date.tsx"],"sourcesContent":["// Vietnamese locale configuration\nexport const vietnameseLocale = {\n weekdays: ['Chủ Nhật', 'Thứ Hai', 'Thứ Ba', 'Thứ Tư', 'Thứ Năm', 'Thứ Sáu', 'Thứ Bảy'],\n weekdaysShort: ['CN', 'T2', 'T3', 'T4', 'T5', 'T6', 'T7'],\n months: ['Tháng 1', 'Tháng 2', 'Tháng 3', 'Tháng 4', 'Tháng 5', 'Tháng 6', 'Tháng 7', 'Tháng 8', 'Tháng 9', 'Tháng 10', 'Tháng 11', 'Tháng 12'],\n monthsShort: ['T1', 'T2', 'T3', 'T4', 'T5', 'T6', 'T7', 'T8', 'T9', 'T10', 'T11', 'T12'],\n}\n\n// Vietnamese holidays\nexport const vietnameseHolidays = {\n '01-01': 'Tết Dương lịch',\n '03-08': 'Quốc tế Phụ nữ',\n '04-30': 'Ngày Giải phóng miền Nam',\n '05-01': 'Quốc tế Lao động',\n '09-02': 'Quốc khánh',\n '10-20': 'Ngày Phụ nữ Việt Nam',\n '11-20': 'Ngày Nhà giáo Việt Nam',\n}\n\n// Time Constants in milliseconds, seconds, and minutes\nexport const TIME_IN_MS = Object.freeze({\n SECOND: 1000,\n MINUTE: 60 * 1000,\n HOUR: 60 * 60 * 1000,\n DAY: 24 * 60 * 60 * 1000,\n WEEK: 7 * 24 * 60 * 60 * 1000,\n MONTH: 30 * 24 * 60 * 60 * 1000, // Approximation for month length = 30 days\n YEAR: 365 * 24 * 60 * 60 * 1000,\n})\n\nexport const TIME_IN_SECONDS = Object.freeze({\n MINUTE: 60,\n HOUR: 60 * 60,\n DAY: 24 * 60 * 60,\n WEEK: 7 * 24 * 60 * 60,\n MONTH: 30 * 24 * 60 * 60,\n YEAR: 365 * 24 * 60 * 60,\n})\n\nexport const TIME_IN_MINUTES = Object.freeze({\n HOUR: 60,\n DAY: 24 * 60,\n WEEK: 7 * 24 * 60,\n MONTH: 30 * 24 * 60,\n})\n","import React from 'react'\nimport { format, isThisMonth, isThisWeek, isThisYear, isToday, isTomorrow, isValid, isYesterday, parseISO } from '@customafk/react-toolkit/date-fns'\n\nimport { TIME_IN_SECONDS, vietnameseHolidays, vietnameseLocale } from '@/constants'\nimport { cn } from '@customafk/react-toolkit/utils'\n\ninterface Props {\n date: Date | string | number\n format?:\n | 'short' // 15/03/24\n | 'medium' // 15/03/2024\n | 'long' // 15 tháng 3, 2024\n | 'full' // Thứ Sáu, ngày 15 tháng 3 năm 2024\n | 'relative' // 2 giờ trước\n | 'datetime' // 15/03/2024 14:30\n | 'time' // 14:30\n | 'smart' // Tự động chọn format phù hợp\n showHoliday?: boolean\n showTime?: boolean\n className?: string\n title?: string // Tooltip khi hover\n}\n\nexport const DateDisplay: React.FC<Props> = ({ date, format: formatType = 'medium', showHoliday = false, showTime = false, className = '', title }) => {\n const parsedDate = React.useMemo(() => {\n try {\n if (date instanceof Date) {\n return isValid(date) ? date : null\n }\n if (typeof date === 'string') {\n const parsed = parseISO(date)\n return isValid(parsed) ? parsed : new Date(date)\n }\n if (typeof date === 'number') {\n const parsed = new Date(date)\n return isValid(parsed) ? parsed : null\n }\n return null\n } catch {\n return null\n }\n }, [date])\n\n // Format relative time in Vietnamese\n const formatRelativeTime = React.useCallback((date: Date): string => {\n const now = new Date()\n const diffInSeconds = Math.floor((now.getTime() - date.getTime()) / 1000)\n\n if (diffInSeconds < 60) return 'Vừa xong'\n if (diffInSeconds < 3600) return `${Math.floor(diffInSeconds / TIME_IN_SECONDS.MINUTE)} phút trước`\n if (diffInSeconds < 86400) return `${Math.floor(diffInSeconds / TIME_IN_SECONDS.HOUR)} giờ trước`\n if (diffInSeconds < 604800) return `${Math.floor(diffInSeconds / TIME_IN_SECONDS.DAY)} ngày trước`\n if (diffInSeconds < 2592000) return `${Math.floor(diffInSeconds / TIME_IN_SECONDS.WEEK)} tuần trước`\n if (diffInSeconds < 31536000) return `${Math.floor(diffInSeconds / TIME_IN_SECONDS.MONTH)} tháng trước`\n return `${Math.floor(diffInSeconds / TIME_IN_SECONDS.YEAR)} năm trước`\n }, [])\n\n // Vietnamese weekday\n const getVietnameseWeekday = React.useCallback((date: Date, short: boolean = false): string => {\n const dayIndex = date.getDay()\n return short ? vietnameseLocale.weekdaysShort[dayIndex] : vietnameseLocale.weekdays[dayIndex]\n }, [])\n\n // Vietnamese month\n const getVietnameseMonth = React.useCallback((date: Date, short: boolean = false): string => {\n const monthIndex = date.getMonth()\n return short ? vietnameseLocale.monthsShort[monthIndex] : vietnameseLocale.months[monthIndex]\n }, [])\n\n // Check holiday\n const getHoliday = React.useCallback((date: Date): string | null => {\n const monthDay = format(date, 'MM-dd') as keyof typeof vietnameseHolidays\n return vietnameseHolidays[monthDay] || null\n }, [])\n\n // Smart format - choose appropriate format based on date\n const getSmartFormat = React.useCallback(\n (date: Date): string => {\n if (isToday(date)) {\n return showTime ? `Hôm nay ${format(date, 'HH:mm')}` : 'Hôm nay'\n }\n if (isYesterday(date)) {\n return showTime ? `Hôm qua ${format(date, 'HH:mm')}` : 'Hôm qua'\n }\n if (isTomorrow(date)) {\n return showTime ? `Ngày mai ${format(date, 'HH:mm')}` : 'Ngày mai'\n }\n if (isThisWeek(date)) {\n const weekday = getVietnameseWeekday(date)\n return showTime ? `${weekday} ${format(date, 'HH:mm')}` : weekday\n }\n if (isThisMonth(date)) {\n const day = format(date, 'd')\n return showTime ? `${day}/${format(date, 'M')} ${format(date, 'HH:mm')}` : `${day}/${format(date, 'M')}`\n }\n if (isThisYear(date)) {\n return showTime ? format(date, 'd/M HH:mm') : format(date, 'd/M')\n }\n return showTime ? format(date, 'd/M/yyyy HH:mm') : format(date, 'd/M/yyyy')\n },\n [getVietnameseWeekday, showTime],\n )\n\n // Main formatting function\n const formatDate = React.useCallback(\n (date: Date, type: string): string => {\n const timeStr = showTime ? format(date, ', HH:mm') : ''\n\n switch (type) {\n case 'short':\n return format(date, 'd/M/yy') + timeStr\n\n case 'medium':\n return format(date, 'dd/MM/yyyy') + timeStr\n\n case 'long':\n return `${format(date, 'd')} ${getVietnameseMonth(date)} ${format(date, 'yyyy')}` + timeStr\n\n case 'full': {\n const data = `${getVietnameseWeekday(date)}, ngày ${format(date, 'd')} ${getVietnameseMonth(date)} năm ${format(date, 'yyyy')}`\n return data + timeStr\n }\n\n case 'relative':\n return formatRelativeTime(date)\n\n case 'datetime':\n return format(date, 'd/M/yyyy HH:mm')\n\n case 'time':\n return format(date, 'HH:mm')\n\n case 'smart':\n return getSmartFormat(date)\n\n default:\n return format(date, 'd/M/yyyy') + timeStr\n }\n },\n [getSmartFormat, getVietnameseMonth, getVietnameseWeekday, formatRelativeTime, showTime],\n )\n\n if (!parsedDate) {\n return <span className={cn('text-muted-foreground text-sm', className)}>--/--/----</span>\n }\n\n const formattedDate = formatDate(parsedDate, formatType)\n const holiday = showHoliday ? getHoliday(parsedDate) : null\n const displayText = holiday ? `${formattedDate} (${holiday})` : formattedDate\n const tooltipTitle = title || format(parsedDate, 'EEEE, d MMMM yyyy HH:mm:ss')\n\n return (\n <time dateTime={parsedDate.toISOString()} className={cn('text-accent-foreground font-number text-sm', className)} title={tooltipTitle}>\n {displayText}\n </time>\n )\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"date-D7i-nFOS.js","names":["DateDisplay: React.FC<Props>","date"],"sources":["../packages/constants.tsx","../packages/components/data-display/date.tsx"],"sourcesContent":["// Vietnamese locale configuration\nexport const vietnameseLocale = {\n weekdays: ['Chủ Nhật', 'Thứ Hai', 'Thứ Ba', 'Thứ Tư', 'Thứ Năm', 'Thứ Sáu', 'Thứ Bảy'],\n weekdaysShort: ['CN', 'T2', 'T3', 'T4', 'T5', 'T6', 'T7'],\n months: ['Tháng 1', 'Tháng 2', 'Tháng 3', 'Tháng 4', 'Tháng 5', 'Tháng 6', 'Tháng 7', 'Tháng 8', 'Tháng 9', 'Tháng 10', 'Tháng 11', 'Tháng 12'],\n monthsShort: ['T1', 'T2', 'T3', 'T4', 'T5', 'T6', 'T7', 'T8', 'T9', 'T10', 'T11', 'T12'],\n}\n\n// Vietnamese holidays\nexport const vietnameseHolidays = {\n '01-01': 'Tết Dương lịch',\n '03-08': 'Quốc tế Phụ nữ',\n '04-30': 'Ngày Giải phóng miền Nam',\n '05-01': 'Quốc tế Lao động',\n '09-02': 'Quốc khánh',\n '10-20': 'Ngày Phụ nữ Việt Nam',\n '11-20': 'Ngày Nhà giáo Việt Nam',\n}\n\n// Time Constants in milliseconds, seconds, and minutes\nexport const TIME_IN_MS = Object.freeze({\n SECOND: 1000,\n MINUTE: 60 * 1000,\n HOUR: 60 * 60 * 1000,\n DAY: 24 * 60 * 60 * 1000,\n WEEK: 7 * 24 * 60 * 60 * 1000,\n MONTH: 30 * 24 * 60 * 60 * 1000, // Approximation for month length = 30 days\n YEAR: 365 * 24 * 60 * 60 * 1000,\n})\n\nexport const TIME_IN_SECONDS = Object.freeze({\n MINUTE: 60,\n HOUR: 60 * 60,\n DAY: 24 * 60 * 60,\n WEEK: 7 * 24 * 60 * 60,\n MONTH: 30 * 24 * 60 * 60,\n YEAR: 365 * 24 * 60 * 60,\n})\n\nexport const TIME_IN_MINUTES = Object.freeze({\n HOUR: 60,\n DAY: 24 * 60,\n WEEK: 7 * 24 * 60,\n MONTH: 30 * 24 * 60,\n})\n","import React from 'react'\nimport { format, isThisMonth, isThisWeek, isThisYear, isToday, isTomorrow, isValid, isYesterday, parseISO } from '@customafk/react-toolkit/date-fns'\n\nimport { TIME_IN_SECONDS, vietnameseHolidays, vietnameseLocale } from '@/constants'\nimport { cn } from '@customafk/react-toolkit/utils'\n\ninterface Props {\n date: Date | string | number\n format?:\n | 'short' // 15/03/24\n | 'medium' // 15/03/2024\n | 'long' // 15 tháng 3, 2024\n | 'full' // Thứ Sáu, ngày 15 tháng 3 năm 2024\n | 'relative' // 2 giờ trước\n | 'datetime' // 15/03/2024 14:30\n | 'time' // 14:30\n | 'smart' // Tự động chọn format phù hợp\n showHoliday?: boolean\n showTime?: boolean\n className?: string\n title?: string // Tooltip khi hover\n}\n\nexport const DateDisplay: React.FC<Props> = ({ date, format: formatType = 'medium', showHoliday = false, showTime = false, className = '', title }) => {\n const parsedDate = React.useMemo(() => {\n try {\n if (date instanceof Date) {\n return isValid(date) ? date : null\n }\n if (typeof date === 'string') {\n const parsed = parseISO(date)\n return isValid(parsed) ? parsed : new Date(date)\n }\n if (typeof date === 'number') {\n const parsed = new Date(date)\n return isValid(parsed) ? parsed : null\n }\n return null\n } catch {\n return null\n }\n }, [date])\n\n // Format relative time in Vietnamese\n const formatRelativeTime = React.useCallback((date: Date): string => {\n const now = new Date()\n const diffInSeconds = Math.floor((now.getTime() - date.getTime()) / 1000)\n\n if (diffInSeconds < 60) return 'Vừa xong'\n if (diffInSeconds < 3600) return `${Math.floor(diffInSeconds / TIME_IN_SECONDS.MINUTE)} phút trước`\n if (diffInSeconds < 86400) return `${Math.floor(diffInSeconds / TIME_IN_SECONDS.HOUR)} giờ trước`\n if (diffInSeconds < 604800) return `${Math.floor(diffInSeconds / TIME_IN_SECONDS.DAY)} ngày trước`\n if (diffInSeconds < 2592000) return `${Math.floor(diffInSeconds / TIME_IN_SECONDS.WEEK)} tuần trước`\n if (diffInSeconds < 31536000) return `${Math.floor(diffInSeconds / TIME_IN_SECONDS.MONTH)} tháng trước`\n return `${Math.floor(diffInSeconds / TIME_IN_SECONDS.YEAR)} năm trước`\n }, [])\n\n // Vietnamese weekday\n const getVietnameseWeekday = React.useCallback((date: Date, short: boolean = false): string => {\n const dayIndex = date.getDay()\n return short ? vietnameseLocale.weekdaysShort[dayIndex] : vietnameseLocale.weekdays[dayIndex]\n }, [])\n\n // Vietnamese month\n const getVietnameseMonth = React.useCallback((date: Date, short: boolean = false): string => {\n const monthIndex = date.getMonth()\n return short ? vietnameseLocale.monthsShort[monthIndex] : vietnameseLocale.months[monthIndex]\n }, [])\n\n // Check holiday\n const getHoliday = React.useCallback((date: Date): string | null => {\n const monthDay = format(date, 'MM-dd') as keyof typeof vietnameseHolidays\n return vietnameseHolidays[monthDay] || null\n }, [])\n\n // Smart format - choose appropriate format based on date\n const getSmartFormat = React.useCallback(\n (date: Date): string => {\n if (isToday(date)) {\n return showTime ? `Hôm nay ${format(date, 'HH:mm')}` : 'Hôm nay'\n }\n if (isYesterday(date)) {\n return showTime ? `Hôm qua ${format(date, 'HH:mm')}` : 'Hôm qua'\n }\n if (isTomorrow(date)) {\n return showTime ? `Ngày mai ${format(date, 'HH:mm')}` : 'Ngày mai'\n }\n if (isThisWeek(date)) {\n const weekday = getVietnameseWeekday(date)\n return showTime ? `${weekday} ${format(date, 'HH:mm')}` : weekday\n }\n if (isThisMonth(date)) {\n const day = format(date, 'd')\n return showTime ? `${day}/${format(date, 'M')} ${format(date, 'HH:mm')}` : `${day}/${format(date, 'M')}`\n }\n if (isThisYear(date)) {\n return showTime ? format(date, 'd/M HH:mm') : format(date, 'd/M')\n }\n return showTime ? format(date, 'd/M/yyyy HH:mm') : format(date, 'd/M/yyyy')\n },\n [getVietnameseWeekday, showTime],\n )\n\n // Main formatting function\n const formatDate = React.useCallback(\n (date: Date, type: string): string => {\n const timeStr = showTime ? format(date, ', HH:mm') : ''\n\n switch (type) {\n case 'short':\n return format(date, 'd/M/yy') + timeStr\n\n case 'medium':\n return format(date, 'dd/MM/yyyy') + timeStr\n\n case 'long':\n return `${format(date, 'd')} ${getVietnameseMonth(date)} ${format(date, 'yyyy')}` + timeStr\n\n case 'full': {\n const data = `${getVietnameseWeekday(date)}, ngày ${format(date, 'd')} ${getVietnameseMonth(date)} năm ${format(date, 'yyyy')}`\n return data + timeStr\n }\n\n case 'relative':\n return formatRelativeTime(date)\n\n case 'datetime':\n return format(date, 'd/M/yyyy HH:mm')\n\n case 'time':\n return format(date, 'HH:mm')\n\n case 'smart':\n return getSmartFormat(date)\n\n default:\n return format(date, 'd/M/yyyy') + timeStr\n }\n },\n [getSmartFormat, getVietnameseMonth, getVietnameseWeekday, formatRelativeTime, showTime],\n )\n\n if (!parsedDate) {\n return <span className={cn('text-muted-foreground text-sm', className)}>--/--/----</span>\n }\n\n const formattedDate = formatDate(parsedDate, formatType)\n const holiday = showHoliday ? getHoliday(parsedDate) : null\n const displayText = holiday ? `${formattedDate} (${holiday})` : formattedDate\n const tooltipTitle = title || format(parsedDate, 'EEEE, d MMMM yyyy HH:mm:ss')\n\n return (\n <time dateTime={parsedDate.toISOString()} className={cn('text-accent-foreground font-number text-sm', className)} title={tooltipTitle}>\n {displayText}\n </time>\n )\n}\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
const e=require(`./chunk-CUT6urMc.cjs`),t=e.__toESM(require(`react`)),n=e.__toESM(require(`@customafk/react-toolkit/utils`)),r=e.__toESM(require(`react/jsx-runtime`)),i=e.__toESM(require(`@customafk/react-toolkit/date-fns`)),a={weekdays:[`Chủ Nhật`,`Thứ Hai`,`Thứ Ba`,`Thứ Tư`,`Thứ Năm`,`Thứ Sáu`,`Thứ Bảy`],weekdaysShort:[`CN`,`T2`,`T3`,`T4`,`T5`,`T6`,`T7`],months:[`Tháng 1`,`Tháng 2`,`Tháng 3`,`Tháng 4`,`Tháng 5`,`Tháng 6`,`Tháng 7`,`Tháng 8`,`Tháng 9`,`Tháng 10`,`Tháng 11`,`Tháng 12`],monthsShort:[`T1`,`T2`,`T3`,`T4`,`T5`,`T6`,`T7`,`T8`,`T9`,`T10`,`T11`,`T12`]},o={"01-01":`Tết Dương lịch`,"03-08":`Quốc tế Phụ nữ`,"04-30":`Ngày Giải phóng miền Nam`,"05-01":`Quốc tế Lao động`,"09-02":`Quốc khánh`,"10-20":`Ngày Phụ nữ Việt Nam`,"11-20":`Ngày Nhà giáo Việt Nam`},s=Object.freeze({SECOND:1e3,MINUTE:60*1e3,HOUR:3600*1e3,DAY:1440*60*1e3,WEEK:10080*60*1e3,MONTH:720*60*60*1e3,YEAR:365*24*60*60*1e3}),c=Object.freeze({MINUTE:60,HOUR:3600,DAY:1440*60,WEEK:10080*60,MONTH:720*60*60,YEAR:365*24*60*60}),l=Object.freeze({HOUR:60,DAY:1440,WEEK:10080,MONTH:720*60}),u=({date:e,format:s=`medium`,showHoliday:l=!1,showTime:u=!1,className:d=``,title:f})=>{let p=t.default.useMemo(()=>{try{if(e instanceof Date)return(0,i.isValid)(e)?e:null;if(typeof e==`string`){let t=(0,i.parseISO)(e);return(0,i.isValid)(t)?t:new Date(e)}if(typeof e==`number`){let t=new Date(e);return(0,i.isValid)(t)?t:null}return null}catch{return null}},[e]),m=t.default.useCallback(e=>{let t=new Date,n=Math.floor((t.getTime()-e.getTime())/1e3);return n<60?`Vừa xong`:n<3600?`${Math.floor(n/c.MINUTE)} phút trước`:n<86400?`${Math.floor(n/c.HOUR)} giờ trước`:n<604800?`${Math.floor(n/c.DAY)} ngày trước`:n<2592e3?`${Math.floor(n/c.WEEK)} tuần trước`:n<31536e3?`${Math.floor(n/c.MONTH)} tháng trước`:`${Math.floor(n/c.YEAR)} năm trước`},[]),h=t.default.useCallback((e,t=!1)=>{let n=e.getDay();return t?a.weekdaysShort[n]:a.weekdays[n]},[]),g=t.default.useCallback((e,t=!1)=>{let n=e.getMonth();return t?a.monthsShort[n]:a.months[n]},[]),_=t.default.useCallback(e=>{let t=(0,i.format)(e,`MM-dd`);return o[t]||null},[]),v=t.default.useCallback(e=>{if((0,i.isToday)(e))return u?`Hôm nay ${(0,i.format)(e,`HH:mm`)}`:`Hôm nay`;if((0,i.isYesterday)(e))return u?`Hôm qua ${(0,i.format)(e,`HH:mm`)}`:`Hôm qua`;if((0,i.isTomorrow)(e))return u?`Ngày mai ${(0,i.format)(e,`HH:mm`)}`:`Ngày mai`;if((0,i.isThisWeek)(e)){let t=h(e);return u?`${t} ${(0,i.format)(e,`HH:mm`)}`:t}if((0,i.isThisMonth)(e)){let t=(0,i.format)(e,`d`);return u?`${t}/${(0,i.format)(e,`M`)} ${(0,i.format)(e,`HH:mm`)}`:`${t}/${(0,i.format)(e,`M`)}`}return(0,i.isThisYear)(e)?u?(0,i.format)(e,`d/M HH:mm`):(0,i.format)(e,`d/M`):u?(0,i.format)(e,`d/M/yyyy HH:mm`):(0,i.format)(e,`d/M/yyyy`)},[h,u]),y=t.default.useCallback((e,t)=>{let n=u?(0,i.format)(e,`, HH:mm`):``;switch(t){case`short`:return(0,i.format)(e,`d/M/yy`)+n;case`medium`:return(0,i.format)(e,`dd/MM/yyyy`)+n;case`long`:return`${(0,i.format)(e,`d`)} ${g(e)} ${(0,i.format)(e,`yyyy`)}`+n;case`full`:{let t=`${h(e)}, ngày ${(0,i.format)(e,`d`)} ${g(e)} năm ${(0,i.format)(e,`yyyy`)}`;return t+n}case`relative`:return m(e);case`datetime`:return(0,i.format)(e,`d/M/yyyy HH:mm`);case`time`:return(0,i.format)(e,`HH:mm`);case`smart`:return v(e);default:return(0,i.format)(e,`d/M/yyyy`)+n}},[v,g,h,m,u]);if(!p)return(0,r.jsx)(`span`,{className:(0,n.cn)(`text-muted-foreground text-sm`,d),children:`--/--/----`});let b=y(p,s),x=l?_(p):null,S=x?`${b} (${x})`:b,C=f||(0,i.format)(p,`EEEE, d MMMM yyyy HH:mm:ss`);return(0,r.jsx)(`time`,{dateTime:p.toISOString(),className:(0,n.cn)(`text-accent-foreground font-number text-sm`,d),title:C,children:S})};Object.defineProperty(exports,`DateDisplay`,{enumerable:!0,get:function(){return u}});
|
|
2
|
-
//# sourceMappingURL=date-
|
|
2
|
+
//# sourceMappingURL=date-DevNulgp.cjs.map
|