@stachelock/ui 0.3.1 → 0.5.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/{AlertModal.vue_vue_type_script_setup_true_lang-CxwewAVy.js → AlertModal.vue_vue_type_script_setup_true_lang-C6q8Mpl4.js} +2 -2
- package/dist/{AlertModal.vue_vue_type_script_setup_true_lang-CxwewAVy.js.map → AlertModal.vue_vue_type_script_setup_true_lang-C6q8Mpl4.js.map} +1 -1
- package/dist/{BackgroundGradientWrapper.vue_vue_type_script_setup_true_lang-B570pdYL.js → BackgroundGradientWrapper.vue_vue_type_script_setup_true_lang-C8msTrTn.js} +6 -6
- package/dist/{BackgroundGradientWrapper.vue_vue_type_script_setup_true_lang-B570pdYL.js.map → BackgroundGradientWrapper.vue_vue_type_script_setup_true_lang-C8msTrTn.js.map} +1 -1
- package/dist/{BarChart.vue_vue_type_script_setup_true_lang-Dnuzd7vZ.js → BarChart.vue_vue_type_script_setup_true_lang-xCb0DCbf.js} +19 -19
- package/dist/{BarChart.vue_vue_type_script_setup_true_lang-Dnuzd7vZ.js.map → BarChart.vue_vue_type_script_setup_true_lang-xCb0DCbf.js.map} +1 -1
- package/dist/{BaseModal.vue_vue_type_script_setup_true_lang-Cr_GAD6Q.js → BaseModal.vue_vue_type_script_setup_true_lang-B67Pt3tW.js} +5 -6
- package/dist/{BaseModal.vue_vue_type_script_setup_true_lang-Cr_GAD6Q.js.map → BaseModal.vue_vue_type_script_setup_true_lang-B67Pt3tW.js.map} +1 -1
- package/dist/{CalendarHeader.vue_vue_type_script_setup_true_lang-DRwe4rw8.js → CalendarHeader.vue_vue_type_script_setup_true_lang-CkSUiLOH.js} +109 -108
- package/dist/CalendarHeader.vue_vue_type_script_setup_true_lang-CkSUiLOH.js.map +1 -0
- package/dist/CheckboxInput.vue_vue_type_script_setup_true_lang-BikR9rgi.js +187 -0
- package/dist/{CheckboxInput.vue_vue_type_script_setup_true_lang-B8wJVkPP.js.map → CheckboxInput.vue_vue_type_script_setup_true_lang-BikR9rgi.js.map} +1 -1
- package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-kEj-NYqm.js +1362 -0
- package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-kEj-NYqm.js.map +1 -0
- package/dist/{ComingSoon.vue_vue_type_script_setup_true_lang-C5GU-yiK.js → ComingSoon.vue_vue_type_script_setup_true_lang-CJ8FXE42.js} +19 -19
- package/dist/{ComingSoon.vue_vue_type_script_setup_true_lang-C5GU-yiK.js.map → ComingSoon.vue_vue_type_script_setup_true_lang-CJ8FXE42.js.map} +1 -1
- package/dist/{DashboardLayout.vue_vue_type_script_setup_true_lang-DV-XVWqh.js → DashboardLayout.vue_vue_type_script_setup_true_lang-B0M6-9os.js} +7 -8
- package/dist/{DashboardLayout.vue_vue_type_script_setup_true_lang-DV-XVWqh.js.map → DashboardLayout.vue_vue_type_script_setup_true_lang-B0M6-9os.js.map} +1 -1
- package/dist/DatepickerInput.vue_vue_type_style_index_0_lang-BdkGLw0H.js.map +1 -1
- package/dist/{DayCalendar.vue_vue_type_script_setup_true_lang-BV9vYYuX.js → DayCalendar.vue_vue_type_script_setup_true_lang-8al4Fotu.js} +47 -47
- package/dist/{DayCalendar.vue_vue_type_script_setup_true_lang-BV9vYYuX.js.map → DayCalendar.vue_vue_type_script_setup_true_lang-8al4Fotu.js.map} +1 -1
- package/dist/{DisclosureWrapper.vue_vue_type_script_setup_true_lang-B-Mr_vdx.js → DisclosureWrapper.vue_vue_type_script_setup_true_lang-C7y2bNhW.js} +38 -38
- package/dist/{DisclosureWrapper.vue_vue_type_script_setup_true_lang-B-Mr_vdx.js.map → DisclosureWrapper.vue_vue_type_script_setup_true_lang-C7y2bNhW.js.map} +1 -1
- package/dist/DynamicForm.vue_vue_type_script_setup_true_lang-CxSaO5Cl.js +253 -0
- package/dist/DynamicForm.vue_vue_type_script_setup_true_lang-CxSaO5Cl.js.map +1 -0
- package/dist/{DynamicFormField.vue_vue_type_script_setup_true_lang-Ct8b80dM.js → DynamicFormField.vue_vue_type_script_setup_true_lang-CSLSRFM7.js} +16 -16
- package/dist/DynamicFormField.vue_vue_type_script_setup_true_lang-CSLSRFM7.js.map +1 -0
- package/dist/EmailInput.vue_vue_type_script_setup_true_lang-BicPMIop.js +122 -0
- package/dist/{EmailInput.vue_vue_type_script_setup_true_lang-Dhfgs2Jn.js.map → EmailInput.vue_vue_type_script_setup_true_lang-BicPMIop.js.map} +1 -1
- package/dist/{EmptyInput.vue_vue_type_script_setup_true_lang-BDxgc5Bs.js → EmptyInput.vue_vue_type_script_setup_true_lang-FWDCFF2c.js} +9 -9
- package/dist/{EmptyInput.vue_vue_type_script_setup_true_lang-BDxgc5Bs.js.map → EmptyInput.vue_vue_type_script_setup_true_lang-FWDCFF2c.js.map} +1 -1
- package/dist/EmptyState.vue_vue_type_script_setup_true_lang-7mcKkOWP.js +74 -0
- package/dist/EmptyState.vue_vue_type_script_setup_true_lang-7mcKkOWP.js.map +1 -0
- package/dist/{EventsList.vue_vue_type_script_setup_true_lang-D3q9wJ4E.js → EventsList.vue_vue_type_script_setup_true_lang-MhuVi5u8.js} +30 -31
- package/dist/{EventsList.vue_vue_type_script_setup_true_lang-D3q9wJ4E.js.map → EventsList.vue_vue_type_script_setup_true_lang-MhuVi5u8.js.map} +1 -1
- package/dist/{FunnelChart.vue_vue_type_script_setup_true_lang-B8QYlJ-s.js → FunnelChart.vue_vue_type_script_setup_true_lang-B4pH6xCV.js} +12 -12
- package/dist/{FunnelChart.vue_vue_type_script_setup_true_lang-B8QYlJ-s.js.map → FunnelChart.vue_vue_type_script_setup_true_lang-B4pH6xCV.js.map} +1 -1
- package/dist/{HiddenInput.vue_vue_type_script_setup_true_lang-DYdvWmVE.js → HiddenInput.vue_vue_type_script_setup_true_lang-PtGZ4eLW.js} +10 -10
- package/dist/{HiddenInput.vue_vue_type_script_setup_true_lang-DYdvWmVE.js.map → HiddenInput.vue_vue_type_script_setup_true_lang-PtGZ4eLW.js.map} +1 -1
- package/dist/{InlineTabs.vue_vue_type_script_setup_true_lang-DhkX5sWS.js → InlineTabs.vue_vue_type_script_setup_true_lang-CD0lnkUm.js} +29 -29
- package/dist/{InlineTabs.vue_vue_type_script_setup_true_lang-DhkX5sWS.js.map → InlineTabs.vue_vue_type_script_setup_true_lang-CD0lnkUm.js.map} +1 -1
- package/dist/{LineChart.vue_vue_type_script_setup_true_lang-DszQ-a5L.js → LineChart.vue_vue_type_script_setup_true_lang-DJo0edLJ.js} +17 -17
- package/dist/{LineChart.vue_vue_type_script_setup_true_lang-DszQ-a5L.js.map → LineChart.vue_vue_type_script_setup_true_lang-DJo0edLJ.js.map} +1 -1
- package/dist/LottieAnimation.vue_vue_type_script_setup_true_lang-swmHdR0_.js +36 -0
- package/dist/{LottieAnimation.vue_vue_type_script_setup_true_lang-CwOOShcM.js.map → LottieAnimation.vue_vue_type_script_setup_true_lang-swmHdR0_.js.map} +1 -1
- package/dist/{MonthCalendar.vue_vue_type_style_index_0_lang-CnX3Ih0W.js → MonthCalendar.vue_vue_type_style_index_0_lang-Cyzq7A9j.js} +2 -2
- package/dist/{MonthCalendar.vue_vue_type_style_index_0_lang-CnX3Ih0W.js.map → MonthCalendar.vue_vue_type_style_index_0_lang-Cyzq7A9j.js.map} +1 -1
- package/dist/NavigationGroup.vue_vue_type_script_setup_true_lang-BWq5fpEm.js +30 -0
- package/dist/{NavigationGroup.vue_vue_type_script_setup_true_lang-2tAB9Hbx.js.map → NavigationGroup.vue_vue_type_script_setup_true_lang-BWq5fpEm.js.map} +1 -1
- package/dist/{NavigationItem.vue_vue_type_script_setup_true_lang-CEsuYl3S.js → NavigationItem.vue_vue_type_script_setup_true_lang-C8aX-84Q.js} +18 -18
- package/dist/{NavigationItem.vue_vue_type_script_setup_true_lang-CEsuYl3S.js.map → NavigationItem.vue_vue_type_script_setup_true_lang-C8aX-84Q.js.map} +1 -1
- package/dist/NotificationContainer.vue_vue_type_style_index_0_lang-DSfNw4Ge.js +110 -0
- package/dist/NotificationContainer.vue_vue_type_style_index_0_lang-DSfNw4Ge.js.map +1 -0
- package/dist/NotificationToast.vue_vue_type_script_setup_true_lang-CU__ORw8.js +238 -0
- package/dist/NotificationToast.vue_vue_type_script_setup_true_lang-CU__ORw8.js.map +1 -0
- package/dist/{PieChart.vue_vue_type_script_setup_true_lang-DJRcsty7.js → PieChart.vue_vue_type_script_setup_true_lang-e3wsA9O4.js} +12 -12
- package/dist/{PieChart.vue_vue_type_script_setup_true_lang-DJRcsty7.js.map → PieChart.vue_vue_type_script_setup_true_lang-e3wsA9O4.js.map} +1 -1
- package/dist/ProfileHeaderAvatar.vue_vue_type_script_setup_true_lang-DkABeWJt.js +130 -0
- package/dist/{ProfileHeaderAvatar.vue_vue_type_script_setup_true_lang-Cri9BiBy.js.map → ProfileHeaderAvatar.vue_vue_type_script_setup_true_lang-DkABeWJt.js.map} +1 -1
- package/dist/{ProjectLogo.vue_vue_type_script_setup_true_lang-CtroDq7L.js → ProjectLogo.vue_vue_type_script_setup_true_lang-DYjp-RNh.js} +24 -24
- package/dist/{ProjectLogo.vue_vue_type_script_setup_true_lang-CtroDq7L.js.map → ProjectLogo.vue_vue_type_script_setup_true_lang-DYjp-RNh.js.map} +1 -1
- package/dist/{SelectInput.vue_vue_type_script_setup_true_lang--yUL7bcx.js → SelectInput.vue_vue_type_script_setup_true_lang-DHiZ-7K2.js} +111 -111
- package/dist/SelectInput.vue_vue_type_script_setup_true_lang-DHiZ-7K2.js.map +1 -0
- package/dist/{SelectTextInput.vue_vue_type_script_setup_true_lang-B2Gw_se2.js → SelectTextInput.vue_vue_type_script_setup_true_lang-DYrXW14A.js} +2 -2
- package/dist/{SelectTextInput.vue_vue_type_script_setup_true_lang-B2Gw_se2.js.map → SelectTextInput.vue_vue_type_script_setup_true_lang-DYrXW14A.js.map} +1 -1
- package/dist/{SidebarLayout.vue_vue_type_script_setup_true_lang-BD2PF5xp.js → SidebarLayout.vue_vue_type_script_setup_true_lang-BJ5jadgZ.js} +9 -10
- package/dist/{SidebarLayout.vue_vue_type_script_setup_true_lang-BD2PF5xp.js.map → SidebarLayout.vue_vue_type_script_setup_true_lang-BJ5jadgZ.js.map} +1 -1
- package/dist/{SparklineChart.vue_vue_type_script_setup_true_lang-DDTcpEjy.js → SparklineChart.vue_vue_type_script_setup_true_lang-BlNk5ZqM.js} +17 -17
- package/dist/{SparklineChart.vue_vue_type_script_setup_true_lang-DDTcpEjy.js.map → SparklineChart.vue_vue_type_script_setup_true_lang-BlNk5ZqM.js.map} +1 -1
- package/dist/{StatCard.vue_vue_type_script_setup_true_lang-DTOT0-WB.js → StatCard.vue_vue_type_script_setup_true_lang-BfFupfmC.js} +40 -40
- package/dist/{StatCard.vue_vue_type_script_setup_true_lang-DTOT0-WB.js.map → StatCard.vue_vue_type_script_setup_true_lang-BfFupfmC.js.map} +1 -1
- package/dist/{StepperPanels.vue_vue_type_script_setup_true_lang-BtHrfqFI.js → StepperPanels.vue_vue_type_script_setup_true_lang-D6Fv7iz3.js} +38 -38
- package/dist/{StepperPanels.vue_vue_type_script_setup_true_lang-BtHrfqFI.js.map → StepperPanels.vue_vue_type_script_setup_true_lang-D6Fv7iz3.js.map} +1 -1
- package/dist/{SwitchInput.vue_vue_type_script_setup_true_lang-D6M1qwP1.js → SwitchInput.vue_vue_type_script_setup_true_lang-C88FcxuK.js} +110 -108
- package/dist/{SwitchInput.vue_vue_type_script_setup_true_lang-D6M1qwP1.js.map → SwitchInput.vue_vue_type_script_setup_true_lang-C88FcxuK.js.map} +1 -1
- package/dist/{SwitchInputGroup.vue_vue_type_script_setup_true_lang-BNKKEAMq.js → SwitchInputGroup.vue_vue_type_script_setup_true_lang-CK9JWl4F.js} +2 -2
- package/dist/{SwitchInputGroup.vue_vue_type_script_setup_true_lang-BNKKEAMq.js.map → SwitchInputGroup.vue_vue_type_script_setup_true_lang-CK9JWl4F.js.map} +1 -1
- package/dist/{TabGroup.vue_vue_type_script_setup_true_lang-DrhDwLL3.js → TabGroup.vue_vue_type_script_setup_true_lang-DVVeOgWH.js} +3 -3
- package/dist/{TabGroup.vue_vue_type_script_setup_true_lang-DrhDwLL3.js.map → TabGroup.vue_vue_type_script_setup_true_lang-DVVeOgWH.js.map} +1 -1
- package/dist/{TabGroupUnderline.vue_vue_type_script_setup_true_lang-Di33js6c.js → TabGroupUnderline.vue_vue_type_script_setup_true_lang-_3XtOn3w.js} +32 -32
- package/dist/{TabGroupUnderline.vue_vue_type_script_setup_true_lang-Di33js6c.js.map → TabGroupUnderline.vue_vue_type_script_setup_true_lang-_3XtOn3w.js.map} +1 -1
- package/dist/{TabsInPills.vue_vue_type_script_setup_true_lang-CMxaK0Kw.js → TabsInPills.vue_vue_type_script_setup_true_lang-DY1NkXCQ.js} +21 -21
- package/dist/{TabsInPills.vue_vue_type_script_setup_true_lang-CMxaK0Kw.js.map → TabsInPills.vue_vue_type_script_setup_true_lang-DY1NkXCQ.js.map} +1 -1
- package/dist/{TagifyInput.vue_vue_type_script_setup_true_lang-CAK6ZIiz.js → TagifyInput.vue_vue_type_script_setup_true_lang-Da6-pRJ2.js} +2 -2
- package/dist/TagifyInput.vue_vue_type_script_setup_true_lang-Da6-pRJ2.js.map +1 -0
- package/dist/{TextAreaInput.vue_vue_type_script_setup_true_lang-BMpc-5ln.js → TextAreaInput.vue_vue_type_script_setup_true_lang-Cf0MJobG.js} +47 -47
- package/dist/{TextAreaInput.vue_vue_type_script_setup_true_lang-BMpc-5ln.js.map → TextAreaInput.vue_vue_type_script_setup_true_lang-Cf0MJobG.js.map} +1 -1
- package/dist/{UiAvatar.vue_vue_type_script_setup_true_lang-Ci7VLRZx.js → UiAvatar.vue_vue_type_script_setup_true_lang-WVY6JbUL.js} +36 -36
- package/dist/UiAvatar.vue_vue_type_script_setup_true_lang-WVY6JbUL.js.map +1 -0
- package/dist/{UiBadge.vue_vue_type_script_setup_true_lang-CV8WVEXL.js → UiBadge.vue_vue_type_script_setup_true_lang-DOtbLb9x.js} +19 -19
- package/dist/{UiBadge.vue_vue_type_script_setup_true_lang-CV8WVEXL.js.map → UiBadge.vue_vue_type_script_setup_true_lang-DOtbLb9x.js.map} +1 -1
- package/dist/{UiButtonGroup.vue_vue_type_script_setup_true_lang-BKyznfxi.js → UiButtonGroup.vue_vue_type_script_setup_true_lang-CVwXB-cb.js} +28 -28
- package/dist/{UiButtonGroup.vue_vue_type_script_setup_true_lang-BKyznfxi.js.map → UiButtonGroup.vue_vue_type_script_setup_true_lang-CVwXB-cb.js.map} +1 -1
- package/dist/{UiCheckbox.vue_vue_type_script_setup_true_lang-B5fPB7PH.js → UiCheckbox.vue_vue_type_script_setup_true_lang-BxyM_F-V.js} +37 -37
- package/dist/{UiCheckbox.vue_vue_type_script_setup_true_lang-B5fPB7PH.js.map → UiCheckbox.vue_vue_type_script_setup_true_lang-BxyM_F-V.js.map} +1 -1
- package/dist/{UiLoading.vue_vue_type_script_setup_true_lang-DldleD-3.js → UiLoading.vue_vue_type_script_setup_true_lang-rNvtzKbq.js} +42 -42
- package/dist/{UiLoading.vue_vue_type_script_setup_true_lang-DldleD-3.js.map → UiLoading.vue_vue_type_script_setup_true_lang-rNvtzKbq.js.map} +1 -1
- package/dist/{UiMenu.vue_vue_type_script_setup_true_lang-aJddpshR.js → UiMenu.vue_vue_type_script_setup_true_lang-bQdfCzk6.js} +74 -74
- package/dist/{UiMenu.vue_vue_type_script_setup_true_lang-aJddpshR.js.map → UiMenu.vue_vue_type_script_setup_true_lang-bQdfCzk6.js.map} +1 -1
- package/dist/{UiModal.vue_vue_type_script_setup_true_lang-CFgLuifQ.js → UiModal.vue_vue_type_script_setup_true_lang-CpwFUDVU.js} +9 -10
- package/dist/{UiModal.vue_vue_type_script_setup_true_lang-CFgLuifQ.js.map → UiModal.vue_vue_type_script_setup_true_lang-CpwFUDVU.js.map} +1 -1
- package/dist/{UiNavLink.vue_vue_type_script_setup_true_lang-C23h6Do0.js → UiNavLink.vue_vue_type_script_setup_true_lang-DnWMn40M.js} +2 -2
- package/dist/{UiNavLink.vue_vue_type_script_setup_true_lang-C23h6Do0.js.map → UiNavLink.vue_vue_type_script_setup_true_lang-DnWMn40M.js.map} +1 -1
- package/dist/{UiProgressBar.vue_vue_type_script_setup_true_lang-BioTMORv.js → UiProgressBar.vue_vue_type_script_setup_true_lang-BCh4orZW.js} +24 -24
- package/dist/{UiProgressBar.vue_vue_type_script_setup_true_lang-BioTMORv.js.map → UiProgressBar.vue_vue_type_script_setup_true_lang-BCh4orZW.js.map} +1 -1
- package/dist/{UiTable.vue_vue_type_script_setup_true_lang-BuOCaPzi.js → UiTable.vue_vue_type_script_setup_true_lang-xGAiJ9rS.js} +80 -83
- package/dist/UiTable.vue_vue_type_script_setup_true_lang-xGAiJ9rS.js.map +1 -0
- package/dist/{UiTransition.vue_vue_type_script_setup_true_lang-DwBTj18t.js → UiTransition.vue_vue_type_script_setup_true_lang-C4jb9I-3.js} +15 -15
- package/dist/{UiTransition.vue_vue_type_script_setup_true_lang-DwBTj18t.js.map → UiTransition.vue_vue_type_script_setup_true_lang-C4jb9I-3.js.map} +1 -1
- package/dist/{YearCalendar.vue_vue_type_script_setup_true_lang-C01PTLg8.js → YearCalendar.vue_vue_type_script_setup_true_lang-CfKSpLLN.js} +15 -15
- package/dist/{YearCalendar.vue_vue_type_script_setup_true_lang-C01PTLg8.js.map → YearCalendar.vue_vue_type_script_setup_true_lang-CfKSpLLN.js.map} +1 -1
- package/dist/{calendar-DyIP7WGv.js → calendar-BlSSD4nO.js} +2 -2
- package/dist/calendar-BlSSD4nO.js.map +1 -0
- package/dist/calendars/CalendarDashboard.d.ts +1 -3
- package/dist/calendars/CalendarDashboard.js +34 -36
- package/dist/calendars/CalendarDashboard.js.map +1 -1
- package/dist/calendars/CalendarHeader.d.ts +1 -3
- package/dist/calendars/CalendarHeader.js +1 -1
- package/dist/calendars/DayCalendar.d.ts +1 -3
- package/dist/calendars/DayCalendar.js +1 -1
- package/dist/calendars/EventCard.d.ts +1 -3
- package/dist/calendars/EventsList.d.ts +1 -3
- package/dist/calendars/EventsList.js +1 -1
- package/dist/calendars/MonthCalendar.d.ts +1 -3
- package/dist/calendars/MonthCalendar.js +1 -1
- package/dist/calendars/WeekCalendar.d.ts +1 -3
- package/dist/calendars/WeekCalendar.js +118 -118
- package/dist/calendars/WeekCalendar.js.map +1 -1
- package/dist/calendars/YearCalendar.d.ts +1 -3
- package/dist/calendars/YearCalendar.js +1 -1
- package/dist/charts/BarChart.d.ts +1 -3
- package/dist/charts/BarChart.js +1 -1
- package/dist/charts/BaseChart.d.ts +1 -3
- package/dist/charts/BaseChart.js +54 -54
- package/dist/charts/BaseChart.js.map +1 -1
- package/dist/charts/FunnelChart.d.ts +1 -3
- package/dist/charts/FunnelChart.js +1 -1
- package/dist/charts/LineChart.d.ts +1 -3
- package/dist/charts/LineChart.js +1 -1
- package/dist/charts/PieChart.d.ts +1 -3
- package/dist/charts/PieChart.js +1 -1
- package/dist/charts/SparklineChart.d.ts +1 -3
- package/dist/charts/SparklineChart.js +1 -1
- package/dist/charts/StatCard.d.ts +1 -3
- package/dist/charts/StatCard.js +1 -1
- package/dist/charts/chartTheme.d.ts +3 -0
- package/dist/charts/index.d.ts +1 -0
- package/dist/charts/index.js +6 -6
- package/dist/components/Avatar.d.ts +1 -3
- package/dist/components/Avatar.js +1 -1
- package/dist/components/Badge.d.ts +1 -3
- package/dist/components/Badge.js +1 -1
- package/dist/components/Banner.d.ts +1 -3
- package/dist/components/Banner.js +69 -69
- package/dist/components/Banner.js.map +1 -1
- package/dist/components/Breadcrumb.d.ts +1 -3
- package/dist/components/Breadcrumb.js +5 -5
- package/dist/components/Breadcrumb.js.map +1 -1
- package/dist/components/Button.d.ts +1 -3
- package/dist/components/Button.js +29 -29
- package/dist/components/Button.js.map +1 -1
- package/dist/components/ButtonGroup.d.ts +1 -3
- package/dist/components/ButtonGroup.js +1 -1
- package/dist/components/Checkbox.d.ts +1 -3
- package/dist/components/Checkbox.js +1 -1
- package/dist/components/CloudinaryImage.d.ts +1 -3
- package/dist/components/Loading.d.ts +1 -3
- package/dist/components/Loading.js +1 -1
- package/dist/components/LoadingDots.d.ts +1 -3
- package/dist/components/LottieAnimation.d.ts +1 -3
- package/dist/components/LottieAnimation.js +1 -1
- package/dist/components/Menu.d.ts +1 -3
- package/dist/components/Menu.js +1 -1
- package/dist/components/Modal.d.ts +1 -3
- package/dist/components/Modal.js +1 -1
- package/dist/components/NavLink.d.ts +1 -3
- package/dist/components/NavLink.js +1 -1
- package/dist/components/ProgressBar.d.ts +1 -3
- package/dist/components/ProgressBar.js +1 -1
- package/dist/components/RadialProgressBar.d.ts +1 -3
- package/dist/components/RadialProgressBar.js +1 -1
- package/dist/components/Table.d.ts +1 -3
- package/dist/components/Table.js +1 -1
- package/dist/components/Transition.d.ts +1 -3
- package/dist/components/Transition.js +1 -1
- package/dist/composables/index.d.ts +1 -0
- package/dist/composables/useCalendar.d.ts +3 -0
- package/dist/composables/useCalendar.js +1 -1
- package/dist/composables/useFormValidation.d.ts +3 -0
- package/dist/composables/useMap.d.ts +3 -0
- package/dist/composables/useModal.d.ts +3 -0
- package/dist/composables/useNotifications.d.ts +3 -0
- package/dist/composables/useNotifications.js +221 -58
- package/dist/composables/useNotifications.js.map +1 -1
- package/dist/composables/useTabs.d.ts +1 -0
- package/dist/composables/useTheme.d.ts +3 -0
- package/dist/{dialog-B2WA4G25.js → dialog-BJ2Ld8l3.js} +2 -2
- package/dist/{dialog-B2WA4G25.js.map → dialog-BJ2Ld8l3.js.map} +1 -1
- package/dist/empty-state/ComingSoon.d.ts +1 -3
- package/dist/empty-state/ComingSoon.js +1 -1
- package/dist/empty-state/EmptyState.d.ts +1 -3
- package/dist/empty-state/EmptyState.js +1 -1
- package/dist/empty-state/index.d.ts +1 -0
- package/dist/empty-state/index.js +2 -2
- package/dist/forms/DynamicForm.d.ts +1 -3
- package/dist/forms/DynamicForm.js +1 -1
- package/dist/forms/DynamicFormField.d.ts +1 -3
- package/dist/forms/DynamicFormField.js +1 -1
- package/dist/forms/FormFieldWrapper.d.ts +1 -3
- package/dist/forms/FormFieldWrapper.js +56 -56
- package/dist/forms/FormFieldWrapper.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.js +559 -565
- package/dist/index.js.map +1 -1
- package/dist/inputs/AddDeleteButtonGroup.d.ts +1 -3
- package/dist/inputs/CheckboxInput.d.ts +1 -3
- package/dist/inputs/CheckboxInput.js +1 -1
- package/dist/inputs/ComboboxInput.d.ts +1 -3
- package/dist/inputs/ComboboxInput.js +1 -1
- package/dist/inputs/DatepickerInput.d.ts +1 -3
- package/dist/inputs/EmailInput.d.ts +1 -3
- package/dist/inputs/EmailInput.js +1 -1
- package/dist/inputs/EmptyInput.d.ts +1 -3
- package/dist/inputs/EmptyInput.js +1 -1
- package/dist/inputs/FileDropzoneInput.d.ts +1 -3
- package/dist/inputs/HiddenInput.d.ts +1 -3
- package/dist/inputs/HiddenInput.js +1 -1
- package/dist/inputs/PhoneInput.d.ts +1 -3
- package/dist/inputs/PhoneInput.js +33 -23
- package/dist/inputs/PhoneInput.js.map +1 -1
- package/dist/inputs/RichTextInput.d.ts +1 -3
- package/dist/inputs/RichTextInput.js +693 -693
- package/dist/inputs/RichTextInput.js.map +1 -1
- package/dist/inputs/SelectInput.d.ts +1 -3
- package/dist/inputs/SelectInput.js +1 -1
- package/dist/inputs/SelectTextInput.d.ts +1 -3
- package/dist/inputs/SelectTextInput.js +1 -1
- package/dist/inputs/SwitchInput.d.ts +1 -3
- package/dist/inputs/SwitchInput.js +1 -1
- package/dist/inputs/SwitchInputGroup.d.ts +1 -3
- package/dist/inputs/SwitchInputGroup.js +1 -1
- package/dist/inputs/TagifyInput.d.ts +1 -3
- package/dist/inputs/TagifyInput.js +1 -1
- package/dist/inputs/TextAreaInput.d.ts +1 -3
- package/dist/inputs/TextAreaInput.js +1 -1
- package/dist/inputs/TextInput.d.ts +1 -3
- package/dist/inputs/TextInput.js +43 -43
- package/dist/inputs/TextInput.js.map +1 -1
- package/dist/layouts/DashboardLayout.d.ts +1 -3
- package/dist/layouts/DashboardLayout.js +1 -1
- package/dist/layouts/DefaultLayout.d.ts +1 -3
- package/dist/layouts/HeaderLayout.d.ts +1 -3
- package/dist/layouts/NavigationGroup.d.ts +1 -3
- package/dist/layouts/NavigationGroup.js +1 -1
- package/dist/layouts/NavigationItem.d.ts +1 -3
- package/dist/layouts/NavigationItem.js +1 -1
- package/dist/layouts/ProfileHeaderAvatar.d.ts +1 -3
- package/dist/layouts/ProfileHeaderAvatar.js +1 -1
- package/dist/layouts/ProjectLogo.d.ts +1 -3
- package/dist/layouts/ProjectLogo.js +1 -1
- package/dist/layouts/SidebarLayout.d.ts +1 -3
- package/dist/layouts/SidebarLayout.js +1 -1
- package/dist/{listbox-p2_4hUSD.js → listbox-YaWWZiiG.js} +2 -2
- package/dist/{listbox-p2_4hUSD.js.map → listbox-YaWWZiiG.js.map} +1 -1
- package/dist/loading/ContentSkeleton.d.ts +1 -3
- package/dist/loading/ContentSkeleton.js +32 -32
- package/dist/loading/ContentSkeleton.js.map +1 -1
- package/dist/loading/SmartLoadingIndicator.d.ts +1 -3
- package/dist/loading/SmartLoadingIndicator.js +92 -92
- package/dist/loading/SmartLoadingIndicator.js.map +1 -1
- package/dist/loading/index.d.ts +1 -0
- package/dist/maps/GoogleMap.d.ts +1 -3
- package/dist/maps/GoogleMap.js +2 -2
- package/dist/maps/GoogleMap.js.map +1 -1
- package/dist/maps/UiInfoWindow.d.ts +1 -3
- package/dist/maps/UiMap.d.ts +1 -3
- package/dist/maps/UiMap.js +18 -15
- package/dist/maps/UiMap.js.map +1 -1
- package/dist/maps/UiMapAll.d.ts +1 -3
- package/dist/maps/UiMapMarker.d.ts +1 -3
- package/dist/maps/index.d.ts +1 -0
- package/dist/modals/AlertModal.d.ts +1 -3
- package/dist/modals/AlertModal.js +1 -1
- package/dist/modals/BaseModal.d.ts +1 -3
- package/dist/modals/BaseModal.js +1 -1
- package/dist/modals/ImageCropperModal.d.ts +1 -3
- package/dist/modals/ImageCropperModal.js +182 -185
- package/dist/modals/ImageCropperModal.js.map +1 -1
- package/dist/notifications/NotificationContainer.d.ts +1 -3
- package/dist/notifications/NotificationContainer.js +2 -22
- package/dist/notifications/NotificationContainer.js.map +1 -1
- package/dist/notifications/NotificationToast.d.ts +1 -3
- package/dist/notifications/NotificationToast.js +1 -1
- package/dist/notifications/index.d.ts +1 -0
- package/dist/notifications/index.js +4 -4
- package/dist/src/components/CloudinaryImage.d.ts +7 -9
- package/dist/src/components/LottieAnimation.d.ts +6 -38
- package/dist/src/components/ThemeDebugModal.d.ts +6 -17
- package/dist/src/components/UiAvatar.d.ts +26 -37
- package/dist/src/components/UiBadge.d.ts +6 -34
- package/dist/src/components/UiBanner.d.ts +34 -108
- package/dist/src/components/UiBreadcrumb.d.ts +10 -12
- package/dist/src/components/UiButton.d.ts +13 -67
- package/dist/src/components/UiButtonGroup.d.ts +7 -38
- package/dist/src/components/UiCheckbox.d.ts +8 -34
- package/dist/src/components/UiLoading.d.ts +2 -29
- package/dist/src/components/UiLoadingDots.d.ts +1 -2
- package/dist/src/components/UiMenu.d.ts +4 -33
- package/dist/src/components/UiModal.d.ts +3 -3
- package/dist/src/components/UiNavLink.d.ts +6 -41
- package/dist/src/components/UiProgressBar.d.ts +3 -33
- package/dist/src/components/UiRadialProgressBar.d.ts +3 -35
- package/dist/src/components/UiTable.d.ts +25 -68
- package/dist/src/components/UiTransition.d.ts +3 -27
- package/dist/src/components/calendars/CalendarDashboard.d.ts +5 -18
- package/dist/src/components/calendars/CalendarHeader.d.ts +8 -8
- package/dist/src/components/calendars/DayCalendar.d.ts +11 -18
- package/dist/src/components/calendars/EventCard.d.ts +1 -3
- package/dist/src/components/calendars/EventsList.d.ts +6 -19
- package/dist/src/components/calendars/MonthCalendar.d.ts +6 -31
- package/dist/src/components/calendars/WeekCalendar.d.ts +10 -17
- package/dist/src/components/calendars/YearCalendar.d.ts +5 -30
- package/dist/src/components/calendars/index.d.ts +0 -1
- package/dist/src/components/charts/BarChart.d.ts +6 -40
- package/dist/src/components/charts/FunnelChart.d.ts +5 -35
- package/dist/src/components/charts/LineChart.d.ts +6 -38
- package/dist/src/components/charts/PieChart.d.ts +6 -38
- package/dist/src/components/charts/SparklineChart.d.ts +3 -33
- package/dist/src/components/charts/StatCard.d.ts +2 -25
- package/dist/src/components/charts/chartTheme.d.ts +0 -2
- package/dist/src/components/charts/index.d.ts +0 -1
- package/dist/src/components/empty-state/ComingSoon.d.ts +2 -30
- package/dist/src/components/empty-state/EmptyState.d.ts +4 -27
- package/dist/src/components/empty-state/index.d.ts +0 -1
- package/dist/src/components/forms/DynamicForm.d.ts +21 -48
- package/dist/src/components/forms/DynamicFormField.d.ts +8 -19
- package/dist/src/components/forms/FormFieldWrapper.d.ts +14 -59
- package/dist/src/components/forms/index.d.ts +0 -1
- package/dist/src/components/index.d.ts +0 -1
- package/dist/src/components/inputs/AddDeleteButtonGroup.d.ts +3 -5
- package/dist/src/components/inputs/CheckboxInput.d.ts +10 -38
- package/dist/src/components/inputs/ComboboxInput.d.ts +13 -49
- package/dist/src/components/inputs/DatepickerInput.d.ts +1045 -43
- package/dist/src/components/inputs/EmailInput.d.ts +10 -55
- package/dist/src/components/inputs/EmptyInput.d.ts +2 -27
- package/dist/src/components/inputs/FileDropzoneInput.d.ts +8 -8
- package/dist/src/components/inputs/HiddenInput.d.ts +2 -24
- package/dist/src/components/inputs/InputsShowcase.d.ts +1 -2
- package/dist/src/components/inputs/PhoneInput.d.ts +79 -17
- package/dist/src/components/inputs/RichTextInput.d.ts +22 -81
- package/dist/src/components/inputs/SelectInput.d.ts +49 -43
- package/dist/src/components/inputs/SelectTextInput.d.ts +52 -13
- package/dist/src/components/inputs/SwitchInput.d.ts +115 -43
- package/dist/src/components/inputs/SwitchInputGroup.d.ts +2 -4
- package/dist/src/components/inputs/TagifyInput.d.ts +30 -21
- package/dist/src/components/inputs/TextAreaInput.d.ts +9 -36
- package/dist/src/components/inputs/TextInput.d.ts +13 -74
- package/dist/src/components/inputs/index.d.ts +0 -1
- package/dist/src/components/layouts/CardLayout.d.ts +20 -67
- package/dist/src/components/layouts/DashboardLayout.d.ts +8 -6
- package/dist/src/components/layouts/DefaultLayout.d.ts +1 -2
- package/dist/src/components/layouts/HeaderLayout.d.ts +4 -5
- package/dist/src/components/layouts/InfoCard.d.ts +2 -26
- package/dist/src/components/layouts/NavigationGroup.d.ts +5 -17
- package/dist/src/components/layouts/NavigationItem.d.ts +7 -25
- package/dist/src/components/layouts/ProfileHeaderAvatar.d.ts +10 -41
- package/dist/src/components/layouts/ProjectLogo.d.ts +2 -34
- package/dist/src/components/layouts/PropsTable.d.ts +2 -24
- package/dist/src/components/layouts/ShowcaseCard.d.ts +2 -30
- package/dist/src/components/layouts/ShowcaseLayout.d.ts +5 -29
- package/dist/src/components/layouts/SidebarLayout.d.ts +7 -5
- package/dist/src/components/layouts/StateDisplay.d.ts +2 -24
- package/dist/src/components/layouts/index.d.ts +0 -1
- package/dist/src/components/loading/ContentSkeleton.d.ts +2 -32
- package/dist/src/components/loading/SmartLoadingIndicator.d.ts +6 -48
- package/dist/src/components/loading/index.d.ts +0 -1
- package/dist/src/components/maps/GoogleMap.d.ts +7 -9
- package/dist/src/components/maps/UiInfoWindow.d.ts +229 -15
- package/dist/src/components/maps/UiMap.d.ts +5091 -102
- package/dist/src/components/maps/UiMapAll.d.ts +1130 -21
- package/dist/src/components/maps/UiMapMarker.d.ts +16 -18
- package/dist/src/components/maps/index.d.ts +0 -1
- package/dist/src/components/modals/AlertModal.d.ts +9 -11
- package/dist/src/components/modals/BaseModal.d.ts +6 -8
- package/dist/src/components/modals/ImageCropperModal.d.ts +379 -76
- package/dist/src/components/modals/index.d.ts +0 -1
- package/dist/src/components/notifications/NotificationContainer.d.ts +0 -1
- package/dist/src/components/notifications/NotificationToast.d.ts +9 -19
- package/dist/src/components/notifications/index.d.ts +0 -1
- package/dist/src/components/stepper/StepperPanels.d.ts +4 -15
- package/dist/src/components/stepper/index.d.ts +0 -1
- package/dist/src/components/tabs/InlineTabs.d.ts +4 -29
- package/dist/src/components/tabs/TabGroup.d.ts +6 -33
- package/dist/src/components/tabs/TabGroupUnderline.d.ts +6 -33
- package/dist/src/components/tabs/TabsInPills.d.ts +4 -27
- package/dist/src/components/tabs/index.d.ts +0 -1
- package/dist/src/components/wrappers/BackgroundGradientWrapper.d.ts +2 -38
- package/dist/src/components/wrappers/CardWrapper.d.ts +1 -2
- package/dist/src/components/wrappers/DisclosureWrapper.d.ts +2 -24
- package/dist/src/components/wrappers/FormErrorWrapper.d.ts +2 -26
- package/dist/src/components/wrappers/index.d.ts +0 -1
- package/dist/src/composables/index.d.ts +0 -1
- package/dist/src/composables/useCalendar.d.ts +4 -6
- package/dist/src/composables/useEventSegments.d.ts +0 -1
- package/dist/src/composables/useFormValidation.d.ts +0 -2
- package/dist/src/composables/useMap.d.ts +0 -2
- package/dist/src/composables/useModal.d.ts +0 -1
- package/dist/src/composables/useNotifications.d.ts +1308 -31
- package/dist/src/composables/useSimpleTabs.d.ts +0 -2
- package/dist/src/composables/useStringTransform.d.ts +0 -2
- package/dist/src/composables/useTabs.d.ts +0 -2
- package/dist/src/composables/useTheme.d.ts +0 -1
- package/dist/src/config/css-variables.d.ts +0 -2
- package/dist/src/config/design-tokens.d.ts +1 -2
- package/dist/src/config/index.d.ts +0 -1
- package/dist/src/dev.d.ts +0 -2
- package/dist/src/index.d.ts +0 -1
- package/dist/src/plugin/configure.d.ts +0 -2
- package/dist/src/plugin/index.d.ts +0 -1
- package/dist/src/types/avatars.d.ts +0 -1
- package/dist/src/types/badges.d.ts +0 -1
- package/dist/src/types/calendars.d.ts +12 -12
- package/dist/src/types/core.d.ts +3 -5
- package/dist/src/types/form.d.ts +15 -14
- package/dist/src/types/forms.d.ts +2 -2
- package/dist/src/types/index.d.ts +0 -1
- package/dist/src/types/inputs.d.ts +14 -10
- package/dist/src/types/layouts.d.ts +0 -2
- package/dist/src/types/loading.d.ts +0 -1
- package/dist/src/types/maps.d.ts +0 -1
- package/dist/src/types/navigation.d.ts +2 -2
- package/dist/src/types/tables.d.ts +8 -7
- package/dist/src/types/tabs.d.ts +0 -1
- package/dist/src/types/transitions.d.ts +0 -1
- package/dist/src/types/ui.d.ts +1 -3
- package/dist/src/utils/calendar.d.ts +1 -2
- package/dist/src/utils/component-registry.d.ts +0 -2
- package/dist/src/utils/countryCodes.d.ts +0 -1
- package/dist/src/utils/id.d.ts +0 -1
- package/dist/src/utils/index.d.ts +0 -1
- package/dist/src/utils/mapThemes.d.ts +0 -2
- package/dist/src/utils/phone.d.ts +0 -2
- package/dist/src/utils/transitions.d.ts +0 -1
- package/dist/src/views/ButtonsShowcase.d.ts +2 -0
- package/dist/src/views/CalendarsShowcase.d.ts +2 -0
- package/dist/src/views/CardsShowcase.d.ts +2 -0
- package/dist/src/views/ChartsShowcase.d.ts +2 -0
- package/dist/src/views/EmptyStatesShowcase.d.ts +2 -0
- package/dist/src/views/InputsShowcase.d.ts +2 -0
- package/dist/src/views/KitchenSink.d.ts +2 -0
- package/dist/src/views/LayoutsShowcase.d.ts +2 -0
- package/dist/src/views/LoadingShowcase.d.ts +2 -0
- package/dist/src/views/MapsShowcase.d.ts +2 -0
- package/dist/src/views/ModalsShowcase.d.ts +2 -0
- package/dist/src/views/NotificationsShowcase.d.ts +2 -0
- package/dist/src/views/StepperShowcase.d.ts +2 -0
- package/dist/src/views/TabsShowcase.d.ts +2 -0
- package/dist/src/views/ValidationDemo.d.ts +2 -0
- package/dist/src/views/WrappersShowcase.d.ts +2 -0
- package/dist/src/views/components/AvatarPage.d.ts +2 -0
- package/dist/src/views/components/BadgePage.d.ts +2 -0
- package/dist/src/views/components/BannerPage.d.ts +2 -0
- package/dist/src/views/components/BreadcrumbPage.d.ts +2 -0
- package/dist/src/views/components/ButtonPage.d.ts +2 -0
- package/dist/src/views/components/CloudinaryImagePage.d.ts +2 -0
- package/dist/src/views/components/LoadingPage.d.ts +2 -0
- package/dist/src/views/components/MenuPage.d.ts +2 -0
- package/dist/src/views/components/ModalPage.d.ts +2 -0
- package/dist/src/views/components/ProgressPage.d.ts +2 -0
- package/dist/src/views/components/RichTextInputPage.d.ts +2 -0
- package/dist/src/views/components/TablePage.d.ts +2 -0
- package/dist/src/views/components/TextInputPage.d.ts +2 -0
- package/dist/src/views/components/TransitionPage.d.ts +2 -0
- package/dist/src/views/components/index.d.ts +0 -1
- package/dist/src/views/examples/CheckoutFormExample.d.ts +2 -0
- package/dist/src/views/examples/ContactFormExample.d.ts +2 -0
- package/dist/src/views/examples/RegistrationFormExample.d.ts +2 -0
- package/dist/src/views/examples/SettingsFormExample.d.ts +2 -0
- package/dist/src/views/examples/index.d.ts +0 -1
- package/dist/src/views/forms/ValidationPage.d.ts +2 -0
- package/dist/src/views/forms/index.d.ts +0 -1
- package/dist/src/views/index.d.ts +0 -1
- package/dist/src/views/inputs/CheckboxPage.d.ts +2 -0
- package/dist/src/views/inputs/ComboboxPage.d.ts +2 -0
- package/dist/src/views/inputs/DatepickerPage.d.ts +2 -0
- package/dist/src/views/inputs/EmailPage.d.ts +2 -0
- package/dist/src/views/inputs/FileDropzonePage.d.ts +2 -0
- package/dist/src/views/inputs/MiscInputsPage.d.ts +2 -0
- package/dist/src/views/inputs/PhonePage.d.ts +2 -0
- package/dist/src/views/inputs/SelectPage.d.ts +2 -0
- package/dist/src/views/inputs/SelectTextPage.d.ts +2 -0
- package/dist/src/views/inputs/SwitchGroupPage.d.ts +2 -0
- package/dist/src/views/inputs/SwitchPage.d.ts +2 -0
- package/dist/src/views/inputs/TextAreaPage.d.ts +2 -0
- package/dist/src/views/inputs/index.d.ts +0 -1
- package/dist/src/views/layouts/CardLayoutPage.d.ts +2 -0
- package/dist/src/views/layouts/DashboardLayoutPage.d.ts +2 -0
- package/dist/src/views/layouts/HeaderLayoutPage.d.ts +2 -0
- package/dist/src/views/layouts/SidebarLayoutPage.d.ts +2 -0
- package/dist/src/views/layouts/index.d.ts +0 -1
- package/dist/stepper/StepperPanels.d.ts +1 -3
- package/dist/stepper/StepperPanels.js +1 -1
- package/dist/stepper/index.d.ts +1 -0
- package/dist/stepper/index.js +1 -1
- package/dist/style.css +1 -1
- package/dist/tabs/InlineTabs.d.ts +1 -3
- package/dist/tabs/InlineTabs.js +1 -1
- package/dist/tabs/TabGroup.d.ts +1 -3
- package/dist/tabs/TabGroup.js +1 -1
- package/dist/tabs/TabGroupUnderline.d.ts +1 -3
- package/dist/tabs/TabGroupUnderline.js +1 -1
- package/dist/tabs/TabsInPills.d.ts +1 -3
- package/dist/tabs/TabsInPills.js +1 -1
- package/dist/tabs/index.d.ts +1 -0
- package/dist/tabs/index.js +4 -4
- package/dist/{tabs-Da32Mbhf.js → tabs-J5phClGv.js} +2 -2
- package/dist/{tabs-Da32Mbhf.js.map → tabs-J5phClGv.js.map} +1 -1
- package/dist/ui.css +1 -0
- package/dist/{use-outside-click-DNDV36Sc.js → use-outside-click-14T0Zn98.js} +3 -3
- package/dist/{use-outside-click-DNDV36Sc.js.map → use-outside-click-14T0Zn98.js.map} +1 -1
- package/dist/{use-tree-walker-BHCORE7u.js → use-tree-walker-Bo9gIb_K.js} +2 -2
- package/dist/{use-tree-walker-BHCORE7u.js.map → use-tree-walker-Bo9gIb_K.js.map} +1 -1
- package/dist/vue-router-B3K2xmg_.js +120 -0
- package/dist/vue-router-B3K2xmg_.js.map +1 -0
- package/dist/vue3-lottie.es-DT4qZE-F.js +7981 -0
- package/dist/{vue3-lottie.es-C_MDkNwR.js.map → vue3-lottie.es-DT4qZE-F.js.map} +1 -1
- package/dist/wrappers/BackgroundGradientWrapper.d.ts +1 -3
- package/dist/wrappers/BackgroundGradientWrapper.js +1 -1
- package/dist/wrappers/CardWrapper.d.ts +1 -3
- package/dist/wrappers/DisclosureWrapper.d.ts +1 -3
- package/dist/wrappers/DisclosureWrapper.js +1 -1
- package/dist/wrappers/FormErrorWrapper.d.ts +1 -3
- package/dist/wrappers/index.d.ts +1 -0
- package/dist/wrappers/index.js +2 -2
- package/package.json +13 -1
- package/dist/CalendarHeader.vue_vue_type_script_setup_true_lang-DRwe4rw8.js.map +0 -1
- package/dist/CheckboxInput.vue_vue_type_script_setup_true_lang-B8wJVkPP.js +0 -187
- package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-ClGP5YU0.js +0 -1315
- package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-ClGP5YU0.js.map +0 -1
- package/dist/DynamicForm.vue_vue_type_script_setup_true_lang-DRDP86Yc.js +0 -253
- package/dist/DynamicForm.vue_vue_type_script_setup_true_lang-DRDP86Yc.js.map +0 -1
- package/dist/DynamicFormField.vue_vue_type_script_setup_true_lang-Ct8b80dM.js.map +0 -1
- package/dist/EmailInput.vue_vue_type_script_setup_true_lang-Dhfgs2Jn.js +0 -122
- package/dist/EmptyState.vue_vue_type_script_setup_true_lang-B_XAq5Sr.js +0 -74
- package/dist/EmptyState.vue_vue_type_script_setup_true_lang-B_XAq5Sr.js.map +0 -1
- package/dist/LottieAnimation.vue_vue_type_script_setup_true_lang-CwOOShcM.js +0 -36
- package/dist/NavigationGroup.vue_vue_type_script_setup_true_lang-2tAB9Hbx.js +0 -30
- package/dist/NotificationToast.vue_vue_type_script_setup_true_lang-Cm5RsC7C.js +0 -162
- package/dist/NotificationToast.vue_vue_type_script_setup_true_lang-Cm5RsC7C.js.map +0 -1
- package/dist/ProfileHeaderAvatar.vue_vue_type_script_setup_true_lang-Cri9BiBy.js +0 -130
- package/dist/SelectInput.vue_vue_type_script_setup_true_lang--yUL7bcx.js.map +0 -1
- package/dist/TagifyInput.vue_vue_type_script_setup_true_lang-CAK6ZIiz.js.map +0 -1
- package/dist/UiAvatar.vue_vue_type_script_setup_true_lang-Ci7VLRZx.js.map +0 -1
- package/dist/UiTable.vue_vue_type_script_setup_true_lang-BuOCaPzi.js.map +0 -1
- package/dist/calendar-DyIP7WGv.js.map +0 -1
- package/dist/src/components/CloudinaryImage.d.ts.map +0 -1
- package/dist/src/components/LottieAnimation.d.ts.map +0 -1
- package/dist/src/components/ThemeDebugModal.d.ts.map +0 -1
- package/dist/src/components/UiAvatar.d.ts.map +0 -1
- package/dist/src/components/UiBadge.d.ts.map +0 -1
- package/dist/src/components/UiBanner.d.ts.map +0 -1
- package/dist/src/components/UiBreadcrumb.d.ts.map +0 -1
- package/dist/src/components/UiButton.d.ts.map +0 -1
- package/dist/src/components/UiButtonGroup.d.ts.map +0 -1
- package/dist/src/components/UiCheckbox.d.ts.map +0 -1
- package/dist/src/components/UiLoading.d.ts.map +0 -1
- package/dist/src/components/UiLoadingDots.d.ts.map +0 -1
- package/dist/src/components/UiMenu.d.ts.map +0 -1
- package/dist/src/components/UiModal.d.ts.map +0 -1
- package/dist/src/components/UiNavLink.d.ts.map +0 -1
- package/dist/src/components/UiProgressBar.d.ts.map +0 -1
- package/dist/src/components/UiRadialProgressBar.d.ts.map +0 -1
- package/dist/src/components/UiTable.d.ts.map +0 -1
- package/dist/src/components/UiTransition.d.ts.map +0 -1
- package/dist/src/components/calendars/CalendarDashboard.d.ts.map +0 -1
- package/dist/src/components/calendars/CalendarHeader.d.ts.map +0 -1
- package/dist/src/components/calendars/DayCalendar.d.ts.map +0 -1
- package/dist/src/components/calendars/EventCard.d.ts.map +0 -1
- package/dist/src/components/calendars/EventsList.d.ts.map +0 -1
- package/dist/src/components/calendars/MonthCalendar.d.ts.map +0 -1
- package/dist/src/components/calendars/WeekCalendar.d.ts.map +0 -1
- package/dist/src/components/calendars/YearCalendar.d.ts.map +0 -1
- package/dist/src/components/calendars/index.d.ts.map +0 -1
- package/dist/src/components/charts/BarChart.d.ts.map +0 -1
- package/dist/src/components/charts/BaseChart.d.ts +0 -81
- package/dist/src/components/charts/BaseChart.d.ts.map +0 -1
- package/dist/src/components/charts/FunnelChart.d.ts.map +0 -1
- package/dist/src/components/charts/LineChart.d.ts.map +0 -1
- package/dist/src/components/charts/PieChart.d.ts.map +0 -1
- package/dist/src/components/charts/SparklineChart.d.ts.map +0 -1
- package/dist/src/components/charts/StatCard.d.ts.map +0 -1
- package/dist/src/components/charts/chartTheme.d.ts.map +0 -1
- package/dist/src/components/charts/index.d.ts.map +0 -1
- package/dist/src/components/empty-state/ComingSoon.d.ts.map +0 -1
- package/dist/src/components/empty-state/EmptyState.d.ts.map +0 -1
- package/dist/src/components/empty-state/index.d.ts.map +0 -1
- package/dist/src/components/forms/DynamicForm.d.ts.map +0 -1
- package/dist/src/components/forms/DynamicFormField.d.ts.map +0 -1
- package/dist/src/components/forms/FormFieldWrapper.d.ts.map +0 -1
- package/dist/src/components/forms/index.d.ts.map +0 -1
- package/dist/src/components/index.d.ts.map +0 -1
- package/dist/src/components/inputs/AddDeleteButtonGroup.d.ts.map +0 -1
- package/dist/src/components/inputs/CheckboxInput.d.ts.map +0 -1
- package/dist/src/components/inputs/ComboboxInput.d.ts.map +0 -1
- package/dist/src/components/inputs/DatepickerInput.d.ts.map +0 -1
- package/dist/src/components/inputs/EmailInput.d.ts.map +0 -1
- package/dist/src/components/inputs/EmptyInput.d.ts.map +0 -1
- package/dist/src/components/inputs/FileDropzoneInput.d.ts.map +0 -1
- package/dist/src/components/inputs/HiddenInput.d.ts.map +0 -1
- package/dist/src/components/inputs/InputsShowcase.d.ts.map +0 -1
- package/dist/src/components/inputs/PhoneInput.d.ts.map +0 -1
- package/dist/src/components/inputs/RichTextInput.d.ts.map +0 -1
- package/dist/src/components/inputs/SelectInput.d.ts.map +0 -1
- package/dist/src/components/inputs/SelectTextInput.d.ts.map +0 -1
- package/dist/src/components/inputs/SwitchInput.d.ts.map +0 -1
- package/dist/src/components/inputs/SwitchInputGroup.d.ts.map +0 -1
- package/dist/src/components/inputs/TagifyInput.d.ts.map +0 -1
- package/dist/src/components/inputs/TextAreaInput.d.ts.map +0 -1
- package/dist/src/components/inputs/TextInput.d.ts.map +0 -1
- package/dist/src/components/inputs/index.d.ts.map +0 -1
- package/dist/src/components/layouts/CardLayout.d.ts.map +0 -1
- package/dist/src/components/layouts/DashboardLayout.d.ts.map +0 -1
- package/dist/src/components/layouts/DefaultLayout.d.ts.map +0 -1
- package/dist/src/components/layouts/HeaderLayout.d.ts.map +0 -1
- package/dist/src/components/layouts/InfoCard.d.ts.map +0 -1
- package/dist/src/components/layouts/NavigationGroup.d.ts.map +0 -1
- package/dist/src/components/layouts/NavigationItem.d.ts.map +0 -1
- package/dist/src/components/layouts/ProfileHeaderAvatar.d.ts.map +0 -1
- package/dist/src/components/layouts/ProjectLogo.d.ts.map +0 -1
- package/dist/src/components/layouts/PropsTable.d.ts.map +0 -1
- package/dist/src/components/layouts/ShowcaseCard.d.ts.map +0 -1
- package/dist/src/components/layouts/ShowcaseLayout.d.ts.map +0 -1
- package/dist/src/components/layouts/SidebarLayout.d.ts.map +0 -1
- package/dist/src/components/layouts/StateDisplay.d.ts.map +0 -1
- package/dist/src/components/layouts/index.d.ts.map +0 -1
- package/dist/src/components/loading/ContentSkeleton.d.ts.map +0 -1
- package/dist/src/components/loading/SmartLoadingIndicator.d.ts.map +0 -1
- package/dist/src/components/loading/index.d.ts.map +0 -1
- package/dist/src/components/maps/GoogleMap.d.ts.map +0 -1
- package/dist/src/components/maps/UiInfoWindow.d.ts.map +0 -1
- package/dist/src/components/maps/UiMap.d.ts.map +0 -1
- package/dist/src/components/maps/UiMapAll.d.ts.map +0 -1
- package/dist/src/components/maps/UiMapMarker.d.ts.map +0 -1
- package/dist/src/components/maps/index.d.ts.map +0 -1
- package/dist/src/components/modals/AlertModal.d.ts.map +0 -1
- package/dist/src/components/modals/BaseModal.d.ts.map +0 -1
- package/dist/src/components/modals/ImageCropperModal.d.ts.map +0 -1
- package/dist/src/components/modals/index.d.ts.map +0 -1
- package/dist/src/components/notifications/NotificationContainer.d.ts.map +0 -1
- package/dist/src/components/notifications/NotificationToast.d.ts.map +0 -1
- package/dist/src/components/notifications/index.d.ts.map +0 -1
- package/dist/src/components/stepper/StepperPanels.d.ts.map +0 -1
- package/dist/src/components/stepper/index.d.ts.map +0 -1
- package/dist/src/components/tabs/InlineTabs.d.ts.map +0 -1
- package/dist/src/components/tabs/TabGroup.d.ts.map +0 -1
- package/dist/src/components/tabs/TabGroupUnderline.d.ts.map +0 -1
- package/dist/src/components/tabs/TabsInPills.d.ts.map +0 -1
- package/dist/src/components/tabs/index.d.ts.map +0 -1
- package/dist/src/components/wrappers/BackgroundGradientWrapper.d.ts.map +0 -1
- package/dist/src/components/wrappers/CardWrapper.d.ts.map +0 -1
- package/dist/src/components/wrappers/DisclosureWrapper.d.ts.map +0 -1
- package/dist/src/components/wrappers/FormErrorWrapper.d.ts.map +0 -1
- package/dist/src/components/wrappers/index.d.ts.map +0 -1
- package/dist/src/composables/index.d.ts.map +0 -1
- package/dist/src/composables/useCalendar.d.ts.map +0 -1
- package/dist/src/composables/useEventSegments.d.ts.map +0 -1
- package/dist/src/composables/useFormValidation.d.ts.map +0 -1
- package/dist/src/composables/useMap.d.ts.map +0 -1
- package/dist/src/composables/useModal.d.ts.map +0 -1
- package/dist/src/composables/useNotifications.d.ts.map +0 -1
- package/dist/src/composables/useSimpleTabs.d.ts.map +0 -1
- package/dist/src/composables/useStringTransform.d.ts.map +0 -1
- package/dist/src/composables/useTabs.d.ts.map +0 -1
- package/dist/src/composables/useTheme.d.ts.map +0 -1
- package/dist/src/config/css-variables.d.ts.map +0 -1
- package/dist/src/config/design-tokens.d.ts.map +0 -1
- package/dist/src/config/index.d.ts.map +0 -1
- package/dist/src/dev.d.ts.map +0 -1
- package/dist/src/index.d.ts.map +0 -1
- package/dist/src/plugin/configure.d.ts.map +0 -1
- package/dist/src/plugin/index.d.ts.map +0 -1
- package/dist/src/types/avatars.d.ts.map +0 -1
- package/dist/src/types/badges.d.ts.map +0 -1
- package/dist/src/types/calendars.d.ts.map +0 -1
- package/dist/src/types/core.d.ts.map +0 -1
- package/dist/src/types/form.d.ts.map +0 -1
- package/dist/src/types/forms.d.ts.map +0 -1
- package/dist/src/types/index.d.ts.map +0 -1
- package/dist/src/types/inputs.d.ts.map +0 -1
- package/dist/src/types/layouts.d.ts.map +0 -1
- package/dist/src/types/loading.d.ts.map +0 -1
- package/dist/src/types/maps.d.ts.map +0 -1
- package/dist/src/types/navigation.d.ts.map +0 -1
- package/dist/src/types/tables.d.ts.map +0 -1
- package/dist/src/types/tabs.d.ts.map +0 -1
- package/dist/src/types/transitions.d.ts.map +0 -1
- package/dist/src/types/ui.d.ts.map +0 -1
- package/dist/src/utils/calendar.d.ts.map +0 -1
- package/dist/src/utils/component-registry.d.ts.map +0 -1
- package/dist/src/utils/countryCodes.d.ts.map +0 -1
- package/dist/src/utils/id.d.ts.map +0 -1
- package/dist/src/utils/index.d.ts.map +0 -1
- package/dist/src/utils/mapThemes.d.ts.map +0 -1
- package/dist/src/utils/phone.d.ts.map +0 -1
- package/dist/src/utils/transitions.d.ts.map +0 -1
- package/dist/src/views/components/index.d.ts.map +0 -1
- package/dist/src/views/examples/index.d.ts.map +0 -1
- package/dist/src/views/forms/index.d.ts.map +0 -1
- package/dist/src/views/index.d.ts.map +0 -1
- package/dist/src/views/inputs/index.d.ts.map +0 -1
- package/dist/src/views/layouts/index.d.ts.map +0 -1
- package/dist/vue-router-BPbyZ7xA.js +0 -145
- package/dist/vue-router-BPbyZ7xA.js.map +0 -1
- package/dist/vue3-lottie.es-C_MDkNwR.js +0 -7976
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { defineComponent as w, createElementBlock as s, openBlock as t, createCommentVNode as
|
|
2
|
-
import { _ as S } from "./SelectInput.vue_vue_type_script_setup_true_lang
|
|
1
|
+
import { defineComponent as w, createElementBlock as s, openBlock as t, createCommentVNode as n, createElementVNode as r, createVNode as I, unref as l, toDisplayString as d, Fragment as c, renderList as u, normalizeClass as h, withModifiers as V, createTextVNode as N, renderSlot as b } from "vue";
|
|
2
|
+
import { _ as S } from "./SelectInput.vue_vue_type_script_setup_true_lang-DHiZ-7K2.js";
|
|
3
3
|
import { u as $ } from "./useSimpleTabs-CSgkChEU.js";
|
|
4
4
|
const B = { class: "sl-w-full" }, M = {
|
|
5
5
|
key: 0,
|
|
@@ -16,72 +16,72 @@ const B = { class: "sl-w-full" }, M = {
|
|
|
16
16
|
badgeTheme: { default: "primary" }
|
|
17
17
|
},
|
|
18
18
|
emits: ["tab-changed"],
|
|
19
|
-
setup(
|
|
20
|
-
const
|
|
21
|
-
localTabs:
|
|
22
|
-
selectInputItems:
|
|
23
|
-
selectedTabItem:
|
|
24
|
-
setActiveTab:
|
|
25
|
-
handleSelectInputChange:
|
|
19
|
+
setup(a, { emit: k }) {
|
|
20
|
+
const i = a, p = k, {
|
|
21
|
+
localTabs: m,
|
|
22
|
+
selectInputItems: x,
|
|
23
|
+
selectedTabItem: g,
|
|
24
|
+
setActiveTab: f,
|
|
25
|
+
handleSelectInputChange: _,
|
|
26
26
|
hasCount: y,
|
|
27
27
|
slots: v,
|
|
28
28
|
selectId: T
|
|
29
29
|
} = $({
|
|
30
|
-
getTabs: () =>
|
|
31
|
-
onTabChange: (
|
|
30
|
+
getTabs: () => i.tabs,
|
|
31
|
+
onTabChange: (o) => p("tab-changed", o),
|
|
32
32
|
includeCountInName: !0,
|
|
33
|
-
badgeTheme:
|
|
33
|
+
badgeTheme: i.badgeTheme
|
|
34
34
|
});
|
|
35
|
-
return (
|
|
35
|
+
return (o, j) => (t(), s("div", B, [
|
|
36
36
|
a.dropdownOnMobile ? (t(), s("div", M, [
|
|
37
37
|
I(S, {
|
|
38
38
|
name: l(T),
|
|
39
39
|
label: a.title,
|
|
40
|
-
items: l(
|
|
41
|
-
"model-value": l(
|
|
40
|
+
items: l(x),
|
|
41
|
+
"model-value": l(g),
|
|
42
42
|
"item-key": "index",
|
|
43
43
|
"item-text": "name",
|
|
44
44
|
placeholder: "Select tab",
|
|
45
|
-
"onUpdate:modelValue": l(
|
|
45
|
+
"onUpdate:modelValue": l(_)
|
|
46
46
|
}, null, 8, ["name", "label", "items", "model-value", "onUpdate:modelValue"])
|
|
47
|
-
])) :
|
|
47
|
+
])) : n("", !0),
|
|
48
48
|
r("div", E, [
|
|
49
49
|
r("div", O, [
|
|
50
|
-
a.title ? (t(), s("h3", U,
|
|
50
|
+
a.title ? (t(), s("h3", U, d(a.title), 1)) : n("", !0),
|
|
51
51
|
r("div", z, [
|
|
52
52
|
r("nav", A, [
|
|
53
|
-
(t(!0), s(
|
|
53
|
+
(t(!0), s(c, null, u(l(m), (e, C) => (t(), s("a", {
|
|
54
54
|
key: e.name,
|
|
55
55
|
href: "#",
|
|
56
|
-
onClick: V((q) => l(
|
|
57
|
-
class:
|
|
56
|
+
onClick: V((q) => l(f)(C), ["prevent"]),
|
|
57
|
+
class: h([
|
|
58
58
|
e.current ? "sl-border-stachelock-600 sl-text-stachelock-600 dark:sl-text-stachelock-400" : "sl-border-transparent sl-text-gray-500 dark:sl-text-slate-400 hover:sl-border-gray-300 dark:hover:sl-border-slate-600 hover:sl-text-gray-700 dark:hover:sl-text-slate-300",
|
|
59
59
|
"sl-whitespace-nowrap sl-border-b-2 sl-px-1 sl-pb-4 sl-text-sm sl-font-medium sl-transition-colors sl-duration-200 sl-flex sl-items-center sl-gap-2",
|
|
60
60
|
e.disabled ? "sl-opacity-50 sl-cursor-not-allowed" : "sl-cursor-pointer"
|
|
61
61
|
]),
|
|
62
62
|
"aria-current": e.current ? "page" : void 0
|
|
63
63
|
}, [
|
|
64
|
-
N(
|
|
64
|
+
N(d(e.name) + " ", 1),
|
|
65
65
|
l(y)(e) ? (t(), s("span", {
|
|
66
66
|
key: 0,
|
|
67
|
-
class:
|
|
67
|
+
class: h([
|
|
68
68
|
"sl-rounded-full sl-py-0.5 sl-px-2.5 sl-text-xs sl-font-medium sl-tabular-nums",
|
|
69
69
|
e.current ? "sl-bg-stachelock-100 dark:sl-bg-stachelock-900/30 sl-text-stachelock-600 dark:sl-text-stachelock-400" : "sl-bg-gray-100 dark:sl-bg-slate-700 sl-text-gray-800 dark:sl-text-slate-200"
|
|
70
70
|
])
|
|
71
|
-
},
|
|
71
|
+
}, d(e.count), 3)) : n("", !0)
|
|
72
72
|
], 10, D))), 128))
|
|
73
73
|
])
|
|
74
74
|
])
|
|
75
75
|
])
|
|
76
76
|
]),
|
|
77
77
|
r("div", F, [
|
|
78
|
-
|
|
79
|
-
(t(!0), s(
|
|
78
|
+
b(o.$slots, "default"),
|
|
79
|
+
(t(!0), s(c, null, u(l(m), (e) => (t(), s(c, {
|
|
80
80
|
key: e.name
|
|
81
81
|
}, [
|
|
82
82
|
e.current && l(v)[e.name] ? (t(), s("div", L, [
|
|
83
|
-
|
|
84
|
-
])) :
|
|
83
|
+
b(o.$slots, e.name)
|
|
84
|
+
])) : n("", !0)
|
|
85
85
|
], 64))), 128))
|
|
86
86
|
])
|
|
87
87
|
]));
|
|
@@ -90,4 +90,4 @@ const B = { class: "sl-w-full" }, M = {
|
|
|
90
90
|
export {
|
|
91
91
|
K as _
|
|
92
92
|
};
|
|
93
|
-
//# sourceMappingURL=InlineTabs.vue_vue_type_script_setup_true_lang-
|
|
93
|
+
//# sourceMappingURL=InlineTabs.vue_vue_type_script_setup_true_lang-CD0lnkUm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InlineTabs.vue_vue_type_script_setup_true_lang-
|
|
1
|
+
{"version":3,"file":"InlineTabs.vue_vue_type_script_setup_true_lang-CD0lnkUm.js","sources":["../src/components/tabs/InlineTabs.vue"],"sourcesContent":["<!--\n @component InlineTabs\n @description Simple inline tab navigation with underline indicator.\n \n A lightweight tab component for simple tab navigation scenarios.\n Uses named slots for tab content. Shows SelectInput dropdown on mobile.\n \n @props\n - tabs (SimpleTabItem[], required): Array of tab configurations\n - title (string, optional): Optional heading title\n - dropdownOnMobile (boolean, optional): Show dropdown on mobile (default: true)\n - badgeTheme (TabBadgeTheme, optional): Theme for count badges (default: 'primary')\n \n @emits\n - tab-changed: Emitted when active tab changes, payload is the new index\n \n @example\n <InlineTabs\n title=\"Settings\"\n :tabs=\"[\n { name: 'General', current: true },\n { name: 'Security', current: false, count: 2 },\n { name: 'Notifications', current: false, count: 5 }\n ]\"\n @tab-changed=\"handleTabChange\"\n >\n <template #General>General content</template>\n <template #Security>Security content</template>\n <template #Notifications>Notifications content</template>\n </InlineTabs>\n-->\n<template>\n <div class=\"sl-w-full\">\n <!-- Mobile dropdown using SelectInput -->\n <div v-if=\"dropdownOnMobile\" class=\"sl-block sm:sl-hidden sl-mb-4\">\n <SelectInput\n :name=\"selectId\"\n :label=\"title\"\n :items=\"selectInputItems\"\n :model-value=\"selectedTabItem\"\n item-key=\"index\"\n item-text=\"name\"\n placeholder=\"Select tab\"\n @update:model-value=\"handleSelectInputChange\"\n />\n </div>\n\n <!-- Desktop tabs -->\n <div class=\"sl-hidden sm:sl-block\">\n <div class=\"sl-border-b sl-border-gray-200 dark:sl-border-slate-700 sm:sl-flex sm:sl-items-baseline\">\n <h3\n v-if=\"title\"\n class=\"sl-text-base sl-font-semibold sl-leading-6 sl-text-gray-800 dark:sl-text-white\"\n >\n {{ title }}\n </h3>\n <div class=\"sl-mt-4 sm:sl-ml-10 sm:sl-mt-0\">\n <nav class=\"sl--mb-px sl-flex sl-space-x-8\">\n <a\n v-for=\"(tab, index) in localTabs\"\n :key=\"tab.name\"\n href=\"#\"\n @click.prevent=\"setActiveTab(index)\"\n :class=\"[\n tab.current \n ? 'sl-border-stachelock-600 sl-text-stachelock-600 dark:sl-text-stachelock-400' \n : 'sl-border-transparent sl-text-gray-500 dark:sl-text-slate-400 hover:sl-border-gray-300 dark:hover:sl-border-slate-600 hover:sl-text-gray-700 dark:hover:sl-text-slate-300',\n 'sl-whitespace-nowrap sl-border-b-2 sl-px-1 sl-pb-4 sl-text-sm sl-font-medium sl-transition-colors sl-duration-200 sl-flex sl-items-center sl-gap-2',\n tab.disabled ? 'sl-opacity-50 sl-cursor-not-allowed' : 'sl-cursor-pointer'\n ]\"\n :aria-current=\"tab.current ? 'page' : undefined\"\n >\n {{ tab.name }}\n <span\n v-if=\"hasCount(tab)\"\n :class=\"[\n 'sl-rounded-full sl-py-0.5 sl-px-2.5 sl-text-xs sl-font-medium sl-tabular-nums',\n tab.current\n ? 'sl-bg-stachelock-100 dark:sl-bg-stachelock-900/30 sl-text-stachelock-600 dark:sl-text-stachelock-400'\n : 'sl-bg-gray-100 dark:sl-bg-slate-700 sl-text-gray-800 dark:sl-text-slate-200'\n ]\"\n >\n {{ tab.count }}\n </span>\n </a>\n </nav>\n </div>\n </div>\n </div>\n \n <!-- Default slot for general content -->\n <div class=\"sl-mt-4\">\n <slot name=\"default\" />\n \n <!-- Named slots for each tab -->\n <template v-for=\"tab in localTabs\" :key=\"tab.name\">\n <div v-if=\"tab.current && slots[tab.name]\">\n <slot :name=\"tab.name\" />\n </div>\n </template>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport SelectInput from '../inputs/SelectInput.vue';\nimport { useSimpleTabs } from '../../composables/useSimpleTabs';\nimport type { SimpleTabItem, TabBadgeTheme } from '../../types/tabs';\n\ninterface Props {\n tabs: SimpleTabItem[];\n title?: string;\n dropdownOnMobile?: boolean;\n badgeTheme?: TabBadgeTheme;\n}\n\nconst props = withDefaults(defineProps<Props>(), {\n dropdownOnMobile: true,\n badgeTheme: 'primary'\n});\n\nconst emit = defineEmits<{\n 'tab-changed': [tabIndex: number];\n}>();\n\n// Use the shared composable for all tab logic\nconst {\n localTabs,\n selectInputItems,\n selectedTabItem,\n setActiveTab,\n handleSelectInputChange,\n hasCount,\n slots,\n selectId\n} = useSimpleTabs({\n getTabs: () => props.tabs,\n onTabChange: (index) => emit('tab-changed', index),\n includeCountInName: true,\n badgeTheme: props.badgeTheme\n});\n</script>\n"],"names":["props","__props","emit","__emit","localTabs","selectInputItems","selectedTabItem","setActiveTab","handleSelectInputChange","hasCount","slots","selectId","useSimpleTabs","index","_openBlock","_createElementBlock","_hoisted_1","_hoisted_2","_createVNode","SelectInput","_unref","_createElementVNode","_hoisted_3","_hoisted_4","_hoisted_5","_toDisplayString","_hoisted_6","_hoisted_7","_Fragment","_renderList","tab","_withModifiers","$event","_normalizeClass","_hoisted_9","_renderSlot","_ctx","_hoisted_10"],"mappings":";;;;;;;;;;;;;;;;;;;AAoHA,UAAMA,IAAQC,GAKRC,IAAOC,GAKP;AAAA,MACJ,WAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,iBAAAC;AAAA,MACA,cAAAC;AAAA,MACA,yBAAAC;AAAA,MACA,UAAAC;AAAA,MACA,OAAAC;AAAA,MACA,UAAAC;AAAA,IAAA,IACEC,EAAc;AAAA,MAChB,SAAS,MAAMZ,EAAM;AAAA,MACrB,aAAa,CAACa,MAAUX,EAAK,eAAeW,CAAK;AAAA,MACjD,oBAAoB;AAAA,MACpB,YAAYb,EAAM;AAAA,IAAA,CACnB;sBA5GCc,EAAA,GAAAC,EAqEM,OArENC,GAqEM;AAAA,MAnEOf,EAAA,oBAAXa,EAAA,GAAAC,EAWM,OAXNE,GAWM;AAAA,QAVJC,EASEC,GAAA;AAAA,UARC,MAAMC,EAAAT,CAAA;AAAA,UACN,OAAOV,EAAA;AAAA,UACP,OAAOmB,EAAAf,CAAA;AAAA,UACP,eAAae,EAAAd,CAAA;AAAA,UACd,YAAS;AAAA,UACT,aAAU;AAAA,UACV,aAAY;AAAA,UACX,uBAAoBc,EAAAZ,CAAA;AAAA,QAAA;;MAKzBa,EAwCM,OAxCNC,GAwCM;AAAA,QAvCJD,EAsCM,OAtCNE,GAsCM;AAAA,UApCItB,EAAA,cADRc,EAKK,MALLS,GAKKC,EADAxB,EAAA,KAAK,GAAA,CAAA;UAEVoB,EA8BM,OA9BNK,GA8BM;AAAA,YA7BJL,EA4BM,OA5BNM,GA4BM;AAAA,eA3BJb,EAAA,EAAA,GAAAC,EA0BIa,GAAA,MAAAC,EAzBqBT,EAAAhB,CAAA,GAAS,CAAxB0B,GAAKjB,YADfE,EA0BI,KAAA;AAAA,gBAxBD,KAAKe,EAAI;AAAA,gBACV,MAAK;AAAA,gBACJ,SAAKC,EAAA,CAAAC,MAAUZ,EAAAb,CAAA,EAAaM,CAAK,GAAA,CAAA,SAAA,CAAA;AAAA,gBACjC,OAAKoB,EAAA;AAAA,kBAAoBH,EAAI;;kBAAmeA,EAAI,WAAQ,wCAAA;AAAA,gBAAA;gBAO5gB,gBAAcA,EAAI,mBAAmB;AAAA,cAAA;oBAEnCA,EAAI,IAAI,IAAG,KACd,CAAA;AAAA,gBACQV,EAAAX,CAAA,EAASqB,CAAG,UADpBf,EAUO,QAAA;AAAA;kBARJ,OAAKkB,EAAA;AAAA;oBAAyHH,EAAI;;mBAOhIL,EAAAK,EAAI,KAAK,GAAA,CAAA;;;;;;MASxBT,EASM,OATNa,GASM;AAAA,QARJC,EAAuBC,EAAA,QAAA,SAAA;AAAA,gBAGvBrB,EAIWa,GAAA,MAAAC,EAJaT,EAAAhB,CAAA,GAAS,CAAhB0B;UAAwB,KAAAA,EAAI;AAAA,QAAA;UAChCA,EAAI,WAAWV,KAAMU,EAAI,IAAI,UAAxCf,EAEM,OAAAsB,GAAA;AAAA,YADJF,EAAyBC,EAAA,QAAZN,EAAI,IAAI;AAAA,UAAA;;;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { defineComponent as m, computed as
|
|
1
|
+
import { defineComponent as m, computed as i, createBlock as y, openBlock as p, mergeProps as u } from "vue";
|
|
2
2
|
import g from "./charts/BaseChart.js";
|
|
3
|
-
import { chartColors as f, getAreaGradient as
|
|
4
|
-
const
|
|
3
|
+
import { chartColors as f, getAreaGradient as s } from "./charts/chartTheme.js";
|
|
4
|
+
const x = /* @__PURE__ */ m({
|
|
5
5
|
__name: "LineChart",
|
|
6
6
|
props: {
|
|
7
7
|
data: {},
|
|
@@ -15,18 +15,18 @@ const v = /* @__PURE__ */ m({
|
|
|
15
15
|
showLegend: { type: Boolean, default: !0 }
|
|
16
16
|
},
|
|
17
17
|
emits: ["click"],
|
|
18
|
-
setup(
|
|
19
|
-
const e =
|
|
20
|
-
const t =
|
|
21
|
-
name:
|
|
18
|
+
setup(o, { emit: n }) {
|
|
19
|
+
const e = o, c = n, l = i(() => Array.isArray(e.data) && e.data.length > 0 && typeof e.data[0] == "object"), d = i(() => {
|
|
20
|
+
const t = l.value ? e.data.map((a, r) => ({
|
|
21
|
+
name: a.name,
|
|
22
22
|
type: "line",
|
|
23
|
-
data:
|
|
23
|
+
data: a.data,
|
|
24
24
|
smooth: e.smooth,
|
|
25
25
|
symbol: "circle",
|
|
26
26
|
symbolSize: 6,
|
|
27
27
|
lineStyle: { width: 2 },
|
|
28
|
-
areaStyle: e.showArea ? { color:
|
|
29
|
-
itemStyle: { color: e.colors[
|
|
28
|
+
areaStyle: e.showArea ? { color: s(e.colors[r % e.colors.length]) } : void 0,
|
|
29
|
+
itemStyle: { color: e.colors[r % e.colors.length] }
|
|
30
30
|
})) : [{
|
|
31
31
|
type: "line",
|
|
32
32
|
data: e.data,
|
|
@@ -34,12 +34,12 @@ const v = /* @__PURE__ */ m({
|
|
|
34
34
|
symbol: "circle",
|
|
35
35
|
symbolSize: 6,
|
|
36
36
|
lineStyle: { width: 2 },
|
|
37
|
-
areaStyle: e.showArea ? { color:
|
|
37
|
+
areaStyle: e.showArea ? { color: s(e.colors[0]) } : void 0,
|
|
38
38
|
itemStyle: { color: e.colors[0] }
|
|
39
39
|
}];
|
|
40
40
|
return {
|
|
41
41
|
title: e.title ? { text: e.title } : void 0,
|
|
42
|
-
legend: e.showLegend &&
|
|
42
|
+
legend: e.showLegend && l.value ? { show: !0 } : { show: !1 },
|
|
43
43
|
xAxis: {
|
|
44
44
|
type: "category",
|
|
45
45
|
data: e.xAxisData,
|
|
@@ -53,14 +53,14 @@ const v = /* @__PURE__ */ m({
|
|
|
53
53
|
}), h = (t) => {
|
|
54
54
|
c("click", t);
|
|
55
55
|
};
|
|
56
|
-
return (t,
|
|
56
|
+
return (t, a) => (p(), y(g, u({
|
|
57
57
|
option: d.value,
|
|
58
|
-
height:
|
|
59
|
-
loading:
|
|
58
|
+
height: o.height,
|
|
59
|
+
loading: o.loading
|
|
60
60
|
}, t.$attrs, { onClick: h }), null, 16, ["option", "height", "loading"]));
|
|
61
61
|
}
|
|
62
62
|
});
|
|
63
63
|
export {
|
|
64
|
-
|
|
64
|
+
x as _
|
|
65
65
|
};
|
|
66
|
-
//# sourceMappingURL=LineChart.vue_vue_type_script_setup_true_lang-
|
|
66
|
+
//# sourceMappingURL=LineChart.vue_vue_type_script_setup_true_lang-DJo0edLJ.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LineChart.vue_vue_type_script_setup_true_lang-
|
|
1
|
+
{"version":3,"file":"LineChart.vue_vue_type_script_setup_true_lang-DJo0edLJ.js","sources":["../src/components/charts/LineChart.vue"],"sourcesContent":["<!--\n @component LineChart\n @description Line chart component with optional area fill.\n \n @props\n - data (array, required): Array of data points\n - xAxisData (array, required): X-axis labels\n - title (string, optional): Chart title\n - smooth (boolean, optional): Smooth line curve\n - showArea (boolean, optional): Fill area under line\n - height (number|string, optional): Chart height\n - colors (array, optional): Custom color palette\n \n @example\n <LineChart\n :data=\"salesData\"\n :x-axis-data=\"months\"\n title=\"Monthly Sales\"\n smooth\n show-area\n />\n-->\n<template>\n <BaseChart\n :option=\"chartOption\"\n :height=\"height\"\n :loading=\"loading\"\n v-bind=\"$attrs\"\n @click=\"handleClick\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport { computed } from 'vue';\nimport BaseChart from './BaseChart.vue';\nimport { chartColors, getAreaGradient } from './chartTheme';\nimport type { EChartsOption } from 'echarts';\n\ninterface SeriesData {\n name: string;\n data: number[];\n}\n\ninterface Props {\n data: number[] | SeriesData[];\n xAxisData: string[];\n title?: string;\n smooth?: boolean;\n showArea?: boolean;\n height?: number | string;\n colors?: string[];\n loading?: boolean;\n showLegend?: boolean;\n}\n\nconst props = withDefaults(defineProps<Props>(), {\n smooth: true,\n showArea: false,\n height: 300,\n colors: () => chartColors.primary,\n loading: false,\n showLegend: true,\n});\n\nconst emit = defineEmits<{\n click: [params: unknown];\n}>();\n\nconst isMultiSeries = computed(() => {\n return Array.isArray(props.data) && props.data.length > 0 && typeof props.data[0] === 'object';\n});\n\nconst chartOption = computed<EChartsOption>(() => {\n const series = isMultiSeries.value\n ? (props.data as SeriesData[]).map((s, idx) => ({\n name: s.name,\n type: 'line' as const,\n data: s.data,\n smooth: props.smooth,\n symbol: 'circle',\n symbolSize: 6,\n lineStyle: { width: 2 },\n areaStyle: props.showArea ? { color: getAreaGradient(props.colors[idx % props.colors.length]) } : undefined,\n itemStyle: { color: props.colors[idx % props.colors.length] },\n }))\n : [{\n type: 'line' as const,\n data: props.data as number[],\n smooth: props.smooth,\n symbol: 'circle',\n symbolSize: 6,\n lineStyle: { width: 2 },\n areaStyle: props.showArea ? { color: getAreaGradient(props.colors[0]) } : undefined,\n itemStyle: { color: props.colors[0] },\n }];\n\n return {\n title: props.title ? { text: props.title } : undefined,\n legend: props.showLegend && isMultiSeries.value ? { show: true } : { show: false },\n xAxis: {\n type: 'category',\n data: props.xAxisData,\n boundaryGap: false,\n },\n yAxis: {\n type: 'value',\n },\n series,\n };\n});\n\nconst handleClick = (params: unknown): void => {\n emit('click', params);\n};\n</script>\n\n"],"names":["props","__props","emit","__emit","isMultiSeries","computed","chartOption","series","s","idx","getAreaGradient","handleClick","params","_openBlock","_createBlock","BaseChart","_mergeProps","$attrs"],"mappings":";;;;;;;;;;;;;;;;;;AAuDA,UAAMA,IAAQC,GASRC,IAAOC,GAIPC,IAAgBC,EAAS,MACtB,MAAM,QAAQL,EAAM,IAAI,KAAKA,EAAM,KAAK,SAAS,KAAK,OAAOA,EAAM,KAAK,CAAC,KAAM,QACvF,GAEKM,IAAcD,EAAwB,MAAM;AAChD,YAAME,IAASH,EAAc,QACxBJ,EAAM,KAAsB,IAAI,CAACQ,GAAGC,OAAS;AAAA,QAC5C,MAAMD,EAAE;AAAA,QACR,MAAM;AAAA,QACN,MAAMA,EAAE;AAAA,QACR,QAAQR,EAAM;AAAA,QACd,QAAQ;AAAA,QACR,YAAY;AAAA,QACZ,WAAW,EAAE,OAAO,EAAA;AAAA,QACpB,WAAWA,EAAM,WAAW,EAAE,OAAOU,EAAgBV,EAAM,OAAOS,IAAMT,EAAM,OAAO,MAAM,CAAC,MAAM;AAAA,QAClG,WAAW,EAAE,OAAOA,EAAM,OAAOS,IAAMT,EAAM,OAAO,MAAM,EAAA;AAAA,MAAE,EAC5D,IACF,CAAC;AAAA,QACC,MAAM;AAAA,QACN,MAAMA,EAAM;AAAA,QACZ,QAAQA,EAAM;AAAA,QACd,QAAQ;AAAA,QACR,YAAY;AAAA,QACZ,WAAW,EAAE,OAAO,EAAA;AAAA,QACpB,WAAWA,EAAM,WAAW,EAAE,OAAOU,EAAgBV,EAAM,OAAO,CAAC,CAAC,EAAA,IAAM;AAAA,QAC1E,WAAW,EAAE,OAAOA,EAAM,OAAO,CAAC,EAAA;AAAA,MAAE,CACrC;AAEL,aAAO;AAAA,QACL,OAAOA,EAAM,QAAQ,EAAE,MAAMA,EAAM,UAAU;AAAA,QAC7C,QAAQA,EAAM,cAAcI,EAAc,QAAQ,EAAE,MAAM,GAAA,IAAS,EAAE,MAAM,GAAA;AAAA,QAC3E,OAAO;AAAA,UACL,MAAM;AAAA,UACN,MAAMJ,EAAM;AAAA,UACZ,aAAa;AAAA,QAAA;AAAA,QAEf,OAAO;AAAA,UACL,MAAM;AAAA,QAAA;AAAA,QAER,QAAAO;AAAA,MAAA;AAAA,IAEJ,CAAC,GAEKI,IAAc,CAACC,MAA0B;AAC7C,MAAAV,EAAK,SAASU,CAAM;AAAA,IACtB;sBA1FEC,EAAA,GAAAC,EAMEC,GANFC,EAME;AAAA,MALC,QAAQV,EAAA;AAAA,MACR,QAAQL,EAAA;AAAA,MACR,SAASA,EAAA;AAAA,IAAA,GACFgB,EAAAA,QAAM,EACb,SAAON,EAAA,CAAW,GAAA,MAAA,IAAA,CAAA,UAAA,UAAA,SAAA,CAAA;AAAA;;"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { defineComponent as r, defineAsyncComponent as d, inject as f, computed as l, createBlock as s, createCommentVNode as v, openBlock as y, unref as c } from "vue";
|
|
2
|
+
const C = /* @__PURE__ */ r({
|
|
3
|
+
__name: "LottieAnimation",
|
|
4
|
+
props: {
|
|
5
|
+
animationData: {},
|
|
6
|
+
height: { default: 200 },
|
|
7
|
+
width: { default: 200 },
|
|
8
|
+
loop: { type: [Boolean, Number], default: void 0 },
|
|
9
|
+
autoplay: { type: Boolean, default: void 0 },
|
|
10
|
+
speed: { default: 1 },
|
|
11
|
+
pauseOnHover: { type: Boolean, default: !1 }
|
|
12
|
+
},
|
|
13
|
+
emits: ["complete", "loop-complete", "enter-frame"],
|
|
14
|
+
setup(e) {
|
|
15
|
+
const u = d(
|
|
16
|
+
() => import("./vue3-lottie.es-DT4qZE-F.js").then((o) => o.Vue3Lottie)
|
|
17
|
+
), n = e, i = f("lottie", {}), p = l(() => n.loop !== void 0 ? n.loop : i.loop ?? !0), m = l(() => n.autoplay !== void 0 ? n.autoplay : i.autoplay ?? !0);
|
|
18
|
+
return (o, t) => e.animationData ? (y(), s(c(u), {
|
|
19
|
+
key: 0,
|
|
20
|
+
animationData: e.animationData,
|
|
21
|
+
height: e.height,
|
|
22
|
+
width: e.width,
|
|
23
|
+
loop: p.value,
|
|
24
|
+
autoplay: m.value,
|
|
25
|
+
speed: e.speed,
|
|
26
|
+
pauseOnHover: e.pauseOnHover,
|
|
27
|
+
onComplete: t[0] || (t[0] = (a) => o.$emit("complete")),
|
|
28
|
+
onLoopComplete: t[1] || (t[1] = (a) => o.$emit("loop-complete")),
|
|
29
|
+
onEnterFrame: t[2] || (t[2] = (a) => o.$emit("enter-frame", a))
|
|
30
|
+
}, null, 8, ["animationData", "height", "width", "loop", "autoplay", "speed", "pauseOnHover"])) : v("", !0);
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
export {
|
|
34
|
+
C as _
|
|
35
|
+
};
|
|
36
|
+
//# sourceMappingURL=LottieAnimation.vue_vue_type_script_setup_true_lang-swmHdR0_.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LottieAnimation.vue_vue_type_script_setup_true_lang-
|
|
1
|
+
{"version":3,"file":"LottieAnimation.vue_vue_type_script_setup_true_lang-swmHdR0_.js","sources":["../src/components/LottieAnimation.vue"],"sourcesContent":["<template>\n <Vue3Lottie\n v-if=\"animationData\"\n :animationData=\"animationData\"\n :height=\"height\"\n :width=\"width\"\n :loop=\"effectiveLoop\"\n :autoplay=\"effectiveAutoplay\"\n :speed=\"speed\"\n :pauseOnHover=\"pauseOnHover\"\n @complete=\"$emit('complete')\"\n @loopComplete=\"$emit('loop-complete')\"\n @enterFrame=\"$emit('enter-frame', $event)\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, inject, defineAsyncComponent } from 'vue';\nimport type { LottieOptions } from '@/plugin/configure';\n\n// Dynamic import for Vue3Lottie\nconst Vue3Lottie = defineAsyncComponent(() => \n import('vue3-lottie').then(m => m.Vue3Lottie)\n);\n\ninterface Props {\n /** Lottie animation JSON data */\n animationData: unknown;\n /** Animation height */\n height?: number | string;\n /** Animation width */\n width?: number | string;\n /** Loop the animation */\n loop?: boolean | number;\n /** Auto-play the animation */\n autoplay?: boolean;\n /** Animation speed (1 = normal) */\n speed?: number;\n /** Pause on hover */\n pauseOnHover?: boolean;\n}\n\nconst props = withDefaults(defineProps<Props>(), {\n height: 200,\n width: 200,\n loop: undefined,\n autoplay: undefined,\n speed: 1,\n pauseOnHover: false,\n});\n\ndefineEmits<{\n (e: 'complete'): void;\n (e: 'loop-complete'): void;\n (e: 'enter-frame', frame: number): void;\n}>();\n\n// Get plugin configuration\nconst lottieConfig = inject<LottieOptions>('lottie', {});\n\n// Apply defaults from config if not explicitly set\nconst effectiveLoop = computed(() => {\n if (props.loop !== undefined) return props.loop;\n return lottieConfig.loop ?? true;\n});\n\nconst effectiveAutoplay = computed(() => {\n if (props.autoplay !== undefined) return props.autoplay;\n return lottieConfig.autoplay ?? true;\n});\n</script>\n\n"],"names":["Vue3Lottie","defineAsyncComponent","m","props","__props","lottieConfig","inject","effectiveLoop","computed","effectiveAutoplay","_createBlock","_unref","$emit","_cache","$event"],"mappings":";;;;;;;;;;;;;;AAqBA,UAAMA,IAAaC;AAAA,MAAqB,MACtC,OAAO,8BAAa,EAAE,KAAK,CAAAC,MAAKA,EAAE,UAAU;AAAA,IAAA,GAoBxCC,IAAQC,GAgBRC,IAAeC,EAAsB,UAAU,EAAE,GAGjDC,IAAgBC,EAAS,MACzBL,EAAM,SAAS,SAAkBA,EAAM,OACpCE,EAAa,QAAQ,EAC7B,GAEKI,IAAoBD,EAAS,MAC7BL,EAAM,aAAa,SAAkBA,EAAM,WACxCE,EAAa,YAAY,EACjC;qBAnESD,EAAA,sBADRM,EAYEC,EAAAX,CAAA,GAAA;AAAA;MAVC,eAAeI,EAAA;AAAA,MACf,QAAQA,EAAA;AAAA,MACR,OAAOA,EAAA;AAAA,MACP,MAAMG,EAAA;AAAA,MACN,UAAUE,EAAA;AAAA,MACV,OAAOL,EAAA;AAAA,MACP,cAAcA,EAAA;AAAA,MACd,mCAAUQ,EAAAA,MAAK,UAAA;AAAA,MACf,uCAAcA,EAAAA,MAAK,eAAA;AAAA,MACnB,cAAUC,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAEF,EAAAA,MAAK,eAAgBE,CAAM;AAAA,IAAA;;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { defineComponent as R, computed as u, createElementBlock as r, openBlock as o, createElementVNode as a, Fragment as i, renderList as c, toDisplayString as g, normalizeClass as h, createCommentVNode as m, unref as L, normalizeStyle as _, withModifiers as X } from "vue";
|
|
2
|
-
import { f as $ } from "./calendar-
|
|
2
|
+
import { f as $ } from "./calendar-BlSSD4nO.js";
|
|
3
3
|
import { u as q, c as G } from "./useEventSegments-B-r_8zCW.js";
|
|
4
4
|
const J = { class: "sl-shadow sl-ring-1 sl-ring-black dark:sl-ring-slate-700 sl-ring-opacity-5 lg:sl-flex lg:sl-flex-auto lg:sl-flex-col" }, Q = { class: "sl-grid sl-grid-cols-7 sl-gap-px sl-border-b sl-border-gray-300 dark:sl-border-slate-600 sl-bg-gray-200 dark:sl-bg-slate-800 sl-text-center sl-text-xs sl-font-semibold sl-leading-6 sl-text-gray-700 dark:sl-text-slate-300 lg:sl-flex-none" }, U = { class: "sl-flex sl-bg-gray-200 dark:sl-bg-slate-800 sl-text-xs sl-leading-6 sl-text-gray-700 dark:sl-text-slate-300 lg:sl-flex-auto" }, Y = { class: "sl-hidden sl-w-full lg:sl-grid lg:sl-grid-cols-7 lg:sl-grid-rows-6 lg:sl-gap-px" }, Z = { class: "sl-px-3" }, ss = ["datetime"], es = { class: "sl-mt-2 sl-space-y-1 sl-min-h-0" }, ls = ["onClick"], ts = { class: "sl-relative" }, ns = {
|
|
5
5
|
key: 0,
|
|
@@ -190,4 +190,4 @@ const J = { class: "sl-shadow sl-ring-1 sl-ring-black dark:sl-ring-slate-700 sl-
|
|
|
190
190
|
export {
|
|
191
191
|
ps as _
|
|
192
192
|
};
|
|
193
|
-
//# sourceMappingURL=MonthCalendar.vue_vue_type_style_index_0_lang-
|
|
193
|
+
//# sourceMappingURL=MonthCalendar.vue_vue_type_style_index_0_lang-Cyzq7A9j.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MonthCalendar.vue_vue_type_style_index_0_lang-CnX3Ih0W.js","sources":["../src/components/calendars/MonthCalendar.vue"],"sourcesContent":["<!--\n @component MonthCalendar\n @description Full month calendar grid with multi-day event support.\n \n Features:\n - 6-week calendar grid with day headers\n - Multi-day event bars that span across days\n - Event lane calculation for non-overlapping display\n - \"+X more\" overflow indicators with click-to-expand\n - Responsive mobile view with compact event dots\n - Rate plan color indicators\n - Day selection and double-click navigation\n \n @example\n <MonthCalendar\n :days=\"calendarDays\"\n :events=\"events\"\n @selectDay=\"handleDaySelect\"\n @select:event=\"handleEventSelect\"\n @doubleSelectDay=\"handleDoubleSelectDay\"\n />\n-->\n<template>\n <div class=\"sl-shadow sl-ring-1 sl-ring-black dark:sl-ring-slate-700 sl-ring-opacity-5 lg:sl-flex lg:sl-flex-auto lg:sl-flex-col\">\n <!-- Day headers -->\n <div class=\"sl-grid sl-grid-cols-7 sl-gap-px sl-border-b sl-border-gray-300 dark:sl-border-slate-600 sl-bg-gray-200 dark:sl-bg-slate-800 sl-text-center sl-text-xs sl-font-semibold sl-leading-6 sl-text-gray-700 dark:sl-text-slate-300 lg:sl-flex-none\">\n <div v-for=\"dayName in dayHeaders\" :key=\"dayName\" class=\"sl-bg-white dark:sl-bg-slate-900 sl-py-2\">\n {{ dayName }}\n </div>\n </div>\n \n <!-- Calendar grid -->\n <div class=\"sl-flex sl-bg-gray-200 dark:sl-bg-slate-800 sl-text-xs sl-leading-6 sl-text-gray-700 dark:sl-text-slate-300 lg:sl-flex-auto\">\n <!-- Desktop view -->\n <div class=\"sl-hidden sl-w-full lg:sl-grid lg:sl-grid-cols-7 lg:sl-grid-rows-6 lg:sl-gap-px\">\n <div \n v-for=\"day in formattedDays\" \n :key=\"day.date\"\n :class=\"[\n day.isCurrentMonth ? 'sl-bg-white dark:sl-bg-slate-900' : 'sl-bg-gray-50 dark:sl-bg-slate-800 sl-text-gray-500 dark:sl-text-slate-400',\n 'sl-relative sl-py-2 sl-min-w-0'\n ]\"\n >\n <div class=\"sl-px-3\">\n <time \n :datetime=\"day.date\"\n :class=\"[\n day.isToday \n ? 'sl-flex sl-h-6 sl-w-6 sl-items-center sl-justify-center sl-rounded-full sl-bg-stachelock-600 sl-font-semibold sl-text-white' \n : ''\n ]\"\n >\n {{ getDayNumber(day.date) }}\n </time>\n </div>\n \n <!-- Event bars with lanes -->\n <div class=\"sl-mt-2 sl-space-y-1 sl-min-h-0\">\n <template v-for=\"lane in Array.from({ length: maxLanes }, (_, i) => i)\" :key=\"`lane-${lane}`\">\n <button \n v-for=\"event in eventsForDayAndLane(day.date, lane)\" \n :key=\"event.id\"\n class=\"sl-group sl-w-full sl-block\"\n @click=\"handleEventClick(event.id)\"\n >\n <div class=\"sl-relative\">\n <div :class=\"barClass(day.date, event)\">\n <span v-if=\"showLabel(day.date, event)\" class=\"sl-truncate sl-block\">\n {{ labelFor(day.date, event) || event.name }}\n </span>\n </div>\n <span \n v-if=\"event.ratePlanColor\"\n class=\"sl-absolute sl--top-1 sl--right-1 sl-inline-block sl-h-2.5 sl-w-2.5 sl-rounded-full sl-ring-1 sl-ring-white\"\n :style=\"{ backgroundColor: event.ratePlanColor }\"\n />\n </div>\n </button>\n </template>\n \n <!-- Overflow indicator -->\n <div v-if=\"overflowCount(day) > 0\" class=\"sl-mt-1 sl-px-3\">\n <button \n class=\"sl-text-[11px] sl-font-medium sl-text-stachelock-700 dark:sl-text-stachelock-400 hover:sl-text-stachelock-900 dark:hover:sl-text-stachelock-300 sl-underline\"\n @click=\"handleDayClick(day)\"\n >\n +{{ overflowCount(day) }} more\n </button>\n </div>\n </div>\n </div>\n </div>\n \n <!-- Mobile view -->\n <div class=\"sl-isolate sl-grid sl-w-full sl-grid-cols-7 sl-grid-rows-6 sl-gap-px lg:sl-hidden\">\n <button \n v-for=\"day in formattedDays\" \n :key=\"day.date\"\n type=\"button\"\n :class=\"[\n day.isCurrentMonth ? 'sl-bg-white dark:sl-bg-slate-900' : 'sl-bg-gray-50 dark:sl-bg-slate-800',\n (day.isSelected || day.isToday) && 'sl-font-semibold',\n day.isSelected && 'sl-text-white',\n !day.isSelected && day.isToday && 'sl-text-stachelock-600 dark:sl-text-stachelock-400',\n !day.isSelected && day.isCurrentMonth && !day.isToday && 'sl-text-gray-800 dark:sl-text-slate-200',\n !day.isSelected && !day.isCurrentMonth && !day.isToday && 'sl-text-gray-500 dark:sl-text-slate-500',\n 'sl-flex sl-min-h-[3.5rem] sl-flex-col sl-items-center sl-py-2 hover:sl-bg-gray-100 dark:hover:sl-bg-slate-700 focus:sl-z-10 sl-overflow-visible'\n ]\"\n @click=\"handleDayClick(day)\"\n @dblclick=\"handleDayDoubleClick(day)\"\n >\n <time \n :datetime=\"day.date\"\n :class=\"[\n day.isSelected && 'sl-flex sl-h-6 sl-w-6 sl-items-center sl-justify-center sl-rounded-full',\n day.isSelected && day.isToday && 'sl-bg-stachelock-600',\n day.isSelected && !day.isToday && 'sl-bg-gray-900 dark:sl-bg-slate-200 dark:sl-text-slate-900'\n ]\"\n >\n {{ getDayNumber(day.date) }}\n </time>\n <span class=\"sl-sr-only\">{{ day.events?.length || 0 }} events</span>\n \n <!-- Multi-day event bars (compact) -->\n <ol v-if=\"multiDayEventsForDay(day).length > 0\" class=\"sl-mt-auto sl-w-full sl-space-y-0.5 sl-overflow-visible\">\n <li v-for=\"event in multiDayEventsForDay(day)\" :key=\"event.id\" class=\"sl-overflow-visible\">\n <button class=\"sl-group sl-w-full sl-overflow-visible\" @click.stop=\"handleEventClick(event.id)\">\n <div class=\"sl-relative sl-overflow-visible\">\n <div :class=\"barClassCompact(day.date, event)\" />\n <span \n v-if=\"event.ratePlanColor\" \n class=\"sl-absolute sl--top-0.5 sl-right-0 sl-inline-block sl-h-1.5 sl-w-1.5 sl-rounded-full sl-ring-1 sl-ring-white sl-z-20\" \n :style=\"{ backgroundColor: event.ratePlanColor }\"\n />\n </div>\n </button>\n </li>\n </ol>\n \n <!-- Single-day event dots -->\n <div v-if=\"singleDayEventsForDay(day).length > 0\" class=\"sl-mt-auto sl-flex sl-flex-wrap sl-justify-center sl-gap-0.5 sl-overflow-visible\">\n <span \n v-for=\"event in singleDayEventsForDay(day)\" \n :key=\"event.id\"\n class=\"sl-h-1.5 sl-w-1.5 sl-rounded-full sl-flex-shrink-0\"\n :style=\"{ backgroundColor: event.ratePlanColor || '#9ca3af' }\"\n />\n </div>\n </button>\n </div>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed } from 'vue';\nimport type { CalendarDay, ListEvent } from '@/utils/calendar';\nimport { formatTime } from '@/utils/calendar';\nimport { useEventSegments, calculateEventLanes } from '@/composables/useEventSegments';\n\ninterface Props {\n /** Array of calendar days to display */\n days: CalendarDay[];\n /** Array of events (optional, can also be attached to days) */\n events?: ListEvent[];\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: 'selectDay', day: CalendarDay): void;\n (e: 'select:event', eventId: string | number): void;\n (e: 'doubleSelectDay', day: CalendarDay): void;\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// Get event segments composable\nconst { getSegment, barClass, barClassCompact } = useEventSegments();\n\n// Maximum visible events per cell before showing \"+X more\"\nconst MAX_VISIBLE_BARS = 3;\n\n// Collect all events across all days (de-duped)\nconst allEvents = computed(() => {\n const events: ListEvent[] = [];\n const seen = new Set<string | number>();\n \n // Combine prop events with day-attached events\n const allSourceEvents = [...(props.events || [])];\n props.days.forEach((day) => {\n day.events?.forEach((event) => {\n allSourceEvents.push(event);\n });\n });\n \n allSourceEvents.forEach((event) => {\n const eventId = event.id || String(event.name);\n if (!seen.has(eventId)) {\n events.push(event);\n seen.add(eventId);\n }\n });\n \n return events;\n});\n\n// Day keys for lane calculation\nconst dayKeys = computed(() => props.days.map((d) => d.date));\n\n// Calculate event lanes\nconst eventLanes = computed(() => calculateEventLanes(dayKeys.value, allEvents.value));\n\n// Maximum number of lanes needed\nconst maxLanes = computed(() => {\n if (eventLanes.value.size === 0) return 0;\n const lanesArray = Array.from(eventLanes.value.values());\n return Math.max(...lanesArray) + 1;\n});\n\n// Format days with additional computed properties\nconst formattedDays = computed(() =>\n props.days.map(day => ({\n ...day,\n id: day.id || day.date,\n }))\n);\n\n// Get day number from date string\nconst getDayNumber = (dateStr: string): string => {\n return (dateStr.split('-').pop() || '').replace(/^0/, '');\n};\n\n// Get events for a specific day\nconst getEventsForDay = (day: CalendarDay): ListEvent[] => {\n // First check if events are attached to the day\n if (day.events && day.events.length > 0) {\n return day.events;\n }\n \n // Otherwise, filter from props.events\n return allEvents.value.filter(event => {\n const segment = getSegment(day.date, event);\n return segment !== 'none';\n });\n};\n\n// Get events for a specific day and lane\nconst eventsForDayAndLane = (dayKey: string, lane: number): ListEvent[] => {\n const day = props.days.find((d) => d.date === dayKey);\n if (!day) return [];\n \n const dayEvents = getEventsForDay(day);\n \n const eventsAtLane = dayEvents.filter((event) => {\n const eventId = event.id || String(event.name);\n const eventLane = eventLanes.value.get(eventId);\n return eventLane === lane;\n });\n\n // Limit visible events per day\n const totalVisibleInDay = Math.min(MAX_VISIBLE_BARS, dayEvents.length);\n if (lane < totalVisibleInDay) return eventsAtLane;\n return [];\n};\n\n// Calculate overflow count for a day\nconst overflowCount = (day: CalendarDay): number => {\n const dayEvents = getEventsForDay(day);\n return dayEvents.length > MAX_VISIBLE_BARS ? dayEvents.length - MAX_VISIBLE_BARS : 0;\n};\n\n// Should show label for this segment\nconst showLabel = (dayKey: string, event: ListEvent): boolean => {\n const seg = getSegment(dayKey, event);\n return seg === 'start' || seg === 'end' || seg === 'single';\n};\n\n// Label content for event\nconst labelFor = (dayKey: string, event: ListEvent): string => {\n const seg = getSegment(dayKey, event);\n const startIso = event.startTime?.dateTime || event.datetime;\n const endIso = event.endTime?.dateTime || event.datetime;\n \n if (seg === 'start' && startIso) return `Start ${formatTime(startIso)}`;\n if (seg === 'end' && endIso) return `End ${formatTime(endIso)}`;\n return String(event.name || '');\n};\n\n// Get multi-day events for mobile view\nconst multiDayEventsForDay = (day: CalendarDay): ListEvent[] => {\n const dayEvents = getEventsForDay(day);\n return dayEvents.filter((event) => {\n const seg = getSegment(day.date, event);\n return seg === 'start' || seg === 'middle' || seg === 'end';\n });\n};\n\n// Get single-day events for mobile view\nconst singleDayEventsForDay = (day: CalendarDay): ListEvent[] => {\n const dayEvents = getEventsForDay(day);\n return dayEvents.filter((event) => getSegment(day.date, event) === 'single');\n};\n\n// Event handlers\nconst handleDayClick = (day: CalendarDay) => {\n emit('selectDay', day);\n};\n\nconst handleDayDoubleClick = (day: CalendarDay) => {\n emit('doubleSelectDay', day);\n};\n\nconst handleEventClick = (eventId: string | number) => {\n emit('select:event', eventId);\n};\n</script>\n\n<style>\n/* Multi-day event bar extensions to bridge grid gaps */\n.event-bar-start {\n width: calc(100% + 1px) !important;\n}\n.event-bar-middle {\n width: calc(100% + 2px) !important;\n margin-left: -1px !important;\n}\n.event-bar-end {\n width: calc(100% + 1px) !important;\n margin-left: -1px !important;\n}\n</style>\n"],"names":["MAX_VISIBLE_BARS","props","__props","emit","__emit","dayHeaders","computed","sundayFirst","mondayFirst","getSegment","barClass","barClassCompact","useEventSegments","allEvents","events","seen","allSourceEvents","day","event","eventId","dayKeys","d","eventLanes","calculateEventLanes","maxLanes","lanesArray","formattedDays","getDayNumber","dateStr","getEventsForDay","eventsForDayAndLane","dayKey","lane","dayEvents","eventsAtLane","totalVisibleInDay","overflowCount","showLabel","seg","labelFor","startIso","endIso","formatTime","multiDayEventsForDay","singleDayEventsForDay","handleDayClick","handleDayDoubleClick","handleEventClick","_openBlock","_createElementBlock","_hoisted_1","_createElementVNode","_hoisted_2","_Fragment","_renderList","dayName","_hoisted_3","_hoisted_4","_normalizeClass","_hoisted_5","_hoisted_6","_hoisted_7","_","i","$event","_hoisted_9","_unref","_hoisted_10","_toDisplayString","_normalizeStyle","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_15","_hoisted_16","_hoisted_17","_withModifiers","_hoisted_19","_hoisted_20"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MonthCalendar.vue_vue_type_style_index_0_lang-Cyzq7A9j.js","sources":["../src/components/calendars/MonthCalendar.vue"],"sourcesContent":["<!--\n @component MonthCalendar\n @description Full month calendar grid with multi-day event support.\n \n Features:\n - 6-week calendar grid with day headers\n - Multi-day event bars that span across days\n - Event lane calculation for non-overlapping display\n - \"+X more\" overflow indicators with click-to-expand\n - Responsive mobile view with compact event dots\n - Rate plan color indicators\n - Day selection and double-click navigation\n \n @example\n <MonthCalendar\n :days=\"calendarDays\"\n :events=\"events\"\n @selectDay=\"handleDaySelect\"\n @select:event=\"handleEventSelect\"\n @doubleSelectDay=\"handleDoubleSelectDay\"\n />\n-->\n<template>\n <div class=\"sl-shadow sl-ring-1 sl-ring-black dark:sl-ring-slate-700 sl-ring-opacity-5 lg:sl-flex lg:sl-flex-auto lg:sl-flex-col\">\n <!-- Day headers -->\n <div class=\"sl-grid sl-grid-cols-7 sl-gap-px sl-border-b sl-border-gray-300 dark:sl-border-slate-600 sl-bg-gray-200 dark:sl-bg-slate-800 sl-text-center sl-text-xs sl-font-semibold sl-leading-6 sl-text-gray-700 dark:sl-text-slate-300 lg:sl-flex-none\">\n <div v-for=\"dayName in dayHeaders\" :key=\"dayName\" class=\"sl-bg-white dark:sl-bg-slate-900 sl-py-2\">\n {{ dayName }}\n </div>\n </div>\n \n <!-- Calendar grid -->\n <div class=\"sl-flex sl-bg-gray-200 dark:sl-bg-slate-800 sl-text-xs sl-leading-6 sl-text-gray-700 dark:sl-text-slate-300 lg:sl-flex-auto\">\n <!-- Desktop view -->\n <div class=\"sl-hidden sl-w-full lg:sl-grid lg:sl-grid-cols-7 lg:sl-grid-rows-6 lg:sl-gap-px\">\n <div \n v-for=\"day in formattedDays\" \n :key=\"day.date\"\n :class=\"[\n day.isCurrentMonth ? 'sl-bg-white dark:sl-bg-slate-900' : 'sl-bg-gray-50 dark:sl-bg-slate-800 sl-text-gray-500 dark:sl-text-slate-400',\n 'sl-relative sl-py-2 sl-min-w-0'\n ]\"\n >\n <div class=\"sl-px-3\">\n <time \n :datetime=\"day.date\"\n :class=\"[\n day.isToday \n ? 'sl-flex sl-h-6 sl-w-6 sl-items-center sl-justify-center sl-rounded-full sl-bg-stachelock-600 sl-font-semibold sl-text-white' \n : ''\n ]\"\n >\n {{ getDayNumber(day.date) }}\n </time>\n </div>\n \n <!-- Event bars with lanes -->\n <div class=\"sl-mt-2 sl-space-y-1 sl-min-h-0\">\n <template v-for=\"lane in Array.from({ length: maxLanes }, (_, i) => i)\" :key=\"`lane-${lane}`\">\n <button \n v-for=\"event in eventsForDayAndLane(day.date, lane)\" \n :key=\"event.id\"\n class=\"sl-group sl-w-full sl-block\"\n @click=\"handleEventClick(event.id)\"\n >\n <div class=\"sl-relative\">\n <div :class=\"barClass(day.date, event)\">\n <span v-if=\"showLabel(day.date, event)\" class=\"sl-truncate sl-block\">\n {{ labelFor(day.date, event) || event.name }}\n </span>\n </div>\n <span \n v-if=\"event.ratePlanColor\"\n class=\"sl-absolute sl--top-1 sl--right-1 sl-inline-block sl-h-2.5 sl-w-2.5 sl-rounded-full sl-ring-1 sl-ring-white\"\n :style=\"{ backgroundColor: event.ratePlanColor }\"\n />\n </div>\n </button>\n </template>\n \n <!-- Overflow indicator -->\n <div v-if=\"overflowCount(day) > 0\" class=\"sl-mt-1 sl-px-3\">\n <button \n class=\"sl-text-[11px] sl-font-medium sl-text-stachelock-700 dark:sl-text-stachelock-400 hover:sl-text-stachelock-900 dark:hover:sl-text-stachelock-300 sl-underline\"\n @click=\"handleDayClick(day)\"\n >\n +{{ overflowCount(day) }} more\n </button>\n </div>\n </div>\n </div>\n </div>\n \n <!-- Mobile view -->\n <div class=\"sl-isolate sl-grid sl-w-full sl-grid-cols-7 sl-grid-rows-6 sl-gap-px lg:sl-hidden\">\n <button \n v-for=\"day in formattedDays\" \n :key=\"day.date\"\n type=\"button\"\n :class=\"[\n day.isCurrentMonth ? 'sl-bg-white dark:sl-bg-slate-900' : 'sl-bg-gray-50 dark:sl-bg-slate-800',\n (day.isSelected || day.isToday) && 'sl-font-semibold',\n day.isSelected && 'sl-text-white',\n !day.isSelected && day.isToday && 'sl-text-stachelock-600 dark:sl-text-stachelock-400',\n !day.isSelected && day.isCurrentMonth && !day.isToday && 'sl-text-gray-800 dark:sl-text-slate-200',\n !day.isSelected && !day.isCurrentMonth && !day.isToday && 'sl-text-gray-500 dark:sl-text-slate-500',\n 'sl-flex sl-min-h-[3.5rem] sl-flex-col sl-items-center sl-py-2 hover:sl-bg-gray-100 dark:hover:sl-bg-slate-700 focus:sl-z-10 sl-overflow-visible'\n ]\"\n @click=\"handleDayClick(day)\"\n @dblclick=\"handleDayDoubleClick(day)\"\n >\n <time \n :datetime=\"day.date\"\n :class=\"[\n day.isSelected && 'sl-flex sl-h-6 sl-w-6 sl-items-center sl-justify-center sl-rounded-full',\n day.isSelected && day.isToday && 'sl-bg-stachelock-600',\n day.isSelected && !day.isToday && 'sl-bg-gray-900 dark:sl-bg-slate-200 dark:sl-text-slate-900'\n ]\"\n >\n {{ getDayNumber(day.date) }}\n </time>\n <span class=\"sl-sr-only\">{{ day.events?.length || 0 }} events</span>\n \n <!-- Multi-day event bars (compact) -->\n <ol v-if=\"multiDayEventsForDay(day).length > 0\" class=\"sl-mt-auto sl-w-full sl-space-y-0.5 sl-overflow-visible\">\n <li v-for=\"event in multiDayEventsForDay(day)\" :key=\"event.id\" class=\"sl-overflow-visible\">\n <button class=\"sl-group sl-w-full sl-overflow-visible\" @click.stop=\"handleEventClick(event.id)\">\n <div class=\"sl-relative sl-overflow-visible\">\n <div :class=\"barClassCompact(day.date, event)\" />\n <span \n v-if=\"event.ratePlanColor\" \n class=\"sl-absolute sl--top-0.5 sl-right-0 sl-inline-block sl-h-1.5 sl-w-1.5 sl-rounded-full sl-ring-1 sl-ring-white sl-z-20\" \n :style=\"{ backgroundColor: event.ratePlanColor }\"\n />\n </div>\n </button>\n </li>\n </ol>\n \n <!-- Single-day event dots -->\n <div v-if=\"singleDayEventsForDay(day).length > 0\" class=\"sl-mt-auto sl-flex sl-flex-wrap sl-justify-center sl-gap-0.5 sl-overflow-visible\">\n <span \n v-for=\"event in singleDayEventsForDay(day)\" \n :key=\"event.id\"\n class=\"sl-h-1.5 sl-w-1.5 sl-rounded-full sl-flex-shrink-0\"\n :style=\"{ backgroundColor: event.ratePlanColor || '#9ca3af' }\"\n />\n </div>\n </button>\n </div>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed } from 'vue';\nimport type { CalendarDay, ListEvent } from '@/utils/calendar';\nimport { formatTime } from '@/utils/calendar';\nimport { useEventSegments, calculateEventLanes } from '@/composables/useEventSegments';\n\ninterface Props {\n /** Array of calendar days to display */\n days: CalendarDay[];\n /** Array of events (optional, can also be attached to days) */\n events?: ListEvent[];\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: 'selectDay', day: CalendarDay): void;\n (e: 'select:event', eventId: string | number): void;\n (e: 'doubleSelectDay', day: CalendarDay): void;\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// Get event segments composable\nconst { getSegment, barClass, barClassCompact } = useEventSegments();\n\n// Maximum visible events per cell before showing \"+X more\"\nconst MAX_VISIBLE_BARS = 3;\n\n// Collect all events across all days (de-duped)\nconst allEvents = computed(() => {\n const events: ListEvent[] = [];\n const seen = new Set<string | number>();\n \n // Combine prop events with day-attached events\n const allSourceEvents = [...(props.events || [])];\n props.days.forEach((day) => {\n day.events?.forEach((event) => {\n allSourceEvents.push(event);\n });\n });\n \n allSourceEvents.forEach((event) => {\n const eventId = event.id || String(event.name);\n if (!seen.has(eventId)) {\n events.push(event);\n seen.add(eventId);\n }\n });\n \n return events;\n});\n\n// Day keys for lane calculation\nconst dayKeys = computed(() => props.days.map((d) => d.date));\n\n// Calculate event lanes\nconst eventLanes = computed(() => calculateEventLanes(dayKeys.value, allEvents.value));\n\n// Maximum number of lanes needed\nconst maxLanes = computed(() => {\n if (eventLanes.value.size === 0) return 0;\n const lanesArray = Array.from(eventLanes.value.values());\n return Math.max(...lanesArray) + 1;\n});\n\n// Format days with additional computed properties\nconst formattedDays = computed(() =>\n props.days.map(day => ({\n ...day,\n id: day.id || day.date,\n }))\n);\n\n// Get day number from date string\nconst getDayNumber = (dateStr: string): string => {\n return (dateStr.split('-').pop() || '').replace(/^0/, '');\n};\n\n// Get events for a specific day\nconst getEventsForDay = (day: CalendarDay): ListEvent[] => {\n // First check if events are attached to the day\n if (day.events && day.events.length > 0) {\n return day.events;\n }\n \n // Otherwise, filter from props.events\n return allEvents.value.filter(event => {\n const segment = getSegment(day.date, event);\n return segment !== 'none';\n });\n};\n\n// Get events for a specific day and lane\nconst eventsForDayAndLane = (dayKey: string, lane: number): ListEvent[] => {\n const day = props.days.find((d) => d.date === dayKey);\n if (!day) return [];\n \n const dayEvents = getEventsForDay(day);\n \n const eventsAtLane = dayEvents.filter((event) => {\n const eventId = event.id || String(event.name);\n const eventLane = eventLanes.value.get(eventId);\n return eventLane === lane;\n });\n\n // Limit visible events per day\n const totalVisibleInDay = Math.min(MAX_VISIBLE_BARS, dayEvents.length);\n if (lane < totalVisibleInDay) return eventsAtLane;\n return [];\n};\n\n// Calculate overflow count for a day\nconst overflowCount = (day: CalendarDay): number => {\n const dayEvents = getEventsForDay(day);\n return dayEvents.length > MAX_VISIBLE_BARS ? dayEvents.length - MAX_VISIBLE_BARS : 0;\n};\n\n// Should show label for this segment\nconst showLabel = (dayKey: string, event: ListEvent): boolean => {\n const seg = getSegment(dayKey, event);\n return seg === 'start' || seg === 'end' || seg === 'single';\n};\n\n// Label content for event\nconst labelFor = (dayKey: string, event: ListEvent): string => {\n const seg = getSegment(dayKey, event);\n const startIso = event.startTime?.dateTime || event.datetime;\n const endIso = event.endTime?.dateTime || event.datetime;\n \n if (seg === 'start' && startIso) return `Start ${formatTime(startIso)}`;\n if (seg === 'end' && endIso) return `End ${formatTime(endIso)}`;\n return String(event.name || '');\n};\n\n// Get multi-day events for mobile view\nconst multiDayEventsForDay = (day: CalendarDay): ListEvent[] => {\n const dayEvents = getEventsForDay(day);\n return dayEvents.filter((event) => {\n const seg = getSegment(day.date, event);\n return seg === 'start' || seg === 'middle' || seg === 'end';\n });\n};\n\n// Get single-day events for mobile view\nconst singleDayEventsForDay = (day: CalendarDay): ListEvent[] => {\n const dayEvents = getEventsForDay(day);\n return dayEvents.filter((event) => getSegment(day.date, event) === 'single');\n};\n\n// Event handlers\nconst handleDayClick = (day: CalendarDay) => {\n emit('selectDay', day);\n};\n\nconst handleDayDoubleClick = (day: CalendarDay) => {\n emit('doubleSelectDay', day);\n};\n\nconst handleEventClick = (eventId: string | number) => {\n emit('select:event', eventId);\n};\n</script>\n\n<style>\n/* Multi-day event bar extensions to bridge grid gaps */\n.event-bar-start {\n width: calc(100% + 1px) !important;\n}\n.event-bar-middle {\n width: calc(100% + 2px) !important;\n margin-left: -1px !important;\n}\n.event-bar-end {\n width: calc(100% + 1px) !important;\n margin-left: -1px !important;\n}\n</style>\n"],"names":["MAX_VISIBLE_BARS","props","__props","emit","__emit","dayHeaders","computed","sundayFirst","mondayFirst","getSegment","barClass","barClassCompact","useEventSegments","allEvents","events","seen","allSourceEvents","day","event","eventId","dayKeys","d","eventLanes","calculateEventLanes","maxLanes","lanesArray","formattedDays","getDayNumber","dateStr","getEventsForDay","eventsForDayAndLane","dayKey","lane","dayEvents","eventsAtLane","totalVisibleInDay","overflowCount","showLabel","seg","labelFor","startIso","endIso","formatTime","multiDayEventsForDay","singleDayEventsForDay","handleDayClick","handleDayDoubleClick","handleEventClick","_openBlock","_createElementBlock","_hoisted_1","_createElementVNode","_hoisted_2","_Fragment","_renderList","dayName","_hoisted_3","_hoisted_4","_normalizeClass","_hoisted_5","_hoisted_6","_hoisted_7","_","i","$event","_hoisted_9","_unref","_hoisted_10","_toDisplayString","_normalizeStyle","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_15","_hoisted_16","_hoisted_17","_withModifiers","_hoisted_19","_hoisted_20"],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { defineComponent as o, createElementBlock as t, openBlock as l, createCommentVNode as n, createElementVNode as c, normalizeClass as a, toDisplayString as r, renderSlot as i } from "vue";
|
|
2
|
+
const p = { class: "sl-space-y-1" }, d = {
|
|
3
|
+
role: "list",
|
|
4
|
+
class: "sl-space-y-1"
|
|
5
|
+
}, u = /* @__PURE__ */ o({
|
|
6
|
+
__name: "NavigationGroup",
|
|
7
|
+
props: {
|
|
8
|
+
title: {},
|
|
9
|
+
iconOnly: { type: Boolean }
|
|
10
|
+
},
|
|
11
|
+
setup(e) {
|
|
12
|
+
return (s, m) => (l(), t("div", p, [
|
|
13
|
+
e.title ? (l(), t("h3", {
|
|
14
|
+
key: 0,
|
|
15
|
+
class: a([
|
|
16
|
+
"sl-px-3 sl-py-2 sl-text-xs sl-font-semibold sl-uppercase sl-tracking-wider",
|
|
17
|
+
e.iconOnly ? "sl-text-center" : ""
|
|
18
|
+
]),
|
|
19
|
+
style: { color: "var(--sl-color-stachelock-050, #edeff9)" }
|
|
20
|
+
}, r(e.title), 3)) : n("", !0),
|
|
21
|
+
c("ul", d, [
|
|
22
|
+
i(s.$slots, "default")
|
|
23
|
+
])
|
|
24
|
+
]));
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
export {
|
|
28
|
+
u as _
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=NavigationGroup.vue_vue_type_script_setup_true_lang-BWq5fpEm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavigationGroup.vue_vue_type_script_setup_true_lang-
|
|
1
|
+
{"version":3,"file":"NavigationGroup.vue_vue_type_script_setup_true_lang-BWq5fpEm.js","sources":["../src/components/layouts/NavigationGroup.vue"],"sourcesContent":["<template>\n <div class=\"sl-space-y-1\">\n <!-- Group header -->\n <h3 v-if=\"title\" :class=\"[\n 'sl-px-3 sl-py-2 sl-text-xs sl-font-semibold sl-uppercase sl-tracking-wider',\n iconOnly ? 'sl-text-center' : ''\n ]\"\n style=\"color: var(--sl-color-stachelock-050, #edeff9);\">\n {{ title }}\n </h3>\n \n <!-- Navigation items -->\n <ul role=\"list\" class=\"sl-space-y-1\">\n <slot>\n <!-- Default navigation items slot -->\n </slot>\n </ul>\n </div>\n</template>\n\n<script setup lang=\"ts\">\ndefineProps<{\n title?: string;\n iconOnly?: boolean;\n}>();\n</script>\n\n<style scoped>\n</style>\n"],"names":["_openBlock","_createElementBlock","_hoisted_1","__props","_normalizeClass","_createElementVNode","_hoisted_2","_renderSlot","_ctx"],"mappings":";;;;;;;;;;;sBACEA,EAAA,GAAAC,EAgBM,OAhBNC,GAgBM;AAAA,MAdMC,EAAA,cAAVF,EAMK,MAAA;AAAA;QANa,OAAKG,EAAA;AAAA;UAA8FD,EAAA,WAAQ,mBAAA;AAAA,QAAA;QAI7H,OAAA,EAAA,OAAA,0CAAA;AAAA,MAAA,KACKA,EAAA,KAAK,GAAA,CAAA;MAIVE,EAIK,MAJLC,GAIK;AAAA,QAHHC,EAEOC,EAAA,QAAA,SAAA;AAAA,MAAA;;;;"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
const
|
|
1
|
+
import { defineComponent as c, createElementBlock as t, openBlock as l, createElementVNode as o, normalizeStyle as a, normalizeClass as s, createBlock as m, createCommentVNode as n, resolveDynamicComponent as r, toDisplayString as i } from "vue";
|
|
2
|
+
const d = ["href"], g = {
|
|
3
3
|
key: 0,
|
|
4
4
|
class: "sl-truncate"
|
|
5
|
-
},
|
|
5
|
+
}, y = /* @__PURE__ */ c({
|
|
6
6
|
__name: "NavigationItem",
|
|
7
7
|
props: {
|
|
8
8
|
name: {},
|
|
@@ -13,32 +13,32 @@ const c = ["href"], g = {
|
|
|
13
13
|
badge: {},
|
|
14
14
|
badgeTheme: {}
|
|
15
15
|
},
|
|
16
|
-
setup(
|
|
17
|
-
return (
|
|
18
|
-
|
|
16
|
+
setup(e) {
|
|
17
|
+
return (h, f) => (l(), t("li", null, [
|
|
18
|
+
o("a", {
|
|
19
19
|
href: e.href,
|
|
20
|
-
class:
|
|
20
|
+
class: s([
|
|
21
21
|
"sl-group sl-flex sl-gap-x-3 sl-rounded-md sl-p-2 sl-text-sm sl-leading-6 sl-font-semibold",
|
|
22
22
|
e.isActive ? "sl-bg-stachelock-400" : "hover:sl-bg-white/10"
|
|
23
23
|
]),
|
|
24
|
-
style:
|
|
24
|
+
style: a({
|
|
25
25
|
color: e.isActive ? "#fef2f2" : "#fca5a5",
|
|
26
26
|
backgroundColor: e.isActive ? "#f87171" : "transparent"
|
|
27
27
|
})
|
|
28
28
|
}, [
|
|
29
|
-
(
|
|
30
|
-
class:
|
|
29
|
+
(l(), m(r(e.icon), {
|
|
30
|
+
class: s([
|
|
31
31
|
"sl-h-6 sl-w-6 sl-shrink-0"
|
|
32
32
|
]),
|
|
33
|
-
style:
|
|
33
|
+
style: a({
|
|
34
34
|
color: e.isActive ? "#fef2f2" : "#fca5a5"
|
|
35
35
|
}),
|
|
36
36
|
"aria-hidden": "true"
|
|
37
37
|
}, null, 8, ["style"])),
|
|
38
|
-
e.iconOnly ?
|
|
39
|
-
e.badge ? (
|
|
38
|
+
e.iconOnly ? n("", !0) : (l(), t("span", g, i(e.name), 1)),
|
|
39
|
+
e.badge ? (l(), t("span", {
|
|
40
40
|
key: 1,
|
|
41
|
-
class:
|
|
41
|
+
class: s([
|
|
42
42
|
"sl-ml-auto sl-inline-flex sl-items-center sl-rounded-md sl-px-2 sl-py-1 sl-text-xs sl-font-medium",
|
|
43
43
|
e.badgeTheme === "primary" ? "sl-bg-stachelock-400 sl-text-white" : "",
|
|
44
44
|
e.badgeTheme === "secondary" ? "sl-bg-gray-400 sl-text-white" : "",
|
|
@@ -46,12 +46,12 @@ const c = ["href"], g = {
|
|
|
46
46
|
e.badgeTheme === "warning" ? "sl-bg-yellow-400 sl-text-white" : "",
|
|
47
47
|
e.badgeTheme === "danger" ? "sl-bg-red-400 sl-text-white" : ""
|
|
48
48
|
])
|
|
49
|
-
},
|
|
50
|
-
], 14,
|
|
49
|
+
}, i(e.badge), 3)) : n("", !0)
|
|
50
|
+
], 14, d)
|
|
51
51
|
]));
|
|
52
52
|
}
|
|
53
53
|
});
|
|
54
54
|
export {
|
|
55
|
-
|
|
55
|
+
y as _
|
|
56
56
|
};
|
|
57
|
-
//# sourceMappingURL=NavigationItem.vue_vue_type_script_setup_true_lang-
|
|
57
|
+
//# sourceMappingURL=NavigationItem.vue_vue_type_script_setup_true_lang-C8aX-84Q.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavigationItem.vue_vue_type_script_setup_true_lang-
|
|
1
|
+
{"version":3,"file":"NavigationItem.vue_vue_type_script_setup_true_lang-C8aX-84Q.js","sources":["../src/components/layouts/NavigationItem.vue"],"sourcesContent":["<template>\n <li>\n <a :href=\"href\" :class=\"[\n 'sl-group sl-flex sl-gap-x-3 sl-rounded-md sl-p-2 sl-text-sm sl-leading-6 sl-font-semibold',\n isActive \n ? 'sl-bg-stachelock-400'\n : 'hover:sl-bg-white/10'\n ]\"\n :style=\"{\n color: isActive \n ? '#fef2f2' \n : '#fca5a5',\n backgroundColor: isActive \n ? '#f87171' \n : 'transparent'\n }\">\n <component \n :is=\"icon\" \n :class=\"[\n 'sl-h-6 sl-w-6 sl-shrink-0'\n ]\"\n :style=\"{\n color: isActive \n ? '#fef2f2' \n : '#fca5a5'\n }\" \n aria-hidden=\"true\" \n />\n <span v-if=\"!iconOnly\" class=\"sl-truncate\">{{ name }}</span>\n <span v-if=\"badge\" :class=\"[\n 'sl-ml-auto sl-inline-flex sl-items-center sl-rounded-md sl-px-2 sl-py-1 sl-text-xs sl-font-medium',\n badgeTheme === 'primary' ? 'sl-bg-stachelock-400 sl-text-white' : '',\n badgeTheme === 'secondary' ? 'sl-bg-gray-400 sl-text-white' : '',\n badgeTheme === 'success' ? 'sl-bg-green-400 sl-text-white' : '',\n badgeTheme === 'warning' ? 'sl-bg-yellow-400 sl-text-white' : '',\n badgeTheme === 'danger' ? 'sl-bg-red-400 sl-text-white' : ''\n ]\">\n {{ badge }}\n </span>\n </a>\n </li>\n</template>\n\n<script setup lang=\"ts\">\nimport type { Component } from 'vue';\n\ndefineProps<{\n name: string;\n href: string;\n icon: Component;\n isActive?: boolean;\n iconOnly?: boolean;\n badge?: string;\n badgeTheme?: 'primary' | 'secondary' | 'success' | 'warning' | 'danger';\n}>();\n</script>\n\n<style scoped>\n</style>\n"],"names":["_createElementBlock","_createElementVNode","__props","_normalizeClass","_normalizeStyle","_openBlock","_createBlock","_resolveDynamicComponent","_hoisted_2","_toDisplayString"],"mappings":";;;;;;;;;;;;;;;;2BACEA,EAuCK,MAAA,MAAA;AAAA,MAtCHC,EAqCI,KAAA;AAAA,QArCA,MAAMC,EAAA;AAAA,QAAa,OAAKC,EAAA;AAAA;UAAiHD,EAAA;;QAM1I,OAAKE,EAAA;AAAA,iBAAmBF,EAAA;2BAAiFA,EAAA;;;SAQ1GG,KAAAC,EAWEC,EAVKL,EAAA,IAAI,GAAA;AAAA,UACR,OAAKC,EAAE;AAAA;WAEP;AAAA,UACA,OAAKC,EAAA;AAAA,mBAAqBF,EAAA;;UAK3B,eAAY;AAAA,QAAA;QAEDA,EAAA,6BAAbF,EAA4D,QAA5DQ,GAA4DC,EAAdP,EAAA,IAAI,GAAA,CAAA;AAAA,QACtCA,EAAA,cAAZF,EASO,QAAA;AAAA;UATa,OAAKG,EAAA;AAAA;YAAyHD,EAAA,eAAU,YAAA,uCAAA;AAAA,YAAoEA,EAAA,eAAU,cAAA,iCAAA;AAAA,YAAgEA,EAAA,eAAU,YAAA,kCAAA;AAAA,YAA+DA,EAAA,eAAU,YAAA,mCAAA;AAAA,YAAgEA,EAAA,eAAU,WAAA,gCAAA;AAAA,UAAA;aAQlcA,EAAA,KAAK,GAAA,CAAA;;;;;"}
|