@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
|
@@ -2,17 +2,18 @@ import { onMounted, createBlock, openBlock, unref, withCtx, createElementBlock,
|
|
|
2
2
|
import { useRoute } from "vue-router";
|
|
3
3
|
import _sfc_main$1 from "../../../../../components/Feed/Feed.vue.js";
|
|
4
4
|
import { actions } from "../../../../organizations/store/organizations.js";
|
|
5
|
-
import {
|
|
5
|
+
import { useStore } from "../../../../core/views/store/core.store.js";
|
|
6
6
|
import _sfc_main$2 from "../../../../organizations/components/blocks/CardOrganization.vue.js";
|
|
7
|
-
import { state
|
|
7
|
+
import { state } from "../../store/marketplace.js";
|
|
8
8
|
const _sfc_main = {
|
|
9
9
|
__name: "Catalog",
|
|
10
10
|
setup(__props) {
|
|
11
|
+
const core = useStore();
|
|
11
12
|
const route = useRoute();
|
|
12
13
|
onMounted(() => {
|
|
13
14
|
if (typeof gtag === "function") {
|
|
14
15
|
gtag("event", "view_marketplace", {
|
|
15
|
-
location: state.position?.location || "unknown",
|
|
16
|
+
location: core.state.position?.location || "unknown",
|
|
16
17
|
page_path: window.location.pathname,
|
|
17
18
|
marketplace_id: route.params.id || "main"
|
|
18
19
|
});
|
|
@@ -20,10 +21,10 @@ const _sfc_main = {
|
|
|
20
21
|
});
|
|
21
22
|
return (_ctx, _cache) => {
|
|
22
23
|
return openBlock(), createBlock(_sfc_main$1, {
|
|
23
|
-
sort: state
|
|
24
|
-
"onUpdate:sort": _cache[0] || (_cache[0] = ($event) => state
|
|
25
|
-
filter: state
|
|
26
|
-
"onUpdate:filter": _cache[1] || (_cache[1] = ($event) => state
|
|
24
|
+
sort: state.sort,
|
|
25
|
+
"onUpdate:sort": _cache[0] || (_cache[0] = ($event) => state.sort = $event),
|
|
26
|
+
filter: state.filter,
|
|
27
|
+
"onUpdate:filter": _cache[1] || (_cache[1] = ($event) => state.filter = $event),
|
|
27
28
|
search: true,
|
|
28
29
|
showLoadMore: false,
|
|
29
30
|
states: {
|
|
@@ -42,7 +43,7 @@ const _sfc_main = {
|
|
|
42
43
|
categories: unref(route).query.categories,
|
|
43
44
|
prices: unref(route).query.prices,
|
|
44
45
|
delivery: unref(route).query.delivery,
|
|
45
|
-
location: state.position?.location,
|
|
46
|
+
location: unref(core).state.position?.location,
|
|
46
47
|
lookup: ["products", "spots"],
|
|
47
48
|
contain: ["products"]
|
|
48
49
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Catalog.vue.js","sources":["../../../../../../../../src/modules/marketplace/views/components/pages/Catalog.vue"],"sourcesContent":["<template>\n\t<Feed\n\t\tv-model:sort=\"marketplace.state.sort\"\n\t\tv-model:filter=\"marketplace.state.filter\"\n :search=\"true\"\n :showLoadMore=\"false\"\n :states=\"{\n empty: {\n title: 'No Shops Found',\n description: 'Currently, there are no shops.'\n },\n }\"\n :store=\"{\n read: (options) => organization.actions.read(options)\n }\"\n :options=\"{\n country: route.params.country,\n\t state: route.params.state,\n\t city: route.params.city,\n\t categories: route.query.categories,\n\t prices: route.query.prices,\n\t delivery: route.query.delivery,\n\t location: core.state.position?.location,\n\t lookup: ['products','spots'],\n\t contain: ['products'],\n }\"\n v-slot=\"{ \n items \n }\"\n class=\"rows-1 gap-thin\"\n >\n <CardOrganization \n\t v-for=\"organization in items\" \n\t :key=\"organization._id\"\n\t :organization=\"organization\"\n\t :showRating=\"true\"\n\t :showFollowers=\"false\"\n\t :showProducts=\"true\"\n\t class=\"bg-light w-100 o-hidden radius-medium pd-small \"\n\t />\n </Feed>\n</template>\n\n<script setup>\n\timport { computed,reactive,ref, onMounted,watch } from 'vue'\n\timport { useRoute } from 'vue-router'\n\n\timport Feed from '@martyrs/src/components/Feed/Feed.vue'\n\t\n\timport * as organization from '@martyrs/src/modules/organizations/store/organizations.js'\n\timport
|
|
1
|
+
{"version":3,"file":"Catalog.vue.js","sources":["../../../../../../../../src/modules/marketplace/views/components/pages/Catalog.vue"],"sourcesContent":["<template>\n\t<Feed\n\t\tv-model:sort=\"marketplace.state.sort\"\n\t\tv-model:filter=\"marketplace.state.filter\"\n :search=\"true\"\n :showLoadMore=\"false\"\n :states=\"{\n empty: {\n title: 'No Shops Found',\n description: 'Currently, there are no shops.'\n },\n }\"\n :store=\"{\n read: (options) => organization.actions.read(options)\n }\"\n :options=\"{\n country: route.params.country,\n\t state: route.params.state,\n\t city: route.params.city,\n\t categories: route.query.categories,\n\t prices: route.query.prices,\n\t delivery: route.query.delivery,\n\t location: core.state.position?.location,\n\t lookup: ['products','spots'],\n\t contain: ['products'],\n }\"\n v-slot=\"{ \n items \n }\"\n class=\"rows-1 gap-thin\"\n >\n <CardOrganization \n\t v-for=\"organization in items\" \n\t :key=\"organization._id\"\n\t :organization=\"organization\"\n\t :showRating=\"true\"\n\t :showFollowers=\"false\"\n\t :showProducts=\"true\"\n\t class=\"bg-light w-100 o-hidden radius-medium pd-small \"\n\t />\n </Feed>\n</template>\n\n<script setup>\n\timport { computed,reactive,ref, onMounted,watch } from 'vue'\n\timport { useRoute } from 'vue-router'\n\n\timport Feed from '@martyrs/src/components/Feed/Feed.vue'\n\t\n\timport * as organization from '@martyrs/src/modules/organizations/store/organizations.js'\n\timport { useStore } from '@martyrs/src/modules/core/views/store/core.store.js'\n\tconst core = useStore()\n\n\timport CardOrganization from '@martyrs/src/modules/organizations/components/blocks/CardOrganization.vue'\n\n\timport * as marketplace from '../../store/marketplace';\n\t\n\tconst route = useRoute()\n\n\tonMounted(() => {\n\t\t// Добавление Google Analytics event на открытие маркетплейса\n\t\tif (typeof gtag === 'function') {\n\t\t\tgtag('event', 'view_marketplace', {\n\t\t\t\tlocation: core.state.position?.location || 'unknown',\n\t\t\t\tpage_path: window.location.pathname,\n\t\t\t\tmarketplace_id: route.params.id || 'main',\n\t\t\t});\n\t\t}\n\t})\n</script>\n\n<style lang=\"scss\">\n</style>\n"],"names":[],"mappings":";;;;;;;;;;AAmDC,UAAM,OAAO,SAAQ;AAMrB,UAAM,QAAQ,SAAQ;AAEtB,cAAU,MAAM;AAEf,UAAI,OAAO,SAAS,YAAY;AAC/B,aAAK,SAAS,oBAAoB;AAAA,UACjC,UAAU,KAAK,MAAM,UAAU,YAAY;AAAA,UAC3C,WAAW,OAAO,SAAS;AAAA,UAC3B,gBAAgB,MAAM,OAAO,MAAM;AAAA,QACvC,CAAI;AAAA,MACF;AAAA,IACD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ref, onMounted, resolveComponent, createElementBlock, openBlock, createElementVNode, createVNode, createTextVNode, Transition, withCtx, Fragment, renderList, createBlock, createCommentVNode, normalizeClass, toDisplayString } from "vue";
|
|
2
|
-
import Loader from "../../../../../components/Loader/Loader.
|
|
2
|
+
import Loader from "../../../../../components/Loader/Loader.vue.js";
|
|
3
3
|
import { useRouter } from "vue-router";
|
|
4
4
|
import { useI18n } from "vue-i18n";
|
|
5
5
|
import { actions as actions$1 } from "../../../../products/store/categories.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TrackListCard.vue.js","sources":["../../../../../../../src/modules/music/components/cards/TrackListCard.vue"],"sourcesContent":["<!-- components/cards/TrackListCard.vue -->\n<template>\n <div \n class=\"track-item pd-small hover-bg-white-transp-25 flex-v-center flex cursor-pointer\"\n :class=\"{'bg-main-transp-10': isPlaying(track)}\"\n @click=\"playTrack(track)\"\n @dblclick=\"playTrack(track, true)\"\n @mouseenter=\"hoveredIndex = props.index\"\n @mouseleave=\"hoveredIndex = -1\"\n >\n <div class=\"track-number w-3r t-center pos-relative\">\n <span v-if=\"!isPlaying(track) && hoveredIndex !== props.index\" class=\"t-transp\">{{ props.index + 1 }}</span>\n <Button \n v-else-if=\"!isPlaying(track) && hoveredIndex === props.index\"\n @click.stop=\"playTrack(track)\"\n class=\"bg-main pd-thin\"\n :showLoader=\"false\"\n :showSucces=\"false\"\n >\n <IconPlay @click.stop=\"playTrack(track)\" class=\"i-small\" fill=\"rgb(var(--white))\"/>\n </Button>\n <Button \n v-else\n @click.stop=\"pauseTrack()\"\n class=\"bg-main pd-thin\"\n :showLoader=\"false\"\n :showSucces=\"false\"\n >\n <IconPause @click.stop=\"pauseTrack()\" class=\"i-small\" fill=\"rgb(var(--white))\"/>\n </Button>\n </div>\n \n <div class=\"track-title flex-child-1 flex flex-v-center\">\n <div v-if=\"showCover\" class=\"track-cover mn-r-small\">\n <Media \n :url=\"track.coverUrl || (track.album && track.album.coverUrl) || '/logo/logo-placeholder.jpg'\" \n class=\"w-3r h-3r object-fit-cover o-hidden radius-small\"\n />\n </div>\n \n <div class=\"track-info\">\n <div class=\"track-name \" :class=\"{'t-main': isPlaying(track)}\">\n <router-link \n v-if=\"track.url\"\n :to=\"{ name: 'track', params: { url: track.url } }\"\n class=\"hover-t-main hover-t-underline\"\n :class=\"{'t-main': isPlaying(track)}\"\n @click.stop\n >\n {{ track.title }}\n </router-link>\n <span v-else>{{ track.title }}</span>\n </div>\n <div :class=\"{'t-main': isPlaying(track)}\" class=\"track-artist t-transp t-small\">\n <router-link \n v-if=\"track.artist && track.artist._id\"\n :to=\"{ name: 'artist', params: { url: track.artist.url } }\"\n class=\"t-transp hover-t-underline\"\n @click.stop\n >\n {{ getArtistName(track) }}\n </router-link>\n <span v-else>{{ getArtistName(track) }}</span>\n </div>\n </div>\n </div>\n \n <div v-if=\"showAlbum\" class=\"track-album w-15r mobile:w-0 mobile:hidden t-transp t-truncate\">\n <router-link \n v-if=\"track.album && track.album._id\"\n :to=\"{ name: 'album', params: { url: track.album.url } }\"\n class=\"t-transp hover-t-underline\"\n @click.stop\n >\n {{ track.album.title }}\n </router-link>\n <span v-else>{{ track.album?.title || 'Single' }}</span>\n </div>\n \n <div class=\"track-duration w-5r t-right t-transp\">{{ formatDuration(track.duration) }}</div>\n </div>\n</template>\n\n<script setup>\nimport { ref } from 'vue';\nimport Button from '@martyrs/src/components/Button/Button.vue';\nimport Media from '@martyrs/src/components/Media/Media.vue';\nimport IconPlay from '@martyrs/src/modules/icons/navigation/IconPlay.vue';\nimport IconPause from '@martyrs/src/modules/icons/navigation/IconPause.vue';\n\n// Import player store\nimport { state as playerState, actions as playerActions } from '../../store/player.js';\n\n// Props\nconst props = defineProps({\n track: {\n type: Object,\n required: true\n },\n index: {\n type: Number,\n default: 0\n },\n showCover: {\n type: Boolean,\n default: true\n },\n showAlbum: {\n type: Boolean,\n default: true\n }\n});\n\n// State\nconst hoveredIndex = ref(-1);\n\n// Methods\nconst isPlaying = (track) => {\n return playerState.currentTrack && playerState.currentTrack._id === track._id && playerState.isPlaying;\n};\n\nconst playTrack = (track, force = false) => {\n if (isPlaying(track) && !force) {\n playerActions.togglePlay();\n } else {\n playerActions.playTrack(track);\n }\n};\n\nconst pauseTrack = () => {\n playerActions.
|
|
1
|
+
{"version":3,"file":"TrackListCard.vue.js","sources":["../../../../../../../src/modules/music/components/cards/TrackListCard.vue"],"sourcesContent":["<!-- components/cards/TrackListCard.vue -->\n<template>\n <div \n class=\"track-item pd-small hover-bg-white-transp-25 flex-v-center flex cursor-pointer\"\n :class=\"{'bg-main-transp-10': isPlaying(track)}\"\n @click=\"playTrack(track)\"\n @dblclick=\"playTrack(track, true)\"\n @mouseenter=\"hoveredIndex = props.index\"\n @mouseleave=\"hoveredIndex = -1\"\n >\n <div class=\"track-number w-3r t-center pos-relative\">\n <span v-if=\"!isPlaying(track) && hoveredIndex !== props.index\" class=\"t-transp\">{{ props.index + 1 }}</span>\n <Button \n v-else-if=\"!isPlaying(track) && hoveredIndex === props.index\"\n @click.stop=\"playTrack(track)\"\n class=\"bg-main pd-thin\"\n :showLoader=\"false\"\n :showSucces=\"false\"\n >\n <IconPlay @click.stop=\"playTrack(track)\" class=\"i-small\" fill=\"rgb(var(--white))\"/>\n </Button>\n <Button \n v-else\n @click.stop=\"pauseTrack()\"\n class=\"bg-main pd-thin\"\n :showLoader=\"false\"\n :showSucces=\"false\"\n >\n <IconPause @click.stop=\"pauseTrack()\" class=\"i-small\" fill=\"rgb(var(--white))\"/>\n </Button>\n </div>\n \n <div class=\"track-title flex-child-1 flex flex-v-center\">\n <div v-if=\"showCover\" class=\"track-cover mn-r-small\">\n <Media \n :url=\"track.coverUrl || (track.album && track.album.coverUrl) || '/logo/logo-placeholder.jpg'\" \n class=\"w-3r h-3r object-fit-cover o-hidden radius-small\"\n />\n </div>\n \n <div class=\"track-info\">\n <div class=\"track-name \" :class=\"{'t-main': isPlaying(track)}\">\n <router-link \n v-if=\"track.url\"\n :to=\"{ name: 'track', params: { url: track.url } }\"\n class=\"hover-t-main hover-t-underline\"\n :class=\"{'t-main': isPlaying(track)}\"\n @click.stop\n >\n {{ track.title }}\n </router-link>\n <span v-else>{{ track.title }}</span>\n </div>\n <div :class=\"{'t-main': isPlaying(track)}\" class=\"track-artist t-transp t-small\">\n <router-link \n v-if=\"track.artist && track.artist._id\"\n :to=\"{ name: 'artist', params: { url: track.artist.url } }\"\n class=\"t-transp hover-t-underline\"\n @click.stop\n >\n {{ getArtistName(track) }}\n </router-link>\n <span v-else>{{ getArtistName(track) }}</span>\n </div>\n </div>\n </div>\n \n <div v-if=\"showAlbum\" class=\"track-album w-15r mobile:w-0 mobile:hidden t-transp t-truncate\">\n <router-link \n v-if=\"track.album && track.album._id\"\n :to=\"{ name: 'album', params: { url: track.album.url } }\"\n class=\"t-transp hover-t-underline\"\n @click.stop\n >\n {{ track.album.title }}\n </router-link>\n <span v-else>{{ track.album?.title || 'Single' }}</span>\n </div>\n \n <div class=\"track-duration w-5r t-right t-transp\">{{ formatDuration(track.duration) }}</div>\n </div>\n</template>\n\n<script setup>\nimport { ref } from 'vue';\nimport Button from '@martyrs/src/components/Button/Button.vue';\nimport Media from '@martyrs/src/components/Media/Media.vue';\nimport IconPlay from '@martyrs/src/modules/icons/navigation/IconPlay.vue';\nimport IconPause from '@martyrs/src/modules/icons/navigation/IconPause.vue';\n\n// Import player store\nimport { state as playerState, actions as playerActions } from '../../store/player.js';\n\n// Props\nconst props = defineProps({\n track: {\n type: Object,\n required: true\n },\n index: {\n type: Number,\n default: 0\n },\n showCover: {\n type: Boolean,\n default: true\n },\n showAlbum: {\n type: Boolean,\n default: true\n }\n});\n\n// State\nconst hoveredIndex = ref(-1);\n\n// Methods\nconst isPlaying = (track) => {\n return playerState.currentTrack && playerState.currentTrack._id === track._id && playerState.isPlaying;\n};\n\nconst playTrack = (track, force = false) => {\n if (isPlaying(track) && !force) {\n playerActions.togglePlay();\n } else {\n playerActions.playTrack(track);\n }\n};\n\nconst pauseTrack = () => {\n playerActions.togglePlay();\n};\n\nconst getArtistName = (track) => {\n if (!track || !track.artist) return 'Unknown Artist';\n return typeof track.artist === 'object' ? track.artist.name : 'Unknown Artist';\n};\n\nconst formatDuration = (duration) => {\n if (!duration) return '--:--';\n \n const minutes = Math.floor(duration / 60);\n const seconds = Math.floor(duration % 60);\n return `${minutes}:${seconds.toString().padStart(2, '0')}`;\n};\n</script>"],"names":["playerState","playerActions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8FA,UAAM,QAAQ;AAoBd,UAAM,eAAe,IAAI,EAAE;AAG3B,UAAM,YAAY,CAAC,UAAU;AAC3B,aAAOA,MAAY,gBAAgBA,MAAY,aAAa,QAAQ,MAAM,OAAOA,MAAY;AAAA,IAC/F;AAEA,UAAM,YAAY,CAAC,OAAO,QAAQ,UAAU;AAC1C,UAAI,UAAU,KAAK,KAAK,CAAC,OAAO;AAC9BC,gBAAc,WAAU;AAAA,MAC1B,OAAO;AACLA,gBAAc,UAAU,KAAK;AAAA,MAC/B;AAAA,IACF;AAEA,UAAM,aAAa,MAAM;AACvBA,cAAc,WAAU;AAAA,IAC1B;AAEA,UAAM,gBAAgB,CAAC,UAAU;AAC/B,UAAI,CAAC,SAAS,CAAC,MAAM,OAAQ,QAAO;AACpC,aAAO,OAAO,MAAM,WAAW,WAAW,MAAM,OAAO,OAAO;AAAA,IAChE;AAEA,UAAM,iBAAiB,CAAC,aAAa;AACnC,UAAI,CAAC,SAAU,QAAO;AAEtB,YAAM,UAAU,KAAK,MAAM,WAAW,EAAE;AACxC,YAAM,UAAU,KAAK,MAAM,WAAW,EAAE;AACxC,aAAO,GAAG,OAAO,IAAI,QAAQ,SAAQ,EAAG,SAAS,GAAG,GAAG,CAAC;AAAA,IAC1D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -4,13 +4,13 @@ import Field from "../../../../components/Field/Field.vue.js";
|
|
|
4
4
|
import _sfc_main$1 from "../../../../components/Block/Block.vue.js";
|
|
5
5
|
import _sfc_main$3 from "../../../../components/Button/Button.vue2.js";
|
|
6
6
|
import Select from "../../../../components/Select/Select.vue.js";
|
|
7
|
-
import UploadImage from "../../../../components/UploadImage/UploadImage.
|
|
7
|
+
import UploadImage from "../../../../components/UploadImage/UploadImage.vue.js";
|
|
8
8
|
import _sfc_main$2 from "../../../icons/navigation/IconCross.vue.js";
|
|
9
9
|
import BlockMultiselect from "../../../core/views/components/blocks/BlockMultiselect.vue.js";
|
|
10
10
|
import { actions as actions$2 } from "../../store/albums.js";
|
|
11
11
|
import { state, actions } from "../../store/artists.js";
|
|
12
12
|
import { state as state$1, actions as actions$1 } from "../../store/genres.js";
|
|
13
|
-
import {
|
|
13
|
+
import { useStore } from "../../../core/views/store/core.store.js";
|
|
14
14
|
import { state as state$2 } from "../../../auth/views/store/auth.js";
|
|
15
15
|
const _hoisted_1 = { class: "pd-medium" };
|
|
16
16
|
const _hoisted_2 = { class: "h2 mn-b-medium" };
|
|
@@ -51,6 +51,7 @@ const _sfc_main = {
|
|
|
51
51
|
}
|
|
52
52
|
},
|
|
53
53
|
setup(__props) {
|
|
54
|
+
const store = useStore();
|
|
54
55
|
const props = __props;
|
|
55
56
|
const router = useRouter();
|
|
56
57
|
useRoute();
|
|
@@ -102,7 +103,7 @@ const _sfc_main = {
|
|
|
102
103
|
try {
|
|
103
104
|
const fetchedAlbum = await actions$2.fetchAlbumByUrl(props.url);
|
|
104
105
|
if (!fetchedAlbum) {
|
|
105
|
-
actions
|
|
106
|
+
store.core.actions.setError({
|
|
106
107
|
message: "Album not found"
|
|
107
108
|
});
|
|
108
109
|
return;
|
|
@@ -122,7 +123,7 @@ const _sfc_main = {
|
|
|
122
123
|
});
|
|
123
124
|
} catch (error) {
|
|
124
125
|
console.error("Error fetching album:", error);
|
|
125
|
-
actions
|
|
126
|
+
store.core.actions.setError({
|
|
126
127
|
message: "Failed to load album details"
|
|
127
128
|
});
|
|
128
129
|
}
|
|
@@ -185,14 +186,14 @@ const _sfc_main = {
|
|
|
185
186
|
}, 1e3);
|
|
186
187
|
} catch (error) {
|
|
187
188
|
console.error("Error saving album:", error);
|
|
188
|
-
actions
|
|
189
|
+
store.core.actions.setError({
|
|
189
190
|
message: "Failed to save album"
|
|
190
191
|
});
|
|
191
192
|
}
|
|
192
193
|
};
|
|
193
194
|
const handleUploadError = (error) => {
|
|
194
195
|
console.error("Upload error:", error);
|
|
195
|
-
actions
|
|
196
|
+
store.core.actions.setError({
|
|
196
197
|
message: "Error uploading image"
|
|
197
198
|
});
|
|
198
199
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AlbumForm.vue.js","sources":["../../../../../../../src/modules/music/components/forms/AlbumForm.vue"],"sourcesContent":["<template>\n <div class=\"pd-medium\">\n <h2 class=\"h2 mn-b-medium\">{{ editMode ? 'Edit Album' : 'Create Album' }}</h2>\n \n <form @submit.prevent=\"submitForm\" class=\"cols-1 gap-regular\">\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 <!-- Album Cover -->\n <div class=\"mn-b-medium\">\n <p class=\"p-medium mn-b-small\">Album Cover</p>\n <UploadImage\n v-model:photo=\"album.coverArt\"\n uploadPath=\"albums/covers\"\n class=\"w-100 h-15r radius-small o-hidden mn-b-small\"\n @error=\"handleUploadError\"\n />\n </div>\n \n <!-- Title -->\n <Field\n v-model:field=\"album.title\"\n label=\"Title\"\n placeholder=\"Enter album title\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n :validation=\"validation.title\"\n />\n \n <!-- URL -->\n <Field\n v-model:field=\"album.url\"\n label=\"URL\"\n placeholder=\"Leave blank for auto-generation based on the album title\"\n class=\"bg-white radius-small pd-small mn-b-small\"\n />\n \n <!-- Description -->\n <Field\n v-model:field=\"album.description\"\n label=\"Description\"\n type=\"textarea\"\n placeholder=\"Enter album description\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n :validation=\"validation.description\"\n />\n \n <!-- Release Date -->\n <Field\n v-model:field=\"album.releaseDate\"\n label=\"Release Date\"\n type=\"date\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n :validation=\"validation.releaseDate\"\n />\n \n <!-- Album Type -->\n <Select\n v-model:select=\"album.type\"\n :options=\"albumTypeOptions\"\n label=\"Album Type\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n />\n </div>\n \n <!-- Artists Section -->\n <Block title=\"Artists\">\n <BlockMultiselect\n v-model=\"album.artists\"\n placeholder=\"Search artists...\"\n :multiple=\"true\"\n :transform=\"(item) => ({ _id: item._id, name: item.name })\"\n :store=\"{\n read: (options) => artistsStore.actions.fetchArtists(options),\n state: artistsStore.state\n }\"\n :options=\"{\n rootOnly: false,\n excludeChildren: false,\n limit: 50\n }\"\n :skeleton=\"{\n hide: false,\n horizontal: true,\n class: 'radius-small',\n structure: [{ \n block: 'text', size: 'large'\n }]\n }\"\n :states=\"{\n empty: {\n title: 'No 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 <!-- Слот для выбранных артистов -->\n <template #selected=\"{ item, clear }\">\n <div class=\"flex-nowrap flex-v-center flex gap-thin\">\n <span class=\"t-medium\">{{ item?.name || item }}</span>\n <button \n @click.stop=\"clear\"\n class=\"i-small pd-micro bg-red radius-extra flex-center flex aspect-1x1 hover-scale-1\"\n >\n <IconCross class=\"i-micro fill-white\" />\n </button>\n </div>\n </template>\n \n <!-- Слот для элементов в списке -->\n <template #item=\"{ item }\">\n <div class=\"flex-nowrap flex-v-center flex\">\n <div class=\"w-100\">\n <p class=\"t-medium\">{{ item.name }}</p>\n <p v-if=\"item.bio\" class=\"t-small t-transp\">{{ item.bio }}</p>\n </div>\n </div>\n </template>\n </BlockMultiselect>\n </Block>\n \n <!-- Genres Section -->\n <Block title=\"Genres\">\n <BlockMultiselect\n v-model=\"album.genres\"\n placeholder=\"Search genres...\"\n :multiple=\"true\"\n :transform=\"(item) => ({ _id: item._id, name: item.name })\"\n :store=\"{\n read: (options) => genresStore.actions.fetchGenres(options),\n state: genresStore.state\n }\"\n :options=\"{\n rootOnly: false,\n excludeChildren: false,\n limit: 50\n }\"\n :skeleton=\"{\n hide: false,\n horizontal: true,\n class: 'radius-small',\n structure: [{ \n block: 'text', size: 'large'\n }]\n }\"\n :states=\"{\n empty: {\n title: 'No genres found',\n description: 'Try different search terms or create a new genre',\n class: 'radius-small'\n }\n }\"\n key=\"_id\"\n :label=\"item => item.name\"\n classSearch=\"bg-white radius-small\"\n classSelected=\"bg-white pd-small radius-small\"\n classDropdown=\"bg-white pd-small radius-medium bs-small\"\n classItem=\"pd-small radius-small hover-bg-light cursor-pointer\"\n classFeed=\"h-max-30r gap-thin flex-column flex o-scroll\"\n >\n <!-- Слот для выбранных жанров -->\n <template #selected=\"{ item, clear }\">\n <div class=\"flex-nowrap flex-v-center flex gap-thin\">\n <span class=\"t-medium\">{{ item?.name || item }}</span>\n <button \n @click.stop=\"clear\"\n class=\"i-small pd-micro bg-red radius-extra flex-center flex aspect-1x1 hover-scale-1\"\n >\n <IconCross class=\"i-micro fill-white\" />\n </button>\n </div>\n </template>\n \n <!-- Слот для элементов в списке -->\n <template #item=\"{ item }\">\n <div class=\"flex-nowrap flex-v-center flex\">\n <div class=\"w-100\">\n <p class=\"t-medium\">{{ item.name }}</p>\n <p v-if=\"item.description\" class=\"t-small t-transp\">{{ item.description }}</p>\n </div>\n </div>\n </template>\n </BlockMultiselect>\n </Block>\n \n <!-- Status Section -->\n <div class=\"bg-light pd-medium radius-medium\">\n <h3 class=\"h3 mn-b-medium\">Publishing Status</h3>\n \n <Select\n v-model:select=\"album.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!' : 'Created!'\n }\"\n >\n {{ editMode ? 'Update Album' : 'Create Album' }}\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 Select from '@martyrs/src/components/Select/Select.vue';\nimport UploadImage from '@martyrs/src/components/UploadImage/UploadImage.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 albumsStore from '../../store/albums';\nimport * as artistsStore from '../../store/artists';\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// Props\nconst props = defineProps({\n editMode: {\n type: Boolean,\n default: false\n },\n url: {\n type: String,\n default: ''\n }\n});\n\n// Router and route\nconst router = useRouter();\nconst route = useRoute();\n\n// State\nconst album = reactive({\n title: '',\n description: '',\n releaseDate: new Date().toISOString().split('T')[0],\n coverArt: '',\n artists: [],\n type: 'album',\n genres: [],\n totalTracks: 0,\n url: '',\n status: 'draft'\n});\n\nconst validation = reactive({\n title: false,\n description: false,\n releaseDate: false\n});\n\n// Track if URL was manually entered\nconst urlManuallySet = ref(false);\n\n// Function to generate URL-friendly slug from text\nconst generateSlug = (text) => {\n if (!text) return '';\n return text\n .toLowerCase()\n .replace(/[^a-z0-9\\s-]/g, '') // Remove special characters\n .replace(/\\s+/g, '-') // Replace spaces with hyphens\n .replace(/-+/g, '-') // Replace multiple hyphens with single\n .trim('-'); // Remove leading/trailing hyphens\n};\n\n// Watch for changes in album title to auto-generate URL\nwatch(() => album.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 album.url = generateSlug(newTitle);\n }\n});\n\n// Watch for manual changes to URL field\nwatch(() => album.url, (newUrl, oldUrl) => {\n // If user manually changes URL, mark as manually set\n if (newUrl !== generateSlug(album.title)) {\n urlManuallySet.value = true;\n }\n});\n\n// Options\nconst statusOptions = [\n 'draft',\n 'published',\n 'archived'\n];\n\nconst albumTypeOptions = [\n 'album',\n 'single',\n 'EP',\n 'compilation'\n];\n\nconst fetchAlbum = async () => {\n if (!props.url) return;\n \n try {\n const fetchedAlbum = await albumsStore.actions.fetchAlbumByUrl(props.url);\n \n if (!fetchedAlbum) {\n core.actions.setError({\n message: 'Album not found'\n });\n return;\n }\n \n // Update local album data\n Object.assign(album, {\n title: fetchedAlbum.title || '',\n description: fetchedAlbum.description || '',\n releaseDate: fetchedAlbum.releaseDate ? new Date(fetchedAlbum.releaseDate).toISOString().split('T')[0] : '',\n coverArt: fetchedAlbum.coverArt || '',\n artists: fetchedAlbum.artists || [],\n type: fetchedAlbum.type || 'album',\n genres: fetchedAlbum.genres || [],\n totalTracks: fetchedAlbum.totalTracks || 0,\n url: fetchedAlbum.url || '',\n status: fetchedAlbum.status || 'draft',\n _id: fetchedAlbum._id\n });\n \n } catch (error) {\n console.error('Error fetching album:', error);\n core.actions.setError({\n message: 'Failed to load album details'\n });\n }\n};\n\nconst validateForm = () => {\n let isValid = true;\n \n // Validate title\n if (!album.title.trim()) {\n validation.title = {\n message: 'Album title is required'\n };\n isValid = false;\n } else {\n validation.title = false;\n }\n \n // Validate release date\n if (!album.releaseDate) {\n validation.releaseDate = {\n message: 'Release date is required'\n };\n isValid = false;\n } else {\n validation.releaseDate = false;\n }\n \n // Validate description\n if (album.description && album.description.length > 2000) {\n validation.description = {\n message: 'Description is too long (max 2000 characters)'\n };\n isValid = false;\n } else {\n validation.description = false;\n }\n \n return isValid;\n};\n\nconst submitForm = async () => {\n if (!validateForm()) {\n return;\n }\n \n try {\n // Prepare data for submission\n const formData = {\n ...album,\n artists: album.artists.map(artist => artist._id || artist),\n genres: album.genres.map(genre => genre._id || genre)\n };\n \n // Add ownership data if creating new album\n if (!props.editMode) {\n formData.owner = {\n type: 'user',\n target: auth.state.user._id\n };\n }\n \n let result;\n if (props.editMode) {\n result = await albumsStore.actions.updateAlbum(formData);\n } else {\n result = await albumsStore.actions.createAlbum(formData);\n }\n \n // Navigate to album detail page\n setTimeout(() => {\n router.push({\n name: 'album',\n params: { url: result.url }\n });\n }, 1000);\n \n } catch (error) {\n console.error('Error saving album:', error);\n core.actions.setError({\n message: 'Failed to save album'\n });\n }\n};\n\nconst handleUploadError = (error) => {\n console.error('Upload error:', error);\n core.actions.setError({\n message: 'Error uploading image'\n });\n};\n\n// Lifecycle hooks\nonMounted(async () => {\n if (props.editMode) {\n await fetchAlbum();\n // Mark URL as manually set in edit mode to prevent auto-generation\n urlManuallySet.value = true;\n }\n});\n</script>"],"names":["albumsStore.actions","core.actions","auth.state"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AlbumForm.vue.js","sources":["../../../../../../../src/modules/music/components/forms/AlbumForm.vue"],"sourcesContent":["<template>\n <div class=\"pd-medium\">\n <h2 class=\"h2 mn-b-medium\">{{ editMode ? 'Edit Album' : 'Create Album' }}</h2>\n \n <form @submit.prevent=\"submitForm\" class=\"cols-1 gap-regular\">\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 <!-- Album Cover -->\n <div class=\"mn-b-medium\">\n <p class=\"p-medium mn-b-small\">Album Cover</p>\n <UploadImage\n v-model:photo=\"album.coverArt\"\n uploadPath=\"albums/covers\"\n class=\"w-100 h-15r radius-small o-hidden mn-b-small\"\n @error=\"handleUploadError\"\n />\n </div>\n \n <!-- Title -->\n <Field\n v-model:field=\"album.title\"\n label=\"Title\"\n placeholder=\"Enter album title\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n :validation=\"validation.title\"\n />\n \n <!-- URL -->\n <Field\n v-model:field=\"album.url\"\n label=\"URL\"\n placeholder=\"Leave blank for auto-generation based on the album title\"\n class=\"bg-white radius-small pd-small mn-b-small\"\n />\n \n <!-- Description -->\n <Field\n v-model:field=\"album.description\"\n label=\"Description\"\n type=\"textarea\"\n placeholder=\"Enter album description\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n :validation=\"validation.description\"\n />\n \n <!-- Release Date -->\n <Field\n v-model:field=\"album.releaseDate\"\n label=\"Release Date\"\n type=\"date\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n :validation=\"validation.releaseDate\"\n />\n \n <!-- Album Type -->\n <Select\n v-model:select=\"album.type\"\n :options=\"albumTypeOptions\"\n label=\"Album Type\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n />\n </div>\n \n <!-- Artists Section -->\n <Block title=\"Artists\">\n <BlockMultiselect\n v-model=\"album.artists\"\n placeholder=\"Search artists...\"\n :multiple=\"true\"\n :transform=\"(item) => ({ _id: item._id, name: item.name })\"\n :store=\"{\n read: (options) => artistsStore.actions.fetchArtists(options),\n state: artistsStore.state\n }\"\n :options=\"{\n rootOnly: false,\n excludeChildren: false,\n limit: 50\n }\"\n :skeleton=\"{\n hide: false,\n horizontal: true,\n class: 'radius-small',\n structure: [{ \n block: 'text', size: 'large'\n }]\n }\"\n :states=\"{\n empty: {\n title: 'No 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 <!-- Слот для выбранных артистов -->\n <template #selected=\"{ item, clear }\">\n <div class=\"flex-nowrap flex-v-center flex gap-thin\">\n <span class=\"t-medium\">{{ item?.name || item }}</span>\n <button \n @click.stop=\"clear\"\n class=\"i-small pd-micro bg-red radius-extra flex-center flex aspect-1x1 hover-scale-1\"\n >\n <IconCross class=\"i-micro fill-white\" />\n </button>\n </div>\n </template>\n \n <!-- Слот для элементов в списке -->\n <template #item=\"{ item }\">\n <div class=\"flex-nowrap flex-v-center flex\">\n <div class=\"w-100\">\n <p class=\"t-medium\">{{ item.name }}</p>\n <p v-if=\"item.bio\" class=\"t-small t-transp\">{{ item.bio }}</p>\n </div>\n </div>\n </template>\n </BlockMultiselect>\n </Block>\n \n <!-- Genres Section -->\n <Block title=\"Genres\">\n <BlockMultiselect\n v-model=\"album.genres\"\n placeholder=\"Search genres...\"\n :multiple=\"true\"\n :transform=\"(item) => ({ _id: item._id, name: item.name })\"\n :store=\"{\n read: (options) => genresStore.actions.fetchGenres(options),\n state: genresStore.state\n }\"\n :options=\"{\n rootOnly: false,\n excludeChildren: false,\n limit: 50\n }\"\n :skeleton=\"{\n hide: false,\n horizontal: true,\n class: 'radius-small',\n structure: [{ \n block: 'text', size: 'large'\n }]\n }\"\n :states=\"{\n empty: {\n title: 'No genres found',\n description: 'Try different search terms or create a new genre',\n class: 'radius-small'\n }\n }\"\n key=\"_id\"\n :label=\"item => item.name\"\n classSearch=\"bg-white radius-small\"\n classSelected=\"bg-white pd-small radius-small\"\n classDropdown=\"bg-white pd-small radius-medium bs-small\"\n classItem=\"pd-small radius-small hover-bg-light cursor-pointer\"\n classFeed=\"h-max-30r gap-thin flex-column flex o-scroll\"\n >\n <!-- Слот для выбранных жанров -->\n <template #selected=\"{ item, clear }\">\n <div class=\"flex-nowrap flex-v-center flex gap-thin\">\n <span class=\"t-medium\">{{ item?.name || item }}</span>\n <button \n @click.stop=\"clear\"\n class=\"i-small pd-micro bg-red radius-extra flex-center flex aspect-1x1 hover-scale-1\"\n >\n <IconCross class=\"i-micro fill-white\" />\n </button>\n </div>\n </template>\n \n <!-- Слот для элементов в списке -->\n <template #item=\"{ item }\">\n <div class=\"flex-nowrap flex-v-center flex\">\n <div class=\"w-100\">\n <p class=\"t-medium\">{{ item.name }}</p>\n <p v-if=\"item.description\" class=\"t-small t-transp\">{{ item.description }}</p>\n </div>\n </div>\n </template>\n </BlockMultiselect>\n </Block>\n \n <!-- Status Section -->\n <div class=\"bg-light pd-medium radius-medium\">\n <h3 class=\"h3 mn-b-medium\">Publishing Status</h3>\n \n <Select\n v-model:select=\"album.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!' : 'Created!'\n }\"\n >\n {{ editMode ? 'Update Album' : 'Create Album' }}\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 Select from '@martyrs/src/components/Select/Select.vue';\nimport UploadImage from '@martyrs/src/components/UploadImage/UploadImage.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 albumsStore from '../../store/albums';\nimport * as artistsStore from '../../store/artists';\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// Props\nconst props = defineProps({\n editMode: {\n type: Boolean,\n default: false\n },\n url: {\n type: String,\n default: ''\n }\n});\n\n// Router and route\nconst router = useRouter();\nconst route = useRoute();\n\n// State\nconst album = reactive({\n title: '',\n description: '',\n releaseDate: new Date().toISOString().split('T')[0],\n coverArt: '',\n artists: [],\n type: 'album',\n genres: [],\n totalTracks: 0,\n url: '',\n status: 'draft'\n});\n\nconst validation = reactive({\n title: false,\n description: false,\n releaseDate: false\n});\n\n// Track if URL was manually entered\nconst urlManuallySet = ref(false);\n\n// Function to generate URL-friendly slug from text\nconst generateSlug = (text) => {\n if (!text) return '';\n return text\n .toLowerCase()\n .replace(/[^a-z0-9\\s-]/g, '') // Remove special characters\n .replace(/\\s+/g, '-') // Replace spaces with hyphens\n .replace(/-+/g, '-') // Replace multiple hyphens with single\n .trim('-'); // Remove leading/trailing hyphens\n};\n\n// Watch for changes in album title to auto-generate URL\nwatch(() => album.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 album.url = generateSlug(newTitle);\n }\n});\n\n// Watch for manual changes to URL field\nwatch(() => album.url, (newUrl, oldUrl) => {\n // If user manually changes URL, mark as manually set\n if (newUrl !== generateSlug(album.title)) {\n urlManuallySet.value = true;\n }\n});\n\n// Options\nconst statusOptions = [\n 'draft',\n 'published',\n 'archived'\n];\n\nconst albumTypeOptions = [\n 'album',\n 'single',\n 'EP',\n 'compilation'\n];\n\nconst fetchAlbum = async () => {\n if (!props.url) return;\n \n try {\n const fetchedAlbum = await albumsStore.actions.fetchAlbumByUrl(props.url);\n \n if (!fetchedAlbum) {\n store.core.actions.setError({\n message: 'Album not found'\n });\n return;\n }\n \n // Update local album data\n Object.assign(album, {\n title: fetchedAlbum.title || '',\n description: fetchedAlbum.description || '',\n releaseDate: fetchedAlbum.releaseDate ? new Date(fetchedAlbum.releaseDate).toISOString().split('T')[0] : '',\n coverArt: fetchedAlbum.coverArt || '',\n artists: fetchedAlbum.artists || [],\n type: fetchedAlbum.type || 'album',\n genres: fetchedAlbum.genres || [],\n totalTracks: fetchedAlbum.totalTracks || 0,\n url: fetchedAlbum.url || '',\n status: fetchedAlbum.status || 'draft',\n _id: fetchedAlbum._id\n });\n \n } catch (error) {\n console.error('Error fetching album:', error);\n store.core.actions.setError({\n message: 'Failed to load album details'\n });\n }\n};\n\nconst validateForm = () => {\n let isValid = true;\n \n // Validate title\n if (!album.title.trim()) {\n validation.title = {\n message: 'Album title is required'\n };\n isValid = false;\n } else {\n validation.title = false;\n }\n \n // Validate release date\n if (!album.releaseDate) {\n validation.releaseDate = {\n message: 'Release date is required'\n };\n isValid = false;\n } else {\n validation.releaseDate = false;\n }\n \n // Validate description\n if (album.description && album.description.length > 2000) {\n validation.description = {\n message: 'Description is too long (max 2000 characters)'\n };\n isValid = false;\n } else {\n validation.description = false;\n }\n \n return isValid;\n};\n\nconst submitForm = async () => {\n if (!validateForm()) {\n return;\n }\n \n try {\n // Prepare data for submission\n const formData = {\n ...album,\n artists: album.artists.map(artist => artist._id || artist),\n genres: album.genres.map(genre => genre._id || genre)\n };\n \n // Add ownership data if creating new album\n if (!props.editMode) {\n formData.owner = {\n type: 'user',\n target: auth.state.user._id\n };\n }\n \n let result;\n if (props.editMode) {\n result = await albumsStore.actions.updateAlbum(formData);\n } else {\n result = await albumsStore.actions.createAlbum(formData);\n }\n \n // Navigate to album detail page\n setTimeout(() => {\n router.push({\n name: 'album',\n params: { url: result.url }\n });\n }, 1000);\n \n } catch (error) {\n console.error('Error saving album:', error);\n store.core.actions.setError({\n message: 'Failed to save album'\n });\n }\n};\n\nconst handleUploadError = (error) => {\n console.error('Upload error:', error);\n store.core.actions.setError({\n message: 'Error uploading image'\n });\n};\n\n// Lifecycle hooks\nonMounted(async () => {\n if (props.editMode) {\n await fetchAlbum();\n // Mark URL as manually set in edit mode to prevent auto-generation\n urlManuallySet.value = true;\n }\n});\n</script>\n"],"names":["albumsStore.actions","auth.state"],"mappings":"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"}
|
|
@@ -5,13 +5,13 @@ 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.
|
|
9
|
-
/* empty css
|
|
8
|
+
import UploadImage from "../../../../components/UploadImage/UploadImage.vue.js";
|
|
9
|
+
/* empty css */
|
|
10
10
|
import BlockMultiselect from "../../../core/views/components/blocks/BlockMultiselect.vue.js";
|
|
11
11
|
import _sfc_main$2 from "../../../icons/navigation/IconCross.vue.js";
|
|
12
12
|
import { actions as actions$1 } from "../../store/artists.js";
|
|
13
13
|
import { state, actions } from "../../store/genres.js";
|
|
14
|
-
import {
|
|
14
|
+
import { useStore } from "../../../core/views/store/core.store.js";
|
|
15
15
|
import { state as state$1 } from "../../../auth/views/store/auth.js";
|
|
16
16
|
const _hoisted_1 = { class: "pd-medium" };
|
|
17
17
|
const _hoisted_2 = { class: "h2 mn-b-medium" };
|
|
@@ -44,6 +44,7 @@ const _sfc_main = {
|
|
|
44
44
|
}
|
|
45
45
|
},
|
|
46
46
|
setup(__props) {
|
|
47
|
+
const store = useStore();
|
|
47
48
|
const props = __props;
|
|
48
49
|
const router = useRouter();
|
|
49
50
|
useRoute();
|
|
@@ -94,7 +95,7 @@ const _sfc_main = {
|
|
|
94
95
|
try {
|
|
95
96
|
const fetchedArtist = await actions$1.fetchArtistByUrl(props.url);
|
|
96
97
|
if (!fetchedArtist) {
|
|
97
|
-
actions
|
|
98
|
+
store.core.actions.setError({
|
|
98
99
|
message: "Artist not found"
|
|
99
100
|
});
|
|
100
101
|
return;
|
|
@@ -120,7 +121,7 @@ const _sfc_main = {
|
|
|
120
121
|
});
|
|
121
122
|
} catch (error) {
|
|
122
123
|
console.error("Error fetching artist:", error);
|
|
123
|
-
actions
|
|
124
|
+
store.core.actions.setError({
|
|
124
125
|
message: "Failed to load artist details"
|
|
125
126
|
});
|
|
126
127
|
}
|
|
@@ -178,14 +179,14 @@ const _sfc_main = {
|
|
|
178
179
|
}, 1e3);
|
|
179
180
|
} catch (error) {
|
|
180
181
|
console.error("Error saving artist:", error);
|
|
181
|
-
actions
|
|
182
|
+
store.core.actions.setError({
|
|
182
183
|
message: "Failed to save artist"
|
|
183
184
|
});
|
|
184
185
|
}
|
|
185
186
|
};
|
|
186
187
|
const handleUploadError = (error) => {
|
|
187
188
|
console.error("Upload error:", error);
|
|
188
|
-
actions
|
|
189
|
+
store.core.actions.setError({
|
|
189
190
|
message: "Error uploading image"
|
|
190
191
|
});
|
|
191
192
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ArtistForm.vue.js","sources":["../../../../../../../src/modules/music/components/forms/ArtistForm.vue"],"sourcesContent":["<template>\n <div class=\"pd-medium\">\n <h2 class=\"h2 mn-b-medium\">{{ editMode ? 'Edit Artist' : 'Create Artist' }}</h2>\n \n <form @submit.prevent=\"submitForm\" class=\"cols-1 gap-regular\">\n <!-- Basic Info Section -->\n <div class=\"bg-light pd-medium radius-medium\">\n <h3 class=\"h3 mn-b-medium\">Basic Information</h3>\n \n <div class=\"cols-2 mobile:cols-1 gap-regular\">\n <!-- Artist Photo -->\n <div>\n <p class=\"p-medium mn-b-small\">Artist Photo</p>\n <UploadImage\n v-model:photo=\"artist.photoUrl\"\n uploadPath=\"artists/photos\"\n class=\"w-100 h-15r radius-small o-hidden mn-b-small\"\n @error=\"handleUploadError\"\n />\n </div>\n \n <!-- Artist Cover -->\n <div>\n <p class=\"p-medium mn-b-small\">Cover Image</p>\n <UploadImage\n v-model:photo=\"artist.coverUrl\"\n uploadPath=\"artists/covers\"\n class=\"w-100 h-15r radius-small o-hidden mn-b-small\"\n @error=\"handleUploadError\"\n />\n </div>\n </div>\n \n <!-- Name -->\n <Field\n v-model:field=\"artist.name\"\n label=\"Name\"\n placeholder=\"Enter artist name\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n :validation=\"validation.name\"\n />\n <!-- URL -->\n <Field\n v-model:field=\"artist.url\"\n label=\"URL\"\n placeholder=\"Leave blank for auto-generation based on the artist name\"\n class=\"bg-white radius-small pd-small mn-b-small\"\n />\n \n <!-- Bio -->\n <Field\n v-model:field=\"artist.bio\"\n label=\"Biography\"\n type=\"textarea\"\n placeholder=\"Enter artist biography\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n :validation=\"validation.bio\"\n />\n \n <!-- Location -->\n <Field\n v-model:field=\"artist.location\"\n label=\"Location\"\n placeholder=\"e.g., Los Angeles, CA\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n />\n \n <!-- Website -->\n <Field\n v-model:field=\"artist.website\"\n label=\"Website\"\n placeholder=\"https://example.com\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n />\n \n \n </div>\n \n <!-- Social Media Section -->\n <div class=\"bg-light pd-medium radius-medium\">\n <h3 class=\"h3 mn-b-medium\">Social Media</h3>\n \n <div class=\"cols-2 mobile:cols-1 gap-thin\">\n <!-- Telegram -->\n <Field\n v-model:field=\"artist.socials.telegram\"\n label=\"Telegram\"\n placeholder=\"@username\"\n class=\"bg-white radius-small pd-small\"\n />\n \n <!-- Twitter -->\n <Field\n v-model:field=\"artist.socials.twitter\"\n label=\"Twitter\"\n placeholder=\"@username\"\n class=\"bg-white radius-small pd-small\"\n />\n \n <!-- Facebook -->\n <Field\n v-model:field=\"artist.socials.facebook\"\n label=\"Facebook\"\n placeholder=\"username or page-name\"\n class=\"bg-white radius-small pd-small\"\n />\n \n <!-- Instagram -->\n <Field\n v-model:field=\"artist.socials.instagram\"\n label=\"Instagram\"\n placeholder=\"@username\"\n class=\"bg-white radius-small pd-small\"\n />\n </div>\n </div>\n \n <!-- Genres Section (assuming genres are available) -->\n <Block title=\"Genres\">\n <BlockMultiselect\n v-model=\"artist.genres\"\n placeholder=\"Search genres...\"\n :multiple=\"true\"\n :transform=\"(item) => ({ _id: item._id, name: item.name })\"\n :store=\"{\n read: (options) => genresStore.actions.fetchGenres(options),\n state: genresStore.state\n }\"\n :options=\"{\n rootOnly: false,\n excludeChildren: false,\n limit: 50\n }\"\n :skeleton=\"{\n hide: false,\n horizontal: true,\n class: 'radius-small',\n structure: [{ \n block: 'text', size: 'large'\n }]\n }\"\n :states=\"{\n empty: {\n title: 'No genres found',\n description: 'Try different search terms or create a new genre',\n class: 'radius-small'\n }\n }\"\n key=\"_id\"\n :label=\"item => item.name\"\n classSearch=\"bg-white radius-small\"\n classSelected=\"bg-white pd-small radius-small\"\n classDropdown=\"bg-white pd-small radius-medium bs-small\"\n classItem=\"pd-small radius-small hover-bg-light cursor-pointer\"\n classFeed=\"h-max-30r gap-thin flex-column flex o-scroll\"\n >\n <!-- Слот для выбранных жанров -->\n <template #selected=\"{ item, clear }\">\n <div class=\"flex-nowrap flex-v-center flex gap-thin\">\n <span class=\"t-medium\">{{ item?.name || item }}</span>\n <button \n @click.stop=\"clear\"\n class=\"i-small pd-micro bg-red radius-extra flex-center flex aspect-1x1 hover-scale-1\"\n >\n <IconCross class=\"i-micro fill-white\" />\n </button>\n </div>\n </template>\n \n <!-- Слот для элементов в списке -->\n <template #item=\"{ item }\">\n <div class=\"flex-nowrap flex-v-center flex\">\n <div class=\"w-100\">\n <p class=\"t-medium\">{{ item.name }}</p>\n <p v-if=\"item.description\" class=\"t-small t-transp\">{{ item.description }}</p>\n </div>\n </div>\n </template>\n </BlockMultiselect>\n </Block>\n \n <!-- Status Section -->\n <div class=\"bg-light pd-medium radius-medium\">\n <h3 class=\"h3 mn-b-medium\">Publishing Status</h3>\n \n <Select\n v-model:select=\"artist.status\"\n :options=\"statusOptions\"\n label=\"Status\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n />\n \n <Checkbox\n v-model:active=\"artist.isVerified\"\n label=\"Verified Artist\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n />\n </div>\n \n <!-- Submit Button -->\n <div class=\"flex flex-justify-between\">\n <Button\n @click=\"$router.go(-1)\"\n class=\"bg-grey-nano t-black\"\n :showSucces=\"false\"\n :showLoader=\"false\"\n >\n Cancel\n </Button>\n \n <Button\n :submit=\"submitForm\"\n class=\"bg-main t-black\"\n :text=\"{\n success: editMode ? 'Updated!' : 'Created!'\n }\"\n >\n {{ editMode ? 'Update Artist' : 'Create Artist' }}\n </Button>\n </div>\n </form>\n </div>\n</template>\n\n<script setup>\nimport { ref, reactive, onMounted, computed, watch } from 'vue';\nimport { useRouter, useRoute } from 'vue-router';\n\n// Import Martyrs components\nimport Field from '@martyrs/src/components/Field/Field.vue';\nimport Block from '@martyrs/src/components/Block/Block.vue';\nimport Button from '@martyrs/src/components/Button/Button.vue';\nimport Checkbox from '@martyrs/src/components/Checkbox/Checkbox.vue';\nimport Select from '@martyrs/src/components/Select/Select.vue';\nimport UploadImage from '@martyrs/src/components/UploadImage/UploadImage.vue';\nimport Loader from '@martyrs/src/components/Loader/Loader.vue';\n\n\nimport BlockMultiselect from '@martyrs/src/modules/core/views/components/blocks/BlockMultiselect.vue';\nimport IconCross from '@martyrs/src/modules/icons/navigation/IconCross.vue';\n\n// Import store\nimport * as artistsStore from '../../store/artists';\nimport * as genresStore from '../../store/genres';\nimport * as 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// Props\nconst props = defineProps({\n editMode: {\n type: Boolean,\n default: false\n },\n url: {\n type: String,\n default: ''\n }\n});\n\n// Router and route\nconst router = useRouter();\nconst route = useRoute();\n\n// State\nconst artist = reactive({\n name: '',\n bio: '',\n photoUrl: '',\n coverUrl: '',\n website: '',\n location: '',\n isVerified: false,\n status: 'draft',\n socials: {\n telegram: '',\n twitter: '',\n facebook: '',\n instagram: ''\n },\n url: '',\n genres: []\n});\n\nconst validation = reactive({\n name: false,\n bio: false\n});\n\n// Track if URL was manually entered\nconst urlManuallySet = ref(false);\n\n// Function to generate URL-friendly slug from text\nconst generateSlug = (text) => {\n if (!text) return '';\n return text\n .toLowerCase()\n .replace(/[^a-z0-9\\s-]/g, '') // Remove special characters\n .replace(/\\s+/g, '-') // Replace spaces with hyphens\n .replace(/-+/g, '-') // Replace multiple hyphens with single\n .trim('-'); // Remove leading/trailing hyphens\n};\n\n// Watch for changes in artist name to auto-generate URL\nwatch(() => artist.name, (newName) => {\n // Only auto-generate if URL hasn't been manually set and we're not in edit mode\n if (!urlManuallySet.value && !props.editMode) {\n artist.url = generateSlug(newName);\n }\n});\n\n// Watch for manual changes to URL field\nwatch(() => artist.url, (newUrl, oldUrl) => {\n // If user manually changes URL, mark as manually set\n if (newUrl !== generateSlug(artist.name)) {\n urlManuallySet.value = true;\n }\n});\n\n// Status options\nconst statusOptions = [\n 'draft',\n 'published',\n 'archived'\n];\n\n\nconst fetchArtist = async () => {\n if (!props.url) return;\n \n try {\n const fetchedArtist = await artistsStore.actions.fetchArtistByUrl(props.url);\n \n if (!fetchedArtist) {\n core.actions.setError({\n message: 'Artist not found'\n });\n return;\n }\n \n // Update local artist data\n Object.assign(artist, {\n name: fetchedArtist.name || '',\n bio: fetchedArtist.bio || '',\n photoUrl: fetchedArtist.photoUrl || '',\n coverUrl: fetchedArtist.coverUrl || '',\n website: fetchedArtist.website || '',\n location: fetchedArtist.location || '',\n isVerified: fetchedArtist.isVerified || false,\n status: fetchedArtist.status || 'draft',\n url: fetchedArtist.url || '',\n genres: fetchedArtist.genres || [],\n _id: fetchedArtist._id,\n socials: {\n telegram: fetchedArtist.socials?.telegram || '',\n twitter: fetchedArtist.socials?.twitter || '',\n facebook: fetchedArtist.socials?.facebook || '',\n instagram: fetchedArtist.socials?.instagram || ''\n }\n });\n \n } catch (error) {\n console.error('Error fetching artist:', error);\n core.actions.setError({\n message: 'Failed to load artist details'\n });\n }\n};\n\nconst validateForm = () => {\n let isValid = true;\n \n // Validate name\n if (!artist.name.trim()) {\n validation.name = {\n message: 'Artist name is required'\n };\n isValid = false;\n } else {\n validation.name = false;\n }\n \n // Validate bio\n if (artist.bio && artist.bio.length > 2000) {\n validation.bio = {\n message: 'Biography is too long (max 2000 characters)'\n };\n isValid = false;\n } else {\n validation.bio = false;\n }\n \n return isValid;\n};\n\nconst submitForm = async () => {\n if (!validateForm()) {\n return;\n }\n \n try {\n // Prepare data for submission\n const formData = {\n ...artist,\n genres: artist.genres.map(genre => genre._id || genre)\n };\n \n // Add ownership data if creating new artist\n if (!props.editMode) {\n formData.owner = {\n type: 'user',\n target: auth.state.user._id\n };\n formData.creator = {\n type: 'user',\n target: auth.state.user._id\n };\n }\n \n let result;\n if (props.editMode) {\n result = await artistsStore.actions.updateArtist(formData);\n } else {\n result = await artistsStore.actions.createArtist(formData);\n }\n \n // Navigate to artist detail page\n setTimeout(() => {\n router.push({\n name: 'artist',\n params: { url: result.url }\n });\n }, 1000);\n \n } catch (error) {\n console.error('Error saving artist:', error);\n core.actions.setError({\n message: 'Failed to save artist'\n });\n }\n};\n\nconst handleUploadError = (error) => {\n console.error('Upload error:', error);\n core.actions.setError({\n message: 'Error uploading image'\n });\n};\n\n// Lifecycle hooks\nonMounted(async () => {\n if (props.editMode) {\n await fetchArtist();\n // Mark URL as manually set in edit mode to prevent auto-generation\n urlManuallySet.value = true;\n }\n});\n</script>"],"names":["artistsStore.actions","core.actions","auth.state"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ArtistForm.vue.js","sources":["../../../../../../../src/modules/music/components/forms/ArtistForm.vue"],"sourcesContent":["<template>\n <div class=\"pd-medium\">\n <h2 class=\"h2 mn-b-medium\">{{ editMode ? 'Edit Artist' : 'Create Artist' }}</h2>\n \n <form @submit.prevent=\"submitForm\" class=\"cols-1 gap-regular\">\n <!-- Basic Info Section -->\n <div class=\"bg-light pd-medium radius-medium\">\n <h3 class=\"h3 mn-b-medium\">Basic Information</h3>\n \n <div class=\"cols-2 mobile:cols-1 gap-regular\">\n <!-- Artist Photo -->\n <div>\n <p class=\"p-medium mn-b-small\">Artist Photo</p>\n <UploadImage\n v-model:photo=\"artist.photoUrl\"\n uploadPath=\"artists/photos\"\n class=\"w-100 h-15r radius-small o-hidden mn-b-small\"\n @error=\"handleUploadError\"\n />\n </div>\n \n <!-- Artist Cover -->\n <div>\n <p class=\"p-medium mn-b-small\">Cover Image</p>\n <UploadImage\n v-model:photo=\"artist.coverUrl\"\n uploadPath=\"artists/covers\"\n class=\"w-100 h-15r radius-small o-hidden mn-b-small\"\n @error=\"handleUploadError\"\n />\n </div>\n </div>\n \n <!-- Name -->\n <Field\n v-model:field=\"artist.name\"\n label=\"Name\"\n placeholder=\"Enter artist name\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n :validation=\"validation.name\"\n />\n <!-- URL -->\n <Field\n v-model:field=\"artist.url\"\n label=\"URL\"\n placeholder=\"Leave blank for auto-generation based on the artist name\"\n class=\"bg-white radius-small pd-small mn-b-small\"\n />\n \n <!-- Bio -->\n <Field\n v-model:field=\"artist.bio\"\n label=\"Biography\"\n type=\"textarea\"\n placeholder=\"Enter artist biography\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n :validation=\"validation.bio\"\n />\n \n <!-- Location -->\n <Field\n v-model:field=\"artist.location\"\n label=\"Location\"\n placeholder=\"e.g., Los Angeles, CA\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n />\n \n <!-- Website -->\n <Field\n v-model:field=\"artist.website\"\n label=\"Website\"\n placeholder=\"https://example.com\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n />\n \n \n </div>\n \n <!-- Social Media Section -->\n <div class=\"bg-light pd-medium radius-medium\">\n <h3 class=\"h3 mn-b-medium\">Social Media</h3>\n \n <div class=\"cols-2 mobile:cols-1 gap-thin\">\n <!-- Telegram -->\n <Field\n v-model:field=\"artist.socials.telegram\"\n label=\"Telegram\"\n placeholder=\"@username\"\n class=\"bg-white radius-small pd-small\"\n />\n \n <!-- Twitter -->\n <Field\n v-model:field=\"artist.socials.twitter\"\n label=\"Twitter\"\n placeholder=\"@username\"\n class=\"bg-white radius-small pd-small\"\n />\n \n <!-- Facebook -->\n <Field\n v-model:field=\"artist.socials.facebook\"\n label=\"Facebook\"\n placeholder=\"username or page-name\"\n class=\"bg-white radius-small pd-small\"\n />\n \n <!-- Instagram -->\n <Field\n v-model:field=\"artist.socials.instagram\"\n label=\"Instagram\"\n placeholder=\"@username\"\n class=\"bg-white radius-small pd-small\"\n />\n </div>\n </div>\n \n <!-- Genres Section (assuming genres are available) -->\n <Block title=\"Genres\">\n <BlockMultiselect\n v-model=\"artist.genres\"\n placeholder=\"Search genres...\"\n :multiple=\"true\"\n :transform=\"(item) => ({ _id: item._id, name: item.name })\"\n :store=\"{\n read: (options) => genresStore.actions.fetchGenres(options),\n state: genresStore.state\n }\"\n :options=\"{\n rootOnly: false,\n excludeChildren: false,\n limit: 50\n }\"\n :skeleton=\"{\n hide: false,\n horizontal: true,\n class: 'radius-small',\n structure: [{ \n block: 'text', size: 'large'\n }]\n }\"\n :states=\"{\n empty: {\n title: 'No genres found',\n description: 'Try different search terms or create a new genre',\n class: 'radius-small'\n }\n }\"\n key=\"_id\"\n :label=\"item => item.name\"\n classSearch=\"bg-white radius-small\"\n classSelected=\"bg-white pd-small radius-small\"\n classDropdown=\"bg-white pd-small radius-medium bs-small\"\n classItem=\"pd-small radius-small hover-bg-light cursor-pointer\"\n classFeed=\"h-max-30r gap-thin flex-column flex o-scroll\"\n >\n <!-- Слот для выбранных жанров -->\n <template #selected=\"{ item, clear }\">\n <div class=\"flex-nowrap flex-v-center flex gap-thin\">\n <span class=\"t-medium\">{{ item?.name || item }}</span>\n <button \n @click.stop=\"clear\"\n class=\"i-small pd-micro bg-red radius-extra flex-center flex aspect-1x1 hover-scale-1\"\n >\n <IconCross class=\"i-micro fill-white\" />\n </button>\n </div>\n </template>\n \n <!-- Слот для элементов в списке -->\n <template #item=\"{ item }\">\n <div class=\"flex-nowrap flex-v-center flex\">\n <div class=\"w-100\">\n <p class=\"t-medium\">{{ item.name }}</p>\n <p v-if=\"item.description\" class=\"t-small t-transp\">{{ item.description }}</p>\n </div>\n </div>\n </template>\n </BlockMultiselect>\n </Block>\n \n <!-- Status Section -->\n <div class=\"bg-light pd-medium radius-medium\">\n <h3 class=\"h3 mn-b-medium\">Publishing Status</h3>\n \n <Select\n v-model:select=\"artist.status\"\n :options=\"statusOptions\"\n label=\"Status\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n />\n \n <Checkbox\n v-model:active=\"artist.isVerified\"\n label=\"Verified Artist\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n />\n </div>\n \n <!-- Submit Button -->\n <div class=\"flex flex-justify-between\">\n <Button\n @click=\"$router.go(-1)\"\n class=\"bg-grey-nano t-black\"\n :showSucces=\"false\"\n :showLoader=\"false\"\n >\n Cancel\n </Button>\n \n <Button\n :submit=\"submitForm\"\n class=\"bg-main t-black\"\n :text=\"{\n success: editMode ? 'Updated!' : 'Created!'\n }\"\n >\n {{ editMode ? 'Update Artist' : 'Create Artist' }}\n </Button>\n </div>\n </form>\n </div>\n</template>\n\n<script setup>\nimport { ref, reactive, onMounted, computed, watch } from 'vue';\nimport { useRouter, useRoute } from 'vue-router';\n\n// Import Martyrs components\nimport Field from '@martyrs/src/components/Field/Field.vue';\nimport Block from '@martyrs/src/components/Block/Block.vue';\nimport Button from '@martyrs/src/components/Button/Button.vue';\nimport Checkbox from '@martyrs/src/components/Checkbox/Checkbox.vue';\nimport Select from '@martyrs/src/components/Select/Select.vue';\nimport UploadImage from '@martyrs/src/components/UploadImage/UploadImage.vue';\nimport Loader from '@martyrs/src/components/Loader/Loader.vue';\n\n\nimport BlockMultiselect from '@martyrs/src/modules/core/views/components/blocks/BlockMultiselect.vue';\nimport IconCross from '@martyrs/src/modules/icons/navigation/IconCross.vue';\n\n// Import store\nimport * as artistsStore from '../../store/artists';\nimport * as genresStore from '../../store/genres';\nimport { 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// Props\nconst props = defineProps({\n editMode: {\n type: Boolean,\n default: false\n },\n url: {\n type: String,\n default: ''\n }\n});\n\n// Router and route\nconst router = useRouter();\nconst route = useRoute();\n\n// State\nconst artist = reactive({\n name: '',\n bio: '',\n photoUrl: '',\n coverUrl: '',\n website: '',\n location: '',\n isVerified: false,\n status: 'draft',\n socials: {\n telegram: '',\n twitter: '',\n facebook: '',\n instagram: ''\n },\n url: '',\n genres: []\n});\n\nconst validation = reactive({\n name: false,\n bio: false\n});\n\n// Track if URL was manually entered\nconst urlManuallySet = ref(false);\n\n// Function to generate URL-friendly slug from text\nconst generateSlug = (text) => {\n if (!text) return '';\n return text\n .toLowerCase()\n .replace(/[^a-z0-9\\s-]/g, '') // Remove special characters\n .replace(/\\s+/g, '-') // Replace spaces with hyphens\n .replace(/-+/g, '-') // Replace multiple hyphens with single\n .trim('-'); // Remove leading/trailing hyphens\n};\n\n// Watch for changes in artist name to auto-generate URL\nwatch(() => artist.name, (newName) => {\n // Only auto-generate if URL hasn't been manually set and we're not in edit mode\n if (!urlManuallySet.value && !props.editMode) {\n artist.url = generateSlug(newName);\n }\n});\n\n// Watch for manual changes to URL field\nwatch(() => artist.url, (newUrl, oldUrl) => {\n // If user manually changes URL, mark as manually set\n if (newUrl !== generateSlug(artist.name)) {\n urlManuallySet.value = true;\n }\n});\n\n// Status options\nconst statusOptions = [\n 'draft',\n 'published',\n 'archived'\n];\n\n\nconst fetchArtist = async () => {\n if (!props.url) return;\n \n try {\n const fetchedArtist = await artistsStore.actions.fetchArtistByUrl(props.url);\n \n if (!fetchedArtist) {\n store.core.actions.setError({\n message: 'Artist not found'\n });\n return;\n }\n \n // Update local artist data\n Object.assign(artist, {\n name: fetchedArtist.name || '',\n bio: fetchedArtist.bio || '',\n photoUrl: fetchedArtist.photoUrl || '',\n coverUrl: fetchedArtist.coverUrl || '',\n website: fetchedArtist.website || '',\n location: fetchedArtist.location || '',\n isVerified: fetchedArtist.isVerified || false,\n status: fetchedArtist.status || 'draft',\n url: fetchedArtist.url || '',\n genres: fetchedArtist.genres || [],\n _id: fetchedArtist._id,\n socials: {\n telegram: fetchedArtist.socials?.telegram || '',\n twitter: fetchedArtist.socials?.twitter || '',\n facebook: fetchedArtist.socials?.facebook || '',\n instagram: fetchedArtist.socials?.instagram || ''\n }\n });\n \n } catch (error) {\n console.error('Error fetching artist:', error);\n store.core.actions.setError({\n message: 'Failed to load artist details'\n });\n }\n};\n\nconst validateForm = () => {\n let isValid = true;\n \n // Validate name\n if (!artist.name.trim()) {\n validation.name = {\n message: 'Artist name is required'\n };\n isValid = false;\n } else {\n validation.name = false;\n }\n \n // Validate bio\n if (artist.bio && artist.bio.length > 2000) {\n validation.bio = {\n message: 'Biography is too long (max 2000 characters)'\n };\n isValid = false;\n } else {\n validation.bio = false;\n }\n \n return isValid;\n};\n\nconst submitForm = async () => {\n if (!validateForm()) {\n return;\n }\n \n try {\n // Prepare data for submission\n const formData = {\n ...artist,\n genres: artist.genres.map(genre => genre._id || genre)\n };\n \n // Add ownership data if creating new artist\n if (!props.editMode) {\n formData.owner = {\n type: 'user',\n target: auth.state.user._id\n };\n formData.creator = {\n type: 'user',\n target: auth.state.user._id\n };\n }\n \n let result;\n if (props.editMode) {\n result = await artistsStore.actions.updateArtist(formData);\n } else {\n result = await artistsStore.actions.createArtist(formData);\n }\n \n // Navigate to artist detail page\n setTimeout(() => {\n router.push({\n name: 'artist',\n params: { url: result.url }\n });\n }, 1000);\n \n } catch (error) {\n console.error('Error saving artist:', error);\n store.core.actions.setError({\n message: 'Failed to save artist'\n });\n }\n};\n\nconst handleUploadError = (error) => {\n console.error('Upload error:', error);\n store.core.actions.setError({\n message: 'Error uploading image'\n });\n};\n\n// Lifecycle hooks\nonMounted(async () => {\n if (props.editMode) {\n await fetchArtist();\n // Mark URL as manually set in edit mode to prevent auto-generation\n urlManuallySet.value = true;\n }\n});\n</script>\n"],"names":["artistsStore.actions","auth.state"],"mappings":"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"}
|
|
@@ -4,12 +4,12 @@ import Field from "../../../../components/Field/Field.vue.js";
|
|
|
4
4
|
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/Radio/Radio.vue.js";
|
|
7
|
-
import UploadImage from "../../../../components/UploadImage/UploadImage.
|
|
7
|
+
import UploadImage from "../../../../components/UploadImage/UploadImage.vue.js";
|
|
8
8
|
import _sfc_main$2 from "../../../icons/navigation/IconCross.vue.js";
|
|
9
9
|
import BlockMultiselect from "../../../core/views/components/blocks/BlockMultiselect.vue.js";
|
|
10
10
|
import { actions as actions$1 } from "../../store/playlists.js";
|
|
11
11
|
import { state, actions } from "../../store/tracks.js";
|
|
12
|
-
import {
|
|
12
|
+
import { useStore } from "../../../core/views/store/core.store.js";
|
|
13
13
|
import { state as state$1 } from "../../../auth/views/store/auth.js";
|
|
14
14
|
const _hoisted_1 = { class: "pd-medium" };
|
|
15
15
|
const _hoisted_2 = { class: "h2 mn-b-medium" };
|
|
@@ -59,6 +59,7 @@ const _sfc_main = {
|
|
|
59
59
|
}
|
|
60
60
|
},
|
|
61
61
|
setup(__props) {
|
|
62
|
+
const store = useStore();
|
|
62
63
|
const props = __props;
|
|
63
64
|
const router = useRouter();
|
|
64
65
|
useRoute();
|
|
@@ -115,7 +116,7 @@ const _sfc_main = {
|
|
|
115
116
|
try {
|
|
116
117
|
const fetchedPlaylist = await actions$1.fetchPlaylistByUrl(props.url);
|
|
117
118
|
if (!fetchedPlaylist) {
|
|
118
|
-
actions
|
|
119
|
+
store.core.actions.setError({
|
|
119
120
|
message: "Playlist not found"
|
|
120
121
|
});
|
|
121
122
|
return;
|
|
@@ -132,7 +133,7 @@ const _sfc_main = {
|
|
|
132
133
|
});
|
|
133
134
|
} catch (error) {
|
|
134
135
|
console.error("Error fetching playlist:", error);
|
|
135
|
-
actions
|
|
136
|
+
store.core.actions.setError({
|
|
136
137
|
message: "Failed to load playlist details"
|
|
137
138
|
});
|
|
138
139
|
}
|
|
@@ -193,14 +194,14 @@ const _sfc_main = {
|
|
|
193
194
|
}, 1e3);
|
|
194
195
|
} catch (error) {
|
|
195
196
|
console.error("Error saving playlist:", error);
|
|
196
|
-
actions
|
|
197
|
+
store.core.actions.setError({
|
|
197
198
|
message: "Failed to save playlist"
|
|
198
199
|
});
|
|
199
200
|
}
|
|
200
201
|
};
|
|
201
202
|
const handleUploadError = (error) => {
|
|
202
203
|
console.error("Upload error:", error);
|
|
203
|
-
actions
|
|
204
|
+
store.core.actions.setError({
|
|
204
205
|
message: "Error uploading image"
|
|
205
206
|
});
|
|
206
207
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlaylistForm.vue.js","sources":["../../../../../../../src/modules/music/components/forms/PlaylistForm.vue"],"sourcesContent":["<template>\n <div class=\"pd-medium\">\n <h2 class=\"h2 mn-b-medium\">{{ editMode ? 'Edit Playlist' : 'Create Playlist' }}</h2>\n \n <form @submit.prevent=\"submitForm\" class=\"cols-1 gap-regular\">\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 <!-- Playlist Cover -->\n <div class=\"mn-b-medium\">\n <p class=\"p-medium mn-b-small\">Playlist Cover</p>\n <UploadImage\n v-model:photo=\"playlist.coverUrl\"\n uploadPath=\"playlists/covers\"\n class=\"w-100 h-15r radius-small o-hidden mn-b-small\"\n @error=\"handleUploadError\"\n />\n </div>\n \n <!-- Title -->\n <Field\n v-model:field=\"playlist.title\"\n label=\"Title\"\n placeholder=\"Enter playlist title\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n :validation=\"validation.title\"\n />\n \n <!-- URL -->\n <Field\n v-model:field=\"playlist.url\"\n label=\"URL\"\n placeholder=\"Leave blank for auto-generation based on the playlist title\"\n class=\"bg-white radius-small pd-small mn-b-small\"\n />\n \n <!-- Description -->\n <Field\n v-model:field=\"playlist.description\"\n label=\"Description\"\n type=\"textarea\"\n placeholder=\"Enter playlist description\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n :validation=\"validation.description\"\n />\n </div>\n \n <!-- Tracks Section -->\n <Block title=\"Tracks\">\n <BlockMultiselect\n v-model=\"playlist.tracks\"\n placeholder=\"Search tracks...\"\n :multiple=\"true\"\n :transform=\"(item) => ({ \n _id: item._id, \n title: item.title,\n artists: item.artists,\n album: item.album,\n duration: item.duration \n })\"\n :store=\"{\n read: (options) => tracksStore.actions.fetchTracks(options),\n state: tracksStore.state\n }\"\n :options=\"{\n rootOnly: false,\n excludeChildren: false,\n limit: 50\n }\"\n :skeleton=\"{\n hide: false,\n horizontal: true,\n class: 'radius-small',\n structure: [{ \n block: 'text', size: 'large'\n }]\n }\"\n :states=\"{\n empty: {\n title: 'No tracks found',\n description: 'Try different search terms',\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 tracks with reorder support -->\n <template #selected=\"{ item, clear, index }\">\n <div class=\"flex-nowrap flex-v-center flex gap-thin\">\n <button \n v-if=\"playlist.tracks.length > 1\"\n @click.stop=\"moveTrack(index, 'up')\"\n :disabled=\"index === 0\"\n class=\"i-small pd-micro bg-grey-nano radius-extra flex-center flex aspect-1x1 hover-scale-1\"\n >\n <IconArrowUp class=\"i-micro\" />\n </button>\n \n <button \n v-if=\"playlist.tracks.length > 1\"\n @click.stop=\"moveTrack(index, 'down')\"\n :disabled=\"index === playlist.tracks.length - 1\"\n class=\"i-small pd-micro bg-grey-nano radius-extra flex-center flex aspect-1x1 hover-scale-1\"\n >\n <IconArrowDown class=\"i-micro\" />\n </button>\n \n <div class=\"flex-1\">\n <p class=\"t-medium\">{{ item.title }}</p>\n <p class=\"t-small t-transp\">\n {{ item.artists?.map(a => a.name || a).join(', ') }}\n <span v-if=\"item.album\"> • {{ item.album.title || item.album }}</span>\n </p>\n </div>\n \n <span v-if=\"item.duration\" class=\"t-small t-transp\">\n {{ formatDuration(item.duration) }}\n </span>\n \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 <!-- Track items in dropdown -->\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 class=\"t-small t-transp\">\n {{ item.artists?.map(a => a.name || a).join(', ') }}\n <span v-if=\"item.album\"> • {{ item.album.title || item.album }}</span>\n </p>\n </div>\n <span v-if=\"item.duration\" class=\"t-small t-transp mn-l-small\">\n {{ formatDuration(item.duration) }}\n </span>\n </div>\n </template>\n </BlockMultiselect>\n \n <!-- Tracks summary -->\n <div v-if=\"playlist.tracks.length > 0\" class=\"t-small t-transp mn-t-small\">\n {{ playlist.tracks.length }} tracks • {{ formatDuration(totalDuration) }}\n </div>\n </Block>\n \n <!-- Privacy & Settings Section -->\n <div class=\"bg-light pd-medium radius-medium\">\n <h3 class=\"h3 mn-b-medium\">Privacy & Settings</h3>\n \n <!-- Privacy -->\n <div class=\"mn-b-medium\">\n <p class=\"p-medium mn-b-small\">Privacy</p>\n <div class=\"flex gap-regular\">\n <Radio\n v-model:radio=\"playlist.isPublic\"\n :value=\"true\"\n name=\"privacy\"\n label=\"Public\"\n class=\"bg-white pd-small radius-small\"\n />\n <Radio\n v-model:radio=\"playlist.isPublic\"\n :value=\"false\"\n name=\"privacy\"\n label=\"Private\"\n class=\"bg-white pd-small radius-small\"\n />\n </div>\n </div>\n \n <!-- Collaborative -->\n <div class=\"mn-b-medium\">\n <p class=\"p-medium mn-b-small\">Collaborative Playlist</p>\n <div class=\"flex gap-regular\">\n <Radio\n v-model:radio=\"playlist.isCollaborative\"\n :value=\"true\"\n name=\"collaborative\"\n label=\"Yes\"\n class=\"bg-white pd-small radius-small\"\n />\n <Radio\n v-model:radio=\"playlist.isCollaborative\"\n :value=\"false\"\n name=\"collaborative\"\n label=\"No\"\n class=\"bg-white pd-small radius-small\"\n />\n </div>\n </div>\n </div>\n \n <!-- Submit Button -->\n <div class=\"flex flex-justify-between\">\n <Button\n @click=\"$router.go(-1)\"\n class=\"bg-grey-nano t-black\"\n :showSucces=\"false\"\n :showLoader=\"false\"\n >\n Cancel\n </Button>\n \n <Button\n :submit=\"submitForm\"\n class=\"bg-main t-black\"\n :text=\"{\n success: editMode ? 'Updated!' : 'Created!'\n }\"\n >\n {{ editMode ? 'Update Playlist' : 'Create Playlist' }}\n </Button>\n </div>\n </form>\n </div>\n</template>\n\n<script setup>\nimport { ref, reactive, onMounted, watch, computed } 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 Radio from '@martyrs/src/components/Radio/Radio.vue';\nimport UploadImage from '@martyrs/src/components/UploadImage/UploadImage.vue';\nimport IconCross from '@martyrs/src/modules/icons/navigation/IconCross.vue';\nimport IconArrowUp from '@martyrs/src/modules/icons/navigation/IconCross.vue';\nimport IconArrowDown 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 playlistsStore from '../../store/playlists';\nimport * as tracksStore from '../../store/tracks';\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// Props\nconst props = defineProps({\n editMode: {\n type: Boolean,\n default: false\n },\n url: {\n type: String,\n default: ''\n }\n});\n\n// Router and route\nconst router = useRouter();\nconst route = useRoute();\n\n// State\nconst playlist = reactive({\n title: '',\n description: '',\n coverUrl: '',\n tracks: [],\n url: '',\n isPublic: true,\n isCollaborative: false\n});\n\nconst validation = reactive({\n title: false,\n description: false\n});\n\n// Track if URL was manually entered\nconst urlManuallySet = ref(false);\n\n// Function to generate URL-friendly slug from text\nconst generateSlug = (text) => {\n if (!text) return '';\n return text\n .toLowerCase()\n .replace(/[^a-z0-9\\s-]/g, '') // Remove special characters\n .replace(/\\s+/g, '-') // Replace spaces with hyphens\n .replace(/-+/g, '-') // Replace multiple hyphens with single\n .trim('-'); // Remove leading/trailing hyphens\n};\n\n// Watch for changes in playlist title to auto-generate URL\nwatch(() => playlist.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 playlist.url = generateSlug(newTitle);\n }\n});\n\n// Watch for manual changes to URL field\nwatch(() => playlist.url, (newUrl, oldUrl) => {\n // If user manually changes URL, mark as manually set\n if (newUrl !== generateSlug(playlist.title)) {\n urlManuallySet.value = true;\n }\n});\n\n// Computed\nconst totalDuration = computed(() => {\n return playlist.tracks.reduce((sum, track) => sum + (track.duration || 0), 0);\n});\n\n// Methods\nconst formatDuration = (seconds) => {\n if (!seconds) return '0:00';\n const hours = Math.floor(seconds / 3600);\n const minutes = Math.floor((seconds % 3600) / 60);\n const secs = seconds % 60;\n \n if (hours > 0) {\n return `${hours}:${minutes.toString().padStart(2, '0')}:${secs.toString().padStart(2, '0')}`;\n }\n return `${minutes}:${secs.toString().padStart(2, '0')}`;\n};\n\nconst moveTrack = (index, direction) => {\n const newIndex = direction === 'up' ? index - 1 : index + 1;\n if (newIndex < 0 || newIndex >= playlist.tracks.length) return;\n \n const tracks = [...playlist.tracks];\n [tracks[index], tracks[newIndex]] = [tracks[newIndex], tracks[index]];\n playlist.tracks = tracks;\n};\n\nconst fetchPlaylist = async () => {\n if (!props.url) return;\n \n try {\n const fetchedPlaylist = await playlistsStore.actions.fetchPlaylistByUrl(props.url);\n \n if (!fetchedPlaylist) {\n core.actions.setError({\n message: 'Playlist not found'\n });\n return;\n }\n \n // Update local playlist data\n Object.assign(playlist, {\n title: fetchedPlaylist.title || '',\n description: fetchedPlaylist.description || '',\n coverUrl: fetchedPlaylist.coverUrl || '',\n tracks: fetchedPlaylist.tracks || [],\n url: fetchedPlaylist.url || '',\n isPublic: fetchedPlaylist.isPublic !== false,\n isCollaborative: fetchedPlaylist.isCollaborative || false,\n _id: fetchedPlaylist._id\n });\n \n } catch (error) {\n console.error('Error fetching playlist:', error);\n core.actions.setError({\n message: 'Failed to load playlist details'\n });\n }\n};\n\nconst validateForm = () => {\n let isValid = true;\n \n // Validate title\n if (!playlist.title.trim()) {\n validation.title = {\n message: 'Playlist title is required'\n };\n isValid = false;\n } else {\n validation.title = false;\n }\n \n // Validate description\n if (playlist.description && playlist.description.length > 2000) {\n validation.description = {\n message: 'Description is too long (max 2000 characters)'\n };\n isValid = false;\n } else {\n validation.description = false;\n }\n \n return isValid;\n};\n\nconst submitForm = async () => {\n if (!validateForm()) {\n return;\n }\n \n try {\n // Prepare data for submission\n const formData = {\n ...playlist,\n tracks: playlist.tracks.map(track => ({\n track: track._id || track,\n addedAt: new Date()\n }))\n };\n \n // Add ownership data if creating new playlist\n if (!props.editMode) {\n formData.creator = {\n type: 'user',\n target: auth.state.user._id\n };\n formData.owner = {\n type: 'user',\n target: auth.state.user._id\n };\n }\n \n let result;\n if (props.editMode) {\n result = await playlistsStore.actions.updatePlaylist(formData);\n } else {\n result = await playlistsStore.actions.createPlaylist(formData);\n }\n \n // Navigate to playlist detail page\n setTimeout(() => {\n router.push({\n name: 'playlist',\n params: { url: result.url }\n });\n }, 1000);\n \n } catch (error) {\n console.error('Error saving playlist:', error);\n core.actions.setError({\n message: 'Failed to save playlist'\n });\n }\n};\n\nconst handleUploadError = (error) => {\n console.error('Upload error:', error);\n core.actions.setError({\n message: 'Error uploading image'\n });\n};\n\n// Lifecycle hooks\nonMounted(async () => {\n if (props.editMode) {\n await fetchPlaylist();\n // Mark URL as manually set in edit mode to prevent auto-generation\n urlManuallySet.value = true;\n }\n});\n</script>"],"names":["playlistsStore.actions","core.actions","auth.state"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PlaylistForm.vue.js","sources":["../../../../../../../src/modules/music/components/forms/PlaylistForm.vue"],"sourcesContent":["<template>\n <div class=\"pd-medium\">\n <h2 class=\"h2 mn-b-medium\">{{ editMode ? 'Edit Playlist' : 'Create Playlist' }}</h2>\n \n <form @submit.prevent=\"submitForm\" class=\"cols-1 gap-regular\">\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 <!-- Playlist Cover -->\n <div class=\"mn-b-medium\">\n <p class=\"p-medium mn-b-small\">Playlist Cover</p>\n <UploadImage\n v-model:photo=\"playlist.coverUrl\"\n uploadPath=\"playlists/covers\"\n class=\"w-100 h-15r radius-small o-hidden mn-b-small\"\n @error=\"handleUploadError\"\n />\n </div>\n \n <!-- Title -->\n <Field\n v-model:field=\"playlist.title\"\n label=\"Title\"\n placeholder=\"Enter playlist title\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n :validation=\"validation.title\"\n />\n \n <!-- URL -->\n <Field\n v-model:field=\"playlist.url\"\n label=\"URL\"\n placeholder=\"Leave blank for auto-generation based on the playlist title\"\n class=\"bg-white radius-small pd-small mn-b-small\"\n />\n \n <!-- Description -->\n <Field\n v-model:field=\"playlist.description\"\n label=\"Description\"\n type=\"textarea\"\n placeholder=\"Enter playlist description\"\n class=\"bg-white radius-small pd-small mn-b-thin\"\n :validation=\"validation.description\"\n />\n </div>\n \n <!-- Tracks Section -->\n <Block title=\"Tracks\">\n <BlockMultiselect\n v-model=\"playlist.tracks\"\n placeholder=\"Search tracks...\"\n :multiple=\"true\"\n :transform=\"(item) => ({ \n _id: item._id, \n title: item.title,\n artists: item.artists,\n album: item.album,\n duration: item.duration \n })\"\n :store=\"{\n read: (options) => tracksStore.actions.fetchTracks(options),\n state: tracksStore.state\n }\"\n :options=\"{\n rootOnly: false,\n excludeChildren: false,\n limit: 50\n }\"\n :skeleton=\"{\n hide: false,\n horizontal: true,\n class: 'radius-small',\n structure: [{ \n block: 'text', size: 'large'\n }]\n }\"\n :states=\"{\n empty: {\n title: 'No tracks found',\n description: 'Try different search terms',\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 tracks with reorder support -->\n <template #selected=\"{ item, clear, index }\">\n <div class=\"flex-nowrap flex-v-center flex gap-thin\">\n <button \n v-if=\"playlist.tracks.length > 1\"\n @click.stop=\"moveTrack(index, 'up')\"\n :disabled=\"index === 0\"\n class=\"i-small pd-micro bg-grey-nano radius-extra flex-center flex aspect-1x1 hover-scale-1\"\n >\n <IconArrowUp class=\"i-micro\" />\n </button>\n \n <button \n v-if=\"playlist.tracks.length > 1\"\n @click.stop=\"moveTrack(index, 'down')\"\n :disabled=\"index === playlist.tracks.length - 1\"\n class=\"i-small pd-micro bg-grey-nano radius-extra flex-center flex aspect-1x1 hover-scale-1\"\n >\n <IconArrowDown class=\"i-micro\" />\n </button>\n \n <div class=\"flex-1\">\n <p class=\"t-medium\">{{ item.title }}</p>\n <p class=\"t-small t-transp\">\n {{ item.artists?.map(a => a.name || a).join(', ') }}\n <span v-if=\"item.album\"> • {{ item.album.title || item.album }}</span>\n </p>\n </div>\n \n <span v-if=\"item.duration\" class=\"t-small t-transp\">\n {{ formatDuration(item.duration) }}\n </span>\n \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 <!-- Track items in dropdown -->\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 class=\"t-small t-transp\">\n {{ item.artists?.map(a => a.name || a).join(', ') }}\n <span v-if=\"item.album\"> • {{ item.album.title || item.album }}</span>\n </p>\n </div>\n <span v-if=\"item.duration\" class=\"t-small t-transp mn-l-small\">\n {{ formatDuration(item.duration) }}\n </span>\n </div>\n </template>\n </BlockMultiselect>\n \n <!-- Tracks summary -->\n <div v-if=\"playlist.tracks.length > 0\" class=\"t-small t-transp mn-t-small\">\n {{ playlist.tracks.length }} tracks • {{ formatDuration(totalDuration) }}\n </div>\n </Block>\n \n <!-- Privacy & Settings Section -->\n <div class=\"bg-light pd-medium radius-medium\">\n <h3 class=\"h3 mn-b-medium\">Privacy & Settings</h3>\n \n <!-- Privacy -->\n <div class=\"mn-b-medium\">\n <p class=\"p-medium mn-b-small\">Privacy</p>\n <div class=\"flex gap-regular\">\n <Radio\n v-model:radio=\"playlist.isPublic\"\n :value=\"true\"\n name=\"privacy\"\n label=\"Public\"\n class=\"bg-white pd-small radius-small\"\n />\n <Radio\n v-model:radio=\"playlist.isPublic\"\n :value=\"false\"\n name=\"privacy\"\n label=\"Private\"\n class=\"bg-white pd-small radius-small\"\n />\n </div>\n </div>\n \n <!-- Collaborative -->\n <div class=\"mn-b-medium\">\n <p class=\"p-medium mn-b-small\">Collaborative Playlist</p>\n <div class=\"flex gap-regular\">\n <Radio\n v-model:radio=\"playlist.isCollaborative\"\n :value=\"true\"\n name=\"collaborative\"\n label=\"Yes\"\n class=\"bg-white pd-small radius-small\"\n />\n <Radio\n v-model:radio=\"playlist.isCollaborative\"\n :value=\"false\"\n name=\"collaborative\"\n label=\"No\"\n class=\"bg-white pd-small radius-small\"\n />\n </div>\n </div>\n </div>\n \n <!-- Submit Button -->\n <div class=\"flex flex-justify-between\">\n <Button\n @click=\"$router.go(-1)\"\n class=\"bg-grey-nano t-black\"\n :showSucces=\"false\"\n :showLoader=\"false\"\n >\n Cancel\n </Button>\n \n <Button\n :submit=\"submitForm\"\n class=\"bg-main t-black\"\n :text=\"{\n success: editMode ? 'Updated!' : 'Created!'\n }\"\n >\n {{ editMode ? 'Update Playlist' : 'Create Playlist' }}\n </Button>\n </div>\n </form>\n </div>\n</template>\n\n<script setup>\nimport { ref, reactive, onMounted, watch, computed } 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 Radio from '@martyrs/src/components/Radio/Radio.vue';\nimport UploadImage from '@martyrs/src/components/UploadImage/UploadImage.vue';\nimport IconCross from '@martyrs/src/modules/icons/navigation/IconCross.vue';\nimport IconArrowUp from '@martyrs/src/modules/icons/navigation/IconCross.vue';\nimport IconArrowDown 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 playlistsStore from '../../store/playlists';\nimport * as tracksStore from '../../store/tracks';\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// Props\nconst props = defineProps({\n editMode: {\n type: Boolean,\n default: false\n },\n url: {\n type: String,\n default: ''\n }\n});\n\n// Router and route\nconst router = useRouter();\nconst route = useRoute();\n\n// State\nconst playlist = reactive({\n title: '',\n description: '',\n coverUrl: '',\n tracks: [],\n url: '',\n isPublic: true,\n isCollaborative: false\n});\n\nconst validation = reactive({\n title: false,\n description: false\n});\n\n// Track if URL was manually entered\nconst urlManuallySet = ref(false);\n\n// Function to generate URL-friendly slug from text\nconst generateSlug = (text) => {\n if (!text) return '';\n return text\n .toLowerCase()\n .replace(/[^a-z0-9\\s-]/g, '') // Remove special characters\n .replace(/\\s+/g, '-') // Replace spaces with hyphens\n .replace(/-+/g, '-') // Replace multiple hyphens with single\n .trim('-'); // Remove leading/trailing hyphens\n};\n\n// Watch for changes in playlist title to auto-generate URL\nwatch(() => playlist.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 playlist.url = generateSlug(newTitle);\n }\n});\n\n// Watch for manual changes to URL field\nwatch(() => playlist.url, (newUrl, oldUrl) => {\n // If user manually changes URL, mark as manually set\n if (newUrl !== generateSlug(playlist.title)) {\n urlManuallySet.value = true;\n }\n});\n\n// Computed\nconst totalDuration = computed(() => {\n return playlist.tracks.reduce((sum, track) => sum + (track.duration || 0), 0);\n});\n\n// Methods\nconst formatDuration = (seconds) => {\n if (!seconds) return '0:00';\n const hours = Math.floor(seconds / 3600);\n const minutes = Math.floor((seconds % 3600) / 60);\n const secs = seconds % 60;\n \n if (hours > 0) {\n return `${hours}:${minutes.toString().padStart(2, '0')}:${secs.toString().padStart(2, '0')}`;\n }\n return `${minutes}:${secs.toString().padStart(2, '0')}`;\n};\n\nconst moveTrack = (index, direction) => {\n const newIndex = direction === 'up' ? index - 1 : index + 1;\n if (newIndex < 0 || newIndex >= playlist.tracks.length) return;\n \n const tracks = [...playlist.tracks];\n [tracks[index], tracks[newIndex]] = [tracks[newIndex], tracks[index]];\n playlist.tracks = tracks;\n};\n\nconst fetchPlaylist = async () => {\n if (!props.url) return;\n \n try {\n const fetchedPlaylist = await playlistsStore.actions.fetchPlaylistByUrl(props.url);\n \n if (!fetchedPlaylist) {\n store.core.actions.setError({\n message: 'Playlist not found'\n });\n return;\n }\n \n // Update local playlist data\n Object.assign(playlist, {\n title: fetchedPlaylist.title || '',\n description: fetchedPlaylist.description || '',\n coverUrl: fetchedPlaylist.coverUrl || '',\n tracks: fetchedPlaylist.tracks || [],\n url: fetchedPlaylist.url || '',\n isPublic: fetchedPlaylist.isPublic !== false,\n isCollaborative: fetchedPlaylist.isCollaborative || false,\n _id: fetchedPlaylist._id\n });\n \n } catch (error) {\n console.error('Error fetching playlist:', error);\n store.core.actions.setError({\n message: 'Failed to load playlist details'\n });\n }\n};\n\nconst validateForm = () => {\n let isValid = true;\n \n // Validate title\n if (!playlist.title.trim()) {\n validation.title = {\n message: 'Playlist title is required'\n };\n isValid = false;\n } else {\n validation.title = false;\n }\n \n // Validate description\n if (playlist.description && playlist.description.length > 2000) {\n validation.description = {\n message: 'Description is too long (max 2000 characters)'\n };\n isValid = false;\n } else {\n validation.description = false;\n }\n \n return isValid;\n};\n\nconst submitForm = async () => {\n if (!validateForm()) {\n return;\n }\n \n try {\n // Prepare data for submission\n const formData = {\n ...playlist,\n tracks: playlist.tracks.map(track => ({\n track: track._id || track,\n addedAt: new Date()\n }))\n };\n \n // Add ownership data if creating new playlist\n if (!props.editMode) {\n formData.creator = {\n type: 'user',\n target: auth.state.user._id\n };\n formData.owner = {\n type: 'user',\n target: auth.state.user._id\n };\n }\n \n let result;\n if (props.editMode) {\n result = await playlistsStore.actions.updatePlaylist(formData);\n } else {\n result = await playlistsStore.actions.createPlaylist(formData);\n }\n \n // Navigate to playlist detail page\n setTimeout(() => {\n router.push({\n name: 'playlist',\n params: { url: result.url }\n });\n }, 1000);\n \n } catch (error) {\n console.error('Error saving playlist:', error);\n store.core.actions.setError({\n message: 'Failed to save playlist'\n });\n }\n};\n\nconst handleUploadError = (error) => {\n console.error('Upload error:', error);\n store.core.actions.setError({\n message: 'Error uploading image'\n });\n};\n\n// Lifecycle hooks\nonMounted(async () => {\n if (props.editMode) {\n await fetchPlaylist();\n // Mark URL as manually set in edit mode to prevent auto-generation\n urlManuallySet.value = true;\n }\n});\n</script>\n"],"names":["playlistsStore.actions","auth.state"],"mappings":"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"}
|