@stachelock/ui 0.3.0 → 0.4.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 (670) 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-P5ypRyGV.js} +111 -111
  10. package/dist/CalendarHeader.vue_vue_type_script_setup_true_lang-P5ypRyGV.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-1YGa9Fnd.js +1351 -0
  14. package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-1YGa9Fnd.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-B_XAq5Sr.js → EmptyState.vue_vue_type_script_setup_true_lang-Dxy-cLPT.js} +29 -29
  33. package/dist/{EmptyState.vue_vue_type_script_setup_true_lang-B_XAq5Sr.js.map → EmptyState.vue_vue_type_script_setup_true_lang-Dxy-cLPT.js.map} +1 -1
  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/NotificationToast.vue_vue_type_script_setup_true_lang-DZxcEZkP.js +277 -0
  53. package/dist/NotificationToast.vue_vue_type_script_setup_true_lang-DZxcEZkP.js.map +1 -0
  54. package/dist/{PieChart.vue_vue_type_script_setup_true_lang-DJRcsty7.js → PieChart.vue_vue_type_script_setup_true_lang-e3wsA9O4.js} +12 -12
  55. 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
  56. package/dist/ProfileHeaderAvatar.vue_vue_type_script_setup_true_lang-DkABeWJt.js +130 -0
  57. 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
  58. 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
  59. 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
  60. 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
  61. package/dist/SelectInput.vue_vue_type_script_setup_true_lang-DHiZ-7K2.js.map +1 -0
  62. 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
  63. 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
  64. package/dist/{SidebarLayout.vue_vue_type_script_setup_true_lang-BD2PF5xp.js → SidebarLayout.vue_vue_type_script_setup_true_lang-BJ5jadgZ.js} +9 -10
  65. 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
  66. package/dist/{SparklineChart.vue_vue_type_script_setup_true_lang-DDTcpEjy.js → SparklineChart.vue_vue_type_script_setup_true_lang-BlNk5ZqM.js} +17 -17
  67. 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
  68. 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
  69. 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
  70. package/dist/{StepperPanels.vue_vue_type_script_setup_true_lang-BtHrfqFI.js → StepperPanels.vue_vue_type_script_setup_true_lang-D6Fv7iz3.js} +38 -38
  71. 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
  72. package/dist/{SwitchInput.vue_vue_type_script_setup_true_lang-D6M1qwP1.js → SwitchInput.vue_vue_type_script_setup_true_lang-C88FcxuK.js} +110 -108
  73. 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
  74. package/dist/{SwitchInputGroup.vue_vue_type_script_setup_true_lang-BNKKEAMq.js → SwitchInputGroup.vue_vue_type_script_setup_true_lang-CK9JWl4F.js} +2 -2
  75. 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
  76. package/dist/{TabGroup.vue_vue_type_script_setup_true_lang-DrhDwLL3.js → TabGroup.vue_vue_type_script_setup_true_lang-DVVeOgWH.js} +3 -3
  77. 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
  78. package/dist/{TabGroupUnderline.vue_vue_type_script_setup_true_lang-Di33js6c.js → TabGroupUnderline.vue_vue_type_script_setup_true_lang-_3XtOn3w.js} +32 -32
  79. 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
  80. package/dist/{TabsInPills.vue_vue_type_script_setup_true_lang-CMxaK0Kw.js → TabsInPills.vue_vue_type_script_setup_true_lang-DY1NkXCQ.js} +21 -21
  81. 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
  82. 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
  83. package/dist/TagifyInput.vue_vue_type_script_setup_true_lang-Da6-pRJ2.js.map +1 -0
  84. 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
  85. 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
  86. package/dist/{UiAvatar.vue_vue_type_script_setup_true_lang-Ci7VLRZx.js → UiAvatar.vue_vue_type_script_setup_true_lang-WVY6JbUL.js} +36 -36
  87. package/dist/UiAvatar.vue_vue_type_script_setup_true_lang-WVY6JbUL.js.map +1 -0
  88. package/dist/{UiBadge.vue_vue_type_script_setup_true_lang-CV8WVEXL.js → UiBadge.vue_vue_type_script_setup_true_lang-DOtbLb9x.js} +19 -19
  89. 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
  90. 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
  91. 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
  92. 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
  93. 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
  94. 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
  95. 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
  96. package/dist/{UiMenu.vue_vue_type_script_setup_true_lang-aJddpshR.js → UiMenu.vue_vue_type_script_setup_true_lang-bQdfCzk6.js} +74 -74
  97. 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
  98. package/dist/{UiModal.vue_vue_type_script_setup_true_lang-CFgLuifQ.js → UiModal.vue_vue_type_script_setup_true_lang-CpwFUDVU.js} +9 -10
  99. 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
  100. package/dist/{UiNavLink.vue_vue_type_script_setup_true_lang-C23h6Do0.js → UiNavLink.vue_vue_type_script_setup_true_lang-DnWMn40M.js} +2 -2
  101. 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
  102. package/dist/{UiProgressBar.vue_vue_type_script_setup_true_lang-BioTMORv.js → UiProgressBar.vue_vue_type_script_setup_true_lang-BCh4orZW.js} +24 -24
  103. 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
  104. package/dist/{UiTable.vue_vue_type_script_setup_true_lang-BuOCaPzi.js → UiTable.vue_vue_type_script_setup_true_lang-xGAiJ9rS.js} +80 -83
  105. package/dist/UiTable.vue_vue_type_script_setup_true_lang-xGAiJ9rS.js.map +1 -0
  106. 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
  107. 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
  108. package/dist/{YearCalendar.vue_vue_type_script_setup_true_lang-C01PTLg8.js → YearCalendar.vue_vue_type_script_setup_true_lang-CfKSpLLN.js} +15 -15
  109. 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
  110. package/dist/{calendar-DyIP7WGv.js → calendar-BlSSD4nO.js} +2 -2
  111. package/dist/calendar-BlSSD4nO.js.map +1 -0
  112. package/dist/calendars/CalendarDashboard.d.ts +1 -3
  113. package/dist/calendars/CalendarDashboard.js +32 -33
  114. package/dist/calendars/CalendarDashboard.js.map +1 -1
  115. package/dist/calendars/CalendarHeader.d.ts +1 -3
  116. package/dist/calendars/CalendarHeader.js +1 -1
  117. package/dist/calendars/DayCalendar.d.ts +1 -3
  118. package/dist/calendars/DayCalendar.js +1 -1
  119. package/dist/calendars/EventCard.d.ts +1 -3
  120. package/dist/calendars/EventsList.d.ts +1 -3
  121. package/dist/calendars/EventsList.js +1 -1
  122. package/dist/calendars/MonthCalendar.d.ts +1 -3
  123. package/dist/calendars/MonthCalendar.js +1 -1
  124. package/dist/calendars/WeekCalendar.d.ts +1 -3
  125. package/dist/calendars/WeekCalendar.js +118 -118
  126. package/dist/calendars/WeekCalendar.js.map +1 -1
  127. package/dist/calendars/YearCalendar.d.ts +1 -3
  128. package/dist/calendars/YearCalendar.js +1 -1
  129. package/dist/charts/BarChart.d.ts +1 -3
  130. package/dist/charts/BarChart.js +1 -1
  131. package/dist/charts/BaseChart.d.ts +1 -3
  132. package/dist/charts/BaseChart.js +54 -54
  133. package/dist/charts/BaseChart.js.map +1 -1
  134. package/dist/charts/FunnelChart.d.ts +1 -3
  135. package/dist/charts/FunnelChart.js +1 -1
  136. package/dist/charts/LineChart.d.ts +1 -3
  137. package/dist/charts/LineChart.js +1 -1
  138. package/dist/charts/PieChart.d.ts +1 -3
  139. package/dist/charts/PieChart.js +1 -1
  140. package/dist/charts/SparklineChart.d.ts +1 -3
  141. package/dist/charts/SparklineChart.js +1 -1
  142. package/dist/charts/StatCard.d.ts +1 -3
  143. package/dist/charts/StatCard.js +1 -1
  144. package/dist/charts/chartTheme.d.ts +3 -0
  145. package/dist/charts/index.d.ts +1 -0
  146. package/dist/charts/index.js +6 -6
  147. package/dist/components/Avatar.d.ts +1 -3
  148. package/dist/components/Avatar.js +1 -1
  149. package/dist/components/Badge.d.ts +1 -3
  150. package/dist/components/Badge.js +1 -1
  151. package/dist/components/Banner.d.ts +1 -3
  152. package/dist/components/Banner.js +69 -69
  153. package/dist/components/Banner.js.map +1 -1
  154. package/dist/components/Breadcrumb.d.ts +1 -3
  155. package/dist/components/Breadcrumb.js +5 -5
  156. package/dist/components/Breadcrumb.js.map +1 -1
  157. package/dist/components/Button.d.ts +1 -3
  158. package/dist/components/Button.js +29 -29
  159. package/dist/components/Button.js.map +1 -1
  160. package/dist/components/ButtonGroup.d.ts +1 -3
  161. package/dist/components/ButtonGroup.js +1 -1
  162. package/dist/components/Checkbox.d.ts +1 -3
  163. package/dist/components/Checkbox.js +1 -1
  164. package/dist/components/CloudinaryImage.d.ts +1 -3
  165. package/dist/components/Loading.d.ts +1 -3
  166. package/dist/components/Loading.js +1 -1
  167. package/dist/components/LoadingDots.d.ts +1 -3
  168. package/dist/components/LottieAnimation.d.ts +1 -3
  169. package/dist/components/LottieAnimation.js +1 -1
  170. package/dist/components/Menu.d.ts +1 -3
  171. package/dist/components/Menu.js +1 -1
  172. package/dist/components/Modal.d.ts +1 -3
  173. package/dist/components/Modal.js +1 -1
  174. package/dist/components/NavLink.d.ts +1 -3
  175. package/dist/components/NavLink.js +1 -1
  176. package/dist/components/ProgressBar.d.ts +1 -3
  177. package/dist/components/ProgressBar.js +1 -1
  178. package/dist/components/RadialProgressBar.d.ts +1 -3
  179. package/dist/components/RadialProgressBar.js +1 -1
  180. package/dist/components/Table.d.ts +1 -3
  181. package/dist/components/Table.js +1 -1
  182. package/dist/components/Transition.d.ts +1 -3
  183. package/dist/components/Transition.js +1 -1
  184. package/dist/composables/index.d.ts +1 -0
  185. package/dist/composables/useCalendar.d.ts +3 -0
  186. package/dist/composables/useCalendar.js +1 -1
  187. package/dist/composables/useFormValidation.d.ts +3 -0
  188. package/dist/composables/useMap.d.ts +3 -0
  189. package/dist/composables/useModal.d.ts +3 -0
  190. package/dist/composables/useNotifications.d.ts +3 -0
  191. package/dist/composables/useNotifications.js +221 -58
  192. package/dist/composables/useNotifications.js.map +1 -1
  193. package/dist/composables/useTabs.d.ts +1 -0
  194. package/dist/composables/useTheme.d.ts +3 -0
  195. package/dist/{dialog-B2WA4G25.js → dialog-BJ2Ld8l3.js} +2 -2
  196. package/dist/{dialog-B2WA4G25.js.map → dialog-BJ2Ld8l3.js.map} +1 -1
  197. package/dist/empty-state/ComingSoon.d.ts +1 -3
  198. package/dist/empty-state/ComingSoon.js +1 -1
  199. package/dist/empty-state/EmptyState.d.ts +1 -3
  200. package/dist/empty-state/EmptyState.js +1 -1
  201. package/dist/empty-state/index.d.ts +1 -0
  202. package/dist/empty-state/index.js +2 -2
  203. package/dist/forms/DynamicForm.d.ts +1 -3
  204. package/dist/forms/DynamicForm.js +1 -1
  205. package/dist/forms/DynamicFormField.d.ts +1 -3
  206. package/dist/forms/DynamicFormField.js +1 -1
  207. package/dist/forms/FormFieldWrapper.d.ts +1 -3
  208. package/dist/forms/FormFieldWrapper.js +56 -56
  209. package/dist/forms/FormFieldWrapper.js.map +1 -1
  210. package/dist/index.d.ts +3 -0
  211. package/dist/index.js +505 -511
  212. package/dist/index.js.map +1 -1
  213. package/dist/inputs/AddDeleteButtonGroup.d.ts +1 -3
  214. package/dist/inputs/CheckboxInput.d.ts +1 -3
  215. package/dist/inputs/CheckboxInput.js +1 -1
  216. package/dist/inputs/ComboboxInput.d.ts +1 -3
  217. package/dist/inputs/ComboboxInput.js +1 -1
  218. package/dist/inputs/DatepickerInput.d.ts +1 -3
  219. package/dist/inputs/EmailInput.d.ts +1 -3
  220. package/dist/inputs/EmailInput.js +1 -1
  221. package/dist/inputs/EmptyInput.d.ts +1 -3
  222. package/dist/inputs/EmptyInput.js +1 -1
  223. package/dist/inputs/FileDropzoneInput.d.ts +1 -3
  224. package/dist/inputs/HiddenInput.d.ts +1 -3
  225. package/dist/inputs/HiddenInput.js +1 -1
  226. package/dist/inputs/PhoneInput.d.ts +1 -3
  227. package/dist/inputs/PhoneInput.js +33 -23
  228. package/dist/inputs/PhoneInput.js.map +1 -1
  229. package/dist/inputs/RichTextInput.d.ts +1 -3
  230. package/dist/inputs/RichTextInput.js +693 -693
  231. package/dist/inputs/RichTextInput.js.map +1 -1
  232. package/dist/inputs/SelectInput.d.ts +1 -3
  233. package/dist/inputs/SelectInput.js +1 -1
  234. package/dist/inputs/SelectTextInput.d.ts +1 -3
  235. package/dist/inputs/SelectTextInput.js +1 -1
  236. package/dist/inputs/SwitchInput.d.ts +1 -3
  237. package/dist/inputs/SwitchInput.js +1 -1
  238. package/dist/inputs/SwitchInputGroup.d.ts +1 -3
  239. package/dist/inputs/SwitchInputGroup.js +1 -1
  240. package/dist/inputs/TagifyInput.d.ts +1 -3
  241. package/dist/inputs/TagifyInput.js +1 -1
  242. package/dist/inputs/TextAreaInput.d.ts +1 -3
  243. package/dist/inputs/TextAreaInput.js +1 -1
  244. package/dist/inputs/TextInput.d.ts +1 -3
  245. package/dist/inputs/TextInput.js +43 -43
  246. package/dist/inputs/TextInput.js.map +1 -1
  247. package/dist/layouts/DashboardLayout.d.ts +1 -3
  248. package/dist/layouts/DashboardLayout.js +1 -1
  249. package/dist/layouts/DefaultLayout.d.ts +1 -3
  250. package/dist/layouts/HeaderLayout.d.ts +1 -3
  251. package/dist/layouts/NavigationGroup.d.ts +1 -3
  252. package/dist/layouts/NavigationGroup.js +1 -1
  253. package/dist/layouts/NavigationItem.d.ts +1 -3
  254. package/dist/layouts/NavigationItem.js +1 -1
  255. package/dist/layouts/ProfileHeaderAvatar.d.ts +1 -3
  256. package/dist/layouts/ProfileHeaderAvatar.js +1 -1
  257. package/dist/layouts/ProjectLogo.d.ts +1 -3
  258. package/dist/layouts/ProjectLogo.js +1 -1
  259. package/dist/layouts/SidebarLayout.d.ts +1 -3
  260. package/dist/layouts/SidebarLayout.js +1 -1
  261. package/dist/{listbox-p2_4hUSD.js → listbox-YaWWZiiG.js} +2 -2
  262. package/dist/{listbox-p2_4hUSD.js.map → listbox-YaWWZiiG.js.map} +1 -1
  263. package/dist/loading/ContentSkeleton.d.ts +1 -3
  264. package/dist/loading/ContentSkeleton.js +32 -32
  265. package/dist/loading/ContentSkeleton.js.map +1 -1
  266. package/dist/loading/SmartLoadingIndicator.d.ts +1 -3
  267. package/dist/loading/SmartLoadingIndicator.js +92 -92
  268. package/dist/loading/SmartLoadingIndicator.js.map +1 -1
  269. package/dist/loading/index.d.ts +1 -0
  270. package/dist/maps/GoogleMap.d.ts +1 -3
  271. package/dist/maps/GoogleMap.js +2 -2
  272. package/dist/maps/GoogleMap.js.map +1 -1
  273. package/dist/maps/UiInfoWindow.d.ts +1 -3
  274. package/dist/maps/UiMap.d.ts +1 -3
  275. package/dist/maps/UiMap.js +18 -15
  276. package/dist/maps/UiMap.js.map +1 -1
  277. package/dist/maps/UiMapAll.d.ts +1 -3
  278. package/dist/maps/UiMapMarker.d.ts +1 -3
  279. package/dist/maps/index.d.ts +1 -0
  280. package/dist/modals/AlertModal.d.ts +1 -3
  281. package/dist/modals/AlertModal.js +1 -1
  282. package/dist/modals/BaseModal.d.ts +1 -3
  283. package/dist/modals/BaseModal.js +1 -1
  284. package/dist/modals/ImageCropperModal.d.ts +1 -3
  285. package/dist/modals/ImageCropperModal.js +182 -185
  286. package/dist/modals/ImageCropperModal.js.map +1 -1
  287. package/dist/notifications/NotificationContainer.d.ts +1 -3
  288. package/dist/notifications/NotificationContainer.js +30 -16
  289. package/dist/notifications/NotificationContainer.js.map +1 -1
  290. package/dist/notifications/NotificationToast.d.ts +1 -3
  291. package/dist/notifications/NotificationToast.js +1 -1
  292. package/dist/notifications/index.d.ts +1 -0
  293. package/dist/notifications/index.js +1 -1
  294. package/dist/src/components/CloudinaryImage.d.ts +7 -8
  295. package/dist/src/components/CloudinaryImage.d.ts.map +1 -1
  296. package/dist/src/components/LottieAnimation.d.ts +6 -37
  297. package/dist/src/components/LottieAnimation.d.ts.map +1 -1
  298. package/dist/src/components/ThemeDebugModal.d.ts +6 -16
  299. package/dist/src/components/ThemeDebugModal.d.ts.map +1 -1
  300. package/dist/src/components/UiAvatar.d.ts +26 -36
  301. package/dist/src/components/UiAvatar.d.ts.map +1 -1
  302. package/dist/src/components/UiBadge.d.ts +6 -33
  303. package/dist/src/components/UiBadge.d.ts.map +1 -1
  304. package/dist/src/components/UiBanner.d.ts +34 -107
  305. package/dist/src/components/UiBanner.d.ts.map +1 -1
  306. package/dist/src/components/UiBreadcrumb.d.ts +10 -11
  307. package/dist/src/components/UiBreadcrumb.d.ts.map +1 -1
  308. package/dist/src/components/UiButton.d.ts +13 -66
  309. package/dist/src/components/UiButton.d.ts.map +1 -1
  310. package/dist/src/components/UiButtonGroup.d.ts +7 -37
  311. package/dist/src/components/UiButtonGroup.d.ts.map +1 -1
  312. package/dist/src/components/UiCheckbox.d.ts +8 -33
  313. package/dist/src/components/UiCheckbox.d.ts.map +1 -1
  314. package/dist/src/components/UiLoading.d.ts +2 -28
  315. package/dist/src/components/UiLoading.d.ts.map +1 -1
  316. package/dist/src/components/UiLoadingDots.d.ts +1 -1
  317. package/dist/src/components/UiLoadingDots.d.ts.map +1 -1
  318. package/dist/src/components/UiMenu.d.ts +4 -32
  319. package/dist/src/components/UiMenu.d.ts.map +1 -1
  320. package/dist/src/components/UiModal.d.ts +3 -2
  321. package/dist/src/components/UiModal.d.ts.map +1 -1
  322. package/dist/src/components/UiNavLink.d.ts +6 -40
  323. package/dist/src/components/UiNavLink.d.ts.map +1 -1
  324. package/dist/src/components/UiProgressBar.d.ts +3 -32
  325. package/dist/src/components/UiProgressBar.d.ts.map +1 -1
  326. package/dist/src/components/UiRadialProgressBar.d.ts +3 -34
  327. package/dist/src/components/UiRadialProgressBar.d.ts.map +1 -1
  328. package/dist/src/components/UiTable.d.ts +25 -67
  329. package/dist/src/components/UiTable.d.ts.map +1 -1
  330. package/dist/src/components/UiTransition.d.ts +3 -26
  331. package/dist/src/components/UiTransition.d.ts.map +1 -1
  332. package/dist/src/components/calendars/CalendarDashboard.d.ts +5 -17
  333. package/dist/src/components/calendars/CalendarDashboard.d.ts.map +1 -1
  334. package/dist/src/components/calendars/CalendarHeader.d.ts +8 -7
  335. package/dist/src/components/calendars/CalendarHeader.d.ts.map +1 -1
  336. package/dist/src/components/calendars/DayCalendar.d.ts +11 -17
  337. package/dist/src/components/calendars/DayCalendar.d.ts.map +1 -1
  338. package/dist/src/components/calendars/EventCard.d.ts +1 -2
  339. package/dist/src/components/calendars/EventCard.d.ts.map +1 -1
  340. package/dist/src/components/calendars/EventsList.d.ts +6 -18
  341. package/dist/src/components/calendars/EventsList.d.ts.map +1 -1
  342. package/dist/src/components/calendars/MonthCalendar.d.ts +6 -30
  343. package/dist/src/components/calendars/MonthCalendar.d.ts.map +1 -1
  344. package/dist/src/components/calendars/WeekCalendar.d.ts +10 -16
  345. package/dist/src/components/calendars/WeekCalendar.d.ts.map +1 -1
  346. package/dist/src/components/calendars/YearCalendar.d.ts +5 -29
  347. package/dist/src/components/calendars/YearCalendar.d.ts.map +1 -1
  348. package/dist/src/components/charts/BarChart.d.ts +6 -39
  349. package/dist/src/components/charts/BarChart.d.ts.map +1 -1
  350. package/dist/src/components/charts/FunnelChart.d.ts +5 -34
  351. package/dist/src/components/charts/FunnelChart.d.ts.map +1 -1
  352. package/dist/src/components/charts/LineChart.d.ts +6 -37
  353. package/dist/src/components/charts/LineChart.d.ts.map +1 -1
  354. package/dist/src/components/charts/PieChart.d.ts +6 -37
  355. package/dist/src/components/charts/PieChart.d.ts.map +1 -1
  356. package/dist/src/components/charts/SparklineChart.d.ts +3 -32
  357. package/dist/src/components/charts/SparklineChart.d.ts.map +1 -1
  358. package/dist/src/components/charts/StatCard.d.ts +2 -24
  359. package/dist/src/components/charts/StatCard.d.ts.map +1 -1
  360. package/dist/src/components/charts/chartTheme.d.ts +0 -1
  361. package/dist/src/components/empty-state/ComingSoon.d.ts +2 -29
  362. package/dist/src/components/empty-state/ComingSoon.d.ts.map +1 -1
  363. package/dist/src/components/empty-state/EmptyState.d.ts +4 -26
  364. package/dist/src/components/empty-state/EmptyState.d.ts.map +1 -1
  365. package/dist/src/components/forms/DynamicForm.d.ts +21 -47
  366. package/dist/src/components/forms/DynamicForm.d.ts.map +1 -1
  367. package/dist/src/components/forms/DynamicFormField.d.ts +8 -18
  368. package/dist/src/components/forms/DynamicFormField.d.ts.map +1 -1
  369. package/dist/src/components/forms/FormFieldWrapper.d.ts +14 -58
  370. package/dist/src/components/forms/FormFieldWrapper.d.ts.map +1 -1
  371. package/dist/src/components/inputs/AddDeleteButtonGroup.d.ts +3 -4
  372. package/dist/src/components/inputs/AddDeleteButtonGroup.d.ts.map +1 -1
  373. package/dist/src/components/inputs/CheckboxInput.d.ts +10 -37
  374. package/dist/src/components/inputs/CheckboxInput.d.ts.map +1 -1
  375. package/dist/src/components/inputs/ComboboxInput.d.ts +13 -48
  376. package/dist/src/components/inputs/ComboboxInput.d.ts.map +1 -1
  377. package/dist/src/components/inputs/DatepickerInput.d.ts +1045 -42
  378. package/dist/src/components/inputs/DatepickerInput.d.ts.map +1 -1
  379. package/dist/src/components/inputs/EmailInput.d.ts +10 -54
  380. package/dist/src/components/inputs/EmailInput.d.ts.map +1 -1
  381. package/dist/src/components/inputs/EmptyInput.d.ts +2 -26
  382. package/dist/src/components/inputs/EmptyInput.d.ts.map +1 -1
  383. package/dist/src/components/inputs/FileDropzoneInput.d.ts +8 -7
  384. package/dist/src/components/inputs/FileDropzoneInput.d.ts.map +1 -1
  385. package/dist/src/components/inputs/HiddenInput.d.ts +2 -23
  386. package/dist/src/components/inputs/HiddenInput.d.ts.map +1 -1
  387. package/dist/src/components/inputs/InputsShowcase.d.ts +1 -1
  388. package/dist/src/components/inputs/InputsShowcase.d.ts.map +1 -1
  389. package/dist/src/components/inputs/PhoneInput.d.ts +79 -16
  390. package/dist/src/components/inputs/PhoneInput.d.ts.map +1 -1
  391. package/dist/src/components/inputs/RichTextInput.d.ts +22 -80
  392. package/dist/src/components/inputs/RichTextInput.d.ts.map +1 -1
  393. package/dist/src/components/inputs/SelectInput.d.ts +49 -42
  394. package/dist/src/components/inputs/SelectInput.d.ts.map +1 -1
  395. package/dist/src/components/inputs/SelectTextInput.d.ts +52 -12
  396. package/dist/src/components/inputs/SelectTextInput.d.ts.map +1 -1
  397. package/dist/src/components/inputs/SwitchInput.d.ts +115 -42
  398. package/dist/src/components/inputs/SwitchInput.d.ts.map +1 -1
  399. package/dist/src/components/inputs/SwitchInputGroup.d.ts +2 -3
  400. package/dist/src/components/inputs/SwitchInputGroup.d.ts.map +1 -1
  401. package/dist/src/components/inputs/TagifyInput.d.ts +30 -20
  402. package/dist/src/components/inputs/TagifyInput.d.ts.map +1 -1
  403. package/dist/src/components/inputs/TextAreaInput.d.ts +9 -35
  404. package/dist/src/components/inputs/TextAreaInput.d.ts.map +1 -1
  405. package/dist/src/components/inputs/TextInput.d.ts +13 -73
  406. package/dist/src/components/inputs/TextInput.d.ts.map +1 -1
  407. package/dist/src/components/layouts/CardLayout.d.ts +20 -66
  408. package/dist/src/components/layouts/CardLayout.d.ts.map +1 -1
  409. package/dist/src/components/layouts/DashboardLayout.d.ts +8 -5
  410. package/dist/src/components/layouts/DashboardLayout.d.ts.map +1 -1
  411. package/dist/src/components/layouts/DefaultLayout.d.ts +1 -1
  412. package/dist/src/components/layouts/DefaultLayout.d.ts.map +1 -1
  413. package/dist/src/components/layouts/HeaderLayout.d.ts +4 -4
  414. package/dist/src/components/layouts/HeaderLayout.d.ts.map +1 -1
  415. package/dist/src/components/layouts/InfoCard.d.ts +2 -25
  416. package/dist/src/components/layouts/InfoCard.d.ts.map +1 -1
  417. package/dist/src/components/layouts/NavigationGroup.d.ts +5 -16
  418. package/dist/src/components/layouts/NavigationGroup.d.ts.map +1 -1
  419. package/dist/src/components/layouts/NavigationItem.d.ts +7 -24
  420. package/dist/src/components/layouts/NavigationItem.d.ts.map +1 -1
  421. package/dist/src/components/layouts/ProfileHeaderAvatar.d.ts +10 -40
  422. package/dist/src/components/layouts/ProfileHeaderAvatar.d.ts.map +1 -1
  423. package/dist/src/components/layouts/ProjectLogo.d.ts +2 -33
  424. package/dist/src/components/layouts/ProjectLogo.d.ts.map +1 -1
  425. package/dist/src/components/layouts/PropsTable.d.ts +2 -23
  426. package/dist/src/components/layouts/PropsTable.d.ts.map +1 -1
  427. package/dist/src/components/layouts/ShowcaseCard.d.ts +2 -29
  428. package/dist/src/components/layouts/ShowcaseCard.d.ts.map +1 -1
  429. package/dist/src/components/layouts/ShowcaseLayout.d.ts +5 -28
  430. package/dist/src/components/layouts/ShowcaseLayout.d.ts.map +1 -1
  431. package/dist/src/components/layouts/SidebarLayout.d.ts +7 -4
  432. package/dist/src/components/layouts/SidebarLayout.d.ts.map +1 -1
  433. package/dist/src/components/layouts/StateDisplay.d.ts +2 -23
  434. package/dist/src/components/layouts/StateDisplay.d.ts.map +1 -1
  435. package/dist/src/components/loading/ContentSkeleton.d.ts +2 -31
  436. package/dist/src/components/loading/ContentSkeleton.d.ts.map +1 -1
  437. package/dist/src/components/loading/SmartLoadingIndicator.d.ts +6 -47
  438. package/dist/src/components/loading/SmartLoadingIndicator.d.ts.map +1 -1
  439. package/dist/src/components/maps/GoogleMap.d.ts +7 -8
  440. package/dist/src/components/maps/GoogleMap.d.ts.map +1 -1
  441. package/dist/src/components/maps/UiInfoWindow.d.ts +229 -14
  442. package/dist/src/components/maps/UiInfoWindow.d.ts.map +1 -1
  443. package/dist/src/components/maps/UiMap.d.ts +5091 -101
  444. package/dist/src/components/maps/UiMap.d.ts.map +1 -1
  445. package/dist/src/components/maps/UiMapAll.d.ts +1130 -20
  446. package/dist/src/components/maps/UiMapAll.d.ts.map +1 -1
  447. package/dist/src/components/maps/UiMapMarker.d.ts +16 -17
  448. package/dist/src/components/maps/UiMapMarker.d.ts.map +1 -1
  449. package/dist/src/components/modals/AlertModal.d.ts +9 -10
  450. package/dist/src/components/modals/AlertModal.d.ts.map +1 -1
  451. package/dist/src/components/modals/BaseModal.d.ts +6 -7
  452. package/dist/src/components/modals/BaseModal.d.ts.map +1 -1
  453. package/dist/src/components/modals/ImageCropperModal.d.ts +379 -75
  454. package/dist/src/components/modals/ImageCropperModal.d.ts.map +1 -1
  455. package/dist/src/components/notifications/NotificationContainer.d.ts.map +1 -1
  456. package/dist/src/components/notifications/NotificationToast.d.ts +9 -18
  457. package/dist/src/components/notifications/NotificationToast.d.ts.map +1 -1
  458. package/dist/src/components/stepper/StepperPanels.d.ts +4 -14
  459. package/dist/src/components/stepper/StepperPanels.d.ts.map +1 -1
  460. package/dist/src/components/tabs/InlineTabs.d.ts +4 -28
  461. package/dist/src/components/tabs/InlineTabs.d.ts.map +1 -1
  462. package/dist/src/components/tabs/TabGroup.d.ts +6 -32
  463. package/dist/src/components/tabs/TabGroup.d.ts.map +1 -1
  464. package/dist/src/components/tabs/TabGroupUnderline.d.ts +6 -32
  465. package/dist/src/components/tabs/TabGroupUnderline.d.ts.map +1 -1
  466. package/dist/src/components/tabs/TabsInPills.d.ts +4 -26
  467. package/dist/src/components/tabs/TabsInPills.d.ts.map +1 -1
  468. package/dist/src/components/wrappers/BackgroundGradientWrapper.d.ts +2 -37
  469. package/dist/src/components/wrappers/BackgroundGradientWrapper.d.ts.map +1 -1
  470. package/dist/src/components/wrappers/CardWrapper.d.ts +1 -1
  471. package/dist/src/components/wrappers/CardWrapper.d.ts.map +1 -1
  472. package/dist/src/components/wrappers/DisclosureWrapper.d.ts +2 -23
  473. package/dist/src/components/wrappers/DisclosureWrapper.d.ts.map +1 -1
  474. package/dist/src/components/wrappers/FormErrorWrapper.d.ts +2 -25
  475. package/dist/src/components/wrappers/FormErrorWrapper.d.ts.map +1 -1
  476. package/dist/src/composables/useCalendar.d.ts +4 -5
  477. package/dist/src/composables/useFormValidation.d.ts +0 -1
  478. package/dist/src/composables/useMap.d.ts +0 -1
  479. package/dist/src/composables/useNotifications.d.ts +1308 -30
  480. package/dist/src/composables/useNotifications.d.ts.map +1 -1
  481. package/dist/src/composables/useSimpleTabs.d.ts +0 -1
  482. package/dist/src/composables/useStringTransform.d.ts +0 -1
  483. package/dist/src/composables/useTabs.d.ts +0 -1
  484. package/dist/src/config/css-variables.d.ts +0 -1
  485. package/dist/src/config/design-tokens.d.ts +1 -1
  486. package/dist/src/config/design-tokens.d.ts.map +1 -1
  487. package/dist/src/dev.d.ts +0 -1
  488. package/dist/src/plugin/configure.d.ts +0 -1
  489. package/dist/src/types/calendars.d.ts +12 -11
  490. package/dist/src/types/calendars.d.ts.map +1 -1
  491. package/dist/src/types/core.d.ts +3 -4
  492. package/dist/src/types/core.d.ts.map +1 -1
  493. package/dist/src/types/form.d.ts +15 -13
  494. package/dist/src/types/form.d.ts.map +1 -1
  495. package/dist/src/types/forms.d.ts +2 -1
  496. package/dist/src/types/forms.d.ts.map +1 -1
  497. package/dist/src/types/inputs.d.ts +14 -9
  498. package/dist/src/types/inputs.d.ts.map +1 -1
  499. package/dist/src/types/layouts.d.ts +0 -1
  500. package/dist/src/types/navigation.d.ts +2 -1
  501. package/dist/src/types/navigation.d.ts.map +1 -1
  502. package/dist/src/types/tables.d.ts +8 -6
  503. package/dist/src/types/tables.d.ts.map +1 -1
  504. package/dist/src/types/ui.d.ts +1 -2
  505. package/dist/src/types/ui.d.ts.map +1 -1
  506. package/dist/src/utils/calendar.d.ts +1 -1
  507. package/dist/src/utils/calendar.d.ts.map +1 -1
  508. package/dist/src/utils/component-registry.d.ts +0 -1
  509. package/dist/src/utils/mapThemes.d.ts +0 -1
  510. package/dist/src/utils/phone.d.ts +0 -1
  511. package/dist/src/views/ButtonsShowcase.d.ts +3 -0
  512. package/dist/src/views/ButtonsShowcase.d.ts.map +1 -0
  513. package/dist/src/views/CalendarsShowcase.d.ts +3 -0
  514. package/dist/src/views/CalendarsShowcase.d.ts.map +1 -0
  515. package/dist/src/views/CardsShowcase.d.ts +3 -0
  516. package/dist/src/views/CardsShowcase.d.ts.map +1 -0
  517. package/dist/src/views/ChartsShowcase.d.ts +3 -0
  518. package/dist/src/views/ChartsShowcase.d.ts.map +1 -0
  519. package/dist/src/views/EmptyStatesShowcase.d.ts +3 -0
  520. package/dist/src/views/EmptyStatesShowcase.d.ts.map +1 -0
  521. package/dist/src/views/InputsShowcase.d.ts +3 -0
  522. package/dist/src/views/InputsShowcase.d.ts.map +1 -0
  523. package/dist/src/views/KitchenSink.d.ts +3 -0
  524. package/dist/src/views/KitchenSink.d.ts.map +1 -0
  525. package/dist/src/views/LayoutsShowcase.d.ts +3 -0
  526. package/dist/src/views/LayoutsShowcase.d.ts.map +1 -0
  527. package/dist/src/views/LoadingShowcase.d.ts +3 -0
  528. package/dist/src/views/LoadingShowcase.d.ts.map +1 -0
  529. package/dist/src/views/MapsShowcase.d.ts +3 -0
  530. package/dist/src/views/MapsShowcase.d.ts.map +1 -0
  531. package/dist/src/views/ModalsShowcase.d.ts +3 -0
  532. package/dist/src/views/ModalsShowcase.d.ts.map +1 -0
  533. package/dist/src/views/NotificationsShowcase.d.ts +3 -0
  534. package/dist/src/views/NotificationsShowcase.d.ts.map +1 -0
  535. package/dist/src/views/StepperShowcase.d.ts +3 -0
  536. package/dist/src/views/StepperShowcase.d.ts.map +1 -0
  537. package/dist/src/views/TabsShowcase.d.ts +3 -0
  538. package/dist/src/views/TabsShowcase.d.ts.map +1 -0
  539. package/dist/src/views/ValidationDemo.d.ts +3 -0
  540. package/dist/src/views/ValidationDemo.d.ts.map +1 -0
  541. package/dist/src/views/WrappersShowcase.d.ts +3 -0
  542. package/dist/src/views/WrappersShowcase.d.ts.map +1 -0
  543. package/dist/src/views/components/AvatarPage.d.ts +3 -0
  544. package/dist/src/views/components/AvatarPage.d.ts.map +1 -0
  545. package/dist/src/views/components/BadgePage.d.ts +3 -0
  546. package/dist/src/views/components/BadgePage.d.ts.map +1 -0
  547. package/dist/src/views/components/BannerPage.d.ts +3 -0
  548. package/dist/src/views/components/BannerPage.d.ts.map +1 -0
  549. package/dist/src/views/components/BreadcrumbPage.d.ts +3 -0
  550. package/dist/src/views/components/BreadcrumbPage.d.ts.map +1 -0
  551. package/dist/src/views/components/ButtonPage.d.ts +3 -0
  552. package/dist/src/views/components/ButtonPage.d.ts.map +1 -0
  553. package/dist/src/views/components/CloudinaryImagePage.d.ts +3 -0
  554. package/dist/src/views/components/CloudinaryImagePage.d.ts.map +1 -0
  555. package/dist/src/views/components/LoadingPage.d.ts +3 -0
  556. package/dist/src/views/components/LoadingPage.d.ts.map +1 -0
  557. package/dist/src/views/components/MenuPage.d.ts +3 -0
  558. package/dist/src/views/components/MenuPage.d.ts.map +1 -0
  559. package/dist/src/views/components/ModalPage.d.ts +3 -0
  560. package/dist/src/views/components/ModalPage.d.ts.map +1 -0
  561. package/dist/src/views/components/ProgressPage.d.ts +3 -0
  562. package/dist/src/views/components/ProgressPage.d.ts.map +1 -0
  563. package/dist/src/views/components/RichTextInputPage.d.ts +3 -0
  564. package/dist/src/views/components/RichTextInputPage.d.ts.map +1 -0
  565. package/dist/src/views/components/TablePage.d.ts +3 -0
  566. package/dist/src/views/components/TablePage.d.ts.map +1 -0
  567. package/dist/src/views/components/TextInputPage.d.ts +3 -0
  568. package/dist/src/views/components/TextInputPage.d.ts.map +1 -0
  569. package/dist/src/views/components/TransitionPage.d.ts +3 -0
  570. package/dist/src/views/components/TransitionPage.d.ts.map +1 -0
  571. package/dist/src/views/examples/CheckoutFormExample.d.ts +3 -0
  572. package/dist/src/views/examples/CheckoutFormExample.d.ts.map +1 -0
  573. package/dist/src/views/examples/ContactFormExample.d.ts +3 -0
  574. package/dist/src/views/examples/ContactFormExample.d.ts.map +1 -0
  575. package/dist/src/views/examples/RegistrationFormExample.d.ts +3 -0
  576. package/dist/src/views/examples/RegistrationFormExample.d.ts.map +1 -0
  577. package/dist/src/views/examples/SettingsFormExample.d.ts +3 -0
  578. package/dist/src/views/examples/SettingsFormExample.d.ts.map +1 -0
  579. package/dist/src/views/forms/ValidationPage.d.ts +3 -0
  580. package/dist/src/views/forms/ValidationPage.d.ts.map +1 -0
  581. package/dist/src/views/inputs/CheckboxPage.d.ts +3 -0
  582. package/dist/src/views/inputs/CheckboxPage.d.ts.map +1 -0
  583. package/dist/src/views/inputs/ComboboxPage.d.ts +3 -0
  584. package/dist/src/views/inputs/ComboboxPage.d.ts.map +1 -0
  585. package/dist/src/views/inputs/DatepickerPage.d.ts +3 -0
  586. package/dist/src/views/inputs/DatepickerPage.d.ts.map +1 -0
  587. package/dist/src/views/inputs/EmailPage.d.ts +3 -0
  588. package/dist/src/views/inputs/EmailPage.d.ts.map +1 -0
  589. package/dist/src/views/inputs/FileDropzonePage.d.ts +3 -0
  590. package/dist/src/views/inputs/FileDropzonePage.d.ts.map +1 -0
  591. package/dist/src/views/inputs/MiscInputsPage.d.ts +3 -0
  592. package/dist/src/views/inputs/MiscInputsPage.d.ts.map +1 -0
  593. package/dist/src/views/inputs/PhonePage.d.ts +3 -0
  594. package/dist/src/views/inputs/PhonePage.d.ts.map +1 -0
  595. package/dist/src/views/inputs/SelectPage.d.ts +3 -0
  596. package/dist/src/views/inputs/SelectPage.d.ts.map +1 -0
  597. package/dist/src/views/inputs/SelectTextPage.d.ts +3 -0
  598. package/dist/src/views/inputs/SelectTextPage.d.ts.map +1 -0
  599. package/dist/src/views/inputs/SwitchGroupPage.d.ts +3 -0
  600. package/dist/src/views/inputs/SwitchGroupPage.d.ts.map +1 -0
  601. package/dist/src/views/inputs/SwitchPage.d.ts +3 -0
  602. package/dist/src/views/inputs/SwitchPage.d.ts.map +1 -0
  603. package/dist/src/views/inputs/TextAreaPage.d.ts +3 -0
  604. package/dist/src/views/inputs/TextAreaPage.d.ts.map +1 -0
  605. package/dist/src/views/layouts/CardLayoutPage.d.ts +3 -0
  606. package/dist/src/views/layouts/CardLayoutPage.d.ts.map +1 -0
  607. package/dist/src/views/layouts/DashboardLayoutPage.d.ts +3 -0
  608. package/dist/src/views/layouts/DashboardLayoutPage.d.ts.map +1 -0
  609. package/dist/src/views/layouts/HeaderLayoutPage.d.ts +3 -0
  610. package/dist/src/views/layouts/HeaderLayoutPage.d.ts.map +1 -0
  611. package/dist/src/views/layouts/SidebarLayoutPage.d.ts +3 -0
  612. package/dist/src/views/layouts/SidebarLayoutPage.d.ts.map +1 -0
  613. package/dist/stepper/StepperPanels.d.ts +1 -3
  614. package/dist/stepper/StepperPanels.js +1 -1
  615. package/dist/stepper/index.d.ts +1 -0
  616. package/dist/stepper/index.js +1 -1
  617. package/dist/style.css +1 -1
  618. package/dist/tabs/InlineTabs.d.ts +1 -3
  619. package/dist/tabs/InlineTabs.js +1 -1
  620. package/dist/tabs/TabGroup.d.ts +1 -3
  621. package/dist/tabs/TabGroup.js +1 -1
  622. package/dist/tabs/TabGroupUnderline.d.ts +1 -3
  623. package/dist/tabs/TabGroupUnderline.js +1 -1
  624. package/dist/tabs/TabsInPills.d.ts +1 -3
  625. package/dist/tabs/TabsInPills.js +1 -1
  626. package/dist/tabs/index.d.ts +1 -0
  627. package/dist/tabs/index.js +4 -4
  628. package/dist/{tabs-Da32Mbhf.js → tabs-J5phClGv.js} +2 -2
  629. package/dist/{tabs-Da32Mbhf.js.map → tabs-J5phClGv.js.map} +1 -1
  630. package/dist/ui.css +1 -0
  631. package/dist/{use-outside-click-DNDV36Sc.js → use-outside-click-14T0Zn98.js} +3 -3
  632. package/dist/{use-outside-click-DNDV36Sc.js.map → use-outside-click-14T0Zn98.js.map} +1 -1
  633. package/dist/{use-tree-walker-BHCORE7u.js → use-tree-walker-Bo9gIb_K.js} +2 -2
  634. package/dist/{use-tree-walker-BHCORE7u.js.map → use-tree-walker-Bo9gIb_K.js.map} +1 -1
  635. package/dist/vue-router-B3K2xmg_.js +120 -0
  636. package/dist/vue-router-B3K2xmg_.js.map +1 -0
  637. package/dist/vue3-lottie.es-DT4qZE-F.js +7981 -0
  638. package/dist/{vue3-lottie.es-C_MDkNwR.js.map → vue3-lottie.es-DT4qZE-F.js.map} +1 -1
  639. package/dist/wrappers/BackgroundGradientWrapper.d.ts +1 -3
  640. package/dist/wrappers/BackgroundGradientWrapper.js +1 -1
  641. package/dist/wrappers/CardWrapper.d.ts +1 -3
  642. package/dist/wrappers/DisclosureWrapper.d.ts +1 -3
  643. package/dist/wrappers/DisclosureWrapper.js +1 -1
  644. package/dist/wrappers/FormErrorWrapper.d.ts +1 -3
  645. package/dist/wrappers/index.d.ts +1 -0
  646. package/dist/wrappers/index.js +2 -2
  647. package/package.json +26 -18
  648. package/dist/CalendarHeader.vue_vue_type_script_setup_true_lang-DRwe4rw8.js.map +0 -1
  649. package/dist/CheckboxInput.vue_vue_type_script_setup_true_lang-B8wJVkPP.js +0 -187
  650. package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-ClGP5YU0.js +0 -1315
  651. package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-ClGP5YU0.js.map +0 -1
  652. package/dist/DynamicForm.vue_vue_type_script_setup_true_lang-DRDP86Yc.js +0 -253
  653. package/dist/DynamicForm.vue_vue_type_script_setup_true_lang-DRDP86Yc.js.map +0 -1
  654. package/dist/DynamicFormField.vue_vue_type_script_setup_true_lang-Ct8b80dM.js.map +0 -1
  655. package/dist/EmailInput.vue_vue_type_script_setup_true_lang-Dhfgs2Jn.js +0 -122
  656. package/dist/LottieAnimation.vue_vue_type_script_setup_true_lang-CwOOShcM.js +0 -36
  657. package/dist/NavigationGroup.vue_vue_type_script_setup_true_lang-2tAB9Hbx.js +0 -30
  658. package/dist/NotificationToast.vue_vue_type_script_setup_true_lang-Cm5RsC7C.js +0 -162
  659. package/dist/NotificationToast.vue_vue_type_script_setup_true_lang-Cm5RsC7C.js.map +0 -1
  660. package/dist/ProfileHeaderAvatar.vue_vue_type_script_setup_true_lang-Cri9BiBy.js +0 -130
  661. package/dist/SelectInput.vue_vue_type_script_setup_true_lang--yUL7bcx.js.map +0 -1
  662. package/dist/TagifyInput.vue_vue_type_script_setup_true_lang-CAK6ZIiz.js.map +0 -1
  663. package/dist/UiAvatar.vue_vue_type_script_setup_true_lang-Ci7VLRZx.js.map +0 -1
  664. package/dist/UiTable.vue_vue_type_script_setup_true_lang-BuOCaPzi.js.map +0 -1
  665. package/dist/calendar-DyIP7WGv.js.map +0 -1
  666. package/dist/src/components/charts/BaseChart.d.ts +0 -81
  667. package/dist/src/components/charts/BaseChart.d.ts.map +0 -1
  668. package/dist/vue-router-BPbyZ7xA.js +0 -145
  669. package/dist/vue-router-BPbyZ7xA.js.map +0 -1
  670. package/dist/vue3-lottie.es-C_MDkNwR.js +0 -7976
@@ -1 +1 @@
1
- {"version":3,"file":"WeekCalendar.js","sources":["../../src/components/calendars/WeekCalendar.vue"],"sourcesContent":["<!--\n @component WeekCalendar\n @description Week view calendar with time-based event grid.\n \n Features:\n - 7-day grid with hourly time slots\n - Current time indicator (red line)\n - Overlapping event handling with column layout\n - Auto-scroll to current time on mount\n - Responsive mobile view (single day)\n - Multi-day event support\n - Event click handling\n \n @example\n <WeekCalendar\n :days=\"weekDays\"\n @selectDay=\"handleDaySelect\"\n @select:event=\"handleEventSelect\"\n />\n-->\n<template>\n <div class=\"sl-isolate sl-flex sl-h-full sl-min-h-0 sl-flex-col sl-bg-white dark:sl-bg-slate-900\">\n <!-- Horizontal scroll wrapper -->\n <div class=\"sl-flex sl-max-w-full sl-flex-1 sl-min-h-0 sl-flex-col sl-overflow-x-auto\">\n <div style=\"width: 165%\" class=\"sl-flex sl-flex-1 sl-min-h-0 sl-flex-col sm:sl-max-w-none md:sl-max-w-full\">\n <!-- Weekday header -->\n <div ref=\"containerNav\" class=\"sl-sticky sl-top-0 sl-z-30 sl-flex-none sl-bg-white dark:sl-bg-slate-900 sl-shadow sl-ring-1 sl-ring-black dark:sl-ring-slate-700 sl-ring-opacity-5 sm:sl-pr-8\">\n <!-- Mobile: compact day chips -->\n <div class=\"sl-grid sl-grid-cols-7 sl-text-sm sl-leading-6 sl-text-gray-500 dark:sl-text-slate-400 xl:sl-hidden\">\n <button \n v-for=\"day in days\" \n :key=\"day.date\" \n type=\"button\"\n class=\"sl-flex sl-flex-col sl-items-center sl-pb-3 sl-pt-2\" \n @click=\"setActiveDay(day)\"\n >\n {{ day.shortDay }}\n <span \n class=\"sl-mt-1 sl-flex sl-h-8 sl-w-8 sl-items-center sl-justify-center sl-font-semibold sl-text-gray-800 dark:sl-text-slate-200\"\n :class=\"[\n isActiveDay(day) ? 'sl-rounded-full sl-bg-stachelock-600 sl-font-semibold sl-text-white' : '',\n isDayToday(day) && !isActiveDay(day) ? 'sl-rounded-full sl-bg-stachelock-100 dark:sl-bg-stachelock-900 sl-text-stachelock-700 dark:sl-text-stachelock-300' : ''\n ]\"\n >\n {{ day.day }}\n </span>\n </button>\n </div>\n \n <!-- Desktop: full day names -->\n <div class=\"sl--mr-px sl-hidden sl-grid-cols-7 sl-divide-x sl-divide-gray-100 dark:sl-divide-slate-700 sl-border-r sl-border-gray-100 dark:sl-border-slate-700 sl-text-sm sl-leading-6 sl-text-gray-500 dark:sl-text-slate-400 xl:sl-grid\">\n <div class=\"sl-col-end-1 sl-w-14\" />\n <div \n v-for=\"day in days\" \n :key=\"day.date\"\n class=\"sl-flex sl-items-center sl-justify-center sl-py-3\"\n :class=\"isDayToday(day) ? 'sl-bg-stachelock-50 dark:sl-bg-stachelock-950' : ''\"\n >\n <span :class=\"isDayToday(day) ? 'sl-text-stachelock-700 dark:sl-text-stachelock-400 sl-font-semibold' : ''\">\n {{ day.longDay }}\n <span \n class=\"sl-items-center sl-justify-center sl-font-semibold\"\n :class=\"isDayToday(day) ? 'sl-text-stachelock-700 dark:sl-text-stachelock-400' : 'sl-text-gray-800 dark:sl-text-slate-200'\"\n >\n {{ day.day }}\n </span>\n </span>\n </div>\n </div>\n \n <!-- All-Day Events Section -->\n <div v-if=\"hasAllDayEvents\" class=\"sl-hidden sl-border-b sl-border-gray-200 dark:sl-border-slate-700 xl:sl-grid xl:sl-grid-cols-7\">\n <div class=\"sl-col-end-1 sl-w-14 sl-flex sl-items-center sl-justify-end sl-pr-2 sl-text-xs sl-text-gray-400 dark:sl-text-slate-500 sl-bg-white dark:sl-bg-slate-900\">\n All day\n </div>\n <div \n v-for=\"day in days\" \n :key=\"'allday-' + day.date\"\n class=\"sl-relative sl-min-h-[2.5rem] sl-border-r sl-border-gray-100 dark:sl-border-slate-700 sl-py-1 sl-px-0.5\"\n :class=\"isDayToday(day) ? 'sl-bg-stachelock-50/50 dark:sl-bg-stachelock-950/50' : 'sl-bg-white dark:sl-bg-slate-900'\"\n >\n <template v-for=\"lane in Array.from({ length: allDayLanes }, (_, i) => i)\" :key=\"'lane-' + lane\">\n <button \n v-for=\"event in getAllDayEventsForDayAndLane(day.date, lane)\" \n :key=\"'allday-' + event.id\"\n class=\"sl-w-full sl-mb-0.5\"\n @click=\"handleSelectEvent(event.id)\"\n >\n <div \n :class=\"getAllDayBarClass(day.date, event)\" \n :style=\"{ backgroundColor: event.ratePlanColor || '#dbeafe', color: event.ratePlanColor ? '#fff' : '#1e40af' }\"\n :title=\"event.name\"\n >\n <span v-if=\"shouldShowAllDayLabel(day.date, event)\" class=\"sl-truncate sl-text-xs sl-font-medium\">\n {{ event.name }}\n </span>\n </div>\n </button>\n </template>\n </div>\n </div>\n </div>\n\n <!-- Grid body -->\n <div ref=\"container\" class=\"sl-flex-1 sl-min-h-0 sl-overflow-y-auto\">\n <div class=\"sl-flex sl-flex-auto\">\n <!-- Time gutter -->\n <div class=\"sl-sticky sl-left-0 sl-z-10 sl-w-14 sl-flex-none sl-bg-white dark:sl-bg-slate-900 sl-ring-1 sl-ring-gray-100 dark:sl-ring-slate-700\" />\n \n <div class=\"sl-grid sl-flex-auto sl-grid-cols-1 sl-grid-rows-1 sl-relative\">\n <!-- Horizontal hour lines -->\n <div \n class=\"sl-col-start-1 sl-col-end-2 sl-row-start-1 sl-grid sl-divide-y sl-divide-gray-100 dark:sl-divide-slate-800\"\n style=\"grid-template-rows: repeat(48, minmax(3.5rem, 1fr))\"\n >\n <div ref=\"containerOffset\" class=\"sl-row-end-1 sl-h-7\" />\n <template v-for=\"hour in hours\" :key=\"hour\">\n <div class=\"sl-relative\">\n <div class=\"sl-sticky sl-left-0 sl-z-20 sl--ml-14 sl--mt-2.5 sl-w-14 sl-pr-2 sl-text-right sl-text-xs sl-leading-5 sl-text-gray-400 dark:sl-text-slate-500\">\n {{ hour }}\n </div>\n </div>\n <div />\n </template>\n </div>\n\n <!-- Vertical day separators -->\n <div class=\"sl-col-start-1 sl-col-end-2 sl-row-start-1 sl-hidden sl-grid-cols-7 sl-grid-rows-1 sl-divide-x sl-divide-gray-100 dark:sl-divide-slate-800 sm:sl-grid sm:sl-grid-cols-7\">\n <div v-for=\"day in days\" :key=\"day.date\" class=\"sl-col-start-1 sl-row-span-full\" />\n </div>\n \n <!-- Current Time Indicator -->\n <div \n v-if=\"showCurrentTimeIndicator\" \n ref=\"currentTimeIndicator\"\n class=\"sl-absolute sl-left-0 sl-right-0 sl-pointer-events-none sl-z-40\"\n :style=\"currentTimeIndicatorStyle\"\n >\n <div class=\"sl-relative sl-flex sl-items-center\">\n <!-- Time bubble -->\n <div class=\"sl-absolute sl--left-14 sl--top-2.5 sl-flex sl-items-center sl-justify-end sl-w-14 sl-pr-1\">\n <span class=\"sl-bg-red-500 sl-text-white sl-text-[10px] sl-font-medium sl-px-1.5 sl-py-0.5 sl-rounded-full sl-shadow-sm\">\n {{ currentTimeDisplay }}\n </span>\n </div>\n <!-- Red dot -->\n <div class=\"sl-w-2.5 sl-h-2.5 sl-bg-red-500 sl-rounded-full sl--ml-1 sl-shadow-sm\" />\n <!-- Red line -->\n <div class=\"sl-flex-1 sl-h-0.5 sl-bg-red-500 sl-shadow-sm\" />\n </div>\n </div>\n\n <!-- Events layer -->\n <ol \n class=\"sl-col-end-2 sl-row-start-1 sl-grid sl-grid-cols-1 sm:sl-grid-cols-7 sm:sl-pr-8 sl-overflow-hidden\"\n style=\"grid-template-rows: 1.75rem repeat(288, minmax(0, 1fr)) auto\"\n >\n <template v-for=\"(day, dayIndex) in filteredDays\" :key=\"day.date\">\n <template v-if=\"day.events && day.events.length && day.longDay\">\n <!-- Visible events -->\n <li \n v-for=\"placed in visiblePlaced(day.date, day.events)\" \n :key=\"placed.event.id + '-' + (placed.startIso || day.date)\"\n class=\"sl-relative sl-mt-px sl-flex\"\n :class=\"getColumnClass(dayIndex)\"\n :style=\"`grid-row: ${calculateGridRow(placed.startIso)} / span ${calculateGridSpan(placed.startIso, placed.endIso)}`\"\n >\n <button \n @click=\"handleSelectEvent(placed.event.id)\"\n class=\"sl-group sl-absolute sl-inset-y-1 sl-flex sl-flex-col sl-overflow-hidden sl-rounded-lg sl-bg-blue-50 dark:sl-bg-blue-950 sl-p-2 sl-text-xs sl-leading-5 hover:sl-bg-blue-100 dark:hover:sl-bg-blue-900\"\n :style=\"`left: ${placed.leftPercent}%; right: auto; width: ${placed.widthPercent}%;`\"\n :title=\"placed.event.ratePlanCode ? `Rate plan: ${placed.event.ratePlanCode}${placed.event.ratePlanName ? ' • ' + placed.event.ratePlanName : ''}` : ''\"\n >\n <div class=\"sl-relative sl-pt-2\">\n <p class=\"sl-order-1 sl-font-semibold sl-text-blue-700 dark:sl-text-blue-300 sl-pr-4\">{{ placed.event.name }}</p>\n <template v-if=\"!isCompact(placed.startIso, placed.endIso)\">\n <template v-if=\"placed.isStart && placed.isEnd\">\n <p class=\"sl-text-blue-500 dark:sl-text-blue-400 group-hover:sl-text-blue-700 dark:group-hover:sl-text-blue-300\">\n <time :datetime=\"placed.startIso\">{{ formatTime(placed.startIso) }}</time>\n –\n <time :datetime=\"placed.endIso\">{{ formatTime(placed.endIso as string) }}</time>\n <span>{{ placed.event.startTime?.shortTimeZone || placed.event.endTime?.shortTimeZone }}</span>\n </p>\n </template>\n <template v-else-if=\"placed.isStart\">\n <p class=\"sl-text-blue-500 dark:sl-text-blue-400 group-hover:sl-text-blue-700 dark:group-hover:sl-text-blue-300\">\n Start <time :datetime=\"placed.startIso\">{{ formatTime(placed.startIso) }}</time>\n <span>{{ placed.event.startTime?.shortTimeZone }}</span>\n </p>\n </template>\n <template v-else-if=\"placed.isEnd\">\n <p class=\"sl-text-blue-500 dark:sl-text-blue-400 group-hover:sl-text-blue-700 dark:group-hover:sl-text-blue-300\">\n End <time :datetime=\"placed.endIso\">{{ formatTime(placed.endIso as string) }}</time>\n <span>{{ placed.event.endTime?.shortTimeZone }}</span>\n </p>\n </template>\n </template>\n <span \n v-if=\"placed.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 dark:sl-ring-slate-800\" \n :style=\"{ backgroundColor: placed.event.ratePlanColor }\"\n />\n </div>\n </button>\n </li>\n\n <!-- Overflow indicator -->\n <li \n v-if=\"overflowCount(day.date, day.events) > 0\" \n :class=\"getColumnClass(dayIndex)\"\n class=\"sl-relative\"\n style=\"grid-row: 2 / span 1\"\n >\n <button \n class=\"sl-absolute sl-right-1 sl-top-1 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 sl-bg-white/70 dark:sl-bg-slate-800/70 sl-rounded sl-px-1\"\n :title=\"hiddenTooltip(day.date, day.events)\"\n @click=\"goToDay(day)\"\n >\n +{{ overflowCount(day.date, day.events) }} more\n </button>\n </li>\n </template>\n </template>\n </ol>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, ref, onMounted, onUnmounted, watch, nextTick } from 'vue';\nimport type { CalendarDay, ListEvent } from '@/utils/calendar';\nimport { calculateGridRow, calculateGridSpan, formatTime, separateAllDayEvents } from '@/utils/calendar';\nimport { useEventSegments, calculateEventLanes } from '@/composables/useEventSegments';\n\nconst props = defineProps<{ days: Array<CalendarDay> }>();\n\nconst container = ref<HTMLElement | null>(null);\nconst containerNav = ref<HTMLElement | null>(null);\nconst containerOffset = ref<HTMLElement | null>(null);\nconst currentTimeIndicator = ref<HTMLElement | null>(null);\nconst activeDay = ref<CalendarDay | null>(null);\n\n// Current time tracking\nconst currentTime = ref(new Date());\nlet timeUpdateInterval: ReturnType<typeof setInterval> | null = null;\n\n// Hours array for time labels\nconst hours = [\n '12AM','1AM','2AM','3AM','4AM','5AM','6AM','7AM','8AM','9AM','10AM','11AM',\n '12PM','1PM','2PM','3PM','4PM','5PM','6PM','7PM','8PM','9PM','10PM','11PM'\n];\n\nconst emit = defineEmits(['selectDay', 'select:event']);\n\n// Event segments composable for all-day event bars\nconst { getSegment } = useEventSegments();\n\n// Collect all events across days\nconst allEvents = computed(() => {\n const events: ListEvent[] = [];\n const seen = new Set<string | number>();\n props.days.forEach(day => {\n day.events?.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// Separate all-day from timed events\nconst separatedEvents = computed(() => separateAllDayEvents(allEvents.value));\nconst allDayEvents = computed(() => separatedEvents.value.allDay);\n\n// Check if there are any all-day events\nconst hasAllDayEvents = computed(() => allDayEvents.value.length > 0);\n\n// Day keys for all-day event lane calculation\nconst dayKeys = computed(() => props.days.map(d => d.date));\n\n// Calculate lanes for all-day events\nconst allDayEventLanes = computed(() => calculateEventLanes(dayKeys.value, allDayEvents.value));\n\n// Maximum lanes for all-day events\nconst allDayLanes = computed(() => {\n if (allDayEventLanes.value.size === 0) return 0;\n return Math.max(...Array.from(allDayEventLanes.value.values())) + 1;\n});\n\n// Get all-day events for a specific day and lane\nconst getAllDayEventsForDayAndLane = (dayKey: string, lane: number): ListEvent[] => {\n const dayAllDayEvents = allDayEvents.value.filter(event => {\n const segment = getSegment(dayKey, event);\n return segment !== 'none';\n });\n \n return dayAllDayEvents.filter(event => {\n const eventId = event.id || String(event.name);\n return allDayEventLanes.value.get(eventId) === lane;\n });\n};\n\n// Get CSS classes for all-day event bar\nconst getAllDayBarClass = (dayKey: string, event: ListEvent): string => {\n const segment = getSegment(dayKey, event);\n if (segment === 'none') return '';\n \n const base = 'sl-relative sl-h-5 sl-flex sl-items-center sl-px-1';\n \n switch (segment) {\n case 'single':\n return `${base} sl-rounded sl-mx-0.5`;\n case 'start':\n return `${base} sl-rounded-l sl-ml-0.5 sl-mr-0`;\n case 'middle':\n return `${base} sl-rounded-none sl-mx-0`;\n case 'end':\n return `${base} sl-rounded-r sl-ml-0 sl-mr-0.5`;\n default:\n return '';\n }\n};\n\n// Should show label for all-day event\nconst shouldShowAllDayLabel = (dayKey: string, event: ListEvent): boolean => {\n const segment = getSegment(dayKey, event);\n return segment === 'start' || segment === 'single';\n};\n\n// Check if a day is today\nconst isDayToday = (day: CalendarDay): boolean => {\n const today = new Date();\n const todayStr = `${today.getFullYear()}-${String(today.getMonth() + 1).padStart(2, '0')}-${String(today.getDate()).padStart(2, '0')}`;\n return day.date === todayStr;\n};\n\n// Check if a day is the active day\nconst isActiveDay = (day: CalendarDay): boolean => {\n return activeDay.value === day;\n};\n\n// Check if current week includes today\nconst currentWeekIncludesToday = computed(() => {\n return props.days.some(day => isDayToday(day));\n});\n\n// Show current time indicator only if viewing current week\nconst showCurrentTimeIndicator = computed(() => {\n return currentWeekIncludesToday.value;\n});\n\n// Current time display (e.g., \"2:45\")\nconst currentTimeDisplay = computed(() => {\n const hours = currentTime.value.getHours();\n const minutes = currentTime.value.getMinutes();\n const displayHours = hours % 12 || 12;\n return `${displayHours}:${String(minutes).padStart(2, '0')}`;\n});\n\n// Calculate position of current time indicator\nconst currentTimeIndicatorStyle = computed(() => {\n const now = currentTime.value;\n const totalMinutes = now.getHours() * 60 + now.getMinutes();\n \n const offsetPx = 28; // h-7 = 1.75rem = 28px\n const rowHeightRem = 3.5;\n const totalRows = 48;\n \n const percentOfDay = totalMinutes / 1440;\n \n return {\n top: `calc(${offsetPx}px + ${percentOfDay} * ${totalRows} * ${rowHeightRem}rem)`\n };\n});\n\n// Mobile detection\nconst isMobile = ref(typeof window !== 'undefined' ? window.innerWidth < 768 : false);\nconst updateIsMobile = () => { isMobile.value = window.innerWidth < 768; };\n\n// Filtered days based on mobile/desktop\nconst filteredDays = computed(() => {\n if (isMobile.value && activeDay.value) {\n return [activeDay.value];\n }\n return props.days || [];\n});\n\n// Set active day\nconst setActiveDay = (day: CalendarDay) => {\n activeDay.value = day;\n};\n\n// Event placement types\ntype Placed = { \n event: ListEvent; \n leftPercent: number; \n widthPercent: number; \n startIso: string; \n endIso?: string; \n isStart: boolean; \n isEnd: boolean;\n};\n\n// Responsive cap for side-by-side columns\nconst getMaxVisibleColumns = (): number => {\n if (typeof window === 'undefined') return 3;\n const w = window.innerWidth;\n if (w >= 1280) return 3;\n if (w >= 1024) return 2;\n return 1;\n};\n\nconst MAX_VISIBLE_COLUMNS = ref(getMaxVisibleColumns());\nconst handleResize = () => MAX_VISIBLE_COLUMNS.value = getMaxVisibleColumns();\n\n// Convert ISO to minutes since midnight\nconst toMinutes = (iso?: string): number => {\n if (!iso) return 0;\n const d = new Date(iso);\n return d.getHours() * 60 + d.getMinutes();\n};\n\n// Clamp an event to a specific day\nconst clampEventToDay = (dayKey: string, event: ListEvent): { startIso: string; endIso?: string; isStart: boolean; isEnd: boolean } => {\n const start = event.startTime?.dateTime || event.datetime;\n const end = event.endTime?.dateTime || event.datetime;\n const startDate = new Date(start);\n const endDate = end ? new Date(end) : undefined;\n\n const [y, m, d] = dayKey.split('-').map((n: string) => Number(n));\n const dayStart = new Date(y, (m - 1), d, 0, 0, 0, 0);\n const dayEnd = new Date(y, (m - 1), d, 23, 59, 59, 999);\n\n const clampedStart = new Date(Math.max(dayStart.getTime(), startDate.getTime()));\n const clampedEnd = endDate\n ? new Date(Math.min(dayEnd.getTime(), endDate.getTime()))\n : new Date(Math.min(dayEnd.getTime(), clampedStart.getTime() + 30 * 60 * 1000));\n\n const isStart = clampedStart.getTime() === startDate.getTime();\n const isEnd = endDate ? clampedEnd.getTime() === endDate.getTime() : false;\n\n return { startIso: clampedStart.toISOString(), endIso: clampedEnd?.toISOString(), isStart, isEnd };\n};\n\ntype Internal = { event: ListEvent; start: number; end: number; col: number; cluster: number; isStart: boolean; isEnd: boolean; _startIso: string; _endIso?: string };\n\n// Build event placement for a day\nconst buildPlacement = (dayKey: string, events?: ListEvent[]): { placed: Placed[]; overflow: number; hidden: Internal[] } => {\n const list: Internal[] = (events || []).map(e => {\n const { startIso, endIso, isStart, isEnd } = clampEventToDay(dayKey, e);\n return {\n event: e,\n start: toMinutes(startIso),\n end: toMinutes(endIso) || toMinutes(startIso) + 30,\n col: 0,\n cluster: 0,\n _startIso: startIso,\n _endIso: endIso,\n isStart,\n isEnd,\n };\n }).sort((a, b) => a.start - b.start);\n\n const placed: Placed[] = [];\n let active: Internal[] = [];\n let clusterIndex = -1;\n const clusterMaxCol: number[] = [];\n\n list.forEach(item => {\n active = active.filter(a => a.end > item.start);\n if (active.length === 0) {\n clusterIndex += 1;\n clusterMaxCol[clusterIndex] = 0;\n }\n const usedCols = new Set(active.map(a => a.col));\n let col = 0;\n while (usedCols.has(col)) col += 1;\n item.col = col;\n item.cluster = clusterIndex;\n clusterMaxCol[clusterIndex] = Math.max(clusterMaxCol[clusterIndex], col + 1);\n active.push(item);\n });\n\n let overflow = 0;\n const hidden: Internal[] = [];\n \n list.forEach(item => {\n const total = clusterMaxCol[item.cluster] || 1;\n const visibleCols = Math.min(total, MAX_VISIBLE_COLUMNS.value);\n const GUTTER = 1.5;\n const EDGE_PADDING = 1.5;\n const width = (100 - 2 * EDGE_PADDING - GUTTER * Math.max(0, visibleCols - 1)) / visibleCols;\n \n if (item.col >= MAX_VISIBLE_COLUMNS.value) {\n overflow += 1;\n hidden.push(item);\n return;\n }\n \n const left = EDGE_PADDING + item.col * (width + GUTTER);\n placed.push({\n event: item.event,\n leftPercent: left,\n widthPercent: width,\n startIso: item._startIso,\n endIso: item._endIso,\n isStart: item.isStart,\n isEnd: item.isEnd,\n });\n });\n\n return { placed, overflow, hidden };\n};\n\nconst visiblePlaced = (dayKey: string, events?: ListEvent[]): Placed[] => buildPlacement(dayKey, events).placed;\nconst overflowCount = (dayKey: string, events?: ListEvent[]): number => buildPlacement(dayKey, events).overflow;\nconst hiddenTooltip = (dayKey: string, events?: ListEvent[]): string => \n buildPlacement(dayKey, events).hidden.map(h => String(h.event?.name || '')).filter(Boolean).join(', ');\n\n// Check if event is compact (short duration)\nconst isCompact = (startIso: string, endIso?: string): boolean => {\n const span = calculateGridSpan(startIso, endIso);\n return span <= 8; // <= 40 minutes\n};\n\n// Column class helper\nconst columnClasses = ['sl-col-start-1', 'sl-col-start-2', 'sl-col-start-3', 'sl-col-start-4', 'sl-col-start-5', 'sl-col-start-6', 'sl-col-start-7'];\nconst getColumnClass = (dayIndex: number): string => {\n return columnClasses[dayIndex] || 'sl-col-start-1';\n};\n\n// Navigate to day view\nconst goToDay = (day: CalendarDay): void => {\n setActiveDay(day);\n emit('selectDay', day);\n};\n\nconst handleSelectEvent = (eventId: string | number) => {\n emit('select:event', eventId);\n};\n\n// Scroll to current time\nconst scrollToCurrentTime = () => {\n const containerElement = container.value;\n const containerNavElement = containerNav.value;\n \n if (!containerElement || !containerNavElement) return;\n \n const now = new Date();\n const currentMinute = now.getHours() * 60 + now.getMinutes();\n \n const scrollableHeight = containerElement.scrollHeight - containerNavElement.offsetHeight;\n const targetPosition = (scrollableHeight * currentMinute) / 1440;\n const offsetForVisibility = containerElement.clientHeight / 3;\n \n containerElement.scrollTo({\n top: Math.max(0, targetPosition - offsetForVisibility),\n behavior: 'smooth'\n });\n};\n\n// Start time updates\nconst startTimeUpdates = () => {\n timeUpdateInterval = setInterval(() => {\n currentTime.value = new Date();\n }, 60000);\n \n const now = new Date();\n const msUntilNextMinute = (60 - now.getSeconds()) * 1000 - now.getMilliseconds();\n setTimeout(() => {\n currentTime.value = new Date();\n if (timeUpdateInterval) {\n clearInterval(timeUpdateInterval);\n }\n timeUpdateInterval = setInterval(() => {\n currentTime.value = new Date();\n }, 60000);\n }, msUntilNextMinute);\n};\n\nonMounted(async () => {\n startTimeUpdates();\n window.addEventListener('resize', updateIsMobile);\n window.addEventListener('resize', handleResize);\n \n await nextTick();\n setTimeout(() => {\n scrollToCurrentTime();\n }, 100);\n \n watch(isMobile, (newVal) => {\n if (!newVal) {\n const firstWithEvents = filteredDays.value.find((d: CalendarDay) => (d.events?.length || 0) > 0);\n if (firstWithEvents) setActiveDay(firstWithEvents);\n }\n });\n});\n\nonUnmounted(() => {\n window.removeEventListener('resize', updateIsMobile);\n window.removeEventListener('resize', handleResize);\n if (timeUpdateInterval) {\n clearInterval(timeUpdateInterval);\n timeUpdateInterval = null;\n }\n});\n</script>\n\n<style scoped>\n/* Column start classes for PurgeCSS */\n.sl-col-start-1 { grid-column-start: 1; }\n.sl-col-start-2 { grid-column-start: 2; }\n.sl-col-start-3 { grid-column-start: 3; }\n.sl-col-start-4 { grid-column-start: 4; }\n.sl-col-start-5 { grid-column-start: 5; }\n.sl-col-start-6 { grid-column-start: 6; }\n.sl-col-start-7 { grid-column-start: 7; }\n</style>\n"],"names":["props","__props","container","ref","containerNav","containerOffset","currentTimeIndicator","activeDay","currentTime","timeUpdateInterval","hours","emit","__emit","getSegment","useEventSegments","allEvents","computed","events","seen","day","event","eventId","separatedEvents","separateAllDayEvents","allDayEvents","hasAllDayEvents","dayKeys","d","allDayEventLanes","calculateEventLanes","allDayLanes","getAllDayEventsForDayAndLane","dayKey","lane","getAllDayBarClass","segment","base","shouldShowAllDayLabel","isDayToday","today","todayStr","isActiveDay","currentWeekIncludesToday","showCurrentTimeIndicator","currentTimeDisplay","minutes","currentTimeIndicatorStyle","now","totalMinutes","offsetPx","rowHeightRem","totalRows","percentOfDay","isMobile","updateIsMobile","filteredDays","setActiveDay","getMaxVisibleColumns","w","MAX_VISIBLE_COLUMNS","handleResize","toMinutes","iso","clampEventToDay","start","end","startDate","endDate","y","m","n","dayStart","dayEnd","clampedStart","clampedEnd","isStart","isEnd","buildPlacement","list","e","startIso","endIso","a","b","placed","active","clusterIndex","clusterMaxCol","item","usedCols","col","overflow","hidden","total","visibleCols","GUTTER","EDGE_PADDING","width","left","visiblePlaced","overflowCount","hiddenTooltip","h","isCompact","calculateGridSpan","columnClasses","getColumnClass","dayIndex","goToDay","handleSelectEvent","scrollToCurrentTime","containerElement","containerNavElement","currentMinute","targetPosition","offsetForVisibility","startTimeUpdates","msUntilNextMinute","onMounted","nextTick","watch","newVal","firstWithEvents","onUnmounted","_openBlock","_createElementBlock","_hoisted_1","_createElementVNode","_hoisted_2","_hoisted_3","_hoisted_4","_Fragment","_renderList","days","$event","_toDisplayString","_hoisted_6","_normalizeClass","_hoisted_7","_cache","_","i","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","hour","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_normalizeStyle","_unref","calculateGridRow","_hoisted_22","_hoisted_23","_hoisted_24","formatTime","_hoisted_25","_hoisted_26","_hoisted_27","_hoisted_28","_hoisted_29","_hoisted_30","_hoisted_31"],"mappings":"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"}
1
+ {"version":3,"file":"WeekCalendar.js","sources":["../../src/components/calendars/WeekCalendar.vue"],"sourcesContent":["<!--\n @component WeekCalendar\n @description Week view calendar with time-based event grid.\n \n Features:\n - 7-day grid with hourly time slots\n - Current time indicator (red line)\n - Overlapping event handling with column layout\n - Auto-scroll to current time on mount\n - Responsive mobile view (single day)\n - Multi-day event support\n - Event click handling\n \n @example\n <WeekCalendar\n :days=\"weekDays\"\n @selectDay=\"handleDaySelect\"\n @select:event=\"handleEventSelect\"\n />\n-->\n<template>\n <div class=\"sl-isolate sl-flex sl-h-full sl-min-h-0 sl-flex-col sl-bg-white dark:sl-bg-slate-900\">\n <!-- Horizontal scroll wrapper -->\n <div class=\"sl-flex sl-max-w-full sl-flex-1 sl-min-h-0 sl-flex-col sl-overflow-x-auto\">\n <div style=\"width: 165%\" class=\"sl-flex sl-flex-1 sl-min-h-0 sl-flex-col sm:sl-max-w-none md:sl-max-w-full\">\n <!-- Weekday header -->\n <div ref=\"containerNav\" class=\"sl-sticky sl-top-0 sl-z-30 sl-flex-none sl-bg-white dark:sl-bg-slate-900 sl-shadow sl-ring-1 sl-ring-black dark:sl-ring-slate-700 sl-ring-opacity-5 sm:sl-pr-8\">\n <!-- Mobile: compact day chips -->\n <div class=\"sl-grid sl-grid-cols-7 sl-text-sm sl-leading-6 sl-text-gray-500 dark:sl-text-slate-400 xl:sl-hidden\">\n <button \n v-for=\"day in days\" \n :key=\"day.date\" \n type=\"button\"\n class=\"sl-flex sl-flex-col sl-items-center sl-pb-3 sl-pt-2\" \n @click=\"setActiveDay(day)\"\n >\n {{ day.shortDay }}\n <span \n class=\"sl-mt-1 sl-flex sl-h-8 sl-w-8 sl-items-center sl-justify-center sl-font-semibold sl-text-gray-800 dark:sl-text-slate-200\"\n :class=\"[\n isActiveDay(day) ? 'sl-rounded-full sl-bg-stachelock-600 sl-font-semibold sl-text-white' : '',\n isDayToday(day) && !isActiveDay(day) ? 'sl-rounded-full sl-bg-stachelock-100 dark:sl-bg-stachelock-900 sl-text-stachelock-700 dark:sl-text-stachelock-300' : ''\n ]\"\n >\n {{ day.day }}\n </span>\n </button>\n </div>\n \n <!-- Desktop: full day names -->\n <div class=\"sl--mr-px sl-hidden sl-grid-cols-7 sl-divide-x sl-divide-gray-100 dark:sl-divide-slate-700 sl-border-r sl-border-gray-100 dark:sl-border-slate-700 sl-text-sm sl-leading-6 sl-text-gray-500 dark:sl-text-slate-400 xl:sl-grid\">\n <div class=\"sl-col-end-1 sl-w-14\" />\n <div \n v-for=\"day in days\" \n :key=\"day.date\"\n class=\"sl-flex sl-items-center sl-justify-center sl-py-3\"\n :class=\"isDayToday(day) ? 'sl-bg-stachelock-50 dark:sl-bg-stachelock-950' : ''\"\n >\n <span :class=\"isDayToday(day) ? 'sl-text-stachelock-700 dark:sl-text-stachelock-400 sl-font-semibold' : ''\">\n {{ day.longDay }}\n <span \n class=\"sl-items-center sl-justify-center sl-font-semibold\"\n :class=\"isDayToday(day) ? 'sl-text-stachelock-700 dark:sl-text-stachelock-400' : 'sl-text-gray-800 dark:sl-text-slate-200'\"\n >\n {{ day.day }}\n </span>\n </span>\n </div>\n </div>\n \n <!-- All-Day Events Section -->\n <div v-if=\"hasAllDayEvents\" class=\"sl-hidden sl-border-b sl-border-gray-200 dark:sl-border-slate-700 xl:sl-grid xl:sl-grid-cols-7\">\n <div class=\"sl-col-end-1 sl-w-14 sl-flex sl-items-center sl-justify-end sl-pr-2 sl-text-xs sl-text-gray-400 dark:sl-text-slate-500 sl-bg-white dark:sl-bg-slate-900\">\n All day\n </div>\n <div \n v-for=\"day in days\" \n :key=\"'allday-' + day.date\"\n class=\"sl-relative sl-min-h-[2.5rem] sl-border-r sl-border-gray-100 dark:sl-border-slate-700 sl-py-1 sl-px-0.5\"\n :class=\"isDayToday(day) ? 'sl-bg-stachelock-50/50 dark:sl-bg-stachelock-950/50' : 'sl-bg-white dark:sl-bg-slate-900'\"\n >\n <template v-for=\"lane in Array.from({ length: allDayLanes }, (_, i) => i)\" :key=\"'lane-' + lane\">\n <button \n v-for=\"event in getAllDayEventsForDayAndLane(day.date, lane)\" \n :key=\"'allday-' + event.id\"\n class=\"sl-w-full sl-mb-0.5\"\n @click=\"handleSelectEvent(event.id)\"\n >\n <div \n :class=\"getAllDayBarClass(day.date, event)\" \n :style=\"{ backgroundColor: event.ratePlanColor || '#dbeafe', color: event.ratePlanColor ? '#fff' : '#1e40af' }\"\n :title=\"event.name\"\n >\n <span v-if=\"shouldShowAllDayLabel(day.date, event)\" class=\"sl-truncate sl-text-xs sl-font-medium\">\n {{ event.name }}\n </span>\n </div>\n </button>\n </template>\n </div>\n </div>\n </div>\n\n <!-- Grid body -->\n <div ref=\"container\" class=\"sl-flex-1 sl-min-h-0 sl-overflow-y-auto\">\n <div class=\"sl-flex sl-flex-auto\">\n <!-- Time gutter -->\n <div class=\"sl-sticky sl-left-0 sl-z-10 sl-w-14 sl-flex-none sl-bg-white dark:sl-bg-slate-900 sl-ring-1 sl-ring-gray-100 dark:sl-ring-slate-700\" />\n \n <div class=\"sl-grid sl-flex-auto sl-grid-cols-1 sl-grid-rows-1 sl-relative\">\n <!-- Horizontal hour lines -->\n <div \n class=\"sl-col-start-1 sl-col-end-2 sl-row-start-1 sl-grid sl-divide-y sl-divide-gray-100 dark:sl-divide-slate-800\"\n style=\"grid-template-rows: repeat(48, minmax(3.5rem, 1fr))\"\n >\n <div ref=\"containerOffset\" class=\"sl-row-end-1 sl-h-7\" />\n <template v-for=\"hour in hours\" :key=\"hour\">\n <div class=\"sl-relative\">\n <div class=\"sl-sticky sl-left-0 sl-z-20 sl--ml-14 sl--mt-2.5 sl-w-14 sl-pr-2 sl-text-right sl-text-xs sl-leading-5 sl-text-gray-400 dark:sl-text-slate-500\">\n {{ hour }}\n </div>\n </div>\n <div />\n </template>\n </div>\n\n <!-- Vertical day separators -->\n <div class=\"sl-col-start-1 sl-col-end-2 sl-row-start-1 sl-hidden sl-grid-cols-7 sl-grid-rows-1 sl-divide-x sl-divide-gray-100 dark:sl-divide-slate-800 sm:sl-grid sm:sl-grid-cols-7\">\n <div v-for=\"day in days\" :key=\"day.date\" class=\"sl-col-start-1 sl-row-span-full\" />\n </div>\n \n <!-- Current Time Indicator -->\n <div \n v-if=\"showCurrentTimeIndicator\" \n ref=\"currentTimeIndicator\"\n class=\"sl-absolute sl-left-0 sl-right-0 sl-pointer-events-none sl-z-40\"\n :style=\"currentTimeIndicatorStyle\"\n >\n <div class=\"sl-relative sl-flex sl-items-center\">\n <!-- Time bubble -->\n <div class=\"sl-absolute sl--left-14 sl--top-2.5 sl-flex sl-items-center sl-justify-end sl-w-14 sl-pr-1\">\n <span class=\"sl-bg-red-500 sl-text-white sl-text-[10px] sl-font-medium sl-px-1.5 sl-py-0.5 sl-rounded-full sl-shadow-sm\">\n {{ currentTimeDisplay }}\n </span>\n </div>\n <!-- Red dot -->\n <div class=\"sl-w-2.5 sl-h-2.5 sl-bg-red-500 sl-rounded-full sl--ml-1 sl-shadow-sm\" />\n <!-- Red line -->\n <div class=\"sl-flex-1 sl-h-0.5 sl-bg-red-500 sl-shadow-sm\" />\n </div>\n </div>\n\n <!-- Events layer -->\n <ol \n class=\"sl-col-end-2 sl-row-start-1 sl-grid sl-grid-cols-1 sm:sl-grid-cols-7 sm:sl-pr-8 sl-overflow-hidden\"\n style=\"grid-template-rows: 1.75rem repeat(288, minmax(0, 1fr)) auto\"\n >\n <template v-for=\"(day, dayIndex) in filteredDays\" :key=\"day.date\">\n <template v-if=\"day.events && day.events.length && day.longDay\">\n <!-- Visible events -->\n <li \n v-for=\"placed in visiblePlaced(day.date, day.events)\" \n :key=\"placed.event.id + '-' + (placed.startIso || day.date)\"\n class=\"sl-relative sl-mt-px sl-flex\"\n :class=\"getColumnClass(dayIndex)\"\n :style=\"`grid-row: ${calculateGridRow(placed.startIso)} / span ${calculateGridSpan(placed.startIso, placed.endIso)}`\"\n >\n <button \n @click=\"handleSelectEvent(placed.event.id)\"\n class=\"sl-group sl-absolute sl-inset-y-1 sl-flex sl-flex-col sl-overflow-hidden sl-rounded-lg sl-bg-blue-50 dark:sl-bg-blue-950 sl-p-2 sl-text-xs sl-leading-5 hover:sl-bg-blue-100 dark:hover:sl-bg-blue-900\"\n :style=\"`left: ${placed.leftPercent}%; right: auto; width: ${placed.widthPercent}%;`\"\n :title=\"placed.event.ratePlanCode ? `Rate plan: ${placed.event.ratePlanCode}${placed.event.ratePlanName ? ' • ' + placed.event.ratePlanName : ''}` : ''\"\n >\n <div class=\"sl-relative sl-pt-2\">\n <p class=\"sl-order-1 sl-font-semibold sl-text-blue-700 dark:sl-text-blue-300 sl-pr-4\">{{ placed.event.name }}</p>\n <template v-if=\"!isCompact(placed.startIso, placed.endIso)\">\n <template v-if=\"placed.isStart && placed.isEnd\">\n <p class=\"sl-text-blue-500 dark:sl-text-blue-400 group-hover:sl-text-blue-700 dark:group-hover:sl-text-blue-300\">\n <time :datetime=\"placed.startIso\">{{ formatTime(placed.startIso) }}</time>\n –\n <time :datetime=\"placed.endIso\">{{ formatTime(placed.endIso as string) }}</time>\n <span>{{ placed.event.startTime?.shortTimeZone || placed.event.endTime?.shortTimeZone }}</span>\n </p>\n </template>\n <template v-else-if=\"placed.isStart\">\n <p class=\"sl-text-blue-500 dark:sl-text-blue-400 group-hover:sl-text-blue-700 dark:group-hover:sl-text-blue-300\">\n Start <time :datetime=\"placed.startIso\">{{ formatTime(placed.startIso) }}</time>\n <span>{{ placed.event.startTime?.shortTimeZone }}</span>\n </p>\n </template>\n <template v-else-if=\"placed.isEnd\">\n <p class=\"sl-text-blue-500 dark:sl-text-blue-400 group-hover:sl-text-blue-700 dark:group-hover:sl-text-blue-300\">\n End <time :datetime=\"placed.endIso\">{{ formatTime(placed.endIso as string) }}</time>\n <span>{{ placed.event.endTime?.shortTimeZone }}</span>\n </p>\n </template>\n </template>\n <span \n v-if=\"placed.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 dark:sl-ring-slate-800\" \n :style=\"{ backgroundColor: placed.event.ratePlanColor }\"\n />\n </div>\n </button>\n </li>\n\n <!-- Overflow indicator -->\n <li \n v-if=\"overflowCount(day.date, day.events) > 0\" \n :class=\"getColumnClass(dayIndex)\"\n class=\"sl-relative\"\n style=\"grid-row: 2 / span 1\"\n >\n <button \n class=\"sl-absolute sl-right-1 sl-top-1 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 sl-bg-white/70 dark:sl-bg-slate-800/70 sl-rounded sl-px-1\"\n :title=\"hiddenTooltip(day.date, day.events)\"\n @click=\"goToDay(day)\"\n >\n +{{ overflowCount(day.date, day.events) }} more\n </button>\n </li>\n </template>\n </template>\n </ol>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, ref, onMounted, onUnmounted, watch, nextTick } from 'vue';\nimport type { CalendarDay, ListEvent } from '@/utils/calendar';\nimport { calculateGridRow, calculateGridSpan, formatTime, separateAllDayEvents } from '@/utils/calendar';\nimport { useEventSegments, calculateEventLanes } from '@/composables/useEventSegments';\n\nconst props = defineProps<{ days: Array<CalendarDay> }>();\n\nconst container = ref<HTMLElement | null>(null);\nconst containerNav = ref<HTMLElement | null>(null);\nconst containerOffset = ref<HTMLElement | null>(null);\nconst currentTimeIndicator = ref<HTMLElement | null>(null);\nconst activeDay = ref<CalendarDay | null>(null);\n\n// Current time tracking\nconst currentTime = ref(new Date());\nlet timeUpdateInterval: ReturnType<typeof setInterval> | null = null;\n\n// Hours array for time labels\nconst hours = [\n '12AM','1AM','2AM','3AM','4AM','5AM','6AM','7AM','8AM','9AM','10AM','11AM',\n '12PM','1PM','2PM','3PM','4PM','5PM','6PM','7PM','8PM','9PM','10PM','11PM'\n];\n\nconst emit = defineEmits(['selectDay', 'select:event']);\n\n// Event segments composable for all-day event bars\nconst { getSegment } = useEventSegments();\n\n// Collect all events across days\nconst allEvents = computed(() => {\n const events: ListEvent[] = [];\n const seen = new Set<string | number>();\n props.days.forEach(day => {\n day.events?.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// Separate all-day from timed events\nconst separatedEvents = computed(() => separateAllDayEvents(allEvents.value));\nconst allDayEvents = computed(() => separatedEvents.value.allDay);\n\n// Check if there are any all-day events\nconst hasAllDayEvents = computed(() => allDayEvents.value.length > 0);\n\n// Day keys for all-day event lane calculation\nconst dayKeys = computed(() => props.days.map(d => d.date));\n\n// Calculate lanes for all-day events\nconst allDayEventLanes = computed(() => calculateEventLanes(dayKeys.value, allDayEvents.value));\n\n// Maximum lanes for all-day events\nconst allDayLanes = computed(() => {\n if (allDayEventLanes.value.size === 0) return 0;\n return Math.max(...Array.from(allDayEventLanes.value.values())) + 1;\n});\n\n// Get all-day events for a specific day and lane\nconst getAllDayEventsForDayAndLane = (dayKey: string, lane: number): ListEvent[] => {\n const dayAllDayEvents = allDayEvents.value.filter(event => {\n const segment = getSegment(dayKey, event);\n return segment !== 'none';\n });\n \n return dayAllDayEvents.filter(event => {\n const eventId = event.id || String(event.name);\n return allDayEventLanes.value.get(eventId) === lane;\n });\n};\n\n// Get CSS classes for all-day event bar\nconst getAllDayBarClass = (dayKey: string, event: ListEvent): string => {\n const segment = getSegment(dayKey, event);\n if (segment === 'none') return '';\n \n const base = 'sl-relative sl-h-5 sl-flex sl-items-center sl-px-1';\n \n switch (segment) {\n case 'single':\n return `${base} sl-rounded sl-mx-0.5`;\n case 'start':\n return `${base} sl-rounded-l sl-ml-0.5 sl-mr-0`;\n case 'middle':\n return `${base} sl-rounded-none sl-mx-0`;\n case 'end':\n return `${base} sl-rounded-r sl-ml-0 sl-mr-0.5`;\n default:\n return '';\n }\n};\n\n// Should show label for all-day event\nconst shouldShowAllDayLabel = (dayKey: string, event: ListEvent): boolean => {\n const segment = getSegment(dayKey, event);\n return segment === 'start' || segment === 'single';\n};\n\n// Check if a day is today\nconst isDayToday = (day: CalendarDay): boolean => {\n const today = new Date();\n const todayStr = `${today.getFullYear()}-${String(today.getMonth() + 1).padStart(2, '0')}-${String(today.getDate()).padStart(2, '0')}`;\n return day.date === todayStr;\n};\n\n// Check if a day is the active day\nconst isActiveDay = (day: CalendarDay): boolean => {\n return activeDay.value === day;\n};\n\n// Check if current week includes today\nconst currentWeekIncludesToday = computed(() => {\n return props.days.some(day => isDayToday(day));\n});\n\n// Show current time indicator only if viewing current week\nconst showCurrentTimeIndicator = computed(() => {\n return currentWeekIncludesToday.value;\n});\n\n// Current time display (e.g., \"2:45\")\nconst currentTimeDisplay = computed(() => {\n const hours = currentTime.value.getHours();\n const minutes = currentTime.value.getMinutes();\n const displayHours = hours % 12 || 12;\n return `${displayHours}:${String(minutes).padStart(2, '0')}`;\n});\n\n// Calculate position of current time indicator\nconst currentTimeIndicatorStyle = computed(() => {\n const now = currentTime.value;\n const totalMinutes = now.getHours() * 60 + now.getMinutes();\n \n const offsetPx = 28; // h-7 = 1.75rem = 28px\n const rowHeightRem = 3.5;\n const totalRows = 48;\n \n const percentOfDay = totalMinutes / 1440;\n \n return {\n top: `calc(${offsetPx}px + ${percentOfDay} * ${totalRows} * ${rowHeightRem}rem)`\n };\n});\n\n// Mobile detection\nconst isMobile = ref(typeof window !== 'undefined' ? window.innerWidth < 768 : false);\nconst updateIsMobile = () => { isMobile.value = window.innerWidth < 768; };\n\n// Filtered days based on mobile/desktop\nconst filteredDays = computed(() => {\n if (isMobile.value && activeDay.value) {\n return [activeDay.value];\n }\n return props.days || [];\n});\n\n// Set active day\nconst setActiveDay = (day: CalendarDay) => {\n activeDay.value = day;\n};\n\n// Event placement types\ntype Placed = { \n event: ListEvent; \n leftPercent: number; \n widthPercent: number; \n startIso: string; \n endIso?: string; \n isStart: boolean; \n isEnd: boolean;\n};\n\n// Responsive cap for side-by-side columns\nconst getMaxVisibleColumns = (): number => {\n if (typeof window === 'undefined') return 3;\n const w = window.innerWidth;\n if (w >= 1280) return 3;\n if (w >= 1024) return 2;\n return 1;\n};\n\nconst MAX_VISIBLE_COLUMNS = ref(getMaxVisibleColumns());\nconst handleResize = () => MAX_VISIBLE_COLUMNS.value = getMaxVisibleColumns();\n\n// Convert ISO to minutes since midnight\nconst toMinutes = (iso?: string): number => {\n if (!iso) return 0;\n const d = new Date(iso);\n return d.getHours() * 60 + d.getMinutes();\n};\n\n// Clamp an event to a specific day\nconst clampEventToDay = (dayKey: string, event: ListEvent): { startIso: string; endIso?: string; isStart: boolean; isEnd: boolean } => {\n const start = event.startTime?.dateTime || event.datetime;\n const end = event.endTime?.dateTime || event.datetime;\n const startDate = new Date(start);\n const endDate = end ? new Date(end) : undefined;\n\n const [y, m, d] = dayKey.split('-').map((n: string) => Number(n));\n const dayStart = new Date(y, (m - 1), d, 0, 0, 0, 0);\n const dayEnd = new Date(y, (m - 1), d, 23, 59, 59, 999);\n\n const clampedStart = new Date(Math.max(dayStart.getTime(), startDate.getTime()));\n const clampedEnd = endDate\n ? new Date(Math.min(dayEnd.getTime(), endDate.getTime()))\n : new Date(Math.min(dayEnd.getTime(), clampedStart.getTime() + 30 * 60 * 1000));\n\n const isStart = clampedStart.getTime() === startDate.getTime();\n const isEnd = endDate ? clampedEnd.getTime() === endDate.getTime() : false;\n\n return { startIso: clampedStart.toISOString(), endIso: clampedEnd?.toISOString(), isStart, isEnd };\n};\n\ntype Internal = { event: ListEvent; start: number; end: number; col: number; cluster: number; isStart: boolean; isEnd: boolean; _startIso: string; _endIso?: string };\n\n// Build event placement for a day\nconst buildPlacement = (dayKey: string, events?: ListEvent[]): { placed: Placed[]; overflow: number; hidden: Internal[] } => {\n const list: Internal[] = (events || []).map(e => {\n const { startIso, endIso, isStart, isEnd } = clampEventToDay(dayKey, e);\n return {\n event: e,\n start: toMinutes(startIso),\n end: toMinutes(endIso) || toMinutes(startIso) + 30,\n col: 0,\n cluster: 0,\n _startIso: startIso,\n _endIso: endIso,\n isStart,\n isEnd,\n };\n }).sort((a, b) => a.start - b.start);\n\n const placed: Placed[] = [];\n let active: Internal[] = [];\n let clusterIndex = -1;\n const clusterMaxCol: number[] = [];\n\n list.forEach(item => {\n active = active.filter(a => a.end > item.start);\n if (active.length === 0) {\n clusterIndex += 1;\n clusterMaxCol[clusterIndex] = 0;\n }\n const usedCols = new Set(active.map(a => a.col));\n let col = 0;\n while (usedCols.has(col)) col += 1;\n item.col = col;\n item.cluster = clusterIndex;\n clusterMaxCol[clusterIndex] = Math.max(clusterMaxCol[clusterIndex], col + 1);\n active.push(item);\n });\n\n let overflow = 0;\n const hidden: Internal[] = [];\n \n list.forEach(item => {\n const total = clusterMaxCol[item.cluster] || 1;\n const visibleCols = Math.min(total, MAX_VISIBLE_COLUMNS.value);\n const GUTTER = 1.5;\n const EDGE_PADDING = 1.5;\n const width = (100 - 2 * EDGE_PADDING - GUTTER * Math.max(0, visibleCols - 1)) / visibleCols;\n \n if (item.col >= MAX_VISIBLE_COLUMNS.value) {\n overflow += 1;\n hidden.push(item);\n return;\n }\n \n const left = EDGE_PADDING + item.col * (width + GUTTER);\n placed.push({\n event: item.event,\n leftPercent: left,\n widthPercent: width,\n startIso: item._startIso,\n endIso: item._endIso,\n isStart: item.isStart,\n isEnd: item.isEnd,\n });\n });\n\n return { placed, overflow, hidden };\n};\n\nconst visiblePlaced = (dayKey: string, events?: ListEvent[]): Placed[] => buildPlacement(dayKey, events).placed;\nconst overflowCount = (dayKey: string, events?: ListEvent[]): number => buildPlacement(dayKey, events).overflow;\nconst hiddenTooltip = (dayKey: string, events?: ListEvent[]): string => \n buildPlacement(dayKey, events).hidden.map(h => String(h.event?.name || '')).filter(Boolean).join(', ');\n\n// Check if event is compact (short duration)\nconst isCompact = (startIso: string, endIso?: string): boolean => {\n const span = calculateGridSpan(startIso, endIso);\n return span <= 8; // <= 40 minutes\n};\n\n// Column class helper\nconst columnClasses = ['sl-col-start-1', 'sl-col-start-2', 'sl-col-start-3', 'sl-col-start-4', 'sl-col-start-5', 'sl-col-start-6', 'sl-col-start-7'];\nconst getColumnClass = (dayIndex: number): string => {\n return columnClasses[dayIndex] || 'sl-col-start-1';\n};\n\n// Navigate to day view\nconst goToDay = (day: CalendarDay): void => {\n setActiveDay(day);\n emit('selectDay', day);\n};\n\nconst handleSelectEvent = (eventId: string | number) => {\n emit('select:event', eventId);\n};\n\n// Scroll to current time\nconst scrollToCurrentTime = () => {\n const containerElement = container.value;\n const containerNavElement = containerNav.value;\n \n if (!containerElement || !containerNavElement) return;\n \n const now = new Date();\n const currentMinute = now.getHours() * 60 + now.getMinutes();\n \n const scrollableHeight = containerElement.scrollHeight - containerNavElement.offsetHeight;\n const targetPosition = (scrollableHeight * currentMinute) / 1440;\n const offsetForVisibility = containerElement.clientHeight / 3;\n \n containerElement.scrollTo({\n top: Math.max(0, targetPosition - offsetForVisibility),\n behavior: 'smooth'\n });\n};\n\n// Start time updates\nconst startTimeUpdates = () => {\n timeUpdateInterval = setInterval(() => {\n currentTime.value = new Date();\n }, 60000);\n \n const now = new Date();\n const msUntilNextMinute = (60 - now.getSeconds()) * 1000 - now.getMilliseconds();\n setTimeout(() => {\n currentTime.value = new Date();\n if (timeUpdateInterval) {\n clearInterval(timeUpdateInterval);\n }\n timeUpdateInterval = setInterval(() => {\n currentTime.value = new Date();\n }, 60000);\n }, msUntilNextMinute);\n};\n\nonMounted(async () => {\n startTimeUpdates();\n window.addEventListener('resize', updateIsMobile);\n window.addEventListener('resize', handleResize);\n \n await nextTick();\n setTimeout(() => {\n scrollToCurrentTime();\n }, 100);\n \n watch(isMobile, (newVal) => {\n if (!newVal) {\n const firstWithEvents = filteredDays.value.find((d: CalendarDay) => (d.events?.length || 0) > 0);\n if (firstWithEvents) setActiveDay(firstWithEvents);\n }\n });\n});\n\nonUnmounted(() => {\n window.removeEventListener('resize', updateIsMobile);\n window.removeEventListener('resize', handleResize);\n if (timeUpdateInterval) {\n clearInterval(timeUpdateInterval);\n timeUpdateInterval = null;\n }\n});\n</script>\n\n<style scoped>\n/* Column start classes for PurgeCSS */\n.sl-col-start-1 { grid-column-start: 1; }\n.sl-col-start-2 { grid-column-start: 2; }\n.sl-col-start-3 { grid-column-start: 3; }\n.sl-col-start-4 { grid-column-start: 4; }\n.sl-col-start-5 { grid-column-start: 5; }\n.sl-col-start-6 { grid-column-start: 6; }\n.sl-col-start-7 { grid-column-start: 7; }\n</style>\n"],"names":["props","__props","container","ref","containerNav","containerOffset","currentTimeIndicator","activeDay","currentTime","timeUpdateInterval","hours","emit","__emit","getSegment","useEventSegments","allEvents","computed","events","seen","day","event","eventId","separatedEvents","separateAllDayEvents","allDayEvents","hasAllDayEvents","dayKeys","d","allDayEventLanes","calculateEventLanes","allDayLanes","getAllDayEventsForDayAndLane","dayKey","lane","getAllDayBarClass","segment","base","shouldShowAllDayLabel","isDayToday","today","todayStr","isActiveDay","currentWeekIncludesToday","showCurrentTimeIndicator","currentTimeDisplay","minutes","currentTimeIndicatorStyle","now","totalMinutes","offsetPx","rowHeightRem","totalRows","percentOfDay","isMobile","updateIsMobile","filteredDays","setActiveDay","getMaxVisibleColumns","w","MAX_VISIBLE_COLUMNS","handleResize","toMinutes","iso","clampEventToDay","start","end","startDate","endDate","y","m","n","dayStart","dayEnd","clampedStart","clampedEnd","isStart","isEnd","buildPlacement","list","e","startIso","endIso","a","b","placed","active","clusterIndex","clusterMaxCol","item","usedCols","col","overflow","hidden","total","visibleCols","GUTTER","EDGE_PADDING","width","left","visiblePlaced","overflowCount","hiddenTooltip","h","isCompact","calculateGridSpan","columnClasses","getColumnClass","dayIndex","goToDay","handleSelectEvent","scrollToCurrentTime","containerElement","containerNavElement","currentMinute","targetPosition","offsetForVisibility","startTimeUpdates","msUntilNextMinute","onMounted","nextTick","watch","newVal","firstWithEvents","onUnmounted","_openBlock","_createElementBlock","_hoisted_1","_createElementVNode","_hoisted_2","_hoisted_3","_hoisted_4","_Fragment","_renderList","$event","_toDisplayString","_hoisted_6","_normalizeClass","_hoisted_7","_cache","_","i","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","hour","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_normalizeStyle","_unref","calculateGridRow","_hoisted_22","_hoisted_23","_hoisted_24","formatTime","_hoisted_25","_hoisted_26","_hoisted_27","_hoisted_28","_hoisted_29","_hoisted_30","_hoisted_31"],"mappings":"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"}
@@ -1,3 +1 @@
1
- export * from '../src/components/calendars/YearCalendar'
2
- import StachelockUI from '../src/components/calendars/YearCalendar'
3
- export default StachelockUI
1
+ export {}
@@ -1,4 +1,4 @@
1
- import { _ as f } from "../YearCalendar.vue_vue_type_script_setup_true_lang-C01PTLg8.js";
1
+ import { _ as f } from "../YearCalendar.vue_vue_type_script_setup_true_lang-CfKSpLLN.js";
2
2
  export {
3
3
  f as default
4
4
  };
@@ -1,3 +1 @@
1
- export * from '../src/components/charts/BarChart'
2
- import StachelockUI from '../src/components/charts/BarChart'
3
- export default StachelockUI
1
+ export {}
@@ -1,4 +1,4 @@
1
- import { _ as f } from "../BarChart.vue_vue_type_script_setup_true_lang-Dnuzd7vZ.js";
1
+ import { _ as f } from "../BarChart.vue_vue_type_script_setup_true_lang-xCb0DCbf.js";
2
2
  export {
3
3
  f as default
4
4
  };
@@ -1,3 +1 @@
1
- export * from '../src/components/charts/BaseChart'
2
- import StachelockUI from '../src/components/charts/BaseChart'
3
- export default StachelockUI
1
+ export {}
@@ -1,13 +1,13 @@
1
- import { createElementBlock as c, openBlock as n, createElementVNode as s, defineComponent as b, ref as u, computed as r, onMounted as A, provide as D, normalizeStyle as S, normalizeClass as L, createBlock as f, unref as O, resolveDynamicComponent as T, toDisplayString as g } from "vue";
1
+ import { createElementBlock as d, openBlock as r, createElementVNode as s, defineComponent as b, ref as u, computed as l, onMounted as A, provide as D, normalizeStyle as S, normalizeClass as L, createBlock as f, unref as O, resolveDynamicComponent as T, toDisplayString as g } from "vue";
2
2
  import M from "vue-echarts";
3
3
  import { use as V } from "echarts/core";
4
4
  import { CanvasRenderer as Z } from "echarts/renderers";
5
5
  import { LineChart as I, BarChart as R, PieChart as j, FunnelChart as E, ScatterChart as N } from "echarts/charts";
6
6
  import { TitleComponent as $, TooltipComponent as F, LegendComponent as G, GridComponent as P, DataZoomComponent as q } from "echarts/components";
7
- import { chartColors as H, baseTheme as l } from "./chartTheme.js";
7
+ import { chartColors as H, baseTheme as i } from "./chartTheme.js";
8
8
  import { _ as J } from "../_plugin-vue_export-helper-CHgC5LLL.js";
9
- function K(d, p) {
10
- return n(), c("svg", {
9
+ function K(o, h) {
10
+ return r(), d("svg", {
11
11
  xmlns: "http://www.w3.org/2000/svg",
12
12
  fill: "none",
13
13
  viewBox: "0 0 24 24",
@@ -42,7 +42,7 @@ const Q = {
42
42
  emptyIcon: { default: () => K }
43
43
  },
44
44
  emits: ["click", "legendselectchanged", "ready"],
45
- setup(d, { expose: p, emit: y }) {
45
+ setup(o, { expose: h, emit: y }) {
46
46
  V([
47
47
  Z,
48
48
  I,
@@ -56,80 +56,80 @@ const Q = {
56
56
  P,
57
57
  q
58
58
  ]);
59
- const t = d, i = y, C = u(null), o = u(null), v = r(() => ({
60
- height: typeof t.height == "number" ? `${t.height}px` : t.height,
61
- width: typeof t.width == "number" ? `${t.width}px` : t.width
62
- })), k = r(() => ({
59
+ const e = o, c = y, C = u(null), a = u(null), v = l(() => ({
60
+ height: typeof e.height == "number" ? `${e.height}px` : e.height,
61
+ width: typeof e.width == "number" ? `${e.width}px` : e.width
62
+ })), x = l(() => ({
63
63
  text: "Loading...",
64
64
  color: H.primary[0],
65
65
  textColor: "#6b7280",
66
66
  maskColor: "rgba(255, 255, 255, 0.8)",
67
- ...t.loadingOptions
68
- })), x = r(() => {
69
- const e = t.option;
70
- if (!e) return !1;
71
- const a = e.series;
72
- if (!a) return !1;
73
- if (Array.isArray(a))
74
- return a.some((z) => {
75
- const m = z.data;
76
- return Array.isArray(m) && m.length > 0;
67
+ ...e.loadingOptions
68
+ })), k = l(() => {
69
+ const t = e.option;
70
+ if (!t) return !1;
71
+ const n = t.series;
72
+ if (!n) return !1;
73
+ if (Array.isArray(n))
74
+ return n.some((z) => {
75
+ const p = z.data;
76
+ return Array.isArray(p) && p.length > 0;
77
77
  });
78
- const h = a.data;
79
- return Array.isArray(h) && h.length > 0;
80
- }), _ = r(() => ({
81
- ...l,
82
- ...t.option,
78
+ const m = n.data;
79
+ return Array.isArray(m) && m.length > 0;
80
+ }), w = l(() => ({
81
+ ...i,
82
+ ...e.option,
83
83
  textStyle: {
84
- ...l.textStyle || {},
85
- ...t.option?.textStyle || {}
84
+ ...i.textStyle || {},
85
+ ...e.option?.textStyle || {}
86
86
  },
87
87
  tooltip: {
88
- ...l.tooltip || {},
89
- ...t.option?.tooltip || {}
88
+ ...i.tooltip || {},
89
+ ...e.option?.tooltip || {}
90
90
  },
91
91
  grid: {
92
- ...l.grid || {},
93
- ...t.option?.grid || {}
92
+ ...i.grid || {},
93
+ ...e.option?.grid || {}
94
94
  }
95
- })), w = (e) => {
96
- i("click", e);
97
- }, B = (e) => {
98
- i("legendselectchanged", e);
95
+ })), _ = (t) => {
96
+ c("click", t);
97
+ }, B = (t) => {
98
+ c("legendselectchanged", t);
99
99
  };
100
- return p({
101
- getChart: () => o.value?.chart,
102
- resize: () => o.value?.resize(),
103
- setOption: (e) => o.value?.setOption(e)
100
+ return h({
101
+ getChart: () => a.value?.chart,
102
+ resize: () => a.value?.resize(),
103
+ setOption: (t) => a.value?.setOption(t)
104
104
  }), A(() => {
105
- o.value?.chart && i("ready", o.value.chart);
106
- }), D("chartTheme", t.theme), (e, a) => (n(), c("div", {
105
+ a.value?.chart && c("ready", a.value.chart);
106
+ }), D("chartTheme", e.theme), (t, n) => (r(), d("div", {
107
107
  ref_key: "chartContainer",
108
108
  ref: C,
109
- class: L(e.containerClass),
109
+ class: L(o.containerClass),
110
110
  style: S(v.value)
111
111
  }, [
112
- x.value ? (n(), f(O(M), {
112
+ k.value ? (r(), f(O(M), {
113
113
  key: 0,
114
114
  ref_key: "chartRef",
115
- ref: o,
116
- option: _.value,
117
- autoresize: e.autoresize,
118
- loading: e.loading,
119
- "loading-options": k.value,
120
- onClick: w,
115
+ ref: a,
116
+ option: w.value,
117
+ autoresize: o.autoresize,
118
+ loading: o.loading,
119
+ "loading-options": x.value,
120
+ onClick: _,
121
121
  onLegendselectchanged: B
122
- }, null, 8, ["option", "autoresize", "loading", "loading-options"])) : (n(), c("div", Q, [
122
+ }, null, 8, ["option", "autoresize", "loading", "loading-options"])) : (r(), d("div", Q, [
123
123
  s("div", U, [
124
- (n(), f(T(e.emptyIcon), { class: "sl-mx-auto sl-h-12 sl-w-12 sl-text-gray-300 dark:sl-text-slate-600" })),
125
- s("h3", W, g(e.emptyTitle), 1),
126
- s("p", X, g(e.emptyDescription), 1)
124
+ (r(), f(T(o.emptyIcon), { class: "sl-mx-auto sl-h-12 sl-w-12 sl-text-gray-300 dark:sl-text-slate-600" })),
125
+ s("h3", W, g(o.emptyTitle), 1),
126
+ s("p", X, g(o.emptyDescription), 1)
127
127
  ])
128
128
  ]))
129
129
  ], 6));
130
130
  }
131
- }), ie = /* @__PURE__ */ J(Y, [["__scopeId", "data-v-7a9624c5"]]);
131
+ }), se = /* @__PURE__ */ J(Y, [["__scopeId", "data-v-7a9624c5"]]);
132
132
  export {
133
- ie as default
133
+ se as default
134
134
  };
135
135
  //# sourceMappingURL=BaseChart.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BaseChart.js","sources":["../../node_modules/@heroicons/vue/24/outline/esm/ChartBarIcon.js","../../src/components/charts/BaseChart.vue"],"sourcesContent":["import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nexport default function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n \"stroke-width\": \"1.5\",\n stroke: \"currentColor\",\n \"aria-hidden\": \"true\",\n \"data-slot\": \"icon\"\n }, [\n _createElementVNode(\"path\", {\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\",\n d: \"M3 13.125C3 12.504 3.504 12 4.125 12h2.25c.621 0 1.125.504 1.125 1.125v6.75C7.5 20.496 6.996 21 6.375 21h-2.25A1.125 1.125 0 0 1 3 19.875v-6.75ZM9.75 8.625c0-.621.504-1.125 1.125-1.125h2.25c.621 0 1.125.504 1.125 1.125v11.25c0 .621-.504 1.125-1.125 1.125h-2.25a1.125 1.125 0 0 1-1.125-1.125V8.625ZM16.5 4.125c0-.621.504-1.125 1.125-1.125h2.25C20.496 3 21 3.504 21 4.125v15.75c0 .621-.504 1.125-1.125 1.125h-2.25a1.125 1.125 0 0 1-1.125-1.125V4.125Z\"\n })\n ]))\n}","<!--\n @component BaseChart\n @description Base wrapper component for ECharts.\n \n Provides a consistent wrapper for all chart types with loading states,\n empty states, and theme integration.\n \n @props\n - option (EChartsOption, required): ECharts configuration object\n - height (string|number, optional): Chart height\n - width (string|number, optional): Chart width\n - autoresize (boolean, optional): Auto-resize on container change\n - loading (boolean, optional): Show loading state\n - loadingOptions (object, optional): Loading indicator options\n - containerClass (string, optional): Additional container classes\n - theme (string, optional): Theme variant - 'light' | 'dark'\n - emptyTitle (string, optional): Empty state title\n - emptyDescription (string, optional): Empty state description\n - emptyIcon (Component, optional): Empty state icon\n \n @emits\n - click: Emitted when chart element is clicked\n - legendselectchanged: Emitted when legend selection changes\n - ready: Emitted when chart is ready, payload is chart instance\n \n @example\n <BaseChart\n :option=\"chartOption\"\n :height=\"400\"\n @click=\"handleChartClick\"\n />\n-->\n<template>\n <div ref=\"chartContainer\" :class=\"containerClass\" :style=\"containerStyle\">\n <VChart\n v-if=\"hasData\"\n ref=\"chartRef\"\n :option=\"mergedOptions\"\n :autoresize=\"autoresize\"\n :loading=\"loading\"\n :loading-options=\"computedLoadingOptions\"\n @click=\"handleClick\"\n @legendselectchanged=\"handleLegendChange\"\n />\n <!-- Empty State -->\n <div v-else class=\"sl-flex sl-items-center sl-justify-center sl-h-full\">\n <div class=\"sl-text-center\">\n <component \n :is=\"emptyIcon\" \n class=\"sl-mx-auto sl-h-12 sl-w-12 sl-text-gray-300 dark:sl-text-slate-600\" \n />\n <h3 class=\"sl-mt-2 sl-text-sm sl-font-medium sl-text-gray-900 dark:sl-text-white\">\n {{ emptyTitle }}\n </h3>\n <p class=\"sl-mt-1 sl-text-sm sl-text-gray-500 dark:sl-text-slate-400\">\n {{ emptyDescription }}\n </p>\n </div>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, computed, onMounted, provide, type Component } from 'vue';\nimport VChart from 'vue-echarts';\nimport { use } from 'echarts/core';\nimport { CanvasRenderer } from 'echarts/renderers';\nimport {\n LineChart,\n BarChart,\n PieChart,\n FunnelChart,\n ScatterChart,\n} from 'echarts/charts';\nimport {\n TitleComponent,\n TooltipComponent,\n LegendComponent,\n GridComponent,\n DataZoomComponent,\n} from 'echarts/components';\nimport type { EChartsOption } from 'echarts';\nimport { baseTheme, chartColors } from './chartTheme';\nimport { ChartBarIcon } from '@heroicons/vue/24/outline';\n\n// Register ECharts components\nuse([\n CanvasRenderer,\n LineChart,\n BarChart,\n PieChart,\n FunnelChart,\n ScatterChart,\n TitleComponent,\n TooltipComponent,\n LegendComponent,\n GridComponent,\n DataZoomComponent,\n]);\n\ninterface Props {\n option: EChartsOption;\n height?: string | number;\n width?: string | number;\n autoresize?: boolean;\n loading?: boolean;\n loadingOptions?: Record<string, unknown>;\n containerClass?: string;\n theme?: 'light' | 'dark';\n emptyTitle?: string;\n emptyDescription?: string;\n emptyIcon?: Component;\n}\n\nconst props = withDefaults(defineProps<Props>(), {\n height: 300,\n width: '100%',\n autoresize: true,\n loading: false,\n loadingOptions: () => ({}),\n containerClass: '',\n theme: 'light',\n emptyTitle: 'No data available',\n emptyDescription: 'Data will appear here once available.',\n emptyIcon: () => ChartBarIcon,\n});\n\nconst emit = defineEmits<{\n click: [params: unknown];\n legendselectchanged: [params: unknown];\n ready: [chart: unknown];\n}>();\n\nconst chartContainer = ref<HTMLElement | null>(null);\nconst chartRef = ref<InstanceType<typeof VChart> | null>(null);\n\nconst containerStyle = computed(() => ({\n height: typeof props.height === 'number' ? `${props.height}px` : props.height,\n width: typeof props.width === 'number' ? `${props.width}px` : props.width,\n}));\n\nconst computedLoadingOptions = computed(() => ({\n text: 'Loading...',\n color: chartColors.primary[0],\n textColor: '#6b7280',\n maskColor: 'rgba(255, 255, 255, 0.8)',\n ...props.loadingOptions,\n}));\n\nconst hasData = computed(() => {\n const option = props.option;\n if (!option) return false;\n \n const series = option.series;\n if (!series) return false;\n \n if (Array.isArray(series)) {\n return series.some(s => {\n const data = (s as Record<string, unknown>).data;\n return Array.isArray(data) && data.length > 0;\n });\n }\n \n const data = (series as Record<string, unknown>).data;\n return Array.isArray(data) && data.length > 0;\n});\n\nconst mergedOptions = computed<EChartsOption>(() => {\n return {\n ...baseTheme,\n ...props.option,\n textStyle: {\n ...(baseTheme.textStyle || {}),\n ...((props.option as Record<string, unknown>)?.textStyle as Record<string, unknown> || {}),\n },\n tooltip: {\n ...(baseTheme.tooltip || {}),\n ...((props.option as Record<string, unknown>)?.tooltip as Record<string, unknown> || {}),\n },\n grid: {\n ...(baseTheme.grid || {}),\n ...((props.option as Record<string, unknown>)?.grid as Record<string, unknown> || {}),\n },\n };\n});\n\nconst handleClick = (params: unknown): void => {\n emit('click', params);\n};\n\nconst handleLegendChange = (params: unknown): void => {\n emit('legendselectchanged', params);\n};\n\ndefineExpose({\n getChart: () => chartRef.value?.chart,\n resize: () => chartRef.value?.resize(),\n setOption: (option: EChartsOption) => chartRef.value?.setOption(option),\n});\n\nonMounted(() => {\n if (chartRef.value?.chart) {\n emit('ready', chartRef.value.chart);\n }\n});\n\nprovide('chartTheme', props.theme);\n</script>\n\n<style scoped>\n:deep(.echarts) {\n width: 100% !important;\n height: 100% !important;\n}\n</style>\n\n"],"names":["render","_ctx","_cache","_openBlock","_createElementBlock","_createElementVNode","use","CanvasRenderer","LineChart","BarChart","PieChart","FunnelChart","ScatterChart","TitleComponent","TooltipComponent","LegendComponent","GridComponent","DataZoomComponent","props","__props","emit","__emit","chartContainer","ref","chartRef","containerStyle","computed","computedLoadingOptions","chartColors","hasData","option","series","s","data","mergedOptions","baseTheme","handleClick","params","handleLegendChange","__expose","onMounted","provide","containerClass","_createBlock","_unref","VChart","autoresize","loading","_hoisted_1","_hoisted_2","_resolveDynamicComponent","emptyIcon","_hoisted_3","_toDisplayString","emptyTitle","_hoisted_4","emptyDescription"],"mappings":";;;;;;;;AAEe,SAASA,EAAOC,GAAMC,GAAQ;AAC3C,SAAQC,EAAU,GAAIC,EAAoB,OAAO;AAAA,IAC/C,OAAO;AAAA,IACP,MAAM;AAAA,IACN,SAAS;AAAA,IACT,gBAAgB;AAAA,IAChB,QAAQ;AAAA,IACR,eAAe;AAAA,IACf,aAAa;AAAA,EACjB,GAAK;AAAA,IACDC,EAAoB,QAAQ;AAAA,MAC1B,kBAAkB;AAAA,MAClB,mBAAmB;AAAA,MACnB,GAAG;AAAA,IACT,CAAK;AAAA,EACL,CAAG;AACH;;;;;;;;;;;;;;;;;;;;;ACoEA,IAAAC,EAAI;AAAA,MACFC;AAAA,MACAC;AAAA,MACAC;AAAA,MACAC;AAAA,MACAC;AAAA,MACAC;AAAA,MACAC;AAAA,MACAC;AAAA,MACAC;AAAA,MACAC;AAAA,MACAC;AAAA,IAAA,CACD;AAgBD,UAAMC,IAAQC,GAaRC,IAAOC,GAMPC,IAAiBC,EAAwB,IAAI,GAC7CC,IAAWD,EAAwC,IAAI,GAEvDE,IAAiBC,EAAS,OAAO;AAAA,MACrC,QAAQ,OAAOR,EAAM,UAAW,WAAW,GAAGA,EAAM,MAAM,OAAOA,EAAM;AAAA,MACvE,OAAO,OAAOA,EAAM,SAAU,WAAW,GAAGA,EAAM,KAAK,OAAOA,EAAM;AAAA,IAAA,EACpE,GAEIS,IAAyBD,EAAS,OAAO;AAAA,MAC7C,MAAM;AAAA,MACN,OAAOE,EAAY,QAAQ,CAAC;AAAA,MAC5B,WAAW;AAAA,MACX,WAAW;AAAA,MACX,GAAGV,EAAM;AAAA,IAAA,EACT,GAEIW,IAAUH,EAAS,MAAM;AAC7B,YAAMI,IAASZ,EAAM;AACrB,UAAI,CAACY,EAAQ,QAAO;AAEpB,YAAMC,IAASD,EAAO;AACtB,UAAI,CAACC,EAAQ,QAAO;AAEpB,UAAI,MAAM,QAAQA,CAAM;AACtB,eAAOA,EAAO,KAAK,CAAAC,MAAK;AACtB,gBAAMC,IAAQD,EAA8B;AAC5C,iBAAO,MAAM,QAAQC,CAAI,KAAKA,EAAK,SAAS;AAAA,QAC9C,CAAC;AAGH,YAAMA,IAAQF,EAAmC;AACjD,aAAO,MAAM,QAAQE,CAAI,KAAKA,EAAK,SAAS;AAAA,IAC9C,CAAC,GAEKC,IAAgBR,EAAwB,OACrC;AAAA,MACL,GAAGS;AAAA,MACH,GAAGjB,EAAM;AAAA,MACT,WAAW;AAAA,QACT,GAAIiB,EAAU,aAAa,CAAA;AAAA,QAC3B,GAAKjB,EAAM,QAAoC,aAAwC,CAAA;AAAA,MAAC;AAAA,MAE1F,SAAS;AAAA,QACP,GAAIiB,EAAU,WAAW,CAAA;AAAA,QACzB,GAAKjB,EAAM,QAAoC,WAAsC,CAAA;AAAA,MAAC;AAAA,MAExF,MAAM;AAAA,QACJ,GAAIiB,EAAU,QAAQ,CAAA;AAAA,QACtB,GAAKjB,EAAM,QAAoC,QAAmC,CAAA;AAAA,MAAC;AAAA,IACrF,EAEH,GAEKkB,IAAc,CAACC,MAA0B;AAC7C,MAAAjB,EAAK,SAASiB,CAAM;AAAA,IACtB,GAEMC,IAAqB,CAACD,MAA0B;AACpD,MAAAjB,EAAK,uBAAuBiB,CAAM;AAAA,IACpC;AAEA,WAAAE,EAAa;AAAA,MACX,UAAU,MAAMf,EAAS,OAAO;AAAA,MAChC,QAAQ,MAAMA,EAAS,OAAO,OAAA;AAAA,MAC9B,WAAW,CAACM,MAA0BN,EAAS,OAAO,UAAUM,CAAM;AAAA,IAAA,CACvE,GAEDU,EAAU,MAAM;AACd,MAAIhB,EAAS,OAAO,SAClBJ,EAAK,SAASI,EAAS,MAAM,KAAK;AAAA,IAEtC,CAAC,GAEDiB,EAAQ,cAAcvB,EAAM,KAAK,mBA7K/Bd,EA0BM,OAAA;AAAA,eA1BG;AAAA,MAAJ,KAAIkB;AAAA,MAAkB,SAAOoB,EAAAA,cAAc;AAAA,MAAG,SAAOjB,EAAA,KAAc;AAAA,IAAA;MAE9DI,EAAA,cADRc,EASEC,EAAAC,CAAA,GAAA;AAAA;iBAPI;AAAA,QAAJ,KAAIrB;AAAA,QACH,QAAQU,EAAA;AAAA,QACR,YAAYY,EAAAA;AAAAA,QACZ,SAASC,EAAAA;AAAAA,QACT,mBAAiBpB,EAAA;AAAA,QACjB,SAAOS;AAAA,QACP,uBAAqBE;AAAA,MAAA,wEAGxBnC,EAAA,GAAAC,EAaM,OAbN4C,GAaM;AAAA,QAZJ3C,EAWM,OAXN4C,GAWM;AAAA,WAVJ9C,EAAA,GAAAwC,EAGEO,EAFKC,EAAAA,SAAS,GAAA,EACd,OAAM,sEAAoE;AAAA,UAE5E9C,EAEK,MAFL+C,GAEKC,EADAC,EAAAA,UAAU,GAAA,CAAA;AAAA,UAEfjD,EAEI,KAFJkD,GAEIF,EADCG,EAAAA,gBAAgB,GAAA,CAAA;AAAA,QAAA;;;;;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"BaseChart.js","sources":["../../node_modules/@heroicons/vue/24/outline/esm/ChartBarIcon.js","../../src/components/charts/BaseChart.vue"],"sourcesContent":["import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nexport default function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n \"stroke-width\": \"1.5\",\n stroke: \"currentColor\",\n \"aria-hidden\": \"true\",\n \"data-slot\": \"icon\"\n }, [\n _createElementVNode(\"path\", {\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\",\n d: \"M3 13.125C3 12.504 3.504 12 4.125 12h2.25c.621 0 1.125.504 1.125 1.125v6.75C7.5 20.496 6.996 21 6.375 21h-2.25A1.125 1.125 0 0 1 3 19.875v-6.75ZM9.75 8.625c0-.621.504-1.125 1.125-1.125h2.25c.621 0 1.125.504 1.125 1.125v11.25c0 .621-.504 1.125-1.125 1.125h-2.25a1.125 1.125 0 0 1-1.125-1.125V8.625ZM16.5 4.125c0-.621.504-1.125 1.125-1.125h2.25C20.496 3 21 3.504 21 4.125v15.75c0 .621-.504 1.125-1.125 1.125h-2.25a1.125 1.125 0 0 1-1.125-1.125V4.125Z\"\n })\n ]))\n}","<!--\n @component BaseChart\n @description Base wrapper component for ECharts.\n \n Provides a consistent wrapper for all chart types with loading states,\n empty states, and theme integration.\n \n @props\n - option (EChartsOption, required): ECharts configuration object\n - height (string|number, optional): Chart height\n - width (string|number, optional): Chart width\n - autoresize (boolean, optional): Auto-resize on container change\n - loading (boolean, optional): Show loading state\n - loadingOptions (object, optional): Loading indicator options\n - containerClass (string, optional): Additional container classes\n - theme (string, optional): Theme variant - 'light' | 'dark'\n - emptyTitle (string, optional): Empty state title\n - emptyDescription (string, optional): Empty state description\n - emptyIcon (Component, optional): Empty state icon\n \n @emits\n - click: Emitted when chart element is clicked\n - legendselectchanged: Emitted when legend selection changes\n - ready: Emitted when chart is ready, payload is chart instance\n \n @example\n <BaseChart\n :option=\"chartOption\"\n :height=\"400\"\n @click=\"handleChartClick\"\n />\n-->\n<template>\n <div ref=\"chartContainer\" :class=\"containerClass\" :style=\"containerStyle\">\n <VChart\n v-if=\"hasData\"\n ref=\"chartRef\"\n :option=\"mergedOptions\"\n :autoresize=\"autoresize\"\n :loading=\"loading\"\n :loading-options=\"computedLoadingOptions\"\n @click=\"handleClick\"\n @legendselectchanged=\"handleLegendChange\"\n />\n <!-- Empty State -->\n <div v-else class=\"sl-flex sl-items-center sl-justify-center sl-h-full\">\n <div class=\"sl-text-center\">\n <component \n :is=\"emptyIcon\" \n class=\"sl-mx-auto sl-h-12 sl-w-12 sl-text-gray-300 dark:sl-text-slate-600\" \n />\n <h3 class=\"sl-mt-2 sl-text-sm sl-font-medium sl-text-gray-900 dark:sl-text-white\">\n {{ emptyTitle }}\n </h3>\n <p class=\"sl-mt-1 sl-text-sm sl-text-gray-500 dark:sl-text-slate-400\">\n {{ emptyDescription }}\n </p>\n </div>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, computed, onMounted, provide, type Component } from 'vue';\nimport VChart from 'vue-echarts';\nimport { use } from 'echarts/core';\nimport { CanvasRenderer } from 'echarts/renderers';\nimport {\n LineChart,\n BarChart,\n PieChart,\n FunnelChart,\n ScatterChart,\n} from 'echarts/charts';\nimport {\n TitleComponent,\n TooltipComponent,\n LegendComponent,\n GridComponent,\n DataZoomComponent,\n} from 'echarts/components';\nimport type { EChartsOption } from 'echarts';\nimport { baseTheme, chartColors } from './chartTheme';\nimport { ChartBarIcon } from '@heroicons/vue/24/outline';\n\n// Register ECharts components\nuse([\n CanvasRenderer,\n LineChart,\n BarChart,\n PieChart,\n FunnelChart,\n ScatterChart,\n TitleComponent,\n TooltipComponent,\n LegendComponent,\n GridComponent,\n DataZoomComponent,\n]);\n\ninterface Props {\n option: EChartsOption;\n height?: string | number;\n width?: string | number;\n autoresize?: boolean;\n loading?: boolean;\n loadingOptions?: Record<string, unknown>;\n containerClass?: string;\n theme?: 'light' | 'dark';\n emptyTitle?: string;\n emptyDescription?: string;\n emptyIcon?: Component;\n}\n\nconst props = withDefaults(defineProps<Props>(), {\n height: 300,\n width: '100%',\n autoresize: true,\n loading: false,\n loadingOptions: () => ({}),\n containerClass: '',\n theme: 'light',\n emptyTitle: 'No data available',\n emptyDescription: 'Data will appear here once available.',\n emptyIcon: () => ChartBarIcon,\n});\n\nconst emit = defineEmits<{\n click: [params: unknown];\n legendselectchanged: [params: unknown];\n ready: [chart: unknown];\n}>();\n\nconst chartContainer = ref<HTMLElement | null>(null);\nconst chartRef = ref<InstanceType<typeof VChart> | null>(null);\n\nconst containerStyle = computed(() => ({\n height: typeof props.height === 'number' ? `${props.height}px` : props.height,\n width: typeof props.width === 'number' ? `${props.width}px` : props.width,\n}));\n\nconst computedLoadingOptions = computed(() => ({\n text: 'Loading...',\n color: chartColors.primary[0],\n textColor: '#6b7280',\n maskColor: 'rgba(255, 255, 255, 0.8)',\n ...props.loadingOptions,\n}));\n\nconst hasData = computed(() => {\n const option = props.option;\n if (!option) return false;\n \n const series = option.series;\n if (!series) return false;\n \n if (Array.isArray(series)) {\n return series.some(s => {\n const data = (s as Record<string, unknown>).data;\n return Array.isArray(data) && data.length > 0;\n });\n }\n \n const data = (series as Record<string, unknown>).data;\n return Array.isArray(data) && data.length > 0;\n});\n\nconst mergedOptions = computed<EChartsOption>(() => {\n return {\n ...baseTheme,\n ...props.option,\n textStyle: {\n ...(baseTheme.textStyle || {}),\n ...((props.option as Record<string, unknown>)?.textStyle as Record<string, unknown> || {}),\n },\n tooltip: {\n ...(baseTheme.tooltip || {}),\n ...((props.option as Record<string, unknown>)?.tooltip as Record<string, unknown> || {}),\n },\n grid: {\n ...(baseTheme.grid || {}),\n ...((props.option as Record<string, unknown>)?.grid as Record<string, unknown> || {}),\n },\n };\n});\n\nconst handleClick = (params: unknown): void => {\n emit('click', params);\n};\n\nconst handleLegendChange = (params: unknown): void => {\n emit('legendselectchanged', params);\n};\n\ndefineExpose({\n getChart: () => chartRef.value?.chart,\n resize: () => chartRef.value?.resize(),\n setOption: (option: EChartsOption) => chartRef.value?.setOption(option),\n});\n\nonMounted(() => {\n if (chartRef.value?.chart) {\n emit('ready', chartRef.value.chart);\n }\n});\n\nprovide('chartTheme', props.theme);\n</script>\n\n<style scoped>\n:deep(.echarts) {\n width: 100% !important;\n height: 100% !important;\n}\n</style>\n\n"],"names":["render","_ctx","_cache","_openBlock","_createElementBlock","_createElementVNode","use","CanvasRenderer","LineChart","BarChart","PieChart","FunnelChart","ScatterChart","TitleComponent","TooltipComponent","LegendComponent","GridComponent","DataZoomComponent","props","__props","emit","__emit","chartContainer","ref","chartRef","containerStyle","computed","computedLoadingOptions","chartColors","hasData","option","series","s","data","mergedOptions","baseTheme","handleClick","params","handleLegendChange","__expose","onMounted","provide","_createBlock","_unref","VChart","_hoisted_1","_hoisted_2","_resolveDynamicComponent","_hoisted_3","_toDisplayString","_hoisted_4"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,3 +1 @@
1
- export * from '../src/components/charts/FunnelChart'
2
- import StachelockUI from '../src/components/charts/FunnelChart'
3
- export default StachelockUI
1
+ export {}
@@ -1,4 +1,4 @@
1
- import { _ as f } from "../FunnelChart.vue_vue_type_script_setup_true_lang-B8QYlJ-s.js";
1
+ import { _ as f } from "../FunnelChart.vue_vue_type_script_setup_true_lang-B4pH6xCV.js";
2
2
  export {
3
3
  f as default
4
4
  };
@@ -1,3 +1 @@
1
- export * from '../src/components/charts/LineChart'
2
- import StachelockUI from '../src/components/charts/LineChart'
3
- export default StachelockUI
1
+ export {}
@@ -1,4 +1,4 @@
1
- import { _ as f } from "../LineChart.vue_vue_type_script_setup_true_lang-DszQ-a5L.js";
1
+ import { _ as f } from "../LineChart.vue_vue_type_script_setup_true_lang-DJo0edLJ.js";
2
2
  export {
3
3
  f as default
4
4
  };
@@ -1,3 +1 @@
1
- export * from '../src/components/charts/PieChart'
2
- import StachelockUI from '../src/components/charts/PieChart'
3
- export default StachelockUI
1
+ export {}
@@ -1,4 +1,4 @@
1
- import { _ as f } from "../PieChart.vue_vue_type_script_setup_true_lang-DJRcsty7.js";
1
+ import { _ as f } from "../PieChart.vue_vue_type_script_setup_true_lang-e3wsA9O4.js";
2
2
  export {
3
3
  f as default
4
4
  };
@@ -1,3 +1 @@
1
- export * from '../src/components/charts/SparklineChart'
2
- import StachelockUI from '../src/components/charts/SparklineChart'
3
- export default StachelockUI
1
+ export {}
@@ -1,4 +1,4 @@
1
- import { _ as f } from "../SparklineChart.vue_vue_type_script_setup_true_lang-DDTcpEjy.js";
1
+ import { _ as f } from "../SparklineChart.vue_vue_type_script_setup_true_lang-BlNk5ZqM.js";
2
2
  export {
3
3
  f as default
4
4
  };
@@ -1,3 +1 @@
1
- export * from '../src/components/charts/StatCard'
2
- import StachelockUI from '../src/components/charts/StatCard'
3
- export default StachelockUI
1
+ export {}
@@ -1,4 +1,4 @@
1
- import { _ as f } from "../StatCard.vue_vue_type_script_setup_true_lang-DTOT0-WB.js";
1
+ import { _ as f } from "../StatCard.vue_vue_type_script_setup_true_lang-BfFupfmC.js";
2
2
  export {
3
3
  f as default
4
4
  };
@@ -1,3 +1,6 @@
1
1
  export * from '../src/components/charts/chartTheme'
2
+ export {}
2
3
  import StachelockUI from '../src/components/charts/chartTheme'
3
4
  export default StachelockUI
5
+ export * from '../src/components/charts/chartTheme'
6
+ export {}
@@ -1 +1,2 @@
1
1
  export * from '../src/components/charts/index'
2
+ export {}
@@ -1,10 +1,10 @@
1
- import { _ as o } from "../BarChart.vue_vue_type_script_setup_true_lang-Dnuzd7vZ.js";
1
+ import { _ as o } from "../BarChart.vue_vue_type_script_setup_true_lang-xCb0DCbf.js";
2
2
  import { default as e } from "./BaseChart.js";
3
- import { _ as f } from "../FunnelChart.vue_vue_type_script_setup_true_lang-B8QYlJ-s.js";
4
- import { _ as n } from "../LineChart.vue_vue_type_script_setup_true_lang-DszQ-a5L.js";
5
- import { _ as i } from "../PieChart.vue_vue_type_script_setup_true_lang-DJRcsty7.js";
6
- import { _ as s } from "../SparklineChart.vue_vue_type_script_setup_true_lang-DDTcpEjy.js";
7
- import { _ as x } from "../StatCard.vue_vue_type_script_setup_true_lang-DTOT0-WB.js";
3
+ import { _ as f } from "../FunnelChart.vue_vue_type_script_setup_true_lang-B4pH6xCV.js";
4
+ import { _ as n } from "../LineChart.vue_vue_type_script_setup_true_lang-DJo0edLJ.js";
5
+ import { _ as i } from "../PieChart.vue_vue_type_script_setup_true_lang-e3wsA9O4.js";
6
+ import { _ as s } from "../SparklineChart.vue_vue_type_script_setup_true_lang-BlNk5ZqM.js";
7
+ import { _ as x } from "../StatCard.vue_vue_type_script_setup_true_lang-BfFupfmC.js";
8
8
  import { areaChartConfig as _, barChartConfig as b, baseTheme as c, chartColors as u, chartTypography as d, formatDuration as T, formatNumber as k, formatPercentage as y, funnelChartConfig as B, getAreaGradient as P, hexToRgb as R, lineChartConfig as S, pieChartConfig as A, stachelockColors as D, toRgba as F } from "./chartTheme.js";
9
9
  export {
10
10
  o as BarChart,
@@ -1,3 +1 @@
1
- export * from '../src/components/UiAvatar'
2
- import StachelockUI from '../src/components/UiAvatar'
3
- export default StachelockUI
1
+ export {}
@@ -1,4 +1,4 @@
1
- import { _ as f } from "../UiAvatar.vue_vue_type_script_setup_true_lang-Ci7VLRZx.js";
1
+ import { _ as f } from "../UiAvatar.vue_vue_type_script_setup_true_lang-WVY6JbUL.js";
2
2
  export {
3
3
  f as default
4
4
  };
@@ -1,3 +1 @@
1
- export * from '../src/components/UiBadge'
2
- import StachelockUI from '../src/components/UiBadge'
3
- export default StachelockUI
1
+ export {}
@@ -1,4 +1,4 @@
1
- import { _ as f } from "../UiBadge.vue_vue_type_script_setup_true_lang-CV8WVEXL.js";
1
+ import { _ as f } from "../UiBadge.vue_vue_type_script_setup_true_lang-DOtbLb9x.js";
2
2
  export {
3
3
  f as default
4
4
  };
@@ -1,3 +1 @@
1
- export * from '../src/components/UiBanner'
2
- import StachelockUI from '../src/components/UiBanner'
3
- export default StachelockUI
1
+ export {}