@ozdao/martyrs 0.2.551 → 0.2.553
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/__vite-browser-external-l0sNRNKZ.js +1 -0
- package/dist/builder.js +86 -4
- package/dist/{main-BkG7nL3U.js → main-Bywjlw2D.js} +1891 -1861
- package/dist/martyrs/src/components/Button/Button.vue2.js +1 -1
- package/dist/martyrs/src/components/Dropdown/Dropdown.vue.js +4 -2
- package/dist/martyrs/src/components/Dropdown/Dropdown.vue.js.map +1 -1
- package/dist/martyrs/src/components/Feed/Carousel.vue.js +1 -1
- package/dist/martyrs/src/components/Feed/Feed.vue.js +1 -1
- package/dist/martyrs/src/components/FieldPhone/click-outside.js +3 -1
- package/dist/martyrs/src/components/FieldPhone/click-outside.js.map +1 -1
- package/dist/martyrs/src/components/FieldTags/BlockTags.vue.js +1 -1
- package/dist/martyrs/src/components/FieldTags/{FieldTags.vue2.js → FieldTags.vue.js} +2 -2
- package/dist/martyrs/src/components/FieldTags/FieldTags.vue.js.map +1 -0
- package/dist/martyrs/src/components/Loader/{Loader.vue2.js → Loader.vue.js} +2 -2
- package/dist/martyrs/src/components/Loader/Loader.vue.js.map +1 -0
- package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue.js +1 -1
- package/dist/martyrs/src/components/Media/Media.vue.js +19 -6
- package/dist/martyrs/src/components/Media/Media.vue.js.map +1 -1
- package/dist/martyrs/src/components/SelectMulti/{SelectMulti.vue2.js → SelectMulti.vue.js} +2 -2
- package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue.js.map +1 -0
- package/dist/martyrs/src/components/UploadImage/{UploadImage.vue2.js → UploadImage.vue.js} +3 -3
- package/dist/martyrs/src/components/UploadImage/UploadImage.vue.js.map +1 -0
- package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.js +4 -3
- package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.js.map +1 -1
- package/dist/martyrs/src/modules/auth/auth.client.js +13 -1
- package/dist/martyrs/src/modules/auth/auth.client.js.map +1 -1
- package/dist/martyrs/src/modules/auth/auth.router.js +4 -12
- package/dist/martyrs/src/modules/auth/auth.router.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.js +12 -10
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/store/auth.js +17 -10
- package/dist/martyrs/src/modules/auth/views/store/auth.js.map +1 -1
- package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.js +1 -1
- package/dist/martyrs/src/modules/chats/store/chat.store.js +9 -9
- package/dist/martyrs/src/modules/chats/store/chat.store.js.map +1 -1
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +1 -1
- package/dist/martyrs/src/modules/community/components/pages/Posts.vue.js +10 -9
- package/dist/martyrs/src/modules/community/components/pages/Posts.vue.js.map +1 -1
- package/dist/martyrs/src/modules/constructor/components/elements/Card.vue.js +1 -1
- package/dist/martyrs/src/modules/core/core.client.js +29 -30
- package/dist/martyrs/src/modules/core/core.client.js.map +1 -1
- package/dist/martyrs/src/modules/core/views/classes/core.app.js +62 -22
- package/dist/martyrs/src/modules/core/views/classes/core.app.js.map +1 -1
- package/dist/martyrs/src/modules/core/views/classes/{core.i18n.js → i18n.manager.js} +1 -1
- package/dist/martyrs/src/modules/core/views/classes/i18n.manager.js.map +1 -0
- package/dist/martyrs/src/modules/core/views/classes/{module-registry.js → module.manager.js} +47 -8
- package/dist/martyrs/src/modules/core/views/classes/module.manager.js.map +1 -0
- package/dist/martyrs/src/modules/core/views/classes/{session.js → session.manager.js} +3 -3
- package/dist/martyrs/src/modules/core/views/classes/session.manager.js.map +1 -0
- package/dist/martyrs/src/modules/core/views/classes/{core.store.js → store.manager.js} +3 -3
- package/dist/martyrs/src/modules/core/views/classes/store.manager.js.map +1 -0
- package/dist/martyrs/src/modules/core/views/classes/{core.websocket.js → ws.manager.js} +5 -4
- package/dist/martyrs/src/modules/core/views/classes/ws.manager.js.map +1 -0
- package/dist/martyrs/src/modules/core/views/components/blocks/CardHeader.vue.js +1 -1
- package/dist/martyrs/src/modules/core/views/components/blocks/HelpCard.vue.js +4 -3
- package/dist/martyrs/src/modules/core/views/components/blocks/HelpCard.vue.js.map +1 -1
- package/dist/martyrs/src/modules/core/views/components/blocks/PopupDateSelector.vue.js +1 -1
- package/dist/martyrs/src/modules/core/views/components/layouts/App.vue.js +3 -2
- package/dist/martyrs/src/modules/core/views/components/layouts/App.vue.js.map +1 -1
- package/dist/martyrs/src/modules/core/views/components/layouts/Client.vue.js +34 -25
- package/dist/martyrs/src/modules/core/views/components/layouts/Client.vue.js.map +1 -1
- package/dist/martyrs/src/modules/core/views/components/partials/Header.vue.js +10 -9
- package/dist/martyrs/src/modules/core/views/components/partials/Header.vue.js.map +1 -1
- package/dist/martyrs/src/modules/core/views/components/partials/LocationSelection.vue.js +6 -5
- package/dist/martyrs/src/modules/core/views/components/partials/LocationSelection.vue.js.map +1 -1
- package/dist/martyrs/src/modules/core/views/components/partials/Navigation.vue.js +10 -9
- package/dist/martyrs/src/modules/core/views/components/partials/Navigation.vue.js.map +1 -1
- package/dist/martyrs/src/modules/core/views/components/partials/NavigationBar.vue.js +7 -6
- package/dist/martyrs/src/modules/core/views/components/partials/NavigationBar.vue.js.map +1 -1
- package/dist/martyrs/src/modules/core/views/components/partials/Sidebar.vue.js +28 -9
- package/dist/martyrs/src/modules/core/views/components/partials/Sidebar.vue.js.map +1 -1
- package/dist/martyrs/src/modules/core/views/components/sections/Walkthrough.vue.js +1 -6
- package/dist/martyrs/src/modules/core/views/components/sections/Walkthrough.vue.js.map +1 -1
- package/dist/martyrs/src/modules/core/views/mixins/mixins.js +7 -6
- package/dist/martyrs/src/modules/core/views/mixins/mixins.js.map +1 -1
- package/dist/martyrs/src/modules/core/views/plugins/date-picker.plugin.js +6 -5
- package/dist/martyrs/src/modules/core/views/plugins/date-picker.plugin.js.map +1 -1
- package/dist/martyrs/src/modules/core/views/store/core.store.js +157 -140
- package/dist/martyrs/src/modules/core/views/store/core.store.js.map +1 -1
- package/dist/martyrs/src/modules/core/views/utils/vue-app-renderer.js +51 -5
- package/dist/martyrs/src/modules/core/views/utils/vue-app-renderer.js.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +3 -3
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/sections/EditTickets.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/sections/Feed.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/sections/List.vue.js +1 -1
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +1 -1
- package/dist/martyrs/src/modules/gallery/store/gallery.js +2 -2
- package/dist/martyrs/src/modules/gallery/store/gallery.js.map +1 -1
- package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.js +6 -5
- package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.js.map +1 -1
- package/dist/martyrs/src/modules/inventory/store/stock.alerts.store.js +2 -2
- package/dist/martyrs/src/modules/inventory/store/stock.alerts.store.js.map +1 -1
- package/dist/martyrs/src/modules/landing/landing.client.js +1 -1
- package/dist/martyrs/src/modules/landing/landing.client.js.map +1 -1
- package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.js +4 -3
- package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.js.map +1 -1
- package/dist/martyrs/src/modules/marketplace/views/components/pages/Catalog.vue.js +9 -8
- package/dist/martyrs/src/modules/marketplace/views/components/pages/Catalog.vue.js.map +1 -1
- package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/cards/TrackListCard.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/cards/TrackListCard.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.js +7 -6
- package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.js +8 -7
- package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.js +7 -6
- package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.js +7 -6
- package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Album.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Artist.vue.js +4 -3
- package/dist/martyrs/src/modules/music/components/pages/Artist.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.js +5 -4
- package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Track.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.js +1 -1
- package/dist/martyrs/src/modules/music/music.client.js +4 -4
- package/dist/martyrs/src/modules/music/music.client.js.map +1 -1
- package/dist/martyrs/src/modules/music/music.router.js +2 -4
- package/dist/martyrs/src/modules/music/music.router.js.map +1 -1
- package/dist/martyrs/src/modules/music/store/albums.js +2 -2
- package/dist/martyrs/src/modules/music/store/albums.js.map +1 -1
- package/dist/martyrs/src/modules/music/store/artists.js +2 -2
- package/dist/martyrs/src/modules/music/store/artists.js.map +1 -1
- package/dist/martyrs/src/modules/music/store/genres.js +2 -2
- package/dist/martyrs/src/modules/music/store/genres.js.map +1 -1
- package/dist/martyrs/src/modules/music/store/player.js +11 -11
- package/dist/martyrs/src/modules/music/store/player.js.map +1 -1
- package/dist/martyrs/src/modules/music/store/playlists.js +2 -2
- package/dist/martyrs/src/modules/music/store/playlists.js.map +1 -1
- package/dist/martyrs/src/modules/music/store/tracks.js +2 -2
- package/dist/martyrs/src/modules/music/store/tracks.js.map +1 -1
- package/dist/martyrs/src/modules/notifications/components/layouts/NotificationsLayout.vue.js +7 -7
- package/dist/martyrs/src/modules/notifications/components/layouts/NotificationsLayout.vue.js.map +1 -1
- package/dist/martyrs/src/modules/notifications/notifications.client.js +17 -8
- package/dist/martyrs/src/modules/notifications/notifications.client.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue.js +5 -4
- package/dist/martyrs/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +20 -18
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js +36 -35
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +3 -2
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.js +8 -7
- package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +6 -5
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/orders.client.js +1 -1
- package/dist/martyrs/src/modules/orders/orders.client.js.map +1 -1
- package/dist/martyrs/src/modules/orders/store/applications.js +2 -2
- package/dist/martyrs/src/modules/orders/store/applications.js.map +1 -1
- package/dist/martyrs/src/modules/orders/store/customers.store.js +2 -2
- package/dist/martyrs/src/modules/orders/store/customers.store.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.js +2 -34
- package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.js +5 -4
- package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.js +8 -7
- package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.js +2 -33
- package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +10 -38
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +8 -31
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/organizations.client.js +12 -0
- package/dist/martyrs/src/modules/organizations/organizations.client.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/store/departments.store.js +2 -2
- package/dist/martyrs/src/modules/organizations/store/departments.store.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/store/invites.store.js +2 -2
- package/dist/martyrs/src/modules/organizations/store/invites.store.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/store/memberships.store.js +2 -2
- package/dist/martyrs/src/modules/organizations/store/memberships.store.js.map +1 -1
- package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/elements/Image360.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/elements/{THC.vue2.js → THC.vue.js} +2 -2
- package/dist/martyrs/src/modules/products/components/elements/THC.vue.js.map +1 -0
- package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js +13 -12
- package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +7 -6
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +3 -2
- package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/ProductRecommmendation.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +9 -8
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.js +7 -6
- package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.js +7 -6
- package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/ProductsPopular.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.js +1 -7
- package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +1 -1
- package/dist/martyrs/src/modules/products/store/variants.store.js +2 -2
- package/dist/martyrs/src/modules/products/store/variants.store.js.map +1 -1
- package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js +8 -7
- package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js.map +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js +16 -15
- package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js.map +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/Spots.vue.js +10 -9
- package/dist/martyrs/src/modules/spots/components/pages/Spots.vue.js.map +1 -1
- package/dist/martyrs.css +1 -1
- package/dist/martyrs.es.js +1 -1
- package/dist/style.css +70 -41
- package/dist/{web-DvmEV7zh.js → web-i9sCtYxS.js} +1 -1
- package/package.json +1 -1
- package/src/builder/modes/ssr.prod.js +57 -3
- package/src/builder/modes/ssr.rspack.dev.js +63 -7
- package/src/builder/rspack/rspack.config.ssr.client.js +18 -5
- package/src/components/Dropdown/Dropdown.vue +4 -2
- package/src/components/FieldPhone/click-outside.js +3 -1
- package/src/components/Media/Media.vue +84 -56
- package/src/components/UploadImageMultiple/UploadImageMultiple.vue +2 -1
- package/src/modules/auth/auth.client.js +19 -1
- package/src/modules/auth/auth.router.js +5 -11
- package/src/modules/auth/views/components/pages/ProfileEdit.old.vue +3 -1
- package/src/modules/auth/views/components/pages/ProfileEditAccount.vue +5 -3
- package/src/modules/auth/views/store/auth.js +22 -13
- package/src/modules/chats/store/chat.store.js +10 -10
- package/src/modules/community/components/pages/Posts.vue +2 -1
- package/src/modules/core/TASK.MD +3 -1
- package/src/modules/core/core.client.js +15 -10
- package/src/modules/core/views/classes/core.app.js +94 -82
- package/src/modules/core/views/classes/{module-registry.js → module.manager.js} +70 -13
- package/src/modules/core/views/classes/{session.js → session.manager.js} +2 -2
- package/src/modules/core/views/classes/{core.store.js → store.manager.js} +2 -2
- package/src/modules/core/views/classes/{core.websocket.js → ws.manager.js} +4 -3
- package/src/modules/core/views/components/blocks/HelpCard.vue +4 -2
- package/src/modules/core/views/components/layouts/App.vue +6 -4
- package/src/modules/core/views/components/layouts/Client.vue +52 -35
- package/src/modules/core/views/components/partials/Header.vue +9 -7
- package/src/modules/core/views/components/partials/LocationSelection.vue +7 -5
- package/src/modules/core/views/components/partials/Navigation.vue +5 -4
- package/src/modules/core/views/components/partials/NavigationBar.vue +5 -3
- package/src/modules/core/views/components/partials/Sidebar.vue +56 -9
- package/src/modules/core/views/mixins/mixins.js +3 -2
- package/src/modules/core/views/plugins/date-picker.plugin.js +6 -5
- package/src/modules/core/views/store/core.store.js +218 -186
- package/src/modules/core/views/utils/vue-app-renderer.js +78 -8
- package/src/modules/gallery/store/gallery.js +2 -2
- package/src/modules/governance/views/components/pages/VotingCreate.vue +2 -2
- package/src/modules/inventory/components/pages/InventoryEdit.vue +3 -2
- package/src/modules/inventory/store/stock.alerts.store.js +2 -2
- package/src/modules/landing/landing.client.js +1 -1
- package/src/modules/marketplace/views/components/layouts/Marketplace.vue +2 -1
- package/src/modules/marketplace/views/components/pages/Catalog.vue +2 -1
- package/src/modules/music/components/cards/TrackListCard.vue +1 -1
- package/src/modules/music/components/forms/AlbumForm.vue +8 -6
- package/src/modules/music/components/forms/ArtistForm.vue +8 -6
- package/src/modules/music/components/forms/PlaylistForm.vue +8 -6
- package/src/modules/music/components/forms/TrackForm.vue +8 -6
- package/src/modules/music/components/pages/Artist.vue +5 -3
- package/src/modules/music/components/pages/Playlist.vue +6 -4
- package/src/modules/music/music.client.js +4 -4
- package/src/modules/music/music.router.js +4 -1
- package/src/modules/music/store/albums.js +2 -2
- package/src/modules/music/store/artists.js +2 -2
- package/src/modules/music/store/genres.js +2 -2
- package/src/modules/music/store/player.js +11 -11
- package/src/modules/music/store/playlists.js +2 -2
- package/src/modules/music/store/tracks.js +2 -2
- package/src/modules/notifications/components/layouts/NotificationsLayout.vue +7 -7
- package/src/modules/notifications/notifications.client.js +22 -8
- package/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue +6 -4
- package/src/modules/orders/components/pages/OrderBackoffice.vue +21 -19
- package/src/modules/orders/components/pages/OrderCreate.vue +13 -12
- package/src/modules/orders/components/pages/OrderCreateBackoffice.vue +6 -4
- package/src/modules/orders/components/partials/ShopCart.vue +8 -7
- package/src/modules/orders/components/sections/FormDelivery.vue +8 -6
- package/src/modules/orders/orders.client.js +1 -1
- package/src/modules/orders/store/applications.js +2 -2
- package/src/modules/orders/store/customers.store.js +2 -2
- package/src/modules/organizations/CLAUDE.md +4 -4
- package/src/modules/organizations/components/blocks/CardOrganization.vue +2 -2
- package/src/modules/organizations/components/forms/AddExistingMembersForm.vue +7 -5
- package/src/modules/organizations/components/forms/DepartmentForm.vue +7 -5
- package/src/modules/organizations/components/pages/Members.vue +4 -2
- package/src/modules/organizations/components/pages/Organization.vue +4 -2
- package/src/modules/organizations/organizations.client.js +18 -0
- package/src/modules/organizations/store/departments.store.js +2 -2
- package/src/modules/organizations/store/invites.store.js +2 -2
- package/src/modules/organizations/store/memberships.store.js +2 -2
- package/src/modules/pages/views/store/pages.store.js +2 -2
- package/src/modules/products/components/pages/Categories.vue +6 -5
- package/src/modules/products/components/pages/CategoryEdit.vue +6 -5
- package/src/modules/products/components/pages/Product.vue +1 -1
- package/src/modules/products/components/pages/ProductEdit.vue +2 -1
- package/src/modules/products/components/pages/Products.vue +8 -7
- package/src/modules/products/components/sections/EditIngredients.vue +7 -6
- package/src/modules/products/components/sections/EditRecommended.vue +4 -3
- package/src/modules/products/components/sections/ProductsPopular.vue +2 -2
- package/src/modules/products/components/sections/ProductsRecommended.vue +1 -7
- package/src/modules/products/products.router.js +0 -1
- package/src/modules/products/store/variants.store.js +2 -2
- package/src/modules/spots/components/layouts/Spots.vue +6 -4
- package/src/modules/spots/components/pages/Map.vue +9 -7
- package/src/modules/spots/components/pages/Spots.vue +6 -4
- package/dist/_virtual/_commonjsHelpers.cjs +0 -9
- package/dist/_virtual/_commonjsHelpers.cjs.map +0 -1
- package/dist/_virtual/_plugin-vue_export-helper.cjs +0 -11
- package/dist/_virtual/_plugin-vue_export-helper.cjs.map +0 -1
- package/dist/_virtual/alignment-pattern.cjs +0 -5
- package/dist/_virtual/alignment-pattern.cjs.map +0 -1
- package/dist/_virtual/browser.cjs +0 -8
- package/dist/_virtual/browser.cjs.map +0 -1
- package/dist/_virtual/browser2.cjs +0 -5
- package/dist/_virtual/browser2.cjs.map +0 -1
- package/dist/_virtual/canvas.cjs +0 -5
- package/dist/_virtual/canvas.cjs.map +0 -1
- package/dist/_virtual/dayjs.min.cjs +0 -8
- package/dist/_virtual/dayjs.min.cjs.map +0 -1
- package/dist/_virtual/dayjs.min2.cjs +0 -5
- package/dist/_virtual/dayjs.min2.cjs.map +0 -1
- package/dist/_virtual/dijkstra.cjs +0 -5
- package/dist/_virtual/dijkstra.cjs.map +0 -1
- package/dist/_virtual/error-correction-code.cjs +0 -5
- package/dist/_virtual/error-correction-code.cjs.map +0 -1
- package/dist/_virtual/error-correction-level.cjs +0 -5
- package/dist/_virtual/error-correction-level.cjs.map +0 -1
- package/dist/_virtual/finder-pattern.cjs +0 -5
- package/dist/_virtual/finder-pattern.cjs.map +0 -1
- package/dist/_virtual/format-info.cjs +0 -5
- package/dist/_virtual/format-info.cjs.map +0 -1
- package/dist/_virtual/galois-field.cjs +0 -5
- package/dist/_virtual/galois-field.cjs.map +0 -1
- package/dist/_virtual/index.cjs +0 -8
- package/dist/_virtual/index.cjs.map +0 -1
- package/dist/_virtual/index2.cjs +0 -5
- package/dist/_virtual/index2.cjs.map +0 -1
- package/dist/_virtual/mask-pattern.cjs +0 -5
- package/dist/_virtual/mask-pattern.cjs.map +0 -1
- package/dist/_virtual/mode.cjs +0 -5
- package/dist/_virtual/mode.cjs.map +0 -1
- package/dist/_virtual/polynomial.cjs +0 -5
- package/dist/_virtual/polynomial.cjs.map +0 -1
- package/dist/_virtual/qrcode.cjs +0 -5
- package/dist/_virtual/qrcode.cjs.map +0 -1
- package/dist/_virtual/regex.cjs +0 -5
- package/dist/_virtual/regex.cjs.map +0 -1
- package/dist/_virtual/segments.cjs +0 -5
- package/dist/_virtual/segments.cjs.map +0 -1
- package/dist/_virtual/svg-tag.cjs +0 -5
- package/dist/_virtual/svg-tag.cjs.map +0 -1
- package/dist/_virtual/utils.cjs +0 -5
- package/dist/_virtual/utils.cjs.map +0 -1
- package/dist/_virtual/utils2.cjs +0 -5
- package/dist/_virtual/utils2.cjs.map +0 -1
- package/dist/_virtual/version-check.cjs +0 -5
- package/dist/_virtual/version-check.cjs.map +0 -1
- package/dist/_virtual/version.cjs +0 -5
- package/dist/_virtual/version.cjs.map +0 -1
- package/dist/_virtual/weekOfYear.cjs +0 -8
- package/dist/_virtual/weekOfYear.cjs.map +0 -1
- package/dist/_virtual/weekOfYear2.cjs +0 -5
- package/dist/_virtual/weekOfYear2.cjs.map +0 -1
- package/dist/abac-gNSxNkX1.cjs +0 -1029
- package/dist/addUserStatusFields-7-66sf45.cjs +0 -86
- package/dist/auth.server.cjs +0 -529
- package/dist/authJwt-BIZ2GIfT.cjs +0 -75
- package/dist/builder.cjs +0 -1142
- package/dist/chats.server.cjs +0 -323
- package/dist/common.schema-BtXLULba.cjs +0 -12
- package/dist/community.server.cjs +0 -840
- package/dist/core.abac-DqDvtkHR.cjs +0 -297
- package/dist/core.logger-BuW7JHMY.cjs +0 -165
- package/dist/core.server.cjs +0 -135
- package/dist/core.verifier-Bi-XLEi9.cjs +0 -651
- package/dist/core.websocket-Cm72lPCs.cjs +0 -374
- package/dist/credentials.schema-DVXaFnXl.cjs +0 -9
- package/dist/crud-CQ3ICbm7.cjs +0 -1176
- package/dist/engagement.schema-DHw4iY_W.cjs +0 -23
- package/dist/events.server.cjs +0 -1410
- package/dist/files.server.cjs +0 -292
- package/dist/gallery.server.cjs +0 -270
- package/dist/index-BFxqqmgh.cjs +0 -186
- package/dist/inventory.server.cjs +0 -1069
- package/dist/mailing-DCvDBHVh.cjs +0 -75
- package/dist/main-CXqpC28l.cjs +0 -11
- package/dist/martyrs/node_modules/.pnpm/@capacitor_core@7.0.1/node_modules/@capacitor/core/dist/index.cjs +0 -485
- package/dist/martyrs/node_modules/.pnpm/@capacitor_core@7.0.1/node_modules/@capacitor/core/dist/index.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/@capacitor_preferences@7.0.0_@capacitor_core@7.0.1/node_modules/@capacitor/preferences/dist/esm/index.cjs +0 -8
- package/dist/martyrs/node_modules/.pnpm/@capacitor_preferences@7.0.0_@capacitor_core@7.0.1/node_modules/@capacitor/preferences/dist/esm/index.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/@capacitor_preferences@7.0.0_@capacitor_core@7.0.1/node_modules/@capacitor/preferences/dist/esm/web.cjs +0 -73
- package/dist/martyrs/node_modules/.pnpm/@capacitor_preferences@7.0.0_@capacitor_core@7.0.1/node_modules/@capacitor/preferences/dist/esm/web.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/bignumber.js@9.1.2/node_modules/bignumber.js/bignumber.cjs +0 -1336
- package/dist/martyrs/node_modules/.pnpm/bignumber.js@9.1.2/node_modules/bignumber.js/bignumber.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/ParseError.cjs +0 -131
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/ParseError.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/PhoneNumber.cjs +0 -209
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/PhoneNumber.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/constants.cjs +0 -22
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/constants.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/format.cjs +0 -166
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/format.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/RFC3966.cjs +0 -14
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/RFC3966.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/applyInternationalSeparatorStyle.cjs +0 -8
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/applyInternationalSeparatorStyle.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/checkNumberLength.cjs +0 -27
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/checkNumberLength.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/extension/createExtensionPattern.cjs +0 -30
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/extension/createExtensionPattern.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/extension/extractExtension.cjs +0 -24
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/extension/extractExtension.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/extractCountryCallingCode.cjs +0 -55
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/extractCountryCallingCode.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/extractCountryCallingCodeFromInternationalNumberWithoutPlusSign.cjs +0 -27
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/extractCountryCallingCodeFromInternationalNumberWithoutPlusSign.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/extractFormattedPhoneNumberFromPossibleRfc3966NumberUri.cjs +0 -38
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/extractFormattedPhoneNumberFromPossibleRfc3966NumberUri.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/extractNationalNumber.cjs +0 -43
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/extractNationalNumber.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/extractNationalNumberFromPossiblyIncompleteNumber.cjs +0 -46
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/extractNationalNumberFromPossiblyIncompleteNumber.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/extractPhoneContext.cjs +0 -49
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/extractPhoneContext.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/formatNationalNumberUsingFormat.cjs +0 -30
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/formatNationalNumberUsingFormat.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/getCountryByCallingCode.cjs +0 -19
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/getCountryByCallingCode.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/getCountryByNationalNumber.cjs +0 -52
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/getCountryByNationalNumber.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/getIddPrefix.cjs +0 -16
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/getIddPrefix.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/getNumberType.cjs +0 -76
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/getNumberType.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/getPossibleCountriesForNumber.cjs +0 -23
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/getPossibleCountriesForNumber.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/isObject.cjs +0 -8
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/isObject.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/isViablePhoneNumber.cjs +0 -25
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/isViablePhoneNumber.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/matchesEntirely.cjs +0 -8
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/matchesEntirely.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/parseDigits.cjs +0 -80
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/parseDigits.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/stripIddPrefix.cjs +0 -26
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/helpers/stripIddPrefix.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/isPossible.cjs +0 -55
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/isPossible.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/isValid.cjs +0 -17
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/isValid.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/metadata.cjs +0 -539
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/metadata.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/normalizeArguments.cjs +0 -117
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/normalizeArguments.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/parse.cjs +0 -178
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/parse.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/parseIncompletePhoneNumber.cjs +0 -51
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/parseIncompletePhoneNumber.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/parsePhoneNumber.cjs +0 -10
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/parsePhoneNumber.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/parsePhoneNumberWithError_.cjs +0 -39
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/parsePhoneNumberWithError_.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/parsePhoneNumber_.cjs +0 -51
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/parsePhoneNumber_.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/tools/semver-compare.cjs +0 -22
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/es6/tools/semver-compare.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/metadata.min.json.cjs +0 -5
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/metadata.min.json.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/min/exports/parsePhoneNumber.cjs +0 -9
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/min/exports/parsePhoneNumber.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/min/exports/withMetadataArgument.cjs +0 -10
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.4/node_modules/libphonenumber-js/min/exports/withMetadataArgument.cjs.map +0 -1
- package/dist/martyrs/src/components/Address/Address.vue.cjs +0 -113
- package/dist/martyrs/src/components/Address/Address.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Block/Block.vue.cjs +0 -83
- package/dist/martyrs/src/components/Block/Block.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Button/Button.vue2.cjs +0 -158
- package/dist/martyrs/src/components/Button/Button.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/Calendar/Calendar.vue2.cjs +0 -571
- package/dist/martyrs/src/components/Calendar/Calendar.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/Checkbox/Checkbox.vue.cjs +0 -98
- package/dist/martyrs/src/components/Checkbox/Checkbox.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Chips/Chips.vue.cjs +0 -28
- package/dist/martyrs/src/components/Chips/Chips.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Countdown/Countdown.vue.cjs +0 -96
- package/dist/martyrs/src/components/Countdown/Countdown.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/DatePicker/DatePicker.vue.cjs +0 -103
- package/dist/martyrs/src/components/DatePicker/DatePicker.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Draggable/Draggable.vue.cjs +0 -106
- package/dist/martyrs/src/components/Draggable/Draggable.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Dropdown/Dropdown.vue.cjs +0 -72
- package/dist/martyrs/src/components/Dropdown/Dropdown.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/EditImages/EditImages.vue2.cjs +0 -95
- package/dist/martyrs/src/components/EditImages/EditImages.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/EmptyState/EmptyState.vue.cjs +0 -41
- package/dist/martyrs/src/components/EmptyState/EmptyState.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Feed/Carousel.vue.cjs +0 -99
- package/dist/martyrs/src/components/Feed/Carousel.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Feed/Feed.vue.cjs +0 -430
- package/dist/martyrs/src/components/Feed/Feed.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Field/Field.vue.cjs +0 -161
- package/dist/martyrs/src/components/Field/Field.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/FieldBig/FieldBig.vue.cjs +0 -202
- package/dist/martyrs/src/components/FieldBig/FieldBig.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/FieldDate/FieldDate.vue.cjs +0 -183
- package/dist/martyrs/src/components/FieldDate/FieldDate.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/FieldPhone/FieldPhone.vue.cjs +0 -597
- package/dist/martyrs/src/components/FieldPhone/FieldPhone.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/FieldPhone/all-countries.cjs +0 -257
- package/dist/martyrs/src/components/FieldPhone/all-countries.cjs.map +0 -1
- package/dist/martyrs/src/components/FieldPhone/click-outside.cjs +0 -25
- package/dist/martyrs/src/components/FieldPhone/click-outside.cjs.map +0 -1
- package/dist/martyrs/src/components/FieldTags/BlockTags.vue.cjs +0 -94
- package/dist/martyrs/src/components/FieldTags/BlockTags.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/FieldTags/FieldTags.vue2.cjs +0 -235
- package/dist/martyrs/src/components/FieldTags/FieldTags.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/FieldTags/FieldTags.vue2.js.map +0 -1
- package/dist/martyrs/src/components/Loader/Loader.vue2.cjs +0 -61
- package/dist/martyrs/src/components/Loader/Loader.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/Loader/Loader.vue2.js.map +0 -1
- package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue.cjs +0 -166
- package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Map/Map.vue.cjs +0 -62
- package/dist/martyrs/src/components/Map/Map.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Marquee/Marquee.vue.cjs +0 -240
- package/dist/martyrs/src/components/Marquee/Marquee.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Media/Media.vue.cjs +0 -168
- package/dist/martyrs/src/components/Media/Media.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Menu/Menu.vue2.cjs +0 -17
- package/dist/martyrs/src/components/Menu/Menu.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/Menu/MenuItem.vue.cjs +0 -66
- package/dist/martyrs/src/components/Menu/MenuItem.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/PhotoViewer/PhotoViewer.vue.cjs +0 -240
- package/dist/martyrs/src/components/PhotoViewer/PhotoViewer.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Popup/Popup.vue.cjs +0 -107
- package/dist/martyrs/src/components/Popup/Popup.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Radio/Radio.vue.cjs +0 -55
- package/dist/martyrs/src/components/Radio/Radio.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Select/Select.vue.cjs +0 -134
- package/dist/martyrs/src/components/Select/Select.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue2.cjs +0 -625
- package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue2.js.map +0 -1
- package/dist/martyrs/src/components/Shader/Shader.vue.cjs +0 -2
- package/dist/martyrs/src/components/Shader/Shader.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Skeleton/Skeleton.vue2.cjs +0 -97
- package/dist/martyrs/src/components/Skeleton/Skeleton.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/Slider/Slider.vue.cjs +0 -168
- package/dist/martyrs/src/components/Slider/Slider.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Spoiler/Spoiler.vue2.cjs +0 -73
- package/dist/martyrs/src/components/Spoiler/Spoiler.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/Status/Snack.vue.cjs +0 -60
- package/dist/martyrs/src/components/Status/Snack.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Status/Status.vue.cjs +0 -46
- package/dist/martyrs/src/components/Status/Status.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Tab/Tab.vue2.cjs +0 -74
- package/dist/martyrs/src/components/Tab/Tab.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/Table/StatusBadge.vue.cjs +0 -25
- package/dist/martyrs/src/components/Table/StatusBadge.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Table/Table.vue.cjs +0 -67
- package/dist/martyrs/src/components/Table/Table.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Text/Text.vue.cjs +0 -40
- package/dist/martyrs/src/components/Text/Text.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.cjs +0 -54
- package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/Tree/Tree.vue.cjs +0 -78
- package/dist/martyrs/src/components/Tree/Tree.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Upload/Upload.vue2.cjs +0 -122
- package/dist/martyrs/src/components/Upload/Upload.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/UploadImage/UploadImage.vue2.cjs +0 -219
- package/dist/martyrs/src/components/UploadImage/UploadImage.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/UploadImage/UploadImage.vue2.js.map +0 -1
- package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.cjs +0 -142
- package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/auth.client.cjs +0 -67
- package/dist/martyrs/src/modules/auth/auth.client.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/auth.router.cjs +0 -350
- package/dist/martyrs/src/modules/auth/auth.router.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/locales/en.cjs +0 -79
- package/dist/martyrs/src/modules/auth/locales/en.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/locales/index.cjs +0 -10
- package/dist/martyrs/src/modules/auth/locales/index.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/locales/ru.cjs +0 -81
- package/dist/martyrs/src/modules/auth/locales/ru.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/components/blocks/CardUser.vue.cjs +0 -95
- package/dist/martyrs/src/modules/auth/views/components/blocks/CardUser.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/components/blocks/ProfileCard.vue.cjs +0 -44
- package/dist/martyrs/src/modules/auth/views/components/blocks/ProfileCard.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.cjs +0 -41
- package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.cjs +0 -166
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs +0 -118
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs +0 -89
- package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs +0 -284
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.cjs +0 -85
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs +0 -74
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.cjs +0 -73
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.cjs +0 -116
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditSidebar.vue.cjs +0 -42
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditSidebar.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs +0 -145
- package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs +0 -210
- package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs +0 -154
- package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/UserDashboard.vue.cjs +0 -186
- package/dist/martyrs/src/modules/auth/views/components/pages/UserDashboard.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/components/sections/FeaturedUsers.vue.cjs +0 -114
- package/dist/martyrs/src/modules/auth/views/components/sections/FeaturedUsers.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.cjs +0 -360
- package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/components/sections/SliderFeatures.vue.cjs +0 -47
- package/dist/martyrs/src/modules/auth/views/components/sections/SliderFeatures.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/configs/navigation.user.config.cjs +0 -78
- package/dist/martyrs/src/modules/auth/views/configs/navigation.user.config.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/middlewares/auth.validation.cjs +0 -55
- package/dist/martyrs/src/modules/auth/views/middlewares/auth.validation.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/middlewares/ownership.validation.cjs +0 -17
- package/dist/martyrs/src/modules/auth/views/middlewares/ownership.validation.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/store/auth.cjs +0 -255
- package/dist/martyrs/src/modules/auth/views/store/auth.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/store/twofa.cjs +0 -40
- package/dist/martyrs/src/modules/auth/views/store/twofa.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/store/users.cjs +0 -97
- package/dist/martyrs/src/modules/auth/views/store/users.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/validations/inputs.validation.cjs +0 -62
- package/dist/martyrs/src/modules/auth/views/validations/inputs.validation.cjs.map +0 -1
- package/dist/martyrs/src/modules/backoffice/backoffice.client.cjs +0 -36
- package/dist/martyrs/src/modules/backoffice/backoffice.client.cjs.map +0 -1
- package/dist/martyrs/src/modules/backoffice/backoffice.router.cjs +0 -81
- package/dist/martyrs/src/modules/backoffice/backoffice.router.cjs.map +0 -1
- package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.cjs +0 -145
- package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.cjs +0 -150
- package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/chats/chats.client.cjs +0 -31
- package/dist/martyrs/src/modules/chats/chats.client.cjs.map +0 -1
- package/dist/martyrs/src/modules/chats/components/blocks/ChatMessage.vue.cjs +0 -49
- package/dist/martyrs/src/modules/chats/components/blocks/ChatMessage.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/chats/components/pages/ChatPage.vue.cjs +0 -42
- package/dist/martyrs/src/modules/chats/components/pages/ChatPage.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/chats/components/sections/ChatWindow.vue.cjs +0 -176
- package/dist/martyrs/src/modules/chats/components/sections/ChatWindow.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/chats/store/chat.store.cjs +0 -175
- package/dist/martyrs/src/modules/chats/store/chat.store.cjs.map +0 -1
- package/dist/martyrs/src/modules/community/community.client.cjs +0 -64
- package/dist/martyrs/src/modules/community/community.client.cjs.map +0 -1
- package/dist/martyrs/src/modules/community/community.router.cjs +0 -124
- package/dist/martyrs/src/modules/community/community.router.cjs.map +0 -1
- package/dist/martyrs/src/modules/community/components/blocks/Activity.vue.cjs +0 -59
- package/dist/martyrs/src/modules/community/components/blocks/Activity.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.cjs +0 -124
- package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/community/components/blocks/FooterBlogpost.vue.cjs +0 -92
- package/dist/martyrs/src/modules/community/components/blocks/FooterBlogpost.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/community/components/layouts/Community.vue.cjs +0 -250
- package/dist/martyrs/src/modules/community/components/layouts/Community.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/community/components/pages/Blog.vue.cjs +0 -83
- package/dist/martyrs/src/modules/community/components/pages/Blog.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs +0 -145
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs +0 -300
- package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/community/components/pages/Posts.vue.cjs +0 -113
- package/dist/martyrs/src/modules/community/components/pages/Posts.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/community/components/sections/Comment.vue.cjs +0 -157
- package/dist/martyrs/src/modules/community/components/sections/Comment.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/community/components/sections/Comments.vue.cjs +0 -204
- package/dist/martyrs/src/modules/community/components/sections/Comments.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.cjs +0 -72
- package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/community/store/blogposts.cjs +0 -171
- package/dist/martyrs/src/modules/community/store/blogposts.cjs.map +0 -1
- package/dist/martyrs/src/modules/community/store/reactions.cjs +0 -95
- package/dist/martyrs/src/modules/community/store/reactions.cjs.map +0 -1
- package/dist/martyrs/src/modules/constructor/components/elements/Audio.vue.cjs +0 -63
- package/dist/martyrs/src/modules/constructor/components/elements/Audio.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/constructor/components/elements/Card.vue.cjs +0 -79
- package/dist/martyrs/src/modules/constructor/components/elements/Card.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.cjs +0 -82
- package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/constructor/components/elements/Image.vue.cjs +0 -39
- package/dist/martyrs/src/modules/constructor/components/elements/Image.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/constructor/components/elements/ImageUpload.vue.cjs +0 -90
- package/dist/martyrs/src/modules/constructor/components/elements/ImageUpload.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/constructor/components/elements/Textarea.vue2.cjs +0 -317
- package/dist/martyrs/src/modules/constructor/components/elements/Textarea.vue2.cjs.map +0 -1
- package/dist/martyrs/src/modules/constructor/components/elements/Video.vue.cjs +0 -63
- package/dist/martyrs/src/modules/constructor/components/elements/Video.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/constructor/components/elements/VideoPlayer.vue.cjs +0 -43
- package/dist/martyrs/src/modules/constructor/components/elements/VideoPlayer.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/constructor/components/sections/Constructor.vue.cjs +0 -201
- package/dist/martyrs/src/modules/constructor/components/sections/Constructor.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/constructor/components/sections/Viewer.vue.cjs +0 -64
- package/dist/martyrs/src/modules/constructor/components/sections/Viewer.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/core.client.cjs +0 -113
- package/dist/martyrs/src/modules/core/core.client.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/locales/en.cjs +0 -32
- package/dist/martyrs/src/modules/core/locales/en.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/locales/ru.cjs +0 -24
- package/dist/martyrs/src/modules/core/locales/ru.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/classes/core.app.cjs +0 -208
- package/dist/martyrs/src/modules/core/views/classes/core.app.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/classes/core.i18n.cjs +0 -71
- package/dist/martyrs/src/modules/core/views/classes/core.i18n.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/classes/core.i18n.js.map +0 -1
- package/dist/martyrs/src/modules/core/views/classes/core.store.cjs +0 -153
- package/dist/martyrs/src/modules/core/views/classes/core.store.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/classes/core.store.js.map +0 -1
- package/dist/martyrs/src/modules/core/views/classes/core.websocket.cjs +0 -298
- package/dist/martyrs/src/modules/core/views/classes/core.websocket.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/classes/core.websocket.js.map +0 -1
- package/dist/martyrs/src/modules/core/views/classes/module-registry.cjs +0 -165
- package/dist/martyrs/src/modules/core/views/classes/module-registry.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/classes/module-registry.js.map +0 -1
- package/dist/martyrs/src/modules/core/views/classes/session.cjs +0 -50
- package/dist/martyrs/src/modules/core/views/classes/session.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/classes/session.js.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/blocks/AlertDialog.vue.cjs +0 -43
- package/dist/martyrs/src/modules/core/views/components/blocks/AlertDialog.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/blocks/BlockMultiselect.vue.cjs +0 -308
- package/dist/martyrs/src/modules/core/views/components/blocks/BlockMultiselect.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/blocks/BlockSearch.vue.cjs +0 -59
- package/dist/martyrs/src/modules/core/views/components/blocks/BlockSearch.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/blocks/BlockSorting.vue.cjs +0 -84
- package/dist/martyrs/src/modules/core/views/components/blocks/BlockSorting.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/blocks/Card.vue.cjs +0 -76
- package/dist/martyrs/src/modules/core/views/components/blocks/Card.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/blocks/CardHeader.vue.cjs +0 -197
- package/dist/martyrs/src/modules/core/views/components/blocks/CardHeader.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/blocks/HelpCard.vue.cjs +0 -38
- package/dist/martyrs/src/modules/core/views/components/blocks/HelpCard.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/blocks/PopupAuth.vue.cjs +0 -84
- package/dist/martyrs/src/modules/core/views/components/blocks/PopupAuth.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/blocks/PopupDateSelector.vue.cjs +0 -184
- package/dist/martyrs/src/modules/core/views/components/blocks/PopupDateSelector.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/elements/ButtonDate.vue.cjs +0 -54
- package/dist/martyrs/src/modules/core/views/components/elements/ButtonDate.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/elements/ButtonSort.vue.cjs +0 -36
- package/dist/martyrs/src/modules/core/views/components/elements/ButtonSort.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/elements/PhotoStack.vue.cjs +0 -64
- package/dist/martyrs/src/modules/core/views/components/elements/PhotoStack.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/layouts/App.vue.cjs +0 -106
- package/dist/martyrs/src/modules/core/views/components/layouts/App.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/layouts/Client.vue.cjs +0 -341
- package/dist/martyrs/src/modules/core/views/components/layouts/Client.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/layouts/Empty.vue.cjs +0 -17
- package/dist/martyrs/src/modules/core/views/components/layouts/Empty.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/pages/401.vue.cjs +0 -12
- package/dist/martyrs/src/modules/core/views/components/pages/401.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/pages/404.vue.cjs +0 -12
- package/dist/martyrs/src/modules/core/views/components/pages/404.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/partials/BottomNavigationBar.vue.cjs +0 -116
- package/dist/martyrs/src/modules/core/views/components/partials/BottomNavigationBar.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/partials/CitySelection.vue.cjs +0 -100
- package/dist/martyrs/src/modules/core/views/components/partials/CitySelection.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/partials/Footer.vue.cjs +0 -243
- package/dist/martyrs/src/modules/core/views/components/partials/Footer.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/partials/Header.vue.cjs +0 -179
- package/dist/martyrs/src/modules/core/views/components/partials/Header.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/partials/LocationSelection.vue.cjs +0 -106
- package/dist/martyrs/src/modules/core/views/components/partials/LocationSelection.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/partials/Navigation.vue.cjs +0 -250
- package/dist/martyrs/src/modules/core/views/components/partials/Navigation.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/partials/NavigationBar.vue.cjs +0 -158
- package/dist/martyrs/src/modules/core/views/components/partials/NavigationBar.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/partials/Sidebar.vue.cjs +0 -105
- package/dist/martyrs/src/modules/core/views/components/partials/Sidebar.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/sections/Filters.vue2.cjs +0 -385
- package/dist/martyrs/src/modules/core/views/components/sections/Filters.vue2.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/sections/SectionPageTitle.vue.cjs +0 -61
- package/dist/martyrs/src/modules/core/views/components/sections/SectionPageTitle.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/components/sections/Walkthrough.vue.cjs +0 -307
- package/dist/martyrs/src/modules/core/views/components/sections/Walkthrough.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/localization/get-browser-locale.cjs +0 -14
- package/dist/martyrs/src/modules/core/views/localization/get-browser-locale.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/mixins/mixins.cjs +0 -262
- package/dist/martyrs/src/modules/core/views/mixins/mixins.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/plugins/alert.plugin.cjs +0 -56
- package/dist/martyrs/src/modules/core/views/plugins/alert.plugin.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/plugins/date-picker.plugin.cjs +0 -83
- package/dist/martyrs/src/modules/core/views/plugins/date-picker.plugin.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/plugins/popup.auth.plugin.cjs +0 -70
- package/dist/martyrs/src/modules/core/views/plugins/popup.auth.plugin.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/router/addRoutes.cjs +0 -106
- package/dist/martyrs/src/modules/core/views/router/addRoutes.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/router/scrollBehavior.cjs +0 -33
- package/dist/martyrs/src/modules/core/views/router/scrollBehavior.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/store/core.store.cjs +0 -285
- package/dist/martyrs/src/modules/core/views/store/core.store.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/utils/axios-instance.cjs +0 -17
- package/dist/martyrs/src/modules/core/views/utils/axios-instance.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/utils/polyfills.cjs +0 -26
- package/dist/martyrs/src/modules/core/views/utils/polyfills.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/utils/query-serializer.cjs +0 -100
- package/dist/martyrs/src/modules/core/views/utils/query-serializer.cjs.map +0 -1
- package/dist/martyrs/src/modules/core/views/utils/vue-app-renderer.cjs +0 -118
- package/dist/martyrs/src/modules/core/views/utils/vue-app-renderer.cjs.map +0 -1
- package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.cjs +0 -133
- package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/events/components/blocks/CardEventShort.vue.cjs +0 -80
- package/dist/martyrs/src/modules/events/components/blocks/CardEventShort.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.cjs +0 -174
- package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.cjs +0 -85
- package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/events/components/layouts/layoutEvents.vue.cjs +0 -36
- package/dist/martyrs/src/modules/events/components/layouts/layoutEvents.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs +0 -422
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.cjs +0 -405
- package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs +0 -187
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/events/components/pages/Events.vue.cjs +0 -195
- package/dist/martyrs/src/modules/events/components/pages/Events.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.cjs +0 -141
- package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/events/components/pages/EventsSearch.vue.cjs +0 -98
- package/dist/martyrs/src/modules/events/components/pages/EventsSearch.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/events/components/sections/EditTickets.vue.cjs +0 -281
- package/dist/martyrs/src/modules/events/components/sections/EditTickets.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.cjs +0 -85
- package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/events/components/sections/FeaturedEvents.vue.cjs +0 -45
- package/dist/martyrs/src/modules/events/components/sections/FeaturedEvents.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/events/components/sections/Feed.vue.cjs +0 -168
- package/dist/martyrs/src/modules/events/components/sections/Feed.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/events/components/sections/HeroEvent.vue.cjs +0 -91
- package/dist/martyrs/src/modules/events/components/sections/HeroEvent.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/events/components/sections/List.vue.cjs +0 -108
- package/dist/martyrs/src/modules/events/components/sections/List.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/events/components/sections/SelectDate.vue.cjs +0 -190
- package/dist/martyrs/src/modules/events/components/sections/SelectDate.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/events/events.client.cjs +0 -61
- package/dist/martyrs/src/modules/events/events.client.cjs.map +0 -1
- package/dist/martyrs/src/modules/events/router/events.router.cjs +0 -369
- package/dist/martyrs/src/modules/events/router/events.router.cjs.map +0 -1
- package/dist/martyrs/src/modules/events/store/events.cjs +0 -147
- package/dist/martyrs/src/modules/events/store/events.cjs.map +0 -1
- package/dist/martyrs/src/modules/events/store/tickets.cjs +0 -117
- package/dist/martyrs/src/modules/events/store/tickets.cjs.map +0 -1
- package/dist/martyrs/src/modules/files/files.client.cjs +0 -2
- package/dist/martyrs/src/modules/files/files.client.cjs.map +0 -1
- package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.cjs +0 -122
- package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +0 -277
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/gallery/gallery.client.cjs +0 -33
- package/dist/martyrs/src/modules/gallery/gallery.client.cjs.map +0 -1
- package/dist/martyrs/src/modules/gallery/router/gallery.router.cjs +0 -129
- package/dist/martyrs/src/modules/gallery/router/gallery.router.cjs.map +0 -1
- package/dist/martyrs/src/modules/gallery/store/gallery.cjs +0 -6
- package/dist/martyrs/src/modules/gallery/store/gallery.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/actions/IconDuplicate.vue.cjs +0 -39
- package/dist/martyrs/src/modules/icons/actions/IconDuplicate.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/actions/IconOpenLink.vue.cjs +0 -32
- package/dist/martyrs/src/modules/icons/actions/IconOpenLink.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/actions/IconShopcartAdd.vue.cjs +0 -33
- package/dist/martyrs/src/modules/icons/actions/IconShopcartAdd.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/actions/IconShow.vue.cjs +0 -49
- package/dist/martyrs/src/modules/icons/actions/IconShow.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/components/IconSearchPopup.vue.cjs +0 -240
- package/dist/martyrs/src/modules/icons/components/IconSearchPopup.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconAddress.vue.cjs +0 -40
- package/dist/martyrs/src/modules/icons/entities/IconAddress.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconBell.vue.cjs +0 -36
- package/dist/martyrs/src/modules/icons/entities/IconBell.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconCalendar.vue.cjs +0 -38
- package/dist/martyrs/src/modules/icons/entities/IconCalendar.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconCatalog.vue.cjs +0 -36
- package/dist/martyrs/src/modules/icons/entities/IconCatalog.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconCommunity.vue.cjs +0 -34
- package/dist/martyrs/src/modules/icons/entities/IconCommunity.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconDate.vue.cjs +0 -32
- package/dist/martyrs/src/modules/icons/entities/IconDate.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconDiscount.vue.cjs +0 -57
- package/dist/martyrs/src/modules/icons/entities/IconDiscount.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconEarn.vue.cjs +0 -62
- package/dist/martyrs/src/modules/icons/entities/IconEarn.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconEmail.vue.cjs +0 -32
- package/dist/martyrs/src/modules/icons/entities/IconEmail.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconEvents.vue.cjs +0 -32
- package/dist/martyrs/src/modules/icons/entities/IconEvents.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconFeatured.vue.cjs +0 -35
- package/dist/martyrs/src/modules/icons/entities/IconFeatured.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconFile.vue.cjs +0 -33
- package/dist/martyrs/src/modules/icons/entities/IconFile.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconFollowing.vue.cjs +0 -55
- package/dist/martyrs/src/modules/icons/entities/IconFollowing.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconGallery.vue.cjs +0 -45
- package/dist/martyrs/src/modules/icons/entities/IconGallery.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconGroups.vue.cjs +0 -32
- package/dist/martyrs/src/modules/icons/entities/IconGroups.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconHome.vue.cjs +0 -36
- package/dist/martyrs/src/modules/icons/entities/IconHome.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconInfo.vue.cjs +0 -45
- package/dist/martyrs/src/modules/icons/entities/IconInfo.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconLeftovers.vue.cjs +0 -35
- package/dist/martyrs/src/modules/icons/entities/IconLeftovers.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconList.vue.cjs +0 -35
- package/dist/martyrs/src/modules/icons/entities/IconList.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconLock.vue.cjs +0 -32
- package/dist/martyrs/src/modules/icons/entities/IconLock.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconMusic.vue.cjs +0 -33
- package/dist/martyrs/src/modules/icons/entities/IconMusic.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconOrders.vue.cjs +0 -55
- package/dist/martyrs/src/modules/icons/entities/IconOrders.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconPayments.vue.cjs +0 -34
- package/dist/martyrs/src/modules/icons/entities/IconPayments.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconPhone.vue.cjs +0 -32
- package/dist/martyrs/src/modules/icons/entities/IconPhone.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconPopular.vue.cjs +0 -33
- package/dist/martyrs/src/modules/icons/entities/IconPopular.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconPrice.vue.cjs +0 -33
- package/dist/martyrs/src/modules/icons/entities/IconPrice.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconProducts.vue.cjs +0 -33
- package/dist/martyrs/src/modules/icons/entities/IconProducts.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconProfile.vue.cjs +0 -29
- package/dist/martyrs/src/modules/icons/entities/IconProfile.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconRecent.vue.cjs +0 -53
- package/dist/martyrs/src/modules/icons/entities/IconRecent.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconSettings.vue.cjs +0 -40
- package/dist/martyrs/src/modules/icons/entities/IconSettings.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconShopcart.vue.cjs +0 -45
- package/dist/martyrs/src/modules/icons/entities/IconShopcart.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/entities/IconTime.vue.cjs +0 -24
- package/dist/martyrs/src/modules/icons/entities/IconTime.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/icons.client.cjs +0 -202
- package/dist/martyrs/src/modules/icons/icons.client.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/icons.router.cjs +0 -31
- package/dist/martyrs/src/modules/icons/icons.router.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/labels/LabelAppStore.vue.cjs +0 -20
- package/dist/martyrs/src/modules/icons/labels/LabelAppStore.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/labels/LabelGooglePlay.vue.cjs +0 -20
- package/dist/martyrs/src/modules/icons/labels/LabelGooglePlay.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/logos/Logotype.vue.cjs +0 -26
- package/dist/martyrs/src/modules/icons/logos/Logotype.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconAdd.vue.cjs +0 -35
- package/dist/martyrs/src/modules/icons/navigation/IconAdd.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconArrow.vue.cjs +0 -37
- package/dist/martyrs/src/modules/icons/navigation/IconArrow.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconAttach.vue.cjs +0 -35
- package/dist/martyrs/src/modules/icons/navigation/IconAttach.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.cjs +0 -37
- package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconCheckmark.vue.cjs +0 -34
- package/dist/martyrs/src/modules/icons/navigation/IconCheckmark.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconChevronBottom.vue.cjs +0 -34
- package/dist/martyrs/src/modules/icons/navigation/IconChevronBottom.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconChevronLeft.vue.cjs +0 -31
- package/dist/martyrs/src/modules/icons/navigation/IconChevronLeft.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconChevronRight.vue.cjs +0 -31
- package/dist/martyrs/src/modules/icons/navigation/IconChevronRight.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconCross.vue.cjs +0 -32
- package/dist/martyrs/src/modules/icons/navigation/IconCross.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconDelete.vue.cjs +0 -45
- package/dist/martyrs/src/modules/icons/navigation/IconDelete.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.cjs +0 -37
- package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconEdit.vue.cjs +0 -37
- package/dist/martyrs/src/modules/icons/navigation/IconEdit.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconEllipsis.vue.cjs +0 -51
- package/dist/martyrs/src/modules/icons/navigation/IconEllipsis.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconFilter.vue.cjs +0 -36
- package/dist/martyrs/src/modules/icons/navigation/IconFilter.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.cjs +0 -34
- package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconInfo.vue.cjs +0 -44
- package/dist/martyrs/src/modules/icons/navigation/IconInfo.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconLike.vue.cjs +0 -47
- package/dist/martyrs/src/modules/icons/navigation/IconLike.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconMinus.vue.cjs +0 -34
- package/dist/martyrs/src/modules/icons/navigation/IconMinus.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconMute.vue.cjs +0 -37
- package/dist/martyrs/src/modules/icons/navigation/IconMute.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.cjs +0 -32
- package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.cjs +0 -32
- package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconPlus.vue.cjs +0 -35
- package/dist/martyrs/src/modules/icons/navigation/IconPlus.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.cjs +0 -32
- package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconSearch.vue.cjs +0 -47
- package/dist/martyrs/src/modules/icons/navigation/IconSearch.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconSend.vue.cjs +0 -31
- package/dist/martyrs/src/modules/icons/navigation/IconSend.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.cjs +0 -32
- package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconSort.vue.cjs +0 -67
- package/dist/martyrs/src/modules/icons/navigation/IconSort.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconUnMute.vue.cjs +0 -32
- package/dist/martyrs/src/modules/icons/navigation/IconUnMute.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconUpload.vue.cjs +0 -39
- package/dist/martyrs/src/modules/icons/navigation/IconUpload.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.cjs +0 -37
- package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.cjs +0 -330
- package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/placeholders/PlaceholderChat.vue.cjs +0 -31
- package/dist/martyrs/src/modules/icons/placeholders/PlaceholderChat.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/placeholders/PlaceholderImage.vue.cjs +0 -23
- package/dist/martyrs/src/modules/icons/placeholders/PlaceholderImage.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/placeholders/PlaceholderOrganizationPic.vue.cjs +0 -31
- package/dist/martyrs/src/modules/icons/placeholders/PlaceholderOrganizationPic.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/placeholders/PlaceholderUserpic.vue.cjs +0 -31
- package/dist/martyrs/src/modules/icons/placeholders/PlaceholderUserpic.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/skeletons/SkeletonBlogpost.vue.cjs +0 -18
- package/dist/martyrs/src/modules/icons/skeletons/SkeletonBlogpost.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/skeletons/SkeletonEvent.vue.cjs +0 -19
- package/dist/martyrs/src/modules/icons/skeletons/SkeletonEvent.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/skeletons/SkeletonEventShort.vue.cjs +0 -18
- package/dist/martyrs/src/modules/icons/skeletons/SkeletonEventShort.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/skeletons/SkeletonOrganization.vue.cjs +0 -18
- package/dist/martyrs/src/modules/icons/skeletons/SkeletonOrganization.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/socials/dribbble.vue.cjs +0 -32
- package/dist/martyrs/src/modules/icons/socials/dribbble.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/socials/facebook.vue.cjs +0 -32
- package/dist/martyrs/src/modules/icons/socials/facebook.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/socials/instagram.vue.cjs +0 -31
- package/dist/martyrs/src/modules/icons/socials/instagram.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/socials/line.vue.cjs +0 -34
- package/dist/martyrs/src/modules/icons/socials/line.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/socials/linkedin.vue.cjs +0 -32
- package/dist/martyrs/src/modules/icons/socials/linkedin.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/socials/reddit.vue.cjs +0 -32
- package/dist/martyrs/src/modules/icons/socials/reddit.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/socials/telegram.vue.cjs +0 -44
- package/dist/martyrs/src/modules/icons/socials/telegram.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/socials/twitter.vue.cjs +0 -32
- package/dist/martyrs/src/modules/icons/socials/twitter.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/socials/vk.vue.cjs +0 -32
- package/dist/martyrs/src/modules/icons/socials/vk.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/socials/whatsapp.vue.cjs +0 -32
- package/dist/martyrs/src/modules/icons/socials/whatsapp.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/socials/youtube.vue.cjs +0 -32
- package/dist/martyrs/src/modules/icons/socials/youtube.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.cjs +0 -225
- package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/inventory/components/forms/ColumnSettingsMenu.vue.cjs +0 -88
- package/dist/martyrs/src/modules/inventory/components/forms/ColumnSettingsMenu.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/inventory/components/forms/HistoryView.vue.cjs +0 -162
- package/dist/martyrs/src/modules/inventory/components/forms/HistoryView.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/inventory/components/forms/StockAlertsForm.vue.cjs +0 -184
- package/dist/martyrs/src/modules/inventory/components/forms/StockAlertsForm.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/inventory/components/pages/Inventory.vue.cjs +0 -324
- package/dist/martyrs/src/modules/inventory/components/pages/Inventory.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.cjs +0 -382
- package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/inventory/inventory.client.cjs +0 -55
- package/dist/martyrs/src/modules/inventory/inventory.client.cjs.map +0 -1
- package/dist/martyrs/src/modules/inventory/router/inventory.router.cjs +0 -36
- package/dist/martyrs/src/modules/inventory/router/inventory.router.cjs.map +0 -1
- package/dist/martyrs/src/modules/inventory/store/inventory.store.cjs +0 -112
- package/dist/martyrs/src/modules/inventory/store/inventory.store.cjs.map +0 -1
- package/dist/martyrs/src/modules/inventory/store/stock.alerts.store.cjs +0 -6
- package/dist/martyrs/src/modules/inventory/store/stock.alerts.store.cjs.map +0 -1
- package/dist/martyrs/src/modules/landing/components/elements/AnimatedGrid.vue.cjs +0 -15
- package/dist/martyrs/src/modules/landing/components/elements/AnimatedGrid.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/landing/components/elements/FloatingImages.vue.cjs +0 -120
- package/dist/martyrs/src/modules/landing/components/elements/FloatingImages.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionEarn.vue.cjs +0 -136
- package/dist/martyrs/src/modules/landing/components/sections/SectionEarn.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionFeatures.vue.cjs +0 -47
- package/dist/martyrs/src/modules/landing/components/sections/SectionFeatures.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionFeaturesImages.vue.cjs +0 -103
- package/dist/martyrs/src/modules/landing/components/sections/SectionFeaturesImages.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionGuide.vue.cjs +0 -70
- package/dist/martyrs/src/modules/landing/components/sections/SectionGuide.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionHeroToken.vue.cjs +0 -85
- package/dist/martyrs/src/modules/landing/components/sections/SectionHeroToken.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionJoinUs.vue.cjs +0 -89
- package/dist/martyrs/src/modules/landing/components/sections/SectionJoinUs.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionMobileApp.vue.cjs +0 -111
- package/dist/martyrs/src/modules/landing/components/sections/SectionMobileApp.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionOverview.vue.cjs +0 -54
- package/dist/martyrs/src/modules/landing/components/sections/SectionOverview.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionRoadmap.vue.cjs +0 -98
- package/dist/martyrs/src/modules/landing/components/sections/SectionRoadmap.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/landing/components/sections/SubscribeNewsletter.vue.cjs +0 -48
- package/dist/martyrs/src/modules/landing/components/sections/SubscribeNewsletter.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/landing/landing.client.cjs +0 -30
- package/dist/martyrs/src/modules/landing/landing.client.cjs.map +0 -1
- package/dist/martyrs/src/modules/landing/locales/en.cjs +0 -12
- package/dist/martyrs/src/modules/landing/locales/en.cjs.map +0 -1
- package/dist/martyrs/src/modules/landing/locales/index.cjs +0 -10
- package/dist/martyrs/src/modules/landing/locales/index.cjs.map +0 -1
- package/dist/martyrs/src/modules/landing/locales/ru.cjs +0 -12
- package/dist/martyrs/src/modules/landing/locales/ru.cjs.map +0 -1
- package/dist/martyrs/src/modules/marketplace/marketplace.client.cjs +0 -41
- package/dist/martyrs/src/modules/marketplace/marketplace.client.cjs.map +0 -1
- package/dist/martyrs/src/modules/marketplace/marketplace.router.cjs +0 -63
- package/dist/martyrs/src/modules/marketplace/marketplace.router.cjs.map +0 -1
- package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.cjs +0 -325
- package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/marketplace/views/components/pages/Catalog.vue.cjs +0 -73
- package/dist/martyrs/src/modules/marketplace/views/components/pages/Catalog.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.cjs +0 -107
- package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/marketplace/views/store/marketplace.cjs +0 -54
- package/dist/martyrs/src/modules/marketplace/views/store/marketplace.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/cards/AlbumCard.vue.cjs +0 -94
- package/dist/martyrs/src/modules/music/components/cards/AlbumCard.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/cards/ArtistCard.vue.cjs +0 -84
- package/dist/martyrs/src/modules/music/components/cards/ArtistCard.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/cards/ArtistCardSmall.vue.cjs +0 -95
- package/dist/martyrs/src/modules/music/components/cards/ArtistCardSmall.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/cards/PlaylistCard.vue.cjs +0 -100
- package/dist/martyrs/src/modules/music/components/cards/PlaylistCard.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/cards/TrackListCard.vue.cjs +0 -178
- package/dist/martyrs/src/modules/music/components/cards/TrackListCard.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.cjs +0 -437
- package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.cjs +0 -415
- package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.cjs +0 -434
- package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/forms/SearchForm.vue.cjs +0 -98
- package/dist/martyrs/src/modules/music/components/forms/SearchForm.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.cjs +0 -566
- package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/layouts/MusicBottomPlayer.vue.cjs +0 -21
- package/dist/martyrs/src/modules/music/components/layouts/MusicBottomPlayer.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/Album.vue.cjs +0 -498
- package/dist/martyrs/src/modules/music/components/pages/Album.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/AlbumCreate.vue.cjs +0 -14
- package/dist/martyrs/src/modules/music/components/pages/AlbumCreate.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/AlbumEdit.vue.cjs +0 -23
- package/dist/martyrs/src/modules/music/components/pages/AlbumEdit.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/Artist.vue.cjs +0 -440
- package/dist/martyrs/src/modules/music/components/pages/Artist.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/ArtistCreate.vue.cjs +0 -14
- package/dist/martyrs/src/modules/music/components/pages/ArtistCreate.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/ArtistEdit.vue.cjs +0 -23
- package/dist/martyrs/src/modules/music/components/pages/ArtistEdit.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/MusicHome.vue.cjs +0 -218
- package/dist/martyrs/src/modules/music/components/pages/MusicHome.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.cjs +0 -251
- package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.cjs +0 -658
- package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/PlaylistCreate.vue.cjs +0 -14
- package/dist/martyrs/src/modules/music/components/pages/PlaylistCreate.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/PlaylistEdit.vue.cjs +0 -23
- package/dist/martyrs/src/modules/music/components/pages/PlaylistEdit.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.cjs +0 -335
- package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/Track.vue.cjs +0 -502
- package/dist/martyrs/src/modules/music/components/pages/Track.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.cjs +0 -27
- package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/pages/TrackEdit.vue.cjs +0 -23
- package/dist/martyrs/src/modules/music/components/pages/TrackEdit.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/player/MusicPlayer.vue.cjs +0 -212
- package/dist/martyrs/src/modules/music/components/player/MusicPlayer.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/player/TrackProgress.vue.cjs +0 -89
- package/dist/martyrs/src/modules/music/components/player/TrackProgress.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/components/player/VolumeControl.vue.cjs +0 -77
- package/dist/martyrs/src/modules/music/components/player/VolumeControl.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/music.client.cjs +0 -137
- package/dist/martyrs/src/modules/music/music.client.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/music.router.cjs +0 -228
- package/dist/martyrs/src/modules/music/music.router.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/store/albums.cjs +0 -167
- package/dist/martyrs/src/modules/music/store/albums.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/store/artists.cjs +0 -162
- package/dist/martyrs/src/modules/music/store/artists.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/store/genres.cjs +0 -123
- package/dist/martyrs/src/modules/music/store/genres.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/store/player.cjs +0 -301
- package/dist/martyrs/src/modules/music/store/player.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/store/playlists.cjs +0 -180
- package/dist/martyrs/src/modules/music/store/playlists.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/store/search.cjs +0 -109
- package/dist/martyrs/src/modules/music/store/search.cjs.map +0 -1
- package/dist/martyrs/src/modules/music/store/tracks.cjs +0 -206
- package/dist/martyrs/src/modules/music/store/tracks.cjs.map +0 -1
- package/dist/martyrs/src/modules/notifications/components/blocks/NotificationItem.vue.cjs +0 -82
- package/dist/martyrs/src/modules/notifications/components/blocks/NotificationItem.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.cjs +0 -142
- package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/notifications/components/layouts/NotificationsLayout.vue.cjs +0 -64
- package/dist/martyrs/src/modules/notifications/components/layouts/NotificationsLayout.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/notifications/components/pages/Notifications.vue.cjs +0 -36
- package/dist/martyrs/src/modules/notifications/components/pages/Notifications.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/notifications/components/sections/NotificationPreferences.vue.cjs +0 -168
- package/dist/martyrs/src/modules/notifications/components/sections/NotificationPreferences.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/notifications/components/sections/NotificationsList.vue.cjs +0 -143
- package/dist/martyrs/src/modules/notifications/components/sections/NotificationsList.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/notifications/notifications.client.cjs +0 -388
- package/dist/martyrs/src/modules/notifications/notifications.client.cjs.map +0 -1
- package/dist/martyrs/src/modules/notifications/notifications.router.cjs +0 -46
- package/dist/martyrs/src/modules/notifications/notifications.router.cjs.map +0 -1
- package/dist/martyrs/src/modules/notifications/store/notifications.store.cjs +0 -310
- package/dist/martyrs/src/modules/notifications/store/notifications.store.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardApplication.vue.cjs +0 -86
- package/dist/martyrs/src/modules/orders/components/blocks/CardApplication.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardCustomer.vue.cjs +0 -103
- package/dist/martyrs/src/modules/orders/components/blocks/CardCustomer.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrder.vue.cjs +0 -154
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrder.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.cjs +0 -112
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderItem.vue.cjs +0 -194
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderItem.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.cjs +0 -207
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/blocks/StatusHistory.vue.cjs +0 -69
- package/dist/martyrs/src/modules/orders/components/blocks/StatusHistory.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue.cjs +0 -193
- package/dist/martyrs/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/elements/PriceTotal.vue.cjs +0 -132
- package/dist/martyrs/src/modules/orders/components/elements/PriceTotal.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.cjs +0 -138
- package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.cjs +0 -262
- package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.cjs +0 -173
- package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/icons/IconStatusCanceled.vue.cjs +0 -32
- package/dist/martyrs/src/modules/orders/components/icons/IconStatusCanceled.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/icons/IconStatusConfirmed.vue.cjs +0 -32
- package/dist/martyrs/src/modules/orders/components/icons/IconStatusConfirmed.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/icons/IconStatusCreated.vue.cjs +0 -32
- package/dist/martyrs/src/modules/orders/components/icons/IconStatusCreated.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/icons/IconStatusDelay.vue.cjs +0 -32
- package/dist/martyrs/src/modules/orders/components/icons/IconStatusDelay.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/icons/IconStatusFinished.vue.cjs +0 -32
- package/dist/martyrs/src/modules/orders/components/icons/IconStatusFinished.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/icons/IconStatusInUse.vue.cjs +0 -32
- package/dist/martyrs/src/modules/orders/components/icons/IconStatusInUse.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/pages/Applications.vue.cjs +0 -233
- package/dist/martyrs/src/modules/orders/components/pages/Applications.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/pages/Customers.vue.cjs +0 -234
- package/dist/martyrs/src/modules/orders/components/pages/Customers.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +0 -407
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.cjs +0 -357
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +0 -394
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.cjs +0 -155
- package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.cjs +0 -136
- package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/sections/ApplicationDetails.vue.cjs +0 -119
- package/dist/martyrs/src/modules/orders/components/sections/ApplicationDetails.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/sections/AskToLogin.vue.cjs +0 -27
- package/dist/martyrs/src/modules/orders/components/sections/AskToLogin.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/sections/CustomerDetails.vue.cjs +0 -139
- package/dist/martyrs/src/modules/orders/components/sections/CustomerDetails.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/sections/EmptyState.vue.cjs +0 -17
- package/dist/martyrs/src/modules/orders/components/sections/EmptyState.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs +0 -129
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormPayment.vue.cjs +0 -42
- package/dist/martyrs/src/modules/orders/components/sections/FormPayment.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/components/sections/Succes.vue.cjs +0 -34
- package/dist/martyrs/src/modules/orders/components/sections/Succes.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/locales/en.cjs +0 -38
- package/dist/martyrs/src/modules/orders/locales/en.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/locales/index.cjs +0 -10
- package/dist/martyrs/src/modules/orders/locales/index.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/locales/ru.cjs +0 -38
- package/dist/martyrs/src/modules/orders/locales/ru.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/orders.client.cjs +0 -202
- package/dist/martyrs/src/modules/orders/orders.client.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/router/applications.router.cjs +0 -17
- package/dist/martyrs/src/modules/orders/router/applications.router.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/router/customers.router.cjs +0 -18
- package/dist/martyrs/src/modules/orders/router/customers.router.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/router/orders.router.cjs +0 -80
- package/dist/martyrs/src/modules/orders/router/orders.router.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/store/applications.cjs +0 -6
- package/dist/martyrs/src/modules/orders/store/applications.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/store/customers.store.cjs +0 -6
- package/dist/martyrs/src/modules/orders/store/customers.store.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/store/models/application.cjs +0 -20
- package/dist/martyrs/src/modules/orders/store/models/application.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/store/models/customer.cjs +0 -50
- package/dist/martyrs/src/modules/orders/store/models/customer.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/store/models/order.cjs +0 -30
- package/dist/martyrs/src/modules/orders/store/models/order.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/store/orders.cjs +0 -166
- package/dist/martyrs/src/modules/orders/store/orders.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/store/shopcart.cjs +0 -175
- package/dist/martyrs/src/modules/orders/store/shopcart.cjs.map +0 -1
- package/dist/martyrs/src/modules/orders/store/testimonials.cjs +0 -63
- package/dist/martyrs/src/modules/orders/store/testimonials.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.cjs +0 -80
- package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.cjs +0 -157
- package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/Contacts.vue.cjs +0 -72
- package/dist/martyrs/src/modules/organizations/components/blocks/Contacts.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/DepartmentSub.vue.cjs +0 -32
- package/dist/martyrs/src/modules/organizations/components/blocks/DepartmentSub.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/EmptyState.vue.cjs +0 -42
- package/dist/martyrs/src/modules/organizations/components/blocks/EmptyState.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/Rating.vue.cjs +0 -46
- package/dist/martyrs/src/modules/organizations/components/blocks/Rating.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/Socials.vue.cjs +0 -101
- package/dist/martyrs/src/modules/organizations/components/blocks/Socials.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/Unit.vue.cjs +0 -69
- package/dist/martyrs/src/modules/organizations/components/blocks/Unit.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.cjs +0 -101
- package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.cjs +0 -195
- package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.cjs +0 -402
- package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.cjs +0 -86
- package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.cjs +0 -131
- package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs +0 -376
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs +0 -200
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.cjs +0 -200
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +0 -162
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.cjs +0 -104
- package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.cjs +0 -119
- package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.cjs +0 -148
- package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs +0 -78
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Publics.vue.cjs +0 -52
- package/dist/martyrs/src/modules/organizations/components/sections/Publics.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Unit.vue.cjs +0 -2
- package/dist/martyrs/src/modules/organizations/components/sections/Unit.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.cjs +0 -171
- package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/organizations.client.cjs +0 -79
- package/dist/martyrs/src/modules/organizations/organizations.client.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/organizations.router.cjs +0 -145
- package/dist/martyrs/src/modules/organizations/organizations.router.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/store/departments.store.cjs +0 -6
- package/dist/martyrs/src/modules/organizations/store/departments.store.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/store/invites.store.cjs +0 -6
- package/dist/martyrs/src/modules/organizations/store/invites.store.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/store/memberships.store.cjs +0 -20
- package/dist/martyrs/src/modules/organizations/store/memberships.store.cjs.map +0 -1
- package/dist/martyrs/src/modules/organizations/store/organizations.cjs +0 -131
- package/dist/martyrs/src/modules/organizations/store/organizations.cjs.map +0 -1
- package/dist/martyrs/src/modules/pages/pages.client.cjs +0 -34
- package/dist/martyrs/src/modules/pages/pages.client.cjs.map +0 -1
- package/dist/martyrs/src/modules/pages/pages.router.cjs +0 -101
- package/dist/martyrs/src/modules/pages/pages.router.cjs.map +0 -1
- package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.cjs +0 -105
- package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/pages/views/components/pages/Page.vue.cjs +0 -159
- package/dist/martyrs/src/modules/pages/views/components/pages/Page.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.cjs +0 -113
- package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/pages/views/components/pages/Pages.vue.cjs +0 -57
- package/dist/martyrs/src/modules/pages/views/components/pages/Pages.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.cjs +0 -103
- package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/pages/views/store/pages.cjs +0 -65
- package/dist/martyrs/src/modules/pages/views/store/pages.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardCategory.vue.cjs +0 -74
- package/dist/martyrs/src/modules/products/components/blocks/CardCategory.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.cjs +0 -99
- package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.cjs +0 -121
- package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.cjs +0 -129
- package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.cjs +0 -106
- package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.cjs +0 -123
- package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/elements/Image360.vue.cjs +0 -136
- package/dist/martyrs/src/modules/products/components/elements/Image360.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/elements/Price.vue.cjs +0 -45
- package/dist/martyrs/src/modules/products/components/elements/Price.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.cjs +0 -79
- package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/elements/THC.vue2.cjs +0 -89
- package/dist/martyrs/src/modules/products/components/elements/THC.vue2.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/elements/THC.vue2.js.map +0 -1
- package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs +0 -197
- package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs +0 -272
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs +0 -251
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs +0 -438
- package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/pages/ProductRecommmendation.vue.cjs +0 -106
- package/dist/martyrs/src/modules/products/components/pages/ProductRecommmendation.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs +0 -454
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.cjs +0 -168
- package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.cjs +0 -318
- package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.cjs +0 -147
- package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.cjs +0 -129
- package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.cjs +0 -500
- package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.cjs +0 -195
- package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/sections/HeroRecommendation.vue.cjs +0 -120
- package/dist/martyrs/src/modules/products/components/sections/HeroRecommendation.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.cjs +0 -142
- package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/sections/ProductsPopular.vue.cjs +0 -49
- package/dist/martyrs/src/modules/products/components/sections/ProductsPopular.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.cjs +0 -155
- package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs +0 -240
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/products.client.cjs +0 -86
- package/dist/martyrs/src/modules/products/products.client.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/router/categories.router.cjs +0 -174
- package/dist/martyrs/src/modules/products/router/categories.router.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/router/products.router.cjs +0 -340
- package/dist/martyrs/src/modules/products/router/products.router.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/store/categories.cjs +0 -123
- package/dist/martyrs/src/modules/products/store/categories.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/store/products.cjs +0 -229
- package/dist/martyrs/src/modules/products/store/products.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/store/variants.store.cjs +0 -6
- package/dist/martyrs/src/modules/products/store/variants.store.cjs.map +0 -1
- package/dist/martyrs/src/modules/rents/rents.client.cjs +0 -45
- package/dist/martyrs/src/modules/rents/rents.client.cjs.map +0 -1
- package/dist/martyrs/src/modules/rents/rents.router.cjs +0 -110
- package/dist/martyrs/src/modules/rents/rents.router.cjs.map +0 -1
- package/dist/martyrs/src/modules/rents/views/components/blocks/CardRent.vue.cjs +0 -55
- package/dist/martyrs/src/modules/rents/views/components/blocks/CardRent.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/Gant/DateLabel.vue.cjs +0 -25
- package/dist/martyrs/src/modules/rents/views/components/pages/Gant/DateLabel.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttBar.vue.cjs +0 -44
- package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttBar.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttChart.vue.cjs +0 -403
- package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttChart.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttHeaderCell.vue.cjs +0 -52
- package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttHeaderCell.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttToolbar.vue.cjs +0 -164
- package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttToolbar.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.cjs +0 -156
- package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.cjs +0 -224
- package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/rents/views/store/rents.store.cjs +0 -143
- package/dist/martyrs/src/modules/rents/views/store/rents.store.cjs.map +0 -1
- package/dist/martyrs/src/modules/reports/components/pages/BackofficeReports.vue.cjs +0 -54
- package/dist/martyrs/src/modules/reports/components/pages/BackofficeReports.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.cjs +0 -104
- package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/reports/reports.client.cjs +0 -29
- package/dist/martyrs/src/modules/reports/reports.client.cjs.map +0 -1
- package/dist/martyrs/src/modules/reports/reports.router.cjs +0 -34
- package/dist/martyrs/src/modules/reports/reports.router.cjs.map +0 -1
- package/dist/martyrs/src/modules/reports/store/reports.cjs +0 -103
- package/dist/martyrs/src/modules/reports/store/reports.cjs.map +0 -1
- package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.cjs +0 -119
- package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/spots/components/blocks/SpotMemberModify.vue.cjs +0 -85
- package/dist/martyrs/src/modules/spots/components/blocks/SpotMemberModify.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/spots/components/blocks/SpotSub.vue.cjs +0 -32
- package/dist/martyrs/src/modules/spots/components/blocks/SpotSub.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.cjs +0 -198
- package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/spots/components/pages/Map.vue.cjs +0 -531
- package/dist/martyrs/src/modules/spots/components/pages/Map.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/spots/components/pages/Spot.vue.cjs +0 -157
- package/dist/martyrs/src/modules/spots/components/pages/Spot.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs +0 -235
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/spots/components/pages/Spots.vue.cjs +0 -135
- package/dist/martyrs/src/modules/spots/components/pages/Spots.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.cjs +0 -803
- package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/spots/router/spots.router.cjs +0 -263
- package/dist/martyrs/src/modules/spots/router/spots.router.cjs.map +0 -1
- package/dist/martyrs/src/modules/spots/spots.client.cjs +0 -43
- package/dist/martyrs/src/modules/spots/spots.client.cjs.map +0 -1
- package/dist/martyrs/src/modules/spots/store/spots.cjs +0 -80
- package/dist/martyrs/src/modules/spots/store/spots.cjs.map +0 -1
- package/dist/martyrs/src/modules/wallet/views/components/blocks/CardBalanceReplenished.vue.cjs +0 -43
- package/dist/martyrs/src/modules/wallet/views/components/blocks/CardBalanceReplenished.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/wallet/views/components/blocks/CardDeposit.vue.cjs +0 -47
- package/dist/martyrs/src/modules/wallet/views/components/blocks/CardDeposit.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/wallet/views/components/blocks/CashDeposit.vue.cjs +0 -29
- package/dist/martyrs/src/modules/wallet/views/components/blocks/CashDeposit.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.cjs +0 -89
- package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDepositProcessing.vue.cjs +0 -136
- package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDepositProcessing.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/wallet/views/components/elements/ConnectMetamask.vue.cjs +0 -183
- package/dist/martyrs/src/modules/wallet/views/components/elements/ConnectMetamask.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.cjs +0 -238
- package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/wallet/views/localization/wallet.json.cjs +0 -9
- package/dist/martyrs/src/modules/wallet/views/localization/wallet.json.cjs.map +0 -1
- package/dist/martyrs/src/modules/wallet/views/store/wallet.store.cjs +0 -134
- package/dist/martyrs/src/modules/wallet/views/store/wallet.store.cjs.map +0 -1
- package/dist/martyrs.cjs.js +0 -1
- package/dist/metadata.schema-BGykn-_r.cjs +0 -267
- package/dist/music.server.cjs +0 -2114
- package/dist/node_modules/.pnpm/@capacitor-mlkit_barcode-scanning@7.1.0_@capacitor_core@7.0.1/node_modules/@capacitor-mlkit/barcode-scanning/dist/esm/definitions.cjs +0 -83
- package/dist/node_modules/.pnpm/@capacitor-mlkit_barcode-scanning@7.1.0_@capacitor_core@7.0.1/node_modules/@capacitor-mlkit/barcode-scanning/dist/esm/definitions.cjs.map +0 -1
- package/dist/node_modules/.pnpm/@capacitor-mlkit_barcode-scanning@7.1.0_@capacitor_core@7.0.1/node_modules/@capacitor-mlkit/barcode-scanning/dist/esm/index.cjs +0 -45
- package/dist/node_modules/.pnpm/@capacitor-mlkit_barcode-scanning@7.1.0_@capacitor_core@7.0.1/node_modules/@capacitor-mlkit/barcode-scanning/dist/esm/index.cjs.map +0 -1
- package/dist/node_modules/.pnpm/@capacitor-mlkit_barcode-scanning@7.1.0_@capacitor_core@7.0.1/node_modules/@capacitor-mlkit/barcode-scanning/dist/esm/web.cjs +0 -139
- package/dist/node_modules/.pnpm/@capacitor-mlkit_barcode-scanning@7.1.0_@capacitor_core@7.0.1/node_modules/@capacitor-mlkit/barcode-scanning/dist/esm/web.cjs.map +0 -1
- package/dist/node_modules/.pnpm/@capacitor_core@7.0.1/node_modules/@capacitor/core/dist/index.cjs +0 -485
- package/dist/node_modules/.pnpm/@capacitor_core@7.0.1/node_modules/@capacitor/core/dist/index.cjs.map +0 -1
- package/dist/node_modules/.pnpm/@capacitor_device@7.0.0_@capacitor_core@7.0.1/node_modules/@capacitor/device/dist/esm/index.cjs +0 -8
- package/dist/node_modules/.pnpm/@capacitor_device@7.0.0_@capacitor_core@7.0.1/node_modules/@capacitor/device/dist/esm/index.cjs.map +0 -1
- package/dist/node_modules/.pnpm/@capacitor_device@7.0.0_@capacitor_core@7.0.1/node_modules/@capacitor/device/dist/esm/web.cjs +0 -146
- package/dist/node_modules/.pnpm/@capacitor_device@7.0.0_@capacitor_core@7.0.1/node_modules/@capacitor/device/dist/esm/web.cjs.map +0 -1
- package/dist/node_modules/.pnpm/@capacitor_keyboard@7.0.0_@capacitor_core@7.0.1/node_modules/@capacitor/keyboard/dist/esm/definitions.cjs +0 -16
- package/dist/node_modules/.pnpm/@capacitor_keyboard@7.0.0_@capacitor_core@7.0.1/node_modules/@capacitor/keyboard/dist/esm/definitions.cjs.map +0 -1
- package/dist/node_modules/.pnpm/@capacitor_keyboard@7.0.0_@capacitor_core@7.0.1/node_modules/@capacitor/keyboard/dist/esm/index.cjs +0 -15
- package/dist/node_modules/.pnpm/@capacitor_keyboard@7.0.0_@capacitor_core@7.0.1/node_modules/@capacitor/keyboard/dist/esm/index.cjs.map +0 -1
- package/dist/node_modules/.pnpm/@capacitor_push-notifications@7.0.0_@capacitor_core@7.0.1/node_modules/@capacitor/push-notifications/dist/esm/index.cjs +0 -6
- package/dist/node_modules/.pnpm/@capacitor_push-notifications@7.0.0_@capacitor_core@7.0.1/node_modules/@capacitor/push-notifications/dist/esm/index.cjs.map +0 -1
- package/dist/node_modules/.pnpm/@googlemaps_js-api-loader@1.16.8/node_modules/@googlemaps/js-api-loader/dist/index.cjs +0 -335
- package/dist/node_modules/.pnpm/@googlemaps_js-api-loader@1.16.8/node_modules/@googlemaps/js-api-loader/dist/index.cjs.map +0 -1
- package/dist/node_modules/.pnpm/@unhead_dom@1.11.20/node_modules/@unhead/dom/dist/index.cjs +0 -198
- package/dist/node_modules/.pnpm/@unhead_dom@1.11.20/node_modules/@unhead/dom/dist/index.cjs.map +0 -1
- package/dist/node_modules/.pnpm/@unhead_shared@1.11.20/node_modules/@unhead/shared/dist/index.cjs +0 -311
- package/dist/node_modules/.pnpm/@unhead_shared@1.11.20/node_modules/@unhead/shared/dist/index.cjs.map +0 -1
- package/dist/node_modules/.pnpm/@unhead_ssr@1.11.20/node_modules/@unhead/ssr/dist/index.cjs +0 -97
- package/dist/node_modules/.pnpm/@unhead_ssr@1.11.20/node_modules/@unhead/ssr/dist/index.cjs.map +0 -1
- package/dist/node_modules/.pnpm/@unhead_vue@1.11.20_vue@3.5.13_typescript@5.8.3_/node_modules/@unhead/vue/dist/shared/vue.-sixQ7xP.cjs +0 -38
- package/dist/node_modules/.pnpm/@unhead_vue@1.11.20_vue@3.5.13_typescript@5.8.3_/node_modules/@unhead/vue/dist/shared/vue.-sixQ7xP.cjs.map +0 -1
- package/dist/node_modules/.pnpm/@unhead_vue@1.11.20_vue@3.5.13_typescript@5.8.3_/node_modules/@unhead/vue/dist/shared/vue.ziyDaVMR.cjs +0 -78
- package/dist/node_modules/.pnpm/@unhead_vue@1.11.20_vue@3.5.13_typescript@5.8.3_/node_modules/@unhead/vue/dist/shared/vue.ziyDaVMR.cjs.map +0 -1
- package/dist/node_modules/.pnpm/@vue_server-renderer@3.5.13_vue@3.5.13_typescript@5.8.3_/node_modules/@vue/server-renderer/dist/server-renderer.esm-bundler.cjs +0 -755
- package/dist/node_modules/.pnpm/@vue_server-renderer@3.5.13_vue@3.5.13_typescript@5.8.3_/node_modules/@vue/server-renderer/dist/server-renderer.esm-bundler.cjs.map +0 -1
- package/dist/node_modules/.pnpm/@vue_shared@3.5.13/node_modules/@vue/shared/dist/shared.esm-bundler.cjs +0 -209
- package/dist/node_modules/.pnpm/@vue_shared@3.5.13/node_modules/@vue/shared/dist/shared.esm-bundler.cjs.map +0 -1
- package/dist/node_modules/.pnpm/capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.0.1/node_modules/capacitor-plugin-app-tracking-transparency/dist/esm/index.cjs +0 -8
- package/dist/node_modules/.pnpm/capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.0.1/node_modules/capacitor-plugin-app-tracking-transparency/dist/esm/index.cjs.map +0 -1
- package/dist/node_modules/.pnpm/capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.0.1/node_modules/capacitor-plugin-app-tracking-transparency/dist/esm/web.cjs +0 -13
- package/dist/node_modules/.pnpm/capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.0.1/node_modules/capacitor-plugin-app-tracking-transparency/dist/esm/web.cjs.map +0 -1
- package/dist/node_modules/.pnpm/dayjs@1.11.13/node_modules/dayjs/dayjs.min.cjs +0 -287
- package/dist/node_modules/.pnpm/dayjs@1.11.13/node_modules/dayjs/dayjs.min.cjs.map +0 -1
- package/dist/node_modules/.pnpm/dayjs@1.11.13/node_modules/dayjs/plugin/weekOfYear.cjs +0 -34
- package/dist/node_modules/.pnpm/dayjs@1.11.13/node_modules/dayjs/plugin/weekOfYear.cjs.map +0 -1
- package/dist/node_modules/.pnpm/dijkstrajs@1.0.3/node_modules/dijkstrajs/dijkstra.cjs +0 -106
- package/dist/node_modules/.pnpm/dijkstrajs@1.0.3/node_modules/dijkstrajs/dijkstra.cjs.map +0 -1
- package/dist/node_modules/.pnpm/embla-carousel-reactive-utils@8.5.2_embla-carousel@8.5.2/node_modules/embla-carousel-reactive-utils/esm/embla-carousel-reactive-utils.esm.cjs +0 -43
- package/dist/node_modules/.pnpm/embla-carousel-reactive-utils@8.5.2_embla-carousel@8.5.2/node_modules/embla-carousel-reactive-utils/esm/embla-carousel-reactive-utils.esm.cjs.map +0 -1
- package/dist/node_modules/.pnpm/embla-carousel-vue@8.5.2_vue@3.5.13_typescript@5.8.3_/node_modules/embla-carousel-vue/esm/embla-carousel-vue.esm.cjs +0 -43
- package/dist/node_modules/.pnpm/embla-carousel-vue@8.5.2_vue@3.5.13_typescript@5.8.3_/node_modules/embla-carousel-vue/esm/embla-carousel-vue.esm.cjs.map +0 -1
- package/dist/node_modules/.pnpm/embla-carousel@8.5.2/node_modules/embla-carousel/esm/embla-carousel.esm.cjs +0 -1631
- package/dist/node_modules/.pnpm/embla-carousel@8.5.2/node_modules/embla-carousel/esm/embla-carousel.esm.cjs.map +0 -1
- package/dist/node_modules/.pnpm/hookable@5.5.3/node_modules/hookable/dist/index.cjs +0 -209
- package/dist/node_modules/.pnpm/hookable@5.5.3/node_modules/hookable/dist/index.cjs.map +0 -1
- package/dist/node_modules/.pnpm/js-cookie@3.0.5/node_modules/js-cookie/dist/js.cookie.cjs +0 -101
- package/dist/node_modules/.pnpm/js-cookie@3.0.5/node_modules/js-cookie/dist/js.cookie.cjs.map +0 -1
- package/dist/node_modules/.pnpm/lodash.merge@4.6.2/node_modules/lodash.merge/index.cjs +0 -689
- package/dist/node_modules/.pnpm/lodash.merge@4.6.2/node_modules/lodash.merge/index.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/browser.cjs +0 -79
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/browser.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/can-promise.cjs +0 -14
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/can-promise.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/alignment-pattern.cjs +0 -43
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/alignment-pattern.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/alphanumeric-data.cjs +0 -85
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/alphanumeric-data.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/bit-buffer.cjs +0 -40
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/bit-buffer.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/bit-matrix.cjs +0 -34
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/bit-matrix.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/byte-data.cjs +0 -36
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/byte-data.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/error-correction-code.cjs +0 -367
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/error-correction-code.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/error-correction-level.cjs +0 -52
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/error-correction-level.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/finder-pattern.cjs +0 -25
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/finder-pattern.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/format-info.cjs +0 -24
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/format-info.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/galois-field.cjs +0 -38
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/galois-field.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/kanji-data.cjs +0 -46
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/kanji-data.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/mask-pattern.cjs +0 -149
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/mask-pattern.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/mode.cjs +0 -90
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/mode.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/numeric-data.cjs +0 -41
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/numeric-data.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/polynomial.cjs +0 -44
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/polynomial.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/qrcode.cjs +0 -279
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/qrcode.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/reed-solomon-encoder.cjs +0 -38
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/reed-solomon-encoder.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/regex.cjs +0 -33
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/regex.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/segments.cjs +0 -201
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/segments.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/utils.cjs +0 -84
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/utils.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/version-check.cjs +0 -14
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/version-check.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/version.cjs +0 -107
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/version.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/canvas.cjs +0 -61
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/canvas.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/svg-tag.cjs +0 -64
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/svg-tag.cjs.map +0 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/utils.cjs +0 -87
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/utils.cjs.map +0 -1
- package/dist/node_modules/.pnpm/unhead@1.11.20/node_modules/unhead/dist/index.cjs +0 -423
- package/dist/node_modules/.pnpm/unhead@1.11.20/node_modules/unhead/dist/index.cjs.map +0 -1
- package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/native.cjs +0 -6
- package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/native.cjs.map +0 -1
- package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/rng.cjs +0 -15
- package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/rng.cjs.map +0 -1
- package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/stringify.cjs +0 -11
- package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/stringify.cjs.map +0 -1
- package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/v4.cjs +0 -20
- package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/v4.cjs.map +0 -1
- package/dist/node_modules/.pnpm/vue-draggable-next@2.2.1_sortablejs@1.15.6_vue@3.5.13_typescript@5.8.3_/node_modules/vue-draggable-next/dist/vue-draggable-next.esm-bundler.cjs +0 -2484
- package/dist/node_modules/.pnpm/vue-draggable-next@2.2.1_sortablejs@1.15.6_vue@3.5.13_typescript@5.8.3_/node_modules/vue-draggable-next/dist/vue-draggable-next.esm-bundler.cjs.map +0 -1
- package/dist/notifications.server.cjs +0 -822
- package/dist/orders.server.cjs +0 -1284
- package/dist/organizations.server.cjs +0 -1590
- package/dist/ownership.schema-CRYdbemm.cjs +0 -42
- package/dist/pages.server.cjs +0 -142
- package/dist/products.server.cjs +0 -1677
- package/dist/profile.schema-l0Dk4Ptu.cjs +0 -91
- package/dist/queryProcessor-DJUTwCLN.cjs +0 -329
- package/dist/rents.server.cjs +0 -509
- package/dist/reports.server.cjs +0 -133
- package/dist/socials.schema-CqEHax2w.cjs +0 -24
- package/dist/spots.server.cjs +0 -331
- package/dist/web-pd1gb6DR.cjs +0 -1
- package/src/modules/music/router/library.router.js +0 -26
- package/src/modules/music/router/music.router.js +0 -176
- /package/src/modules/core/views/classes/{core.i18n.js → i18n.manager.js} +0 -0
|
@@ -5,7 +5,7 @@ import _sfc_main$1 from "../../../../components/Block/Block.vue.js";
|
|
|
5
5
|
import _sfc_main$4 from "../../../../components/Button/Button.vue2.js";
|
|
6
6
|
import _sfc_main$3 from "../../../../components/Checkbox/Checkbox.vue.js";
|
|
7
7
|
import Select from "../../../../components/Select/Select.vue.js";
|
|
8
|
-
import UploadImage from "../../../../components/UploadImage/UploadImage.
|
|
8
|
+
import UploadImage from "../../../../components/UploadImage/UploadImage.vue.js";
|
|
9
9
|
import Upload from "../../../../components/Upload/Upload.vue2.js";
|
|
10
10
|
import _sfc_main$2 from "../../../icons/navigation/IconCross.vue.js";
|
|
11
11
|
import BlockMultiselect from "../../../core/views/components/blocks/BlockMultiselect.vue.js";
|
|
@@ -13,7 +13,7 @@ import { actions } from "../../store/tracks.js";
|
|
|
13
13
|
import * as artists from "../../store/artists.js";
|
|
14
14
|
import * as albums from "../../store/albums.js";
|
|
15
15
|
import * as genres from "../../store/genres.js";
|
|
16
|
-
import {
|
|
16
|
+
import { useStore } from "../../../core/views/store/core.store.js";
|
|
17
17
|
import { state } from "../../../auth/views/store/auth.js";
|
|
18
18
|
const _hoisted_1 = { class: "pd-medium" };
|
|
19
19
|
const _hoisted_2 = { class: "h2 mn-b-medium" };
|
|
@@ -68,6 +68,7 @@ const _sfc_main = {
|
|
|
68
68
|
},
|
|
69
69
|
emits: ["uploaded"],
|
|
70
70
|
setup(__props, { emit: __emit }) {
|
|
71
|
+
const store = useStore();
|
|
71
72
|
const { state: artistsState, actions: artistsActions } = artists;
|
|
72
73
|
const { state: albumsState, actions: albumsActions } = albums;
|
|
73
74
|
const { state: genresState, actions: genresActions } = genres;
|
|
@@ -119,7 +120,7 @@ const _sfc_main = {
|
|
|
119
120
|
try {
|
|
120
121
|
const fetchedTrack = await actions.fetchTrackByUrl(props.url);
|
|
121
122
|
if (!fetchedTrack) {
|
|
122
|
-
actions
|
|
123
|
+
store.core.actions.setError({
|
|
123
124
|
message: "Track not found"
|
|
124
125
|
});
|
|
125
126
|
return;
|
|
@@ -142,7 +143,7 @@ const _sfc_main = {
|
|
|
142
143
|
});
|
|
143
144
|
} catch (error) {
|
|
144
145
|
console.error("Error fetching track:", error);
|
|
145
|
-
actions
|
|
146
|
+
store.core.actions.setError({
|
|
146
147
|
message: "Failed to load track details"
|
|
147
148
|
});
|
|
148
149
|
}
|
|
@@ -214,14 +215,14 @@ const _sfc_main = {
|
|
|
214
215
|
}, 1e3);
|
|
215
216
|
} catch (error) {
|
|
216
217
|
console.error("Error saving track:", error);
|
|
217
|
-
actions
|
|
218
|
+
store.core.actions.setError({
|
|
218
219
|
message: "Failed to save track"
|
|
219
220
|
});
|
|
220
221
|
}
|
|
221
222
|
};
|
|
222
223
|
const handleUploadError = (error) => {
|
|
223
224
|
console.error("Upload error:", error);
|
|
224
|
-
actions
|
|
225
|
+
store.core.actions.setError({
|
|
225
226
|
message: "Error uploading file"
|
|
226
227
|
});
|
|
227
228
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TrackForm.vue.js","sources":["../../../../../../../src/modules/music/components/forms/TrackForm.vue"],"sourcesContent":["<!-- components/forms/TrackForm.vue -->\n<template>\n <div class=\"pd-medium\">\n <h2 class=\"h2 mn-b-medium\">{{ editMode ? 'Edit Track' : 'Upload Track' }}</h2>\n \n <form @submit.prevent=\"submitForm\" class=\"cols-1 gap-regular\">\n <!-- Media Section -->\n <div class=\"bg-light pd-medium radius-medium\">\n <h3 class=\"h3 mn-b-medium\">Media</h3>\n \n <div class=\"cols-2-fit-content mobile:cols-1 gap-regular\">\n <!-- Track Cover -->\n <div>\n <p class=\"p-medium mn-b-small\">Cover Image</p>\n <UploadImage\n v-model:photo=\"form.coverUrl\"\n uploadPath=\"tracks/covers\"\n class=\"aspect-1x1 h-15r radius-small o-hidden mn-b-small\"\n @error=\"handleUploadError\"\n />\n </div>\n \n <!-- Audio File -->\n <div>\n <p class=\"p-medium mn-b-small\">Audio File</p>\n <Upload\n v-model:field=\"form.fileUrl\"\n @file-change=\"(url) => form.fileUrl = url\"\n type=\"file\"\n uploadPath=\"tracks/audio\"\n class=\"w-100 h-15r bg-white radius-small pd-small\"\n :validation=\"validationErrors.fileUrl\"\n />\n </div>\n </div>\n </div>\n \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 <!-- Track Title -->\n <Field\n v-model:field=\"form.title\"\n label=\"Track Title\"\n placeholder=\"Enter track title\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n :validation=\"validationErrors.title\"\n />\n \n <!-- URL -->\n <Field\n v-model:field=\"form.url\"\n label=\"URL\"\n placeholder=\"Leave blank for auto-generation based on the track title\"\n class=\"bg-white radius-small pd-small mn-b-small\"\n />\n\n <!-- Artist Selection -->\n \n\n \n \n <!-- Release Date -->\n <Field\n v-model:field=\"form.releaseDate\"\n label=\"Release Date\"\n type=\"date\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n :validation=\"validationErrors.releaseDate\"\n />\n \n <!-- Duration -->\n <Field\n v-model:field=\"form.duration\"\n label=\"Duration (seconds)\"\n type=\"number\"\n placeholder=\"Track duration in seconds\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n />\n </div> \n\n <Block title=\"Artist\">\n <BlockMultiselect\n v-model=\"form.artists\"\n placeholder=\"Search artists...\"\n :multiple=\"false\"\n :transform=\"(item) => ({ _id: item._id, name: item.name })\"\n :store=\"{\n read: (options) => artistsActions.fetchArtists(options),\n state: artistsState\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 artists found',\n description: 'Try different search terms or create a new artist',\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 <!-- Selected artist slot -->\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 <!-- Artist item slot -->\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.bio\" class=\"t-small t-transp\">{{ item.bio }}</p>\n </div>\n </div>\n </template>\n </BlockMultiselect>\n </Block>\n\n <!-- Album Selection -->\n <Block title=\"Album (Optional)\">\n <BlockMultiselect\n v-model=\"form.albums\"\n placeholder=\"Search albums...\"\n :multiple=\"false\"\n :transform=\"(item) => ({ _id: item._id, title: item.title })\"\n :store=\"{\n read: (options) => albumsActions.fetchAlbums(options),\n state: albumsState\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 albums found',\n description: 'Try different search terms or create a new album',\n class: 'radius-small'\n }\n }\"\n key=\"_id\"\n :label=\"item => item.title\"\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 <!-- Selected album slot -->\n <template #selected=\"{ item, clear }\">\n <div class=\"flex-nowrap flex-v-center flex gap-thin\">\n <span class=\"t-medium\">{{ item?.title || 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 <!-- Album item slot -->\n <template #item=\"{ item }\">\n <div class=\"flex-nowrap flex-v-center flex\">\n <div class=\"w-100\">\n <p class=\"t-medium\">{{ item.title }}</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 <!-- Genres Section -->\n <Block title=\"Genres\">\n <BlockMultiselect\n v-model=\"form.genres\"\n placeholder=\"Search genres...\"\n :multiple=\"true\"\n :transform=\"(item) => ({ _id: item._id, name: item.name })\"\n :store=\"{\n read: (options) => genresActions.fetchGenres(options),\n state: genresState\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 <!-- Selected genres slot -->\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 <!-- Genre item slot -->\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 <!-- Content Settings Section -->\n <div class=\"bg-light pd-medium radius-medium\">\n <h3 class=\"h3 mn-b-medium\">Content Settings</h3>\n \n <Checkbox\n v-model:checkbox=\"form.isExplicit\"\n label=\"Explicit Content\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n />\n \n <Checkbox\n v-model:checkbox=\"form.isPublic\"\n label=\"Public Track\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n />\n </div>\n \n \n \n <!-- Additional Info Section -->\n <div class=\"bg-light pd-medium radius-medium\">\n <h3 class=\"h3 mn-b-medium\">Additional Information</h3>\n \n <!-- Lyrics -->\n <Field\n v-model:field=\"form.lyrics\"\n label=\"Lyrics (Optional)\"\n type=\"textarea\"\n placeholder=\"Enter track lyrics\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n />\n </div>\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=\"form.status\"\n :options=\"statusOptions\"\n label=\"Status\"\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!' : 'Uploaded!'\n }\"\n >\n {{ editMode ? 'Update Track' : 'Upload Track' }}\n </Button>\n </div>\n </form>\n </div>\n</template>\n\n<script setup>\nimport { ref, reactive, onMounted, 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 Upload from '@martyrs/src/components/Upload/Upload.vue';\nimport IconCross from '@martyrs/src/modules/icons/navigation/IconCross.vue';\n\nimport BlockMultiselect from '@martyrs/src/modules/core/views/components/blocks/BlockMultiselect.vue';\n\n// Import stores\nimport * as tracksStore from '../../store/tracks';\nimport * as artistsStore from '../../store/artists';\nimport * as albumsStore from '../../store/albums';\nimport * as genresStore from '../../store/genres';\nimport * as core from '@martyrs/src/modules/core/views/store/core.store.js';\nimport * as auth from '@martyrs/src/modules/auth/views/store/auth.js';\n\n// Store states and actions\nconst { state: artistsState, actions: artistsActions } = artistsStore;\nconst { state: albumsState, actions: albumsActions } = albumsStore;\nconst { state: genresState, actions: genresActions } = genresStore;\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\nconst emit = defineEmits(['uploaded']);\n\n// State\nconst form = reactive({\n title: '',\n artists: [],\n albums: [],\n genres: [],\n duration: 0,\n fileUrl: '',\n coverUrl: '',\n releaseDate: new Date().toISOString().split('T')[0],\n isExplicit: false,\n isPublic: true,\n lyrics: '',\n url: '',\n status: 'draft'\n});\n\nconst validationErrors = reactive({\n title: false,\n fileUrl: false,\n releaseDate: false\n});\n\n// Track if URL was manually entered\nconst urlManuallySet = ref(false);\n\n// Status options\nconst statusOptions = [\n 'draft',\n 'published',\n 'archived'\n];\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 track title to auto-generate URL\nwatch(() => form.title, (newTitle) => {\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 form.url = generateSlug(newTitle);\n }\n});\n\n// Watch for manual changes to URL field\nwatch(() => form.url, (newUrl, oldUrl) => {\n // If user manually changes URL, mark as manually set\n if (newUrl !== generateSlug(form.title)) {\n urlManuallySet.value = true;\n }\n});\n\nconst fetchTrack = async () => {\n if (!props.url) return;\n \n try {\n const fetchedTrack = await tracksStore.actions.fetchTrackByUrl(props.url);\n \n if (!fetchedTrack) {\n core.actions.setError({\n message: 'Track not found'\n });\n return;\n }\n \n // Update local track data\n Object.assign(form, {\n title: fetchedTrack.title || '',\n artists: fetchedTrack.artist ? [fetchedTrack.artist] : [],\n albums: fetchedTrack.album ? [fetchedTrack.album] : [],\n genres: fetchedTrack.genres || [],\n duration: fetchedTrack.duration || 0,\n fileUrl: fetchedTrack.fileUrl || '',\n coverUrl: fetchedTrack.coverUrl || '',\n releaseDate: fetchedTrack.releaseDate ? new Date(fetchedTrack.releaseDate).toISOString().split('T')[0] : '',\n isExplicit: fetchedTrack.isExplicit || false,\n isPublic: fetchedTrack.isPublic !== false,\n lyrics: fetchedTrack.lyrics || '',\n url: fetchedTrack.url || '',\n status: fetchedTrack.status || 'draft',\n _id: fetchedTrack._id\n });\n \n } catch (error) {\n console.error('Error fetching track:', error);\n core.actions.setError({\n message: 'Failed to load track details'\n });\n }\n};\n\nconst validateForm = () => {\n let isValid = true;\n \n // Validate title\n if (!form.title.trim()) {\n validationErrors.title = {\n message: 'Track title is required'\n };\n isValid = false;\n } else {\n validationErrors.title = false;\n }\n \n // Validate file URL\n if (!form.fileUrl) {\n validationErrors.fileUrl = {\n message: 'Audio file is required'\n };\n isValid = false;\n } else {\n validationErrors.fileUrl = false;\n }\n \n return isValid;\n};\n\nconst submitForm = async () => {\n if (!validateForm()) {\n return;\n }\n \n try {\n console.log('=== FORM DATA DEBUG ===');\n console.log('form.artists:', form.artists);\n console.log('form.albums:', form.albums);\n console.log('form.albums.length:', form.albums.length);\n console.log('form.albums[0]:', form.albums[0]);\n console.log('form.albums[0]?._id:', form.albums[0]?._id);\n \n // Prepare data for submission\n const formData = {\n ...form,\n artist: form.artists.length > 0 ? (form.artists[0]._id || form.artists[0]) : null,\n album: form.albums && form.albums._id ? form.albums._id : null,\n genre: form.genres.map(genre => genre._id || genre)\n };\n \n // Remove the original arrays/objects to avoid conflicts\n delete formData.artists;\n delete formData.albums;\n delete formData.genres;\n \n console.log('formData after preparation:', formData);\n console.log('formData.album:', formData.album);\n console.log('typeof formData.album:', typeof formData.album);\n \n // Add ownership data if creating new track\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 tracksStore.actions.updateTrack(formData);\n } else {\n result = await tracksStore.actions.createTrack(formData);\n }\n \n // Navigate to track detail page\n setTimeout(() => {\n router.push({\n name: 'track',\n params: { url: result.url }\n });\n }, 1000);\n \n } catch (error) {\n console.error('Error saving track:', error);\n core.actions.setError({\n message: 'Failed to save track'\n });\n }\n};\nconst handleUploadError = (error) => {\n console.error('Upload error:', error);\n core.actions.setError({\n message: 'Error uploading file'\n });\n};\n\n// Lifecycle hooks\nonMounted(async () => {\n if (props.editMode) {\n await fetchTrack();\n // Mark URL as manually set in edit mode to prevent auto-generation\n urlManuallySet.value = true;\n }\n});\n</script>"],"names":["artistsStore","albumsStore","genresStore","tracksStore.actions","core.actions","auth.state"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TrackForm.vue.js","sources":["../../../../../../../src/modules/music/components/forms/TrackForm.vue"],"sourcesContent":["<!-- components/forms/TrackForm.vue -->\n<template>\n <div class=\"pd-medium\">\n <h2 class=\"h2 mn-b-medium\">{{ editMode ? 'Edit Track' : 'Upload Track' }}</h2>\n \n <form @submit.prevent=\"submitForm\" class=\"cols-1 gap-regular\">\n <!-- Media Section -->\n <div class=\"bg-light pd-medium radius-medium\">\n <h3 class=\"h3 mn-b-medium\">Media</h3>\n \n <div class=\"cols-2-fit-content mobile:cols-1 gap-regular\">\n <!-- Track Cover -->\n <div>\n <p class=\"p-medium mn-b-small\">Cover Image</p>\n <UploadImage\n v-model:photo=\"form.coverUrl\"\n uploadPath=\"tracks/covers\"\n class=\"aspect-1x1 h-15r radius-small o-hidden mn-b-small\"\n @error=\"handleUploadError\"\n />\n </div>\n \n <!-- Audio File -->\n <div>\n <p class=\"p-medium mn-b-small\">Audio File</p>\n <Upload\n v-model:field=\"form.fileUrl\"\n @file-change=\"(url) => form.fileUrl = url\"\n type=\"file\"\n uploadPath=\"tracks/audio\"\n class=\"w-100 h-15r bg-white radius-small pd-small\"\n :validation=\"validationErrors.fileUrl\"\n />\n </div>\n </div>\n </div>\n \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 <!-- Track Title -->\n <Field\n v-model:field=\"form.title\"\n label=\"Track Title\"\n placeholder=\"Enter track title\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n :validation=\"validationErrors.title\"\n />\n \n <!-- URL -->\n <Field\n v-model:field=\"form.url\"\n label=\"URL\"\n placeholder=\"Leave blank for auto-generation based on the track title\"\n class=\"bg-white radius-small pd-small mn-b-small\"\n />\n\n <!-- Artist Selection -->\n \n\n \n \n <!-- Release Date -->\n <Field\n v-model:field=\"form.releaseDate\"\n label=\"Release Date\"\n type=\"date\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n :validation=\"validationErrors.releaseDate\"\n />\n \n <!-- Duration -->\n <Field\n v-model:field=\"form.duration\"\n label=\"Duration (seconds)\"\n type=\"number\"\n placeholder=\"Track duration in seconds\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n />\n </div> \n\n <Block title=\"Artist\">\n <BlockMultiselect\n v-model=\"form.artists\"\n placeholder=\"Search artists...\"\n :multiple=\"false\"\n :transform=\"(item) => ({ _id: item._id, name: item.name })\"\n :store=\"{\n read: (options) => artistsActions.fetchArtists(options),\n state: artistsState\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 artists found',\n description: 'Try different search terms or create a new artist',\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 <!-- Selected artist slot -->\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 <!-- Artist item slot -->\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.bio\" class=\"t-small t-transp\">{{ item.bio }}</p>\n </div>\n </div>\n </template>\n </BlockMultiselect>\n </Block>\n\n <!-- Album Selection -->\n <Block title=\"Album (Optional)\">\n <BlockMultiselect\n v-model=\"form.albums\"\n placeholder=\"Search albums...\"\n :multiple=\"false\"\n :transform=\"(item) => ({ _id: item._id, title: item.title })\"\n :store=\"{\n read: (options) => albumsActions.fetchAlbums(options),\n state: albumsState\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 albums found',\n description: 'Try different search terms or create a new album',\n class: 'radius-small'\n }\n }\"\n key=\"_id\"\n :label=\"item => item.title\"\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 <!-- Selected album slot -->\n <template #selected=\"{ item, clear }\">\n <div class=\"flex-nowrap flex-v-center flex gap-thin\">\n <span class=\"t-medium\">{{ item?.title || 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 <!-- Album item slot -->\n <template #item=\"{ item }\">\n <div class=\"flex-nowrap flex-v-center flex\">\n <div class=\"w-100\">\n <p class=\"t-medium\">{{ item.title }}</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 <!-- Genres Section -->\n <Block title=\"Genres\">\n <BlockMultiselect\n v-model=\"form.genres\"\n placeholder=\"Search genres...\"\n :multiple=\"true\"\n :transform=\"(item) => ({ _id: item._id, name: item.name })\"\n :store=\"{\n read: (options) => genresActions.fetchGenres(options),\n state: genresState\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 <!-- Selected genres slot -->\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 <!-- Genre item slot -->\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 <!-- Content Settings Section -->\n <div class=\"bg-light pd-medium radius-medium\">\n <h3 class=\"h3 mn-b-medium\">Content Settings</h3>\n \n <Checkbox\n v-model:checkbox=\"form.isExplicit\"\n label=\"Explicit Content\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n />\n \n <Checkbox\n v-model:checkbox=\"form.isPublic\"\n label=\"Public Track\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n />\n </div>\n \n \n \n <!-- Additional Info Section -->\n <div class=\"bg-light pd-medium radius-medium\">\n <h3 class=\"h3 mn-b-medium\">Additional Information</h3>\n \n <!-- Lyrics -->\n <Field\n v-model:field=\"form.lyrics\"\n label=\"Lyrics (Optional)\"\n type=\"textarea\"\n placeholder=\"Enter track lyrics\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n />\n </div>\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=\"form.status\"\n :options=\"statusOptions\"\n label=\"Status\"\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!' : 'Uploaded!'\n }\"\n >\n {{ editMode ? 'Update Track' : 'Upload Track' }}\n </Button>\n </div>\n </form>\n </div>\n</template>\n\n<script setup>\nimport { ref, reactive, onMounted, 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 Upload from '@martyrs/src/components/Upload/Upload.vue';\nimport IconCross from '@martyrs/src/modules/icons/navigation/IconCross.vue';\n\nimport BlockMultiselect from '@martyrs/src/modules/core/views/components/blocks/BlockMultiselect.vue';\n\n// Import stores\nimport * as tracksStore from '../../store/tracks';\nimport * as artistsStore from '../../store/artists';\nimport * as albumsStore from '../../store/albums';\nimport * as genresStore from '../../store/genres';\nimport { useStore } from '@martyrs/src/modules/core/views/store/core.store.js';\n\nconst store = useStore();\nimport * as auth from '@martyrs/src/modules/auth/views/store/auth.js';\n\n// Store states and actions\nconst { state: artistsState, actions: artistsActions } = artistsStore;\nconst { state: albumsState, actions: albumsActions } = albumsStore;\nconst { state: genresState, actions: genresActions } = genresStore;\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\nconst emit = defineEmits(['uploaded']);\n\n// State\nconst form = reactive({\n title: '',\n artists: [],\n albums: [],\n genres: [],\n duration: 0,\n fileUrl: '',\n coverUrl: '',\n releaseDate: new Date().toISOString().split('T')[0],\n isExplicit: false,\n isPublic: true,\n lyrics: '',\n url: '',\n status: 'draft'\n});\n\nconst validationErrors = reactive({\n title: false,\n fileUrl: false,\n releaseDate: false\n});\n\n// Track if URL was manually entered\nconst urlManuallySet = ref(false);\n\n// Status options\nconst statusOptions = [\n 'draft',\n 'published',\n 'archived'\n];\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 track title to auto-generate URL\nwatch(() => form.title, (newTitle) => {\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 form.url = generateSlug(newTitle);\n }\n});\n\n// Watch for manual changes to URL field\nwatch(() => form.url, (newUrl, oldUrl) => {\n // If user manually changes URL, mark as manually set\n if (newUrl !== generateSlug(form.title)) {\n urlManuallySet.value = true;\n }\n});\n\nconst fetchTrack = async () => {\n if (!props.url) return;\n \n try {\n const fetchedTrack = await tracksStore.actions.fetchTrackByUrl(props.url);\n \n if (!fetchedTrack) {\n store.core.actions.setError({\n message: 'Track not found'\n });\n return;\n }\n \n // Update local track data\n Object.assign(form, {\n title: fetchedTrack.title || '',\n artists: fetchedTrack.artist ? [fetchedTrack.artist] : [],\n albums: fetchedTrack.album ? [fetchedTrack.album] : [],\n genres: fetchedTrack.genres || [],\n duration: fetchedTrack.duration || 0,\n fileUrl: fetchedTrack.fileUrl || '',\n coverUrl: fetchedTrack.coverUrl || '',\n releaseDate: fetchedTrack.releaseDate ? new Date(fetchedTrack.releaseDate).toISOString().split('T')[0] : '',\n isExplicit: fetchedTrack.isExplicit || false,\n isPublic: fetchedTrack.isPublic !== false,\n lyrics: fetchedTrack.lyrics || '',\n url: fetchedTrack.url || '',\n status: fetchedTrack.status || 'draft',\n _id: fetchedTrack._id\n });\n \n } catch (error) {\n console.error('Error fetching track:', error);\n store.core.actions.setError({\n message: 'Failed to load track details'\n });\n }\n};\n\nconst validateForm = () => {\n let isValid = true;\n \n // Validate title\n if (!form.title.trim()) {\n validationErrors.title = {\n message: 'Track title is required'\n };\n isValid = false;\n } else {\n validationErrors.title = false;\n }\n \n // Validate file URL\n if (!form.fileUrl) {\n validationErrors.fileUrl = {\n message: 'Audio file is required'\n };\n isValid = false;\n } else {\n validationErrors.fileUrl = false;\n }\n \n return isValid;\n};\n\nconst submitForm = async () => {\n if (!validateForm()) {\n return;\n }\n \n try {\n console.log('=== FORM DATA DEBUG ===');\n console.log('form.artists:', form.artists);\n console.log('form.albums:', form.albums);\n console.log('form.albums.length:', form.albums.length);\n console.log('form.albums[0]:', form.albums[0]);\n console.log('form.albums[0]?._id:', form.albums[0]?._id);\n \n // Prepare data for submission\n const formData = {\n ...form,\n artist: form.artists.length > 0 ? (form.artists[0]._id || form.artists[0]) : null,\n album: form.albums && form.albums._id ? form.albums._id : null,\n genre: form.genres.map(genre => genre._id || genre)\n };\n \n // Remove the original arrays/objects to avoid conflicts\n delete formData.artists;\n delete formData.albums;\n delete formData.genres;\n \n console.log('formData after preparation:', formData);\n console.log('formData.album:', formData.album);\n console.log('typeof formData.album:', typeof formData.album);\n \n // Add ownership data if creating new track\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 tracksStore.actions.updateTrack(formData);\n } else {\n result = await tracksStore.actions.createTrack(formData);\n }\n \n // Navigate to track detail page\n setTimeout(() => {\n router.push({\n name: 'track',\n params: { url: result.url }\n });\n }, 1000);\n \n } catch (error) {\n console.error('Error saving track:', error);\n store.core.actions.setError({\n message: 'Failed to save track'\n });\n }\n};\nconst handleUploadError = (error) => {\n console.error('Upload error:', error);\n store.core.actions.setError({\n message: 'Error uploading file'\n });\n};\n\n// Lifecycle hooks\nonMounted(async () => {\n if (props.editMode) {\n await fetchTrack();\n // Mark URL as manually set in edit mode to prevent auto-generation\n urlManuallySet.value = true;\n }\n});\n</script>\n"],"names":["artistsStore","albumsStore","genresStore","tracksStore.actions","auth.state"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8WA,UAAM,QAAQ,SAAQ;AAItB,UAAM,EAAE,OAAO,cAAc,SAAS,eAAc,IAAKA;AACzD,UAAM,EAAE,OAAO,aAAa,SAAS,cAAa,IAAKC;AACvD,UAAM,EAAE,OAAO,aAAa,SAAS,cAAa,IAAKC;AAGvD,UAAM,QAAQ;AAYd,UAAM,SAAS,UAAS;AACV,aAAQ;AAKtB,UAAM,OAAO,SAAS;AAAA,MACpB,OAAO;AAAA,MACP,SAAS,CAAA;AAAA,MACT,QAAQ,CAAA;AAAA,MACR,QAAQ,CAAA;AAAA,MACR,UAAU;AAAA,MACV,SAAS;AAAA,MACT,UAAU;AAAA,MACV,cAAa,oBAAI,QAAO,YAAW,EAAG,MAAM,GAAG,EAAE,CAAC;AAAA,MAClD,YAAY;AAAA,MACZ,UAAU;AAAA,MACV,QAAQ;AAAA,MACR,KAAK;AAAA,MACL,QAAQ;AAAA,IACV,CAAC;AAED,UAAM,mBAAmB,SAAS;AAAA,MAChC,OAAO;AAAA,MACP,SAAS;AAAA,MACT,aAAa;AAAA,IACf,CAAC;AAGD,UAAM,iBAAiB,IAAI,KAAK;AAGhC,UAAM,gBAAgB;AAAA,MACpB;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAGA,UAAM,eAAe,CAAC,SAAS;AAC7B,UAAI,CAAC,KAAM,QAAO;AAClB,aAAO,KACJ,YAAW,EACX,QAAQ,iBAAiB,EAAE,EAC3B,QAAQ,QAAQ,GAAG,EACnB,QAAQ,OAAO,GAAG,EAClB,KAAK,GAAG;AAAA,IACb;AAGA,UAAM,MAAM,KAAK,OAAO,CAAC,aAAa;AAEpC,UAAI,CAAC,eAAe,SAAS,CAAC,MAAM,UAAU;AAC5C,aAAK,MAAM,aAAa,QAAQ;AAAA,MAClC;AAAA,IACF,CAAC;AAGD,UAAM,MAAM,KAAK,KAAK,CAAC,QAAQ,WAAW;AAExC,UAAI,WAAW,aAAa,KAAK,KAAK,GAAG;AACvC,uBAAe,QAAQ;AAAA,MACzB;AAAA,IACF,CAAC;AAED,UAAM,aAAa,YAAY;AAC7B,UAAI,CAAC,MAAM,IAAK;AAEhB,UAAI;AACF,cAAM,eAAe,MAAMC,QAAoB,gBAAgB,MAAM,GAAG;AAExE,YAAI,CAAC,cAAc;AACjB,gBAAM,KAAK,QAAQ,SAAS;AAAA,YAC1B,SAAS;AAAA,UACjB,CAAO;AACD;AAAA,QACF;AAGA,eAAO,OAAO,MAAM;AAAA,UAClB,OAAO,aAAa,SAAS;AAAA,UAC7B,SAAS,aAAa,SAAS,CAAC,aAAa,MAAM,IAAI,CAAA;AAAA,UACvD,QAAQ,aAAa,QAAQ,CAAC,aAAa,KAAK,IAAI,CAAA;AAAA,UACpD,QAAQ,aAAa,UAAU,CAAA;AAAA,UAC/B,UAAU,aAAa,YAAY;AAAA,UACnC,SAAS,aAAa,WAAW;AAAA,UACjC,UAAU,aAAa,YAAY;AAAA,UACnC,aAAa,aAAa,cAAc,IAAI,KAAK,aAAa,WAAW,EAAE,YAAW,EAAG,MAAM,GAAG,EAAE,CAAC,IAAI;AAAA,UACzG,YAAY,aAAa,cAAc;AAAA,UACvC,UAAU,aAAa,aAAa;AAAA,UACpC,QAAQ,aAAa,UAAU;AAAA,UAC/B,KAAK,aAAa,OAAO;AAAA,UACzB,QAAQ,aAAa,UAAU;AAAA,UAC/B,KAAK,aAAa;AAAA,QACxB,CAAK;AAAA,MAEH,SAAS,OAAO;AACd,gBAAQ,MAAM,yBAAyB,KAAK;AAC5C,cAAM,KAAK,QAAQ,SAAS;AAAA,UAC1B,SAAS;AAAA,QACf,CAAK;AAAA,MACH;AAAA,IACF;AAEA,UAAM,eAAe,MAAM;AACzB,UAAI,UAAU;AAGd,UAAI,CAAC,KAAK,MAAM,QAAQ;AACtB,yBAAiB,QAAQ;AAAA,UACvB,SAAS;AAAA,QACf;AACI,kBAAU;AAAA,MACZ,OAAO;AACL,yBAAiB,QAAQ;AAAA,MAC3B;AAGA,UAAI,CAAC,KAAK,SAAS;AACjB,yBAAiB,UAAU;AAAA,UACzB,SAAS;AAAA,QACf;AACI,kBAAU;AAAA,MACZ,OAAO;AACL,yBAAiB,UAAU;AAAA,MAC7B;AAEA,aAAO;AAAA,IACT;AAEA,UAAM,aAAa,YAAY;AAC7B,UAAI,CAAC,aAAY,GAAI;AACnB;AAAA,MACF;AAEA,UAAI;AACF,gBAAQ,IAAI,yBAAyB;AACrC,gBAAQ,IAAI,iBAAiB,KAAK,OAAO;AACzC,gBAAQ,IAAI,gBAAgB,KAAK,MAAM;AACvC,gBAAQ,IAAI,uBAAuB,KAAK,OAAO,MAAM;AACrD,gBAAQ,IAAI,mBAAmB,KAAK,OAAO,CAAC,CAAC;AAC7C,gBAAQ,IAAI,wBAAwB,KAAK,OAAO,CAAC,GAAG,GAAG;AAGvD,cAAM,WAAW;AAAA,UACf,GAAG;AAAA,UACH,QAAQ,KAAK,QAAQ,SAAS,IAAK,KAAK,QAAQ,CAAC,EAAE,OAAO,KAAK,QAAQ,CAAC,IAAK;AAAA,UAC7E,OAAO,KAAK,UAAU,KAAK,OAAO,MAAM,KAAK,OAAO,MAAM;AAAA,UAC1D,OAAO,KAAK,OAAO,IAAI,WAAS,MAAM,OAAO,KAAK;AAAA,QACxD;AAGI,eAAO,SAAS;AAChB,eAAO,SAAS;AAChB,eAAO,SAAS;AAEhB,gBAAQ,IAAI,+BAA+B,QAAQ;AACnD,gBAAQ,IAAI,mBAAmB,SAAS,KAAK;AAC7C,gBAAQ,IAAI,0BAA0B,OAAO,SAAS,KAAK;AAG3D,YAAI,CAAC,MAAM,UAAU;AACnB,mBAAS,QAAQ;AAAA,YACf,MAAM;AAAA,YACN,QAAQC,MAAW,KAAK;AAAA,UAChC;AACM,mBAAS,UAAU;AAAA,YACjB,MAAM;AAAA,YACN,QAAQA,MAAW,KAAK;AAAA,UAChC;AAAA,QACI;AAEA,YAAI;AACJ,YAAI,MAAM,UAAU;AAClB,mBAAS,MAAMD,QAAoB,YAAY,QAAQ;AAAA,QACzD,OAAO;AACL,mBAAS,MAAMA,QAAoB,YAAY,QAAQ;AAAA,QACzD;AAGA,mBAAW,MAAM;AACf,iBAAO,KAAK;AAAA,YACV,MAAM;AAAA,YACN,QAAQ,EAAE,KAAK,OAAO,IAAG;AAAA,UACjC,CAAO;AAAA,QACH,GAAG,GAAI;AAAA,MAET,SAAS,OAAO;AACd,gBAAQ,MAAM,uBAAuB,KAAK;AAC1C,cAAM,KAAK,QAAQ,SAAS;AAAA,UAC1B,SAAS;AAAA,QACf,CAAK;AAAA,MACH;AAAA,IACF;AACA,UAAM,oBAAoB,CAAC,UAAU;AACnC,cAAQ,MAAM,iBAAiB,KAAK;AACpC,YAAM,KAAK,QAAQ,SAAS;AAAA,QAC1B,SAAS;AAAA,MACb,CAAG;AAAA,IACH;AAGA,cAAU,YAAY;AACpB,UAAI,MAAM,UAAU;AAClB,cAAM,WAAU;AAEhB,uBAAe,QAAQ;AAAA,MACzB;AAAA,IACF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ref, computed, onMounted, resolveComponent, createElementBlock, openBlock, createCommentVNode, createVNode, createElementVNode, toDisplayString, withCtx, createTextVNode, Fragment, renderList, createBlock } from "vue";
|
|
2
2
|
import { useRoute, useRouter } from "vue-router";
|
|
3
3
|
import _sfc_main$1 from "../../../../components/Button/Button.vue2.js";
|
|
4
|
-
import Loader from "../../../../components/Loader/Loader.
|
|
4
|
+
import Loader from "../../../../components/Loader/Loader.vue.js";
|
|
5
5
|
import Media from "../../../../components/Media/Media.vue.js";
|
|
6
6
|
import _sfc_main$5 from "../../../../components/Dropdown/Dropdown.vue.js";
|
|
7
7
|
import _sfc_main$a from "../../../../components/Feed/Feed.vue.js";
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { ref, computed, onMounted, createElementBlock, openBlock, createCommentVNode, createElementVNode, createVNode, unref, withCtx, createTextVNode, normalizeStyle, normalizeClass, toDisplayString, Fragment, renderList, createBlock } from "vue";
|
|
2
2
|
import { useRouter, useRoute } from "vue-router";
|
|
3
3
|
import _sfc_main$1 from "../../../../components/Button/Button.vue2.js";
|
|
4
|
-
/* empty css
|
|
4
|
+
/* empty css */
|
|
5
5
|
import _sfc_main$2 from "../cards/TrackListCard.vue.js";
|
|
6
6
|
import { state, actions } from "../../store/artists.js";
|
|
7
7
|
import { state as state$1 } from "../../../auth/views/store/auth.js";
|
|
8
|
-
import {
|
|
8
|
+
import { useStore } from "../../../core/views/store/core.store.js";
|
|
9
9
|
import { useGlobalMixins } from "../../../core/views/mixins/mixins.js";
|
|
10
10
|
const _hoisted_1 = { class: "w-100 pos-relative" };
|
|
11
11
|
const _hoisted_2 = {
|
|
@@ -114,6 +114,7 @@ const _sfc_main = {
|
|
|
114
114
|
__name: "Artist",
|
|
115
115
|
emits: ["page-loading", "page-loaded"],
|
|
116
116
|
setup(__props, { emit: __emit }) {
|
|
117
|
+
const store = useStore();
|
|
117
118
|
const { formatDate } = useGlobalMixins();
|
|
118
119
|
const router = useRouter();
|
|
119
120
|
const route = useRoute();
|
|
@@ -152,7 +153,7 @@ const _sfc_main = {
|
|
|
152
153
|
await actions.fetchArtistByUrl(url);
|
|
153
154
|
} catch (error) {
|
|
154
155
|
console.error("Error fetching artist:", error);
|
|
155
|
-
actions
|
|
156
|
+
store.core.actions.setError({
|
|
156
157
|
message: "Failed to load artist"
|
|
157
158
|
});
|
|
158
159
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Artist.vue.js","sources":["../../../../../../../src/modules/music/components/pages/Artist.vue"],"sourcesContent":["<template>\n <div class=\"w-100 pos-relative\">\n \n <!-- Artist not found -->\n <div v-if=\"hasLoaded && !artist\" class=\"flex-center flex-column flex pd-extra\">\n <h2 class=\"h2 mn-b-medium\">Artist Not Found</h2>\n <p class=\"p-regular t-transp mn-b-medium\">The artist you are looking for doesn't exist or may have been removed.</p>\n <Button\n :submit=\"() => router.push({ name: 'music-home' })\"\n class=\"bg-main \"\n :showSucces=\"false\"\n :showLoader=\"false\"\n >\n Back to Music\n </Button>\n </div>\n \n <!-- Artist content -->\n <div v-if=\"artist\">\n <!-- Cover image -->\n <div \n class=\"w-100 t-white h-50vh pos-relative\"\n :style=\"artist.coverUrl ? `background-image: url(${FILE_SERVER_URL + artist.coverUrl}); background-size: cover; background-position: center;` : ''\"\n >\n <div class=\"pos-absolute pos-t-0 pos-l-0 w-100 h-100 bg-blur-small\" :class=\"artist.coverUrl ? 'bg-black-transp-50' : 'bg-dark'\"></div>\n \n <!-- Artist actions for edit/manage -->\n <div v-if=\"isOwner\" class=\"pos-absolute pos-t-medium pos-r-medium z-index-1\">\n <Button\n @click=\"router.push({ name: 'artist-edit', params: { url: artist.url } })\"\n class=\"bg-main mn-r-small\"\n :showSucces=\"false\"\n :showLoader=\"false\"\n >\n Edit Artist\n </Button>\n \n <Button\n @click=\"router.push({ name: 'artist-manage-content', params: { artistId: artist._id } })\"\n class=\"bg-white t-black\"\n :showSucces=\"false\"\n :showLoader=\"false\"\n >\n Manage Content\n </Button>\n </div>\n \n <!-- Artist profile info -->\n <div class=\"flex-v-center t-white pos-absolute pos-b-0 pos-l-0 w-100 pd-medium z-index-1 flex mobile:flex-column mobile:flex-h-center\">\n <div class=\"w-15r h-15r radius-medium o-hidden mn-r-medium bs-black mobile:mn-r-0 mobile:mn-b-medium\">\n <img\n v-if=\"artist.photoUrl\"\n :src=\"FILE_SERVER_URL + (artist.photoUrl || '/logo/logo-placeholder.jpg')\"\n alt=\"Artist photo\"\n class=\"w-100 h-100 object-fit-cover\"\n />\n <div v-else class=\"w-100 h-100 bg-black flex-center flex\">\n <span class=\"h1 t-white\">{{ artist?.name?.[0] || 'A' }}</span>\n </div>\n </div>\n \n <div class=\" mobile:t-center\">\n <div class=\"flex-v-center flex-nowrap flex mn-b-small mobile:flex-center\">\n <h1 class=\"h1 mn-r-small\">{{ artist.name }}</h1>\n <span v-if=\"artist.isVerified\" class=\"bg-main-nano pd-micro radius-small\">\n ✓ Verified\n </span>\n </div>\n \n <p v-if=\"artist.location\" class=\"p-regular mn-b-small\">{{ artist.location }}</p>\n \n <!-- Social media links -->\n <div class=\"flex flex-nowrap gap-small mobile:flex-center\">\n <a \n v-if=\"artist.socials.telegram\" \n :href=\"`https://t.me/${artist.socials.telegram}`\" \n target=\"_blank\"\n class=\"bg-white t-black flex-center flex w-2r h-2r radius-extra\"\n >\n <span>T</span>\n </a>\n \n <a \n v-if=\"artist.socials.twitter\" \n :href=\"`https://twitter.com/${artist.socials.twitter}`\" \n target=\"_blank\"\n class=\"bg-white t-black flex-center flex w-2r h-2r radius-extra\"\n >\n <span>𝕏</span>\n </a>\n \n <a \n v-if=\"artist.socials.instagram\" \n :href=\"`https://instagram.com/${artist.socials.instagram}`\" \n target=\"_blank\"\n class=\"bg-white t-black flex-center flex w-2r h-2r radius-extra\"\n >\n <span>I</span>\n </a>\n \n <a \n v-if=\"artist.socials.facebook\" \n :href=\"`https://facebook.com/${artist.socials.facebook}`\" \n target=\"_blank\"\n class=\"bg-white t-black flex-center flex w-2r h-2r radius-extra\"\n >\n <span>F</span>\n </a>\n \n <a \n v-if=\"artist.website\" \n :href=\"artist.website\" \n target=\"_blank\"\n class=\"bg-white t-black flex-center flex w-2r h-2r radius-extra\"\n >\n <span>W</span>\n </a>\n </div>\n </div>\n </div>\n </div>\n \n <!-- Main content -->\n <div class=\"pd-medium\">\n <div class=\"cols-2-1_2 gap-regular mobile:cols-1\">\n <!-- Left column - Bio and details -->\n <div>\n <div class=\"bg-light pd-medium radius-medium mn-b-medium\">\n <h2 class=\"h3 mn-b-small\">Biography</h2>\n <p v-if=\"artist.bio\" class=\"p-regular\">{{ artist.bio }}</p>\n <p v-else class=\"p-regular t-transp\">No biography available for this artist.</p>\n </div>\n \n <!-- Genres -->\n <div v-if=\"genres.length > 0\" class=\"bg-light pd-medium radius-medium\">\n <h2 class=\"h3 mn-b-small\">Genres</h2>\n <div class=\"flex flex-wrap gap-small\">\n <span \n v-for=\"genre in genres\" \n :key=\"genre._id\"\n class=\"bg-white pd-thin radius-medium\"\n >\n {{ genre.name }}\n </span>\n </div>\n </div>\n </div>\n \n <!-- Right column - Discography -->\n <div>\n <!-- Albums section -->\n <div v-if=\"discography.albums.length > 0\" class=\"bg-light pd-medium radius-medium mn-b-medium\">\n <h2 class=\"h3 mn-b-medium\">Albums</h2>\n \n <div class=\"cols-2 gap-small mobile:cols-1\">\n <div\n v-for=\"album in discography.albums\"\n :key=\"album._id\"\n class=\"bg-white pd-small radius-medium flex-v-center flex cursor-pointer hover-bg-white\"\n @click=\"router.push({ name: 'album', params: { url: album.url } })\"\n >\n <div class=\"w-3r h-3r radius-small o-hidden mn-r-small\">\n <img\n v-if=\"album.coverUrl\"\n :src=\"FILE_SERVER_URL + album.coverUrl\"\n alt=\"Album cover\"\n class=\"w-100 h-100 object-fit-cover\"\n />\n <div v-else class=\"w-100 h-100 bg-light flex-center flex\">\n <span>A</span>\n </div>\n </div>\n \n <div class=\"w-100 o-hidden\">\n <p class=\"p-regular t-truncate\">{{ album.title }}</p>\n <p class=\"p-small t-transp\">{{ formatDate(album.releaseDate) }}</p>\n </div>\n </div>\n </div>\n \n <Button\n v-if=\"discography.albums.length > 4\"\n @click=\"router.push({ name: 'artist-albums', params: { artistId: artist._id } })\"\n class=\"mn-t-small w-100 bg-white t-black\"\n :showSucces=\"false\"\n :showLoader=\"false\"\n >\n View All Albums\n </Button>\n </div>\n \n <!-- Singles section -->\n <div v-if=\"discography.singles.length > 0\" class=\"bg-light pd-medium mn-b-medium radius-medium\">\n <h2 class=\"h3 mn-b-medium\">Singles & EPs</h2>\n \n <div class=\"cols-1 gap-small\">\n <div\n v-for=\"single in discography.singles\"\n :key=\"single._id\"\n class=\"bg-white pd-small radius-medium flex-v-center flex cursor-pointer hover-bg-white\"\n @click=\"router.push({ name: 'track', params: { url: single.url } })\"\n >\n <div class=\"w-3r h-3r radius-small o-hidden mn-r-small\">\n <img\n v-if=\"single.coverUrl\"\n :src=\"FILE_SERVER_URL + single.coverUrl\"\n alt=\"Single cover\"\n class=\"w-100 h-100 object-fit-cover\"\n />\n <div v-else class=\"w-100 h-100 bg-light flex-center flex\">\n <span>S</span>\n </div>\n </div>\n \n <div class=\"w-100 o-hidden\">\n <p class=\"p-regular t-truncate\">{{ single.title }}</p>\n <p class=\"p-small t-transp\">{{ formatDate(single.releaseDate) }}</p>\n </div>\n </div>\n </div>\n \n <Button\n v-if=\"discography.singles.length > 5\"\n @click=\"router.push({ name: 'artist-singles', params: { artistId: artist._id } })\"\n class=\"mn-t-small w-100 bg-white t-black\"\n :showSucces=\"false\"\n :showLoader=\"false\"\n >\n View All Singles & EPs\n </Button>\n </div>\n \n <!-- Popular Tracks Section -->\n <div v-if=\"artistTracks.length > 0\" class=\"bg-light pd-medium radius-medium mn-b-medium\">\n <h2 class=\"h3 mn-b-medium\">Popular Tracks</h2>\n \n <div class=\"bg-white radius-medium o-hidden\">\n <TrackListCard\n v-for=\"(track, index) in artistTracks\"\n :key=\"track._id\"\n :track=\"track\"\n :index=\"index\"\n :showAlbum=\"true\"\n :showCover=\"true\"\n />\n </div>\n </div>\n \n <!-- No discography yet -->\n <div \n v-if=\"discography.albums.length === 0 && discography.singles.length === 0\" \n class=\"bg-light pd-medium radius-medium t-center\"\n >\n <p class=\"p-regular mn-b-small\">No releases yet</p>\n <p class=\"p-small t-transp\">This artist hasn't released any albums or singles yet.</p>\n \n <Button\n v-if=\"isOwner\"\n @click=\"router.push({ name: 'release-create', query: { artistId: artist._id } })\"\n class=\"mn-t-medium bg-main \"\n :showSucces=\"false\"\n :showLoader=\"false\"\n >\n Add Release\n </Button>\n </div>\n </div>\n </div>\n \n <!-- Related Artists -->\n <div v-if=\"relatedArtists.length > 0\" class=\"mn-t-medium\">\n <h2 class=\"h3 mn-b-medium\">Fans Also Like</h2>\n \n <div class=\"cols-5 gap-regular mobile:cols-2\">\n <div\n v-for=\"relatedArtist in relatedArtists\"\n :key=\"relatedArtist._id\"\n class=\"t-center cursor-pointer\"\n @click=\"router.push({ name: 'artist', params: { url: relatedArtist.url } })\"\n >\n <div class=\"w-100 aspect-1x1 radius-medium o-hidden mn-b-small\">\n <img\n v-if=\"relatedArtist.photoUrl\"\n :src=\"FILE_SERVER_URL + relatedArtist.photoUrl\"\n alt=\"Artist photo\"\n class=\"w-100 h-100 object-fit-cover\"\n />\n <div v-else class=\"w-100 h-100 bg-light flex-center flex\">\n <span>{{ relatedArtist?.name?.[0] || 'A' }}</span>\n </div>\n </div>\n \n <p class=\"p-regular t-truncate\">{{ relatedArtist.name }}</p>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script setup>\nimport { ref, computed, onMounted } from 'vue';\nimport { useRouter, useRoute } from 'vue-router';\n\n// Import Martyrs components\nimport Button from '@martyrs/src/components/Button/Button.vue';\nimport Loader from '@martyrs/src/components/Loader/Loader.vue';\nimport TrackListCard from '../cards/TrackListCard.vue';\n\n// Import store\nimport * as artistsStore from '../../store/artists';\n// import * as genreStore from '../../store/genres'; // Assuming you have a genre store\nimport * as auth from '@martyrs/src/modules/auth/views/store/auth.js';\nimport * as core from '@martyrs/src/modules/core/views/store/core.store.js';\n\n// Import mixins\nimport { useGlobalMixins } from '@martyrs/src/modules/core/views/mixins/mixins.js';\nconst { formatDate } = useGlobalMixins();\n\n// Router and route\nconst router = useRouter();\nconst route = useRoute();\n\n// Emits\nconst emits = defineEmits(['page-loading', 'page-loaded']);\n\n// State\nconst genres = ref([]);\nconst hasLoaded = ref(false);\n\n// Computed\nconst artist = computed(() => {\n return artistsStore.state.currentArtist;\n});\n\nconst discography = computed(() => {\n return artistsStore.state.discography;\n});\n\nconst relatedArtists = computed(() => {\n return artistsStore.state.relatedArtists;\n});\n\nconst artistTracks = computed(() => {\n return artistsStore.state.discography.tracks || [];\n});\n\nconst isOwner = computed(() => {\n if (!artist.value || !auth.state.user._id) return false;\n \n // Check if current user is the creator of the artist\n return artist.value.creator?.target?._id === auth.state.user._id;\n});\n\n// Clear current artist state\nartistsStore.state.currentArtist = null;\n// Clear discography state\nartistsStore.state.discography = {\n albums: [],\n singles: [],\n tracks: []\n};\nartistsStore.state.relatedArtists = [];\n\n// Methods\nconst fetchArtist = async () => {\n try {\n // Get URL from route params\n const url = route.params.url;\n if (!url) {\n throw new Error('Artist URL is required');\n }\n \n await artistsStore.actions.fetchArtistByUrl(url);\n } catch (error) {\n console.error('Error fetching artist:', error);\n core.actions.setError({\n message: 'Failed to load artist'\n });\n }\n};\n\n// Lifecycle hooks\nonMounted(async () => {\n emits('page-loading');\n \n await fetchArtist();\n \n hasLoaded.value = true;\n emits('page-loaded');\n});\n</script>"],"names":["artistsStore.state","auth.state","artistsStore.actions","core.actions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8TA,UAAM,EAAE,WAAU,IAAK,gBAAe;AAGtC,UAAM,SAAS,UAAS;AACxB,UAAM,QAAQ,SAAQ;AAGtB,UAAM,QAAQ;AAGd,UAAM,SAAS,IAAI,EAAE;AACrB,UAAM,YAAY,IAAI,KAAK;AAG3B,UAAM,SAAS,SAAS,MAAM;AAC5B,aAAOA,MAAmB;AAAA,IAC5B,CAAC;AAED,UAAM,cAAc,SAAS,MAAM;AACjC,aAAOA,MAAmB;AAAA,IAC5B,CAAC;AAED,UAAM,iBAAiB,SAAS,MAAM;AACpC,aAAOA,MAAmB;AAAA,IAC5B,CAAC;AAED,UAAM,eAAe,SAAS,MAAM;AAClC,aAAOA,MAAmB,YAAY,UAAU,CAAA;AAAA,IAClD,CAAC;AAED,UAAM,UAAU,SAAS,MAAM;AAC7B,UAAI,CAAC,OAAO,SAAS,CAACC,QAAW,KAAK,IAAK,QAAO;AAGlD,aAAO,OAAO,MAAM,SAAS,QAAQ,QAAQA,QAAW,KAAK;AAAA,IAC/D,CAAC;AAGDD,UAAmB,gBAAgB;AAEnCA,UAAmB,cAAc;AAAA,MAC/B,QAAQ,CAAA;AAAA,MACR,SAAS,CAAA;AAAA,MACT,QAAQ,CAAA;AAAA,IACV;AACAA,UAAmB,iBAAiB,CAAA;AAGpC,UAAM,cAAc,YAAY;AAC9B,UAAI;AAEF,cAAM,MAAM,MAAM,OAAO;AACzB,YAAI,CAAC,KAAK;AACR,gBAAM,IAAI,MAAM,wBAAwB;AAAA,QAC1C;AAEA,cAAME,QAAqB,iBAAiB,GAAG;AAAA,MACjD,SAAS,OAAO;AACd,gBAAQ,MAAM,0BAA0B,KAAK;AAC7CC,kBAAa,SAAS;AAAA,UACpB,SAAS;AAAA,QACf,CAAK;AAAA,MACH;AAAA,IACF;AAGA,cAAU,YAAY;AACpB,YAAM,cAAc;AAEpB,YAAM,YAAW;AAEjB,gBAAU,QAAQ;AAClB,YAAM,aAAa;AAAA,IACrB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"Artist.vue.js","sources":["../../../../../../../src/modules/music/components/pages/Artist.vue"],"sourcesContent":["<template>\n <div class=\"w-100 pos-relative\">\n \n <!-- Artist not found -->\n <div v-if=\"hasLoaded && !artist\" class=\"flex-center flex-column flex pd-extra\">\n <h2 class=\"h2 mn-b-medium\">Artist Not Found</h2>\n <p class=\"p-regular t-transp mn-b-medium\">The artist you are looking for doesn't exist or may have been removed.</p>\n <Button\n :submit=\"() => router.push({ name: 'music-home' })\"\n class=\"bg-main \"\n :showSucces=\"false\"\n :showLoader=\"false\"\n >\n Back to Music\n </Button>\n </div>\n \n <!-- Artist content -->\n <div v-if=\"artist\">\n <!-- Cover image -->\n <div \n class=\"w-100 t-white h-50vh pos-relative\"\n :style=\"artist.coverUrl ? `background-image: url(${FILE_SERVER_URL + artist.coverUrl}); background-size: cover; background-position: center;` : ''\"\n >\n <div class=\"pos-absolute pos-t-0 pos-l-0 w-100 h-100 bg-blur-small\" :class=\"artist.coverUrl ? 'bg-black-transp-50' : 'bg-dark'\"></div>\n \n <!-- Artist actions for edit/manage -->\n <div v-if=\"isOwner\" class=\"pos-absolute pos-t-medium pos-r-medium z-index-1\">\n <Button\n @click=\"router.push({ name: 'artist-edit', params: { url: artist.url } })\"\n class=\"bg-main mn-r-small\"\n :showSucces=\"false\"\n :showLoader=\"false\"\n >\n Edit Artist\n </Button>\n \n <Button\n @click=\"router.push({ name: 'artist-manage-content', params: { artistId: artist._id } })\"\n class=\"bg-white t-black\"\n :showSucces=\"false\"\n :showLoader=\"false\"\n >\n Manage Content\n </Button>\n </div>\n \n <!-- Artist profile info -->\n <div class=\"flex-v-center t-white pos-absolute pos-b-0 pos-l-0 w-100 pd-medium z-index-1 flex mobile:flex-column mobile:flex-h-center\">\n <div class=\"w-15r h-15r radius-medium o-hidden mn-r-medium bs-black mobile:mn-r-0 mobile:mn-b-medium\">\n <img\n v-if=\"artist.photoUrl\"\n :src=\"FILE_SERVER_URL + (artist.photoUrl || '/logo/logo-placeholder.jpg')\"\n alt=\"Artist photo\"\n class=\"w-100 h-100 object-fit-cover\"\n />\n <div v-else class=\"w-100 h-100 bg-black flex-center flex\">\n <span class=\"h1 t-white\">{{ artist?.name?.[0] || 'A' }}</span>\n </div>\n </div>\n \n <div class=\" mobile:t-center\">\n <div class=\"flex-v-center flex-nowrap flex mn-b-small mobile:flex-center\">\n <h1 class=\"h1 mn-r-small\">{{ artist.name }}</h1>\n <span v-if=\"artist.isVerified\" class=\"bg-main-nano pd-micro radius-small\">\n ✓ Verified\n </span>\n </div>\n \n <p v-if=\"artist.location\" class=\"p-regular mn-b-small\">{{ artist.location }}</p>\n \n <!-- Social media links -->\n <div class=\"flex flex-nowrap gap-small mobile:flex-center\">\n <a \n v-if=\"artist.socials.telegram\" \n :href=\"`https://t.me/${artist.socials.telegram}`\" \n target=\"_blank\"\n class=\"bg-white t-black flex-center flex w-2r h-2r radius-extra\"\n >\n <span>T</span>\n </a>\n \n <a \n v-if=\"artist.socials.twitter\" \n :href=\"`https://twitter.com/${artist.socials.twitter}`\" \n target=\"_blank\"\n class=\"bg-white t-black flex-center flex w-2r h-2r radius-extra\"\n >\n <span>𝕏</span>\n </a>\n \n <a \n v-if=\"artist.socials.instagram\" \n :href=\"`https://instagram.com/${artist.socials.instagram}`\" \n target=\"_blank\"\n class=\"bg-white t-black flex-center flex w-2r h-2r radius-extra\"\n >\n <span>I</span>\n </a>\n \n <a \n v-if=\"artist.socials.facebook\" \n :href=\"`https://facebook.com/${artist.socials.facebook}`\" \n target=\"_blank\"\n class=\"bg-white t-black flex-center flex w-2r h-2r radius-extra\"\n >\n <span>F</span>\n </a>\n \n <a \n v-if=\"artist.website\" \n :href=\"artist.website\" \n target=\"_blank\"\n class=\"bg-white t-black flex-center flex w-2r h-2r radius-extra\"\n >\n <span>W</span>\n </a>\n </div>\n </div>\n </div>\n </div>\n \n <!-- Main content -->\n <div class=\"pd-medium\">\n <div class=\"cols-2-1_2 gap-regular mobile:cols-1\">\n <!-- Left column - Bio and details -->\n <div>\n <div class=\"bg-light pd-medium radius-medium mn-b-medium\">\n <h2 class=\"h3 mn-b-small\">Biography</h2>\n <p v-if=\"artist.bio\" class=\"p-regular\">{{ artist.bio }}</p>\n <p v-else class=\"p-regular t-transp\">No biography available for this artist.</p>\n </div>\n \n <!-- Genres -->\n <div v-if=\"genres.length > 0\" class=\"bg-light pd-medium radius-medium\">\n <h2 class=\"h3 mn-b-small\">Genres</h2>\n <div class=\"flex flex-wrap gap-small\">\n <span \n v-for=\"genre in genres\" \n :key=\"genre._id\"\n class=\"bg-white pd-thin radius-medium\"\n >\n {{ genre.name }}\n </span>\n </div>\n </div>\n </div>\n \n <!-- Right column - Discography -->\n <div>\n <!-- Albums section -->\n <div v-if=\"discography.albums.length > 0\" class=\"bg-light pd-medium radius-medium mn-b-medium\">\n <h2 class=\"h3 mn-b-medium\">Albums</h2>\n \n <div class=\"cols-2 gap-small mobile:cols-1\">\n <div\n v-for=\"album in discography.albums\"\n :key=\"album._id\"\n class=\"bg-white pd-small radius-medium flex-v-center flex cursor-pointer hover-bg-white\"\n @click=\"router.push({ name: 'album', params: { url: album.url } })\"\n >\n <div class=\"w-3r h-3r radius-small o-hidden mn-r-small\">\n <img\n v-if=\"album.coverUrl\"\n :src=\"FILE_SERVER_URL + album.coverUrl\"\n alt=\"Album cover\"\n class=\"w-100 h-100 object-fit-cover\"\n />\n <div v-else class=\"w-100 h-100 bg-light flex-center flex\">\n <span>A</span>\n </div>\n </div>\n \n <div class=\"w-100 o-hidden\">\n <p class=\"p-regular t-truncate\">{{ album.title }}</p>\n <p class=\"p-small t-transp\">{{ formatDate(album.releaseDate) }}</p>\n </div>\n </div>\n </div>\n \n <Button\n v-if=\"discography.albums.length > 4\"\n @click=\"router.push({ name: 'artist-albums', params: { artistId: artist._id } })\"\n class=\"mn-t-small w-100 bg-white t-black\"\n :showSucces=\"false\"\n :showLoader=\"false\"\n >\n View All Albums\n </Button>\n </div>\n \n <!-- Singles section -->\n <div v-if=\"discography.singles.length > 0\" class=\"bg-light pd-medium mn-b-medium radius-medium\">\n <h2 class=\"h3 mn-b-medium\">Singles & EPs</h2>\n \n <div class=\"cols-1 gap-small\">\n <div\n v-for=\"single in discography.singles\"\n :key=\"single._id\"\n class=\"bg-white pd-small radius-medium flex-v-center flex cursor-pointer hover-bg-white\"\n @click=\"router.push({ name: 'track', params: { url: single.url } })\"\n >\n <div class=\"w-3r h-3r radius-small o-hidden mn-r-small\">\n <img\n v-if=\"single.coverUrl\"\n :src=\"FILE_SERVER_URL + single.coverUrl\"\n alt=\"Single cover\"\n class=\"w-100 h-100 object-fit-cover\"\n />\n <div v-else class=\"w-100 h-100 bg-light flex-center flex\">\n <span>S</span>\n </div>\n </div>\n \n <div class=\"w-100 o-hidden\">\n <p class=\"p-regular t-truncate\">{{ single.title }}</p>\n <p class=\"p-small t-transp\">{{ formatDate(single.releaseDate) }}</p>\n </div>\n </div>\n </div>\n \n <Button\n v-if=\"discography.singles.length > 5\"\n @click=\"router.push({ name: 'artist-singles', params: { artistId: artist._id } })\"\n class=\"mn-t-small w-100 bg-white t-black\"\n :showSucces=\"false\"\n :showLoader=\"false\"\n >\n View All Singles & EPs\n </Button>\n </div>\n \n <!-- Popular Tracks Section -->\n <div v-if=\"artistTracks.length > 0\" class=\"bg-light pd-medium radius-medium mn-b-medium\">\n <h2 class=\"h3 mn-b-medium\">Popular Tracks</h2>\n \n <div class=\"bg-white radius-medium o-hidden\">\n <TrackListCard\n v-for=\"(track, index) in artistTracks\"\n :key=\"track._id\"\n :track=\"track\"\n :index=\"index\"\n :showAlbum=\"true\"\n :showCover=\"true\"\n />\n </div>\n </div>\n \n <!-- No discography yet -->\n <div \n v-if=\"discography.albums.length === 0 && discography.singles.length === 0\" \n class=\"bg-light pd-medium radius-medium t-center\"\n >\n <p class=\"p-regular mn-b-small\">No releases yet</p>\n <p class=\"p-small t-transp\">This artist hasn't released any albums or singles yet.</p>\n \n <Button\n v-if=\"isOwner\"\n @click=\"router.push({ name: 'release-create', query: { artistId: artist._id } })\"\n class=\"mn-t-medium bg-main \"\n :showSucces=\"false\"\n :showLoader=\"false\"\n >\n Add Release\n </Button>\n </div>\n </div>\n </div>\n \n <!-- Related Artists -->\n <div v-if=\"relatedArtists.length > 0\" class=\"mn-t-medium\">\n <h2 class=\"h3 mn-b-medium\">Fans Also Like</h2>\n \n <div class=\"cols-5 gap-regular mobile:cols-2\">\n <div\n v-for=\"relatedArtist in relatedArtists\"\n :key=\"relatedArtist._id\"\n class=\"t-center cursor-pointer\"\n @click=\"router.push({ name: 'artist', params: { url: relatedArtist.url } })\"\n >\n <div class=\"w-100 aspect-1x1 radius-medium o-hidden mn-b-small\">\n <img\n v-if=\"relatedArtist.photoUrl\"\n :src=\"FILE_SERVER_URL + relatedArtist.photoUrl\"\n alt=\"Artist photo\"\n class=\"w-100 h-100 object-fit-cover\"\n />\n <div v-else class=\"w-100 h-100 bg-light flex-center flex\">\n <span>{{ relatedArtist?.name?.[0] || 'A' }}</span>\n </div>\n </div>\n \n <p class=\"p-regular t-truncate\">{{ relatedArtist.name }}</p>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script setup>\nimport { ref, computed, onMounted } from 'vue';\nimport { useRouter, useRoute } from 'vue-router';\n\n// Import Martyrs components\nimport Button from '@martyrs/src/components/Button/Button.vue';\nimport Loader from '@martyrs/src/components/Loader/Loader.vue';\nimport TrackListCard from '../cards/TrackListCard.vue';\n\n// Import store\nimport * as artistsStore from '../../store/artists';\n// import * as genreStore from '../../store/genres'; // Assuming you have a genre store\nimport * as auth from '@martyrs/src/modules/auth/views/store/auth.js';\nimport { useStore } from '@martyrs/src/modules/core/views/store/core.store.js';\n\nconst store = useStore();\n\n// Import mixins\nimport { useGlobalMixins } from '@martyrs/src/modules/core/views/mixins/mixins.js';\nconst { formatDate } = useGlobalMixins();\n\n// Router and route\nconst router = useRouter();\nconst route = useRoute();\n\n// Emits\nconst emits = defineEmits(['page-loading', 'page-loaded']);\n\n// State\nconst genres = ref([]);\nconst hasLoaded = ref(false);\n\n// Computed\nconst artist = computed(() => {\n return artistsStore.state.currentArtist;\n});\n\nconst discography = computed(() => {\n return artistsStore.state.discography;\n});\n\nconst relatedArtists = computed(() => {\n return artistsStore.state.relatedArtists;\n});\n\nconst artistTracks = computed(() => {\n return artistsStore.state.discography.tracks || [];\n});\n\nconst isOwner = computed(() => {\n if (!artist.value || !auth.state.user._id) return false;\n \n // Check if current user is the creator of the artist\n return artist.value.creator?.target?._id === auth.state.user._id;\n});\n\n// Clear current artist state\nartistsStore.state.currentArtist = null;\n// Clear discography state\nartistsStore.state.discography = {\n albums: [],\n singles: [],\n tracks: []\n};\nartistsStore.state.relatedArtists = [];\n\n// Methods\nconst fetchArtist = async () => {\n try {\n // Get URL from route params\n const url = route.params.url;\n if (!url) {\n throw new Error('Artist URL is required');\n }\n \n await artistsStore.actions.fetchArtistByUrl(url);\n } catch (error) {\n console.error('Error fetching artist:', error);\n store.core.actions.setError({\n message: 'Failed to load artist'\n });\n }\n};\n\n// Lifecycle hooks\nonMounted(async () => {\n emits('page-loading');\n \n await fetchArtist();\n \n hasLoaded.value = true;\n emits('page-loaded');\n});\n</script>\n"],"names":["artistsStore.state","auth.state","artistsStore.actions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4TA,UAAM,QAAQ,SAAQ;AAItB,UAAM,EAAE,WAAU,IAAK,gBAAe;AAGtC,UAAM,SAAS,UAAS;AACxB,UAAM,QAAQ,SAAQ;AAGtB,UAAM,QAAQ;AAGd,UAAM,SAAS,IAAI,EAAE;AACrB,UAAM,YAAY,IAAI,KAAK;AAG3B,UAAM,SAAS,SAAS,MAAM;AAC5B,aAAOA,MAAmB;AAAA,IAC5B,CAAC;AAED,UAAM,cAAc,SAAS,MAAM;AACjC,aAAOA,MAAmB;AAAA,IAC5B,CAAC;AAED,UAAM,iBAAiB,SAAS,MAAM;AACpC,aAAOA,MAAmB;AAAA,IAC5B,CAAC;AAED,UAAM,eAAe,SAAS,MAAM;AAClC,aAAOA,MAAmB,YAAY,UAAU,CAAA;AAAA,IAClD,CAAC;AAED,UAAM,UAAU,SAAS,MAAM;AAC7B,UAAI,CAAC,OAAO,SAAS,CAACC,QAAW,KAAK,IAAK,QAAO;AAGlD,aAAO,OAAO,MAAM,SAAS,QAAQ,QAAQA,QAAW,KAAK;AAAA,IAC/D,CAAC;AAGDD,UAAmB,gBAAgB;AAEnCA,UAAmB,cAAc;AAAA,MAC/B,QAAQ,CAAA;AAAA,MACR,SAAS,CAAA;AAAA,MACT,QAAQ,CAAA;AAAA,IACV;AACAA,UAAmB,iBAAiB,CAAA;AAGpC,UAAM,cAAc,YAAY;AAC9B,UAAI;AAEF,cAAM,MAAM,MAAM,OAAO;AACzB,YAAI,CAAC,KAAK;AACR,gBAAM,IAAI,MAAM,wBAAwB;AAAA,QAC1C;AAEA,cAAME,QAAqB,iBAAiB,GAAG;AAAA,MACjD,SAAS,OAAO;AACd,gBAAQ,MAAM,0BAA0B,KAAK;AAC7C,cAAM,KAAK,QAAQ,SAAS;AAAA,UAC1B,SAAS;AAAA,QACf,CAAK;AAAA,MACH;AAAA,IACF;AAGA,cAAU,YAAY;AACpB,YAAM,cAAc;AAEpB,YAAM,YAAW;AAEjB,gBAAU,QAAQ;AAClB,YAAM,aAAa;AAAA,IACrB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ref, computed, onMounted, resolveComponent, createElementBlock, openBlock, createCommentVNode, createVNode, createElementVNode, toDisplayString, withCtx, createTextVNode, Fragment, createBlock, renderList } from "vue";
|
|
2
2
|
import { useRoute, useRouter } from "vue-router";
|
|
3
3
|
import _sfc_main$1 from "../../../../components/Button/Button.vue2.js";
|
|
4
|
-
/* empty css
|
|
4
|
+
/* empty css */
|
|
5
5
|
import Media from "../../../../components/Media/Media.vue.js";
|
|
6
6
|
import _sfc_main$4 from "../../../../components/Dropdown/Dropdown.vue.js";
|
|
7
7
|
import _sfc_main$9 from "../../../../components/Feed/Feed.vue.js";
|
|
@@ -20,7 +20,7 @@ import ArtistCardSmall from "../cards/ArtistCardSmall.vue.js";
|
|
|
20
20
|
import { state, actions } from "../../store/playlists.js";
|
|
21
21
|
import { actions as actions$1 } from "../../store/player.js";
|
|
22
22
|
import { state as state$1 } from "../../../auth/views/store/auth.js";
|
|
23
|
-
import {
|
|
23
|
+
import { useStore } from "../../../core/views/store/core.store.js";
|
|
24
24
|
const _hoisted_1 = { class: "playlist-page pd-small" };
|
|
25
25
|
const _hoisted_2 = {
|
|
26
26
|
key: 0,
|
|
@@ -99,6 +99,7 @@ const _sfc_main = {
|
|
|
99
99
|
__name: "Playlist",
|
|
100
100
|
emits: ["page-loading", "page-loaded"],
|
|
101
101
|
setup(__props, { emit: __emit }) {
|
|
102
|
+
const store = useStore();
|
|
102
103
|
const route = useRoute();
|
|
103
104
|
const router = useRouter();
|
|
104
105
|
const emits = __emit;
|
|
@@ -232,7 +233,7 @@ const _sfc_main = {
|
|
|
232
233
|
router.push({ name: "music-library" });
|
|
233
234
|
} catch (error) {
|
|
234
235
|
console.error("Error deleting playlist:", error);
|
|
235
|
-
actions
|
|
236
|
+
store.core.actions.setError({
|
|
236
237
|
message: "Failed to delete playlist"
|
|
237
238
|
});
|
|
238
239
|
}
|
|
@@ -243,7 +244,7 @@ const _sfc_main = {
|
|
|
243
244
|
await fetchPlaylistData();
|
|
244
245
|
} catch (error) {
|
|
245
246
|
console.error("Error removing track:", error);
|
|
246
|
-
actions
|
|
247
|
+
store.core.actions.setError({
|
|
247
248
|
message: "Failed to remove track"
|
|
248
249
|
});
|
|
249
250
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Playlist.vue.js","sources":["../../../../../../../src/modules/music/components/pages/Playlist.vue"],"sourcesContent":["<template>\n <div class=\"playlist-page pd-small\">\n <!-- Not Found -->\n <div v-if=\"hasLoaded && !playlist\" class=\"t-center pd-big\">\n <h2 class=\"\">Playlist not found</h2>\n <p class=\"t-transp t-medium\">The playlist you're looking for doesn't exist or has been removed.</p>\n </div>\n \n <!-- Playlist Content -->\n <div v-if=\"playlist\" class=\"playlist-content cols-2-fit-content mobile:cols-1 gap-big\">\n <!-- Left Column - Cover & Stats -->\n <div class=\"pos-sticky w-max-30r pos-t-0 mobile:pos-relative playlist-cover-section\">\n <!-- Cover -->\n <div class=\"cover-container relative mn-b-medium radius-big overflow-hidden shadow-big\">\n <Media \n :url=\"playlist.coverUrl || '/assets/placeholder-playlist.jpg'\"\n :alt=\"playlist.title\"\n class=\"aspect-1x1 w-100 radius-medium o-hidden\"\n />\n </div>\n\n <!-- Quick Stats -->\n <div class=\"stats-grid grid cols-2 gap-small\">\n <div class=\"stat-card bg-light pd-medium radius-medium t-center\">\n <div class=\" mn-b-thin\">{{ playlistTracks.length }}</div>\n <div class=\"t-small t-transp t-uppercase\">Tracks</div>\n </div>\n <div class=\"stat-card bg-light pd-medium radius-medium t-center\">\n <div class=\" mn-b-thin\">{{ formatNumber(playlist.followers || 0) }}</div>\n <div class=\"t-small t-transp t-uppercase\">Followers</div>\n </div>\n </div>\n </div>\n\n <!-- Right Column - Playlist Details -->\n <div class=\"playlist-details-section\">\n <!-- Playlist Type Badge -->\n <div class=\"flex items-center gap-small mn-b-small\">\n <span class=\"bg-light t-medium pd-thin radius-thin uppercase t-small t-uppercase\">\n Playlist\n </span>\n <span v-if=\"playlist.isCollaborative\" class=\"bg-light t-medium pd-thin radius-thin uppercase t-small t-uppercase\">\n Collaborative\n </span>\n <span v-if=\"playlist.status === 'published'\" class=\"bg-light t-medium pd-thin radius-thin uppercase t-small t-uppercase\">\n Published\n </span>\n </div>\n\n <!-- Playlist Title -->\n <h1 class=\"h1 mn-b-medium\">{{ playlist.title }}</h1>\n\n <!-- Action Buttons -->\n <div class=\"flex gap-small mn-b-medium\">\n <Button\n @click=\"playPlaylist\"\n color=\"primary\"\n size=\"medium\"\n class=\"flex-1 t-white bg-black radius-thin flex-center gap-thin\"\n >\n <IconPlay fill=\"rgb(var(--white))\" class=\"i-medium\" />\n Play All\n </Button>\n\n <Button\n @click=\"shufflePlay\"\n color=\"primary\"\n size=\"medium\"\n class=\"flex-1 bg-light radius-thin flex-center gap-thin\"\n >\n <IconShuffle class=\"i-medium\" />\n Shuffle\n </Button>\n\n <Button\n @click=\"toggleFollow\"\n color=\"primary\"\n size=\"medium\"\n class=\"flex-1 bg-light radius-thin flex-center gap-thin\"\n >\n {{isFollowing ? 'Follow' : 'Unfollow'}}\n </Button>\n\n \n <Dropdown :label=\"{component: IconEllipsis, class: 'bg-light radius-thin pd-thin i-big' }\" v-model=\"showDropdown\" class=\"relative\">\n <template #trigger>\n <Button color=\"transp\" size=\"medium\" class=\"w-3r h-3r radius-full\">\n <IconEllipsis class=\"w-1-25r h-1-25r\" />\n </Button>\n </template>\n <template #default>\n <div class=\"dropdown-menu bg-white pd-small radius-medium shadow-big mn-t-thin\">\n <Button @click=\"addToQueue\" color=\"transp\" size=\"small\" class=\"w-100 t-nowrap justify-start\">\n Add to Queue\n </Button>\n <Button @click=\"copyLink\" color=\"transp\" size=\"small\" class=\"w-100 t-nowrap justify-start\">\n Copy Link\n </Button>\n <template v-if=\"isOwner || isCollaborator\">\n <hr class=\"mn-v-thin border-dark-transp-10\" />\n <Button @click=\"editPlaylist\" color=\"transp\" size=\"small\" class=\"w-100 t-nowrap justify-start\">\n Edit Playlist\n </Button>\n <Button v-if=\"isOwner\" @click=\"toggleCollaborative\" color=\"transp\" size=\"small\" class=\"t-nowrap w-100 justify-start\">\n {{ playlist.isCollaborative ? 'Make Private' : 'Make Collaborative' }}\n </Button>\n <Button v-if=\"isOwner\" @click=\"deletePlaylist\" color=\"danger\" size=\"small\" class=\"t-nowrap w-100 justify-start\">\n Delete Playlist\n </Button>\n </template>\n </div>\n </template>\n </Dropdown>\n </div>\n\n <div class=\"artists-section mn-b-medium\">\n <h3 class=\"t-medium mn-b-small\">Created by</h3>\n <div class=\"flex flex-column gap-small\">\n <ArtistCardSmall \n :artist=\"{\n _id: playlist.creator.target,\n to: { name: 'User Profile', params: { _id: playlist.creator.target } },\n photoUrl: null,\n name: playlist.creator.target,\n isVerified: false\n }\"\n :is-following=\"followedUsers.includes(playlist.creator.target)\"\n :show-follow-button=\"!isOwner\"\n @toggle-follow=\"toggleFollowUser(playlist.creator.target)\"\n />\n </div>\n </div>\n\n <!-- Collaborators -->\n <div v-if=\"playlist.collaborators && playlist.collaborators.length > 0\" class=\"collaborators-section mn-b-big\">\n <h3 class=\"t-medium mn-b-small\">Collaborators</h3>\n <div class=\"flex flex-wrap gap-small\">\n <div \n v-for=\"collaborator in playlist.collaborators\"\n :key=\"collaborator._id || collaborator\"\n class=\"collaborator-chip bg-light pd-thin-big radius-full flex items-center gap-thin\"\n >\n <Media \n v-if=\"collaborator.photoUrl\"\n :url=\"collaborator.photoUrl\"\n class=\"i-medium radius-full object-cover\"\n />\n <span class=\"t-small\">{{ collaborator.name || collaborator.profile?.name || 'User' }}</span>\n </div>\n </div>\n </div>\n\n <!-- Metadata Cards -->\n <h3 class=\"t-medium mn-b-small\">Metadata</h3>\n <div class=\"metadata-grid grid cols-2 gap-small mn-b-medium\">\n <!-- Created Date -->\n <div class=\"metadata-card bg-light pd-medium radius-medium flex items-center gap-regular\">\n <IconCalendar class=\"i-medium t-primary\" />\n <div>\n <div class=\"t-small t-transp t-uppercase\">Created</div>\n <div class=\"t-medium \">{{ formatDate(playlist.createdAt) }}</div>\n </div>\n </div>\n\n <!-- Total Duration -->\n <div class=\"metadata-card bg-light pd-medium radius-medium flex items-center gap-regular\">\n <IconClock class=\"i-medium t-primary\" />\n <div>\n <div class=\"t-small t-transp t-uppercase\">Duration</div>\n <div class=\"t-medium \">{{ totalDuration }}</div>\n </div>\n </div>\n\n <!-- Updated Date -->\n <div class=\"metadata-card bg-light pd-medium radius-medium flex items-center gap-regular\">\n <IconRefresh class=\"i-medium t-primary\" />\n <div>\n <div class=\"t-small t-transp t-uppercase\">Updated</div>\n <div class=\"t-medium \">{{ formatDate(playlist.updatedAt) }}</div>\n </div>\n </div>\n\n <!-- Visibility -->\n <div class=\"metadata-card bg-light pd-medium radius-medium flex items-center gap-regular\">\n <IconEye class=\"i-medium t-primary\" />\n <div>\n <div class=\"t-small t-transp t-uppercase\">Visibility</div>\n <div class=\"t-medium \">{{ playlist.isPublic ? 'Public' : 'Private' }}</div>\n </div>\n </div>\n </div>\n\n <!-- Tags -->\n <div v-if=\"playlist.tags && playlist.tags.length\" class=\"tags-section mn-b-medium\">\n <h3 class=\"t-medium mn-b-small\">Tags</h3>\n <div class=\"flex gap-thin flex-wrap\">\n <span \n v-for=\"tag in playlist.tags\" \n :key=\"tag\"\n class=\"tag bg-light t-transp pd-thin-big radius-small t-small hover-bg-light cursor-pointer\"\n >\n #{{ tag }}\n </span>\n </div>\n </div>\n\n <!-- Description -->\n <div v-if=\"playlist.description\" class=\"description-section bg-light pd-medium radius-medium mn-b-medium\">\n <h3 class=\"t-medium mn-b-small\">About</h3>\n <p class=\"t-transp\">{{ playlist.description }}</p>\n </div>\n </div>\n </div>\n\n <!-- Playlist Tracks -->\n <section v-if=\"!isLoading && playlist && playlistTracks.length\" class=\"tracks-section mn-t-big\">\n <h2 class=\"h2 mn-b-medium\">Tracklist</h2>\n <Feed\n :store=\"{\n read: () => Promise.resolve(playlistTracks),\n state: { isLoading: false }\n }\"\n :external=\"true\"\n :items=\"playlistTracks\"\n :states=\"{\n empty: {\n title: 'No tracks in playlist',\n description: 'Add some tracks to get started',\n class: 'pd-medium t-center'\n }\n }\"\n >\n <template #default=\"{ items }\">\n <div class=\"bg-light radius-medium o-hidden\">\n <TrackListCard\n v-for=\"(track, index) in items\"\n :key=\"track._id\"\n :track=\"track\"\n :index=\"index + 1\"\n :showAlbum=\"true\"\n :showCover=\"true\"\n :canRemove=\"isOwner || isCollaborator\"\n @remove=\"() => removeTrack(track._id)\"\n />\n </div>\n </template>\n </Feed>\n </section>\n\n <!-- Empty State -->\n <section v-else-if=\"!isLoading && playlist && !playlistTracks.length\" class=\"empty-section mn-t-big\">\n <div class=\"empty-tracks t-center pd-big bg-light radius-medium\">\n <h3 class=\" mn-b-small\">This playlist is empty</h3>\n <p class=\"t-transp t-medium mn-b-medium\">Add some tracks to get started</p>\n \n <Button \n v-if=\"isOwner || isCollaborator\"\n @click=\"$router.push({ name: 'music-search' })\"\n color=\"primary\"\n size=\"medium\"\n >\n Find Tracks\n </Button>\n </div>\n </section>\n\n <!-- More Playlists -->\n <section v-if=\"!isLoading && playlist && morePlaylists.length\" class=\"more-playlists-section mn-t-big\">\n <div class=\"flex justify-between items-center mn-b-medium\">\n <h2 class=\"h2\">More Playlists</h2>\n <router-link \n v-if=\"playlist.creator\"\n :to=\"getOwnerProfileLink(playlist.creator)\" \n class=\"t-primary hover-opacity\"\n >\n See all\n </router-link>\n </div>\n <div class=\"flex flex-nowrap gap-small o-x-scroll overscroll-behavior-x-contain scroll-behavior-smooth scroll-snap-type-x-mandatory scroll-hide\">\n <li v-for=\"relatedPlaylist in morePlaylists\" :key=\"relatedPlaylist._id\" class=\"flex-none scroll-snap-align-start\">\n <PlaylistCard :playlist=\"relatedPlaylist\" class=\"w-min-15r transition-cubic-in-out\" />\n </li>\n </div>\n </section>\n\n <!-- Edit Playlist Modal -->\n <Popup \n :isPopupOpen=\"showEditModal && (isOwner || isCollaborator)\"\n @close-popup=\"showEditModal = false\" \n class=\"bg-white pd-medium w-m-30r radius-medium\"\n >\n <PlaylistForm \n :editMode=\"true\"\n :url=\"playlist.url\"\n @cancel=\"showEditModal = false\"\n @updated=\"handlePlaylistUpdated\"\n />\n </Popup>\n\n <!-- Delete Confirmation Modal -->\n <Popup \n :isPopupOpen=\"showDeleteModal\"\n @close-popup=\"showDeleteModal = false\" \n class=\"bg-white pd-medium w-m-25r radius-medium\"\n >\n <h3 class=\"mn-b-medium\">Delete Playlist</h3>\n <p class=\"t-transp mn-b-medium\">Are you sure you want to delete \"{{ playlist.title }}\"? This action cannot be undone.</p>\n \n <div class=\"flex justify-end gap-small\">\n <Button \n @click=\"showDeleteModal = false\"\n color=\"transp\"\n size=\"medium\"\n >\n Cancel\n </Button>\n \n <Button \n @click=\"confirmDelete\"\n color=\"danger\"\n size=\"medium\"\n >\n Delete Playlist\n </Button>\n </div>\n </Popup>\n </div>\n</template>\n\n<script setup>\nimport { ref, computed, onMounted, watch } from 'vue';\nimport { useRoute, useRouter } from 'vue-router';\nimport Button from '@martyrs/src/components/Button/Button.vue';\nimport Loader from '@martyrs/src/components/Loader/Loader.vue';\nimport Media from '@martyrs/src/components/Media/Media.vue';\nimport Dropdown from '@martyrs/src/components/Dropdown/Dropdown.vue';\nimport Feed from '@martyrs/src/components/Feed/Feed.vue';\nimport Popup from '@martyrs/src/components/Popup/Popup.vue';\n\n// Icons\nimport IconPlay from '@martyrs/src/modules/icons/navigation/IconPlay.vue';\nimport IconLike from '@martyrs/src/modules/icons/navigation/IconLike.vue';\nimport IconEllipsis from '@martyrs/src/modules/icons/navigation/IconEllipsis.vue';\nimport IconShuffle from '@martyrs/src/modules/icons/navigation/IconShuffle.vue';\nimport IconCalendar from '@martyrs/src/modules/icons/entities/IconCalendar.vue';\nimport IconClock from '@martyrs/src/modules/icons/entities/IconTime.vue';\nimport IconEye from '@martyrs/src/modules/icons/actions/IconShow.vue';\nimport IconRefresh from '@martyrs/src/modules/icons/navigation/IconRefresh.vue';\nimport IconVerified from '@martyrs/src/modules/icons/navigation/IconCheckmark.vue';\n\n// Components\nimport TrackListCard from '../cards/TrackListCard.vue';\nimport PlaylistCard from '../cards/PlaylistCard.vue';\nimport PlaylistForm from '../forms/PlaylistForm.vue';\nimport ArtistCardSmall from '../cards/ArtistCardSmall.vue';\n\n// Store\nimport { state as playlistsState, actions as playlistsActions } from '../../store/playlists.js';\nimport { state as tracksState, actions as tracksActions } from '../../store/tracks.js';\nimport { actions as playerActions } from '../../store/player.js';\nimport { state as authState } from '@martyrs/src/modules/auth/views/store/auth.js';\nimport * as core from '@martyrs/src/modules/core/views/store/core.store.js';\n\nconst route = useRoute();\nconst router = useRouter();\n\n// Emits\nconst emits = defineEmits(['page-loading', 'page-loaded']);\n\n// State\nconst hasLoaded = ref(false);\nconst isFollowing = ref(false);\nconst showDropdown = ref(false);\nconst showEditModal = ref(false);\nconst showDeleteModal = ref(false);\nconst followedUsers = ref([]);\nconst morePlaylists = ref([]);\n\n// Clear state\nplaylistsState.currentPlaylist = null;\nplaylistsState.currentPlaylistTracks = [];\n\n// Computed\nconst playlist = computed(() => playlistsState.currentPlaylist);\nconst playlistTracks = computed(() => playlistsState.currentPlaylistTracks || []);\n\nconst isOwner = computed(() => {\n if (!playlist.value || !authState.user) return false;\n \n const ownerId = playlist.value.owner?.target?._id || playlist.value.owner?.target;\n return ownerId === authState.user._id;\n});\n\nconst isCollaborator = computed(() => {\n if (!playlist.value || !authState.user) return false;\n \n return playlist.value.collaborators?.some(collab => \n (collab._id || collab) === authState.user._id\n );\n});\n\nconst totalDuration = computed(() => {\n if (!playlistTracks.value.length) return '0:00';\n const totalSeconds = playlistTracks.value.reduce((sum, track) => sum + (track.duration || 0), 0);\n return formatDuration(totalSeconds);\n});\n\n// Helper functions\nconst getOwnerData = (playlist) => {\n if (!playlist) return null;\n const owner = playlist.creator?.target || playlist.owner?.target;\n return typeof owner === 'object' ? owner : null;\n};\n\nconst getOwnerId = (playlist) => {\n if (!playlist) return null;\n const owner = playlist.creator?.target || playlist.owner?.target;\n return typeof owner === 'object' ? owner._id : owner;\n};\n\nconst getPlaylistOwnerName = (playlist) => {\n if (!playlist) return 'Unknown';\n \n const owner = getOwnerData(playlist);\n if (owner) {\n return owner.profile?.name || owner.name || 'Unknown';\n }\n \n return 'Unknown';\n};\n\nconst getOwnerProfileLink = (owner) => {\n if (!owner || !owner.target) return { name: 'music-home' };\n \n const targetId = typeof owner.target === 'object' ? owner.target._id : owner.target;\n \n if (owner.type === 'user' || owner.type === 'User') {\n return { name: 'User Profile', params: { _id: targetId } };\n } else if (owner.type === 'organization' || owner.type === 'Organization') {\n return { name: 'Organizatio', params: { _id: targetId } };\n }\n \n return { name: 'music-home' };\n};\n\n// Format helpers\nconst formatDate = (dateString) => {\n if (!dateString) return 'Unknown';\n return new Date(dateString).toLocaleDateString('en-US', {\n year: 'numeric',\n month: 'long',\n day: 'numeric'\n });\n};\n\nconst formatDuration = (seconds) => {\n if (!seconds) return '0:00';\n const h = Math.floor(seconds / 3600);\n const m = Math.floor((seconds % 3600) / 60);\n const s = Math.floor(seconds % 60);\n \n if (h > 0) {\n return `${h}:${m.toString().padStart(2, '0')}:${s.toString().padStart(2, '0')}`;\n }\n return `${m}:${s.toString().padStart(2, '0')}`;\n};\n\nconst formatNumber = (num) => {\n if (!num) return '0';\n if (num >= 1000000) {\n return (num / 1000000).toFixed(1) + 'M';\n } else if (num >= 1000) {\n return (num / 1000).toFixed(1) + 'K';\n }\n return num.toString();\n};\n\n// Actions\nconst playPlaylist = () => {\n if (playlistTracks.value && playlistTracks.value.length > 0) {\n playerActions.setQueue(playlistTracks.value);\n }\n};\n\nconst shufflePlay = () => {\n if (playlistTracks.value && playlistTracks.value.length > 0) {\n const shuffled = [...playlistTracks.value].sort(() => Math.random() - 0.5);\n playerActions.setQueue(shuffled);\n }\n};\n\nconst toggleFollow = async () => {\n isFollowing.value = !isFollowing.value;\n // TODO: Implement actual following\n try {\n if (isFollowing.value) {\n await playlistsActions.followPlaylist(playlist.value._id);\n } else {\n await playlistsActions.unfollowPlaylist(playlist.value._id);\n }\n } catch (error) {\n console.error('Error toggling follow:', error);\n isFollowing.value = !isFollowing.value; // Revert on error\n }\n};\n\nconst toggleFollowUser = (userId) => {\n const index = followedUsers.value.indexOf(userId);\n if (index > -1) {\n followedUsers.value.splice(index, 1);\n } else {\n followedUsers.value.push(userId);\n }\n // TODO: Implement actual following\n};\n\nconst addToQueue = () => {\n if (playlistTracks.value && playlistTracks.value.length > 0) {\n playlistTracks.value.forEach(track => {\n playerActions.addToQueue(track);\n });\n showDropdown.value = false;\n }\n};\n\nconst editPlaylist = () => {\n showEditModal.value = true;\n showDropdown.value = false;\n};\n\nconst toggleCollaborative = async () => {\n try {\n const updatedData = {\n _id: playlist.value._id,\n isCollaborative: !playlist.value.isCollaborative\n };\n \n await playlistsActions.updatePlaylist(updatedData);\n showDropdown.value = false;\n } catch (error) {\n console.error('Error updating playlist:', error);\n }\n};\n\nconst deletePlaylist = () => {\n showDeleteModal.value = true;\n showDropdown.value = false;\n};\n\nconst confirmDelete = async () => {\n try {\n await playlistsActions.deletePlaylist(playlist.value._id);\n router.push({ name: 'music-library' });\n } catch (error) {\n console.error('Error deleting playlist:', error);\n core.actions.setError({\n message: 'Failed to delete playlist'\n });\n }\n};\n\nconst removeTrack = async (trackId) => {\n try {\n await playlistsActions.removeTrackFromPlaylist(playlist.value._id, trackId);\n // Refresh playlist data\n await fetchPlaylistData();\n } catch (error) {\n console.error('Error removing track:', error);\n core.actions.setError({\n message: 'Failed to remove track'\n });\n }\n};\n\nconst copyLink = () => {\n navigator.clipboard.writeText(window.location.href);\n showDropdown.value = false;\n};\n\nconst handlePlaylistUpdated = () => {\n showEditModal.value = false;\n fetchPlaylistData();\n};\n\n// Data fetching\nconst fetchPlaylistData = async () => {\n try {\n await playlistsActions.fetchPlaylistByUrl(route.params.url);\n \n // Check if following\n if (authState.user && playlist.value) {\n // TODO: Check if user is following this playlist\n }\n \n // Fetch more playlists from the same creator\n if (playlist.value?.creator?.target) {\n const creatorId = typeof playlist.value.creator.target === 'object' \n ? playlist.value.creator.target._id \n : playlist.value.creator.target;\n \n const playlists = await playlistsActions.fetchPlaylists({\n 'creator.target': creatorId,\n isPublic: true,\n limit: 6\n });\n \n // Filter out current playlist\n morePlaylists.value = playlists.filter(p => p._id !== playlist.value._id).slice(0, 5);\n }\n } catch (error) {\n console.error('Error fetching playlist data:', error);\n }\n};\n\n// Lifecycle\nonMounted(async () => {\n emits('page-loading');\n \n await fetchPlaylistData();\n \n hasLoaded.value = true;\n emits('page-loaded');\n});\n</script>"],"names":["playlistsState","authState","playerActions","playlistsActions","core.actions"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Playlist.vue.js","sources":["../../../../../../../src/modules/music/components/pages/Playlist.vue"],"sourcesContent":["<template>\n <div class=\"playlist-page pd-small\">\n <!-- Not Found -->\n <div v-if=\"hasLoaded && !playlist\" class=\"t-center pd-big\">\n <h2 class=\"\">Playlist not found</h2>\n <p class=\"t-transp t-medium\">The playlist you're looking for doesn't exist or has been removed.</p>\n </div>\n \n <!-- Playlist Content -->\n <div v-if=\"playlist\" class=\"playlist-content cols-2-fit-content mobile:cols-1 gap-big\">\n <!-- Left Column - Cover & Stats -->\n <div class=\"pos-sticky w-max-30r pos-t-0 mobile:pos-relative playlist-cover-section\">\n <!-- Cover -->\n <div class=\"cover-container relative mn-b-medium radius-big overflow-hidden shadow-big\">\n <Media \n :url=\"playlist.coverUrl || '/assets/placeholder-playlist.jpg'\"\n :alt=\"playlist.title\"\n class=\"aspect-1x1 w-100 radius-medium o-hidden\"\n />\n </div>\n\n <!-- Quick Stats -->\n <div class=\"stats-grid grid cols-2 gap-small\">\n <div class=\"stat-card bg-light pd-medium radius-medium t-center\">\n <div class=\" mn-b-thin\">{{ playlistTracks.length }}</div>\n <div class=\"t-small t-transp t-uppercase\">Tracks</div>\n </div>\n <div class=\"stat-card bg-light pd-medium radius-medium t-center\">\n <div class=\" mn-b-thin\">{{ formatNumber(playlist.followers || 0) }}</div>\n <div class=\"t-small t-transp t-uppercase\">Followers</div>\n </div>\n </div>\n </div>\n\n <!-- Right Column - Playlist Details -->\n <div class=\"playlist-details-section\">\n <!-- Playlist Type Badge -->\n <div class=\"flex items-center gap-small mn-b-small\">\n <span class=\"bg-light t-medium pd-thin radius-thin uppercase t-small t-uppercase\">\n Playlist\n </span>\n <span v-if=\"playlist.isCollaborative\" class=\"bg-light t-medium pd-thin radius-thin uppercase t-small t-uppercase\">\n Collaborative\n </span>\n <span v-if=\"playlist.status === 'published'\" class=\"bg-light t-medium pd-thin radius-thin uppercase t-small t-uppercase\">\n Published\n </span>\n </div>\n\n <!-- Playlist Title -->\n <h1 class=\"h1 mn-b-medium\">{{ playlist.title }}</h1>\n\n <!-- Action Buttons -->\n <div class=\"flex gap-small mn-b-medium\">\n <Button\n @click=\"playPlaylist\"\n color=\"primary\"\n size=\"medium\"\n class=\"flex-1 t-white bg-black radius-thin flex-center gap-thin\"\n >\n <IconPlay fill=\"rgb(var(--white))\" class=\"i-medium\" />\n Play All\n </Button>\n\n <Button\n @click=\"shufflePlay\"\n color=\"primary\"\n size=\"medium\"\n class=\"flex-1 bg-light radius-thin flex-center gap-thin\"\n >\n <IconShuffle class=\"i-medium\" />\n Shuffle\n </Button>\n\n <Button\n @click=\"toggleFollow\"\n color=\"primary\"\n size=\"medium\"\n class=\"flex-1 bg-light radius-thin flex-center gap-thin\"\n >\n {{isFollowing ? 'Follow' : 'Unfollow'}}\n </Button>\n\n \n <Dropdown :label=\"{component: IconEllipsis, class: 'bg-light radius-thin pd-thin i-big' }\" v-model=\"showDropdown\" class=\"relative\">\n <template #trigger>\n <Button color=\"transp\" size=\"medium\" class=\"w-3r h-3r radius-full\">\n <IconEllipsis class=\"w-1-25r h-1-25r\" />\n </Button>\n </template>\n <template #default>\n <div class=\"dropdown-menu bg-white pd-small radius-medium shadow-big mn-t-thin\">\n <Button @click=\"addToQueue\" color=\"transp\" size=\"small\" class=\"w-100 t-nowrap justify-start\">\n Add to Queue\n </Button>\n <Button @click=\"copyLink\" color=\"transp\" size=\"small\" class=\"w-100 t-nowrap justify-start\">\n Copy Link\n </Button>\n <template v-if=\"isOwner || isCollaborator\">\n <hr class=\"mn-v-thin border-dark-transp-10\" />\n <Button @click=\"editPlaylist\" color=\"transp\" size=\"small\" class=\"w-100 t-nowrap justify-start\">\n Edit Playlist\n </Button>\n <Button v-if=\"isOwner\" @click=\"toggleCollaborative\" color=\"transp\" size=\"small\" class=\"t-nowrap w-100 justify-start\">\n {{ playlist.isCollaborative ? 'Make Private' : 'Make Collaborative' }}\n </Button>\n <Button v-if=\"isOwner\" @click=\"deletePlaylist\" color=\"danger\" size=\"small\" class=\"t-nowrap w-100 justify-start\">\n Delete Playlist\n </Button>\n </template>\n </div>\n </template>\n </Dropdown>\n </div>\n\n <div class=\"artists-section mn-b-medium\">\n <h3 class=\"t-medium mn-b-small\">Created by</h3>\n <div class=\"flex flex-column gap-small\">\n <ArtistCardSmall \n :artist=\"{\n _id: playlist.creator.target,\n to: { name: 'User Profile', params: { _id: playlist.creator.target } },\n photoUrl: null,\n name: playlist.creator.target,\n isVerified: false\n }\"\n :is-following=\"followedUsers.includes(playlist.creator.target)\"\n :show-follow-button=\"!isOwner\"\n @toggle-follow=\"toggleFollowUser(playlist.creator.target)\"\n />\n </div>\n </div>\n\n <!-- Collaborators -->\n <div v-if=\"playlist.collaborators && playlist.collaborators.length > 0\" class=\"collaborators-section mn-b-big\">\n <h3 class=\"t-medium mn-b-small\">Collaborators</h3>\n <div class=\"flex flex-wrap gap-small\">\n <div \n v-for=\"collaborator in playlist.collaborators\"\n :key=\"collaborator._id || collaborator\"\n class=\"collaborator-chip bg-light pd-thin-big radius-full flex items-center gap-thin\"\n >\n <Media \n v-if=\"collaborator.photoUrl\"\n :url=\"collaborator.photoUrl\"\n class=\"i-medium radius-full object-cover\"\n />\n <span class=\"t-small\">{{ collaborator.name || collaborator.profile?.name || 'User' }}</span>\n </div>\n </div>\n </div>\n\n <!-- Metadata Cards -->\n <h3 class=\"t-medium mn-b-small\">Metadata</h3>\n <div class=\"metadata-grid grid cols-2 gap-small mn-b-medium\">\n <!-- Created Date -->\n <div class=\"metadata-card bg-light pd-medium radius-medium flex items-center gap-regular\">\n <IconCalendar class=\"i-medium t-primary\" />\n <div>\n <div class=\"t-small t-transp t-uppercase\">Created</div>\n <div class=\"t-medium \">{{ formatDate(playlist.createdAt) }}</div>\n </div>\n </div>\n\n <!-- Total Duration -->\n <div class=\"metadata-card bg-light pd-medium radius-medium flex items-center gap-regular\">\n <IconClock class=\"i-medium t-primary\" />\n <div>\n <div class=\"t-small t-transp t-uppercase\">Duration</div>\n <div class=\"t-medium \">{{ totalDuration }}</div>\n </div>\n </div>\n\n <!-- Updated Date -->\n <div class=\"metadata-card bg-light pd-medium radius-medium flex items-center gap-regular\">\n <IconRefresh class=\"i-medium t-primary\" />\n <div>\n <div class=\"t-small t-transp t-uppercase\">Updated</div>\n <div class=\"t-medium \">{{ formatDate(playlist.updatedAt) }}</div>\n </div>\n </div>\n\n <!-- Visibility -->\n <div class=\"metadata-card bg-light pd-medium radius-medium flex items-center gap-regular\">\n <IconEye class=\"i-medium t-primary\" />\n <div>\n <div class=\"t-small t-transp t-uppercase\">Visibility</div>\n <div class=\"t-medium \">{{ playlist.isPublic ? 'Public' : 'Private' }}</div>\n </div>\n </div>\n </div>\n\n <!-- Tags -->\n <div v-if=\"playlist.tags && playlist.tags.length\" class=\"tags-section mn-b-medium\">\n <h3 class=\"t-medium mn-b-small\">Tags</h3>\n <div class=\"flex gap-thin flex-wrap\">\n <span \n v-for=\"tag in playlist.tags\" \n :key=\"tag\"\n class=\"tag bg-light t-transp pd-thin-big radius-small t-small hover-bg-light cursor-pointer\"\n >\n #{{ tag }}\n </span>\n </div>\n </div>\n\n <!-- Description -->\n <div v-if=\"playlist.description\" class=\"description-section bg-light pd-medium radius-medium mn-b-medium\">\n <h3 class=\"t-medium mn-b-small\">About</h3>\n <p class=\"t-transp\">{{ playlist.description }}</p>\n </div>\n </div>\n </div>\n\n <!-- Playlist Tracks -->\n <section v-if=\"!isLoading && playlist && playlistTracks.length\" class=\"tracks-section mn-t-big\">\n <h2 class=\"h2 mn-b-medium\">Tracklist</h2>\n <Feed\n :store=\"{\n read: () => Promise.resolve(playlistTracks),\n state: { isLoading: false }\n }\"\n :external=\"true\"\n :items=\"playlistTracks\"\n :states=\"{\n empty: {\n title: 'No tracks in playlist',\n description: 'Add some tracks to get started',\n class: 'pd-medium t-center'\n }\n }\"\n >\n <template #default=\"{ items }\">\n <div class=\"bg-light radius-medium o-hidden\">\n <TrackListCard\n v-for=\"(track, index) in items\"\n :key=\"track._id\"\n :track=\"track\"\n :index=\"index + 1\"\n :showAlbum=\"true\"\n :showCover=\"true\"\n :canRemove=\"isOwner || isCollaborator\"\n @remove=\"() => removeTrack(track._id)\"\n />\n </div>\n </template>\n </Feed>\n </section>\n\n <!-- Empty State -->\n <section v-else-if=\"!isLoading && playlist && !playlistTracks.length\" class=\"empty-section mn-t-big\">\n <div class=\"empty-tracks t-center pd-big bg-light radius-medium\">\n <h3 class=\" mn-b-small\">This playlist is empty</h3>\n <p class=\"t-transp t-medium mn-b-medium\">Add some tracks to get started</p>\n \n <Button \n v-if=\"isOwner || isCollaborator\"\n @click=\"$router.push({ name: 'music-search' })\"\n color=\"primary\"\n size=\"medium\"\n >\n Find Tracks\n </Button>\n </div>\n </section>\n\n <!-- More Playlists -->\n <section v-if=\"!isLoading && playlist && morePlaylists.length\" class=\"more-playlists-section mn-t-big\">\n <div class=\"flex justify-between items-center mn-b-medium\">\n <h2 class=\"h2\">More Playlists</h2>\n <router-link \n v-if=\"playlist.creator\"\n :to=\"getOwnerProfileLink(playlist.creator)\" \n class=\"t-primary hover-opacity\"\n >\n See all\n </router-link>\n </div>\n <div class=\"flex flex-nowrap gap-small o-x-scroll overscroll-behavior-x-contain scroll-behavior-smooth scroll-snap-type-x-mandatory scroll-hide\">\n <li v-for=\"relatedPlaylist in morePlaylists\" :key=\"relatedPlaylist._id\" class=\"flex-none scroll-snap-align-start\">\n <PlaylistCard :playlist=\"relatedPlaylist\" class=\"w-min-15r transition-cubic-in-out\" />\n </li>\n </div>\n </section>\n\n <!-- Edit Playlist Modal -->\n <Popup \n :isPopupOpen=\"showEditModal && (isOwner || isCollaborator)\"\n @close-popup=\"showEditModal = false\" \n class=\"bg-white pd-medium w-m-30r radius-medium\"\n >\n <PlaylistForm \n :editMode=\"true\"\n :url=\"playlist.url\"\n @cancel=\"showEditModal = false\"\n @updated=\"handlePlaylistUpdated\"\n />\n </Popup>\n\n <!-- Delete Confirmation Modal -->\n <Popup \n :isPopupOpen=\"showDeleteModal\"\n @close-popup=\"showDeleteModal = false\" \n class=\"bg-white pd-medium w-m-25r radius-medium\"\n >\n <h3 class=\"mn-b-medium\">Delete Playlist</h3>\n <p class=\"t-transp mn-b-medium\">Are you sure you want to delete \"{{ playlist.title }}\"? This action cannot be undone.</p>\n \n <div class=\"flex justify-end gap-small\">\n <Button \n @click=\"showDeleteModal = false\"\n color=\"transp\"\n size=\"medium\"\n >\n Cancel\n </Button>\n \n <Button \n @click=\"confirmDelete\"\n color=\"danger\"\n size=\"medium\"\n >\n Delete Playlist\n </Button>\n </div>\n </Popup>\n </div>\n</template>\n\n<script setup>\nimport { ref, computed, onMounted, watch } from 'vue';\nimport { useRoute, useRouter } from 'vue-router';\nimport Button from '@martyrs/src/components/Button/Button.vue';\nimport Loader from '@martyrs/src/components/Loader/Loader.vue';\nimport Media from '@martyrs/src/components/Media/Media.vue';\nimport Dropdown from '@martyrs/src/components/Dropdown/Dropdown.vue';\nimport Feed from '@martyrs/src/components/Feed/Feed.vue';\nimport Popup from '@martyrs/src/components/Popup/Popup.vue';\n\n// Icons\nimport IconPlay from '@martyrs/src/modules/icons/navigation/IconPlay.vue';\nimport IconLike from '@martyrs/src/modules/icons/navigation/IconLike.vue';\nimport IconEllipsis from '@martyrs/src/modules/icons/navigation/IconEllipsis.vue';\nimport IconShuffle from '@martyrs/src/modules/icons/navigation/IconShuffle.vue';\nimport IconCalendar from '@martyrs/src/modules/icons/entities/IconCalendar.vue';\nimport IconClock from '@martyrs/src/modules/icons/entities/IconTime.vue';\nimport IconEye from '@martyrs/src/modules/icons/actions/IconShow.vue';\nimport IconRefresh from '@martyrs/src/modules/icons/navigation/IconRefresh.vue';\nimport IconVerified from '@martyrs/src/modules/icons/navigation/IconCheckmark.vue';\n\n// Components\nimport TrackListCard from '../cards/TrackListCard.vue';\nimport PlaylistCard from '../cards/PlaylistCard.vue';\nimport PlaylistForm from '../forms/PlaylistForm.vue';\nimport ArtistCardSmall from '../cards/ArtistCardSmall.vue';\n\n// Store\nimport { state as playlistsState, actions as playlistsActions } from '../../store/playlists.js';\nimport { state as tracksState, actions as tracksActions } from '../../store/tracks.js';\nimport { actions as playerActions } from '../../store/player.js';\nimport { state as authState } from '@martyrs/src/modules/auth/views/store/auth.js';\nimport { useStore } from '@martyrs/src/modules/core/views/store/core.store.js';\n\nconst store = useStore();\n\nconst route = useRoute();\nconst router = useRouter();\n\n// Emits\nconst emits = defineEmits(['page-loading', 'page-loaded']);\n\n// State\nconst hasLoaded = ref(false);\nconst isFollowing = ref(false);\nconst showDropdown = ref(false);\nconst showEditModal = ref(false);\nconst showDeleteModal = ref(false);\nconst followedUsers = ref([]);\nconst morePlaylists = ref([]);\n\n// Clear state\nplaylistsState.currentPlaylist = null;\nplaylistsState.currentPlaylistTracks = [];\n\n// Computed\nconst playlist = computed(() => playlistsState.currentPlaylist);\nconst playlistTracks = computed(() => playlistsState.currentPlaylistTracks || []);\n\nconst isOwner = computed(() => {\n if (!playlist.value || !authState.user) return false;\n \n const ownerId = playlist.value.owner?.target?._id || playlist.value.owner?.target;\n return ownerId === authState.user._id;\n});\n\nconst isCollaborator = computed(() => {\n if (!playlist.value || !authState.user) return false;\n \n return playlist.value.collaborators?.some(collab => \n (collab._id || collab) === authState.user._id\n );\n});\n\nconst totalDuration = computed(() => {\n if (!playlistTracks.value.length) return '0:00';\n const totalSeconds = playlistTracks.value.reduce((sum, track) => sum + (track.duration || 0), 0);\n return formatDuration(totalSeconds);\n});\n\n// Helper functions\nconst getOwnerData = (playlist) => {\n if (!playlist) return null;\n const owner = playlist.creator?.target || playlist.owner?.target;\n return typeof owner === 'object' ? owner : null;\n};\n\nconst getOwnerId = (playlist) => {\n if (!playlist) return null;\n const owner = playlist.creator?.target || playlist.owner?.target;\n return typeof owner === 'object' ? owner._id : owner;\n};\n\nconst getPlaylistOwnerName = (playlist) => {\n if (!playlist) return 'Unknown';\n \n const owner = getOwnerData(playlist);\n if (owner) {\n return owner.profile?.name || owner.name || 'Unknown';\n }\n \n return 'Unknown';\n};\n\nconst getOwnerProfileLink = (owner) => {\n if (!owner || !owner.target) return { name: 'music-home' };\n \n const targetId = typeof owner.target === 'object' ? owner.target._id : owner.target;\n \n if (owner.type === 'user' || owner.type === 'User') {\n return { name: 'User Profile', params: { _id: targetId } };\n } else if (owner.type === 'organization' || owner.type === 'Organization') {\n return { name: 'Organizatio', params: { _id: targetId } };\n }\n \n return { name: 'music-home' };\n};\n\n// Format helpers\nconst formatDate = (dateString) => {\n if (!dateString) return 'Unknown';\n return new Date(dateString).toLocaleDateString('en-US', {\n year: 'numeric',\n month: 'long',\n day: 'numeric'\n });\n};\n\nconst formatDuration = (seconds) => {\n if (!seconds) return '0:00';\n const h = Math.floor(seconds / 3600);\n const m = Math.floor((seconds % 3600) / 60);\n const s = Math.floor(seconds % 60);\n \n if (h > 0) {\n return `${h}:${m.toString().padStart(2, '0')}:${s.toString().padStart(2, '0')}`;\n }\n return `${m}:${s.toString().padStart(2, '0')}`;\n};\n\nconst formatNumber = (num) => {\n if (!num) return '0';\n if (num >= 1000000) {\n return (num / 1000000).toFixed(1) + 'M';\n } else if (num >= 1000) {\n return (num / 1000).toFixed(1) + 'K';\n }\n return num.toString();\n};\n\n// Actions\nconst playPlaylist = () => {\n if (playlistTracks.value && playlistTracks.value.length > 0) {\n playerActions.setQueue(playlistTracks.value);\n }\n};\n\nconst shufflePlay = () => {\n if (playlistTracks.value && playlistTracks.value.length > 0) {\n const shuffled = [...playlistTracks.value].sort(() => Math.random() - 0.5);\n playerActions.setQueue(shuffled);\n }\n};\n\nconst toggleFollow = async () => {\n isFollowing.value = !isFollowing.value;\n // TODO: Implement actual following\n try {\n if (isFollowing.value) {\n await playlistsActions.followPlaylist(playlist.value._id);\n } else {\n await playlistsActions.unfollowPlaylist(playlist.value._id);\n }\n } catch (error) {\n console.error('Error toggling follow:', error);\n isFollowing.value = !isFollowing.value; // Revert on error\n }\n};\n\nconst toggleFollowUser = (userId) => {\n const index = followedUsers.value.indexOf(userId);\n if (index > -1) {\n followedUsers.value.splice(index, 1);\n } else {\n followedUsers.value.push(userId);\n }\n // TODO: Implement actual following\n};\n\nconst addToQueue = () => {\n if (playlistTracks.value && playlistTracks.value.length > 0) {\n playlistTracks.value.forEach(track => {\n playerActions.addToQueue(track);\n });\n showDropdown.value = false;\n }\n};\n\nconst editPlaylist = () => {\n showEditModal.value = true;\n showDropdown.value = false;\n};\n\nconst toggleCollaborative = async () => {\n try {\n const updatedData = {\n _id: playlist.value._id,\n isCollaborative: !playlist.value.isCollaborative\n };\n \n await playlistsActions.updatePlaylist(updatedData);\n showDropdown.value = false;\n } catch (error) {\n console.error('Error updating playlist:', error);\n }\n};\n\nconst deletePlaylist = () => {\n showDeleteModal.value = true;\n showDropdown.value = false;\n};\n\nconst confirmDelete = async () => {\n try {\n await playlistsActions.deletePlaylist(playlist.value._id);\n router.push({ name: 'music-library' });\n } catch (error) {\n console.error('Error deleting playlist:', error);\n store.core.actions.setError({\n message: 'Failed to delete playlist'\n });\n }\n};\n\nconst removeTrack = async (trackId) => {\n try {\n await playlistsActions.removeTrackFromPlaylist(playlist.value._id, trackId);\n // Refresh playlist data\n await fetchPlaylistData();\n } catch (error) {\n console.error('Error removing track:', error);\n store.core.actions.setError({\n message: 'Failed to remove track'\n });\n }\n};\n\nconst copyLink = () => {\n navigator.clipboard.writeText(window.location.href);\n showDropdown.value = false;\n};\n\nconst handlePlaylistUpdated = () => {\n showEditModal.value = false;\n fetchPlaylistData();\n};\n\n// Data fetching\nconst fetchPlaylistData = async () => {\n try {\n await playlistsActions.fetchPlaylistByUrl(route.params.url);\n \n // Check if following\n if (authState.user && playlist.value) {\n // TODO: Check if user is following this playlist\n }\n \n // Fetch more playlists from the same creator\n if (playlist.value?.creator?.target) {\n const creatorId = typeof playlist.value.creator.target === 'object' \n ? playlist.value.creator.target._id \n : playlist.value.creator.target;\n \n const playlists = await playlistsActions.fetchPlaylists({\n 'creator.target': creatorId,\n isPublic: true,\n limit: 6\n });\n \n // Filter out current playlist\n morePlaylists.value = playlists.filter(p => p._id !== playlist.value._id).slice(0, 5);\n }\n } catch (error) {\n console.error('Error fetching playlist data:', error);\n }\n};\n\n// Lifecycle\nonMounted(async () => {\n emits('page-loading');\n \n await fetchPlaylistData();\n \n hasLoaded.value = true;\n emits('page-loaded');\n});\n</script>\n"],"names":["playlistsState","authState","playerActions","playlistsActions"],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import AlbumCard from "../cards/AlbumCard.vue.js";
|
|
|
6
6
|
import PlaylistCard from "../cards/PlaylistCard.vue.js";
|
|
7
7
|
import ArtistCard from "../cards/ArtistCard.vue.js";
|
|
8
8
|
import _sfc_main$2 from "../../../../components/Button/Button.vue2.js";
|
|
9
|
-
import Loader from "../../../../components/Loader/Loader.
|
|
9
|
+
import Loader from "../../../../components/Loader/Loader.vue.js";
|
|
10
10
|
import { state, actions } from "../../store/search.js";
|
|
11
11
|
/* empty css */
|
|
12
12
|
import _export_sfc from "../../../../../../_virtual/_plugin-vue_export-helper.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { computed, ref, onMounted, resolveComponent, createElementBlock, openBlock, createCommentVNode, createBlock, createVNode, createElementVNode, withCtx, toDisplayString, createTextVNode, Fragment, renderList } from "vue";
|
|
2
2
|
import { useRoute, useRouter } from "vue-router";
|
|
3
3
|
import _sfc_main$1 from "../../../../components/Button/Button.vue2.js";
|
|
4
|
-
import Loader from "../../../../components/Loader/Loader.
|
|
4
|
+
import Loader from "../../../../components/Loader/Loader.vue.js";
|
|
5
5
|
import Media from "../../../../components/Media/Media.vue.js";
|
|
6
6
|
import _sfc_main$6 from "../../../../components/Dropdown/Dropdown.vue.js";
|
|
7
7
|
import _sfc_main$d from "../../../../components/Popup/Popup.vue.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createElementBlock, openBlock, createVNode } from "vue";
|
|
2
2
|
import { useRouter } from "vue-router";
|
|
3
|
-
/* empty css
|
|
3
|
+
/* empty css */
|
|
4
4
|
/* empty css */
|
|
5
5
|
import _sfc_main$1 from "../forms/TrackForm.vue.js";
|
|
6
6
|
const _hoisted_1 = { class: "track-create-page" };
|
|
@@ -28,7 +28,7 @@ import _sfc_main$2 from "./components/forms/AlbumForm.vue.js";
|
|
|
28
28
|
import _sfc_main$1 from "./components/forms/PlaylistForm.vue.js";
|
|
29
29
|
import SearchForm from "./components/forms/SearchForm.vue.js";
|
|
30
30
|
import _sfc_main from "./components/forms/TrackForm.vue.js";
|
|
31
|
-
import
|
|
31
|
+
import { wsManager } from "../core/views/classes/ws.manager.js";
|
|
32
32
|
function initializeMusic(app, store, router, config, options = {}) {
|
|
33
33
|
const routes = getRoutes(options);
|
|
34
34
|
routes.forEach(({ parentName, config: config2 }) => {
|
|
@@ -42,14 +42,14 @@ function initializeMusic(app, store, router, config, options = {}) {
|
|
|
42
42
|
store.addStore("player", player);
|
|
43
43
|
store.addStore("search", search);
|
|
44
44
|
if (options.enableStreaming !== false && app.config.globalProperties.WSS_URL) {
|
|
45
|
-
|
|
45
|
+
wsManager.initialize({
|
|
46
46
|
wsUrl: process.env.WSS_URL,
|
|
47
47
|
maxReconnectAttempts: 10,
|
|
48
48
|
reconnectDelay: 2e3
|
|
49
49
|
});
|
|
50
50
|
if (options.userId) {
|
|
51
|
-
|
|
52
|
-
|
|
51
|
+
wsManager.connect(options.userId).then(() => {
|
|
52
|
+
wsManager.subscribeModule("music-streaming");
|
|
53
53
|
}).catch((err) => {
|
|
54
54
|
console.error("Failed to connect to WebSocket for music streaming:", err);
|
|
55
55
|
});
|