@ozdao/martyrs 0.2.571 → 0.2.574

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 (819) hide show
  1. package/dist/_virtual/dayjs.min.js +1 -1
  2. package/dist/_virtual/weekOfYear.js +1 -1
  3. package/dist/builder.js +1194 -45
  4. package/dist/loader.js +30 -0
  5. package/dist/{main-BFvlam0J.js → main-BfEQkhXS.js} +1173 -1191
  6. package/dist/martyrs/dist/{main-BFvlam0J.js → main-BfEQkhXS.js} +94 -112
  7. package/dist/martyrs/dist/main-BfEQkhXS.js.map +1 -0
  8. package/dist/martyrs/dist/{web-CH5wzMHy.js → web-BqTV9va1.js} +3 -3
  9. package/dist/martyrs/dist/{web-CH5wzMHy.js.map → web-BqTV9va1.js.map} +1 -1
  10. package/dist/martyrs/node_modules/.pnpm/{@capacitor_core@7.0.1 → @capacitor_core@7.4.4}/node_modules/@capacitor/core/dist/index.js +2 -1
  11. package/dist/martyrs/node_modules/.pnpm/@capacitor_core@7.4.4/node_modules/@capacitor/core/dist/index.js.map +1 -0
  12. package/dist/martyrs/node_modules/.pnpm/{@capacitor_preferences@7.0.0_@capacitor_core@7.0.1 → @capacitor_preferences@7.0.2_@capacitor_core@7.4.4}/node_modules/@capacitor/preferences/dist/esm/index.js +1 -1
  13. package/dist/martyrs/node_modules/.pnpm/{@capacitor_preferences@7.0.0_@capacitor_core@7.0.1 → @capacitor_preferences@7.0.2_@capacitor_core@7.4.4}/node_modules/@capacitor/preferences/dist/esm/index.js.map +1 -1
  14. package/dist/martyrs/node_modules/.pnpm/{@capacitor_preferences@7.0.0_@capacitor_core@7.0.1 → @capacitor_preferences@7.0.2_@capacitor_core@7.4.4}/node_modules/@capacitor/preferences/dist/esm/web.js +1 -1
  15. package/dist/martyrs/node_modules/.pnpm/{@capacitor_preferences@7.0.0_@capacitor_core@7.0.1 → @capacitor_preferences@7.0.2_@capacitor_core@7.4.4}/node_modules/@capacitor/preferences/dist/esm/web.js.map +1 -1
  16. package/dist/{node_modules/.pnpm/@vue_server-renderer@3.5.13_vue@3.5.13_typescript@5.8.3_ → martyrs}/node_modules/@vue/server-renderer/dist/server-renderer.esm-bundler.js +1 -1
  17. package/dist/martyrs/node_modules/@vue/server-renderer/dist/server-renderer.esm-bundler.js.map +1 -0
  18. package/dist/martyrs/node_modules/@vue/shared/dist/shared.esm-bundler.js.map +1 -0
  19. package/dist/{node_modules/.pnpm/dayjs@1.11.13 → martyrs}/node_modules/dayjs/dayjs.min.js +1 -1
  20. package/dist/martyrs/node_modules/dayjs/dayjs.min.js.map +1 -0
  21. package/dist/{node_modules/.pnpm/dayjs@1.11.13 → martyrs}/node_modules/dayjs/plugin/weekOfYear.js +1 -1
  22. package/dist/martyrs/node_modules/dayjs/plugin/weekOfYear.js.map +1 -0
  23. package/dist/martyrs/node_modules/uuid/dist/esm-browser/regex.js +5 -0
  24. package/dist/martyrs/node_modules/uuid/dist/esm-browser/regex.js.map +1 -0
  25. package/dist/martyrs/node_modules/uuid/dist/esm-browser/rng.js +15 -0
  26. package/dist/martyrs/node_modules/uuid/dist/esm-browser/rng.js.map +1 -0
  27. package/dist/martyrs/node_modules/uuid/dist/esm-browser/stringify.js +17 -0
  28. package/dist/martyrs/node_modules/uuid/dist/esm-browser/stringify.js.map +1 -0
  29. package/dist/martyrs/node_modules/uuid/dist/esm-browser/v4.js +13 -0
  30. package/dist/martyrs/node_modules/uuid/dist/esm-browser/v4.js.map +1 -0
  31. package/dist/martyrs/node_modules/uuid/dist/esm-browser/validate.js +8 -0
  32. package/dist/martyrs/node_modules/uuid/dist/esm-browser/validate.js.map +1 -0
  33. package/dist/martyrs/src/components/Block/Block.vue.js +2 -2
  34. package/dist/martyrs/src/components/Block/Block.vue.js.map +1 -1
  35. package/dist/martyrs/src/components/BottomSheet/BottomSheet.vue.js +1 -1
  36. package/dist/martyrs/src/components/BottomSheet/BottomSheet.vue.js.map +1 -1
  37. package/dist/martyrs/src/components/Button/Button.vue2.js +1 -1
  38. package/dist/martyrs/src/components/Calendar/Calendar.vue2.js +6 -6
  39. package/dist/martyrs/src/components/Calendar/Calendar.vue2.js.map +1 -1
  40. package/dist/martyrs/src/components/Checkbox/Checkbox.vue.js +2 -2
  41. package/dist/martyrs/src/components/Checkbox/Checkbox.vue.js.map +1 -1
  42. package/dist/martyrs/src/components/Chips/Chips.vue.js +2 -2
  43. package/dist/martyrs/src/components/Countdown/Countdown.vue.js +5 -5
  44. package/dist/martyrs/src/components/Countdown/Countdown.vue.js.map +1 -1
  45. package/dist/martyrs/src/components/DatePicker/DatePicker.vue.js +4 -4
  46. package/dist/martyrs/src/components/DatePicker/DatePicker.vue.js.map +1 -1
  47. package/dist/martyrs/src/components/EditImages/{EditImages.vue.js → EditImages.vue2.js} +3 -3
  48. package/dist/martyrs/src/components/EditImages/EditImages.vue2.js.map +1 -0
  49. package/dist/martyrs/src/components/Feed/Carousel.vue.js +1 -1
  50. package/dist/martyrs/src/components/Feed/Feed.vue.js +3 -3
  51. package/dist/martyrs/src/components/Feed/Feed.vue.js.map +1 -1
  52. package/dist/martyrs/src/components/FieldBig/FieldBig.vue.js +2 -2
  53. package/dist/martyrs/src/components/FieldBig/FieldBig.vue.js.map +1 -1
  54. package/dist/martyrs/src/components/FieldPhone/FieldPhone.vue.js +1 -1
  55. package/dist/martyrs/src/components/FieldPhone/FieldPhone.vue.js.map +1 -1
  56. package/dist/martyrs/src/components/FieldTags/BlockTags.vue.js +1 -1
  57. package/dist/martyrs/src/components/FieldTags/BlockTags.vue.js.map +1 -1
  58. package/dist/martyrs/src/components/Loader/{Loader.vue.js → Loader.vue2.js} +3 -3
  59. package/dist/martyrs/src/components/Loader/Loader.vue2.js.map +1 -0
  60. package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue.js +1 -1
  61. package/dist/martyrs/src/components/Media/Media.vue.js +1 -1
  62. package/dist/martyrs/src/components/Menu/{Menu.vue.js → Menu.vue2.js} +2 -2
  63. package/dist/martyrs/src/components/Menu/Menu.vue2.js.map +1 -0
  64. package/dist/martyrs/src/components/Menu/MenuItem.vue.js +2 -2
  65. package/dist/martyrs/src/components/Menu/MenuItem.vue.js.map +1 -1
  66. package/dist/martyrs/src/components/PhotoViewer/PhotoViewer.vue.js +2 -2
  67. package/dist/martyrs/src/components/PhotoViewer/PhotoViewer.vue.js.map +1 -1
  68. package/dist/martyrs/src/components/Radio/Radio.vue.js +1 -1
  69. package/dist/martyrs/src/components/Radio/Radio.vue.js.map +1 -1
  70. package/dist/martyrs/src/components/Select/Select.vue.js +2 -2
  71. package/dist/martyrs/src/components/Select/Select.vue.js.map +1 -1
  72. package/dist/martyrs/src/components/SelectMulti/{SelectMulti.vue2.js → SelectMulti.vue.js} +2 -2
  73. package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue.js.map +1 -0
  74. package/dist/martyrs/src/components/Table/Table.vue.js +3 -3
  75. package/dist/martyrs/src/components/Table/Table.vue.js.map +1 -1
  76. package/dist/martyrs/src/components/Text/Text.vue.js +1 -1
  77. package/dist/martyrs/src/components/Text/Text.vue.js.map +1 -1
  78. package/dist/martyrs/src/components/Tooltip/{Tooltip.vue.js → Tooltip.vue2.js} +2 -2
  79. package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.js.map +1 -0
  80. package/dist/martyrs/src/components/UploadImage/UploadImage.vue.js +4 -4
  81. package/dist/martyrs/src/components/UploadImage/UploadImage.vue.js.map +1 -1
  82. package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.js +4 -4
  83. package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.js.map +1 -1
  84. package/dist/martyrs/src/modules/auth/views/components/blocks/CardUser.vue.js +2 -2
  85. package/dist/martyrs/src/modules/auth/views/components/blocks/ProfileCard.vue.js +4 -4
  86. package/dist/martyrs/src/modules/auth/views/components/blocks/ProfileCard.vue.js.map +1 -1
  87. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.js +1 -1
  88. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.js.map +1 -1
  89. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js +2 -2
  90. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js.map +1 -1
  91. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +7 -7
  92. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js.map +1 -1
  93. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js +1 -1
  94. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js.map +1 -1
  95. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js +1 -1
  96. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.js +1 -1
  97. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.js.map +1 -1
  98. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +1 -1
  99. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js.map +1 -1
  100. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +3 -3
  101. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js.map +1 -1
  102. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +1 -1
  103. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js.map +1 -1
  104. package/dist/martyrs/src/modules/auth/views/components/pages/UserDashboard.vue.js +3 -3
  105. package/dist/martyrs/src/modules/auth/views/components/pages/UserDashboard.vue.js.map +1 -1
  106. package/dist/martyrs/src/modules/auth/views/components/sections/FeaturedUsers.vue.js +1 -1
  107. package/dist/martyrs/src/modules/auth/views/components/sections/FeaturedUsers.vue.js.map +1 -1
  108. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.js +7 -7
  109. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.js.map +1 -1
  110. package/dist/martyrs/src/modules/auth/views/components/sections/SliderFeatures.vue.js +1 -1
  111. package/dist/martyrs/src/modules/auth/views/components/sections/SliderFeatures.vue.js.map +1 -1
  112. package/dist/martyrs/src/modules/auth/views/store/auth.js +1 -1
  113. package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.js +4 -4
  114. package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.js.map +1 -1
  115. package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.js +6 -6
  116. package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.js.map +1 -1
  117. package/dist/martyrs/src/modules/chats/components/blocks/ChatMessage.vue.js +1 -1
  118. package/dist/martyrs/src/modules/chats/components/blocks/ChatMessage.vue.js.map +1 -1
  119. package/dist/martyrs/src/modules/chats/components/sections/ChatWindow.vue.js +2 -2
  120. package/dist/martyrs/src/modules/chats/components/sections/ChatWindow.vue.js.map +1 -1
  121. package/dist/martyrs/src/modules/community/components/blocks/Activity.vue.js +7 -7
  122. package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.js +1 -1
  123. package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.js.map +1 -1
  124. package/dist/martyrs/src/modules/community/components/blocks/FooterBlogpost.vue.js +4 -4
  125. package/dist/martyrs/src/modules/community/components/blocks/FooterBlogpost.vue.js.map +1 -1
  126. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js +10 -10
  127. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js.map +1 -1
  128. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +1 -1
  129. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +1 -1
  130. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js.map +1 -1
  131. package/dist/martyrs/src/modules/community/components/pages/Posts.vue.js +2 -2
  132. package/dist/martyrs/src/modules/community/components/pages/Posts.vue.js.map +1 -1
  133. package/dist/martyrs/src/modules/community/components/sections/Comment.vue.js +3 -3
  134. package/dist/martyrs/src/modules/community/components/sections/Comment.vue.js.map +1 -1
  135. package/dist/martyrs/src/modules/community/components/sections/Comments.vue.js +1 -1
  136. package/dist/martyrs/src/modules/constructor/components/elements/Audio.vue.js +1 -1
  137. package/dist/martyrs/src/modules/constructor/components/elements/Audio.vue.js.map +1 -1
  138. package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.js +1 -1
  139. package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.js.map +1 -1
  140. package/dist/martyrs/src/modules/constructor/components/elements/Textarea.vue2.js +1 -1
  141. package/dist/martyrs/src/modules/constructor/components/elements/Textarea.vue2.js.map +1 -1
  142. package/dist/martyrs/src/modules/constructor/components/elements/Video.vue.js +1 -1
  143. package/dist/martyrs/src/modules/constructor/components/elements/Video.vue.js.map +1 -1
  144. package/dist/martyrs/src/modules/constructor/components/sections/Constructor.vue.js +1 -1
  145. package/dist/martyrs/src/modules/core/views/classes/core.app.js +2 -1
  146. package/dist/martyrs/src/modules/core/views/classes/core.app.js.map +1 -1
  147. package/dist/martyrs/src/modules/core/views/components/blocks/BlockSorting.vue.js +2 -2
  148. package/dist/martyrs/src/modules/core/views/components/blocks/BlockSorting.vue.js.map +1 -1
  149. package/dist/martyrs/src/modules/core/views/components/blocks/CardHeader.vue.js +9 -9
  150. package/dist/martyrs/src/modules/core/views/components/blocks/CardHeader.vue.js.map +1 -1
  151. package/dist/martyrs/src/modules/core/views/components/blocks/HelpCard.vue.js +2 -2
  152. package/dist/martyrs/src/modules/core/views/components/blocks/HelpCard.vue.js.map +1 -1
  153. package/dist/martyrs/src/modules/core/views/components/blocks/PopupAuth.vue.js +1 -1
  154. package/dist/martyrs/src/modules/core/views/components/blocks/PopupAuth.vue.js.map +1 -1
  155. package/dist/martyrs/src/modules/core/views/components/blocks/PopupDateSelector.vue.js +1 -1
  156. package/dist/martyrs/src/modules/core/views/components/elements/ButtonDate.vue.js +1 -1
  157. package/dist/martyrs/src/modules/core/views/components/elements/ButtonDate.vue.js.map +1 -1
  158. package/dist/martyrs/src/modules/core/views/components/elements/PhotoStack.vue.js +3 -3
  159. package/dist/martyrs/src/modules/core/views/components/layouts/App.vue.js +25 -5
  160. package/dist/martyrs/src/modules/core/views/components/layouts/App.vue.js.map +1 -1
  161. package/dist/martyrs/src/modules/core/views/components/layouts/Client.vue.js +4 -4
  162. package/dist/martyrs/src/modules/core/views/components/layouts/Client.vue.js.map +1 -1
  163. package/dist/martyrs/src/modules/core/views/components/partials/BottomNavigationBar.vue.js +11 -11
  164. package/dist/martyrs/src/modules/core/views/components/partials/BottomNavigationBar.vue.js.map +1 -1
  165. package/dist/martyrs/src/modules/core/views/components/partials/CitySelection.vue.js +1 -1
  166. package/dist/martyrs/src/modules/core/views/components/partials/CitySelection.vue.js.map +1 -1
  167. package/dist/martyrs/src/modules/core/views/components/partials/Footer.vue.js +16 -16
  168. package/dist/martyrs/src/modules/core/views/components/partials/Footer.vue.js.map +1 -1
  169. package/dist/martyrs/src/modules/core/views/components/partials/Header.vue.js +7 -7
  170. package/dist/martyrs/src/modules/core/views/components/partials/Header.vue.js.map +1 -1
  171. package/dist/martyrs/src/modules/core/views/components/partials/LocationSelection.vue.js +1 -1
  172. package/dist/martyrs/src/modules/core/views/components/partials/LocationSelection.vue.js.map +1 -1
  173. package/dist/martyrs/src/modules/core/views/components/partials/Navigation.vue.js +23 -23
  174. package/dist/martyrs/src/modules/core/views/components/partials/Navigation.vue.js.map +1 -1
  175. package/dist/martyrs/src/modules/core/views/components/partials/NavigationBar.vue.js +3 -3
  176. package/dist/martyrs/src/modules/core/views/components/partials/NavigationBar.vue.js.map +1 -1
  177. package/dist/martyrs/src/modules/core/views/components/partials/Sidebar.vue.js +7 -7
  178. package/dist/martyrs/src/modules/core/views/components/partials/Sidebar.vue.js.map +1 -1
  179. package/dist/martyrs/src/modules/core/views/components/sections/{Filters.vue.js → Filters.vue2.js} +2 -2
  180. package/dist/martyrs/src/modules/core/views/components/sections/Filters.vue2.js.map +1 -0
  181. package/dist/martyrs/src/modules/core/views/components/sections/SectionPageTitle.vue.js +2 -2
  182. package/dist/martyrs/src/modules/core/views/components/sections/SectionPageTitle.vue.js.map +1 -1
  183. package/dist/martyrs/src/modules/core/views/components/sections/Walkthrough.vue.js +1 -1
  184. package/dist/martyrs/src/modules/core/views/components/sections/filters/FilterCheckbox.vue2.js +2 -2
  185. package/dist/martyrs/src/modules/core/views/components/sections/filters/FilterCheckbox.vue2.js.map +1 -1
  186. package/dist/martyrs/src/modules/core/views/components/sections/filters/FilterDateRange.vue2.js +3 -3
  187. package/dist/martyrs/src/modules/core/views/components/sections/filters/FilterDateRange.vue2.js.map +1 -1
  188. package/dist/martyrs/src/modules/core/views/components/sections/filters/FilterRange.vue.js +2 -2
  189. package/dist/martyrs/src/modules/core/views/components/sections/filters/FilterRange.vue.js.map +1 -1
  190. package/dist/martyrs/src/modules/core/views/store/core.store.js +29 -47
  191. package/dist/martyrs/src/modules/core/views/store/core.store.js.map +1 -1
  192. package/dist/martyrs/src/modules/core/views/utils/vue-app-renderer.js +21 -2
  193. package/dist/martyrs/src/modules/core/views/utils/vue-app-renderer.js.map +1 -1
  194. package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.js +5 -5
  195. package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.js.map +1 -1
  196. package/dist/martyrs/src/modules/events/components/blocks/CardEventShort.vue.js +3 -3
  197. package/dist/martyrs/src/modules/events/components/blocks/CardEventShort.vue.js.map +1 -1
  198. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +4 -4
  199. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js.map +1 -1
  200. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +18 -18
  201. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js.map +1 -1
  202. package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +7 -7
  203. package/dist/martyrs/src/modules/events/components/pages/Event.vue.js.map +1 -1
  204. package/dist/martyrs/src/modules/events/components/pages/Events.vue.js +2 -2
  205. package/dist/martyrs/src/modules/events/components/pages/Events.vue.js.map +1 -1
  206. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.js +2 -2
  207. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.js.map +1 -1
  208. package/dist/martyrs/src/modules/events/components/sections/EditTickets.vue.js +5 -5
  209. package/dist/martyrs/src/modules/events/components/sections/EditTickets.vue.js.map +1 -1
  210. package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.js +2 -2
  211. package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.js.map +1 -1
  212. package/dist/martyrs/src/modules/events/components/sections/Feed.vue.js +1 -1
  213. package/dist/martyrs/src/modules/events/components/sections/List.vue.js +2 -2
  214. package/dist/martyrs/src/modules/events/components/sections/List.vue.js.map +1 -1
  215. package/dist/martyrs/src/modules/events/components/sections/SelectDate.vue.js +1 -1
  216. package/dist/martyrs/src/modules/events/components/sections/SelectDate.vue.js.map +1 -1
  217. package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.js +1 -1
  218. package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.js.map +1 -1
  219. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +3 -3
  220. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js.map +1 -1
  221. package/dist/martyrs/src/modules/icons/components/IconSearchPopup.vue.js +4 -4
  222. package/dist/martyrs/src/modules/icons/components/IconSearchPopup.vue.js.map +1 -1
  223. package/dist/martyrs/src/modules/icons/navigation/IconSort.vue.js +4 -4
  224. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.js +7 -7
  225. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.js.map +1 -1
  226. package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.js +3 -3
  227. package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.js.map +1 -1
  228. package/dist/martyrs/src/modules/inventory/components/forms/HistoryView.vue.js +2 -2
  229. package/dist/martyrs/src/modules/inventory/components/forms/HistoryView.vue.js.map +1 -1
  230. package/dist/martyrs/src/modules/inventory/components/forms/StockAlertsForm.vue.js +1 -1
  231. package/dist/martyrs/src/modules/inventory/components/forms/StockAlertsForm.vue.js.map +1 -1
  232. package/dist/martyrs/src/modules/inventory/components/pages/Inventory.vue.js +10 -10
  233. package/dist/martyrs/src/modules/inventory/components/pages/Inventory.vue.js.map +1 -1
  234. package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.js +5 -5
  235. package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.js.map +1 -1
  236. package/dist/martyrs/src/modules/landing/components/sections/SectionEarn.vue.js +5 -5
  237. package/dist/martyrs/src/modules/landing/components/sections/SectionEarn.vue.js.map +1 -1
  238. package/dist/martyrs/src/modules/landing/components/sections/SectionGuide.vue.js +2 -2
  239. package/dist/martyrs/src/modules/landing/components/sections/SectionGuide.vue.js.map +1 -1
  240. package/dist/martyrs/src/modules/landing/components/sections/SectionHeroToken.vue.js +1 -1
  241. package/dist/martyrs/src/modules/landing/components/sections/SectionHeroToken.vue.js.map +1 -1
  242. package/dist/martyrs/src/modules/landing/components/sections/SectionJoinUs.vue.js +2 -2
  243. package/dist/martyrs/src/modules/landing/components/sections/SectionJoinUs.vue.js.map +1 -1
  244. package/dist/martyrs/src/modules/landing/components/sections/SectionMobileApp.vue.js +3 -3
  245. package/dist/martyrs/src/modules/landing/components/sections/SectionMobileApp.vue.js.map +1 -1
  246. package/dist/martyrs/src/modules/landing/components/sections/SectionOverview.vue.js +2 -2
  247. package/dist/martyrs/src/modules/landing/components/sections/SectionOverview.vue.js.map +1 -1
  248. package/dist/martyrs/src/modules/landing/components/sections/SectionRoadmap.vue.js +3 -3
  249. package/dist/martyrs/src/modules/landing/components/sections/SectionRoadmap.vue.js.map +1 -1
  250. package/dist/martyrs/src/modules/marketplace/views/components/pages/Marketplace.vue.js +6 -6
  251. package/dist/martyrs/src/modules/marketplace/views/components/pages/Marketplace.vue.js.map +1 -1
  252. package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.js +4 -4
  253. package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.js.map +1 -1
  254. package/dist/martyrs/src/modules/music/components/blocks/ActionButtons.vue.js +2 -2
  255. package/dist/martyrs/src/modules/music/components/blocks/ActionButtons.vue.js.map +1 -1
  256. package/dist/martyrs/src/modules/music/components/cards/AlbumCard.vue.js +5 -5
  257. package/dist/martyrs/src/modules/music/components/cards/AlbumCard.vue.js.map +1 -1
  258. package/dist/martyrs/src/modules/music/components/cards/ArtistCard.vue.js +4 -4
  259. package/dist/martyrs/src/modules/music/components/cards/ArtistCard.vue.js.map +1 -1
  260. package/dist/martyrs/src/modules/music/components/cards/ArtistCardSmall.vue.js +3 -3
  261. package/dist/martyrs/src/modules/music/components/cards/ArtistCardSmall.vue.js.map +1 -1
  262. package/dist/martyrs/src/modules/music/components/cards/PlaylistCard.vue.js +5 -5
  263. package/dist/martyrs/src/modules/music/components/cards/PlaylistCard.vue.js.map +1 -1
  264. package/dist/martyrs/src/modules/music/components/cards/TrackListCard.vue.js +5 -5
  265. package/dist/martyrs/src/modules/music/components/cards/TrackListCard.vue.js.map +1 -1
  266. package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.js +8 -8
  267. package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.js.map +1 -1
  268. package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.js +5 -5
  269. package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.js.map +1 -1
  270. package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.js +7 -7
  271. package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.js.map +1 -1
  272. package/dist/martyrs/src/modules/music/components/forms/SearchForm.vue.js +2 -2
  273. package/dist/martyrs/src/modules/music/components/forms/SearchForm.vue.js.map +1 -1
  274. package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.js +13 -13
  275. package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.js.map +1 -1
  276. package/dist/martyrs/src/modules/music/components/pages/Album.vue.js +23 -23
  277. package/dist/martyrs/src/modules/music/components/pages/Album.vue.js.map +1 -1
  278. package/dist/martyrs/src/modules/music/components/pages/Artist.vue.js +8 -8
  279. package/dist/martyrs/src/modules/music/components/pages/Artist.vue.js.map +1 -1
  280. package/dist/martyrs/src/modules/music/components/pages/MusicHome.vue.js +10 -13
  281. package/dist/martyrs/src/modules/music/components/pages/MusicHome.vue.js.map +1 -1
  282. package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.js +9 -9
  283. package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.js.map +1 -1
  284. package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.js +26 -26
  285. package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.js.map +1 -1
  286. package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.js +17 -17
  287. package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.js.map +1 -1
  288. package/dist/martyrs/src/modules/music/components/pages/Track.vue.js +26 -26
  289. package/dist/martyrs/src/modules/music/components/pages/Track.vue.js.map +1 -1
  290. package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.js +1 -1
  291. package/dist/martyrs/src/modules/music/components/player/FullscreenPlayer.vue.js +8 -8
  292. package/dist/martyrs/src/modules/music/components/player/FullscreenPlayer.vue.js.map +1 -1
  293. package/dist/martyrs/src/modules/music/music.client.js +6 -6
  294. package/dist/martyrs/src/modules/music/music.client.js.map +1 -1
  295. package/dist/martyrs/src/modules/notifications/components/blocks/NotificationItem.vue.js +2 -2
  296. package/dist/martyrs/src/modules/notifications/components/blocks/NotificationItem.vue.js.map +1 -1
  297. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js +1 -1
  298. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js.map +1 -1
  299. package/dist/martyrs/src/modules/notifications/notifications.client.js +2 -2
  300. package/dist/martyrs/src/modules/notifications/store/notifications.store.js +1 -1
  301. package/dist/martyrs/src/modules/orders/components/blocks/CardApplication.vue.js +2 -2
  302. package/dist/martyrs/src/modules/orders/components/blocks/CardCustomer.vue.js +2 -2
  303. package/dist/martyrs/src/modules/orders/components/blocks/CardOrder.vue.js +9 -9
  304. package/dist/martyrs/src/modules/orders/components/blocks/CardOrder.vue.js.map +1 -1
  305. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.js +5 -5
  306. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.js.map +1 -1
  307. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderItem.vue.js +9 -9
  308. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderItem.vue.js.map +1 -1
  309. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.js +5 -5
  310. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.js.map +1 -1
  311. package/dist/martyrs/src/modules/orders/components/blocks/StatusHistory.vue.js +2 -2
  312. package/dist/martyrs/src/modules/orders/components/blocks/StatusHistory.vue.js.map +1 -1
  313. package/dist/martyrs/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue.js +1 -1
  314. package/dist/martyrs/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue.js.map +1 -1
  315. package/dist/martyrs/src/modules/orders/components/elements/PriceTotal.vue.js +3 -3
  316. package/dist/martyrs/src/modules/orders/components/elements/PriceTotal.vue.js.map +1 -1
  317. package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.js +2 -2
  318. package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.js.map +1 -1
  319. package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.js +3 -3
  320. package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.js.map +1 -1
  321. package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.js +1 -1
  322. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +17 -17
  323. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js.map +1 -1
  324. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js +2 -2
  325. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js.map +1 -1
  326. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +4 -4
  327. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js.map +1 -1
  328. package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.js +2 -2
  329. package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.js.map +1 -1
  330. package/dist/martyrs/src/modules/orders/components/sections/ApplicationDetails.vue.js +3 -3
  331. package/dist/martyrs/src/modules/orders/components/sections/ApplicationDetails.vue.js.map +1 -1
  332. package/dist/martyrs/src/modules/orders/components/sections/AskToLogin.vue.js +1 -1
  333. package/dist/martyrs/src/modules/orders/components/sections/AskToLogin.vue.js.map +1 -1
  334. package/dist/martyrs/src/modules/orders/components/sections/CustomerDetails.vue.js +3 -3
  335. package/dist/martyrs/src/modules/orders/components/sections/CustomerDetails.vue.js.map +1 -1
  336. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +2 -2
  337. package/dist/martyrs/src/modules/orders/components/sections/Succes.vue.js +3 -3
  338. package/dist/martyrs/src/modules/orders/store/shopcart.js +1 -1
  339. package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.js +2 -2
  340. package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.js +3 -3
  341. package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.js.map +1 -1
  342. package/dist/martyrs/src/modules/organizations/components/blocks/Contacts.vue.js +8 -8
  343. package/dist/martyrs/src/modules/organizations/components/blocks/Contacts.vue.js.map +1 -1
  344. package/dist/martyrs/src/modules/organizations/components/blocks/Rating.vue.js +1 -1
  345. package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.js +3 -3
  346. package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.js.map +1 -1
  347. package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.js +1 -1
  348. package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.js.map +1 -1
  349. package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.js +1 -1
  350. package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.js.map +1 -1
  351. package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.js +2 -2
  352. package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.js.map +1 -1
  353. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +1 -1
  354. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js.map +1 -1
  355. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +6 -6
  356. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js.map +1 -1
  357. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js +2 -2
  358. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +1 -1
  359. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js +2 -2
  360. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js.map +1 -1
  361. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +4 -4
  362. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js.map +1 -1
  363. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js +1 -1
  364. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js.map +1 -1
  365. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +1 -1
  366. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js +3 -3
  367. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js.map +1 -1
  368. package/dist/martyrs/src/modules/pages/views/components/pages/Page.vue.js +5 -5
  369. package/dist/martyrs/src/modules/pages/views/components/pages/Page.vue.js.map +1 -1
  370. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js +1 -1
  371. package/dist/martyrs/src/modules/products/components/blocks/CardCategory.vue.js +1 -1
  372. package/dist/martyrs/src/modules/products/components/blocks/CardCategory.vue.js.map +1 -1
  373. package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.js +4 -4
  374. package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.js.map +1 -1
  375. package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.js +3 -3
  376. package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.js.map +1 -1
  377. package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.js +5 -5
  378. package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.js.map +1 -1
  379. package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.js +3 -3
  380. package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.js.map +1 -1
  381. package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.js +2 -2
  382. package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.js.map +1 -1
  383. package/dist/martyrs/src/modules/products/components/elements/Image360.vue.js +5 -5
  384. package/dist/martyrs/src/modules/products/components/elements/Image360.vue.js.map +1 -1
  385. package/dist/martyrs/src/modules/products/components/elements/Price.vue.js +2 -2
  386. package/dist/martyrs/src/modules/products/components/elements/Price.vue.js.map +1 -1
  387. package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.js +3 -3
  388. package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.js.map +1 -1
  389. package/dist/martyrs/src/modules/products/components/elements/THC.vue.js +1 -1
  390. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js +2 -2
  391. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js.map +1 -1
  392. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +3 -3
  393. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js.map +1 -1
  394. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js +7 -7
  395. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js.map +1 -1
  396. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +8 -8
  397. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js.map +1 -1
  398. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +12 -12
  399. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js.map +1 -1
  400. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js +4 -4
  401. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js.map +1 -1
  402. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js +6 -6
  403. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js.map +1 -1
  404. package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.js +1 -1
  405. package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.js.map +1 -1
  406. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +9 -9
  407. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js.map +1 -1
  408. package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.js +3 -3
  409. package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.js.map +1 -1
  410. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js +2 -2
  411. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js.map +1 -1
  412. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.js +2 -2
  413. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.js.map +1 -1
  414. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +6 -6
  415. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js.map +1 -1
  416. package/dist/martyrs/src/modules/rents/views/components/blocks/CardRent.vue.js +1 -1
  417. package/dist/martyrs/src/modules/rents/views/components/blocks/CardRent.vue.js.map +1 -1
  418. package/dist/martyrs/src/modules/rents/views/components/pages/Gant/DateLabel.vue.js +1 -1
  419. package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttBar.vue.js +2 -2
  420. package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttBar.vue.js.map +1 -1
  421. package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttChart.vue.js +8 -8
  422. package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttChart.vue.js.map +1 -1
  423. package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttHeaderCell.vue.js +1 -1
  424. package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttHeaderCell.vue.js.map +1 -1
  425. package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.js +1 -1
  426. package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.js.map +1 -1
  427. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js +6 -6
  428. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js.map +1 -1
  429. package/dist/martyrs/src/modules/reports/components/pages/BackofficeReports.vue.js +3 -3
  430. package/dist/martyrs/src/modules/reports/components/pages/BackofficeReports.vue.js.map +1 -1
  431. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js +1 -1
  432. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js.map +1 -1
  433. package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.js +5 -5
  434. package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.js.map +1 -1
  435. package/dist/martyrs/src/modules/spots/components/blocks/SpotMemberModify.vue.js +2 -2
  436. package/dist/martyrs/src/modules/spots/components/blocks/SpotMemberModify.vue.js.map +1 -1
  437. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js +2 -2
  438. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js.map +1 -1
  439. package/dist/martyrs/src/modules/spots/components/pages/Spot.vue.js +6 -6
  440. package/dist/martyrs/src/modules/spots/components/pages/Spot.vue.js.map +1 -1
  441. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +2 -2
  442. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js.map +1 -1
  443. package/dist/martyrs/src/modules/spots/components/pages/Spots.vue.js +3 -3
  444. package/dist/martyrs/src/modules/spots/components/pages/Spots.vue.js.map +1 -1
  445. package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.js +5 -5
  446. package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.js.map +1 -1
  447. package/dist/martyrs/src/modules/wallet/views/components/blocks/CardBalanceReplenished.vue.js +5 -5
  448. package/dist/martyrs/src/modules/wallet/views/components/blocks/CardBalanceReplenished.vue.js.map +1 -1
  449. package/dist/martyrs/src/modules/wallet/views/components/blocks/CardDeposit.vue.js +5 -5
  450. package/dist/martyrs/src/modules/wallet/views/components/blocks/CardDeposit.vue.js.map +1 -1
  451. package/dist/martyrs/src/modules/wallet/views/components/blocks/CashDeposit.vue.js +2 -2
  452. package/dist/martyrs/src/modules/wallet/views/components/blocks/CashDeposit.vue.js.map +1 -1
  453. package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.js +4 -4
  454. package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.js.map +1 -1
  455. package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDepositProcessing.vue.js +12 -12
  456. package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDepositProcessing.vue.js.map +1 -1
  457. package/dist/martyrs/src/modules/wallet/views/components/elements/ConnectMetamask.vue.js +4 -4
  458. package/dist/martyrs/src/modules/wallet/views/components/elements/ConnectMetamask.vue.js.map +1 -1
  459. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js +23 -23
  460. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js.map +1 -1
  461. package/dist/martyrs.css +1 -1
  462. package/dist/martyrs.es.js +1 -1
  463. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/utils.js +1 -1
  464. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/utils.js +1 -1
  465. package/dist/style.css +194 -202
  466. package/dist/{web-CH5wzMHy.js → web-BqTV9va1.js} +1 -1
  467. package/package.json +6 -8
  468. package/src/builder/modes/ssr.prod.js +1 -0
  469. package/src/builder/modes/ssr.rspack.dev.js +13 -6
  470. package/src/builder/rspack/rspack.config.base.js +7 -0
  471. package/src/builder/rspack/rspack.config.ssr.client.js +19 -44
  472. package/src/builder/templates/page.js +21 -0
  473. package/src/components/Block/Block.vue +1 -1
  474. package/src/components/BottomSheet/BottomSheet.vue +1 -1
  475. package/src/components/Calendar/Calendar.vue +5 -5
  476. package/src/components/Checkbox/Checkbox.vue +2 -2
  477. package/src/components/Chips/Chips.vue +2 -2
  478. package/src/components/Completion/Completion.vue +2 -2
  479. package/src/components/Countdown/Countdown.vue +5 -5
  480. package/src/components/DatePicker/DatePicker.vue +4 -4
  481. package/src/components/EditImages/EditImages.vue +1 -1
  482. package/src/components/Feed/Feed.old.vue +1 -1
  483. package/src/components/Feed/Feed.vue +1 -1
  484. package/src/components/FieldBig/FieldBig.vue +2 -2
  485. package/src/components/FieldPhone/FieldPhone.vue +1 -1
  486. package/src/components/FieldTags/BlockTags.vue +1 -1
  487. package/src/components/Loader/Loader.vue +1 -1
  488. package/src/components/Menu/MenuItem.vue +2 -2
  489. package/src/components/PhotoViewer/PhotoViewer.vue +1 -1
  490. package/src/components/Radio/Radio.vue +1 -1
  491. package/src/components/Select/Select.vue +1 -1
  492. package/src/components/Table/Table.vue +2 -2
  493. package/src/components/Text/Text.vue +1 -1
  494. package/src/components/UploadImage/UploadImage.vue +2 -2
  495. package/src/components/UploadImageMultiple/UploadImageMultiple.vue +3 -3
  496. package/src/configurator/components/layouts/layoutConfigurator.vue +1 -1
  497. package/src/configurator/components/pages/Styles.vue +2 -2
  498. package/src/jit/.claude/settings.local.json +10 -0
  499. package/src/jit/CLAUDE.md +387 -0
  500. package/src/jit/core.js +274 -0
  501. package/src/jit/extractor.js +140 -0
  502. package/src/jit/index.js +19 -0
  503. package/src/jit/loader.js +46 -0
  504. package/src/jit/plugin.js +209 -0
  505. package/src/jit/rules.js +474 -0
  506. package/src/jit/variants.js +128 -0
  507. package/src/modules/auth/views/components/blocks/CardUser.vue +2 -2
  508. package/src/modules/auth/views/components/blocks/ProfileCard.vue +4 -4
  509. package/src/modules/auth/views/components/layouts/Auth.vue +1 -1
  510. package/src/modules/auth/views/components/pages/EnterPassword.vue +2 -2
  511. package/src/modules/auth/views/components/pages/Profile.vue +5 -5
  512. package/src/modules/auth/views/components/pages/ProfileBlogposts.vue +1 -1
  513. package/src/modules/auth/views/components/pages/ProfileEditAccount.vue +2 -2
  514. package/src/modules/auth/views/components/pages/ResetPassword.vue +1 -1
  515. package/src/modules/auth/views/components/pages/SignIn.vue +3 -3
  516. package/src/modules/auth/views/components/pages/SignUp.vue +1 -1
  517. package/src/modules/auth/views/components/pages/UserDashboard.vue +3 -3
  518. package/src/modules/auth/views/components/sections/FeaturedUsers.vue +1 -1
  519. package/src/modules/auth/views/components/sections/ProfileCompletion.vue +2 -2
  520. package/src/modules/auth/views/components/sections/ProfileEditCredentials.vue +7 -7
  521. package/src/modules/auth/views/components/sections/SliderFeatures.vue +1 -1
  522. package/src/modules/backoffice/components/admin/Backcalls.vue +1 -1
  523. package/src/modules/backoffice/components/admin/FastOrders.vue +1 -1
  524. package/src/modules/backoffice/components/admin/ProductEdit.vue +2 -2
  525. package/src/modules/backoffice/components/admin/UserEdit.vue +1 -1
  526. package/src/modules/backoffice/components/admin/Users.vue +2 -2
  527. package/src/modules/backoffice/components/pages/Dashboard.vue +4 -4
  528. package/src/modules/backoffice/components/partials/Sidebar.vue +5 -5
  529. package/src/modules/chats/components/blocks/ChatMessage.vue +1 -1
  530. package/src/modules/chats/components/sections/ChatWindow.vue +2 -2
  531. package/src/modules/community/components/blocks/Activity.vue +7 -7
  532. package/src/modules/community/components/blocks/CardBlogpost.vue +1 -1
  533. package/src/modules/community/components/blocks/FooterBlogpost.vue +4 -4
  534. package/src/modules/community/components/layouts/Community.vue +10 -10
  535. package/src/modules/community/components/pages/CreateBlogPost.vue +1 -1
  536. package/src/modules/community/components/pages/Posts.vue +2 -2
  537. package/src/modules/community/components/sections/Comment.vue +2 -2
  538. package/src/modules/constructor/components/elements/Audio.vue +1 -1
  539. package/src/modules/constructor/components/elements/Caption.vue +1 -1
  540. package/src/modules/constructor/components/elements/Embed.vue +1 -1
  541. package/src/modules/constructor/components/elements/Textarea.vue +1 -1
  542. package/src/modules/constructor/components/elements/Video.vue +1 -1
  543. package/src/modules/core/views/classes/core.app.js +2 -1
  544. package/src/modules/core/views/components/blocks/BlockSorting.vue +2 -2
  545. package/src/modules/core/views/components/blocks/CardFooter.vue +4 -4
  546. package/src/modules/core/views/components/blocks/CardHeader.vue +7 -7
  547. package/src/modules/core/views/components/blocks/HelpCard.vue +1 -1
  548. package/src/modules/core/views/components/blocks/PopupAuth.vue +1 -1
  549. package/src/modules/core/views/components/elements/ButtonDate.vue +1 -1
  550. package/src/modules/core/views/components/elements/PhotoStack.vue +3 -3
  551. package/src/modules/core/views/components/layouts/App.vue +28 -4
  552. package/src/modules/core/views/components/layouts/Client.vue +4 -4
  553. package/src/modules/core/views/components/partials/BottomNavigationBar.vue +15 -15
  554. package/src/modules/core/views/components/partials/CitySelection.vue +1 -1
  555. package/src/modules/core/views/components/partials/Footer.centered.vue +17 -17
  556. package/src/modules/core/views/components/partials/Footer.vue +18 -18
  557. package/src/modules/core/views/components/partials/Header.vue +10 -11
  558. package/src/modules/core/views/components/partials/LocationSelection.vue +1 -1
  559. package/src/modules/core/views/components/partials/Navigation.vue +20 -19
  560. package/src/modules/core/views/components/partials/NavigationBar.vue +3 -3
  561. package/src/modules/core/views/components/partials/Sidebar.vue +6 -6
  562. package/src/modules/core/views/components/sections/SectionPageTitle.vue +2 -2
  563. package/src/modules/core/views/components/sections/filters/FilterCheckbox.vue +1 -1
  564. package/src/modules/core/views/components/sections/filters/FilterDateRange.vue +2 -2
  565. package/src/modules/core/views/components/sections/filters/FilterPrice.vue +2 -2
  566. package/src/modules/core/views/components/sections/filters/FilterRange.vue +2 -2
  567. package/src/modules/core/views/store/core.store.js +36 -60
  568. package/src/modules/core/views/utils/vue-app-renderer.js +31 -1
  569. package/src/modules/events/components/blocks/CardEvent.vue +6 -6
  570. package/src/modules/events/components/blocks/CardEventShort.vue +3 -3
  571. package/src/modules/events/components/pages/EditEvent.vue +1 -1
  572. package/src/modules/events/components/pages/EditEventTickets.vue +18 -18
  573. package/src/modules/events/components/pages/Event.vue +5 -5
  574. package/src/modules/events/components/pages/Events.vue +2 -2
  575. package/src/modules/events/components/pages/EventsBackoffice.vue +2 -2
  576. package/src/modules/events/components/sections/EditTickets.vue +5 -5
  577. package/src/modules/events/components/sections/EventsHot.vue +2 -2
  578. package/src/modules/events/components/sections/List.vue +1 -1
  579. package/src/modules/events/components/sections/SelectDate.vue +1 -1
  580. package/src/modules/gallery/components/pages/Gallery.vue +1 -1
  581. package/src/modules/gallery/components/sections/BackofficeGallery.vue +1 -1
  582. package/src/modules/governance/reactcode/src/components/CreateInitiativeForm.tsx +14 -14
  583. package/src/modules/governance/reactcode/src/components/CreateMilestoneForm.tsx +13 -13
  584. package/src/modules/governance/reactcode/src/components/EmptyState.tsx +2 -2
  585. package/src/modules/governance/reactcode/src/components/InitiativeCard.tsx +1 -1
  586. package/src/modules/governance/reactcode/src/components/LinkedEntityCard.tsx +1 -1
  587. package/src/modules/governance/reactcode/src/components/MilestoneCard.tsx +2 -2
  588. package/src/modules/governance/reactcode/src/components/ProductRepositories.tsx +6 -6
  589. package/src/modules/governance/reactcode/src/components/ProductSummary.tsx +18 -18
  590. package/src/modules/governance/reactcode/src/components/ProductTeam.tsx +7 -7
  591. package/src/modules/governance/reactcode/src/components/ProposeTaskForm.tsx +9 -9
  592. package/src/modules/governance/reactcode/src/components/TaskAssignForm.tsx +4 -4
  593. package/src/modules/governance/reactcode/src/components/TaskCard.tsx +1 -1
  594. package/src/modules/governance/reactcode/src/components/TaskStatusBadge.tsx +1 -1
  595. package/src/modules/governance/reactcode/src/components/VoteForm.tsx +6 -6
  596. package/src/modules/governance/reactcode/src/components/VotingCard.tsx +2 -2
  597. package/src/modules/governance/reactcode/src/components/VotingResults.tsx +15 -15
  598. package/src/modules/governance/reactcode/src/pages/InitiativeDetailPage.tsx +41 -41
  599. package/src/modules/governance/reactcode/src/pages/InitiativeMilestonesPage.tsx +8 -8
  600. package/src/modules/governance/reactcode/src/pages/InitiativesListPage.tsx +6 -6
  601. package/src/modules/governance/reactcode/src/pages/MilestoneDetailPage.tsx +9 -9
  602. package/src/modules/governance/reactcode/src/pages/RoadmapPage.tsx +14 -14
  603. package/src/modules/governance/reactcode/src/pages/TaskDetailPage.tsx +44 -44
  604. package/src/modules/governance/reactcode/src/pages/VotingDetailPage.tsx +8 -8
  605. package/src/modules/governance/reactcode/src/pages/VotingsListPage.tsx +3 -3
  606. package/src/modules/governance/reactcode-2/App.tsx +28 -0
  607. package/src/modules/governance/reactcode-2/README.md +20 -0
  608. package/src/modules/governance/reactcode-2/components/Charts.tsx +58 -0
  609. package/src/modules/governance/reactcode-2/components/Layout.tsx +457 -0
  610. package/src/modules/governance/reactcode-2/components/TaskPage.tsx +325 -0
  611. package/src/modules/governance/reactcode-2/components/VoteBadge.tsx +27 -0
  612. package/src/modules/governance/reactcode-2/components/VotingsFeedPage.tsx +328 -0
  613. package/src/modules/governance/reactcode-2/constants.ts +154 -0
  614. package/src/modules/governance/reactcode-2/index.html +70 -0
  615. package/src/modules/governance/reactcode-2/index.tsx +15 -0
  616. package/src/modules/governance/reactcode-2/metadata.json +5 -0
  617. package/src/modules/governance/reactcode-2/package.json +23 -0
  618. package/src/modules/governance/reactcode-2/pnpm-lock.yaml +1410 -0
  619. package/src/modules/governance/reactcode-2/tsconfig.json +29 -0
  620. package/src/modules/governance/reactcode-2/types.ts +48 -0
  621. package/src/modules/governance/reactcode-2/vite.config.ts +23 -0
  622. package/src/modules/governance/views/components/blocks/CardInitiativeItem.vue +10 -10
  623. package/src/modules/governance/views/components/blocks/CardMilestoneItem.vue +15 -15
  624. package/src/modules/governance/views/components/blocks/CardTaskItem.vue +9 -9
  625. package/src/modules/governance/views/components/blocks/CardVotingItem.vue +11 -11
  626. package/src/modules/governance/views/components/layouts/Governance.vue +1 -1
  627. package/src/modules/governance/views/components/pages/Governance.vue +3 -3
  628. package/src/modules/governance/views/components/pages/Initiative.vue +112 -112
  629. package/src/modules/governance/views/components/pages/InitiativeMilestones.vue +31 -31
  630. package/src/modules/governance/views/components/pages/Initiatives.vue +20 -22
  631. package/src/modules/governance/views/components/pages/Milestone.vue +25 -25
  632. package/src/modules/governance/views/components/pages/Roadmap.vue +47 -47
  633. package/src/modules/governance/views/components/pages/Task.vue +106 -106
  634. package/src/modules/governance/views/components/pages/Tasks.vue +16 -16
  635. package/src/modules/governance/views/components/pages/Voting.vue +23 -23
  636. package/src/modules/governance/views/components/pages/Votings.vue +7 -7
  637. package/src/modules/governance/views/components/partials/EmptyState.vue +3 -3
  638. package/src/modules/governance/views/components/partials/LinkedEntityCard.vue +11 -11
  639. package/src/modules/governance/views/components/partials/TaskStatusBadge.vue +4 -4
  640. package/src/modules/governance/views/components/partials/VoteForm.vue +14 -14
  641. package/src/modules/governance/views/components/partials/VotingResults.vue +22 -22
  642. package/src/modules/icons/components/IconSearchPopup.vue +3 -3
  643. package/src/modules/icons/entities/IconCash.vue +23 -0
  644. package/src/modules/icons/navigation/IconSort.vue +4 -4
  645. package/src/modules/icons/pages/IconsPage.vue +7 -7
  646. package/src/modules/inventory/components/forms/AdjustmentForm.vue +3 -3
  647. package/src/modules/inventory/components/forms/HistoryView.vue +1 -1
  648. package/src/modules/inventory/components/forms/StockAlertsForm.vue +1 -1
  649. package/src/modules/inventory/components/pages/Inventory.vue +10 -10
  650. package/src/modules/inventory/components/pages/InventoryEdit.vue +6 -6
  651. package/src/modules/landing/components/blocks/MapBlock.vue +2 -2
  652. package/src/modules/landing/components/sections/Examples.vue +1 -1
  653. package/src/modules/landing/components/sections/InstagramSection.vue +1 -1
  654. package/src/modules/landing/components/sections/SectionEarn.vue +4 -4
  655. package/src/modules/landing/components/sections/SectionFeature.vue +1 -1
  656. package/src/modules/landing/components/sections/SectionFocus.vue +2 -2
  657. package/src/modules/landing/components/sections/SectionGuide.vue +2 -2
  658. package/src/modules/landing/components/sections/SectionHeroToken.vue +1 -1
  659. package/src/modules/landing/components/sections/SectionHeroVideo.vue +2 -2
  660. package/src/modules/landing/components/sections/SectionJoinUs.vue +2 -2
  661. package/src/modules/landing/components/sections/SectionMobileApp.vue +3 -3
  662. package/src/modules/landing/components/sections/SectionOverview.vue +2 -2
  663. package/src/modules/landing/components/sections/SectionRoadmap.vue +2 -2
  664. package/src/modules/marketplace/views/components/layouts/Marketplace.vue +8 -8
  665. package/src/modules/marketplace/views/components/pages/Marketplace.vue +5 -5
  666. package/src/modules/marketplace/views/components/sections/SectionMenu.vue +2 -2
  667. package/src/modules/music/components/SidebarMusic.vue +11 -11
  668. package/src/modules/music/components/blocks/ActionButtons.vue +2 -2
  669. package/src/modules/music/components/cards/AlbumCard.vue +4 -4
  670. package/src/modules/music/components/cards/ArtistCard.vue +3 -8
  671. package/src/modules/music/components/cards/ArtistCardSmall.vue +2 -2
  672. package/src/modules/music/components/cards/PlaylistCard.vue +4 -4
  673. package/src/modules/music/components/cards/TrackListCard.vue +5 -5
  674. package/src/modules/music/components/forms/AlbumForm.vue +8 -8
  675. package/src/modules/music/components/forms/ArtistForm.vue +4 -4
  676. package/src/modules/music/components/forms/PlaylistForm.vue +7 -7
  677. package/src/modules/music/components/forms/SearchForm.vue +1 -1
  678. package/src/modules/music/components/forms/TrackForm.vue +13 -13
  679. package/src/modules/music/components/pages/Album.vue +22 -22
  680. package/src/modules/music/components/pages/Artist.vue +7 -7
  681. package/src/modules/music/components/pages/MusicHome.vue +13 -18
  682. package/src/modules/music/components/pages/MusicLibrary.vue +9 -9
  683. package/src/modules/music/components/pages/Playlist.vue +25 -25
  684. package/src/modules/music/components/pages/SearchResults.vue +15 -15
  685. package/src/modules/music/components/pages/Track.vue +25 -25
  686. package/src/modules/music/components/player/FullscreenPlayer.vue +5 -5
  687. package/src/modules/notifications/components/blocks/NotificationItem.vue +1 -1
  688. package/src/modules/notifications/components/elements/NotificationBadge.vue +1 -1
  689. package/src/modules/orders/components/blocks/CardApplication.vue +1 -1
  690. package/src/modules/orders/components/blocks/CardCustomer.vue +1 -1
  691. package/src/modules/orders/components/blocks/CardOrder.vue +9 -9
  692. package/src/modules/orders/components/blocks/CardOrderBackoffice.vue +5 -5
  693. package/src/modules/orders/components/blocks/CardOrderItem.vue +9 -9
  694. package/src/modules/orders/components/blocks/CardOrderUser.vue +3 -3
  695. package/src/modules/orders/components/blocks/CardOrderVar1.vue +4 -4
  696. package/src/modules/orders/components/blocks/StatusHistory.vue +3 -3
  697. package/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue +1 -1
  698. package/src/modules/orders/components/elements/PriceTotal.vue +3 -3
  699. package/src/modules/orders/components/forms/FormApplicationDetails.vue +2 -2
  700. package/src/modules/orders/components/forms/FormCustomerDetails.vue +3 -3
  701. package/src/modules/orders/components/pages/Favorites.vue +1 -1
  702. package/src/modules/orders/components/pages/OrderBackoffice.vue +15 -15
  703. package/src/modules/orders/components/pages/OrderCreate.vue +2 -2
  704. package/src/modules/orders/components/pages/OrderCreateBackoffice.vue +4 -4
  705. package/src/modules/orders/components/pages/Orders_refact.vue +3 -3
  706. package/src/modules/orders/components/partials/ShopCart.vue +2 -2
  707. package/src/modules/orders/components/sections/ApplicationDetails.vue +2 -2
  708. package/src/modules/orders/components/sections/AskToLogin.vue +1 -1
  709. package/src/modules/orders/components/sections/CustomerDetails.vue +2 -2
  710. package/src/modules/orders/components/sections/Succes.vue +4 -4
  711. package/src/modules/organizations/components/blocks/CardDepartment.vue +1 -1
  712. package/src/modules/organizations/components/blocks/CardOrganization.vue +4 -4
  713. package/src/modules/organizations/components/blocks/Contacts.vue +8 -8
  714. package/src/modules/organizations/components/blocks/Rating.vue +1 -1
  715. package/src/modules/organizations/components/forms/AddExistingMembersForm.vue +3 -3
  716. package/src/modules/organizations/components/forms/DepartmentForm.vue +1 -1
  717. package/src/modules/organizations/components/forms/InviteForm.vue +1 -1
  718. package/src/modules/organizations/components/pages/Department.vue +2 -2
  719. package/src/modules/organizations/components/pages/DepartmentEdit.vue +1 -1
  720. package/src/modules/organizations/components/pages/Members.vue +1 -1
  721. package/src/modules/organizations/components/pages/Organization.new.vue +8 -8
  722. package/src/modules/organizations/components/pages/Organization.vue +6 -6
  723. package/src/modules/organizations/components/pages/OrganizationDocuments.vue +2 -2
  724. package/src/modules/organizations/components/pages/Organizations.vue +3 -3
  725. package/src/modules/organizations/components/sections/Documents.vue +2 -2
  726. package/src/modules/organizations/components/sections/MembersAdd.vue +1 -1
  727. package/src/modules/organizations/components/sections/Unit.vue +1 -1
  728. package/src/modules/pages/views/components/blocks/CardPage.vue +2 -2
  729. package/src/modules/pages/views/components/pages/Page.vue +5 -5
  730. package/src/modules/products/components/blocks/CardCategory.vue +1 -1
  731. package/src/modules/products/components/blocks/CardPosition.vue +4 -4
  732. package/src/modules/products/components/blocks/CardProduct.vue +3 -3
  733. package/src/modules/products/components/blocks/ProductDiscounts.vue +3 -3
  734. package/src/modules/products/components/blocks/ProductImages.vue +2 -2
  735. package/src/modules/products/components/blocks/ProductVariants.vue +2 -2
  736. package/src/modules/products/components/elements/Image360.vue +2 -2
  737. package/src/modules/products/components/elements/Price.vue +2 -2
  738. package/src/modules/products/components/elements/QuantitySelector.vue +3 -3
  739. package/src/modules/products/components/elements/THC.vue +1 -1
  740. package/src/modules/products/components/forms/ReorderSettingsForm.vue +1 -1
  741. package/src/modules/products/components/forms/StockAuditForm.vue +2 -2
  742. package/src/modules/products/components/forms/StockHistoryView.vue +1 -1
  743. package/src/modules/products/components/pages/Categories.vue +1 -1
  744. package/src/modules/products/components/pages/CategoryEdit.vue +2 -2
  745. package/src/modules/products/components/pages/Product.vue +6 -6
  746. package/src/modules/products/components/pages/ProductEdit.vue +6 -6
  747. package/src/modules/products/components/pages/Products.vue +11 -11
  748. package/src/modules/products/components/sections/EditAttributes.vue +4 -4
  749. package/src/modules/products/components/sections/EditCategories.vue +1 -1
  750. package/src/modules/products/components/sections/EditDiscounts.vue +6 -6
  751. package/src/modules/products/components/sections/EditRecommended.vue +1 -1
  752. package/src/modules/products/components/sections/EditVariants.vue +8 -8
  753. package/src/modules/products/components/sections/FilterProducts.vue +3 -3
  754. package/src/modules/products/components/sections/ProductConfigurator.vue +2 -2
  755. package/src/modules/products/components/sections/ProductInformationSection.vue +10 -10
  756. package/src/modules/products/components/sections/ProductsRecommended.vue +2 -2
  757. package/src/modules/products/components/sections/SectionProduct.vue +7 -7
  758. package/src/modules/products/experiments/product-recommendation/components/HeroRecommendation.vue +3 -3
  759. package/src/modules/rents/views/components/blocks/CardRent.vue +1 -1
  760. package/src/modules/rents/views/components/pages/Gant/DateLabel.vue +1 -1
  761. package/src/modules/rents/views/components/pages/Gant/GanttBar.vue +2 -2
  762. package/src/modules/rents/views/components/pages/Gant/GanttChart.vue +8 -8
  763. package/src/modules/rents/views/components/pages/Gant/GanttHeaderCell.vue +1 -1
  764. package/src/modules/rents/views/components/pages/Rents.vue +1 -1
  765. package/src/modules/rents/views/components/pages/RentsEdit.vue +6 -6
  766. package/src/modules/reports/components/pages/BackofficeReports.vue +3 -3
  767. package/src/modules/reports/components/sections/FormReport.vue +1 -1
  768. package/src/modules/spots/components/blocks/CardSpot.vue +4 -4
  769. package/src/modules/spots/components/blocks/SpotMemberModify.vue +1 -1
  770. package/src/modules/spots/components/layouts/Spots.vue +2 -2
  771. package/src/modules/spots/components/pages/Spot.vue +5 -5
  772. package/src/modules/spots/components/pages/SpotEdit.vue +2 -2
  773. package/src/modules/spots/components/pages/Spots.vue +3 -3
  774. package/src/modules/spots/components/sections/MapSection.vue +1 -1
  775. package/src/modules/spots/components/sections/WorktimeEdit.vue +4 -4
  776. package/src/modules/wallet/views/components/blocks/CardBalanceReplenished.vue +5 -5
  777. package/src/modules/wallet/views/components/blocks/CardDeposit.vue +5 -5
  778. package/src/modules/wallet/views/components/blocks/CashDeposit.vue +2 -2
  779. package/src/modules/wallet/views/components/blocks/CryptoDeposit.vue +4 -4
  780. package/src/modules/wallet/views/components/blocks/CryptoDepositProcessing.vue +11 -11
  781. package/src/modules/wallet/views/components/elements/ConnectMetamask.vue +4 -4
  782. package/src/modules/wallet/views/components/pages/Wallet.vue +22 -22
  783. package/src/styles/config.scss +193 -507
  784. package/src/styles/layout.scss +81 -1
  785. package/src/styles/reset.scss +2 -0
  786. package/src/styles/theme.scss +1 -8
  787. package/dist/martyrs/dist/main-BFvlam0J.js.map +0 -1
  788. package/dist/martyrs/node_modules/.pnpm/@capacitor_core@7.0.1/node_modules/@capacitor/core/dist/index.js.map +0 -1
  789. package/dist/martyrs/src/components/EditImages/EditImages.vue.js.map +0 -1
  790. package/dist/martyrs/src/components/Loader/Loader.vue.js.map +0 -1
  791. package/dist/martyrs/src/components/Menu/Menu.vue.js.map +0 -1
  792. package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue2.js.map +0 -1
  793. package/dist/martyrs/src/components/Tooltip/Tooltip.vue.js.map +0 -1
  794. package/dist/martyrs/src/modules/core/views/components/sections/Filters.vue.js.map +0 -1
  795. package/dist/node_modules/.pnpm/@vue_server-renderer@3.5.13_vue@3.5.13_typescript@5.8.3_/node_modules/@vue/server-renderer/dist/server-renderer.esm-bundler.js.map +0 -1
  796. package/dist/node_modules/.pnpm/@vue_shared@3.5.13/node_modules/@vue/shared/dist/shared.esm-bundler.js.map +0 -1
  797. package/dist/node_modules/.pnpm/dayjs@1.11.13/node_modules/dayjs/dayjs.min.js.map +0 -1
  798. package/dist/node_modules/.pnpm/dayjs@1.11.13/node_modules/dayjs/plugin/weekOfYear.js.map +0 -1
  799. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/native.js +0 -6
  800. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/native.js.map +0 -1
  801. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/rng.js +0 -15
  802. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/rng.js.map +0 -1
  803. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/stringify.js +0 -11
  804. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/stringify.js.map +0 -1
  805. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/v4.js +0 -20
  806. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/v4.js.map +0 -1
  807. package/src/modules/LAYOUT.MD +0 -767
  808. package/src/modules/STYLES.MD +0 -298
  809. package/src/modules/inventory/inventory.router.js +0 -72
  810. package/src/modules/products/products.router.js +0 -299
  811. package/src/styles/base/all.scss +0 -233
  812. package/src/styles/base/backgrounds.scss +0 -70
  813. package/src/styles/base/borders.scss +0 -407
  814. package/src/styles/base/scrolling.scss +0 -137
  815. package/src/styles/base/shadow_transitions_hover_refactor.scss +0 -158
  816. package/src/styles/base/transitions.scss +0 -109
  817. package/src/styles/responsive.scss +0 -152
  818. package/src/styles/typography.scss +0 -161
  819. /package/dist/{node_modules/.pnpm/@vue_shared@3.5.13 → martyrs}/node_modules/@vue/shared/dist/shared.esm-bundler.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Track.vue.js","sources":["../../../../../../../src/modules/music/components/pages/Track.vue"],"sourcesContent":["<!-- components/pages/Track.vue -->\n<template>\n <div class=\"track-page pd-small\">\n <!-- Loading -->\n <div v-if=\"isLoading\" class=\"w-100 h-25r flex-center flex\">\n <Loader />\n </div>\n\n <!-- Not Found -->\n <div v-if=\"hasLoaded && !track\" class=\"t-center pd-big\">\n <h2 class=\"\">Track not found</h2>\n <p class=\"t-transp t-medium\">The track you're looking for doesn't exist or has been removed.</p>\n </div>\n\n <!-- Track Content -->\n <div v-if=\"track\" class=\"track-content cols-2 mobile:cols-1 gap-big\">\n <!-- Left Column - Cover & Stats -->\n <div class=\"pos-sticky pos-t-0 mobile:pos-relative track-cover-section\">\n <!-- Cover with Play Overlay -->\n <div class=\"cover-container pos-relative mn-b-medium radius-big o-hidden\">\n <Media \n :url=\"track.coverUrl || (track.album && track.album.coverUrl) || '/logo/logo-placeholder.jpg'\" \n :alt=\"track.title\"\n class=\"aspect-1x1 w-100 radius-medium o-hidden\"\n />\n <div class=\"cover-overlay w-100 h-100 pos-absolute pos-t-0 pos-r-0 bg-black-transp-40 flex flex-center\">\n <Button\n @click=\"playTrack\"\n color=\"white\"\n size=\"big\"\n class=\"w-5r h-5r radius-big bg-main shadow-big hover-scale-110\"\n >\n <IconPlay v-if=\"!isPlaying\" fill=\"rgb(var(--white))\" class=\"i-medium\" />\n <IconPause v-else fill=\"rgb(var(--white))\" class=\"i-medium\" />\n </Button>\n </div>\n </div>\n\n \n\n <!-- Quick Stats -->\n <div class=\"stats-grid grid cols-2 gap-small\">\n <div class=\"stat-card bg-light pd-medium radius-medium t-center\">\n <div class=\" mn-b-thin\">{{ formatNumber(track.playCount) }}</div>\n <div class=\"t-small t-transp t-uppercase\">Plays</div>\n </div>\n <div class=\"stat-card bg-light pd-medium radius-medium t-center\">\n <div class=\" mn-b-thin\">{{ formatNumber(track.views) }}</div>\n <div class=\"t-small t-transp t-uppercase\">Views</div>\n </div>\n </div>\n </div>\n\n <!-- Right Column - Track Details -->\n <div class=\"track-details-section\">\n <!-- Track Type Badge -->\n <div class=\"flex items-center gap-small mn-b-small\">\n <span class=\"bg-light t-medium pd-thin radius-thin uppercase t-small t-uppercase\">Single</span>\n <span class=\"bg-light t-medium pd-thin radius-thin uppercase t-small t-uppercase\">Explicit</span>\n </div>\n\n <!-- Track Title -->\n <h1 class=\"h1 mn-b-medium\">{{ track.title }}</h1>\n <!-- Action Buttons -->\n <ActionButtons :buttons=\"actionButtons\" />\n\n <!-- Artist Card -->\n <div class=\"artists-section mn-b-medium\">\n <h3 class=\"t-medium mn-b-small\" v-if=\"track.artist\">Artist</h3>\n <ArtistCardSmall \n :key=\"track.artist._id\"\n :artist=\"track.artist\"\n :is-following=\"isFollowingArtist\"\n :show-follow-button=\"!isOwner\"\n @toggle-follow=\"toggleFollowArtist\"\n />\n </div>\n\n <!-- Metadata Cards -->\n <h3 class=\"t-medium mn-b-small\">Metadata</h3>\n <div class=\"metadata-grid grid cols-2 gap-small mn-b-medium\">\n <!-- Release Date -->\n <div class=\"metadata-card bg-light pd-medium radius-medium flex items-center gap-regular\">\n <IconCalendar class=\"i-medium t-primary\" />\n <div>\n <div class=\"t-small t-transp t-uppercase\">Released</div>\n <div class=\"t-medium \">{{ formatDate(track.releaseDate) }}</div>\n </div>\n </div>\n\n <!-- Total Duration -->\n <div class=\"metadata-card bg-light pd-medium radius-medium flex items-center gap-regular\">\n <IconClock class=\"i-medium t-primary\" />\n <div>\n <div class=\"t-small t-transp t-uppercase\">Duration</div>\n <div class=\"t-medium \">{{ formatDuration(track.duration) }}</div>\n </div>\n </div>\n\n <!-- Label -->\n <div class=\"metadata-card bg-light pd-medium radius-medium flex items-center gap-regular\">\n <IconCheck class=\"i-medium t-primary\" />\n <div>\n <div class=\"t-small t-transp t-uppercase\">Status</div>\n <div class=\"t-medium \">{{ track.status }}</div>\n </div>\n </div>\n\n <!-- Visibility -->\n <div class=\"metadata-card bg-light pd-medium radius-medium flex items-center gap-regular\">\n <IconEye class=\"i-medium t-primary\" />\n <div>\n <div class=\"t-small t-transp t-uppercase\">Visibility</div>\n <div class=\"t-medium \">{{ track.isPublic ? 'Public' : 'Private' }}</div>\n </div>\n </div>\n </div>\n\n\n <!-- Album Info -->\n <h3 v-if=\"track.album\" class=\"t-medium mn-b-small\">From Album</h3>\n <div v-if=\"track.album\" class=\"album-card bg-light pd-medium radius-medium mn-b-medium\">\n \n <router-link \n :to=\"`/album/${track.album.url}`\"\n class=\"flex flex-v-center gap-thin hover-opacity\"\n >\n <Media \n :url=\"track.album.coverArt || '/logo/logo-placeholder.jpg'\"\n :alt=\"track.album.title\"\n class=\"w-3r h-3r radius-thin o-hidden object-cover\"\n />\n <span class=\"t-medium \">{{ track.album.title }}</span>\n </router-link>\n </div>\n\n <!-- Genres & Tags -->\n <div v-if=\"(track.genre && track.genre.length) || (track.tags && track.tags.length)\" class=\"tags-section mn-b-medium\">\n <h3 class=\"t-medium mn-b-small\">Genres & Tags</h3>\n <div class=\"flex gap-thin flex-wrap\">\n <span \n v-for=\"genre in track.genre\" \n :key=\"genre\"\n class=\"tag bg-main t-medium pd-thin radius-thin t-small cursor-pointer\"\n >\n {{ genre.name || genre }}\n </span>\n <span \n v-for=\"tag in track.tags\" \n :key=\"tag\"\n class=\"tag bg-light t-transp pd-thin-big radius-small t-small hover-bg-light cursor-pointer\"\n >\n #{{ tag.name || tag }}\n </span>\n </div>\n </div>\n\n <!-- Description -->\n <div v-if=\"track.description\" class=\"description-section bg-light pd-medium radius-medium mn-b-medium\">\n <h3 class=\"t-medium mn-b-small\">About</h3>\n <p class=\"t-transp\">{{ track.description }}</p>\n </div>\n\n <!-- Lyrics -->\n <div v-if=\"track.lyrics\" class=\"lyrics-section bg-light pd-medium radius-medium\">\n <h3 class=\"t-medium mn-b-small\">Lyrics</h3>\n <pre class=\"t-transp t-small\">{{ track.lyrics }}</pre>\n </div>\n </div>\n </div>\n\n <!-- Related Tracks -->\n <section v-if=\"track && relatedTracks && relatedTracks.length\" class=\"related-section mn-t-big\">\n <h2 class=\"h2 mn-b-medium\">Related Tracks</h2>\n <Feed\n :store=\"{\n read: () => new Promise(resolve => resolve(relatedTracks || [])),\n state: { isLoading: false }\n }\"\n :external=\"true\"\n :items=\"relatedTracks\"\n :states=\"{\n empty: {\n title: 'No related tracks',\n description: 'Check back later for recommendations',\n class: 'pd-medium bg-light radius-medium'\n }\n }\"\n class=\"grid cols-2 cols-m-3 cols-l-4 gap-regular\"\n >\n <template #default=\"{ items }\">\n <div class=\"bg-light radius-medium o-hidden\">\n <TrackListCard\n v-for=\"(relatedTrack, index) in items\"\n :key=\"relatedTrack._id\"\n :track=\"relatedTrack\"\n :index=\"index\"\n :showAlbum=\"true\"\n :showCover=\"true\"\n />\n </div>\n </template>\n </Feed>\n </section>\n\n <!-- Add to Playlist Modal -->\n <Popup \n v-if=\"showAddToPlaylistModal\" \n @close-popup=\"showAddToPlaylistModal = false\" \n class=\"bg-white pd-medium w-m-25r radius-medium\"\n >\n <h3 class=\"h3 mn-b-medium\">Add to Playlist</h3>\n <!-- <PlaylistSelector \n :trackId=\"track._id\" \n @added=\"showAddToPlaylistModal = false\"\n /> -->\n <p class=\"t-transp\">Playlist selector coming soon...</p>\n </Popup>\n </div>\n</template>\n\n<script setup>\nimport { ref, computed, onMounted, watch } from 'vue';\nimport { useRoute, useRouter } from 'vue-router';\nimport Button from '@martyrs/src/components/Button/Button.vue';\nimport Loader from '@martyrs/src/components/Loader/Loader.vue';\nimport Media from '@martyrs/src/components/Media/Media.vue';\nimport Dropdown from '@martyrs/src/components/Dropdown/Dropdown.vue';\nimport Popup from '@martyrs/src/components/Popup/Popup.vue';\nimport Feed from '@martyrs/src/components/Feed/Feed.vue';\n\n// Icons\nimport IconPlay from '@martyrs/src/modules/icons/navigation/IconPlay.vue';\nimport IconPause from '@martyrs/src/modules/icons/navigation/IconPause.vue';\nimport IconLike from '@martyrs/src/modules/icons/navigation/IconLike.vue';\nimport IconEllipsis from '@martyrs/src/modules/icons/navigation/IconEllipsis.vue';\nimport IconAdd from '@martyrs/src/modules/icons/navigation/IconAdd.vue';\nimport IconClock from '@martyrs/src/modules/icons/entities/IconTime.vue';\nimport IconCalendar from '@martyrs/src/modules/icons/entities/IconCalendar.vue';\nimport IconCheck from '@martyrs/src/modules/icons/navigation/IconCheckmark.vue';\nimport IconEye from '@martyrs/src/modules/icons/actions/IconShow.vue';\nimport IconVerified from '@martyrs/src/modules/icons/navigation/IconCheckmark.vue';\n\n// Components\nimport ActionButtons from '../blocks/ActionButtons.vue';\nimport TrackListCard from '../cards/TrackListCard.vue';\nimport ArtistCardSmall from '../cards/ArtistCardSmall.vue';\n// import PlaylistSelector from '../forms/PlaylistSelector.vue';\n\n// Store\nimport { state as tracksState, actions as tracksActions } from '../../store/tracks.js';\nimport { state as playerState, actions as playerActions } from '../../store/player.js';\nimport { state as authState } from '@martyrs/src/modules/auth/views/store/auth.js';\n\nconst isPlaying = computed(() => playerState.isPlaying);\n\nconst route = useRoute();\nconst router = useRouter();\n\n// Emits\nconst emits = defineEmits(['page-loading', 'page-loaded']);\n\n// State\nconst hasLoaded = ref(false);\nconst showAddToPlaylistModal = ref(false);\nconst isFavorite = ref(false);\nconst isFollowingArtist = ref(false);\n\n// Clear state\ntracksState.currentTrack = null;\ntracksState.relatedTracks = [];\n\n// Computed\nconst track = computed(() => tracksState.currentTrack);\nconst relatedTracks = computed(() => tracksState.relatedTracks || []);\n\nconst isOwner = computed(() => {\n return track.value?.owner?.target === authState.user?._id;\n});\n\nconst actionButtons = computed(() => {\n const buttons = [\n {\n type: 'button',\n class: 't-white bg-black',\n icon: isPlaying.value ? IconPause : IconPlay,\n iconFill: 'rgb(var(--white))',\n text: isPlaying.value ? 'Pause' : 'Play',\n action: playTrack\n },\n {\n type: 'button',\n class: 'bg-light',\n icon: IconAdd,\n text: 'Add to Queue',\n action: addToQueue\n },\n {\n type: 'button',\n class: 'bg-light',\n icon: IconLike,\n iconFill: isFavorite.value ? 'rgb(var(--main))' : 'rgb(var(--black))',\n text: isFavorite.value ? 'Liked' : 'Like',\n action: toggleFavorite\n },\n {\n type: 'dropdown',\n items: [\n { text: 'Add to Playlist', action: () => showAddToPlaylistModal.value = true },\n { text: 'Copy Link', action: copyLink }\n ]\n }\n ];\n\n if (isOwner.value) {\n const items = buttons[3].items;\n items.push({ separator: true });\n items.push({ text: 'Edit Track', action: editTrack });\n items.push({ text: 'Delete Track', action: deleteTrack, color: 'danger' });\n }\n\n return buttons;\n});\n\n// Format helpers\nconst formatDuration = (seconds) => {\n if (!seconds) return '0:00';\n const h = Math.floor(seconds / 3600);\n const m = Math.floor((seconds % 3600) / 60);\n const s = Math.floor(seconds % 60);\n \n if (h > 0) {\n return `${h}:${m.toString().padStart(2, '0')}:${s.toString().padStart(2, '0')}`;\n }\n return `${m}:${s.toString().padStart(2, '0')}`;\n};\n\nconst formatDate = (dateString) => {\n if (!dateString) return 'Unknown';\n return new Date(dateString).toLocaleDateString('en-US', {\n year: 'numeric',\n month: 'long',\n day: 'numeric'\n });\n};\n\nconst formatNumber = (num) => {\n if (!num) return '0';\n if (num >= 1000000) {\n return (num / 1000000).toFixed(1) + 'M';\n } else if (num >= 1000) {\n return (num / 1000).toFixed(1) + 'K';\n }\n return num.toString();\n};\n\n// Actions\nconst playTrack = () => {\n if (track.value) {\n playerActions.setQueue([track.value]);\n }\n};\n\nconst toggleFavorite = () => {\n isFavorite.value = !isFavorite.value;\n // TODO: Implement actual saving\n};\n\nconst toggleFollowArtist = () => {\n isFollowingArtist.value = !isFollowingArtist.value;\n // TODO: Implement actual following\n};\n\nconst addToQueue = () => {\n if (track.value) {\n playerActions.addToQueue(track.value);\n }\n};\n\nconst editTrack = () => {\n router.push({ name: 'track-edit', params: { url: track.value.url } });\n};\n\nconst deleteTrack = async () => {\n if (confirm('Are you sure you want to delete this track?')) {\n try {\n await tracksActions.deleteTrack(track.value._id);\n router.push({ name: 'music-library' });\n } catch (error) {\n console.error('Failed to delete track:', error);\n }\n }\n};\n\nconst copyLink = () => {\n navigator.clipboard.writeText(window.location.href);\n};\n\n// Data fetching\nconst fetchTrackData = async () => {\n try {\n await tracksActions.fetchTrackByUrl(route.params.url);\n await tracksActions.fetchRelatedTracks(route.params.url);\n } catch (error) {\n console.error('Error loading track:', error);\n }\n};\n\n// Lifecycle\nonMounted(async () => {\n emits('page-loading');\n \n await fetchTrackData();\n \n hasLoaded.value = true;\n emits('page-loaded');\n});\n</script>\n\n<style scoped>\n</style>"],"names":["playerState","tracksState","authState","IconPause","IconPlay","IconAdd","IconLike","playerActions","tracksActions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8PA,UAAM,YAAY,SAAS,MAAMA,MAAY,SAAS;AAEtD,UAAM,QAAQ,SAAQ;AACtB,UAAM,SAAS,UAAS;AAGxB,UAAM,QAAQ;AAGd,UAAM,YAAY,IAAI,KAAK;AAC3B,UAAM,yBAAyB,IAAI,KAAK;AACxC,UAAM,aAAa,IAAI,KAAK;AAC5B,UAAM,oBAAoB,IAAI,KAAK;AAGnCC,YAAY,eAAe;AAC3BA,YAAY,gBAAgB,CAAA;AAG5B,UAAM,QAAQ,SAAS,MAAMA,QAAY,YAAY;AACrD,UAAM,gBAAgB,SAAS,MAAMA,QAAY,iBAAiB,CAAA,CAAE;AAEpE,UAAM,UAAU,SAAS,MAAM;AAC7B,aAAO,MAAM,OAAO,OAAO,WAAWC,QAAU,MAAM;AAAA,IACxD,CAAC;AAED,UAAM,gBAAgB,SAAS,MAAM;AACnC,YAAM,UAAU;AAAA,QACd;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,UACP,MAAM,UAAU,QAAQC,cAAYC;AAAAA,UACpC,UAAU;AAAA,UACV,MAAM,UAAU,QAAQ,UAAU;AAAA,UAClC,QAAQ;AAAA,QACd;AAAA,QACI;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,UACP,MAAMC;AAAAA,UACN,MAAM;AAAA,UACN,QAAQ;AAAA,QACd;AAAA,QACI;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,UACP,MAAMC;AAAAA,UACN,UAAU,WAAW,QAAQ,qBAAqB;AAAA,UAClD,MAAM,WAAW,QAAQ,UAAU;AAAA,UACnC,QAAQ;AAAA,QACd;AAAA,QACI;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,YACL,EAAE,MAAM,mBAAmB,QAAQ,MAAM,uBAAuB,QAAQ,KAAI;AAAA,YAC5E,EAAE,MAAM,aAAa,QAAQ,SAAQ;AAAA,UAC7C;AAAA,QACA;AAAA,MACA;AAEE,UAAI,QAAQ,OAAO;AACjB,cAAM,QAAQ,QAAQ,CAAC,EAAE;AACzB,cAAM,KAAK,EAAE,WAAW,KAAI,CAAE;AAC9B,cAAM,KAAK,EAAE,MAAM,cAAc,QAAQ,WAAW;AACpD,cAAM,KAAK,EAAE,MAAM,gBAAgB,QAAQ,aAAa,OAAO,UAAU;AAAA,MAC3E;AAEA,aAAO;AAAA,IACT,CAAC;AAGD,UAAM,iBAAiB,CAAC,YAAY;AAClC,UAAI,CAAC,QAAS,QAAO;AACrB,YAAM,IAAI,KAAK,MAAM,UAAU,IAAI;AACnC,YAAM,IAAI,KAAK,MAAO,UAAU,OAAQ,EAAE;AAC1C,YAAM,IAAI,KAAK,MAAM,UAAU,EAAE;AAEjC,UAAI,IAAI,GAAG;AACT,eAAO,GAAG,CAAC,IAAI,EAAE,SAAQ,EAAG,SAAS,GAAG,GAAG,CAAC,IAAI,EAAE,SAAQ,EAAG,SAAS,GAAG,GAAG,CAAC;AAAA,MAC/E;AACA,aAAO,GAAG,CAAC,IAAI,EAAE,SAAQ,EAAG,SAAS,GAAG,GAAG,CAAC;AAAA,IAC9C;AAEA,UAAM,aAAa,CAAC,eAAe;AACjC,UAAI,CAAC,WAAY,QAAO;AACxB,aAAO,IAAI,KAAK,UAAU,EAAE,mBAAmB,SAAS;AAAA,QACtD,MAAM;AAAA,QACN,OAAO;AAAA,QACP,KAAK;AAAA,MACT,CAAG;AAAA,IACH;AAEA,UAAM,eAAe,CAAC,QAAQ;AAC5B,UAAI,CAAC,IAAK,QAAO;AACjB,UAAI,OAAO,KAAS;AAClB,gBAAQ,MAAM,KAAS,QAAQ,CAAC,IAAI;AAAA,MACtC,WAAW,OAAO,KAAM;AACtB,gBAAQ,MAAM,KAAM,QAAQ,CAAC,IAAI;AAAA,MACnC;AACA,aAAO,IAAI,SAAQ;AAAA,IACrB;AAGA,UAAM,YAAY,MAAM;AACtB,UAAI,MAAM,OAAO;AACfC,gBAAc,SAAS,CAAC,MAAM,KAAK,CAAC;AAAA,MACtC;AAAA,IACF;AAEA,UAAM,iBAAiB,MAAM;AAC3B,iBAAW,QAAQ,CAAC,WAAW;AAAA,IAEjC;AAEA,UAAM,qBAAqB,MAAM;AAC/B,wBAAkB,QAAQ,CAAC,kBAAkB;AAAA,IAE/C;AAEA,UAAM,aAAa,MAAM;AACvB,UAAI,MAAM,OAAO;AACfA,gBAAc,WAAW,MAAM,KAAK;AAAA,MACtC;AAAA,IACF;AAEA,UAAM,YAAY,MAAM;AACtB,aAAO,KAAK,EAAE,MAAM,cAAc,QAAQ,EAAE,KAAK,MAAM,MAAM,IAAG,EAAE,CAAE;AAAA,IACtE;AAEA,UAAM,cAAc,YAAY;AAC9B,UAAI,QAAQ,6CAA6C,GAAG;AAC1D,YAAI;AACF,gBAAMC,UAAc,YAAY,MAAM,MAAM,GAAG;AAC/C,iBAAO,KAAK,EAAE,MAAM,gBAAe,CAAE;AAAA,QACvC,SAAS,OAAO;AACd,kBAAQ,MAAM,2BAA2B,KAAK;AAAA,QAChD;AAAA,MACF;AAAA,IACF;AAEA,UAAM,WAAW,MAAM;AACrB,gBAAU,UAAU,UAAU,OAAO,SAAS,IAAI;AAAA,IACpD;AAGA,UAAM,iBAAiB,YAAY;AACjC,UAAI;AACF,cAAMA,UAAc,gBAAgB,MAAM,OAAO,GAAG;AACpD,cAAMA,UAAc,mBAAmB,MAAM,OAAO,GAAG;AAAA,MACzD,SAAS,OAAO;AACd,gBAAQ,MAAM,wBAAwB,KAAK;AAAA,MAC7C;AAAA,IACF;AAGA,cAAU,YAAY;AACpB,YAAM,cAAc;AAEpB,YAAM,eAAc;AAEpB,gBAAU,QAAQ;AAClB,YAAM,aAAa;AAAA,IACrB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Track.vue.js","sources":["../../../../../../../src/modules/music/components/pages/Track.vue"],"sourcesContent":["<!-- components/pages/Track.vue -->\n<template>\n <div class=\"track-page pd-small\">\n <!-- Loading -->\n <div v-if=\"isLoading\" class=\"w-100 h-25r flex-center flex\">\n <Loader />\n </div>\n\n <!-- Not Found -->\n <div v-if=\"hasLoaded && !track\" class=\"t-center pd-big\">\n <h2 class=\"\">Track not found</h2>\n <p class=\"t-transp fw-medium\">The track you're looking for doesn't exist or has been removed.</p>\n </div>\n\n <!-- Track Content -->\n <div v-if=\"track\" class=\"track-content cols-2 mobile:cols-1 gap-big\">\n <!-- Left Column - Cover & Stats -->\n <div class=\"pos-sticky pos-t-0 mobile:pos-relative track-cover-section\">\n <!-- Cover with Play Overlay -->\n <div class=\"cover-container pos-relative mn-b-medium radius-big o-hidden\">\n <Media \n :url=\"track.coverUrl || (track.album && track.album.coverUrl) || '/logo/logo-placeholder.jpg'\" \n :alt=\"track.title\"\n class=\"aspect-1x1 w-100 radius-medium o-hidden\"\n />\n <div class=\"cover-overlay w-100 h-100 pos-absolute pos-t-0 pos-r-0 bg-black-transp-40 flex flex-center\">\n <Button\n @click=\"playTrack\"\n color=\"white\"\n size=\"big\"\n class=\"w-5r h-5r radius-big bg-main shadow-big hover:scale-[1.05]10\"\n >\n <IconPlay v-if=\"!isPlaying\" fill=\"rgb(var(--white))\" class=\"i-medium\" />\n <IconPause v-else fill=\"rgb(var(--white))\" class=\"i-medium\" />\n </Button>\n </div>\n </div>\n\n \n\n <!-- Quick Stats -->\n <div class=\"stats-grid d-grid cols-2 gap-small\">\n <div class=\"stat-card bg-light pd-medium radius-medium t-center\">\n <div class=\" mn-b-thin\">{{ formatNumber(track.playCount) }}</div>\n <div class=\"t-small t-transp t-uppercase\">Plays</div>\n </div>\n <div class=\"stat-card bg-light pd-medium radius-medium t-center\">\n <div class=\" mn-b-thin\">{{ formatNumber(track.views) }}</div>\n <div class=\"t-small t-transp t-uppercase\">Views</div>\n </div>\n </div>\n </div>\n\n <!-- Right Column - Track Details -->\n <div class=\"track-details-section\">\n <!-- Track Type Badge -->\n <div class=\"flex items-center gap-small mn-b-small\">\n <span class=\"bg-light fw-medium pd-thin radius-thin uppercase t-small t-uppercase\">Single</span>\n <span class=\"bg-light fw-medium pd-thin radius-thin uppercase t-small t-uppercase\">Explicit</span>\n </div>\n\n <!-- Track Title -->\n <h1 class=\"h1 mn-b-medium\">{{ track.title }}</h1>\n <!-- Action Buttons -->\n <ActionButtons :buttons=\"actionButtons\" />\n\n <!-- Artist Card -->\n <div class=\"artists-section mn-b-medium\">\n <h3 class=\"fw-medium mn-b-small\" v-if=\"track.artist\">Artist</h3>\n <ArtistCardSmall \n :key=\"track.artist._id\"\n :artist=\"track.artist\"\n :is-following=\"isFollowingArtist\"\n :show-follow-button=\"!isOwner\"\n @toggle-follow=\"toggleFollowArtist\"\n />\n </div>\n\n <!-- Metadata Cards -->\n <h3 class=\"fw-medium mn-b-small\">Metadata</h3>\n <div class=\"metadata-grid d-grid cols-2 gap-small mn-b-medium\">\n <!-- Release Date -->\n <div class=\"metadata-card bg-light pd-medium radius-medium flex items-center gap-regular\">\n <IconCalendar class=\"i-medium t-main\" />\n <div>\n <div class=\"t-small t-transp t-uppercase\">Released</div>\n <div class=\"fw-medium \">{{ formatDate(track.releaseDate) }}</div>\n </div>\n </div>\n\n <!-- Total Duration -->\n <div class=\"metadata-card bg-light pd-medium radius-medium flex items-center gap-regular\">\n <IconClock class=\"i-medium t-main\" />\n <div>\n <div class=\"t-small t-transp t-uppercase\">Duration</div>\n <div class=\"fw-medium \">{{ formatDuration(track.duration) }}</div>\n </div>\n </div>\n\n <!-- Label -->\n <div class=\"metadata-card bg-light pd-medium radius-medium flex items-center gap-regular\">\n <IconCheck class=\"i-medium t-main\" />\n <div>\n <div class=\"t-small t-transp t-uppercase\">Status</div>\n <div class=\"fw-medium \">{{ track.status }}</div>\n </div>\n </div>\n\n <!-- Visibility -->\n <div class=\"metadata-card bg-light pd-medium radius-medium flex items-center gap-regular\">\n <IconEye class=\"i-medium t-main\" />\n <div>\n <div class=\"t-small t-transp t-uppercase\">Visibility</div>\n <div class=\"fw-medium \">{{ track.isPublic ? 'Public' : 'Private' }}</div>\n </div>\n </div>\n </div>\n\n\n <!-- Album Info -->\n <h3 v-if=\"track.album\" class=\"fw-medium mn-b-small\">From Album</h3>\n <div v-if=\"track.album\" class=\"album-card bg-light pd-medium radius-medium mn-b-medium\">\n \n <router-link \n :to=\"`/album/${track.album.url}`\"\n class=\"flex flex-v-center gap-thin hover:opacity-70\"\n >\n <Media \n :url=\"track.album.coverArt || '/logo/logo-placeholder.jpg'\"\n :alt=\"track.album.title\"\n class=\"w-3r h-3r radius-thin o-hidden object-cover\"\n />\n <span class=\"fw-medium \">{{ track.album.title }}</span>\n </router-link>\n </div>\n\n <!-- Genres & Tags -->\n <div v-if=\"(track.genre && track.genre.length) || (track.tags && track.tags.length)\" class=\"tags-section mn-b-medium\">\n <h3 class=\"fw-medium mn-b-small\">Genres & Tags</h3>\n <div class=\"flex gap-thin flex-wrap\">\n <span \n v-for=\"genre in track.genre\" \n :key=\"genre\"\n class=\"tag bg-main fw-medium pd-thin radius-thin t-small cursor-pointer\"\n >\n {{ genre.name || genre }}\n </span>\n <span \n v-for=\"tag in track.tags\" \n :key=\"tag\"\n class=\"tag bg-light t-transp pd-thin-big radius-small t-small hover:bg-light cursor-pointer\"\n >\n #{{ tag.name || tag }}\n </span>\n </div>\n </div>\n\n <!-- Description -->\n <div v-if=\"track.description\" class=\"description-section bg-light pd-medium radius-medium mn-b-medium\">\n <h3 class=\"fw-medium mn-b-small\">About</h3>\n <p class=\"t-transp\">{{ track.description }}</p>\n </div>\n\n <!-- Lyrics -->\n <div v-if=\"track.lyrics\" class=\"lyrics-section bg-light pd-medium radius-medium\">\n <h3 class=\"fw-medium mn-b-small\">Lyrics</h3>\n <pre class=\"t-transp t-small\">{{ track.lyrics }}</pre>\n </div>\n </div>\n </div>\n\n <!-- Related Tracks -->\n <section v-if=\"track && relatedTracks && relatedTracks.length\" class=\"related-section mn-t-big\">\n <h2 class=\"h2 mn-b-medium\">Related Tracks</h2>\n <Feed\n :store=\"{\n read: () => new Promise(resolve => resolve(relatedTracks || [])),\n state: { isLoading: false }\n }\"\n :external=\"true\"\n :items=\"relatedTracks\"\n :states=\"{\n empty: {\n title: 'No related tracks',\n description: 'Check back later for recommendations',\n class: 'pd-medium bg-light radius-medium'\n }\n }\"\n class=\"d-grid cols-2 cols-m-3 cols-l-4 gap-regular\"\n >\n <template #default=\"{ items }\">\n <div class=\"bg-light radius-medium o-hidden\">\n <TrackListCard\n v-for=\"(relatedTrack, index) in items\"\n :key=\"relatedTrack._id\"\n :track=\"relatedTrack\"\n :index=\"index\"\n :showAlbum=\"true\"\n :showCover=\"true\"\n />\n </div>\n </template>\n </Feed>\n </section>\n\n <!-- Add to Playlist Modal -->\n <Popup \n v-if=\"showAddToPlaylistModal\" \n @close-popup=\"showAddToPlaylistModal = false\" \n class=\"bg-white pd-medium w-m-25r radius-medium\"\n >\n <h3 class=\"h3 mn-b-medium\">Add to Playlist</h3>\n <!-- <PlaylistSelector \n :trackId=\"track._id\" \n @added=\"showAddToPlaylistModal = false\"\n /> -->\n <p class=\"t-transp\">Playlist selector coming soon...</p>\n </Popup>\n </div>\n</template>\n\n<script setup>\nimport { ref, computed, onMounted, watch } from 'vue';\nimport { useRoute, useRouter } from 'vue-router';\nimport Button from '@martyrs/src/components/Button/Button.vue';\nimport Loader from '@martyrs/src/components/Loader/Loader.vue';\nimport Media from '@martyrs/src/components/Media/Media.vue';\nimport Dropdown from '@martyrs/src/components/Dropdown/Dropdown.vue';\nimport Popup from '@martyrs/src/components/Popup/Popup.vue';\nimport Feed from '@martyrs/src/components/Feed/Feed.vue';\n\n// Icons\nimport IconPlay from '@martyrs/src/modules/icons/navigation/IconPlay.vue';\nimport IconPause from '@martyrs/src/modules/icons/navigation/IconPause.vue';\nimport IconLike from '@martyrs/src/modules/icons/navigation/IconLike.vue';\nimport IconEllipsis from '@martyrs/src/modules/icons/navigation/IconEllipsis.vue';\nimport IconAdd from '@martyrs/src/modules/icons/navigation/IconAdd.vue';\nimport IconClock from '@martyrs/src/modules/icons/entities/IconTime.vue';\nimport IconCalendar from '@martyrs/src/modules/icons/entities/IconCalendar.vue';\nimport IconCheck from '@martyrs/src/modules/icons/navigation/IconCheckmark.vue';\nimport IconEye from '@martyrs/src/modules/icons/actions/IconShow.vue';\nimport IconVerified from '@martyrs/src/modules/icons/navigation/IconCheckmark.vue';\n\n// Components\nimport ActionButtons from '../blocks/ActionButtons.vue';\nimport TrackListCard from '../cards/TrackListCard.vue';\nimport ArtistCardSmall from '../cards/ArtistCardSmall.vue';\n// import PlaylistSelector from '../forms/PlaylistSelector.vue';\n\n// Store\nimport { state as tracksState, actions as tracksActions } from '../../store/tracks.js';\nimport { state as playerState, actions as playerActions } from '../../store/player.js';\nimport { state as authState } from '@martyrs/src/modules/auth/views/store/auth.js';\n\nconst isPlaying = computed(() => playerState.isPlaying);\n\nconst route = useRoute();\nconst router = useRouter();\n\n// Emits\nconst emits = defineEmits(['page-loading', 'page-loaded']);\n\n// State\nconst hasLoaded = ref(false);\nconst showAddToPlaylistModal = ref(false);\nconst isFavorite = ref(false);\nconst isFollowingArtist = ref(false);\n\n// Clear state\ntracksState.currentTrack = null;\ntracksState.relatedTracks = [];\n\n// Computed\nconst track = computed(() => tracksState.currentTrack);\nconst relatedTracks = computed(() => tracksState.relatedTracks || []);\n\nconst isOwner = computed(() => {\n return track.value?.owner?.target === authState.user?._id;\n});\n\nconst actionButtons = computed(() => {\n const buttons = [\n {\n type: 'button',\n class: 't-white bg-black',\n icon: isPlaying.value ? IconPause : IconPlay,\n iconFill: 'rgb(var(--white))',\n text: isPlaying.value ? 'Pause' : 'Play',\n action: playTrack\n },\n {\n type: 'button',\n class: 'bg-light',\n icon: IconAdd,\n text: 'Add to Queue',\n action: addToQueue\n },\n {\n type: 'button',\n class: 'bg-light',\n icon: IconLike,\n iconFill: isFavorite.value ? 'rgb(var(--main))' : 'rgb(var(--black))',\n text: isFavorite.value ? 'Liked' : 'Like',\n action: toggleFavorite\n },\n {\n type: 'dropdown',\n items: [\n { text: 'Add to Playlist', action: () => showAddToPlaylistModal.value = true },\n { text: 'Copy Link', action: copyLink }\n ]\n }\n ];\n\n if (isOwner.value) {\n const items = buttons[3].items;\n items.push({ separator: true });\n items.push({ text: 'Edit Track', action: editTrack });\n items.push({ text: 'Delete Track', action: deleteTrack, color: 'danger' });\n }\n\n return buttons;\n});\n\n// Format helpers\nconst formatDuration = (seconds) => {\n if (!seconds) return '0:00';\n const h = Math.floor(seconds / 3600);\n const m = Math.floor((seconds % 3600) / 60);\n const s = Math.floor(seconds % 60);\n \n if (h > 0) {\n return `${h}:${m.toString().padStart(2, '0')}:${s.toString().padStart(2, '0')}`;\n }\n return `${m}:${s.toString().padStart(2, '0')}`;\n};\n\nconst formatDate = (dateString) => {\n if (!dateString) return 'Unknown';\n return new Date(dateString).toLocaleDateString('en-US', {\n year: 'numeric',\n month: 'long',\n day: 'numeric'\n });\n};\n\nconst formatNumber = (num) => {\n if (!num) return '0';\n if (num >= 1000000) {\n return (num / 1000000).toFixed(1) + 'M';\n } else if (num >= 1000) {\n return (num / 1000).toFixed(1) + 'K';\n }\n return num.toString();\n};\n\n// Actions\nconst playTrack = () => {\n if (track.value) {\n playerActions.setQueue([track.value]);\n }\n};\n\nconst toggleFavorite = () => {\n isFavorite.value = !isFavorite.value;\n // TODO: Implement actual saving\n};\n\nconst toggleFollowArtist = () => {\n isFollowingArtist.value = !isFollowingArtist.value;\n // TODO: Implement actual following\n};\n\nconst addToQueue = () => {\n if (track.value) {\n playerActions.addToQueue(track.value);\n }\n};\n\nconst editTrack = () => {\n router.push({ name: 'track-edit', params: { url: track.value.url } });\n};\n\nconst deleteTrack = async () => {\n if (confirm('Are you sure you want to delete this track?')) {\n try {\n await tracksActions.deleteTrack(track.value._id);\n router.push({ name: 'music-library' });\n } catch (error) {\n console.error('Failed to delete track:', error);\n }\n }\n};\n\nconst copyLink = () => {\n navigator.clipboard.writeText(window.location.href);\n};\n\n// Data fetching\nconst fetchTrackData = async () => {\n try {\n await tracksActions.fetchTrackByUrl(route.params.url);\n await tracksActions.fetchRelatedTracks(route.params.url);\n } catch (error) {\n console.error('Error loading track:', error);\n }\n};\n\n// Lifecycle\nonMounted(async () => {\n emits('page-loading');\n \n await fetchTrackData();\n \n hasLoaded.value = true;\n emits('page-loaded');\n});\n</script>\n\n<style scoped>\n</style>"],"names":["playerState","tracksState","authState","IconPause","IconPlay","IconAdd","IconLike","playerActions","tracksActions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8PA,UAAM,YAAY,SAAS,MAAMA,MAAY,SAAS;AAEtD,UAAM,QAAQ,SAAQ;AACtB,UAAM,SAAS,UAAS;AAGxB,UAAM,QAAQ;AAGd,UAAM,YAAY,IAAI,KAAK;AAC3B,UAAM,yBAAyB,IAAI,KAAK;AACxC,UAAM,aAAa,IAAI,KAAK;AAC5B,UAAM,oBAAoB,IAAI,KAAK;AAGnCC,YAAY,eAAe;AAC3BA,YAAY,gBAAgB,CAAA;AAG5B,UAAM,QAAQ,SAAS,MAAMA,QAAY,YAAY;AACrD,UAAM,gBAAgB,SAAS,MAAMA,QAAY,iBAAiB,CAAA,CAAE;AAEpE,UAAM,UAAU,SAAS,MAAM;AAC7B,aAAO,MAAM,OAAO,OAAO,WAAWC,QAAU,MAAM;AAAA,IACxD,CAAC;AAED,UAAM,gBAAgB,SAAS,MAAM;AACnC,YAAM,UAAU;AAAA,QACd;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,UACP,MAAM,UAAU,QAAQC,cAAYC;AAAAA,UACpC,UAAU;AAAA,UACV,MAAM,UAAU,QAAQ,UAAU;AAAA,UAClC,QAAQ;AAAA,QACd;AAAA,QACI;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,UACP,MAAMC;AAAAA,UACN,MAAM;AAAA,UACN,QAAQ;AAAA,QACd;AAAA,QACI;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,UACP,MAAMC;AAAAA,UACN,UAAU,WAAW,QAAQ,qBAAqB;AAAA,UAClD,MAAM,WAAW,QAAQ,UAAU;AAAA,UACnC,QAAQ;AAAA,QACd;AAAA,QACI;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,YACL,EAAE,MAAM,mBAAmB,QAAQ,MAAM,uBAAuB,QAAQ,KAAI;AAAA,YAC5E,EAAE,MAAM,aAAa,QAAQ,SAAQ;AAAA,UAC7C;AAAA,QACA;AAAA,MACA;AAEE,UAAI,QAAQ,OAAO;AACjB,cAAM,QAAQ,QAAQ,CAAC,EAAE;AACzB,cAAM,KAAK,EAAE,WAAW,KAAI,CAAE;AAC9B,cAAM,KAAK,EAAE,MAAM,cAAc,QAAQ,WAAW;AACpD,cAAM,KAAK,EAAE,MAAM,gBAAgB,QAAQ,aAAa,OAAO,UAAU;AAAA,MAC3E;AAEA,aAAO;AAAA,IACT,CAAC;AAGD,UAAM,iBAAiB,CAAC,YAAY;AAClC,UAAI,CAAC,QAAS,QAAO;AACrB,YAAM,IAAI,KAAK,MAAM,UAAU,IAAI;AACnC,YAAM,IAAI,KAAK,MAAO,UAAU,OAAQ,EAAE;AAC1C,YAAM,IAAI,KAAK,MAAM,UAAU,EAAE;AAEjC,UAAI,IAAI,GAAG;AACT,eAAO,GAAG,CAAC,IAAI,EAAE,SAAQ,EAAG,SAAS,GAAG,GAAG,CAAC,IAAI,EAAE,SAAQ,EAAG,SAAS,GAAG,GAAG,CAAC;AAAA,MAC/E;AACA,aAAO,GAAG,CAAC,IAAI,EAAE,SAAQ,EAAG,SAAS,GAAG,GAAG,CAAC;AAAA,IAC9C;AAEA,UAAM,aAAa,CAAC,eAAe;AACjC,UAAI,CAAC,WAAY,QAAO;AACxB,aAAO,IAAI,KAAK,UAAU,EAAE,mBAAmB,SAAS;AAAA,QACtD,MAAM;AAAA,QACN,OAAO;AAAA,QACP,KAAK;AAAA,MACT,CAAG;AAAA,IACH;AAEA,UAAM,eAAe,CAAC,QAAQ;AAC5B,UAAI,CAAC,IAAK,QAAO;AACjB,UAAI,OAAO,KAAS;AAClB,gBAAQ,MAAM,KAAS,QAAQ,CAAC,IAAI;AAAA,MACtC,WAAW,OAAO,KAAM;AACtB,gBAAQ,MAAM,KAAM,QAAQ,CAAC,IAAI;AAAA,MACnC;AACA,aAAO,IAAI,SAAQ;AAAA,IACrB;AAGA,UAAM,YAAY,MAAM;AACtB,UAAI,MAAM,OAAO;AACfC,gBAAc,SAAS,CAAC,MAAM,KAAK,CAAC;AAAA,MACtC;AAAA,IACF;AAEA,UAAM,iBAAiB,MAAM;AAC3B,iBAAW,QAAQ,CAAC,WAAW;AAAA,IAEjC;AAEA,UAAM,qBAAqB,MAAM;AAC/B,wBAAkB,QAAQ,CAAC,kBAAkB;AAAA,IAE/C;AAEA,UAAM,aAAa,MAAM;AACvB,UAAI,MAAM,OAAO;AACfA,gBAAc,WAAW,MAAM,KAAK;AAAA,MACtC;AAAA,IACF;AAEA,UAAM,YAAY,MAAM;AACtB,aAAO,KAAK,EAAE,MAAM,cAAc,QAAQ,EAAE,KAAK,MAAM,MAAM,IAAG,EAAE,CAAE;AAAA,IACtE;AAEA,UAAM,cAAc,YAAY;AAC9B,UAAI,QAAQ,6CAA6C,GAAG;AAC1D,YAAI;AACF,gBAAMC,UAAc,YAAY,MAAM,MAAM,GAAG;AAC/C,iBAAO,KAAK,EAAE,MAAM,gBAAe,CAAE;AAAA,QACvC,SAAS,OAAO;AACd,kBAAQ,MAAM,2BAA2B,KAAK;AAAA,QAChD;AAAA,MACF;AAAA,IACF;AAEA,UAAM,WAAW,MAAM;AACrB,gBAAU,UAAU,UAAU,OAAO,SAAS,IAAI;AAAA,IACpD;AAGA,UAAM,iBAAiB,YAAY;AACjC,UAAI;AACF,cAAMA,UAAc,gBAAgB,MAAM,OAAO,GAAG;AACpD,cAAMA,UAAc,mBAAmB,MAAM,OAAO,GAAG;AAAA,MACzD,SAAS,OAAO;AACd,gBAAQ,MAAM,wBAAwB,KAAK;AAAA,MAC7C;AAAA,IACF;AAGA,cAAU,YAAY;AACpB,YAAM,cAAc;AAEpB,YAAM,eAAc;AAEpB,gBAAU,QAAQ;AAClB,YAAM,aAAa;AAAA,IACrB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,6 +1,6 @@
1
1
  import { createElementBlock, openBlock, createVNode } from "vue";
2
2
  import { useRouter } from "vue-router";
3
- /* empty css */
3
+ /* empty css */
4
4
  /* empty css */
5
5
  import _sfc_main$1 from "../forms/TrackForm.vue.js";
6
6
  const _hoisted_1 = { class: "track-create-page" };
@@ -1,6 +1,6 @@
1
1
  import { ref, onMounted, createElementBlock, openBlock, createElementVNode, createCommentVNode, normalizeClass, unref, normalizeStyle, Fragment, renderList, createBlock, withCtx, createTextVNode, toDisplayString, createVNode } from "vue";
2
2
  import _imports_0 from "./tonar.png.js";
3
- import { r as fu } from "../../../../../dist/main-BFvlam0J.js";
3
+ import { r as cu } from "../../../../../dist/main-BfEQkhXS.js";
4
4
  import _sfc_main$1 from "../../../icons/navigation/IconLike.vue.js";
5
5
  import _sfc_main$2 from "../../../icons/entities/IconEvents.vue.js";
6
6
  import _sfc_main$3 from "../cards/TrackListCard.vue.js";
@@ -13,7 +13,7 @@ import _export_sfc from "../../../../../../_virtual/_plugin-vue_export-helper.js
13
13
  const _hoisted_1 = { class: "o-y-scroll o-x-hidden bg-light pd-small pos-relative z-index-2 t-center t-black w-100 h-100" };
14
14
  const _hoisted_2 = { class: "pos-relative gap-small flex-nowrap flex-column flex-center flex z-index-1" };
15
15
  const _hoisted_3 = {
16
- class: "mn-b-thin h-max-30r br-2px br-solid br-black-transp-10 radius-extra w-100 pos-relative aspect-1x1 flex-center flex",
16
+ class: "mn-b-thin h-max-30r br-2px br-black-transp-10 radius-extra w-100 pos-relative aspect-1x1 flex-center flex",
17
17
  style: { "background": "linear-gradient(180deg, #BDBDBD 0%, #D9D9D9 79.69%, #A5A5A5 100%)", "box-shadow": "0 2px 0px 2px #aaaaaa" }
18
18
  };
19
19
  const _hoisted_4 = { class: "pos-relative" };
@@ -27,7 +27,7 @@ const _hoisted_8 = {
27
27
  key: 0,
28
28
  class: "flex-nowrap flex gap-thin flex-v-center"
29
29
  };
30
- const _hoisted_9 = { class: "t-semi h4" };
30
+ const _hoisted_9 = { class: "fw-semi h4" };
31
31
  const _hoisted_10 = { class: "gap-thin flex-center flex-nowrap flex pd-small bg-white radius-medium o-hidden w-100 pos-relative" };
32
32
  const _hoisted_11 = { class: "pd-thin bg-white radius-medium w-100 pos-relative" };
33
33
  const _hoisted_12 = {
@@ -69,7 +69,7 @@ const _sfc_main = {
69
69
  ], 2),
70
70
  createElementVNode("div", {
71
71
  ref: "disk",
72
- class: normalizeClass([["radius-100 rotate-gradient flex-center flex"], "pos-relative z-index-1"]),
72
+ class: normalizeClass([["radius-extra rotate-gradient flex-center flex"], "pos-relative z-index-1"]),
73
73
  style: normalizeStyle({
74
74
  transform: `rotate(${unref(state).rotationAngle}deg)`,
75
75
  width: "24rem",
@@ -99,14 +99,14 @@ const _sfc_main = {
99
99
  backgroundPosition: "center center",
100
100
  backgroundSize: "106%"
101
101
  }),
102
- class: "radius-extra br-solid br-black-transp-10 br-1px"
102
+ class: "radius-extra br-black-transp-10 br-1px"
103
103
  }, null, 4)
104
104
  ], 4)
105
105
  ])
106
106
  ]),
107
107
  createElementVNode("div", _hoisted_5, [
108
108
  _cache[1] || (_cache[1] = createElementVNode("p", { class: "mn-l-auto mn-b-thin mn-r-auto radius-big pd-thin bg-second w-min" }, "NOW PLAYING", -1)),
109
- unref(state).currentTrack ? (openBlock(), createBlock(unref(fu), {
109
+ unref(state).currentTrack ? (openBlock(), createBlock(unref(cu), {
110
110
  key: 0,
111
111
  class: "h2 uppercase mn-b-thin",
112
112
  gradient: true,
@@ -132,7 +132,7 @@ const _sfc_main = {
132
132
  createElementVNode("p", _hoisted_9, toDisplayString(isLiked.value ? "Liked" : "Like"), 1)
133
133
  ])) : createCommentVNode("", true),
134
134
  createElementVNode("p", {
135
- class: normalizeClass(["t-semi h4", { "mn-l-auto": unref(state$1).user }])
135
+ class: normalizeClass(["fw-semi h4", { "mn-l-auto": unref(state$1).user }])
136
136
  }, toDisplayString(likesCount.value) + " " + toDisplayString(likesCount.value === 1 ? "person" : "people") + " liked", 3)
137
137
  ]),
138
138
  createElementVNode("div", _hoisted_10, [
@@ -164,7 +164,7 @@ const _sfc_main = {
164
164
  };
165
165
  }
166
166
  };
167
- const FullscreenPlayer = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-76598c55"]]);
167
+ const FullscreenPlayer = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-6e78a1a6"]]);
168
168
  export {
169
169
  FullscreenPlayer as default
170
170
  };
@@ -1 +1 @@
1
- {"version":3,"file":"FullscreenPlayer.vue.js","sources":["../../../../../../../src/modules/music/components/player/FullscreenPlayer.vue"],"sourcesContent":["<template>\n <section\n class=\"o-y-scroll o-x-hidden bg-light pd-small pos-relative z-index-2 t-center t-black w-100 h-100\"\n >\n\n <div\n class=\"pos-relative gap-small flex-nowrap flex-column flex-center flex z-index-1\"\n >\n <!-- COVER -->\n <div class=\"mn-b-thin h-max-30r br-2px br-solid br-black-transp-10 radius-extra w-100 pos-relative aspect-1x1 flex-center flex \"\n style=\"\n background: linear-gradient(180deg, #BDBDBD 0%, #D9D9D9 79.69%, #A5A5A5 100%);\n box-shadow: 0 2px 0px 2px #aaaaaa;\n \"\n >\n\n <div class=\"pos-relative\">\n <div class=\"radioTonarWrapper\" :class=\"{'activeTonar': playerState.isPlaying}\">\n <img\n class=\"radioTonar z-index-2\"\n src=\"./tonar.png\"\n :class=\"{'playingTonar': playerState.isPlaying}\"\n >\n </div>\n <div\n ref=\"disk\"\n :class=\"['radius-100 rotate-gradient flex-center flex']\"\n :style=\"{\n transform: `rotate(${playerState.rotationAngle}deg)`,\n width: '24rem',\n height: '24rem',\n border: '3px solid var(--black)',\n 'box-shadow': 'rgba(0,0,0,0.5) 0 0 64px 0px'\n }\"\n class=\"pos-relative z-index-1\"\n >\n <div\n v-for=\"i in 11\"\n :key=\"i\"\n :style=\"{\n border: '1px solid rgba(0,0,0,0.25)',\n position: 'absolute',\n width: 23 - i * 1 + 'rem',\n height: 23 - i * 1 + 'rem',\n 'border-radius': '100%',\n 'box-shadow': 'rgb(47 47 47 / 18%) 0px 0px 5px 10px'\n }\"\n >\n </div>\n\n <div\n :style=\"{\n width: '10rem',\n height: '10rem',\n backgroundImage: `url('${playerState.currentTrack?.coverUrl || playerState.currentTrack?.album?.coverArt}')`,\n backgroundPosition: 'center center',\n backgroundSize: '106%',\n }\"\n class=\"radius-extra br-solid br-black-transp-10 br-1px\"\n >\n </div>\n </div>\n\n </div>\n\n </div>\n\n <!-- NOW PLAYING -->\n <div\n class=\"pd-thin bg-white radius-medium o-hidden w-100 pos-relative\"\n >\n <p class=\"mn-l-auto mn-b-thin mn-r-auto radius-big pd-thin bg-second w-min\">NOW&nbsp;PLAYING</p>\n <!-- SONG -->\n <Marquee\n v-if=\"playerState.currentTrack\"\n class=\"h2 uppercase mn-b-thin\"\n :gradient=\"true\"\n :gradientColor=\"'rgb(var(--white))'\"\n :clone=\"true\"\n gradient-length=\"10%\"\n >\n {{ playerState.currentTrack.title + '\\xa0\\xa0'}}\n </Marquee>\n\n <!-- AUTHOR -->\n <p\n v-if=\"playerState.currentTrack\"\n class=\"h3 uppercase t-transp\"\n >\n {{ playerState.currentTrack.artist?.name || 'Unknown Artist' }}\n </p>\n </div>\n\n <!-- LIKES -->\n <div\n class=\"pd-thin bg-white radius-medium w-100 pos-relative flex flex-v-center gap-thin\"\n >\n <div v-if=\"authState.user\" class=\"flex-nowrap flex gap-thin flex-v-center\">\n <IconLike\n @click=\"toggleLike()\"\n :isLiked=\"isLiked\"\n fill=\"rgb(var(--black))\"\n class=\"i-medium cursor-pointer\"\n :class=\"{'no-events': isLoading}\"\n />\n <p class=\"t-semi h4\">{{ isLiked ? 'Liked' : 'Like' }}</p>\n </div>\n\n <p class=\"t-semi h4\" :class=\"{'mn-l-auto': authState.user}\">{{ likesCount }} {{ likesCount === 1 ? 'person' : 'people' }} liked</p>\n </div>\n\n <!-- CONTROLS -->\n <div\n class=\"gap-thin flex-center flex-nowrap flex pd-small bg-white radius-medium o-hidden w-100 pos-relative\"\n >\n <PlayerControls />\n </div>\n\n <!-- VOLUME -->\n <div class=\"pd-thin bg-white radius-medium w-100 pos-relative\">\n <VolumeControl />\n </div>\n\n\n <!-- QUEUE LIST -->\n <div\n v-if=\"playerState.queue.length > 0\"\n class=\"mn-b-small bg-white radius-medium o-hidden w-100 pos-relative\"\n >\n\n <div class=\"pd-regular w-100 gap-thin flex-nowrap flex flex-v-center\">\n <IconEvents :fill=\"'rgb(var(--black))'\" class=\"t-transp i-medium\"/>\n <p class=\"w-100 t-transp t-left\">QUEUE</p>\n </div>\n\n <TrackListCard\n v-for=\"(track, index) in playerState.queue.slice(0, 10)\"\n :key=\"track._id || index\"\n :track=\"track\"\n :index=\"index\"\n :showCover=\"true\"\n :showAlbum=\"false\"\n />\n\n </div>\n\n </div>\n\n </section>\n</template>\n\n<script setup>\nimport { ref, computed, onMounted } from 'vue';\n\nimport { Text, Tooltip, Marquee } from '@ozdao/martyrs';\nimport IconLike from '@martyrs/src/modules/icons/navigation/IconLike.vue';\nimport IconEvents from '@martyrs/src/modules/icons/entities/IconEvents.vue';\n\nimport TrackListCard from '../cards/TrackListCard.vue';\nimport VolumeControl from './VolumeControl.vue';\nimport PlayerControls from './PlayerControls.vue';\nimport { state as playerState, actions as playerActions } from '../../store/player.js';\nimport { state as authState } from '@martyrs/src/modules/auth/views/store/auth.js';\n\nconst isLiked = ref(false);\nconst isLoading = ref(false);\nconst likesCount = ref(0);\n\nasync function toggleLike() {\n // TODO: Implement likes integration with community module\n isLiked.value = !isLiked.value;\n likesCount.value += isLiked.value ? 1 : -1;\n}\n\nonMounted(() => {\n if ('mediaSession' in navigator) {\n navigator.mediaSession.setActionHandler('pause', () => playerActions.togglePlay());\n navigator.mediaSession.setActionHandler('play', () => playerActions.togglePlay());\n navigator.mediaSession.setActionHandler('stop', () => playerActions.togglePlay());\n navigator.mediaSession.setActionHandler('previoustrack', () => playerActions.playPrevious());\n navigator.mediaSession.setActionHandler('nexttrack', () => playerActions.playNext());\n }\n});\n\n</script>\n\n\n<style lang=\"scss\" scoped>\n.radioTonarWrapper {\n width: 15rem;\n position: absolute;\n z-index: 30;\n transform: rotate(253deg);\n transform-origin: 75% center;\n top: 0;\n right: -2.5rem;\n transition: transform 1s ease-in-out;\n}\n\n.radioTonar {\n width: 15rem;\n transform-origin: 75% center;\n}\n\n.activeTonar {\n transform: rotate(285deg);\n}\n\n.playingTonar {\n animation: playingTonar 2s ease-in-out infinite;\n}\n\n@keyframes playingTonar {\n 0%, 100% {\n transform: rotate(0deg);\n }\n 25% {\n transform: rotate(2deg);\n }\n 50% {\n transform: rotate(-2deg);\n }\n}\n\n@property --a {\n syntax: '<angle>';\n inherits: false;\n initial-value: 0deg;\n}\n\n@property --b {\n syntax: '<angle>';\n inherits: false;\n initial-value: 0deg;\n}\n\n.rotate-gradient {\n --a: 0deg;\n --b: 0deg;\n transition: --a 0.5s, --b 0.5s;\n\n background:\n conic-gradient(from var(--a), rgba(255, 255, 255, 0.1), rgba(0, 0, 0, 0.33), rgba(255, 255, 255, 0.1)),\n linear-gradient(180deg, rgba(0, 0, 0, 1) 0%, rgba(255, 255, 255, 0.1) 50%, rgba(0, 0, 0, 1) 100%),\n linear-gradient(180deg, #000 0%, rgba(10, 10, 10, 0.00) 100%),\n #000;\n}\n</style>\n"],"names":["playerActions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoKA,UAAM,UAAU,IAAI,KAAK;AACzB,UAAM,YAAY,IAAI,KAAK;AAC3B,UAAM,aAAa,IAAI,CAAC;AAExB,mBAAe,aAAa;AAE1B,cAAQ,QAAQ,CAAC,QAAQ;AACzB,iBAAW,SAAS,QAAQ,QAAQ,IAAI;AAAA,IAC1C;AAEA,cAAU,MAAM;AACd,UAAI,kBAAkB,WAAW;AAC/B,kBAAU,aAAa,iBAAiB,SAAS,MAAMA,QAAc,YAAY;AACjF,kBAAU,aAAa,iBAAiB,QAAQ,MAAMA,QAAc,YAAY;AAChF,kBAAU,aAAa,iBAAiB,QAAQ,MAAMA,QAAc,YAAY;AAChF,kBAAU,aAAa,iBAAiB,iBAAiB,MAAMA,QAAc,cAAc;AAC3F,kBAAU,aAAa,iBAAiB,aAAa,MAAMA,QAAc,UAAU;AAAA,MACrF;AAAA,IACF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"FullscreenPlayer.vue.js","sources":["../../../../../../../src/modules/music/components/player/FullscreenPlayer.vue"],"sourcesContent":["<template>\n <section\n class=\"o-y-scroll o-x-hidden bg-light pd-small pos-relative z-index-2 t-center t-black w-100 h-100\"\n >\n\n <div\n class=\"pos-relative gap-small flex-nowrap flex-column flex-center flex z-index-1\"\n >\n <!-- COVER -->\n <div class=\"mn-b-thin h-max-30r br-2px br-black-transp-10 radius-extra w-100 pos-relative aspect-1x1 flex-center flex \"\n style=\"\n background: linear-gradient(180deg, #BDBDBD 0%, #D9D9D9 79.69%, #A5A5A5 100%);\n box-shadow: 0 2px 0px 2px #aaaaaa;\n \"\n >\n\n <div class=\"pos-relative\">\n <div class=\"radioTonarWrapper\" :class=\"{'activeTonar': playerState.isPlaying}\">\n <img\n class=\"radioTonar z-index-2\"\n src=\"./tonar.png\"\n :class=\"{'playingTonar': playerState.isPlaying}\"\n >\n </div>\n <div\n ref=\"disk\"\n :class=\"['radius-extra rotate-gradient flex-center flex']\"\n :style=\"{\n transform: `rotate(${playerState.rotationAngle}deg)`,\n width: '24rem',\n height: '24rem',\n border: '3px solid var(--black)',\n 'box-shadow': 'rgba(0,0,0,0.5) 0 0 64px 0px'\n }\"\n class=\"pos-relative z-index-1\"\n >\n <div\n v-for=\"i in 11\"\n :key=\"i\"\n :style=\"{\n border: '1px solid rgba(0,0,0,0.25)',\n position: 'absolute',\n width: 23 - i * 1 + 'rem',\n height: 23 - i * 1 + 'rem',\n 'border-radius': '100%',\n 'box-shadow': 'rgb(47 47 47 / 18%) 0px 0px 5px 10px'\n }\"\n >\n </div>\n\n <div\n :style=\"{\n width: '10rem',\n height: '10rem',\n backgroundImage: `url('${playerState.currentTrack?.coverUrl || playerState.currentTrack?.album?.coverArt}')`,\n backgroundPosition: 'center center',\n backgroundSize: '106%',\n }\"\n class=\"radius-extra br-black-transp-10 br-1px\"\n >\n </div>\n </div>\n\n </div>\n\n </div>\n\n <!-- NOW PLAYING -->\n <div\n class=\"pd-thin bg-white radius-medium o-hidden w-100 pos-relative\"\n >\n <p class=\"mn-l-auto mn-b-thin mn-r-auto radius-big pd-thin bg-second w-min\">NOW&nbsp;PLAYING</p>\n <!-- SONG -->\n <Marquee\n v-if=\"playerState.currentTrack\"\n class=\"h2 uppercase mn-b-thin\"\n :gradient=\"true\"\n :gradientColor=\"'rgb(var(--white))'\"\n :clone=\"true\"\n gradient-length=\"10%\"\n >\n {{ playerState.currentTrack.title + '\\xa0\\xa0'}}\n </Marquee>\n\n <!-- AUTHOR -->\n <p\n v-if=\"playerState.currentTrack\"\n class=\"h3 uppercase t-transp\"\n >\n {{ playerState.currentTrack.artist?.name || 'Unknown Artist' }}\n </p>\n </div>\n\n <!-- LIKES -->\n <div\n class=\"pd-thin bg-white radius-medium w-100 pos-relative flex flex-v-center gap-thin\"\n >\n <div v-if=\"authState.user\" class=\"flex-nowrap flex gap-thin flex-v-center\">\n <IconLike\n @click=\"toggleLike()\"\n :isLiked=\"isLiked\"\n fill=\"rgb(var(--black))\"\n class=\"i-medium cursor-pointer\"\n :class=\"{'no-events': isLoading}\"\n />\n <p class=\"fw-semi h4\">{{ isLiked ? 'Liked' : 'Like' }}</p>\n </div>\n\n <p class=\"fw-semi h4\" :class=\"{'mn-l-auto': authState.user}\">{{ likesCount }} {{ likesCount === 1 ? 'person' : 'people' }} liked</p>\n </div>\n\n <!-- CONTROLS -->\n <div\n class=\"gap-thin flex-center flex-nowrap flex pd-small bg-white radius-medium o-hidden w-100 pos-relative\"\n >\n <PlayerControls />\n </div>\n\n <!-- VOLUME -->\n <div class=\"pd-thin bg-white radius-medium w-100 pos-relative\">\n <VolumeControl />\n </div>\n\n\n <!-- QUEUE LIST -->\n <div\n v-if=\"playerState.queue.length > 0\"\n class=\"mn-b-small bg-white radius-medium o-hidden w-100 pos-relative\"\n >\n\n <div class=\"pd-regular w-100 gap-thin flex-nowrap flex flex-v-center\">\n <IconEvents :fill=\"'rgb(var(--black))'\" class=\"t-transp i-medium\"/>\n <p class=\"w-100 t-transp t-left\">QUEUE</p>\n </div>\n\n <TrackListCard\n v-for=\"(track, index) in playerState.queue.slice(0, 10)\"\n :key=\"track._id || index\"\n :track=\"track\"\n :index=\"index\"\n :showCover=\"true\"\n :showAlbum=\"false\"\n />\n\n </div>\n\n </div>\n\n </section>\n</template>\n\n<script setup>\nimport { ref, computed, onMounted } from 'vue';\n\nimport { Text, Tooltip, Marquee } from '@ozdao/martyrs';\nimport IconLike from '@martyrs/src/modules/icons/navigation/IconLike.vue';\nimport IconEvents from '@martyrs/src/modules/icons/entities/IconEvents.vue';\n\nimport TrackListCard from '../cards/TrackListCard.vue';\nimport VolumeControl from './VolumeControl.vue';\nimport PlayerControls from './PlayerControls.vue';\nimport { state as playerState, actions as playerActions } from '../../store/player.js';\nimport { state as authState } from '@martyrs/src/modules/auth/views/store/auth.js';\n\nconst isLiked = ref(false);\nconst isLoading = ref(false);\nconst likesCount = ref(0);\n\nasync function toggleLike() {\n // TODO: Implement likes integration with community module\n isLiked.value = !isLiked.value;\n likesCount.value += isLiked.value ? 1 : -1;\n}\n\nonMounted(() => {\n if ('mediaSession' in navigator) {\n navigator.mediaSession.setActionHandler('pause', () => playerActions.togglePlay());\n navigator.mediaSession.setActionHandler('play', () => playerActions.togglePlay());\n navigator.mediaSession.setActionHandler('stop', () => playerActions.togglePlay());\n navigator.mediaSession.setActionHandler('previoustrack', () => playerActions.playPrevious());\n navigator.mediaSession.setActionHandler('nexttrack', () => playerActions.playNext());\n }\n});\n\n</script>\n\n\n<style lang=\"scss\" scoped>\n.radioTonarWrapper {\n width: 15rem;\n position: absolute;\n z-index: 30;\n transform: rotate(253deg);\n transform-origin: 75% center;\n top: 0;\n right: -2.5rem;\n transition: transform 1s ease-in-out;\n}\n\n.radioTonar {\n width: 15rem;\n transform-origin: 75% center;\n}\n\n.activeTonar {\n transform: rotate(285deg);\n}\n\n.playingTonar {\n animation: playingTonar 2s ease-in-out infinite;\n}\n\n@keyframes playingTonar {\n 0%, 100% {\n transform: rotate(0deg);\n }\n 25% {\n transform: rotate(2deg);\n }\n 50% {\n transform: rotate(-2deg);\n }\n}\n\n@property --a {\n syntax: '<angle>';\n inherits: false;\n initial-value: 0deg;\n}\n\n@property --b {\n syntax: '<angle>';\n inherits: false;\n initial-value: 0deg;\n}\n\n.rotate-gradient {\n --a: 0deg;\n --b: 0deg;\n transition: --a 0.5s, --b 0.5s;\n\n background:\n conic-gradient(from var(--a), rgba(255, 255, 255, 0.1), rgba(0, 0, 0, 0.33), rgba(255, 255, 255, 0.1)),\n linear-gradient(180deg, rgba(0, 0, 0, 1) 0%, rgba(255, 255, 255, 0.1) 50%, rgba(0, 0, 0, 1) 100%),\n linear-gradient(180deg, #000 0%, rgba(10, 10, 10, 0.00) 100%),\n #000;\n}\n</style>\n"],"names":["playerActions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoKA,UAAM,UAAU,IAAI,KAAK;AACzB,UAAM,YAAY,IAAI,KAAK;AAC3B,UAAM,aAAa,IAAI,CAAC;AAExB,mBAAe,aAAa;AAE1B,cAAQ,QAAQ,CAAC,QAAQ;AACzB,iBAAW,SAAS,QAAQ,QAAQ,IAAI;AAAA,IAC1C;AAEA,cAAU,MAAM;AACd,UAAI,kBAAkB,WAAW;AAC/B,kBAAU,aAAa,iBAAiB,SAAS,MAAMA,QAAc,YAAY;AACjF,kBAAU,aAAa,iBAAiB,QAAQ,MAAMA,QAAc,YAAY;AAChF,kBAAU,aAAa,iBAAiB,QAAQ,MAAMA,QAAc,YAAY;AAChF,kBAAU,aAAa,iBAAiB,iBAAiB,MAAMA,QAAc,cAAc;AAC3F,kBAAU,aAAa,iBAAiB,aAAa,MAAMA,QAAc,UAAU;AAAA,MACrF;AAAA,IACF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -7,10 +7,10 @@ import * as search from "./store/search.js";
7
7
  import * as tracks from "./store/tracks.js";
8
8
  import addRoutes from "../core/views/router/addRoutes.js";
9
9
  import { getRoutes } from "./music.router.js";
10
- import _sfc_main$b from "./components/layouts/MusicBottomPlayer.vue.js";
10
+ import _sfc_main$c from "./components/layouts/MusicBottomPlayer.vue.js";
11
11
  import _sfc_main$9 from "./components/pages/Album.vue.js";
12
12
  import _sfc_main$a from "./components/pages/Artist.vue.js";
13
- import MusicHome from "./components/pages/MusicHome.vue.js";
13
+ import _sfc_main$b from "./components/pages/MusicHome.vue.js";
14
14
  import _sfc_main$6 from "./components/pages/MusicLibrary.vue.js";
15
15
  import _sfc_main$5 from "./components/pages/TrackCreate.vue.js";
16
16
  import _sfc_main$8 from "./components/pages/Playlist.vue.js";
@@ -74,9 +74,9 @@ const ModuleMusic = {
74
74
  },
75
75
  components: {
76
76
  // Layouts
77
- MusicBottomPlayer: _sfc_main$b,
77
+ MusicBottomPlayer: _sfc_main$c,
78
78
  // Pages
79
- MusicHome,
79
+ MusicHome: _sfc_main$b,
80
80
  SearchResults,
81
81
  Artist: _sfc_main$a,
82
82
  Album: _sfc_main$9,
@@ -109,8 +109,8 @@ export {
109
109
  _sfc_main$a as Artist,
110
110
  ArtistCard,
111
111
  _sfc_main$3 as ArtistForm,
112
- _sfc_main$b as MusicBottomPlayer,
113
- MusicHome,
112
+ _sfc_main$c as MusicBottomPlayer,
113
+ _sfc_main$b as MusicHome,
114
114
  _sfc_main$6 as MusicLibrary,
115
115
  MusicPlayer,
116
116
  _sfc_main$8 as Playlist,
@@ -1 +1 @@
1
- {"version":3,"file":"music.client.js","sources":["../../../../../src/modules/music/music.client.js"],"sourcesContent":["// Store modules\nimport * as storeAlbums from './store/albums.js';\nimport * as storeArtists from './store/artists.js';\nimport * as storeGenres from './store/genres.js';\nimport * as storePlayer from './store/player.js';\nimport * as storePlaylists from './store/playlists.js';\nimport * as storeSearch from './store/search.js';\nimport * as storeTracks from './store/tracks.js';\n\n// Router\nimport addRoutes from '@martyrs/src/modules/core/views/router/addRoutes.js';\nimport { getRoutes } from './music.router.js';\n\n// Layouts\nimport MusicBottomPlayer from './components/layouts/MusicBottomPlayer.vue';\n\n// Pages\nimport Album from './components/pages/Album.vue';\nimport Artist from './components/pages/Artist.vue';\nimport MusicHome from './components/pages/MusicHome.vue';\nimport MusicLibrary from './components/pages/MusicLibrary.vue';\nimport TrackCreate from './components/pages/TrackCreate.vue';\nimport Playlist from './components/pages/Playlist.vue';\nimport SearchResults from './components/pages/SearchResults.vue';\nimport Track from './components/pages/Track.vue';\n\n// Components - Player\nimport MusicPlayer from './components/player/MusicPlayer.vue';\nimport TrackProgress from './components/player/TrackProgress.vue';\nimport VolumeControl from './components/player/VolumeControl.vue';\n\n// Components - Cards\nimport AlbumCard from './components/cards/AlbumCard.vue';\nimport ArtistCard from './components/cards/ArtistCard.vue';\nimport PlaylistCard from './components/cards/PlaylistCard.vue';\nimport TrackListCard from './components/cards/TrackListCard.vue';\n\n\n// Components - Forms\nimport ArtistForm from './components/forms/ArtistForm.vue';\nimport AlbumForm from './components/forms/AlbumForm.vue';\nimport PlaylistForm from './components/forms/PlaylistForm.vue';\nimport SearchForm from './components/forms/SearchForm.vue';\nimport TrackForm from './components/forms/TrackForm.vue';\n\n// WebSocket integration for streaming\nimport wsManager from '@martyrs/src/modules/core/views/classes/ws.manager.js';\n\n/**\n * Initialize Music module on client-side\n * @param {Object} app - Vue app instance\n * @param {Object} store - Global store instance\n * @param {Object} router - Vue router instance\n * @param {Object} config - Configuration options\n * @param {Object} options - Additional options\n */\nfunction initializeMusic(app, store, router, config, options = {}) {\n const routes = getRoutes(options);\n routes.forEach(({ parentName, config }) => {\n addRoutes(router, { ...config, parentName });\n });\n\n // Register store modules\n store.addStore('tracks', storeTracks);\n store.addStore('playlists', storePlaylists);\n store.addStore('albums', storeAlbums);\n store.addStore('artists', storeArtists);\n store.addStore('genres', storeGenres);\n store.addStore('player', storePlayer);\n store.addStore('search', storeSearch);\n\n // Set up WebSocket subscription for music streaming\n if (options.enableStreaming !== false && app.config.globalProperties.WSS_URL) {\n wsManager.initialize({\n wsUrl: process.env.WSS_URL,\n maxReconnectAttempts: 10,\n reconnectDelay: 2000,\n });\n\n // Subscribe to music streaming module when authenticated\n if (options.userId) {\n wsManager\n .connect(options.userId)\n .then(() => {\n wsManager.subscribeModule('music-streaming');\n })\n .catch(err => {\n console.error('Failed to connect to WebSocket for music streaming:', err);\n });\n }\n }\n\n // Register global components if needed\n app.component('MusicPlayer', MusicPlayer);\n}\n\n// Module export\nconst ModuleMusic = {\n initialize: initializeMusic,\n views: {\n store: {\n storeTracks,\n storePlaylists,\n storeAlbums,\n storeArtists,\n storeGenres,\n storePlayer,\n storeSearch,\n },\n router: {\n getRoutes,\n },\n components: {\n // Layouts\n MusicBottomPlayer,\n // Pages\n MusicHome,\n SearchResults,\n Artist,\n Album,\n Playlist,\n Track,\n MusicLibrary,\n TrackCreate,\n // Player Components\n MusicPlayer,\n TrackProgress,\n VolumeControl,\n // Cards\n TrackListCard,\n AlbumCard,\n PlaylistCard,\n ArtistCard,\n // Forms\n ArtistForm,\n AlbumForm,\n PlaylistForm,\n SearchForm,\n TrackForm,\n },\n },\n};\n\n// Named exports for direct component imports\nexport {\n AlbumCard,\n Album,\n ArtistCard,\n Artist,\n // Pages\n MusicHome,\n // Layout\n MusicBottomPlayer,\n MusicLibrary,\n // Player Components\n MusicPlayer,\n TrackCreate,\n PlaylistCard,\n Playlist,\n // Forms\n ArtistForm,\n AlbumForm,\n PlaylistForm,\n SearchForm,\n SearchResults,\n // Cards\n TrackListCard,\n Track,\n TrackForm,\n TrackProgress,\n VolumeControl,\n // Router\n getRoutes,\n storeAlbums,\n storeArtists,\n storeGenres,\n storePlayer,\n storePlaylists,\n storeSearch,\n // Store modules\n storeTracks,\n};\n\n// Default export\nexport default ModuleMusic;\n"],"names":["config","storeTracks","storePlaylists","storeAlbums","storeArtists","storeGenres","storePlayer","storeSearch","MusicBottomPlayer","Artist","Album","Playlist","Track","MusicLibrary","TrackCreate","TrackListCard","ArtistForm","AlbumForm","PlaylistForm","TrackForm"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwDA,SAAS,gBAAgB,KAAK,OAAO,QAAQ,QAAQ,UAAU,IAAI;AACjE,QAAM,SAAS,UAAU,OAAO;AAChC,SAAO,QAAQ,CAAC,EAAE,YAAY,QAAAA,QAAM,MAAO;AACzC,cAAU,QAAQ,EAAE,GAAGA,SAAQ,WAAU,CAAE;AAAA,EAC7C,CAAC;AAGD,QAAM,SAAS,UAAUC,MAAW;AACpC,QAAM,SAAS,aAAaC,SAAc;AAC1C,QAAM,SAAS,UAAUC,MAAW;AACpC,QAAM,SAAS,WAAWC,OAAY;AACtC,QAAM,SAAS,UAAUC,MAAW;AACpC,QAAM,SAAS,UAAUC,MAAW;AACpC,QAAM,SAAS,UAAUC,MAAW;AAGpC,MAAI,QAAQ,oBAAoB,SAAS,IAAI,OAAO,iBAAiB,SAAS;AAC5E,cAAU,WAAW;AAAA,MACnB,OAAO,QAAQ,IAAI;AAAA,MACnB,sBAAsB;AAAA,MACtB,gBAAgB;AAAA,IACtB,CAAK;AAGD,QAAI,QAAQ,QAAQ;AAClB,gBACG,QAAQ,QAAQ,MAAM,EACtB,KAAK,MAAM;AACV,kBAAU,gBAAgB,iBAAiB;AAAA,MAC7C,CAAC,EACA,MAAM,SAAO;AACZ,gBAAQ,MAAM,uDAAuD,GAAG;AAAA,MAC1E,CAAC;AAAA,IACL;AAAA,EACF;AAGA,MAAI,UAAU,eAAe,WAAW;AAC1C;AAGK,MAAC,cAAc;AAAA,EAClB,YAAY;AAAA,EACZ,OAAO;AAAA,IACL,OAAO;AAAA,MACX,aAAMN;AAAAA,MACN,gBAAMC;AAAAA,MACN,aAAMC;AAAAA,MACN,cAAMC;AAAAA,MACN,aAAMC;AAAAA,MACN,aAAMC;AAAAA,MACN,aAAMC;AAAAA,IACN;AAAA,IACI,QAAQ;AAAA,MACN;AAAA,IACN;AAAA,IACI,YAAY;AAAA;AAAA,MAEhB,mBAAMC;AAAAA;AAAAA,MAEA;AAAA,MACA;AAAA,MACN,QAAMC;AAAAA,MACN,OAAMC;AAAAA,MACN,UAAMC;AAAAA,MACN,OAAMC;AAAAA,MACN,cAAMC;AAAAA,MACN,aAAMC;AAAAA;AAAAA,MAEA;AAAA,MACA;AAAA,MACA;AAAA;AAAA,MAEN,eAAMC;AAAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA,MAEN,YAAMC;AAAAA,MACN,WAAMC;AAAAA,MACN,cAAMC;AAAAA,MACA;AAAA,MACN,WAAMC;AAAAA,IACN;AAAA,EACA;AACA;"}
1
+ {"version":3,"file":"music.client.js","sources":["../../../../../src/modules/music/music.client.js"],"sourcesContent":["// Store modules\nimport * as storeAlbums from './store/albums.js';\nimport * as storeArtists from './store/artists.js';\nimport * as storeGenres from './store/genres.js';\nimport * as storePlayer from './store/player.js';\nimport * as storePlaylists from './store/playlists.js';\nimport * as storeSearch from './store/search.js';\nimport * as storeTracks from './store/tracks.js';\n\n// Router\nimport addRoutes from '@martyrs/src/modules/core/views/router/addRoutes.js';\nimport { getRoutes } from './music.router.js';\n\n// Layouts\nimport MusicBottomPlayer from './components/layouts/MusicBottomPlayer.vue';\n\n// Pages\nimport Album from './components/pages/Album.vue';\nimport Artist from './components/pages/Artist.vue';\nimport MusicHome from './components/pages/MusicHome.vue';\nimport MusicLibrary from './components/pages/MusicLibrary.vue';\nimport TrackCreate from './components/pages/TrackCreate.vue';\nimport Playlist from './components/pages/Playlist.vue';\nimport SearchResults from './components/pages/SearchResults.vue';\nimport Track from './components/pages/Track.vue';\n\n// Components - Player\nimport MusicPlayer from './components/player/MusicPlayer.vue';\nimport TrackProgress from './components/player/TrackProgress.vue';\nimport VolumeControl from './components/player/VolumeControl.vue';\n\n// Components - Cards\nimport AlbumCard from './components/cards/AlbumCard.vue';\nimport ArtistCard from './components/cards/ArtistCard.vue';\nimport PlaylistCard from './components/cards/PlaylistCard.vue';\nimport TrackListCard from './components/cards/TrackListCard.vue';\n\n\n// Components - Forms\nimport ArtistForm from './components/forms/ArtistForm.vue';\nimport AlbumForm from './components/forms/AlbumForm.vue';\nimport PlaylistForm from './components/forms/PlaylistForm.vue';\nimport SearchForm from './components/forms/SearchForm.vue';\nimport TrackForm from './components/forms/TrackForm.vue';\n\n// WebSocket integration for streaming\nimport wsManager from '@martyrs/src/modules/core/views/classes/ws.manager.js';\n\n/**\n * Initialize Music module on client-side\n * @param {Object} app - Vue app instance\n * @param {Object} store - Global store instance\n * @param {Object} router - Vue router instance\n * @param {Object} config - Configuration options\n * @param {Object} options - Additional options\n */\nfunction initializeMusic(app, store, router, config, options = {}) {\n const routes = getRoutes(options);\n routes.forEach(({ parentName, config }) => {\n addRoutes(router, { ...config, parentName });\n });\n\n // Register store modules\n store.addStore('tracks', storeTracks);\n store.addStore('playlists', storePlaylists);\n store.addStore('albums', storeAlbums);\n store.addStore('artists', storeArtists);\n store.addStore('genres', storeGenres);\n store.addStore('player', storePlayer);\n store.addStore('search', storeSearch);\n\n // Set up WebSocket subscription for music streaming\n if (options.enableStreaming !== false && app.config.globalProperties.WSS_URL) {\n wsManager.initialize({\n wsUrl: process.env.WSS_URL,\n maxReconnectAttempts: 10,\n reconnectDelay: 2000,\n });\n\n // Subscribe to music streaming module when authenticated\n if (options.userId) {\n wsManager\n .connect(options.userId)\n .then(() => {\n wsManager.subscribeModule('music-streaming');\n })\n .catch(err => {\n console.error('Failed to connect to WebSocket for music streaming:', err);\n });\n }\n }\n\n // Register global components if needed\n app.component('MusicPlayer', MusicPlayer);\n}\n\n// Module export\nconst ModuleMusic = {\n initialize: initializeMusic,\n views: {\n store: {\n storeTracks,\n storePlaylists,\n storeAlbums,\n storeArtists,\n storeGenres,\n storePlayer,\n storeSearch,\n },\n router: {\n getRoutes,\n },\n components: {\n // Layouts\n MusicBottomPlayer,\n // Pages\n MusicHome,\n SearchResults,\n Artist,\n Album,\n Playlist,\n Track,\n MusicLibrary,\n TrackCreate,\n // Player Components\n MusicPlayer,\n TrackProgress,\n VolumeControl,\n // Cards\n TrackListCard,\n AlbumCard,\n PlaylistCard,\n ArtistCard,\n // Forms\n ArtistForm,\n AlbumForm,\n PlaylistForm,\n SearchForm,\n TrackForm,\n },\n },\n};\n\n// Named exports for direct component imports\nexport {\n AlbumCard,\n Album,\n ArtistCard,\n Artist,\n // Pages\n MusicHome,\n // Layout\n MusicBottomPlayer,\n MusicLibrary,\n // Player Components\n MusicPlayer,\n TrackCreate,\n PlaylistCard,\n Playlist,\n // Forms\n ArtistForm,\n AlbumForm,\n PlaylistForm,\n SearchForm,\n SearchResults,\n // Cards\n TrackListCard,\n Track,\n TrackForm,\n TrackProgress,\n VolumeControl,\n // Router\n getRoutes,\n storeAlbums,\n storeArtists,\n storeGenres,\n storePlayer,\n storePlaylists,\n storeSearch,\n // Store modules\n storeTracks,\n};\n\n// Default export\nexport default ModuleMusic;\n"],"names":["config","storeTracks","storePlaylists","storeAlbums","storeArtists","storeGenres","storePlayer","storeSearch","MusicBottomPlayer","MusicHome","Artist","Album","Playlist","Track","MusicLibrary","TrackCreate","TrackListCard","ArtistForm","AlbumForm","PlaylistForm","TrackForm"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwDA,SAAS,gBAAgB,KAAK,OAAO,QAAQ,QAAQ,UAAU,IAAI;AACjE,QAAM,SAAS,UAAU,OAAO;AAChC,SAAO,QAAQ,CAAC,EAAE,YAAY,QAAAA,QAAM,MAAO;AACzC,cAAU,QAAQ,EAAE,GAAGA,SAAQ,WAAU,CAAE;AAAA,EAC7C,CAAC;AAGD,QAAM,SAAS,UAAUC,MAAW;AACpC,QAAM,SAAS,aAAaC,SAAc;AAC1C,QAAM,SAAS,UAAUC,MAAW;AACpC,QAAM,SAAS,WAAWC,OAAY;AACtC,QAAM,SAAS,UAAUC,MAAW;AACpC,QAAM,SAAS,UAAUC,MAAW;AACpC,QAAM,SAAS,UAAUC,MAAW;AAGpC,MAAI,QAAQ,oBAAoB,SAAS,IAAI,OAAO,iBAAiB,SAAS;AAC5E,cAAU,WAAW;AAAA,MACnB,OAAO,QAAQ,IAAI;AAAA,MACnB,sBAAsB;AAAA,MACtB,gBAAgB;AAAA,IACtB,CAAK;AAGD,QAAI,QAAQ,QAAQ;AAClB,gBACG,QAAQ,QAAQ,MAAM,EACtB,KAAK,MAAM;AACV,kBAAU,gBAAgB,iBAAiB;AAAA,MAC7C,CAAC,EACA,MAAM,SAAO;AACZ,gBAAQ,MAAM,uDAAuD,GAAG;AAAA,MAC1E,CAAC;AAAA,IACL;AAAA,EACF;AAGA,MAAI,UAAU,eAAe,WAAW;AAC1C;AAGK,MAAC,cAAc;AAAA,EAClB,YAAY;AAAA,EACZ,OAAO;AAAA,IACL,OAAO;AAAA,MACX,aAAMN;AAAAA,MACN,gBAAMC;AAAAA,MACN,aAAMC;AAAAA,MACN,cAAMC;AAAAA,MACN,aAAMC;AAAAA,MACN,aAAMC;AAAAA,MACN,aAAMC;AAAAA,IACN;AAAA,IACI,QAAQ;AAAA,MACN;AAAA,IACN;AAAA,IACI,YAAY;AAAA;AAAA,MAEhB,mBAAMC;AAAAA;AAAAA,MAEN,WAAMC;AAAAA,MACA;AAAA,MACN,QAAMC;AAAAA,MACN,OAAMC;AAAAA,MACN,UAAMC;AAAAA,MACN,OAAMC;AAAAA,MACN,cAAMC;AAAAA,MACN,aAAMC;AAAAA;AAAAA,MAEA;AAAA,MACA;AAAA,MACA;AAAA;AAAA,MAEN,eAAMC;AAAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA,MAEN,YAAMC;AAAAA,MACN,WAAMC;AAAAA,MACN,cAAMC;AAAAA,MACA;AAAA,MACN,WAAMC;AAAAA,IACN;AAAA,EACA;AACA;"}
@@ -3,7 +3,7 @@ import { computed, createElementBlock, openBlock, normalizeClass, createElementV
3
3
  import _export_sfc from "../../../../../../_virtual/_plugin-vue_export-helper.js";
4
4
  const _hoisted_1 = { class: "notification-icon" };
5
5
  const _hoisted_2 = { class: "notification-content" };
6
- const _hoisted_3 = { class: "p-regular t-medium mn-b-small" };
6
+ const _hoisted_3 = { class: "p-regular fw-medium mn-b-small" };
7
7
  const _hoisted_4 = { class: "p-small mn-b-small" };
8
8
  const _hoisted_5 = { class: "pd-thin w-max radius-thin bg-white" };
9
9
  const _hoisted_6 = {
@@ -75,7 +75,7 @@ const _sfc_main = {
75
75
  };
76
76
  }
77
77
  };
78
- const NotificationItem = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-3166e453"]]);
78
+ const NotificationItem = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-3bc04d97"]]);
79
79
  export {
80
80
  NotificationItem as default
81
81
  };
@@ -1 +1 @@
1
- {"version":3,"file":"NotificationItem.vue.js","sources":["../../../../../../../src/modules/notifications/components/blocks/NotificationItem.vue"],"sourcesContent":["<script setup>\nimport { computed } from 'vue';\n\n// Props\nconst props = defineProps({\n notification: {\n type: Object,\n required: true\n }\n});\n\n// Compute if notification is unread\nconst isUnread = computed(() => props.notification.status !== 'read');\n\n// Format date\nconst formattedDate = computed(() => {\n const date = new Date(props.notification.createdAt);\n const now = new Date();\n const diffMs = now - date;\n const diffSec = Math.floor(diffMs / 1000);\n const diffMin = Math.floor(diffSec / 60);\n const diffHours = Math.floor(diffMin / 60);\n const diffDays = Math.floor(diffHours / 24);\n \n if (diffSec < 60) {\n return 'Just now';\n } else if (diffMin < 60) {\n return `${diffMin}m ago`;\n } else if (diffHours < 24) {\n return `${diffHours}h ago`;\n } else if (diffDays < 7) {\n return `${diffDays}d ago`;\n } else {\n return date.toLocaleDateString();\n }\n});\n\n// Get icon based on notification type\nconst notificationIcon = computed(() => {\n switch (props.notification.type) {\n case 'alert':\n return '⚠️';\n case 'success':\n return '✅';\n case 'error':\n return '❌';\n case 'info':\n default:\n return 'ℹ️';\n }\n});\n\n// Emit click event\nconst emit = defineEmits(['click']);\nconst handleClick = () => {\n emit('click', props.notification);\n};\n</script>\n\n<template>\n <div \n class=\"notification-item gap-thin flex pd-small radius-small bg-light\" \n :class=\"{ 'bg-second-small': isUnread }\"\n @click=\"handleClick\"\n >\n <div class=\"notification-icon\">\n {{ notificationIcon }}\n </div>\n <div class=\"notification-content\">\n <p class=\"p-regular t-medium mn-b-small\">{{ notification.title }}</p>\n <p class=\"p-small mn-b-small\">{{ notification.body }}</p>\n <p class=\"pd-thin w-max radius-thin bg-white\">{{ formattedDate }}</p>\n </div>\n <div v-if=\"isUnread\" class=\"flex-child-default unread-indicator\"></div>\n </div>\n</template>\n\n<style scoped>\n.unread-indicator {\n width: 10px;\n height: 10px;\n border-radius: 50%;\n background-color: var(--primary-color, #0066cc);\n align-self: center;\n margin-left: 0.5rem;\n}\n</style>"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAIA,UAAM,QAAQ;AAQd,UAAM,WAAW,SAAS,MAAM,MAAM,aAAa,WAAW,MAAM;AAGpE,UAAM,gBAAgB,SAAS,MAAM;AACnC,YAAM,OAAO,IAAI,KAAK,MAAM,aAAa,SAAS;AAClD,YAAM,MAAM,oBAAI,KAAI;AACpB,YAAM,SAAS,MAAM;AACrB,YAAM,UAAU,KAAK,MAAM,SAAS,GAAI;AACxC,YAAM,UAAU,KAAK,MAAM,UAAU,EAAE;AACvC,YAAM,YAAY,KAAK,MAAM,UAAU,EAAE;AACzC,YAAM,WAAW,KAAK,MAAM,YAAY,EAAE;AAE1C,UAAI,UAAU,IAAI;AAChB,eAAO;AAAA,MACT,WAAW,UAAU,IAAI;AACvB,eAAO,GAAG,OAAO;AAAA,MACnB,WAAW,YAAY,IAAI;AACzB,eAAO,GAAG,SAAS;AAAA,MACrB,WAAW,WAAW,GAAG;AACvB,eAAO,GAAG,QAAQ;AAAA,MACpB,OAAO;AACL,eAAO,KAAK,mBAAkB;AAAA,MAChC;AAAA,IACF,CAAC;AAGD,UAAM,mBAAmB,SAAS,MAAM;AACtC,cAAQ,MAAM,aAAa,MAAI;AAAA,QAC7B,KAAK;AACH,iBAAO;AAAA,QACT,KAAK;AACH,iBAAO;AAAA,QACT,KAAK;AACH,iBAAO;AAAA,QACT,KAAK;AAAA,QACL;AACE,iBAAO;AAAA,MACb;AAAA,IACA,CAAC;AAGD,UAAM,OAAO;AACb,UAAM,cAAc,MAAM;AACxB,WAAK,SAAS,MAAM,YAAY;AAAA,IAClC;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"NotificationItem.vue.js","sources":["../../../../../../../src/modules/notifications/components/blocks/NotificationItem.vue"],"sourcesContent":["<script setup>\nimport { computed } from 'vue';\n\n// Props\nconst props = defineProps({\n notification: {\n type: Object,\n required: true\n }\n});\n\n// Compute if notification is unread\nconst isUnread = computed(() => props.notification.status !== 'read');\n\n// Format date\nconst formattedDate = computed(() => {\n const date = new Date(props.notification.createdAt);\n const now = new Date();\n const diffMs = now - date;\n const diffSec = Math.floor(diffMs / 1000);\n const diffMin = Math.floor(diffSec / 60);\n const diffHours = Math.floor(diffMin / 60);\n const diffDays = Math.floor(diffHours / 24);\n \n if (diffSec < 60) {\n return 'Just now';\n } else if (diffMin < 60) {\n return `${diffMin}m ago`;\n } else if (diffHours < 24) {\n return `${diffHours}h ago`;\n } else if (diffDays < 7) {\n return `${diffDays}d ago`;\n } else {\n return date.toLocaleDateString();\n }\n});\n\n// Get icon based on notification type\nconst notificationIcon = computed(() => {\n switch (props.notification.type) {\n case 'alert':\n return '⚠️';\n case 'success':\n return '✅';\n case 'error':\n return '❌';\n case 'info':\n default:\n return 'ℹ️';\n }\n});\n\n// Emit click event\nconst emit = defineEmits(['click']);\nconst handleClick = () => {\n emit('click', props.notification);\n};\n</script>\n\n<template>\n <div \n class=\"notification-item gap-thin flex pd-small radius-small bg-light\" \n :class=\"{ 'bg-second-small': isUnread }\"\n @click=\"handleClick\"\n >\n <div class=\"notification-icon\">\n {{ notificationIcon }}\n </div>\n <div class=\"notification-content\">\n <p class=\"p-regular fw-medium mn-b-small\">{{ notification.title }}</p>\n <p class=\"p-small mn-b-small\">{{ notification.body }}</p>\n <p class=\"pd-thin w-max radius-thin bg-white\">{{ formattedDate }}</p>\n </div>\n <div v-if=\"isUnread\" class=\"flex-child-default unread-indicator\"></div>\n </div>\n</template>\n\n<style scoped>\n.unread-indicator {\n width: 10px;\n height: 10px;\n border-radius: 50%;\n background-color: var(--primary-color, #0066cc);\n align-self: center;\n margin-left: 0.5rem;\n}\n</style>"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAIA,UAAM,QAAQ;AAQd,UAAM,WAAW,SAAS,MAAM,MAAM,aAAa,WAAW,MAAM;AAGpE,UAAM,gBAAgB,SAAS,MAAM;AACnC,YAAM,OAAO,IAAI,KAAK,MAAM,aAAa,SAAS;AAClD,YAAM,MAAM,oBAAI,KAAI;AACpB,YAAM,SAAS,MAAM;AACrB,YAAM,UAAU,KAAK,MAAM,SAAS,GAAI;AACxC,YAAM,UAAU,KAAK,MAAM,UAAU,EAAE;AACvC,YAAM,YAAY,KAAK,MAAM,UAAU,EAAE;AACzC,YAAM,WAAW,KAAK,MAAM,YAAY,EAAE;AAE1C,UAAI,UAAU,IAAI;AAChB,eAAO;AAAA,MACT,WAAW,UAAU,IAAI;AACvB,eAAO,GAAG,OAAO;AAAA,MACnB,WAAW,YAAY,IAAI;AACzB,eAAO,GAAG,SAAS;AAAA,MACrB,WAAW,WAAW,GAAG;AACvB,eAAO,GAAG,QAAQ;AAAA,MACpB,OAAO;AACL,eAAO,KAAK,mBAAkB;AAAA,MAChC;AAAA,IACF,CAAC;AAGD,UAAM,mBAAmB,SAAS,MAAM;AACtC,cAAQ,MAAM,aAAa,MAAI;AAAA,QAC7B,KAAK;AACH,iBAAO;AAAA,QACT,KAAK;AACH,iBAAO;AAAA,QACT,KAAK;AACH,iBAAO;AAAA,QACT,KAAK;AAAA,QACL;AACE,iBAAO;AAAA,MACb;AAAA,IACA,CAAC;AAGD,UAAM,OAAO;AACb,UAAM,cAAc,MAAM;AACxB,WAAK,SAAS,MAAM,YAAY;AAAA,IAClC;;;;;;;;;;;;;;;;;;"}
@@ -135,7 +135,7 @@ const _sfc_main = {
135
135
  };
136
136
  }
137
137
  };
138
- const NotificationBadge = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-1dbe1152"]]);
138
+ const NotificationBadge = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-ce5c73ba"]]);
139
139
  export {
140
140
  NotificationBadge as default
141
141
  };
@@ -1 +1 @@
1
- {"version":3,"file":"NotificationBadge.vue.js","sources":["../../../../../../../src/modules/notifications/components/elements/NotificationBadge.vue"],"sourcesContent":["<template>\n <div class=\"notification-badge-container\">\n <button \n class=\"i-medium notification-button\"\n @click=\"toggleNotifications\"\n :aria-label=\"unreadCount > 0 ? `${unreadCount} unread notifications` : 'No unread notifications'\"\n >\n <IconBell class=\"notification-icon i-medium\" :fill=\"fill\"/>\n <div \n v-if=\"unreadCount > 0\" \n class=\"button-counter flex flex-center\"\n >\n <span>{{ unreadCount > 99 ? '99+' : unreadCount }}</span>\n </div>\n </button>\n \n <Popup\n title=\"Notifications\"\n @close-popup=\"closeNotifications\"\n :isPopupOpen=\"isOpen\"\n align=\"center right\"\n class=\"bg-white h-min-100 w-100 w-max-30r pd-medium\"\n >\n <div class=\"cols-1 gap-thin o-y-scroll\">\n <div v-if=\"loading\" class=\"notifications-loading\">\n Loading...\n </div>\n \n <div v-else-if=\"notifications.length === 0\" class=\"notifications-empty\">\n No notifications\n </div>\n \n <div v-else class=\"flex-column flex gap-thin\">\n <notification-item \n v-for=\"notification in recentNotifications\" \n :key=\"notification._id\" \n :notification=\"notification\"\n @click=\"handleNotificationClick(notification)\"\n />\n\n <div class=\"flex-nowrap flex gap-thin\">\n <button \n v-if=\"unreadCount > 0\"\n class=\"w-100 bg-second t-white radius-small button\" \n @click=\"markAllAsRead\"\n >\n Mark all read\n </button>\n\n <router-link class=\"w-100 bg-black t-white radius-small button\" to=\"/notifications\" @click=\"closeNotifications\">\n View all \n </router-link>\n </div>\n\n </div>\n\n </div>\n </Popup>\n </div>\n</template>\n\n<script setup>\nimport { ref, computed, onMounted, inject } from 'vue';\nimport { useRouter } from 'vue-router';\n\nimport Popup from '@martyrs/src/components/Popup/Popup.vue';\n\nimport NotificationItem from '../blocks/NotificationItem.vue';\nimport * as auth from '@martyrs/src/modules/auth/views/store/auth.js';\nimport IconBell from '@martyrs/src/modules/icons/entities/IconBell.vue';\n\nconst props = defineProps({\n maxNotifications: {\n type: Number,\n default: 10\n },\n fill: {\n type: String,\n default: 'rgb(var(--white))'\n }\n});\n\n// Get router and notification functionality\nconst router = useRouter();\n\n// Check if notifications module is loaded, provide fallback if not\nconst useNotifications = inject('useNotifications', () => ({\n notifications: ref([]),\n unreadCount: ref(0),\n loading: ref(false),\n markAllAsRead: () => {},\n getNotifications: () => {}\n}));\n\nconst { notifications, unreadCount, loading, markAllAsRead, getNotifications } = useNotifications();\n\n// Local state\nconst isOpen = ref(false);\n\n// Computed properties\nconst recentNotifications = computed(() => {\n return notifications.value\n .slice()\n .sort((a, b) => new Date(b.createdAt) - new Date(a.createdAt))\n .slice(0, props.maxNotifications);\n});\n\n// Methods\nconst toggleNotifications = () => {\n isOpen.value = !isOpen.value;\n};\n\nconst closeNotifications = () => {\n isOpen.value = false;\n};\n\nconst handleNotificationClick = (notification) => {\n isOpen.value = false;\n \n if (notification._id) {\n // Handle in store\n actions.handleNotificationAction({\n notificationId: notification._id,\n ...notification.metadata\n });\n }\n};\n\n// Lifecycle hooks\nonMounted(() => {\n // Load notifications when component mounts\n const userId = auth.state.user._id;\n if (userId) {\n getNotifications(userId);\n }\n});\n</script>\n\n<style scoped>\n.notification-badge-container {\n position: relative;\n display: inline-block;\n}\n\n.notification-button {\n background: none;\n border: none;\n cursor: pointer;\n position: relative;\n font-size: 1.2rem;\n}\n\n.notification-icon {\n font-size: 1.4rem;\n}\n\n.button-counter {\n position: absolute;\n right: -8px;\n bottom: -8px;\n background: rgb(var(--fourth));\n color: rgb(var(--white));\n height: 16px;\n border-radius: 16px;\n width: 16px;\n font-weight: 500;\n text-align: center;\n line-height: 16px;\n font-size: 10px;\n}\n\n\n.notifications-loading,\n.notifications-empty {\n padding: 24px;\n text-align: center;\n color: rgb(var(--text-light));\n}\n</style>"],"names":["auth.state"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuEA,UAAM,QAAQ;AAYC,cAAS;AAGxB,UAAM,mBAAmB,OAAO,oBAAoB,OAAO;AAAA,MACzD,eAAe,IAAI,EAAE;AAAA,MACrB,aAAa,IAAI,CAAC;AAAA,MAClB,SAAS,IAAI,KAAK;AAAA,MAClB,eAAe,MAAM;AAAA,MAAC;AAAA,MACtB,kBAAkB,MAAM;AAAA,MAAC;AAAA,IAC3B,EAAE;AAEF,UAAM,EAAE,eAAe,aAAa,SAAS,eAAe,iBAAgB,IAAK,iBAAgB;AAGjG,UAAM,SAAS,IAAI,KAAK;AAGxB,UAAM,sBAAsB,SAAS,MAAM;AACzC,aAAO,cAAc,MAClB,MAAK,EACL,KAAK,CAAC,GAAG,MAAM,IAAI,KAAK,EAAE,SAAS,IAAI,IAAI,KAAK,EAAE,SAAS,CAAC,EAC5D,MAAM,GAAG,MAAM,gBAAgB;AAAA,IACpC,CAAC;AAGD,UAAM,sBAAsB,MAAM;AAChC,aAAO,QAAQ,CAAC,OAAO;AAAA,IACzB;AAEA,UAAM,qBAAqB,MAAM;AAC/B,aAAO,QAAQ;AAAA,IACjB;AAEA,UAAM,0BAA0B,CAAC,iBAAiB;AAChD,aAAO,QAAQ;AAEf,UAAI,aAAa,KAAK;AAEpB,gBAAQ,yBAAyB;AAAA,UAC/B,gBAAgB,aAAa;AAAA,UAC7B,GAAG,aAAa;AAAA,QACtB,CAAK;AAAA,MACH;AAAA,IACF;AAGA,cAAU,MAAM;AAEd,YAAM,SAASA,MAAW,KAAK;AAC/B,UAAI,QAAQ;AACV,yBAAiB,MAAM;AAAA,MACzB;AAAA,IACF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"NotificationBadge.vue.js","sources":["../../../../../../../src/modules/notifications/components/elements/NotificationBadge.vue"],"sourcesContent":["<template>\n <div class=\"notification-badge-container\">\n <button \n class=\"i-medium notification-button\"\n @click=\"toggleNotifications\"\n :aria-label=\"unreadCount > 0 ? `${unreadCount} unread notifications` : 'No unread notifications'\"\n >\n <IconBell class=\"notification-icon i-medium\" :fill=\"fill\"/>\n <div \n v-if=\"unreadCount > 0\" \n class=\"button-counter flex flex-center\"\n >\n <span>{{ unreadCount > 99 ? '99+' : unreadCount }}</span>\n </div>\n </button>\n \n <Popup\n title=\"Notifications\"\n @close-popup=\"closeNotifications\"\n :isPopupOpen=\"isOpen\"\n align=\"center right\"\n class=\"bg-white h-min-100 w-100 w-max-30r pd-medium\"\n >\n <div class=\"cols-1 gap-thin o-y-scroll\">\n <div v-if=\"loading\" class=\"notifications-loading\">\n Loading...\n </div>\n \n <div v-else-if=\"notifications.length === 0\" class=\"notifications-empty\">\n No notifications\n </div>\n \n <div v-else class=\"flex-column flex gap-thin\">\n <notification-item \n v-for=\"notification in recentNotifications\" \n :key=\"notification._id\" \n :notification=\"notification\"\n @click=\"handleNotificationClick(notification)\"\n />\n\n <div class=\"flex-nowrap flex gap-thin\">\n <button \n v-if=\"unreadCount > 0\"\n class=\"w-100 bg-second t-white radius-small button\" \n @click=\"markAllAsRead\"\n >\n Mark all read\n </button>\n\n <router-link class=\"w-100 bg-black t-white radius-small button\" to=\"/notifications\" @click=\"closeNotifications\">\n View all \n </router-link>\n </div>\n\n </div>\n\n </div>\n </Popup>\n </div>\n</template>\n\n<script setup>\nimport { ref, computed, onMounted, inject } from 'vue';\nimport { useRouter } from 'vue-router';\n\nimport Popup from '@martyrs/src/components/Popup/Popup.vue';\n\nimport NotificationItem from '../blocks/NotificationItem.vue';\nimport * as auth from '@martyrs/src/modules/auth/views/store/auth.js';\nimport IconBell from '@martyrs/src/modules/icons/entities/IconBell.vue';\n\nconst props = defineProps({\n maxNotifications: {\n type: Number,\n default: 10\n },\n fill: {\n type: String,\n default: 'rgb(var(--white))'\n }\n});\n\n// Get router and notification functionality\nconst router = useRouter();\n\n// Check if notifications module is loaded, provide fallback if not\nconst useNotifications = inject('useNotifications', () => ({\n notifications: ref([]),\n unreadCount: ref(0),\n loading: ref(false),\n markAllAsRead: () => {},\n getNotifications: () => {}\n}));\n\nconst { notifications, unreadCount, loading, markAllAsRead, getNotifications } = useNotifications();\n\n// Local state\nconst isOpen = ref(false);\n\n// Computed properties\nconst recentNotifications = computed(() => {\n return notifications.value\n .slice()\n .sort((a, b) => new Date(b.createdAt) - new Date(a.createdAt))\n .slice(0, props.maxNotifications);\n});\n\n// Methods\nconst toggleNotifications = () => {\n isOpen.value = !isOpen.value;\n};\n\nconst closeNotifications = () => {\n isOpen.value = false;\n};\n\nconst handleNotificationClick = (notification) => {\n isOpen.value = false;\n \n if (notification._id) {\n // Handle in store\n actions.handleNotificationAction({\n notificationId: notification._id,\n ...notification.metadata\n });\n }\n};\n\n// Lifecycle hooks\nonMounted(() => {\n // Load notifications when component mounts\n const userId = auth.state.user._id;\n if (userId) {\n getNotifications(userId);\n }\n});\n</script>\n\n<style scoped>\n.notification-badge-container {\n position: relative;\n display: inline-block;\n}\n\n.notification-button {\n background: none;\n border: none;\n cursor: pointer;\n position: relative;\n font-size: 1.2rem;\n}\n\n.notification-icon {\n font-size: 1.4rem;\n}\n\n.button-counter {\n position: absolute;\n right: -8px;\n bottom: -8px;\n background: rgb(var(--fourth));\n color: rgb(var(--white));\n height: 16px;\n border-radius: 16px;\n width: 16px;\n font-weight: 500;\n text-align: center;\n line-height: 16px;\n font-size: 10px;\n}\n\n\n.notifications-loading,\n.notifications-empty {\n padding: 24px;\n text-align: center;\n color: rgb(var(--texfw-light));\n}\n</style>"],"names":["auth.state"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuEA,UAAM,QAAQ;AAYC,cAAS;AAGxB,UAAM,mBAAmB,OAAO,oBAAoB,OAAO;AAAA,MACzD,eAAe,IAAI,EAAE;AAAA,MACrB,aAAa,IAAI,CAAC;AAAA,MAClB,SAAS,IAAI,KAAK;AAAA,MAClB,eAAe,MAAM;AAAA,MAAC;AAAA,MACtB,kBAAkB,MAAM;AAAA,MAAC;AAAA,IAC3B,EAAE;AAEF,UAAM,EAAE,eAAe,aAAa,SAAS,eAAe,iBAAgB,IAAK,iBAAgB;AAGjG,UAAM,SAAS,IAAI,KAAK;AAGxB,UAAM,sBAAsB,SAAS,MAAM;AACzC,aAAO,cAAc,MAClB,MAAK,EACL,KAAK,CAAC,GAAG,MAAM,IAAI,KAAK,EAAE,SAAS,IAAI,IAAI,KAAK,EAAE,SAAS,CAAC,EAC5D,MAAM,GAAG,MAAM,gBAAgB;AAAA,IACpC,CAAC;AAGD,UAAM,sBAAsB,MAAM;AAChC,aAAO,QAAQ,CAAC,OAAO;AAAA,IACzB;AAEA,UAAM,qBAAqB,MAAM;AAC/B,aAAO,QAAQ;AAAA,IACjB;AAEA,UAAM,0BAA0B,CAAC,iBAAiB;AAChD,aAAO,QAAQ;AAEf,UAAI,aAAa,KAAK;AAEpB,gBAAQ,yBAAyB;AAAA,UAC/B,gBAAgB,aAAa;AAAA,UAC7B,GAAG,aAAa;AAAA,QACtB,CAAK;AAAA,MACH;AAAA,IACF;AAGA,cAAU,MAAM;AAEd,YAAM,SAASA,MAAW,KAAK;AAC/B,UAAI,QAAQ;AACV,yBAAiB,MAAM;AAAA,MACzB;AAAA,IACF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -3,7 +3,7 @@ import addRoutes from "../core/views/router/addRoutes.js";
3
3
  import { getRoutes } from "./notifications.router.js";
4
4
  import * as notifications_store from "./store/notifications.store.js";
5
5
  import { wsManager } from "../core/views/classes/ws.manager.js";
6
- import { Preferences } from "../../../node_modules/.pnpm/@capacitor_preferences@7.0.0_@capacitor_core@7.0.1/node_modules/@capacitor/preferences/dist/esm/index.js";
6
+ import { Preferences } from "../../../node_modules/.pnpm/@capacitor_preferences@7.0.2_@capacitor_core@7.4.4/node_modules/@capacitor/preferences/dist/esm/index.js";
7
7
  import _sfc_main from "./components/layouts/NotificationsLayout.vue.js";
8
8
  import NotificationPreferences from "./components/sections/NotificationPreferences.vue.js";
9
9
  import NotificationsList from "./components/sections/NotificationsList.vue.js";
@@ -30,7 +30,7 @@ class CapacitorPushHandler {
30
30
  return false;
31
31
  }
32
32
  try {
33
- const { Capacitor } = await import("../../../node_modules/.pnpm/@capacitor_core@7.0.1/node_modules/@capacitor/core/dist/index.js");
33
+ const { Capacitor } = await import("../../../node_modules/.pnpm/@capacitor_core@7.4.4/node_modules/@capacitor/core/dist/index.js");
34
34
  const { PushNotifications } = await import("../../../../node_modules/.pnpm/@capacitor_push-notifications@7.0.3_@capacitor_core@7.4.4/node_modules/@capacitor/push-notifications/dist/esm/index.js");
35
35
  const { Device } = await import("../../../../node_modules/.pnpm/@capacitor_device@7.0.1_@capacitor_core@7.4.4/node_modules/@capacitor/device/dist/esm/index.js");
36
36
  this.capacitor = Capacitor;
@@ -2,7 +2,7 @@ import { computed, reactive, watch } from "vue";
2
2
  import $axios from "../../core/views/utils/axios-instance.js";
3
3
  import { setError } from "../../core/views/store/core.store.js";
4
4
  import { state as state$1 } from "../../auth/views/store/auth.js";
5
- import { Preferences } from "../../../../node_modules/.pnpm/@capacitor_preferences@7.0.0_@capacitor_core@7.0.1/node_modules/@capacitor/preferences/dist/esm/index.js";
5
+ import { Preferences } from "../../../../node_modules/.pnpm/@capacitor_preferences@7.0.2_@capacitor_core@7.4.4/node_modules/@capacitor/preferences/dist/esm/index.js";
6
6
  const notificationInitState = {
7
7
  _id: null,
8
8
  title: "",
@@ -10,7 +10,7 @@ const _hoisted_5 = { class: "t-transp" };
10
10
  const _hoisted_6 = { class: "flex-center" };
11
11
  const _hoisted_7 = { class: "mn-b-small pd-small bg-white radius-small flex-nowrap flex" };
12
12
  const _hoisted_8 = { class: "w-100" };
13
- const _hoisted_9 = { class: "t-truncate" };
13
+ const _hoisted_9 = { class: "truncate" };
14
14
  const _hoisted_10 = { class: "w-100 t-right" };
15
15
  const _hoisted_11 = { class: "pd-small bg-white radius-small" };
16
16
  const _hoisted_12 = { class: "flex mn-b-thin" };
@@ -79,7 +79,7 @@ const _sfc_main = {
79
79
  };
80
80
  }
81
81
  };
82
- const CardApplication = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-85b31b85"]]);
82
+ const CardApplication = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-1239e806"]]);
83
83
  export {
84
84
  CardApplication as default
85
85
  };
@@ -10,7 +10,7 @@ const _hoisted_5 = { class: "t-transp" };
10
10
  const _hoisted_6 = { class: "flex-center" };
11
11
  const _hoisted_7 = { class: "mn-b-small pd-small bg-white radius-small flex-nowrap flex" };
12
12
  const _hoisted_8 = { class: "w-100" };
13
- const _hoisted_9 = { class: "t-truncate" };
13
+ const _hoisted_9 = { class: "truncate" };
14
14
  const _hoisted_10 = { class: "w-100 t-right" };
15
15
  const _hoisted_11 = { class: "pd-small bg-white radius-small" };
16
16
  const _hoisted_12 = { class: "flex mn-b-thin" };
@@ -96,7 +96,7 @@ const _sfc_main = {
96
96
  };
97
97
  }
98
98
  };
99
- const CardCustomer = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-30694516"]]);
99
+ const CardCustomer = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-9596db27"]]);
100
100
  export {
101
101
  CardCustomer as default
102
102
  };
@@ -4,9 +4,9 @@ import { useRouter } from "vue-router";
4
4
  import _export_sfc from "../../../../../../_virtual/_plugin-vue_export-helper.js";
5
5
  const _hoisted_1 = { class: "pd-big mn-regular order-customer-card col" };
6
6
  const _hoisted_2 = { class: "mn-regular flex-center flex-nowrap flex w-100" };
7
- const _hoisted_3 = { class: "w-100 t-medium p-medium" };
7
+ const _hoisted_3 = { class: "w-100 fw-medium p-medium" };
8
8
  const _hoisted_4 = { class: "flex-nowrap flex" };
9
- const _hoisted_5 = { class: "mn-r-bold pd-r-big br-right-dark w-66" };
9
+ const _hoisted_5 = { class: "mn-r-bold pd-r-big br-r-1px br-dark w-66" };
10
10
  const _hoisted_6 = { class: "mn-small" };
11
11
  const _hoisted_7 = {
12
12
  key: 0,
@@ -21,7 +21,7 @@ const _hoisted_9 = {
21
21
  class: "w-"
22
22
  };
23
23
  const _hoisted_10 = { class: "w-40" };
24
- const _hoisted_11 = { class: "mn-small w-100 t-medium p-medium" };
24
+ const _hoisted_11 = { class: "mn-small w-100 fw-medium p-medium" };
25
25
  const _hoisted_12 = {
26
26
  key: 0,
27
27
  class: "mn-medium w-100"
@@ -44,19 +44,19 @@ const _hoisted_18 = { key: 2 };
44
44
  const _hoisted_19 = { class: "mn-semi intotal flex-bottom flex" };
45
45
  const _hoisted_20 = {
46
46
  key: 0,
47
- class: "p-medium t-semi"
47
+ class: "p-medium fw-semi"
48
48
  };
49
49
  const _hoisted_21 = {
50
50
  key: 1,
51
- class: "p-medium t-semi"
51
+ class: "p-medium fw-semi"
52
52
  };
53
53
  const _hoisted_22 = {
54
54
  key: 2,
55
- class: "p-medium t-semi"
55
+ class: "p-medium fw-semi"
56
56
  };
57
57
  const _hoisted_23 = {
58
58
  key: 3,
59
- class: "p-medium t-semi"
59
+ class: "p-medium fw-semi"
60
60
  };
61
61
  const _hoisted_24 = {
62
62
  key: 4,
@@ -93,7 +93,7 @@ const _sfc_main = {
93
93
  createElementVNode("div", _hoisted_4, [
94
94
  createElementVNode("div", _hoisted_5, [
95
95
  _cache[0] || (_cache[0] = createElementVNode("ul", { class: "mn-semi" }, null, -1)),
96
- _cache[1] || (_cache[1] = createElementVNode("p", { class: "mn-small t-medium p-medium" }, " Adress and delivery ", -1)),
96
+ _cache[1] || (_cache[1] = createElementVNode("p", { class: "mn-small fw-medium p-medium" }, " Adress and delivery ", -1)),
97
97
  createElementVNode("p", _hoisted_6, toDisplayString(__props.order.delivery.adress), 1),
98
98
  __props.order.delivery.type === "Post" ? (openBlock(), createElementBlock("p", _hoisted_7, " You have chosen delivery using the courier service CDEK. Estimated delivery date " + toDisplayString(DateToFormattedString(__props.order.createdAt)) + ". ", 1)) : createCommentVNode("", true),
99
99
  __props.order.delivery.type === "Courier" ? (openBlock(), createElementBlock("p", _hoisted_8, " You have chosen delivery by courier. Estimated delivery date " + toDisplayString(DateToFormattedString2(__props.order.createdAt)) + ". ", 1)) : createCommentVNode("", true),
@@ -147,7 +147,7 @@ const _sfc_main = {
147
147
  };
148
148
  }
149
149
  };
150
- const CardOrder = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-80170305"]]);
150
+ const CardOrder = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-1e6239c6"]]);
151
151
  export {
152
152
  CardOrder as default
153
153
  };
@@ -1 +1 @@
1
- {"version":3,"file":"CardOrder.vue.js","sources":["../../../../../../../src/modules/orders/components/blocks/CardOrder.vue"],"sourcesContent":["<template>\n\t<div class=\"pd-big mn-regular order-customer-card col\"> \n\t <p class=\"mn-regular flex-center flex-nowrap flex w-100\">\n\t\t\t\t<!-- <img loading=\"lazy\" v-if=\"order.status === 'Created'\" \t\t\tclass=\"mn-r-small\" src=\"@/assets/icons/status/created.svg\"/>\n\t\t\t\t<img loading=\"lazy\" v-if=\"order.status === 'Confirmed'\"\tclass=\"mn-r-small\" src=\"@/assets/icons/status/confirmed.svg\"/>\n\t\t\t\t<img loading=\"lazy\" v-if=\"order.status === 'Awaiting shipment'\" \t\t\tclass=\"mn-r-small\" src=\"@/assets/icons/status/paid.svg\"/>\n\t\t\t\t<img loading=\"lazy\" v-if=\"order.status === 'In delivery'\" \t\tclass=\"mn-r-small\" src=\"@/assets/icons/status/finished.svg\"/>\n\t\t\t\t<img loading=\"lazy\" v-if=\"order.status === 'Finished'\" \t\tclass=\"mn-r-small\" src=\"@/assets/icons/status/finished.svg\"/> -->\n\t <span class=\"w-100 t-medium p-medium\">{{order.status}}</span>\n\t </p>\n\t \n\t <div class=\"flex-nowrap flex\">\n\t \t<div class=\"mn-r-bold pd-r-big br-right-dark w-66\">\n\t \t\t<ul class=\"mn-semi\">\n\t <!-- <li v-for=\"(product, index) in orderProducts(order.items.slice(0,2))\" :key=\"product.id\" class=\"shop-cart-item\">\n\t \t<img loading=\"lazy\" v-if=\"product.images\" :src=\"require( `@/assets/images/products/${product.images[0]}`)\">\n\t <img loading=\"lazy\" v-if=\"!(product.images)\" :src=\"require( `@/assets/icons/photo.svg`)\">\n\t \n\t <div class=\"text-left\">\n\t <p class=\"name\">{{ product.name }}</p>\n\n\t <div class=\"flex\">\n\t <div class=\"small-underline variant\">\n\t <span v-if=\"!product.size && !product.color\" class=\"\">One-size</span>\n\t <span v-if=\"product.size\" class=\"\">{{ product.size}}</span>\n\t <span v-if=\"product.color && product.size\" class=\"\">, </span>\n\t <span v-if=\"product.color\" class=\"\">{{ product.color}}</span>\n\t </div>\n\t \n\t <p class=\"t-demi\">$ {{product.quantity}} x {{product.price}}</p>\n\t </div>\n\n\t </div>\n\n\t \t\t</li> -->\n\t </ul>\n\t <p class=\"mn-small t-medium p-medium\">\n\t \tAdress and delivery\n\t </p>\n\t <p class=\"mn-small\">\n\t {{order.delivery.adress}} \n\t </p>\n\t <p v-if=\"order.delivery.type === 'Post'\" class=\"w-\">\n\t \t\tYou have chosen delivery using the courier service CDEK. Estimated delivery date {{DateToFormattedString(order.createdAt)}}.\n\t </p>\n\n\t <p v-if=\"order.delivery.type === 'Courier'\" class=\"w-\">\n\t \t\tYou have chosen delivery by courier. Estimated delivery date {{DateToFormattedString2(order.createdAt)}}.\n\t </p>\n\n\t <p v-if=\"order.delivery.type === 'Pickup'\" class=\"w-\">\n\t \t\tYou have chosen to receive the order in the Moscow store.\n\t </p>\n\t </div>\n\n\n\t <div class=\"w-40\">\n\t \t<p class=\"mn-small w-100 t-medium p-medium\">\n\t <span class=\"t-transp\">Order:</span> №{{order._id.slice(0,8)}} \n\t </p>\n\t <p v-if=\"order.delivery.type === 'Post'\" class=\"mn-medium w-100\">\n\t \t<span class=\"t-transp\">Estimated shipping date:</span><br>{{DateToFormattedString(order.createdAt)}}\n\t </p>\n\t <p v-if=\"order.delivery.type === 'Courier'\" class=\"mn-medium w-100\">\n\t \t<span class=\"t-transp\">Shipping date:</span><br>{{DateToFormattedString2(order.createdAt)}}\n\t </p>\n\t <p v-if=\"order.delivery.type === 'Pickup'\" class=\"mn-medium w-100\">\n\t \t<span class=\"t-transp\">Type of delivery:</span><br>Pickup\n\t </p>\n\t <hr class=\"mn-medium\">\n\n\t <div :class=\"{'mn-semi': order.delivery.type == ''}\" class=\"flex\">\n\t <p class=\"t-transp\">In total</p>\n\t <p>$ {{ cartTotalPrice }}</p>\n\t </div>\n\t <div v-if=\"order.delivery.type !== ''\" class=\"mn-semi flex\">\n\t <p class=\"t-transp\">Delivery</p>\n\t <p v-if=\"order.delivery.type === 'Pickup'\">Free</p>\n\t <p v-if=\"order.delivery.type === 'Post'\">$ 10</p>\n\t <p v-if=\"order.delivery.type === 'Courier'\">$ 20</p>\n\t </div>\n\t <div class=\"mn-semi intotal flex-bottom flex\">\n\t <p class=\"t-transp\">In total to pay</p>\n\t <p v-if=\"order.delivery.type === ''\" class=\"p-medium t-semi\">$ {{ cartTotalPrice }}</p>\n\t <p v-if=\"order.delivery.type === 'Pickup'\" class=\"p-medium t-semi\">$ {{ cartTotalPrice}} ₽</p>\n\t <p v-if=\"order.delivery.type === 'Courier'\" class=\"p-medium t-semi\">$ {{ cartTotalPrice + 20 }}</p>\n\t <p v-if=\"order.delivery.type === 'Post'\" class=\"p-medium t-semi\">$ {{ cartTotalPrice + 10 }}</p>\n\t </div>\n\t <hr v-if=\"order.status === 'Confirmed'\" class=\"mn-semi\" >\n\t <!-- \t<button \n\t \t@click=\"requestPayment(order)\"\n\t \tv-if=\"\n\t \t\torder.status === 'Подтвержден' \n\t \t\t&& order.payment.type === 'Online'\n\t \t\t&& payment.Status !== 'CONFIRMED'\n\t \t\t&& payment.Status !== 'REFUNDED'\n\t \t\" \n\t \tclass='w-100 button'>Оплатить заказ</button> -->\n\t \t<span class=\"t-transp\" v-if=\"payment && payment.Status === 'CONFIRMED'\">Paid</span> \n\t </div> \n\t </div>\n\t</div>\t\t\n\n</template>\n\n\n<script setup=\"props\">\n\timport { defineProps,computed } from 'vue'\n\timport { useRouter } from 'vue-router'\n\n\tconst router = useRouter()\n\n\tconst props = defineProps({\n\t order: Object,\n\t});\n\n\n\n\t// await store.dispatch('payments/getStatus', props.order._id)\n\n\t// const payment = computed(() => store.state.payments.current)\n\t// const cartTotalPrice = computed(() => store.getters['orders/orderTotalPrice'])\n\n\tfunction requestPayment(order) {\n\t\t // store.dispatch(\"payments/newPayment\", order);\n\t}\n\t\n\tfunction DateToFormattedString(d) { \n var fixedDate = new Date(d); \n var mm = (fixedDate.getMonth()+1).toString(); // getMonth() is zero-based \n var dd = (fixedDate.getDate() + 6).toString(); \n \n return (dd[1]?dd:\"0\"+dd[0]) + '/' + (mm[1]?mm:\"0\"+mm[0]);\n }\n\n function DateToFormattedString2(d) { \n var fixedDate = new Date(d); \n var mm = (fixedDate.getMonth() + 1).toString(); // getMonth() is zero-based \n var dd = (fixedDate.getDate() + 1).toString(); \n \n return (dd[1]?dd:\"0\"+dd[0]) + '/' + (mm[1]?mm:\"0\"+mm[0]);\n }\n\n\t// function orderProducts (items) {\n\t// return items.map(({ id, size, color, quantity }) => {\n\t// const product = store.state.products.all.find(product => product.id === id)\n\t// return {\n\t// name: product.name,\n\t// images: product.images[0],\n\t// color,\n\t// size,\n\t// price: product.price,\n\t// id: product.id,\n\t// quantity\n\t// }\n\t// })\n\t// }\n\n</script>\n\n<style lang=\"scss\" scoped>\n.shop-cart-item {\n\t&:first-of-type { padding-top: 0;}\n}\n\n</style>"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8GgB,cAAS;AAiBxB,aAAS,sBAAsB,GAAG;AAC/B,UAAI,YAAY,IAAI,KAAK,CAAC;AAC1B,UAAI,MAAM,UAAU,SAAQ,IAAG,GAAG;AAClC,UAAI,MAAO,UAAU,QAAO,IAAK,GAAG;AAEpC,cAAQ,GAAG,CAAC,IAAE,KAAG,MAAI,GAAG,CAAC,KAAK,OAAO,GAAG,CAAC,IAAE,KAAG,MAAI,GAAG,CAAC;AAAA,IACxD;AAEA,aAAS,uBAAuB,GAAG;AACjC,UAAI,YAAY,IAAI,KAAK,CAAC;AAC1B,UAAI,MAAM,UAAU,SAAQ,IAAK,GAAG;AACpC,UAAI,MAAO,UAAU,QAAO,IAAK,GAAG;AAEpC,cAAQ,GAAG,CAAC,IAAE,KAAG,MAAI,GAAG,CAAC,KAAK,OAAO,GAAG,CAAC,IAAE,KAAG,MAAI,GAAG,CAAC;AAAA,IACxD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"CardOrder.vue.js","sources":["../../../../../../../src/modules/orders/components/blocks/CardOrder.vue"],"sourcesContent":["<template>\n\t<div class=\"pd-big mn-regular order-customer-card col\"> \n\t <p class=\"mn-regular flex-center flex-nowrap flex w-100\">\n\t\t\t\t<!-- <img loading=\"lazy\" v-if=\"order.status === 'Created'\" \t\t\tclass=\"mn-r-small\" src=\"@/assets/icons/status/created.svg\"/>\n\t\t\t\t<img loading=\"lazy\" v-if=\"order.status === 'Confirmed'\"\tclass=\"mn-r-small\" src=\"@/assets/icons/status/confirmed.svg\"/>\n\t\t\t\t<img loading=\"lazy\" v-if=\"order.status === 'Awaiting shipment'\" \t\t\tclass=\"mn-r-small\" src=\"@/assets/icons/status/paid.svg\"/>\n\t\t\t\t<img loading=\"lazy\" v-if=\"order.status === 'In delivery'\" \t\tclass=\"mn-r-small\" src=\"@/assets/icons/status/finished.svg\"/>\n\t\t\t\t<img loading=\"lazy\" v-if=\"order.status === 'Finished'\" \t\tclass=\"mn-r-small\" src=\"@/assets/icons/status/finished.svg\"/> -->\n\t <span class=\"w-100 fw-medium p-medium\">{{order.status}}</span>\n\t </p>\n\t \n\t <div class=\"flex-nowrap flex\">\n\t \t<div class=\"mn-r-bold pd-r-big br-r-1px br-dark w-66\">\n\t \t\t<ul class=\"mn-semi\">\n\t <!-- <li v-for=\"(product, index) in orderProducts(order.items.slice(0,2))\" :key=\"product.id\" class=\"shop-cart-item\">\n\t \t<img loading=\"lazy\" v-if=\"product.images\" :src=\"require( `@/assets/images/products/${product.images[0]}`)\">\n\t <img loading=\"lazy\" v-if=\"!(product.images)\" :src=\"require( `@/assets/icons/photo.svg`)\">\n\t \n\t <div class=\"text-left\">\n\t <p class=\"name\">{{ product.name }}</p>\n\n\t <div class=\"flex\">\n\t <div class=\"small-underline variant\">\n\t <span v-if=\"!product.size && !product.color\" class=\"\">One-size</span>\n\t <span v-if=\"product.size\" class=\"\">{{ product.size}}</span>\n\t <span v-if=\"product.color && product.size\" class=\"\">, </span>\n\t <span v-if=\"product.color\" class=\"\">{{ product.color}}</span>\n\t </div>\n\t \n\t <p class=\"fw-demi\">$ {{product.quantity}} x {{product.price}}</p>\n\t </div>\n\n\t </div>\n\n\t \t\t</li> -->\n\t </ul>\n\t <p class=\"mn-small fw-medium p-medium\">\n\t \tAdress and delivery\n\t </p>\n\t <p class=\"mn-small\">\n\t {{order.delivery.adress}} \n\t </p>\n\t <p v-if=\"order.delivery.type === 'Post'\" class=\"w-\">\n\t \t\tYou have chosen delivery using the courier service CDEK. Estimated delivery date {{DateToFormattedString(order.createdAt)}}.\n\t </p>\n\n\t <p v-if=\"order.delivery.type === 'Courier'\" class=\"w-\">\n\t \t\tYou have chosen delivery by courier. Estimated delivery date {{DateToFormattedString2(order.createdAt)}}.\n\t </p>\n\n\t <p v-if=\"order.delivery.type === 'Pickup'\" class=\"w-\">\n\t \t\tYou have chosen to receive the order in the Moscow store.\n\t </p>\n\t </div>\n\n\n\t <div class=\"w-40\">\n\t \t<p class=\"mn-small w-100 fw-medium p-medium\">\n\t <span class=\"t-transp\">Order:</span> №{{order._id.slice(0,8)}} \n\t </p>\n\t <p v-if=\"order.delivery.type === 'Post'\" class=\"mn-medium w-100\">\n\t \t<span class=\"t-transp\">Estimated shipping date:</span><br>{{DateToFormattedString(order.createdAt)}}\n\t </p>\n\t <p v-if=\"order.delivery.type === 'Courier'\" class=\"mn-medium w-100\">\n\t \t<span class=\"t-transp\">Shipping date:</span><br>{{DateToFormattedString2(order.createdAt)}}\n\t </p>\n\t <p v-if=\"order.delivery.type === 'Pickup'\" class=\"mn-medium w-100\">\n\t \t<span class=\"t-transp\">Type of delivery:</span><br>Pickup\n\t </p>\n\t <hr class=\"mn-medium\">\n\n\t <div :class=\"{'mn-semi': order.delivery.type == ''}\" class=\"flex\">\n\t <p class=\"t-transp\">In total</p>\n\t <p>$ {{ cartTotalPrice }}</p>\n\t </div>\n\t <div v-if=\"order.delivery.type !== ''\" class=\"mn-semi flex\">\n\t <p class=\"t-transp\">Delivery</p>\n\t <p v-if=\"order.delivery.type === 'Pickup'\">Free</p>\n\t <p v-if=\"order.delivery.type === 'Post'\">$ 10</p>\n\t <p v-if=\"order.delivery.type === 'Courier'\">$ 20</p>\n\t </div>\n\t <div class=\"mn-semi intotal flex-bottom flex\">\n\t <p class=\"t-transp\">In total to pay</p>\n\t <p v-if=\"order.delivery.type === ''\" class=\"p-medium fw-semi\">$ {{ cartTotalPrice }}</p>\n\t <p v-if=\"order.delivery.type === 'Pickup'\" class=\"p-medium fw-semi\">$ {{ cartTotalPrice}} ₽</p>\n\t <p v-if=\"order.delivery.type === 'Courier'\" class=\"p-medium fw-semi\">$ {{ cartTotalPrice + 20 }}</p>\n\t <p v-if=\"order.delivery.type === 'Post'\" class=\"p-medium fw-semi\">$ {{ cartTotalPrice + 10 }}</p>\n\t </div>\n\t <hr v-if=\"order.status === 'Confirmed'\" class=\"mn-semi\" >\n\t <!-- \t<button \n\t \t@click=\"requestPayment(order)\"\n\t \tv-if=\"\n\t \t\torder.status === 'Подтвержден' \n\t \t\t&& order.payment.type === 'Online'\n\t \t\t&& payment.Status !== 'CONFIRMED'\n\t \t\t&& payment.Status !== 'REFUNDED'\n\t \t\" \n\t \tclass='w-100 button'>Оплатить заказ</button> -->\n\t \t<span class=\"t-transp\" v-if=\"payment && payment.Status === 'CONFIRMED'\">Paid</span> \n\t </div> \n\t </div>\n\t</div>\t\t\n\n</template>\n\n\n<script setup=\"props\">\n\timport { defineProps,computed } from 'vue'\n\timport { useRouter } from 'vue-router'\n\n\tconst router = useRouter()\n\n\tconst props = defineProps({\n\t order: Object,\n\t});\n\n\n\n\t// await store.dispatch('payments/getStatus', props.order._id)\n\n\t// const payment = computed(() => store.state.payments.current)\n\t// const cartTotalPrice = computed(() => store.getters['orders/orderTotalPrice'])\n\n\tfunction requestPayment(order) {\n\t\t // store.dispatch(\"payments/newPayment\", order);\n\t}\n\t\n\tfunction DateToFormattedString(d) { \n var fixedDate = new Date(d); \n var mm = (fixedDate.getMonth()+1).toString(); // getMonth() is zero-based \n var dd = (fixedDate.getDate() + 6).toString(); \n \n return (dd[1]?dd:\"0\"+dd[0]) + '/' + (mm[1]?mm:\"0\"+mm[0]);\n }\n\n function DateToFormattedString2(d) { \n var fixedDate = new Date(d); \n var mm = (fixedDate.getMonth() + 1).toString(); // getMonth() is zero-based \n var dd = (fixedDate.getDate() + 1).toString(); \n \n return (dd[1]?dd:\"0\"+dd[0]) + '/' + (mm[1]?mm:\"0\"+mm[0]);\n }\n\n\t// function orderProducts (items) {\n\t// return items.map(({ id, size, color, quantity }) => {\n\t// const product = store.state.products.all.find(product => product.id === id)\n\t// return {\n\t// name: product.name,\n\t// images: product.images[0],\n\t// color,\n\t// size,\n\t// price: product.price,\n\t// id: product.id,\n\t// quantity\n\t// }\n\t// })\n\t// }\n\n</script>\n\n<style lang=\"scss\" scoped>\n.shop-cart-item {\n\t&:first-of-type { padding-top: 0;}\n}\n\n</style>"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8GgB,cAAS;AAiBxB,aAAS,sBAAsB,GAAG;AAC/B,UAAI,YAAY,IAAI,KAAK,CAAC;AAC1B,UAAI,MAAM,UAAU,SAAQ,IAAG,GAAG;AAClC,UAAI,MAAO,UAAU,QAAO,IAAK,GAAG;AAEpC,cAAQ,GAAG,CAAC,IAAE,KAAG,MAAI,GAAG,CAAC,KAAK,OAAO,GAAG,CAAC,IAAE,KAAG,MAAI,GAAG,CAAC;AAAA,IACxD;AAEA,aAAS,uBAAuB,GAAG;AACjC,UAAI,YAAY,IAAI,KAAK,CAAC;AAC1B,UAAI,MAAM,UAAU,SAAQ,IAAK,GAAG;AACpC,UAAI,MAAO,UAAU,QAAO,IAAK,GAAG;AAEpC,cAAQ,GAAG,CAAC,IAAE,KAAG,MAAI,GAAG,CAAC,KAAK,OAAO,GAAG,CAAC,IAAE,KAAG,MAAI,GAAG,CAAC;AAAA,IACxD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}