@ozdao/martyrs 0.2.469 → 0.2.471
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{Media-DwVcRIAX.mjs → Media-C4Ges_Sd.mjs} +1 -1
- package/dist/{Media-DCGbUujy.js → Media-CR0V1zvB.js} +1 -1
- package/dist/_virtual/index.cjs +1 -1
- package/dist/_virtual/index.js +1 -1
- package/dist/auth.server.js +1 -1
- package/dist/auth.server.mjs +1 -1
- package/dist/chats.server.js +15 -14
- package/dist/chats.server.mjs +15 -14
- package/dist/community.server.js +1 -1
- package/dist/community.server.mjs +1 -1
- package/dist/events.server.js +1 -1
- package/dist/events.server.mjs +1 -1
- package/dist/files.server.js +1 -1
- package/dist/files.server.mjs +1 -1
- package/dist/gallery.server.js +1 -1
- package/dist/gallery.server.mjs +1 -1
- package/dist/globals.server.js +20 -12
- package/dist/globals.server.mjs +20 -12
- package/dist/{index-DICZTQ-1.mjs → index-CgMJYdNI.mjs} +3 -0
- package/dist/{index-DQqZReAr.js → index-DxIIUtHr.js} +3 -0
- package/dist/{main-DEHjtgLs.mjs → main-CTcal9qN.mjs} +900 -884
- package/dist/{main-UVdexuMN.js → main-CsZAG5Wz.js} +5 -5
- package/dist/martyrs/node_modules/@capacitor/core/dist/index.cjs.map +1 -0
- package/dist/martyrs/node_modules/@capacitor/core/dist/index.js.map +1 -0
- package/dist/martyrs/node_modules/{.pnpm/@capacitor_preferences@7.0.1_@capacitor_core@7.2.0/node_modules/@capacitor → @capacitor}/preferences/dist/esm/index.cjs +1 -1
- package/dist/martyrs/node_modules/@capacitor/preferences/dist/esm/index.cjs.map +1 -0
- package/dist/martyrs/node_modules/{.pnpm/@capacitor_preferences@7.0.1_@capacitor_core@7.2.0/node_modules/@capacitor → @capacitor}/preferences/dist/esm/index.js +1 -1
- package/dist/martyrs/node_modules/@capacitor/preferences/dist/esm/index.js.map +1 -0
- package/dist/martyrs/node_modules/{.pnpm/@capacitor_preferences@7.0.1_@capacitor_core@7.2.0/node_modules/@capacitor → @capacitor}/preferences/dist/esm/web.cjs +1 -1
- package/dist/martyrs/node_modules/@capacitor/preferences/dist/esm/web.cjs.map +1 -0
- package/dist/martyrs/node_modules/{.pnpm/@capacitor_preferences@7.0.1_@capacitor_core@7.2.0/node_modules/@capacitor → @capacitor}/preferences/dist/esm/web.js +1 -1
- package/dist/martyrs/node_modules/@capacitor/preferences/dist/esm/web.js.map +1 -0
- package/dist/{node_modules/.pnpm/@vue_server-renderer@3.5.13_vue@3.5.13_typescript@5.8.3_ → martyrs}/node_modules/@vue/server-renderer/dist/server-renderer.esm-bundler.cjs +1 -1
- package/dist/martyrs/node_modules/@vue/server-renderer/dist/server-renderer.esm-bundler.cjs.map +1 -0
- package/dist/{node_modules/.pnpm/@vue_server-renderer@3.5.13_vue@3.5.13_typescript@5.8.3_ → martyrs}/node_modules/@vue/server-renderer/dist/server-renderer.esm-bundler.js +1 -1
- package/dist/martyrs/node_modules/@vue/server-renderer/dist/server-renderer.esm-bundler.js.map +1 -0
- package/dist/martyrs/node_modules/@vue/shared/dist/shared.esm-bundler.cjs.map +1 -0
- package/dist/martyrs/node_modules/@vue/shared/dist/shared.esm-bundler.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/ParseError.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/ParseError.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/PhoneNumber.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/PhoneNumber.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/constants.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/constants.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/format.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/format.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/RFC3966.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/RFC3966.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/applyInternationalSeparatorStyle.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/applyInternationalSeparatorStyle.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/checkNumberLength.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/checkNumberLength.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/extension/createExtensionPattern.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/extension/createExtensionPattern.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/extension/extractExtension.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/extension/extractExtension.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/extractCountryCallingCode.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/extractCountryCallingCode.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/extractCountryCallingCodeFromInternationalNumberWithoutPlusSign.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/extractCountryCallingCodeFromInternationalNumberWithoutPlusSign.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/extractFormattedPhoneNumberFromPossibleRfc3966NumberUri.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/extractFormattedPhoneNumberFromPossibleRfc3966NumberUri.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/extractNationalNumber.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/extractNationalNumber.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/extractNationalNumberFromPossiblyIncompleteNumber.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/extractNationalNumberFromPossiblyIncompleteNumber.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/extractPhoneContext.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/extractPhoneContext.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/formatNationalNumberUsingFormat.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/formatNationalNumberUsingFormat.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/getCountryByCallingCode.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/getCountryByCallingCode.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/getCountryByNationalNumber.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/getCountryByNationalNumber.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/getIddPrefix.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/getIddPrefix.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/getNumberType.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/getNumberType.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/getPossibleCountriesForNumber.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/getPossibleCountriesForNumber.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/isObject.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/isObject.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/isViablePhoneNumber.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/isViablePhoneNumber.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/matchesEntirely.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/matchesEntirely.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/parseDigits.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/parseDigits.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/stripIddPrefix.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/helpers/stripIddPrefix.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/isPossible.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/isPossible.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/isValid.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/isValid.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/metadata.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/metadata.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/normalizeArguments.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/normalizeArguments.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/parse.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/parse.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/parseIncompletePhoneNumber.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/parseIncompletePhoneNumber.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/parsePhoneNumber.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/parsePhoneNumber.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/parsePhoneNumberWithError_.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/parsePhoneNumberWithError_.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/parsePhoneNumber_.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/parsePhoneNumber_.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/tools/semver-compare.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/es6/tools/semver-compare.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/metadata.min.json.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/metadata.min.json.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/min/exports/parsePhoneNumber.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/min/exports/parsePhoneNumber.js.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/min/exports/withMetadataArgument.cjs.map +1 -0
- package/dist/martyrs/node_modules/libphonenumber-js/min/exports/withMetadataArgument.js.map +1 -0
- package/dist/martyrs/node_modules/uuid/dist/esm-browser/regex.cjs +5 -0
- package/dist/martyrs/node_modules/uuid/dist/esm-browser/regex.cjs.map +1 -0
- package/dist/martyrs/node_modules/uuid/dist/esm-browser/regex.js +5 -0
- package/dist/martyrs/node_modules/uuid/dist/esm-browser/regex.js.map +1 -0
- package/dist/{node_modules/.pnpm/uuid@11.1.0 → martyrs}/node_modules/uuid/dist/esm-browser/rng.cjs +4 -4
- package/dist/martyrs/node_modules/uuid/dist/esm-browser/rng.cjs.map +1 -0
- package/dist/martyrs/node_modules/uuid/dist/esm-browser/rng.js +15 -0
- package/dist/martyrs/node_modules/uuid/dist/esm-browser/rng.js.map +1 -0
- package/dist/martyrs/node_modules/uuid/dist/esm-browser/stringify.cjs +17 -0
- package/dist/martyrs/node_modules/uuid/dist/esm-browser/stringify.cjs.map +1 -0
- package/dist/martyrs/node_modules/uuid/dist/esm-browser/stringify.js +17 -0
- package/dist/martyrs/node_modules/uuid/dist/esm-browser/stringify.js.map +1 -0
- package/dist/martyrs/node_modules/uuid/dist/esm-browser/v4.cjs +13 -0
- package/dist/martyrs/node_modules/uuid/dist/esm-browser/v4.cjs.map +1 -0
- package/dist/martyrs/node_modules/uuid/dist/esm-browser/v4.js +13 -0
- package/dist/martyrs/node_modules/uuid/dist/esm-browser/v4.js.map +1 -0
- package/dist/martyrs/node_modules/uuid/dist/esm-browser/validate.cjs +8 -0
- package/dist/martyrs/node_modules/uuid/dist/esm-browser/validate.cjs.map +1 -0
- package/dist/martyrs/node_modules/uuid/dist/esm-browser/validate.js +8 -0
- package/dist/martyrs/node_modules/uuid/dist/esm-browser/validate.js.map +1 -0
- package/dist/martyrs/src/components/Block/Block.vue.cjs +1 -1
- package/dist/martyrs/src/components/Block/Block.vue.js +1 -1
- package/dist/martyrs/src/components/Chips/{Chips.vue.cjs → Chips.vue2.cjs} +2 -2
- package/dist/martyrs/src/components/Chips/Chips.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/Chips/{Chips.vue.js → Chips.vue2.js} +2 -2
- package/dist/martyrs/src/components/Chips/Chips.vue2.js.map +1 -0
- package/dist/martyrs/src/components/Dropdown/{Dropdown.vue.cjs → Dropdown.vue2.cjs} +2 -2
- package/dist/martyrs/src/components/Dropdown/Dropdown.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/Dropdown/{Dropdown.vue.js → Dropdown.vue2.js} +2 -2
- package/dist/martyrs/src/components/Dropdown/{Dropdown.vue.cjs.map → Dropdown.vue2.js.map} +1 -1
- package/dist/martyrs/src/components/Feed/Feed.vue.cjs +1 -1
- package/dist/martyrs/src/components/Feed/Feed.vue.js +1 -1
- package/dist/martyrs/src/components/FieldPhone/FieldPhone.vue.cjs +1 -1
- package/dist/martyrs/src/components/FieldPhone/FieldPhone.vue.js +1 -1
- package/dist/martyrs/src/components/Popup/{Popup.vue2.cjs → Popup.vue.cjs} +2 -2
- package/dist/martyrs/src/components/Popup/{Popup.vue2.js.map → Popup.vue.cjs.map} +1 -1
- package/dist/martyrs/src/components/Popup/{Popup.vue2.js → Popup.vue.js} +2 -2
- package/dist/martyrs/src/components/Popup/Popup.vue.js.map +1 -0
- package/dist/martyrs/src/components/Tooltip/{Tooltip.vue2.cjs → Tooltip.vue.cjs} +2 -2
- package/dist/martyrs/src/components/Tooltip/{Tooltip.vue2.js.map → Tooltip.vue.cjs.map} +1 -1
- package/dist/martyrs/src/components/Tooltip/{Tooltip.vue2.js → Tooltip.vue.js} +2 -2
- package/dist/martyrs/src/components/Tooltip/Tooltip.vue.js.map +1 -0
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/store/auth.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/store/auth.js +1 -1
- package/dist/martyrs/src/modules/chats/store/chat.store.cjs +47 -16
- package/dist/martyrs/src/modules/chats/store/chat.store.cjs.map +1 -1
- package/dist/martyrs/src/modules/chats/store/chat.store.js +47 -16
- package/dist/martyrs/src/modules/chats/store/chat.store.js.map +1 -1
- package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.cjs +2 -2
- package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.js +2 -2
- package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.js.map +1 -1
- package/dist/martyrs/src/modules/community/components/pages/Blog.vue.cjs +1 -1
- package/dist/martyrs/src/modules/community/components/pages/Blog.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/community/components/pages/Blog.vue.js +1 -1
- package/dist/martyrs/src/modules/community/components/pages/Blog.vue.js.map +1 -1
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs +6 -3
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +6 -3
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js.map +1 -1
- package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs +4 -4
- package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +4 -4
- package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js.map +1 -1
- package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.cjs +1 -1
- package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.js +1 -1
- package/dist/martyrs/src/modules/constructor/components/elements/VideoPlayer.vue.cjs +1 -1
- package/dist/martyrs/src/modules/constructor/components/elements/VideoPlayer.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/constructor/components/elements/VideoPlayer.vue.js +1 -1
- package/dist/martyrs/src/modules/constructor/components/elements/VideoPlayer.vue.js.map +1 -1
- package/dist/martyrs/src/modules/constructor/components/sections/Constructor.vue.cjs +10 -10
- package/dist/martyrs/src/modules/constructor/components/sections/Constructor.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/constructor/components/sections/Constructor.vue.js +10 -10
- package/dist/martyrs/src/modules/constructor/components/sections/Constructor.vue.js.map +1 -1
- package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs +2 -2
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +2 -2
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/pages/Events.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/pages/Events.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.js +1 -1
- package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.cjs +1 -1
- package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.js +1 -1
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +2 -2
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +2 -2
- package/dist/martyrs/src/modules/globals/globals.client.cjs +0 -9
- package/dist/martyrs/src/modules/globals/globals.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/globals.client.js +0 -9
- package/dist/martyrs/src/modules/globals/globals.client.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/classes/globals.store.cjs +107 -21
- package/dist/martyrs/src/modules/globals/views/classes/globals.store.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/classes/globals.store.js +107 -21
- package/dist/martyrs/src/modules/globals/views/classes/globals.store.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/classes/globals.websocket.cjs +40 -97
- package/dist/martyrs/src/modules/globals/views/classes/globals.websocket.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/classes/globals.websocket.js +40 -97
- package/dist/martyrs/src/modules/globals/views/classes/globals.websocket.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +2 -2
- package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js +2 -2
- package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/components/layouts/App.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/layouts/App.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs +2 -2
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js +2 -2
- package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/plugins/AlertDialog.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/plugins/AlertDialog.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/store/globals.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/store/globals.js +1 -1
- package/dist/martyrs/src/modules/globals/views/utils/vue-app-renderer.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/utils/vue-app-renderer.js +1 -1
- package/dist/martyrs/src/modules/icons/skeletons/SkeletonBlogpost.vue.cjs +1 -1
- package/dist/martyrs/src/modules/icons/skeletons/SkeletonBlogpost.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/skeletons/SkeletonBlogpost.vue.js +1 -1
- package/dist/martyrs/src/modules/icons/skeletons/SkeletonBlogpost.vue.js.map +1 -1
- package/dist/martyrs/src/modules/notifications/notifications.client.cjs +36 -10
- package/dist/martyrs/src/modules/notifications/notifications.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/notifications/notifications.client.js +36 -10
- package/dist/martyrs/src/modules/notifications/notifications.client.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +2 -2
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +2 -2
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs +2 -2
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.cjs +2 -2
- package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +1 -1
- package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js +1 -1
- package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.cjs +1 -1
- package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/ImagesThumbnails.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/ImagesThumbnails.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/pages/EditLeftover.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/pages/EditLeftover.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs.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.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js +1 -1
- package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.cjs +1 -1
- package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.cjs +1 -1
- package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.cjs +1 -1
- package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +1 -1
- package/dist/martyrs.cjs.js +1 -1
- package/dist/martyrs.css +1 -1
- package/dist/martyrs.es.js +1 -1
- package/dist/notifications.server.js +69 -13
- package/dist/notifications.server.mjs +69 -13
- package/dist/orders.server.js +4 -3
- package/dist/orders.server.mjs +4 -3
- package/dist/organizations.server.js +1 -1
- package/dist/organizations.server.mjs +1 -1
- package/dist/rents.server.js +1 -1
- package/dist/rents.server.mjs +1 -1
- package/dist/wallet.server.js +1 -1
- package/dist/wallet.server.mjs +1 -1
- package/package.json +1 -1
- package/src/components/Shader/Shader.vue +44 -25
- package/src/modules/auth/controllers/middlewares/authJwt.js +4 -0
- package/src/modules/chats/routes/chats.routes.js +21 -17
- package/src/modules/chats/store/chat.store.js +55 -28
- package/src/modules/community/components/blocks/CardBlogpost.vue +1 -1
- package/src/modules/community/components/pages/Blog.vue +1 -1
- package/src/modules/community/components/pages/BlogPost.vue +1 -0
- package/src/modules/community/components/pages/CreateBlogPost.vue +3 -3
- package/src/modules/constructor/components/elements/VideoPlayer.vue +1 -1
- package/src/modules/constructor/components/sections/Constructor.vue +9 -9
- package/src/modules/events/components/pages/EditEvent.vue +1 -1
- package/src/modules/globals/controllers/classes/globals.crud.js +2 -2
- package/src/modules/globals/controllers/classes/globals.websocket.js +29 -21
- package/src/modules/globals/globals.client.js +0 -12
- package/src/modules/globals/views/classes/globals.store.js +119 -31
- package/src/modules/globals/views/classes/globals.websocket.js +46 -146
- package/src/modules/icons/entities/IconMusic.vue +14 -0
- package/src/modules/icons/navigation/IconCheck.vue +31 -0
- package/src/modules/icons/navigation/IconHeart.vue +26 -0
- package/src/modules/icons/navigation/IconPause.vue +31 -0
- package/src/modules/icons/navigation/IconPlay.vue +17 -0
- package/src/modules/icons/navigation/IconRefresh.vue +31 -0
- package/src/modules/icons/navigation/IconShuffle.vue +31 -0
- package/src/modules/icons/navigation/IconVolume.vue +31 -0
- package/src/modules/icons/skeletons/SkeletonBlogpost.vue +2 -2
- package/src/modules/music/components/SidebarMusic.vue +156 -0
- package/src/modules/music/components/cards/AlbumCard.vue +107 -0
- package/src/modules/music/components/cards/ArtistCard.vue +37 -0
- package/src/modules/music/components/cards/PlaylistCard.vue +100 -0
- package/src/modules/music/components/cards/TrackCard.vue +86 -0
- package/src/modules/music/components/forms/PlaylistForm.vue +156 -0
- package/src/modules/music/components/forms/SearchForm.vue +82 -0
- package/src/modules/music/components/forms/UploadForm.vue +313 -0
- package/src/modules/music/components/layouts/MusicLayout.vue +137 -0
- package/src/modules/music/components/lists/AlbumList.vue +25 -0
- package/src/modules/music/components/lists/ArtistList.vue +25 -0
- package/src/modules/music/components/lists/PlaylistList.vue +25 -0
- package/src/modules/music/components/lists/TrackList.vue +175 -0
- package/src/modules/music/components/pages/AlbumDetail.vue +265 -0
- package/src/modules/music/components/pages/ArtistDetail.vue +247 -0
- package/src/modules/music/components/pages/MusicHome.vue +177 -0
- package/src/modules/music/components/pages/MusicLibrary.vue +192 -0
- package/src/modules/music/components/pages/MusicUpload.vue +44 -0
- package/src/modules/music/components/pages/PlaylistDetail.vue +504 -0
- package/src/modules/music/components/pages/SearchResults.vue +397 -0
- package/src/modules/music/components/pages/TrackDetail.vue +143 -0
- package/src/modules/music/components/player/MusicPlayer.vue +202 -0
- package/src/modules/music/components/player/TrackProgress.vue +110 -0
- package/src/modules/music/components/player/VolumeControl.vue +98 -0
- package/src/modules/music/controllers/album.controller.js +98 -0
- package/src/modules/music/controllers/artist.controller.js +111 -0
- package/src/modules/music/controllers/genre.controller.js +71 -0
- package/src/modules/music/controllers/music.controller.js +174 -0
- package/src/modules/music/controllers/playlist.controller.js +182 -0
- package/src/modules/music/controllers/search.controller.js +103 -0
- package/src/modules/music/controllers/stream.controller.js +106 -0
- package/src/modules/music/models/album.model.js +61 -0
- package/src/modules/music/models/artist.model.js +67 -0
- package/src/modules/music/models/genre.model.js +42 -0
- package/src/modules/music/models/play-history.model.js +51 -0
- package/src/modules/music/models/playlist.model.js +69 -0
- package/src/modules/music/models/track.model.js +94 -0
- package/src/modules/music/music.client.js +186 -0
- package/src/modules/music/music.server.js +114 -0
- package/src/modules/music/policies/music.policies.js +84 -0
- package/src/modules/music/router/music.js +77 -0
- package/src/modules/music/routes/album.routes.js +62 -0
- package/src/modules/music/routes/artist.routes.js +67 -0
- package/src/modules/music/routes/genre.routes.js +60 -0
- package/src/modules/music/routes/music.routes.js +145 -0
- package/src/modules/music/routes/playlist.routes.js +99 -0
- package/src/modules/music/routes/search.routes.js +10 -0
- package/src/modules/music/routes/stream.routes.js +38 -0
- package/src/modules/music/store/albums.js +200 -0
- package/src/modules/music/store/artists.js +180 -0
- package/src/modules/music/store/player.js +397 -0
- package/src/modules/music/store/playlists.js +211 -0
- package/src/modules/music/store/search.js +126 -0
- package/src/modules/music/store/tracks.js +230 -0
- package/src/modules/music/websocket/streaming.handler.js +151 -0
- package/src/modules/notifications/controllers/notifications.controller.js +2 -2
- package/src/modules/notifications/notifications.client.js +57 -19
- package/src/modules/notifications/notifications.server.js +3 -1
- package/src/modules/notifications/routes/notifications.routes.js +2 -2
- package/src/modules/notifications/services/notification.service.js +34 -15
- package/src/modules/notifications/services/web-push.service.js +7 -6
- package/src/modules/orders/controllers/orders.controller.js +2 -0
- package/dist/martyrs/node_modules/.pnpm/@capacitor_core@7.2.0/node_modules/@capacitor/core/dist/index.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/@capacitor_core@7.2.0/node_modules/@capacitor/core/dist/index.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/@capacitor_preferences@7.0.1_@capacitor_core@7.2.0/node_modules/@capacitor/preferences/dist/esm/index.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/@capacitor_preferences@7.0.1_@capacitor_core@7.2.0/node_modules/@capacitor/preferences/dist/esm/index.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/@capacitor_preferences@7.0.1_@capacitor_core@7.2.0/node_modules/@capacitor/preferences/dist/esm/web.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/@capacitor_preferences@7.0.1_@capacitor_core@7.2.0/node_modules/@capacitor/preferences/dist/esm/web.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/ParseError.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/ParseError.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/PhoneNumber.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/PhoneNumber.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/constants.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/constants.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/format.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/format.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/RFC3966.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/RFC3966.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/applyInternationalSeparatorStyle.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/applyInternationalSeparatorStyle.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/checkNumberLength.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/checkNumberLength.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/extension/createExtensionPattern.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/extension/createExtensionPattern.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/extension/extractExtension.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/extension/extractExtension.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/extractCountryCallingCode.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/extractCountryCallingCode.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/extractCountryCallingCodeFromInternationalNumberWithoutPlusSign.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/extractCountryCallingCodeFromInternationalNumberWithoutPlusSign.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/extractFormattedPhoneNumberFromPossibleRfc3966NumberUri.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/extractFormattedPhoneNumberFromPossibleRfc3966NumberUri.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/extractNationalNumber.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/extractNationalNumber.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/extractNationalNumberFromPossiblyIncompleteNumber.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/extractNationalNumberFromPossiblyIncompleteNumber.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/extractPhoneContext.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/extractPhoneContext.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/formatNationalNumberUsingFormat.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/formatNationalNumberUsingFormat.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/getCountryByCallingCode.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/getCountryByCallingCode.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/getCountryByNationalNumber.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/getCountryByNationalNumber.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/getIddPrefix.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/getIddPrefix.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/getNumberType.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/getNumberType.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/getPossibleCountriesForNumber.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/getPossibleCountriesForNumber.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/isObject.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/isObject.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/isViablePhoneNumber.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/isViablePhoneNumber.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/matchesEntirely.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/matchesEntirely.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/parseDigits.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/parseDigits.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/stripIddPrefix.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/helpers/stripIddPrefix.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/isPossible.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/isPossible.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/isValid.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/isValid.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/metadata.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/metadata.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/normalizeArguments.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/normalizeArguments.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/parse.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/parse.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/parseIncompletePhoneNumber.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/parseIncompletePhoneNumber.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/parsePhoneNumber.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/parsePhoneNumber.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/parsePhoneNumberWithError_.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/parsePhoneNumberWithError_.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/parsePhoneNumber_.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/parsePhoneNumber_.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/tools/semver-compare.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/es6/tools/semver-compare.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/metadata.min.json.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/metadata.min.json.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/min/exports/parsePhoneNumber.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/min/exports/parsePhoneNumber.js.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/min/exports/withMetadataArgument.cjs.map +0 -1
- package/dist/martyrs/node_modules/.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js/min/exports/withMetadataArgument.js.map +0 -1
- package/dist/martyrs/src/components/Chips/Chips.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Chips/Chips.vue.js.map +0 -1
- package/dist/martyrs/src/components/Dropdown/Dropdown.vue.js.map +0 -1
- package/dist/martyrs/src/components/Popup/Popup.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.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.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.js.map +0 -1
- 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/@vue_shared@3.5.13/node_modules/@vue/shared/dist/shared.esm-bundler.js.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/native.js +0 -6
- package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/native.js.map +0 -1
- 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/rng.js +0 -15
- package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/rng.js.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/stringify.js +0 -11
- package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/stringify.js.map +0 -1
- package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/v4.cjs +0 -21
- 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/uuid@11.1.0/node_modules/uuid/dist/esm-browser/v4.js +0 -21
- package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/v4.js.map +0 -1
- package/src/modules/notifications/notifications2.client.js +0 -256
- package/src/modules/notifications/services/websocket.service.js +0 -100
- /package/dist/martyrs/node_modules/{.pnpm/@capacitor_core@7.2.0/node_modules/@capacitor → @capacitor}/core/dist/index.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/@capacitor_core@7.2.0/node_modules/@capacitor → @capacitor}/core/dist/index.js +0 -0
- /package/dist/{node_modules/.pnpm/@vue_shared@3.5.13 → martyrs}/node_modules/@vue/shared/dist/shared.esm-bundler.cjs +0 -0
- /package/dist/{node_modules/.pnpm/@vue_shared@3.5.13 → martyrs}/node_modules/@vue/shared/dist/shared.esm-bundler.js +0 -0
- /package/dist/{node_modules → martyrs/node_modules}/fast-deep-equal/index.cjs +0 -0
- /package/dist/{node_modules → martyrs/node_modules}/fast-deep-equal/index.cjs.map +0 -0
- /package/dist/{node_modules → martyrs/node_modules}/fast-deep-equal/index.js +0 -0
- /package/dist/{node_modules → martyrs/node_modules}/fast-deep-equal/index.js.map +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/ParseError.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/ParseError.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/PhoneNumber.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/PhoneNumber.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/constants.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/constants.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/format.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/format.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/RFC3966.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/RFC3966.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/applyInternationalSeparatorStyle.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/applyInternationalSeparatorStyle.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/checkNumberLength.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/checkNumberLength.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/extension/createExtensionPattern.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/extension/createExtensionPattern.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/extension/extractExtension.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/extension/extractExtension.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/extractCountryCallingCode.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/extractCountryCallingCode.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/extractCountryCallingCodeFromInternationalNumberWithoutPlusSign.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/extractCountryCallingCodeFromInternationalNumberWithoutPlusSign.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/extractFormattedPhoneNumberFromPossibleRfc3966NumberUri.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/extractFormattedPhoneNumberFromPossibleRfc3966NumberUri.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/extractNationalNumber.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/extractNationalNumber.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/extractNationalNumberFromPossiblyIncompleteNumber.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/extractNationalNumberFromPossiblyIncompleteNumber.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/extractPhoneContext.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/extractPhoneContext.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/formatNationalNumberUsingFormat.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/formatNationalNumberUsingFormat.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/getCountryByCallingCode.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/getCountryByCallingCode.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/getCountryByNationalNumber.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/getCountryByNationalNumber.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/getIddPrefix.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/getIddPrefix.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/getNumberType.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/getNumberType.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/getPossibleCountriesForNumber.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/getPossibleCountriesForNumber.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/isObject.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/isObject.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/isViablePhoneNumber.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/isViablePhoneNumber.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/matchesEntirely.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/matchesEntirely.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/parseDigits.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/parseDigits.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/stripIddPrefix.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/helpers/stripIddPrefix.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/isPossible.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/isPossible.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/isValid.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/isValid.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/metadata.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/metadata.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/normalizeArguments.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/normalizeArguments.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/parse.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/parse.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/parseIncompletePhoneNumber.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/parseIncompletePhoneNumber.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/parsePhoneNumber.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/parsePhoneNumber.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/parsePhoneNumberWithError_.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/parsePhoneNumberWithError_.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/parsePhoneNumber_.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/parsePhoneNumber_.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/tools/semver-compare.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/es6/tools/semver-compare.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/metadata.min.json.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/metadata.min.json.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/min/exports/parsePhoneNumber.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/min/exports/parsePhoneNumber.js +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/min/exports/withMetadataArgument.cjs +0 -0
- /package/dist/martyrs/node_modules/{.pnpm/libphonenumber-js@1.12.6/node_modules/libphonenumber-js → libphonenumber-js}/min/exports/withMetadataArgument.js +0 -0
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
<!-- components/pages/ArtistDetail.vue -->
|
|
2
|
+
<template>
|
|
3
|
+
<div class="artist-detail-page">
|
|
4
|
+
<div v-if="isLoading" class="w-100 h-25r flex-center flex">
|
|
5
|
+
<Loader />
|
|
6
|
+
</div>
|
|
7
|
+
|
|
8
|
+
<div v-else-if="!artist" class="t-center pd-big">
|
|
9
|
+
<h2 class="t-white">Artist not found</h2>
|
|
10
|
+
<p class="t-grey t-medium">The artist you're looking for doesn't exist or has been removed.</p>
|
|
11
|
+
</div>
|
|
12
|
+
|
|
13
|
+
<div v-else>
|
|
14
|
+
<!-- Artist Header with Background -->
|
|
15
|
+
<div class="artist-hero pos-relative mn-b-medium pd-medium">
|
|
16
|
+
<div class="artist-cover pos-absolute pos-t-0 pos-l-0 w-100 h-100" v-if="artist.coverUrl">
|
|
17
|
+
<Media
|
|
18
|
+
:url="artist.coverUrl"
|
|
19
|
+
class="w-100 h-100 object-fit-cover"
|
|
20
|
+
/>
|
|
21
|
+
<div class="overlay pos-absolute pos-t-0 pos-l-0 w-100 h-100"></div>
|
|
22
|
+
</div>
|
|
23
|
+
|
|
24
|
+
<div class="artist-header z-index-1 pos-relative flex flex-v-center gap-medium">
|
|
25
|
+
<div class="artist-photo">
|
|
26
|
+
<Media
|
|
27
|
+
:url="artist.photoUrl || '/assets/placeholder-artist.jpg'"
|
|
28
|
+
class="w-15r h-15r object-fit-cover radius-round shadow-lg"
|
|
29
|
+
/>
|
|
30
|
+
</div>
|
|
31
|
+
|
|
32
|
+
<div class="artist-info">
|
|
33
|
+
<div v-if="artist.isVerified" class="verified-badge t-small t-uppercase t-main mn-b-small">
|
|
34
|
+
<IconVerified class="i-small mn-r-thin" fill="rgb(var(--main))"/>
|
|
35
|
+
Verified Artist
|
|
36
|
+
</div>
|
|
37
|
+
<h1 class="t-white">{{ artist.name }}</h1>
|
|
38
|
+
|
|
39
|
+
<div class="artist-stats mn-t-small t-grey">
|
|
40
|
+
{{ formatFollowersCount(artist.popularity || 0) }} followers
|
|
41
|
+
</div>
|
|
42
|
+
</div>
|
|
43
|
+
</div>
|
|
44
|
+
</div>
|
|
45
|
+
|
|
46
|
+
<!-- Artist Actions -->
|
|
47
|
+
<div class="artist-actions mn-b-medium flex flex-v-center gap-small">
|
|
48
|
+
<Button
|
|
49
|
+
@click="playArtistTracks"
|
|
50
|
+
class="play-button bg-main radius-round pd-small flex-v-center flex gap-small hover-scale-1"
|
|
51
|
+
:showLoader="false"
|
|
52
|
+
:showSucces="false"
|
|
53
|
+
>
|
|
54
|
+
<IconPlay class="i-small" fill="rgb(var(--black))"/>
|
|
55
|
+
<span class="t-black t-medium">Play</span>
|
|
56
|
+
</Button>
|
|
57
|
+
|
|
58
|
+
<Button
|
|
59
|
+
@click="toggleFollow"
|
|
60
|
+
class="follow-button pd-small radius-extra"
|
|
61
|
+
:class="isFollowing ? 'bg-dark-transp-25 t-white br-solid br-white-transp-25' : 'bg-dark-transp-25 t-white'"
|
|
62
|
+
:showLoader="false"
|
|
63
|
+
:showSucces="false"
|
|
64
|
+
>
|
|
65
|
+
{{ isFollowing ? 'Following' : 'Follow' }}
|
|
66
|
+
</Button>
|
|
67
|
+
|
|
68
|
+
<Dropdown class="pos-relative">
|
|
69
|
+
<Button
|
|
70
|
+
@click="showDropdown = !showDropdown"
|
|
71
|
+
class="bg-transparent border-none pd-zero"
|
|
72
|
+
:showLoader="false"
|
|
73
|
+
:showSucces="false"
|
|
74
|
+
>
|
|
75
|
+
<IconEllipsis class="i-medium" fill="rgb(var(--white))"/>
|
|
76
|
+
</Button>
|
|
77
|
+
|
|
78
|
+
<template #content>
|
|
79
|
+
<ul v-if="showDropdown" class="pd-small bg-dark radius-small pos-absolute pos-t-100 pos-r-0 z-index-3 w-max-15r mn-t-thin">
|
|
80
|
+
<li>
|
|
81
|
+
<Button
|
|
82
|
+
@click="copyLink"
|
|
83
|
+
class="bg-transparent border-none pd-thin t-white w-100 t-left hover-bg-dark radius-small"
|
|
84
|
+
:showLoader="false"
|
|
85
|
+
:showSucces="false"
|
|
86
|
+
>
|
|
87
|
+
<span>Copy Link</span>
|
|
88
|
+
</Button>
|
|
89
|
+
</li>
|
|
90
|
+
</ul>
|
|
91
|
+
</template>
|
|
92
|
+
</Dropdown>
|
|
93
|
+
</div>
|
|
94
|
+
|
|
95
|
+
<!-- Popular Tracks -->
|
|
96
|
+
<section class="artist-popular-tracks mn-b-medium">
|
|
97
|
+
<h2 class="t-white mn-b-small">Popular</h2>
|
|
98
|
+
|
|
99
|
+
<TrackList
|
|
100
|
+
:tracks="discography.singles.slice(0, 5)"
|
|
101
|
+
:showAlbum="true"
|
|
102
|
+
:showCover="true"
|
|
103
|
+
class="bg-dark-transp-10 radius-medium o-hidden"
|
|
104
|
+
/>
|
|
105
|
+
</section>
|
|
106
|
+
|
|
107
|
+
<!-- Discography - Albums -->
|
|
108
|
+
<section v-if="discography.albums.length > 0" class="artist-albums mn-b-medium">
|
|
109
|
+
<div class="flex-between flex mn-b-small">
|
|
110
|
+
<h2 class="t-white">Albums</h2>
|
|
111
|
+
</div>
|
|
112
|
+
|
|
113
|
+
<AlbumList :albums="discography.albums" />
|
|
114
|
+
</section>
|
|
115
|
+
|
|
116
|
+
<!-- Singles and EPs -->
|
|
117
|
+
<section v-if="discography.singles.length > 5" class="artist-singles mn-b-medium">
|
|
118
|
+
<div class="flex-between flex mn-b-small">
|
|
119
|
+
<h2 class="t-white">Singles and EPs</h2>
|
|
120
|
+
</div>
|
|
121
|
+
|
|
122
|
+
<div class="singles-grid cols-5 mobile:cols-2 gap-small">
|
|
123
|
+
<div v-for="track in discography.singles.slice(5)" :key="track._id">
|
|
124
|
+
<TrackCard :track="track" />
|
|
125
|
+
</div>
|
|
126
|
+
</div>
|
|
127
|
+
</section>
|
|
128
|
+
|
|
129
|
+
<!-- Artist Bio -->
|
|
130
|
+
<section v-if="artist.bio" class="artist-bio mn-b-medium pd-medium bg-dark-transp-10 radius-medium">
|
|
131
|
+
<h2 class="t-white mn-b-small">About</h2>
|
|
132
|
+
<p class="t-grey">{{ artist.bio }}</p>
|
|
133
|
+
</section>
|
|
134
|
+
|
|
135
|
+
<!-- Related Artists -->
|
|
136
|
+
<section v-if="relatedArtists.length > 0" class="related-artists">
|
|
137
|
+
<h2 class="t-white mn-b-small">Fans Also Like</h2>
|
|
138
|
+
|
|
139
|
+
<ArtistList :artists="relatedArtists" />
|
|
140
|
+
</section>
|
|
141
|
+
</div>
|
|
142
|
+
</div>
|
|
143
|
+
</template>
|
|
144
|
+
|
|
145
|
+
<script setup>
|
|
146
|
+
import { ref, computed, onMounted, watch } from 'vue';
|
|
147
|
+
import { useRoute, useRouter } from 'vue-router';
|
|
148
|
+
import TrackList from '../lists/TrackList.vue';
|
|
149
|
+
import TrackCard from '../cards/TrackCard.vue';
|
|
150
|
+
import AlbumList from '../lists/AlbumList.vue';
|
|
151
|
+
import ArtistList from '../lists/ArtistList.vue';
|
|
152
|
+
import Button from '@martyrs/src/components/Button/Button.vue';
|
|
153
|
+
import Loader from '@martyrs/src/components/Loader/Loader.vue';
|
|
154
|
+
import Media from '@martyrs/src/components/Media/Media.vue';
|
|
155
|
+
import Dropdown from '@martyrs/src/components/Dropdown/Dropdown.vue';
|
|
156
|
+
|
|
157
|
+
// Import icons
|
|
158
|
+
import IconPlay from '@martyrs/src/modules/icons/navigation/IconPlay.vue';
|
|
159
|
+
import IconEllipsis from '@martyrs/src/modules/icons/navigation/IconEllipsis.vue';
|
|
160
|
+
import IconVerified from '@martyrs/src/modules/icons/navigation/IconCheck.vue';
|
|
161
|
+
|
|
162
|
+
// Import store modules
|
|
163
|
+
import { state as artistsState, actions as artistsActions } from '../../store/artists.js';
|
|
164
|
+
import { actions as playerActions } from '../../store/player.js';
|
|
165
|
+
|
|
166
|
+
const route = useRoute();
|
|
167
|
+
const router = useRouter();
|
|
168
|
+
|
|
169
|
+
// State
|
|
170
|
+
const isLoading = ref(true);
|
|
171
|
+
const isFollowing = ref(false);
|
|
172
|
+
const showDropdown = ref(false);
|
|
173
|
+
|
|
174
|
+
// Computed properties
|
|
175
|
+
const artist = computed(() => artistsState.currentArtist);
|
|
176
|
+
const discography = computed(() => artistsState.discography);
|
|
177
|
+
const relatedArtists = computed(() => artistsState.relatedArtists);
|
|
178
|
+
|
|
179
|
+
// Methods
|
|
180
|
+
const formatFollowersCount = (count) => {
|
|
181
|
+
if (count >= 1000000) {
|
|
182
|
+
return `${(count / 1000000).toFixed(1)}M`;
|
|
183
|
+
} else if (count >= 1000) {
|
|
184
|
+
return `${(count / 1000).toFixed(1)}K`;
|
|
185
|
+
}
|
|
186
|
+
return count.toString();
|
|
187
|
+
};
|
|
188
|
+
|
|
189
|
+
const playArtistTracks = () => {
|
|
190
|
+
const tracks = [
|
|
191
|
+
...discography.value.singles,
|
|
192
|
+
...discography.value.albums.reduce((acc, album) => {
|
|
193
|
+
// In a real app, you'd first load the album tracks here
|
|
194
|
+
return acc;
|
|
195
|
+
}, [])
|
|
196
|
+
];
|
|
197
|
+
|
|
198
|
+
if (tracks.length > 0) {
|
|
199
|
+
playerActions.setQueue(tracks);
|
|
200
|
+
}
|
|
201
|
+
};
|
|
202
|
+
|
|
203
|
+
const toggleFollow = () => {
|
|
204
|
+
isFollowing.value = !isFollowing.value;
|
|
205
|
+
// Implement follow artist logic here
|
|
206
|
+
};
|
|
207
|
+
|
|
208
|
+
const copyLink = () => {
|
|
209
|
+
const url = window.location.href;
|
|
210
|
+
navigator.clipboard.writeText(url).then(() => {
|
|
211
|
+
// Could show a success notification here
|
|
212
|
+
showDropdown.value = false;
|
|
213
|
+
});
|
|
214
|
+
};
|
|
215
|
+
|
|
216
|
+
const fetchArtistData = async () => {
|
|
217
|
+
isLoading.value = true;
|
|
218
|
+
|
|
219
|
+
try {
|
|
220
|
+
// Fetch artist data
|
|
221
|
+
await artistsActions.fetchArtistByUrl(route.params.url);
|
|
222
|
+
} catch (error) {
|
|
223
|
+
console.error('Error fetching artist data:', error);
|
|
224
|
+
} finally {
|
|
225
|
+
isLoading.value = false;
|
|
226
|
+
}
|
|
227
|
+
};
|
|
228
|
+
|
|
229
|
+
// Fetch data when component mounts or URL changes
|
|
230
|
+
onMounted(fetchArtistData);
|
|
231
|
+
|
|
232
|
+
watch(() => route.params.url, (newUrl) => {
|
|
233
|
+
if (newUrl) {
|
|
234
|
+
fetchArtistData();
|
|
235
|
+
}
|
|
236
|
+
});
|
|
237
|
+
</script>
|
|
238
|
+
|
|
239
|
+
<style scoped>
|
|
240
|
+
.artist-hero {
|
|
241
|
+
min-height: 20rem;
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
.overlay {
|
|
245
|
+
background: linear-gradient(transparent 0%, rgba(0, 0, 0, 0.8) 100%);
|
|
246
|
+
}
|
|
247
|
+
</style>
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
<!-- components/pages/MusicHome.vue -->
|
|
2
|
+
<template>
|
|
3
|
+
<div class="music-home-page">
|
|
4
|
+
<!-- Hero Section -->
|
|
5
|
+
<section class="bg-gradient-dark pd-medium radius-medium mn-b-medium">
|
|
6
|
+
<h1 class="t-white mn-b-small">Welcome to Music</h1>
|
|
7
|
+
<p class="t-grey t-medium">Discover new tracks, albums, and playlists</p>
|
|
8
|
+
</section>
|
|
9
|
+
|
|
10
|
+
<!-- Featured Playlists Section -->
|
|
11
|
+
<section class="mn-b-medium">
|
|
12
|
+
<div class="flex-between flex mn-b-small">
|
|
13
|
+
<h2 class="t-white">Featured Playlists</h2>
|
|
14
|
+
<router-link :to="{ path: '/music/playlists' }" class="t-main t-small hover-opacity">See all</router-link>
|
|
15
|
+
</div>
|
|
16
|
+
|
|
17
|
+
<Feed
|
|
18
|
+
v-model:items="featuredPlaylists"
|
|
19
|
+
:isLoading="loadingFeatured"
|
|
20
|
+
:showLoadMore="false"
|
|
21
|
+
:skeleton="{
|
|
22
|
+
structure: [
|
|
23
|
+
{ block: 'square', size: 'large', rounded: false },
|
|
24
|
+
{ block: 'text', size: 'medium' },
|
|
25
|
+
{ block: 'text', size: 'small' }
|
|
26
|
+
],
|
|
27
|
+
horizontal: false
|
|
28
|
+
}"
|
|
29
|
+
class="cols-5 mobile:cols-2 gap-small"
|
|
30
|
+
>
|
|
31
|
+
<template #default="{ items }">
|
|
32
|
+
<li v-for="playlist in items" :key="playlist._id">
|
|
33
|
+
<PlaylistCard :playlist="playlist" class="hover-scale-1 transition-cubic-in-out" />
|
|
34
|
+
</li>
|
|
35
|
+
</template>
|
|
36
|
+
</Feed>
|
|
37
|
+
</section>
|
|
38
|
+
|
|
39
|
+
<!-- New Releases Section -->
|
|
40
|
+
<section class="mn-b-medium">
|
|
41
|
+
<div class="flex-between flex mn-b-small">
|
|
42
|
+
<h2 class="t-white">New Releases</h2>
|
|
43
|
+
<router-link :to="{ path: '/music/albums' }" class="t-main t-small hover-opacity">See all</router-link>
|
|
44
|
+
</div>
|
|
45
|
+
|
|
46
|
+
<Feed
|
|
47
|
+
v-model:items="recentAlbums"
|
|
48
|
+
:isLoading="loadingRecentAlbums"
|
|
49
|
+
:showLoadMore="false"
|
|
50
|
+
:skeleton="{
|
|
51
|
+
structure: [
|
|
52
|
+
{ block: 'square', size: 'large', rounded: false },
|
|
53
|
+
{ block: 'text', size: 'medium' },
|
|
54
|
+
{ block: 'text', size: 'small' }
|
|
55
|
+
],
|
|
56
|
+
horizontal: false
|
|
57
|
+
}"
|
|
58
|
+
class="cols-5 mobile:cols-2 gap-small"
|
|
59
|
+
>
|
|
60
|
+
<template #default="{ items }">
|
|
61
|
+
<li v-for="album in items" :key="album._id">
|
|
62
|
+
<AlbumCard :album="album" class="hover-scale-1 transition-cubic-in-out" />
|
|
63
|
+
</li>
|
|
64
|
+
</template>
|
|
65
|
+
</Feed>
|
|
66
|
+
</section>
|
|
67
|
+
|
|
68
|
+
<!-- Popular Tracks Section -->
|
|
69
|
+
<section class="mn-b-medium">
|
|
70
|
+
<div class="flex-between flex mn-b-small">
|
|
71
|
+
<h2 class="t-white">Popular Tracks</h2>
|
|
72
|
+
<router-link :to="{ path: '/music/tracks' }" class="t-main t-small hover-opacity">See all</router-link>
|
|
73
|
+
</div>
|
|
74
|
+
|
|
75
|
+
<Feed
|
|
76
|
+
v-model:items="popularTracks"
|
|
77
|
+
:isLoading="loadingPopularTracks"
|
|
78
|
+
:showLoadMore="false"
|
|
79
|
+
:skeleton="{
|
|
80
|
+
structure: [
|
|
81
|
+
{ block: 'text', size: 'medium' },
|
|
82
|
+
{ block: 'text', size: 'small' }
|
|
83
|
+
],
|
|
84
|
+
horizontal: true
|
|
85
|
+
}"
|
|
86
|
+
>
|
|
87
|
+
<template #default="{ items }">
|
|
88
|
+
<TrackList
|
|
89
|
+
:tracks="items"
|
|
90
|
+
:showAlbum="true"
|
|
91
|
+
:showCover="true"
|
|
92
|
+
class="bg-dark-transp-10 radius-medium o-hidden"
|
|
93
|
+
/>
|
|
94
|
+
</template>
|
|
95
|
+
</Feed>
|
|
96
|
+
</section>
|
|
97
|
+
|
|
98
|
+
<!-- Top Artists Section -->
|
|
99
|
+
<section>
|
|
100
|
+
<div class="flex-between flex mn-b-small">
|
|
101
|
+
<h2 class="t-white">Top Artists</h2>
|
|
102
|
+
<router-link :to="{ path: '/music/artists' }" class="t-main t-small hover-opacity">See all</router-link>
|
|
103
|
+
</div>
|
|
104
|
+
|
|
105
|
+
<Feed
|
|
106
|
+
v-model:items="topArtists"
|
|
107
|
+
:isLoading="loadingTopArtists"
|
|
108
|
+
:showLoadMore="false"
|
|
109
|
+
:skeleton="{
|
|
110
|
+
structure: [
|
|
111
|
+
{ block: 'circle', size: 'large' },
|
|
112
|
+
{ block: 'text', size: 'medium' }
|
|
113
|
+
],
|
|
114
|
+
horizontal: false
|
|
115
|
+
}"
|
|
116
|
+
class="cols-6 mobile:cols-3 gap-small"
|
|
117
|
+
>
|
|
118
|
+
<template #default="{ items }">
|
|
119
|
+
<li v-for="artist in items" :key="artist._id">
|
|
120
|
+
<ArtistCard :artist="artist" class="hover-scale-1 transition-cubic-in-out" />
|
|
121
|
+
</li>
|
|
122
|
+
</template>
|
|
123
|
+
</Feed>
|
|
124
|
+
</section>
|
|
125
|
+
</div>
|
|
126
|
+
</template>
|
|
127
|
+
|
|
128
|
+
<script setup>
|
|
129
|
+
import { ref, onMounted, computed } from 'vue';
|
|
130
|
+
import Feed from '@martyrs/src/components/Feed/Feed.vue';
|
|
131
|
+
import PlaylistCard from '../cards/PlaylistCard.vue';
|
|
132
|
+
import AlbumCard from '../cards/AlbumCard.vue';
|
|
133
|
+
import ArtistCard from '../cards/ArtistCard.vue';
|
|
134
|
+
import TrackList from '../lists/TrackList.vue';
|
|
135
|
+
|
|
136
|
+
// Store imports
|
|
137
|
+
import { state as playlistsState, actions as playlistsActions } from '../../store/playlists.js';
|
|
138
|
+
import { state as albumsState, actions as albumsActions } from '../../store/albums.js';
|
|
139
|
+
import { state as tracksState, actions as tracksActions } from '../../store/tracks.js';
|
|
140
|
+
import { state as artistsState, actions as artistsActions } from '../../store/artists.js';
|
|
141
|
+
|
|
142
|
+
// Computed properties
|
|
143
|
+
const featuredPlaylists = computed(() => playlistsState.featuredPlaylists);
|
|
144
|
+
const recentAlbums = computed(() => albumsState.albums);
|
|
145
|
+
const popularTracks = computed(() => tracksState.popular);
|
|
146
|
+
const topArtists = computed(() => artistsState.topArtists);
|
|
147
|
+
|
|
148
|
+
// Loading states
|
|
149
|
+
const loadingFeatured = computed(() => playlistsState.loadingFeatured);
|
|
150
|
+
const loadingRecentAlbums = computed(() => albumsState.isLoading);
|
|
151
|
+
const loadingPopularTracks = computed(() => tracksState.loadingPopular);
|
|
152
|
+
const loadingTopArtists = computed(() => artistsState.loadingTopArtists);
|
|
153
|
+
|
|
154
|
+
onMounted(async () => {
|
|
155
|
+
// Fetch featured playlists
|
|
156
|
+
playlistsActions.fetchFeaturedPlaylists(5);
|
|
157
|
+
|
|
158
|
+
// Fetch recent albums
|
|
159
|
+
albumsActions.fetchAlbums({
|
|
160
|
+
limit: 5,
|
|
161
|
+
sortParam: 'releaseDate',
|
|
162
|
+
sortOrder: 'desc'
|
|
163
|
+
});
|
|
164
|
+
|
|
165
|
+
// Fetch popular tracks
|
|
166
|
+
tracksActions.fetchPopularTracks(10);
|
|
167
|
+
|
|
168
|
+
// Fetch top artists
|
|
169
|
+
artistsActions.fetchTopArtists(6);
|
|
170
|
+
});
|
|
171
|
+
</script>
|
|
172
|
+
|
|
173
|
+
<style scoped>
|
|
174
|
+
.bg-gradient-dark {
|
|
175
|
+
background: linear-gradient(to bottom, rgba(var(--dark), 0.8), rgba(var(--black), 0.9));
|
|
176
|
+
}
|
|
177
|
+
</style>
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
<!-- components/pages/MusicLibrary.vue -->
|
|
2
|
+
<template>
|
|
3
|
+
<div class="music-library-page">
|
|
4
|
+
<h1 class="t-white mn-b-medium">Your Library</h1>
|
|
5
|
+
|
|
6
|
+
<!-- Filter Tabs -->
|
|
7
|
+
<div class="library-tabs mn-b-medium">
|
|
8
|
+
<div class="flex gap-small">
|
|
9
|
+
<Button
|
|
10
|
+
v-for="tab in tabs"
|
|
11
|
+
:key="tab.id"
|
|
12
|
+
@click="activeTab = tab.id"
|
|
13
|
+
:class="[
|
|
14
|
+
activeTab === tab.id ? 'bg-white t-black' : 'bg-dark-transp-50 t-white hover-bg-dark',
|
|
15
|
+
]"
|
|
16
|
+
class="radius-extra pd-small"
|
|
17
|
+
:showLoader="false"
|
|
18
|
+
:showSucces="false"
|
|
19
|
+
>
|
|
20
|
+
{{ tab.label }}
|
|
21
|
+
</Button>
|
|
22
|
+
</div>
|
|
23
|
+
</div>
|
|
24
|
+
|
|
25
|
+
<!-- Content based on active tab -->
|
|
26
|
+
<div v-if="isLoading" class="flex-center flex pd-big">
|
|
27
|
+
<Loader />
|
|
28
|
+
</div>
|
|
29
|
+
|
|
30
|
+
<!-- Playlists Tab -->
|
|
31
|
+
<div v-else-if="activeTab === 'playlists'" class="playlists-tab">
|
|
32
|
+
<div class="flex-between flex mn-b-small">
|
|
33
|
+
<h2 class="t-white">Your Playlists</h2>
|
|
34
|
+
<Button
|
|
35
|
+
@click="showCreatePlaylistModal = true"
|
|
36
|
+
class="bg-main t-white radius-small pd-small hover-scale-1"
|
|
37
|
+
:showLoader="false"
|
|
38
|
+
:showSucces="false"
|
|
39
|
+
>
|
|
40
|
+
Create Playlist
|
|
41
|
+
</Button>
|
|
42
|
+
</div>
|
|
43
|
+
|
|
44
|
+
<div v-if="userPlaylists.length === 0" class="empty-state t-center pd-big bg-dark-transp-10 radius-medium">
|
|
45
|
+
<h3 class="t-white mn-b-small">No playlists yet</h3>
|
|
46
|
+
<p class="t-grey t-medium">Create your first playlist to see it here</p>
|
|
47
|
+
</div>
|
|
48
|
+
|
|
49
|
+
<PlaylistList v-else :playlists="userPlaylists" />
|
|
50
|
+
</div>
|
|
51
|
+
|
|
52
|
+
<!-- Albums Tab -->
|
|
53
|
+
<div v-else-if="activeTab === 'albums'" class="albums-tab">
|
|
54
|
+
<div class="flex-between flex mn-b-small">
|
|
55
|
+
<h2 class="t-white">Your Albums</h2>
|
|
56
|
+
</div>
|
|
57
|
+
|
|
58
|
+
<div v-if="userAlbums.length === 0" class="empty-state t-center pd-big bg-dark-transp-10 radius-medium">
|
|
59
|
+
<h3 class="t-white mn-b-small">No albums yet</h3>
|
|
60
|
+
<p class="t-grey t-medium">Upload your first album to see it here</p>
|
|
61
|
+
</div>
|
|
62
|
+
|
|
63
|
+
<AlbumList v-else :albums="userAlbums" />
|
|
64
|
+
</div>
|
|
65
|
+
|
|
66
|
+
<!-- Artists Tab -->
|
|
67
|
+
<div v-else-if="activeTab === 'artists'" class="artists-tab">
|
|
68
|
+
<div class="flex-between flex mn-b-small">
|
|
69
|
+
<h2 class="t-white">Your Artists</h2>
|
|
70
|
+
</div>
|
|
71
|
+
|
|
72
|
+
<div v-if="userArtists.length === 0" class="empty-state t-center pd-big bg-dark-transp-10 radius-medium">
|
|
73
|
+
<h3 class="t-white mn-b-small">No artists yet</h3>
|
|
74
|
+
<p class="t-grey t-medium">Create your first artist profile to see it here</p>
|
|
75
|
+
</div>
|
|
76
|
+
|
|
77
|
+
<ArtistList v-else :artists="userArtists" />
|
|
78
|
+
</div>
|
|
79
|
+
|
|
80
|
+
<!-- Tracks Tab -->
|
|
81
|
+
<div v-else-if="activeTab === 'tracks'" class="tracks-tab">
|
|
82
|
+
<div class="flex-between flex mn-b-small">
|
|
83
|
+
<h2 class="t-white">Your Tracks</h2>
|
|
84
|
+
<Button
|
|
85
|
+
@click="$router.push({ name: 'music-upload' })"
|
|
86
|
+
class="bg-main t-white radius-small pd-small hover-scale-1"
|
|
87
|
+
:showLoader="false"
|
|
88
|
+
:showSucces="false"
|
|
89
|
+
>
|
|
90
|
+
Upload Track
|
|
91
|
+
</Button>
|
|
92
|
+
</div>
|
|
93
|
+
|
|
94
|
+
<div v-if="userTracks.length === 0" class="empty-state t-center pd-big bg-dark-transp-10 radius-medium">
|
|
95
|
+
<h3 class="t-white mn-b-small">No tracks yet</h3>
|
|
96
|
+
<p class="t-grey t-medium">Upload your first track to see it here</p>
|
|
97
|
+
</div>
|
|
98
|
+
|
|
99
|
+
<TrackList
|
|
100
|
+
v-else
|
|
101
|
+
:tracks="userTracks"
|
|
102
|
+
:showAlbum="true"
|
|
103
|
+
:showCover="true"
|
|
104
|
+
class="bg-dark-transp-10 radius-medium o-hidden"
|
|
105
|
+
/>
|
|
106
|
+
</div>
|
|
107
|
+
|
|
108
|
+
<!-- Create Playlist Modal -->
|
|
109
|
+
<Popup
|
|
110
|
+
v-if="showCreatePlaylistModal"
|
|
111
|
+
@close-popup="showCreatePlaylistModal = false"
|
|
112
|
+
class="bg-dark pd-small w-m-25r radius-medium t-white"
|
|
113
|
+
>
|
|
114
|
+
<h3 class="mn-b-medium">Create Playlist</h3>
|
|
115
|
+
<PlaylistForm @created="onPlaylistCreated" @cancel="showCreatePlaylistModal = false" />
|
|
116
|
+
</Popup>
|
|
117
|
+
</div>
|
|
118
|
+
</template>
|
|
119
|
+
|
|
120
|
+
<script setup>
|
|
121
|
+
import { ref, onMounted } from 'vue';
|
|
122
|
+
import { useRouter } from 'vue-router';
|
|
123
|
+
import TrackList from '../lists/TrackList.vue';
|
|
124
|
+
import AlbumList from '../lists/AlbumList.vue';
|
|
125
|
+
import PlaylistList from '../lists/PlaylistList.vue';
|
|
126
|
+
import ArtistList from '../lists/ArtistList.vue';
|
|
127
|
+
import Button from '@martyrs/src/components/Button/Button.vue';
|
|
128
|
+
import Loader from '@martyrs/src/components/Loader/Loader.vue';
|
|
129
|
+
import Popup from '@martyrs/src/components/Popup/Popup.vue';
|
|
130
|
+
import PlaylistForm from '../forms/PlaylistForm.vue';
|
|
131
|
+
|
|
132
|
+
// Import store modules
|
|
133
|
+
import { state as authState } from '@martyrs/src/modules/auth/views/store/auth.js';
|
|
134
|
+
import { state as playlistsState, actions as playlistsActions } from '../../store/playlists.js';
|
|
135
|
+
import { state as albumsState, actions as albumsActions } from '../../store/albums.js';
|
|
136
|
+
import { state as artistsState, actions as artistsActions } from '../../store/artists.js';
|
|
137
|
+
import { state as tracksState, actions as tracksActions } from '../../store/tracks.js';
|
|
138
|
+
|
|
139
|
+
const router = useRouter();
|
|
140
|
+
|
|
141
|
+
// State
|
|
142
|
+
const isLoading = ref(true);
|
|
143
|
+
const activeTab = ref('playlists');
|
|
144
|
+
const showCreatePlaylistModal = ref(false);
|
|
145
|
+
|
|
146
|
+
// Tabs configuration
|
|
147
|
+
const tabs = [
|
|
148
|
+
{ id: 'playlists', label: 'Playlists' },
|
|
149
|
+
{ id: 'albums', label: 'Albums' },
|
|
150
|
+
{ id: 'artists', label: 'Artists' },
|
|
151
|
+
{ id: 'tracks', label: 'Tracks' }
|
|
152
|
+
];
|
|
153
|
+
|
|
154
|
+
// Computed
|
|
155
|
+
const userPlaylists = ref([]);
|
|
156
|
+
const userAlbums = ref([]);
|
|
157
|
+
const userArtists = ref([]);
|
|
158
|
+
const userTracks = ref([]);
|
|
159
|
+
|
|
160
|
+
// Methods
|
|
161
|
+
const fetchLibraryData = async () => {
|
|
162
|
+
isLoading.value = true;
|
|
163
|
+
|
|
164
|
+
try {
|
|
165
|
+
if (!authState.user || !authState.user._id) {
|
|
166
|
+
router.push({ name: 'Sign In', query: { redirect: router.currentRoute.value.fullPath } });
|
|
167
|
+
return;
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
// Fetch user's content
|
|
171
|
+
await Promise.all([
|
|
172
|
+
// playlistsActions.fetchUserPlaylists().then(playlists => userPlaylists.value = playlists || []),
|
|
173
|
+
// albumsActions.fetchUserAlbums(authState.user._id).then(albums => userAlbums.value = albums || []),
|
|
174
|
+
// artistsActions.fetchUserArtists(authState.user._id).then(artists => userArtists.value = artists || []),
|
|
175
|
+
tracksActions.fetchUserTracks(authState.user._id).then(tracks => userTracks.value = tracks || [])
|
|
176
|
+
]);
|
|
177
|
+
} catch (error) {
|
|
178
|
+
console.error('Error fetching library data:', error);
|
|
179
|
+
} finally {
|
|
180
|
+
isLoading.value = false;
|
|
181
|
+
}
|
|
182
|
+
};
|
|
183
|
+
|
|
184
|
+
const onPlaylistCreated = (playlist) => {
|
|
185
|
+
userPlaylists.value.unshift(playlist);
|
|
186
|
+
showCreatePlaylistModal.value = false;
|
|
187
|
+
router.push({ name: 'playlist-detail', params: { url: playlist.url } });
|
|
188
|
+
};
|
|
189
|
+
|
|
190
|
+
// Fetch library data when component mounts
|
|
191
|
+
onMounted(fetchLibraryData);
|
|
192
|
+
</script>
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
<!-- components/pages/MusicUpload.vue -->
|
|
2
|
+
<template>
|
|
3
|
+
<div class="music-upload-page">
|
|
4
|
+
<h1 class="t-white mn-b-medium">Upload Music</h1>
|
|
5
|
+
|
|
6
|
+
<div class="upload-container bg-dark-transp-10 radius-medium pd-medium">
|
|
7
|
+
<div v-if="!authState.access.status" class="t-center pd-big">
|
|
8
|
+
<h2 class="t-white mn-b-small">Sign in to upload</h2>
|
|
9
|
+
<p class="t-grey t-medium mn-b-medium">You need to be signed in to upload tracks</p>
|
|
10
|
+
<Button
|
|
11
|
+
@click="$router.push({ name: 'Sign In', query: { redirect: $route.fullPath } })"
|
|
12
|
+
class="bg-main t-white radius-small pd-small hover-scale-1"
|
|
13
|
+
:showLoader="false"
|
|
14
|
+
:showSucces="false"
|
|
15
|
+
>
|
|
16
|
+
Sign In
|
|
17
|
+
</Button>
|
|
18
|
+
</div>
|
|
19
|
+
|
|
20
|
+
<div v-else>
|
|
21
|
+
<h2 class="t-white mn-b-medium">Upload a Track</h2>
|
|
22
|
+
|
|
23
|
+
<UploadForm @uploaded="onTrackUploaded" />
|
|
24
|
+
</div>
|
|
25
|
+
</div>
|
|
26
|
+
</div>
|
|
27
|
+
</template>
|
|
28
|
+
|
|
29
|
+
<script setup>
|
|
30
|
+
import { ref } from 'vue';
|
|
31
|
+
import { useRouter } from 'vue-router';
|
|
32
|
+
import Button from '@martyrs/src/components/Button/Button.vue';
|
|
33
|
+
import UploadForm from '../forms/UploadForm.vue';
|
|
34
|
+
|
|
35
|
+
// Import auth store
|
|
36
|
+
import { state as authState } from '@martyrs/src/modules/auth/views/store/auth.js';
|
|
37
|
+
|
|
38
|
+
const router = useRouter();
|
|
39
|
+
|
|
40
|
+
const onTrackUploaded = (track) => {
|
|
41
|
+
// Navigate to the uploaded track's detail page
|
|
42
|
+
router.push({ name: 'track-detail', params: { url: track.url } });
|
|
43
|
+
};
|
|
44
|
+
</script>
|