@ozdao/martyrs 0.2.527 → 0.2.528
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/builder.cjs +4 -4
- package/dist/builder.js +4 -4
- package/dist/{main-DFvn9trs.js → main-40cyU_8J.js} +361 -355
- package/dist/{main-BNqX4N59.cjs → main-sq8skoQM.cjs} +4 -4
- package/dist/martyrs/src/components/Dropdown/{Dropdown.vue.cjs → Dropdown.vue2.cjs} +2 -2
- package/dist/martyrs/src/components/Dropdown/Dropdown.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/Dropdown/{Dropdown.vue.js → Dropdown.vue2.js} +2 -2
- package/dist/martyrs/src/components/Dropdown/{Dropdown.vue.cjs.map → Dropdown.vue2.js.map} +1 -1
- package/dist/martyrs/src/components/Feed/{Feed.vue2.cjs → Feed.vue.cjs} +3 -3
- package/dist/martyrs/src/components/Feed/{Feed.vue2.js.map → Feed.vue.cjs.map} +1 -1
- package/dist/martyrs/src/components/Feed/{Feed.vue2.js → Feed.vue.js} +3 -3
- package/dist/martyrs/src/components/Feed/Feed.vue.js.map +1 -0
- package/dist/martyrs/src/components/Field/{Field.vue2.cjs → Field.vue.cjs} +2 -2
- package/dist/martyrs/src/components/Field/{Field.vue2.js.map → Field.vue.cjs.map} +1 -1
- package/dist/martyrs/src/components/Field/{Field.vue2.js → Field.vue.js} +2 -2
- package/dist/martyrs/src/components/Field/Field.vue.js.map +1 -0
- 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.vue2.cjs → BlockTags.vue.cjs} +2 -2
- package/dist/martyrs/src/components/FieldTags/{BlockTags.vue2.js.map → BlockTags.vue.cjs.map} +1 -1
- package/dist/martyrs/src/components/FieldTags/{BlockTags.vue2.js → BlockTags.vue.js} +2 -2
- package/dist/martyrs/src/components/FieldTags/BlockTags.vue.js.map +1 -0
- package/dist/martyrs/src/components/Media/Media.vue.cjs +20 -3
- package/dist/martyrs/src/components/Media/Media.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/Media/Media.vue.js +20 -3
- package/dist/martyrs/src/components/Media/Media.vue.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 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs +11 -7
- 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 +14 -10
- 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 +12 -9
- package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +17 -14
- package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs +12 -8
- package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +15 -11
- package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js.map +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/backoffice/components/pages/Dashboard.vue.cjs +1 -1
- package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.js +1 -1
- package/dist/martyrs/src/modules/community/components/layouts/Community.vue.cjs +1 -1
- package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js +1 -1
- package/dist/martyrs/src/modules/community/components/pages/Blog.vue.cjs +1 -1
- package/dist/martyrs/src/modules/community/components/pages/Blog.vue.js +1 -1
- package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs +3 -3
- package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +3 -3
- 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/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/pages/EditEvent.vue.cjs +3 -3
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +3 -3
- package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.cjs +2 -2
- package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +2 -2
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs +3 -3
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +3 -3
- 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/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 +3 -3
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +3 -3
- package/dist/martyrs/src/modules/globals/globals.client.cjs +2 -0
- package/dist/martyrs/src/modules/globals/globals.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/globals.client.js +2 -0
- package/dist/martyrs/src/modules/globals/globals.client.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/classes/globals.app.cjs +220 -0
- package/dist/martyrs/src/modules/globals/views/classes/globals.app.cjs.map +1 -0
- package/dist/martyrs/src/modules/globals/views/classes/globals.app.js +220 -0
- package/dist/martyrs/src/modules/globals/views/classes/globals.app.js.map +1 -0
- package/dist/martyrs/src/modules/globals/views/classes/store.cjs +47 -49
- package/dist/martyrs/src/modules/globals/views/classes/store.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/classes/store.js +48 -50
- 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 +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/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/utils/vue-app-renderer.cjs +1 -6
- 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 +1 -6
- 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 +1 -1
- package/dist/martyrs/src/modules/icons/components/IconSearchPopup.vue.js +1 -1
- package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.cjs +1 -1
- package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.js +1 -1
- package/dist/martyrs/src/modules/inventory/components/forms/StockAlertsForm.vue.cjs +1 -1
- package/dist/martyrs/src/modules/inventory/components/forms/StockAlertsForm.vue.js +1 -1
- package/dist/martyrs/src/modules/inventory/components/pages/Inventory.vue.cjs +2 -2
- package/dist/martyrs/src/modules/inventory/components/pages/Inventory.vue.js +2 -2
- 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/landing/components/sections/SectionMobileApp.vue.cjs +11 -8
- 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 +12 -9
- package/dist/martyrs/src/modules/landing/components/sections/SectionMobileApp.vue.js.map +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SubscribeNewsletter.vue.cjs +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SubscribeNewsletter.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SubscribeNewsletter.vue.js +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SubscribeNewsletter.vue.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 +1 -1
- package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.cjs +1 -1
- package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.js +1 -1
- 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 +1 -1
- package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Album.vue.cjs +2 -2
- package/dist/martyrs/src/modules/music/components/pages/Album.vue.js +2 -2
- 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 +2 -2
- package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.js +2 -2
- package/dist/martyrs/src/modules/music/components/pages/Track.vue.cjs +2 -2
- package/dist/martyrs/src/modules/music/components/pages/Track.vue.js +2 -2
- package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.js +1 -1
- 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/OrderCreateBackoffice.vue.cjs +2 -2
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +2 -2
- 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 -3
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +3 -3
- package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.cjs +5 -5
- package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.js +5 -5
- 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 +5 -5
- package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.js +5 -5
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs +5 -5
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +5 -5
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs +4 -4
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +4 -4
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +2 -2
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +2 -2
- 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 +2 -2
- package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +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/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/elements/{THC.vue2.cjs → THC.vue.cjs} +2 -2
- package/dist/martyrs/src/modules/products/components/elements/THC.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/products/components/elements/{THC.vue2.js → THC.vue.js} +2 -2
- package/dist/martyrs/src/modules/products/components/elements/THC.vue.js.map +1 -0
- package/dist/martyrs/src/modules/products/components/pages/Categories.vue.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 +3 -3
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +3 -3
- package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs +2 -2
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +2 -2
- 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 +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.cjs +2 -2
- package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +2 -2
- 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/rents/views/components/pages/Gant/GanttToolbar.vue.cjs +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttToolbar.vue.js +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 -2
- package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/spots/components/blocks/SpotMemberModify.vue.cjs +1 -1
- package/dist/martyrs/src/modules/spots/components/blocks/SpotMemberModify.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.cjs +2 -2
- package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js +2 -2
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +1 -1
- package/dist/martyrs/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 +1 -1
- package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.js +1 -1
- 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 +1 -1
- package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.js +1 -1
- 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 +1 -1
- package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js +1 -1
- package/dist/martyrs.cjs.js +1 -1
- package/dist/martyrs.css +1 -1
- package/dist/martyrs.es.js +1 -1
- package/dist/node_modules/.pnpm/@unhead_dom@1.11.20/node_modules/@unhead/dom/dist/index.cjs +198 -0
- package/dist/node_modules/.pnpm/@unhead_dom@1.11.20/node_modules/@unhead/dom/dist/index.cjs.map +1 -0
- package/dist/node_modules/.pnpm/@unhead_dom@1.11.20/node_modules/@unhead/dom/dist/index.js +198 -0
- package/dist/node_modules/.pnpm/@unhead_dom@1.11.20/node_modules/@unhead/dom/dist/index.js.map +1 -0
- package/dist/node_modules/.pnpm/@unhead_shared@1.11.20/node_modules/@unhead/shared/dist/index.cjs +304 -0
- package/dist/node_modules/.pnpm/@unhead_shared@1.11.20/node_modules/@unhead/shared/dist/index.cjs.map +1 -1
- package/dist/node_modules/.pnpm/@unhead_shared@1.11.20/node_modules/@unhead/shared/dist/index.js +305 -1
- package/dist/node_modules/.pnpm/@unhead_shared@1.11.20/node_modules/@unhead/shared/dist/index.js.map +1 -1
- package/dist/node_modules/.pnpm/@unhead_vue@1.11.20_vue@3.5.21_typescript@5.9.2_/node_modules/@unhead/vue/dist/shared/vue.ziyDaVMR.cjs +31 -1
- package/dist/node_modules/.pnpm/@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.21_typescript@5.9.2_/node_modules/@unhead/vue/dist/shared/vue.ziyDaVMR.js +33 -3
- package/dist/node_modules/.pnpm/@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/hookable@5.5.3/node_modules/hookable/dist/index.cjs +209 -0
- package/dist/node_modules/.pnpm/hookable@5.5.3/node_modules/hookable/dist/index.cjs.map +1 -0
- package/dist/node_modules/.pnpm/hookable@5.5.3/node_modules/hookable/dist/index.js +209 -0
- package/dist/node_modules/.pnpm/hookable@5.5.3/node_modules/hookable/dist/index.js.map +1 -0
- package/dist/node_modules/.pnpm/unhead@1.11.20/node_modules/unhead/dist/index.cjs +415 -0
- package/dist/node_modules/.pnpm/unhead@1.11.20/node_modules/unhead/dist/index.cjs.map +1 -1
- package/dist/node_modules/.pnpm/unhead@1.11.20/node_modules/unhead/dist/index.js +415 -0
- package/dist/node_modules/.pnpm/unhead@1.11.20/node_modules/unhead/dist/index.js.map +1 -1
- package/dist/style.css +5 -5
- package/dist/{web-xomD1Wpp.cjs → web-C68B9mpp.cjs} +1 -1
- package/dist/{web-cWW0_Tbe.js → web-HreCVhdf.js} +1 -1
- package/package.json +1 -1
- package/src/builder/modes/ssr.prod.js +2 -2
- package/src/builder/modes/ssr.rspack.dev.js +1 -1
- package/src/builder/modes/ssr.vite.dev.js +1 -1
- package/src/components/Media/Media.vue +22 -1
- package/src/modules/auth/views/components/pages/ResetPassword.vue +10 -5
- package/src/modules/auth/views/components/pages/SignIn.vue +10 -4
- package/src/modules/auth/views/components/pages/SignUp.vue +10 -6
- package/src/modules/globals/TASK.MD +1 -0
- package/src/modules/globals/globals.client.js +3 -0
- package/src/modules/globals/views/classes/globals.app.js +320 -0
- package/src/modules/globals/views/classes/store.js +52 -55
- package/src/modules/globals/views/utils/vue-app-renderer.js +1 -7
- package/src/modules/landing/components/sections/SectionMobileApp.vue +6 -6
- package/src/modules/landing/components/sections/SubscribeNewsletter.vue +1 -1
- package/src/styles/typography.scss +2 -2
- package/dist/martyrs/src/components/Dropdown/Dropdown.vue.js.map +0 -1
- package/dist/martyrs/src/components/Feed/Feed.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/Field/Field.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/FieldTags/BlockTags.vue2.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/elements/THC.vue2.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/elements/THC.vue2.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Media.vue.js","sources":["../../../../../src/components/Media/Media.vue"],"sourcesContent":["<template>\n <div class=\"media-container pos-relative\">\n <!-- Изображение с ленивой загрузкой и placeholder -->\n <img\n v-if=\"isImage\"\n :src=\"isIntersecting ? url : ''\"\n :data-src=\"url\"\n :alt=\"options?.alt || 'Image'\"\n class=\"media-item\"\n :class=\"{ 'loading': !isLoaded }\"\n loading=\"lazy\"\n @load=\"handleLoad\"\n v-bind=\"options\"\n ref=\"imageElement\"\n />\n \n <!-- Видео с предварительной загрузкой -->\n <video\n v-else-if=\"isVideo\"\n ref=\"videoElement\"\n :class=\"{ 'loading': !isLoaded }\"\n class=\"media-item\"\n :controls=\"!options?.hideControls\"\n :loop=\"options?.loop !== false\"\n :muted=\"options?.muted !== false\"\n :autoplay=\"options?.autoplay\"\n :playsinline=\"options?.playsinline !== false\"\n :preload=\"options?.preload || 'metadata'\"\n @loadeddata=\"handleLoad\"\n v-bind=\"options\"\n >\n <source :src=\"url\" :type=\"videoType\">\n </video>\n \n <!-- Плейсхолдер во время загрузки -->\n <div v-if=\"!isLoaded\" class=\"media-placeholder\">\n Loading...\n </div>\n \n <!-- Сообщение об ошибке -->\n <div v-if=\"error\" class=\"media-error\">\n {{ error }}\n </div>\n </div>\n</template>\n\n<script setup>\nimport { ref, onMounted, computed, onUnmounted } from 'vue'\n\nconst props = defineProps({\n url: {\n type: String,\n required: true\n },\n options: {\n type: Object,\n default: () => ({\n muted: true,\n loop: true,\n playsinline: true,\n preload: 'metadata' // 'none' | 'metadata' | 'auto'\n })\n }\n})\n\n// Refs\nconst videoElement = ref(null)\nconst imageElement = ref(null)\nconst isLoaded = ref(false)\nconst error = ref(null)\nconst isIntersecting = ref(false)\nlet observer = null\nlet isPlaying = false\n\n// Определяем тип медиа\nconst fileExtension = computed(() => {\n return props.url?.split('.')?.pop()?.toLowerCase()\n})\n\nconst isImage = computed(() => {\n const imageExtensions = ['jpg', 'jpeg', 'png', 'gif', 'webp', 'svg', 'avif']\n return imageExtensions.includes(fileExtension.value)\n})\n\nconst isVideo = computed(() => {\n const videoExtensions = ['mp4', 'webm', 'ogg']\n return videoExtensions.includes(fileExtension.value)\n})\n\n// Определяем MIME-тип для видео\nconst videoType = computed(() => {\n const types = {\n 'mp4': 'video/mp4',\n 'webm': 'video/webm',\n 'ogg': 'video/ogg'\n }\n return types[fileExtension.value] || ''\n})\n\n// Обработчик загрузки медиа\nfunction handleLoad() {\n isLoaded.value = true\n}\n\n// Обработка ошибок\nfunction handleError(err) {\n error.value = `Ошибка загрузки медиа: ${err.message}`\n isLoaded.value = false\n}\n\n// Управление видео с обработкой ошибок\nasync function playVideo() {\n if (!videoElement.value) return\n \n try {\n if (videoElement.value.paused && !isPlaying) {\n await videoElement.value.play()\n isPlaying = true\n }\n } catch (err) {\n handleError(err)\n }\n}\n\nfunction checkAndPlayVideo() {\n if (!videoElement.value) return\n \n videoElement.value.onplaying = () => {\n isPlaying = true\n }\n \n videoElement.value.onpause = () => {\n isPlaying = false\n }\n \n videoElement.value.onerror = handleError\n}\n\n// Intersection Observer для ленивой загрузки\nfunction setupIntersectionObserver() {\n const options = {\n root: null,\n rootMargin: '50px',\n threshold: 0.1\n }\n \n observer = new IntersectionObserver((entries) => {\n entries.forEach(entry => {\n isIntersecting.value = entry.isIntersecting\n \n if (entry.isIntersecting) {\n if (isVideo.value && props.options?.autoplay) {\n playVideo()\n }\n // Отключаем observer после первой загрузки\n observer.disconnect()\n }\n })\n }, options)\n \n // Наблюдаем за элементом в зависимости от типа медиа\n const element = isImage.value ? imageElement.value : videoElement.value\n if (element) {\n observer.observe(element)\n }\n}\n\n// Lifecycle hooks\nonMounted(() => {\n setupIntersectionObserver()\n})\n\nonUnmounted(() => {\n if (observer) {\n observer.disconnect()\n }\n})\n</script>\n\n<style scoped>\n.media-container {\n}\n\n.media-item {\n all: inherit;\n opacity: 1;\n transition: opacity 0.3s ease;\n}\n\n.media-item.loading {\n opacity: 0;\n}\n\n.media-placeholder {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n background-color: #f5f5f5;\n}\n\n.media-error {\n color: #ff4444;\n padding: 1rem;\n text-align: center;\n}\n</style>"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"Media.vue.js","sources":["../../../../../src/components/Media/Media.vue"],"sourcesContent":["<template>\n <div class=\"media-container pos-relative\">\n <!-- Изображение с ленивой загрузкой и placeholder -->\n <img\n v-if=\"isImage\"\n :src=\"isIntersecting ? url : ''\"\n :data-src=\"url\"\n :alt=\"options?.alt || 'Image'\"\n class=\"media-item\"\n :class=\"{ 'loading': !isLoaded }\"\n loading=\"lazy\"\n @load=\"handleLoad\"\n @error=\"handleImageError\"\n v-bind=\"options\"\n ref=\"imageElement\"\n />\n \n <!-- Видео с предварительной загрузкой -->\n <video\n v-else-if=\"isVideo\"\n ref=\"videoElement\"\n :class=\"{ 'loading': !isLoaded }\"\n class=\"media-item\"\n :controls=\"!options?.hideControls\"\n :loop=\"options?.loop !== false\"\n :muted=\"options?.muted !== false\"\n :autoplay=\"options?.autoplay\"\n :playsinline=\"options?.playsinline !== false\"\n :preload=\"options?.preload || 'metadata'\"\n @loadeddata=\"handleLoad\"\n v-bind=\"options\"\n >\n <source :src=\"url\" :type=\"videoType\">\n </video>\n \n <!-- Плейсхолдер во время загрузки -->\n <div v-if=\"!isLoaded && !error\" class=\"media-placeholder\">\n Loading...\n </div>\n \n <!-- Сообщение об ошибке -->\n <div v-if=\"error\" class=\"media-error\">\n {{ error }}\n </div>\n </div>\n</template>\n\n<script setup>\nimport { ref, onMounted, computed, onUnmounted } from 'vue'\n\nconst props = defineProps({\n url: {\n type: String,\n required: true\n },\n options: {\n type: Object,\n default: () => ({\n muted: true,\n loop: true,\n playsinline: true,\n preload: 'metadata' // 'none' | 'metadata' | 'auto'\n })\n }\n})\n\n// Refs\nconst videoElement = ref(null)\nconst imageElement = ref(null)\nconst isLoaded = ref(false)\nconst error = ref(null)\nconst isIntersecting = ref(false)\nlet observer = null\nlet isPlaying = false\nlet loadTimeout = null\n\n// Определяем тип медиа\nconst fileExtension = computed(() => {\n return props.url?.split('.')?.pop()?.toLowerCase()\n})\n\nconst isImage = computed(() => {\n const imageExtensions = ['jpg', 'jpeg', 'png', 'gif', 'webp', 'svg', 'avif']\n return imageExtensions.includes(fileExtension.value)\n})\n\nconst isVideo = computed(() => {\n const videoExtensions = ['mp4', 'webm', 'ogg']\n return videoExtensions.includes(fileExtension.value)\n})\n\n// Определяем MIME-тип для видео\nconst videoType = computed(() => {\n const types = {\n 'mp4': 'video/mp4',\n 'webm': 'video/webm',\n 'ogg': 'video/ogg'\n }\n return types[fileExtension.value] || ''\n})\n\n// Обработчик загрузки медиа\nfunction handleLoad() {\n isLoaded.value = true\n clearTimeout(loadTimeout)\n}\n\n// Обработка ошибок изображения\nfunction handleImageError() {\n error.value = 'Не удалось загрузить изображение'\n isLoaded.value = false\n clearTimeout(loadTimeout)\n}\n\n// Обработка ошибок\nfunction handleError(err) {\n error.value = `Ошибка загрузки медиа: ${err.message}`\n isLoaded.value = false\n clearTimeout(loadTimeout)\n}\n\n// Управление видео с обработкой ошибок\nasync function playVideo() {\n if (!videoElement.value) return\n \n try {\n if (videoElement.value.paused && !isPlaying) {\n await videoElement.value.play()\n isPlaying = true\n }\n } catch (err) {\n handleError(err)\n }\n}\n\nfunction checkAndPlayVideo() {\n if (!videoElement.value) return\n \n videoElement.value.onplaying = () => {\n isPlaying = true\n }\n \n videoElement.value.onpause = () => {\n isPlaying = false\n }\n \n videoElement.value.onerror = handleError\n}\n\n// Intersection Observer для ленивой загрузки\nfunction setupIntersectionObserver() {\n const options = {\n root: null,\n rootMargin: '50px',\n threshold: 0.1\n }\n \n observer = new IntersectionObserver((entries) => {\n entries.forEach(entry => {\n isIntersecting.value = entry.isIntersecting\n \n if (entry.isIntersecting) {\n // Устанавливаем таймаут для обнаружения зависшей загрузки\n loadTimeout = setTimeout(() => {\n if (!isLoaded.value && !error.value) {\n error.value = 'Истекло время ожидания загрузки'\n }\n }, 10000) // 10 секунд таймаут\n \n if (isVideo.value && props.options?.autoplay) {\n playVideo()\n }\n // Отключаем observer после первой загрузки\n observer.disconnect()\n }\n })\n }, options)\n \n // Наблюдаем за элементом в зависимости от типа медиа\n const element = isImage.value ? imageElement.value : videoElement.value\n if (element) {\n observer.observe(element)\n }\n}\n\n// Lifecycle hooks\nonMounted(() => {\n setupIntersectionObserver()\n})\n\nonUnmounted(() => {\n if (observer) {\n observer.disconnect()\n }\n if (loadTimeout) {\n clearTimeout(loadTimeout)\n }\n})\n</script>\n\n<style scoped>\n.media-container {\n}\n\n.media-item {\n all: inherit;\n opacity: 1;\n transition: opacity 0.3s ease;\n}\n\n.media-item.loading {\n opacity: 0;\n}\n\n.media-placeholder {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n background-color: #f5f5f5;\n}\n\n.media-error {\n color: #ff4444;\n padding: 1rem;\n text-align: center;\n}\n</style>"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkDA,UAAM,QAAQ;AAiBd,UAAM,eAAe,IAAI,IAAI;AAC7B,UAAM,eAAe,IAAI,IAAI;AAC7B,UAAM,WAAW,IAAI,KAAK;AAC1B,UAAM,QAAQ,IAAI,IAAI;AACtB,UAAM,iBAAiB,IAAI,KAAK;AAChC,QAAI,WAAW;AACf,QAAI,YAAY;AAChB,QAAI,cAAc;AAGlB,UAAM,gBAAgB,SAAS,MAAM;AACnC,aAAO,MAAM,KAAK,MAAM,GAAG,GAAG,IAAG,GAAI,YAAW;AAAA,IAClD,CAAC;AAED,UAAM,UAAU,SAAS,MAAM;AAC7B,YAAM,kBAAkB,CAAC,OAAO,QAAQ,OAAO,OAAO,QAAQ,OAAO,MAAM;AAC3E,aAAO,gBAAgB,SAAS,cAAc,KAAK;AAAA,IACrD,CAAC;AAED,UAAM,UAAU,SAAS,MAAM;AAC7B,YAAM,kBAAkB,CAAC,OAAO,QAAQ,KAAK;AAC7C,aAAO,gBAAgB,SAAS,cAAc,KAAK;AAAA,IACrD,CAAC;AAGD,UAAM,YAAY,SAAS,MAAM;AAC/B,YAAM,QAAQ;AAAA,QACZ,OAAO;AAAA,QACP,QAAQ;AAAA,QACR,OAAO;AAAA,MACX;AACE,aAAO,MAAM,cAAc,KAAK,KAAK;AAAA,IACvC,CAAC;AAGD,aAAS,aAAa;AACpB,eAAS,QAAQ;AACjB,mBAAa,WAAW;AAAA,IAC1B;AAGA,aAAS,mBAAmB;AAC1B,YAAM,QAAQ;AACd,eAAS,QAAQ;AACjB,mBAAa,WAAW;AAAA,IAC1B;AAGA,aAAS,YAAY,KAAK;AACxB,YAAM,QAAQ,0BAA0B,IAAI,OAAO;AACnD,eAAS,QAAQ;AACjB,mBAAa,WAAW;AAAA,IAC1B;AAGA,mBAAe,YAAY;AACzB,UAAI,CAAC,aAAa,MAAO;AAEzB,UAAI;AACF,YAAI,aAAa,MAAM,UAAU,CAAC,WAAW;AAC3C,gBAAM,aAAa,MAAM,KAAI;AAC7B,sBAAY;AAAA,QACd;AAAA,MACF,SAAS,KAAK;AACZ,oBAAY,GAAG;AAAA,MACjB;AAAA,IACF;AAiBA,aAAS,4BAA4B;AACnC,YAAM,UAAU;AAAA,QACd,MAAM;AAAA,QACN,YAAY;AAAA,QACZ,WAAW;AAAA,MACf;AAEE,iBAAW,IAAI,qBAAqB,CAAC,YAAY;AAC/C,gBAAQ,QAAQ,WAAS;AACvB,yBAAe,QAAQ,MAAM;AAE7B,cAAI,MAAM,gBAAgB;AAExB,0BAAc,WAAW,MAAM;AAC7B,kBAAI,CAAC,SAAS,SAAS,CAAC,MAAM,OAAO;AACnC,sBAAM,QAAQ;AAAA,cAChB;AAAA,YACF,GAAG,GAAK;AAER,gBAAI,QAAQ,SAAS,MAAM,SAAS,UAAU;AAC5C,wBAAS;AAAA,YACX;AAEA,qBAAS,WAAU;AAAA,UACrB;AAAA,QACF,CAAC;AAAA,MACH,GAAG,OAAO;AAGV,YAAM,UAAU,QAAQ,QAAQ,aAAa,QAAQ,aAAa;AAClE,UAAI,SAAS;AACX,iBAAS,QAAQ,OAAO;AAAA,MAC1B;AAAA,IACF;AAGA,cAAU,MAAM;AACd,gCAAyB;AAAA,IAC3B,CAAC;AAED,gBAAY,MAAM;AAChB,UAAI,UAAU;AACZ,iBAAS,WAAU;AAAA,MACrB;AACA,UAAI,aAAa;AACf,qBAAa,WAAW;AAAA,MAC1B;AAAA,IACF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
3
|
const vue = require("vue");
|
|
4
|
-
;/* empty css
|
|
4
|
+
;/* empty css */
|
|
5
5
|
const vueRouter = require("vue-router");
|
|
6
6
|
const vueI18n = require("vue-i18n");
|
|
7
7
|
const auth = require("../../store/auth.cjs");
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { reactive, watch, ref, createElementBlock, openBlock, createElementVNode, toDisplayString, unref, withDirectives, vModelText } from "vue";
|
|
2
|
-
/* empty css
|
|
2
|
+
/* empty css */
|
|
3
3
|
import { useRoute, useRouter } from "vue-router";
|
|
4
4
|
import { useI18n } from "vue-i18n";
|
|
5
5
|
import { state as state$1 } from "../../store/auth.js";
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
3
|
const vue = require("vue");
|
|
4
4
|
;/* empty css */
|
|
5
|
-
const Field = require("../../../../../components/Field/Field.
|
|
5
|
+
const Field = require("../../../../../components/Field/Field.vue.cjs");
|
|
6
6
|
const Button = require("../../../../../components/Button/Button.vue.cjs");
|
|
7
7
|
const vueRouter = require("vue-router");
|
|
8
8
|
const vueI18n = require("vue-i18n");
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ref, createElementBlock, openBlock, createElementVNode, createCommentVNode, createVNode, toDisplayString, unref, createTextVNode, withCtx } from "vue";
|
|
2
2
|
/* empty css */
|
|
3
|
-
import Field from "../../../../../components/Field/Field.
|
|
3
|
+
import Field from "../../../../../components/Field/Field.vue.js";
|
|
4
4
|
import _sfc_main$1 from "../../../../../components/Button/Button.vue.js";
|
|
5
5
|
import { useRoute, useRouter } from "vue-router";
|
|
6
6
|
import { useI18n } from "vue-i18n";
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
3
|
const vue = require("vue");
|
|
4
4
|
;/* empty css */
|
|
5
|
-
const Field = require("../../../../../components/Field/Field.
|
|
5
|
+
const Field = require("../../../../../components/Field/Field.vue.cjs");
|
|
6
6
|
const Button = require("../../../../../components/Button/Button.vue.cjs");
|
|
7
7
|
const vueRouter = require("vue-router");
|
|
8
8
|
const auth = require("../../store/auth.cjs");
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ref, onMounted, createElementBlock, openBlock, createElementVNode, createVNode, withCtx } from "vue";
|
|
2
2
|
/* empty css */
|
|
3
|
-
import Field from "../../../../../components/Field/Field.
|
|
3
|
+
import Field from "../../../../../components/Field/Field.vue.js";
|
|
4
4
|
import _sfc_main$1 from "../../../../../components/Button/Button.vue.js";
|
|
5
5
|
import { useRoute, useRouter } from "vue-router";
|
|
6
6
|
import { state, actions } from "../../store/auth.js";
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
3
|
const vue = require("vue");
|
|
4
|
-
;/* empty css
|
|
4
|
+
;/* empty css */
|
|
5
5
|
;/* empty css */
|
|
6
6
|
;/* empty css */
|
|
7
|
-
const Dropdown = require("../../../../../components/Dropdown/Dropdown.
|
|
7
|
+
const Dropdown = require("../../../../../components/Dropdown/Dropdown.vue2.cjs");
|
|
8
8
|
const Menu = require("../../../../../components/Menu/Menu.vue.cjs");
|
|
9
9
|
const MenuItem = require("../../../../../components/Menu/MenuItem.vue.cjs");
|
|
10
10
|
const ButtonToggleMembership = require("../../../../organizations/components/elements/ButtonToggleMembership.vue.cjs");
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { ref, inject, onMounted, resolveComponent, createElementBlock, createCommentVNode, openBlock, createElementVNode, createVNode, createBlock, unref, withCtx, toDisplayString, Fragment, renderList, normalizeClass, resolveDynamicComponent } from "vue";
|
|
2
|
-
/* empty css
|
|
2
|
+
/* empty css */
|
|
3
3
|
/* empty css */
|
|
4
4
|
/* empty css */
|
|
5
|
-
import _sfc_main$1 from "../../../../../components/Dropdown/Dropdown.
|
|
5
|
+
import _sfc_main$1 from "../../../../../components/Dropdown/Dropdown.vue2.js";
|
|
6
6
|
import _sfc_main$6 from "../../../../../components/Menu/Menu.vue.js";
|
|
7
7
|
import _sfc_main$b from "../../../../../components/Menu/MenuItem.vue.js";
|
|
8
8
|
import _sfc_main$3 from "../../../../organizations/components/elements/ButtonToggleMembership.vue.js";
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toString
|
|
|
3
3
|
const vue = require("vue");
|
|
4
4
|
const vueRouter = require("vue-router");
|
|
5
5
|
const Tab = require("../../../../../components/Tab/Tab.vue2.cjs");
|
|
6
|
-
const Feed = require("../../../../../components/Feed/Feed.
|
|
6
|
+
const Feed = require("../../../../../components/Feed/Feed.vue.cjs");
|
|
7
7
|
const CardBlogpost = require("../../../../community/components/blocks/CardBlogpost.vue.cjs");
|
|
8
8
|
const auth = require("../../store/auth.cjs");
|
|
9
9
|
const blogposts = require("../../../../community/store/blogposts.cjs");
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ref, watch, createElementBlock, openBlock, createElementVNode, createBlock, createCommentVNode, createVNode, unref, withCtx, Fragment, renderList } from "vue";
|
|
2
2
|
import { useRoute, useRouter } from "vue-router";
|
|
3
3
|
import _sfc_main$1 from "../../../../../components/Tab/Tab.vue2.js";
|
|
4
|
-
import _sfc_main$2 from "../../../../../components/Feed/Feed.
|
|
4
|
+
import _sfc_main$2 from "../../../../../components/Feed/Feed.vue.js";
|
|
5
5
|
import _sfc_main$3 from "../../../../community/components/blocks/CardBlogpost.vue.js";
|
|
6
6
|
import { state } from "../../store/auth.js";
|
|
7
7
|
import { read } from "../../../../community/store/blogposts.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
3
|
const vue = require("vue");
|
|
4
|
-
const Field = require("../../../../../components/Field/Field.
|
|
4
|
+
const Field = require("../../../../../components/Field/Field.vue.cjs");
|
|
5
5
|
const Button = require("../../../../../components/Button/Button.vue.cjs");
|
|
6
6
|
const UploadImage = require("../../../../../components/UploadImage/UploadImage.vue.cjs");
|
|
7
7
|
const vueRouter = require("vue-router");
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createElementBlock, openBlock, createElementVNode, createVNode, toDisplayString, withCtx, createTextVNode } from "vue";
|
|
2
|
-
import Field from "../../../../../components/Field/Field.
|
|
2
|
+
import Field from "../../../../../components/Field/Field.vue.js";
|
|
3
3
|
import _sfc_main$2 from "../../../../../components/Button/Button.vue.js";
|
|
4
4
|
import _sfc_main$1 from "../../../../../components/UploadImage/UploadImage.vue.js";
|
|
5
5
|
import { useRouter } from "vue-router";
|
|
@@ -2,13 +2,12 @@
|
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
3
|
const vue = require("vue");
|
|
4
4
|
const Tab = require("../../../../../components/Tab/Tab.vue2.cjs");
|
|
5
|
-
const Field = require("../../../../../components/Field/Field.
|
|
5
|
+
const Field = require("../../../../../components/Field/Field.vue.cjs");
|
|
6
6
|
const FieldPhone = require("../../../../../components/FieldPhone/FieldPhone.vue.cjs");
|
|
7
7
|
const Button = require("../../../../../components/Button/Button.vue.cjs");
|
|
8
8
|
const vueRouter = require("vue-router");
|
|
9
9
|
const vueI18n = require("vue-i18n");
|
|
10
|
-
const
|
|
11
|
-
const globals = require("../../../../globals/views/store/globals.cjs");
|
|
10
|
+
const store = require("../../../../globals/views/classes/store.cjs");
|
|
12
11
|
const inputs_validation = require("../../validations/inputs.validation.cjs");
|
|
13
12
|
;/* empty css */
|
|
14
13
|
const _hoisted_1 = { class: "t-left pd-medium" };
|
|
@@ -32,6 +31,10 @@ const _hoisted_9 = { class: "mn-b-small t-transp" };
|
|
|
32
31
|
const _sfc_main = {
|
|
33
32
|
__name: "ResetPassword",
|
|
34
33
|
setup(__props) {
|
|
34
|
+
const store$1 = store.useStore();
|
|
35
|
+
const auth = store$1.auth || { state: {}, actions: {} };
|
|
36
|
+
store$1.twofa || {};
|
|
37
|
+
const globals = store$1.globals || { state: {} };
|
|
35
38
|
const { t } = vueI18n.useI18n({
|
|
36
39
|
useScope: "global"
|
|
37
40
|
});
|
|
@@ -44,7 +47,8 @@ const _sfc_main = {
|
|
|
44
47
|
{ name: t("auth.resetPassword.phone"), value: "phone" },
|
|
45
48
|
{ name: t("auth.resetPassword.email"), value: "email" }
|
|
46
49
|
];
|
|
47
|
-
|
|
50
|
+
const excludeMethods = globals.state?.options?.auth?.authMethodsExclude || [];
|
|
51
|
+
return tabs.filter((tab) => !excludeMethods.includes(tab.value));
|
|
48
52
|
});
|
|
49
53
|
const tabAuth = vue.ref(availableTabs.value.length ? availableTabs.value[0].value : "");
|
|
50
54
|
async function onSubmit() {
|
|
@@ -92,7 +96,7 @@ const _sfc_main = {
|
|
|
92
96
|
tabAuth.value === "phone" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_6, [
|
|
93
97
|
vue.createElementVNode("p", _hoisted_7, vue.toDisplayString(vue.unref(t)("auth.resetPassword.smsInfo")), 1),
|
|
94
98
|
vue.createVNode(FieldPhone.default, {
|
|
95
|
-
onChange: _cache[1] || (_cache[1] = (event) => auth.state.user.phone = event),
|
|
99
|
+
onChange: _cache[1] || (_cache[1] = (event) => vue.unref(auth).state.user.phone = event),
|
|
96
100
|
dropdownOptions: {
|
|
97
101
|
showDialCodeInSelection: true,
|
|
98
102
|
showFlags: true,
|
|
@@ -112,8 +116,8 @@ const _sfc_main = {
|
|
|
112
116
|
tabAuth.value === "email" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_8, [
|
|
113
117
|
vue.createElementVNode("p", _hoisted_9, vue.toDisplayString(vue.unref(t)("auth.resetPassword.emailInfo")), 1),
|
|
114
118
|
vue.createVNode(Field.default, {
|
|
115
|
-
field: auth.state.user.email,
|
|
116
|
-
"onUpdate:field": _cache[2] || (_cache[2] = ($event) => auth.state.user.email = $event),
|
|
119
|
+
field: vue.unref(auth).state.user.email,
|
|
120
|
+
"onUpdate:field": _cache[2] || (_cache[2] = ($event) => vue.unref(auth).state.user.email = $event),
|
|
117
121
|
placeholder: vue.unref(t)("auth.resetPassword.emailPlaceholder"),
|
|
118
122
|
validation: emailValidation.value,
|
|
119
123
|
class: "bg-light h-4r pd-medium radius-small"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResetPassword.vue.cjs","sources":["../../../../../../../../src/modules/auth/views/components/pages/ResetPassword.vue"],"sourcesContent":["<template>\n\t<section class=\"t-left pd-medium\">\n\t\t<!-- <img loading=\"lazy\" src=\"@/assets/icons/password.png\" class=\"i-extra mn-b-small\"> -->\n\t\t<!-- Header -->\n\t\t<h3 class=\"mn-b-small\">{{ t('auth.resetPassword.forgotPasswordTitle') }}</h3>\n\t\t<p class=\"mn-b-small t-transp\">{{ t('auth.resetPassword.instructions') }}</p>\n\t\t\n\t\t<!-- Select -->\n\t\t<div \n\t\t\tv-if=\"availableTabs.length > 1\" \n\t\t\tclass=\"mn-b-small p-small uppercase t-semi bg-light radius-small o-hidden\"\n\t\t>\n\t\t\t<Tab \n\t\t\t\tv-model:selected=\"tabAuth\"\n\t\t\t\t:tabs=\"availableTabs\"\n\t\t\t\tclassTab=\"pd-small pd-r-medium pd-l-medium w-100 pd-small radius-small\"\n\t\t\t/>\n\t\t</div>\n\n\t\t<!-- Form -->\n\t\t<div class=\"pos-relative\">\n\t\t<!-- Phone -->\n\t\t\t<transition name=\"slide-fade\">\n\t\t\t\t<div v-if=\"tabAuth === 'phone'\" class=\"mn-b-semi radius-small\">\n\t\t\t\t\t<p class=\"mn-b-small t-transp\">{{ t('auth.resetPassword.smsInfo') }}</p>\n\t\t\t\t\t<FieldPhone\n\t\t\t\t\t\t@change=\"(event) => auth.state.user.phone = event\" \t\n\t\t\t\t\t\t:dropdownOptions=\"{\n\t\t\t\t\t\t\tshowDialCodeInSelection: true,\n\t\t\t\t\t\t\tshowFlags: true,\n\t\t\t\t\t\t\tshowDialCodeInList: true\n\t\t\t\t\t\t}\"\n\t\t\t\t\t\t:validation=\"phoneValidation\" \n\t\t\t\t\t\tmode=\"national\"\n\t\t\t\t\t\t:inputOptions=\"{placeholder: t('auth.resetPassword.phonePlaceholder')}\"\n\t\t\t\t\t\tclass=\"bg-light h-4r pd-small radius-small mn-b-thin\" \n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t\t<!-- Email -->\n\t\t\t<transition name=\"slide-fade\">\n\t\t\t\t<div v-if=\"tabAuth === 'email'\" class=\"mn-b-semi radius-small o-hidden\">\n\t\t\t\t\t<p class=\"mn-b-small t-transp\">{{ t('auth.resetPassword.emailInfo') }}</p>\n\t\t\t\t\t<Field \n\t\t\t\t\t\tv-model:field=\"auth.state.user.email\" \t\t\n\t\t\t\t\t\t:placeholder=\"t('auth.resetPassword.emailPlaceholder')\" \t\n\t\t\t\t\t\t:validation=\"emailValidation\" \n\t\t\t\t\t\tclass=\"bg-light h-4r pd-medium radius-small\" \n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t</div>\n\t\t<!-- Button -->\n\t\t<Button :submit=\"onSubmit\" :callback=\"redirectTo\" class=\"w-100 bg-main\">{{ t('auth.resetPassword.sendCode') }}</Button>\n\t</section> \n</template>\n\n<script setup>\n// Import components\nimport Tab from '@martyrs/src/components/Tab/Tab.vue'\nimport Field from '@martyrs/src/components/Field/Field.vue'\nimport FieldPhone from '@martyrs/src/components/FieldPhone/FieldPhone.vue'\nimport Button from '@martyrs/src/components/Button/Button.vue'\n// Import libs\nimport { computed, onMounted, ref } from 'vue'\nimport { useRoute, useRouter } from 'vue-router'\nimport { useI18n } from 'vue-i18n'\n// Import
|
|
1
|
+
{"version":3,"file":"ResetPassword.vue.cjs","sources":["../../../../../../../../src/modules/auth/views/components/pages/ResetPassword.vue"],"sourcesContent":["<template>\n\t<section class=\"t-left pd-medium\">\n\t\t<!-- <img loading=\"lazy\" src=\"@/assets/icons/password.png\" class=\"i-extra mn-b-small\"> -->\n\t\t<!-- Header -->\n\t\t<h3 class=\"mn-b-small\">{{ t('auth.resetPassword.forgotPasswordTitle') }}</h3>\n\t\t<p class=\"mn-b-small t-transp\">{{ t('auth.resetPassword.instructions') }}</p>\n\t\t\n\t\t<!-- Select -->\n\t\t<div \n\t\t\tv-if=\"availableTabs.length > 1\" \n\t\t\tclass=\"mn-b-small p-small uppercase t-semi bg-light radius-small o-hidden\"\n\t\t>\n\t\t\t<Tab \n\t\t\t\tv-model:selected=\"tabAuth\"\n\t\t\t\t:tabs=\"availableTabs\"\n\t\t\t\tclassTab=\"pd-small pd-r-medium pd-l-medium w-100 pd-small radius-small\"\n\t\t\t/>\n\t\t</div>\n\n\t\t<!-- Form -->\n\t\t<div class=\"pos-relative\">\n\t\t<!-- Phone -->\n\t\t\t<transition name=\"slide-fade\">\n\t\t\t\t<div v-if=\"tabAuth === 'phone'\" class=\"mn-b-semi radius-small\">\n\t\t\t\t\t<p class=\"mn-b-small t-transp\">{{ t('auth.resetPassword.smsInfo') }}</p>\n\t\t\t\t\t<FieldPhone\n\t\t\t\t\t\t@change=\"(event) => auth.state.user.phone = event\" \t\n\t\t\t\t\t\t:dropdownOptions=\"{\n\t\t\t\t\t\t\tshowDialCodeInSelection: true,\n\t\t\t\t\t\t\tshowFlags: true,\n\t\t\t\t\t\t\tshowDialCodeInList: true\n\t\t\t\t\t\t}\"\n\t\t\t\t\t\t:validation=\"phoneValidation\" \n\t\t\t\t\t\tmode=\"national\"\n\t\t\t\t\t\t:inputOptions=\"{placeholder: t('auth.resetPassword.phonePlaceholder')}\"\n\t\t\t\t\t\tclass=\"bg-light h-4r pd-small radius-small mn-b-thin\" \n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t\t<!-- Email -->\n\t\t\t<transition name=\"slide-fade\">\n\t\t\t\t<div v-if=\"tabAuth === 'email'\" class=\"mn-b-semi radius-small o-hidden\">\n\t\t\t\t\t<p class=\"mn-b-small t-transp\">{{ t('auth.resetPassword.emailInfo') }}</p>\n\t\t\t\t\t<Field \n\t\t\t\t\t\tv-model:field=\"auth.state.user.email\" \t\t\n\t\t\t\t\t\t:placeholder=\"t('auth.resetPassword.emailPlaceholder')\" \t\n\t\t\t\t\t\t:validation=\"emailValidation\" \n\t\t\t\t\t\tclass=\"bg-light h-4r pd-medium radius-small\" \n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t</div>\n\t\t<!-- Button -->\n\t\t<Button :submit=\"onSubmit\" :callback=\"redirectTo\" class=\"w-100 bg-main\">{{ t('auth.resetPassword.sendCode') }}</Button>\n\t</section> \n</template>\n\n<script setup>\n// Import components\nimport Tab from '@martyrs/src/components/Tab/Tab.vue'\nimport Field from '@martyrs/src/components/Field/Field.vue'\nimport FieldPhone from '@martyrs/src/components/FieldPhone/FieldPhone.vue'\nimport Button from '@martyrs/src/components/Button/Button.vue'\n// Import libs\nimport { computed, onMounted, ref } from 'vue'\nimport { useRoute, useRouter } from 'vue-router'\nimport { useI18n } from 'vue-i18n'\n// Import store\nimport { useStore } from '@martyrs/src/modules/globals/views/classes/store.js'\n// Import validation\nimport * as inputsValidation from '@martyrs/src/modules/auth/views/validations/inputs.validation'\n\n// Get store\nconst store = useStore()\nconst auth = store.auth || { state: {}, actions: {} }\nconst twofa = store.twofa || { state: {}, actions: {}, sendCode: () => {} }\nconst globals = store.globals || { state: {}, actions: {} }\n// Localization\nconst { t } = useI18n({\n\tuseScope: 'global', \n})\n// Validation\nconst phoneValidation = ref(null)\nconst emailValidation = ref(null)\n// Accessing router\nconst route = useRoute()\nconst router = useRouter()\n// Accessing state\nconst availableTabs = computed(() => {\n const tabs = [\n { name: t('auth.resetPassword.phone'), value: 'phone' },\n { name: t('auth.resetPassword.email'), value: 'email' }\n ];\n const excludeMethods = globals.state?.options?.auth?.authMethodsExclude || [];\n return tabs.filter(tab => !excludeMethods.includes(tab.value));\n});\n\nconst tabAuth = ref(availableTabs.value.length ? availableTabs.value[0].value : '');\n// Methods\nasync function onSubmit() {\n\ttry {\n\t if (tabAuth.value === 'phone') await inputsValidation.validateInputs(\n\t\t\tphoneValidation, \n\t\t\tinputsValidation.validatePhone, \n\t\t\tauth.state.user.phone, \n\t\t\t'Некорректный телефон'\n\t\t)\n\t\tif (tabAuth.value === 'email') await inputsValidation.validateInputs(\n\t\t\temailValidation, \n\t\t\tinputsValidation.validateEmail, \n\t\t\tauth.state.user.email, \n\t\t\t'Некорректный email'\n\t\t)\n\t} catch (error) {\n\t\tthrow new Error\n\t}\n\ttry {\n \tawait auth.actions.resetPassword(auth.state.user, tabAuth.value, 'reset-password')\n } catch (error) {\n \tconsole.log(error)\n\t\tthrow new Error\n\t}\n}\n\nfunction redirectTo () {\n\trouter.push({ name: 'Enter Code', query: {type: tabAuth.value, method: 'reset-password'} })\n}\n</script>\n\n<style lang=\"scss\">\n\t.slide-fade-enter-active {\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 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n\n\t}\n\n\t.slide-fade-enter-from,\n\t.slide-fade-leave-to {\n\t\tposition: absolute;\n\t transform: translateX(20px);\n\t opacity: 0;\n\t left: 0;\n\t top: 0;\n\t}\n\n\t.slide-fade-leave-to {\n\n\t}\n</style>\n"],"names":["store","useStore","useI18n","ref","useRoute","useRouter","computed","inputsValidation.validateInputs","inputsValidation.validatePhone","inputsValidation.validateEmail"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyEA,UAAMA,UAAQC,MAAAA,SAAQ;AACtB,UAAM,OAAOD,QAAM,QAAQ,EAAE,OAAO,CAAA,GAAI,SAAS,CAAA,EAAE;AACrCA,YAAM,SAAS,CAA6C;AAC1E,UAAM,UAAUA,QAAM,WAAW,EAAE,OAAO,CAAA,EAAgB;AAE1D,UAAM,EAAE,EAAC,IAAKE,gBAAQ;AAAA,MACrB,UAAU;AAAA,IACX,CAAC;AAED,UAAM,kBAAkBC,IAAAA,IAAI,IAAI;AAChC,UAAM,kBAAkBA,IAAAA,IAAI,IAAI;AAElBC,cAAAA,SAAQ;AACtB,UAAM,SAASC,UAAAA,UAAS;AAExB,UAAM,gBAAgBC,IAAAA,SAAS,MAAM;AACjC,YAAM,OAAO;AAAA,QACT,EAAE,MAAM,EAAE,0BAA0B,GAAG,OAAO,QAAO;AAAA,QACrD,EAAE,MAAM,EAAE,0BAA0B,GAAG,OAAO,QAAO;AAAA,MAC7D;AACI,YAAM,iBAAiB,QAAQ,OAAO,SAAS,MAAM,sBAAsB,CAAA;AAC3E,aAAO,KAAK,OAAO,SAAO,CAAC,eAAe,SAAS,IAAI,KAAK,CAAC;AAAA,IACjE,CAAC;AAED,UAAM,UAAUH,IAAAA,IAAI,cAAc,MAAM,SAAS,cAAc,MAAM,CAAC,EAAE,QAAQ,EAAE;AAElF,mBAAe,WAAW;AACzB,UAAI;AACF,YAAI,QAAQ,UAAU,QAAS,OAAMI,kBAAAA;AAAAA,UACrC;AAAA,UACAC,kBAAAA;AAAAA,UACA,KAAK,MAAM,KAAK;AAAA,UAChB;AAAA,QACH;AACE,YAAI,QAAQ,UAAU,QAAS,OAAMD,kBAAAA;AAAAA,UACpC;AAAA,UACAE,kBAAAA;AAAAA,UACA,KAAK,MAAM,KAAK;AAAA,UAChB;AAAA,QACH;AAAA,MACC,SAAS,OAAO;AACf,cAAM,IAAI;AAAA,MACX;AACA,UAAI;AACF,cAAM,KAAK,QAAQ,cAAc,KAAK,MAAM,MAAM,QAAQ,OAAO,gBAAgB;AAAA,MAClF,SAAS,OAAO;AACf,gBAAQ,IAAI,KAAK;AAClB,cAAM,IAAI;AAAA,MACX;AAAA,IACD;AAEA,aAAS,aAAc;AACtB,aAAO,KAAK,EAAE,MAAM,cAAc,OAAO,EAAC,MAAM,QAAQ,OAAO,QAAQ,iBAAgB,EAAC,CAAE;AAAA,IAC3F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { ref, computed, createElementBlock, openBlock, createElementVNode, createCommentVNode, createVNode, toDisplayString, unref, Transition, withCtx, createTextVNode } from "vue";
|
|
2
2
|
import _sfc_main$1 from "../../../../../components/Tab/Tab.vue2.js";
|
|
3
|
-
import Field from "../../../../../components/Field/Field.
|
|
3
|
+
import Field from "../../../../../components/Field/Field.vue.js";
|
|
4
4
|
import _sfc_main$2 from "../../../../../components/FieldPhone/FieldPhone.vue.js";
|
|
5
5
|
import _sfc_main$3 from "../../../../../components/Button/Button.vue.js";
|
|
6
6
|
import { useRoute, useRouter } from "vue-router";
|
|
7
7
|
import { useI18n } from "vue-i18n";
|
|
8
|
-
import {
|
|
9
|
-
import { state } from "../../../../globals/views/store/globals.js";
|
|
8
|
+
import { useStore } from "../../../../globals/views/classes/store.js";
|
|
10
9
|
import { validateInputs, validatePhone, validateEmail } from "../../validations/inputs.validation.js";
|
|
11
10
|
/* empty css */
|
|
12
11
|
const _hoisted_1 = { class: "t-left pd-medium" };
|
|
@@ -30,6 +29,10 @@ const _hoisted_9 = { class: "mn-b-small t-transp" };
|
|
|
30
29
|
const _sfc_main = {
|
|
31
30
|
__name: "ResetPassword",
|
|
32
31
|
setup(__props) {
|
|
32
|
+
const store = useStore();
|
|
33
|
+
const auth = store.auth || { state: {}, actions: {} };
|
|
34
|
+
store.twofa || {};
|
|
35
|
+
const globals = store.globals || { state: {} };
|
|
33
36
|
const { t } = useI18n({
|
|
34
37
|
useScope: "global"
|
|
35
38
|
});
|
|
@@ -42,7 +45,8 @@ const _sfc_main = {
|
|
|
42
45
|
{ name: t("auth.resetPassword.phone"), value: "phone" },
|
|
43
46
|
{ name: t("auth.resetPassword.email"), value: "email" }
|
|
44
47
|
];
|
|
45
|
-
|
|
48
|
+
const excludeMethods = globals.state?.options?.auth?.authMethodsExclude || [];
|
|
49
|
+
return tabs.filter((tab) => !excludeMethods.includes(tab.value));
|
|
46
50
|
});
|
|
47
51
|
const tabAuth = ref(availableTabs.value.length ? availableTabs.value[0].value : "");
|
|
48
52
|
async function onSubmit() {
|
|
@@ -50,20 +54,20 @@ const _sfc_main = {
|
|
|
50
54
|
if (tabAuth.value === "phone") await validateInputs(
|
|
51
55
|
phoneValidation,
|
|
52
56
|
validatePhone,
|
|
53
|
-
state
|
|
57
|
+
auth.state.user.phone,
|
|
54
58
|
"Некорректный телефон"
|
|
55
59
|
);
|
|
56
60
|
if (tabAuth.value === "email") await validateInputs(
|
|
57
61
|
emailValidation,
|
|
58
62
|
validateEmail,
|
|
59
|
-
state
|
|
63
|
+
auth.state.user.email,
|
|
60
64
|
"Некорректный email"
|
|
61
65
|
);
|
|
62
66
|
} catch (error) {
|
|
63
67
|
throw new Error();
|
|
64
68
|
}
|
|
65
69
|
try {
|
|
66
|
-
await actions.resetPassword(state
|
|
70
|
+
await auth.actions.resetPassword(auth.state.user, tabAuth.value, "reset-password");
|
|
67
71
|
} catch (error) {
|
|
68
72
|
console.log(error);
|
|
69
73
|
throw new Error();
|
|
@@ -90,7 +94,7 @@ const _sfc_main = {
|
|
|
90
94
|
tabAuth.value === "phone" ? (openBlock(), createElementBlock("div", _hoisted_6, [
|
|
91
95
|
createElementVNode("p", _hoisted_7, toDisplayString(unref(t)("auth.resetPassword.smsInfo")), 1),
|
|
92
96
|
createVNode(_sfc_main$2, {
|
|
93
|
-
onChange: _cache[1] || (_cache[1] = (event) => state
|
|
97
|
+
onChange: _cache[1] || (_cache[1] = (event) => unref(auth).state.user.phone = event),
|
|
94
98
|
dropdownOptions: {
|
|
95
99
|
showDialCodeInSelection: true,
|
|
96
100
|
showFlags: true,
|
|
@@ -110,8 +114,8 @@ const _sfc_main = {
|
|
|
110
114
|
tabAuth.value === "email" ? (openBlock(), createElementBlock("div", _hoisted_8, [
|
|
111
115
|
createElementVNode("p", _hoisted_9, toDisplayString(unref(t)("auth.resetPassword.emailInfo")), 1),
|
|
112
116
|
createVNode(Field, {
|
|
113
|
-
field: state
|
|
114
|
-
"onUpdate:field": _cache[2] || (_cache[2] = ($event) => state
|
|
117
|
+
field: unref(auth).state.user.email,
|
|
118
|
+
"onUpdate:field": _cache[2] || (_cache[2] = ($event) => unref(auth).state.user.email = $event),
|
|
115
119
|
placeholder: unref(t)("auth.resetPassword.emailPlaceholder"),
|
|
116
120
|
validation: emailValidation.value,
|
|
117
121
|
class: "bg-light h-4r pd-medium radius-small"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResetPassword.vue.js","sources":["../../../../../../../../src/modules/auth/views/components/pages/ResetPassword.vue"],"sourcesContent":["<template>\n\t<section class=\"t-left pd-medium\">\n\t\t<!-- <img loading=\"lazy\" src=\"@/assets/icons/password.png\" class=\"i-extra mn-b-small\"> -->\n\t\t<!-- Header -->\n\t\t<h3 class=\"mn-b-small\">{{ t('auth.resetPassword.forgotPasswordTitle') }}</h3>\n\t\t<p class=\"mn-b-small t-transp\">{{ t('auth.resetPassword.instructions') }}</p>\n\t\t\n\t\t<!-- Select -->\n\t\t<div \n\t\t\tv-if=\"availableTabs.length > 1\" \n\t\t\tclass=\"mn-b-small p-small uppercase t-semi bg-light radius-small o-hidden\"\n\t\t>\n\t\t\t<Tab \n\t\t\t\tv-model:selected=\"tabAuth\"\n\t\t\t\t:tabs=\"availableTabs\"\n\t\t\t\tclassTab=\"pd-small pd-r-medium pd-l-medium w-100 pd-small radius-small\"\n\t\t\t/>\n\t\t</div>\n\n\t\t<!-- Form -->\n\t\t<div class=\"pos-relative\">\n\t\t<!-- Phone -->\n\t\t\t<transition name=\"slide-fade\">\n\t\t\t\t<div v-if=\"tabAuth === 'phone'\" class=\"mn-b-semi radius-small\">\n\t\t\t\t\t<p class=\"mn-b-small t-transp\">{{ t('auth.resetPassword.smsInfo') }}</p>\n\t\t\t\t\t<FieldPhone\n\t\t\t\t\t\t@change=\"(event) => auth.state.user.phone = event\" \t\n\t\t\t\t\t\t:dropdownOptions=\"{\n\t\t\t\t\t\t\tshowDialCodeInSelection: true,\n\t\t\t\t\t\t\tshowFlags: true,\n\t\t\t\t\t\t\tshowDialCodeInList: true\n\t\t\t\t\t\t}\"\n\t\t\t\t\t\t:validation=\"phoneValidation\" \n\t\t\t\t\t\tmode=\"national\"\n\t\t\t\t\t\t:inputOptions=\"{placeholder: t('auth.resetPassword.phonePlaceholder')}\"\n\t\t\t\t\t\tclass=\"bg-light h-4r pd-small radius-small mn-b-thin\" \n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t\t<!-- Email -->\n\t\t\t<transition name=\"slide-fade\">\n\t\t\t\t<div v-if=\"tabAuth === 'email'\" class=\"mn-b-semi radius-small o-hidden\">\n\t\t\t\t\t<p class=\"mn-b-small t-transp\">{{ t('auth.resetPassword.emailInfo') }}</p>\n\t\t\t\t\t<Field \n\t\t\t\t\t\tv-model:field=\"auth.state.user.email\" \t\t\n\t\t\t\t\t\t:placeholder=\"t('auth.resetPassword.emailPlaceholder')\" \t\n\t\t\t\t\t\t:validation=\"emailValidation\" \n\t\t\t\t\t\tclass=\"bg-light h-4r pd-medium radius-small\" \n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t</div>\n\t\t<!-- Button -->\n\t\t<Button :submit=\"onSubmit\" :callback=\"redirectTo\" class=\"w-100 bg-main\">{{ t('auth.resetPassword.sendCode') }}</Button>\n\t</section> \n</template>\n\n<script setup>\n// Import components\nimport Tab from '@martyrs/src/components/Tab/Tab.vue'\nimport Field from '@martyrs/src/components/Field/Field.vue'\nimport FieldPhone from '@martyrs/src/components/FieldPhone/FieldPhone.vue'\nimport Button from '@martyrs/src/components/Button/Button.vue'\n// Import libs\nimport { computed, onMounted, ref } from 'vue'\nimport { useRoute, useRouter } from 'vue-router'\nimport { useI18n } from 'vue-i18n'\n// Import
|
|
1
|
+
{"version":3,"file":"ResetPassword.vue.js","sources":["../../../../../../../../src/modules/auth/views/components/pages/ResetPassword.vue"],"sourcesContent":["<template>\n\t<section class=\"t-left pd-medium\">\n\t\t<!-- <img loading=\"lazy\" src=\"@/assets/icons/password.png\" class=\"i-extra mn-b-small\"> -->\n\t\t<!-- Header -->\n\t\t<h3 class=\"mn-b-small\">{{ t('auth.resetPassword.forgotPasswordTitle') }}</h3>\n\t\t<p class=\"mn-b-small t-transp\">{{ t('auth.resetPassword.instructions') }}</p>\n\t\t\n\t\t<!-- Select -->\n\t\t<div \n\t\t\tv-if=\"availableTabs.length > 1\" \n\t\t\tclass=\"mn-b-small p-small uppercase t-semi bg-light radius-small o-hidden\"\n\t\t>\n\t\t\t<Tab \n\t\t\t\tv-model:selected=\"tabAuth\"\n\t\t\t\t:tabs=\"availableTabs\"\n\t\t\t\tclassTab=\"pd-small pd-r-medium pd-l-medium w-100 pd-small radius-small\"\n\t\t\t/>\n\t\t</div>\n\n\t\t<!-- Form -->\n\t\t<div class=\"pos-relative\">\n\t\t<!-- Phone -->\n\t\t\t<transition name=\"slide-fade\">\n\t\t\t\t<div v-if=\"tabAuth === 'phone'\" class=\"mn-b-semi radius-small\">\n\t\t\t\t\t<p class=\"mn-b-small t-transp\">{{ t('auth.resetPassword.smsInfo') }}</p>\n\t\t\t\t\t<FieldPhone\n\t\t\t\t\t\t@change=\"(event) => auth.state.user.phone = event\" \t\n\t\t\t\t\t\t:dropdownOptions=\"{\n\t\t\t\t\t\t\tshowDialCodeInSelection: true,\n\t\t\t\t\t\t\tshowFlags: true,\n\t\t\t\t\t\t\tshowDialCodeInList: true\n\t\t\t\t\t\t}\"\n\t\t\t\t\t\t:validation=\"phoneValidation\" \n\t\t\t\t\t\tmode=\"national\"\n\t\t\t\t\t\t:inputOptions=\"{placeholder: t('auth.resetPassword.phonePlaceholder')}\"\n\t\t\t\t\t\tclass=\"bg-light h-4r pd-small radius-small mn-b-thin\" \n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t\t<!-- Email -->\n\t\t\t<transition name=\"slide-fade\">\n\t\t\t\t<div v-if=\"tabAuth === 'email'\" class=\"mn-b-semi radius-small o-hidden\">\n\t\t\t\t\t<p class=\"mn-b-small t-transp\">{{ t('auth.resetPassword.emailInfo') }}</p>\n\t\t\t\t\t<Field \n\t\t\t\t\t\tv-model:field=\"auth.state.user.email\" \t\t\n\t\t\t\t\t\t:placeholder=\"t('auth.resetPassword.emailPlaceholder')\" \t\n\t\t\t\t\t\t:validation=\"emailValidation\" \n\t\t\t\t\t\tclass=\"bg-light h-4r pd-medium radius-small\" \n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t</div>\n\t\t<!-- Button -->\n\t\t<Button :submit=\"onSubmit\" :callback=\"redirectTo\" class=\"w-100 bg-main\">{{ t('auth.resetPassword.sendCode') }}</Button>\n\t</section> \n</template>\n\n<script setup>\n// Import components\nimport Tab from '@martyrs/src/components/Tab/Tab.vue'\nimport Field from '@martyrs/src/components/Field/Field.vue'\nimport FieldPhone from '@martyrs/src/components/FieldPhone/FieldPhone.vue'\nimport Button from '@martyrs/src/components/Button/Button.vue'\n// Import libs\nimport { computed, onMounted, ref } from 'vue'\nimport { useRoute, useRouter } from 'vue-router'\nimport { useI18n } from 'vue-i18n'\n// Import store\nimport { useStore } from '@martyrs/src/modules/globals/views/classes/store.js'\n// Import validation\nimport * as inputsValidation from '@martyrs/src/modules/auth/views/validations/inputs.validation'\n\n// Get store\nconst store = useStore()\nconst auth = store.auth || { state: {}, actions: {} }\nconst twofa = store.twofa || { state: {}, actions: {}, sendCode: () => {} }\nconst globals = store.globals || { state: {}, actions: {} }\n// Localization\nconst { t } = useI18n({\n\tuseScope: 'global', \n})\n// Validation\nconst phoneValidation = ref(null)\nconst emailValidation = ref(null)\n// Accessing router\nconst route = useRoute()\nconst router = useRouter()\n// Accessing state\nconst availableTabs = computed(() => {\n const tabs = [\n { name: t('auth.resetPassword.phone'), value: 'phone' },\n { name: t('auth.resetPassword.email'), value: 'email' }\n ];\n const excludeMethods = globals.state?.options?.auth?.authMethodsExclude || [];\n return tabs.filter(tab => !excludeMethods.includes(tab.value));\n});\n\nconst tabAuth = ref(availableTabs.value.length ? availableTabs.value[0].value : '');\n// Methods\nasync function onSubmit() {\n\ttry {\n\t if (tabAuth.value === 'phone') await inputsValidation.validateInputs(\n\t\t\tphoneValidation, \n\t\t\tinputsValidation.validatePhone, \n\t\t\tauth.state.user.phone, \n\t\t\t'Некорректный телефон'\n\t\t)\n\t\tif (tabAuth.value === 'email') await inputsValidation.validateInputs(\n\t\t\temailValidation, \n\t\t\tinputsValidation.validateEmail, \n\t\t\tauth.state.user.email, \n\t\t\t'Некорректный email'\n\t\t)\n\t} catch (error) {\n\t\tthrow new Error\n\t}\n\ttry {\n \tawait auth.actions.resetPassword(auth.state.user, tabAuth.value, 'reset-password')\n } catch (error) {\n \tconsole.log(error)\n\t\tthrow new Error\n\t}\n}\n\nfunction redirectTo () {\n\trouter.push({ name: 'Enter Code', query: {type: tabAuth.value, method: 'reset-password'} })\n}\n</script>\n\n<style lang=\"scss\">\n\t.slide-fade-enter-active {\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 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n\n\t}\n\n\t.slide-fade-enter-from,\n\t.slide-fade-leave-to {\n\t\tposition: absolute;\n\t transform: translateX(20px);\n\t opacity: 0;\n\t left: 0;\n\t top: 0;\n\t}\n\n\t.slide-fade-leave-to {\n\n\t}\n</style>\n"],"names":["inputsValidation.validateInputs","inputsValidation.validatePhone","inputsValidation.validateEmail"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyEA,UAAM,QAAQ,SAAQ;AACtB,UAAM,OAAO,MAAM,QAAQ,EAAE,OAAO,CAAA,GAAI,SAAS,CAAA,EAAE;AACrC,UAAM,SAAS,CAA6C;AAC1E,UAAM,UAAU,MAAM,WAAW,EAAE,OAAO,CAAA,EAAgB;AAE1D,UAAM,EAAE,EAAC,IAAK,QAAQ;AAAA,MACrB,UAAU;AAAA,IACX,CAAC;AAED,UAAM,kBAAkB,IAAI,IAAI;AAChC,UAAM,kBAAkB,IAAI,IAAI;AAElB,aAAQ;AACtB,UAAM,SAAS,UAAS;AAExB,UAAM,gBAAgB,SAAS,MAAM;AACjC,YAAM,OAAO;AAAA,QACT,EAAE,MAAM,EAAE,0BAA0B,GAAG,OAAO,QAAO;AAAA,QACrD,EAAE,MAAM,EAAE,0BAA0B,GAAG,OAAO,QAAO;AAAA,MAC7D;AACI,YAAM,iBAAiB,QAAQ,OAAO,SAAS,MAAM,sBAAsB,CAAA;AAC3E,aAAO,KAAK,OAAO,SAAO,CAAC,eAAe,SAAS,IAAI,KAAK,CAAC;AAAA,IACjE,CAAC;AAED,UAAM,UAAU,IAAI,cAAc,MAAM,SAAS,cAAc,MAAM,CAAC,EAAE,QAAQ,EAAE;AAElF,mBAAe,WAAW;AACzB,UAAI;AACF,YAAI,QAAQ,UAAU,QAAS,OAAMA;AAAAA,UACrC;AAAA,UACAC;AAAAA,UACA,KAAK,MAAM,KAAK;AAAA,UAChB;AAAA,QACH;AACE,YAAI,QAAQ,UAAU,QAAS,OAAMD;AAAAA,UACpC;AAAA,UACAE;AAAAA,UACA,KAAK,MAAM,KAAK;AAAA,UAChB;AAAA,QACH;AAAA,MACC,SAAS,OAAO;AACf,cAAM,IAAI;AAAA,MACX;AACA,UAAI;AACF,cAAM,KAAK,QAAQ,cAAc,KAAK,MAAM,MAAM,QAAQ,OAAO,gBAAgB;AAAA,MAClF,SAAS,OAAO;AACf,gBAAQ,IAAI,KAAK;AAClB,cAAM,IAAI;AAAA,MACX;AAAA,IACD;AAEA,aAAS,aAAc;AACtB,aAAO,KAAK,EAAE,MAAM,cAAc,OAAO,EAAC,MAAM,QAAQ,OAAO,QAAQ,iBAAgB,EAAC,CAAE;AAAA,IAC3F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -2,13 +2,12 @@
|
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
3
|
const vue = require("vue");
|
|
4
4
|
const Tab = require("../../../../../components/Tab/Tab.vue2.cjs");
|
|
5
|
-
const Field = require("../../../../../components/Field/Field.
|
|
5
|
+
const Field = require("../../../../../components/Field/Field.vue.cjs");
|
|
6
6
|
const FieldPhone = require("../../../../../components/FieldPhone/FieldPhone.vue.cjs");
|
|
7
7
|
const Button = require("../../../../../components/Button/Button.vue.cjs");
|
|
8
8
|
const vueRouter = require("vue-router");
|
|
9
9
|
const vueI18n = require("vue-i18n");
|
|
10
|
-
const
|
|
11
|
-
const globals = require("../../../../globals/views/store/globals.cjs");
|
|
10
|
+
const store = require("../../../../globals/views/classes/store.cjs");
|
|
12
11
|
const inputs_validation = require("../../validations/inputs.validation.cjs");
|
|
13
12
|
;/* empty css */
|
|
14
13
|
const _hoisted_1 = { class: "" };
|
|
@@ -26,6 +25,9 @@ const _hoisted_9 = { class: "w-100 mn-b-big" };
|
|
|
26
25
|
const _sfc_main = {
|
|
27
26
|
__name: "SignIn",
|
|
28
27
|
setup(__props) {
|
|
28
|
+
const store$1 = store.useStore();
|
|
29
|
+
const auth = store$1.auth || { state: {}, actions: {} };
|
|
30
|
+
const globals = store$1.globals || { state: {} };
|
|
29
31
|
const phoneValidation = vue.ref(null);
|
|
30
32
|
const passswordValidation = vue.ref(null);
|
|
31
33
|
const emailValidation = vue.ref(null);
|
|
@@ -39,7 +41,8 @@ const _sfc_main = {
|
|
|
39
41
|
{ name: t("auth.signIn.phone"), value: "phone" },
|
|
40
42
|
{ name: t("auth.signIn.email"), value: "email" }
|
|
41
43
|
];
|
|
42
|
-
|
|
44
|
+
const excludeMethods = globals.state?.options?.auth?.authMethodsExclude || [];
|
|
45
|
+
return tabs.filter((tab) => !excludeMethods.includes(tab.value));
|
|
43
46
|
});
|
|
44
47
|
const tabAuth = vue.ref(availableTabs.value.length ? availableTabs.value[0].value : "");
|
|
45
48
|
const loadExternalScript = (src) => {
|
|
@@ -133,7 +136,7 @@ const _sfc_main = {
|
|
|
133
136
|
default: vue.withCtx(() => [
|
|
134
137
|
vue.withDirectives(vue.createElementVNode("div", _hoisted_7, [
|
|
135
138
|
vue.createVNode(FieldPhone.default, {
|
|
136
|
-
onChange: _cache[1] || (_cache[1] = (event) => auth.state.user.phone = event),
|
|
139
|
+
onChange: _cache[1] || (_cache[1] = (event) => vue.unref(auth).state.user.phone = event),
|
|
137
140
|
dropdownOptions: {
|
|
138
141
|
showDialCodeInSelection: true,
|
|
139
142
|
showFlags: true,
|
|
@@ -156,8 +159,8 @@ const _sfc_main = {
|
|
|
156
159
|
default: vue.withCtx(() => [
|
|
157
160
|
vue.withDirectives(vue.createElementVNode("div", _hoisted_8, [
|
|
158
161
|
vue.createVNode(Field.default, {
|
|
159
|
-
field: auth.state.user.email,
|
|
160
|
-
"onUpdate:field": _cache[2] || (_cache[2] = ($event) => auth.state.user.email = $event),
|
|
162
|
+
field: vue.unref(auth).state.user.email,
|
|
163
|
+
"onUpdate:field": _cache[2] || (_cache[2] = ($event) => vue.unref(auth).state.user.email = $event),
|
|
161
164
|
placeholder: vue.unref(t)("auth.signIn.emailPlaceholder"),
|
|
162
165
|
validation: emailValidation.value,
|
|
163
166
|
tabIndex: -1,
|
|
@@ -171,8 +174,8 @@ const _sfc_main = {
|
|
|
171
174
|
})
|
|
172
175
|
]),
|
|
173
176
|
vue.createVNode(Field.default, {
|
|
174
|
-
field: auth.state.user.password,
|
|
175
|
-
"onUpdate:field": _cache[3] || (_cache[3] = ($event) => auth.state.user.password = $event),
|
|
177
|
+
field: vue.unref(auth).state.user.password,
|
|
178
|
+
"onUpdate:field": _cache[3] || (_cache[3] = ($event) => vue.unref(auth).state.user.password = $event),
|
|
176
179
|
type: "password",
|
|
177
180
|
validation: passswordValidation.value,
|
|
178
181
|
placeholder: vue.unref(t)("auth.signIn.passwordPlaceholder"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SignIn.vue.cjs","sources":["../../../../../../../../src/modules/auth/views/components/pages/SignIn.vue"],"sourcesContent":["<template>\n\t<section class=\"\">\n\t\t<!-- Header -->\n\t\t<img loading=\"lazy\" :src=\"'/logo/logo.svg'\" class=\"i-extra radius-small mn-b-small\">\n\n\t\t<h3 class=\"mn-b-medium\">\n\t\t\t{{ t('auth.signIn.title') }}\n\t\t\t<br>\n\t\t\t<span class=\"t-semi\">{{ t('auth.signIn.subtitle') }}</span>\n\t\t</h3>\n\n\t\t<p class=\"mn-b-big\">\n\t\t\t<router-link :to=\"{name: 'Sign Up', query: { returnUrl: route.query?.returnUrl}}\" class=\"underline t-second\">{{ t('auth.signIn.signup') }}</router-link>\n\t\t</p>\n\t\t\n\t\t<!-- Select -->\n\t\t<div \n\t\t\tv-if=\"availableTabs.length > 1\" \n\t\t\tclass=\"mn-b-small p-small uppercase t-semi bg-light radius-small o-hidden\"\n\t\t>\n\t\t\t<Tab \n\t\t\t\tv-model:selected=\"tabAuth\"\n\t\t\t\t:tabs=\"availableTabs\"\n\t\t\t\tclassTab=\"pd-small pd-r-medium pd-l-medium w-100 pd-small radius-small\"\n\t\t\t/>\n\t\t</div>\n\t\t<!-- Form -->\n\t\t<div class=\"pos-relative\">\n\t\t<!-- Phone -->\n\t\t\t<transition name=\"slide-fade\">\n\t\t\t\t<div v-show=\"tabAuth === 'phone'\" class=\"mn-b-thin radius-small\">\n\t\t\t\t\t<FieldPhone\n\t\t\t\t\t\t@change=\"(event) => auth.state.user.phone = event\" \t\n\t\t\t\t\t\t:dropdownOptions=\"{\n\t\t\t\t\t\t\tshowDialCodeInSelection: true,\n\t\t\t\t\t\t\tshowFlags: true,\n\t\t\t\t\t\t\tshowDialCodeInList: true,\n\t\t\t\t\t\t\ttabIndex: -1\n\t\t\t\t\t\t}\"\n\t\t\t\t\t\t:validCharactersOnly=\"true\"\n\t\t\t\t\t\t:validation=\"phoneValidation\" \n\t\t\t\t\t\tmode=\"national\"\n\t\t\t\t\t\t:inputOptions=\"{placeholder: t('auth.signIn.phonePlaceholder'), type: 'tel'}\"\n\t\t\t\t\t\tclass=\"bg-light h-4r pd-small radius-small mn-b-thin\" \n\t\t\t\t\t/>\n\t\t\t\t\t\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t\t<transition name=\"slide-fade\">\n\t\t\t\t<div v-show=\"tabAuth === 'email'\" class=\"mn-b-thin radius-small o-hidden\">\n\t\t\t\t\t<Field \n\t\t\t\t\t\tv-model:field=\"auth.state.user.email\" \t\n\t\t\t\t\t\t:placeholder=\"t('auth.signIn.emailPlaceholder')\" \t\n\t\t\t\t\t\t:validation=\"emailValidation\"\n\t\t\t\t\t\t:tabIndex=\"-1\"\n\t\t\t\t\t\tclass=\"bg-light h-4r pd-medium radius-small\" \n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t</div>\n\n\t\t<!-- Password -->\n\t\t<Field \n\t\t\tv-model:field=\"auth.state.user.password\"\n\t\t\ttype=\"password\" \t\n\t\t\t:validation=\"passswordValidation\" \n\t\t\t:placeholder=\"t('auth.signIn.passwordPlaceholder')\" \n\t\t\tclass=\"\n bg-light\n pd-medium\n radius-small\n mn-b-semi\n h-4r \n \"\n\t\t/>\n\t\t<!-- Links -->\n\t\t<div class=\"w-100 mn-b-big\">\n\t\t\t<router-link\n\t\t\t\t:to=\"{name: 'Reset Password', query: { returnUrl: route.query?.returnUrl}}\"\n\t\t\t\tclass=\"underline d-block t-blue\"\n\t\t\t>\n\t\t\t\t{{ t('auth.signIn.forgotPassword') }}\n\t\t\t</router-link>\n\t\t</div>\n\t\t<!-- Button -->\n\t\t<Button \n\t\t\t:submit=\"onSubmit\" \n\t\t\t:callback=\"redirectTo\" \n\t\t\tclass=\"w-100 bg-main\"\n\t\t>\n\t\t\t{{ t('auth.signIn.signin') }}\n\t\t</Button>\n\t\t\n\t\t<!-- <Button \n\t\t\t:submit=\"onSubmitApple\" \n\t\t\t:callback=\"redirectTo\" \n\t\t\tclass=\"mn-b-thin bg-black t-white\"\n\t\t>\n\t\t\t{{ t('auth.signIn.signin_apple') }}\n\t\t</Button> -->\n\t</section> \n</template>\n\n<script setup>\n// Import components\nimport Tab from '@martyrs/src/components/Tab/Tab.vue'\nimport Field from '@martyrs/src/components/Field/Field.vue'\nimport FieldPhone from '@martyrs/src/components/FieldPhone/FieldPhone.vue'\nimport Button from '@martyrs/src/components/Button/Button.vue'\n// Import libs\nimport { computed, onMounted, ref, inject } from 'vue'\nimport { useRoute, useRouter } from 'vue-router'\nimport { useI18n } from 'vue-i18n'\n// Import
|
|
1
|
+
{"version":3,"file":"SignIn.vue.cjs","sources":["../../../../../../../../src/modules/auth/views/components/pages/SignIn.vue"],"sourcesContent":["<template>\n\t<section class=\"\">\n\t\t<!-- Header -->\n\t\t<img loading=\"lazy\" :src=\"'/logo/logo.svg'\" class=\"i-extra radius-small mn-b-small\">\n\n\t\t<h3 class=\"mn-b-medium\">\n\t\t\t{{ t('auth.signIn.title') }}\n\t\t\t<br>\n\t\t\t<span class=\"t-semi\">{{ t('auth.signIn.subtitle') }}</span>\n\t\t</h3>\n\n\t\t<p class=\"mn-b-big\">\n\t\t\t<router-link :to=\"{name: 'Sign Up', query: { returnUrl: route.query?.returnUrl}}\" class=\"underline t-second\">{{ t('auth.signIn.signup') }}</router-link>\n\t\t</p>\n\t\t\n\t\t<!-- Select -->\n\t\t<div \n\t\t\tv-if=\"availableTabs.length > 1\" \n\t\t\tclass=\"mn-b-small p-small uppercase t-semi bg-light radius-small o-hidden\"\n\t\t>\n\t\t\t<Tab \n\t\t\t\tv-model:selected=\"tabAuth\"\n\t\t\t\t:tabs=\"availableTabs\"\n\t\t\t\tclassTab=\"pd-small pd-r-medium pd-l-medium w-100 pd-small radius-small\"\n\t\t\t/>\n\t\t</div>\n\t\t<!-- Form -->\n\t\t<div class=\"pos-relative\">\n\t\t<!-- Phone -->\n\t\t\t<transition name=\"slide-fade\">\n\t\t\t\t<div v-show=\"tabAuth === 'phone'\" class=\"mn-b-thin radius-small\">\n\t\t\t\t\t<FieldPhone\n\t\t\t\t\t\t@change=\"(event) => auth.state.user.phone = event\" \t\n\t\t\t\t\t\t:dropdownOptions=\"{\n\t\t\t\t\t\t\tshowDialCodeInSelection: true,\n\t\t\t\t\t\t\tshowFlags: true,\n\t\t\t\t\t\t\tshowDialCodeInList: true,\n\t\t\t\t\t\t\ttabIndex: -1\n\t\t\t\t\t\t}\"\n\t\t\t\t\t\t:validCharactersOnly=\"true\"\n\t\t\t\t\t\t:validation=\"phoneValidation\" \n\t\t\t\t\t\tmode=\"national\"\n\t\t\t\t\t\t:inputOptions=\"{placeholder: t('auth.signIn.phonePlaceholder'), type: 'tel'}\"\n\t\t\t\t\t\tclass=\"bg-light h-4r pd-small radius-small mn-b-thin\" \n\t\t\t\t\t/>\n\t\t\t\t\t\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t\t<transition name=\"slide-fade\">\n\t\t\t\t<div v-show=\"tabAuth === 'email'\" class=\"mn-b-thin radius-small o-hidden\">\n\t\t\t\t\t<Field \n\t\t\t\t\t\tv-model:field=\"auth.state.user.email\" \t\n\t\t\t\t\t\t:placeholder=\"t('auth.signIn.emailPlaceholder')\" \t\n\t\t\t\t\t\t:validation=\"emailValidation\"\n\t\t\t\t\t\t:tabIndex=\"-1\"\n\t\t\t\t\t\tclass=\"bg-light h-4r pd-medium radius-small\" \n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t</div>\n\n\t\t<!-- Password -->\n\t\t<Field \n\t\t\tv-model:field=\"auth.state.user.password\"\n\t\t\ttype=\"password\" \t\n\t\t\t:validation=\"passswordValidation\" \n\t\t\t:placeholder=\"t('auth.signIn.passwordPlaceholder')\" \n\t\t\tclass=\"\n bg-light\n pd-medium\n radius-small\n mn-b-semi\n h-4r \n \"\n\t\t/>\n\t\t<!-- Links -->\n\t\t<div class=\"w-100 mn-b-big\">\n\t\t\t<router-link\n\t\t\t\t:to=\"{name: 'Reset Password', query: { returnUrl: route.query?.returnUrl}}\"\n\t\t\t\tclass=\"underline d-block t-blue\"\n\t\t\t>\n\t\t\t\t{{ t('auth.signIn.forgotPassword') }}\n\t\t\t</router-link>\n\t\t</div>\n\t\t<!-- Button -->\n\t\t<Button \n\t\t\t:submit=\"onSubmit\" \n\t\t\t:callback=\"redirectTo\" \n\t\t\tclass=\"w-100 bg-main\"\n\t\t>\n\t\t\t{{ t('auth.signIn.signin') }}\n\t\t</Button>\n\t\t\n\t\t<!-- <Button \n\t\t\t:submit=\"onSubmitApple\" \n\t\t\t:callback=\"redirectTo\" \n\t\t\tclass=\"mn-b-thin bg-black t-white\"\n\t\t>\n\t\t\t{{ t('auth.signIn.signin_apple') }}\n\t\t</Button> -->\n\t</section> \n</template>\n\n<script setup>\n// Import components\nimport Tab from '@martyrs/src/components/Tab/Tab.vue'\nimport Field from '@martyrs/src/components/Field/Field.vue'\nimport FieldPhone from '@martyrs/src/components/FieldPhone/FieldPhone.vue'\nimport Button from '@martyrs/src/components/Button/Button.vue'\n// Import libs\nimport { computed, onMounted, ref, inject } from 'vue'\nimport { useRoute, useRouter } from 'vue-router'\nimport { useI18n } from 'vue-i18n'\n// Import store\nimport { useStore } from '@martyrs/src/modules/globals/views/classes/store.js'\n// Import validation\nimport * as inputsValidation from '@martyrs/src/modules/auth/views/validations/inputs.validation'\n\n// Get store\nconst store = useStore()\nconst auth = store.auth || { state: {}, actions: {} }\nconst globals = store.globals || { state: {}, actions: {} }\n\n// Init validation\nconst phoneValidation = ref(null)\nconst passswordValidation = ref(null)\nconst emailValidation = ref(null)\n// Accessing router\nconst route = useRoute()\nconst router = useRouter()\n// Localization\nconst { t } = useI18n({\n\tuseScope: 'global'\n})\n// Accessing state\nconst availableTabs = computed(() => {\n const tabs = [\n { name: t('auth.signIn.phone'), value: 'phone' },\n { name: t('auth.signIn.email'), value: 'email' }\n ];\n const excludeMethods = globals.state?.options?.auth?.authMethodsExclude || [];\n return tabs.filter(tab => !excludeMethods.includes(tab.value));\n});\n\nconst tabAuth = ref(availableTabs.value.length ? availableTabs.value[0].value : '');\n\nconst loadExternalScript = (src) => {\n return new Promise((resolve, reject) => {\n const script = document.createElement('script');\n script.type = 'text/javascript';\n script.src = src;\n script.onload = resolve;\n script.onerror = reject;\n document.head.appendChild(script);\n });\n}\n\nonMounted(async () => {\n\tawait loadExternalScript('https://appleid.cdn-apple.com/appleauth/static/jsapi/appleid/1/en_US/appleid.auth.js');\n});\n// Methods\nasync function onSubmit() {\n\ttry {\n\t if (tabAuth.value === 'phone') await inputsValidation.validateInputs(\n\t\t\tphoneValidation, \n\t\t\tinputsValidation.validatePhone, \n\t\t\tauth.state.user.phone, \n\t\t\t'Некорректный телефон'\n\t\t)\n\t\tif (tabAuth.value === 'email') await inputsValidation.validateInputs(\n\t\t\temailValidation, \n\t\t\tinputsValidation.validateEmail, \n\t\t\tauth.state.user.email, \n\t\t\t'Некорректный email'\n\t\t)\n\t} catch (error) {\n\t\tconsole.log(error)\n\t\tthrow new Error\n\t}\n\n\t// COSTIL PLEASE GOD MAKE IT GOOD, FUKEN INPUT COMPONENT RETURN OBJECT NUT NUMBER\n\tconst userCopy = {...auth.state.user};\n\t// COSTIL PLEASE GOD MAKE IT GOOD, FUKEN INPUT COMPONENT RETURN OBJECT NUT NUMBER\n\n \tawait auth.actions.login(userCopy, tabAuth.value)\n}\n\nasync function onSubmitApple() {\n try {\n window.AppleID.auth.init({\n clientId: 'com.thecommune.app.signin',\n scope: 'email name',\n redirectURI: 'https://thecommunephuket.com/auth/signin',\n usePopup: true,\n });\n\n let response = await window.AppleID.auth.signIn();\n\n if (response) {\n console.log(response);\n await auth.actions.login(response, 'apple');\n }\n\n } catch (error) {\n console.error(error);\n throw new Error('Error during Apple authentication');\n }\n}\n\nfunction redirectTo () {\n\tif (route.query?.returnUrl) {\n\t\trouter.push({ \n\t\t\tpath: route.query?.returnUrl,\n\t\t\tquery: { \n\t\t\t\tafterAuth: 'true' \n\t\t\t}\n\t\t})\n\t} else { \n\t\trouter.push({ \n\t\t\tname: 'User Profile', \n\t\t\tparams: { \n\t\t\t\t_id: auth.state.user._id \n\t\t\t},\n\t\t\tquery: { \n\t\t\t\tafterAuth: 'true' \n\t\t\t}\n\t\t})\n\t}\n}\n</script>\n\n<style lang=\"scss\">\n\n\t.input-error {\n\t border: 1px solid red;\n\t box-shadow: 0 0 3px 0 red;\n\t}\n</style>"],"names":["store","useStore","ref","useRoute","useRouter","useI18n","computed","onMounted","inputsValidation.validateInputs","inputsValidation.validatePhone","inputsValidation.validateEmail"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAuHA,UAAMA,UAAQC,MAAAA,SAAQ;AACtB,UAAM,OAAOD,QAAM,QAAQ,EAAE,OAAO,CAAA,GAAI,SAAS,CAAA,EAAE;AACnD,UAAM,UAAUA,QAAM,WAAW,EAAE,OAAO,CAAA,EAAgB;AAG1D,UAAM,kBAAkBE,IAAAA,IAAI,IAAI;AAChC,UAAM,sBAAsBA,IAAAA,IAAI,IAAI;AACpC,UAAM,kBAAkBA,IAAAA,IAAI,IAAI;AAEhC,UAAM,QAAQC,UAAAA,SAAQ;AACtB,UAAM,SAASC,UAAAA,UAAS;AAExB,UAAM,EAAE,EAAC,IAAKC,gBAAQ;AAAA,MACrB,UAAU;AAAA,IACX,CAAC;AAED,UAAM,gBAAgBC,IAAAA,SAAS,MAAM;AACjC,YAAM,OAAO;AAAA,QACT,EAAE,MAAM,EAAE,mBAAmB,GAAG,OAAO,QAAO;AAAA,QAC9C,EAAE,MAAM,EAAE,mBAAmB,GAAG,OAAO,QAAO;AAAA,MACtD;AACI,YAAM,iBAAiB,QAAQ,OAAO,SAAS,MAAM,sBAAsB,CAAA;AAC3E,aAAO,KAAK,OAAO,SAAO,CAAC,eAAe,SAAS,IAAI,KAAK,CAAC;AAAA,IACjE,CAAC;AAED,UAAM,UAAUJ,IAAAA,IAAI,cAAc,MAAM,SAAS,cAAc,MAAM,CAAC,EAAE,QAAQ,EAAE;AAElF,UAAM,qBAAqB,CAAC,QAAQ;AAClC,aAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AACtC,cAAM,SAAS,SAAS,cAAc,QAAQ;AAC9C,eAAO,OAAO;AACd,eAAO,MAAM;AACb,eAAO,SAAS;AAChB,eAAO,UAAU;AACjB,iBAAS,KAAK,YAAY,MAAM;AAAA,MAClC,CAAC;AAAA,IACH;AAEAK,QAAAA,UAAU,YAAY;AACrB,YAAM,mBAAmB,sFAAsF;AAAA,IAChH,CAAC;AAED,mBAAe,WAAW;AACzB,UAAI;AACF,YAAI,QAAQ,UAAU,QAAS,OAAMC,kBAAAA;AAAAA,UACrC;AAAA,UACAC,kBAAAA;AAAAA,UACA,KAAK,MAAM,KAAK;AAAA,UAChB;AAAA,QACH;AACE,YAAI,QAAQ,UAAU,QAAS,OAAMD,kBAAAA;AAAAA,UACpC;AAAA,UACAE,kBAAAA;AAAAA,UACA,KAAK,MAAM,KAAK;AAAA,UAChB;AAAA,QACH;AAAA,MACC,SAAS,OAAO;AACf,gBAAQ,IAAI,KAAK;AACjB,cAAM,IAAI;AAAA,MACX;AAGA,YAAM,WAAW,EAAC,GAAG,KAAK,MAAM,KAAI;AAGnC,YAAM,KAAK,QAAQ,MAAM,UAAU,QAAQ,KAAK;AAAA,IAClD;AAwBA,aAAS,aAAc;AACtB,UAAI,MAAM,OAAO,WAAW;AAC3B,eAAO,KAAK;AAAA,UACX,MAAM,MAAM,OAAO;AAAA,UACnB,OAAO;AAAA,YACN,WAAW;AAAA,UACf;AAAA,QACA,CAAG;AAAA,MACF,OAAO;AACN,eAAO,KAAK;AAAA,UACX,MAAM;AAAA,UACN,QAAQ;AAAA,YACP,KAAK,KAAK,MAAM,KAAK;AAAA,UACzB;AAAA,UACG,OAAO;AAAA,YACN,WAAW;AAAA,UACf;AAAA,QACA,CAAG;AAAA,MACF;AAAA,IACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { ref, computed, onMounted, resolveComponent, createElementBlock, openBlock, createElementVNode, createCommentVNode, createVNode, createTextVNode, toDisplayString, unref, withCtx, Transition, withDirectives, vShow } from "vue";
|
|
2
2
|
import _sfc_main$1 from "../../../../../components/Tab/Tab.vue2.js";
|
|
3
|
-
import Field from "../../../../../components/Field/Field.
|
|
3
|
+
import Field from "../../../../../components/Field/Field.vue.js";
|
|
4
4
|
import _sfc_main$2 from "../../../../../components/FieldPhone/FieldPhone.vue.js";
|
|
5
5
|
import _sfc_main$3 from "../../../../../components/Button/Button.vue.js";
|
|
6
6
|
import { useRoute, useRouter } from "vue-router";
|
|
7
7
|
import { useI18n } from "vue-i18n";
|
|
8
|
-
import {
|
|
9
|
-
import { state } from "../../../../globals/views/store/globals.js";
|
|
8
|
+
import { useStore } from "../../../../globals/views/classes/store.js";
|
|
10
9
|
import { validateInputs, validatePhone, validateEmail } from "../../validations/inputs.validation.js";
|
|
11
10
|
/* empty css */
|
|
12
11
|
const _hoisted_1 = { class: "" };
|
|
@@ -24,6 +23,9 @@ const _hoisted_9 = { class: "w-100 mn-b-big" };
|
|
|
24
23
|
const _sfc_main = {
|
|
25
24
|
__name: "SignIn",
|
|
26
25
|
setup(__props) {
|
|
26
|
+
const store = useStore();
|
|
27
|
+
const auth = store.auth || { state: {}, actions: {} };
|
|
28
|
+
const globals = store.globals || { state: {} };
|
|
27
29
|
const phoneValidation = ref(null);
|
|
28
30
|
const passswordValidation = ref(null);
|
|
29
31
|
const emailValidation = ref(null);
|
|
@@ -37,7 +39,8 @@ const _sfc_main = {
|
|
|
37
39
|
{ name: t("auth.signIn.phone"), value: "phone" },
|
|
38
40
|
{ name: t("auth.signIn.email"), value: "email" }
|
|
39
41
|
];
|
|
40
|
-
|
|
42
|
+
const excludeMethods = globals.state?.options?.auth?.authMethodsExclude || [];
|
|
43
|
+
return tabs.filter((tab) => !excludeMethods.includes(tab.value));
|
|
41
44
|
});
|
|
42
45
|
const tabAuth = ref(availableTabs.value.length ? availableTabs.value[0].value : "");
|
|
43
46
|
const loadExternalScript = (src) => {
|
|
@@ -58,21 +61,21 @@ const _sfc_main = {
|
|
|
58
61
|
if (tabAuth.value === "phone") await validateInputs(
|
|
59
62
|
phoneValidation,
|
|
60
63
|
validatePhone,
|
|
61
|
-
state
|
|
64
|
+
auth.state.user.phone,
|
|
62
65
|
"Некорректный телефон"
|
|
63
66
|
);
|
|
64
67
|
if (tabAuth.value === "email") await validateInputs(
|
|
65
68
|
emailValidation,
|
|
66
69
|
validateEmail,
|
|
67
|
-
state
|
|
70
|
+
auth.state.user.email,
|
|
68
71
|
"Некорректный email"
|
|
69
72
|
);
|
|
70
73
|
} catch (error) {
|
|
71
74
|
console.log(error);
|
|
72
75
|
throw new Error();
|
|
73
76
|
}
|
|
74
|
-
const userCopy = { ...state
|
|
75
|
-
await actions.login(userCopy, tabAuth.value);
|
|
77
|
+
const userCopy = { ...auth.state.user };
|
|
78
|
+
await auth.actions.login(userCopy, tabAuth.value);
|
|
76
79
|
}
|
|
77
80
|
function redirectTo() {
|
|
78
81
|
if (route.query?.returnUrl) {
|
|
@@ -86,7 +89,7 @@ const _sfc_main = {
|
|
|
86
89
|
router.push({
|
|
87
90
|
name: "User Profile",
|
|
88
91
|
params: {
|
|
89
|
-
_id: state
|
|
92
|
+
_id: auth.state.user._id
|
|
90
93
|
},
|
|
91
94
|
query: {
|
|
92
95
|
afterAuth: "true"
|
|
@@ -131,7 +134,7 @@ const _sfc_main = {
|
|
|
131
134
|
default: withCtx(() => [
|
|
132
135
|
withDirectives(createElementVNode("div", _hoisted_7, [
|
|
133
136
|
createVNode(_sfc_main$2, {
|
|
134
|
-
onChange: _cache[1] || (_cache[1] = (event) => state
|
|
137
|
+
onChange: _cache[1] || (_cache[1] = (event) => unref(auth).state.user.phone = event),
|
|
135
138
|
dropdownOptions: {
|
|
136
139
|
showDialCodeInSelection: true,
|
|
137
140
|
showFlags: true,
|
|
@@ -154,8 +157,8 @@ const _sfc_main = {
|
|
|
154
157
|
default: withCtx(() => [
|
|
155
158
|
withDirectives(createElementVNode("div", _hoisted_8, [
|
|
156
159
|
createVNode(Field, {
|
|
157
|
-
field: state
|
|
158
|
-
"onUpdate:field": _cache[2] || (_cache[2] = ($event) => state
|
|
160
|
+
field: unref(auth).state.user.email,
|
|
161
|
+
"onUpdate:field": _cache[2] || (_cache[2] = ($event) => unref(auth).state.user.email = $event),
|
|
159
162
|
placeholder: unref(t)("auth.signIn.emailPlaceholder"),
|
|
160
163
|
validation: emailValidation.value,
|
|
161
164
|
tabIndex: -1,
|
|
@@ -169,8 +172,8 @@ const _sfc_main = {
|
|
|
169
172
|
})
|
|
170
173
|
]),
|
|
171
174
|
createVNode(Field, {
|
|
172
|
-
field: state
|
|
173
|
-
"onUpdate:field": _cache[3] || (_cache[3] = ($event) => state
|
|
175
|
+
field: unref(auth).state.user.password,
|
|
176
|
+
"onUpdate:field": _cache[3] || (_cache[3] = ($event) => unref(auth).state.user.password = $event),
|
|
174
177
|
type: "password",
|
|
175
178
|
validation: passswordValidation.value,
|
|
176
179
|
placeholder: unref(t)("auth.signIn.passwordPlaceholder"),
|