@stachelock/ui 0.2.14 → 0.3.0
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/AddDeleteButtonGroup.vue_vue_type_script_setup_true_lang-CFS3lVF-.js +128 -0
- package/dist/AddDeleteButtonGroup.vue_vue_type_script_setup_true_lang-CFS3lVF-.js.map +1 -0
- package/dist/AlertModal.vue_vue_type_script_setup_true_lang-CxwewAVy.js +194 -0
- package/dist/AlertModal.vue_vue_type_script_setup_true_lang-CxwewAVy.js.map +1 -0
- package/dist/BackgroundGradientWrapper.vue_vue_type_script_setup_true_lang-B570pdYL.js +34 -0
- package/dist/BackgroundGradientWrapper.vue_vue_type_script_setup_true_lang-B570pdYL.js.map +1 -0
- package/dist/BarChart.vue_vue_type_script_setup_true_lang-Dnuzd7vZ.js +67 -0
- package/dist/BarChart.vue_vue_type_script_setup_true_lang-Dnuzd7vZ.js.map +1 -0
- package/dist/Bars3Icon-BdOqcGcY.js +22 -0
- package/dist/Bars3Icon-BdOqcGcY.js.map +1 -0
- package/dist/BaseModal.vue_vue_type_script_setup_true_lang-Cr_GAD6Q.js +235 -0
- package/dist/BaseModal.vue_vue_type_script_setup_true_lang-Cr_GAD6Q.js.map +1 -0
- package/dist/CalendarHeader.vue_vue_type_script_setup_true_lang-DRwe4rw8.js +328 -0
- package/dist/CalendarHeader.vue_vue_type_script_setup_true_lang-DRwe4rw8.js.map +1 -0
- package/dist/CardWrapper.vue_vue_type_script_setup_true_lang-D59QBAi9.js +13 -0
- package/dist/CardWrapper.vue_vue_type_script_setup_true_lang-D59QBAi9.js.map +1 -0
- package/dist/CheckIcon-BGlsmVwT.js +20 -0
- package/dist/CheckIcon-BGlsmVwT.js.map +1 -0
- package/dist/{CheckboxInput.vue_vue_type_script_setup_true_lang-tYAo46wK.js → CheckboxInput.vue_vue_type_script_setup_true_lang-B8wJVkPP.js} +52 -51
- package/dist/CheckboxInput.vue_vue_type_script_setup_true_lang-B8wJVkPP.js.map +1 -0
- package/dist/ChevronRightIcon-DkUqw988.js +20 -0
- package/dist/ChevronRightIcon-DkUqw988.js.map +1 -0
- package/dist/ChevronUpDownIcon-Bq_fsgrb.js +20 -0
- package/dist/ChevronUpDownIcon-Bq_fsgrb.js.map +1 -0
- package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-ClGP5YU0.js +1315 -0
- package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-ClGP5YU0.js.map +1 -0
- package/dist/ComingSoon.vue_vue_type_script_setup_true_lang-C5GU-yiK.js +60 -0
- package/dist/ComingSoon.vue_vue_type_script_setup_true_lang-C5GU-yiK.js.map +1 -0
- package/dist/{DashboardLayout.vue_vue_type_script_setup_true_lang-Cg83utkU.js → DashboardLayout.vue_vue_type_script_setup_true_lang-DV-XVWqh.js} +23 -22
- package/dist/DashboardLayout.vue_vue_type_script_setup_true_lang-DV-XVWqh.js.map +1 -0
- package/dist/DatepickerInput.vue_vue_type_style_index_0_lang-BdkGLw0H.js +688 -0
- package/dist/DatepickerInput.vue_vue_type_style_index_0_lang-BdkGLw0H.js.map +1 -0
- package/dist/DayCalendar.vue_vue_type_script_setup_true_lang-BV9vYYuX.js +238 -0
- package/dist/DayCalendar.vue_vue_type_script_setup_true_lang-BV9vYYuX.js.map +1 -0
- package/dist/DisclosureWrapper.vue_vue_type_script_setup_true_lang-B-Mr_vdx.js +138 -0
- package/dist/DisclosureWrapper.vue_vue_type_script_setup_true_lang-B-Mr_vdx.js.map +1 -0
- package/dist/DynamicForm.vue_vue_type_script_setup_true_lang-DRDP86Yc.js +253 -0
- package/dist/DynamicForm.vue_vue_type_script_setup_true_lang-DRDP86Yc.js.map +1 -0
- package/dist/{DynamicFormField.vue_vue_type_script_setup_true_lang-DvT03FIS.js → DynamicFormField.vue_vue_type_script_setup_true_lang-Ct8b80dM.js} +25 -41
- package/dist/DynamicFormField.vue_vue_type_script_setup_true_lang-Ct8b80dM.js.map +1 -0
- package/dist/EmailInput.vue_vue_type_script_setup_true_lang-Dhfgs2Jn.js +122 -0
- package/dist/EmailInput.vue_vue_type_script_setup_true_lang-Dhfgs2Jn.js.map +1 -0
- package/dist/EmptyInput.vue_vue_type_script_setup_true_lang-BDxgc5Bs.js +32 -0
- package/dist/EmptyInput.vue_vue_type_script_setup_true_lang-BDxgc5Bs.js.map +1 -0
- package/dist/EmptyState.vue_vue_type_script_setup_true_lang-B_XAq5Sr.js +74 -0
- package/dist/EmptyState.vue_vue_type_script_setup_true_lang-B_XAq5Sr.js.map +1 -0
- package/dist/{EventCard.vue_vue_type_script_setup_true_lang-YV1lfgUY.js → EventCard.vue_vue_type_script_setup_true_lang-j1mtKShZ.js} +56 -77
- package/dist/EventCard.vue_vue_type_script_setup_true_lang-j1mtKShZ.js.map +1 -0
- package/dist/{EventsList.vue_vue_type_script_setup_true_lang-Cn_WOpZi.js → EventsList.vue_vue_type_script_setup_true_lang-D3q9wJ4E.js} +9 -9
- package/dist/{EventsList.vue_vue_type_script_setup_true_lang-Cn_WOpZi.js.map → EventsList.vue_vue_type_script_setup_true_lang-D3q9wJ4E.js.map} +1 -1
- package/dist/ExclamationCircleIcon-DjxYk45_.js +22 -0
- package/dist/ExclamationCircleIcon-DjxYk45_.js.map +1 -0
- package/dist/ExclamationCircleIcon-DmL8Wwjo.js +36 -0
- package/dist/ExclamationCircleIcon-DmL8Wwjo.js.map +1 -0
- package/dist/ExclamationTriangleIcon-BNKYmV_J.js +22 -0
- package/dist/ExclamationTriangleIcon-BNKYmV_J.js.map +1 -0
- package/dist/FileDropzoneInput.vue_vue_type_script_setup_true_lang-CclXceTb.js +211 -0
- package/dist/FileDropzoneInput.vue_vue_type_script_setup_true_lang-CclXceTb.js.map +1 -0
- package/dist/FormErrorWrapper.vue_vue_type_script_setup_true_lang-BQOlG_ab.js +63 -0
- package/dist/FormErrorWrapper.vue_vue_type_script_setup_true_lang-BQOlG_ab.js.map +1 -0
- package/dist/FunnelChart.vue_vue_type_script_setup_true_lang-B8QYlJ-s.js +67 -0
- package/dist/FunnelChart.vue_vue_type_script_setup_true_lang-B8QYlJ-s.js.map +1 -0
- package/dist/HiddenInput.vue_vue_type_script_setup_true_lang-DYdvWmVE.js +22 -0
- package/dist/HiddenInput.vue_vue_type_script_setup_true_lang-DYdvWmVE.js.map +1 -0
- package/dist/InformationCircleIcon-B322GNIt.js +40 -0
- package/dist/InformationCircleIcon-B322GNIt.js.map +1 -0
- package/dist/InlineTabs.vue_vue_type_script_setup_true_lang-DhkX5sWS.js +93 -0
- package/dist/InlineTabs.vue_vue_type_script_setup_true_lang-DhkX5sWS.js.map +1 -0
- package/dist/LineChart.vue_vue_type_script_setup_true_lang-DszQ-a5L.js +66 -0
- package/dist/LineChart.vue_vue_type_script_setup_true_lang-DszQ-a5L.js.map +1 -0
- package/dist/LottieAnimation.vue_vue_type_script_setup_true_lang-CwOOShcM.js +36 -0
- package/dist/LottieAnimation.vue_vue_type_script_setup_true_lang-CwOOShcM.js.map +1 -0
- package/dist/MapPinIcon-CSTDUZnD.js +27 -0
- package/dist/MapPinIcon-CSTDUZnD.js.map +1 -0
- package/dist/MonthCalendar.vue_vue_type_style_index_0_lang-CnX3Ih0W.js +193 -0
- package/dist/MonthCalendar.vue_vue_type_style_index_0_lang-CnX3Ih0W.js.map +1 -0
- package/dist/NotificationToast.vue_vue_type_script_setup_true_lang-Cm5RsC7C.js +162 -0
- package/dist/NotificationToast.vue_vue_type_script_setup_true_lang-Cm5RsC7C.js.map +1 -0
- package/dist/PieChart.vue_vue_type_script_setup_true_lang-DJRcsty7.js +69 -0
- package/dist/PieChart.vue_vue_type_script_setup_true_lang-DJRcsty7.js.map +1 -0
- package/dist/{XMarkIcon-C4wILUsz.js → PlusIcon-aDFVlB90.js} +5 -5
- package/dist/PlusIcon-aDFVlB90.js.map +1 -0
- package/dist/ProfileHeaderAvatar.vue_vue_type_script_setup_true_lang-Cri9BiBy.js +130 -0
- package/dist/ProfileHeaderAvatar.vue_vue_type_script_setup_true_lang-Cri9BiBy.js.map +1 -0
- package/dist/ProjectLogo.vue_vue_type_script_setup_true_lang-CtroDq7L.js +108 -0
- package/dist/ProjectLogo.vue_vue_type_script_setup_true_lang-CtroDq7L.js.map +1 -0
- package/dist/SelectInput.vue_vue_type_script_setup_true_lang--yUL7bcx.js +303 -0
- package/dist/SelectInput.vue_vue_type_script_setup_true_lang--yUL7bcx.js.map +1 -0
- package/dist/SelectTextInput.vue_vue_type_script_setup_true_lang-B2Gw_se2.js +339 -0
- package/dist/SelectTextInput.vue_vue_type_script_setup_true_lang-B2Gw_se2.js.map +1 -0
- package/dist/{SidebarLayout.vue_vue_type_script_setup_true_lang-CzLbBcNS.js → SidebarLayout.vue_vue_type_script_setup_true_lang-BD2PF5xp.js} +25 -24
- package/dist/SidebarLayout.vue_vue_type_script_setup_true_lang-BD2PF5xp.js.map +1 -0
- package/dist/SparklineChart.vue_vue_type_script_setup_true_lang-DDTcpEjy.js +78 -0
- package/dist/SparklineChart.vue_vue_type_script_setup_true_lang-DDTcpEjy.js.map +1 -0
- package/dist/StatCard.vue_vue_type_script_setup_true_lang-DTOT0-WB.js +111 -0
- package/dist/StatCard.vue_vue_type_script_setup_true_lang-DTOT0-WB.js.map +1 -0
- package/dist/StepperPanels.vue_vue_type_script_setup_true_lang-BtHrfqFI.js +119 -0
- package/dist/StepperPanels.vue_vue_type_script_setup_true_lang-BtHrfqFI.js.map +1 -0
- package/dist/{SwitchInput.vue_vue_type_script_setup_true_lang-BFr2SByh.js → SwitchInput.vue_vue_type_script_setup_true_lang-D6M1qwP1.js} +63 -58
- package/dist/SwitchInput.vue_vue_type_script_setup_true_lang-D6M1qwP1.js.map +1 -0
- package/dist/SwitchInputGroup.vue_vue_type_script_setup_true_lang-BNKKEAMq.js +183 -0
- package/dist/SwitchInputGroup.vue_vue_type_script_setup_true_lang-BNKKEAMq.js.map +1 -0
- package/dist/TabGroup.vue_vue_type_script_setup_true_lang-DrhDwLL3.js +125 -0
- package/dist/TabGroup.vue_vue_type_script_setup_true_lang-DrhDwLL3.js.map +1 -0
- package/dist/TabGroupUnderline.vue_vue_type_script_setup_true_lang-Di33js6c.js +129 -0
- package/dist/TabGroupUnderline.vue_vue_type_script_setup_true_lang-Di33js6c.js.map +1 -0
- package/dist/TabsInPills.vue_vue_type_script_setup_true_lang-CMxaK0Kw.js +85 -0
- package/dist/TabsInPills.vue_vue_type_script_setup_true_lang-CMxaK0Kw.js.map +1 -0
- package/dist/{TagifyInput.vue_vue_type_script_setup_true_lang-DRR6jt_8.js → TagifyInput.vue_vue_type_script_setup_true_lang-CAK6ZIiz.js} +53 -63
- package/dist/TagifyInput.vue_vue_type_script_setup_true_lang-CAK6ZIiz.js.map +1 -0
- package/dist/{TextAreaInput.vue_vue_type_script_setup_true_lang-CbR651TU.js → TextAreaInput.vue_vue_type_script_setup_true_lang-BMpc-5ln.js} +47 -35
- package/dist/TextAreaInput.vue_vue_type_script_setup_true_lang-BMpc-5ln.js.map +1 -0
- package/dist/{UiAvatar.vue_vue_type_script_setup_true_lang-CDNjUA1L.js → UiAvatar.vue_vue_type_script_setup_true_lang-Ci7VLRZx.js} +34 -34
- package/dist/UiAvatar.vue_vue_type_script_setup_true_lang-Ci7VLRZx.js.map +1 -0
- package/dist/UiBadge.vue_vue_type_script_setup_true_lang-CV8WVEXL.js +88 -0
- package/dist/UiBadge.vue_vue_type_script_setup_true_lang-CV8WVEXL.js.map +1 -0
- package/dist/UiButtonGroup.vue_vue_type_script_setup_true_lang-BKyznfxi.js +108 -0
- package/dist/UiButtonGroup.vue_vue_type_script_setup_true_lang-BKyznfxi.js.map +1 -0
- package/dist/UiCheckbox.vue_vue_type_script_setup_true_lang-B5fPB7PH.js +96 -0
- package/dist/UiCheckbox.vue_vue_type_script_setup_true_lang-B5fPB7PH.js.map +1 -0
- package/dist/{UiLoading.vue_vue_type_script_setup_true_lang-KbLKA4SA.js → UiLoading.vue_vue_type_script_setup_true_lang-DldleD-3.js} +48 -43
- package/dist/UiLoading.vue_vue_type_script_setup_true_lang-DldleD-3.js.map +1 -0
- package/dist/UiMapAll.vue_vue_type_script_setup_true_lang-CMAyvJMk.js +489 -0
- package/dist/UiMapAll.vue_vue_type_script_setup_true_lang-CMAyvJMk.js.map +1 -0
- package/dist/UiMenu.vue_vue_type_script_setup_true_lang-aJddpshR.js +330 -0
- package/dist/UiMenu.vue_vue_type_script_setup_true_lang-aJddpshR.js.map +1 -0
- package/dist/UiModal.vue_vue_type_script_setup_true_lang-CFgLuifQ.js +214 -0
- package/dist/UiModal.vue_vue_type_script_setup_true_lang-CFgLuifQ.js.map +1 -0
- package/dist/UiNavLink.vue_vue_type_script_setup_true_lang-C23h6Do0.js +83 -0
- package/dist/UiNavLink.vue_vue_type_script_setup_true_lang-C23h6Do0.js.map +1 -0
- package/dist/UiProgressBar.vue_vue_type_script_setup_true_lang-BioTMORv.js +69 -0
- package/dist/UiProgressBar.vue_vue_type_script_setup_true_lang-BioTMORv.js.map +1 -0
- package/dist/{UiTable.vue_vue_type_script_setup_true_lang-hI1_xamh.js → UiTable.vue_vue_type_script_setup_true_lang-BuOCaPzi.js} +45 -44
- package/dist/UiTable.vue_vue_type_script_setup_true_lang-BuOCaPzi.js.map +1 -0
- package/dist/XMarkIcon-Cwy3T6p8.js +22 -0
- package/dist/XMarkIcon-Cwy3T6p8.js.map +1 -0
- package/dist/XMarkIcon-DNvCkiOy.js +16 -0
- package/dist/XMarkIcon-DNvCkiOy.js.map +1 -0
- package/dist/YearCalendar.vue_vue_type_script_setup_true_lang-C01PTLg8.js +89 -0
- package/dist/YearCalendar.vue_vue_type_script_setup_true_lang-C01PTLg8.js.map +1 -0
- package/dist/active-element-history-BTBNVIJN.js +17 -0
- package/dist/active-element-history-BTBNVIJN.js.map +1 -0
- package/dist/calculate-active-index-Dim3sT-5.js +55 -0
- package/dist/calculate-active-index-Dim3sT-5.js.map +1 -0
- package/dist/calendar-DyIP7WGv.js +575 -0
- package/dist/calendar-DyIP7WGv.js.map +1 -0
- package/dist/calendars/CalendarDashboard.js +7 -7
- package/dist/calendars/CalendarHeader.js +1 -1
- package/dist/calendars/DayCalendar.js +1 -1
- package/dist/calendars/EventCard.js +1 -1
- package/dist/calendars/EventsList.js +1 -1
- package/dist/calendars/MonthCalendar.js +1 -1
- package/dist/calendars/WeekCalendar.js +376 -2
- package/dist/calendars/WeekCalendar.js.map +1 -1
- package/dist/calendars/YearCalendar.js +1 -1
- package/dist/charts/BarChart.d.ts +3 -0
- package/dist/charts/BarChart.js +5 -0
- package/dist/charts/BarChart.js.map +1 -0
- package/dist/charts/BaseChart.d.ts +3 -0
- package/dist/charts/BaseChart.js +135 -0
- package/dist/charts/BaseChart.js.map +1 -0
- package/dist/charts/FunnelChart.d.ts +3 -0
- package/dist/charts/FunnelChart.js +5 -0
- package/dist/charts/FunnelChart.js.map +1 -0
- package/dist/charts/LineChart.d.ts +3 -0
- package/dist/charts/LineChart.js +5 -0
- package/dist/charts/LineChart.js.map +1 -0
- package/dist/charts/PieChart.d.ts +3 -0
- package/dist/charts/PieChart.js +5 -0
- package/dist/charts/PieChart.js.map +1 -0
- package/dist/charts/SparklineChart.d.ts +3 -0
- package/dist/charts/SparklineChart.js +5 -0
- package/dist/charts/SparklineChart.js.map +1 -0
- package/dist/charts/StatCard.d.ts +3 -0
- package/dist/charts/StatCard.js +5 -0
- package/dist/charts/StatCard.js.map +1 -0
- package/dist/charts/chartTheme.d.ts +3 -0
- package/dist/charts/chartTheme.js +254 -0
- package/dist/charts/chartTheme.js.map +1 -0
- package/dist/charts/index.d.ts +1 -0
- package/dist/charts/index.js +33 -0
- package/dist/charts/index.js.map +1 -0
- package/dist/components/Avatar.js +1 -1
- package/dist/components/Badge.js +2 -39
- package/dist/components/Badge.js.map +1 -1
- package/dist/components/Banner.d.ts +3 -0
- package/dist/components/Banner.js +476 -0
- package/dist/components/Banner.js.map +1 -0
- package/dist/components/Breadcrumb.js +269 -2
- package/dist/components/Breadcrumb.js.map +1 -1
- package/dist/components/Button.js +132 -105
- package/dist/components/Button.js.map +1 -1
- package/dist/components/ButtonGroup.d.ts +3 -0
- package/dist/components/ButtonGroup.js +5 -0
- package/dist/components/ButtonGroup.js.map +1 -0
- package/dist/components/Checkbox.d.ts +3 -0
- package/dist/components/Checkbox.js +5 -0
- package/dist/components/Checkbox.js.map +1 -0
- package/dist/components/CloudinaryImage.d.ts +3 -0
- package/dist/components/CloudinaryImage.js +175 -0
- package/dist/components/CloudinaryImage.js.map +1 -0
- package/dist/components/Loading.js +1 -1
- package/dist/components/LoadingDots.js +3 -3
- package/dist/components/LoadingDots.js.map +1 -1
- package/dist/components/LottieAnimation.d.ts +3 -0
- package/dist/components/LottieAnimation.js +5 -0
- package/dist/components/LottieAnimation.js.map +1 -0
- package/dist/components/Menu.d.ts +3 -0
- package/dist/components/Menu.js +5 -0
- package/dist/components/Menu.js.map +1 -0
- package/dist/components/Modal.js +1 -1
- package/dist/components/NavLink.js +1 -1
- package/dist/components/ProgressBar.js +1 -1
- package/dist/components/RadialProgressBar.js +1 -1
- package/dist/components/Table.js +1 -1
- package/dist/composables/index.d.ts +1 -0
- package/dist/composables/index.js +33 -0
- package/dist/composables/index.js.map +1 -0
- package/dist/composables/useCalendar.d.ts +3 -0
- package/dist/composables/useCalendar.js +32 -0
- package/dist/composables/useCalendar.js.map +1 -0
- package/dist/composables/useFormValidation.d.ts +3 -0
- package/dist/composables/useFormValidation.js +110 -0
- package/dist/composables/useFormValidation.js.map +1 -0
- package/dist/composables/useMap.d.ts +3 -0
- package/dist/composables/useMap.js +10 -0
- package/dist/composables/useMap.js.map +1 -0
- package/dist/composables/useModal.d.ts +3 -0
- package/dist/composables/useModal.js +75 -0
- package/dist/composables/useModal.js.map +1 -0
- package/dist/composables/useNotifications.d.ts +3 -0
- package/dist/composables/useNotifications.js +77 -0
- package/dist/composables/useNotifications.js.map +1 -0
- package/dist/composables/useTabs.d.ts +1 -0
- package/dist/composables/useTabs.js +259 -0
- package/dist/composables/useTabs.js.map +1 -0
- package/dist/composables/useTheme.d.ts +3 -0
- package/dist/composables/useTheme.js +119 -0
- package/dist/composables/useTheme.js.map +1 -0
- package/dist/{description-CBd3BJ9O.js → description-C7cRw0tq.js} +2 -2
- package/dist/{description-CBd3BJ9O.js.map → description-C7cRw0tq.js.map} +1 -1
- package/dist/{dialog-U1KNiPzc.js → dialog-B2WA4G25.js} +141 -135
- package/dist/dialog-B2WA4G25.js.map +1 -0
- package/dist/empty-state/ComingSoon.d.ts +3 -0
- package/dist/empty-state/ComingSoon.js +5 -0
- package/dist/empty-state/ComingSoon.js.map +1 -0
- package/dist/empty-state/EmptyState.d.ts +3 -0
- package/dist/empty-state/EmptyState.js +5 -0
- package/dist/empty-state/EmptyState.js.map +1 -0
- package/dist/empty-state/index.d.ts +1 -0
- package/dist/empty-state/index.js +7 -0
- package/dist/empty-state/index.js.map +1 -0
- package/dist/env-BZfPsfnF.js +29 -0
- package/dist/env-BZfPsfnF.js.map +1 -0
- package/dist/form-f8yP4kN-.js +35 -0
- package/dist/form-f8yP4kN-.js.map +1 -0
- package/dist/forms/DynamicForm.js +1 -1
- package/dist/forms/DynamicFormField.js +1 -1
- package/dist/forms/FormFieldWrapper.js +72 -92
- package/dist/forms/FormFieldWrapper.js.map +1 -1
- package/dist/hidden-BSRluD1y.js +15 -0
- package/dist/hidden-BSRluD1y.js.map +1 -0
- package/dist/index-Dca39bYA.js +2167 -0
- package/dist/index-Dca39bYA.js.map +1 -0
- package/dist/index.js +1257 -274
- package/dist/index.js.map +1 -1
- package/dist/inputs/AddDeleteButtonGroup.d.ts +3 -0
- package/dist/inputs/AddDeleteButtonGroup.js +5 -0
- package/dist/inputs/AddDeleteButtonGroup.js.map +1 -0
- package/dist/inputs/CheckboxInput.js +1 -1
- package/dist/inputs/ComboboxInput.js +1 -1
- package/dist/inputs/DatepickerInput.d.ts +3 -0
- package/dist/inputs/DatepickerInput.js +5 -0
- package/dist/inputs/DatepickerInput.js.map +1 -0
- package/dist/inputs/EmailInput.d.ts +3 -0
- package/dist/inputs/EmailInput.js +5 -0
- package/dist/inputs/EmailInput.js.map +1 -0
- package/dist/inputs/EmptyInput.d.ts +3 -0
- package/dist/inputs/EmptyInput.js +5 -0
- package/dist/inputs/EmptyInput.js.map +1 -0
- package/dist/inputs/FileDropzoneInput.d.ts +3 -0
- package/dist/inputs/FileDropzoneInput.js +5 -0
- package/dist/inputs/FileDropzoneInput.js.map +1 -0
- package/dist/inputs/HiddenInput.d.ts +3 -0
- package/dist/inputs/HiddenInput.js +5 -0
- package/dist/inputs/HiddenInput.js.map +1 -0
- package/dist/inputs/PhoneInput.d.ts +3 -0
- package/dist/inputs/PhoneInput.js +3783 -0
- package/dist/inputs/PhoneInput.js.map +1 -0
- package/dist/inputs/RichTextInput.d.ts +3 -0
- package/dist/inputs/RichTextInput.js +17492 -0
- package/dist/inputs/RichTextInput.js.map +1 -0
- package/dist/inputs/SelectInput.js +1 -1
- package/dist/inputs/SelectTextInput.d.ts +3 -0
- package/dist/inputs/SelectTextInput.js +5 -0
- package/dist/inputs/SelectTextInput.js.map +1 -0
- package/dist/inputs/SwitchInput.js +1 -1
- package/dist/inputs/SwitchInputGroup.d.ts +3 -0
- package/dist/inputs/SwitchInputGroup.js +5 -0
- package/dist/inputs/SwitchInputGroup.js.map +1 -0
- package/dist/inputs/TagifyInput.js +1 -1
- package/dist/inputs/TextAreaInput.js +1 -1
- package/dist/inputs/TextInput.d.ts +3 -0
- package/dist/{components → inputs}/TextInput.js +17 -17
- package/dist/inputs/TextInput.js.map +1 -0
- package/dist/keyboard-Dd_2-cFu.js +5 -0
- package/dist/keyboard-Dd_2-cFu.js.map +1 -0
- package/dist/layouts/DashboardLayout.js +1 -1
- package/dist/layouts/ProfileHeaderAvatar.d.ts +3 -0
- package/dist/layouts/ProfileHeaderAvatar.js +5 -0
- package/dist/layouts/ProfileHeaderAvatar.js.map +1 -0
- package/dist/layouts/ProjectLogo.d.ts +3 -0
- package/dist/layouts/ProjectLogo.js +5 -0
- package/dist/layouts/ProjectLogo.js.map +1 -0
- package/dist/layouts/SidebarLayout.js +1 -1
- package/dist/listbox-p2_4hUSD.js +257 -0
- package/dist/listbox-p2_4hUSD.js.map +1 -0
- package/dist/loading/ContentSkeleton.d.ts +3 -0
- package/dist/loading/ContentSkeleton.js +96 -0
- package/dist/loading/ContentSkeleton.js.map +1 -0
- package/dist/loading/SmartLoadingIndicator.d.ts +3 -0
- package/dist/loading/SmartLoadingIndicator.js +230 -0
- package/dist/loading/SmartLoadingIndicator.js.map +1 -0
- package/dist/loading/index.d.ts +1 -0
- package/dist/loading/index.js +7 -0
- package/dist/loading/index.js.map +1 -0
- package/dist/mapThemes-DFE9fZm3.js +675 -0
- package/dist/mapThemes-DFE9fZm3.js.map +1 -0
- package/dist/maps/GoogleMap.d.ts +3 -0
- package/dist/maps/GoogleMap.js +170 -0
- package/dist/maps/GoogleMap.js.map +1 -0
- package/dist/maps/UiInfoWindow.d.ts +3 -0
- package/dist/maps/UiInfoWindow.js +286 -0
- package/dist/maps/UiInfoWindow.js.map +1 -0
- package/dist/maps/UiMap.d.ts +3 -0
- package/dist/maps/UiMap.js +591 -0
- package/dist/maps/UiMap.js.map +1 -0
- package/dist/maps/UiMapAll.d.ts +3 -0
- package/dist/maps/UiMapAll.js +5 -0
- package/dist/maps/UiMapAll.js.map +1 -0
- package/dist/maps/UiMapMarker.d.ts +3 -0
- package/dist/maps/UiMapMarker.js +237 -0
- package/dist/maps/UiMapMarker.js.map +1 -0
- package/dist/maps/index.d.ts +1 -0
- package/dist/maps/index.js +13 -0
- package/dist/maps/index.js.map +1 -0
- package/dist/micro-task-D-oTY33s.js +9 -0
- package/dist/micro-task-D-oTY33s.js.map +1 -0
- package/dist/modals/AlertModal.d.ts +3 -0
- package/dist/modals/AlertModal.js +5 -0
- package/dist/modals/AlertModal.js.map +1 -0
- package/dist/modals/BaseModal.d.ts +3 -0
- package/dist/modals/BaseModal.js +5 -0
- package/dist/modals/BaseModal.js.map +1 -0
- package/dist/modals/ImageCropperModal.d.ts +3 -0
- package/dist/modals/ImageCropperModal.js +1804 -0
- package/dist/modals/ImageCropperModal.js.map +1 -0
- package/dist/notifications/NotificationContainer.d.ts +3 -0
- package/dist/notifications/NotificationContainer.js +25 -0
- package/dist/notifications/NotificationContainer.js.map +1 -0
- package/dist/notifications/NotificationToast.d.ts +3 -0
- package/dist/notifications/NotificationToast.js +5 -0
- package/dist/notifications/NotificationToast.js.map +1 -0
- package/dist/notifications/index.d.ts +1 -0
- package/dist/notifications/index.js +7 -0
- package/dist/notifications/index.js.map +1 -0
- package/dist/open-closed-JTEvYTg2.js +19 -0
- package/dist/open-closed-JTEvYTg2.js.map +1 -0
- package/dist/render-QUUPyNjX.js +101 -0
- package/dist/render-QUUPyNjX.js.map +1 -0
- package/dist/src/components/CloudinaryImage.d.ts +144 -0
- package/dist/src/components/CloudinaryImage.d.ts.map +1 -0
- package/dist/src/components/LottieAnimation.d.ts +65 -0
- package/dist/src/components/LottieAnimation.d.ts.map +1 -0
- package/dist/src/components/ThemeDebugModal.d.ts +20 -0
- package/dist/src/components/ThemeDebugModal.d.ts.map +1 -0
- package/dist/src/components/UiAvatar.d.ts.map +1 -1
- package/dist/src/components/UiBadge.d.ts +22 -12
- package/dist/src/components/UiBadge.d.ts.map +1 -1
- package/dist/src/components/UiBanner.d.ts +166 -0
- package/dist/src/components/UiBanner.d.ts.map +1 -0
- package/dist/src/components/UiBreadcrumb.d.ts +240 -1
- package/dist/src/components/UiBreadcrumb.d.ts.map +1 -1
- package/dist/src/components/UiButton.d.ts +5 -4
- package/dist/src/components/UiButton.d.ts.map +1 -1
- package/dist/src/components/UiButtonGroup.d.ts +78 -0
- package/dist/src/components/UiButtonGroup.d.ts.map +1 -0
- package/dist/src/components/UiCheckbox.d.ts +55 -0
- package/dist/src/components/UiCheckbox.d.ts.map +1 -0
- package/dist/src/components/UiLoading.d.ts +2 -2
- package/dist/src/components/UiLoading.d.ts.map +1 -1
- package/dist/src/components/UiMenu.d.ts +67 -0
- package/dist/src/components/UiMenu.d.ts.map +1 -0
- package/dist/src/components/UiModal.d.ts +1 -1
- package/dist/src/components/UiModal.d.ts.map +1 -1
- package/dist/src/components/UiNavLink.d.ts +1 -1
- package/dist/src/components/UiProgressBar.d.ts +43 -31
- package/dist/src/components/UiProgressBar.d.ts.map +1 -1
- package/dist/src/components/UiRadialProgressBar.d.ts +46 -39
- package/dist/src/components/UiRadialProgressBar.d.ts.map +1 -1
- package/dist/src/components/UiTable.d.ts.map +1 -1
- package/dist/src/components/UiTransition.d.ts +1 -1
- package/dist/src/components/calendars/CalendarHeader.d.ts +66 -19
- package/dist/src/components/calendars/CalendarHeader.d.ts.map +1 -1
- package/dist/src/components/calendars/DayCalendar.d.ts +11 -4
- package/dist/src/components/calendars/DayCalendar.d.ts.map +1 -1
- package/dist/src/components/calendars/MonthCalendar.d.ts +33 -22
- package/dist/src/components/calendars/MonthCalendar.d.ts.map +1 -1
- package/dist/src/components/calendars/WeekCalendar.d.ts.map +1 -1
- package/dist/src/components/calendars/YearCalendar.d.ts +41 -6
- package/dist/src/components/calendars/YearCalendar.d.ts.map +1 -1
- package/dist/src/components/charts/BarChart.d.ts +64 -0
- package/dist/src/components/charts/BarChart.d.ts.map +1 -0
- package/dist/src/components/charts/BaseChart.d.ts +81 -0
- package/dist/src/components/charts/BaseChart.d.ts.map +1 -0
- package/dist/src/components/charts/FunnelChart.d.ts +55 -0
- package/dist/src/components/charts/FunnelChart.d.ts.map +1 -0
- package/dist/src/components/charts/LineChart.d.ts +60 -0
- package/dist/src/components/charts/LineChart.d.ts.map +1 -0
- package/dist/src/components/charts/PieChart.d.ts +59 -0
- package/dist/src/components/charts/PieChart.d.ts.map +1 -0
- package/dist/src/components/charts/SparklineChart.d.ts +46 -0
- package/dist/src/components/charts/SparklineChart.d.ts.map +1 -0
- package/dist/src/components/charts/StatCard.d.ts +37 -0
- package/dist/src/components/charts/StatCard.d.ts.map +1 -0
- package/dist/src/components/charts/chartTheme.d.ts +166 -0
- package/dist/src/components/charts/chartTheme.d.ts.map +1 -0
- package/dist/src/components/charts/index.d.ts +9 -0
- package/dist/src/components/charts/index.d.ts.map +1 -0
- package/dist/src/components/empty-state/ComingSoon.d.ts +50 -0
- package/dist/src/components/empty-state/ComingSoon.d.ts.map +1 -0
- package/dist/src/components/empty-state/EmptyState.d.ts +49 -0
- package/dist/src/components/empty-state/EmptyState.d.ts.map +1 -0
- package/dist/src/components/empty-state/index.d.ts +3 -0
- package/dist/src/components/empty-state/index.d.ts.map +1 -0
- package/dist/src/components/forms/DynamicForm.d.ts +29 -2
- package/dist/src/components/forms/DynamicForm.d.ts.map +1 -1
- package/dist/src/components/forms/DynamicFormField.d.ts.map +1 -1
- package/dist/src/components/forms/FormFieldWrapper.d.ts +2 -2
- package/dist/src/components/forms/FormFieldWrapper.d.ts.map +1 -1
- package/dist/src/components/index.d.ts +16 -1
- package/dist/src/components/index.d.ts.map +1 -1
- package/dist/src/components/inputs/AddDeleteButtonGroup.d.ts +49 -0
- package/dist/src/components/inputs/AddDeleteButtonGroup.d.ts.map +1 -0
- package/dist/src/components/inputs/CheckboxInput.d.ts +1 -1
- package/dist/src/components/inputs/CheckboxInput.d.ts.map +1 -1
- package/dist/src/components/inputs/ComboboxInput.d.ts.map +1 -1
- package/dist/src/components/inputs/DatepickerInput.d.ts +852 -0
- package/dist/src/components/inputs/DatepickerInput.d.ts.map +1 -0
- package/dist/src/components/inputs/EmailInput.d.ts +99 -0
- package/dist/src/components/inputs/EmailInput.d.ts.map +1 -0
- package/dist/src/components/inputs/EmptyInput.d.ts +36 -0
- package/dist/src/components/inputs/EmptyInput.d.ts.map +1 -0
- package/dist/src/components/inputs/FileDropzoneInput.d.ts +91 -0
- package/dist/src/components/inputs/FileDropzoneInput.d.ts.map +1 -0
- package/dist/src/components/inputs/HiddenInput.d.ts +30 -0
- package/dist/src/components/inputs/HiddenInput.d.ts.map +1 -0
- package/dist/src/components/inputs/PhoneInput.d.ts +211 -0
- package/dist/src/components/inputs/PhoneInput.d.ts.map +1 -0
- package/dist/src/components/inputs/RichTextInput.d.ts +102 -0
- package/dist/src/components/inputs/RichTextInput.d.ts.map +1 -0
- package/dist/src/components/inputs/SelectInput.d.ts.map +1 -1
- package/dist/src/components/inputs/SelectTextInput.d.ts +222 -0
- package/dist/src/components/inputs/SelectTextInput.d.ts.map +1 -0
- package/dist/src/components/inputs/SwitchInput.d.ts +1 -1
- package/dist/src/components/inputs/SwitchInput.d.ts.map +1 -1
- package/dist/src/components/inputs/SwitchInputGroup.d.ts +93 -0
- package/dist/src/components/inputs/SwitchInputGroup.d.ts.map +1 -0
- package/dist/src/components/inputs/TagifyInput.d.ts +6 -6
- package/dist/src/components/inputs/TextAreaInput.d.ts.map +1 -1
- package/dist/src/components/{UiTextInput.d.ts → inputs/TextInput.d.ts} +7 -7
- package/dist/src/components/inputs/TextInput.d.ts.map +1 -0
- package/dist/src/components/inputs/index.d.ts +11 -0
- package/dist/src/components/inputs/index.d.ts.map +1 -1
- package/dist/src/components/layouts/CardLayout.d.ts +144 -0
- package/dist/src/components/layouts/CardLayout.d.ts.map +1 -0
- package/dist/src/components/layouts/DashboardLayout.d.ts.map +1 -1
- package/dist/src/components/layouts/InfoCard.d.ts +43 -0
- package/dist/src/components/layouts/InfoCard.d.ts.map +1 -0
- package/dist/src/components/layouts/ProfileHeaderAvatar.d.ts +85 -0
- package/dist/src/components/layouts/ProfileHeaderAvatar.d.ts.map +1 -0
- package/dist/src/components/layouts/ProjectLogo.d.ts +67 -0
- package/dist/src/components/layouts/ProjectLogo.d.ts.map +1 -0
- package/dist/src/components/layouts/PropsTable.d.ts +38 -0
- package/dist/src/components/layouts/PropsTable.d.ts.map +1 -0
- package/dist/src/components/layouts/ShowcaseCard.d.ts +53 -0
- package/dist/src/components/layouts/ShowcaseCard.d.ts.map +1 -0
- package/dist/src/components/layouts/ShowcaseLayout.d.ts +58 -0
- package/dist/src/components/layouts/ShowcaseLayout.d.ts.map +1 -0
- package/dist/src/components/layouts/SidebarLayout.d.ts.map +1 -1
- package/dist/src/components/layouts/StateDisplay.d.ts +32 -0
- package/dist/src/components/layouts/StateDisplay.d.ts.map +1 -0
- package/dist/src/components/layouts/index.d.ts +8 -0
- package/dist/src/components/layouts/index.d.ts.map +1 -1
- package/dist/src/components/loading/ContentSkeleton.d.ts +53 -0
- package/dist/src/components/loading/ContentSkeleton.d.ts.map +1 -0
- package/dist/src/components/loading/SmartLoadingIndicator.d.ts +88 -0
- package/dist/src/components/loading/SmartLoadingIndicator.d.ts.map +1 -0
- package/dist/src/components/loading/index.d.ts +3 -0
- package/dist/src/components/loading/index.d.ts.map +1 -0
- package/dist/src/components/maps/GoogleMap.d.ts +224 -0
- package/dist/src/components/maps/GoogleMap.d.ts.map +1 -0
- package/dist/src/components/maps/UiInfoWindow.d.ts +223 -0
- package/dist/src/components/maps/UiInfoWindow.d.ts.map +1 -0
- package/dist/src/components/maps/UiMap.d.ts +609 -0
- package/dist/src/components/maps/UiMap.d.ts.map +1 -0
- package/dist/src/components/maps/UiMapAll.d.ts +676 -0
- package/dist/src/components/maps/UiMapAll.d.ts.map +1 -0
- package/dist/src/components/maps/UiMapMarker.d.ts +223 -0
- package/dist/src/components/maps/UiMapMarker.d.ts.map +1 -0
- package/dist/src/components/maps/index.d.ts +6 -0
- package/dist/src/components/maps/index.d.ts.map +1 -0
- package/dist/src/components/modals/AlertModal.d.ts +156 -0
- package/dist/src/components/modals/AlertModal.d.ts.map +1 -0
- package/dist/src/components/modals/BaseModal.d.ts +127 -0
- package/dist/src/components/modals/BaseModal.d.ts.map +1 -0
- package/dist/src/components/modals/ImageCropperModal.d.ts +99 -0
- package/dist/src/components/modals/ImageCropperModal.d.ts.map +1 -0
- package/dist/src/components/modals/index.d.ts +4 -0
- package/dist/src/components/modals/index.d.ts.map +1 -0
- package/dist/src/components/notifications/NotificationContainer.d.ts +3 -0
- package/dist/src/components/notifications/NotificationContainer.d.ts.map +1 -0
- package/dist/src/components/notifications/NotificationToast.d.ts +22 -0
- package/dist/src/components/notifications/NotificationToast.d.ts.map +1 -0
- package/dist/src/components/notifications/index.d.ts +3 -0
- package/dist/src/components/notifications/index.d.ts.map +1 -0
- package/dist/src/components/stepper/StepperPanels.d.ts +22 -0
- package/dist/src/components/stepper/StepperPanels.d.ts.map +1 -0
- package/dist/src/components/stepper/index.d.ts +2 -0
- package/dist/src/components/stepper/index.d.ts.map +1 -0
- package/dist/src/components/tabs/InlineTabs.d.ts +48 -0
- package/dist/src/components/tabs/InlineTabs.d.ts.map +1 -0
- package/dist/src/components/tabs/TabGroup.d.ts +55 -0
- package/dist/src/components/tabs/TabGroup.d.ts.map +1 -0
- package/dist/src/components/tabs/TabGroupUnderline.d.ts +56 -0
- package/dist/src/components/tabs/TabGroupUnderline.d.ts.map +1 -0
- package/dist/src/components/tabs/TabsInPills.d.ts +44 -0
- package/dist/src/components/tabs/TabsInPills.d.ts.map +1 -0
- package/dist/src/components/tabs/index.d.ts +5 -0
- package/dist/src/components/tabs/index.d.ts.map +1 -0
- package/dist/src/components/wrappers/BackgroundGradientWrapper.d.ts +64 -0
- package/dist/src/components/wrappers/BackgroundGradientWrapper.d.ts.map +1 -0
- package/dist/src/components/wrappers/CardWrapper.d.ts +10 -0
- package/dist/src/components/wrappers/CardWrapper.d.ts.map +1 -0
- package/dist/src/components/wrappers/DisclosureWrapper.d.ts +37 -0
- package/dist/src/components/wrappers/DisclosureWrapper.d.ts.map +1 -0
- package/dist/src/components/wrappers/FormErrorWrapper.d.ts +40 -0
- package/dist/src/components/{UiTextInput.d.ts.map → wrappers/FormErrorWrapper.d.ts.map} +1 -1
- package/dist/src/components/wrappers/index.d.ts +5 -0
- package/dist/src/components/wrappers/index.d.ts.map +1 -0
- package/dist/src/composables/index.d.ts +7 -0
- package/dist/src/composables/index.d.ts.map +1 -1
- package/dist/src/composables/useCalendar.d.ts +76 -20
- package/dist/src/composables/useCalendar.d.ts.map +1 -1
- package/dist/src/composables/useEventSegments.d.ts +74 -0
- package/dist/src/composables/useEventSegments.d.ts.map +1 -0
- package/dist/src/composables/useFormValidation.d.ts +47 -0
- package/dist/src/composables/useFormValidation.d.ts.map +1 -1
- package/dist/src/composables/useMap.d.ts +93 -0
- package/dist/src/composables/useMap.d.ts.map +1 -0
- package/dist/src/composables/useModal.d.ts +42 -2
- package/dist/src/composables/useModal.d.ts.map +1 -1
- package/dist/src/composables/useNotifications.d.ts +142 -0
- package/dist/src/composables/useNotifications.d.ts.map +1 -0
- package/dist/src/composables/useSimpleTabs.d.ts +45 -0
- package/dist/src/composables/useSimpleTabs.d.ts.map +1 -0
- package/dist/src/composables/useStringTransform.d.ts +107 -0
- package/dist/src/composables/useStringTransform.d.ts.map +1 -0
- package/dist/src/composables/useTabs.d.ts +48 -0
- package/dist/src/composables/useTabs.d.ts.map +1 -0
- package/dist/src/composables/useTheme.d.ts +37 -0
- package/dist/src/composables/useTheme.d.ts.map +1 -0
- package/dist/src/dev.d.ts +3 -0
- package/dist/src/dev.d.ts.map +1 -1
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/plugin/configure.d.ts +110 -0
- package/dist/src/plugin/configure.d.ts.map +1 -1
- package/dist/src/types/calendars.d.ts +74 -0
- package/dist/src/types/calendars.d.ts.map +1 -1
- package/dist/src/types/core.d.ts +679 -0
- package/dist/src/types/core.d.ts.map +1 -0
- package/dist/src/types/index.d.ts +3 -0
- package/dist/src/types/index.d.ts.map +1 -1
- package/dist/src/types/inputs.d.ts +147 -0
- package/dist/src/types/inputs.d.ts.map +1 -1
- package/dist/src/types/layouts.d.ts +25 -0
- package/dist/src/types/layouts.d.ts.map +1 -1
- package/dist/src/types/maps.d.ts +432 -0
- package/dist/src/types/maps.d.ts.map +1 -0
- package/dist/src/types/tabs.d.ts +75 -0
- package/dist/src/types/tabs.d.ts.map +1 -0
- package/dist/src/types/ui.d.ts +2 -3
- package/dist/src/types/ui.d.ts.map +1 -1
- package/dist/src/utils/calendar.d.ts +97 -5
- package/dist/src/utils/calendar.d.ts.map +1 -1
- package/dist/src/utils/countryCodes.d.ts +27 -0
- package/dist/src/utils/countryCodes.d.ts.map +1 -0
- package/dist/src/utils/index.d.ts +4 -0
- package/dist/src/utils/index.d.ts.map +1 -1
- package/dist/src/utils/mapThemes.d.ts +90 -0
- package/dist/src/utils/mapThemes.d.ts.map +1 -0
- package/dist/src/utils/phone.d.ts +73 -0
- package/dist/src/utils/phone.d.ts.map +1 -0
- package/dist/src/utils/transitions.d.ts +55 -0
- package/dist/src/utils/transitions.d.ts.map +1 -0
- package/dist/src/views/components/index.d.ts +15 -0
- package/dist/src/views/components/index.d.ts.map +1 -0
- package/dist/src/views/examples/index.d.ts +5 -0
- package/dist/src/views/examples/index.d.ts.map +1 -0
- package/dist/src/views/forms/index.d.ts +3 -0
- package/dist/src/views/forms/index.d.ts.map +1 -0
- package/dist/src/views/index.d.ts +23 -0
- package/dist/src/views/index.d.ts.map +1 -0
- package/dist/src/views/inputs/index.d.ts +13 -0
- package/dist/src/views/inputs/index.d.ts.map +1 -0
- package/dist/src/views/layouts/index.d.ts +5 -0
- package/dist/src/views/layouts/index.d.ts.map +1 -0
- package/dist/stepper/StepperPanels.d.ts +3 -0
- package/dist/stepper/StepperPanels.js +5 -0
- package/dist/stepper/StepperPanels.js.map +1 -0
- package/dist/stepper/index.d.ts +1 -0
- package/dist/stepper/index.js +5 -0
- package/dist/stepper/index.js.map +1 -0
- package/dist/style.css +1 -1
- package/dist/tabs/InlineTabs.d.ts +3 -0
- package/dist/tabs/InlineTabs.js +5 -0
- package/dist/tabs/InlineTabs.js.map +1 -0
- package/dist/tabs/TabGroup.d.ts +3 -0
- package/dist/tabs/TabGroup.js +5 -0
- package/dist/tabs/TabGroup.js.map +1 -0
- package/dist/tabs/TabGroupUnderline.d.ts +3 -0
- package/dist/tabs/TabGroupUnderline.js +5 -0
- package/dist/tabs/TabGroupUnderline.js.map +1 -0
- package/dist/tabs/TabsInPills.d.ts +3 -0
- package/dist/tabs/TabsInPills.js +5 -0
- package/dist/tabs/TabsInPills.js.map +1 -0
- package/dist/tabs/index.d.ts +1 -0
- package/dist/tabs/index.js +11 -0
- package/dist/tabs/index.js.map +1 -0
- package/dist/tabs-Da32Mbhf.js +202 -0
- package/dist/tabs-Da32Mbhf.js.map +1 -0
- package/dist/transition-_rPfnoET.js +191 -0
- package/dist/transition-_rPfnoET.js.map +1 -0
- package/dist/use-outside-click-DNDV36Sc.js +151 -0
- package/dist/use-outside-click-DNDV36Sc.js.map +1 -0
- package/dist/use-resolve-button-type-h6n-lm9q.js +20 -0
- package/dist/use-resolve-button-type-h6n-lm9q.js.map +1 -0
- package/dist/use-text-value-DKnkjK00.js +44 -0
- package/dist/use-text-value-DKnkjK00.js.map +1 -0
- package/dist/use-tree-walker-BHCORE7u.js +16 -0
- package/dist/use-tree-walker-BHCORE7u.js.map +1 -0
- package/dist/useEventSegments-B-r_8zCW.js +97 -0
- package/dist/useEventSegments-B-r_8zCW.js.map +1 -0
- package/dist/useMap-BaZEIoWM.js +525 -0
- package/dist/useMap-BaZEIoWM.js.map +1 -0
- package/dist/useSimpleTabs-CSgkChEU.js +103 -0
- package/dist/useSimpleTabs-CSgkChEU.js.map +1 -0
- package/dist/useStringTransform-CSr7nZWg.js +140 -0
- package/dist/useStringTransform-CSr7nZWg.js.map +1 -0
- package/dist/vue-datepicker-CEn0-fJj.js +4871 -0
- package/dist/vue-datepicker-CEn0-fJj.js.map +1 -0
- package/dist/vue-router-BPbyZ7xA.js +145 -0
- package/dist/vue-router-BPbyZ7xA.js.map +1 -0
- package/dist/vue3-lottie.es-C_MDkNwR.js +7976 -0
- package/dist/vue3-lottie.es-C_MDkNwR.js.map +1 -0
- package/dist/wrappers/BackgroundGradientWrapper.d.ts +3 -0
- package/dist/wrappers/BackgroundGradientWrapper.js +5 -0
- package/dist/wrappers/BackgroundGradientWrapper.js.map +1 -0
- package/dist/wrappers/CardWrapper.d.ts +3 -0
- package/dist/wrappers/CardWrapper.js +5 -0
- package/dist/wrappers/CardWrapper.js.map +1 -0
- package/dist/wrappers/DisclosureWrapper.d.ts +3 -0
- package/dist/wrappers/DisclosureWrapper.js +5 -0
- package/dist/wrappers/DisclosureWrapper.js.map +1 -0
- package/dist/wrappers/FormErrorWrapper.d.ts +3 -0
- package/dist/wrappers/FormErrorWrapper.js +5 -0
- package/dist/wrappers/FormErrorWrapper.js.map +1 -0
- package/dist/wrappers/index.d.ts +1 -0
- package/dist/wrappers/index.js +11 -0
- package/dist/wrappers/index.js.map +1 -0
- package/package.json +36 -4
- package/scripts/build-css.cjs +1 -1
- package/scripts/generate-config.cjs +1 -0
- package/scripts/generateRecursiveIndex.cjs +4 -1
- package/tailwind.config.js +1 -1
- package/dist/CalendarHeader.vue_vue_type_script_setup_true_lang-Cirr0hMB.js +0 -70
- package/dist/CalendarHeader.vue_vue_type_script_setup_true_lang-Cirr0hMB.js.map +0 -1
- package/dist/CheckboxInput.vue_vue_type_script_setup_true_lang-tYAo46wK.js.map +0 -1
- package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-LE2kDHpU.js +0 -1300
- package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-LE2kDHpU.js.map +0 -1
- package/dist/DashboardLayout.vue_vue_type_script_setup_true_lang-Cg83utkU.js.map +0 -1
- package/dist/DayCalendar.vue_vue_type_script_setup_true_lang-xE5bCa3O.js +0 -123
- package/dist/DayCalendar.vue_vue_type_script_setup_true_lang-xE5bCa3O.js.map +0 -1
- package/dist/DynamicForm.vue_vue_type_script_setup_true_lang-BpfPAZiT.js +0 -217
- package/dist/DynamicForm.vue_vue_type_script_setup_true_lang-BpfPAZiT.js.map +0 -1
- package/dist/DynamicFormField.vue_vue_type_script_setup_true_lang-DvT03FIS.js.map +0 -1
- package/dist/EventCard.vue_vue_type_script_setup_true_lang-YV1lfgUY.js.map +0 -1
- package/dist/MonthCalendar.vue_vue_type_script_setup_true_lang-B9Bs0z8j.js +0 -66
- package/dist/MonthCalendar.vue_vue_type_script_setup_true_lang-B9Bs0z8j.js.map +0 -1
- package/dist/SelectInput.vue_vue_type_script_setup_true_lang-BPjHLHdM.js +0 -522
- package/dist/SelectInput.vue_vue_type_script_setup_true_lang-BPjHLHdM.js.map +0 -1
- package/dist/SidebarLayout.vue_vue_type_script_setup_true_lang-CzLbBcNS.js.map +0 -1
- package/dist/SwitchInput.vue_vue_type_script_setup_true_lang-BFr2SByh.js.map +0 -1
- package/dist/TagifyInput.vue_vue_type_script_setup_true_lang-DRR6jt_8.js.map +0 -1
- package/dist/TextAreaInput.vue_vue_type_script_setup_true_lang-CbR651TU.js.map +0 -1
- package/dist/UiAvatar.vue_vue_type_script_setup_true_lang-CDNjUA1L.js.map +0 -1
- package/dist/UiBreadcrumb.vue_vue_type_script_setup_true_lang-quGuN9v4.js +0 -82
- package/dist/UiBreadcrumb.vue_vue_type_script_setup_true_lang-quGuN9v4.js.map +0 -1
- package/dist/UiLoading.vue_vue_type_script_setup_true_lang-KbLKA4SA.js.map +0 -1
- package/dist/UiModal.vue_vue_type_script_setup_true_lang-SAo39zpS.js +0 -163
- package/dist/UiModal.vue_vue_type_script_setup_true_lang-SAo39zpS.js.map +0 -1
- package/dist/UiNavLink.vue_vue_type_script_setup_true_lang-Bz5oiCCk.js +0 -222
- package/dist/UiNavLink.vue_vue_type_script_setup_true_lang-Bz5oiCCk.js.map +0 -1
- package/dist/UiProgressBar.vue_vue_type_script_setup_true_lang-D4-B3A7K.js +0 -51
- package/dist/UiProgressBar.vue_vue_type_script_setup_true_lang-D4-B3A7K.js.map +0 -1
- package/dist/UiTable.vue_vue_type_script_setup_true_lang-hI1_xamh.js.map +0 -1
- package/dist/WeekCalendar.vue_vue_type_script_setup_true_lang-DAFQiRI9.js +0 -154
- package/dist/WeekCalendar.vue_vue_type_script_setup_true_lang-DAFQiRI9.js.map +0 -1
- package/dist/XMarkIcon-C4wILUsz.js.map +0 -1
- package/dist/YearCalendar.vue_vue_type_script_setup_true_lang-BfJkvmpN.js +0 -29
- package/dist/YearCalendar.vue_vue_type_script_setup_true_lang-BfJkvmpN.js.map +0 -1
- package/dist/calculate-active-index-CksdUwZY.js +0 -87
- package/dist/calculate-active-index-CksdUwZY.js.map +0 -1
- package/dist/calendar-905Ofszh.js +0 -77
- package/dist/calendar-905Ofszh.js.map +0 -1
- package/dist/components/TextInput.d.ts +0 -3
- package/dist/components/TextInput.js.map +0 -1
- package/dist/dialog-U1KNiPzc.js.map +0 -1
- package/dist/form-DQKuKVqJ.js +0 -51
- package/dist/form-DQKuKVqJ.js.map +0 -1
- package/dist/keyboard-DJD8TwH4.js +0 -113
- package/dist/keyboard-DJD8TwH4.js.map +0 -1
- package/dist/open-closed-DgcU-HDT.js +0 -179
- package/dist/open-closed-DgcU-HDT.js.map +0 -1
- package/dist/transition-CuxxW9dY.js +0 -209
- package/dist/transition-CuxxW9dY.js.map +0 -1
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { defineComponent as R, toRefs as L, ref as u, watch as P, computed as d, createBlock as S, openBlock as v, mergeProps as U, unref as t, withCtx as j, createElementVNode as f, createElementBlock as D, createCommentVNode as T, renderSlot as l } from "vue";
|
|
2
|
+
import { u as V, a as z, b as q } from "./vue-router-BPbyZ7xA.js";
|
|
3
|
+
import F from "./components/Button.js";
|
|
4
|
+
const G = { class: "sl-flex sl-items-center sl-w-full" }, H = { class: "sl-flex sl-items-center sl-space-x-2 sl-flex-1" }, I = {
|
|
5
|
+
key: 0,
|
|
6
|
+
class: "sl-flex sl-items-center sl-ml-auto"
|
|
7
|
+
}, O = /* @__PURE__ */ R({
|
|
8
|
+
__name: "UiNavLink",
|
|
9
|
+
props: {
|
|
10
|
+
to: {},
|
|
11
|
+
inactiveClass: { default: "" },
|
|
12
|
+
activeClass: { default: "" },
|
|
13
|
+
ariaCurrent: { default: void 0 },
|
|
14
|
+
current: { type: Boolean, default: !1 },
|
|
15
|
+
disabled: { type: Boolean, default: !1 },
|
|
16
|
+
customDisabled: { type: Boolean, default: !1 },
|
|
17
|
+
useCustomActiveState: { type: Boolean, default: !1 }
|
|
18
|
+
},
|
|
19
|
+
emits: ["click"],
|
|
20
|
+
setup(m, { emit: p }) {
|
|
21
|
+
const h = m, g = p, { to: r, inactiveClass: C, activeClass: y, ariaCurrent: b, current: k, disabled: a, customDisabled: i, useCustomActiveState: B } = L(h), { navigate: w, isExactActive: x, isActive: n } = V({ to: r }), A = z(), c = q(), _ = u(c.name);
|
|
22
|
+
P(c, (e, s) => {
|
|
23
|
+
_.value = s.name;
|
|
24
|
+
});
|
|
25
|
+
const $ = d(() => {
|
|
26
|
+
const e = A.resolve(r.value);
|
|
27
|
+
return e && e.matched.length > 0 && !e.matched.some((s) => s.meta?.isErrorPage);
|
|
28
|
+
}), E = d(() => {
|
|
29
|
+
const s = [
|
|
30
|
+
(B.value ? k.value : n.value) ? y.value : C.value,
|
|
31
|
+
"sl-w-full",
|
|
32
|
+
"sl-flex",
|
|
33
|
+
// Make the button container a flexbox.
|
|
34
|
+
"sl-items-center",
|
|
35
|
+
// Vertically align items.
|
|
36
|
+
"sl-relative",
|
|
37
|
+
// Essential for loading overlay positioning
|
|
38
|
+
"sl-justify-between"
|
|
39
|
+
// Space between content and trailing loading
|
|
40
|
+
];
|
|
41
|
+
return i.value ? s.push("sl-cursor-not-allowed", "sl-text-gray-500") : !$.value || a.value ? s.push("sl-cursor-not-allowed") : s.push("sl-cursor-pointer"), s.join(" ");
|
|
42
|
+
}), o = u(!1), N = async (e) => {
|
|
43
|
+
if (g("click", e), !e.defaultPrevented && !i.value && !a.value)
|
|
44
|
+
try {
|
|
45
|
+
o.value = !0, await w();
|
|
46
|
+
} catch (s) {
|
|
47
|
+
console.error("[UiNavLink] Navigation failed:", s);
|
|
48
|
+
} finally {
|
|
49
|
+
o.value = !1;
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
return (e, s) => (v(), S(F, U({ "center-label": "" }, e.$attrs, {
|
|
53
|
+
disabled: t(a),
|
|
54
|
+
loading: o.value,
|
|
55
|
+
"trailing-loading": !0,
|
|
56
|
+
"trailing-loading-size": "xs",
|
|
57
|
+
"custom-class": E.value,
|
|
58
|
+
"aria-current": t(b),
|
|
59
|
+
onClick: N
|
|
60
|
+
}), {
|
|
61
|
+
default: j(() => [
|
|
62
|
+
f("div", G, [
|
|
63
|
+
f("div", H, [
|
|
64
|
+
l(e.$slots, "icon", {
|
|
65
|
+
isExactActive: t(x),
|
|
66
|
+
isActive: t(n)
|
|
67
|
+
}),
|
|
68
|
+
l(e.$slots, "default")
|
|
69
|
+
]),
|
|
70
|
+
e.$slots.secondaryText || e.$slots.badge ? (v(), D("div", I, [
|
|
71
|
+
l(e.$slots, "secondaryText"),
|
|
72
|
+
l(e.$slots, "badge")
|
|
73
|
+
])) : T("", !0)
|
|
74
|
+
])
|
|
75
|
+
]),
|
|
76
|
+
_: 3
|
|
77
|
+
}, 16, ["disabled", "loading", "custom-class", "aria-current"]));
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
export {
|
|
81
|
+
O as _
|
|
82
|
+
};
|
|
83
|
+
//# sourceMappingURL=UiNavLink.vue_vue_type_script_setup_true_lang-C23h6Do0.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UiNavLink.vue_vue_type_script_setup_true_lang-C23h6Do0.js","sources":["../src/components/UiNavLink.vue"],"sourcesContent":["<template>\n <UiButton center-label v-bind=\"$attrs\" :disabled=\"disabled\" :loading=\"displayLoading\" :trailing-loading=\"true\"\n :trailing-loading-size=\"'xs'\" :custom-class=\"computedClasses\" :aria-current=\"ariaCurrent\" @click=\"handleClick\">\n <!-- This container spans the full width and arranges its children -->\n <div class=\"sl-flex sl-items-center sl-w-full\">\n <!-- Primary text container: icon and default slot (primary text) -->\n <div class=\"sl-flex sl-items-center sl-space-x-2 sl-flex-1\">\n <slot name=\"icon\" :is-exact-active=\"isExactActive\" :is-active=\"isActive\" />\n <slot />\n </div>\n <!-- Secondary text container: aligned to the right if content exists -->\n <div v-if=\"$slots.secondaryText || $slots.badge\" class=\"sl-flex sl-items-center sl-ml-auto\">\n <slot name=\"secondaryText\" />\n <!-- Badge slot (if provided) will be handled by UiButton's own positioning -->\n <slot name=\"badge\" />\n </div>\n </div>\n </UiButton>\n</template>\n\n<script setup lang=\"ts\">\nimport { toRefs, ref, watch, computed } from 'vue';\nimport { useRoute, useLink, useRouter, type RouteLocationRaw, type RouteRecordNameGeneric } from 'vue-router';\nimport UiButton from './UiButton.vue';\n\n// Define the props interface for this component.\ninterface RouteMeta {\n isErrorPage?: boolean;\n}\n\ninterface UiNavLinkProps {\n to: RouteLocationRaw;\n inactiveClass?: string;\n activeClass?: string;\n ariaCurrent?: \"time\" | \"page\" | \"step\" | \"location\" | \"date\" | undefined;\n current?: boolean;\n disabled?: boolean;\n customDisabled?: boolean; // New prop for custom disabled styling (gray text, no cursor)\n useCustomActiveState?: boolean; // New prop to control active state behavior\n}\n\n// Define the component props with default values.\nconst props = withDefaults(defineProps<UiNavLinkProps>(), {\n inactiveClass: '',\n activeClass: '',\n ariaCurrent: undefined,\n current: false,\n disabled: false,\n customDisabled: false,\n useCustomActiveState: false,\n});\n\n// Declare an emit for click events.\nconst emit = defineEmits<{\n (e: 'click', event: MouseEvent): void;\n}>();\n\n// Destructure the props into refs.\nconst { to, inactiveClass, activeClass, ariaCurrent, current, disabled, customDisabled, useCustomActiveState } = toRefs(props);\n\n// Get navigation helpers from vue-router.\nconst { navigate, isExactActive, isActive } = useLink({ to });\n\n// Get the router instance.\nconst router = useRouter();\n\n// Track the previous route for sidebar closing logic.\nconst route = useRoute();\nconst previousRoute = ref<RouteRecordNameGeneric | null>(route.name);\nwatch(route, (to, from) => {\n previousRoute.value = from.name;\n});\n\n// Determine if the target route is valid and not an error page.\nconst isReal = computed(() => {\n const resolved = router.resolve(to.value);\n return resolved && resolved.matched.length > 0 && !resolved.matched.some((route: { meta?: RouteMeta }) => route.meta?.isErrorPage);\n});\n\n// Compute custom classes for the UiButton.\nconst computedClasses = computed(() => {\n // If useCustomActiveState is true, use only the current prop\n // Otherwise use the router's isActive behavior\n const shouldBeActive = useCustomActiveState.value ? current.value : isActive.value;\n\n const classes = [\n (shouldBeActive ? activeClass.value : inactiveClass.value),\n 'sl-w-full',\n 'sl-flex', // Make the button container a flexbox.\n 'sl-items-center', // Vertically align items.\n 'sl-relative', // Essential for loading overlay positioning\n 'sl-justify-between', // Space between content and trailing loading\n ];\n\n // Handle cursor and disabled styling\n if (customDisabled.value) {\n classes.push('sl-cursor-not-allowed', 'sl-text-gray-500');\n } else if (!isReal.value || disabled.value) {\n classes.push('sl-cursor-not-allowed');\n } else {\n classes.push('sl-cursor-pointer');\n }\n\n return classes.join(' ');\n});\n\n// Simple loading state for demonstration\nconst displayLoading = ref(false);\n\n// Click handler that emits events and manages navigation.\nconst handleClick = async (event: MouseEvent) => {\n // Emit the click event for parent components to intercept.\n emit('click', event);\n\n // If the default action was prevented, do not proceed.\n if (event.defaultPrevented) {\n return;\n }\n\n // Don't navigate if custom disabled\n if (customDisabled.value) {\n return;\n }\n\n // Don't navigate if disabled\n if (disabled.value) {\n return;\n }\n\n // Use the enhanced navigation from the composable\n try {\n displayLoading.value = true;\n await navigate();\n } catch (error) {\n console.error('[UiNavLink] Navigation failed:', error);\n } finally {\n displayLoading.value = false;\n }\n};\n</script>\n\n<style scoped>\n</style>\n"],"names":["props","__props","emit","__emit","to","inactiveClass","activeClass","ariaCurrent","current","disabled","customDisabled","useCustomActiveState","toRefs","navigate","isExactActive","isActive","useLink","router","useRouter","route","useRoute","previousRoute","ref","watch","from","isReal","computed","resolved","computedClasses","classes","displayLoading","handleClick","event","error","_openBlock","_createBlock","UiButton","_mergeProps","$attrs","_unref","_createElementVNode","_hoisted_1","_hoisted_2","_renderSlot","_ctx","$slots","_createElementBlock","_hoisted_3"],"mappings":";;;;;;;;;;;;;;;;;;;;AA0CA,UAAMA,IAAQC,GAWRC,IAAOC,GAKP,EAAE,IAAAC,GAAI,eAAAC,GAAe,aAAAC,GAAa,aAAAC,GAAa,SAAAC,GAAS,UAAAC,GAAU,gBAAAC,GAAgB,sBAAAC,MAAyBC,EAAOZ,CAAK,GAGvH,EAAE,UAAAa,GAAU,eAAAC,GAAe,UAAAC,EAAA,IAAaC,EAAQ,EAAE,IAAAZ,GAAI,GAGtDa,IAASC,EAAA,GAGTC,IAAQC,EAAA,GACRC,IAAgBC,EAAmCH,EAAM,IAAI;AACnE,IAAAI,EAAMJ,GAAO,CAACf,GAAIoB,MAAS;AACzB,MAAAH,EAAc,QAAQG,EAAK;AAAA,IAC7B,CAAC;AAGD,UAAMC,IAASC,EAAS,MAAM;AAC5B,YAAMC,IAAWV,EAAO,QAAQb,EAAG,KAAK;AACxC,aAAOuB,KAAYA,EAAS,QAAQ,SAAS,KAAK,CAACA,EAAS,QAAQ,KAAK,CAACR,MAAgCA,EAAM,MAAM,WAAW;AAAA,IACnI,CAAC,GAGKS,IAAkBF,EAAS,MAAM;AAKrC,YAAMG,IAAU;AAAA,SAFOlB,EAAqB,QAAQH,EAAQ,QAAQO,EAAS,SAGzDT,EAAY,QAAQD,EAAc;AAAA,QACpD;AAAA,QACA;AAAA;AAAA,QACA;AAAA;AAAA,QACA;AAAA;AAAA,QACA;AAAA;AAAA,MAAA;AAIF,aAAIK,EAAe,QACjBmB,EAAQ,KAAK,yBAAyB,kBAAkB,IAC/C,CAACJ,EAAO,SAAShB,EAAS,QACnCoB,EAAQ,KAAK,uBAAuB,IAEpCA,EAAQ,KAAK,mBAAmB,GAG3BA,EAAQ,KAAK,GAAG;AAAA,IACzB,CAAC,GAGKC,IAAiBR,EAAI,EAAK,GAG1BS,IAAc,OAAOC,MAAsB;AAK/C,UAHA9B,EAAK,SAAS8B,CAAK,GAGf,CAAAA,EAAM,oBAKN,CAAAtB,EAAe,SAKf,CAAAD,EAAS;AAKb,YAAI;AACF,UAAAqB,EAAe,QAAQ,IACvB,MAAMjB,EAAA;AAAA,QACR,SAASoB,GAAO;AACd,kBAAQ,MAAM,kCAAkCA,CAAK;AAAA,QACvD,UAAA;AACE,UAAAH,EAAe,QAAQ;AAAA,QACzB;AAAA,IACF;sBAzIEI,EAAA,GAAAC,EAgBWC,GAhBXC,EAgBW,EAhBD,gBAAA,GAAA,GAAqBC,EAAAA,QAAM;AAAA,MAAG,UAAUC,EAAA9B,CAAA;AAAA,MAAW,SAASqB,EAAA;AAAA,MAAiB,oBAAkB;AAAA,MACtG,yBAAuB;AAAA,MAAO,gBAAcF,EAAA;AAAA,MAAkB,gBAAcW,EAAAhC,CAAA;AAAA,MAAc,SAAOwB;AAAA,IAAA;iBAElG,MAYM;AAAA,QAZNS,EAYM,OAZNC,GAYM;AAAA,UAVJD,EAGM,OAHNE,GAGM;AAAA,YAFJC,EAA2EC,EAAA,QAAA,QAAA;AAAA,cAAxD,eAAiBL,EAAAzB,CAAA;AAAA,cAAgB,UAAWyB,EAAAxB,CAAA;AAAA,YAAA;YAC/D4B,EAAQC,EAAA,QAAA,SAAA;AAAA,UAAA;UAGCC,EAAAA,OAAO,iBAAiBA,EAAAA,OAAO,SAA1CX,KAAAY,EAIM,OAJNC,GAIM;AAAA,YAHJJ,EAA6BC,EAAA,QAAA,eAAA;AAAA,YAE7BD,EAAqBC,EAAA,QAAA,OAAA;AAAA,UAAA;;;;;;;"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { defineComponent as p, computed as l, createElementBlock as a, openBlock as t, createCommentVNode as o, createElementVNode as n, toDisplayString as u, normalizeClass as d, normalizeStyle as h } from "vue";
|
|
2
|
+
const b = {
|
|
3
|
+
key: 0,
|
|
4
|
+
class: "sl-flex sl-justify-between sl-mb-1"
|
|
5
|
+
}, v = {
|
|
6
|
+
key: 0,
|
|
7
|
+
class: "sl-text-sm sl-font-medium sl-text-slate-700 dark:sl-text-slate-300"
|
|
8
|
+
}, y = {
|
|
9
|
+
key: 1,
|
|
10
|
+
class: "sl-text-sm sl-font-medium sl-text-slate-600 dark:sl-text-slate-300"
|
|
11
|
+
}, C = /* @__PURE__ */ p({
|
|
12
|
+
__name: "UiProgressBar",
|
|
13
|
+
props: {
|
|
14
|
+
value: { default: 0 },
|
|
15
|
+
label: { default: "" },
|
|
16
|
+
showLabel: { type: Boolean, default: !1 },
|
|
17
|
+
color: { default: "primary" },
|
|
18
|
+
size: { default: "md" }
|
|
19
|
+
},
|
|
20
|
+
setup(i) {
|
|
21
|
+
const e = i, r = l(() => Math.min(100, Math.max(0, e.value))), c = l(() => [
|
|
22
|
+
"sl-w-full sl-bg-gray-200 dark:sl-bg-slate-700 sl-rounded-full sl-overflow-hidden",
|
|
23
|
+
{
|
|
24
|
+
sm: "sl-h-1.5",
|
|
25
|
+
md: "sl-h-2.5",
|
|
26
|
+
lg: "sl-h-4"
|
|
27
|
+
}[e.size]
|
|
28
|
+
]), m = l(() => [
|
|
29
|
+
"sl-rounded-full sl-transition-all sl-duration-300 sl-ease-out",
|
|
30
|
+
{
|
|
31
|
+
sm: "sl-h-1.5",
|
|
32
|
+
md: "sl-h-2.5",
|
|
33
|
+
lg: "sl-h-4"
|
|
34
|
+
}[e.size]
|
|
35
|
+
]), f = l(() => {
|
|
36
|
+
const s = {
|
|
37
|
+
primary: "var(--sl-color-primary-600, #3e4b9a)",
|
|
38
|
+
success: "#22c55e",
|
|
39
|
+
// green-500
|
|
40
|
+
warning: "#eab308",
|
|
41
|
+
// yellow-500
|
|
42
|
+
danger: "#ef4444"
|
|
43
|
+
// red-500
|
|
44
|
+
};
|
|
45
|
+
return {
|
|
46
|
+
width: `${r.value}%`,
|
|
47
|
+
backgroundColor: s[e.color]
|
|
48
|
+
};
|
|
49
|
+
});
|
|
50
|
+
return (s, g) => (t(), a("div", null, [
|
|
51
|
+
s.label || s.showLabel ? (t(), a("div", b, [
|
|
52
|
+
s.label ? (t(), a("span", v, u(s.label), 1)) : o("", !0),
|
|
53
|
+
s.showLabel ? (t(), a("span", y, u(r.value) + "%", 1)) : o("", !0)
|
|
54
|
+
])) : o("", !0),
|
|
55
|
+
n("div", {
|
|
56
|
+
class: d(c.value)
|
|
57
|
+
}, [
|
|
58
|
+
n("div", {
|
|
59
|
+
class: d(m.value),
|
|
60
|
+
style: h(f.value)
|
|
61
|
+
}, null, 6)
|
|
62
|
+
], 2)
|
|
63
|
+
]));
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
export {
|
|
67
|
+
C as _
|
|
68
|
+
};
|
|
69
|
+
//# sourceMappingURL=UiProgressBar.vue_vue_type_script_setup_true_lang-BioTMORv.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UiProgressBar.vue_vue_type_script_setup_true_lang-BioTMORv.js","sources":["../src/components/UiProgressBar.vue"],"sourcesContent":["<!--\n @component UiProgressBar\n @description Linear progress bar for tracking completion.\n \n @props\n - value: Progress value (0-100)\n - label: Optional label text\n - showLabel: Show percentage label\n - color: Bar color (primary, success, warning, danger)\n - size: Bar height (sm, md, lg)\n-->\n<template>\n <div>\n <div v-if=\"label || showLabel\" class=\"sl-flex sl-justify-between sl-mb-1\">\n <span v-if=\"label\" class=\"sl-text-sm sl-font-medium sl-text-slate-700 dark:sl-text-slate-300\">{{ label }}</span>\n <span v-if=\"showLabel\" class=\"sl-text-sm sl-font-medium sl-text-slate-600 dark:sl-text-slate-300\">{{ clampedValue }}%</span>\n </div>\n <div :class=\"trackClasses\">\n <div \n :class=\"barClasses\"\n :style=\"barStyle\" \n />\n </div>\n </div>\n</template>\n \n<script setup lang=\"ts\">\nimport { computed } from 'vue';\n\ntype ProgressColor = 'primary' | 'success' | 'warning' | 'danger';\ntype ProgressSize = 'sm' | 'md' | 'lg';\n\ninterface ProgressBarProps {\n value?: number;\n label?: string;\n showLabel?: boolean;\n color?: ProgressColor;\n size?: ProgressSize;\n}\n\nconst props = withDefaults(defineProps<ProgressBarProps>(), {\n value: 0,\n label: '',\n showLabel: false,\n color: 'primary',\n size: 'md',\n});\n\n// Clamp value between 0 and 100\nconst clampedValue = computed(() => {\n return Math.min(100, Math.max(0, props.value));\n});\n\n// Track (background) classes\nconst trackClasses = computed(() => {\n const sizeClasses: Record<ProgressSize, string> = {\n sm: 'sl-h-1.5',\n md: 'sl-h-2.5',\n lg: 'sl-h-4',\n };\n return [\n 'sl-w-full sl-bg-gray-200 dark:sl-bg-slate-700 sl-rounded-full sl-overflow-hidden',\n sizeClasses[props.size],\n ];\n});\n\n// Progress bar classes (size only, color via inline style)\nconst barClasses = computed(() => {\n const sizeClasses: Record<ProgressSize, string> = {\n sm: 'sl-h-1.5',\n md: 'sl-h-2.5',\n lg: 'sl-h-4',\n };\n return [\n 'sl-rounded-full sl-transition-all sl-duration-300 sl-ease-out',\n sizeClasses[props.size],\n ];\n});\n\n// Progress bar inline styles (color + width)\nconst barStyle = computed(() => {\n const colors: Record<ProgressColor, string> = {\n primary: 'var(--sl-color-primary-600, #3e4b9a)',\n success: '#22c55e', // green-500\n warning: '#eab308', // yellow-500\n danger: '#ef4444', // red-500\n };\n return {\n width: `${clampedValue.value}%`,\n backgroundColor: colors[props.color],\n };\n});\n</script>\n"],"names":["props","__props","clampedValue","computed","trackClasses","barClasses","barStyle","colors","_createElementBlock","label","showLabel","_openBlock","_hoisted_1","_hoisted_2","_toDisplayString","_hoisted_3","_createElementVNode"],"mappings":";;;;;;;;;;;;;;;;;;;;AAwCA,UAAMA,IAAQC,GASRC,IAAeC,EAAS,MACrB,KAAK,IAAI,KAAK,KAAK,IAAI,GAAGH,EAAM,KAAK,CAAC,CAC9C,GAGKI,IAAeD,EAAS,MAMrB;AAAA,MACL;AAAA,MANgD;AAAA,QAChD,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,EAIQH,EAAM,IAAI;AAAA,IAAA,CAEzB,GAGKK,IAAaF,EAAS,MAMnB;AAAA,MACL;AAAA,MANgD;AAAA,QAChD,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,EAIQH,EAAM,IAAI;AAAA,IAAA,CAEzB,GAGKM,IAAWH,EAAS,MAAM;AAC9B,YAAMI,IAAwC;AAAA,QAC5C,SAAS;AAAA,QACT,SAAS;AAAA;AAAA,QACT,SAAS;AAAA;AAAA,QACT,QAAQ;AAAA;AAAA,MAAA;AAEV,aAAO;AAAA,QACL,OAAO,GAAGL,EAAa,KAAK;AAAA,QAC5B,iBAAiBK,EAAOP,EAAM,KAAK;AAAA,MAAA;AAAA,IAEvC,CAAC;2BA/ECQ,EAWM,OAAA,MAAA;AAAA,MAVOC,EAAAA,SAASC,EAAAA,aAApBC,KAAAH,EAGM,OAHNI,GAGM;AAAA,QAFQH,EAAAA,cAAZD,EAAgH,QAAhHK,GAAgHC,EAAfL,EAAAA,KAAK,GAAA,CAAA;QAC1FC,EAAAA,aAAZC,EAAA,GAAAH,EAA4H,QAA5HO,GAA4HD,EAAvBZ,EAAA,KAAY,IAAG,KAAC,CAAA;;MAEvHc,EAKM,OAAA;AAAA,QALA,SAAOZ,EAAA,KAAY;AAAA,MAAA;QACvBY,EAGE,OAAA;AAAA,UAFC,SAAOX,EAAA,KAAU;AAAA,UACjB,SAAOC,EAAA,KAAQ;AAAA,QAAA;;;;;"}
|
|
@@ -1,31 +1,31 @@
|
|
|
1
|
-
import { defineComponent as S, ref as L, computed as N, createElementBlock as n, openBlock as i, createElementVNode as l, createCommentVNode as r, renderSlot as
|
|
1
|
+
import { defineComponent as S, ref as L, computed as N, createElementBlock as n, openBlock as i, createElementVNode as l, createCommentVNode as r, renderSlot as g, Fragment as a, renderList as c, unref as m, toDisplayString as h, createStaticVNode as j, createVNode as x } from "vue";
|
|
2
2
|
import { getCoreRowModel as D, useVueTable as A, FlexRender as w } from "@tanstack/vue-table";
|
|
3
3
|
import { getSortedRowModel as B } from "@tanstack/table-core";
|
|
4
4
|
const T = { class: "sl-px-4 sm:sl-px-6 lg:sl-px-8" }, q = { class: "sm:sl-flex sm:sl-items-center" }, z = { class: "sm:sl-flex-auto" }, E = {
|
|
5
5
|
key: 0,
|
|
6
|
-
class: "sl-text-base sl-font-semibold sl-leading-6 sl-text-gray-800"
|
|
6
|
+
class: "sl-text-base sl-font-semibold sl-leading-6 sl-text-gray-800 dark:sl-text-white"
|
|
7
7
|
}, F = {
|
|
8
8
|
key: 1,
|
|
9
|
-
class: "sl-mt-2 sl-text-sm sl-text-gray-700"
|
|
9
|
+
class: "sl-mt-2 sl-text-sm sl-text-gray-700 dark:sl-text-slate-300"
|
|
10
10
|
}, H = {
|
|
11
11
|
key: 0,
|
|
12
12
|
class: "sl-mt-4 sm:sl-ml-16 sm:sl-mt-0 sm:sl-flex-none"
|
|
13
13
|
}, P = {
|
|
14
14
|
key: 0,
|
|
15
15
|
class: "md:sl-hidden"
|
|
16
|
-
}, G = { class: "sl-mt-6 sl-space-y-4" }, J = { class: "sl-flex sl-items-start sl-justify-between" }, K = { class: "sl-text-sm sl-font-medium sl-text-gray-900" }, O = { class: "sl-ml-4 sl-shrink-0" }, U = { class: "sl-mt-3 sl-grid sl-grid-cols-1 sl-gap-2" }, I = { class: "sl-font-medium sl-text-gray-900" }, Q = { class: "sl-ml-1" }, W = {
|
|
16
|
+
}, G = { class: "sl-mt-6 sl-space-y-4" }, J = { class: "sl-flex sl-items-start sl-justify-between" }, K = { class: "sl-text-sm sl-font-medium sl-text-gray-900 dark:sl-text-white" }, O = { class: "sl-ml-4 sl-shrink-0" }, U = { class: "sl-mt-3 sl-grid sl-grid-cols-1 sl-gap-2" }, I = { class: "sl-font-medium sl-text-gray-900 dark:sl-text-white" }, Q = { class: "sl-ml-1" }, W = {
|
|
17
17
|
key: 0,
|
|
18
18
|
class: "sl-mt-3"
|
|
19
|
-
}, X = { class: "sl-group" }, Y = { class: "sl-mt-2" }, Z = { class: "sl-divide-y sl-divide-gray-100" }, ss = { class: "sl-text-sm sl-font-medium sl-text-gray-900 sl-col-span-1" }, es = { class: "sl-mt-1 sl-text-sm sl-text-gray-700 sl-col-span-2" }, ls = {
|
|
19
|
+
}, X = { class: "sl-group" }, Y = { class: "sl-mt-2" }, Z = { class: "sl-divide-y sl-divide-gray-100 dark:sl-divide-slate-700" }, ss = { class: "sl-text-sm sl-font-medium sl-text-gray-900 dark:sl-text-white sl-col-span-1" }, es = { class: "sl-mt-1 sl-text-sm sl-text-gray-700 dark:sl-text-slate-300 sl-col-span-2" }, ls = {
|
|
20
20
|
key: 1,
|
|
21
21
|
class: "md:sl-hidden sl-mt-6"
|
|
22
|
-
}, ts = { class: "sl-space-y-4" }, os = { class: "sl-hidden md:sl-block" }, ns = { class: "sl-mt-8 sl-flow-root" }, is = { class: "sl--my-2 sl--mx-4 sl-overflow-x-auto sm:sl--mx-6 lg:sl--mx-8" }, rs = { class: "sl-inline-block sl-min-w-full sl-py-2 sl-align-middle md:sl-px-6 lg:sl-px-8" }, ds = { class: "sl-overflow-hidden sl-shadow sl-ring-1 sl-ring-black sl-ring-opacity-5 md:sl-rounded-lg" }, as = { class: "sl-min-w-full sl-divide-y sl-divide-gray-300" }, cs = { class: "sl-bg-gray-50" }, us = {
|
|
22
|
+
}, ts = { class: "sl-space-y-4" }, os = { class: "sl-hidden md:sl-block" }, ns = { class: "sl-mt-8 sl-flow-root" }, is = { class: "sl--my-2 sl--mx-4 sl-overflow-x-auto sm:sl--mx-6 lg:sl--mx-8" }, rs = { class: "sl-inline-block sl-min-w-full sl-py-2 sl-align-middle md:sl-px-6 lg:sl-px-8" }, ds = { class: "sl-overflow-hidden sl-shadow dark:sl-shadow-slate-900/50 sl-ring-1 sl-ring-black sl-ring-opacity-5 dark:sl-ring-slate-700 md:sl-rounded-lg" }, as = { class: "sl-min-w-full sl-divide-y sl-divide-gray-300 dark:sl-divide-slate-700" }, cs = { class: "sl-bg-gray-50 dark:sl-bg-slate-800" }, us = {
|
|
23
23
|
key: 0,
|
|
24
24
|
class: "sl-px-3 sl-py-3.5"
|
|
25
|
-
},
|
|
25
|
+
}, gs = { class: "sl-divide-y sl-divide-gray-200 dark:sl-divide-slate-700 sl-bg-white dark:sl-bg-slate-900" }, ms = {
|
|
26
26
|
key: 0,
|
|
27
27
|
class: "sl-whitespace-nowrap sl-px-3 sl-py-4 sl-text-sm sl-text-right"
|
|
28
|
-
},
|
|
28
|
+
}, ps = /* @__PURE__ */ S({
|
|
29
29
|
__name: "UiTable",
|
|
30
30
|
props: {
|
|
31
31
|
data: { type: Array, required: !0 },
|
|
@@ -37,8 +37,8 @@ const T = { class: "sl-px-4 sm:sl-px-6 lg:sl-px-8" }, q = { class: "sm:sl-flex s
|
|
|
37
37
|
default: () => ({})
|
|
38
38
|
}
|
|
39
39
|
},
|
|
40
|
-
setup(
|
|
41
|
-
const u =
|
|
40
|
+
setup(y) {
|
|
41
|
+
const u = y, f = L([]), C = N(() => u.columns.map((s) => {
|
|
42
42
|
const e = u.truncate.find((t) => t.column === s.accessorKey);
|
|
43
43
|
return e ? {
|
|
44
44
|
...s,
|
|
@@ -52,7 +52,7 @@ const T = { class: "sl-px-4 sm:sl-px-6 lg:sl-px-8" }, q = { class: "sm:sl-flex s
|
|
|
52
52
|
return u.data;
|
|
53
53
|
},
|
|
54
54
|
get columns() {
|
|
55
|
-
return
|
|
55
|
+
return C.value;
|
|
56
56
|
},
|
|
57
57
|
getCoreRowModel: D(),
|
|
58
58
|
enableColumnResizing: !0,
|
|
@@ -60,22 +60,22 @@ const T = { class: "sl-px-4 sm:sl-px-6 lg:sl-px-8" }, q = { class: "sm:sl-flex s
|
|
|
60
60
|
getSortedRowModel: B(),
|
|
61
61
|
state: {
|
|
62
62
|
get sorting() {
|
|
63
|
-
return
|
|
63
|
+
return f.value;
|
|
64
64
|
}
|
|
65
65
|
},
|
|
66
66
|
onSortingChange: (s) => {
|
|
67
|
-
|
|
67
|
+
f.value = typeof s == "function" ? s(f.value) : s;
|
|
68
68
|
},
|
|
69
69
|
defaultColumn: { enableSorting: !0 }
|
|
70
|
-
},
|
|
70
|
+
}, p = A($), V = (s) => {
|
|
71
71
|
if (!s) return null;
|
|
72
72
|
const e = s.getVisibleCells() || [], t = u.mobileConfig || {};
|
|
73
73
|
if (t.titleColumn)
|
|
74
74
|
return e.find((d) => d.column.id === t.titleColumn) || null;
|
|
75
75
|
const o = ["name", "title", "embedCode"];
|
|
76
76
|
for (const d of o) {
|
|
77
|
-
const
|
|
78
|
-
if (
|
|
77
|
+
const k = e.find((R) => R.column.id.toLowerCase().includes(d.toLowerCase()));
|
|
78
|
+
if (k) return k;
|
|
79
79
|
}
|
|
80
80
|
return e[0] || null;
|
|
81
81
|
}, _ = (s) => {
|
|
@@ -97,48 +97,48 @@ const T = { class: "sl-px-4 sm:sl-px-6 lg:sl-px-8" }, q = { class: "sm:sl-flex s
|
|
|
97
97
|
l("div", q, [
|
|
98
98
|
l("div", z, [
|
|
99
99
|
s.$slots.title ? (i(), n("h1", E, [
|
|
100
|
-
|
|
100
|
+
g(s.$slots, "title")
|
|
101
101
|
])) : r("", !0),
|
|
102
102
|
s.$slots.description ? (i(), n("p", F, [
|
|
103
|
-
|
|
103
|
+
g(s.$slots, "description")
|
|
104
104
|
])) : r("", !0)
|
|
105
105
|
]),
|
|
106
106
|
s.$slots.right ? (i(), n("div", H, [
|
|
107
|
-
|
|
107
|
+
g(s.$slots, "right")
|
|
108
108
|
])) : r("", !0)
|
|
109
109
|
]),
|
|
110
|
-
|
|
110
|
+
y.isLoading ? r("", !0) : (i(), n("div", P, [
|
|
111
111
|
l("div", G, [
|
|
112
|
-
(i(!0), n(a, null, c(
|
|
112
|
+
(i(!0), n(a, null, c(m(p).getRowModel().rows, (t) => (i(), n("div", {
|
|
113
113
|
key: t.id,
|
|
114
|
-
class: "sl-bg-white sl-rounded-lg sl-shadow sl-p-4"
|
|
114
|
+
class: "sl-bg-white dark:sl-bg-slate-800 sl-rounded-lg sl-shadow dark:sl-shadow-slate-900/50 sl-p-4"
|
|
115
115
|
}, [
|
|
116
116
|
l("div", J, [
|
|
117
|
-
l("div", K,
|
|
117
|
+
l("div", K, h(v(V(t))), 1),
|
|
118
118
|
l("div", O, [
|
|
119
|
-
|
|
119
|
+
g(s.$slots, "row:actions", { row: t })
|
|
120
120
|
])
|
|
121
121
|
]),
|
|
122
122
|
l("div", U, [
|
|
123
123
|
(i(!0), n(a, null, c(M(t), (o) => (i(), n("div", {
|
|
124
124
|
key: o.id,
|
|
125
|
-
class: "sl-text-sm sl-text-gray-700"
|
|
125
|
+
class: "sl-text-sm sl-text-gray-700 dark:sl-text-slate-300"
|
|
126
126
|
}, [
|
|
127
|
-
l("span", I,
|
|
128
|
-
l("span", Q,
|
|
127
|
+
l("span", I, h(_(o)) + ":", 1),
|
|
128
|
+
l("span", Q, h(v(o)), 1)
|
|
129
129
|
]))), 128))
|
|
130
130
|
]),
|
|
131
131
|
b(t).length ? (i(), n("div", W, [
|
|
132
132
|
l("details", X, [
|
|
133
|
-
e[0] || (e[0] = l("summary", { class: "sl-cursor-pointer sl-text-sm sl-text-gray-700 sl-select-none" }, "More", -1)),
|
|
133
|
+
e[0] || (e[0] = l("summary", { class: "sl-cursor-pointer sl-text-sm sl-text-gray-700 dark:sl-text-slate-300 sl-select-none" }, "More", -1)),
|
|
134
134
|
l("div", Y, [
|
|
135
135
|
l("dl", Z, [
|
|
136
136
|
(i(!0), n(a, null, c(b(t), (o) => (i(), n("div", {
|
|
137
137
|
key: o.id,
|
|
138
138
|
class: "sl-py-2 sl-grid sl-grid-cols-3 sl-gap-4"
|
|
139
139
|
}, [
|
|
140
|
-
l("dt", ss,
|
|
141
|
-
l("dd", es,
|
|
140
|
+
l("dt", ss, h(_(o)), 1),
|
|
141
|
+
l("dd", es, h(v(o)), 1)
|
|
142
142
|
]))), 128))
|
|
143
143
|
])
|
|
144
144
|
])
|
|
@@ -147,13 +147,13 @@ const T = { class: "sl-px-4 sm:sl-px-6 lg:sl-px-8" }, q = { class: "sm:sl-flex s
|
|
|
147
147
|
]))), 128))
|
|
148
148
|
])
|
|
149
149
|
])),
|
|
150
|
-
|
|
150
|
+
y.isLoading ? (i(), n("div", ls, [
|
|
151
151
|
l("div", ts, [
|
|
152
152
|
(i(), n(a, null, c(3, (t) => l("div", {
|
|
153
153
|
key: t,
|
|
154
154
|
class: "sl-animate-pulse"
|
|
155
155
|
}, e[1] || (e[1] = [
|
|
156
|
-
j('<div class="sl-bg-white sl-rounded-lg sl-shadow sl-p-4"><div class="sl-flex sl-items-center sl-justify-between sl-mb-3"><div class="sl-h-4 sl-bg-gray-200 sl-rounded sl-w-1/2"></div><div class="sl-h-8 sl-bg-gray-200 sl-rounded-full sl-w-8"></div></div><div class="sl-space-y-2"><div class="sl-h-3 sl-bg-gray-200 sl-rounded sl-w-full"></div><div class="sl-h-3 sl-bg-gray-200 sl-rounded sl-w-3/4"></div></div></div>', 1)
|
|
156
|
+
j('<div class="sl-bg-white dark:sl-bg-slate-800 sl-rounded-lg sl-shadow dark:sl-shadow-slate-900/50 sl-p-4"><div class="sl-flex sl-items-center sl-justify-between sl-mb-3"><div class="sl-h-4 sl-bg-gray-200 dark:sl-bg-slate-700 sl-rounded sl-w-1/2"></div><div class="sl-h-8 sl-bg-gray-200 dark:sl-bg-slate-700 sl-rounded-full sl-w-8"></div></div><div class="sl-space-y-2"><div class="sl-h-3 sl-bg-gray-200 dark:sl-bg-slate-700 sl-rounded sl-w-full"></div><div class="sl-h-3 sl-bg-gray-200 dark:sl-bg-slate-700 sl-rounded sl-w-3/4"></div></div></div>', 1)
|
|
157
157
|
]))), 64))
|
|
158
158
|
])
|
|
159
159
|
])) : r("", !0),
|
|
@@ -165,12 +165,12 @@ const T = { class: "sl-px-4 sm:sl-px-6 lg:sl-px-8" }, q = { class: "sm:sl-flex s
|
|
|
165
165
|
l("table", as, [
|
|
166
166
|
l("thead", cs, [
|
|
167
167
|
l("tr", null, [
|
|
168
|
-
(i(!0), n(a, null, c(
|
|
168
|
+
(i(!0), n(a, null, c(m(p).getHeaderGroups()[0].headers, (t) => (i(), n("th", {
|
|
169
169
|
key: t.id,
|
|
170
170
|
scope: "col",
|
|
171
|
-
class: "sl-px-3 sl-py-3.5 sl-text-left sl-text-sm sl-font-semibold sl-text-gray-900"
|
|
171
|
+
class: "sl-px-3 sl-py-3.5 sl-text-left sl-text-sm sl-font-semibold sl-text-gray-900 dark:sl-text-white"
|
|
172
172
|
}, [
|
|
173
|
-
|
|
173
|
+
x(m(w), {
|
|
174
174
|
render: t.column.columnDef.header,
|
|
175
175
|
props: t.getContext()
|
|
176
176
|
}, null, 8, ["render", "props"])
|
|
@@ -178,21 +178,22 @@ const T = { class: "sl-px-4 sm:sl-px-6 lg:sl-px-8" }, q = { class: "sm:sl-flex s
|
|
|
178
178
|
s.$slots["row:actions"] ? (i(), n("th", us)) : r("", !0)
|
|
179
179
|
])
|
|
180
180
|
]),
|
|
181
|
-
l("tbody",
|
|
182
|
-
(i(!0), n(a, null, c(
|
|
183
|
-
key: t.id
|
|
181
|
+
l("tbody", gs, [
|
|
182
|
+
(i(!0), n(a, null, c(m(p).getRowModel().rows, (t) => (i(), n("tr", {
|
|
183
|
+
key: t.id,
|
|
184
|
+
class: "hover:sl-bg-gray-50 dark:hover:sl-bg-slate-800"
|
|
184
185
|
}, [
|
|
185
186
|
(i(!0), n(a, null, c(t.getVisibleCells(), (o) => (i(), n("td", {
|
|
186
187
|
key: o.id,
|
|
187
|
-
class: "sl-whitespace-nowrap sl-px-3 sl-py-4 sl-text-sm sl-text-gray-500"
|
|
188
|
+
class: "sl-whitespace-nowrap sl-px-3 sl-py-4 sl-text-sm sl-text-gray-500 dark:sl-text-slate-300"
|
|
188
189
|
}, [
|
|
189
|
-
|
|
190
|
+
x(m(w), {
|
|
190
191
|
render: o.column.columnDef.cell,
|
|
191
192
|
props: o.getContext()
|
|
192
193
|
}, null, 8, ["render", "props"])
|
|
193
194
|
]))), 128)),
|
|
194
|
-
s.$slots["row:actions"] ? (i(), n("td",
|
|
195
|
-
|
|
195
|
+
s.$slots["row:actions"] ? (i(), n("td", ms, [
|
|
196
|
+
g(s.$slots, "row:actions", { row: t })
|
|
196
197
|
])) : r("", !0)
|
|
197
198
|
]))), 128))
|
|
198
199
|
])
|
|
@@ -206,6 +207,6 @@ const T = { class: "sl-px-4 sm:sl-px-6 lg:sl-px-8" }, q = { class: "sm:sl-flex s
|
|
|
206
207
|
}
|
|
207
208
|
});
|
|
208
209
|
export {
|
|
209
|
-
|
|
210
|
+
ps as _
|
|
210
211
|
};
|
|
211
|
-
//# sourceMappingURL=UiTable.vue_vue_type_script_setup_true_lang-
|
|
212
|
+
//# sourceMappingURL=UiTable.vue_vue_type_script_setup_true_lang-BuOCaPzi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UiTable.vue_vue_type_script_setup_true_lang-BuOCaPzi.js","sources":["../src/components/UiTable.vue"],"sourcesContent":["<template>\n <div class=\"sl-px-4 sm:sl-px-6 lg:sl-px-8\">\n <div class=\"sm:sl-flex sm:sl-items-center\">\n <div class=\"sm:sl-flex-auto\">\n <h1 v-if=\"$slots.title\" class=\"sl-text-base sl-font-semibold sl-leading-6 sl-text-gray-800 dark:sl-text-white\">\n <slot name=\"title\" />\n </h1>\n <p v-if=\"$slots.description\" class=\"sl-mt-2 sl-text-sm sl-text-gray-700 dark:sl-text-slate-300\">\n <slot name=\"description\" />\n </p>\n </div>\n <div v-if=\"$slots.right\" class=\"sl-mt-4 sm:sl-ml-16 sm:sl-mt-0 sm:sl-flex-none\">\n <slot name=\"right\" />\n </div>\n </div>\n\n <!-- Mobile cards -->\n <div class=\"md:sl-hidden\" v-if=\"!isLoading\">\n <div class=\"sl-mt-6 sl-space-y-4\">\n <div v-for=\"row in table.getRowModel().rows\" :key=\"row.id\" class=\"sl-bg-white dark:sl-bg-slate-800 sl-rounded-lg sl-shadow dark:sl-shadow-slate-900/50 sl-p-4\">\n <div class=\"sl-flex sl-items-start sl-justify-between\">\n <div class=\"sl-text-sm sl-font-medium sl-text-gray-900 dark:sl-text-white\">\n {{ getColumnValue(getTitleCell(row)) }}\n </div>\n <div class=\"sl-ml-4 sl-shrink-0\">\n <slot name=\"row:actions\" :row=\"row\" />\n </div>\n </div>\n <div class=\"sl-mt-3 sl-grid sl-grid-cols-1 sl-gap-2\">\n <div v-for=\"cell in getPrimaryCells(row)\" :key=\"cell.id\" class=\"sl-text-sm sl-text-gray-700 dark:sl-text-slate-300\">\n <span class=\"sl-font-medium sl-text-gray-900 dark:sl-text-white\">{{ getColumnHeader(cell) }}:</span>\n <span class=\"sl-ml-1\">{{ getColumnValue(cell) }}</span>\n </div>\n </div>\n <div class=\"sl-mt-3\" v-if=\"getSecondaryCells(row).length\">\n <details class=\"sl-group\">\n <summary class=\"sl-cursor-pointer sl-text-sm sl-text-gray-700 dark:sl-text-slate-300 sl-select-none\">More</summary>\n <div class=\"sl-mt-2\">\n <dl class=\"sl-divide-y sl-divide-gray-100 dark:sl-divide-slate-700\">\n <div v-for=\"cell in getSecondaryCells(row)\" :key=\"cell.id\" class=\"sl-py-2 sl-grid sl-grid-cols-3 sl-gap-4\">\n <dt class=\"sl-text-sm sl-font-medium sl-text-gray-900 dark:sl-text-white sl-col-span-1\">{{ getColumnHeader(cell) }}</dt>\n <dd class=\"sl-mt-1 sl-text-sm sl-text-gray-700 dark:sl-text-slate-300 sl-col-span-2\">{{ getColumnValue(cell) }}</dd>\n </div>\n </dl>\n </div>\n </details>\n </div>\n </div>\n </div>\n </div>\n\n <!-- Mobile loading -->\n <div v-if=\"isLoading\" class=\"md:sl-hidden sl-mt-6\">\n <div class=\"sl-space-y-4\">\n <div v-for=\"i in 3\" :key=\"i\" class=\"sl-animate-pulse\">\n <div class=\"sl-bg-white dark:sl-bg-slate-800 sl-rounded-lg sl-shadow dark:sl-shadow-slate-900/50 sl-p-4\">\n <div class=\"sl-flex sl-items-center sl-justify-between sl-mb-3\">\n <div class=\"sl-h-4 sl-bg-gray-200 dark:sl-bg-slate-700 sl-rounded sl-w-1/2\"></div>\n <div class=\"sl-h-8 sl-bg-gray-200 dark:sl-bg-slate-700 sl-rounded-full sl-w-8\"></div>\n </div>\n <div class=\"sl-space-y-2\">\n <div class=\"sl-h-3 sl-bg-gray-200 dark:sl-bg-slate-700 sl-rounded sl-w-full\"></div>\n <div class=\"sl-h-3 sl-bg-gray-200 dark:sl-bg-slate-700 sl-rounded sl-w-3/4\"></div>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <!-- Desktop table -->\n <div class=\"sl-hidden md:sl-block\">\n <div class=\"sl-mt-8 sl-flow-root\">\n <div class=\"sl--my-2 sl--mx-4 sl-overflow-x-auto sm:sl--mx-6 lg:sl--mx-8\">\n <div class=\"sl-inline-block sl-min-w-full sl-py-2 sl-align-middle md:sl-px-6 lg:sl-px-8\">\n <div class=\"sl-overflow-hidden sl-shadow dark:sl-shadow-slate-900/50 sl-ring-1 sl-ring-black sl-ring-opacity-5 dark:sl-ring-slate-700 md:sl-rounded-lg\">\n <table class=\"sl-min-w-full sl-divide-y sl-divide-gray-300 dark:sl-divide-slate-700\">\n <thead class=\"sl-bg-gray-50 dark:sl-bg-slate-800\">\n <tr>\n <th v-for=\"header in table.getHeaderGroups()[0].headers\" :key=\"header.id\"\n scope=\"col\" class=\"sl-px-3 sl-py-3.5 sl-text-left sl-text-sm sl-font-semibold sl-text-gray-900 dark:sl-text-white\">\n <FlexRender :render=\"header.column.columnDef.header\" :props=\"header.getContext()\" />\n </th>\n <th v-if=\"$slots['row:actions']\" class=\"sl-px-3 sl-py-3.5\"></th>\n </tr>\n </thead>\n <tbody class=\"sl-divide-y sl-divide-gray-200 dark:sl-divide-slate-700 sl-bg-white dark:sl-bg-slate-900\">\n <tr v-for=\"row in table.getRowModel().rows\" :key=\"row.id\" class=\"hover:sl-bg-gray-50 dark:hover:sl-bg-slate-800\">\n <td v-for=\"cell in row.getVisibleCells()\" :key=\"cell.id\" class=\"sl-whitespace-nowrap sl-px-3 sl-py-4 sl-text-sm sl-text-gray-500 dark:sl-text-slate-300\">\n <FlexRender :render=\"cell.column.columnDef.cell\" :props=\"cell.getContext()\" />\n </td>\n <td v-if=\"$slots['row:actions']\" class=\"sl-whitespace-nowrap sl-px-3 sl-py-4 sl-text-sm sl-text-right\">\n <slot name=\"row:actions\" :row=\"row\" />\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, ref } from 'vue';\nimport type { PropType } from 'vue';\nimport { FlexRender, getCoreRowModel, useVueTable } from '@tanstack/vue-table';\nimport { getSortedRowModel } from '@tanstack/table-core';\nimport type { TableOptions, Updater, Row, Cell, SortingState } from '@tanstack/vue-table';\n\n\nconst props = defineProps({\n data: { type: Array as PropType<any[]>, required: true },\n columns: { type: Array as PropType<any[]>, required: true },\n truncate: { type: Array as PropType<{ column: string, length: number, link?: string }[]>, default: () => [] },\n isLoading: { type: Boolean, default: false },\n mobileConfig: {\n type: Object as PropType<{ titleColumn?: string; primaryColumns?: string[]; secondaryColumns?: string[]; expandableColumns?: string[]; maxPrimaryColumns?: number }>,\n default: () => ({})\n }\n});\n\n\nconst sorting = ref<SortingState>([]);\n\nconst tableColumns = computed(() => {\n return props.columns.map((col: any) => {\n const truncateConfig = props.truncate.find(t => t.column === col.accessorKey);\n if (truncateConfig) {\n return {\n ...col,\n cell: (info: any) => {\n const value = info.getValue() as string;\n if (value && value.length > truncateConfig.length) {\n return `${value.substring(0, truncateConfig.length)}...`;\n }\n return value;\n }\n }\n }\n return col;\n });\n});\n\nconst tableOptions: TableOptions<any> = {\n get data() { return props.data; },\n get columns() { return tableColumns.value; },\n getCoreRowModel: getCoreRowModel(),\n enableColumnResizing: true,\n columnResizeMode: 'onChange',\n getSortedRowModel: getSortedRowModel(),\n state: {\n get sorting() {\n return sorting.value;\n },\n },\n onSortingChange: (updaterOrValue: Updater<SortingState>) => {\n sorting.value = typeof updaterOrValue === 'function' ? updaterOrValue(sorting.value) : updaterOrValue;\n },\n defaultColumn: { enableSorting: true },\n};\n\nconst table = useVueTable(tableOptions);\n\nconst getTitleCell = (row: Row<any>): Cell<any, unknown> | null => {\n if (!row) return null;\n const visibleCells = row.getVisibleCells() || [];\n const config = props.mobileConfig || {};\n if (config.titleColumn) {\n return visibleCells.find(cell => cell.column.id === config.titleColumn) || null;\n }\n const titlePatterns = ['name', 'title', 'embedCode'];\n for (const pattern of titlePatterns) {\n const cell = visibleCells.find(cell => cell.column.id.toLowerCase().includes(pattern.toLowerCase()));\n if (cell) return cell;\n }\n return visibleCells[0] || null;\n};\n\nconst getColumnHeader = (cell: Cell<any, unknown>): string => {\n if (!cell) return '';\n const header = cell.column.columnDef.header;\n if (typeof header === 'string') return header;\n return cell.column.id;\n};\n\nconst getColumnValue = (cell: Cell<any, unknown> | null): any => {\n if (!cell) return '';\n const value = cell.getValue?.();\n return typeof value === 'object' ? JSON.stringify(value) : value;\n};\n\nconst getPrimaryCells = (row: Row<any>): Cell<any, unknown>[] => {\n const visibleCells = row.getVisibleCells() || [];\n const config = props.mobileConfig || {};\n const ids = config.primaryColumns || [];\n if (ids.length) return visibleCells.filter(c => ids.includes(c.column.id));\n return visibleCells.slice(0, Math.min(3, visibleCells.length));\n};\n\nconst getSecondaryCells = (row: Row<any>): Cell<any, unknown>[] => {\n const visibleCells = row.getVisibleCells() || [];\n const config = props.mobileConfig || {};\n const ids = config.secondaryColumns || [];\n if (ids.length) return visibleCells.filter(c => ids.includes(c.column.id));\n return visibleCells.slice(3);\n};\n</script>\n\n<style scoped>\n</style>\n\n\n"],"names":["props","__props","sorting","ref","tableColumns","computed","col","truncateConfig","info","value","tableOptions","getCoreRowModel","getSortedRowModel","updaterOrValue","table","useVueTable","getTitleCell","row","visibleCells","config","cell","titlePatterns","pattern","getColumnHeader","header","getColumnValue","getPrimaryCells","ids","c","getSecondaryCells","_openBlock","_createElementBlock","_hoisted_1","_createElementVNode","_hoisted_2","_hoisted_3","$slots","_hoisted_4","_renderSlot","_ctx","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_Fragment","_unref","_hoisted_9","_hoisted_10","_toDisplayString","_hoisted_11","_hoisted_12","_renderList","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_cache","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_22","i","_hoisted_23","_hoisted_24","_hoisted_25","_hoisted_26","_hoisted_27","_hoisted_28","_hoisted_29","_createVNode","FlexRender","_hoisted_30","_hoisted_31","_hoisted_32"],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { createElementBlock as e, openBlock as o, createElementVNode as r } from "vue";
|
|
2
|
+
function c(t, n) {
|
|
3
|
+
return o(), e("svg", {
|
|
4
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
5
|
+
fill: "none",
|
|
6
|
+
viewBox: "0 0 24 24",
|
|
7
|
+
"stroke-width": "1.5",
|
|
8
|
+
stroke: "currentColor",
|
|
9
|
+
"aria-hidden": "true",
|
|
10
|
+
"data-slot": "icon"
|
|
11
|
+
}, [
|
|
12
|
+
r("path", {
|
|
13
|
+
"stroke-linecap": "round",
|
|
14
|
+
"stroke-linejoin": "round",
|
|
15
|
+
d: "M6 18 18 6M6 6l12 12"
|
|
16
|
+
})
|
|
17
|
+
]);
|
|
18
|
+
}
|
|
19
|
+
export {
|
|
20
|
+
c as r
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=XMarkIcon-Cwy3T6p8.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"XMarkIcon-Cwy3T6p8.js","sources":["../node_modules/@heroicons/vue/24/outline/esm/XMarkIcon.js"],"sourcesContent":["import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nexport default function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n \"stroke-width\": \"1.5\",\n stroke: \"currentColor\",\n \"aria-hidden\": \"true\",\n \"data-slot\": \"icon\"\n }, [\n _createElementVNode(\"path\", {\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\",\n d: \"M6 18 18 6M6 6l12 12\"\n })\n ]))\n}"],"names":["render","_ctx","_cache","_openBlock","_createElementBlock","_createElementVNode"],"mappings":";AAEe,SAASA,EAAOC,GAAMC,GAAQ;AAC3C,SAAQC,EAAU,GAAIC,EAAoB,OAAO;AAAA,IAC/C,OAAO;AAAA,IACP,MAAM;AAAA,IACN,SAAS;AAAA,IACT,gBAAgB;AAAA,IAChB,QAAQ;AAAA,IACR,eAAe;AAAA,IACf,aAAa;AAAA,EACjB,GAAK;AAAA,IACDC,EAAoB,QAAQ;AAAA,MAC1B,kBAAkB;AAAA,MAClB,mBAAmB;AAAA,MACnB,GAAG;AAAA,IACT,CAAK;AAAA,EACL,CAAG;AACH;","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { createElementBlock as e, openBlock as r, createElementVNode as t } from "vue";
|
|
2
|
+
function n(o, a) {
|
|
3
|
+
return r(), e("svg", {
|
|
4
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
5
|
+
viewBox: "0 0 20 20",
|
|
6
|
+
fill: "currentColor",
|
|
7
|
+
"aria-hidden": "true",
|
|
8
|
+
"data-slot": "icon"
|
|
9
|
+
}, [
|
|
10
|
+
t("path", { d: "M6.28 5.22a.75.75 0 0 0-1.06 1.06L8.94 10l-3.72 3.72a.75.75 0 1 0 1.06 1.06L10 11.06l3.72 3.72a.75.75 0 1 0 1.06-1.06L11.06 10l3.72-3.72a.75.75 0 0 0-1.06-1.06L10 8.94 6.28 5.22Z" })
|
|
11
|
+
]);
|
|
12
|
+
}
|
|
13
|
+
export {
|
|
14
|
+
n as r
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=XMarkIcon-DNvCkiOy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"XMarkIcon-DNvCkiOy.js","sources":["../node_modules/@heroicons/vue/20/solid/esm/XMarkIcon.js"],"sourcesContent":["import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nexport default function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 20 20\",\n fill: \"currentColor\",\n \"aria-hidden\": \"true\",\n \"data-slot\": \"icon\"\n }, [\n _createElementVNode(\"path\", { d: \"M6.28 5.22a.75.75 0 0 0-1.06 1.06L8.94 10l-3.72 3.72a.75.75 0 1 0 1.06 1.06L10 11.06l3.72 3.72a.75.75 0 1 0 1.06-1.06L11.06 10l3.72-3.72a.75.75 0 0 0-1.06-1.06L10 8.94 6.28 5.22Z\" })\n ]))\n}"],"names":["render","_ctx","_cache","_openBlock","_createElementBlock","_createElementVNode"],"mappings":";AAEe,SAASA,EAAOC,GAAMC,GAAQ;AAC3C,SAAQC,EAAU,GAAIC,EAAoB,OAAO;AAAA,IAC/C,OAAO;AAAA,IACP,SAAS;AAAA,IACT,MAAM;AAAA,IACN,eAAe;AAAA,IACf,aAAa;AAAA,EACjB,GAAK;AAAA,IACDC,EAAoB,QAAQ,EAAE,GAAG,qLAAoL,CAAE;AAAA,EAC3N,CAAG;AACH;","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { defineComponent as f, computed as C, createElementBlock as r, openBlock as n, Fragment as g, renderList as u, createElementVNode as a, createCommentVNode as v, toDisplayString as c, normalizeClass as S } from "vue";
|
|
2
|
+
const w = { class: "sl-grid sl-grid-cols-1 md:sl-grid-cols-2 lg:sl-grid-cols-3 sl-gap-6" }, D = ["onClick"], M = { class: "sl-text-sm sl-font-semibold sl-text-gray-800 dark:sl-text-slate-200" }, T = { class: "sl-px-2 sl-pt-2" }, F = { class: "sl-grid sl-grid-cols-7 sl-gap-0 sl-text-center sl-text-[10px] sl-font-medium sl-text-gray-500 dark:sl-text-slate-400 sl-mb-1" }, O = { class: "sl-grid sl-grid-cols-7 sl-gap-0" }, E = ["onClick"], J = {
|
|
3
|
+
key: 0,
|
|
4
|
+
class: "sl-absolute sl-bottom-0.5 sl-left-1/2 sl--translate-x-1/2 sl-w-1 sl-h-1 sl-rounded-full sl-bg-stachelock-600 dark:sl-bg-stachelock-400"
|
|
5
|
+
}, N = {
|
|
6
|
+
key: 0,
|
|
7
|
+
class: "sl-px-4 sl-py-2 sl-border-t sl-border-gray-100 dark:sl-border-slate-700 sl-bg-gray-50 dark:sl-bg-slate-800"
|
|
8
|
+
}, A = { class: "sl-text-[11px] sl-text-gray-500 dark:sl-text-slate-400" }, W = /* @__PURE__ */ f({
|
|
9
|
+
__name: "YearCalendar",
|
|
10
|
+
props: {
|
|
11
|
+
months: {},
|
|
12
|
+
events: { default: () => [] },
|
|
13
|
+
weekStartsOn: { default: 0 }
|
|
14
|
+
},
|
|
15
|
+
emits: ["selectMonth", "selectDay"],
|
|
16
|
+
setup(k, { emit: m }) {
|
|
17
|
+
const o = k, h = m, p = [
|
|
18
|
+
"January",
|
|
19
|
+
"February",
|
|
20
|
+
"March",
|
|
21
|
+
"April",
|
|
22
|
+
"May",
|
|
23
|
+
"June",
|
|
24
|
+
"July",
|
|
25
|
+
"August",
|
|
26
|
+
"September",
|
|
27
|
+
"October",
|
|
28
|
+
"November",
|
|
29
|
+
"December"
|
|
30
|
+
], _ = C(() => {
|
|
31
|
+
const s = ["S", "M", "T", "W", "T", "F", "S"], l = ["M", "T", "W", "T", "F", "S", "S"];
|
|
32
|
+
return o.weekStartsOn === 1 ? l : s;
|
|
33
|
+
}), b = (s) => s.events && s.events.length > 0 ? !0 : !o.events || o.events.length === 0 ? !1 : o.events.some((l) => new Date(l.datetime || l.start_time || "").toISOString().split("T")[0] === s.date), d = (s) => {
|
|
34
|
+
let l = 0;
|
|
35
|
+
return s.days.forEach((t) => {
|
|
36
|
+
t.isCurrentMonth && (t.events && t.events.length > 0 ? l += t.events.length : o.events && o.events.length > 0 && (l += o.events.filter((i) => new Date(i.datetime || i.start_time || "").toISOString().split("T")[0] === t.date).length));
|
|
37
|
+
}), l;
|
|
38
|
+
}, x = (s) => {
|
|
39
|
+
h("selectMonth", s);
|
|
40
|
+
}, y = (s) => {
|
|
41
|
+
h("selectDay", s);
|
|
42
|
+
};
|
|
43
|
+
return (s, l) => (n(), r("div", w, [
|
|
44
|
+
(n(!0), r(g, null, u(s.months, (t, i) => (n(), r("div", {
|
|
45
|
+
key: t.name,
|
|
46
|
+
class: "sl-bg-white dark:sl-bg-slate-900 sl-rounded-xl sl-shadow-sm sl-border sl-border-gray-200 dark:sl-border-slate-700 sl-overflow-hidden hover:sl-shadow-md sl-transition-shadow"
|
|
47
|
+
}, [
|
|
48
|
+
a("div", {
|
|
49
|
+
class: "sl-px-4 sl-py-3 sl-border-b sl-border-gray-100 dark:sl-border-slate-700 sl-bg-gray-50 dark:sl-bg-slate-800 sl-cursor-pointer hover:sl-bg-gray-100 dark:hover:sl-bg-slate-700 sl-transition-colors",
|
|
50
|
+
onClick: (e) => x(i)
|
|
51
|
+
}, [
|
|
52
|
+
a("h3", M, c(p[i]), 1)
|
|
53
|
+
], 8, D),
|
|
54
|
+
a("div", T, [
|
|
55
|
+
a("div", F, [
|
|
56
|
+
(n(!0), r(g, null, u(_.value, (e) => (n(), r("div", {
|
|
57
|
+
key: e,
|
|
58
|
+
class: "sl-py-1"
|
|
59
|
+
}, c(e), 1))), 128))
|
|
60
|
+
]),
|
|
61
|
+
a("div", O, [
|
|
62
|
+
(n(!0), r(g, null, u(t.days, (e) => (n(), r("button", {
|
|
63
|
+
key: e.date,
|
|
64
|
+
type: "button",
|
|
65
|
+
class: S([
|
|
66
|
+
"sl-relative sl-aspect-square sl-flex sl-items-center sl-justify-center sl-text-xs sl-rounded-md sl-transition-colors",
|
|
67
|
+
e.isCurrentMonth ? "sl-text-gray-800 dark:sl-text-slate-200 hover:sl-bg-gray-100 dark:hover:sl-bg-slate-700" : "sl-text-gray-300 dark:sl-text-slate-600",
|
|
68
|
+
e.isToday && "sl-bg-stachelock-600 sl-text-white hover:sl-bg-stachelock-700",
|
|
69
|
+
e.isSelected && !e.isToday && "sl-bg-gray-900 dark:sl-bg-slate-200 sl-text-white dark:sl-text-slate-900",
|
|
70
|
+
b(e) && !e.isToday && "sl-font-semibold"
|
|
71
|
+
]),
|
|
72
|
+
onClick: (B) => y(e)
|
|
73
|
+
}, [
|
|
74
|
+
a("span", null, c(e.day), 1),
|
|
75
|
+
b(e) && !e.isToday ? (n(), r("span", J)) : v("", !0)
|
|
76
|
+
], 10, E))), 128))
|
|
77
|
+
])
|
|
78
|
+
]),
|
|
79
|
+
d(t) > 0 ? (n(), r("div", N, [
|
|
80
|
+
a("span", A, c(d(t)) + " event" + c(d(t) === 1 ? "" : "s"), 1)
|
|
81
|
+
])) : v("", !0)
|
|
82
|
+
]))), 128))
|
|
83
|
+
]));
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
export {
|
|
87
|
+
W as _
|
|
88
|
+
};
|
|
89
|
+
//# sourceMappingURL=YearCalendar.vue_vue_type_script_setup_true_lang-C01PTLg8.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"YearCalendar.vue_vue_type_script_setup_true_lang-C01PTLg8.js","sources":["../src/components/calendars/YearCalendar.vue"],"sourcesContent":["<!--\n @component YearCalendar\n @description Year overview calendar showing all 12 months.\n \n Features:\n - 12-month grid layout (3x4 on desktop, 2x6 on tablet, 1x12 on mobile)\n - Month cards with clickable days\n - Today highlighting\n - Event indicators\n - Month/day click handlers\n - Week starts on configurable day\n \n @example\n <YearCalendar\n :months=\"yearMonths\"\n @selectMonth=\"handleMonthSelect\"\n @selectDay=\"handleDaySelect\"\n />\n-->\n<template>\n <div class=\"sl-grid sl-grid-cols-1 md:sl-grid-cols-2 lg:sl-grid-cols-3 sl-gap-6\">\n <div \n v-for=\"(month, monthIndex) in months\" \n :key=\"month.name\" \n class=\"sl-bg-white dark:sl-bg-slate-900 sl-rounded-xl sl-shadow-sm sl-border sl-border-gray-200 dark:sl-border-slate-700 sl-overflow-hidden hover:sl-shadow-md sl-transition-shadow\"\n >\n <!-- Month header -->\n <div \n class=\"sl-px-4 sl-py-3 sl-border-b sl-border-gray-100 dark:sl-border-slate-700 sl-bg-gray-50 dark:sl-bg-slate-800 sl-cursor-pointer hover:sl-bg-gray-100 dark:hover:sl-bg-slate-700 sl-transition-colors\"\n @click=\"handleMonthClick(monthIndex)\"\n >\n <h3 class=\"sl-text-sm sl-font-semibold sl-text-gray-800 dark:sl-text-slate-200\">{{ monthNames[monthIndex] }}</h3>\n </div>\n \n <!-- Day headers -->\n <div class=\"sl-px-2 sl-pt-2\">\n <div class=\"sl-grid sl-grid-cols-7 sl-gap-0 sl-text-center sl-text-[10px] sl-font-medium sl-text-gray-500 dark:sl-text-slate-400 sl-mb-1\">\n <div v-for=\"dayName in dayHeaders\" :key=\"dayName\" class=\"sl-py-1\">{{ dayName }}</div>\n </div>\n \n <!-- Calendar grid -->\n <div class=\"sl-grid sl-grid-cols-7 sl-gap-0\">\n <button\n v-for=\"day in month.days\" \n :key=\"day.date\"\n type=\"button\"\n :class=\"[\n 'sl-relative sl-aspect-square sl-flex sl-items-center sl-justify-center sl-text-xs sl-rounded-md sl-transition-colors',\n day.isCurrentMonth \n ? 'sl-text-gray-800 dark:sl-text-slate-200 hover:sl-bg-gray-100 dark:hover:sl-bg-slate-700' \n : 'sl-text-gray-300 dark:sl-text-slate-600',\n day.isToday && 'sl-bg-stachelock-600 sl-text-white hover:sl-bg-stachelock-700',\n day.isSelected && !day.isToday && 'sl-bg-gray-900 dark:sl-bg-slate-200 sl-text-white dark:sl-text-slate-900',\n hasEventsOnDay(day) && !day.isToday && 'sl-font-semibold'\n ]\"\n @click=\"handleDayClick(day)\"\n >\n <span>{{ day.day }}</span>\n <!-- Event indicator dot -->\n <span \n v-if=\"hasEventsOnDay(day) && !day.isToday\" \n class=\"sl-absolute sl-bottom-0.5 sl-left-1/2 sl--translate-x-1/2 sl-w-1 sl-h-1 sl-rounded-full sl-bg-stachelock-600 dark:sl-bg-stachelock-400\"\n />\n </button>\n </div>\n </div>\n \n <!-- Month footer with event count -->\n <div \n v-if=\"getEventCountForMonth(month) > 0\"\n class=\"sl-px-4 sl-py-2 sl-border-t sl-border-gray-100 dark:sl-border-slate-700 sl-bg-gray-50 dark:sl-bg-slate-800\"\n >\n <span class=\"sl-text-[11px] sl-text-gray-500 dark:sl-text-slate-400\">\n {{ getEventCountForMonth(month) }} event{{ getEventCountForMonth(month) === 1 ? '' : 's' }}\n </span>\n </div>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed } from 'vue';\nimport type { Month, CalendarDay } from '@/utils/calendar';\n\ninterface Props {\n /** Array of months with their days */\n months: Month[];\n /** Array of all events (optional) */\n events?: Array<{ id: string | number; datetime: string; start_time?: string }>;\n /** Week starts on: 0 = Sunday, 1 = Monday */\n weekStartsOn?: 0 | 1;\n}\n\nconst props = withDefaults(defineProps<Props>(), {\n events: () => [],\n weekStartsOn: 0,\n});\n\nconst emit = defineEmits<{\n (e: 'selectMonth', monthIndex: number): void;\n (e: 'selectDay', day: CalendarDay): void;\n}>();\n\n// Month names\nconst monthNames = [\n 'January', 'February', 'March', 'April', 'May', 'June',\n 'July', 'August', 'September', 'October', 'November', 'December'\n];\n\n// Day headers based on week start\nconst dayHeaders = computed(() => {\n const sundayFirst = ['S', 'M', 'T', 'W', 'T', 'F', 'S'];\n const mondayFirst = ['M', 'T', 'W', 'T', 'F', 'S', 'S'];\n return props.weekStartsOn === 1 ? mondayFirst : sundayFirst;\n});\n\n// Check if a day has events\nconst hasEventsOnDay = (day: CalendarDay): boolean => {\n if (day.events && day.events.length > 0) return true;\n \n if (!props.events || props.events.length === 0) return false;\n \n return props.events.some(event => {\n const eventDate = new Date(event.datetime || event.start_time || '').toISOString().split('T')[0];\n return eventDate === day.date;\n });\n};\n\n// Get event count for a month\nconst getEventCountForMonth = (month: Month): number => {\n let count = 0;\n \n month.days.forEach(day => {\n if (day.isCurrentMonth) {\n if (day.events && day.events.length > 0) {\n count += day.events.length;\n } else if (props.events && props.events.length > 0) {\n count += props.events.filter(event => {\n const eventDate = new Date(event.datetime || event.start_time || '').toISOString().split('T')[0];\n return eventDate === day.date;\n }).length;\n }\n }\n });\n \n return count;\n};\n\n// Click handlers\nconst handleMonthClick = (monthIndex: number) => {\n emit('selectMonth', monthIndex);\n};\n\nconst handleDayClick = (day: CalendarDay) => {\n emit('selectDay', day);\n};\n</script>\n\n<style scoped>\n</style>\n"],"names":["props","__props","emit","__emit","monthNames","dayHeaders","computed","sundayFirst","mondayFirst","hasEventsOnDay","day","event","getEventCountForMonth","month","count","handleMonthClick","monthIndex","handleDayClick","_openBlock","_createElementBlock","_hoisted_1","_Fragment","_renderList","months","_createElementVNode","$event","_hoisted_3","_toDisplayString","_hoisted_4","_hoisted_5","dayName","_hoisted_6","_normalizeClass","_hoisted_8","_hoisted_9","_hoisted_10"],"mappings":"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"}
|