@ozdao/martyrs 0.2.484 → 0.2.486

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 (436) hide show
  1. package/dist/{Media-2NvSR0vE.js → Media-CXQSPHt2.js} +1 -1
  2. package/dist/{Media-EYG9WPI4.cjs → Media-DhpD64nT.cjs} +1 -1
  3. package/dist/_virtual/index.cjs +4 -4
  4. package/dist/_virtual/index.js +4 -4
  5. package/dist/_virtual/index2.cjs +4 -4
  6. package/dist/_virtual/index2.js +4 -4
  7. package/dist/auth.server.cjs +2 -23
  8. package/dist/auth.server.js +1 -22
  9. package/dist/globals.crud-BQG1Lm0A.js +90 -0
  10. package/dist/globals.crud-Dv7UXbRM.cjs +89 -0
  11. package/dist/globals.server.cjs +3 -322
  12. package/dist/globals.server.js +1 -303
  13. package/dist/globals.websocket-DzvdIBf6.js +306 -0
  14. package/dist/globals.websocket-k6_B1T7k.cjs +322 -0
  15. package/dist/{main-BT1yoKH2.js → main-Cfh5138F.js} +2102 -1993
  16. package/dist/main-DKJqboZy.cjs +11 -0
  17. package/dist/martyrs/src/components/Button/{Button.vue2.cjs → Button.vue.cjs} +2 -2
  18. package/dist/martyrs/src/components/Button/{Button.vue2.js.map → Button.vue.cjs.map} +1 -1
  19. package/dist/martyrs/src/components/Button/{Button.vue2.js → Button.vue.js} +2 -2
  20. package/dist/martyrs/src/components/Button/Button.vue.js.map +1 -0
  21. package/dist/martyrs/src/components/{DatePicker → Calendar}/Calendar.vue.cjs +1 -1
  22. package/dist/martyrs/src/components/Calendar/Calendar.vue.cjs.map +1 -0
  23. package/dist/martyrs/src/components/{DatePicker → Calendar}/Calendar.vue.js +1 -1
  24. package/dist/martyrs/src/components/Calendar/Calendar.vue.js.map +1 -0
  25. package/dist/martyrs/src/components/Dropdown/{Dropdown.vue2.cjs → Dropdown.vue.cjs} +2 -2
  26. package/dist/martyrs/src/components/Dropdown/{Dropdown.vue2.js.map → Dropdown.vue.cjs.map} +1 -1
  27. package/dist/martyrs/src/components/Dropdown/{Dropdown.vue2.js → Dropdown.vue.js} +2 -2
  28. package/dist/martyrs/src/components/Dropdown/Dropdown.vue.js.map +1 -0
  29. package/dist/martyrs/src/components/Feed/Feed.vue.cjs +2 -2
  30. package/dist/martyrs/src/components/Feed/Feed.vue.cjs.map +1 -1
  31. package/dist/martyrs/src/components/Feed/Feed.vue.js +2 -2
  32. package/dist/martyrs/src/components/Feed/Feed.vue.js.map +1 -1
  33. package/dist/martyrs/src/components/Field/Field.vue.cjs +13 -7
  34. package/dist/martyrs/src/components/Field/Field.vue.cjs.map +1 -1
  35. package/dist/martyrs/src/components/Field/Field.vue.js +14 -8
  36. package/dist/martyrs/src/components/Field/Field.vue.js.map +1 -1
  37. package/dist/martyrs/src/components/FieldTags/FieldTags.vue.cjs +1 -1
  38. package/dist/martyrs/src/components/FieldTags/FieldTags.vue.js +1 -1
  39. package/dist/martyrs/src/components/Popup/{Popup.vue2.cjs → Popup.vue.cjs} +2 -2
  40. package/dist/martyrs/src/components/Popup/{Popup.vue2.js.map → Popup.vue.cjs.map} +1 -1
  41. package/dist/martyrs/src/components/Popup/{Popup.vue2.js → Popup.vue.js} +2 -2
  42. package/dist/martyrs/src/components/Popup/Popup.vue.js.map +1 -0
  43. package/dist/martyrs/src/modules/auth/auth.client.cjs +3 -0
  44. package/dist/martyrs/src/modules/auth/auth.client.cjs.map +1 -1
  45. package/dist/martyrs/src/modules/auth/auth.client.js +3 -0
  46. package/dist/martyrs/src/modules/auth/auth.client.js.map +1 -1
  47. package/dist/martyrs/src/modules/auth/locales/en.cjs +79 -0
  48. package/dist/martyrs/src/modules/auth/locales/en.cjs.map +1 -0
  49. package/dist/martyrs/src/modules/auth/locales/en.js +79 -0
  50. package/dist/martyrs/src/modules/auth/locales/en.js.map +1 -0
  51. package/dist/martyrs/src/modules/auth/locales/index.cjs +10 -0
  52. package/dist/martyrs/src/modules/auth/locales/index.cjs.map +1 -0
  53. package/dist/martyrs/src/modules/auth/locales/index.js +10 -0
  54. package/dist/martyrs/src/modules/auth/locales/index.js.map +1 -0
  55. package/dist/martyrs/src/modules/auth/locales/ru.cjs +79 -0
  56. package/dist/martyrs/src/modules/auth/locales/ru.cjs.map +1 -0
  57. package/dist/martyrs/src/modules/auth/locales/ru.js +79 -0
  58. package/dist/martyrs/src/modules/auth/locales/ru.js.map +1 -0
  59. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.cjs +0 -9
  60. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.cjs.map +1 -1
  61. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.js +2 -11
  62. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.js.map +1 -1
  63. package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.cjs +4 -6
  64. package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.cjs.map +1 -1
  65. package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.js +4 -6
  66. package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.js.map +1 -1
  67. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs +7 -9
  68. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs.map +1 -1
  69. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js +7 -9
  70. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js.map +1 -1
  71. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs +1 -1
  72. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +1 -1
  73. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs +2 -2
  74. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +2 -2
  75. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs +1 -1
  76. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js +1 -1
  77. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.cjs +1 -1
  78. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.js +1 -1
  79. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.cjs +1 -1
  80. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js +1 -1
  81. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs +11 -13
  82. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs.map +1 -1
  83. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +11 -13
  84. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js.map +1 -1
  85. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs +12 -14
  86. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs.map +1 -1
  87. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +12 -14
  88. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js.map +1 -1
  89. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs +11 -13
  90. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs.map +1 -1
  91. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +11 -13
  92. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js.map +1 -1
  93. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.cjs +1 -1
  94. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.js +1 -1
  95. package/dist/martyrs/src/modules/auth/views/components/sections/SliderFeatures.vue.cjs +5 -47
  96. package/dist/martyrs/src/modules/auth/views/components/sections/SliderFeatures.vue.cjs.map +1 -1
  97. package/dist/martyrs/src/modules/auth/views/components/sections/SliderFeatures.vue.js +5 -47
  98. package/dist/martyrs/src/modules/auth/views/components/sections/SliderFeatures.vue.js.map +1 -1
  99. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs +2 -2
  100. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +2 -2
  101. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs +3 -3
  102. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +3 -3
  103. package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.cjs +1 -1
  104. package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.js +1 -1
  105. package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.cjs +1 -1
  106. package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.js +1 -1
  107. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs +2 -2
  108. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs.map +1 -1
  109. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +2 -2
  110. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js.map +1 -1
  111. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.cjs +2 -2
  112. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +2 -2
  113. package/dist/martyrs/src/modules/events/components/pages/Events.vue.cjs +1 -1
  114. package/dist/martyrs/src/modules/events/components/pages/Events.vue.js +1 -1
  115. package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.cjs +1 -1
  116. package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.js +1 -1
  117. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +2 -2
  118. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +2 -2
  119. package/dist/martyrs/src/modules/globals/globals.client.cjs +1 -0
  120. package/dist/martyrs/src/modules/globals/globals.client.cjs.map +1 -1
  121. package/dist/martyrs/src/modules/globals/globals.client.js +1 -0
  122. package/dist/martyrs/src/modules/globals/globals.client.js.map +1 -1
  123. package/dist/martyrs/src/modules/globals/views/classes/globals.i18n.cjs +1 -1
  124. package/dist/martyrs/src/modules/globals/views/classes/globals.i18n.js +1 -1
  125. package/dist/martyrs/src/modules/globals/views/components/blocks/AlertDialog.vue.cjs +1 -1
  126. package/dist/martyrs/src/modules/globals/views/components/blocks/AlertDialog.vue.js +1 -1
  127. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +2 -2
  128. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js +2 -2
  129. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupAuth.vue.cjs +2 -2
  130. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupAuth.vue.js +2 -2
  131. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.cjs +3 -3
  132. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.cjs.map +1 -1
  133. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.js +3 -3
  134. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.js.map +1 -1
  135. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs +2 -2
  136. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js +2 -2
  137. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.cjs +1 -1
  138. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js +1 -1
  139. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs +1 -1
  140. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js +1 -1
  141. package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.cjs +1 -1
  142. package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.js +1 -1
  143. package/dist/martyrs/src/modules/globals/views/components/sections/Filters.vue2.cjs +1 -1
  144. package/dist/martyrs/src/modules/globals/views/components/sections/Filters.vue2.js +1 -1
  145. package/dist/martyrs/src/modules/globals/views/utils/axios-instance.cjs.map +1 -1
  146. package/dist/martyrs/src/modules/globals/views/utils/axios-instance.js.map +1 -1
  147. package/dist/martyrs/src/modules/icons/actions/IconShow.vue.cjs +49 -0
  148. package/dist/martyrs/src/modules/icons/actions/IconShow.vue.cjs.map +1 -0
  149. package/dist/martyrs/src/modules/icons/actions/IconShow.vue.js +49 -0
  150. package/dist/martyrs/src/modules/icons/actions/IconShow.vue.js.map +1 -0
  151. package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.cjs +34 -0
  152. package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.cjs.map +1 -0
  153. package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.js +34 -0
  154. package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.js.map +1 -0
  155. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.cjs +115 -122
  156. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.cjs.map +1 -1
  157. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.js +163 -170
  158. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.js.map +1 -1
  159. package/dist/martyrs/src/modules/music/components/cards/AlbumCard.vue.cjs +87 -0
  160. package/dist/martyrs/src/modules/music/components/cards/AlbumCard.vue.cjs.map +1 -0
  161. package/dist/martyrs/src/modules/music/components/cards/AlbumCard.vue.js +87 -0
  162. package/dist/martyrs/src/modules/music/components/cards/AlbumCard.vue.js.map +1 -0
  163. package/dist/martyrs/src/modules/music/components/cards/ArtistCard.vue.cjs +83 -0
  164. package/dist/martyrs/src/modules/music/components/cards/ArtistCard.vue.cjs.map +1 -0
  165. package/dist/martyrs/src/modules/music/components/cards/ArtistCard.vue.js +83 -0
  166. package/dist/martyrs/src/modules/music/components/cards/ArtistCard.vue.js.map +1 -0
  167. package/dist/martyrs/src/modules/music/components/cards/PlaylistCard.vue.cjs +83 -0
  168. package/dist/martyrs/src/modules/music/components/cards/PlaylistCard.vue.cjs.map +1 -0
  169. package/dist/martyrs/src/modules/music/components/cards/PlaylistCard.vue.js +83 -0
  170. package/dist/martyrs/src/modules/music/components/cards/PlaylistCard.vue.js.map +1 -0
  171. package/dist/martyrs/src/modules/music/components/cards/TrackCard.vue.cjs +68 -0
  172. package/dist/martyrs/src/modules/music/components/cards/TrackCard.vue.cjs.map +1 -0
  173. package/dist/martyrs/src/modules/music/components/cards/TrackCard.vue.js +68 -0
  174. package/dist/martyrs/src/modules/music/components/cards/TrackCard.vue.js.map +1 -0
  175. package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.cjs +174 -0
  176. package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.cjs.map +1 -0
  177. package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.js +174 -0
  178. package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.js.map +1 -0
  179. package/dist/martyrs/src/modules/music/components/forms/SearchForm.vue.cjs +80 -0
  180. package/dist/martyrs/src/modules/music/components/forms/SearchForm.vue.cjs.map +1 -0
  181. package/dist/martyrs/src/modules/music/components/forms/SearchForm.vue.js +80 -0
  182. package/dist/martyrs/src/modules/music/components/forms/SearchForm.vue.js.map +1 -0
  183. package/dist/martyrs/src/modules/music/components/forms/UploadForm.vue.cjs +328 -0
  184. package/dist/martyrs/src/modules/music/components/forms/UploadForm.vue.cjs.map +1 -0
  185. package/dist/martyrs/src/modules/music/components/forms/UploadForm.vue.js +328 -0
  186. package/dist/martyrs/src/modules/music/components/forms/UploadForm.vue.js.map +1 -0
  187. package/dist/martyrs/src/modules/music/components/layouts/MusicLayout.vue.cjs +115 -0
  188. package/dist/martyrs/src/modules/music/components/layouts/MusicLayout.vue.cjs.map +1 -0
  189. package/dist/martyrs/src/modules/music/components/layouts/MusicLayout.vue.js +115 -0
  190. package/dist/martyrs/src/modules/music/components/layouts/MusicLayout.vue.js.map +1 -0
  191. package/dist/martyrs/src/modules/music/components/lists/AlbumList.vue.cjs +44 -0
  192. package/dist/martyrs/src/modules/music/components/lists/AlbumList.vue.cjs.map +1 -0
  193. package/dist/martyrs/src/modules/music/components/lists/AlbumList.vue.js +44 -0
  194. package/dist/martyrs/src/modules/music/components/lists/AlbumList.vue.js.map +1 -0
  195. package/dist/martyrs/src/modules/music/components/lists/ArtistList.vue.cjs +305 -0
  196. package/dist/martyrs/src/modules/music/components/lists/ArtistList.vue.cjs.map +1 -0
  197. package/dist/martyrs/src/modules/music/components/lists/ArtistList.vue.js +305 -0
  198. package/dist/martyrs/src/modules/music/components/lists/ArtistList.vue.js.map +1 -0
  199. package/dist/martyrs/src/modules/music/components/lists/PlaylistList.vue.cjs +44 -0
  200. package/dist/martyrs/src/modules/music/components/lists/PlaylistList.vue.cjs.map +1 -0
  201. package/dist/martyrs/src/modules/music/components/lists/PlaylistList.vue.js +44 -0
  202. package/dist/martyrs/src/modules/music/components/lists/PlaylistList.vue.js.map +1 -0
  203. package/dist/martyrs/src/modules/music/components/lists/TrackList.vue.cjs +199 -0
  204. package/dist/martyrs/src/modules/music/components/lists/TrackList.vue.cjs.map +1 -0
  205. package/dist/martyrs/src/modules/music/components/lists/TrackList.vue.js +199 -0
  206. package/dist/martyrs/src/modules/music/components/lists/TrackList.vue.js.map +1 -0
  207. package/dist/martyrs/src/modules/music/components/pages/AlbumDetail.vue.cjs +290 -0
  208. package/dist/martyrs/src/modules/music/components/pages/AlbumDetail.vue.cjs.map +1 -0
  209. package/dist/martyrs/src/modules/music/components/pages/AlbumDetail.vue.js +290 -0
  210. package/dist/martyrs/src/modules/music/components/pages/AlbumDetail.vue.js.map +1 -0
  211. package/dist/martyrs/src/modules/music/components/pages/ArtistDetail.vue.cjs +467 -0
  212. package/dist/martyrs/src/modules/music/components/pages/ArtistDetail.vue.cjs.map +1 -0
  213. package/dist/martyrs/src/modules/music/components/pages/ArtistDetail.vue.js +467 -0
  214. package/dist/martyrs/src/modules/music/components/pages/ArtistDetail.vue.js.map +1 -0
  215. package/dist/martyrs/src/modules/music/components/pages/ArtistForm.vue.cjs +382 -0
  216. package/dist/martyrs/src/modules/music/components/pages/ArtistForm.vue.cjs.map +1 -0
  217. package/dist/martyrs/src/modules/music/components/pages/ArtistForm.vue.js +382 -0
  218. package/dist/martyrs/src/modules/music/components/pages/ArtistForm.vue.js.map +1 -0
  219. package/dist/martyrs/src/modules/music/components/pages/ArtistManager.vue.cjs +303 -0
  220. package/dist/martyrs/src/modules/music/components/pages/ArtistManager.vue.cjs.map +1 -0
  221. package/dist/martyrs/src/modules/music/components/pages/ArtistManager.vue.js +303 -0
  222. package/dist/martyrs/src/modules/music/components/pages/ArtistManager.vue.js.map +1 -0
  223. package/dist/martyrs/src/modules/music/components/pages/MusicHome.vue.cjs +221 -0
  224. package/dist/martyrs/src/modules/music/components/pages/MusicHome.vue.cjs.map +1 -0
  225. package/dist/martyrs/src/modules/music/components/pages/MusicHome.vue.js +221 -0
  226. package/dist/martyrs/src/modules/music/components/pages/MusicHome.vue.js.map +1 -0
  227. package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.cjs +200 -0
  228. package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.cjs.map +1 -0
  229. package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.js +200 -0
  230. package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.js.map +1 -0
  231. package/dist/martyrs/src/modules/music/components/pages/MusicUpload.vue.cjs +50 -0
  232. package/dist/martyrs/src/modules/music/components/pages/MusicUpload.vue.cjs.map +1 -0
  233. package/dist/martyrs/src/modules/music/components/pages/MusicUpload.vue.js +50 -0
  234. package/dist/martyrs/src/modules/music/components/pages/MusicUpload.vue.js.map +1 -0
  235. package/dist/martyrs/src/modules/music/components/pages/PlaylistDetail.vue.cjs +556 -0
  236. package/dist/martyrs/src/modules/music/components/pages/PlaylistDetail.vue.cjs.map +1 -0
  237. package/dist/martyrs/src/modules/music/components/pages/PlaylistDetail.vue.js +556 -0
  238. package/dist/martyrs/src/modules/music/components/pages/PlaylistDetail.vue.js.map +1 -0
  239. package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.cjs +449 -0
  240. package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.cjs.map +1 -0
  241. package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.js +449 -0
  242. package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.js.map +1 -0
  243. package/dist/martyrs/src/modules/music/components/pages/TrackDetail.vue.cjs +87 -0
  244. package/dist/martyrs/src/modules/music/components/pages/TrackDetail.vue.cjs.map +1 -0
  245. package/dist/martyrs/src/modules/music/components/pages/TrackDetail.vue.js +87 -0
  246. package/dist/martyrs/src/modules/music/components/pages/TrackDetail.vue.js.map +1 -0
  247. package/dist/martyrs/src/modules/music/components/player/MusicPlayer.vue.cjs +227 -0
  248. package/dist/martyrs/src/modules/music/components/player/MusicPlayer.vue.cjs.map +1 -0
  249. package/dist/martyrs/src/modules/music/components/player/MusicPlayer.vue.js +227 -0
  250. package/dist/martyrs/src/modules/music/components/player/MusicPlayer.vue.js.map +1 -0
  251. package/dist/martyrs/src/modules/music/components/player/TrackProgress.vue.cjs +85 -0
  252. package/dist/martyrs/src/modules/music/components/player/TrackProgress.vue.cjs.map +1 -0
  253. package/dist/martyrs/src/modules/music/components/player/TrackProgress.vue.js +85 -0
  254. package/dist/martyrs/src/modules/music/components/player/TrackProgress.vue.js.map +1 -0
  255. package/dist/martyrs/src/modules/music/components/player/VolumeControl.vue.cjs +71 -0
  256. package/dist/martyrs/src/modules/music/components/player/VolumeControl.vue.cjs.map +1 -0
  257. package/dist/martyrs/src/modules/music/components/player/VolumeControl.vue.js +71 -0
  258. package/dist/martyrs/src/modules/music/components/player/VolumeControl.vue.js.map +1 -0
  259. package/dist/martyrs/src/modules/music/music.client.cjs +137 -0
  260. package/dist/martyrs/src/modules/music/music.client.cjs.map +1 -0
  261. package/dist/martyrs/src/modules/music/music.client.js +137 -0
  262. package/dist/martyrs/src/modules/music/music.client.js.map +1 -0
  263. package/dist/martyrs/src/modules/music/router/music.cjs +99 -0
  264. package/dist/martyrs/src/modules/music/router/music.cjs.map +1 -0
  265. package/dist/martyrs/src/modules/music/router/music.js +99 -0
  266. package/dist/martyrs/src/modules/music/router/music.js.map +1 -0
  267. package/dist/martyrs/src/modules/music/store/albums.cjs +167 -0
  268. package/dist/martyrs/src/modules/music/store/albums.cjs.map +1 -0
  269. package/dist/martyrs/src/modules/music/store/albums.js +167 -0
  270. package/dist/martyrs/src/modules/music/store/albums.js.map +1 -0
  271. package/dist/martyrs/src/modules/music/store/artists.cjs +154 -0
  272. package/dist/martyrs/src/modules/music/store/artists.cjs.map +1 -0
  273. package/dist/martyrs/src/modules/music/store/artists.js +154 -0
  274. package/dist/martyrs/src/modules/music/store/artists.js.map +1 -0
  275. package/dist/martyrs/src/modules/music/store/player.cjs +297 -0
  276. package/dist/martyrs/src/modules/music/store/player.cjs.map +1 -0
  277. package/dist/martyrs/src/modules/music/store/player.js +297 -0
  278. package/dist/martyrs/src/modules/music/store/player.js.map +1 -0
  279. package/dist/martyrs/src/modules/music/store/playlists.cjs +174 -0
  280. package/dist/martyrs/src/modules/music/store/playlists.cjs.map +1 -0
  281. package/dist/martyrs/src/modules/music/store/playlists.js +174 -0
  282. package/dist/martyrs/src/modules/music/store/playlists.js.map +1 -0
  283. package/dist/martyrs/src/modules/music/store/search.cjs +109 -0
  284. package/dist/martyrs/src/modules/music/store/search.cjs.map +1 -0
  285. package/dist/martyrs/src/modules/music/store/search.js +109 -0
  286. package/dist/martyrs/src/modules/music/store/search.js.map +1 -0
  287. package/dist/martyrs/src/modules/music/store/tracks.cjs +180 -0
  288. package/dist/martyrs/src/modules/music/store/tracks.cjs.map +1 -0
  289. package/dist/martyrs/src/modules/music/store/tracks.js +180 -0
  290. package/dist/martyrs/src/modules/music/store/tracks.js.map +1 -0
  291. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.cjs +1 -1
  292. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js +1 -1
  293. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +2 -2
  294. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +2 -2
  295. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.cjs +1 -1
  296. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js +1 -1
  297. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +2 -2
  298. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +2 -2
  299. package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.cjs +1 -1
  300. package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.js +1 -1
  301. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs +2 -2
  302. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +2 -2
  303. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.cjs +1 -1
  304. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js +1 -1
  305. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs +2 -2
  306. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.js +2 -2
  307. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs +1 -1
  308. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +1 -1
  309. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +2 -2
  310. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +2 -2
  311. package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.cjs +1 -1
  312. package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.js +1 -1
  313. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.cjs +2 -2
  314. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +2 -2
  315. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.cjs +1 -1
  316. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js +1 -1
  317. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs +1 -1
  318. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +1 -1
  319. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.cjs +1 -1
  320. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js +1 -1
  321. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.cjs +1 -1
  322. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js +1 -1
  323. package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.cjs +2 -2
  324. package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.js +2 -2
  325. package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.cjs +1 -1
  326. package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.js +1 -1
  327. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs +1 -1
  328. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js +1 -1
  329. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs +3 -3
  330. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +3 -3
  331. package/dist/martyrs/src/modules/products/components/pages/LeftoverEdit.vue.cjs +3 -3
  332. package/dist/martyrs/src/modules/products/components/pages/LeftoverEdit.vue.js +3 -3
  333. package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.cjs +2 -2
  334. package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.js +2 -2
  335. package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs +2 -2
  336. package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs.map +1 -1
  337. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js +2 -2
  338. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js.map +1 -1
  339. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs +1 -1
  340. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +1 -1
  341. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.cjs +2 -2
  342. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js +2 -2
  343. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.cjs +2 -2
  344. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js +2 -2
  345. package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.cjs +1 -1
  346. package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.js +1 -1
  347. package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.cjs +1 -1
  348. package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.js +1 -1
  349. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.cjs +2 -2
  350. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +2 -2
  351. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.cjs +1 -1
  352. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js +1 -1
  353. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.cjs +1 -1
  354. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.js +1 -1
  355. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs +1 -1
  356. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +1 -1
  357. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.cjs +1 -1
  358. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js +1 -1
  359. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.cjs +2 -2
  360. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js +2 -2
  361. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.cjs +1 -1
  362. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js +1 -1
  363. package/dist/martyrs/src/modules/spots/components/pages/Map.vue.cjs +1 -1
  364. package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js +1 -1
  365. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs +2 -2
  366. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +2 -2
  367. package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.cjs +2 -2
  368. package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.js +2 -2
  369. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.cjs +3 -3
  370. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js +3 -3
  371. package/dist/martyrs.cjs.js +1 -1
  372. package/dist/martyrs.css +1 -1
  373. package/dist/martyrs.es.js +38 -36
  374. package/dist/music.server.cjs +1407 -0
  375. package/dist/music.server.js +1407 -0
  376. package/dist/orders.server.cjs +3 -88
  377. package/dist/orders.server.js +2 -87
  378. package/dist/socials.schema-BOZV82Mp.js +25 -0
  379. package/dist/socials.schema-CtpSF9dE.cjs +24 -0
  380. package/dist/style.css +250 -97
  381. package/package.json +1 -1
  382. package/src/.martyrs/filemap.json +2 -2
  383. package/src/components/Feed/Feed.vue +1 -1
  384. package/src/components/Field/Field.vue +42 -27
  385. package/src/components/index.js +2 -0
  386. package/src/main.js +6 -0
  387. package/src/modules/auth/auth.client.js +7 -0
  388. package/src/modules/auth/locales/en.js +76 -0
  389. package/src/modules/auth/locales/index.js +7 -0
  390. package/src/modules/auth/locales/ru.js +76 -0
  391. package/src/modules/auth/views/components/layouts/Auth.vue +2 -44
  392. package/src/modules/auth/views/components/pages/EnterCode.vue +5 -7
  393. package/src/modules/auth/views/components/pages/EnterPassword.vue +7 -10
  394. package/src/modules/auth/views/components/pages/ResetPassword.vue +9 -12
  395. package/src/modules/auth/views/components/pages/SignIn.vue +12 -15
  396. package/src/modules/auth/views/components/pages/SignUp.vue +9 -12
  397. package/src/modules/auth/views/components/sections/SliderFeatures.vue +11 -48
  398. package/src/modules/events/components/pages/EditEvent.vue +1 -1
  399. package/src/modules/globals/globals.client.js +1 -0
  400. package/src/modules/globals/views/components/blocks/PopupDateSelector.vue +1 -1
  401. package/src/modules/globals/views/utils/axios-instance.js +15 -1
  402. package/src/modules/icons/actions/IconShow.vue +23 -0
  403. package/src/modules/icons/pages/IconsPage.vue +114 -120
  404. package/src/modules/products/components/pages/Product.vue +1 -1
  405. package/dist/main-rF15sgss.cjs +0 -11
  406. package/dist/martyrs/src/components/Button/Button.vue2.cjs.map +0 -1
  407. package/dist/martyrs/src/components/DatePicker/Calendar.vue.cjs.map +0 -1
  408. package/dist/martyrs/src/components/DatePicker/Calendar.vue.js.map +0 -1
  409. package/dist/martyrs/src/components/Dropdown/Dropdown.vue2.cjs.map +0 -1
  410. package/dist/martyrs/src/components/Popup/Popup.vue2.cjs.map +0 -1
  411. package/dist/martyrs/src/modules/auth/views/localization/EnterCode.json.cjs +0 -9
  412. package/dist/martyrs/src/modules/auth/views/localization/EnterCode.json.cjs.map +0 -1
  413. package/dist/martyrs/src/modules/auth/views/localization/EnterCode.json.js +0 -9
  414. package/dist/martyrs/src/modules/auth/views/localization/EnterCode.json.js.map +0 -1
  415. package/dist/martyrs/src/modules/auth/views/localization/EnterPassword.json.cjs +0 -9
  416. package/dist/martyrs/src/modules/auth/views/localization/EnterPassword.json.cjs.map +0 -1
  417. package/dist/martyrs/src/modules/auth/views/localization/EnterPassword.json.js +0 -9
  418. package/dist/martyrs/src/modules/auth/views/localization/EnterPassword.json.js.map +0 -1
  419. package/dist/martyrs/src/modules/auth/views/localization/ResetPassword.json.cjs +0 -9
  420. package/dist/martyrs/src/modules/auth/views/localization/ResetPassword.json.cjs.map +0 -1
  421. package/dist/martyrs/src/modules/auth/views/localization/ResetPassword.json.js +0 -9
  422. package/dist/martyrs/src/modules/auth/views/localization/ResetPassword.json.js.map +0 -1
  423. package/dist/martyrs/src/modules/auth/views/localization/SignIn.json.cjs +0 -9
  424. package/dist/martyrs/src/modules/auth/views/localization/SignIn.json.cjs.map +0 -1
  425. package/dist/martyrs/src/modules/auth/views/localization/SignIn.json.js +0 -9
  426. package/dist/martyrs/src/modules/auth/views/localization/SignIn.json.js.map +0 -1
  427. package/dist/martyrs/src/modules/auth/views/localization/SignUp.json.cjs +0 -9
  428. package/dist/martyrs/src/modules/auth/views/localization/SignUp.json.cjs.map +0 -1
  429. package/dist/martyrs/src/modules/auth/views/localization/SignUp.json.js +0 -9
  430. package/dist/martyrs/src/modules/auth/views/localization/SignUp.json.js.map +0 -1
  431. package/src/modules/auth/views/localization/EnterCode.json +0 -16
  432. package/src/modules/auth/views/localization/EnterPassword.json +0 -22
  433. package/src/modules/auth/views/localization/ResetPassword.json +0 -26
  434. package/src/modules/auth/views/localization/SignIn.json +0 -34
  435. package/src/modules/auth/views/localization/SignUp.json +0 -28
  436. /package/src/components/{DatePicker → Calendar}/Calendar.vue +0 -0
@@ -0,0 +1,200 @@
1
+ "use strict";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ const vue = require("vue");
4
+ const vueRouter = require("vue-router");
5
+ const TrackList = require("../lists/TrackList.vue.cjs");
6
+ const AlbumList = require("../lists/AlbumList.vue.cjs");
7
+ const PlaylistList = require("../lists/PlaylistList.vue.cjs");
8
+ const Button = require("../../../../components/Button/Button.vue.cjs");
9
+ const Loader = require("../../../../components/Loader/Loader.vue2.cjs");
10
+ require("vue-i18n");
11
+ ;/* empty css */
12
+ const Popup = require("../../../../components/Popup/Popup.vue.cjs");
13
+ require("../../store/artists.cjs");
14
+ const auth = require("../../../auth/views/store/auth.cjs");
15
+ require("../../../globals/views/store/globals.cjs");
16
+ const ArtistManager = require("./ArtistManager.vue.cjs");
17
+ const PlaylistForm = require("../forms/PlaylistForm.vue.cjs");
18
+ require("../../store/playlists.cjs");
19
+ require("../../store/albums.cjs");
20
+ const tracks = require("../../store/tracks.cjs");
21
+ const _hoisted_1 = { class: "music-library-page" };
22
+ const _hoisted_2 = { class: "library-tabs mn-b-medium" };
23
+ const _hoisted_3 = { class: "flex gap-small" };
24
+ const _hoisted_4 = {
25
+ key: 0,
26
+ class: "flex-center flex pd-big"
27
+ };
28
+ const _hoisted_5 = {
29
+ key: 1,
30
+ class: "playlists-tab"
31
+ };
32
+ const _hoisted_6 = { class: "flex-between flex mn-b-small" };
33
+ const _hoisted_7 = {
34
+ key: 0,
35
+ class: "empty-state t-center pd-big bg-dark-transp-10 radius-medium"
36
+ };
37
+ const _hoisted_8 = {
38
+ key: 2,
39
+ class: "albums-tab"
40
+ };
41
+ const _hoisted_9 = {
42
+ key: 0,
43
+ class: "empty-state t-center pd-big bg-dark-transp-10 radius-medium"
44
+ };
45
+ const _hoisted_10 = {
46
+ key: 3,
47
+ class: "artists-tab"
48
+ };
49
+ const _hoisted_11 = {
50
+ key: 4,
51
+ class: "tracks-tab"
52
+ };
53
+ const _hoisted_12 = { class: "flex-between flex mn-b-small" };
54
+ const _hoisted_13 = {
55
+ key: 0,
56
+ class: "empty-state t-center pd-big bg-dark-transp-10 radius-medium"
57
+ };
58
+ const _sfc_main = {
59
+ __name: "MusicLibrary",
60
+ setup(__props) {
61
+ const router = vueRouter.useRouter();
62
+ const isLoading = vue.ref(true);
63
+ const activeTab = vue.ref("playlists");
64
+ const showCreatePlaylistModal = vue.ref(false);
65
+ const tabs = [
66
+ { id: "playlists", label: "Playlists" },
67
+ { id: "albums", label: "Albums" },
68
+ { id: "artists", label: "Artists" },
69
+ { id: "tracks", label: "Tracks" }
70
+ ];
71
+ const userPlaylists = vue.ref([]);
72
+ const userAlbums = vue.ref([]);
73
+ vue.ref([]);
74
+ const userTracks = vue.ref([]);
75
+ const fetchLibraryData = async () => {
76
+ isLoading.value = true;
77
+ try {
78
+ if (!auth.state.user || !auth.state.user._id) {
79
+ router.push({ name: "Sign In", query: { redirect: router.currentRoute.value.fullPath } });
80
+ return;
81
+ }
82
+ await tracks.actions.fetchUserTracks(auth.state.user._id).then((tracks2) => userTracks.value = tracks2 || []);
83
+ } catch (error) {
84
+ console.error("Error fetching library data:", error);
85
+ } finally {
86
+ isLoading.value = false;
87
+ }
88
+ };
89
+ const onPlaylistCreated = (playlist) => {
90
+ userPlaylists.value.unshift(playlist);
91
+ showCreatePlaylistModal.value = false;
92
+ router.push({ name: "playlist-detail", params: { url: playlist.url } });
93
+ };
94
+ vue.onMounted(fetchLibraryData);
95
+ return (_ctx, _cache) => {
96
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [
97
+ _cache[13] || (_cache[13] = vue.createElementVNode("h1", { class: "t-white mn-b-medium" }, "Your Library", -1)),
98
+ vue.createElementVNode("div", _hoisted_2, [
99
+ vue.createElementVNode("div", _hoisted_3, [
100
+ (vue.openBlock(), vue.createElementBlock(vue.Fragment, null, vue.renderList(tabs, (tab) => {
101
+ return vue.createVNode(Button.default, {
102
+ key: tab.id,
103
+ onClick: ($event) => activeTab.value = tab.id,
104
+ class: vue.normalizeClass([[
105
+ activeTab.value === tab.id ? "bg-white t-black" : "bg-dark-transp-50 t-white hover-bg-dark"
106
+ ], "radius-extra pd-small"]),
107
+ showLoader: false,
108
+ showSucces: false
109
+ }, {
110
+ default: vue.withCtx(() => [
111
+ vue.createTextVNode(vue.toDisplayString(tab.label), 1)
112
+ ]),
113
+ _: 2
114
+ }, 1032, ["onClick", "class"]);
115
+ }), 64))
116
+ ])
117
+ ]),
118
+ isLoading.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4, [
119
+ vue.createVNode(Loader.default)
120
+ ])) : activeTab.value === "playlists" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_5, [
121
+ vue.createElementVNode("div", _hoisted_6, [
122
+ _cache[5] || (_cache[5] = vue.createElementVNode("h2", { class: "t-white" }, "Your Playlists", -1)),
123
+ vue.createVNode(Button.default, {
124
+ onClick: _cache[0] || (_cache[0] = ($event) => showCreatePlaylistModal.value = true),
125
+ class: "bg-main t-white radius-small pd-small hover-scale-1",
126
+ showLoader: false,
127
+ showSucces: false
128
+ }, {
129
+ default: vue.withCtx(() => _cache[4] || (_cache[4] = [
130
+ vue.createTextVNode(" Create Playlist ")
131
+ ])),
132
+ _: 1
133
+ })
134
+ ]),
135
+ userPlaylists.value.length === 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_7, _cache[6] || (_cache[6] = [
136
+ vue.createElementVNode("h3", { class: "t-white mn-b-small" }, "No playlists yet", -1),
137
+ vue.createElementVNode("p", { class: "t-grey t-medium" }, "Create your first playlist to see it here", -1)
138
+ ]))) : (vue.openBlock(), vue.createBlock(PlaylistList.default, {
139
+ key: 1,
140
+ playlists: userPlaylists.value
141
+ }, null, 8, ["playlists"]))
142
+ ])) : activeTab.value === "albums" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_8, [
143
+ _cache[8] || (_cache[8] = vue.createElementVNode("div", { class: "flex-between flex mn-b-small" }, [
144
+ vue.createElementVNode("h2", { class: "t-white" }, "Your Albums")
145
+ ], -1)),
146
+ userAlbums.value.length === 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_9, _cache[7] || (_cache[7] = [
147
+ vue.createElementVNode("h3", { class: "t-white mn-b-small" }, "No albums yet", -1),
148
+ vue.createElementVNode("p", { class: "t-grey t-medium" }, "Upload your first album to see it here", -1)
149
+ ]))) : (vue.openBlock(), vue.createBlock(AlbumList.default, {
150
+ key: 1,
151
+ albums: userAlbums.value
152
+ }, null, 8, ["albums"]))
153
+ ])) : activeTab.value === "artists" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_10, [
154
+ vue.createVNode(ArtistManager.default)
155
+ ])) : activeTab.value === "tracks" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_11, [
156
+ vue.createElementVNode("div", _hoisted_12, [
157
+ _cache[10] || (_cache[10] = vue.createElementVNode("h2", { class: "t-white" }, "Your Tracks", -1)),
158
+ vue.createVNode(Button.default, {
159
+ onClick: _cache[1] || (_cache[1] = ($event) => _ctx.$router.push({ name: "music-upload" })),
160
+ class: "bg-main t-white radius-small pd-small hover-scale-1",
161
+ showLoader: false,
162
+ showSucces: false
163
+ }, {
164
+ default: vue.withCtx(() => _cache[9] || (_cache[9] = [
165
+ vue.createTextVNode(" Upload Track ")
166
+ ])),
167
+ _: 1
168
+ })
169
+ ]),
170
+ userTracks.value.length === 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_13, _cache[11] || (_cache[11] = [
171
+ vue.createElementVNode("h3", { class: "t-white mn-b-small" }, "No tracks yet", -1),
172
+ vue.createElementVNode("p", { class: "t-grey t-medium" }, "Upload your first track to see it here", -1)
173
+ ]))) : (vue.openBlock(), vue.createBlock(TrackList.default, {
174
+ key: 1,
175
+ tracks: userTracks.value,
176
+ showAlbum: true,
177
+ showCover: true,
178
+ class: "bg-dark-transp-10 radius-medium o-hidden"
179
+ }, null, 8, ["tracks"]))
180
+ ])) : vue.createCommentVNode("", true),
181
+ showCreatePlaylistModal.value ? (vue.openBlock(), vue.createBlock(Popup.default, {
182
+ key: 5,
183
+ onClosePopup: _cache[3] || (_cache[3] = ($event) => showCreatePlaylistModal.value = false),
184
+ class: "bg-dark pd-small w-m-25r radius-medium t-white"
185
+ }, {
186
+ default: vue.withCtx(() => [
187
+ _cache[12] || (_cache[12] = vue.createElementVNode("h3", { class: "mn-b-medium" }, "Create Playlist", -1)),
188
+ vue.createVNode(PlaylistForm.default, {
189
+ onCreated: onPlaylistCreated,
190
+ onCancel: _cache[2] || (_cache[2] = ($event) => showCreatePlaylistModal.value = false)
191
+ })
192
+ ]),
193
+ _: 1
194
+ })) : vue.createCommentVNode("", true)
195
+ ]);
196
+ };
197
+ }
198
+ };
199
+ exports.default = _sfc_main;
200
+ //# sourceMappingURL=MusicLibrary.vue.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MusicLibrary.vue.cjs","sources":["../../../../../../../src/modules/music/components/pages/MusicLibrary.vue"],"sourcesContent":["<!-- components/pages/MusicLibrary.vue -->\n<template>\n <div class=\"music-library-page\">\n <h1 class=\"t-white mn-b-medium\">Your Library</h1>\n \n <!-- Filter Tabs -->\n <div class=\"library-tabs mn-b-medium\">\n <div class=\"flex gap-small\">\n <Button \n v-for=\"tab in tabs\"\n :key=\"tab.id\"\n @click=\"activeTab = tab.id\"\n :class=\"[\n activeTab === tab.id ? 'bg-white t-black' : 'bg-dark-transp-50 t-white hover-bg-dark',\n ]\"\n class=\"radius-extra pd-small\"\n :showLoader=\"false\" \n :showSucces=\"false\"\n >\n {{ tab.label }}\n </Button>\n </div>\n </div>\n \n <!-- Content based on active tab -->\n <div v-if=\"isLoading\" class=\"flex-center flex pd-big\">\n <Loader />\n </div>\n \n <!-- Playlists Tab -->\n <div v-else-if=\"activeTab === 'playlists'\" class=\"playlists-tab\">\n <div class=\"flex-between flex mn-b-small\">\n <h2 class=\"t-white\">Your Playlists</h2>\n <Button \n @click=\"showCreatePlaylistModal = true\"\n class=\"bg-main t-white radius-small pd-small hover-scale-1\"\n :showLoader=\"false\" \n :showSucces=\"false\"\n >\n Create Playlist\n </Button>\n </div>\n \n <div v-if=\"userPlaylists.length === 0\" class=\"empty-state t-center pd-big bg-dark-transp-10 radius-medium\">\n <h3 class=\"t-white mn-b-small\">No playlists yet</h3>\n <p class=\"t-grey t-medium\">Create your first playlist to see it here</p>\n </div>\n \n <PlaylistList v-else :playlists=\"userPlaylists\" />\n </div>\n \n <!-- Albums Tab -->\n <div v-else-if=\"activeTab === 'albums'\" class=\"albums-tab\">\n <div class=\"flex-between flex mn-b-small\">\n <h2 class=\"t-white\">Your Albums</h2>\n </div>\n \n <div v-if=\"userAlbums.length === 0\" class=\"empty-state t-center pd-big bg-dark-transp-10 radius-medium\">\n <h3 class=\"t-white mn-b-small\">No albums yet</h3>\n <p class=\"t-grey t-medium\">Upload your first album to see it here</p>\n </div>\n \n <AlbumList v-else :albums=\"userAlbums\" />\n </div>\n \n <!-- Artists Tab -->\n <div v-else-if=\"activeTab === 'artists'\" class=\"artists-tab\">\n <ArtistManager/>\n <!-- <div class=\"flex-between flex mn-b-small\">\n <h2 class=\"t-white\">Your Artists</h2>\n </div>\n \n <div v-if=\"userArtists.length === 0\" class=\"empty-state t-center pd-big bg-dark-transp-10 radius-medium\">\n <h3 class=\"t-white mn-b-small\">No artists yet</h3>\n <p class=\"t-grey t-medium\">Create your first artist profile to see it here</p>\n </div>\n \n <ArtistList v-else :artists=\"userArtists\" /> -->\n </div>\n \n <!-- Tracks Tab -->\n <div v-else-if=\"activeTab === 'tracks'\" class=\"tracks-tab\">\n <div class=\"flex-between flex mn-b-small\">\n <h2 class=\"t-white\">Your Tracks</h2>\n <Button \n @click=\"$router.push({ name: 'music-upload' })\"\n class=\"bg-main t-white radius-small pd-small hover-scale-1\"\n :showLoader=\"false\" \n :showSucces=\"false\"\n >\n Upload Track\n </Button>\n </div>\n \n <div v-if=\"userTracks.length === 0\" class=\"empty-state t-center pd-big bg-dark-transp-10 radius-medium\">\n <h3 class=\"t-white mn-b-small\">No tracks yet</h3>\n <p class=\"t-grey t-medium\">Upload your first track to see it here</p>\n </div>\n \n <TrackList \n v-else\n :tracks=\"userTracks\"\n :showAlbum=\"true\" \n :showCover=\"true\"\n class=\"bg-dark-transp-10 radius-medium o-hidden\"\n />\n </div>\n \n <!-- Create Playlist Modal -->\n <Popup \n v-if=\"showCreatePlaylistModal\" \n @close-popup=\"showCreatePlaylistModal = false\" \n class=\"bg-dark pd-small w-m-25r radius-medium t-white\"\n >\n <h3 class=\"mn-b-medium\">Create Playlist</h3>\n <PlaylistForm @created=\"onPlaylistCreated\" @cancel=\"showCreatePlaylistModal = false\" />\n </Popup>\n </div>\n</template>\n\n<script setup>\nimport { ref, onMounted } from 'vue';\nimport { useRouter } from 'vue-router';\nimport TrackList from '../lists/TrackList.vue';\nimport AlbumList from '../lists/AlbumList.vue';\nimport PlaylistList from '../lists/PlaylistList.vue';\nimport ArtistList from '../lists/ArtistList.vue';\nimport ArtistManager from '../pages/ArtistManager.vue';\nimport Button from '@martyrs/src/components/Button/Button.vue';\nimport Loader from '@martyrs/src/components/Loader/Loader.vue';\nimport Popup from '@martyrs/src/components/Popup/Popup.vue';\nimport PlaylistForm from '../forms/PlaylistForm.vue';\n\n// Import store modules\nimport { state as authState } from '@martyrs/src/modules/auth/views/store/auth.js';\nimport { state as playlistsState, actions as playlistsActions } from '../../store/playlists.js';\nimport { state as albumsState, actions as albumsActions } from '../../store/albums.js';\nimport { state as artistsState, actions as artistsActions } from '../../store/artists.js';\nimport { state as tracksState, actions as tracksActions } from '../../store/tracks.js';\n\nconst router = useRouter();\n\n// State\nconst isLoading = ref(true);\nconst activeTab = ref('playlists');\nconst showCreatePlaylistModal = ref(false);\n\n// Tabs configuration\nconst tabs = [\n { id: 'playlists', label: 'Playlists' },\n { id: 'albums', label: 'Albums' },\n { id: 'artists', label: 'Artists' },\n { id: 'tracks', label: 'Tracks' }\n];\n\n// Computed\nconst userPlaylists = ref([]);\nconst userAlbums = ref([]);\nconst userArtists = ref([]);\nconst userTracks = ref([]);\n\n// Methods\nconst fetchLibraryData = async () => {\n isLoading.value = true;\n \n try {\n if (!authState.user || !authState.user._id) {\n router.push({ name: 'Sign In', query: { redirect: router.currentRoute.value.fullPath } });\n return;\n }\n \n // Fetch user's content\n await tracksActions.fetchUserTracks(authState.user._id).then(tracks => userTracks.value = tracks || []);\n } catch (error) {\n console.error('Error fetching library data:', error);\n } finally {\n isLoading.value = false;\n }\n};\n\nconst onPlaylistCreated = (playlist) => {\n userPlaylists.value.unshift(playlist);\n showCreatePlaylistModal.value = false;\n router.push({ name: 'playlist-detail', params: { url: playlist.url } });\n};\n\n// Fetch library data when component mounts\nonMounted(fetchLibraryData);\n</script>"],"names":["useRouter","ref","authState","tracksActions","tracks","onMounted"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4IA,UAAM,SAASA,UAAAA,UAAW;AAG1B,UAAM,YAAYC,IAAG,IAAC,IAAI;AAC1B,UAAM,YAAYA,IAAG,IAAC,WAAW;AACjC,UAAM,0BAA0BA,IAAG,IAAC,KAAK;AAGzC,UAAM,OAAO;AAAA,MACX,EAAE,IAAI,aAAa,OAAO,YAAa;AAAA,MACvC,EAAE,IAAI,UAAU,OAAO,SAAU;AAAA,MACjC,EAAE,IAAI,WAAW,OAAO,UAAW;AAAA,MACnC,EAAE,IAAI,UAAU,OAAO,SAAQ;AAAA,IACjC;AAGA,UAAM,gBAAgBA,IAAG,IAAC,EAAE;AAC5B,UAAM,aAAaA,IAAG,IAAC,EAAE;AACLA,QAAAA,IAAI,CAAE,CAAA;AAC1B,UAAM,aAAaA,IAAG,IAAC,EAAE;AAGzB,UAAM,mBAAmB,YAAY;AACnC,gBAAU,QAAQ;AAElB,UAAI;AACF,YAAI,CAACC,KAAS,MAAC,QAAQ,CAACA,KAAAA,MAAU,KAAK,KAAK;AAC1C,iBAAO,KAAK,EAAE,MAAM,WAAW,OAAO,EAAE,UAAU,OAAO,aAAa,MAAM,SAAU,EAAA,CAAE;AACxF;AAAA,QACN;AAGI,cAAMC,eAAc,gBAAgBD,KAAS,MAAC,KAAK,GAAG,EAAE,KAAK,CAAAE,YAAU,WAAW,QAAQA,WAAU,CAAA,CAAE;AAAA,MACvG,SAAQ,OAAO;AACd,gBAAQ,MAAM,gCAAgC,KAAK;AAAA,MACvD,UAAY;AACR,kBAAU,QAAQ;AAAA,MACtB;AAAA,IACA;AAEA,UAAM,oBAAoB,CAAC,aAAa;AACtC,oBAAc,MAAM,QAAQ,QAAQ;AACpC,8BAAwB,QAAQ;AAChC,aAAO,KAAK,EAAE,MAAM,mBAAmB,QAAQ,EAAE,KAAK,SAAS,IAAG,GAAI;AAAA,IACxE;AAGAC,QAAS,UAAC,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,200 @@
1
+ import { ref, onMounted, createElementBlock, openBlock, createElementVNode, createCommentVNode, createBlock, Fragment, renderList, createVNode, normalizeClass, withCtx, createTextVNode, toDisplayString } from "vue";
2
+ import { useRouter } from "vue-router";
3
+ import TrackList from "../lists/TrackList.vue.js";
4
+ import _sfc_main$3 from "../lists/AlbumList.vue.js";
5
+ import _sfc_main$2 from "../lists/PlaylistList.vue.js";
6
+ import _sfc_main$1 from "../../../../components/Button/Button.vue.js";
7
+ import Loader from "../../../../components/Loader/Loader.vue2.js";
8
+ import "vue-i18n";
9
+ /* empty css */
10
+ import _sfc_main$5 from "../../../../components/Popup/Popup.vue.js";
11
+ import "../../store/artists.js";
12
+ import { state } from "../../../auth/views/store/auth.js";
13
+ import "../../../globals/views/store/globals.js";
14
+ import _sfc_main$4 from "./ArtistManager.vue.js";
15
+ import _sfc_main$6 from "../forms/PlaylistForm.vue.js";
16
+ import "../../store/playlists.js";
17
+ import "../../store/albums.js";
18
+ import { actions } from "../../store/tracks.js";
19
+ const _hoisted_1 = { class: "music-library-page" };
20
+ const _hoisted_2 = { class: "library-tabs mn-b-medium" };
21
+ const _hoisted_3 = { class: "flex gap-small" };
22
+ const _hoisted_4 = {
23
+ key: 0,
24
+ class: "flex-center flex pd-big"
25
+ };
26
+ const _hoisted_5 = {
27
+ key: 1,
28
+ class: "playlists-tab"
29
+ };
30
+ const _hoisted_6 = { class: "flex-between flex mn-b-small" };
31
+ const _hoisted_7 = {
32
+ key: 0,
33
+ class: "empty-state t-center pd-big bg-dark-transp-10 radius-medium"
34
+ };
35
+ const _hoisted_8 = {
36
+ key: 2,
37
+ class: "albums-tab"
38
+ };
39
+ const _hoisted_9 = {
40
+ key: 0,
41
+ class: "empty-state t-center pd-big bg-dark-transp-10 radius-medium"
42
+ };
43
+ const _hoisted_10 = {
44
+ key: 3,
45
+ class: "artists-tab"
46
+ };
47
+ const _hoisted_11 = {
48
+ key: 4,
49
+ class: "tracks-tab"
50
+ };
51
+ const _hoisted_12 = { class: "flex-between flex mn-b-small" };
52
+ const _hoisted_13 = {
53
+ key: 0,
54
+ class: "empty-state t-center pd-big bg-dark-transp-10 radius-medium"
55
+ };
56
+ const _sfc_main = {
57
+ __name: "MusicLibrary",
58
+ setup(__props) {
59
+ const router = useRouter();
60
+ const isLoading = ref(true);
61
+ const activeTab = ref("playlists");
62
+ const showCreatePlaylistModal = ref(false);
63
+ const tabs = [
64
+ { id: "playlists", label: "Playlists" },
65
+ { id: "albums", label: "Albums" },
66
+ { id: "artists", label: "Artists" },
67
+ { id: "tracks", label: "Tracks" }
68
+ ];
69
+ const userPlaylists = ref([]);
70
+ const userAlbums = ref([]);
71
+ ref([]);
72
+ const userTracks = ref([]);
73
+ const fetchLibraryData = async () => {
74
+ isLoading.value = true;
75
+ try {
76
+ if (!state.user || !state.user._id) {
77
+ router.push({ name: "Sign In", query: { redirect: router.currentRoute.value.fullPath } });
78
+ return;
79
+ }
80
+ await actions.fetchUserTracks(state.user._id).then((tracks) => userTracks.value = tracks || []);
81
+ } catch (error) {
82
+ console.error("Error fetching library data:", error);
83
+ } finally {
84
+ isLoading.value = false;
85
+ }
86
+ };
87
+ const onPlaylistCreated = (playlist) => {
88
+ userPlaylists.value.unshift(playlist);
89
+ showCreatePlaylistModal.value = false;
90
+ router.push({ name: "playlist-detail", params: { url: playlist.url } });
91
+ };
92
+ onMounted(fetchLibraryData);
93
+ return (_ctx, _cache) => {
94
+ return openBlock(), createElementBlock("div", _hoisted_1, [
95
+ _cache[13] || (_cache[13] = createElementVNode("h1", { class: "t-white mn-b-medium" }, "Your Library", -1)),
96
+ createElementVNode("div", _hoisted_2, [
97
+ createElementVNode("div", _hoisted_3, [
98
+ (openBlock(), createElementBlock(Fragment, null, renderList(tabs, (tab) => {
99
+ return createVNode(_sfc_main$1, {
100
+ key: tab.id,
101
+ onClick: ($event) => activeTab.value = tab.id,
102
+ class: normalizeClass([[
103
+ activeTab.value === tab.id ? "bg-white t-black" : "bg-dark-transp-50 t-white hover-bg-dark"
104
+ ], "radius-extra pd-small"]),
105
+ showLoader: false,
106
+ showSucces: false
107
+ }, {
108
+ default: withCtx(() => [
109
+ createTextVNode(toDisplayString(tab.label), 1)
110
+ ]),
111
+ _: 2
112
+ }, 1032, ["onClick", "class"]);
113
+ }), 64))
114
+ ])
115
+ ]),
116
+ isLoading.value ? (openBlock(), createElementBlock("div", _hoisted_4, [
117
+ createVNode(Loader)
118
+ ])) : activeTab.value === "playlists" ? (openBlock(), createElementBlock("div", _hoisted_5, [
119
+ createElementVNode("div", _hoisted_6, [
120
+ _cache[5] || (_cache[5] = createElementVNode("h2", { class: "t-white" }, "Your Playlists", -1)),
121
+ createVNode(_sfc_main$1, {
122
+ onClick: _cache[0] || (_cache[0] = ($event) => showCreatePlaylistModal.value = true),
123
+ class: "bg-main t-white radius-small pd-small hover-scale-1",
124
+ showLoader: false,
125
+ showSucces: false
126
+ }, {
127
+ default: withCtx(() => _cache[4] || (_cache[4] = [
128
+ createTextVNode(" Create Playlist ")
129
+ ])),
130
+ _: 1
131
+ })
132
+ ]),
133
+ userPlaylists.value.length === 0 ? (openBlock(), createElementBlock("div", _hoisted_7, _cache[6] || (_cache[6] = [
134
+ createElementVNode("h3", { class: "t-white mn-b-small" }, "No playlists yet", -1),
135
+ createElementVNode("p", { class: "t-grey t-medium" }, "Create your first playlist to see it here", -1)
136
+ ]))) : (openBlock(), createBlock(_sfc_main$2, {
137
+ key: 1,
138
+ playlists: userPlaylists.value
139
+ }, null, 8, ["playlists"]))
140
+ ])) : activeTab.value === "albums" ? (openBlock(), createElementBlock("div", _hoisted_8, [
141
+ _cache[8] || (_cache[8] = createElementVNode("div", { class: "flex-between flex mn-b-small" }, [
142
+ createElementVNode("h2", { class: "t-white" }, "Your Albums")
143
+ ], -1)),
144
+ userAlbums.value.length === 0 ? (openBlock(), createElementBlock("div", _hoisted_9, _cache[7] || (_cache[7] = [
145
+ createElementVNode("h3", { class: "t-white mn-b-small" }, "No albums yet", -1),
146
+ createElementVNode("p", { class: "t-grey t-medium" }, "Upload your first album to see it here", -1)
147
+ ]))) : (openBlock(), createBlock(_sfc_main$3, {
148
+ key: 1,
149
+ albums: userAlbums.value
150
+ }, null, 8, ["albums"]))
151
+ ])) : activeTab.value === "artists" ? (openBlock(), createElementBlock("div", _hoisted_10, [
152
+ createVNode(_sfc_main$4)
153
+ ])) : activeTab.value === "tracks" ? (openBlock(), createElementBlock("div", _hoisted_11, [
154
+ createElementVNode("div", _hoisted_12, [
155
+ _cache[10] || (_cache[10] = createElementVNode("h2", { class: "t-white" }, "Your Tracks", -1)),
156
+ createVNode(_sfc_main$1, {
157
+ onClick: _cache[1] || (_cache[1] = ($event) => _ctx.$router.push({ name: "music-upload" })),
158
+ class: "bg-main t-white radius-small pd-small hover-scale-1",
159
+ showLoader: false,
160
+ showSucces: false
161
+ }, {
162
+ default: withCtx(() => _cache[9] || (_cache[9] = [
163
+ createTextVNode(" Upload Track ")
164
+ ])),
165
+ _: 1
166
+ })
167
+ ]),
168
+ userTracks.value.length === 0 ? (openBlock(), createElementBlock("div", _hoisted_13, _cache[11] || (_cache[11] = [
169
+ createElementVNode("h3", { class: "t-white mn-b-small" }, "No tracks yet", -1),
170
+ createElementVNode("p", { class: "t-grey t-medium" }, "Upload your first track to see it here", -1)
171
+ ]))) : (openBlock(), createBlock(TrackList, {
172
+ key: 1,
173
+ tracks: userTracks.value,
174
+ showAlbum: true,
175
+ showCover: true,
176
+ class: "bg-dark-transp-10 radius-medium o-hidden"
177
+ }, null, 8, ["tracks"]))
178
+ ])) : createCommentVNode("", true),
179
+ showCreatePlaylistModal.value ? (openBlock(), createBlock(_sfc_main$5, {
180
+ key: 5,
181
+ onClosePopup: _cache[3] || (_cache[3] = ($event) => showCreatePlaylistModal.value = false),
182
+ class: "bg-dark pd-small w-m-25r radius-medium t-white"
183
+ }, {
184
+ default: withCtx(() => [
185
+ _cache[12] || (_cache[12] = createElementVNode("h3", { class: "mn-b-medium" }, "Create Playlist", -1)),
186
+ createVNode(_sfc_main$6, {
187
+ onCreated: onPlaylistCreated,
188
+ onCancel: _cache[2] || (_cache[2] = ($event) => showCreatePlaylistModal.value = false)
189
+ })
190
+ ]),
191
+ _: 1
192
+ })) : createCommentVNode("", true)
193
+ ]);
194
+ };
195
+ }
196
+ };
197
+ export {
198
+ _sfc_main as default
199
+ };
200
+ //# sourceMappingURL=MusicLibrary.vue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MusicLibrary.vue.js","sources":["../../../../../../../src/modules/music/components/pages/MusicLibrary.vue"],"sourcesContent":["<!-- components/pages/MusicLibrary.vue -->\n<template>\n <div class=\"music-library-page\">\n <h1 class=\"t-white mn-b-medium\">Your Library</h1>\n \n <!-- Filter Tabs -->\n <div class=\"library-tabs mn-b-medium\">\n <div class=\"flex gap-small\">\n <Button \n v-for=\"tab in tabs\"\n :key=\"tab.id\"\n @click=\"activeTab = tab.id\"\n :class=\"[\n activeTab === tab.id ? 'bg-white t-black' : 'bg-dark-transp-50 t-white hover-bg-dark',\n ]\"\n class=\"radius-extra pd-small\"\n :showLoader=\"false\" \n :showSucces=\"false\"\n >\n {{ tab.label }}\n </Button>\n </div>\n </div>\n \n <!-- Content based on active tab -->\n <div v-if=\"isLoading\" class=\"flex-center flex pd-big\">\n <Loader />\n </div>\n \n <!-- Playlists Tab -->\n <div v-else-if=\"activeTab === 'playlists'\" class=\"playlists-tab\">\n <div class=\"flex-between flex mn-b-small\">\n <h2 class=\"t-white\">Your Playlists</h2>\n <Button \n @click=\"showCreatePlaylistModal = true\"\n class=\"bg-main t-white radius-small pd-small hover-scale-1\"\n :showLoader=\"false\" \n :showSucces=\"false\"\n >\n Create Playlist\n </Button>\n </div>\n \n <div v-if=\"userPlaylists.length === 0\" class=\"empty-state t-center pd-big bg-dark-transp-10 radius-medium\">\n <h3 class=\"t-white mn-b-small\">No playlists yet</h3>\n <p class=\"t-grey t-medium\">Create your first playlist to see it here</p>\n </div>\n \n <PlaylistList v-else :playlists=\"userPlaylists\" />\n </div>\n \n <!-- Albums Tab -->\n <div v-else-if=\"activeTab === 'albums'\" class=\"albums-tab\">\n <div class=\"flex-between flex mn-b-small\">\n <h2 class=\"t-white\">Your Albums</h2>\n </div>\n \n <div v-if=\"userAlbums.length === 0\" class=\"empty-state t-center pd-big bg-dark-transp-10 radius-medium\">\n <h3 class=\"t-white mn-b-small\">No albums yet</h3>\n <p class=\"t-grey t-medium\">Upload your first album to see it here</p>\n </div>\n \n <AlbumList v-else :albums=\"userAlbums\" />\n </div>\n \n <!-- Artists Tab -->\n <div v-else-if=\"activeTab === 'artists'\" class=\"artists-tab\">\n <ArtistManager/>\n <!-- <div class=\"flex-between flex mn-b-small\">\n <h2 class=\"t-white\">Your Artists</h2>\n </div>\n \n <div v-if=\"userArtists.length === 0\" class=\"empty-state t-center pd-big bg-dark-transp-10 radius-medium\">\n <h3 class=\"t-white mn-b-small\">No artists yet</h3>\n <p class=\"t-grey t-medium\">Create your first artist profile to see it here</p>\n </div>\n \n <ArtistList v-else :artists=\"userArtists\" /> -->\n </div>\n \n <!-- Tracks Tab -->\n <div v-else-if=\"activeTab === 'tracks'\" class=\"tracks-tab\">\n <div class=\"flex-between flex mn-b-small\">\n <h2 class=\"t-white\">Your Tracks</h2>\n <Button \n @click=\"$router.push({ name: 'music-upload' })\"\n class=\"bg-main t-white radius-small pd-small hover-scale-1\"\n :showLoader=\"false\" \n :showSucces=\"false\"\n >\n Upload Track\n </Button>\n </div>\n \n <div v-if=\"userTracks.length === 0\" class=\"empty-state t-center pd-big bg-dark-transp-10 radius-medium\">\n <h3 class=\"t-white mn-b-small\">No tracks yet</h3>\n <p class=\"t-grey t-medium\">Upload your first track to see it here</p>\n </div>\n \n <TrackList \n v-else\n :tracks=\"userTracks\"\n :showAlbum=\"true\" \n :showCover=\"true\"\n class=\"bg-dark-transp-10 radius-medium o-hidden\"\n />\n </div>\n \n <!-- Create Playlist Modal -->\n <Popup \n v-if=\"showCreatePlaylistModal\" \n @close-popup=\"showCreatePlaylistModal = false\" \n class=\"bg-dark pd-small w-m-25r radius-medium t-white\"\n >\n <h3 class=\"mn-b-medium\">Create Playlist</h3>\n <PlaylistForm @created=\"onPlaylistCreated\" @cancel=\"showCreatePlaylistModal = false\" />\n </Popup>\n </div>\n</template>\n\n<script setup>\nimport { ref, onMounted } from 'vue';\nimport { useRouter } from 'vue-router';\nimport TrackList from '../lists/TrackList.vue';\nimport AlbumList from '../lists/AlbumList.vue';\nimport PlaylistList from '../lists/PlaylistList.vue';\nimport ArtistList from '../lists/ArtistList.vue';\nimport ArtistManager from '../pages/ArtistManager.vue';\nimport Button from '@martyrs/src/components/Button/Button.vue';\nimport Loader from '@martyrs/src/components/Loader/Loader.vue';\nimport Popup from '@martyrs/src/components/Popup/Popup.vue';\nimport PlaylistForm from '../forms/PlaylistForm.vue';\n\n// Import store modules\nimport { state as authState } from '@martyrs/src/modules/auth/views/store/auth.js';\nimport { state as playlistsState, actions as playlistsActions } from '../../store/playlists.js';\nimport { state as albumsState, actions as albumsActions } from '../../store/albums.js';\nimport { state as artistsState, actions as artistsActions } from '../../store/artists.js';\nimport { state as tracksState, actions as tracksActions } from '../../store/tracks.js';\n\nconst router = useRouter();\n\n// State\nconst isLoading = ref(true);\nconst activeTab = ref('playlists');\nconst showCreatePlaylistModal = ref(false);\n\n// Tabs configuration\nconst tabs = [\n { id: 'playlists', label: 'Playlists' },\n { id: 'albums', label: 'Albums' },\n { id: 'artists', label: 'Artists' },\n { id: 'tracks', label: 'Tracks' }\n];\n\n// Computed\nconst userPlaylists = ref([]);\nconst userAlbums = ref([]);\nconst userArtists = ref([]);\nconst userTracks = ref([]);\n\n// Methods\nconst fetchLibraryData = async () => {\n isLoading.value = true;\n \n try {\n if (!authState.user || !authState.user._id) {\n router.push({ name: 'Sign In', query: { redirect: router.currentRoute.value.fullPath } });\n return;\n }\n \n // Fetch user's content\n await tracksActions.fetchUserTracks(authState.user._id).then(tracks => userTracks.value = tracks || []);\n } catch (error) {\n console.error('Error fetching library data:', error);\n } finally {\n isLoading.value = false;\n }\n};\n\nconst onPlaylistCreated = (playlist) => {\n userPlaylists.value.unshift(playlist);\n showCreatePlaylistModal.value = false;\n router.push({ name: 'playlist-detail', params: { url: playlist.url } });\n};\n\n// Fetch library data when component mounts\nonMounted(fetchLibraryData);\n</script>"],"names":["authState","tracksActions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4IA,UAAM,SAAS,UAAW;AAG1B,UAAM,YAAY,IAAI,IAAI;AAC1B,UAAM,YAAY,IAAI,WAAW;AACjC,UAAM,0BAA0B,IAAI,KAAK;AAGzC,UAAM,OAAO;AAAA,MACX,EAAE,IAAI,aAAa,OAAO,YAAa;AAAA,MACvC,EAAE,IAAI,UAAU,OAAO,SAAU;AAAA,MACjC,EAAE,IAAI,WAAW,OAAO,UAAW;AAAA,MACnC,EAAE,IAAI,UAAU,OAAO,SAAQ;AAAA,IACjC;AAGA,UAAM,gBAAgB,IAAI,EAAE;AAC5B,UAAM,aAAa,IAAI,EAAE;AACL,QAAI,CAAE,CAAA;AAC1B,UAAM,aAAa,IAAI,EAAE;AAGzB,UAAM,mBAAmB,YAAY;AACnC,gBAAU,QAAQ;AAElB,UAAI;AACF,YAAI,CAACA,MAAU,QAAQ,CAACA,MAAU,KAAK,KAAK;AAC1C,iBAAO,KAAK,EAAE,MAAM,WAAW,OAAO,EAAE,UAAU,OAAO,aAAa,MAAM,SAAU,EAAA,CAAE;AACxF;AAAA,QACN;AAGI,cAAMC,QAAc,gBAAgBD,MAAU,KAAK,GAAG,EAAE,KAAK,YAAU,WAAW,QAAQ,UAAU,CAAA,CAAE;AAAA,MACvG,SAAQ,OAAO;AACd,gBAAQ,MAAM,gCAAgC,KAAK;AAAA,MACvD,UAAY;AACR,kBAAU,QAAQ;AAAA,MACtB;AAAA,IACA;AAEA,UAAM,oBAAoB,CAAC,aAAa;AACtC,oBAAc,MAAM,QAAQ,QAAQ;AACpC,8BAAwB,QAAQ;AAChC,aAAO,KAAK,EAAE,MAAM,mBAAmB,QAAQ,EAAE,KAAK,SAAS,IAAG,GAAI;AAAA,IACxE;AAGA,cAAU,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ const vue = require("vue");
4
+ const vueRouter = require("vue-router");
5
+ const Button = require("../../../../components/Button/Button.vue.cjs");
6
+ const UploadForm = require("../forms/UploadForm.vue.cjs");
7
+ const auth = require("../../../auth/views/store/auth.cjs");
8
+ const _hoisted_1 = { class: "music-upload-page" };
9
+ const _hoisted_2 = { class: "upload-container bg-dark-transp-10 radius-medium pd-medium" };
10
+ const _hoisted_3 = {
11
+ key: 0,
12
+ class: "t-center pd-big"
13
+ };
14
+ const _hoisted_4 = { key: 1 };
15
+ const _sfc_main = {
16
+ __name: "MusicUpload",
17
+ setup(__props) {
18
+ const router = vueRouter.useRouter();
19
+ const onTrackUploaded = (track) => {
20
+ router.push({ name: "track-detail", params: { url: track.url } });
21
+ };
22
+ return (_ctx, _cache) => {
23
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [
24
+ _cache[5] || (_cache[5] = vue.createElementVNode("h1", { class: "t-white mn-b-medium" }, "Upload Music", -1)),
25
+ vue.createElementVNode("div", _hoisted_2, [
26
+ !vue.unref(auth.state).access.status ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3, [
27
+ _cache[2] || (_cache[2] = vue.createElementVNode("h2", { class: "t-white mn-b-small" }, "Sign in to upload", -1)),
28
+ _cache[3] || (_cache[3] = vue.createElementVNode("p", { class: "t-grey t-medium mn-b-medium" }, "You need to be signed in to upload tracks", -1)),
29
+ vue.createVNode(Button.default, {
30
+ onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$router.push({ name: "Sign In", query: { redirect: _ctx.$route.fullPath } })),
31
+ class: "bg-main t-white radius-small pd-small hover-scale-1",
32
+ showLoader: false,
33
+ showSucces: false
34
+ }, {
35
+ default: vue.withCtx(() => _cache[1] || (_cache[1] = [
36
+ vue.createTextVNode(" Sign In ")
37
+ ])),
38
+ _: 1
39
+ })
40
+ ])) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_4, [
41
+ _cache[4] || (_cache[4] = vue.createElementVNode("h2", { class: "t-white mn-b-medium" }, "Upload a Track", -1)),
42
+ vue.createVNode(UploadForm.default, { onUploaded: onTrackUploaded })
43
+ ]))
44
+ ])
45
+ ]);
46
+ };
47
+ }
48
+ };
49
+ exports.default = _sfc_main;
50
+ //# sourceMappingURL=MusicUpload.vue.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MusicUpload.vue.cjs","sources":["../../../../../../../src/modules/music/components/pages/MusicUpload.vue"],"sourcesContent":["<!-- components/pages/MusicUpload.vue -->\n<template>\n <div class=\"music-upload-page\">\n <h1 class=\"t-white mn-b-medium\">Upload Music</h1>\n \n <div class=\"upload-container bg-dark-transp-10 radius-medium pd-medium\">\n <div v-if=\"!authState.access.status\" class=\"t-center pd-big\">\n <h2 class=\"t-white mn-b-small\">Sign in to upload</h2>\n <p class=\"t-grey t-medium mn-b-medium\">You need to be signed in to upload tracks</p>\n <Button \n @click=\"$router.push({ name: 'Sign In', query: { redirect: $route.fullPath } })\"\n class=\"bg-main t-white radius-small pd-small hover-scale-1\"\n :showLoader=\"false\" \n :showSucces=\"false\"\n >\n Sign In\n </Button>\n </div>\n \n <div v-else>\n <h2 class=\"t-white mn-b-medium\">Upload a Track</h2>\n \n <UploadForm @uploaded=\"onTrackUploaded\" />\n </div>\n </div>\n </div>\n</template>\n\n<script setup>\nimport { ref } from 'vue';\nimport { useRouter } from 'vue-router';\nimport Button from '@martyrs/src/components/Button/Button.vue';\nimport UploadForm from '../forms/UploadForm.vue';\n\n// Import auth store\nimport { state as authState } from '@martyrs/src/modules/auth/views/store/auth.js';\n\nconst router = useRouter();\n\nconst onTrackUploaded = (track) => {\n // Navigate to the uploaded track's detail page\n router.push({ name: 'track-detail', params: { url: track.url } });\n};\n</script>"],"names":["useRouter"],"mappings":";;;;;;;;;;;;;;;;;AAqCA,UAAM,SAASA,UAAAA,UAAW;AAE1B,UAAM,kBAAkB,CAAC,UAAU;AAEjC,aAAO,KAAK,EAAE,MAAM,gBAAgB,QAAQ,EAAE,KAAK,MAAM,IAAG,GAAI;AAAA,IAClE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,50 @@
1
+ import { createElementBlock, openBlock, createElementVNode, unref, createVNode, withCtx, createTextVNode } from "vue";
2
+ import { useRouter } from "vue-router";
3
+ import _sfc_main$1 from "../../../../components/Button/Button.vue.js";
4
+ import _sfc_main$2 from "../forms/UploadForm.vue.js";
5
+ import { state } from "../../../auth/views/store/auth.js";
6
+ const _hoisted_1 = { class: "music-upload-page" };
7
+ const _hoisted_2 = { class: "upload-container bg-dark-transp-10 radius-medium pd-medium" };
8
+ const _hoisted_3 = {
9
+ key: 0,
10
+ class: "t-center pd-big"
11
+ };
12
+ const _hoisted_4 = { key: 1 };
13
+ const _sfc_main = {
14
+ __name: "MusicUpload",
15
+ setup(__props) {
16
+ const router = useRouter();
17
+ const onTrackUploaded = (track) => {
18
+ router.push({ name: "track-detail", params: { url: track.url } });
19
+ };
20
+ return (_ctx, _cache) => {
21
+ return openBlock(), createElementBlock("div", _hoisted_1, [
22
+ _cache[5] || (_cache[5] = createElementVNode("h1", { class: "t-white mn-b-medium" }, "Upload Music", -1)),
23
+ createElementVNode("div", _hoisted_2, [
24
+ !unref(state).access.status ? (openBlock(), createElementBlock("div", _hoisted_3, [
25
+ _cache[2] || (_cache[2] = createElementVNode("h2", { class: "t-white mn-b-small" }, "Sign in to upload", -1)),
26
+ _cache[3] || (_cache[3] = createElementVNode("p", { class: "t-grey t-medium mn-b-medium" }, "You need to be signed in to upload tracks", -1)),
27
+ createVNode(_sfc_main$1, {
28
+ onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$router.push({ name: "Sign In", query: { redirect: _ctx.$route.fullPath } })),
29
+ class: "bg-main t-white radius-small pd-small hover-scale-1",
30
+ showLoader: false,
31
+ showSucces: false
32
+ }, {
33
+ default: withCtx(() => _cache[1] || (_cache[1] = [
34
+ createTextVNode(" Sign In ")
35
+ ])),
36
+ _: 1
37
+ })
38
+ ])) : (openBlock(), createElementBlock("div", _hoisted_4, [
39
+ _cache[4] || (_cache[4] = createElementVNode("h2", { class: "t-white mn-b-medium" }, "Upload a Track", -1)),
40
+ createVNode(_sfc_main$2, { onUploaded: onTrackUploaded })
41
+ ]))
42
+ ])
43
+ ]);
44
+ };
45
+ }
46
+ };
47
+ export {
48
+ _sfc_main as default
49
+ };
50
+ //# sourceMappingURL=MusicUpload.vue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MusicUpload.vue.js","sources":["../../../../../../../src/modules/music/components/pages/MusicUpload.vue"],"sourcesContent":["<!-- components/pages/MusicUpload.vue -->\n<template>\n <div class=\"music-upload-page\">\n <h1 class=\"t-white mn-b-medium\">Upload Music</h1>\n \n <div class=\"upload-container bg-dark-transp-10 radius-medium pd-medium\">\n <div v-if=\"!authState.access.status\" class=\"t-center pd-big\">\n <h2 class=\"t-white mn-b-small\">Sign in to upload</h2>\n <p class=\"t-grey t-medium mn-b-medium\">You need to be signed in to upload tracks</p>\n <Button \n @click=\"$router.push({ name: 'Sign In', query: { redirect: $route.fullPath } })\"\n class=\"bg-main t-white radius-small pd-small hover-scale-1\"\n :showLoader=\"false\" \n :showSucces=\"false\"\n >\n Sign In\n </Button>\n </div>\n \n <div v-else>\n <h2 class=\"t-white mn-b-medium\">Upload a Track</h2>\n \n <UploadForm @uploaded=\"onTrackUploaded\" />\n </div>\n </div>\n </div>\n</template>\n\n<script setup>\nimport { ref } from 'vue';\nimport { useRouter } from 'vue-router';\nimport Button from '@martyrs/src/components/Button/Button.vue';\nimport UploadForm from '../forms/UploadForm.vue';\n\n// Import auth store\nimport { state as authState } from '@martyrs/src/modules/auth/views/store/auth.js';\n\nconst router = useRouter();\n\nconst onTrackUploaded = (track) => {\n // Navigate to the uploaded track's detail page\n router.push({ name: 'track-detail', params: { url: track.url } });\n};\n</script>"],"names":[],"mappings":";;;;;;;;;;;;;;;AAqCA,UAAM,SAAS,UAAW;AAE1B,UAAM,kBAAkB,CAAC,UAAU;AAEjC,aAAO,KAAK,EAAE,MAAM,gBAAgB,QAAQ,EAAE,KAAK,MAAM,IAAG,GAAI;AAAA,IAClE;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}