@ozdao/martyrs 0.2.486 → 0.2.487
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.
- package/dist/Media-B2jWzwLB.cjs +1 -0
- package/dist/{Media-CXQSPHt2.js → Media-DZ5_ItXQ.js} +3 -3
- package/dist/auth.server.cjs +1 -1
- package/dist/auth.server.js +1 -1
- package/dist/{authJwt-DBB51Iql.cjs → authJwt-D35KyJlE.cjs} +31 -2
- package/dist/{authJwt-DcYNNwcr.js → authJwt-DqxhUym0.js} +31 -2
- package/dist/chats.server.cjs +1 -1
- package/dist/chats.server.js +1 -1
- package/dist/community.server.cjs +1 -1
- package/dist/community.server.js +1 -1
- package/dist/crud-BDIArc5A.cjs +1096 -0
- package/dist/crud-DJvpe0aZ.js +1097 -0
- package/dist/events.server.cjs +1 -1
- package/dist/events.server.js +1 -1
- package/dist/files.server.cjs +1 -1
- package/dist/files.server.js +1 -1
- package/dist/gallery.server.cjs +1 -1
- package/dist/gallery.server.js +1 -1
- package/dist/{index-CsJwdsBW.js → index-CVuQC4k1.js} +1 -1
- package/dist/{index-YNOkL1mu.cjs → index-DiSKVCaA.cjs} +1 -1
- package/dist/main-C6_DPWGX.cjs +11 -0
- package/dist/{main-Cfh5138F.js → main-nQmkbWsW.js} +825 -826
- package/dist/martyrs/src/components/Chips/{Chips.vue2.cjs → Chips.vue.cjs} +2 -2
- package/dist/martyrs/src/components/Chips/Chips.vue.cjs.map +1 -0
- package/dist/martyrs/src/components/Chips/{Chips.vue2.js → Chips.vue.js} +2 -2
- package/dist/martyrs/src/components/Chips/Chips.vue.js.map +1 -0
- package/dist/martyrs/src/components/Field/{Field.vue.cjs → Field.vue2.cjs} +5 -6
- package/dist/martyrs/src/components/Field/Field.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/Field/{Field.vue.js → Field.vue2.js} +5 -6
- package/dist/martyrs/src/components/Field/Field.vue2.js.map +1 -0
- package/dist/martyrs/src/components/FieldBig/FieldBig.vue.cjs +10 -9
- package/dist/martyrs/src/components/FieldBig/FieldBig.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/FieldBig/FieldBig.vue.js +13 -12
- package/dist/martyrs/src/components/FieldBig/FieldBig.vue.js.map +1 -1
- package/dist/martyrs/src/components/FieldPhone/FieldPhone.vue.cjs +1 -1
- package/dist/martyrs/src/components/FieldPhone/FieldPhone.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/FieldPhone/FieldPhone.vue.js +1 -1
- package/dist/martyrs/src/components/FieldPhone/FieldPhone.vue.js.map +1 -1
- package/dist/martyrs/src/components/Media/Media.vue.cjs +2 -2
- package/dist/martyrs/src/components/Media/Media.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/Media/Media.vue.js +2 -2
- package/dist/martyrs/src/components/Media/Media.vue.js.map +1 -1
- package/dist/martyrs/src/components/Select/Select.vue.cjs +2 -2
- package/dist/martyrs/src/components/Select/Select.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/Select/Select.vue.js +2 -2
- package/dist/martyrs/src/components/Select/Select.vue.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.cjs +1 -0
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.js +1 -0
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js +5 -5
- package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +5 -5
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs +1 -0
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +1 -0
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js +10 -10
- package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +4 -4
- package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +5 -5
- package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +4 -4
- package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.js +23 -23
- package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.cjs +1 -1
- package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.js +1 -1
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs +1 -1
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +1 -1
- package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs +1 -1
- package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +11 -11
- package/dist/martyrs/src/modules/constructor/components/elements/Card.vue.cjs +1 -1
- package/dist/martyrs/src/modules/constructor/components/elements/Card.vue.js +3 -3
- package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.cjs +1 -1
- package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.js +2 -2
- package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +25 -25
- package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +15 -15
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs +9 -2
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +9 -2
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.js.map +1 -1
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +2 -1
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +2 -1
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/classes/globals.store.cjs +24 -58
- package/dist/martyrs/src/modules/globals/views/classes/globals.store.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/classes/globals.store.js +24 -58
- package/dist/martyrs/src/modules/globals/views/classes/globals.store.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/BlockSearch.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/BlockSearch.vue.js +2 -2
- package/dist/martyrs/src/modules/globals/views/components/sections/Filters.vue2.cjs +1 -0
- package/dist/martyrs/src/modules/globals/views/components/sections/Filters.vue2.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/sections/Filters.vue2.js +1 -0
- package/dist/martyrs/src/modules/globals/views/components/sections/Filters.vue2.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/sections/filters/FilterOptions.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/sections/filters/FilterOptions.vue.js +2 -2
- package/dist/martyrs/src/modules/globals/views/components/sections/filters/FilterPrice.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/sections/filters/FilterPrice.vue.js +3 -3
- package/dist/martyrs/src/modules/globals/views/store/globals.cjs +6 -0
- package/dist/martyrs/src/modules/globals/views/store/globals.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/store/globals.js +6 -0
- package/dist/martyrs/src/modules/globals/views/store/globals.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/utils/query-serializer.cjs +100 -0
- package/dist/martyrs/src/modules/globals/views/utils/query-serializer.cjs.map +1 -0
- package/dist/martyrs/src/modules/globals/views/utils/query-serializer.js +100 -0
- package/dist/martyrs/src/modules/globals/views/utils/query-serializer.js.map +1 -0
- package/dist/martyrs/src/modules/icons/components/IconSearchPopup.vue.cjs +224 -0
- package/dist/martyrs/src/modules/icons/components/IconSearchPopup.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/icons/components/IconSearchPopup.vue.js +224 -0
- package/dist/martyrs/src/modules/icons/components/IconSearchPopup.vue.js.map +1 -0
- package/dist/martyrs/src/modules/icons/entities/IconAddress.vue.cjs +40 -0
- package/dist/martyrs/src/modules/icons/entities/IconAddress.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/icons/entities/IconAddress.vue.js +40 -0
- package/dist/martyrs/src/modules/icons/entities/IconAddress.vue.js.map +1 -0
- package/dist/martyrs/src/modules/icons/entities/IconDate.vue.cjs +6 -6
- package/dist/martyrs/src/modules/icons/entities/IconDate.vue.js +6 -6
- package/dist/martyrs/src/modules/icons/entities/IconEmail.vue.cjs +32 -0
- package/dist/martyrs/src/modules/icons/entities/IconEmail.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/icons/entities/IconEmail.vue.js +32 -0
- package/dist/martyrs/src/modules/icons/entities/IconEmail.vue.js.map +1 -0
- package/dist/martyrs/src/modules/icons/entities/IconMusic.vue.cjs +10 -12
- package/dist/martyrs/src/modules/icons/entities/IconMusic.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/entities/IconMusic.vue.js +11 -13
- package/dist/martyrs/src/modules/icons/entities/IconMusic.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/entities/IconPhone.vue.cjs +32 -0
- package/dist/martyrs/src/modules/icons/entities/IconPhone.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/icons/entities/IconPhone.vue.js +32 -0
- package/dist/martyrs/src/modules/icons/entities/IconPhone.vue.js.map +1 -0
- package/dist/martyrs/src/modules/icons/icons.client.cjs +48 -4
- package/dist/martyrs/src/modules/icons/icons.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/icons.client.js +172 -128
- package/dist/martyrs/src/modules/icons/icons.client.js.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconCross.vue.cjs +5 -7
- package/dist/martyrs/src/modules/icons/navigation/IconCross.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconCross.vue.js +5 -7
- package/dist/martyrs/src/modules/icons/navigation/IconCross.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.cjs +6 -11
- package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.js +6 -11
- package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.cjs +6 -11
- package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.js +6 -11
- package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.cjs +62 -6
- package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.js +189 -133
- package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/socials/dribbble.vue.cjs +21 -12
- package/dist/martyrs/src/modules/icons/socials/dribbble.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/socials/dribbble.vue.js +21 -12
- package/dist/martyrs/src/modules/icons/socials/dribbble.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/socials/facebook.vue.cjs +21 -12
- package/dist/martyrs/src/modules/icons/socials/facebook.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/socials/facebook.vue.js +21 -12
- package/dist/martyrs/src/modules/icons/socials/facebook.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/socials/instagram.vue.cjs +25 -17
- package/dist/martyrs/src/modules/icons/socials/instagram.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/socials/instagram.vue.js +25 -17
- package/dist/martyrs/src/modules/icons/socials/instagram.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/socials/line.vue.cjs +23 -14
- package/dist/martyrs/src/modules/icons/socials/line.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/socials/line.vue.js +23 -14
- package/dist/martyrs/src/modules/icons/socials/line.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/socials/linkedin.vue.cjs +26 -17
- package/dist/martyrs/src/modules/icons/socials/linkedin.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/socials/linkedin.vue.js +26 -17
- package/dist/martyrs/src/modules/icons/socials/linkedin.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/socials/reddit.vue.cjs +21 -12
- package/dist/martyrs/src/modules/icons/socials/reddit.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/socials/reddit.vue.js +21 -12
- package/dist/martyrs/src/modules/icons/socials/reddit.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/socials/telegram.vue.cjs +29 -20
- package/dist/martyrs/src/modules/icons/socials/telegram.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/socials/telegram.vue.js +29 -20
- package/dist/martyrs/src/modules/icons/socials/telegram.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/socials/twitter.vue.cjs +21 -12
- package/dist/martyrs/src/modules/icons/socials/twitter.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/socials/twitter.vue.js +21 -12
- package/dist/martyrs/src/modules/icons/socials/twitter.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/socials/vk.vue.cjs +21 -12
- package/dist/martyrs/src/modules/icons/socials/vk.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/socials/vk.vue.js +21 -12
- package/dist/martyrs/src/modules/icons/socials/vk.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/socials/whatsapp.vue.cjs +32 -0
- package/dist/martyrs/src/modules/icons/socials/whatsapp.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/icons/socials/whatsapp.vue.js +32 -0
- package/dist/martyrs/src/modules/icons/socials/whatsapp.vue.js.map +1 -0
- package/dist/martyrs/src/modules/icons/socials/youtube.vue.cjs +21 -12
- package/dist/martyrs/src/modules/icons/socials/youtube.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/socials/youtube.vue.js +21 -12
- package/dist/martyrs/src/modules/icons/socials/youtube.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/cards/AlbumCard.vue.cjs +3 -3
- package/dist/martyrs/src/modules/music/components/cards/AlbumCard.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/components/cards/AlbumCard.vue.js +3 -3
- package/dist/martyrs/src/modules/music/components/cards/AlbumCard.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/cards/ArtistCard.vue.cjs +3 -3
- package/dist/martyrs/src/modules/music/components/cards/ArtistCard.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/components/cards/ArtistCard.vue.js +3 -3
- package/dist/martyrs/src/modules/music/components/cards/ArtistCard.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/cards/PlaylistCard.vue.cjs +3 -3
- package/dist/martyrs/src/modules/music/components/cards/PlaylistCard.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/components/cards/PlaylistCard.vue.js +3 -3
- package/dist/martyrs/src/modules/music/components/cards/PlaylistCard.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/cards/TrackCard.vue.cjs +2 -2
- package/dist/martyrs/src/modules/music/components/cards/TrackCard.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/components/cards/TrackCard.vue.js +2 -2
- package/dist/martyrs/src/modules/music/components/cards/TrackCard.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/cards/TrackListCard.vue.cjs +162 -0
- package/dist/martyrs/src/modules/music/components/cards/TrackListCard.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/music/components/cards/TrackListCard.vue.js +162 -0
- package/dist/martyrs/src/modules/music/components/cards/TrackListCard.vue.js.map +1 -0
- package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.cjs +437 -0
- package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.js +437 -0
- package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.js.map +1 -0
- package/dist/martyrs/src/modules/music/components/{pages → forms}/ArtistForm.vue.cjs +140 -106
- package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/music/components/{pages → forms}/ArtistForm.vue.js +162 -128
- package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.js.map +1 -0
- package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.cjs +11 -11
- package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.js +23 -23
- package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/forms/SearchForm.vue.cjs +2 -2
- package/dist/martyrs/src/modules/music/components/forms/SearchForm.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/components/forms/SearchForm.vue.js +2 -2
- package/dist/martyrs/src/modules/music/components/forms/SearchForm.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.cjs +554 -0
- package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.js +554 -0
- package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.js.map +1 -0
- package/dist/martyrs/src/modules/music/components/layouts/MusicLayout.vue.cjs +57 -68
- package/dist/martyrs/src/modules/music/components/layouts/MusicLayout.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/components/layouts/MusicLayout.vue.js +58 -69
- package/dist/martyrs/src/modules/music/components/layouts/MusicLayout.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/pages/{AlbumDetail.vue.cjs → Album.vue.cjs} +47 -23
- package/dist/martyrs/src/modules/music/components/pages/Album.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/music/components/pages/{AlbumDetail.vue.js → Album.vue.js} +47 -23
- package/dist/martyrs/src/modules/music/components/pages/Album.vue.js.map +1 -0
- package/dist/martyrs/src/modules/music/components/pages/AlbumCreate.vue.cjs +14 -0
- package/dist/martyrs/src/modules/music/components/pages/AlbumCreate.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/music/components/pages/AlbumCreate.vue.js +14 -0
- package/dist/martyrs/src/modules/music/components/pages/AlbumCreate.vue.js.map +1 -0
- package/dist/martyrs/src/modules/music/components/pages/AlbumEdit.vue.cjs +23 -0
- package/dist/martyrs/src/modules/music/components/pages/AlbumEdit.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/music/components/pages/AlbumEdit.vue.js +23 -0
- package/dist/martyrs/src/modules/music/components/pages/AlbumEdit.vue.js.map +1 -0
- package/dist/martyrs/src/modules/music/components/pages/{ArtistDetail.vue.cjs → Artist.vue.cjs} +11 -11
- package/dist/martyrs/src/modules/music/components/pages/Artist.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/music/components/pages/{ArtistDetail.vue.js → Artist.vue.js} +11 -11
- package/dist/martyrs/src/modules/music/components/pages/Artist.vue.js.map +1 -0
- package/dist/martyrs/src/modules/music/components/pages/ArtistCreate.vue.cjs +14 -0
- package/dist/martyrs/src/modules/music/components/pages/ArtistCreate.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/music/components/pages/ArtistCreate.vue.js +14 -0
- package/dist/martyrs/src/modules/music/components/pages/ArtistCreate.vue.js.map +1 -0
- package/dist/martyrs/src/modules/music/components/pages/ArtistEdit.vue.cjs +23 -0
- package/dist/martyrs/src/modules/music/components/pages/ArtistEdit.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/music/components/pages/ArtistEdit.vue.js +23 -0
- package/dist/martyrs/src/modules/music/components/pages/ArtistEdit.vue.js.map +1 -0
- package/dist/martyrs/src/modules/music/components/pages/MusicHome.vue.cjs +94 -59
- package/dist/martyrs/src/modules/music/components/pages/MusicHome.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/components/pages/MusicHome.vue.js +95 -60
- package/dist/martyrs/src/modules/music/components/pages/MusicHome.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.cjs +168 -120
- package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.js +170 -122
- package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/pages/{PlaylistDetail.vue.cjs → Playlist.vue.cjs} +60 -36
- package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/music/components/pages/{PlaylistDetail.vue.js → Playlist.vue.js} +73 -49
- package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.js.map +1 -0
- package/dist/martyrs/src/modules/music/components/pages/PlaylistCreate.vue.cjs +14 -0
- package/dist/martyrs/src/modules/music/components/pages/PlaylistCreate.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/music/components/pages/PlaylistCreate.vue.js +14 -0
- package/dist/martyrs/src/modules/music/components/pages/PlaylistCreate.vue.js.map +1 -0
- package/dist/martyrs/src/modules/music/components/pages/PlaylistEdit.vue.cjs +23 -0
- package/dist/martyrs/src/modules/music/components/pages/PlaylistEdit.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/music/components/pages/PlaylistEdit.vue.js +23 -0
- package/dist/martyrs/src/modules/music/components/pages/PlaylistEdit.vue.js.map +1 -0
- package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.cjs +52 -28
- package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.js +52 -28
- package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/pages/{TrackDetail.vue.cjs → Track.vue.cjs} +37 -13
- package/dist/martyrs/src/modules/music/components/pages/Track.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/music/components/pages/{TrackDetail.vue.js → Track.vue.js} +38 -14
- package/dist/martyrs/src/modules/music/components/pages/Track.vue.js.map +1 -0
- package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.cjs +28 -0
- package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.js +28 -0
- package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.js.map +1 -0
- package/dist/martyrs/src/modules/music/components/pages/TrackEdit.vue.cjs +23 -0
- package/dist/martyrs/src/modules/music/components/pages/TrackEdit.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/music/components/pages/TrackEdit.vue.js +23 -0
- package/dist/martyrs/src/modules/music/components/pages/TrackEdit.vue.js.map +1 -0
- package/dist/martyrs/src/modules/music/components/player/MusicPlayer.vue.cjs +3 -3
- package/dist/martyrs/src/modules/music/components/player/MusicPlayer.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/components/player/MusicPlayer.vue.js +3 -3
- package/dist/martyrs/src/modules/music/components/player/MusicPlayer.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/music.client.cjs +31 -31
- package/dist/martyrs/src/modules/music/music.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/music.client.js +31 -31
- package/dist/martyrs/src/modules/music/music.client.js.map +1 -1
- package/dist/martyrs/src/modules/music/router/albums.cjs +34 -0
- package/dist/martyrs/src/modules/music/router/albums.cjs.map +1 -0
- package/dist/martyrs/src/modules/music/router/albums.js +34 -0
- package/dist/martyrs/src/modules/music/router/albums.js.map +1 -0
- package/dist/martyrs/src/modules/music/router/artists.cjs +34 -0
- package/dist/martyrs/src/modules/music/router/artists.cjs.map +1 -0
- package/dist/martyrs/src/modules/music/router/artists.js +34 -0
- package/dist/martyrs/src/modules/music/router/artists.js.map +1 -0
- package/dist/martyrs/src/modules/music/router/music.cjs +12 -64
- package/dist/martyrs/src/modules/music/router/music.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/router/music.js +12 -64
- package/dist/martyrs/src/modules/music/router/music.js.map +1 -1
- package/dist/martyrs/src/modules/music/router/playlists.cjs +34 -0
- package/dist/martyrs/src/modules/music/router/playlists.cjs.map +1 -0
- package/dist/martyrs/src/modules/music/router/playlists.js +34 -0
- package/dist/martyrs/src/modules/music/router/playlists.js.map +1 -0
- package/dist/martyrs/src/modules/music/router/tracks.cjs +34 -0
- package/dist/martyrs/src/modules/music/router/tracks.cjs.map +1 -0
- package/dist/martyrs/src/modules/music/router/tracks.js +34 -0
- package/dist/martyrs/src/modules/music/router/tracks.js.map +1 -0
- package/dist/martyrs/src/modules/music/store/artists.cjs +12 -6
- package/dist/martyrs/src/modules/music/store/artists.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/store/artists.js +12 -6
- package/dist/martyrs/src/modules/music/store/artists.js.map +1 -1
- package/dist/martyrs/src/modules/music/store/genres.cjs +123 -0
- package/dist/martyrs/src/modules/music/store/genres.cjs.map +1 -0
- package/dist/martyrs/src/modules/music/store/genres.js +123 -0
- package/dist/martyrs/src/modules/music/store/genres.js.map +1 -0
- package/dist/martyrs/src/modules/music/store/playlists.cjs +14 -6
- package/dist/martyrs/src/modules/music/store/playlists.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/store/playlists.js +14 -6
- package/dist/martyrs/src/modules/music/store/playlists.js.map +1 -1
- package/dist/martyrs/src/modules/music/store/tracks.cjs +6 -2
- package/dist/martyrs/src/modules/music/store/tracks.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/store/tracks.js +6 -2
- package/dist/martyrs/src/modules/music/store/tracks.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +1 -0
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +1 -0
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.cjs +1 -0
- package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.js +1 -0
- package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormCustomerDetails.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormCustomerDetails.vue.js +5 -5
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/Socials.vue.js +16 -16
- package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.js +15 -15
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +16 -16
- package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js +8 -8
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs +1 -0
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +1 -0
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js.map +1 -1
- package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.cjs +1 -0
- package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js +1 -0
- package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js.map +1 -1
- package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.cjs +1 -0
- package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js +1 -0
- package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/forms/ReorderSettingsForm.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/forms/ReorderSettingsForm.vue.js +8 -8
- package/dist/martyrs/src/modules/products/components/forms/StockAuditForm.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/forms/StockAuditForm.vue.js +12 -12
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +11 -11
- package/dist/martyrs/src/modules/products/components/pages/LeftoverEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/pages/LeftoverEdit.vue.js +10 -10
- package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +17 -17
- package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js +6 -6
- package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js +12 -12
- package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +16 -16
- package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js +4 -4
- package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.cjs +1 -1
- package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/blocks/SpotMemberModify.vue.cjs +1 -0
- package/dist/martyrs/src/modules/spots/components/blocks/SpotMemberModify.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/spots/components/blocks/SpotMemberModify.vue.js +1 -0
- package/dist/martyrs/src/modules/spots/components/blocks/SpotMemberModify.vue.js.map +1 -1
- package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.cjs +1 -0
- package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js +1 -0
- package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js.map +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +12 -12
- package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.js +7 -7
- package/dist/martyrs/src/modules/wallet/views/components/blocks/CardDeposit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/wallet/views/components/blocks/CardDeposit.vue.js +2 -2
- package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.js +2 -2
- package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.cjs +1 -1
- package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js +1 -1
- package/dist/martyrs.cjs.js +1 -1
- package/dist/martyrs.css +1 -1
- package/dist/martyrs.es.js +1 -1
- package/dist/music.server.cjs +1165 -551
- package/dist/music.server.js +1161 -547
- package/dist/orders.server.cjs +89 -4
- package/dist/orders.server.js +88 -3
- package/dist/organizations.server.cjs +1 -1
- package/dist/organizations.server.js +1 -1
- package/dist/products.server.cjs +3 -1093
- package/dist/products.server.js +2 -1092
- package/dist/rents.server.cjs +1 -1
- package/dist/rents.server.js +1 -1
- package/dist/style.css +121 -77
- package/dist/wallet.server.cjs +1 -1
- package/dist/wallet.server.js +1 -1
- package/package.json +1 -1
- package/src/components/Field/Field.vue +13 -8
- package/src/components/FieldBig/FieldBig.vue +3 -5
- package/src/components/FieldPhone/FieldPhone.vue +1 -1
- package/src/components/Media/Media.vue +1 -1
- package/src/components/Select/Select.vue +1 -1
- package/src/components/Status/Snack.vue +83 -0
- package/src/modules/auth/controllers/middlewares/authJwt.js +59 -6
- package/src/modules/globals/views/classes/globals.store.js +31 -66
- package/src/modules/globals/views/components/partials/FooterAlt.vue +363 -0
- package/src/modules/globals/views/store/globals.js +42 -0
- package/src/modules/globals/views/utils/query-serializer.js +182 -0
- package/src/modules/icons/components/IconSearchPopup.vue +254 -0
- package/src/modules/icons/entities/IconAddress.vue +17 -0
- package/src/modules/icons/entities/IconDate.vue +3 -3
- package/src/modules/icons/entities/IconEmail.vue +14 -0
- package/src/modules/icons/entities/IconMusic.vue +3 -3
- package/src/modules/icons/entities/IconPhone.vue +14 -0
- package/src/modules/icons/icons.client.js +85 -31
- package/src/modules/icons/icons.server.js +292 -0
- package/src/modules/icons/navigation/IconCross.vue +4 -16
- package/src/modules/icons/navigation/IconPause.vue +9 -24
- package/src/modules/icons/navigation/IconRefresh.vue +9 -24
- package/src/modules/icons/pages/IconsPage.vue +78 -2
- package/src/modules/icons/routes/icons.routes.js +81 -0
- package/src/modules/icons/socials/dribbble.vue +11 -2
- package/src/modules/icons/socials/facebook.vue +11 -2
- package/src/modules/icons/socials/instagram.vue +11 -4
- package/src/modules/icons/socials/line.vue +11 -2
- package/src/modules/icons/socials/linkedin.vue +11 -2
- package/src/modules/icons/socials/reddit.vue +10 -1
- package/src/modules/icons/socials/telegram.vue +11 -2
- package/src/modules/icons/socials/twitter.vue +11 -2
- package/src/modules/icons/socials/vk.vue +11 -2
- package/src/modules/icons/socials/whatsapp.vue +12 -0
- package/src/modules/icons/socials/youtube.vue +11 -2
- package/src/modules/music/.claude/settings.local.json +8 -0
- package/src/modules/music/CLAUDE.md +312 -0
- package/src/modules/music/components/SidebarMusic.vue +8 -8
- package/src/modules/music/components/cards/AlbumCard.vue +2 -2
- package/src/modules/music/components/cards/ArtistCard.vue +2 -2
- package/src/modules/music/components/cards/PlaylistCard.vue +2 -2
- package/src/modules/music/components/cards/TrackCard.vue +1 -1
- package/src/modules/music/components/cards/TrackListCard.vue +135 -0
- package/src/modules/music/components/forms/AlbumForm.vue +463 -0
- package/src/modules/music/components/{pages → forms}/ArtistForm.vue +127 -96
- package/src/modules/music/components/forms/PlaylistForm.vue +10 -10
- package/src/modules/music/components/forms/SearchForm.vue +1 -1
- package/src/modules/music/components/forms/TrackForm.vue +577 -0
- package/src/modules/music/components/layouts/MusicLayout.vue +35 -41
- package/src/modules/music/components/pages/{AlbumDetail.vue → Album.vue} +42 -20
- package/src/modules/music/components/pages/AlbumCreate.vue +7 -0
- package/src/modules/music/components/pages/AlbumEdit.vue +14 -0
- package/src/modules/music/components/pages/{ArtistDetail.vue → Artist.vue} +9 -9
- package/src/modules/music/components/pages/ArtistCreate.vue +7 -0
- package/src/modules/music/components/pages/ArtistEdit.vue +14 -0
- package/src/modules/music/components/pages/MusicHome.vue +86 -67
- package/src/modules/music/components/pages/MusicLibrary.vue +136 -105
- package/src/modules/music/components/pages/{PlaylistDetail.vue → Playlist.vue} +56 -34
- package/src/modules/music/components/pages/PlaylistCreate.vue +7 -0
- package/src/modules/music/components/pages/PlaylistEdit.vue +14 -0
- package/src/modules/music/components/pages/SearchResults.vue +49 -27
- package/src/modules/music/components/pages/{TrackDetail.vue → Track.vue} +36 -14
- package/src/modules/music/components/pages/TrackCreate.vue +23 -0
- package/src/modules/music/components/pages/TrackEdit.vue +14 -0
- package/src/modules/music/components/player/MusicPlayer.vue +2 -2
- package/src/modules/music/middlewares/albums.verifier.js +234 -0
- package/src/modules/music/middlewares/artists.verifier.js +213 -0
- package/src/modules/music/middlewares/genres.verifier.js +148 -0
- package/src/modules/music/middlewares/playlists.verifier.js +219 -0
- package/src/modules/music/middlewares/tracks.verifier.js +263 -0
- package/src/modules/music/music.client.js +31 -33
- package/src/modules/music/music.server.js +33 -26
- package/src/modules/music/router/albums.js +31 -0
- package/src/modules/music/router/artists.js +31 -0
- package/src/modules/music/router/music.js +14 -65
- package/src/modules/music/router/playlists.js +31 -0
- package/src/modules/music/router/tracks.js +31 -0
- package/src/modules/music/routes/albums.routes.js +126 -0
- package/src/modules/music/routes/artists.routes.js +171 -0
- package/src/modules/music/routes/genres.routes.js +118 -0
- package/src/modules/music/routes/playlists.routes.js +239 -0
- package/src/modules/music/routes/tracks.routes.js +149 -0
- package/src/modules/music/store/artists.js +17 -7
- package/src/modules/music/store/genres.js +150 -0
- package/src/modules/music/store/playlists.js +19 -6
- package/src/modules/music/store/tracks.js +9 -2
- package/dist/Media-DhpD64nT.cjs +0 -1
- package/dist/globals.crud-BQG1Lm0A.js +0 -90
- package/dist/globals.crud-Dv7UXbRM.cjs +0 -89
- package/dist/main-DKJqboZy.cjs +0 -11
- package/dist/martyrs/src/components/Chips/Chips.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/Chips/Chips.vue2.js.map +0 -1
- package/dist/martyrs/src/components/Field/Field.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Field/Field.vue.js.map +0 -1
- package/dist/martyrs/src/modules/music/components/forms/UploadForm.vue.cjs +0 -328
- package/dist/martyrs/src/modules/music/components/forms/UploadForm.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/forms/UploadForm.vue.js +0 -328
- package/dist/martyrs/src/modules/music/components/forms/UploadForm.vue.js.map +0 -1
- package/dist/martyrs/src/modules/music/components/lists/AlbumList.vue.cjs +0 -44
- package/dist/martyrs/src/modules/music/components/lists/AlbumList.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/lists/AlbumList.vue.js +0 -44
- package/dist/martyrs/src/modules/music/components/lists/AlbumList.vue.js.map +0 -1
- package/dist/martyrs/src/modules/music/components/lists/ArtistList.vue.cjs +0 -305
- package/dist/martyrs/src/modules/music/components/lists/ArtistList.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/lists/ArtistList.vue.js +0 -305
- package/dist/martyrs/src/modules/music/components/lists/ArtistList.vue.js.map +0 -1
- package/dist/martyrs/src/modules/music/components/lists/PlaylistList.vue.cjs +0 -44
- package/dist/martyrs/src/modules/music/components/lists/PlaylistList.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/lists/PlaylistList.vue.js +0 -44
- package/dist/martyrs/src/modules/music/components/lists/PlaylistList.vue.js.map +0 -1
- package/dist/martyrs/src/modules/music/components/lists/TrackList.vue.cjs +0 -199
- package/dist/martyrs/src/modules/music/components/lists/TrackList.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/lists/TrackList.vue.js +0 -199
- package/dist/martyrs/src/modules/music/components/lists/TrackList.vue.js.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/AlbumDetail.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/AlbumDetail.vue.js.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/ArtistDetail.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/ArtistDetail.vue.js.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/ArtistForm.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/ArtistForm.vue.js.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/ArtistManager.vue.cjs +0 -303
- package/dist/martyrs/src/modules/music/components/pages/ArtistManager.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/ArtistManager.vue.js +0 -303
- package/dist/martyrs/src/modules/music/components/pages/ArtistManager.vue.js.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/MusicUpload.vue.cjs +0 -50
- package/dist/martyrs/src/modules/music/components/pages/MusicUpload.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/MusicUpload.vue.js +0 -50
- package/dist/martyrs/src/modules/music/components/pages/MusicUpload.vue.js.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/PlaylistDetail.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/PlaylistDetail.vue.js.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/TrackDetail.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/TrackDetail.vue.js.map +0 -1
- package/src/modules/music/components/forms/UploadForm.vue +0 -313
- package/src/modules/music/components/lists/AlbumList.vue +0 -25
- package/src/modules/music/components/lists/ArtistList.vue +0 -280
- package/src/modules/music/components/lists/PlaylistList.vue +0 -25
- package/src/modules/music/components/lists/TrackList.vue +0 -175
- package/src/modules/music/components/pages/ArtistManager.vue +0 -277
- package/src/modules/music/components/pages/MusicUpload.vue +0 -44
- package/src/modules/music/controllers/album.controller.js +0 -82
- package/src/modules/music/controllers/artist.controller.js +0 -99
- package/src/modules/music/controllers/genre.controller.js +0 -63
- package/src/modules/music/controllers/music.controller.js +0 -145
- package/src/modules/music/controllers/playlist.controller.js +0 -146
- package/src/modules/music/routes/album.routes.js +0 -28
- package/src/modules/music/routes/artist.routes.js +0 -30
- package/src/modules/music/routes/genre.routes.js +0 -28
- package/src/modules/music/routes/music.routes.js +0 -106
- package/src/modules/music/routes/playlist.routes.js +0 -47
|
@@ -2,36 +2,37 @@
|
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
3
|
const vue = require("vue");
|
|
4
4
|
const vueRouter = require("vue-router");
|
|
5
|
-
const Field = require("../../../../components/Field/Field.
|
|
5
|
+
const Field = require("../../../../components/Field/Field.vue2.cjs");
|
|
6
|
+
const Block = require("../../../../components/Block/Block.vue.cjs");
|
|
6
7
|
const Button = require("../../../../components/Button/Button.vue.cjs");
|
|
7
8
|
const Checkbox = require("../../../../components/Checkbox/Checkbox.vue.cjs");
|
|
8
9
|
const Select = require("../../../../components/Select/Select.vue.cjs");
|
|
9
10
|
const UploadImage = require("../../../../components/UploadImage/UploadImage.vue.cjs");
|
|
10
|
-
|
|
11
|
+
;/* empty css */
|
|
12
|
+
const BlockMultiselect = require("../../../globals/views/components/blocks/BlockMultiselect.vue.cjs");
|
|
13
|
+
const IconCross = require("../../../icons/navigation/IconCross.vue.cjs");
|
|
11
14
|
const artists = require("../../store/artists.cjs");
|
|
15
|
+
const genres = require("../../store/genres.cjs");
|
|
12
16
|
const globals = require("../../../globals/views/store/globals.cjs");
|
|
13
17
|
const auth = require("../../../auth/views/store/auth.cjs");
|
|
14
18
|
const _hoisted_1 = { class: "pd-medium" };
|
|
15
19
|
const _hoisted_2 = { class: "h2 mn-b-medium" };
|
|
16
20
|
const _hoisted_3 = { class: "bg-light pd-medium radius-medium" };
|
|
17
21
|
const _hoisted_4 = { class: "cols-2 mobile:cols-1 gap-medium" };
|
|
18
|
-
const _hoisted_5 = {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
};
|
|
22
|
-
const
|
|
23
|
-
const
|
|
24
|
-
const
|
|
25
|
-
const
|
|
22
|
+
const _hoisted_5 = { class: "bg-light pd-medium radius-medium" };
|
|
23
|
+
const _hoisted_6 = { class: "cols-2 mobile:cols-1 gap-thin" };
|
|
24
|
+
const _hoisted_7 = { class: "flex-nowrap flex-v-center flex gap-thin" };
|
|
25
|
+
const _hoisted_8 = { class: "t-medium" };
|
|
26
|
+
const _hoisted_9 = ["onClick"];
|
|
27
|
+
const _hoisted_10 = { class: "flex-nowrap flex-v-center flex" };
|
|
28
|
+
const _hoisted_11 = { class: "w-100" };
|
|
29
|
+
const _hoisted_12 = { class: "t-medium" };
|
|
30
|
+
const _hoisted_13 = {
|
|
26
31
|
key: 0,
|
|
27
|
-
class: "
|
|
28
|
-
};
|
|
29
|
-
const _hoisted_10 = {
|
|
30
|
-
key: 1,
|
|
31
|
-
class: "flex flex-wrap gap-small mn-b-medium"
|
|
32
|
+
class: "t-small t-transp"
|
|
32
33
|
};
|
|
33
|
-
const
|
|
34
|
-
const
|
|
34
|
+
const _hoisted_14 = { class: "bg-light pd-medium radius-medium" };
|
|
35
|
+
const _hoisted_15 = { class: "flex flex-justify-between" };
|
|
35
36
|
const _sfc_main = {
|
|
36
37
|
__name: "ArtistForm",
|
|
37
38
|
props: {
|
|
@@ -64,44 +65,32 @@ const _sfc_main = {
|
|
|
64
65
|
instagram: ""
|
|
65
66
|
},
|
|
66
67
|
url: "",
|
|
67
|
-
|
|
68
|
+
genres: []
|
|
68
69
|
});
|
|
69
70
|
const validation = vue.reactive({
|
|
70
71
|
name: false,
|
|
71
72
|
bio: false
|
|
72
73
|
});
|
|
74
|
+
const urlManuallySet = vue.ref(false);
|
|
75
|
+
const generateSlug = (text) => {
|
|
76
|
+
if (!text) return "";
|
|
77
|
+
return text.toLowerCase().replace(/[^a-z0-9\s-]/g, "").replace(/\s+/g, "-").replace(/-+/g, "-").trim("-");
|
|
78
|
+
};
|
|
79
|
+
vue.watch(() => artist.name, (newName) => {
|
|
80
|
+
if (!urlManuallySet.value && !props.editMode) {
|
|
81
|
+
artist.url = generateSlug(newName);
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
vue.watch(() => artist.url, (newUrl, oldUrl) => {
|
|
85
|
+
if (newUrl !== generateSlug(artist.name)) {
|
|
86
|
+
urlManuallySet.value = true;
|
|
87
|
+
}
|
|
88
|
+
});
|
|
73
89
|
const statusOptions = [
|
|
74
90
|
"draft",
|
|
75
91
|
"published",
|
|
76
92
|
"archived"
|
|
77
93
|
];
|
|
78
|
-
const availableGenres = vue.ref([]);
|
|
79
|
-
const selectedGenres = vue.reactive({});
|
|
80
|
-
const isLoadingGenres = vue.ref(false);
|
|
81
|
-
const genreIds = vue.computed(() => {
|
|
82
|
-
return Object.keys(selectedGenres).filter((id) => selectedGenres[id]);
|
|
83
|
-
});
|
|
84
|
-
const fetchGenres = async () => {
|
|
85
|
-
isLoadingGenres.value = true;
|
|
86
|
-
try {
|
|
87
|
-
} catch (error) {
|
|
88
|
-
console.error("Error fetching genres:", error);
|
|
89
|
-
globals.actions.setError({
|
|
90
|
-
message: "Failed to load genres"
|
|
91
|
-
});
|
|
92
|
-
} finally {
|
|
93
|
-
isLoadingGenres.value = false;
|
|
94
|
-
}
|
|
95
|
-
};
|
|
96
|
-
const initializeSelectedGenres = (genreIds2) => {
|
|
97
|
-
if (!genreIds2 || !Array.isArray(genreIds2)) return;
|
|
98
|
-
for (const key in selectedGenres) {
|
|
99
|
-
delete selectedGenres[key];
|
|
100
|
-
}
|
|
101
|
-
genreIds2.forEach((id) => {
|
|
102
|
-
selectedGenres[id] = true;
|
|
103
|
-
});
|
|
104
|
-
};
|
|
105
94
|
const fetchArtist = async () => {
|
|
106
95
|
var _a, _b, _c, _d;
|
|
107
96
|
if (!props.url) return;
|
|
@@ -123,7 +112,7 @@ const _sfc_main = {
|
|
|
123
112
|
isVerified: fetchedArtist.isVerified || false,
|
|
124
113
|
status: fetchedArtist.status || "draft",
|
|
125
114
|
url: fetchedArtist.url || "",
|
|
126
|
-
|
|
115
|
+
genres: fetchedArtist.genres || [],
|
|
127
116
|
_id: fetchedArtist._id,
|
|
128
117
|
socials: {
|
|
129
118
|
telegram: ((_a = fetchedArtist.socials) == null ? void 0 : _a.telegram) || "",
|
|
@@ -132,7 +121,6 @@ const _sfc_main = {
|
|
|
132
121
|
instagram: ((_d = fetchedArtist.socials) == null ? void 0 : _d.instagram) || ""
|
|
133
122
|
}
|
|
134
123
|
});
|
|
135
|
-
initializeSelectedGenres(fetchedArtist.genre);
|
|
136
124
|
} catch (error) {
|
|
137
125
|
console.error("Error fetching artist:", error);
|
|
138
126
|
globals.actions.setError({
|
|
@@ -167,7 +155,7 @@ const _sfc_main = {
|
|
|
167
155
|
try {
|
|
168
156
|
const formData = {
|
|
169
157
|
...artist,
|
|
170
|
-
|
|
158
|
+
genres: artist.genres.map((genre) => genre._id || genre)
|
|
171
159
|
};
|
|
172
160
|
if (!props.editMode) {
|
|
173
161
|
formData.owner = {
|
|
@@ -187,7 +175,7 @@ const _sfc_main = {
|
|
|
187
175
|
}
|
|
188
176
|
setTimeout(() => {
|
|
189
177
|
router.push({
|
|
190
|
-
name: "artist
|
|
178
|
+
name: "artist",
|
|
191
179
|
params: { url: result.url }
|
|
192
180
|
});
|
|
193
181
|
}, 1e3);
|
|
@@ -205,9 +193,9 @@ const _sfc_main = {
|
|
|
205
193
|
});
|
|
206
194
|
};
|
|
207
195
|
vue.onMounted(async () => {
|
|
208
|
-
await fetchGenres();
|
|
209
196
|
if (props.editMode) {
|
|
210
197
|
await fetchArtist();
|
|
198
|
+
urlManuallySet.value = true;
|
|
211
199
|
}
|
|
212
200
|
});
|
|
213
201
|
return (_ctx, _cache) => {
|
|
@@ -218,25 +206,25 @@ const _sfc_main = {
|
|
|
218
206
|
class: "cols-1 gap-medium"
|
|
219
207
|
}, [
|
|
220
208
|
vue.createElementVNode("div", _hoisted_3, [
|
|
221
|
-
_cache[
|
|
209
|
+
_cache[17] || (_cache[17] = vue.createElementVNode("h3", { class: "h3 mn-b-medium" }, "Basic Information", -1)),
|
|
222
210
|
vue.createElementVNode("div", _hoisted_4, [
|
|
223
211
|
vue.createElementVNode("div", null, [
|
|
224
|
-
_cache[
|
|
212
|
+
_cache[15] || (_cache[15] = vue.createElementVNode("p", { class: "p-semi mn-b-small" }, "Artist Photo", -1)),
|
|
225
213
|
vue.createVNode(UploadImage.default, {
|
|
226
214
|
photo: artist.photoUrl,
|
|
227
215
|
"onUpdate:photo": _cache[0] || (_cache[0] = ($event) => artist.photoUrl = $event),
|
|
228
216
|
uploadPath: "artists/photos",
|
|
229
|
-
class: "w-100 h-15r mn-b-small",
|
|
217
|
+
class: "w-100 h-15r radius-small o-hidden mn-b-small",
|
|
230
218
|
onError: handleUploadError
|
|
231
219
|
}, null, 8, ["photo"])
|
|
232
220
|
]),
|
|
233
221
|
vue.createElementVNode("div", null, [
|
|
234
|
-
_cache[
|
|
222
|
+
_cache[16] || (_cache[16] = vue.createElementVNode("p", { class: "p-semi mn-b-small" }, "Cover Image", -1)),
|
|
235
223
|
vue.createVNode(UploadImage.default, {
|
|
236
224
|
photo: artist.coverUrl,
|
|
237
225
|
"onUpdate:photo": _cache[1] || (_cache[1] = ($event) => artist.coverUrl = $event),
|
|
238
226
|
uploadPath: "artists/covers",
|
|
239
|
-
class: "w-100 h-15r mn-b-small",
|
|
227
|
+
class: "w-100 h-15r radius-small o-hidden mn-b-small",
|
|
240
228
|
onError: handleUploadError
|
|
241
229
|
}, null, 8, ["photo"])
|
|
242
230
|
])
|
|
@@ -244,118 +232,164 @@ const _sfc_main = {
|
|
|
244
232
|
vue.createVNode(Field.default, {
|
|
245
233
|
field: artist.name,
|
|
246
234
|
"onUpdate:field": _cache[2] || (_cache[2] = ($event) => artist.name = $event),
|
|
247
|
-
label: "
|
|
235
|
+
label: "Name",
|
|
248
236
|
placeholder: "Enter artist name",
|
|
249
|
-
class: "mn-b-
|
|
237
|
+
class: "bg-white radius-small pd-small mn-b-thin",
|
|
250
238
|
validation: validation.name
|
|
251
239
|
}, null, 8, ["field", "validation"]),
|
|
240
|
+
vue.createVNode(Field.default, {
|
|
241
|
+
field: artist.url,
|
|
242
|
+
"onUpdate:field": _cache[3] || (_cache[3] = ($event) => artist.url = $event),
|
|
243
|
+
label: "URL",
|
|
244
|
+
placeholder: "Leave blank for auto-generation based on the artist name",
|
|
245
|
+
class: "bg-white radius-small pd-small mn-b-small"
|
|
246
|
+
}, null, 8, ["field"]),
|
|
252
247
|
vue.createVNode(Field.default, {
|
|
253
248
|
field: artist.bio,
|
|
254
|
-
"onUpdate:field": _cache[
|
|
249
|
+
"onUpdate:field": _cache[4] || (_cache[4] = ($event) => artist.bio = $event),
|
|
255
250
|
label: "Biography",
|
|
256
251
|
type: "textarea",
|
|
257
252
|
placeholder: "Enter artist biography",
|
|
258
|
-
class: "mn-b-
|
|
253
|
+
class: "bg-white radius-small pd-small mn-b-thin",
|
|
259
254
|
validation: validation.bio
|
|
260
255
|
}, null, 8, ["field", "validation"]),
|
|
261
256
|
vue.createVNode(Field.default, {
|
|
262
257
|
field: artist.location,
|
|
263
|
-
"onUpdate:field": _cache[
|
|
258
|
+
"onUpdate:field": _cache[5] || (_cache[5] = ($event) => artist.location = $event),
|
|
264
259
|
label: "Location",
|
|
265
260
|
placeholder: "e.g., Los Angeles, CA",
|
|
266
|
-
class: "mn-b-
|
|
261
|
+
class: "bg-white radius-small pd-small mn-b-thin"
|
|
267
262
|
}, null, 8, ["field"]),
|
|
268
263
|
vue.createVNode(Field.default, {
|
|
269
264
|
field: artist.website,
|
|
270
|
-
"onUpdate:field": _cache[
|
|
265
|
+
"onUpdate:field": _cache[6] || (_cache[6] = ($event) => artist.website = $event),
|
|
271
266
|
label: "Website",
|
|
272
267
|
placeholder: "https://example.com",
|
|
273
|
-
class: "mn-b-
|
|
274
|
-
}, null, 8, ["field"])
|
|
275
|
-
!artist.url && !__props.editMode ? (vue.openBlock(), vue.createBlock(Field.default, {
|
|
276
|
-
key: 0,
|
|
277
|
-
field: artist.url,
|
|
278
|
-
"onUpdate:field": _cache[6] || (_cache[6] = ($event) => artist.url = $event),
|
|
279
|
-
label: "Custom URL",
|
|
280
|
-
placeholder: "custom-artist-url",
|
|
281
|
-
class: "mn-b-small"
|
|
282
|
-
}, null, 8, ["field"])) : vue.createCommentVNode("", true),
|
|
283
|
-
!artist.url && !__props.editMode ? (vue.openBlock(), vue.createElementBlock("p", _hoisted_5, " Leave blank for auto-generation based on the artist name ")) : vue.createCommentVNode("", true)
|
|
268
|
+
class: "bg-white radius-small pd-small mn-b-thin"
|
|
269
|
+
}, null, 8, ["field"])
|
|
284
270
|
]),
|
|
285
|
-
vue.createElementVNode("div",
|
|
286
|
-
_cache[
|
|
287
|
-
vue.createElementVNode("div",
|
|
271
|
+
vue.createElementVNode("div", _hoisted_5, [
|
|
272
|
+
_cache[18] || (_cache[18] = vue.createElementVNode("h3", { class: "h3 mn-b-medium" }, "Social Media", -1)),
|
|
273
|
+
vue.createElementVNode("div", _hoisted_6, [
|
|
288
274
|
vue.createVNode(Field.default, {
|
|
289
275
|
field: artist.socials.telegram,
|
|
290
276
|
"onUpdate:field": _cache[7] || (_cache[7] = ($event) => artist.socials.telegram = $event),
|
|
291
277
|
label: "Telegram",
|
|
292
278
|
placeholder: "@username",
|
|
293
|
-
class: "
|
|
279
|
+
class: "bg-white radius-small pd-small"
|
|
294
280
|
}, null, 8, ["field"]),
|
|
295
281
|
vue.createVNode(Field.default, {
|
|
296
282
|
field: artist.socials.twitter,
|
|
297
283
|
"onUpdate:field": _cache[8] || (_cache[8] = ($event) => artist.socials.twitter = $event),
|
|
298
284
|
label: "Twitter",
|
|
299
285
|
placeholder: "@username",
|
|
300
|
-
class: "
|
|
286
|
+
class: "bg-white radius-small pd-small"
|
|
301
287
|
}, null, 8, ["field"]),
|
|
302
288
|
vue.createVNode(Field.default, {
|
|
303
289
|
field: artist.socials.facebook,
|
|
304
290
|
"onUpdate:field": _cache[9] || (_cache[9] = ($event) => artist.socials.facebook = $event),
|
|
305
291
|
label: "Facebook",
|
|
306
292
|
placeholder: "username or page-name",
|
|
307
|
-
class: "
|
|
293
|
+
class: "bg-white radius-small pd-small"
|
|
308
294
|
}, null, 8, ["field"]),
|
|
309
295
|
vue.createVNode(Field.default, {
|
|
310
296
|
field: artist.socials.instagram,
|
|
311
297
|
"onUpdate:field": _cache[10] || (_cache[10] = ($event) => artist.socials.instagram = $event),
|
|
312
298
|
label: "Instagram",
|
|
313
299
|
placeholder: "@username",
|
|
314
|
-
class: "
|
|
300
|
+
class: "bg-white radius-small pd-small"
|
|
315
301
|
}, null, 8, ["field"])
|
|
316
302
|
])
|
|
317
303
|
]),
|
|
318
|
-
vue.
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
304
|
+
vue.createVNode(Block.default, { title: "Genres" }, {
|
|
305
|
+
default: vue.withCtx(() => [
|
|
306
|
+
vue.createVNode(BlockMultiselect.default, {
|
|
307
|
+
modelValue: artist.genres,
|
|
308
|
+
"onUpdate:modelValue": _cache[11] || (_cache[11] = ($event) => artist.genres = $event),
|
|
309
|
+
placeholder: "Search genres...",
|
|
310
|
+
multiple: true,
|
|
311
|
+
transform: (item) => ({ _id: item._id, name: item.name }),
|
|
312
|
+
store: {
|
|
313
|
+
read: (options) => genres.actions.fetchGenres(options),
|
|
314
|
+
state: genres.state
|
|
315
|
+
},
|
|
316
|
+
options: {
|
|
317
|
+
rootOnly: false,
|
|
318
|
+
excludeChildren: false,
|
|
319
|
+
limit: 50
|
|
320
|
+
},
|
|
321
|
+
skeleton: {
|
|
322
|
+
hide: false,
|
|
323
|
+
horizontal: true,
|
|
324
|
+
class: "radius-small",
|
|
325
|
+
structure: [{
|
|
326
|
+
block: "text",
|
|
327
|
+
size: "large"
|
|
328
|
+
}]
|
|
329
|
+
},
|
|
330
|
+
states: {
|
|
331
|
+
empty: {
|
|
332
|
+
title: "No genres found",
|
|
333
|
+
description: "Try different search terms or create a new genre",
|
|
334
|
+
class: "radius-small"
|
|
335
|
+
}
|
|
336
|
+
},
|
|
337
|
+
key: "_id",
|
|
338
|
+
label: (item) => item.name,
|
|
339
|
+
classSearch: "bg-white radius-small",
|
|
340
|
+
classSelected: "bg-white pd-small radius-small",
|
|
341
|
+
classDropdown: "bg-white pd-small radius-medium bs-small",
|
|
342
|
+
classItem: "pd-small radius-small hover-bg-light cursor-pointer",
|
|
343
|
+
classFeed: "h-max-30r gap-thin flex-column flex o-scroll"
|
|
344
|
+
}, {
|
|
345
|
+
selected: vue.withCtx(({ item, clear }) => [
|
|
346
|
+
vue.createElementVNode("div", _hoisted_7, [
|
|
347
|
+
vue.createElementVNode("span", _hoisted_8, vue.toDisplayString((item == null ? void 0 : item.name) || item), 1),
|
|
348
|
+
vue.createElementVNode("button", {
|
|
349
|
+
onClick: vue.withModifiers(clear, ["stop"]),
|
|
350
|
+
class: "i-small pd-micro bg-red radius-extra flex-center flex aspect-1x1 hover-scale-1"
|
|
351
|
+
}, [
|
|
352
|
+
vue.createVNode(IconCross.default, { class: "i-micro fill-white" })
|
|
353
|
+
], 8, _hoisted_9)
|
|
354
|
+
])
|
|
355
|
+
]),
|
|
356
|
+
item: vue.withCtx(({ item }) => [
|
|
357
|
+
vue.createElementVNode("div", _hoisted_10, [
|
|
358
|
+
vue.createElementVNode("div", _hoisted_11, [
|
|
359
|
+
vue.createElementVNode("p", _hoisted_12, vue.toDisplayString(item.name), 1),
|
|
360
|
+
item.description ? (vue.openBlock(), vue.createElementBlock("p", _hoisted_13, vue.toDisplayString(item.description), 1)) : vue.createCommentVNode("", true)
|
|
361
|
+
])
|
|
362
|
+
])
|
|
363
|
+
]),
|
|
364
|
+
_: 1
|
|
365
|
+
}, 8, ["modelValue", "transform", "store", "label"])
|
|
366
|
+
]),
|
|
367
|
+
_: 1
|
|
368
|
+
}),
|
|
369
|
+
vue.createElementVNode("div", _hoisted_14, [
|
|
370
|
+
_cache[19] || (_cache[19] = vue.createElementVNode("h3", { class: "h3 mn-b-medium" }, "Publishing Status", -1)),
|
|
337
371
|
vue.createVNode(Select.default, {
|
|
338
372
|
select: artist.status,
|
|
339
|
-
"onUpdate:select": _cache[
|
|
373
|
+
"onUpdate:select": _cache[12] || (_cache[12] = ($event) => artist.status = $event),
|
|
340
374
|
options: statusOptions,
|
|
341
375
|
label: "Status",
|
|
342
|
-
class: "
|
|
376
|
+
class: "bg-white radius-small pd-small mn-b-thin"
|
|
343
377
|
}, null, 8, ["select"]),
|
|
344
378
|
vue.createVNode(Checkbox.default, {
|
|
345
379
|
active: artist.isVerified,
|
|
346
|
-
"onUpdate:active": _cache[
|
|
380
|
+
"onUpdate:active": _cache[13] || (_cache[13] = ($event) => artist.isVerified = $event),
|
|
347
381
|
label: "Verified Artist",
|
|
348
|
-
class: "mn-b-
|
|
382
|
+
class: "bg-white radius-small pd-small mn-b-thin"
|
|
349
383
|
}, null, 8, ["active"])
|
|
350
384
|
]),
|
|
351
|
-
vue.createElementVNode("div",
|
|
385
|
+
vue.createElementVNode("div", _hoisted_15, [
|
|
352
386
|
vue.createVNode(Button.default, {
|
|
353
|
-
onClick: _cache[
|
|
387
|
+
onClick: _cache[14] || (_cache[14] = ($event) => _ctx.$router.go(-1)),
|
|
354
388
|
class: "bg-grey-nano t-black",
|
|
355
389
|
showSucces: false,
|
|
356
390
|
showLoader: false
|
|
357
391
|
}, {
|
|
358
|
-
default: vue.withCtx(() => _cache[
|
|
392
|
+
default: vue.withCtx(() => _cache[20] || (_cache[20] = [
|
|
359
393
|
vue.createTextVNode(" Cancel ")
|
|
360
394
|
])),
|
|
361
395
|
_: 1
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArtistForm.vue.cjs","sources":["../../../../../../../src/modules/music/components/forms/ArtistForm.vue"],"sourcesContent":["<template>\n <div class=\"pd-medium\">\n <h2 class=\"h2 mn-b-medium\">{{ editMode ? 'Edit Artist' : 'Create Artist' }}</h2>\n \n <form @submit.prevent=\"submitForm\" class=\"cols-1 gap-medium\">\n <!-- Basic Info Section -->\n <div class=\"bg-light pd-medium radius-medium\">\n <h3 class=\"h3 mn-b-medium\">Basic Information</h3>\n \n <div class=\"cols-2 mobile:cols-1 gap-medium\">\n <!-- Artist Photo -->\n <div>\n <p class=\"p-semi mn-b-small\">Artist Photo</p>\n <UploadImage\n v-model:photo=\"artist.photoUrl\"\n uploadPath=\"artists/photos\"\n class=\"w-100 h-15r radius-small o-hidden mn-b-small\"\n @error=\"handleUploadError\"\n />\n </div>\n \n <!-- Artist Cover -->\n <div>\n <p class=\"p-semi mn-b-small\">Cover Image</p>\n <UploadImage\n v-model:photo=\"artist.coverUrl\"\n uploadPath=\"artists/covers\"\n class=\"w-100 h-15r radius-small o-hidden mn-b-small\"\n @error=\"handleUploadError\"\n />\n </div>\n </div>\n \n <!-- Name -->\n <Field\n v-model:field=\"artist.name\"\n label=\"Name\"\n placeholder=\"Enter artist name\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n :validation=\"validation.name\"\n />\n <!-- URL -->\n <Field\n v-model:field=\"artist.url\"\n label=\"URL\"\n placeholder=\"Leave blank for auto-generation based on the artist name\"\n class=\"bg-white radius-small pd-small mn-b-small\"\n />\n \n <!-- Bio -->\n <Field\n v-model:field=\"artist.bio\"\n label=\"Biography\"\n type=\"textarea\"\n placeholder=\"Enter artist biography\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n :validation=\"validation.bio\"\n />\n \n <!-- Location -->\n <Field\n v-model:field=\"artist.location\"\n label=\"Location\"\n placeholder=\"e.g., Los Angeles, CA\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n />\n \n <!-- Website -->\n <Field\n v-model:field=\"artist.website\"\n label=\"Website\"\n placeholder=\"https://example.com\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n />\n \n \n </div>\n \n <!-- Social Media Section -->\n <div class=\"bg-light pd-medium radius-medium\">\n <h3 class=\"h3 mn-b-medium\">Social Media</h3>\n \n <div class=\"cols-2 mobile:cols-1 gap-thin\">\n <!-- Telegram -->\n <Field\n v-model:field=\"artist.socials.telegram\"\n label=\"Telegram\"\n placeholder=\"@username\"\n class=\"bg-white radius-small pd-small\"\n />\n \n <!-- Twitter -->\n <Field\n v-model:field=\"artist.socials.twitter\"\n label=\"Twitter\"\n placeholder=\"@username\"\n class=\"bg-white radius-small pd-small\"\n />\n \n <!-- Facebook -->\n <Field\n v-model:field=\"artist.socials.facebook\"\n label=\"Facebook\"\n placeholder=\"username or page-name\"\n class=\"bg-white radius-small pd-small\"\n />\n \n <!-- Instagram -->\n <Field\n v-model:field=\"artist.socials.instagram\"\n label=\"Instagram\"\n placeholder=\"@username\"\n class=\"bg-white radius-small pd-small\"\n />\n </div>\n </div>\n \n <!-- Genres Section (assuming genres are available) -->\n <Block title=\"Genres\">\n <BlockMultiselect\n v-model=\"artist.genres\"\n placeholder=\"Search genres...\"\n :multiple=\"true\"\n :transform=\"(item) => ({ _id: item._id, name: item.name })\"\n :store=\"{\n read: (options) => genresStore.actions.fetchGenres(options),\n state: genresStore.state\n }\"\n :options=\"{\n rootOnly: false,\n excludeChildren: false,\n limit: 50\n }\"\n :skeleton=\"{\n hide: false,\n horizontal: true,\n class: 'radius-small',\n structure: [{ \n block: 'text', size: 'large'\n }]\n }\"\n :states=\"{\n empty: {\n title: 'No genres found',\n description: 'Try different search terms or create a new genre',\n class: 'radius-small'\n }\n }\"\n key=\"_id\"\n :label=\"item => item.name\"\n classSearch=\"bg-white radius-small\"\n classSelected=\"bg-white pd-small radius-small\"\n classDropdown=\"bg-white pd-small radius-medium bs-small\"\n classItem=\"pd-small radius-small hover-bg-light cursor-pointer\"\n classFeed=\"h-max-30r gap-thin flex-column flex o-scroll\"\n >\n <!-- Слот для выбранных жанров -->\n <template #selected=\"{ item, clear }\">\n <div class=\"flex-nowrap flex-v-center flex gap-thin\">\n <span class=\"t-medium\">{{ item?.name || item }}</span>\n <button \n @click.stop=\"clear\"\n class=\"i-small pd-micro bg-red radius-extra flex-center flex aspect-1x1 hover-scale-1\"\n >\n <IconCross class=\"i-micro fill-white\" />\n </button>\n </div>\n </template>\n \n <!-- Слот для элементов в списке -->\n <template #item=\"{ item }\">\n <div class=\"flex-nowrap flex-v-center flex\">\n <div class=\"w-100\">\n <p class=\"t-medium\">{{ item.name }}</p>\n <p v-if=\"item.description\" class=\"t-small t-transp\">{{ item.description }}</p>\n </div>\n </div>\n </template>\n </BlockMultiselect>\n </Block>\n \n <!-- Status Section -->\n <div class=\"bg-light pd-medium radius-medium\">\n <h3 class=\"h3 mn-b-medium\">Publishing Status</h3>\n \n <Select\n v-model:select=\"artist.status\"\n :options=\"statusOptions\"\n label=\"Status\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n />\n \n <Checkbox\n v-model:active=\"artist.isVerified\"\n label=\"Verified Artist\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n />\n </div>\n \n <!-- Submit Button -->\n <div class=\"flex flex-justify-between\">\n <Button\n @click=\"$router.go(-1)\"\n class=\"bg-grey-nano t-black\"\n :showSucces=\"false\"\n :showLoader=\"false\"\n >\n Cancel\n </Button>\n \n <Button\n :submit=\"submitForm\"\n class=\"bg-main t-black\"\n :text=\"{\n success: editMode ? 'Updated!' : 'Created!'\n }\"\n >\n {{ editMode ? 'Update Artist' : 'Create Artist' }}\n </Button>\n </div>\n </form>\n </div>\n</template>\n\n<script setup>\nimport { ref, reactive, onMounted, computed, watch } from 'vue';\nimport { useRouter, useRoute } from 'vue-router';\n\n// Import Martyrs components\nimport Field from '@martyrs/src/components/Field/Field.vue';\nimport Block from '@martyrs/src/components/Block/Block.vue';\nimport Button from '@martyrs/src/components/Button/Button.vue';\nimport Checkbox from '@martyrs/src/components/Checkbox/Checkbox.vue';\nimport Select from '@martyrs/src/components/Select/Select.vue';\nimport UploadImage from '@martyrs/src/components/UploadImage/UploadImage.vue';\nimport Loader from '@martyrs/src/components/Loader/Loader.vue';\n\n\nimport BlockMultiselect from '@martyrs/src/modules/globals/views/components/blocks/BlockMultiselect.vue';\nimport IconCross from '@martyrs/src/modules/icons/navigation/IconCross.vue';\n\n// Import store\nimport * as artistsStore from '../../store/artists';\nimport * as genresStore from '../../store/genres';\nimport * as globals from '@martyrs/src/modules/globals/views/store/globals.js';\nimport * as auth from '@martyrs/src/modules/auth/views/store/auth.js';\n\n// Props\nconst props = defineProps({\n editMode: {\n type: Boolean,\n default: false\n },\n url: {\n type: String,\n default: ''\n }\n});\n\n// Router and route\nconst router = useRouter();\nconst route = useRoute();\n\n// State\nconst artist = reactive({\n name: '',\n bio: '',\n photoUrl: '',\n coverUrl: '',\n website: '',\n location: '',\n isVerified: false,\n status: 'draft',\n socials: {\n telegram: '',\n twitter: '',\n facebook: '',\n instagram: ''\n },\n url: '',\n genres: []\n});\n\nconst validation = reactive({\n name: false,\n bio: false\n});\n\n// Track if URL was manually entered\nconst urlManuallySet = ref(false);\n\n// Function to generate URL-friendly slug from text\nconst generateSlug = (text) => {\n if (!text) return '';\n return text\n .toLowerCase()\n .replace(/[^a-z0-9\\s-]/g, '') // Remove special characters\n .replace(/\\s+/g, '-') // Replace spaces with hyphens\n .replace(/-+/g, '-') // Replace multiple hyphens with single\n .trim('-'); // Remove leading/trailing hyphens\n};\n\n// Watch for changes in artist name to auto-generate URL\nwatch(() => artist.name, (newName) => {\n // Only auto-generate if URL hasn't been manually set and we're not in edit mode\n if (!urlManuallySet.value && !props.editMode) {\n artist.url = generateSlug(newName);\n }\n});\n\n// Watch for manual changes to URL field\nwatch(() => artist.url, (newUrl, oldUrl) => {\n // If user manually changes URL, mark as manually set\n if (newUrl !== generateSlug(artist.name)) {\n urlManuallySet.value = true;\n }\n});\n\n// Status options\nconst statusOptions = [\n 'draft',\n 'published',\n 'archived'\n];\n\n\nconst fetchArtist = async () => {\n if (!props.url) return;\n \n try {\n const fetchedArtist = await artistsStore.actions.fetchArtistByUrl(props.url);\n \n if (!fetchedArtist) {\n globals.actions.setError({\n message: 'Artist not found'\n });\n return;\n }\n \n // Update local artist data\n Object.assign(artist, {\n name: fetchedArtist.name || '',\n bio: fetchedArtist.bio || '',\n photoUrl: fetchedArtist.photoUrl || '',\n coverUrl: fetchedArtist.coverUrl || '',\n website: fetchedArtist.website || '',\n location: fetchedArtist.location || '',\n isVerified: fetchedArtist.isVerified || false,\n status: fetchedArtist.status || 'draft',\n url: fetchedArtist.url || '',\n genres: fetchedArtist.genres || [],\n _id: fetchedArtist._id,\n socials: {\n telegram: fetchedArtist.socials?.telegram || '',\n twitter: fetchedArtist.socials?.twitter || '',\n facebook: fetchedArtist.socials?.facebook || '',\n instagram: fetchedArtist.socials?.instagram || ''\n }\n });\n \n } catch (error) {\n console.error('Error fetching artist:', error);\n globals.actions.setError({\n message: 'Failed to load artist details'\n });\n }\n};\n\nconst validateForm = () => {\n let isValid = true;\n \n // Validate name\n if (!artist.name.trim()) {\n validation.name = {\n message: 'Artist name is required'\n };\n isValid = false;\n } else {\n validation.name = false;\n }\n \n // Validate bio\n if (artist.bio && artist.bio.length > 2000) {\n validation.bio = {\n message: 'Biography is too long (max 2000 characters)'\n };\n isValid = false;\n } else {\n validation.bio = false;\n }\n \n return isValid;\n};\n\nconst submitForm = async () => {\n if (!validateForm()) {\n return;\n }\n \n try {\n // Prepare data for submission\n const formData = {\n ...artist,\n genres: artist.genres.map(genre => genre._id || genre)\n };\n \n // Add ownership data if creating new artist\n if (!props.editMode) {\n formData.owner = {\n type: 'user',\n target: auth.state.user._id\n };\n formData.creator = {\n type: 'user',\n target: auth.state.user._id\n };\n }\n \n let result;\n if (props.editMode) {\n result = await artistsStore.actions.updateArtist(formData);\n } else {\n result = await artistsStore.actions.createArtist(formData);\n }\n \n // Navigate to artist detail page\n setTimeout(() => {\n router.push({\n name: 'artist',\n params: { url: result.url }\n });\n }, 1000);\n \n } catch (error) {\n console.error('Error saving artist:', error);\n globals.actions.setError({\n message: 'Failed to save artist'\n });\n }\n};\n\nconst handleUploadError = (error) => {\n console.error('Upload error:', error);\n globals.actions.setError({\n message: 'Error uploading image'\n });\n};\n\n// Lifecycle hooks\nonMounted(async () => {\n if (props.editMode) {\n await fetchArtist();\n // Mark URL as manually set in edit mode to prevent auto-generation\n urlManuallySet.value = true;\n }\n});\n</script>"],"names":["useRouter","useRoute","reactive","ref","watch","artistsStore.actions","globals.actions","auth.state","onMounted"],"mappings":"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"}
|