@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":"NavigationItem.vue_vue_type_script_setup_true_lang-CEsuYl3S.js","sources":["../src/components/layouts/NavigationItem.vue"],"sourcesContent":["<template>\n <li>\n <a :href=\"href\" :class=\"[\n 'sl-group sl-flex sl-gap-x-3 sl-rounded-md sl-p-2 sl-text-sm sl-leading-6 sl-font-semibold',\n isActive \n ? 'sl-bg-stachelock-400'\n : 'hover:sl-bg-white/10'\n ]\"\n :style=\"{\n color: isActive \n ? '#fef2f2' \n : '#fca5a5',\n backgroundColor: isActive \n ? '#f87171' \n : 'transparent'\n }\">\n <component \n :is=\"icon\" \n :class=\"[\n 'sl-h-6 sl-w-6 sl-shrink-0'\n ]\"\n :style=\"{\n color: isActive \n ? '#fef2f2' \n : '#fca5a5'\n }\" \n aria-hidden=\"true\" \n />\n <span v-if=\"!iconOnly\" class=\"sl-truncate\">{{ name }}</span>\n <span v-if=\"badge\" :class=\"[\n 'sl-ml-auto sl-inline-flex sl-items-center sl-rounded-md sl-px-2 sl-py-1 sl-text-xs sl-font-medium',\n badgeTheme === 'primary' ? 'sl-bg-stachelock-400 sl-text-white' : '',\n badgeTheme === 'secondary' ? 'sl-bg-gray-400 sl-text-white' : '',\n badgeTheme === 'success' ? 'sl-bg-green-400 sl-text-white' : '',\n badgeTheme === 'warning' ? 'sl-bg-yellow-400 sl-text-white' : '',\n badgeTheme === 'danger' ? 'sl-bg-red-400 sl-text-white' : ''\n ]\">\n {{ badge }}\n </span>\n </a>\n </li>\n</template>\n\n<script setup lang=\"ts\">\nimport type { Component } from 'vue';\n\ndefineProps<{\n name: string;\n href: string;\n icon: Component;\n isActive?: boolean;\n iconOnly?: boolean;\n badge?: string;\n badgeTheme?: 'primary' | 'secondary' | 'success' | 'warning' | 'danger';\n}>();\n</script>\n\n<style scoped>\n</style>\n"],"names":["_createElementBlock","_createElementVNode","href","_normalizeClass","isActive","_normalizeStyle","_openBlock","_createBlock","_resolveDynamicComponent","icon","iconOnly","_hoisted_2","_toDisplayString","name","badge","badgeTheme"],"mappings":";;;;;;;;;;;;;;;;2BACEA,EAuCK,MAAA,MAAA;AAAA,MAtCHC,EAqCI,KAAA;AAAA,QArCA,MAAMC,EAAAA;AAAAA,QAAa,OAAKC,EAAA;AAAA;UAAiHC,EAAAA;;QAM1I,OAAKC,EAAA;AAAA,iBAAmBD,EAAAA;2BAAiFA,EAAAA;;;SAQ1GE,KAAAC,EAWEC,EAVKC,EAAAA,IAAI,GAAA;AAAA,UACR,OAAKN,EAAE;AAAA;WAEP;AAAA,UACA,OAAKE,EAAA;AAAA,mBAAqBD,EAAAA;;UAK3B,eAAY;AAAA,QAAA;QAEDM,EAAAA,6BAAbV,EAA4D,QAA5DW,GAA4DC,EAAdC,EAAAA,IAAI,GAAA,CAAA;AAAA,QACtCC,EAAAA,cAAZd,EASO,QAAA;AAAA;UATa,OAAKG,EAAA;AAAA;YAAyHY,EAAAA,eAAU,YAAA,uCAAA;AAAA,YAAoEA,EAAAA,eAAU,cAAA,iCAAA;AAAA,YAAgEA,EAAAA,eAAU,YAAA,kCAAA;AAAA,YAA+DA,EAAAA,eAAU,YAAA,mCAAA;AAAA,YAAgEA,EAAAA,eAAU,WAAA,gCAAA;AAAA,UAAA;aAQlcD,EAAAA,KAAK,GAAA,CAAA;;;;;"}
1
+ {"version":3,"file":"NavigationItem.vue_vue_type_script_setup_true_lang-C8aX-84Q.js","sources":["../src/components/layouts/NavigationItem.vue"],"sourcesContent":["<template>\n <li>\n <a :href=\"href\" :class=\"[\n 'sl-group sl-flex sl-gap-x-3 sl-rounded-md sl-p-2 sl-text-sm sl-leading-6 sl-font-semibold',\n isActive \n ? 'sl-bg-stachelock-400'\n : 'hover:sl-bg-white/10'\n ]\"\n :style=\"{\n color: isActive \n ? '#fef2f2' \n : '#fca5a5',\n backgroundColor: isActive \n ? '#f87171' \n : 'transparent'\n }\">\n <component \n :is=\"icon\" \n :class=\"[\n 'sl-h-6 sl-w-6 sl-shrink-0'\n ]\"\n :style=\"{\n color: isActive \n ? '#fef2f2' \n : '#fca5a5'\n }\" \n aria-hidden=\"true\" \n />\n <span v-if=\"!iconOnly\" class=\"sl-truncate\">{{ name }}</span>\n <span v-if=\"badge\" :class=\"[\n 'sl-ml-auto sl-inline-flex sl-items-center sl-rounded-md sl-px-2 sl-py-1 sl-text-xs sl-font-medium',\n badgeTheme === 'primary' ? 'sl-bg-stachelock-400 sl-text-white' : '',\n badgeTheme === 'secondary' ? 'sl-bg-gray-400 sl-text-white' : '',\n badgeTheme === 'success' ? 'sl-bg-green-400 sl-text-white' : '',\n badgeTheme === 'warning' ? 'sl-bg-yellow-400 sl-text-white' : '',\n badgeTheme === 'danger' ? 'sl-bg-red-400 sl-text-white' : ''\n ]\">\n {{ badge }}\n </span>\n </a>\n </li>\n</template>\n\n<script setup lang=\"ts\">\nimport type { Component } from 'vue';\n\ndefineProps<{\n name: string;\n href: string;\n icon: Component;\n isActive?: boolean;\n iconOnly?: boolean;\n badge?: string;\n badgeTheme?: 'primary' | 'secondary' | 'success' | 'warning' | 'danger';\n}>();\n</script>\n\n<style scoped>\n</style>\n"],"names":["_createElementBlock","_createElementVNode","__props","_normalizeClass","_normalizeStyle","_openBlock","_createBlock","_resolveDynamicComponent","_hoisted_2","_toDisplayString"],"mappings":";;;;;;;;;;;;;;;;2BACEA,EAuCK,MAAA,MAAA;AAAA,MAtCHC,EAqCI,KAAA;AAAA,QArCA,MAAMC,EAAA;AAAA,QAAa,OAAKC,EAAA;AAAA;UAAiHD,EAAA;;QAM1I,OAAKE,EAAA;AAAA,iBAAmBF,EAAA;2BAAiFA,EAAA;;;SAQ1GG,KAAAC,EAWEC,EAVKL,EAAA,IAAI,GAAA;AAAA,UACR,OAAKC,EAAE;AAAA;WAEP;AAAA,UACA,OAAKC,EAAA;AAAA,mBAAqBF,EAAA;;UAK3B,eAAY;AAAA,QAAA;QAEDA,EAAA,6BAAbF,EAA4D,QAA5DQ,GAA4DC,EAAdP,EAAA,IAAI,GAAA,CAAA;AAAA,QACtCA,EAAA,cAAZF,EASO,QAAA;AAAA;UATa,OAAKG,EAAA;AAAA;YAAyHD,EAAA,eAAU,YAAA,uCAAA;AAAA,YAAoEA,EAAA,eAAU,cAAA,iCAAA;AAAA,YAAgEA,EAAA,eAAU,YAAA,kCAAA;AAAA,YAA+DA,EAAA,eAAU,YAAA,mCAAA;AAAA,YAAgEA,EAAA,eAAU,WAAA,gCAAA;AAAA,UAAA;aAQlcA,EAAA,KAAK,GAAA,CAAA;;;;;"}
@@ -0,0 +1,277 @@
1
+ import { defineComponent as U, computed as e, createBlock as v, openBlock as r, unref as y, withCtx as k, createElementVNode as o, normalizeStyle as w, normalizeClass as n, createVNode as C, createElementBlock as c, createCommentVNode as d, resolveDynamicComponent as Z, toDisplayString as h, Fragment as _, renderList as tt, withModifiers as $ } from "vue";
2
+ import { r as g, a as st } from "./InformationCircleIcon-B322GNIt.js";
3
+ import { r as z } from "./ExclamationCircleIcon-DjxYk45_.js";
4
+ import { r as et } from "./ExclamationTriangleIcon-BNKYmV_J.js";
5
+ import { r as lt } from "./XMarkIcon-DNvCkiOy.js";
6
+ import { S as it, h as at } from "./transition-_rPfnoET.js";
7
+ const nt = { class: "sl-flex sl-items-start" }, rt = {
8
+ key: 1,
9
+ class: "sl-mt-3 sl-flex sl-gap-2"
10
+ }, ot = ["onClick"], yt = /* @__PURE__ */ U({
11
+ __name: "NotificationToast",
12
+ props: {
13
+ notification: {}
14
+ },
15
+ emits: ["close", "action"],
16
+ setup(i, { emit: S }) {
17
+ const s = i, m = S, B = () => {
18
+ m("close", s.notification);
19
+ }, I = (t) => {
20
+ m("action", s.notification, t);
21
+ }, M = () => {
22
+ s.notification.isCardMode && s.notification.cardStackIndex !== 0 && m("action", s.notification, { label: "bringToFront", action: "callback" });
23
+ }, A = () => {
24
+ }, O = e(() => {
25
+ const t = {
26
+ primary: "sl-bg-primary-600 dark:sl-bg-primary-700 sl-text-white",
27
+ secondary: "sl-bg-gray-600 dark:sl-bg-gray-700 sl-text-white",
28
+ dark: "sl-bg-gray-800 dark:sl-bg-gray-900 sl-text-white",
29
+ light: "sl-bg-white dark:sl-bg-gray-800 sl-text-gray-800 dark:sl-text-gray-100 sl-border sl-border-gray-200 dark:sl-border-gray-700",
30
+ warning: "sl-bg-amber-500 dark:sl-bg-amber-600 sl-text-white",
31
+ danger: "sl-bg-red-500 dark:sl-bg-red-600 sl-text-white",
32
+ success: "sl-bg-emerald-500 dark:sl-bg-emerald-600 sl-text-white",
33
+ info: "sl-bg-blue-500 dark:sl-bg-blue-600 sl-text-white",
34
+ ghost: "sl-bg-white dark:sl-bg-gray-800 sl-text-gray-800 dark:sl-text-gray-100 sl-border sl-border-gray-200 dark:sl-border-gray-700"
35
+ };
36
+ return t[s.notification.theme] || t.primary;
37
+ }), T = e(() => {
38
+ const t = {
39
+ default: "sl-w-full sl-max-w-sm",
40
+ compact: "sl-w-full sl-max-w-xs",
41
+ expanded: "sl-w-full sl-max-w-md"
42
+ };
43
+ return t[s.notification.variant] || t.default;
44
+ }), N = e(() => s.notification.priority === "urgent" ? "sl-animate-pulse" : ""), F = e(() => {
45
+ const t = "sl-absolute sl-top-0 sl-left-0 sl-right-0 sl-h-1";
46
+ return s.notification.priority === "urgent" ? `${t} sl-bg-red-400 dark:sl-bg-red-500` : s.notification.priority === "high" ? `${t} sl-bg-amber-400 dark:sl-bg-amber-500` : "";
47
+ }), L = e(() => s.notification.isCardMode ? "sl-cursor-pointer hover:sl-scale-[1.02] sl-transition-transform" : ""), V = e(() => {
48
+ const t = {
49
+ maxWidth: `${s.notification.maxWidth || 384}px`,
50
+ position: "relative"
51
+ };
52
+ return s.notification.isCardMode && (t.transform = `translate(${s.notification.cardOffsetX || 0}px, ${s.notification.cardOffsetY || 0}px)`, t.zIndex = s.notification.zIndex || 1), t;
53
+ }), p = e(() => {
54
+ const t = s.notification.theme;
55
+ return ["light", "ghost"].includes(t) ? "sl-text-gray-800 dark:sl-text-gray-100" : "sl-text-white";
56
+ }), D = e(() => {
57
+ const t = s.notification.theme;
58
+ return ["light", "ghost"].includes(t) ? "sl-text-gray-500 dark:sl-text-gray-400" : "sl-text-white/90";
59
+ }), E = e(() => {
60
+ const t = {
61
+ primary: "focus:sl-ring-primary-400 dark:focus:sl-ring-primary-500",
62
+ secondary: "focus:sl-ring-gray-400 dark:focus:sl-ring-gray-500",
63
+ dark: "focus:sl-ring-gray-400 dark:focus:sl-ring-gray-500",
64
+ light: "focus:sl-ring-gray-300 dark:focus:sl-ring-gray-600",
65
+ warning: "focus:sl-ring-amber-300 dark:focus:sl-ring-amber-500",
66
+ danger: "focus:sl-ring-red-300 dark:focus:sl-ring-red-500",
67
+ success: "focus:sl-ring-emerald-300 dark:focus:sl-ring-emerald-500",
68
+ info: "focus:sl-ring-blue-300 dark:focus:sl-ring-blue-500",
69
+ ghost: "focus:sl-ring-gray-300 dark:focus:sl-ring-gray-600"
70
+ };
71
+ return t[s.notification.theme] || t.primary;
72
+ }), W = e(() => {
73
+ const t = s.notification.theme, l = "sl-ml-4 sl-inline-flex sl-rounded-md sl-opacity-70 hover:sl-opacity-100 focus:sl-outline-none focus:sl-ring-2 focus:sl-ring-offset-2 sl-transition-opacity", a = ["light", "ghost"].includes(t) ? "sl-text-gray-400 dark:sl-text-gray-500 hover:sl-text-gray-500 dark:hover:sl-text-gray-400" : "sl-text-white/70 hover:sl-text-white";
74
+ return `${l} ${a}`;
75
+ }), x = e(() => {
76
+ if (s.notification.icon)
77
+ return s.notification.icon;
78
+ const t = s.notification.theme, l = {
79
+ primary: g,
80
+ secondary: g,
81
+ dark: z,
82
+ light: g,
83
+ warning: et,
84
+ danger: z,
85
+ success: st,
86
+ info: g,
87
+ ghost: g
88
+ };
89
+ return l[t] || l.primary;
90
+ }), R = e(() => {
91
+ const t = {
92
+ compact: "sl-h-5 sl-w-5",
93
+ default: "sl-h-6 sl-w-6",
94
+ expanded: "sl-h-7 sl-w-7"
95
+ };
96
+ return t[s.notification.variant] || t.default;
97
+ }), X = e(() => {
98
+ const t = {
99
+ compact: "sl-text-xs sl-font-medium",
100
+ default: "sl-text-sm sl-font-medium",
101
+ expanded: "sl-text-base sl-font-semibold"
102
+ };
103
+ return t[s.notification.variant] || t.default;
104
+ }), Y = e(() => {
105
+ const t = {
106
+ compact: "sl-mt-0.5 sl-text-xs",
107
+ default: "sl-mt-1 sl-text-sm",
108
+ expanded: "sl-mt-2 sl-text-sm"
109
+ };
110
+ return t[s.notification.variant] || t.default;
111
+ }), j = e(() => {
112
+ const t = {
113
+ compact: "sl-p-3",
114
+ default: "sl-p-4",
115
+ expanded: "sl-p-5"
116
+ };
117
+ return t[s.notification.variant] || t.default;
118
+ }), q = e(() => {
119
+ const t = {
120
+ compact: "sl-ml-2 sl-w-0 sl-flex-1",
121
+ default: "sl-ml-3 sl-w-0 sl-flex-1 sl-pt-0.5",
122
+ expanded: "sl-ml-4 sl-w-0 sl-flex-1 sl-pt-0.5"
123
+ };
124
+ return t[s.notification.variant] || t.default;
125
+ }), G = (t) => {
126
+ const l = "sl-rounded sl-px-2 sl-py-1 sl-text-xs sl-font-medium sl-transition-colors focus:sl-outline-none focus:sl-ring-2 focus:sl-ring-offset-1", a = s.notification.theme, f = ["light", "ghost"].includes(a), u = {
127
+ primary: {
128
+ light: "sl-bg-primary-100 sl-text-primary-700 hover:sl-bg-primary-200 dark:sl-bg-primary-800 dark:sl-text-primary-200 dark:hover:sl-bg-primary-700",
129
+ dark: "sl-bg-white/20 sl-text-white hover:sl-bg-white/30"
130
+ },
131
+ secondary: {
132
+ light: "sl-bg-gray-100 sl-text-gray-700 hover:sl-bg-gray-200 dark:sl-bg-gray-700 dark:sl-text-gray-200 dark:hover:sl-bg-gray-600",
133
+ dark: "sl-bg-white/20 sl-text-white hover:sl-bg-white/30"
134
+ },
135
+ danger: {
136
+ light: "sl-bg-red-100 sl-text-red-700 hover:sl-bg-red-200 dark:sl-bg-red-900 dark:sl-text-red-200 dark:hover:sl-bg-red-800",
137
+ dark: "sl-bg-white/20 sl-text-white hover:sl-bg-white/30"
138
+ }
139
+ }, Q = t.theme || "secondary", b = u[Q] || u.secondary;
140
+ return `${l} ${f ? b.light : b.dark}`;
141
+ }, H = e(() => {
142
+ const t = s.notification.position;
143
+ return {
144
+ tr: "sl-items-end",
145
+ tl: "sl-items-start",
146
+ bl: "sl-items-start",
147
+ br: "sl-items-end",
148
+ tc: "sl-items-center",
149
+ bc: "sl-items-center"
150
+ }[t] || "sl-items-end";
151
+ }), J = e(() => {
152
+ const t = s.notification.position;
153
+ return {
154
+ tr: "sl-items-start",
155
+ tl: "sl-items-start",
156
+ bl: "sl-items-end",
157
+ br: "sl-items-end",
158
+ tc: "sl-items-start",
159
+ bc: "sl-items-end"
160
+ }[t] || "sl-items-end";
161
+ }), K = e(() => {
162
+ const t = s.notification.position, l = {
163
+ tr: "sl-translate-y-4 sl-opacity-0 sm:sl-translate-y-0 sm:sl-translate-x-4",
164
+ tl: "sl-translate-y-4 sl-opacity-0 sm:sl-translate-y-0 sm:-sl-translate-x-4",
165
+ br: "sl-translate-y-4 sl-opacity-0 sm:sl-translate-y-0 sm:sl-translate-x-4",
166
+ bl: "sl-translate-y-4 sl-opacity-0 sm:sl-translate-y-0 sm:-sl-translate-x-4",
167
+ tc: "-sl-translate-y-4 sl-opacity-0",
168
+ bc: "sl-translate-y-4 sl-opacity-0"
169
+ };
170
+ return l[t] || l.br;
171
+ }), P = e(() => {
172
+ const t = s.notification.position, l = s.notification.yOffset || 0, a = {
173
+ zIndex: 9999 + (s.notification.zIndex || 0)
174
+ };
175
+ return ["tl", "tr", "tc"].includes(t) ? a.marginTop = `${l}px` : a.marginBottom = `${l}px`, a;
176
+ });
177
+ return (t, l) => (r(), v(y(it), {
178
+ appear: "",
179
+ show: i.notification.isOpen,
180
+ as: "template",
181
+ onAfterLeave: A
182
+ }, {
183
+ default: k(() => [
184
+ o("div", {
185
+ "aria-live": "assertive",
186
+ class: n([
187
+ "sl-pointer-events-none sl-fixed sl-inset-0 sl-flex sl-px-4 sl-py-6 sm:sl-p-6",
188
+ J.value
189
+ ]),
190
+ style: w(P.value)
191
+ }, [
192
+ o("div", {
193
+ class: n(["sl-flex sl-w-full sl-flex-col sl-items-center sl-space-y-4", H.value])
194
+ }, [
195
+ C(y(at), {
196
+ as: "template",
197
+ enter: "sl-duration-300 sl-ease-out sl-transform",
198
+ "enter-from": K.value,
199
+ "enter-to": "sl-translate-y-0 sl-opacity-100 sm:sl-translate-x-0",
200
+ leave: "sl-duration-200 sl-ease-in",
201
+ "leave-from": "sl-opacity-100",
202
+ "leave-to": "sl-opacity-0"
203
+ }, {
204
+ default: k(() => [
205
+ i.notification.isOpen ? (r(), c("div", {
206
+ key: 0,
207
+ class: n([
208
+ O.value,
209
+ T.value,
210
+ N.value,
211
+ L.value,
212
+ "sl-pointer-events-auto sl-overflow-hidden sl-rounded-lg sl-shadow-lg sl-ring-1 sl-ring-black/5 dark:sl-ring-white/10 sl-transition-all sl-duration-200"
213
+ ]),
214
+ style: w(V.value),
215
+ onClick: M
216
+ }, [
217
+ o("div", {
218
+ class: n(j.value)
219
+ }, [
220
+ o("div", nt, [
221
+ x.value ? (r(), v(Z(x.value), {
222
+ key: 0,
223
+ class: n([R.value, D.value, "sl-flex-shrink-0"]),
224
+ "aria-hidden": "true"
225
+ }, null, 8, ["class"])) : d("", !0),
226
+ o("div", {
227
+ class: n(q.value)
228
+ }, [
229
+ o("p", {
230
+ class: n([X.value, p.value])
231
+ }, h(i.notification.title), 3),
232
+ i.notification.message ? (r(), c("p", {
233
+ key: 0,
234
+ class: n([Y.value, p.value, "sl-opacity-90"])
235
+ }, h(i.notification.message), 3)) : d("", !0),
236
+ i.notification.actions && i.notification.actions.length > 0 ? (r(), c("div", rt, [
237
+ (r(!0), c(_, null, tt(i.notification.actions, (a, f) => (r(), c("button", {
238
+ key: f,
239
+ type: "button",
240
+ class: n(G(a)),
241
+ onClick: $((u) => I(a), ["stop"])
242
+ }, h(a.label), 11, ot))), 128))
243
+ ])) : d("", !0)
244
+ ], 2),
245
+ i.notification.dismissible !== !1 ? (r(), c("button", {
246
+ key: 1,
247
+ type: "button",
248
+ onClick: $(B, ["stop"]),
249
+ class: n([W.value, E.value])
250
+ }, [
251
+ l[0] || (l[0] = o("span", { class: "sl-sr-only" }, "Close", -1)),
252
+ C(y(lt), {
253
+ class: "sl-h-5 sl-w-5",
254
+ "aria-hidden": "true"
255
+ })
256
+ ], 2)) : d("", !0)
257
+ ])
258
+ ], 2),
259
+ i.notification.priority === "urgent" || i.notification.priority === "high" ? (r(), c("div", {
260
+ key: 0,
261
+ class: n(F.value)
262
+ }, null, 2)) : d("", !0)
263
+ ], 6)) : d("", !0)
264
+ ]),
265
+ _: 1
266
+ }, 8, ["enter-from"])
267
+ ], 2)
268
+ ], 6)
269
+ ]),
270
+ _: 1
271
+ }, 8, ["show"]));
272
+ }
273
+ });
274
+ export {
275
+ yt as _
276
+ };
277
+ //# sourceMappingURL=NotificationToast.vue_vue_type_script_setup_true_lang-DZxcEZkP.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NotificationToast.vue_vue_type_script_setup_true_lang-DZxcEZkP.js","sources":["../src/components/notifications/NotificationToast.vue"],"sourcesContent":["<!--\n @component NotificationToast\n @description Individual notification toast with animations, theming, and dark mode support\n \n Displays a single notification with icon, title, message, actions, and close button.\n Supports multiple themes, variants, positions, and card stacking with smooth transitions.\n \n ## Features\n - Multiple themes with dark mode support\n - Three variants: default, compact, expanded\n - Action buttons with dismiss, link, and callback support\n - Card stacking mode for multiple notifications\n - Priority-based styling (low, normal, high, urgent)\n - Smooth enter/leave transitions\n \n @props\n - notification (NotificationState): The notification data object\n \n @emits\n - close: Emitted when the close button is clicked\n - action: Emitted when an action button is clicked\n \n @example\n <NotificationToast \n :notification=\"notification\" \n @close=\"handleClose\"\n @action=\"handleAction\"\n />\n-->\n<template>\n <TransitionRoot \n appear \n :show=\"notification.isOpen\" \n as=\"template\" \n @after-leave=\"onAfterLeave\"\n >\n <div \n aria-live=\"assertive\" \n :class=\"[\n 'sl-pointer-events-none sl-fixed sl-inset-0 sl-flex sl-px-4 sl-py-6 sm:sl-p-6',\n verticalAlignClass\n ]\"\n :style=\"containerStyle\"\n >\n <div \n class=\"sl-flex sl-w-full sl-flex-col sl-items-center sl-space-y-4\" \n :class=\"horizontalAlignClass\"\n >\n <TransitionChild \n as=\"template\" \n enter=\"sl-duration-300 sl-ease-out sl-transform\"\n :enter-from=\"enterFromClass\"\n enter-to=\"sl-translate-y-0 sl-opacity-100 sm:sl-translate-x-0\" \n leave=\"sl-duration-200 sl-ease-in\"\n leave-from=\"sl-opacity-100\" \n leave-to=\"sl-opacity-0\"\n >\n <div \n v-if=\"notification.isOpen\" \n :class=\"[\n themeClass,\n variantClass,\n priorityClass,\n cardModeClass,\n 'sl-pointer-events-auto sl-overflow-hidden sl-rounded-lg sl-shadow-lg sl-ring-1 sl-ring-black/5 dark:sl-ring-white/10 sl-transition-all sl-duration-200'\n ]\"\n :style=\"cardStyle\"\n @click=\"handleCardClick\"\n >\n <div :class=\"paddingClass\">\n <div class=\"sl-flex sl-items-start\">\n <!-- Icon -->\n <component \n v-if=\"iconComponent\"\n :is=\"iconComponent\" \n :class=\"[iconSizeClass, iconColorClass, 'sl-flex-shrink-0']\"\n aria-hidden=\"true\" \n />\n \n <!-- Content -->\n <div :class=\"contentMarginClass\">\n <!-- Title -->\n <p :class=\"[titleClass, textColorClass]\">\n {{ notification.title }}\n </p>\n \n <!-- Message -->\n <p \n v-if=\"notification.message\" \n :class=\"[messageClass, textColorClass, 'sl-opacity-90']\"\n >\n {{ notification.message }}\n </p>\n \n <!-- Actions -->\n <div \n v-if=\"notification.actions && notification.actions.length > 0\"\n class=\"sl-mt-3 sl-flex sl-gap-2\"\n >\n <button\n v-for=\"(action, idx) in notification.actions\"\n :key=\"idx\"\n type=\"button\"\n :class=\"getActionButtonClass(action)\"\n @click.stop=\"handleAction(action)\"\n >\n {{ action.label }}\n </button>\n </div>\n </div>\n \n <!-- Close Button -->\n <button \n v-if=\"notification.dismissible !== false\"\n type=\"button\" \n @click.stop=\"handleClose\"\n :class=\"[closeButtonClass, focusRingClass]\"\n >\n <span class=\"sl-sr-only\">Close</span>\n <XMarkIcon class=\"sl-h-5 sl-w-5\" aria-hidden=\"true\" />\n </button>\n </div>\n </div>\n \n <!-- Priority indicator for urgent/high -->\n <div \n v-if=\"notification.priority === 'urgent' || notification.priority === 'high'\"\n :class=\"priorityIndicatorClass\"\n />\n </div>\n </TransitionChild>\n </div>\n </div>\n </TransitionRoot>\n</template>\n\n<script setup lang=\"ts\">\n/**\n * NotificationToast - Individual notification display\n * \n * Renders a single notification with theming, icons, actions, and animations.\n * Used internally by NotificationContainer but can be used standalone.\n */\nimport { computed, type Component } from 'vue';\nimport { \n CheckCircleIcon, \n ExclamationTriangleIcon, \n ExclamationCircleIcon, \n InformationCircleIcon \n} from '@heroicons/vue/24/outline';\nimport { XMarkIcon } from '@heroicons/vue/20/solid';\nimport { TransitionRoot, TransitionChild } from '@headlessui/vue';\nimport type { NotificationState, NotificationAction } from '../../composables/useNotifications';\n\nconst props = defineProps<{ \n notification: NotificationState \n}>();\n\nconst emit = defineEmits<{\n close: [notification: NotificationState];\n action: [notification: NotificationState, action: NotificationAction];\n}>();\n\nconst handleClose = () => {\n emit('close', props.notification);\n};\n\nconst handleAction = (action: NotificationAction) => {\n emit('action', props.notification, action);\n};\n\nconst handleCardClick = () => {\n // Clicking on a card in card mode brings it to front\n if (props.notification.isCardMode && props.notification.cardStackIndex !== 0) {\n emit('action', props.notification, { label: 'bringToFront', action: 'callback' });\n }\n};\n\nconst onAfterLeave = () => {\n // Animation cleanup callback\n};\n\n// Theme classes with dark mode support\nconst themeClass = computed(() => {\n const themes: Record<string, string> = {\n primary: 'sl-bg-primary-600 dark:sl-bg-primary-700 sl-text-white',\n secondary: 'sl-bg-gray-600 dark:sl-bg-gray-700 sl-text-white',\n dark: 'sl-bg-gray-800 dark:sl-bg-gray-900 sl-text-white',\n light: 'sl-bg-white dark:sl-bg-gray-800 sl-text-gray-800 dark:sl-text-gray-100 sl-border sl-border-gray-200 dark:sl-border-gray-700',\n warning: 'sl-bg-amber-500 dark:sl-bg-amber-600 sl-text-white',\n danger: 'sl-bg-red-500 dark:sl-bg-red-600 sl-text-white',\n success: 'sl-bg-emerald-500 dark:sl-bg-emerald-600 sl-text-white',\n info: 'sl-bg-blue-500 dark:sl-bg-blue-600 sl-text-white',\n ghost: 'sl-bg-white dark:sl-bg-gray-800 sl-text-gray-800 dark:sl-text-gray-100 sl-border sl-border-gray-200 dark:sl-border-gray-700',\n };\n return themes[props.notification.theme] || themes.primary;\n});\n\n// Variant classes\nconst variantClass = computed(() => {\n const variants: Record<string, string> = {\n default: 'sl-w-full sl-max-w-sm',\n compact: 'sl-w-full sl-max-w-xs',\n expanded: 'sl-w-full sl-max-w-md',\n };\n return variants[props.notification.variant] || variants.default;\n});\n\n// Priority classes\nconst priorityClass = computed(() => {\n if (props.notification.priority === 'urgent') {\n return 'sl-animate-pulse';\n }\n return '';\n});\n\n// Priority indicator\nconst priorityIndicatorClass = computed(() => {\n const base = 'sl-absolute sl-top-0 sl-left-0 sl-right-0 sl-h-1';\n if (props.notification.priority === 'urgent') {\n return `${base} sl-bg-red-400 dark:sl-bg-red-500`;\n }\n if (props.notification.priority === 'high') {\n return `${base} sl-bg-amber-400 dark:sl-bg-amber-500`;\n }\n return '';\n});\n\n// Card mode classes\nconst cardModeClass = computed(() => {\n if (props.notification.isCardMode) {\n return 'sl-cursor-pointer hover:sl-scale-[1.02] sl-transition-transform';\n }\n return '';\n});\n\n// Card style for stacking\nconst cardStyle = computed(() => {\n const styles: Record<string, string | number> = {\n maxWidth: `${props.notification.maxWidth || 384}px`,\n position: 'relative',\n };\n \n if (props.notification.isCardMode) {\n styles.transform = `translate(${props.notification.cardOffsetX || 0}px, ${props.notification.cardOffsetY || 0}px)`;\n styles.zIndex = props.notification.zIndex || 1;\n }\n \n return styles;\n});\n\n// Text color based on theme\nconst textColorClass = computed(() => {\n const theme = props.notification.theme;\n return ['light', 'ghost'].includes(theme) ? 'sl-text-gray-800 dark:sl-text-gray-100' : 'sl-text-white';\n});\n\n// Icon color\nconst iconColorClass = computed(() => {\n const theme = props.notification.theme;\n return ['light', 'ghost'].includes(theme) ? 'sl-text-gray-500 dark:sl-text-gray-400' : 'sl-text-white/90';\n});\n\n// Focus ring class\nconst focusRingClass = computed(() => {\n const rings: Record<string, string> = {\n primary: 'focus:sl-ring-primary-400 dark:focus:sl-ring-primary-500',\n secondary: 'focus:sl-ring-gray-400 dark:focus:sl-ring-gray-500',\n dark: 'focus:sl-ring-gray-400 dark:focus:sl-ring-gray-500',\n light: 'focus:sl-ring-gray-300 dark:focus:sl-ring-gray-600',\n warning: 'focus:sl-ring-amber-300 dark:focus:sl-ring-amber-500',\n danger: 'focus:sl-ring-red-300 dark:focus:sl-ring-red-500',\n success: 'focus:sl-ring-emerald-300 dark:focus:sl-ring-emerald-500',\n info: 'focus:sl-ring-blue-300 dark:focus:sl-ring-blue-500',\n ghost: 'focus:sl-ring-gray-300 dark:focus:sl-ring-gray-600',\n };\n return rings[props.notification.theme] || rings.primary;\n});\n\n// Close button class\nconst closeButtonClass = computed(() => {\n const theme = props.notification.theme;\n const baseClass = 'sl-ml-4 sl-inline-flex sl-rounded-md sl-opacity-70 hover:sl-opacity-100 focus:sl-outline-none focus:sl-ring-2 focus:sl-ring-offset-2 sl-transition-opacity';\n const colorClass = ['light', 'ghost'].includes(theme) \n ? 'sl-text-gray-400 dark:sl-text-gray-500 hover:sl-text-gray-500 dark:hover:sl-text-gray-400' \n : 'sl-text-white/70 hover:sl-text-white';\n return `${baseClass} ${colorClass}`;\n});\n\n// Icon component based on theme or custom\nconst iconComponent = computed((): Component | undefined => {\n // Allow custom icon override\n if (props.notification.icon) {\n return props.notification.icon;\n }\n \n const theme = props.notification.theme;\n const icons: Record<string, Component> = {\n primary: InformationCircleIcon,\n secondary: InformationCircleIcon,\n dark: ExclamationCircleIcon,\n light: InformationCircleIcon,\n warning: ExclamationTriangleIcon,\n danger: ExclamationCircleIcon,\n success: CheckCircleIcon,\n info: InformationCircleIcon,\n ghost: InformationCircleIcon,\n };\n return icons[theme] || icons.primary;\n});\n\n// Variant-specific sizing\nconst iconSizeClass = computed(() => {\n const sizes: Record<string, string> = {\n compact: 'sl-h-5 sl-w-5',\n default: 'sl-h-6 sl-w-6',\n expanded: 'sl-h-7 sl-w-7',\n };\n return sizes[props.notification.variant] || sizes.default;\n});\n\nconst titleClass = computed(() => {\n const sizes: Record<string, string> = {\n compact: 'sl-text-xs sl-font-medium',\n default: 'sl-text-sm sl-font-medium',\n expanded: 'sl-text-base sl-font-semibold',\n };\n return sizes[props.notification.variant] || sizes.default;\n});\n\nconst messageClass = computed(() => {\n const sizes: Record<string, string> = {\n compact: 'sl-mt-0.5 sl-text-xs',\n default: 'sl-mt-1 sl-text-sm',\n expanded: 'sl-mt-2 sl-text-sm',\n };\n return sizes[props.notification.variant] || sizes.default;\n});\n\nconst paddingClass = computed(() => {\n const sizes: Record<string, string> = {\n compact: 'sl-p-3',\n default: 'sl-p-4',\n expanded: 'sl-p-5',\n };\n return sizes[props.notification.variant] || sizes.default;\n});\n\nconst contentMarginClass = computed(() => {\n const sizes: Record<string, string> = {\n compact: 'sl-ml-2 sl-w-0 sl-flex-1',\n default: 'sl-ml-3 sl-w-0 sl-flex-1 sl-pt-0.5',\n expanded: 'sl-ml-4 sl-w-0 sl-flex-1 sl-pt-0.5',\n };\n return sizes[props.notification.variant] || sizes.default;\n});\n\n// Action button styling\nconst getActionButtonClass = (action: NotificationAction): string => {\n const base = 'sl-rounded sl-px-2 sl-py-1 sl-text-xs sl-font-medium sl-transition-colors focus:sl-outline-none focus:sl-ring-2 focus:sl-ring-offset-1';\n const theme = props.notification.theme;\n const isLightTheme = ['light', 'ghost'].includes(theme);\n \n const themes: Record<string, { light: string; dark: string }> = {\n primary: {\n light: 'sl-bg-primary-100 sl-text-primary-700 hover:sl-bg-primary-200 dark:sl-bg-primary-800 dark:sl-text-primary-200 dark:hover:sl-bg-primary-700',\n dark: 'sl-bg-white/20 sl-text-white hover:sl-bg-white/30'\n },\n secondary: {\n light: 'sl-bg-gray-100 sl-text-gray-700 hover:sl-bg-gray-200 dark:sl-bg-gray-700 dark:sl-text-gray-200 dark:hover:sl-bg-gray-600',\n dark: 'sl-bg-white/20 sl-text-white hover:sl-bg-white/30'\n },\n danger: {\n light: 'sl-bg-red-100 sl-text-red-700 hover:sl-bg-red-200 dark:sl-bg-red-900 dark:sl-text-red-200 dark:hover:sl-bg-red-800',\n dark: 'sl-bg-white/20 sl-text-white hover:sl-bg-white/30'\n }\n };\n \n const actionTheme = action.theme || 'secondary';\n const themeStyle = themes[actionTheme] || themes.secondary;\n \n return `${base} ${isLightTheme ? themeStyle.light : themeStyle.dark}`;\n};\n\n// Horizontal alignment based on position\nconst horizontalAlignClass = computed(() => {\n const position = props.notification.position;\n const alignments: Record<string, string> = {\n tr: 'sl-items-end',\n tl: 'sl-items-start',\n bl: 'sl-items-start',\n br: 'sl-items-end',\n tc: 'sl-items-center',\n bc: 'sl-items-center',\n };\n return alignments[position] || 'sl-items-end';\n});\n\n// Vertical alignment based on position\nconst verticalAlignClass = computed(() => {\n const position = props.notification.position;\n const alignments: Record<string, string> = {\n tr: 'sl-items-start',\n tl: 'sl-items-start',\n bl: 'sl-items-end',\n br: 'sl-items-end',\n tc: 'sl-items-start',\n bc: 'sl-items-end',\n };\n return alignments[position] || 'sl-items-end';\n});\n\n// Entry animation direction based on position\nconst enterFromClass = computed(() => {\n const position = props.notification.position;\n const classes: Record<string, string> = {\n tr: 'sl-translate-y-4 sl-opacity-0 sm:sl-translate-y-0 sm:sl-translate-x-4',\n tl: 'sl-translate-y-4 sl-opacity-0 sm:sl-translate-y-0 sm:-sl-translate-x-4',\n br: 'sl-translate-y-4 sl-opacity-0 sm:sl-translate-y-0 sm:sl-translate-x-4',\n bl: 'sl-translate-y-4 sl-opacity-0 sm:sl-translate-y-0 sm:-sl-translate-x-4',\n tc: '-sl-translate-y-4 sl-opacity-0',\n bc: 'sl-translate-y-4 sl-opacity-0',\n };\n return classes[position] || classes.br;\n});\n\n// Container style with offset\nconst containerStyle = computed(() => {\n const position = props.notification.position;\n const offset = props.notification.yOffset || 0;\n \n const styles: Record<string, string | number> = {\n zIndex: 9999 + (props.notification.zIndex || 0),\n };\n \n // Apply offset based on position (top or bottom)\n if (['tl', 'tr', 'tc'].includes(position)) {\n styles.marginTop = `${offset}px`;\n } else {\n styles.marginBottom = `${offset}px`;\n }\n \n return styles;\n});\n</script>\n"],"names":["props","__props","emit","__emit","handleClose","handleAction","action","handleCardClick","onAfterLeave","themeClass","computed","themes","variantClass","variants","priorityClass","priorityIndicatorClass","base","cardModeClass","cardStyle","styles","textColorClass","theme","iconColorClass","focusRingClass","rings","closeButtonClass","baseClass","colorClass","iconComponent","icons","InformationCircleIcon","ExclamationCircleIcon","ExclamationTriangleIcon","CheckCircleIcon","iconSizeClass","sizes","titleClass","messageClass","paddingClass","contentMarginClass","getActionButtonClass","isLightTheme","actionTheme","themeStyle","horizontalAlignClass","position","verticalAlignClass","enterFromClass","classes","containerStyle","offset","_createBlock","_unref","TransitionRoot","_createElementVNode","_normalizeClass","_createVNode","TransitionChild","_createElementBlock","_hoisted_1","_openBlock","_resolveDynamicComponent","_toDisplayString","_hoisted_2","_Fragment","idx","_withModifiers","$event","_hoisted_3","_cache","XMarkIcon"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { defineComponent as n, computed as s, createBlock as d, openBlock as h, mergeProps as p } from "vue";
2
- import c from "./charts/BaseChart.js";
3
- import { chartColors as f } from "./charts/chartTheme.js";
1
+ import { defineComponent as n, computed as s, createBlock as d, openBlock as h, mergeProps as c } from "vue";
2
+ import f from "./charts/BaseChart.js";
3
+ import { chartColors as u } from "./charts/chartTheme.js";
4
4
  const w = /* @__PURE__ */ n({
5
5
  __name: "PieChart",
6
6
  props: {
@@ -8,14 +8,14 @@ const w = /* @__PURE__ */ n({
8
8
  title: {},
9
9
  donut: { type: Boolean, default: !1 },
10
10
  height: { default: 300 },
11
- colors: { default: () => f.primary },
11
+ colors: { default: () => u.primary },
12
12
  loading: { type: Boolean, default: !1 },
13
13
  showLabels: { type: Boolean, default: !1 },
14
14
  showLegend: { type: Boolean, default: !0 }
15
15
  },
16
16
  emits: ["click"],
17
- setup(o, { emit: a }) {
18
- const e = o, l = a, r = s(() => ({
17
+ setup(t, { emit: a }) {
18
+ const e = t, l = a, i = s(() => ({
19
19
  title: e.title ? { text: e.title } : void 0,
20
20
  legend: e.showLegend ? {
21
21
  show: !0,
@@ -53,17 +53,17 @@ const w = /* @__PURE__ */ n({
53
53
  },
54
54
  data: e.data
55
55
  }]
56
- })), i = (t) => {
57
- l("click", t);
56
+ })), r = (o) => {
57
+ l("click", o);
58
58
  };
59
- return (t, u) => (h(), d(c, p({
60
- option: r.value,
59
+ return (o, p) => (h(), d(f, c({
60
+ option: i.value,
61
61
  height: t.height,
62
62
  loading: t.loading
63
- }, t.$attrs, { onClick: i }), null, 16, ["option", "height", "loading"]));
63
+ }, o.$attrs, { onClick: r }), null, 16, ["option", "height", "loading"]));
64
64
  }
65
65
  });
66
66
  export {
67
67
  w as _
68
68
  };
69
- //# sourceMappingURL=PieChart.vue_vue_type_script_setup_true_lang-DJRcsty7.js.map
69
+ //# sourceMappingURL=PieChart.vue_vue_type_script_setup_true_lang-e3wsA9O4.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PieChart.vue_vue_type_script_setup_true_lang-DJRcsty7.js","sources":["../src/components/charts/PieChart.vue"],"sourcesContent":["<!--\n @component PieChart\n @description Pie/Donut chart component.\n \n @props\n - data (array, required): Array of {name, value} objects\n - title (string, optional): Chart title\n - donut (boolean, optional): Render as donut chart\n - height (number|string, optional): Chart height\n - colors (array, optional): Custom color palette\n - showLabels (boolean, optional): Show segment labels\n \n @example\n <PieChart\n :data=\"[\n { name: 'Category A', value: 40 },\n { name: 'Category B', value: 30 },\n { name: 'Category C', value: 30 }\n ]\"\n title=\"Distribution\"\n donut\n />\n-->\n<template>\n <BaseChart\n :option=\"chartOption\"\n :height=\"height\"\n :loading=\"loading\"\n v-bind=\"$attrs\"\n @click=\"handleClick\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport { computed } from 'vue';\nimport BaseChart from './BaseChart.vue';\nimport { chartColors } from './chartTheme';\nimport type { EChartsOption } from 'echarts';\n\ninterface PieDataItem {\n name: string;\n value: number;\n}\n\ninterface Props {\n data: PieDataItem[];\n title?: string;\n donut?: boolean;\n height?: number | string;\n colors?: string[];\n loading?: boolean;\n showLabels?: boolean;\n showLegend?: boolean;\n}\n\nconst props = withDefaults(defineProps<Props>(), {\n donut: false,\n height: 300,\n colors: () => chartColors.primary,\n loading: false,\n showLabels: false,\n showLegend: true,\n});\n\nconst emit = defineEmits<{\n click: [params: unknown];\n}>();\n\nconst chartOption = computed<EChartsOption>(() => {\n return {\n title: props.title ? { text: props.title } : undefined,\n legend: props.showLegend ? { \n show: true,\n orient: 'horizontal',\n bottom: 0,\n } : { show: false },\n tooltip: {\n trigger: 'item',\n formatter: '{b}: {c} ({d}%)',\n },\n color: props.colors,\n series: [{\n type: 'pie',\n radius: props.donut ? ['40%', '70%'] : '70%',\n center: ['50%', '45%'],\n avoidLabelOverlap: true,\n itemStyle: {\n borderRadius: 4,\n borderColor: '#ffffff',\n borderWidth: 2,\n },\n label: {\n show: props.showLabels,\n position: props.donut ? 'center' : 'outside',\n },\n emphasis: {\n label: {\n show: true,\n fontSize: 14,\n fontWeight: 600,\n },\n },\n labelLine: {\n show: props.showLabels && !props.donut,\n },\n data: props.data,\n }],\n };\n});\n\nconst handleClick = (params: unknown): void => {\n emit('click', params);\n};\n</script>\n\n"],"names":["props","__props","emit","__emit","chartOption","computed","handleClick","params","_openBlock","_createBlock","BaseChart","_mergeProps","height","loading","$attrs"],"mappings":";;;;;;;;;;;;;;;;;AAuDA,UAAMA,IAAQC,GASRC,IAAOC,GAIPC,IAAcC,EAAwB,OACnC;AAAA,MACL,OAAOL,EAAM,QAAQ,EAAE,MAAMA,EAAM,UAAU;AAAA,MAC7C,QAAQA,EAAM,aAAa;AAAA,QACzB,MAAM;AAAA,QACN,QAAQ;AAAA,QACR,QAAQ;AAAA,MAAA,IACN,EAAE,MAAM,GAAA;AAAA,MACZ,SAAS;AAAA,QACP,SAAS;AAAA,QACT,WAAW;AAAA,MAAA;AAAA,MAEb,OAAOA,EAAM;AAAA,MACb,QAAQ,CAAC;AAAA,QACP,MAAM;AAAA,QACN,QAAQA,EAAM,QAAQ,CAAC,OAAO,KAAK,IAAI;AAAA,QACvC,QAAQ,CAAC,OAAO,KAAK;AAAA,QACrB,mBAAmB;AAAA,QACnB,WAAW;AAAA,UACT,cAAc;AAAA,UACd,aAAa;AAAA,UACb,aAAa;AAAA,QAAA;AAAA,QAEf,OAAO;AAAA,UACL,MAAMA,EAAM;AAAA,UACZ,UAAUA,EAAM,QAAQ,WAAW;AAAA,QAAA;AAAA,QAErC,UAAU;AAAA,UACR,OAAO;AAAA,YACL,MAAM;AAAA,YACN,UAAU;AAAA,YACV,YAAY;AAAA,UAAA;AAAA,QACd;AAAA,QAEF,WAAW;AAAA,UACT,MAAMA,EAAM,cAAc,CAACA,EAAM;AAAA,QAAA;AAAA,QAEnC,MAAMA,EAAM;AAAA,MAAA,CACb;AAAA,IAAA,EAEJ,GAEKM,IAAc,CAACC,MAA0B;AAC7C,MAAAL,EAAK,SAASK,CAAM;AAAA,IACtB;sBAxFEC,EAAA,GAAAC,EAMEC,GANFC,EAME;AAAA,MALC,QAAQP,EAAA;AAAA,MACR,QAAQQ,EAAAA;AAAAA,MACR,SAASC,EAAAA;AAAAA,IAAAA,GACFC,EAAAA,QAAM,EACb,SAAOR,EAAA,CAAW,GAAA,MAAA,IAAA,CAAA,UAAA,UAAA,SAAA,CAAA;AAAA;;"}
1
+ {"version":3,"file":"PieChart.vue_vue_type_script_setup_true_lang-e3wsA9O4.js","sources":["../src/components/charts/PieChart.vue"],"sourcesContent":["<!--\n @component PieChart\n @description Pie/Donut chart component.\n \n @props\n - data (array, required): Array of {name, value} objects\n - title (string, optional): Chart title\n - donut (boolean, optional): Render as donut chart\n - height (number|string, optional): Chart height\n - colors (array, optional): Custom color palette\n - showLabels (boolean, optional): Show segment labels\n \n @example\n <PieChart\n :data=\"[\n { name: 'Category A', value: 40 },\n { name: 'Category B', value: 30 },\n { name: 'Category C', value: 30 }\n ]\"\n title=\"Distribution\"\n donut\n />\n-->\n<template>\n <BaseChart\n :option=\"chartOption\"\n :height=\"height\"\n :loading=\"loading\"\n v-bind=\"$attrs\"\n @click=\"handleClick\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport { computed } from 'vue';\nimport BaseChart from './BaseChart.vue';\nimport { chartColors } from './chartTheme';\nimport type { EChartsOption } from 'echarts';\n\ninterface PieDataItem {\n name: string;\n value: number;\n}\n\ninterface Props {\n data: PieDataItem[];\n title?: string;\n donut?: boolean;\n height?: number | string;\n colors?: string[];\n loading?: boolean;\n showLabels?: boolean;\n showLegend?: boolean;\n}\n\nconst props = withDefaults(defineProps<Props>(), {\n donut: false,\n height: 300,\n colors: () => chartColors.primary,\n loading: false,\n showLabels: false,\n showLegend: true,\n});\n\nconst emit = defineEmits<{\n click: [params: unknown];\n}>();\n\nconst chartOption = computed<EChartsOption>(() => {\n return {\n title: props.title ? { text: props.title } : undefined,\n legend: props.showLegend ? { \n show: true,\n orient: 'horizontal',\n bottom: 0,\n } : { show: false },\n tooltip: {\n trigger: 'item',\n formatter: '{b}: {c} ({d}%)',\n },\n color: props.colors,\n series: [{\n type: 'pie',\n radius: props.donut ? ['40%', '70%'] : '70%',\n center: ['50%', '45%'],\n avoidLabelOverlap: true,\n itemStyle: {\n borderRadius: 4,\n borderColor: '#ffffff',\n borderWidth: 2,\n },\n label: {\n show: props.showLabels,\n position: props.donut ? 'center' : 'outside',\n },\n emphasis: {\n label: {\n show: true,\n fontSize: 14,\n fontWeight: 600,\n },\n },\n labelLine: {\n show: props.showLabels && !props.donut,\n },\n data: props.data,\n }],\n };\n});\n\nconst handleClick = (params: unknown): void => {\n emit('click', params);\n};\n</script>\n\n"],"names":["props","__props","emit","__emit","chartOption","computed","handleClick","params","_openBlock","_createBlock","BaseChart","_mergeProps","$attrs"],"mappings":";;;;;;;;;;;;;;;;;AAuDA,UAAMA,IAAQC,GASRC,IAAOC,GAIPC,IAAcC,EAAwB,OACnC;AAAA,MACL,OAAOL,EAAM,QAAQ,EAAE,MAAMA,EAAM,UAAU;AAAA,MAC7C,QAAQA,EAAM,aAAa;AAAA,QACzB,MAAM;AAAA,QACN,QAAQ;AAAA,QACR,QAAQ;AAAA,MAAA,IACN,EAAE,MAAM,GAAA;AAAA,MACZ,SAAS;AAAA,QACP,SAAS;AAAA,QACT,WAAW;AAAA,MAAA;AAAA,MAEb,OAAOA,EAAM;AAAA,MACb,QAAQ,CAAC;AAAA,QACP,MAAM;AAAA,QACN,QAAQA,EAAM,QAAQ,CAAC,OAAO,KAAK,IAAI;AAAA,QACvC,QAAQ,CAAC,OAAO,KAAK;AAAA,QACrB,mBAAmB;AAAA,QACnB,WAAW;AAAA,UACT,cAAc;AAAA,UACd,aAAa;AAAA,UACb,aAAa;AAAA,QAAA;AAAA,QAEf,OAAO;AAAA,UACL,MAAMA,EAAM;AAAA,UACZ,UAAUA,EAAM,QAAQ,WAAW;AAAA,QAAA;AAAA,QAErC,UAAU;AAAA,UACR,OAAO;AAAA,YACL,MAAM;AAAA,YACN,UAAU;AAAA,YACV,YAAY;AAAA,UAAA;AAAA,QACd;AAAA,QAEF,WAAW;AAAA,UACT,MAAMA,EAAM,cAAc,CAACA,EAAM;AAAA,QAAA;AAAA,QAEnC,MAAMA,EAAM;AAAA,MAAA,CACb;AAAA,IAAA,EAEJ,GAEKM,IAAc,CAACC,MAA0B;AAC7C,MAAAL,EAAK,SAASK,CAAM;AAAA,IACtB;sBAxFEC,EAAA,GAAAC,EAMEC,GANFC,EAME;AAAA,MALC,QAAQP,EAAA;AAAA,MACR,QAAQH,EAAA;AAAA,MACR,SAASA,EAAA;AAAA,IAAA,GACFW,EAAAA,QAAM,EACb,SAAON,EAAA,CAAW,GAAA,MAAA,IAAA,CAAA,UAAA,UAAA,SAAA,CAAA;AAAA;;"}
@@ -0,0 +1,130 @@
1
+ import { defineComponent as $, ref as m, computed as n, onMounted as j, onBeforeUnmount as B, createElementBlock as o, openBlock as a, createElementVNode as r, createVNode as U, createCommentVNode as u, normalizeStyle as v, normalizeClass as k, renderSlot as f, createBlock as I, toDisplayString as c, Transition as R, withCtx as S } from "vue";
2
+ import M from "./components/CloudinaryImage.js";
3
+ const P = { class: "sl-relative sl-flex sl-items-center sl-gap-3" }, T = ["aria-expanded"], V = ["src", "alt"], O = {
4
+ key: 2,
5
+ class: "sl-w-full sl-h-full sl-inline-flex sl-items-center sl-justify-center sl-bg-stachelock-200 dark:sl-bg-stachelock-700"
6
+ }, A = { class: "sl-p-4 sl-border-b sl-border-gray-200 dark:sl-border-slate-700" }, D = { class: "sl-text-sm sl-font-medium sl-text-gray-900 dark:sl-text-white" }, H = { class: "sl-text-xs sl-text-gray-500 dark:sl-text-slate-400" }, K = {
7
+ key: 0,
8
+ class: "sl-py-1"
9
+ }, J = /* @__PURE__ */ $({
10
+ __name: "ProfileHeaderAvatar",
11
+ props: {
12
+ userName: {},
13
+ userEmail: { default: "" },
14
+ imagePublicId: {},
15
+ imageUrl: {},
16
+ showLogout: { type: Boolean, default: !0 },
17
+ logoutLabel: { default: "Log Out" },
18
+ size: { default: 40 },
19
+ ringColorClass: { default: "sl-ring-stachelock-400" },
20
+ menuTop: { default: "3rem" },
21
+ menuRight: { default: "0" }
22
+ },
23
+ emits: ["logout", "menu-toggle"],
24
+ setup(e, { expose: y, emit: b }) {
25
+ const s = e, d = b, l = m(!1), x = m(null), p = m(null), w = n(() => s.userName ? s.userName.split(" ").map((t) => t[0]).join("").toUpperCase().slice(0, 2) : "U"), C = n(() => `hover:sl-ring-2 hover:${s.ringColorClass}`), z = n(() => `sl-ring-2 ${s.ringColorClass}`), N = n(() => s.size < 32 ? "sl-text-xs" : s.size < 48 ? "sl-text-sm" : "sl-text-base"), E = n(() => ({
26
+ top: s.menuTop,
27
+ right: s.menuRight
28
+ })), g = () => {
29
+ l.value = !l.value, d("menu-toggle", l.value);
30
+ }, i = () => {
31
+ l.value && (l.value = !1, d("menu-toggle", !1));
32
+ }, L = () => {
33
+ i(), d("logout");
34
+ }, h = (t) => {
35
+ t.key === "Escape" && i();
36
+ };
37
+ return j(() => {
38
+ document.addEventListener("keydown", h);
39
+ }), B(() => {
40
+ document.removeEventListener("keydown", h);
41
+ }), y({
42
+ toggleMenu: g,
43
+ closeMenu: i,
44
+ isMenuOpen: l
45
+ }), (t, q) => (a(), o("div", P, [
46
+ r("button", {
47
+ ref_key: "avatarButton",
48
+ ref: x,
49
+ type: "button",
50
+ onClick: g,
51
+ class: k(["sl-relative sl-inline-flex sl-items-center sl-justify-center sl-rounded-full sl-overflow-hidden sl-transition-all sl-flex-shrink-0 focus:sl-outline-none", [
52
+ C.value,
53
+ { [z.value]: l.value }
54
+ ]]),
55
+ style: v({ width: `${e.size}px`, height: `${e.size}px` }),
56
+ "aria-expanded": l.value,
57
+ "aria-haspopup": "true"
58
+ }, [
59
+ f(t.$slots, "avatar", {}, () => [
60
+ e.imagePublicId ? (a(), I(M, {
61
+ key: 0,
62
+ "public-id": e.imagePublicId,
63
+ alt: e.userName,
64
+ width: e.size,
65
+ height: e.size,
66
+ "custom-classes": { image: { "sl-w-full sl-h-full sl-object-cover sl-object-center": !0 } },
67
+ skeleton: "user"
68
+ }, null, 8, ["public-id", "alt", "width", "height"])) : e.imageUrl ? (a(), o("img", {
69
+ key: 1,
70
+ src: e.imageUrl,
71
+ alt: e.userName,
72
+ class: "sl-w-full sl-h-full sl-object-cover sl-object-center"
73
+ }, null, 8, V)) : (a(), o("div", O, [
74
+ r("span", {
75
+ class: k(["sl-font-semibold sl-text-stachelock-700 dark:sl-text-stachelock-200", N.value])
76
+ }, c(w.value), 3)
77
+ ]))
78
+ ])
79
+ ], 14, T),
80
+ U(R, {
81
+ "enter-active-class": "sl-transition sl-ease-out sl-duration-100",
82
+ "enter-from-class": "sl-transform sl-opacity-0 sl-scale-95",
83
+ "enter-to-class": "sl-transform sl-opacity-100 sl-scale-100",
84
+ "leave-active-class": "sl-transition sl-ease-in sl-duration-75",
85
+ "leave-from-class": "sl-transform sl-opacity-100 sl-scale-100",
86
+ "leave-to-class": "sl-transform sl-opacity-0 sl-scale-95"
87
+ }, {
88
+ default: S(() => [
89
+ l.value ? (a(), o("div", {
90
+ key: 0,
91
+ ref_key: "menuRef",
92
+ ref: p,
93
+ class: "sl-absolute sl-bg-white dark:sl-bg-slate-800 sl-rounded-lg sl-shadow-lg sl-border sl-border-gray-200 dark:sl-border-slate-700 sl-z-50 sl-min-w-max sl-overflow-hidden",
94
+ style: v(E.value),
95
+ role: "menu",
96
+ "aria-orientation": "vertical"
97
+ }, [
98
+ r("div", A, [
99
+ f(t.$slots, "menu-header", {}, () => [
100
+ r("p", D, c(e.userName), 1),
101
+ r("p", H, c(e.userEmail), 1)
102
+ ])
103
+ ]),
104
+ t.$slots["menu-items"] ? (a(), o("div", K, [
105
+ f(t.$slots, "menu-items")
106
+ ])) : u("", !0),
107
+ e.showLogout ? (a(), o("button", {
108
+ key: 1,
109
+ type: "button",
110
+ onClick: L,
111
+ class: "sl-w-full sl-text-left sl-px-4 sl-py-2 sl-text-sm sl-text-red-600 dark:sl-text-red-400 hover:sl-bg-red-50 dark:hover:sl-bg-red-900/20 sl-transition-colors",
112
+ role: "menuitem"
113
+ }, c(e.logoutLabel), 1)) : u("", !0)
114
+ ], 4)) : u("", !0)
115
+ ]),
116
+ _: 3
117
+ }),
118
+ l.value ? (a(), o("div", {
119
+ key: 0,
120
+ class: "sl-fixed sl-inset-0 sl-z-40",
121
+ onClick: i,
122
+ "aria-hidden": "true"
123
+ })) : u("", !0)
124
+ ]));
125
+ }
126
+ });
127
+ export {
128
+ J as _
129
+ };
130
+ //# sourceMappingURL=ProfileHeaderAvatar.vue_vue_type_script_setup_true_lang-DkABeWJt.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProfileHeaderAvatar.vue_vue_type_script_setup_true_lang-Cri9BiBy.js","sources":["../src/components/layouts/ProfileHeaderAvatar.vue"],"sourcesContent":["<!--\n @component ProfileHeaderAvatar\n @description User avatar with dropdown menu for profile actions.\n \n A flexible user avatar component that displays a profile image (via Cloudinary)\n or initials fallback, with an expandable dropdown menu showing user info and actions.\n \n @props\n - userName (string): Display name of the user\n - userEmail (string): Email address of the user\n - imagePublicId (string, optional): Cloudinary public_id for profile image\n - imageUrl (string, optional): Direct URL for profile image (fallback if no publicId)\n - showLogout (boolean): Show logout button in dropdown (default: true)\n - logoutLabel (string): Label for logout button (default: 'Log Out')\n - size (number): Avatar size in pixels (default: 40)\n - ringColor (string): Tailwind ring color class for hover/active state\n - menuPosition (object): Position overrides for dropdown menu\n \n @emits\n - logout: Emitted when logout button is clicked\n - menu-toggle: Emitted when menu is opened/closed with boolean state\n \n @slots\n - menu-header: Custom header content in dropdown (replaces default name/email)\n - menu-items: Additional menu items between user info and logout\n - avatar: Custom avatar content (replaces default image/initials)\n \n @example\n <ProfileHeaderAvatar\n user-name=\"John Doe\"\n user-email=\"john@example.com\"\n image-public-id=\"users/john-doe-avatar\"\n @logout=\"handleLogout\"\n />\n-->\n<template>\n <div class=\"sl-relative sl-flex sl-items-center sl-gap-3\">\n <!-- User Avatar Button -->\n <button \n ref=\"avatarButton\"\n type=\"button\"\n @click=\"toggleMenu\"\n class=\"sl-relative sl-inline-flex sl-items-center sl-justify-center sl-rounded-full sl-overflow-hidden sl-transition-all sl-flex-shrink-0 focus:sl-outline-none\"\n :class=\"[\n ringClasses,\n { [activeRingClass]: isMenuOpen }\n ]\"\n :style=\"{ width: `${size}px`, height: `${size}px` }\"\n :aria-expanded=\"isMenuOpen\"\n aria-haspopup=\"true\"\n >\n <slot name=\"avatar\">\n <!-- Cloudinary image if public_id available -->\n <CloudinaryImage \n v-if=\"imagePublicId\" \n :public-id=\"imagePublicId\" \n :alt=\"userName\" \n :width=\"size\"\n :height=\"size\" \n :custom-classes=\"{ image: { 'sl-w-full sl-h-full sl-object-cover sl-object-center': true } }\" \n skeleton=\"user\" \n />\n <!-- Direct image URL fallback -->\n <img \n v-else-if=\"imageUrl\" \n :src=\"imageUrl\" \n :alt=\"userName\"\n class=\"sl-w-full sl-h-full sl-object-cover sl-object-center\"\n />\n <!-- Initials fallback -->\n <div \n v-else \n class=\"sl-w-full sl-h-full sl-inline-flex sl-items-center sl-justify-center sl-bg-stachelock-200 dark:sl-bg-stachelock-700\"\n >\n <span \n class=\"sl-font-semibold sl-text-stachelock-700 dark:sl-text-stachelock-200\"\n :class=\"initialsTextSize\"\n >\n {{ computedInitials }}\n </span>\n </div>\n </slot>\n </button>\n\n <!-- Dropdown Menu -->\n <Transition\n enter-active-class=\"sl-transition sl-ease-out sl-duration-100\"\n enter-from-class=\"sl-transform sl-opacity-0 sl-scale-95\"\n enter-to-class=\"sl-transform sl-opacity-100 sl-scale-100\"\n leave-active-class=\"sl-transition sl-ease-in sl-duration-75\"\n leave-from-class=\"sl-transform sl-opacity-100 sl-scale-100\"\n leave-to-class=\"sl-transform sl-opacity-0 sl-scale-95\"\n >\n <div \n v-if=\"isMenuOpen\"\n ref=\"menuRef\"\n class=\"sl-absolute sl-bg-white dark:sl-bg-slate-800 sl-rounded-lg sl-shadow-lg sl-border sl-border-gray-200 dark:sl-border-slate-700 sl-z-50 sl-min-w-max sl-overflow-hidden\"\n :style=\"menuStyles\"\n role=\"menu\"\n aria-orientation=\"vertical\"\n >\n <!-- Header with user info -->\n <div class=\"sl-p-4 sl-border-b sl-border-gray-200 dark:sl-border-slate-700\">\n <slot name=\"menu-header\">\n <p class=\"sl-text-sm sl-font-medium sl-text-gray-900 dark:sl-text-white\">{{ userName }}</p>\n <p class=\"sl-text-xs sl-text-gray-500 dark:sl-text-slate-400\">{{ userEmail }}</p>\n </slot>\n </div>\n \n <!-- Custom menu items slot -->\n <div v-if=\"$slots['menu-items']\" class=\"sl-py-1\">\n <slot name=\"menu-items\" />\n </div>\n \n <!-- Logout button -->\n <button \n v-if=\"showLogout\"\n type=\"button\"\n @click=\"handleLogout\"\n class=\"sl-w-full sl-text-left sl-px-4 sl-py-2 sl-text-sm sl-text-red-600 dark:sl-text-red-400 hover:sl-bg-red-50 dark:hover:sl-bg-red-900/20 sl-transition-colors\"\n role=\"menuitem\"\n >\n {{ logoutLabel }}\n </button>\n </div>\n </Transition>\n\n <!-- Backdrop for closing menu -->\n <div \n v-if=\"isMenuOpen\" \n class=\"sl-fixed sl-inset-0 sl-z-40\" \n @click=\"closeMenu\" \n aria-hidden=\"true\"\n />\n </div>\n</template>\n\n<script setup lang=\"ts\">\n/**\n * ProfileHeaderAvatar - User avatar with dropdown menu\n * \n * @module components/layouts/ProfileHeaderAvatar\n */\nimport { ref, computed, onMounted, onBeforeUnmount, type CSSProperties } from 'vue';\nimport CloudinaryImage from '../CloudinaryImage.vue';\n\ninterface Props {\n /** Display name of the user */\n userName: string;\n /** Email address of the user */\n userEmail?: string;\n /** Cloudinary public_id for profile image */\n imagePublicId?: string;\n /** Direct URL for profile image (fallback if no publicId) */\n imageUrl?: string;\n /** Show logout button in dropdown */\n showLogout?: boolean;\n /** Label for logout button */\n logoutLabel?: string;\n /** Avatar size in pixels */\n size?: number;\n /** Custom ring color class for hover/active state */\n ringColorClass?: string;\n /** Menu position from top */\n menuTop?: string;\n /** Menu position from right */\n menuRight?: string;\n}\n\nconst props = withDefaults(defineProps<Props>(), {\n userEmail: '',\n showLogout: true,\n logoutLabel: 'Log Out',\n size: 40,\n ringColorClass: 'sl-ring-stachelock-400',\n menuTop: '3rem',\n menuRight: '0',\n});\n\nconst emit = defineEmits<{\n /** Emitted when logout button is clicked */\n logout: [];\n /** Emitted when menu is opened/closed */\n 'menu-toggle': [isOpen: boolean];\n}>();\n\nconst isMenuOpen = ref(false);\nconst avatarButton = ref<HTMLButtonElement | null>(null);\nconst menuRef = ref<HTMLDivElement | null>(null);\n\n// Computed initials from user name\nconst computedInitials = computed(() => {\n if (!props.userName) return 'U';\n return props.userName\n .split(' ')\n .map((n: string) => n[0])\n .join('')\n .toUpperCase()\n .slice(0, 2);\n});\n\n// Ring classes for hover and active states\nconst ringClasses = computed(() => {\n return `hover:sl-ring-2 hover:${props.ringColorClass}`;\n});\n\nconst activeRingClass = computed(() => {\n return `sl-ring-2 ${props.ringColorClass}`;\n});\n\n// Text size based on avatar size\nconst initialsTextSize = computed(() => {\n if (props.size < 32) return 'sl-text-xs';\n if (props.size < 48) return 'sl-text-sm';\n return 'sl-text-base';\n});\n\n// Menu positioning styles\nconst menuStyles = computed((): CSSProperties => ({\n top: props.menuTop,\n right: props.menuRight,\n}));\n\n// Toggle menu open/close\nconst toggleMenu = () => {\n isMenuOpen.value = !isMenuOpen.value;\n emit('menu-toggle', isMenuOpen.value);\n};\n\n// Close menu\nconst closeMenu = () => {\n if (isMenuOpen.value) {\n isMenuOpen.value = false;\n emit('menu-toggle', false);\n }\n};\n\n// Handle logout click\nconst handleLogout = () => {\n closeMenu();\n emit('logout');\n};\n\n// Handle escape key to close menu\nconst handleEscapeKey = (event: KeyboardEvent) => {\n if (event.key === 'Escape') {\n closeMenu();\n }\n};\n\nonMounted(() => {\n document.addEventListener('keydown', handleEscapeKey);\n});\n\nonBeforeUnmount(() => {\n document.removeEventListener('keydown', handleEscapeKey);\n});\n\n// Expose methods for parent components\ndefineExpose({\n toggleMenu,\n closeMenu,\n isMenuOpen,\n});\n</script>\n"],"names":["props","__props","emit","__emit","isMenuOpen","ref","avatarButton","menuRef","computedInitials","computed","n","ringClasses","activeRingClass","initialsTextSize","menuStyles","toggleMenu","closeMenu","handleLogout","handleEscapeKey","event","onMounted","onBeforeUnmount","__expose","_openBlock","_createElementBlock","_hoisted_1","_createElementVNode","_normalizeStyle","size","_renderSlot","_ctx","imagePublicId","_createBlock","CloudinaryImage","userName","imageUrl","_hoisted_4","_normalizeClass","_createVNode","_Transition","_hoisted_5","_hoisted_6","_toDisplayString","_hoisted_7","userEmail","$slots","_hoisted_8","showLogout","logoutLabel"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAyKA,UAAMA,IAAQC,GAURC,IAAOC,GAOPC,IAAaC,EAAI,EAAK,GACtBC,IAAeD,EAA8B,IAAI,GACjDE,IAAUF,EAA2B,IAAI,GAGzCG,IAAmBC,EAAS,MAC3BT,EAAM,WACJA,EAAM,SACV,MAAM,GAAG,EACT,IAAI,CAACU,MAAcA,EAAE,CAAC,CAAC,EACvB,KAAK,EAAE,EACP,cACA,MAAM,GAAG,CAAC,IANe,GAO7B,GAGKC,IAAcF,EAAS,MACpB,yBAAyBT,EAAM,cAAc,EACrD,GAEKY,IAAkBH,EAAS,MACxB,aAAaT,EAAM,cAAc,EACzC,GAGKa,IAAmBJ,EAAS,MAC5BT,EAAM,OAAO,KAAW,eACxBA,EAAM,OAAO,KAAW,eACrB,cACR,GAGKc,IAAaL,EAAS,OAAsB;AAAA,MAChD,KAAKT,EAAM;AAAA,MACX,OAAOA,EAAM;AAAA,IAAA,EACb,GAGIe,IAAa,MAAM;AACvB,MAAAX,EAAW,QAAQ,CAACA,EAAW,OAC/BF,EAAK,eAAeE,EAAW,KAAK;AAAA,IACtC,GAGMY,IAAY,MAAM;AACtB,MAAIZ,EAAW,UACbA,EAAW,QAAQ,IACnBF,EAAK,eAAe,EAAK;AAAA,IAE7B,GAGMe,IAAe,MAAM;AACzB,MAAAD,EAAA,GACAd,EAAK,QAAQ;AAAA,IACf,GAGMgB,IAAkB,CAACC,MAAyB;AAChD,MAAIA,EAAM,QAAQ,YAChBH,EAAA;AAAA,IAEJ;AAEA,WAAAI,EAAU,MAAM;AACd,eAAS,iBAAiB,WAAWF,CAAe;AAAA,IACtD,CAAC,GAEDG,EAAgB,MAAM;AACpB,eAAS,oBAAoB,WAAWH,CAAe;AAAA,IACzD,CAAC,GAGDI,EAAa;AAAA,MACX,YAAAP;AAAA,MACA,WAAAC;AAAA,MACA,YAAAZ;AAAA,IAAA,CACD,cAnOCmB,EAAA,GAAAC,EAkGM,OAlGNC,GAkGM;AAAA,MAhGJC,EA4CS,UAAA;AAAA,iBA3CH;AAAA,QAAJ,KAAIpB;AAAA,QACJ,MAAK;AAAA,QACJ,SAAOS;AAAA,QACR,UAAM,4JAA0J;AAAA,UAC9IJ,EAAA;AAAA,UAAwB,EAAA,CAAAC,EAAA,KAAe,GAAGR,EAAA,MAAA;AAAA,QAAU;QAIrE,OAAKuB,EAAA,EAAA,OAAA,GAAcC,EAAAA,IAAI,MAAA,QAAA,GAAiBA,EAAAA,IAAI,MAAA;AAAA,QAC5C,iBAAexB,EAAA;AAAA,QAChB,iBAAc;AAAA,MAAA;QAEdyB,EA8BOC,wBA9BP,MA8BO;AAAA,UA3BGC,EAAAA,sBADRC,EAQEC,GAAA;AAAA;YANC,aAAWF,EAAAA;AAAAA,YACX,KAAKG,EAAAA;AAAAA,YACL,OAAON,EAAAA;AAAAA,YACP,QAAQA,EAAAA;AAAAA,YACR,kBAAgB,EAAA,OAAA,EAAA,wDAAA,KAAA;AAAA,YACjB,UAAS;AAAA,UAAA,wDAIEO,EAAAA,iBADbX,EAKE,OAAA;AAAA;YAHC,KAAKW,EAAAA;AAAAA,YACL,KAAKD,EAAAA;AAAAA,YACN,OAAM;AAAA,UAAA,mBAGRX,EAAA,GAAAC,EAUM,OAVNY,GAUM;AAAA,YANJV,EAKO,QAAA;AAAA,cAJL,OAAKW,EAAA,CAAC,uEACExB,EAAA,KAAgB,CAAA;AAAA,YAAA,KAErBL,EAAA,KAAgB,GAAA,CAAA;AAAA,UAAA;;;MAO3B8B,EAwCaC,GAAA;AAAA,QAvCX,sBAAmB;AAAA,QACnB,oBAAiB;AAAA,QACjB,kBAAe;AAAA,QACf,sBAAmB;AAAA,QACnB,oBAAiB;AAAA,QACjB,kBAAe;AAAA,MAAA;mBAEf,MA+BM;AAAA,UA9BEnC,EAAA,cADRoB,EA+BM,OAAA;AAAA;qBA7BA;AAAA,YAAJ,KAAIjB;AAAA,YACJ,OAAM;AAAA,YACL,SAAOO,EAAA,KAAU;AAAA,YAClB,MAAK;AAAA,YACL,oBAAiB;AAAA,UAAA;YAGjBY,EAKM,OALNc,GAKM;AAAA,cAJJX,EAGOC,6BAHP,MAGO;AAAA,gBAFLJ,EAA2F,KAA3Fe,GAA2FC,EAAfR,EAAAA,QAAQ,GAAA,CAAA;AAAA,gBACpFR,EAAiF,KAAjFiB,GAAiFD,EAAhBE,EAAAA,SAAS,GAAA,CAAA;AAAA,cAAA;;YAKnEC,EAAAA,OAAM,YAAA,KAAjBtB,KAAAC,EAEM,OAFNsB,GAEM;AAAA,cADJjB,EAA0BC,EAAA,QAAA,YAAA;AAAA,YAAA;YAKpBiB,EAAAA,mBADRvB,EAQS,UAAA;AAAA;cANP,MAAK;AAAA,cACJ,SAAOP;AAAA,cACR,OAAM;AAAA,cACN,MAAK;AAAA,YAAA,KAEF+B,EAAAA,WAAW,GAAA,CAAA;;;;;MAOZ5C,EAAA,cADRoB,EAKE,OAAA;AAAA;QAHA,OAAM;AAAA,QACL,SAAOR;AAAA,QACR,eAAY;AAAA,MAAA;;;;"}
1
+ {"version":3,"file":"ProfileHeaderAvatar.vue_vue_type_script_setup_true_lang-DkABeWJt.js","sources":["../src/components/layouts/ProfileHeaderAvatar.vue"],"sourcesContent":["<!--\n @component ProfileHeaderAvatar\n @description User avatar with dropdown menu for profile actions.\n \n A flexible user avatar component that displays a profile image (via Cloudinary)\n or initials fallback, with an expandable dropdown menu showing user info and actions.\n \n @props\n - userName (string): Display name of the user\n - userEmail (string): Email address of the user\n - imagePublicId (string, optional): Cloudinary public_id for profile image\n - imageUrl (string, optional): Direct URL for profile image (fallback if no publicId)\n - showLogout (boolean): Show logout button in dropdown (default: true)\n - logoutLabel (string): Label for logout button (default: 'Log Out')\n - size (number): Avatar size in pixels (default: 40)\n - ringColor (string): Tailwind ring color class for hover/active state\n - menuPosition (object): Position overrides for dropdown menu\n \n @emits\n - logout: Emitted when logout button is clicked\n - menu-toggle: Emitted when menu is opened/closed with boolean state\n \n @slots\n - menu-header: Custom header content in dropdown (replaces default name/email)\n - menu-items: Additional menu items between user info and logout\n - avatar: Custom avatar content (replaces default image/initials)\n \n @example\n <ProfileHeaderAvatar\n user-name=\"John Doe\"\n user-email=\"john@example.com\"\n image-public-id=\"users/john-doe-avatar\"\n @logout=\"handleLogout\"\n />\n-->\n<template>\n <div class=\"sl-relative sl-flex sl-items-center sl-gap-3\">\n <!-- User Avatar Button -->\n <button \n ref=\"avatarButton\"\n type=\"button\"\n @click=\"toggleMenu\"\n class=\"sl-relative sl-inline-flex sl-items-center sl-justify-center sl-rounded-full sl-overflow-hidden sl-transition-all sl-flex-shrink-0 focus:sl-outline-none\"\n :class=\"[\n ringClasses,\n { [activeRingClass]: isMenuOpen }\n ]\"\n :style=\"{ width: `${size}px`, height: `${size}px` }\"\n :aria-expanded=\"isMenuOpen\"\n aria-haspopup=\"true\"\n >\n <slot name=\"avatar\">\n <!-- Cloudinary image if public_id available -->\n <CloudinaryImage \n v-if=\"imagePublicId\" \n :public-id=\"imagePublicId\" \n :alt=\"userName\" \n :width=\"size\"\n :height=\"size\" \n :custom-classes=\"{ image: { 'sl-w-full sl-h-full sl-object-cover sl-object-center': true } }\" \n skeleton=\"user\" \n />\n <!-- Direct image URL fallback -->\n <img \n v-else-if=\"imageUrl\" \n :src=\"imageUrl\" \n :alt=\"userName\"\n class=\"sl-w-full sl-h-full sl-object-cover sl-object-center\"\n />\n <!-- Initials fallback -->\n <div \n v-else \n class=\"sl-w-full sl-h-full sl-inline-flex sl-items-center sl-justify-center sl-bg-stachelock-200 dark:sl-bg-stachelock-700\"\n >\n <span \n class=\"sl-font-semibold sl-text-stachelock-700 dark:sl-text-stachelock-200\"\n :class=\"initialsTextSize\"\n >\n {{ computedInitials }}\n </span>\n </div>\n </slot>\n </button>\n\n <!-- Dropdown Menu -->\n <Transition\n enter-active-class=\"sl-transition sl-ease-out sl-duration-100\"\n enter-from-class=\"sl-transform sl-opacity-0 sl-scale-95\"\n enter-to-class=\"sl-transform sl-opacity-100 sl-scale-100\"\n leave-active-class=\"sl-transition sl-ease-in sl-duration-75\"\n leave-from-class=\"sl-transform sl-opacity-100 sl-scale-100\"\n leave-to-class=\"sl-transform sl-opacity-0 sl-scale-95\"\n >\n <div \n v-if=\"isMenuOpen\"\n ref=\"menuRef\"\n class=\"sl-absolute sl-bg-white dark:sl-bg-slate-800 sl-rounded-lg sl-shadow-lg sl-border sl-border-gray-200 dark:sl-border-slate-700 sl-z-50 sl-min-w-max sl-overflow-hidden\"\n :style=\"menuStyles\"\n role=\"menu\"\n aria-orientation=\"vertical\"\n >\n <!-- Header with user info -->\n <div class=\"sl-p-4 sl-border-b sl-border-gray-200 dark:sl-border-slate-700\">\n <slot name=\"menu-header\">\n <p class=\"sl-text-sm sl-font-medium sl-text-gray-900 dark:sl-text-white\">{{ userName }}</p>\n <p class=\"sl-text-xs sl-text-gray-500 dark:sl-text-slate-400\">{{ userEmail }}</p>\n </slot>\n </div>\n \n <!-- Custom menu items slot -->\n <div v-if=\"$slots['menu-items']\" class=\"sl-py-1\">\n <slot name=\"menu-items\" />\n </div>\n \n <!-- Logout button -->\n <button \n v-if=\"showLogout\"\n type=\"button\"\n @click=\"handleLogout\"\n class=\"sl-w-full sl-text-left sl-px-4 sl-py-2 sl-text-sm sl-text-red-600 dark:sl-text-red-400 hover:sl-bg-red-50 dark:hover:sl-bg-red-900/20 sl-transition-colors\"\n role=\"menuitem\"\n >\n {{ logoutLabel }}\n </button>\n </div>\n </Transition>\n\n <!-- Backdrop for closing menu -->\n <div \n v-if=\"isMenuOpen\" \n class=\"sl-fixed sl-inset-0 sl-z-40\" \n @click=\"closeMenu\" \n aria-hidden=\"true\"\n />\n </div>\n</template>\n\n<script setup lang=\"ts\">\n/**\n * ProfileHeaderAvatar - User avatar with dropdown menu\n * \n * @module components/layouts/ProfileHeaderAvatar\n */\nimport { ref, computed, onMounted, onBeforeUnmount, type CSSProperties } from 'vue';\nimport CloudinaryImage from '../CloudinaryImage.vue';\n\ninterface Props {\n /** Display name of the user */\n userName: string;\n /** Email address of the user */\n userEmail?: string;\n /** Cloudinary public_id for profile image */\n imagePublicId?: string;\n /** Direct URL for profile image (fallback if no publicId) */\n imageUrl?: string;\n /** Show logout button in dropdown */\n showLogout?: boolean;\n /** Label for logout button */\n logoutLabel?: string;\n /** Avatar size in pixels */\n size?: number;\n /** Custom ring color class for hover/active state */\n ringColorClass?: string;\n /** Menu position from top */\n menuTop?: string;\n /** Menu position from right */\n menuRight?: string;\n}\n\nconst props = withDefaults(defineProps<Props>(), {\n userEmail: '',\n showLogout: true,\n logoutLabel: 'Log Out',\n size: 40,\n ringColorClass: 'sl-ring-stachelock-400',\n menuTop: '3rem',\n menuRight: '0',\n});\n\nconst emit = defineEmits<{\n /** Emitted when logout button is clicked */\n logout: [];\n /** Emitted when menu is opened/closed */\n 'menu-toggle': [isOpen: boolean];\n}>();\n\nconst isMenuOpen = ref(false);\nconst avatarButton = ref<HTMLButtonElement | null>(null);\nconst menuRef = ref<HTMLDivElement | null>(null);\n\n// Computed initials from user name\nconst computedInitials = computed(() => {\n if (!props.userName) return 'U';\n return props.userName\n .split(' ')\n .map((n: string) => n[0])\n .join('')\n .toUpperCase()\n .slice(0, 2);\n});\n\n// Ring classes for hover and active states\nconst ringClasses = computed(() => {\n return `hover:sl-ring-2 hover:${props.ringColorClass}`;\n});\n\nconst activeRingClass = computed(() => {\n return `sl-ring-2 ${props.ringColorClass}`;\n});\n\n// Text size based on avatar size\nconst initialsTextSize = computed(() => {\n if (props.size < 32) return 'sl-text-xs';\n if (props.size < 48) return 'sl-text-sm';\n return 'sl-text-base';\n});\n\n// Menu positioning styles\nconst menuStyles = computed((): CSSProperties => ({\n top: props.menuTop,\n right: props.menuRight,\n}));\n\n// Toggle menu open/close\nconst toggleMenu = () => {\n isMenuOpen.value = !isMenuOpen.value;\n emit('menu-toggle', isMenuOpen.value);\n};\n\n// Close menu\nconst closeMenu = () => {\n if (isMenuOpen.value) {\n isMenuOpen.value = false;\n emit('menu-toggle', false);\n }\n};\n\n// Handle logout click\nconst handleLogout = () => {\n closeMenu();\n emit('logout');\n};\n\n// Handle escape key to close menu\nconst handleEscapeKey = (event: KeyboardEvent) => {\n if (event.key === 'Escape') {\n closeMenu();\n }\n};\n\nonMounted(() => {\n document.addEventListener('keydown', handleEscapeKey);\n});\n\nonBeforeUnmount(() => {\n document.removeEventListener('keydown', handleEscapeKey);\n});\n\n// Expose methods for parent components\ndefineExpose({\n toggleMenu,\n closeMenu,\n isMenuOpen,\n});\n</script>\n"],"names":["props","__props","emit","__emit","isMenuOpen","ref","avatarButton","menuRef","computedInitials","computed","n","ringClasses","activeRingClass","initialsTextSize","menuStyles","toggleMenu","closeMenu","handleLogout","handleEscapeKey","event","onMounted","onBeforeUnmount","__expose","_openBlock","_createElementBlock","_hoisted_1","_createElementVNode","_normalizeStyle","_renderSlot","_ctx","_createBlock","CloudinaryImage","_hoisted_4","_normalizeClass","_createVNode","_Transition","_hoisted_5","_hoisted_6","_toDisplayString","_hoisted_7","$slots","_hoisted_8"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAyKA,UAAMA,IAAQC,GAURC,IAAOC,GAOPC,IAAaC,EAAI,EAAK,GACtBC,IAAeD,EAA8B,IAAI,GACjDE,IAAUF,EAA2B,IAAI,GAGzCG,IAAmBC,EAAS,MAC3BT,EAAM,WACJA,EAAM,SACV,MAAM,GAAG,EACT,IAAI,CAACU,MAAcA,EAAE,CAAC,CAAC,EACvB,KAAK,EAAE,EACP,cACA,MAAM,GAAG,CAAC,IANe,GAO7B,GAGKC,IAAcF,EAAS,MACpB,yBAAyBT,EAAM,cAAc,EACrD,GAEKY,IAAkBH,EAAS,MACxB,aAAaT,EAAM,cAAc,EACzC,GAGKa,IAAmBJ,EAAS,MAC5BT,EAAM,OAAO,KAAW,eACxBA,EAAM,OAAO,KAAW,eACrB,cACR,GAGKc,IAAaL,EAAS,OAAsB;AAAA,MAChD,KAAKT,EAAM;AAAA,MACX,OAAOA,EAAM;AAAA,IAAA,EACb,GAGIe,IAAa,MAAM;AACvB,MAAAX,EAAW,QAAQ,CAACA,EAAW,OAC/BF,EAAK,eAAeE,EAAW,KAAK;AAAA,IACtC,GAGMY,IAAY,MAAM;AACtB,MAAIZ,EAAW,UACbA,EAAW,QAAQ,IACnBF,EAAK,eAAe,EAAK;AAAA,IAE7B,GAGMe,IAAe,MAAM;AACzB,MAAAD,EAAA,GACAd,EAAK,QAAQ;AAAA,IACf,GAGMgB,IAAkB,CAACC,MAAyB;AAChD,MAAIA,EAAM,QAAQ,YAChBH,EAAA;AAAA,IAEJ;AAEA,WAAAI,EAAU,MAAM;AACd,eAAS,iBAAiB,WAAWF,CAAe;AAAA,IACtD,CAAC,GAEDG,EAAgB,MAAM;AACpB,eAAS,oBAAoB,WAAWH,CAAe;AAAA,IACzD,CAAC,GAGDI,EAAa;AAAA,MACX,YAAAP;AAAA,MACA,WAAAC;AAAA,MACA,YAAAZ;AAAA,IAAA,CACD,cAnOCmB,EAAA,GAAAC,EAkGM,OAlGNC,GAkGM;AAAA,MAhGJC,EA4CS,UAAA;AAAA,iBA3CH;AAAA,QAAJ,KAAIpB;AAAA,QACJ,MAAK;AAAA,QACJ,SAAOS;AAAA,QACR,UAAM,4JAA0J;AAAA,UAC9IJ,EAAA;AAAA,UAAwB,EAAA,CAAAC,EAAA,KAAe,GAAGR,EAAA,MAAA;AAAA,QAAU;QAIrE,OAAKuB,EAAA,EAAA,OAAA,GAAc1B,EAAA,IAAI,MAAA,QAAA,GAAiBA,EAAA,IAAI,MAAA;AAAA,QAC5C,iBAAeG,EAAA;AAAA,QAChB,iBAAc;AAAA,MAAA;QAEdwB,EA8BOC,wBA9BP,MA8BO;AAAA,UA3BG5B,EAAA,sBADR6B,EAQEC,GAAA;AAAA;YANC,aAAW9B,EAAA;AAAA,YACX,KAAKA,EAAA;AAAA,YACL,OAAOA,EAAA;AAAA,YACP,QAAQA,EAAA;AAAA,YACR,kBAAgB,EAAA,OAAA,EAAA,wDAAA,KAAA;AAAA,YACjB,UAAS;AAAA,UAAA,wDAIEA,EAAA,iBADbuB,EAKE,OAAA;AAAA;YAHC,KAAKvB,EAAA;AAAA,YACL,KAAKA,EAAA;AAAA,YACN,OAAM;AAAA,UAAA,mBAGRsB,EAAA,GAAAC,EAUM,OAVNQ,GAUM;AAAA,YANJN,EAKO,QAAA;AAAA,cAJL,OAAKO,EAAA,CAAC,uEACEpB,EAAA,KAAgB,CAAA;AAAA,YAAA,KAErBL,EAAA,KAAgB,GAAA,CAAA;AAAA,UAAA;;;MAO3B0B,EAwCaC,GAAA;AAAA,QAvCX,sBAAmB;AAAA,QACnB,oBAAiB;AAAA,QACjB,kBAAe;AAAA,QACf,sBAAmB;AAAA,QACnB,oBAAiB;AAAA,QACjB,kBAAe;AAAA,MAAA;mBAEf,MA+BM;AAAA,UA9BE/B,EAAA,cADRoB,EA+BM,OAAA;AAAA;qBA7BA;AAAA,YAAJ,KAAIjB;AAAA,YACJ,OAAM;AAAA,YACL,SAAOO,EAAA,KAAU;AAAA,YAClB,MAAK;AAAA,YACL,oBAAiB;AAAA,UAAA;YAGjBY,EAKM,OALNU,GAKM;AAAA,cAJJR,EAGOC,6BAHP,MAGO;AAAA,gBAFLH,EAA2F,KAA3FW,GAA2FC,EAAfrC,EAAA,QAAQ,GAAA,CAAA;AAAA,gBACpFyB,EAAiF,KAAjFa,GAAiFD,EAAhBrC,EAAA,SAAS,GAAA,CAAA;AAAA,cAAA;;YAKnEuC,EAAAA,OAAM,YAAA,KAAjBjB,KAAAC,EAEM,OAFNiB,GAEM;AAAA,cADJb,EAA0BC,EAAA,QAAA,YAAA;AAAA,YAAA;YAKpB5B,EAAA,mBADRuB,EAQS,UAAA;AAAA;cANP,MAAK;AAAA,cACJ,SAAOP;AAAA,cACR,OAAM;AAAA,cACN,MAAK;AAAA,YAAA,KAEFhB,EAAA,WAAW,GAAA,CAAA;;;;;MAOZG,EAAA,cADRoB,EAKE,OAAA;AAAA;QAHA,OAAM;AAAA,QACL,SAAOR;AAAA,QACR,eAAY;AAAA,MAAA;;;;"}