@ozdao/martyrs 0.2.526 → 0.2.527
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/_virtual/dayjs.min.cjs +1 -1
- package/dist/_virtual/dayjs.min.js +1 -1
- package/dist/_virtual/index.cjs +4 -4
- package/dist/_virtual/index.js +4 -4
- package/dist/_virtual/index2.cjs +4 -4
- package/dist/_virtual/index2.js +4 -4
- package/dist/_virtual/weekOfYear.cjs +1 -1
- package/dist/_virtual/weekOfYear.js +1 -1
- package/dist/builder.cjs +618 -972
- package/dist/builder.js +619 -973
- package/dist/main-BNqX4N59.cjs +11 -0
- package/dist/{main-Bk4xq-K0.js → main-DFvn9trs.js} +1293 -1287
- package/dist/martyrs/src/components/Address/Address.vue.cjs +1 -1
- package/dist/martyrs/src/components/Address/Address.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/EditImages/EditImages.vue2.cjs +1 -1
- package/dist/martyrs/src/components/EditImages/EditImages.vue2.js +1 -1
- package/dist/martyrs/src/components/Feed/{Feed.vue.cjs → Feed.vue2.cjs} +2 -2
- package/dist/martyrs/src/components/Feed/Feed.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/Feed/{Feed.vue.js → Feed.vue2.js} +2 -2
- package/dist/martyrs/src/components/Feed/{Feed.vue.cjs.map → Feed.vue2.js.map} +1 -1
- package/dist/martyrs/src/components/Field/{Field.vue.cjs → Field.vue2.cjs} +2 -2
- package/dist/martyrs/src/components/Field/Field.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/Field/{Field.vue.js → Field.vue2.js} +2 -2
- package/dist/martyrs/src/components/Field/{Field.vue.cjs.map → Field.vue2.js.map} +1 -1
- package/dist/martyrs/src/components/FieldBig/FieldBig.vue.cjs +1 -1
- package/dist/martyrs/src/components/FieldBig/FieldBig.vue.js +1 -1
- package/dist/martyrs/src/components/FieldTags/{BlockTags.vue.cjs → BlockTags.vue2.cjs} +2 -2
- package/dist/martyrs/src/components/FieldTags/BlockTags.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/FieldTags/{BlockTags.vue.js → BlockTags.vue2.js} +2 -2
- package/dist/martyrs/src/components/FieldTags/{BlockTags.vue.cjs.map → BlockTags.vue2.js.map} +1 -1
- package/dist/martyrs/src/components/FieldTags/FieldTags.vue.cjs +1 -1
- package/dist/martyrs/src/components/FieldTags/FieldTags.vue.js +1 -1
- package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue.cjs +1 -1
- package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue.js +1 -1
- package/dist/martyrs/src/components/Map/Map.vue.cjs +1 -1
- package/dist/martyrs/src/components/Map/Map.vue.js +1 -1
- package/dist/martyrs/src/components/Menu/{Menu.vue2.cjs → Menu.vue.cjs} +2 -2
- package/dist/martyrs/src/components/Menu/Menu.vue.cjs.map +1 -0
- package/dist/martyrs/src/components/Menu/{Menu.vue2.js → Menu.vue.js} +2 -2
- package/dist/martyrs/src/components/Menu/Menu.vue.js.map +1 -0
- package/dist/martyrs/src/components/Select/{Select.vue2.cjs → Select.vue.cjs} +2 -2
- package/dist/martyrs/src/components/Select/{Select.vue2.js.map → Select.vue.cjs.map} +1 -1
- package/dist/martyrs/src/components/Select/{Select.vue2.js → Select.vue.js} +2 -2
- package/dist/martyrs/src/components/Select/Select.vue.js.map +1 -0
- package/dist/martyrs/src/components/Tree/Tree.vue.cjs +1 -1
- package/dist/martyrs/src/components/Tree/Tree.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/auth.client.cjs +32 -30
- package/dist/martyrs/src/modules/auth/auth.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/auth.client.js +30 -28
- package/dist/martyrs/src/modules/auth/auth.client.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.cjs +1 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js +1 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs +1 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +1 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/middlewares/ownership.validation.cjs +0 -1
- package/dist/martyrs/src/modules/auth/views/middlewares/ownership.validation.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/middlewares/ownership.validation.js +0 -1
- package/dist/martyrs/src/modules/auth/views/middlewares/ownership.validation.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/store/auth.cjs +2 -0
- package/dist/martyrs/src/modules/auth/views/store/auth.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/store/auth.js +2 -0
- package/dist/martyrs/src/modules/auth/views/store/auth.js.map +1 -1
- package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.cjs +1 -2
- package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.js +1 -2
- package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.js.map +1 -1
- package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.cjs +0 -2
- package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.js +0 -2
- package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.js.map +1 -1
- package/dist/martyrs/src/modules/chats/store/chat.store.js +1 -1
- package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.cjs +1 -1
- package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.js +1 -1
- package/dist/martyrs/src/modules/community/components/layouts/Community.vue.cjs +2 -2
- package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js +2 -2
- package/dist/martyrs/src/modules/community/components/pages/Blog.vue.cjs +1 -1
- package/dist/martyrs/src/modules/community/components/pages/Blog.vue.js +1 -1
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs +2 -4
- 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 +2 -4
- 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.js +4 -4
- package/dist/martyrs/src/modules/community/components/pages/Posts.vue.cjs +1 -1
- package/dist/martyrs/src/modules/community/components/pages/Posts.vue.js +1 -1
- package/dist/martyrs/src/modules/community/router/blogposts.cjs +4 -2
- package/dist/martyrs/src/modules/community/router/blogposts.cjs.map +1 -1
- package/dist/martyrs/src/modules/community/router/blogposts.js +4 -2
- package/dist/martyrs/src/modules/community/router/blogposts.js.map +1 -1
- package/dist/martyrs/src/modules/constructor/components/elements/Card.vue.cjs +1 -1
- package/dist/martyrs/src/modules/constructor/components/elements/Card.vue.js +1 -1
- package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.cjs +1 -1
- package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.cjs +1 -2
- package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.js +1 -2
- package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.js.map +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.cjs +0 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.js +0 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.js.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs +4 -5
- 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 +4 -5
- 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 +2 -3
- package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +2 -3
- package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs +4 -5
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +4 -5
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.js.map +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/pages/EventsBackoffice.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EventsSearch.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EventsSearch.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/sections/FeaturedEvents.vue.cjs +0 -1
- package/dist/martyrs/src/modules/events/components/sections/FeaturedEvents.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/components/sections/FeaturedEvents.vue.js +0 -1
- package/dist/martyrs/src/modules/events/components/sections/FeaturedEvents.vue.js.map +1 -1
- package/dist/martyrs/src/modules/events/router/events.cjs +7 -7
- package/dist/martyrs/src/modules/events/router/events.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/router/events.js +7 -7
- package/dist/martyrs/src/modules/events/router/events.js.map +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 +5 -6
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +5 -6
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js.map +1 -1
- package/dist/martyrs/src/modules/gallery/router/gallery.router.cjs +1 -1
- package/dist/martyrs/src/modules/gallery/router/gallery.router.cjs.map +1 -1
- package/dist/martyrs/src/modules/gallery/router/gallery.router.js +1 -1
- package/dist/martyrs/src/modules/gallery/router/gallery.router.js.map +1 -1
- package/dist/martyrs/src/modules/globals/globals.client.cjs +21 -38
- package/dist/martyrs/src/modules/globals/globals.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/globals.client.js +26 -43
- package/dist/martyrs/src/modules/globals/globals.client.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/classes/globals.i18n.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/classes/globals.i18n.js +1 -1
- package/dist/martyrs/src/modules/globals/views/classes/module-registry.cjs +156 -0
- package/dist/martyrs/src/modules/globals/views/classes/module-registry.cjs.map +1 -0
- package/dist/martyrs/src/modules/globals/views/classes/module-registry.js +156 -0
- package/dist/martyrs/src/modules/globals/views/classes/module-registry.js.map +1 -0
- package/dist/martyrs/src/modules/globals/views/classes/store.cjs +24 -7
- package/dist/martyrs/src/modules/globals/views/classes/store.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/classes/store.js +24 -7
- package/dist/martyrs/src/modules/globals/views/classes/store.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/BlockMultiselect.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/BlockMultiselect.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/BlockSearch.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/BlockSearch.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +0 -2
- package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js +0 -2
- package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/layouts/App.vue.cjs +2 -3
- package/dist/martyrs/src/modules/globals/views/components/layouts/App.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/layouts/App.vue.js +2 -3
- package/dist/martyrs/src/modules/globals/views/components/layouts/App.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs +5 -8
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js +5 -8
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Footer.vue.js +2 -2
- package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/components/sections/Filters.vue2.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/sections/Filters.vue2.js +1 -1
- package/dist/martyrs/src/modules/globals/views/components/sections/Walkthrough.vue.cjs +44 -45
- package/dist/martyrs/src/modules/globals/views/components/sections/Walkthrough.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/sections/Walkthrough.vue.js +44 -45
- package/dist/martyrs/src/modules/globals/views/components/sections/Walkthrough.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/plugins/alert.plugin.cjs +4 -2
- package/dist/martyrs/src/modules/globals/views/plugins/alert.plugin.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/plugins/alert.plugin.js +5 -3
- package/dist/martyrs/src/modules/globals/views/plugins/alert.plugin.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/plugins/date-picker.plugin.cjs +4 -2
- package/dist/martyrs/src/modules/globals/views/plugins/date-picker.plugin.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/plugins/date-picker.plugin.js +5 -3
- package/dist/martyrs/src/modules/globals/views/plugins/date-picker.plugin.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/plugins/popup.auth.plugin.cjs +4 -2
- package/dist/martyrs/src/modules/globals/views/plugins/popup.auth.plugin.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/plugins/popup.auth.plugin.js +5 -3
- package/dist/martyrs/src/modules/globals/views/plugins/popup.auth.plugin.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/store/globals.cjs +15 -8
- package/dist/martyrs/src/modules/globals/views/store/globals.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/store/globals.js +15 -8
- package/dist/martyrs/src/modules/globals/views/store/globals.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/utils/polyfills.cjs +26 -0
- package/dist/martyrs/src/modules/globals/views/utils/polyfills.cjs.map +1 -0
- package/dist/martyrs/src/modules/globals/views/utils/polyfills.js +26 -0
- package/dist/martyrs/src/modules/globals/views/utils/polyfills.js.map +1 -0
- package/dist/martyrs/src/modules/globals/views/utils/vue-app-renderer.cjs +28 -12
- package/dist/martyrs/src/modules/globals/views/utils/vue-app-renderer.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/utils/vue-app-renderer.js +28 -12
- package/dist/martyrs/src/modules/globals/views/utils/vue-app-renderer.js.map +1 -1
- package/dist/martyrs/src/modules/icons/components/IconSearchPopup.vue.cjs +2 -2
- package/dist/martyrs/src/modules/icons/components/IconSearchPopup.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/components/IconSearchPopup.vue.js +2 -2
- package/dist/martyrs/src/modules/icons/components/IconSearchPopup.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/entities/IconTime.vue.cjs +2 -2
- package/dist/martyrs/src/modules/icons/entities/IconTime.vue.js +2 -2
- package/dist/martyrs/src/modules/icons/icons.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/icons.client.js.map +1 -1
- package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.js +2 -2
- package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/router/icons.router.cjs +0 -1
- package/dist/martyrs/src/modules/icons/router/icons.router.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/router/icons.router.js +0 -1
- package/dist/martyrs/src/modules/icons/router/icons.router.js.map +1 -1
- package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.cjs +2 -2
- package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.js +2 -2
- package/dist/martyrs/src/modules/inventory/components/forms/StockAlertsForm.vue.cjs +2 -2
- package/dist/martyrs/src/modules/inventory/components/forms/StockAlertsForm.vue.js +2 -2
- package/dist/martyrs/src/modules/inventory/components/pages/Inventory.vue.cjs +3 -4
- package/dist/martyrs/src/modules/inventory/components/pages/Inventory.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/inventory/components/pages/Inventory.vue.js +2 -3
- package/dist/martyrs/src/modules/inventory/components/pages/Inventory.vue.js.map +1 -1
- package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.cjs +3 -3
- package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.js +3 -3
- package/dist/martyrs/src/modules/inventory/inventory.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/inventory/inventory.client.js.map +1 -1
- package/dist/martyrs/src/modules/inventory/router/inventory.router.cjs +2 -2
- package/dist/martyrs/src/modules/inventory/router/inventory.router.cjs.map +1 -1
- package/dist/martyrs/src/modules/inventory/router/inventory.router.js +2 -2
- package/dist/martyrs/src/modules/inventory/router/inventory.router.js.map +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionEarn.vue.cjs +5 -3
- package/dist/martyrs/src/modules/landing/components/sections/SectionEarn.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionEarn.vue.js +5 -3
- package/dist/martyrs/src/modules/landing/components/sections/SectionEarn.vue.js.map +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionMobileApp.vue.cjs +44 -30
- package/dist/martyrs/src/modules/landing/components/sections/SectionMobileApp.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionMobileApp.vue.js +44 -30
- package/dist/martyrs/src/modules/landing/components/sections/SectionMobileApp.vue.js.map +1 -1
- package/dist/martyrs/src/modules/marketplace/marketplace.client.cjs +2 -2
- package/dist/martyrs/src/modules/marketplace/marketplace.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/marketplace/marketplace.client.js +2 -2
- package/dist/martyrs/src/modules/marketplace/marketplace.client.js.map +1 -1
- package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.cjs +1 -1
- package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.js +1 -1
- package/dist/martyrs/src/modules/marketplace/views/components/pages/Catalog.vue.cjs +1 -1
- package/dist/martyrs/src/modules/marketplace/views/components/pages/Catalog.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.cjs +2 -2
- package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.js +2 -2
- package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.cjs +2 -2
- package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.js +2 -2
- package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.cjs +1 -1
- package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.cjs +2 -2
- package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.js +2 -2
- package/dist/martyrs/src/modules/music/components/pages/Album.vue.cjs +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Album.vue.js +3 -3
- package/dist/martyrs/src/modules/music/components/pages/MusicHome.vue.cjs +1 -1
- package/dist/martyrs/src/modules/music/components/pages/MusicHome.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.cjs +1 -1
- package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.cjs +1 -2
- package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.js +3 -4
- package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Track.vue.cjs +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Track.vue.js +3 -3
- package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.cjs +0 -1
- package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.js +0 -1
- package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.js.map +1 -1
- package/dist/martyrs/src/modules/music/router/music.cjs +5 -22
- package/dist/martyrs/src/modules/music/router/music.cjs.map +1 -1
- package/dist/martyrs/src/modules/music/router/music.js +5 -22
- package/dist/martyrs/src/modules/music/router/music.js.map +1 -1
- package/dist/martyrs/src/modules/notifications/notifications.client.cjs +2 -2
- package/dist/martyrs/src/modules/notifications/notifications.client.js +2 -2
- package/dist/martyrs/src/modules/notifications/store/notifications.store.js +1 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.js +2 -2
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderItem.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderItem.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue.cjs +0 -1
- package/dist/martyrs/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue.js +0 -1
- package/dist/martyrs/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.cjs +2 -2
- package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.js +2 -2
- package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.cjs +2 -2
- package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.js +2 -2
- package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/Applications.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/Applications.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/Customers.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/Customers.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +1 -2
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +3 -4
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +2 -3
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +2 -3
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs +3 -4
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +3 -4
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormPayment.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormPayment.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/router/orders.router.cjs +20 -9
- package/dist/martyrs/src/modules/orders/router/orders.router.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/router/orders.router.js +20 -9
- package/dist/martyrs/src/modules/orders/router/orders.router.js.map +1 -1
- package/dist/martyrs/src/modules/orders/store/shopcart.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.cjs +36 -3
- package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.js +36 -3
- package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.js.map +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 +3 -3
- package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.cjs +0 -1
- package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js +0 -1
- package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.cjs +2 -2
- package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.cjs +36 -3
- package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.js +36 -3
- package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs +45 -14
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +45 -14
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs +34 -11
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +35 -12
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.cjs +1 -2
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js +1 -2
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +3 -4
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +3 -4
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.cjs +3 -3
- package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js +3 -3
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs +2 -3
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +2 -3
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/organizations.client.cjs +1 -28
- package/dist/martyrs/src/modules/organizations/organizations.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/organizations.client.js +43 -70
- package/dist/martyrs/src/modules/organizations/organizations.client.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/router/organizations.cjs +1 -3
- package/dist/martyrs/src/modules/organizations/router/organizations.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/router/organizations.js +1 -3
- package/dist/martyrs/src/modules/organizations/router/organizations.js.map +1 -1
- package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.cjs +1 -1
- package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.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/router/pages.backoffice.router.cjs +1 -1
- package/dist/martyrs/src/modules/pages/views/router/pages.backoffice.router.cjs.map +1 -1
- package/dist/martyrs/src/modules/pages/views/router/pages.backoffice.router.js +1 -1
- package/dist/martyrs/src/modules/pages/views/router/pages.backoffice.router.js.map +1 -1
- package/dist/martyrs/src/modules/pages/views/router/pages.router.cjs +1 -1
- package/dist/martyrs/src/modules/pages/views/router/pages.router.cjs.map +1 -1
- package/dist/martyrs/src/modules/pages/views/router/pages.router.js +1 -1
- package/dist/martyrs/src/modules/pages/views/router/pages.router.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.cjs +3 -2
- package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.js +3 -2
- package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/elements/{THC.vue.cjs → THC.vue2.cjs} +2 -2
- package/dist/martyrs/src/modules/products/components/elements/THC.vue2.cjs.map +1 -0
- package/dist/martyrs/src/modules/products/components/elements/{THC.vue.js → THC.vue2.js} +2 -2
- package/dist/martyrs/src/modules/products/components/elements/THC.vue2.js.map +1 -0
- package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs +4 -4
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +4 -4
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs +0 -2
- 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 +0 -2
- 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 +2 -2
- package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs +2 -3
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +2 -3
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.cjs +2 -2
- package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js +2 -2
- package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.cjs +1 -2
- package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.js +1 -2
- package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.cjs +1 -2
- package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.js +1 -2
- package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.cjs +3 -3
- package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +3 -3
- package/dist/martyrs/src/modules/products/components/sections/HeroRecommendation.vue.cjs +0 -1
- package/dist/martyrs/src/modules/products/components/sections/HeroRecommendation.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/HeroRecommendation.vue.js +0 -1
- package/dist/martyrs/src/modules/products/components/sections/HeroRecommendation.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +1 -1
- package/dist/martyrs/src/modules/products/router/products.router.cjs +15 -6
- package/dist/martyrs/src/modules/products/router/products.router.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/router/products.router.js +15 -6
- package/dist/martyrs/src/modules/products/router/products.router.js.map +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.cjs +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.js +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.cjs +2 -3
- package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js +2 -3
- package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js.map +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/blocks/SpotMemberModify.vue.cjs +2 -2
- package/dist/martyrs/src/modules/spots/components/blocks/SpotMemberModify.vue.js +2 -2
- 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/Map.vue.cjs +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs +2 -2
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/spots/components/pages/Spots.vue.cjs +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/Spots.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.cjs +2 -2
- package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/wallet/views/components/blocks/CardDeposit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/wallet/views/components/blocks/CardDeposit.vue.js +1 -1
- package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.cjs +2 -2
- package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.js +2 -2
- package/dist/martyrs/src/modules/wallet/views/components/pages/Payments.vue.cjs +1 -1
- package/dist/martyrs/src/modules/wallet/views/components/pages/Payments.vue.js +1 -1
- package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.cjs +2 -6
- package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js +2 -6
- package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js.map +1 -1
- package/dist/martyrs.cjs.js +1 -1
- package/dist/martyrs.css +1 -1
- package/dist/martyrs.es.js +1 -1
- package/dist/node_modules/.pnpm/{@capacitor-mlkit_barcode-scanning@7.2.1_@capacitor_core@7.2.0 → @capacitor-mlkit_barcode-scanning@7.3.0_@capacitor_core@7.4.3}/node_modules/@capacitor-mlkit/barcode-scanning/dist/esm/definitions.cjs.map +1 -1
- package/dist/node_modules/.pnpm/{@capacitor-mlkit_barcode-scanning@7.2.1_@capacitor_core@7.2.0 → @capacitor-mlkit_barcode-scanning@7.3.0_@capacitor_core@7.4.3}/node_modules/@capacitor-mlkit/barcode-scanning/dist/esm/definitions.js.map +1 -1
- package/dist/node_modules/.pnpm/{@capacitor-mlkit_barcode-scanning@7.2.1_@capacitor_core@7.2.0 → @capacitor-mlkit_barcode-scanning@7.3.0_@capacitor_core@7.4.3}/node_modules/@capacitor-mlkit/barcode-scanning/dist/esm/index.cjs +1 -1
- package/dist/node_modules/.pnpm/{@capacitor-mlkit_barcode-scanning@7.2.1_@capacitor_core@7.2.0 → @capacitor-mlkit_barcode-scanning@7.3.0_@capacitor_core@7.4.3}/node_modules/@capacitor-mlkit/barcode-scanning/dist/esm/index.cjs.map +1 -1
- package/dist/node_modules/.pnpm/{@capacitor-mlkit_barcode-scanning@7.2.1_@capacitor_core@7.2.0 → @capacitor-mlkit_barcode-scanning@7.3.0_@capacitor_core@7.4.3}/node_modules/@capacitor-mlkit/barcode-scanning/dist/esm/index.js +1 -1
- package/dist/node_modules/.pnpm/{@capacitor-mlkit_barcode-scanning@7.2.1_@capacitor_core@7.2.0 → @capacitor-mlkit_barcode-scanning@7.3.0_@capacitor_core@7.4.3}/node_modules/@capacitor-mlkit/barcode-scanning/dist/esm/index.js.map +1 -1
- package/dist/node_modules/.pnpm/{@capacitor-mlkit_barcode-scanning@7.2.1_@capacitor_core@7.2.0 → @capacitor-mlkit_barcode-scanning@7.3.0_@capacitor_core@7.4.3}/node_modules/@capacitor-mlkit/barcode-scanning/dist/esm/web.cjs +1 -1
- package/dist/node_modules/.pnpm/{@capacitor-mlkit_barcode-scanning@7.2.1_@capacitor_core@7.2.0 → @capacitor-mlkit_barcode-scanning@7.3.0_@capacitor_core@7.4.3}/node_modules/@capacitor-mlkit/barcode-scanning/dist/esm/web.cjs.map +1 -1
- package/dist/node_modules/.pnpm/{@capacitor-mlkit_barcode-scanning@7.2.1_@capacitor_core@7.2.0 → @capacitor-mlkit_barcode-scanning@7.3.0_@capacitor_core@7.4.3}/node_modules/@capacitor-mlkit/barcode-scanning/dist/esm/web.js +1 -1
- package/dist/node_modules/.pnpm/{@capacitor-mlkit_barcode-scanning@7.2.1_@capacitor_core@7.2.0 → @capacitor-mlkit_barcode-scanning@7.3.0_@capacitor_core@7.4.3}/node_modules/@capacitor-mlkit/barcode-scanning/dist/esm/web.js.map +1 -1
- package/dist/node_modules/.pnpm/{@capacitor_core@7.2.0 → @capacitor_core@7.4.3}/node_modules/@capacitor/core/dist/index.cjs +2 -1
- package/dist/node_modules/.pnpm/@capacitor_core@7.4.3/node_modules/@capacitor/core/dist/index.cjs.map +1 -0
- package/dist/node_modules/.pnpm/{@capacitor_core@7.2.0 → @capacitor_core@7.4.3}/node_modules/@capacitor/core/dist/index.js +2 -1
- package/dist/node_modules/.pnpm/@capacitor_core@7.4.3/node_modules/@capacitor/core/dist/index.js.map +1 -0
- package/dist/node_modules/.pnpm/{@capacitor_device@7.0.1_@capacitor_core@7.2.0 → @capacitor_device@7.0.2_@capacitor_core@7.4.3}/node_modules/@capacitor/device/dist/esm/index.cjs +1 -1
- package/dist/node_modules/.pnpm/{@capacitor_device@7.0.1_@capacitor_core@7.2.0 → @capacitor_device@7.0.2_@capacitor_core@7.4.3}/node_modules/@capacitor/device/dist/esm/index.cjs.map +1 -1
- package/dist/node_modules/.pnpm/{@capacitor_device@7.0.1_@capacitor_core@7.2.0 → @capacitor_device@7.0.2_@capacitor_core@7.4.3}/node_modules/@capacitor/device/dist/esm/index.js +1 -1
- package/dist/node_modules/.pnpm/{@capacitor_device@7.0.1_@capacitor_core@7.2.0 → @capacitor_device@7.0.2_@capacitor_core@7.4.3}/node_modules/@capacitor/device/dist/esm/index.js.map +1 -1
- package/dist/node_modules/.pnpm/{@capacitor_device@7.0.1_@capacitor_core@7.2.0 → @capacitor_device@7.0.2_@capacitor_core@7.4.3}/node_modules/@capacitor/device/dist/esm/web.cjs +1 -1
- package/dist/node_modules/.pnpm/{@capacitor_device@7.0.1_@capacitor_core@7.2.0 → @capacitor_device@7.0.2_@capacitor_core@7.4.3}/node_modules/@capacitor/device/dist/esm/web.cjs.map +1 -1
- package/dist/node_modules/.pnpm/{@capacitor_device@7.0.1_@capacitor_core@7.2.0 → @capacitor_device@7.0.2_@capacitor_core@7.4.3}/node_modules/@capacitor/device/dist/esm/web.js +1 -1
- package/dist/node_modules/.pnpm/{@capacitor_device@7.0.1_@capacitor_core@7.2.0 → @capacitor_device@7.0.2_@capacitor_core@7.4.3}/node_modules/@capacitor/device/dist/esm/web.js.map +1 -1
- package/dist/node_modules/.pnpm/{@capacitor_keyboard@7.0.1_@capacitor_core@7.2.0 → @capacitor_keyboard@7.0.2_@capacitor_core@7.4.3}/node_modules/@capacitor/keyboard/dist/esm/definitions.cjs.map +1 -1
- package/dist/node_modules/.pnpm/{@capacitor_keyboard@7.0.1_@capacitor_core@7.2.0 → @capacitor_keyboard@7.0.2_@capacitor_core@7.4.3}/node_modules/@capacitor/keyboard/dist/esm/definitions.js.map +1 -1
- package/dist/node_modules/.pnpm/{@capacitor_keyboard@7.0.1_@capacitor_core@7.2.0 → @capacitor_keyboard@7.0.2_@capacitor_core@7.4.3}/node_modules/@capacitor/keyboard/dist/esm/index.cjs +1 -1
- package/dist/node_modules/.pnpm/{@capacitor_keyboard@7.0.1_@capacitor_core@7.2.0 → @capacitor_keyboard@7.0.2_@capacitor_core@7.4.3}/node_modules/@capacitor/keyboard/dist/esm/index.cjs.map +1 -1
- package/dist/node_modules/.pnpm/{@capacitor_keyboard@7.0.1_@capacitor_core@7.2.0 → @capacitor_keyboard@7.0.2_@capacitor_core@7.4.3}/node_modules/@capacitor/keyboard/dist/esm/index.js +1 -1
- package/dist/node_modules/.pnpm/{@capacitor_keyboard@7.0.1_@capacitor_core@7.2.0 → @capacitor_keyboard@7.0.2_@capacitor_core@7.4.3}/node_modules/@capacitor/keyboard/dist/esm/index.js.map +1 -1
- package/dist/node_modules/.pnpm/{@capacitor_push-notifications@7.0.1_@capacitor_core@7.2.0 → @capacitor_push-notifications@7.0.2_@capacitor_core@7.4.3}/node_modules/@capacitor/push-notifications/dist/esm/index.cjs +1 -1
- package/dist/node_modules/.pnpm/{@capacitor_push-notifications@7.0.1_@capacitor_core@7.2.0 → @capacitor_push-notifications@7.0.2_@capacitor_core@7.4.3}/node_modules/@capacitor/push-notifications/dist/esm/index.cjs.map +1 -1
- package/dist/node_modules/.pnpm/{@capacitor_push-notifications@7.0.1_@capacitor_core@7.2.0 → @capacitor_push-notifications@7.0.2_@capacitor_core@7.4.3}/node_modules/@capacitor/push-notifications/dist/esm/index.js +1 -1
- package/dist/node_modules/.pnpm/{@capacitor_push-notifications@7.0.1_@capacitor_core@7.2.0 → @capacitor_push-notifications@7.0.2_@capacitor_core@7.4.3}/node_modules/@capacitor/push-notifications/dist/esm/index.js.map +1 -1
- package/dist/node_modules/.pnpm/{@googlemaps_js-api-loader@1.16.8 → @googlemaps_js-api-loader@1.16.10}/node_modules/@googlemaps/js-api-loader/dist/index.cjs +34 -26
- package/dist/node_modules/.pnpm/@googlemaps_js-api-loader@1.16.10/node_modules/@googlemaps/js-api-loader/dist/index.cjs.map +1 -0
- package/dist/node_modules/.pnpm/{@googlemaps_js-api-loader@1.16.8 → @googlemaps_js-api-loader@1.16.10}/node_modules/@googlemaps/js-api-loader/dist/index.js +34 -26
- package/dist/node_modules/.pnpm/@googlemaps_js-api-loader@1.16.10/node_modules/@googlemaps/js-api-loader/dist/index.js.map +1 -0
- package/dist/node_modules/.pnpm/{@unhead_vue@1.11.20_vue@3.5.13_typescript@5.8.3_ → @unhead_vue@1.11.20_vue@3.5.21_typescript@5.9.2_}/node_modules/@unhead/vue/dist/shared/vue.-sixQ7xP.cjs.map +1 -1
- package/dist/node_modules/.pnpm/{@unhead_vue@1.11.20_vue@3.5.13_typescript@5.8.3_ → @unhead_vue@1.11.20_vue@3.5.21_typescript@5.9.2_}/node_modules/@unhead/vue/dist/shared/vue.-sixQ7xP.js.map +1 -1
- package/dist/node_modules/.pnpm/{@unhead_vue@1.11.20_vue@3.5.13_typescript@5.8.3_ → @unhead_vue@1.11.20_vue@3.5.21_typescript@5.9.2_}/node_modules/@unhead/vue/dist/shared/vue.ziyDaVMR.cjs.map +1 -1
- package/dist/node_modules/.pnpm/{@unhead_vue@1.11.20_vue@3.5.13_typescript@5.8.3_ → @unhead_vue@1.11.20_vue@3.5.21_typescript@5.9.2_}/node_modules/@unhead/vue/dist/shared/vue.ziyDaVMR.js.map +1 -1
- package/dist/node_modules/.pnpm/{@vue_server-renderer@3.5.13_vue@3.5.13_typescript@5.8.3_ → @vue_server-renderer@3.5.21_vue@3.5.21_typescript@5.9.2_}/node_modules/@vue/server-renderer/dist/server-renderer.esm-bundler.cjs +18 -13
- package/dist/node_modules/.pnpm/@vue_server-renderer@3.5.21_vue@3.5.21_typescript@5.9.2_/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_ → @vue_server-renderer@3.5.21_vue@3.5.21_typescript@5.9.2_}/node_modules/@vue/server-renderer/dist/server-renderer.esm-bundler.js +19 -14
- package/dist/node_modules/.pnpm/@vue_server-renderer@3.5.21_vue@3.5.21_typescript@5.9.2_/node_modules/@vue/server-renderer/dist/server-renderer.esm-bundler.js.map +1 -0
- package/dist/node_modules/.pnpm/{@vue_shared@3.5.13 → @vue_shared@3.5.21}/node_modules/@vue/shared/dist/shared.esm-bundler.cjs +19 -2
- package/dist/node_modules/.pnpm/@vue_shared@3.5.21/node_modules/@vue/shared/dist/shared.esm-bundler.cjs.map +1 -0
- package/dist/node_modules/.pnpm/{@vue_shared@3.5.13 → @vue_shared@3.5.21}/node_modules/@vue/shared/dist/shared.esm-bundler.js +19 -2
- package/dist/node_modules/.pnpm/@vue_shared@3.5.21/node_modules/@vue/shared/dist/shared.esm-bundler.js.map +1 -0
- package/dist/node_modules/.pnpm/{@vuepic_vue-datepicker@11.0.2_vue@3.5.13_typescript@5.8.3_ → @vuepic_vue-datepicker@11.0.2_vue@3.5.21_typescript@5.9.2_}/node_modules/@vuepic/vue-datepicker/dist/vue-datepicker.cjs.map +1 -1
- package/dist/node_modules/.pnpm/{@vuepic_vue-datepicker@11.0.2_vue@3.5.13_typescript@5.8.3_ → @vuepic_vue-datepicker@11.0.2_vue@3.5.21_typescript@5.9.2_}/node_modules/@vuepic/vue-datepicker/dist/vue-datepicker.js +1 -1
- package/dist/node_modules/.pnpm/{@vuepic_vue-datepicker@11.0.2_vue@3.5.13_typescript@5.8.3_ → @vuepic_vue-datepicker@11.0.2_vue@3.5.21_typescript@5.9.2_}/node_modules/@vuepic/vue-datepicker/dist/vue-datepicker.js.map +1 -1
- package/dist/node_modules/.pnpm/{capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.2.0 → capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.4.3}/node_modules/capacitor-plugin-app-tracking-transparency/dist/esm/index.cjs +1 -1
- package/dist/node_modules/.pnpm/{capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.2.0 → capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.4.3}/node_modules/capacitor-plugin-app-tracking-transparency/dist/esm/index.cjs.map +1 -1
- package/dist/node_modules/.pnpm/{capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.2.0 → capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.4.3}/node_modules/capacitor-plugin-app-tracking-transparency/dist/esm/index.js +1 -1
- package/dist/node_modules/.pnpm/{capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.2.0 → capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.4.3}/node_modules/capacitor-plugin-app-tracking-transparency/dist/esm/index.js.map +1 -1
- package/dist/node_modules/.pnpm/{capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.2.0 → capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.4.3}/node_modules/capacitor-plugin-app-tracking-transparency/dist/esm/web.cjs +1 -1
- package/dist/node_modules/.pnpm/{capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.2.0 → capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.4.3}/node_modules/capacitor-plugin-app-tracking-transparency/dist/esm/web.cjs.map +1 -1
- package/dist/node_modules/.pnpm/{capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.2.0 → capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.4.3}/node_modules/capacitor-plugin-app-tracking-transparency/dist/esm/web.js +1 -1
- package/dist/node_modules/.pnpm/{capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.2.0 → capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.4.3}/node_modules/capacitor-plugin-app-tracking-transparency/dist/esm/web.js.map +1 -1
- package/dist/node_modules/.pnpm/{dayjs@1.11.13 → dayjs@1.11.18}/node_modules/dayjs/dayjs.min.cjs.map +1 -1
- package/dist/node_modules/.pnpm/{dayjs@1.11.13 → dayjs@1.11.18}/node_modules/dayjs/dayjs.min.js.map +1 -1
- package/dist/node_modules/.pnpm/{dayjs@1.11.13 → dayjs@1.11.18}/node_modules/dayjs/plugin/weekOfYear.cjs.map +1 -1
- package/dist/node_modules/.pnpm/{dayjs@1.11.13 → dayjs@1.11.18}/node_modules/dayjs/plugin/weekOfYear.js.map +1 -1
- package/dist/node_modules/.pnpm/{embla-carousel-vue@8.6.0_vue@3.5.13_typescript@5.8.3_ → embla-carousel-vue@8.6.0_vue@3.5.21_typescript@5.9.2_}/node_modules/embla-carousel-vue/esm/embla-carousel-vue.esm.cjs.map +1 -1
- package/dist/node_modules/.pnpm/{embla-carousel-vue@8.6.0_vue@3.5.13_typescript@5.8.3_ → embla-carousel-vue@8.6.0_vue@3.5.21_typescript@5.9.2_}/node_modules/embla-carousel-vue/esm/embla-carousel-vue.esm.js.map +1 -1
- package/dist/node_modules/.pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.cjs.map +1 -0
- package/dist/node_modules/.pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.js.map +1 -0
- package/dist/node_modules/{lodash.merge → .pnpm/lodash.merge@4.6.2/node_modules/lodash.merge}/index.cjs +2 -2
- package/dist/node_modules/.pnpm/lodash.merge@4.6.2/node_modules/lodash.merge/index.cjs.map +1 -0
- package/dist/node_modules/{lodash.merge → .pnpm/lodash.merge@4.6.2/node_modules/lodash.merge}/index.js +2 -2
- package/dist/node_modules/.pnpm/lodash.merge@4.6.2/node_modules/lodash.merge/index.js.map +1 -0
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/utils.cjs +1 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/utils.js +1 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/utils.cjs +1 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/utils.js +1 -1
- package/dist/node_modules/.pnpm/{vue-draggable-next@2.2.1_sortablejs@1.15.6_vue@3.5.13_typescript@5.8.3_ → vue-draggable-next@2.3.0_sortablejs@1.15.6_vue@3.5.21_typescript@5.9.2_}/node_modules/vue-draggable-next/dist/vue-draggable-next.esm-bundler.cjs +304 -267
- package/dist/node_modules/.pnpm/vue-draggable-next@2.3.0_sortablejs@1.15.6_vue@3.5.21_typescript@5.9.2_/node_modules/vue-draggable-next/dist/vue-draggable-next.esm-bundler.cjs.map +1 -0
- package/dist/node_modules/.pnpm/{vue-draggable-next@2.2.1_sortablejs@1.15.6_vue@3.5.13_typescript@5.8.3_ → vue-draggable-next@2.3.0_sortablejs@1.15.6_vue@3.5.21_typescript@5.9.2_}/node_modules/vue-draggable-next/dist/vue-draggable-next.esm-bundler.js +305 -268
- package/dist/node_modules/.pnpm/vue-draggable-next@2.3.0_sortablejs@1.15.6_vue@3.5.21_typescript@5.9.2_/node_modules/vue-draggable-next/dist/vue-draggable-next.esm-bundler.js.map +1 -0
- package/dist/rents.server.js +1 -1
- package/dist/style.css +110 -111
- package/dist/{web-BS-4Xl3x.js → web-cWW0_Tbe.js} +1 -1
- package/dist/{web-CjndIDjT.cjs → web-xomD1Wpp.cjs} +1 -1
- package/package.json +6 -1
- package/src/builder/builder.js +6 -13
- package/src/builder/modes/spa.prod.js +19 -14
- package/src/builder/modes/spa.rspack.dev.js +14 -23
- package/src/builder/modes/ssr.prod.js +33 -21
- package/src/builder/modes/ssr.rspack.dev.js +76 -34
- package/src/builder/rspack/rspack.config.base.js +12 -7
- package/src/builder/rspack/rspack.config.spa.client.js +1 -1
- package/src/builder/rspack/rspack.config.ssr.client.js +74 -10
- package/src/builder/rspack/rspack.config.ssr.server.js +2 -5
- package/src/builder/ssr/asset-resolver.js +148 -0
- package/src/builder/ssr/beasties-processor.js +107 -0
- package/src/builder/templates/page.js +20 -36
- package/src/modules/STYLES.MD +118 -0
- package/src/modules/auth/auth.client.js +25 -33
- package/src/modules/auth/views/store/auth.js +2 -0
- package/src/modules/community/router/blogposts.js +2 -2
- package/src/modules/events/router/events.js +7 -7
- package/src/modules/gallery/router/gallery.router.js +1 -1
- package/src/modules/globals/controllers/classes/abac/v2/abac-fields-fixed.js +9 -6
- package/src/modules/globals/globals.client.js +22 -53
- package/src/modules/globals/views/classes/module-registry.js +241 -0
- package/src/modules/globals/views/classes/store.js +30 -7
- package/src/modules/globals/views/components/layouts/Client.vue +6 -6
- package/src/modules/globals/views/components/sections/Walkthrough.vue +51 -48
- package/src/modules/globals/views/plugins/alert.plugin.js +6 -3
- package/src/modules/globals/views/plugins/date-picker.plugin.js +6 -2
- package/src/modules/globals/views/plugins/popup.auth.plugin.js +6 -2
- package/src/modules/globals/views/plugins/store-debugger/StoreDebugger.vue +5 -2
- package/src/modules/globals/views/plugins/store-debugger/store-debugger.plugin.js +6 -2
- package/src/modules/globals/views/store/globals.js +17 -10
- package/src/modules/globals/views/utils/polyfills.js +28 -0
- package/src/modules/globals/views/utils/vue-app-renderer.js +32 -14
- package/src/modules/icons/components/IconSearchPopup.vue +4 -4
- package/src/modules/icons/icons.client.js +1 -1
- package/src/modules/inventory/inventory.client.js +1 -1
- package/src/modules/inventory/router/inventory.router.js +2 -2
- package/src/modules/landing/components/sections/SectionEarn.vue +2 -2
- package/src/modules/landing/components/sections/SectionMobileApp.vue +18 -4
- package/src/modules/marketplace/marketplace.client.js +3 -3
- package/src/modules/music/router/music.js +3 -2
- package/src/modules/orders/components/blocks/CardOrderItem.vue +0 -1
- package/src/modules/orders/router/orders.router.js +6 -9
- package/src/modules/organizations/components/blocks/CardDepartment.vue +1 -1
- package/src/modules/organizations/components/pages/Department.vue +1 -2
- package/src/modules/organizations/components/pages/DepartmentEdit.vue +30 -28
- package/src/modules/organizations/components/pages/Members.vue +10 -8
- package/src/modules/organizations/components/pages/Organization.vue +7 -5
- package/src/modules/organizations/organizations.client.js +25 -73
- package/src/modules/organizations/policies/organizations.policies.js +1 -1
- package/src/modules/pages/views/router/pages.backoffice.router.js +1 -1
- package/src/modules/pages/views/router/pages.router.js +1 -1
- package/src/modules/products/components/sections/HeroRecommendation.vue +2 -3
- package/src/modules/products/router/products.router.js +6 -6
- package/src/styles/base/all.scss +154 -267
- package/src/styles/base/backgrounds.scss +1 -0
- package/src/styles/config.scss +163 -55
- package/src/styles/layout.scss +2 -0
- package/src/styles/theme.scss +3 -2
- package/src/styles/typography.scss +12 -12
- package/dist/main-4KvvKtzH.cjs +0 -11
- 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/Feed/Feed.vue.js.map +0 -1
- package/dist/martyrs/src/components/Field/Field.vue.js.map +0 -1
- package/dist/martyrs/src/components/FieldTags/BlockTags.vue.js.map +0 -1
- package/dist/martyrs/src/components/Menu/Menu.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/Menu/Menu.vue2.js.map +0 -1
- package/dist/martyrs/src/components/Select/Select.vue2.cjs.map +0 -1
- package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/StoreDebugger.vue.cjs +0 -2
- package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/StoreDebugger.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/StoreDebugger.vue.js +0 -2
- package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/StoreDebugger.vue.js.map +0 -1
- package/dist/martyrs/src/modules/products/components/elements/THC.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/elements/THC.vue.js.map +0 -1
- package/dist/node_modules/.pnpm/@capacitor_core@7.2.0/node_modules/@capacitor/core/dist/index.cjs.map +0 -1
- package/dist/node_modules/.pnpm/@capacitor_core@7.2.0/node_modules/@capacitor/core/dist/index.js.map +0 -1
- 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/@googlemaps_js-api-loader@1.16.8/node_modules/@googlemaps/js-api-loader/dist/index.js.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/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/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.js.map +0 -1
- package/dist/node_modules/fast-deep-equal/index.cjs.map +0 -1
- package/dist/node_modules/fast-deep-equal/index.js.map +0 -1
- package/dist/node_modules/lodash.merge/index.cjs.map +0 -1
- package/dist/node_modules/lodash.merge/index.js.map +0 -1
- package/src/builder/modes/spa.dev.js +0 -106
- package/src/builder/modes/ssr.dev.js +0 -184
- package/src/builder/ssr/ssr-transform-webpack-stats.js +0 -66
- package/src/builder/ssr/utils.js +0 -47
- package/src/builder/webpack/index.js +0 -13
- package/src/builder/webpack/webpack.config.api.js +0 -35
- package/src/builder/webpack/webpack.config.base.js +0 -142
- package/src/builder/webpack/webpack.config.spa.client.js +0 -68
- package/src/builder/webpack/webpack.config.ssr.client.js +0 -93
- package/src/builder/webpack/webpack.config.ssr.server.js +0 -59
- package/src/modules/core/classes/module-manager.js +0 -88
- /package/dist/node_modules/.pnpm/{@capacitor-mlkit_barcode-scanning@7.2.1_@capacitor_core@7.2.0 → @capacitor-mlkit_barcode-scanning@7.3.0_@capacitor_core@7.4.3}/node_modules/@capacitor-mlkit/barcode-scanning/dist/esm/definitions.cjs +0 -0
- /package/dist/node_modules/.pnpm/{@capacitor-mlkit_barcode-scanning@7.2.1_@capacitor_core@7.2.0 → @capacitor-mlkit_barcode-scanning@7.3.0_@capacitor_core@7.4.3}/node_modules/@capacitor-mlkit/barcode-scanning/dist/esm/definitions.js +0 -0
- /package/dist/node_modules/.pnpm/{@capacitor_keyboard@7.0.1_@capacitor_core@7.2.0 → @capacitor_keyboard@7.0.2_@capacitor_core@7.4.3}/node_modules/@capacitor/keyboard/dist/esm/definitions.cjs +0 -0
- /package/dist/node_modules/.pnpm/{@capacitor_keyboard@7.0.1_@capacitor_core@7.2.0 → @capacitor_keyboard@7.0.2_@capacitor_core@7.4.3}/node_modules/@capacitor/keyboard/dist/esm/definitions.js +0 -0
- /package/dist/node_modules/.pnpm/{@unhead_vue@1.11.20_vue@3.5.13_typescript@5.8.3_ → @unhead_vue@1.11.20_vue@3.5.21_typescript@5.9.2_}/node_modules/@unhead/vue/dist/shared/vue.-sixQ7xP.cjs +0 -0
- /package/dist/node_modules/.pnpm/{@unhead_vue@1.11.20_vue@3.5.13_typescript@5.8.3_ → @unhead_vue@1.11.20_vue@3.5.21_typescript@5.9.2_}/node_modules/@unhead/vue/dist/shared/vue.-sixQ7xP.js +0 -0
- /package/dist/node_modules/.pnpm/{@unhead_vue@1.11.20_vue@3.5.13_typescript@5.8.3_ → @unhead_vue@1.11.20_vue@3.5.21_typescript@5.9.2_}/node_modules/@unhead/vue/dist/shared/vue.ziyDaVMR.cjs +0 -0
- /package/dist/node_modules/.pnpm/{@unhead_vue@1.11.20_vue@3.5.13_typescript@5.8.3_ → @unhead_vue@1.11.20_vue@3.5.21_typescript@5.9.2_}/node_modules/@unhead/vue/dist/shared/vue.ziyDaVMR.js +0 -0
- /package/dist/node_modules/.pnpm/{@vuepic_vue-datepicker@11.0.2_vue@3.5.13_typescript@5.8.3_ → @vuepic_vue-datepicker@11.0.2_vue@3.5.21_typescript@5.9.2_}/node_modules/@vuepic/vue-datepicker/dist/vue-datepicker.cjs +0 -0
- /package/dist/node_modules/.pnpm/{dayjs@1.11.13 → dayjs@1.11.18}/node_modules/dayjs/dayjs.min.cjs +0 -0
- /package/dist/node_modules/.pnpm/{dayjs@1.11.13 → dayjs@1.11.18}/node_modules/dayjs/dayjs.min.js +0 -0
- /package/dist/node_modules/.pnpm/{dayjs@1.11.13 → dayjs@1.11.18}/node_modules/dayjs/plugin/weekOfYear.cjs +0 -0
- /package/dist/node_modules/.pnpm/{dayjs@1.11.13 → dayjs@1.11.18}/node_modules/dayjs/plugin/weekOfYear.js +0 -0
- /package/dist/node_modules/.pnpm/{embla-carousel-vue@8.6.0_vue@3.5.13_typescript@5.8.3_ → embla-carousel-vue@8.6.0_vue@3.5.21_typescript@5.9.2_}/node_modules/embla-carousel-vue/esm/embla-carousel-vue.esm.cjs +0 -0
- /package/dist/node_modules/.pnpm/{embla-carousel-vue@8.6.0_vue@3.5.13_typescript@5.8.3_ → embla-carousel-vue@8.6.0_vue@3.5.21_typescript@5.9.2_}/node_modules/embla-carousel-vue/esm/embla-carousel-vue.esm.js +0 -0
- /package/dist/node_modules/{fast-deep-equal → .pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal}/index.cjs +0 -0
- /package/dist/node_modules/{fast-deep-equal → .pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal}/index.js +0 -0
- /package/src/modules/core/classes/{event.js → event-bus.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Client.vue.js","sources":["../../../../../../../../src/modules/globals/views/components/layouts/Client.vue"],"sourcesContent":["<template>\n\t<div \n\t\tid=\"app-wrapper\"\n\t\tclass=\"flex flex-column h-100 w-100 pos-relative o-hidden\"\n\t\t:class=\"{\n \t\t'pd-t-big': MOBILE_APP === 'ios', \n\t\t\t'bg-white': headerTheme === 'light',\n\t\t\t'bg-black': headerTheme === 'dark' \n \t}\"\n\t>\n\t\t<transition name=\"moveFromTop\" appear>\n\t\t\t<Loader v-if=\"!page || isPageLoading\" class=\"pos-fixed\"/>\n\t\t</transition>\n\n\n\t <transition \n\t name=\"moveFromTop\" \n\t mode=\"out-in\"\n\t >\n\t \t\n\t <section \n\t v-if=\"FirstUse && route.meta.walkthrough\"\n\t class=\"w-100 h-100\" \n\t >\n\t <component \n\t :is=\"route.meta.walkthrough\"\n\t name=\"Walkthrough\"\n\t @updateFirstUse=\"updateFirstUse\" \n\t :slides=\"[1,2,3]\" \n\t class=\"tab\"\n\t >\n\t </component>\n\t </section>\n\t </transition>\n\n <component\n\t\t\tv-if=\"!MOBILE_APP && route.meta.header\"\n ref=\"header\" \n :is=\"route.meta.header\"\n :theme=\"headerTheme\"\n :logotype=\"route.meta.logotype\"\n :location=\"route.meta.location\"\n >\n \t<component\n\t\t v-if=\"route.meta?.header_navigation\"\n\t\t :is=\"route.meta.header_navigation\"\n\t\t :horizontal=\"true\"\n\t\t\t\t:navigationItems=\"route.meta.header_navigation_items\"\n\t\t\t\t:stateSidebar=\"globals.state.isOpenSidebar\" \n\t\t\t\t:theme=\"headerTheme\"\n\t\t />\n \t</component>\n\n\t\t<transition name=\"moveFromTop\" mode=\"out-in\" appear>\n\t\t\t<component\n \tv-if=\"MOBILE_APP && !route.meta.hideNavigationBar\"\n :is=\"route.meta.navigationbar\"\n :logotype=\"route.meta.logotype\"\n :navigationItems=\"route.meta.sidebar_navigation_items\"\n\t :stateSidebar=\"globals.state.isOpenSidebar\" \n />\n\t\t</transition>\n\n\t <Popup \n\t \t@close-popup=\"closeLocationPopup\" \n\t \t:isPopupOpen=\"globals.state.isOpenLocationPopup\"\n\t \tclass=\"bg-white pd-semi w-m-33r radius-big\"\n\t >\t\n\t \t<LocationSelection />\n\t </Popup>\n\n\t <!-- class=\"flex flex-nowrap transition-ease-in-out o-hidden pos-relative\" -->\n\t\t<section \n\t\t\tid=\"screen\" \n\t\t\tref=\"screen\"\n\t\t\t@scroll=\"handleScroll\"\n\t\t\tclass=\"flex flex-nowrap h-100 pos-relative o-hidden transition-ease-in-out\"\n\t\t\t:class=\"{\n\t\t\t\t'': MOBILE_APP === 'ios',\n }\"\n\t\t>\n\t\t\t<ShopCart \n\t\t\t\t:class=\"{\n\t\t\t\t\t'mobile:pd-t-extra': MOBILE_APP === 'ios', \n\t\t\t\t}\"\n\t\t\t/>\n\t <component\n\t v-if=\"route.meta?.sidebar\"\n\t v-slot=\"{ Component }\"\n\t :is=\"route.meta.sidebar\"\n\t :stateSidebar=\"globals.state.isOpenSidebar\" \n\t :widthHidden='route.meta?.sidebar_width_hidden'\n\t :width=\"route.meta?.sidebar_width\"\n\t :theme=\"headerTheme\"\n\t @closeSidebar=\"() => globals.state.isOpenSidebar = false\"\n\t >\n\t \t<transition name=\"moveFromTop\" mode=\"out-in\">\n\t\t <component\n\t\t v-if=\"route.meta?.sidebar_navigation\"\n\t\t :is=\"route.meta.sidebar_navigation\"\n\t\t :key=\"route.meta.sidebar_navigation\"\n\t\t :navigationItems=\"route.meta.sidebar_navigation_items\"\n\t\t\t :stateSidebar=\"globals.state.isOpenSidebar\" \n\t\t\t\t\t\t:theme=\"headerTheme\"\n\t\t />\n\t </transition>\n\t </component>\n\t\t <!-- rows-1-min0_max1 z-index-1 pos-relative w-100 h-100 -->\n\t\t <div class=\"rows-1-min0_max1 z-index-1 pos-relative w-100 h-100\">\n\t\t \t<div id=\"scrollview\" ref=\"scrollview\" class=\"o-y-scroll o-x-hidden h-100\">\n\t \t\t\t<Status \n\t \t\t\t\tv-if=\"globals.state.error.show\"\n\t\t\t\t\t\t:data=\"globals.state.error\"\n\t\t\t\t\t\t@close=\"globals.state.error.show = false\"\n\t\t\t\t\t\tclass=\"z-index-7\" \n\t\t\t\t\t/>\n\t\t\t\t\t<Snack \n\t \t\t\t\tv-if=\"globals.state.snack.show\"\n\t\t\t\t\t\t:data=\"globals.state.snack\"\n\t\t\t\t\t\t@close=\"globals.state.snack.show = false\"\n\t\t\t\t\t\tclass=\"z-index-7\" \n\t\t\t\t\t/>\n\t\t\t\t\t<div class=\"h-min-100 pos-relative w-100\">\n\t\t\t\t\t\t<!-- <section v-if=\"!route.meta?.breadcrumbs?.hide\" class=\"pd-thin pd-b-zero\">\n\t\t\t\t\t\t\t<Breadcrumbs \n\t\t\t\t\t\t\t\tv-if=\"!MOBILE_APP\"\n\t\t\t\t\t\t\t\tclass=\"bg-light pd-small radius-small\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</section> -->\n\n\t\t\t\t \t\t<Suspense @resolve=\"onSuspenseResolved\">\n\t\t\t\t\t\t\t<router-view \n\t\t\t\t\t\t\t\tid=\"view\"\n\t\t\t\t\t\t\t\tv-slot=\"{ Component, route }\" \n\t\t\t\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t\t\t\t'scroll-hide': MOBILE_APP,\n\t\t\t\t\t\t\t\t}\"\n\t\t\t\t\t\t\t\tclass=\"h-min-100 pos-relative w-100\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<transition @before-enter=\"scrollTop\" name=\"scaleTransition\" mode=\"out-in\" appear>\n\t\t\t\t\t \t<component \n\t\t\t\t\t \t\tref=\"page\" \n\t\t\t\t\t \t\t:is=\"Component\" \n\t\t\t\t\t \t\tclass=\"w-100 h-min-100\"\n\t\t\t\t \t\t \t@page-loading=\"handlePageLoading\"\n\t\t\t @page-loaded=\"handlePageLoaded\"\n\t\t\t :key=\"componentKey\"\n\t\t\t\t\t \t/>\n\t\t\t\t\t \t<!-- Key пока выключил непонятно какие проблемы это вызовет -->\n\t\t\t\t\t \t<!-- :key=\"route.path\" -->\n\t\t\t\t\t </transition>\n\t\t\t\t\t\t </router-view>\n\t\t\t\t\t\t</Suspense>\n\t\t\t\t </div>\n\n\t\t\t\t \t<component \n\t\t\t v-if=\"route.meta.player\"\n\t\t\t class=\"z-index-2\"\n\t\t\t \t:is=\"route.meta.player\"\n\t\t\t />\n\t\t\t \t<transition @before-enter=\"scrollTop\" name=\"scaleTransition\" mode=\"out-in\" appear>\n\t\t <component\n\t\t\t\t\t\t\tv-if=\"!MOBILE_APP && route.meta.footer && !route.meta.hideFooter && page && !isPageLoading\"\n\t\t\t\t ref=\"footer\" \n\t\t\t\t :is=\"route.meta.footer\"\n\t\t\t\t :theme=\"headerTheme\"\n\t\t\t\t :logotype=\"route.meta.logotype\"\n\t\t\t\t :location=\"route.meta.location\"\n\t\t\t\t />\n\t\t\t \t</transition>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</section>\n\n\t\t<router-view \n\t\t\tname=\"defaultBottom\"\n\t\t\tv-slot=\"{ Component, route }\" \n\t\t>\n\t\t\t<component \n \t\t:is=\"Component\" \n \t/>\n\t\t</router-view>\n\n\t\n\n\n <component \n v-if=\"MOBILE_APP && route.meta.title_hide\"\n class=\"z-index-2\"\n \t:is=\"route.meta.bottombar\"\n />\n\t</div>\n</template>\n\n\n\n<script setup>\n\timport { computed, ref, onMounted } from 'vue';\n\t// Router\n\timport { useRoute } from 'vue-router';\n\t// Store\n\timport * as globals from '@martyrs/src/modules/globals/views/store/globals.js';\n\t// Partials\n\timport Status from '@martyrs/src/components/Status/Status.vue';\n\timport Snack from '@martyrs/src/components/Status/Snack.vue';\n\timport Popup from '@martyrs/src/components/Popup/Popup.vue';\n\timport Breadcrumbs from '@martyrs/src/components/Breadcrumbs/Breadcrumbs.vue'\n\timport Loader from '@martyrs/src/components/Loader/Loader.vue';\n\n\timport NavigationBar from '@martyrs/src/modules/globals/views/components/partials/NavigationBar.vue';\n\timport LocationSelection from '@martyrs/src/modules/globals/views/components/partials/LocationSelection.vue';\n\n\timport ShopCart from '@martyrs/src/modules/orders/components/partials/ShopCart.vue';\n\t// PROPS\n\tconst props = defineProps({\n env: {\n type: Object,\n required: true\n },\n app: {\n type: Object,\n required: true\n },\n modules: {\n type: Object,\n required: true\n }\n })\n\n\t/////////////////////////////\n // LOADING\n /////////////////////////////\n // State\n let show = ref(false)\n // Preloader\n const page = ref(null)\n const scrollview = ref(null)\n\n const isPageLoading = ref(true);\n \n // Обработчики событий загрузки\n function handlePageLoading() {\n isPageLoading.value = true;\n }\n \n function handlePageLoaded() {\n isPageLoading.value = false;\n }\n \n // Обработка события разрешения Suspense (когда async setup компонента завершается)\n function onSuspenseResolved() {\n // Если страница не отправляет событие page-loaded, этот обработчик \n // может служить запасным вариантом для отключения лоадера\n // Можно оставить закомментированным, если все страницы будут явно вызывать handlePageLoaded\n isPageLoading.value = false;\n }\n\t/////////////////////////////\n\t// CREATED\n\t/////////////////////////////\n\tconst route = useRoute()\n\t// const router = useRouter()\n\t// Ref Code\n\tconst referalCode = ref(route.query.referalCode);\n\t/////////////////////////////\n\t// Methods\n\t/////////////////////////////\n\tfunction closeLocationPopup() {\n\t globals.state.isOpenLocationPopup = false;\n\t}\n\tfunction scrollTop(){\n\t\tif (scrollview.value) scrollview.value.scrollTop = 0;\n\t}\n\t// Scrolling header\n\tconst scrollOffset = ref(0)\n\tlet isScrolled = false\n\tconst header = ref(null)\n\n\tconst headerTheme = computed(() => {\n\t\tif (scrollOffset.value > 50) {\n\t\t\treturn route.meta.header_theme || 'light'\n\t\t} else {\n\t\t\treturn route.meta.header_theme || 'light'\n\t\t}\n\t})\n\n\tconst handleScroll = () => {\n\t scrollOffset.value = event.target.scrollTop\n\t};\n/////////////////////////////\n // FIRST USE\n /////////////////////////////\n const FirstUse = ref(false);\n\n import { Preferences } from '@capacitor/preferences';\n\n async function getFirstUse() {\n const ret = await Preferences.get({ key: 'first-use' });\n FirstUse.value = ret.value ? JSON.parse(ret.value) : true;\n }\n\n const updateFirstUse = (value) => {\n FirstUse.value = value;\n }\n\n\tonMounted(async () => {\n\t await getFirstUse()\n\n\t\t// Регистрация единого Service Worker (PWA + push notifications)\n\t\tif ('serviceWorker' in navigator && !window.__MOBILE_APP__) {\n\t \twindow.addEventListener('load', () => {\n\t \tnavigator.serviceWorker.register('/sw.js').then(registration => {\n\t \tconsole.log('Unified SW registered: ', registration);\n\t \t}).catch(registrationError => {\n\t \tconsole.log('SW registration failed: ', registrationError);\n\t \t});\n\t });\n\t \t}\n\t\t\n\t\tconst savedPosition = localStorage.getItem('position');\n\n\t if (savedPosition) {\n\t globals.state.position = JSON.parse(savedPosition);\n\t } else if (route.meta.location) {\n \t\tglobals.state.isOpenLocationPopup = true;\n\t } else {\n\t \tglobals.state.isOpenLocationPopup = false;\n\t }\n\n\t\tif (referalCode.value) {\n\t\t localStorage.setItem('referalCode', referalCode.value);\n\t\t}\n\n\t\tif (page.value) show.value = true\n\t});\n\n\tconst componentKey = computed(() => {\n\t // Собираем только значимые параметры (ID сущностей)\n\t const significantParams = ['_id', 'product', 'organization', 'categoryPath']\n\t .map(param => route.params[param])\n\t .filter(Boolean)\n\t .join('-');\n\t \n\t return significantParams || route.name;\n\t});\n</script>\n\n<style lang=\"scss\">\n\t.fade-enter-active, .fade-leave-active {\n\t transition: opacity .5s;\n\t}\n\t.fade-enter, .fade-leave-to /* .fade-leave-active в версии 2.1.8+ */ {\n\t opacity: 0;\n\t}\n\n\t\n .fade-move,\n .fade-enter-active,\n .fade-leave-active {\n transition: all 0.5s cubic-bezier(0.55, 0, 0.1, 1);\n }\n\n /* 2. declare enter from and leave to state */\n .fade-enter-from,\n .fade-leave-to {\n opacity: 0;\n transform: translate(30px, 0);\n }\n\n /* 3. ensure leaving items are taken out of layout flow so that moving\n animations can be calculated correctly. */\n .fade-leave-active {\n position: absolute;\n }\n\n.moveFromTop-enter-active,\n.moveFromTop-leave-active {\n transition: all 0.3s ease, max-height 0.2s ease;\n overflow: hidden;\n}\n\n.moveFromTop-enter-from,\n.moveFromTop-leave-to {\n transform: translateY(-1rem);\n opacity: 0;\n // max-height: 0;\n}\n\n.moveFromTop-enter-to,\n.moveFromTop-leave-from {\n // max-height: 100vh; \n}\n\n\t.moveFromTopAbsolute-enter-active,\n\t.moveFromTopAbsolute-leave-active {\n\t\ttransform: translateY(0);\n\t\topacity: 1;\n\t\ttransition: all 0.5s ease; \n\t\t\n\t}\n\t.moveFromTopAbsolute-enter-from,\n\t.moveFromTopAbsolute-leave-to {\n\t\tposition: absolute;\n\t\ttransform: translateY(-1rem);\n\t\topacity: 0;\n\t\ttransition: all 0.5s ease;\n\t}\n\t.ScaleOut-enter-active,\n\t.ScaleOut-leave-active {\n\t\topacity: 1;\n\t\ttransform: scale(1);\n\t\ttransition: all 0.3s ease; \n\t\t\n\t}\n\t.ScaleOut-enter-from,\n\t.ScaleOut-leave-to {\n\t\topacity: 0;\n\t\ttransform: scale(0.9);\n\t\ttransition: all 0.3s ease;\n\t}\n\t.slide-fade-enter-active {\n\t\t// min-height: 100vh;\n\t transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n\t}\n\n\t.slide-fade-leave-active {\n\t\t// min-height: 100vh;\n\t transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n\t}\n\n\t.slide-fade-enter-from,\n\t.slide-fade-leave-to {\n\t\tmin-height: 0;\n\t transform: translateX(20px);\n\t opacity: 0;\n\t left: 0;\n\t top: 0;\n\t}\n\n\t.scaleTransition-5px-enter-active,\n .scaleTransition-5px-leave-active {\n transform: translateY(0px); \n opacity: 1;\n z-index: 1;\n transition: all 0.2s ease;\n }\n\n .scaleTransition-5px-enter-from,\n .scaleTransition-5px-leave-to {\n opacity: 0;\n z-index: 0;\n position: absolute;\n transform: translateY(-30px); \n transition: all 0.2s ease;\n }\n\n .scaleTransition-enter-from,\n .scaleTransition-leave-to {\n opacity: 0;\n z-index: 0;\n position: absolute;\n width: inherit;\n height: inherit;\n display: block;\n transform: translateY(30px); \n transition: all 0.5s ease;\n }\n\n .scaleTransition-enter-active,\n .scaleTransition-leave-active {\n transform: translateY(0px); \n opacity: 1;\n z-index: 1;\n transition: all 0.5s ease;\n }\n .scaleTransition-enter-from,\n .scaleTransition-leave-to {\n opacity: 0;\n z-index: 0;\n position: absolute;\n width: inherit;\n height: inherit;\n display: block;\n transform: translateY(30px); \n transition: all 0.5s ease;\n }\n\n .scaleIn-enter-active,\n .scaleIn-leave-active {\n // background: red;\n transition: all 0.5s ease;\n > section,div { transform-origin: 0 0; transform: translateZ(0px); transition: all 0.5s ease; }\n }\n .scaleIn-enter-from,\n .scaleIn-leave-to {\n opacity: 0;\n transform: scale(0.95);\n > section,div { transform: translateZ(-30px); transition: all 0.5s ease; }\n }\n</style>"],"names":["globals.state"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyOE,QAAI,OAAO,IAAI,KAAK;AAEpB,UAAM,OAAO,IAAI,IAAI;AACpB,UAAM,aAAa,IAAI,IAAI;AAE5B,UAAM,gBAAgB,IAAI,IAAI;AAG9B,aAAS,oBAAoB;AAC3B,oBAAc,QAAQ;AAAA,IACxB;AAEA,aAAS,mBAAmB;AAC1B,oBAAc,QAAQ;AAAA,IACxB;AAGA,aAAS,qBAAqB;AAI5B,oBAAc,QAAQ;AAAA,IACxB;AAID,UAAM,QAAQ,SAAQ;AAGtB,UAAM,cAAc,IAAI,MAAM,MAAM,WAAW;AAI/C,aAAS,qBAAqB;AAC5BA,YAAc,sBAAsB;AAAA,IACtC;AACA,aAAS,YAAW;AACnB,UAAI,WAAW,MAAO,YAAW,MAAM,YAAY;AAAA,IACpD;AAEA,UAAM,eAAe,IAAI,CAAC;AAE1B,UAAM,SAAS,IAAI,IAAI;AAEvB,UAAM,cAAc,SAAS,MAAM;AAClC,UAAI,aAAa,QAAQ,IAAI;AAC5B,eAAO,MAAM,KAAK,gBAAiB;AAAA,MACpC,OAAO;AACN,eAAO,MAAM,KAAK,gBAAgB;AAAA,MACnC;AAAA,IACD,CAAC;AAED,UAAM,eAAe,MAAM;AACzB,mBAAa,QAAQ,MAAM,OAAO;AAAA,IACpC;AAIC,UAAM,WAAW,IAAI,KAAK;AAI1B,mBAAe,cAAc;AAC3B,YAAM,MAAM,MAAM,YAAY,IAAI,EAAE,KAAK,aAAa;AACtD,eAAS,QAAQ,IAAI,QAAQ,KAAK,MAAM,IAAI,KAAK,IAAI;AAAA,IACvD;AAEA,UAAM,iBAAiB,CAAC,UAAU;AAChC,eAAS,QAAQ;AAAA,IACnB;AAED,cAAU,YAAY;AACpB,YAAM,YAAW;AAGlB,UAAI,mBAAmB,aAAa,CAAC,OAAO,gBAAgB;AACzD,eAAO,iBAAiB,QAAQ,MAAM;AACpC,oBAAU,cAAc,SAAS,QAAQ,EAAE,KAAK,kBAAgB;AAC9D,oBAAQ,IAAI,2BAA2B,YAAY;AAAA,UACrD,CAAC,EAAE,MAAM,uBAAqB;AAC5B,oBAAQ,IAAI,4BAA4B,iBAAiB;AAAA,UAC3D,CAAC;AAAA,QACJ,CAAC;AAAA,MACF;AAED,YAAM,gBAAgB,aAAa,QAAQ,UAAU;AAEpD,UAAI,eAAe;AACjBA,cAAc,WAAW,KAAK,MAAM,aAAa;AAAA,MACnD,WAAW,MAAM,KAAK,UAAU;AAC/BA,cAAc,sBAAsB;AAAA,MACrC,OAAO;AACNA,cAAc,sBAAsB;AAAA,MACrC;AAED,UAAI,YAAY,OAAO;AACrB,qBAAa,QAAQ,eAAe,YAAY,KAAK;AAAA,MACvD;AAEA,UAAI,KAAK,MAAO,MAAK,QAAQ;AAAA,IAC9B,CAAC;AAED,UAAM,eAAe,SAAS,MAAM;AAElC,YAAM,oBAAoB,CAAC,OAAO,WAAW,gBAAgB,cAAc,EACxE,IAAI,WAAS,MAAM,OAAO,KAAK,CAAC,EAChC,OAAO,OAAO,EACd,KAAK,GAAG;AAEX,aAAO,qBAAqB,MAAM;AAAA,IACpC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"Client.vue.js","sources":["../../../../../../../../src/modules/globals/views/components/layouts/Client.vue"],"sourcesContent":["<template>\n\t<div \n\t\tid=\"app-wrapper\"\n\t\tclass=\"flex flex-column h-100 w-100 pos-relative o-hidden\"\n\t\t:class=\"{\n \t\t'pd-t-big': MOBILE_APP === 'ios', \n\t\t\t'bg-white': headerTheme === 'light',\n\t\t\t'bg-black': headerTheme === 'dark' \n \t}\"\n\t>\n\t\t<transition name=\"moveFromTop\" appear>\n\t\t\t<Loader v-if=\"!page || globals.state.loading\" class=\"pos-fixed\"/>\n\t\t</transition>\n\n\n\t <transition \n\t name=\"moveFromTop\" \n\t mode=\"out-in\"\n\t >\n\t \t\n\t <section \n\t v-if=\"FirstUse && route.meta.walkthrough\"\n\t class=\"w-100 h-100\" \n\t >\n\t <component \n\t :is=\"route.meta.walkthrough\"\n\t name=\"Walkthrough\"\n\t @updateFirstUse=\"updateFirstUse\" \n\t :slides=\"[1,2,3]\" \n\t class=\"tab\"\n\t >\n\t </component>\n\t </section>\n\t </transition>\n\n <component\n\t\t\tv-if=\"!MOBILE_APP && route.meta.header\"\n ref=\"header\" \n :is=\"route.meta.header\"\n :theme=\"headerTheme\"\n :logotype=\"route.meta.logotype\"\n :location=\"route.meta.location\"\n >\n \t<component\n\t\t v-if=\"route.meta?.header_navigation\"\n\t\t :is=\"route.meta.header_navigation\"\n\t\t :horizontal=\"true\"\n\t\t\t\t:navigationItems=\"route.meta.header_navigation_items\"\n\t\t\t\t:stateSidebar=\"globals.state.isOpenSidebar\" \n\t\t\t\t:theme=\"headerTheme\"\n\t\t />\n \t</component>\n\n\t\t<transition name=\"moveFromTop\" mode=\"out-in\" appear>\n\t\t\t<component\n \tv-if=\"MOBILE_APP && !route.meta.hideNavigationBar\"\n :is=\"route.meta.navigationbar\"\n :logotype=\"route.meta.logotype\"\n :navigationItems=\"route.meta.sidebar_navigation_items\"\n\t :stateSidebar=\"globals.state.isOpenSidebar\" \n />\n\t\t</transition>\n\n\t <Popup \n\t \t@close-popup=\"closeLocationPopup\" \n\t \t:isPopupOpen=\"globals.state.isOpenLocationPopup\"\n\t \tclass=\"bg-white pd-semi w-m-33r radius-big\"\n\t >\t\n\t \t<LocationSelection />\n\t </Popup>\n\n\t <!-- class=\"flex flex-nowrap transition-ease-in-out o-hidden pos-relative\" -->\n\t\t<section \n\t\t\tid=\"screen\" \n\t\t\tref=\"screen\"\n\t\t\t@scroll=\"handleScroll\"\n\t\t\tclass=\"flex flex-nowrap h-100 pos-relative o-hidden transition-ease-in-out\"\n\t\t\t:class=\"{\n\t\t\t\t'': MOBILE_APP === 'ios',\n }\"\n\t\t>\n\t\t\t<ShopCart \n\t\t\t\t:class=\"{\n\t\t\t\t\t'mobile:pd-t-extra': MOBILE_APP === 'ios', \n\t\t\t\t}\"\n\t\t\t/>\n\t <component\n\t v-if=\"route.meta?.sidebar\"\n\t v-slot=\"{ Component }\"\n\t :is=\"route.meta.sidebar\"\n\t :stateSidebar=\"globals.state.isOpenSidebar\" \n\t :widthHidden='route.meta?.sidebar_width_hidden'\n\t :width=\"route.meta?.sidebar_width\"\n\t :theme=\"headerTheme\"\n\t @closeSidebar=\"() => globals.state.isOpenSidebar = false\"\n\t >\n\t \t<transition name=\"moveFromTop\" mode=\"out-in\">\n\t\t <component\n\t\t v-if=\"route.meta?.sidebar_navigation\"\n\t\t :is=\"route.meta.sidebar_navigation\"\n\t\t :key=\"route.meta.sidebar_navigation\"\n\t\t :navigationItems=\"route.meta.sidebar_navigation_items\"\n\t\t\t :stateSidebar=\"globals.state.isOpenSidebar\" \n\t\t\t\t\t\t:theme=\"headerTheme\"\n\t\t />\n\t </transition>\n\t </component>\n\t\t <!-- rows-1-min0_max1 z-index-1 pos-relative w-100 h-100 -->\n\t\t <div class=\"rows-1-min0_max1 z-index-1 pos-relative w-100 h-100\">\n\t\t \t<div id=\"scrollview\" ref=\"scrollview\" class=\"o-y-scroll o-x-hidden h-100\">\n\t \t\t\t<Status \n\t \t\t\t\tv-if=\"globals.state.error.show\"\n\t\t\t\t\t\t:data=\"globals.state.error\"\n\t\t\t\t\t\t@close=\"globals.state.error.show = false\"\n\t\t\t\t\t\tclass=\"z-index-7\" \n\t\t\t\t\t/>\n\t\t\t\t\t<Snack \n\t \t\t\t\tv-if=\"globals.state.snack.show\"\n\t\t\t\t\t\t:data=\"globals.state.snack\"\n\t\t\t\t\t\t@close=\"globals.state.snack.show = false\"\n\t\t\t\t\t\tclass=\"z-index-7\" \n\t\t\t\t\t/>\n\t\t\t\t\t<div class=\"h-min-100 pos-relative w-100\">\n\t\t\t\t\t\t<!-- <section v-if=\"!route.meta?.breadcrumbs?.hide\" class=\"pd-thin pd-b-zero\">\n\t\t\t\t\t\t\t<Breadcrumbs \n\t\t\t\t\t\t\t\tv-if=\"!MOBILE_APP\"\n\t\t\t\t\t\t\t\tclass=\"bg-light pd-small radius-small\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</section> -->\n\n\t\t\t\t \t\t<Suspense @resolve=\"onSuspenseResolved\">\n\t\t\t\t\t\t\t<router-view \n\t\t\t\t\t\t\t\tid=\"view\"\n\t\t\t\t\t\t\t\tv-slot=\"{ Component, route }\" \n\t\t\t\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t\t\t\t'scroll-hide': MOBILE_APP,\n\t\t\t\t\t\t\t\t}\"\n\t\t\t\t\t\t\t\tclass=\"h-min-100 pos-relative w-100\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<transition @before-enter=\"scrollTop\" name=\"scaleTransition\" mode=\"out-in\" appear>\n\t\t\t\t\t \t<component \n\t\t\t\t\t \t\tref=\"page\" \n\t\t\t\t\t \t\t:is=\"Component\" \n\t\t\t\t\t \t\tclass=\"w-100 h-min-100\"\n\t\t\t\t \t\t \t@page-loading=\"handlePageLoading\"\n\t\t\t @page-loaded=\"handlePageLoaded\"\n\t\t\t :key=\"componentKey\"\n\t\t\t\t\t \t/>\n\t\t\t\t\t \t<!-- Key пока выключил непонятно какие проблемы это вызовет -->\n\t\t\t\t\t \t<!-- :key=\"route.path\" -->\n\t\t\t\t\t </transition>\n\t\t\t\t\t\t </router-view>\n\t\t\t\t\t\t</Suspense>\n\t\t\t\t </div>\n\n\t\t\t\t \t<component \n\t\t\t v-if=\"route.meta.player\"\n\t\t\t class=\"z-index-2\"\n\t\t\t \t:is=\"route.meta.player\"\n\t\t\t />\n\t\t\t \t<transition @before-enter=\"scrollTop\" name=\"scaleTransition\" mode=\"out-in\" appear>\n\t\t <component\n\t\t\t\t\t\t\tv-if=\"!MOBILE_APP && route.meta.footer && !route.meta.hideFooter && page && !globals.state.loading\"\n\t\t\t\t ref=\"footer\" \n\t\t\t\t :is=\"route.meta.footer\"\n\t\t\t\t :theme=\"headerTheme\"\n\t\t\t\t :logotype=\"route.meta.logotype\"\n\t\t\t\t :location=\"route.meta.location\"\n\t\t\t\t />\n\t\t\t \t</transition>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</section>\n\n\t\t<router-view \n\t\t\tname=\"defaultBottom\"\n\t\t\tv-slot=\"{ Component, route }\" \n\t\t>\n\t\t\t<component \n \t\t:is=\"Component\" \n \t/>\n\t\t</router-view>\n\n\t\n\n\n <component \n v-if=\"MOBILE_APP && route.meta.title_hide\"\n class=\"z-index-2\"\n \t:is=\"route.meta.bottombar\"\n />\n\t</div>\n</template>\n\n\n\n<script setup>\n\timport { computed, ref, onMounted } from 'vue';\n\t// Router\n\timport { useRoute } from 'vue-router';\n\t// Store\n\timport * as globals from '@martyrs/src/modules/globals/views/store/globals.js';\n\t// Partials\n\timport Status from '@martyrs/src/components/Status/Status.vue';\n\timport Snack from '@martyrs/src/components/Status/Snack.vue';\n\timport Popup from '@martyrs/src/components/Popup/Popup.vue';\n\timport Breadcrumbs from '@martyrs/src/components/Breadcrumbs/Breadcrumbs.vue'\n\timport Loader from '@martyrs/src/components/Loader/Loader.vue';\n\n\timport NavigationBar from '@martyrs/src/modules/globals/views/components/partials/NavigationBar.vue';\n\timport LocationSelection from '@martyrs/src/modules/globals/views/components/partials/LocationSelection.vue';\n\n\timport ShopCart from '@martyrs/src/modules/orders/components/partials/ShopCart.vue';\n\t// PROPS\n\tconst props = defineProps({\n env: {\n type: Object,\n required: true\n },\n app: {\n type: Object,\n required: true\n },\n modules: {\n type: Object,\n required: true\n }\n })\n\n\t/////////////////////////////\n // LOADING\n /////////////////////////////\n // State\n let show = ref(false)\n // Preloader\n const page = ref(null)\n const scrollview = ref(null)\n\n // isPageLoading убран - используем globals.state.loading\n \n // Обработчики событий загрузки\n function handlePageLoading() {\n globals.state.loading = true;\n }\n \n function handlePageLoaded() {\n globals.state.loading = false;\n }\n \n // Обработка события разрешения Suspense (когда async setup компонента завершается)\n function onSuspenseResolved() {\n // Если страница не отправляет событие page-loaded, этот обработчик \n // может служить запасным вариантом для отключения лоадера\n // Можно оставить закомментированным, если все страницы будут явно вызывать handlePageLoaded\n globals.state.loading = false;\n }\n\t/////////////////////////////\n\t// CREATED\n\t/////////////////////////////\n\tconst route = useRoute()\n\t// const router = useRouter()\n\t// Ref Code\n\tconst referalCode = ref(route.query.referalCode);\n\t/////////////////////////////\n\t// Methods\n\t/////////////////////////////\n\tfunction closeLocationPopup() {\n\t globals.state.isOpenLocationPopup = false;\n\t}\n\tfunction scrollTop(){\n\t\tif (scrollview.value) scrollview.value.scrollTop = 0;\n\t}\n\t// Scrolling header\n\tconst scrollOffset = ref(0)\n\tlet isScrolled = false\n\tconst header = ref(null)\n\n\tconst headerTheme = computed(() => {\n\t\tif (scrollOffset.value > 50) {\n\t\t\treturn route.meta.header_theme || 'light'\n\t\t} else {\n\t\t\treturn route.meta.header_theme || 'light'\n\t\t}\n\t})\n\n\tconst handleScroll = () => {\n\t scrollOffset.value = event.target.scrollTop\n\t};\n/////////////////////////////\n // FIRST USE\n /////////////////////////////\n const FirstUse = ref(false);\n\n import { Preferences } from '@capacitor/preferences';\n\n async function getFirstUse() {\n const ret = await Preferences.get({ key: 'first-use' });\n FirstUse.value = ret.value ? JSON.parse(ret.value) : true;\n }\n\n const updateFirstUse = (value) => {\n FirstUse.value = value;\n }\n\n\tonMounted(async () => {\n\t await getFirstUse()\n\n\t\t// Регистрация единого Service Worker (PWA + push notifications)\n\t\tif ('serviceWorker' in navigator && !window.__MOBILE_APP__) {\n\t \twindow.addEventListener('load', () => {\n\t \tnavigator.serviceWorker.register('/sw.js').then(registration => {\n\t \tconsole.log('Unified SW registered: ', registration);\n\t \t}).catch(registrationError => {\n\t \tconsole.log('SW registration failed: ', registrationError);\n\t \t});\n\t });\n\t \t}\n\t\t\n\t\tconst savedPosition = localStorage.getItem('position');\n\n\t if (savedPosition) {\n\t globals.state.position = JSON.parse(savedPosition);\n\t } else if (route.meta.location) {\n \t\tglobals.state.isOpenLocationPopup = true;\n\t } else {\n\t \tglobals.state.isOpenLocationPopup = false;\n\t }\n\n\t\tif (referalCode.value) {\n\t\t localStorage.setItem('referalCode', referalCode.value);\n\t\t}\n\n\t\tif (page.value) show.value = true\n\t});\n\n\tconst componentKey = computed(() => {\n\t // Собираем только значимые параметры (ID сущностей)\n\t const significantParams = ['_id', 'product', 'organization', 'categoryPath']\n\t .map(param => route.params[param])\n\t .filter(Boolean)\n\t .join('-');\n\t \n\t return significantParams || route.name;\n\t});\n</script>\n\n<style lang=\"scss\">\n\t.fade-enter-active, .fade-leave-active {\n\t transition: opacity .5s;\n\t}\n\t.fade-enter, .fade-leave-to /* .fade-leave-active в версии 2.1.8+ */ {\n\t opacity: 0;\n\t}\n\n\t\n .fade-move,\n .fade-enter-active,\n .fade-leave-active {\n transition: all 0.5s cubic-bezier(0.55, 0, 0.1, 1);\n }\n\n /* 2. declare enter from and leave to state */\n .fade-enter-from,\n .fade-leave-to {\n opacity: 0;\n transform: translate(30px, 0);\n }\n\n /* 3. ensure leaving items are taken out of layout flow so that moving\n animations can be calculated correctly. */\n .fade-leave-active {\n position: absolute;\n }\n\n.moveFromTop-enter-active,\n.moveFromTop-leave-active {\n transition: all 0.3s ease, max-height 0.2s ease;\n overflow: hidden;\n}\n\n.moveFromTop-enter-from,\n.moveFromTop-leave-to {\n transform: translateY(-1rem);\n opacity: 0;\n // max-height: 0;\n}\n\n.moveFromTop-enter-to,\n.moveFromTop-leave-from {\n // max-height: 100vh; \n}\n\n\t.moveFromTopAbsolute-enter-active,\n\t.moveFromTopAbsolute-leave-active {\n\t\ttransform: translateY(0);\n\t\topacity: 1;\n\t\ttransition: all 0.5s ease; \n\t\t\n\t}\n\t.moveFromTopAbsolute-enter-from,\n\t.moveFromTopAbsolute-leave-to {\n\t\tposition: absolute;\n\t\ttransform: translateY(-1rem);\n\t\topacity: 0;\n\t\ttransition: all 0.5s ease;\n\t}\n\t.ScaleOut-enter-active,\n\t.ScaleOut-leave-active {\n\t\topacity: 1;\n\t\ttransform: scale(1);\n\t\ttransition: all 0.3s ease; \n\t\t\n\t}\n\t.ScaleOut-enter-from,\n\t.ScaleOut-leave-to {\n\t\topacity: 0;\n\t\ttransform: scale(0.9);\n\t\ttransition: all 0.3s ease;\n\t}\n\t.slide-fade-enter-active {\n\t\t// min-height: 100vh;\n\t transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n\t}\n\n\t.slide-fade-leave-active {\n\t\t// min-height: 100vh;\n\t transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n\t}\n\n\t.slide-fade-enter-from,\n\t.slide-fade-leave-to {\n\t\tmin-height: 0;\n\t transform: translateX(20px);\n\t opacity: 0;\n\t left: 0;\n\t top: 0;\n\t}\n\n\t.scaleTransition-5px-enter-active,\n .scaleTransition-5px-leave-active {\n transform: translateY(0px); \n opacity: 1;\n z-index: 1;\n transition: all 0.2s ease;\n }\n\n .scaleTransition-5px-enter-from,\n .scaleTransition-5px-leave-to {\n opacity: 0;\n z-index: 0;\n position: absolute;\n transform: translateY(-30px); \n transition: all 0.2s ease;\n }\n\n .scaleTransition-enter-from,\n .scaleTransition-leave-to {\n opacity: 0;\n z-index: 0;\n position: absolute;\n width: inherit;\n height: inherit;\n display: block;\n transform: translateY(30px); \n transition: all 0.5s ease;\n }\n\n .scaleTransition-enter-active,\n .scaleTransition-leave-active {\n transform: translateY(0px); \n opacity: 1;\n z-index: 1;\n transition: all 0.5s ease;\n }\n .scaleTransition-enter-from,\n .scaleTransition-leave-to {\n opacity: 0;\n z-index: 0;\n position: absolute;\n width: inherit;\n height: inherit;\n display: block;\n transform: translateY(30px); \n transition: all 0.5s ease;\n }\n\n .scaleIn-enter-active,\n .scaleIn-leave-active {\n // background: red;\n transition: all 0.5s ease;\n > section,div { transform-origin: 0 0; transform: translateZ(0px); transition: all 0.5s ease; }\n }\n .scaleIn-enter-from,\n .scaleIn-leave-to {\n opacity: 0;\n transform: scale(0.95);\n > section,div { transform: translateZ(-30px); transition: all 0.5s ease; }\n }\n</style>"],"names":["globals.state"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyOE,QAAI,OAAO,IAAI,KAAK;AAEpB,UAAM,OAAO,IAAI,IAAI;AACpB,UAAM,aAAa,IAAI,IAAI;AAK5B,aAAS,oBAAoB;AAC3BA,YAAc,UAAU;AAAA,IAC1B;AAEA,aAAS,mBAAmB;AAC1BA,YAAc,UAAU;AAAA,IAC1B;AAGA,aAAS,qBAAqB;AAI5BA,YAAc,UAAU;AAAA,IAC1B;AAID,UAAM,QAAQ,SAAQ;AAGtB,UAAM,cAAc,IAAI,MAAM,MAAM,WAAW;AAI/C,aAAS,qBAAqB;AAC5BA,YAAc,sBAAsB;AAAA,IACtC;AACA,aAAS,YAAW;AACnB,UAAI,WAAW,MAAO,YAAW,MAAM,YAAY;AAAA,IACpD;AAEA,UAAM,eAAe,IAAI,CAAC;AAE1B,UAAM,SAAS,IAAI,IAAI;AAEvB,UAAM,cAAc,SAAS,MAAM;AAClC,UAAI,aAAa,QAAQ,IAAI;AAC5B,eAAO,MAAM,KAAK,gBAAiB;AAAA,MACpC,OAAO;AACN,eAAO,MAAM,KAAK,gBAAgB;AAAA,MACnC;AAAA,IACD,CAAC;AAED,UAAM,eAAe,MAAM;AACzB,mBAAa,QAAQ,MAAM,OAAO;AAAA,IACpC;AAIC,UAAM,WAAW,IAAI,KAAK;AAI1B,mBAAe,cAAc;AAC3B,YAAM,MAAM,MAAM,YAAY,IAAI,EAAE,KAAK,aAAa;AACtD,eAAS,QAAQ,IAAI,QAAQ,KAAK,MAAM,IAAI,KAAK,IAAI;AAAA,IACvD;AAEA,UAAM,iBAAiB,CAAC,UAAU;AAChC,eAAS,QAAQ;AAAA,IACnB;AAED,cAAU,YAAY;AACpB,YAAM,YAAW;AAGlB,UAAI,mBAAmB,aAAa,CAAC,OAAO,gBAAgB;AACzD,eAAO,iBAAiB,QAAQ,MAAM;AACpC,oBAAU,cAAc,SAAS,QAAQ,EAAE,KAAK,kBAAgB;AAC9D,oBAAQ,IAAI,2BAA2B,YAAY;AAAA,UACrD,CAAC,EAAE,MAAM,uBAAqB;AAC5B,oBAAQ,IAAI,4BAA4B,iBAAiB;AAAA,UAC3D,CAAC;AAAA,QACJ,CAAC;AAAA,MACF;AAED,YAAM,gBAAgB,aAAa,QAAQ,UAAU;AAEpD,UAAI,eAAe;AACjBA,cAAc,WAAW,KAAK,MAAM,aAAa;AAAA,MACnD,WAAW,MAAM,KAAK,UAAU;AAC/BA,cAAc,sBAAsB;AAAA,MACrC,OAAO;AACNA,cAAc,sBAAsB;AAAA,MACrC;AAED,UAAI,YAAY,OAAO;AACrB,qBAAa,QAAQ,eAAe,YAAY,KAAK;AAAA,MACvD;AAEA,UAAI,KAAK,MAAO,MAAK,QAAQ;AAAA,IAC9B,CAAC;AAED,UAAM,eAAe,SAAS,MAAM;AAElC,YAAM,oBAAoB,CAAC,OAAO,WAAW,gBAAgB,cAAc,EACxE,IAAI,WAAS,MAAM,OAAO,KAAK,CAAC,EAChC,OAAO,OAAO,EACd,KAAK,GAAG;AAEX,aAAO,qBAAqB,MAAM;AAAA,IACpC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -6,7 +6,7 @@ import LabelGooglePlay from "../../../../icons/labels/LabelGooglePlay.vue.js";
|
|
|
6
6
|
import LabelAppStore from "../../../../icons/labels/LabelAppStore.vue.js";
|
|
7
7
|
import _sfc_main$1 from "../../../../icons/entities/IconPhone.vue.js";
|
|
8
8
|
import _sfc_main$2 from "../../../../icons/entities/IconEmail.vue.js";
|
|
9
|
-
import
|
|
9
|
+
import IconTime from "../../../../icons/entities/IconTime.vue.js";
|
|
10
10
|
import _sfc_main$8 from "../../../../icons/socials/instagram.vue.js";
|
|
11
11
|
import _sfc_main$7 from "../../../../icons/socials/facebook.vue.js";
|
|
12
12
|
import _sfc_main$6 from "../../../../icons/socials/linkedin.vue.js";
|
|
@@ -210,7 +210,7 @@ const _sfc_main = {
|
|
|
210
210
|
createElementVNode("span", _hoisted_9, toDisplayString(unref(t)("emailAddress")), 1)
|
|
211
211
|
], 10, _hoisted_8),
|
|
212
212
|
createElementVNode("div", _hoisted_10, [
|
|
213
|
-
createVNode(
|
|
213
|
+
createVNode(IconTime, {
|
|
214
214
|
class: "i-regular",
|
|
215
215
|
fill: __props.theme === "light" ? "rgb(var(--black))" : "rgb(var(--white))"
|
|
216
216
|
}, null, 8, ["fill"]),
|
|
@@ -8,7 +8,7 @@ const shopcart = require("../../../../orders/store/shopcart.cjs");
|
|
|
8
8
|
const auth = require("../../../../auth/views/store/auth.cjs");
|
|
9
9
|
const NotificationBadge = require("../../../../notifications/components/elements/NotificationBadge.vue.cjs");
|
|
10
10
|
const Button = require("../../../../../components/Button/Button.vue.cjs");
|
|
11
|
-
const Select = require("../../../../../components/Select/Select.
|
|
11
|
+
const Select = require("../../../../../components/Select/Select.vue.cjs");
|
|
12
12
|
const IconShopcart = require("../../../../icons/entities/IconShopcart.vue.cjs");
|
|
13
13
|
const IconProfile = require("../../../../icons/entities/IconProfile.vue.cjs");
|
|
14
14
|
const IconSearch = require("../../../../icons/navigation/IconSearch.vue.cjs");
|
|
@@ -6,7 +6,7 @@ import { actions, getters } from "../../../../orders/store/shopcart.js";
|
|
|
6
6
|
import { state as state$1 } from "../../../../auth/views/store/auth.js";
|
|
7
7
|
import NotificationBadge from "../../../../notifications/components/elements/NotificationBadge.vue.js";
|
|
8
8
|
import _sfc_main$1 from "../../../../../components/Button/Button.vue.js";
|
|
9
|
-
import Select from "../../../../../components/Select/Select.
|
|
9
|
+
import Select from "../../../../../components/Select/Select.vue.js";
|
|
10
10
|
import _sfc_main$3 from "../../../../icons/entities/IconShopcart.vue.js";
|
|
11
11
|
import _sfc_main$4 from "../../../../icons/entities/IconProfile.vue.js";
|
|
12
12
|
import _sfc_main$2 from "../../../../icons/navigation/IconSearch.vue.js";
|
|
@@ -4,7 +4,7 @@ const vue = require("vue");
|
|
|
4
4
|
const mixins = require("../../mixins/mixins.cjs");
|
|
5
5
|
const Popup = require("../../../../../components/Popup/Popup.vue.cjs");
|
|
6
6
|
const Checkbox = require("../../../../../components/Checkbox/Checkbox.vue.cjs");
|
|
7
|
-
const Field = require("../../../../../components/Field/Field.
|
|
7
|
+
const Field = require("../../../../../components/Field/Field.vue2.cjs");
|
|
8
8
|
const Calendar = require("../../../../../components/Calendar/Calendar.vue2.cjs");
|
|
9
9
|
const IconFilter = require("../../../../icons/navigation/IconFilter.vue.cjs");
|
|
10
10
|
const IconCalendar = ;/* empty css */
|
|
@@ -2,7 +2,7 @@ import { mergeModels, useModel, ref, reactive, watch, computed, createElementBlo
|
|
|
2
2
|
import { useGlobalMixins } from "../../mixins/mixins.js";
|
|
3
3
|
import _sfc_main$3 from "../../../../../components/Popup/Popup.vue.js";
|
|
4
4
|
import _sfc_main$4 from "../../../../../components/Checkbox/Checkbox.vue.js";
|
|
5
|
-
import Field from "../../../../../components/Field/Field.
|
|
5
|
+
import Field from "../../../../../components/Field/Field.vue2.js";
|
|
6
6
|
import Calendar from "../../../../../components/Calendar/Calendar.vue2.js";
|
|
7
7
|
import _sfc_main$1 from "../../../../icons/navigation/IconFilter.vue.js";
|
|
8
8
|
import _sfc_main$2 from "../../../../icons/entities/IconCalendar.vue.js";
|
|
@@ -2,17 +2,15 @@
|
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
3
|
const vue = require("vue");
|
|
4
4
|
const vueRouter = require("vue-router");
|
|
5
|
-
const emblaCarouselVue_esm = require("../../../../../../../node_modules/.pnpm/embla-carousel-vue@8.6.0_vue@3.5.
|
|
5
|
+
const emblaCarouselVue_esm = require("../../../../../../../node_modules/.pnpm/embla-carousel-vue@8.6.0_vue@3.5.21_typescript@5.9.2_/node_modules/embla-carousel-vue/esm/embla-carousel-vue.esm.cjs");
|
|
6
6
|
const IconBell = require("../../../../icons/entities/IconBell.vue.cjs");
|
|
7
7
|
const IconAddress = require("../../../../icons/entities/IconAddress.vue.cjs");
|
|
8
|
-
const index = require("../../../../../../../node_modules/.pnpm/capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.
|
|
9
|
-
|
|
8
|
+
const index = require("../../../../../../../node_modules/.pnpm/capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.4.3/node_modules/capacitor-plugin-app-tracking-transparency/dist/esm/index.cjs");
|
|
9
|
+
const index$1 = require("../../../../../../node_modules/.pnpm/@capacitor_preferences@7.0.1_@capacitor_core@7.2.0/node_modules/@capacitor/preferences/dist/esm/index.cjs");
|
|
10
|
+
;/* empty css */
|
|
10
11
|
;/* empty css */
|
|
11
|
-
require("../../../../auth/views/store/auth.cjs");
|
|
12
12
|
;/* empty css */
|
|
13
|
-
;/* empty css
|
|
14
|
-
require("../../../../notifications/store/notifications.store.cjs");
|
|
15
|
-
const index$1 = require("../../../../../../node_modules/.pnpm/@capacitor_preferences@7.0.1_@capacitor_core@7.2.0/node_modules/@capacitor/preferences/dist/esm/index.cjs");
|
|
13
|
+
;/* empty css */
|
|
16
14
|
;/* empty css */
|
|
17
15
|
;/* empty css */
|
|
18
16
|
;/* empty css */
|
|
@@ -76,47 +74,48 @@ const _sfc_main = {
|
|
|
76
74
|
const onSelect = (embla) => {
|
|
77
75
|
selectedIndex.value = emblaApi.value.selectedScrollSnap();
|
|
78
76
|
};
|
|
77
|
+
let scrollRAF = null;
|
|
79
78
|
const onScroll = (embla) => {
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
if (
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
const
|
|
105
|
-
if (
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
79
|
+
if (scrollRAF) cancelAnimationFrame(scrollRAF);
|
|
80
|
+
scrollRAF = requestAnimationFrame(() => {
|
|
81
|
+
const engine = emblaApi.value.internalEngine();
|
|
82
|
+
const scrollProgress = emblaApi.value.scrollProgress();
|
|
83
|
+
const snapList = emblaApi.value.scrollSnapList();
|
|
84
|
+
const stylesOpacity = snapList.map((scrollSnap, index2) => {
|
|
85
|
+
let diffToTarget = scrollSnap - scrollProgress;
|
|
86
|
+
if (engine.options.loop) {
|
|
87
|
+
engine.slideLooper.loopPoints.forEach((loopItem) => {
|
|
88
|
+
const target = loopItem.target();
|
|
89
|
+
if (index2 === loopItem.index && target !== 0) {
|
|
90
|
+
const sign = Math.sign(target);
|
|
91
|
+
if (sign === -1) diffToTarget = scrollSnap - (1 + scrollProgress);
|
|
92
|
+
if (sign === 1) diffToTarget = scrollSnap + (1 - scrollProgress);
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
const tweenValue = 1 - Math.abs(diffToTarget * TWEEN_FACTOR);
|
|
97
|
+
return Math.min(Math.max(tweenValue, 0), 1);
|
|
98
|
+
});
|
|
99
|
+
const styles = snapList.map((scrollSnap, index2) => {
|
|
100
|
+
let diffToTarget = scrollSnap - scrollProgress;
|
|
101
|
+
if (engine.options.loop) {
|
|
102
|
+
engine.slideLooper.loopPoints.forEach((loopItem) => {
|
|
103
|
+
const target = loopItem.target();
|
|
104
|
+
if (index2 === loopItem.index && target !== 0) {
|
|
105
|
+
const sign = Math.sign(target);
|
|
106
|
+
if (sign === -1) diffToTarget = scrollSnap - (1 + scrollProgress);
|
|
107
|
+
if (sign === 1) diffToTarget = scrollSnap + (1 - scrollProgress);
|
|
108
|
+
}
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
return diffToTarget * (1 / TWEEN_FACTOR) * 100;
|
|
112
|
+
});
|
|
113
|
+
tweenSlides.value = stylesOpacity;
|
|
114
|
+
tweenValues.value = styles;
|
|
111
115
|
});
|
|
112
|
-
tweenValues.value = styles;
|
|
113
116
|
};
|
|
114
|
-
vue.onMounted(
|
|
115
|
-
onInit
|
|
116
|
-
onSelect();
|
|
117
|
-
onScroll();
|
|
118
|
-
emblaApi.value.on("reInit", onInit);
|
|
119
|
-
emblaApi.value.on("reInit", onSelect);
|
|
117
|
+
vue.onMounted(() => {
|
|
118
|
+
emblaApi.value.on("init", onInit);
|
|
120
119
|
emblaApi.value.on("select", onSelect);
|
|
121
120
|
emblaApi.value.on("scroll", onScroll);
|
|
122
121
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Walkthrough.vue.cjs","sources":["../../../../../../../../src/modules/globals/views/components/sections/Walkthrough.vue"],"sourcesContent":["<template>\n\t<div class=\"pos-fixed pos-t-0 pos-l-0 w-100 h-100vh z-index-6 bg-white flex embla\" ref=\"emblaNode\">\n \n\n <div class=\"embla__container w-100 z-index-1\">\n\t \n\n\t\t <!-- SLIDE 1 -->\n\t\t <!-- ------------------------------- -->\n \t<div class=\"pos-relative flex-justify-center pd-thin t-center flex-column flex embla__slide\">\n\t \t\t<!-- <div class=\"pos-absolute w-100 h-100 z-index-0 pos-t-0 pos-r-0\">\n\t \t\t\t<div class=\"pos-absolute z-index-1 pos-t-0 pos-r-0 w-100 h-100 bg-black-grad\"></div>\n\t \t\t\t<img class=\"pos-absolute z-index-0 pos-t-0 pos-r-0 object-fit-cover h-100 w-100\" src=\"/assets/walkthrough/1.png\">\n\t \t\t</div> -->\n \t\t<div \n \t\t\tclass=\"flex flex-column flex-center pd-semi o-hidden pos-relative pos-b-0 z-index-1\"\n \t\t\t :style=\"{ opacity: tweenSlides.length ? tweenSlides[0] : undefined, transform: tweenSlides[0] ? `scale(${tweenSlides[0]})` : '' }\"\n \t\t>\n \t\t\t<img \n\t \t\t:src=\"'/logo/logo_square.svg'\" \n\t \t\tclass=\"i-extra radius-medium mn-b-small\"\n\t \t>\n\n\t <h3 class=\"h3 mn-b-medium\">Welcome to 3SR</h3>\n\t \n\t <p class=\"p-regular t-transp mn-b-big\">\n\t Access premium cameras, lenses, lighting, and audio gear through our app designed for filmmakers and content creators.\n\t </p>\n\n\n\t <button @click=\"nextSlide\" class=\"bg-main p-big w-max button\">\n\t Get Started\n\t </button>\n\t </div>\n \t</div>\n\n \t<!-- SLIDE 2 -->\n\t\t <!-- ------------------------------- -->\n \t<div class=\"pos-relative flex-justify-center pd-thin t-center flex-column flex embla__slide\">\n\t\t\t\t<div class=\"flex flex-column flex-center pd-semi o-hidden pos-relative pos-b-0 z-index-1\">\n \n <div class=\"mn-b-small w-4r h-4r mn-auto pd-regular bg-main radius-regular t-white flex flex-center\">\n <IconBell/>\n </div>\n\n\t <h3 class=\"h3 mn-b-medium\">Stay in the Loop</h3>\n\t <p class=\"p-regular t-transp mn-b-big\">\n\t Get instant notifications about equipment availability, booking confirmations, and exclusive deals from our rental platform.\n\t </p>\n\n\t <div class=\"flex flex-column flex-center gap-small\">\n\t <button @click=\"requestNotificationPermission\" class=\"bg-main p-big w-max button\">\n\t\t\t\t\t\t \t Enable Notifications\n\t\t\t\t\t\t </button>\n\t <button @click=\"nextSlide\" class=\"bg-light p-big w-max button\">\n\t Maybe Later\n\t </button>\n\t </div>\n\t </div>\n\t\t\t</div>\n\n\t\t\t<!-- SLIDE 3 -->\n\t\t <!-- ------------------------------- -->\n\t\t\t<div class=\"pos-relative flex-justify-center pd-thin t-center flex-column flex embla__slide\">\n <div class=\"flex flex-column flex-center pd-semi o-hidden pos-relative pos-b-0 z-index-1\">\n \n <div class=\"mn-b-small w-4r h-4r mn-auto pd-regular bg-main radius-regular t-white flex flex-center\">\n <IconAddress/>\n </div>\n\n <h3 class=\"h3 mn-b-medium\">Find Nearby Equipment</h3>\n <p class=\"p-regular t-transp mn-b-big\">\n Discover rental locations and equipment availability near you. We'll show you the closest pickup points and delivery options.\n </p>\n\n <div class=\"flex flex-column flex-center gap-small\">\n <button @click=\"requestLocationPermission\" class=\"bg-main p-big w-max button\">\n Enable Location\n </button>\n <button @click=\"nextSlide\" class=\"bg-light p-big w-max button\">\n Skip for Now\n </button>\n </div>\n </div>\n </div>\n\n <!-- SLIDE 4 - App Tracking Transparency -->\n\t\t <!-- ------------------------------- -->\n <div class=\"pos-relative flex-justify-center pd-thin t-center flex-column flex embla__slide\">\n <div class=\"flex flex-column flex-center pd-semi o-hidden pos-relative pos-b-0 z-index-1\">\n <div class=\"mn-b-small w-4r h-4r mn-auto pd-regular bg-main radius-regular t-white flex flex-center\">\n <IconShield/>\n </div>\n\n <h3 class=\"h3 mn-b-medium\">Personalized Experience</h3>\n <p class=\"p-regular t-transp mn-b-big\">\n Allow us to provide you with personalized recommendations and improve your app experience based on your preferences.\n </p>\n\n <div class=\"flex flex-column flex-center gap-small\">\n <button @click=\"requestTrackingPermission\" class=\"bg-main p-big w-max button\">\n Allow Tracking\n </button>\n <button @click=\"nextSlide\" class=\"bg-light p-big w-max button\">\n Ask App Not to Track\n </button>\n </div>\n </div>\n </div>\n\n <!-- SLIDE 5 - Final -->\n\t\t <!-- ------------------------------- -->\n <div class=\"pos-relative flex-justify-center pd-thin t-center flex-column flex embla__slide\">\n \t<div class=\"flex flex-column flex-center pd-semi o-hidden pos-relative pos-b-0 z-index-1\">\n\t \t<img loading=\"lazy\" \n\t \t\t:src=\"'/logo/logo_square.svg'\" \n\t \t\tclass=\"i-extra radius-medium mn-b-small\"\n\t \t>\n\t \t<h3 class=\"h3 mn-b-medium\">Ready to Rent?</h3>\n\t \t<p class=\"p-regular t-transp mn-b-big\">Join thousands of creators who trust 3SR for their professional video equipment needs. Choose how you'd like to get started.</p>\n\t \n\t \t<button @click=\"openFirstRoute('Sign Up')\" class=\"bg-main p-big w-100 button mn-b-thin\">Create Account</button> \n\t \t<button @click=\"openFirstRoute('Sign In')\" class=\"bg-light t-black p-big w-100 button mn-b-semi\">Sign In</button>\n\n\t\t <p class=\"p-small mn-b-medium t-transp\">Or explore as a guest:</p> \n\t \t<button @click=\"setFirstUseFalse()\" class=\"bg-light p-big w-max button\">Continue as Guest</button>\n \t</div>\n\t </div>\n\n </div>\n\n <div class=\"\n\t embla__dots\n \tz-index-5 \n \th-4r \n \tpos-absolute \n \tpos-t-1r \n \tflex-nowrap \n \tflex \n \tflex-center \n \tgap-thin \n \tw-100\"\n >\n\t <button\n\t v-for=\"(snap, index) in scrollSnaps\"\n\t :key=\"index\"\n\t @click=\"scrollTo(index)\"\n\t :class=\"[\n\t 'embla__dot bg- i-small radius-extra',\n\t\t\t\t\t{ 'bg-light': index !== selectedIndex },\n\t { 'bg-main': index === selectedIndex }\n\t ]\"\n\t >\n\t\t </button>\n\n\t\t <button \n\t\t \t@click.native=\"setFirstUseFalse()\" \n\t\t \tclass=\"\n\t\t \t\tpd-small\n\t\t \t\tbg-white\n\t\t \t\tt-black\n\t\t \t\tw-6r \n\t\t \t\tpos-b-0r \n\t\t \t\tflex-nowrap \n\t\t \t\tflex \n\t\t \t\tflex-center \n\t\t \t\tpos-r-1r \n\t\t \t\tpos-relative \n\t\t \t\tradius-small \n\t\t \t\tuppercase \n\t\t \t\tpos-absolute\n\t\t \t\"> \n\t\t \t<span>Skip</span>\n\t\t </button>\n\t </div>\n\t</div>\n\n</template>\n\n<script setup>\n\timport { ref, onMounted, reactive, inject } from 'vue';\n\timport { useRoute, useRouter } from 'vue-router'\n\n\timport emblaCarouselVue from 'embla-carousel-vue'; \n\n\timport IconBell from '@martyrs/src/modules/icons/entities/IconBell.vue';\n\timport IconAddress from '@martyrs/src/modules/icons/entities/IconAddress.vue';\n\timport IconShield from '@martyrs/src/modules/icons/entities/IconAddress.vue';\n\n\timport { AppTrackingTransparency } from 'capacitor-plugin-app-tracking-transparency';\n\n\tconst props = defineProps(['slides', 'options']);\n\tconst emits = defineEmits(['updateFirstUse'])\n\tconst router = useRouter()\n\t\n\t// Get notification manager directly\n\timport ModuleNotifications from '@martyrs/src/modules/notifications/notifications.client.js'\n\n\t// Set firstUse\n\timport { Preferences } from '@capacitor/preferences';\n\n\tconst permissions = reactive({\n\t notifications: false,\n\t location: false,\n\t tracking: false\n\t})\n\n\tasync function setFirstUseFalse() {\n await Preferences.set({\n key: 'first-use',\n value: JSON.stringify(false),\n });\n\n emits('updateFirstUse', false);\n }\n\n async function openFirstRoute(routeName) {\n\t\tawait router.push({name: routeName})\n\n\t\tawait Preferences.set({\n key: 'first-use',\n value: JSON.stringify(false),\n });\n\n\t\temits('updateFirstUse', false);\n\t}\n\n\tconst [emblaNode, emblaApi] = emblaCarouselVue({ loop: false })\n\n\tconst selectedIndex = ref(0);\n\tconst scrollSnaps = ref([]);\n\tconst TWEEN_FACTOR = 3\n\tconst tweenValues = ref([])\n\tconst tweenSlides = ref([])\n\n\tconst scrollTo = (index) => emblaApi.value && emblaApi.value.scrollTo(index);\n\n\tconst nextSlide = () => {\n\t\tif (emblaApi.value) {\n\t\t\temblaApi.value.scrollNext();\n\t\t}\n\t};\n\n\tconst onInit = (embla) => {\n\t scrollSnaps.value = emblaApi.value.scrollSnapList();\n\t};\n\n\tconst onSelect = (embla) => {\n\t selectedIndex.value = emblaApi.value.selectedScrollSnap();\n\t};\n\n\tconst onScroll = (embla) => {\n const engine = emblaApi.value.internalEngine()\n const scrollProgress = emblaApi.value.scrollProgress()\n\n const stylesOpacity = emblaApi.value.scrollSnapList().map((scrollSnap, index) => {\n\t let diffToTarget = scrollSnap - scrollProgress\n\n\t if (engine.options.loop) {\n\t engine.slideLooper.loopPoints.forEach((loopItem) => {\n\t const target = loopItem.target()\n\t if (index === loopItem.index && target !== 0) {\n\t const sign = Math.sign(target)\n\t if (sign === -1) diffToTarget = scrollSnap - (1 + scrollProgress)\n\t if (sign === 1) diffToTarget = scrollSnap + (1 - scrollProgress)\n\t }\n\t })\n\t }\n\t const tweenValue = 1 - Math.abs(diffToTarget * TWEEN_FACTOR)\n\t return Math.min(Math.max(tweenValue, 0), 1)\n\t })\n\n\t\ttweenSlides.value = stylesOpacity\n\n const styles = emblaApi.value.scrollSnapList().map((scrollSnap, index) => {\n let diffToTarget = scrollSnap - scrollProgress\n\n if (engine.options.loop) {\n engine.slideLooper.loopPoints.forEach((loopItem) => {\n const target = loopItem.target()\n if (index === loopItem.index && target !== 0) {\n const sign = Math.sign(target)\n if (sign === -1) diffToTarget = scrollSnap - (1 + scrollProgress)\n if (sign === 1) diffToTarget = scrollSnap + (1 - scrollProgress)\n }\n })\n }\n return diffToTarget * (1 / TWEEN_FACTOR) * 100\n })\n\n tweenValues.value = styles\n }\n\n\n\tonMounted(async() => {\n\t onInit(emblaApi);\n\t onSelect(emblaApi);\n\t onScroll(emblaApi);\n\n\t emblaApi.value.on('reInit', onInit);\n\t emblaApi.value.on('reInit', onSelect);\n\t emblaApi.value.on('select', onSelect);\n\t emblaApi.value.on('scroll', onScroll)\n\t});\n\n\tconst requestNotificationPermission = async () => {\n\t try {\n\t // Use notification manager from global store if available\n\t const notificationManager = window.$store?.notificationManager;\n\t \n\t if (notificationManager) {\n\t await notificationManager.pushHandler.requestPermissions();\n\t await notificationManager.registerWebPush(window.$store);\n\t permissions.notifications = true;\n\t }\n\t \n\t setTimeout(() => {\n\t nextSlide()\n\t }, 1000)\n\t } catch (error) {\n\t console.error('Notification permission error:', error)\n\t nextSlide()\n\t }\n\t}\n\n\tconst requestLocationPermission = async () => {\n\t try {\n\t if (!('geolocation' in navigator)) {\n\t nextSlide()\n\t return\n\t }\n\n\t navigator.geolocation.getCurrentPosition(\n\t () => {\n\t permissions.location = true\n\t setTimeout(() => {\n\t nextSlide()\n\t }, 1000)\n\t },\n\t () => {\n\t setTimeout(() => {\n\t nextSlide()\n\t }, 1000)\n\t },\n\t { timeout: 8000 }\n\t )\n\t } catch (error) {\n\t console.error('Location permission error:', error)\n\t nextSlide()\n\t }\n\t}\n\n\tconst requestTrackingPermission = async () => {\n\t try {\n\t const { status } = await AppTrackingTransparency.requestPermission();\n\t \n\t if (status === 'authorized') {\n\t permissions.tracking = true;\n\t }\n\t \n\t setTimeout(() => {\n\t nextSlide();\n\t }, 1000);\n\t } catch (error) {\n\t console.error('Tracking permission error:', error);\n\t nextSlide();\n\t }\n\t};\n\n</script>\n\n<style lang=\"scss\">\n\t.embla {\n overflow: hidden;\n }\n .embla__container {\n display: flex;\n }\n .embla__slide {\n flex: 0 0 100%;\n min-width: 0;\n }\n</style>\n"],"names":["useRouter","reactive","Preferences","emblaCarouselVue","ref","index","onMounted","AppTrackingTransparency"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Walkthrough.vue.cjs","sources":["../../../../../../../../src/modules/globals/views/components/sections/Walkthrough.vue"],"sourcesContent":["<template>\n\t<div class=\"pos-fixed pos-t-0 pos-l-0 w-100 h-100vh z-index-6 bg-white flex embla\" ref=\"emblaNode\">\n \n\n <div class=\"embla__container w-100 z-index-1\">\n\t \n\n\t\t <!-- SLIDE 1 -->\n\t\t <!-- ------------------------------- -->\n \t<div class=\"pos-relative flex-justify-center pd-thin t-center flex-column flex embla__slide\">\n\t \t\t<!-- <div class=\"pos-absolute w-100 h-100 z-index-0 pos-t-0 pos-r-0\">\n\t \t\t\t<div class=\"pos-absolute z-index-1 pos-t-0 pos-r-0 w-100 h-100 bg-black-grad\"></div>\n\t \t\t\t<img class=\"pos-absolute z-index-0 pos-t-0 pos-r-0 object-fit-cover h-100 w-100\" src=\"/assets/walkthrough/1.png\">\n\t \t\t</div> -->\n \t\t<div \n \t\t\tclass=\"flex flex-column flex-center pd-semi o-hidden pos-relative pos-b-0 z-index-1\"\n \t\t\t :style=\"{ opacity: tweenSlides.length ? tweenSlides[0] : undefined, transform: tweenSlides[0] ? `scale(${tweenSlides[0]})` : '' }\"\n \t\t>\n \t\t\t<img \n\t \t\t:src=\"'/logo/logo_square.svg'\" \n\t \t\tclass=\"i-extra radius-medium mn-b-small\"\n\t \t>\n\n\t <h3 class=\"h3 mn-b-medium\">Welcome to 3SR</h3>\n\t \n\t <p class=\"p-regular t-transp mn-b-big\">\n\t Access premium cameras, lenses, lighting, and audio gear through our app designed for filmmakers and content creators.\n\t </p>\n\n\n\t <button @click=\"nextSlide\" class=\"bg-main p-big w-max button\">\n\t Get Started\n\t </button>\n\t </div>\n \t</div>\n\n \t<!-- SLIDE 2 -->\n\t\t <!-- ------------------------------- -->\n \t<div class=\"pos-relative flex-justify-center pd-thin t-center flex-column flex embla__slide\">\n\t\t\t\t<div class=\"flex flex-column flex-center pd-semi o-hidden pos-relative pos-b-0 z-index-1\">\n \n <div class=\"mn-b-small w-4r h-4r mn-auto pd-regular bg-main radius-regular t-white flex flex-center\">\n <IconBell/>\n </div>\n\n\t <h3 class=\"h3 mn-b-medium\">Stay in the Loop</h3>\n\t <p class=\"p-regular t-transp mn-b-big\">\n\t Get instant notifications about equipment availability, booking confirmations, and exclusive deals from our rental platform.\n\t </p>\n\n\t <div class=\"flex flex-column flex-center gap-small\">\n\t <button @click=\"requestNotificationPermission\" class=\"bg-main p-big w-max button\">\n\t\t\t\t\t\t \t Enable Notifications\n\t\t\t\t\t\t </button>\n\t <button @click=\"nextSlide\" class=\"bg-light p-big w-max button\">\n\t Maybe Later\n\t </button>\n\t </div>\n\t </div>\n\t\t\t</div>\n\n\t\t\t<!-- SLIDE 3 -->\n\t\t <!-- ------------------------------- -->\n\t\t\t<div class=\"pos-relative flex-justify-center pd-thin t-center flex-column flex embla__slide\">\n <div class=\"flex flex-column flex-center pd-semi o-hidden pos-relative pos-b-0 z-index-1\">\n \n <div class=\"mn-b-small w-4r h-4r mn-auto pd-regular bg-main radius-regular t-white flex flex-center\">\n <IconAddress/>\n </div>\n\n <h3 class=\"h3 mn-b-medium\">Find Nearby Equipment</h3>\n <p class=\"p-regular t-transp mn-b-big\">\n Discover rental locations and equipment availability near you. We'll show you the closest pickup points and delivery options.\n </p>\n\n <div class=\"flex flex-column flex-center gap-small\">\n <button @click=\"requestLocationPermission\" class=\"bg-main p-big w-max button\">\n Enable Location\n </button>\n <button @click=\"nextSlide\" class=\"bg-light p-big w-max button\">\n Skip for Now\n </button>\n </div>\n </div>\n </div>\n\n <!-- SLIDE 4 - App Tracking Transparency -->\n\t\t <!-- ------------------------------- -->\n <div class=\"pos-relative flex-justify-center pd-thin t-center flex-column flex embla__slide\">\n <div class=\"flex flex-column flex-center pd-semi o-hidden pos-relative pos-b-0 z-index-1\">\n <div class=\"mn-b-small w-4r h-4r mn-auto pd-regular bg-main radius-regular t-white flex flex-center\">\n <IconShield/>\n </div>\n\n <h3 class=\"h3 mn-b-medium\">Personalized Experience</h3>\n <p class=\"p-regular t-transp mn-b-big\">\n Allow us to provide you with personalized recommendations and improve your app experience based on your preferences.\n </p>\n\n <div class=\"flex flex-column flex-center gap-small\">\n <button @click=\"requestTrackingPermission\" class=\"bg-main p-big w-max button\">\n Allow Tracking\n </button>\n <button @click=\"nextSlide\" class=\"bg-light p-big w-max button\">\n Ask App Not to Track\n </button>\n </div>\n </div>\n </div>\n\n <!-- SLIDE 5 - Final -->\n\t\t <!-- ------------------------------- -->\n <div class=\"pos-relative flex-justify-center pd-thin t-center flex-column flex embla__slide\">\n \t<div class=\"flex flex-column flex-center pd-semi o-hidden pos-relative pos-b-0 z-index-1\">\n\t \t<img loading=\"lazy\" \n\t \t\t:src=\"'/logo/logo_square.svg'\" \n\t \t\tclass=\"i-extra radius-medium mn-b-small\"\n\t \t>\n\t \t<h3 class=\"h3 mn-b-medium\">Ready to Rent?</h3>\n\t \t<p class=\"p-regular t-transp mn-b-big\">Join thousands of creators who trust 3SR for their professional video equipment needs. Choose how you'd like to get started.</p>\n\t \n\t \t<button @click=\"openFirstRoute('Sign Up')\" class=\"bg-main p-big w-100 button mn-b-thin\">Create Account</button> \n\t \t<button @click=\"openFirstRoute('Sign In')\" class=\"bg-light t-black p-big w-100 button mn-b-semi\">Sign In</button>\n\n\t\t <p class=\"p-small mn-b-medium t-transp\">Or explore as a guest:</p> \n\t \t<button @click=\"setFirstUseFalse()\" class=\"bg-light p-big w-max button\">Continue as Guest</button>\n \t</div>\n\t </div>\n\n </div>\n\n <div class=\"\n\t embla__dots\n \tz-index-5 \n \th-4r \n \tpos-absolute \n \tpos-t-1r \n \tflex-nowrap \n \tflex \n \tflex-center \n \tgap-thin \n \tw-100\"\n >\n\t <button\n\t v-for=\"(snap, index) in scrollSnaps\"\n\t :key=\"index\"\n\t @click=\"scrollTo(index)\"\n\t :class=\"[\n\t 'embla__dot bg- i-small radius-extra',\n\t\t\t\t\t{ 'bg-light': index !== selectedIndex },\n\t { 'bg-main': index === selectedIndex }\n\t ]\"\n\t >\n\t\t </button>\n\n\t\t <button \n\t\t \t@click.native=\"setFirstUseFalse()\" \n\t\t \tclass=\"\n\t\t \t\tpd-small\n\t\t \t\tbg-white\n\t\t \t\tt-black\n\t\t \t\tw-6r \n\t\t \t\tpos-b-0r \n\t\t \t\tflex-nowrap \n\t\t \t\tflex \n\t\t \t\tflex-center \n\t\t \t\tpos-r-1r \n\t\t \t\tpos-relative \n\t\t \t\tradius-small \n\t\t \t\tuppercase \n\t\t \t\tpos-absolute\n\t\t \t\"> \n\t\t \t<span>Skip</span>\n\t\t </button>\n\t </div>\n\t</div>\n\n</template>\n\n<script setup>\n\timport { ref, onMounted, reactive, inject } from 'vue';\n\timport { useRoute, useRouter } from 'vue-router'\n\n\timport emblaCarouselVue from 'embla-carousel-vue'; \n\n\timport IconBell from '@martyrs/src/modules/icons/entities/IconBell.vue';\n\timport IconAddress from '@martyrs/src/modules/icons/entities/IconAddress.vue';\n\timport IconShield from '@martyrs/src/modules/icons/entities/IconAddress.vue';\n\n\timport { AppTrackingTransparency } from 'capacitor-plugin-app-tracking-transparency';\n\n\tconst props = defineProps(['slides', 'options']);\n\tconst emits = defineEmits(['updateFirstUse'])\n\tconst router = useRouter()\n\t\n\t// Get notification manager directly\n\timport ModuleNotifications from '@martyrs/src/modules/notifications/notifications.client.js'\n\n\t// Set firstUse\n\timport { Preferences } from '@capacitor/preferences';\n\n\tconst permissions = reactive({\n\t notifications: false,\n\t location: false,\n\t tracking: false\n\t})\n\n\tasync function setFirstUseFalse() {\n await Preferences.set({\n key: 'first-use',\n value: JSON.stringify(false),\n });\n\n emits('updateFirstUse', false);\n }\n\n async function openFirstRoute(routeName) {\n\t\tawait router.push({name: routeName})\n\n\t\tawait Preferences.set({\n key: 'first-use',\n value: JSON.stringify(false),\n });\n\n\t\temits('updateFirstUse', false);\n\t}\n\n\tconst [emblaNode, emblaApi] = emblaCarouselVue({ loop: false })\n\n\tconst selectedIndex = ref(0);\n\tconst scrollSnaps = ref([]);\n\tconst TWEEN_FACTOR = 3\n\tconst tweenValues = ref([])\n\tconst tweenSlides = ref([])\n\n\tconst scrollTo = (index) => emblaApi.value && emblaApi.value.scrollTo(index);\n\n\tconst nextSlide = () => {\n\t\tif (emblaApi.value) {\n\t\t\temblaApi.value.scrollNext();\n\t\t}\n\t};\n\n\tconst onInit = (embla) => {\n\t scrollSnaps.value = emblaApi.value.scrollSnapList();\n\t};\n\n\tconst onSelect = (embla) => {\n\t selectedIndex.value = emblaApi.value.selectedScrollSnap();\n\t};\n\n\tlet scrollRAF = null;\n\tconst onScroll = (embla) => {\n\t\t// Cancel previous frame if exists\n\t\tif (scrollRAF) cancelAnimationFrame(scrollRAF);\n\t\t\n\t\tscrollRAF = requestAnimationFrame(() => {\n\t\t\tconst engine = emblaApi.value.internalEngine()\n\t\t\tconst scrollProgress = emblaApi.value.scrollProgress()\n\t\t\t// Cache snapList to avoid calling it twice\n\t\t\tconst snapList = emblaApi.value.scrollSnapList()\n\n\t\t\tconst stylesOpacity = snapList.map((scrollSnap, index) => {\n\t\t\t\tlet diffToTarget = scrollSnap - scrollProgress\n\n\t\t\t\tif (engine.options.loop) {\n\t\t\t\t\tengine.slideLooper.loopPoints.forEach((loopItem) => {\n\t\t\t\t\t\tconst target = loopItem.target()\n\t\t\t\t\t\tif (index === loopItem.index && target !== 0) {\n\t\t\t\t\t\t\tconst sign = Math.sign(target)\n\t\t\t\t\t\t\tif (sign === -1) diffToTarget = scrollSnap - (1 + scrollProgress)\n\t\t\t\t\t\t\tif (sign === 1) diffToTarget = scrollSnap + (1 - scrollProgress)\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t\tconst tweenValue = 1 - Math.abs(diffToTarget * TWEEN_FACTOR)\n\t\t\t\treturn Math.min(Math.max(tweenValue, 0), 1)\n\t\t\t})\n\n\t\t\tconst styles = snapList.map((scrollSnap, index) => {\n\t\t\t\tlet diffToTarget = scrollSnap - scrollProgress\n\n\t\t\t\tif (engine.options.loop) {\n\t\t\t\t\tengine.slideLooper.loopPoints.forEach((loopItem) => {\n\t\t\t\t\t\tconst target = loopItem.target()\n\t\t\t\t\t\tif (index === loopItem.index && target !== 0) {\n\t\t\t\t\t\t\tconst sign = Math.sign(target)\n\t\t\t\t\t\t\tif (sign === -1) diffToTarget = scrollSnap - (1 + scrollProgress)\n\t\t\t\t\t\t\tif (sign === 1) diffToTarget = scrollSnap + (1 - scrollProgress)\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t\treturn diffToTarget * (1 / TWEEN_FACTOR) * 100\n\t\t\t})\n\n\t\t\t// Batch updates together\n\t\t\ttweenSlides.value = stylesOpacity\n\t\t\ttweenValues.value = styles\n\t\t});\n\t}\n\n\n\tonMounted(() => {\n\t emblaApi.value.on('init', onInit)\n\t emblaApi.value.on('select', onSelect)\n\t emblaApi.value.on('scroll', onScroll)\n\t});\n\n\tconst requestNotificationPermission = async () => {\n\t try {\n\t // Use notification manager from global store if available\n\t const notificationManager = window.$store?.notificationManager;\n\t \n\t if (notificationManager) {\n\t await notificationManager.pushHandler.requestPermissions();\n\t await notificationManager.registerWebPush(window.$store);\n\t permissions.notifications = true;\n\t }\n\t \n\t setTimeout(() => {\n\t nextSlide()\n\t }, 1000)\n\t } catch (error) {\n\t console.error('Notification permission error:', error)\n\t nextSlide()\n\t }\n\t}\n\n\tconst requestLocationPermission = async () => {\n\t try {\n\t if (!('geolocation' in navigator)) {\n\t nextSlide()\n\t return\n\t }\n\n\t navigator.geolocation.getCurrentPosition(\n\t () => {\n\t permissions.location = true\n\t setTimeout(() => {\n\t nextSlide()\n\t }, 1000)\n\t },\n\t () => {\n\t setTimeout(() => {\n\t nextSlide()\n\t }, 1000)\n\t },\n\t { timeout: 8000 }\n\t )\n\t } catch (error) {\n\t console.error('Location permission error:', error)\n\t nextSlide()\n\t }\n\t}\n\n\tconst requestTrackingPermission = async () => {\n\t try {\n\t const { status } = await AppTrackingTransparency.requestPermission();\n\t \n\t if (status === 'authorized') {\n\t permissions.tracking = true;\n\t }\n\t \n\t setTimeout(() => {\n\t nextSlide();\n\t }, 1000);\n\t } catch (error) {\n\t console.error('Tracking permission error:', error);\n\t nextSlide();\n\t }\n\t};\n\n</script>\n\n<style lang=\"scss\">\n\t.embla {\n overflow: hidden;\n }\n .embla__container {\n display: flex;\n }\n .embla__slide {\n flex: 0 0 100%;\n min-width: 0;\n }\n</style>\n"],"names":["useRouter","reactive","Preferences","emblaCarouselVue","ref","index","onMounted","AppTrackingTransparency"],"mappings":"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"}
|
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
import { reactive, ref, onMounted, createElementBlock, openBlock, createElementVNode, normalizeStyle, createVNode, Fragment, renderList, normalizeClass } from "vue";
|
|
2
2
|
import { useRouter } from "vue-router";
|
|
3
|
-
import emblaCarouselVue from "../../../../../../../node_modules/.pnpm/embla-carousel-vue@8.6.0_vue@3.5.
|
|
3
|
+
import emblaCarouselVue from "../../../../../../../node_modules/.pnpm/embla-carousel-vue@8.6.0_vue@3.5.21_typescript@5.9.2_/node_modules/embla-carousel-vue/esm/embla-carousel-vue.esm.js";
|
|
4
4
|
import _sfc_main$1 from "../../../../icons/entities/IconBell.vue.js";
|
|
5
5
|
import _sfc_main$2 from "../../../../icons/entities/IconAddress.vue.js";
|
|
6
|
-
import { AppTrackingTransparency } from "../../../../../../../node_modules/.pnpm/capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.
|
|
7
|
-
|
|
6
|
+
import { AppTrackingTransparency } from "../../../../../../../node_modules/.pnpm/capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.4.3/node_modules/capacitor-plugin-app-tracking-transparency/dist/esm/index.js";
|
|
7
|
+
import { Preferences } from "../../../../../../node_modules/.pnpm/@capacitor_preferences@7.0.1_@capacitor_core@7.2.0/node_modules/@capacitor/preferences/dist/esm/index.js";
|
|
8
|
+
/* empty css */
|
|
8
9
|
/* empty css */
|
|
9
|
-
import "../../../../auth/views/store/auth.js";
|
|
10
10
|
/* empty css */
|
|
11
|
-
/* empty css
|
|
12
|
-
import "../../../../notifications/store/notifications.store.js";
|
|
13
|
-
import { Preferences } from "../../../../../../node_modules/.pnpm/@capacitor_preferences@7.0.1_@capacitor_core@7.2.0/node_modules/@capacitor/preferences/dist/esm/index.js";
|
|
11
|
+
/* empty css */
|
|
14
12
|
/* empty css */
|
|
15
13
|
/* empty css */
|
|
16
14
|
/* empty css */
|
|
@@ -74,47 +72,48 @@ const _sfc_main = {
|
|
|
74
72
|
const onSelect = (embla) => {
|
|
75
73
|
selectedIndex.value = emblaApi.value.selectedScrollSnap();
|
|
76
74
|
};
|
|
75
|
+
let scrollRAF = null;
|
|
77
76
|
const onScroll = (embla) => {
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
if (
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
const
|
|
103
|
-
if (
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
77
|
+
if (scrollRAF) cancelAnimationFrame(scrollRAF);
|
|
78
|
+
scrollRAF = requestAnimationFrame(() => {
|
|
79
|
+
const engine = emblaApi.value.internalEngine();
|
|
80
|
+
const scrollProgress = emblaApi.value.scrollProgress();
|
|
81
|
+
const snapList = emblaApi.value.scrollSnapList();
|
|
82
|
+
const stylesOpacity = snapList.map((scrollSnap, index) => {
|
|
83
|
+
let diffToTarget = scrollSnap - scrollProgress;
|
|
84
|
+
if (engine.options.loop) {
|
|
85
|
+
engine.slideLooper.loopPoints.forEach((loopItem) => {
|
|
86
|
+
const target = loopItem.target();
|
|
87
|
+
if (index === loopItem.index && target !== 0) {
|
|
88
|
+
const sign = Math.sign(target);
|
|
89
|
+
if (sign === -1) diffToTarget = scrollSnap - (1 + scrollProgress);
|
|
90
|
+
if (sign === 1) diffToTarget = scrollSnap + (1 - scrollProgress);
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
const tweenValue = 1 - Math.abs(diffToTarget * TWEEN_FACTOR);
|
|
95
|
+
return Math.min(Math.max(tweenValue, 0), 1);
|
|
96
|
+
});
|
|
97
|
+
const styles = snapList.map((scrollSnap, index) => {
|
|
98
|
+
let diffToTarget = scrollSnap - scrollProgress;
|
|
99
|
+
if (engine.options.loop) {
|
|
100
|
+
engine.slideLooper.loopPoints.forEach((loopItem) => {
|
|
101
|
+
const target = loopItem.target();
|
|
102
|
+
if (index === loopItem.index && target !== 0) {
|
|
103
|
+
const sign = Math.sign(target);
|
|
104
|
+
if (sign === -1) diffToTarget = scrollSnap - (1 + scrollProgress);
|
|
105
|
+
if (sign === 1) diffToTarget = scrollSnap + (1 - scrollProgress);
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
return diffToTarget * (1 / TWEEN_FACTOR) * 100;
|
|
110
|
+
});
|
|
111
|
+
tweenSlides.value = stylesOpacity;
|
|
112
|
+
tweenValues.value = styles;
|
|
109
113
|
});
|
|
110
|
-
tweenValues.value = styles;
|
|
111
114
|
};
|
|
112
|
-
onMounted(
|
|
113
|
-
onInit
|
|
114
|
-
onSelect();
|
|
115
|
-
onScroll();
|
|
116
|
-
emblaApi.value.on("reInit", onInit);
|
|
117
|
-
emblaApi.value.on("reInit", onSelect);
|
|
115
|
+
onMounted(() => {
|
|
116
|
+
emblaApi.value.on("init", onInit);
|
|
118
117
|
emblaApi.value.on("select", onSelect);
|
|
119
118
|
emblaApi.value.on("scroll", onScroll);
|
|
120
119
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Walkthrough.vue.js","sources":["../../../../../../../../src/modules/globals/views/components/sections/Walkthrough.vue"],"sourcesContent":["<template>\n\t<div class=\"pos-fixed pos-t-0 pos-l-0 w-100 h-100vh z-index-6 bg-white flex embla\" ref=\"emblaNode\">\n \n\n <div class=\"embla__container w-100 z-index-1\">\n\t \n\n\t\t <!-- SLIDE 1 -->\n\t\t <!-- ------------------------------- -->\n \t<div class=\"pos-relative flex-justify-center pd-thin t-center flex-column flex embla__slide\">\n\t \t\t<!-- <div class=\"pos-absolute w-100 h-100 z-index-0 pos-t-0 pos-r-0\">\n\t \t\t\t<div class=\"pos-absolute z-index-1 pos-t-0 pos-r-0 w-100 h-100 bg-black-grad\"></div>\n\t \t\t\t<img class=\"pos-absolute z-index-0 pos-t-0 pos-r-0 object-fit-cover h-100 w-100\" src=\"/assets/walkthrough/1.png\">\n\t \t\t</div> -->\n \t\t<div \n \t\t\tclass=\"flex flex-column flex-center pd-semi o-hidden pos-relative pos-b-0 z-index-1\"\n \t\t\t :style=\"{ opacity: tweenSlides.length ? tweenSlides[0] : undefined, transform: tweenSlides[0] ? `scale(${tweenSlides[0]})` : '' }\"\n \t\t>\n \t\t\t<img \n\t \t\t:src=\"'/logo/logo_square.svg'\" \n\t \t\tclass=\"i-extra radius-medium mn-b-small\"\n\t \t>\n\n\t <h3 class=\"h3 mn-b-medium\">Welcome to 3SR</h3>\n\t \n\t <p class=\"p-regular t-transp mn-b-big\">\n\t Access premium cameras, lenses, lighting, and audio gear through our app designed for filmmakers and content creators.\n\t </p>\n\n\n\t <button @click=\"nextSlide\" class=\"bg-main p-big w-max button\">\n\t Get Started\n\t </button>\n\t </div>\n \t</div>\n\n \t<!-- SLIDE 2 -->\n\t\t <!-- ------------------------------- -->\n \t<div class=\"pos-relative flex-justify-center pd-thin t-center flex-column flex embla__slide\">\n\t\t\t\t<div class=\"flex flex-column flex-center pd-semi o-hidden pos-relative pos-b-0 z-index-1\">\n \n <div class=\"mn-b-small w-4r h-4r mn-auto pd-regular bg-main radius-regular t-white flex flex-center\">\n <IconBell/>\n </div>\n\n\t <h3 class=\"h3 mn-b-medium\">Stay in the Loop</h3>\n\t <p class=\"p-regular t-transp mn-b-big\">\n\t Get instant notifications about equipment availability, booking confirmations, and exclusive deals from our rental platform.\n\t </p>\n\n\t <div class=\"flex flex-column flex-center gap-small\">\n\t <button @click=\"requestNotificationPermission\" class=\"bg-main p-big w-max button\">\n\t\t\t\t\t\t \t Enable Notifications\n\t\t\t\t\t\t </button>\n\t <button @click=\"nextSlide\" class=\"bg-light p-big w-max button\">\n\t Maybe Later\n\t </button>\n\t </div>\n\t </div>\n\t\t\t</div>\n\n\t\t\t<!-- SLIDE 3 -->\n\t\t <!-- ------------------------------- -->\n\t\t\t<div class=\"pos-relative flex-justify-center pd-thin t-center flex-column flex embla__slide\">\n <div class=\"flex flex-column flex-center pd-semi o-hidden pos-relative pos-b-0 z-index-1\">\n \n <div class=\"mn-b-small w-4r h-4r mn-auto pd-regular bg-main radius-regular t-white flex flex-center\">\n <IconAddress/>\n </div>\n\n <h3 class=\"h3 mn-b-medium\">Find Nearby Equipment</h3>\n <p class=\"p-regular t-transp mn-b-big\">\n Discover rental locations and equipment availability near you. We'll show you the closest pickup points and delivery options.\n </p>\n\n <div class=\"flex flex-column flex-center gap-small\">\n <button @click=\"requestLocationPermission\" class=\"bg-main p-big w-max button\">\n Enable Location\n </button>\n <button @click=\"nextSlide\" class=\"bg-light p-big w-max button\">\n Skip for Now\n </button>\n </div>\n </div>\n </div>\n\n <!-- SLIDE 4 - App Tracking Transparency -->\n\t\t <!-- ------------------------------- -->\n <div class=\"pos-relative flex-justify-center pd-thin t-center flex-column flex embla__slide\">\n <div class=\"flex flex-column flex-center pd-semi o-hidden pos-relative pos-b-0 z-index-1\">\n <div class=\"mn-b-small w-4r h-4r mn-auto pd-regular bg-main radius-regular t-white flex flex-center\">\n <IconShield/>\n </div>\n\n <h3 class=\"h3 mn-b-medium\">Personalized Experience</h3>\n <p class=\"p-regular t-transp mn-b-big\">\n Allow us to provide you with personalized recommendations and improve your app experience based on your preferences.\n </p>\n\n <div class=\"flex flex-column flex-center gap-small\">\n <button @click=\"requestTrackingPermission\" class=\"bg-main p-big w-max button\">\n Allow Tracking\n </button>\n <button @click=\"nextSlide\" class=\"bg-light p-big w-max button\">\n Ask App Not to Track\n </button>\n </div>\n </div>\n </div>\n\n <!-- SLIDE 5 - Final -->\n\t\t <!-- ------------------------------- -->\n <div class=\"pos-relative flex-justify-center pd-thin t-center flex-column flex embla__slide\">\n \t<div class=\"flex flex-column flex-center pd-semi o-hidden pos-relative pos-b-0 z-index-1\">\n\t \t<img loading=\"lazy\" \n\t \t\t:src=\"'/logo/logo_square.svg'\" \n\t \t\tclass=\"i-extra radius-medium mn-b-small\"\n\t \t>\n\t \t<h3 class=\"h3 mn-b-medium\">Ready to Rent?</h3>\n\t \t<p class=\"p-regular t-transp mn-b-big\">Join thousands of creators who trust 3SR for their professional video equipment needs. Choose how you'd like to get started.</p>\n\t \n\t \t<button @click=\"openFirstRoute('Sign Up')\" class=\"bg-main p-big w-100 button mn-b-thin\">Create Account</button> \n\t \t<button @click=\"openFirstRoute('Sign In')\" class=\"bg-light t-black p-big w-100 button mn-b-semi\">Sign In</button>\n\n\t\t <p class=\"p-small mn-b-medium t-transp\">Or explore as a guest:</p> \n\t \t<button @click=\"setFirstUseFalse()\" class=\"bg-light p-big w-max button\">Continue as Guest</button>\n \t</div>\n\t </div>\n\n </div>\n\n <div class=\"\n\t embla__dots\n \tz-index-5 \n \th-4r \n \tpos-absolute \n \tpos-t-1r \n \tflex-nowrap \n \tflex \n \tflex-center \n \tgap-thin \n \tw-100\"\n >\n\t <button\n\t v-for=\"(snap, index) in scrollSnaps\"\n\t :key=\"index\"\n\t @click=\"scrollTo(index)\"\n\t :class=\"[\n\t 'embla__dot bg- i-small radius-extra',\n\t\t\t\t\t{ 'bg-light': index !== selectedIndex },\n\t { 'bg-main': index === selectedIndex }\n\t ]\"\n\t >\n\t\t </button>\n\n\t\t <button \n\t\t \t@click.native=\"setFirstUseFalse()\" \n\t\t \tclass=\"\n\t\t \t\tpd-small\n\t\t \t\tbg-white\n\t\t \t\tt-black\n\t\t \t\tw-6r \n\t\t \t\tpos-b-0r \n\t\t \t\tflex-nowrap \n\t\t \t\tflex \n\t\t \t\tflex-center \n\t\t \t\tpos-r-1r \n\t\t \t\tpos-relative \n\t\t \t\tradius-small \n\t\t \t\tuppercase \n\t\t \t\tpos-absolute\n\t\t \t\"> \n\t\t \t<span>Skip</span>\n\t\t </button>\n\t </div>\n\t</div>\n\n</template>\n\n<script setup>\n\timport { ref, onMounted, reactive, inject } from 'vue';\n\timport { useRoute, useRouter } from 'vue-router'\n\n\timport emblaCarouselVue from 'embla-carousel-vue'; \n\n\timport IconBell from '@martyrs/src/modules/icons/entities/IconBell.vue';\n\timport IconAddress from '@martyrs/src/modules/icons/entities/IconAddress.vue';\n\timport IconShield from '@martyrs/src/modules/icons/entities/IconAddress.vue';\n\n\timport { AppTrackingTransparency } from 'capacitor-plugin-app-tracking-transparency';\n\n\tconst props = defineProps(['slides', 'options']);\n\tconst emits = defineEmits(['updateFirstUse'])\n\tconst router = useRouter()\n\t\n\t// Get notification manager directly\n\timport ModuleNotifications from '@martyrs/src/modules/notifications/notifications.client.js'\n\n\t// Set firstUse\n\timport { Preferences } from '@capacitor/preferences';\n\n\tconst permissions = reactive({\n\t notifications: false,\n\t location: false,\n\t tracking: false\n\t})\n\n\tasync function setFirstUseFalse() {\n await Preferences.set({\n key: 'first-use',\n value: JSON.stringify(false),\n });\n\n emits('updateFirstUse', false);\n }\n\n async function openFirstRoute(routeName) {\n\t\tawait router.push({name: routeName})\n\n\t\tawait Preferences.set({\n key: 'first-use',\n value: JSON.stringify(false),\n });\n\n\t\temits('updateFirstUse', false);\n\t}\n\n\tconst [emblaNode, emblaApi] = emblaCarouselVue({ loop: false })\n\n\tconst selectedIndex = ref(0);\n\tconst scrollSnaps = ref([]);\n\tconst TWEEN_FACTOR = 3\n\tconst tweenValues = ref([])\n\tconst tweenSlides = ref([])\n\n\tconst scrollTo = (index) => emblaApi.value && emblaApi.value.scrollTo(index);\n\n\tconst nextSlide = () => {\n\t\tif (emblaApi.value) {\n\t\t\temblaApi.value.scrollNext();\n\t\t}\n\t};\n\n\tconst onInit = (embla) => {\n\t scrollSnaps.value = emblaApi.value.scrollSnapList();\n\t};\n\n\tconst onSelect = (embla) => {\n\t selectedIndex.value = emblaApi.value.selectedScrollSnap();\n\t};\n\n\tconst onScroll = (embla) => {\n const engine = emblaApi.value.internalEngine()\n const scrollProgress = emblaApi.value.scrollProgress()\n\n const stylesOpacity = emblaApi.value.scrollSnapList().map((scrollSnap, index) => {\n\t let diffToTarget = scrollSnap - scrollProgress\n\n\t if (engine.options.loop) {\n\t engine.slideLooper.loopPoints.forEach((loopItem) => {\n\t const target = loopItem.target()\n\t if (index === loopItem.index && target !== 0) {\n\t const sign = Math.sign(target)\n\t if (sign === -1) diffToTarget = scrollSnap - (1 + scrollProgress)\n\t if (sign === 1) diffToTarget = scrollSnap + (1 - scrollProgress)\n\t }\n\t })\n\t }\n\t const tweenValue = 1 - Math.abs(diffToTarget * TWEEN_FACTOR)\n\t return Math.min(Math.max(tweenValue, 0), 1)\n\t })\n\n\t\ttweenSlides.value = stylesOpacity\n\n const styles = emblaApi.value.scrollSnapList().map((scrollSnap, index) => {\n let diffToTarget = scrollSnap - scrollProgress\n\n if (engine.options.loop) {\n engine.slideLooper.loopPoints.forEach((loopItem) => {\n const target = loopItem.target()\n if (index === loopItem.index && target !== 0) {\n const sign = Math.sign(target)\n if (sign === -1) diffToTarget = scrollSnap - (1 + scrollProgress)\n if (sign === 1) diffToTarget = scrollSnap + (1 - scrollProgress)\n }\n })\n }\n return diffToTarget * (1 / TWEEN_FACTOR) * 100\n })\n\n tweenValues.value = styles\n }\n\n\n\tonMounted(async() => {\n\t onInit(emblaApi);\n\t onSelect(emblaApi);\n\t onScroll(emblaApi);\n\n\t emblaApi.value.on('reInit', onInit);\n\t emblaApi.value.on('reInit', onSelect);\n\t emblaApi.value.on('select', onSelect);\n\t emblaApi.value.on('scroll', onScroll)\n\t});\n\n\tconst requestNotificationPermission = async () => {\n\t try {\n\t // Use notification manager from global store if available\n\t const notificationManager = window.$store?.notificationManager;\n\t \n\t if (notificationManager) {\n\t await notificationManager.pushHandler.requestPermissions();\n\t await notificationManager.registerWebPush(window.$store);\n\t permissions.notifications = true;\n\t }\n\t \n\t setTimeout(() => {\n\t nextSlide()\n\t }, 1000)\n\t } catch (error) {\n\t console.error('Notification permission error:', error)\n\t nextSlide()\n\t }\n\t}\n\n\tconst requestLocationPermission = async () => {\n\t try {\n\t if (!('geolocation' in navigator)) {\n\t nextSlide()\n\t return\n\t }\n\n\t navigator.geolocation.getCurrentPosition(\n\t () => {\n\t permissions.location = true\n\t setTimeout(() => {\n\t nextSlide()\n\t }, 1000)\n\t },\n\t () => {\n\t setTimeout(() => {\n\t nextSlide()\n\t }, 1000)\n\t },\n\t { timeout: 8000 }\n\t )\n\t } catch (error) {\n\t console.error('Location permission error:', error)\n\t nextSlide()\n\t }\n\t}\n\n\tconst requestTrackingPermission = async () => {\n\t try {\n\t const { status } = await AppTrackingTransparency.requestPermission();\n\t \n\t if (status === 'authorized') {\n\t permissions.tracking = true;\n\t }\n\t \n\t setTimeout(() => {\n\t nextSlide();\n\t }, 1000);\n\t } catch (error) {\n\t console.error('Tracking permission error:', error);\n\t nextSlide();\n\t }\n\t};\n\n</script>\n\n<style lang=\"scss\">\n\t.embla {\n overflow: hidden;\n }\n .embla__container {\n display: flex;\n }\n .embla__slide {\n flex: 0 0 100%;\n min-width: 0;\n }\n</style>\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Walkthrough.vue.js","sources":["../../../../../../../../src/modules/globals/views/components/sections/Walkthrough.vue"],"sourcesContent":["<template>\n\t<div class=\"pos-fixed pos-t-0 pos-l-0 w-100 h-100vh z-index-6 bg-white flex embla\" ref=\"emblaNode\">\n \n\n <div class=\"embla__container w-100 z-index-1\">\n\t \n\n\t\t <!-- SLIDE 1 -->\n\t\t <!-- ------------------------------- -->\n \t<div class=\"pos-relative flex-justify-center pd-thin t-center flex-column flex embla__slide\">\n\t \t\t<!-- <div class=\"pos-absolute w-100 h-100 z-index-0 pos-t-0 pos-r-0\">\n\t \t\t\t<div class=\"pos-absolute z-index-1 pos-t-0 pos-r-0 w-100 h-100 bg-black-grad\"></div>\n\t \t\t\t<img class=\"pos-absolute z-index-0 pos-t-0 pos-r-0 object-fit-cover h-100 w-100\" src=\"/assets/walkthrough/1.png\">\n\t \t\t</div> -->\n \t\t<div \n \t\t\tclass=\"flex flex-column flex-center pd-semi o-hidden pos-relative pos-b-0 z-index-1\"\n \t\t\t :style=\"{ opacity: tweenSlides.length ? tweenSlides[0] : undefined, transform: tweenSlides[0] ? `scale(${tweenSlides[0]})` : '' }\"\n \t\t>\n \t\t\t<img \n\t \t\t:src=\"'/logo/logo_square.svg'\" \n\t \t\tclass=\"i-extra radius-medium mn-b-small\"\n\t \t>\n\n\t <h3 class=\"h3 mn-b-medium\">Welcome to 3SR</h3>\n\t \n\t <p class=\"p-regular t-transp mn-b-big\">\n\t Access premium cameras, lenses, lighting, and audio gear through our app designed for filmmakers and content creators.\n\t </p>\n\n\n\t <button @click=\"nextSlide\" class=\"bg-main p-big w-max button\">\n\t Get Started\n\t </button>\n\t </div>\n \t</div>\n\n \t<!-- SLIDE 2 -->\n\t\t <!-- ------------------------------- -->\n \t<div class=\"pos-relative flex-justify-center pd-thin t-center flex-column flex embla__slide\">\n\t\t\t\t<div class=\"flex flex-column flex-center pd-semi o-hidden pos-relative pos-b-0 z-index-1\">\n \n <div class=\"mn-b-small w-4r h-4r mn-auto pd-regular bg-main radius-regular t-white flex flex-center\">\n <IconBell/>\n </div>\n\n\t <h3 class=\"h3 mn-b-medium\">Stay in the Loop</h3>\n\t <p class=\"p-regular t-transp mn-b-big\">\n\t Get instant notifications about equipment availability, booking confirmations, and exclusive deals from our rental platform.\n\t </p>\n\n\t <div class=\"flex flex-column flex-center gap-small\">\n\t <button @click=\"requestNotificationPermission\" class=\"bg-main p-big w-max button\">\n\t\t\t\t\t\t \t Enable Notifications\n\t\t\t\t\t\t </button>\n\t <button @click=\"nextSlide\" class=\"bg-light p-big w-max button\">\n\t Maybe Later\n\t </button>\n\t </div>\n\t </div>\n\t\t\t</div>\n\n\t\t\t<!-- SLIDE 3 -->\n\t\t <!-- ------------------------------- -->\n\t\t\t<div class=\"pos-relative flex-justify-center pd-thin t-center flex-column flex embla__slide\">\n <div class=\"flex flex-column flex-center pd-semi o-hidden pos-relative pos-b-0 z-index-1\">\n \n <div class=\"mn-b-small w-4r h-4r mn-auto pd-regular bg-main radius-regular t-white flex flex-center\">\n <IconAddress/>\n </div>\n\n <h3 class=\"h3 mn-b-medium\">Find Nearby Equipment</h3>\n <p class=\"p-regular t-transp mn-b-big\">\n Discover rental locations and equipment availability near you. We'll show you the closest pickup points and delivery options.\n </p>\n\n <div class=\"flex flex-column flex-center gap-small\">\n <button @click=\"requestLocationPermission\" class=\"bg-main p-big w-max button\">\n Enable Location\n </button>\n <button @click=\"nextSlide\" class=\"bg-light p-big w-max button\">\n Skip for Now\n </button>\n </div>\n </div>\n </div>\n\n <!-- SLIDE 4 - App Tracking Transparency -->\n\t\t <!-- ------------------------------- -->\n <div class=\"pos-relative flex-justify-center pd-thin t-center flex-column flex embla__slide\">\n <div class=\"flex flex-column flex-center pd-semi o-hidden pos-relative pos-b-0 z-index-1\">\n <div class=\"mn-b-small w-4r h-4r mn-auto pd-regular bg-main radius-regular t-white flex flex-center\">\n <IconShield/>\n </div>\n\n <h3 class=\"h3 mn-b-medium\">Personalized Experience</h3>\n <p class=\"p-regular t-transp mn-b-big\">\n Allow us to provide you with personalized recommendations and improve your app experience based on your preferences.\n </p>\n\n <div class=\"flex flex-column flex-center gap-small\">\n <button @click=\"requestTrackingPermission\" class=\"bg-main p-big w-max button\">\n Allow Tracking\n </button>\n <button @click=\"nextSlide\" class=\"bg-light p-big w-max button\">\n Ask App Not to Track\n </button>\n </div>\n </div>\n </div>\n\n <!-- SLIDE 5 - Final -->\n\t\t <!-- ------------------------------- -->\n <div class=\"pos-relative flex-justify-center pd-thin t-center flex-column flex embla__slide\">\n \t<div class=\"flex flex-column flex-center pd-semi o-hidden pos-relative pos-b-0 z-index-1\">\n\t \t<img loading=\"lazy\" \n\t \t\t:src=\"'/logo/logo_square.svg'\" \n\t \t\tclass=\"i-extra radius-medium mn-b-small\"\n\t \t>\n\t \t<h3 class=\"h3 mn-b-medium\">Ready to Rent?</h3>\n\t \t<p class=\"p-regular t-transp mn-b-big\">Join thousands of creators who trust 3SR for their professional video equipment needs. Choose how you'd like to get started.</p>\n\t \n\t \t<button @click=\"openFirstRoute('Sign Up')\" class=\"bg-main p-big w-100 button mn-b-thin\">Create Account</button> \n\t \t<button @click=\"openFirstRoute('Sign In')\" class=\"bg-light t-black p-big w-100 button mn-b-semi\">Sign In</button>\n\n\t\t <p class=\"p-small mn-b-medium t-transp\">Or explore as a guest:</p> \n\t \t<button @click=\"setFirstUseFalse()\" class=\"bg-light p-big w-max button\">Continue as Guest</button>\n \t</div>\n\t </div>\n\n </div>\n\n <div class=\"\n\t embla__dots\n \tz-index-5 \n \th-4r \n \tpos-absolute \n \tpos-t-1r \n \tflex-nowrap \n \tflex \n \tflex-center \n \tgap-thin \n \tw-100\"\n >\n\t <button\n\t v-for=\"(snap, index) in scrollSnaps\"\n\t :key=\"index\"\n\t @click=\"scrollTo(index)\"\n\t :class=\"[\n\t 'embla__dot bg- i-small radius-extra',\n\t\t\t\t\t{ 'bg-light': index !== selectedIndex },\n\t { 'bg-main': index === selectedIndex }\n\t ]\"\n\t >\n\t\t </button>\n\n\t\t <button \n\t\t \t@click.native=\"setFirstUseFalse()\" \n\t\t \tclass=\"\n\t\t \t\tpd-small\n\t\t \t\tbg-white\n\t\t \t\tt-black\n\t\t \t\tw-6r \n\t\t \t\tpos-b-0r \n\t\t \t\tflex-nowrap \n\t\t \t\tflex \n\t\t \t\tflex-center \n\t\t \t\tpos-r-1r \n\t\t \t\tpos-relative \n\t\t \t\tradius-small \n\t\t \t\tuppercase \n\t\t \t\tpos-absolute\n\t\t \t\"> \n\t\t \t<span>Skip</span>\n\t\t </button>\n\t </div>\n\t</div>\n\n</template>\n\n<script setup>\n\timport { ref, onMounted, reactive, inject } from 'vue';\n\timport { useRoute, useRouter } from 'vue-router'\n\n\timport emblaCarouselVue from 'embla-carousel-vue'; \n\n\timport IconBell from '@martyrs/src/modules/icons/entities/IconBell.vue';\n\timport IconAddress from '@martyrs/src/modules/icons/entities/IconAddress.vue';\n\timport IconShield from '@martyrs/src/modules/icons/entities/IconAddress.vue';\n\n\timport { AppTrackingTransparency } from 'capacitor-plugin-app-tracking-transparency';\n\n\tconst props = defineProps(['slides', 'options']);\n\tconst emits = defineEmits(['updateFirstUse'])\n\tconst router = useRouter()\n\t\n\t// Get notification manager directly\n\timport ModuleNotifications from '@martyrs/src/modules/notifications/notifications.client.js'\n\n\t// Set firstUse\n\timport { Preferences } from '@capacitor/preferences';\n\n\tconst permissions = reactive({\n\t notifications: false,\n\t location: false,\n\t tracking: false\n\t})\n\n\tasync function setFirstUseFalse() {\n await Preferences.set({\n key: 'first-use',\n value: JSON.stringify(false),\n });\n\n emits('updateFirstUse', false);\n }\n\n async function openFirstRoute(routeName) {\n\t\tawait router.push({name: routeName})\n\n\t\tawait Preferences.set({\n key: 'first-use',\n value: JSON.stringify(false),\n });\n\n\t\temits('updateFirstUse', false);\n\t}\n\n\tconst [emblaNode, emblaApi] = emblaCarouselVue({ loop: false })\n\n\tconst selectedIndex = ref(0);\n\tconst scrollSnaps = ref([]);\n\tconst TWEEN_FACTOR = 3\n\tconst tweenValues = ref([])\n\tconst tweenSlides = ref([])\n\n\tconst scrollTo = (index) => emblaApi.value && emblaApi.value.scrollTo(index);\n\n\tconst nextSlide = () => {\n\t\tif (emblaApi.value) {\n\t\t\temblaApi.value.scrollNext();\n\t\t}\n\t};\n\n\tconst onInit = (embla) => {\n\t scrollSnaps.value = emblaApi.value.scrollSnapList();\n\t};\n\n\tconst onSelect = (embla) => {\n\t selectedIndex.value = emblaApi.value.selectedScrollSnap();\n\t};\n\n\tlet scrollRAF = null;\n\tconst onScroll = (embla) => {\n\t\t// Cancel previous frame if exists\n\t\tif (scrollRAF) cancelAnimationFrame(scrollRAF);\n\t\t\n\t\tscrollRAF = requestAnimationFrame(() => {\n\t\t\tconst engine = emblaApi.value.internalEngine()\n\t\t\tconst scrollProgress = emblaApi.value.scrollProgress()\n\t\t\t// Cache snapList to avoid calling it twice\n\t\t\tconst snapList = emblaApi.value.scrollSnapList()\n\n\t\t\tconst stylesOpacity = snapList.map((scrollSnap, index) => {\n\t\t\t\tlet diffToTarget = scrollSnap - scrollProgress\n\n\t\t\t\tif (engine.options.loop) {\n\t\t\t\t\tengine.slideLooper.loopPoints.forEach((loopItem) => {\n\t\t\t\t\t\tconst target = loopItem.target()\n\t\t\t\t\t\tif (index === loopItem.index && target !== 0) {\n\t\t\t\t\t\t\tconst sign = Math.sign(target)\n\t\t\t\t\t\t\tif (sign === -1) diffToTarget = scrollSnap - (1 + scrollProgress)\n\t\t\t\t\t\t\tif (sign === 1) diffToTarget = scrollSnap + (1 - scrollProgress)\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t\tconst tweenValue = 1 - Math.abs(diffToTarget * TWEEN_FACTOR)\n\t\t\t\treturn Math.min(Math.max(tweenValue, 0), 1)\n\t\t\t})\n\n\t\t\tconst styles = snapList.map((scrollSnap, index) => {\n\t\t\t\tlet diffToTarget = scrollSnap - scrollProgress\n\n\t\t\t\tif (engine.options.loop) {\n\t\t\t\t\tengine.slideLooper.loopPoints.forEach((loopItem) => {\n\t\t\t\t\t\tconst target = loopItem.target()\n\t\t\t\t\t\tif (index === loopItem.index && target !== 0) {\n\t\t\t\t\t\t\tconst sign = Math.sign(target)\n\t\t\t\t\t\t\tif (sign === -1) diffToTarget = scrollSnap - (1 + scrollProgress)\n\t\t\t\t\t\t\tif (sign === 1) diffToTarget = scrollSnap + (1 - scrollProgress)\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t\treturn diffToTarget * (1 / TWEEN_FACTOR) * 100\n\t\t\t})\n\n\t\t\t// Batch updates together\n\t\t\ttweenSlides.value = stylesOpacity\n\t\t\ttweenValues.value = styles\n\t\t});\n\t}\n\n\n\tonMounted(() => {\n\t emblaApi.value.on('init', onInit)\n\t emblaApi.value.on('select', onSelect)\n\t emblaApi.value.on('scroll', onScroll)\n\t});\n\n\tconst requestNotificationPermission = async () => {\n\t try {\n\t // Use notification manager from global store if available\n\t const notificationManager = window.$store?.notificationManager;\n\t \n\t if (notificationManager) {\n\t await notificationManager.pushHandler.requestPermissions();\n\t await notificationManager.registerWebPush(window.$store);\n\t permissions.notifications = true;\n\t }\n\t \n\t setTimeout(() => {\n\t nextSlide()\n\t }, 1000)\n\t } catch (error) {\n\t console.error('Notification permission error:', error)\n\t nextSlide()\n\t }\n\t}\n\n\tconst requestLocationPermission = async () => {\n\t try {\n\t if (!('geolocation' in navigator)) {\n\t nextSlide()\n\t return\n\t }\n\n\t navigator.geolocation.getCurrentPosition(\n\t () => {\n\t permissions.location = true\n\t setTimeout(() => {\n\t nextSlide()\n\t }, 1000)\n\t },\n\t () => {\n\t setTimeout(() => {\n\t nextSlide()\n\t }, 1000)\n\t },\n\t { timeout: 8000 }\n\t )\n\t } catch (error) {\n\t console.error('Location permission error:', error)\n\t nextSlide()\n\t }\n\t}\n\n\tconst requestTrackingPermission = async () => {\n\t try {\n\t const { status } = await AppTrackingTransparency.requestPermission();\n\t \n\t if (status === 'authorized') {\n\t permissions.tracking = true;\n\t }\n\t \n\t setTimeout(() => {\n\t nextSlide();\n\t }, 1000);\n\t } catch (error) {\n\t console.error('Tracking permission error:', error);\n\t nextSlide();\n\t }\n\t};\n\n</script>\n\n<style lang=\"scss\">\n\t.embla {\n overflow: hidden;\n }\n .embla__container {\n display: flex;\n }\n .embla__slide {\n flex: 0 0 100%;\n min-width: 0;\n }\n</style>\n"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
3
|
const vue = require("vue");
|
|
4
|
-
const AlertDialog =
|
|
4
|
+
const AlertDialog = vue.defineAsyncComponent(
|
|
5
|
+
() => Promise.resolve().then(() => require("../components/blocks/AlertDialog.vue.cjs"))
|
|
6
|
+
);
|
|
5
7
|
const alertState = vue.reactive({
|
|
6
8
|
visible: false,
|
|
7
9
|
title: "",
|
|
@@ -41,7 +43,7 @@ const alertPlugin = {
|
|
|
41
43
|
if (typeof window !== "undefined" && typeof document !== "undefined") {
|
|
42
44
|
const container = document.createElement("div");
|
|
43
45
|
document.body.appendChild(container);
|
|
44
|
-
const vnode = vue.h(AlertDialog
|
|
46
|
+
const vnode = vue.h(AlertDialog, { alertState, handleAction, closeAlert });
|
|
45
47
|
vue.render(vnode, container);
|
|
46
48
|
}
|
|
47
49
|
}
|