@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.
Files changed (714) hide show
  1. package/dist/{AlertModal.vue_vue_type_script_setup_true_lang-CxwewAVy.js → AlertModal.vue_vue_type_script_setup_true_lang-C6q8Mpl4.js} +2 -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
  3. package/dist/{BackgroundGradientWrapper.vue_vue_type_script_setup_true_lang-B570pdYL.js → BackgroundGradientWrapper.vue_vue_type_script_setup_true_lang-C8msTrTn.js} +6 -6
  4. 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
  5. package/dist/{BarChart.vue_vue_type_script_setup_true_lang-Dnuzd7vZ.js → BarChart.vue_vue_type_script_setup_true_lang-xCb0DCbf.js} +19 -19
  6. 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
  7. 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
  8. 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
  9. package/dist/{CalendarHeader.vue_vue_type_script_setup_true_lang-DRwe4rw8.js → CalendarHeader.vue_vue_type_script_setup_true_lang-CkSUiLOH.js} +109 -108
  10. package/dist/CalendarHeader.vue_vue_type_script_setup_true_lang-CkSUiLOH.js.map +1 -0
  11. package/dist/CheckboxInput.vue_vue_type_script_setup_true_lang-BikR9rgi.js +187 -0
  12. 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
  13. package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-kEj-NYqm.js +1362 -0
  14. package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-kEj-NYqm.js.map +1 -0
  15. 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
  16. 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
  17. 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
  18. 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
  19. package/dist/DatepickerInput.vue_vue_type_style_index_0_lang-BdkGLw0H.js.map +1 -1
  20. package/dist/{DayCalendar.vue_vue_type_script_setup_true_lang-BV9vYYuX.js → DayCalendar.vue_vue_type_script_setup_true_lang-8al4Fotu.js} +47 -47
  21. 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
  22. 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
  23. 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
  24. package/dist/DynamicForm.vue_vue_type_script_setup_true_lang-CxSaO5Cl.js +253 -0
  25. package/dist/DynamicForm.vue_vue_type_script_setup_true_lang-CxSaO5Cl.js.map +1 -0
  26. package/dist/{DynamicFormField.vue_vue_type_script_setup_true_lang-Ct8b80dM.js → DynamicFormField.vue_vue_type_script_setup_true_lang-CSLSRFM7.js} +16 -16
  27. package/dist/DynamicFormField.vue_vue_type_script_setup_true_lang-CSLSRFM7.js.map +1 -0
  28. package/dist/EmailInput.vue_vue_type_script_setup_true_lang-BicPMIop.js +122 -0
  29. 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
  30. package/dist/{EmptyInput.vue_vue_type_script_setup_true_lang-BDxgc5Bs.js → EmptyInput.vue_vue_type_script_setup_true_lang-FWDCFF2c.js} +9 -9
  31. 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
  32. package/dist/EmptyState.vue_vue_type_script_setup_true_lang-7mcKkOWP.js +74 -0
  33. package/dist/EmptyState.vue_vue_type_script_setup_true_lang-7mcKkOWP.js.map +1 -0
  34. package/dist/{EventsList.vue_vue_type_script_setup_true_lang-D3q9wJ4E.js → EventsList.vue_vue_type_script_setup_true_lang-MhuVi5u8.js} +30 -31
  35. 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
  36. 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
  37. 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
  38. package/dist/{HiddenInput.vue_vue_type_script_setup_true_lang-DYdvWmVE.js → HiddenInput.vue_vue_type_script_setup_true_lang-PtGZ4eLW.js} +10 -10
  39. 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
  40. package/dist/{InlineTabs.vue_vue_type_script_setup_true_lang-DhkX5sWS.js → InlineTabs.vue_vue_type_script_setup_true_lang-CD0lnkUm.js} +29 -29
  41. 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
  42. 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
  43. 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
  44. package/dist/LottieAnimation.vue_vue_type_script_setup_true_lang-swmHdR0_.js +36 -0
  45. 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
  46. package/dist/{MonthCalendar.vue_vue_type_style_index_0_lang-CnX3Ih0W.js → MonthCalendar.vue_vue_type_style_index_0_lang-Cyzq7A9j.js} +2 -2
  47. 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
  48. package/dist/NavigationGroup.vue_vue_type_script_setup_true_lang-BWq5fpEm.js +30 -0
  49. 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
  50. 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
  51. 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
  52. package/dist/NotificationContainer.vue_vue_type_style_index_0_lang-DSfNw4Ge.js +110 -0
  53. package/dist/NotificationContainer.vue_vue_type_style_index_0_lang-DSfNw4Ge.js.map +1 -0
  54. package/dist/NotificationToast.vue_vue_type_script_setup_true_lang-CU__ORw8.js +238 -0
  55. package/dist/NotificationToast.vue_vue_type_script_setup_true_lang-CU__ORw8.js.map +1 -0
  56. package/dist/{PieChart.vue_vue_type_script_setup_true_lang-DJRcsty7.js → PieChart.vue_vue_type_script_setup_true_lang-e3wsA9O4.js} +12 -12
  57. 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
  58. package/dist/ProfileHeaderAvatar.vue_vue_type_script_setup_true_lang-DkABeWJt.js +130 -0
  59. 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
  60. 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
  61. 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
  62. 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
  63. package/dist/SelectInput.vue_vue_type_script_setup_true_lang-DHiZ-7K2.js.map +1 -0
  64. 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
  65. 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
  66. package/dist/{SidebarLayout.vue_vue_type_script_setup_true_lang-BD2PF5xp.js → SidebarLayout.vue_vue_type_script_setup_true_lang-BJ5jadgZ.js} +9 -10
  67. 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
  68. package/dist/{SparklineChart.vue_vue_type_script_setup_true_lang-DDTcpEjy.js → SparklineChart.vue_vue_type_script_setup_true_lang-BlNk5ZqM.js} +17 -17
  69. 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
  70. 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
  71. 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
  72. package/dist/{StepperPanels.vue_vue_type_script_setup_true_lang-BtHrfqFI.js → StepperPanels.vue_vue_type_script_setup_true_lang-D6Fv7iz3.js} +38 -38
  73. 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
  74. package/dist/{SwitchInput.vue_vue_type_script_setup_true_lang-D6M1qwP1.js → SwitchInput.vue_vue_type_script_setup_true_lang-C88FcxuK.js} +110 -108
  75. 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
  76. package/dist/{SwitchInputGroup.vue_vue_type_script_setup_true_lang-BNKKEAMq.js → SwitchInputGroup.vue_vue_type_script_setup_true_lang-CK9JWl4F.js} +2 -2
  77. 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
  78. package/dist/{TabGroup.vue_vue_type_script_setup_true_lang-DrhDwLL3.js → TabGroup.vue_vue_type_script_setup_true_lang-DVVeOgWH.js} +3 -3
  79. 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
  80. package/dist/{TabGroupUnderline.vue_vue_type_script_setup_true_lang-Di33js6c.js → TabGroupUnderline.vue_vue_type_script_setup_true_lang-_3XtOn3w.js} +32 -32
  81. 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
  82. package/dist/{TabsInPills.vue_vue_type_script_setup_true_lang-CMxaK0Kw.js → TabsInPills.vue_vue_type_script_setup_true_lang-DY1NkXCQ.js} +21 -21
  83. 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
  84. 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
  85. package/dist/TagifyInput.vue_vue_type_script_setup_true_lang-Da6-pRJ2.js.map +1 -0
  86. 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
  87. 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
  88. package/dist/{UiAvatar.vue_vue_type_script_setup_true_lang-Ci7VLRZx.js → UiAvatar.vue_vue_type_script_setup_true_lang-WVY6JbUL.js} +36 -36
  89. package/dist/UiAvatar.vue_vue_type_script_setup_true_lang-WVY6JbUL.js.map +1 -0
  90. package/dist/{UiBadge.vue_vue_type_script_setup_true_lang-CV8WVEXL.js → UiBadge.vue_vue_type_script_setup_true_lang-DOtbLb9x.js} +19 -19
  91. 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
  92. 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
  93. 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
  94. 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
  95. 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
  96. 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
  97. 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
  98. package/dist/{UiMenu.vue_vue_type_script_setup_true_lang-aJddpshR.js → UiMenu.vue_vue_type_script_setup_true_lang-bQdfCzk6.js} +74 -74
  99. 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
  100. package/dist/{UiModal.vue_vue_type_script_setup_true_lang-CFgLuifQ.js → UiModal.vue_vue_type_script_setup_true_lang-CpwFUDVU.js} +9 -10
  101. 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
  102. package/dist/{UiNavLink.vue_vue_type_script_setup_true_lang-C23h6Do0.js → UiNavLink.vue_vue_type_script_setup_true_lang-DnWMn40M.js} +2 -2
  103. 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
  104. package/dist/{UiProgressBar.vue_vue_type_script_setup_true_lang-BioTMORv.js → UiProgressBar.vue_vue_type_script_setup_true_lang-BCh4orZW.js} +24 -24
  105. 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
  106. package/dist/{UiTable.vue_vue_type_script_setup_true_lang-BuOCaPzi.js → UiTable.vue_vue_type_script_setup_true_lang-xGAiJ9rS.js} +80 -83
  107. package/dist/UiTable.vue_vue_type_script_setup_true_lang-xGAiJ9rS.js.map +1 -0
  108. 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
  109. 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
  110. package/dist/{YearCalendar.vue_vue_type_script_setup_true_lang-C01PTLg8.js → YearCalendar.vue_vue_type_script_setup_true_lang-CfKSpLLN.js} +15 -15
  111. 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
  112. package/dist/{calendar-DyIP7WGv.js → calendar-BlSSD4nO.js} +2 -2
  113. package/dist/calendar-BlSSD4nO.js.map +1 -0
  114. package/dist/calendars/CalendarDashboard.d.ts +1 -3
  115. package/dist/calendars/CalendarDashboard.js +34 -36
  116. package/dist/calendars/CalendarDashboard.js.map +1 -1
  117. package/dist/calendars/CalendarHeader.d.ts +1 -3
  118. package/dist/calendars/CalendarHeader.js +1 -1
  119. package/dist/calendars/DayCalendar.d.ts +1 -3
  120. package/dist/calendars/DayCalendar.js +1 -1
  121. package/dist/calendars/EventCard.d.ts +1 -3
  122. package/dist/calendars/EventsList.d.ts +1 -3
  123. package/dist/calendars/EventsList.js +1 -1
  124. package/dist/calendars/MonthCalendar.d.ts +1 -3
  125. package/dist/calendars/MonthCalendar.js +1 -1
  126. package/dist/calendars/WeekCalendar.d.ts +1 -3
  127. package/dist/calendars/WeekCalendar.js +118 -118
  128. package/dist/calendars/WeekCalendar.js.map +1 -1
  129. package/dist/calendars/YearCalendar.d.ts +1 -3
  130. package/dist/calendars/YearCalendar.js +1 -1
  131. package/dist/charts/BarChart.d.ts +1 -3
  132. package/dist/charts/BarChart.js +1 -1
  133. package/dist/charts/BaseChart.d.ts +1 -3
  134. package/dist/charts/BaseChart.js +54 -54
  135. package/dist/charts/BaseChart.js.map +1 -1
  136. package/dist/charts/FunnelChart.d.ts +1 -3
  137. package/dist/charts/FunnelChart.js +1 -1
  138. package/dist/charts/LineChart.d.ts +1 -3
  139. package/dist/charts/LineChart.js +1 -1
  140. package/dist/charts/PieChart.d.ts +1 -3
  141. package/dist/charts/PieChart.js +1 -1
  142. package/dist/charts/SparklineChart.d.ts +1 -3
  143. package/dist/charts/SparklineChart.js +1 -1
  144. package/dist/charts/StatCard.d.ts +1 -3
  145. package/dist/charts/StatCard.js +1 -1
  146. package/dist/charts/chartTheme.d.ts +3 -0
  147. package/dist/charts/index.d.ts +1 -0
  148. package/dist/charts/index.js +6 -6
  149. package/dist/components/Avatar.d.ts +1 -3
  150. package/dist/components/Avatar.js +1 -1
  151. package/dist/components/Badge.d.ts +1 -3
  152. package/dist/components/Badge.js +1 -1
  153. package/dist/components/Banner.d.ts +1 -3
  154. package/dist/components/Banner.js +69 -69
  155. package/dist/components/Banner.js.map +1 -1
  156. package/dist/components/Breadcrumb.d.ts +1 -3
  157. package/dist/components/Breadcrumb.js +5 -5
  158. package/dist/components/Breadcrumb.js.map +1 -1
  159. package/dist/components/Button.d.ts +1 -3
  160. package/dist/components/Button.js +29 -29
  161. package/dist/components/Button.js.map +1 -1
  162. package/dist/components/ButtonGroup.d.ts +1 -3
  163. package/dist/components/ButtonGroup.js +1 -1
  164. package/dist/components/Checkbox.d.ts +1 -3
  165. package/dist/components/Checkbox.js +1 -1
  166. package/dist/components/CloudinaryImage.d.ts +1 -3
  167. package/dist/components/Loading.d.ts +1 -3
  168. package/dist/components/Loading.js +1 -1
  169. package/dist/components/LoadingDots.d.ts +1 -3
  170. package/dist/components/LottieAnimation.d.ts +1 -3
  171. package/dist/components/LottieAnimation.js +1 -1
  172. package/dist/components/Menu.d.ts +1 -3
  173. package/dist/components/Menu.js +1 -1
  174. package/dist/components/Modal.d.ts +1 -3
  175. package/dist/components/Modal.js +1 -1
  176. package/dist/components/NavLink.d.ts +1 -3
  177. package/dist/components/NavLink.js +1 -1
  178. package/dist/components/ProgressBar.d.ts +1 -3
  179. package/dist/components/ProgressBar.js +1 -1
  180. package/dist/components/RadialProgressBar.d.ts +1 -3
  181. package/dist/components/RadialProgressBar.js +1 -1
  182. package/dist/components/Table.d.ts +1 -3
  183. package/dist/components/Table.js +1 -1
  184. package/dist/components/Transition.d.ts +1 -3
  185. package/dist/components/Transition.js +1 -1
  186. package/dist/composables/index.d.ts +1 -0
  187. package/dist/composables/useCalendar.d.ts +3 -0
  188. package/dist/composables/useCalendar.js +1 -1
  189. package/dist/composables/useFormValidation.d.ts +3 -0
  190. package/dist/composables/useMap.d.ts +3 -0
  191. package/dist/composables/useModal.d.ts +3 -0
  192. package/dist/composables/useNotifications.d.ts +3 -0
  193. package/dist/composables/useNotifications.js +221 -58
  194. package/dist/composables/useNotifications.js.map +1 -1
  195. package/dist/composables/useTabs.d.ts +1 -0
  196. package/dist/composables/useTheme.d.ts +3 -0
  197. package/dist/{dialog-B2WA4G25.js → dialog-BJ2Ld8l3.js} +2 -2
  198. package/dist/{dialog-B2WA4G25.js.map → dialog-BJ2Ld8l3.js.map} +1 -1
  199. package/dist/empty-state/ComingSoon.d.ts +1 -3
  200. package/dist/empty-state/ComingSoon.js +1 -1
  201. package/dist/empty-state/EmptyState.d.ts +1 -3
  202. package/dist/empty-state/EmptyState.js +1 -1
  203. package/dist/empty-state/index.d.ts +1 -0
  204. package/dist/empty-state/index.js +2 -2
  205. package/dist/forms/DynamicForm.d.ts +1 -3
  206. package/dist/forms/DynamicForm.js +1 -1
  207. package/dist/forms/DynamicFormField.d.ts +1 -3
  208. package/dist/forms/DynamicFormField.js +1 -1
  209. package/dist/forms/FormFieldWrapper.d.ts +1 -3
  210. package/dist/forms/FormFieldWrapper.js +56 -56
  211. package/dist/forms/FormFieldWrapper.js.map +1 -1
  212. package/dist/index.d.ts +3 -0
  213. package/dist/index.js +559 -565
  214. package/dist/index.js.map +1 -1
  215. package/dist/inputs/AddDeleteButtonGroup.d.ts +1 -3
  216. package/dist/inputs/CheckboxInput.d.ts +1 -3
  217. package/dist/inputs/CheckboxInput.js +1 -1
  218. package/dist/inputs/ComboboxInput.d.ts +1 -3
  219. package/dist/inputs/ComboboxInput.js +1 -1
  220. package/dist/inputs/DatepickerInput.d.ts +1 -3
  221. package/dist/inputs/EmailInput.d.ts +1 -3
  222. package/dist/inputs/EmailInput.js +1 -1
  223. package/dist/inputs/EmptyInput.d.ts +1 -3
  224. package/dist/inputs/EmptyInput.js +1 -1
  225. package/dist/inputs/FileDropzoneInput.d.ts +1 -3
  226. package/dist/inputs/HiddenInput.d.ts +1 -3
  227. package/dist/inputs/HiddenInput.js +1 -1
  228. package/dist/inputs/PhoneInput.d.ts +1 -3
  229. package/dist/inputs/PhoneInput.js +33 -23
  230. package/dist/inputs/PhoneInput.js.map +1 -1
  231. package/dist/inputs/RichTextInput.d.ts +1 -3
  232. package/dist/inputs/RichTextInput.js +693 -693
  233. package/dist/inputs/RichTextInput.js.map +1 -1
  234. package/dist/inputs/SelectInput.d.ts +1 -3
  235. package/dist/inputs/SelectInput.js +1 -1
  236. package/dist/inputs/SelectTextInput.d.ts +1 -3
  237. package/dist/inputs/SelectTextInput.js +1 -1
  238. package/dist/inputs/SwitchInput.d.ts +1 -3
  239. package/dist/inputs/SwitchInput.js +1 -1
  240. package/dist/inputs/SwitchInputGroup.d.ts +1 -3
  241. package/dist/inputs/SwitchInputGroup.js +1 -1
  242. package/dist/inputs/TagifyInput.d.ts +1 -3
  243. package/dist/inputs/TagifyInput.js +1 -1
  244. package/dist/inputs/TextAreaInput.d.ts +1 -3
  245. package/dist/inputs/TextAreaInput.js +1 -1
  246. package/dist/inputs/TextInput.d.ts +1 -3
  247. package/dist/inputs/TextInput.js +43 -43
  248. package/dist/inputs/TextInput.js.map +1 -1
  249. package/dist/layouts/DashboardLayout.d.ts +1 -3
  250. package/dist/layouts/DashboardLayout.js +1 -1
  251. package/dist/layouts/DefaultLayout.d.ts +1 -3
  252. package/dist/layouts/HeaderLayout.d.ts +1 -3
  253. package/dist/layouts/NavigationGroup.d.ts +1 -3
  254. package/dist/layouts/NavigationGroup.js +1 -1
  255. package/dist/layouts/NavigationItem.d.ts +1 -3
  256. package/dist/layouts/NavigationItem.js +1 -1
  257. package/dist/layouts/ProfileHeaderAvatar.d.ts +1 -3
  258. package/dist/layouts/ProfileHeaderAvatar.js +1 -1
  259. package/dist/layouts/ProjectLogo.d.ts +1 -3
  260. package/dist/layouts/ProjectLogo.js +1 -1
  261. package/dist/layouts/SidebarLayout.d.ts +1 -3
  262. package/dist/layouts/SidebarLayout.js +1 -1
  263. package/dist/{listbox-p2_4hUSD.js → listbox-YaWWZiiG.js} +2 -2
  264. package/dist/{listbox-p2_4hUSD.js.map → listbox-YaWWZiiG.js.map} +1 -1
  265. package/dist/loading/ContentSkeleton.d.ts +1 -3
  266. package/dist/loading/ContentSkeleton.js +32 -32
  267. package/dist/loading/ContentSkeleton.js.map +1 -1
  268. package/dist/loading/SmartLoadingIndicator.d.ts +1 -3
  269. package/dist/loading/SmartLoadingIndicator.js +92 -92
  270. package/dist/loading/SmartLoadingIndicator.js.map +1 -1
  271. package/dist/loading/index.d.ts +1 -0
  272. package/dist/maps/GoogleMap.d.ts +1 -3
  273. package/dist/maps/GoogleMap.js +2 -2
  274. package/dist/maps/GoogleMap.js.map +1 -1
  275. package/dist/maps/UiInfoWindow.d.ts +1 -3
  276. package/dist/maps/UiMap.d.ts +1 -3
  277. package/dist/maps/UiMap.js +18 -15
  278. package/dist/maps/UiMap.js.map +1 -1
  279. package/dist/maps/UiMapAll.d.ts +1 -3
  280. package/dist/maps/UiMapMarker.d.ts +1 -3
  281. package/dist/maps/index.d.ts +1 -0
  282. package/dist/modals/AlertModal.d.ts +1 -3
  283. package/dist/modals/AlertModal.js +1 -1
  284. package/dist/modals/BaseModal.d.ts +1 -3
  285. package/dist/modals/BaseModal.js +1 -1
  286. package/dist/modals/ImageCropperModal.d.ts +1 -3
  287. package/dist/modals/ImageCropperModal.js +182 -185
  288. package/dist/modals/ImageCropperModal.js.map +1 -1
  289. package/dist/notifications/NotificationContainer.d.ts +1 -3
  290. package/dist/notifications/NotificationContainer.js +2 -22
  291. package/dist/notifications/NotificationContainer.js.map +1 -1
  292. package/dist/notifications/NotificationToast.d.ts +1 -3
  293. package/dist/notifications/NotificationToast.js +1 -1
  294. package/dist/notifications/index.d.ts +1 -0
  295. package/dist/notifications/index.js +4 -4
  296. package/dist/src/components/CloudinaryImage.d.ts +7 -9
  297. package/dist/src/components/LottieAnimation.d.ts +6 -38
  298. package/dist/src/components/ThemeDebugModal.d.ts +6 -17
  299. package/dist/src/components/UiAvatar.d.ts +26 -37
  300. package/dist/src/components/UiBadge.d.ts +6 -34
  301. package/dist/src/components/UiBanner.d.ts +34 -108
  302. package/dist/src/components/UiBreadcrumb.d.ts +10 -12
  303. package/dist/src/components/UiButton.d.ts +13 -67
  304. package/dist/src/components/UiButtonGroup.d.ts +7 -38
  305. package/dist/src/components/UiCheckbox.d.ts +8 -34
  306. package/dist/src/components/UiLoading.d.ts +2 -29
  307. package/dist/src/components/UiLoadingDots.d.ts +1 -2
  308. package/dist/src/components/UiMenu.d.ts +4 -33
  309. package/dist/src/components/UiModal.d.ts +3 -3
  310. package/dist/src/components/UiNavLink.d.ts +6 -41
  311. package/dist/src/components/UiProgressBar.d.ts +3 -33
  312. package/dist/src/components/UiRadialProgressBar.d.ts +3 -35
  313. package/dist/src/components/UiTable.d.ts +25 -68
  314. package/dist/src/components/UiTransition.d.ts +3 -27
  315. package/dist/src/components/calendars/CalendarDashboard.d.ts +5 -18
  316. package/dist/src/components/calendars/CalendarHeader.d.ts +8 -8
  317. package/dist/src/components/calendars/DayCalendar.d.ts +11 -18
  318. package/dist/src/components/calendars/EventCard.d.ts +1 -3
  319. package/dist/src/components/calendars/EventsList.d.ts +6 -19
  320. package/dist/src/components/calendars/MonthCalendar.d.ts +6 -31
  321. package/dist/src/components/calendars/WeekCalendar.d.ts +10 -17
  322. package/dist/src/components/calendars/YearCalendar.d.ts +5 -30
  323. package/dist/src/components/calendars/index.d.ts +0 -1
  324. package/dist/src/components/charts/BarChart.d.ts +6 -40
  325. package/dist/src/components/charts/FunnelChart.d.ts +5 -35
  326. package/dist/src/components/charts/LineChart.d.ts +6 -38
  327. package/dist/src/components/charts/PieChart.d.ts +6 -38
  328. package/dist/src/components/charts/SparklineChart.d.ts +3 -33
  329. package/dist/src/components/charts/StatCard.d.ts +2 -25
  330. package/dist/src/components/charts/chartTheme.d.ts +0 -2
  331. package/dist/src/components/charts/index.d.ts +0 -1
  332. package/dist/src/components/empty-state/ComingSoon.d.ts +2 -30
  333. package/dist/src/components/empty-state/EmptyState.d.ts +4 -27
  334. package/dist/src/components/empty-state/index.d.ts +0 -1
  335. package/dist/src/components/forms/DynamicForm.d.ts +21 -48
  336. package/dist/src/components/forms/DynamicFormField.d.ts +8 -19
  337. package/dist/src/components/forms/FormFieldWrapper.d.ts +14 -59
  338. package/dist/src/components/forms/index.d.ts +0 -1
  339. package/dist/src/components/index.d.ts +0 -1
  340. package/dist/src/components/inputs/AddDeleteButtonGroup.d.ts +3 -5
  341. package/dist/src/components/inputs/CheckboxInput.d.ts +10 -38
  342. package/dist/src/components/inputs/ComboboxInput.d.ts +13 -49
  343. package/dist/src/components/inputs/DatepickerInput.d.ts +1045 -43
  344. package/dist/src/components/inputs/EmailInput.d.ts +10 -55
  345. package/dist/src/components/inputs/EmptyInput.d.ts +2 -27
  346. package/dist/src/components/inputs/FileDropzoneInput.d.ts +8 -8
  347. package/dist/src/components/inputs/HiddenInput.d.ts +2 -24
  348. package/dist/src/components/inputs/InputsShowcase.d.ts +1 -2
  349. package/dist/src/components/inputs/PhoneInput.d.ts +79 -17
  350. package/dist/src/components/inputs/RichTextInput.d.ts +22 -81
  351. package/dist/src/components/inputs/SelectInput.d.ts +49 -43
  352. package/dist/src/components/inputs/SelectTextInput.d.ts +52 -13
  353. package/dist/src/components/inputs/SwitchInput.d.ts +115 -43
  354. package/dist/src/components/inputs/SwitchInputGroup.d.ts +2 -4
  355. package/dist/src/components/inputs/TagifyInput.d.ts +30 -21
  356. package/dist/src/components/inputs/TextAreaInput.d.ts +9 -36
  357. package/dist/src/components/inputs/TextInput.d.ts +13 -74
  358. package/dist/src/components/inputs/index.d.ts +0 -1
  359. package/dist/src/components/layouts/CardLayout.d.ts +20 -67
  360. package/dist/src/components/layouts/DashboardLayout.d.ts +8 -6
  361. package/dist/src/components/layouts/DefaultLayout.d.ts +1 -2
  362. package/dist/src/components/layouts/HeaderLayout.d.ts +4 -5
  363. package/dist/src/components/layouts/InfoCard.d.ts +2 -26
  364. package/dist/src/components/layouts/NavigationGroup.d.ts +5 -17
  365. package/dist/src/components/layouts/NavigationItem.d.ts +7 -25
  366. package/dist/src/components/layouts/ProfileHeaderAvatar.d.ts +10 -41
  367. package/dist/src/components/layouts/ProjectLogo.d.ts +2 -34
  368. package/dist/src/components/layouts/PropsTable.d.ts +2 -24
  369. package/dist/src/components/layouts/ShowcaseCard.d.ts +2 -30
  370. package/dist/src/components/layouts/ShowcaseLayout.d.ts +5 -29
  371. package/dist/src/components/layouts/SidebarLayout.d.ts +7 -5
  372. package/dist/src/components/layouts/StateDisplay.d.ts +2 -24
  373. package/dist/src/components/layouts/index.d.ts +0 -1
  374. package/dist/src/components/loading/ContentSkeleton.d.ts +2 -32
  375. package/dist/src/components/loading/SmartLoadingIndicator.d.ts +6 -48
  376. package/dist/src/components/loading/index.d.ts +0 -1
  377. package/dist/src/components/maps/GoogleMap.d.ts +7 -9
  378. package/dist/src/components/maps/UiInfoWindow.d.ts +229 -15
  379. package/dist/src/components/maps/UiMap.d.ts +5091 -102
  380. package/dist/src/components/maps/UiMapAll.d.ts +1130 -21
  381. package/dist/src/components/maps/UiMapMarker.d.ts +16 -18
  382. package/dist/src/components/maps/index.d.ts +0 -1
  383. package/dist/src/components/modals/AlertModal.d.ts +9 -11
  384. package/dist/src/components/modals/BaseModal.d.ts +6 -8
  385. package/dist/src/components/modals/ImageCropperModal.d.ts +379 -76
  386. package/dist/src/components/modals/index.d.ts +0 -1
  387. package/dist/src/components/notifications/NotificationContainer.d.ts +0 -1
  388. package/dist/src/components/notifications/NotificationToast.d.ts +9 -19
  389. package/dist/src/components/notifications/index.d.ts +0 -1
  390. package/dist/src/components/stepper/StepperPanels.d.ts +4 -15
  391. package/dist/src/components/stepper/index.d.ts +0 -1
  392. package/dist/src/components/tabs/InlineTabs.d.ts +4 -29
  393. package/dist/src/components/tabs/TabGroup.d.ts +6 -33
  394. package/dist/src/components/tabs/TabGroupUnderline.d.ts +6 -33
  395. package/dist/src/components/tabs/TabsInPills.d.ts +4 -27
  396. package/dist/src/components/tabs/index.d.ts +0 -1
  397. package/dist/src/components/wrappers/BackgroundGradientWrapper.d.ts +2 -38
  398. package/dist/src/components/wrappers/CardWrapper.d.ts +1 -2
  399. package/dist/src/components/wrappers/DisclosureWrapper.d.ts +2 -24
  400. package/dist/src/components/wrappers/FormErrorWrapper.d.ts +2 -26
  401. package/dist/src/components/wrappers/index.d.ts +0 -1
  402. package/dist/src/composables/index.d.ts +0 -1
  403. package/dist/src/composables/useCalendar.d.ts +4 -6
  404. package/dist/src/composables/useEventSegments.d.ts +0 -1
  405. package/dist/src/composables/useFormValidation.d.ts +0 -2
  406. package/dist/src/composables/useMap.d.ts +0 -2
  407. package/dist/src/composables/useModal.d.ts +0 -1
  408. package/dist/src/composables/useNotifications.d.ts +1308 -31
  409. package/dist/src/composables/useSimpleTabs.d.ts +0 -2
  410. package/dist/src/composables/useStringTransform.d.ts +0 -2
  411. package/dist/src/composables/useTabs.d.ts +0 -2
  412. package/dist/src/composables/useTheme.d.ts +0 -1
  413. package/dist/src/config/css-variables.d.ts +0 -2
  414. package/dist/src/config/design-tokens.d.ts +1 -2
  415. package/dist/src/config/index.d.ts +0 -1
  416. package/dist/src/dev.d.ts +0 -2
  417. package/dist/src/index.d.ts +0 -1
  418. package/dist/src/plugin/configure.d.ts +0 -2
  419. package/dist/src/plugin/index.d.ts +0 -1
  420. package/dist/src/types/avatars.d.ts +0 -1
  421. package/dist/src/types/badges.d.ts +0 -1
  422. package/dist/src/types/calendars.d.ts +12 -12
  423. package/dist/src/types/core.d.ts +3 -5
  424. package/dist/src/types/form.d.ts +15 -14
  425. package/dist/src/types/forms.d.ts +2 -2
  426. package/dist/src/types/index.d.ts +0 -1
  427. package/dist/src/types/inputs.d.ts +14 -10
  428. package/dist/src/types/layouts.d.ts +0 -2
  429. package/dist/src/types/loading.d.ts +0 -1
  430. package/dist/src/types/maps.d.ts +0 -1
  431. package/dist/src/types/navigation.d.ts +2 -2
  432. package/dist/src/types/tables.d.ts +8 -7
  433. package/dist/src/types/tabs.d.ts +0 -1
  434. package/dist/src/types/transitions.d.ts +0 -1
  435. package/dist/src/types/ui.d.ts +1 -3
  436. package/dist/src/utils/calendar.d.ts +1 -2
  437. package/dist/src/utils/component-registry.d.ts +0 -2
  438. package/dist/src/utils/countryCodes.d.ts +0 -1
  439. package/dist/src/utils/id.d.ts +0 -1
  440. package/dist/src/utils/index.d.ts +0 -1
  441. package/dist/src/utils/mapThemes.d.ts +0 -2
  442. package/dist/src/utils/phone.d.ts +0 -2
  443. package/dist/src/utils/transitions.d.ts +0 -1
  444. package/dist/src/views/ButtonsShowcase.d.ts +2 -0
  445. package/dist/src/views/CalendarsShowcase.d.ts +2 -0
  446. package/dist/src/views/CardsShowcase.d.ts +2 -0
  447. package/dist/src/views/ChartsShowcase.d.ts +2 -0
  448. package/dist/src/views/EmptyStatesShowcase.d.ts +2 -0
  449. package/dist/src/views/InputsShowcase.d.ts +2 -0
  450. package/dist/src/views/KitchenSink.d.ts +2 -0
  451. package/dist/src/views/LayoutsShowcase.d.ts +2 -0
  452. package/dist/src/views/LoadingShowcase.d.ts +2 -0
  453. package/dist/src/views/MapsShowcase.d.ts +2 -0
  454. package/dist/src/views/ModalsShowcase.d.ts +2 -0
  455. package/dist/src/views/NotificationsShowcase.d.ts +2 -0
  456. package/dist/src/views/StepperShowcase.d.ts +2 -0
  457. package/dist/src/views/TabsShowcase.d.ts +2 -0
  458. package/dist/src/views/ValidationDemo.d.ts +2 -0
  459. package/dist/src/views/WrappersShowcase.d.ts +2 -0
  460. package/dist/src/views/components/AvatarPage.d.ts +2 -0
  461. package/dist/src/views/components/BadgePage.d.ts +2 -0
  462. package/dist/src/views/components/BannerPage.d.ts +2 -0
  463. package/dist/src/views/components/BreadcrumbPage.d.ts +2 -0
  464. package/dist/src/views/components/ButtonPage.d.ts +2 -0
  465. package/dist/src/views/components/CloudinaryImagePage.d.ts +2 -0
  466. package/dist/src/views/components/LoadingPage.d.ts +2 -0
  467. package/dist/src/views/components/MenuPage.d.ts +2 -0
  468. package/dist/src/views/components/ModalPage.d.ts +2 -0
  469. package/dist/src/views/components/ProgressPage.d.ts +2 -0
  470. package/dist/src/views/components/RichTextInputPage.d.ts +2 -0
  471. package/dist/src/views/components/TablePage.d.ts +2 -0
  472. package/dist/src/views/components/TextInputPage.d.ts +2 -0
  473. package/dist/src/views/components/TransitionPage.d.ts +2 -0
  474. package/dist/src/views/components/index.d.ts +0 -1
  475. package/dist/src/views/examples/CheckoutFormExample.d.ts +2 -0
  476. package/dist/src/views/examples/ContactFormExample.d.ts +2 -0
  477. package/dist/src/views/examples/RegistrationFormExample.d.ts +2 -0
  478. package/dist/src/views/examples/SettingsFormExample.d.ts +2 -0
  479. package/dist/src/views/examples/index.d.ts +0 -1
  480. package/dist/src/views/forms/ValidationPage.d.ts +2 -0
  481. package/dist/src/views/forms/index.d.ts +0 -1
  482. package/dist/src/views/index.d.ts +0 -1
  483. package/dist/src/views/inputs/CheckboxPage.d.ts +2 -0
  484. package/dist/src/views/inputs/ComboboxPage.d.ts +2 -0
  485. package/dist/src/views/inputs/DatepickerPage.d.ts +2 -0
  486. package/dist/src/views/inputs/EmailPage.d.ts +2 -0
  487. package/dist/src/views/inputs/FileDropzonePage.d.ts +2 -0
  488. package/dist/src/views/inputs/MiscInputsPage.d.ts +2 -0
  489. package/dist/src/views/inputs/PhonePage.d.ts +2 -0
  490. package/dist/src/views/inputs/SelectPage.d.ts +2 -0
  491. package/dist/src/views/inputs/SelectTextPage.d.ts +2 -0
  492. package/dist/src/views/inputs/SwitchGroupPage.d.ts +2 -0
  493. package/dist/src/views/inputs/SwitchPage.d.ts +2 -0
  494. package/dist/src/views/inputs/TextAreaPage.d.ts +2 -0
  495. package/dist/src/views/inputs/index.d.ts +0 -1
  496. package/dist/src/views/layouts/CardLayoutPage.d.ts +2 -0
  497. package/dist/src/views/layouts/DashboardLayoutPage.d.ts +2 -0
  498. package/dist/src/views/layouts/HeaderLayoutPage.d.ts +2 -0
  499. package/dist/src/views/layouts/SidebarLayoutPage.d.ts +2 -0
  500. package/dist/src/views/layouts/index.d.ts +0 -1
  501. package/dist/stepper/StepperPanels.d.ts +1 -3
  502. package/dist/stepper/StepperPanels.js +1 -1
  503. package/dist/stepper/index.d.ts +1 -0
  504. package/dist/stepper/index.js +1 -1
  505. package/dist/style.css +1 -1
  506. package/dist/tabs/InlineTabs.d.ts +1 -3
  507. package/dist/tabs/InlineTabs.js +1 -1
  508. package/dist/tabs/TabGroup.d.ts +1 -3
  509. package/dist/tabs/TabGroup.js +1 -1
  510. package/dist/tabs/TabGroupUnderline.d.ts +1 -3
  511. package/dist/tabs/TabGroupUnderline.js +1 -1
  512. package/dist/tabs/TabsInPills.d.ts +1 -3
  513. package/dist/tabs/TabsInPills.js +1 -1
  514. package/dist/tabs/index.d.ts +1 -0
  515. package/dist/tabs/index.js +4 -4
  516. package/dist/{tabs-Da32Mbhf.js → tabs-J5phClGv.js} +2 -2
  517. package/dist/{tabs-Da32Mbhf.js.map → tabs-J5phClGv.js.map} +1 -1
  518. package/dist/ui.css +1 -0
  519. package/dist/{use-outside-click-DNDV36Sc.js → use-outside-click-14T0Zn98.js} +3 -3
  520. package/dist/{use-outside-click-DNDV36Sc.js.map → use-outside-click-14T0Zn98.js.map} +1 -1
  521. package/dist/{use-tree-walker-BHCORE7u.js → use-tree-walker-Bo9gIb_K.js} +2 -2
  522. package/dist/{use-tree-walker-BHCORE7u.js.map → use-tree-walker-Bo9gIb_K.js.map} +1 -1
  523. package/dist/vue-router-B3K2xmg_.js +120 -0
  524. package/dist/vue-router-B3K2xmg_.js.map +1 -0
  525. package/dist/vue3-lottie.es-DT4qZE-F.js +7981 -0
  526. package/dist/{vue3-lottie.es-C_MDkNwR.js.map → vue3-lottie.es-DT4qZE-F.js.map} +1 -1
  527. package/dist/wrappers/BackgroundGradientWrapper.d.ts +1 -3
  528. package/dist/wrappers/BackgroundGradientWrapper.js +1 -1
  529. package/dist/wrappers/CardWrapper.d.ts +1 -3
  530. package/dist/wrappers/DisclosureWrapper.d.ts +1 -3
  531. package/dist/wrappers/DisclosureWrapper.js +1 -1
  532. package/dist/wrappers/FormErrorWrapper.d.ts +1 -3
  533. package/dist/wrappers/index.d.ts +1 -0
  534. package/dist/wrappers/index.js +2 -2
  535. package/package.json +13 -1
  536. package/dist/CalendarHeader.vue_vue_type_script_setup_true_lang-DRwe4rw8.js.map +0 -1
  537. package/dist/CheckboxInput.vue_vue_type_script_setup_true_lang-B8wJVkPP.js +0 -187
  538. package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-ClGP5YU0.js +0 -1315
  539. package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-ClGP5YU0.js.map +0 -1
  540. package/dist/DynamicForm.vue_vue_type_script_setup_true_lang-DRDP86Yc.js +0 -253
  541. package/dist/DynamicForm.vue_vue_type_script_setup_true_lang-DRDP86Yc.js.map +0 -1
  542. package/dist/DynamicFormField.vue_vue_type_script_setup_true_lang-Ct8b80dM.js.map +0 -1
  543. package/dist/EmailInput.vue_vue_type_script_setup_true_lang-Dhfgs2Jn.js +0 -122
  544. package/dist/EmptyState.vue_vue_type_script_setup_true_lang-B_XAq5Sr.js +0 -74
  545. package/dist/EmptyState.vue_vue_type_script_setup_true_lang-B_XAq5Sr.js.map +0 -1
  546. package/dist/LottieAnimation.vue_vue_type_script_setup_true_lang-CwOOShcM.js +0 -36
  547. package/dist/NavigationGroup.vue_vue_type_script_setup_true_lang-2tAB9Hbx.js +0 -30
  548. package/dist/NotificationToast.vue_vue_type_script_setup_true_lang-Cm5RsC7C.js +0 -162
  549. package/dist/NotificationToast.vue_vue_type_script_setup_true_lang-Cm5RsC7C.js.map +0 -1
  550. package/dist/ProfileHeaderAvatar.vue_vue_type_script_setup_true_lang-Cri9BiBy.js +0 -130
  551. package/dist/SelectInput.vue_vue_type_script_setup_true_lang--yUL7bcx.js.map +0 -1
  552. package/dist/TagifyInput.vue_vue_type_script_setup_true_lang-CAK6ZIiz.js.map +0 -1
  553. package/dist/UiAvatar.vue_vue_type_script_setup_true_lang-Ci7VLRZx.js.map +0 -1
  554. package/dist/UiTable.vue_vue_type_script_setup_true_lang-BuOCaPzi.js.map +0 -1
  555. package/dist/calendar-DyIP7WGv.js.map +0 -1
  556. package/dist/src/components/CloudinaryImage.d.ts.map +0 -1
  557. package/dist/src/components/LottieAnimation.d.ts.map +0 -1
  558. package/dist/src/components/ThemeDebugModal.d.ts.map +0 -1
  559. package/dist/src/components/UiAvatar.d.ts.map +0 -1
  560. package/dist/src/components/UiBadge.d.ts.map +0 -1
  561. package/dist/src/components/UiBanner.d.ts.map +0 -1
  562. package/dist/src/components/UiBreadcrumb.d.ts.map +0 -1
  563. package/dist/src/components/UiButton.d.ts.map +0 -1
  564. package/dist/src/components/UiButtonGroup.d.ts.map +0 -1
  565. package/dist/src/components/UiCheckbox.d.ts.map +0 -1
  566. package/dist/src/components/UiLoading.d.ts.map +0 -1
  567. package/dist/src/components/UiLoadingDots.d.ts.map +0 -1
  568. package/dist/src/components/UiMenu.d.ts.map +0 -1
  569. package/dist/src/components/UiModal.d.ts.map +0 -1
  570. package/dist/src/components/UiNavLink.d.ts.map +0 -1
  571. package/dist/src/components/UiProgressBar.d.ts.map +0 -1
  572. package/dist/src/components/UiRadialProgressBar.d.ts.map +0 -1
  573. package/dist/src/components/UiTable.d.ts.map +0 -1
  574. package/dist/src/components/UiTransition.d.ts.map +0 -1
  575. package/dist/src/components/calendars/CalendarDashboard.d.ts.map +0 -1
  576. package/dist/src/components/calendars/CalendarHeader.d.ts.map +0 -1
  577. package/dist/src/components/calendars/DayCalendar.d.ts.map +0 -1
  578. package/dist/src/components/calendars/EventCard.d.ts.map +0 -1
  579. package/dist/src/components/calendars/EventsList.d.ts.map +0 -1
  580. package/dist/src/components/calendars/MonthCalendar.d.ts.map +0 -1
  581. package/dist/src/components/calendars/WeekCalendar.d.ts.map +0 -1
  582. package/dist/src/components/calendars/YearCalendar.d.ts.map +0 -1
  583. package/dist/src/components/calendars/index.d.ts.map +0 -1
  584. package/dist/src/components/charts/BarChart.d.ts.map +0 -1
  585. package/dist/src/components/charts/BaseChart.d.ts +0 -81
  586. package/dist/src/components/charts/BaseChart.d.ts.map +0 -1
  587. package/dist/src/components/charts/FunnelChart.d.ts.map +0 -1
  588. package/dist/src/components/charts/LineChart.d.ts.map +0 -1
  589. package/dist/src/components/charts/PieChart.d.ts.map +0 -1
  590. package/dist/src/components/charts/SparklineChart.d.ts.map +0 -1
  591. package/dist/src/components/charts/StatCard.d.ts.map +0 -1
  592. package/dist/src/components/charts/chartTheme.d.ts.map +0 -1
  593. package/dist/src/components/charts/index.d.ts.map +0 -1
  594. package/dist/src/components/empty-state/ComingSoon.d.ts.map +0 -1
  595. package/dist/src/components/empty-state/EmptyState.d.ts.map +0 -1
  596. package/dist/src/components/empty-state/index.d.ts.map +0 -1
  597. package/dist/src/components/forms/DynamicForm.d.ts.map +0 -1
  598. package/dist/src/components/forms/DynamicFormField.d.ts.map +0 -1
  599. package/dist/src/components/forms/FormFieldWrapper.d.ts.map +0 -1
  600. package/dist/src/components/forms/index.d.ts.map +0 -1
  601. package/dist/src/components/index.d.ts.map +0 -1
  602. package/dist/src/components/inputs/AddDeleteButtonGroup.d.ts.map +0 -1
  603. package/dist/src/components/inputs/CheckboxInput.d.ts.map +0 -1
  604. package/dist/src/components/inputs/ComboboxInput.d.ts.map +0 -1
  605. package/dist/src/components/inputs/DatepickerInput.d.ts.map +0 -1
  606. package/dist/src/components/inputs/EmailInput.d.ts.map +0 -1
  607. package/dist/src/components/inputs/EmptyInput.d.ts.map +0 -1
  608. package/dist/src/components/inputs/FileDropzoneInput.d.ts.map +0 -1
  609. package/dist/src/components/inputs/HiddenInput.d.ts.map +0 -1
  610. package/dist/src/components/inputs/InputsShowcase.d.ts.map +0 -1
  611. package/dist/src/components/inputs/PhoneInput.d.ts.map +0 -1
  612. package/dist/src/components/inputs/RichTextInput.d.ts.map +0 -1
  613. package/dist/src/components/inputs/SelectInput.d.ts.map +0 -1
  614. package/dist/src/components/inputs/SelectTextInput.d.ts.map +0 -1
  615. package/dist/src/components/inputs/SwitchInput.d.ts.map +0 -1
  616. package/dist/src/components/inputs/SwitchInputGroup.d.ts.map +0 -1
  617. package/dist/src/components/inputs/TagifyInput.d.ts.map +0 -1
  618. package/dist/src/components/inputs/TextAreaInput.d.ts.map +0 -1
  619. package/dist/src/components/inputs/TextInput.d.ts.map +0 -1
  620. package/dist/src/components/inputs/index.d.ts.map +0 -1
  621. package/dist/src/components/layouts/CardLayout.d.ts.map +0 -1
  622. package/dist/src/components/layouts/DashboardLayout.d.ts.map +0 -1
  623. package/dist/src/components/layouts/DefaultLayout.d.ts.map +0 -1
  624. package/dist/src/components/layouts/HeaderLayout.d.ts.map +0 -1
  625. package/dist/src/components/layouts/InfoCard.d.ts.map +0 -1
  626. package/dist/src/components/layouts/NavigationGroup.d.ts.map +0 -1
  627. package/dist/src/components/layouts/NavigationItem.d.ts.map +0 -1
  628. package/dist/src/components/layouts/ProfileHeaderAvatar.d.ts.map +0 -1
  629. package/dist/src/components/layouts/ProjectLogo.d.ts.map +0 -1
  630. package/dist/src/components/layouts/PropsTable.d.ts.map +0 -1
  631. package/dist/src/components/layouts/ShowcaseCard.d.ts.map +0 -1
  632. package/dist/src/components/layouts/ShowcaseLayout.d.ts.map +0 -1
  633. package/dist/src/components/layouts/SidebarLayout.d.ts.map +0 -1
  634. package/dist/src/components/layouts/StateDisplay.d.ts.map +0 -1
  635. package/dist/src/components/layouts/index.d.ts.map +0 -1
  636. package/dist/src/components/loading/ContentSkeleton.d.ts.map +0 -1
  637. package/dist/src/components/loading/SmartLoadingIndicator.d.ts.map +0 -1
  638. package/dist/src/components/loading/index.d.ts.map +0 -1
  639. package/dist/src/components/maps/GoogleMap.d.ts.map +0 -1
  640. package/dist/src/components/maps/UiInfoWindow.d.ts.map +0 -1
  641. package/dist/src/components/maps/UiMap.d.ts.map +0 -1
  642. package/dist/src/components/maps/UiMapAll.d.ts.map +0 -1
  643. package/dist/src/components/maps/UiMapMarker.d.ts.map +0 -1
  644. package/dist/src/components/maps/index.d.ts.map +0 -1
  645. package/dist/src/components/modals/AlertModal.d.ts.map +0 -1
  646. package/dist/src/components/modals/BaseModal.d.ts.map +0 -1
  647. package/dist/src/components/modals/ImageCropperModal.d.ts.map +0 -1
  648. package/dist/src/components/modals/index.d.ts.map +0 -1
  649. package/dist/src/components/notifications/NotificationContainer.d.ts.map +0 -1
  650. package/dist/src/components/notifications/NotificationToast.d.ts.map +0 -1
  651. package/dist/src/components/notifications/index.d.ts.map +0 -1
  652. package/dist/src/components/stepper/StepperPanels.d.ts.map +0 -1
  653. package/dist/src/components/stepper/index.d.ts.map +0 -1
  654. package/dist/src/components/tabs/InlineTabs.d.ts.map +0 -1
  655. package/dist/src/components/tabs/TabGroup.d.ts.map +0 -1
  656. package/dist/src/components/tabs/TabGroupUnderline.d.ts.map +0 -1
  657. package/dist/src/components/tabs/TabsInPills.d.ts.map +0 -1
  658. package/dist/src/components/tabs/index.d.ts.map +0 -1
  659. package/dist/src/components/wrappers/BackgroundGradientWrapper.d.ts.map +0 -1
  660. package/dist/src/components/wrappers/CardWrapper.d.ts.map +0 -1
  661. package/dist/src/components/wrappers/DisclosureWrapper.d.ts.map +0 -1
  662. package/dist/src/components/wrappers/FormErrorWrapper.d.ts.map +0 -1
  663. package/dist/src/components/wrappers/index.d.ts.map +0 -1
  664. package/dist/src/composables/index.d.ts.map +0 -1
  665. package/dist/src/composables/useCalendar.d.ts.map +0 -1
  666. package/dist/src/composables/useEventSegments.d.ts.map +0 -1
  667. package/dist/src/composables/useFormValidation.d.ts.map +0 -1
  668. package/dist/src/composables/useMap.d.ts.map +0 -1
  669. package/dist/src/composables/useModal.d.ts.map +0 -1
  670. package/dist/src/composables/useNotifications.d.ts.map +0 -1
  671. package/dist/src/composables/useSimpleTabs.d.ts.map +0 -1
  672. package/dist/src/composables/useStringTransform.d.ts.map +0 -1
  673. package/dist/src/composables/useTabs.d.ts.map +0 -1
  674. package/dist/src/composables/useTheme.d.ts.map +0 -1
  675. package/dist/src/config/css-variables.d.ts.map +0 -1
  676. package/dist/src/config/design-tokens.d.ts.map +0 -1
  677. package/dist/src/config/index.d.ts.map +0 -1
  678. package/dist/src/dev.d.ts.map +0 -1
  679. package/dist/src/index.d.ts.map +0 -1
  680. package/dist/src/plugin/configure.d.ts.map +0 -1
  681. package/dist/src/plugin/index.d.ts.map +0 -1
  682. package/dist/src/types/avatars.d.ts.map +0 -1
  683. package/dist/src/types/badges.d.ts.map +0 -1
  684. package/dist/src/types/calendars.d.ts.map +0 -1
  685. package/dist/src/types/core.d.ts.map +0 -1
  686. package/dist/src/types/form.d.ts.map +0 -1
  687. package/dist/src/types/forms.d.ts.map +0 -1
  688. package/dist/src/types/index.d.ts.map +0 -1
  689. package/dist/src/types/inputs.d.ts.map +0 -1
  690. package/dist/src/types/layouts.d.ts.map +0 -1
  691. package/dist/src/types/loading.d.ts.map +0 -1
  692. package/dist/src/types/maps.d.ts.map +0 -1
  693. package/dist/src/types/navigation.d.ts.map +0 -1
  694. package/dist/src/types/tables.d.ts.map +0 -1
  695. package/dist/src/types/tabs.d.ts.map +0 -1
  696. package/dist/src/types/transitions.d.ts.map +0 -1
  697. package/dist/src/types/ui.d.ts.map +0 -1
  698. package/dist/src/utils/calendar.d.ts.map +0 -1
  699. package/dist/src/utils/component-registry.d.ts.map +0 -1
  700. package/dist/src/utils/countryCodes.d.ts.map +0 -1
  701. package/dist/src/utils/id.d.ts.map +0 -1
  702. package/dist/src/utils/index.d.ts.map +0 -1
  703. package/dist/src/utils/mapThemes.d.ts.map +0 -1
  704. package/dist/src/utils/phone.d.ts.map +0 -1
  705. package/dist/src/utils/transitions.d.ts.map +0 -1
  706. package/dist/src/views/components/index.d.ts.map +0 -1
  707. package/dist/src/views/examples/index.d.ts.map +0 -1
  708. package/dist/src/views/forms/index.d.ts.map +0 -1
  709. package/dist/src/views/index.d.ts.map +0 -1
  710. package/dist/src/views/inputs/index.d.ts.map +0 -1
  711. package/dist/src/views/layouts/index.d.ts.map +0 -1
  712. package/dist/vue-router-BPbyZ7xA.js +0 -145
  713. package/dist/vue-router-BPbyZ7xA.js.map +0 -1
  714. 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 o, createElementVNode as r, createVNode as I, unref as l, toDisplayString as n, Fragment as d, renderList as m, normalizeClass as u, withModifiers as V, createTextVNode as N, renderSlot as h } from "vue";
2
- import { _ as S } from "./SelectInput.vue_vue_type_script_setup_true_lang--yUL7bcx.js";
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(p, { emit: b }) {
20
- const c = p, k = b, {
21
- localTabs: i,
22
- selectInputItems: g,
23
- selectedTabItem: _,
24
- setActiveTab: x,
25
- handleSelectInputChange: f,
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: () => c.tabs,
31
- onTabChange: (a) => k("tab-changed", a),
30
+ getTabs: () => i.tabs,
31
+ onTabChange: (o) => p("tab-changed", o),
32
32
  includeCountInName: !0,
33
- badgeTheme: c.badgeTheme
33
+ badgeTheme: i.badgeTheme
34
34
  });
35
- return (a, j) => (t(), s("div", B, [
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(g),
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(f)
45
+ "onUpdate:modelValue": l(_)
46
46
  }, null, 8, ["name", "label", "items", "model-value", "onUpdate:modelValue"])
47
- ])) : o("", !0),
47
+ ])) : n("", !0),
48
48
  r("div", E, [
49
49
  r("div", O, [
50
- a.title ? (t(), s("h3", U, n(a.title), 1)) : o("", !0),
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(d, null, m(l(i), (e, C) => (t(), s("a", {
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(x)(C), ["prevent"]),
57
- class: u([
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(n(e.name) + " ", 1),
64
+ N(d(e.name) + " ", 1),
65
65
  l(y)(e) ? (t(), s("span", {
66
66
  key: 0,
67
- class: u([
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
- }, n(e.count), 3)) : o("", !0)
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
- h(a.$slots, "default"),
79
- (t(!0), s(d, null, m(l(i), (e) => (t(), s(d, {
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
- h(a.$slots, e.name)
84
- ])) : o("", !0)
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-DhkX5sWS.js.map
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-DhkX5sWS.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","dropdownOnMobile","_hoisted_2","_createVNode","SelectInput","_unref","title","_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,MAnEOC,EAAAA,oBAAXH,EAAA,GAAAC,EAWM,OAXNG,GAWM;AAAA,QAVJC,EASEC,GAAA;AAAA,UARC,MAAMC,EAAAV,CAAA;AAAA,UACN,OAAOW,EAAAA;AAAAA,UACP,OAAOD,EAAAhB,CAAA;AAAA,UACP,eAAagB,EAAAf,CAAA;AAAA,UACd,YAAS;AAAA,UACT,aAAU;AAAA,UACV,aAAY;AAAA,UACX,uBAAoBe,EAAAb,CAAA;AAAA,QAAA;;MAKzBe,EAwCM,OAxCNC,GAwCM;AAAA,QAvCJD,EAsCM,OAtCNE,GAsCM;AAAA,UApCIH,EAAAA,cADRP,EAKK,MALLW,GAKKC,EADAL,EAAAA,KAAK,GAAA,CAAA;UAEVC,EA8BM,OA9BNK,GA8BM;AAAA,YA7BJL,EA4BM,OA5BNM,GA4BM;AAAA,eA3BJf,EAAA,EAAA,GAAAC,EA0BIe,GAAA,MAAAC,EAzBqBV,EAAAjB,CAAA,GAAS,CAAxB4B,GAAKnB,YADfE,EA0BI,KAAA;AAAA,gBAxBD,KAAKiB,EAAI;AAAA,gBACV,MAAK;AAAA,gBACJ,SAAKC,EAAA,CAAAC,MAAUb,EAAAd,CAAA,EAAaM,CAAK,GAAA,CAAA,SAAA,CAAA;AAAA,gBACjC,OAAKsB,EAAA;AAAA,kBAAoBH,EAAI;;kBAAmeA,EAAI,WAAQ,wCAAA;AAAA,gBAAA;gBAO5gB,gBAAcA,EAAI,mBAAmB;AAAA,cAAA;oBAEnCA,EAAI,IAAI,IAAG,KACd,CAAA;AAAA,gBACQX,EAAAZ,CAAA,EAASuB,CAAG,UADpBjB,EAUO,QAAA;AAAA;kBARJ,OAAKoB,EAAA;AAAA;oBAAyHH,EAAI;;mBAOhIL,EAAAK,EAAI,KAAK,GAAA,CAAA;;;;;;MASxBT,EASM,OATNa,GASM;AAAA,QARJC,EAAuBC,EAAA,QAAA,SAAA;AAAA,gBAGvBvB,EAIWe,GAAA,MAAAC,EAJaV,EAAAjB,CAAA,GAAS,CAAhB4B;UAAwB,KAAAA,EAAI;AAAA,QAAA;UAChCA,EAAI,WAAWX,KAAMW,EAAI,IAAI,UAAxCjB,EAEM,OAAAwB,GAAA;AAAA,YADJF,EAAyBC,EAAA,QAAZN,EAAI,IAAI;AAAA,UAAA;;;;;;"}
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 r, createBlock as p, openBlock as y, mergeProps as u } from "vue";
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 i } from "./charts/chartTheme.js";
4
- const v = /* @__PURE__ */ m({
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(s, { emit: n }) {
19
- const e = s, c = n, a = r(() => Array.isArray(e.data) && e.data.length > 0 && typeof e.data[0] == "object"), d = r(() => {
20
- const t = a.value ? e.data.map((o, l) => ({
21
- name: o.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: o.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: i(e.colors[l % e.colors.length]) } : void 0,
29
- itemStyle: { color: e.colors[l % e.colors.length] }
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: i(e.colors[0]) } : void 0,
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 && a.value ? { show: !0 } : { show: !1 },
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, o) => (y(), p(g, u({
56
+ return (t, a) => (p(), y(g, u({
57
57
  option: d.value,
58
- height: t.height,
59
- loading: t.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
- v as _
64
+ x as _
65
65
  };
66
- //# sourceMappingURL=LineChart.vue_vue_type_script_setup_true_lang-DszQ-a5L.js.map
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-DszQ-a5L.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","height","loading","$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,QAAQW,EAAAA;AAAAA,MACR,SAASC,EAAAA;AAAAA,IAAAA,GACFC,EAAAA,QAAM,EACb,SAAOR,EAAA,CAAW,GAAA,MAAA,IAAA,CAAA,UAAA,UAAA,SAAA,CAAA;AAAA;;"}
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-CwOOShcM.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","animationData","_createBlock","_unref","height","width","speed","pauseOnHover","$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;qBAnESK,EAAAA,sBADRC,EAYEC,EAAAZ,CAAA,GAAA;AAAA;MAVC,eAAeU,EAAAA;AAAAA,MACf,QAAQG,EAAAA;AAAAA,MACR,OAAOC,EAAAA;AAAAA,MACP,MAAMP,EAAA;AAAA,MACN,UAAUE,EAAA;AAAA,MACV,OAAOM,EAAAA;AAAAA,MACP,cAAcC,EAAAA;AAAAA,MACd,mCAAUC,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
+ {"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-DyIP7WGv.js";
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-CnX3Ih0W.js.map
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-2tAB9Hbx.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","title","_normalizeClass","iconOnly","_createElementVNode","_hoisted_2","_renderSlot","_ctx"],"mappings":";;;;;;;;;;;sBACEA,EAAA,GAAAC,EAgBM,OAhBNC,GAgBM;AAAA,MAdMC,EAAAA,cAAVF,EAMK,MAAA;AAAA;QANa,OAAKG,EAAA;AAAA;UAA8FC,EAAAA,WAAQ,mBAAA;AAAA,QAAA;QAI7H,OAAA,EAAA,OAAA,0CAAA;AAAA,MAAA,KACKF,EAAAA,KAAK,GAAA,CAAA;MAIVG,EAIK,MAJLC,GAIK;AAAA,QAHHC,EAEOC,EAAA,QAAA,SAAA;AAAA,MAAA;;;;"}
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 r, createElementBlock as l, openBlock as s, createElementVNode as i, normalizeStyle as n, normalizeClass as a, createBlock as m, createCommentVNode as t, resolveDynamicComponent as d, toDisplayString as o } from "vue";
2
- const c = ["href"], g = {
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
- }, b = /* @__PURE__ */ r({
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(h) {
17
- return (e, p) => (s(), l("li", null, [
18
- i("a", {
16
+ setup(e) {
17
+ return (h, f) => (l(), t("li", null, [
18
+ o("a", {
19
19
  href: e.href,
20
- class: a([
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: n({
24
+ style: a({
25
25
  color: e.isActive ? "#fef2f2" : "#fca5a5",
26
26
  backgroundColor: e.isActive ? "#f87171" : "transparent"
27
27
  })
28
28
  }, [
29
- (s(), m(d(e.icon), {
30
- class: a([
29
+ (l(), m(r(e.icon), {
30
+ class: s([
31
31
  "sl-h-6 sl-w-6 sl-shrink-0"
32
32
  ]),
33
- style: n({
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 ? t("", !0) : (s(), l("span", g, o(e.name), 1)),
39
- e.badge ? (s(), l("span", {
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: a([
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
- }, o(e.badge), 3)) : t("", !0)
50
- ], 14, c)
49
+ }, i(e.badge), 3)) : n("", !0)
50
+ ], 14, d)
51
51
  ]));
52
52
  }
53
53
  });
54
54
  export {
55
- b as _
55
+ y as _
56
56
  };
57
- //# sourceMappingURL=NavigationItem.vue_vue_type_script_setup_true_lang-CEsuYl3S.js.map
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-CEsuYl3S.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","href","_normalizeClass","isActive","_normalizeStyle","_openBlock","_createBlock","_resolveDynamicComponent","icon","iconOnly","_hoisted_2","_toDisplayString","name","badge","badgeTheme"],"mappings":";;;;;;;;;;;;;;;;2BACEA,EAuCK,MAAA,MAAA;AAAA,MAtCHC,EAqCI,KAAA;AAAA,QArCA,MAAMC,EAAAA;AAAAA,QAAa,OAAKC,EAAA;AAAA;UAAiHC,EAAAA;;QAM1I,OAAKC,EAAA;AAAA,iBAAmBD,EAAAA;2BAAiFA,EAAAA;;;SAQ1GE,KAAAC,EAWEC,EAVKC,EAAAA,IAAI,GAAA;AAAA,UACR,OAAKN,EAAE;AAAA;WAEP;AAAA,UACA,OAAKE,EAAA;AAAA,mBAAqBD,EAAAA;;UAK3B,eAAY;AAAA,QAAA;QAEDM,EAAAA,6BAAbV,EAA4D,QAA5DW,GAA4DC,EAAdC,EAAAA,IAAI,GAAA,CAAA;AAAA,QACtCC,EAAAA,cAAZd,EASO,QAAA;AAAA;UATa,OAAKG,EAAA;AAAA;YAAyHY,EAAAA,eAAU,YAAA,uCAAA;AAAA,YAAoEA,EAAAA,eAAU,cAAA,iCAAA;AAAA,YAAgEA,EAAAA,eAAU,YAAA,kCAAA;AAAA,YAA+DA,EAAAA,eAAU,YAAA,mCAAA;AAAA,YAAgEA,EAAAA,eAAU,WAAA,gCAAA;AAAA,UAAA;aAQlcD,EAAAA,KAAK,GAAA,CAAA;;;;;"}
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;;;;;"}