@ozdao/martyrs 0.2.477 → 0.2.479
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/README.md +17 -10
- package/dist/Media-B1ZP3D7B.cjs +1 -0
- package/dist/{Media-CecrG6g6.mjs → Media-CKk33U4A.js} +1 -1
- package/dist/abac-BuL5pUZ4.js +949 -0
- package/dist/abac-XF1JVCLI.cjs +948 -0
- package/dist/addUserStatusFields-B8g3DAuZ.js +88 -0
- package/dist/addUserStatusFields-DP_0f12s.cjs +104 -0
- package/dist/auth.server.cjs +600 -0
- package/dist/auth.server.js +546 -709
- package/dist/authJwt-DBB51Iql.cjs +73 -0
- package/dist/authJwt-DcYNNwcr.js +74 -0
- package/dist/builder.cjs +1356 -0
- package/dist/builder.js +1193 -1377
- package/dist/chats.server.cjs +106 -0
- package/dist/chats.server.js +99 -129
- package/dist/common.schema-Bw1O5_2Q.js +13 -0
- package/dist/common.schema-BzFEVNn3.cjs +12 -0
- package/dist/community.server.cjs +840 -0
- package/dist/community.server.js +722 -949
- package/dist/credentials.schema-C9FB2EyY.js +10 -0
- package/dist/credentials.schema-DwhGdrwC.cjs +9 -0
- package/dist/engagement.schema-Dh1adRsn.js +24 -0
- package/dist/engagement.schema-JADHu8pj.cjs +23 -0
- package/dist/events.server.cjs +856 -0
- package/dist/events.server.js +713 -916
- package/dist/files.server.cjs +275 -0
- package/dist/files.server.js +233 -315
- package/dist/gallery.server.cjs +270 -0
- package/dist/gallery.server.js +245 -311
- package/dist/globals.abac-Cm9e8Jdk.cjs +297 -0
- package/dist/globals.abac-DBV_kaOq.js +298 -0
- package/dist/globals.logger-Bf6rRU7j.js +156 -0
- package/dist/globals.logger-CZMgIMlM.cjs +155 -0
- package/dist/globals.observer-CDqUjVU5.js +44 -0
- package/dist/globals.observer-CV2wCzzh.cjs +43 -0
- package/dist/globals.server.cjs +446 -0
- package/dist/globals.server.js +376 -399
- package/dist/globals.verifier-CWFz5Gh2.js +614 -0
- package/dist/globals.verifier-D68mHEBl.cjs +613 -0
- package/dist/index-CsJwdsBW.js +170 -0
- package/dist/index-YNOkL1mu.cjs +186 -0
- package/dist/mailing-C11EYWm-.js +85 -0
- package/dist/mailing-q7sR8gCV.cjs +101 -0
- package/dist/{main-DmznvhMM.mjs → main-BhAiwmnI.js} +4270 -4674
- package/dist/main-C75EcBpE.cjs +11 -0
- package/dist/martyrs/src/components/Block/Block.vue.cjs +1 -1
- package/dist/martyrs/src/components/Block/Block.vue.js +1 -1
- package/dist/martyrs/src/components/Button/Button.vue2.cjs +0 -1
- package/dist/martyrs/src/components/Button/Button.vue2.cjs.map +1 -1
- package/dist/martyrs/src/components/Button/Button.vue2.js +0 -1
- package/dist/martyrs/src/components/Button/Button.vue2.js.map +1 -1
- package/dist/martyrs/src/components/Chips/{Chips.vue.cjs → Chips.vue2.cjs} +3 -3
- package/dist/martyrs/src/components/Chips/Chips.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/Chips/{Chips.vue.js → Chips.vue2.js} +3 -3
- package/dist/martyrs/src/components/Chips/Chips.vue2.js.map +1 -0
- package/dist/martyrs/src/components/Dropdown/{Dropdown.vue.cjs → Dropdown.vue2.cjs} +2 -2
- package/dist/martyrs/src/components/Dropdown/Dropdown.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/Dropdown/{Dropdown.vue.js → Dropdown.vue2.js} +2 -2
- package/dist/martyrs/src/components/Dropdown/Dropdown.vue2.js.map +1 -0
- package/dist/martyrs/src/components/Feed/Feed.vue.cjs +127 -74
- package/dist/martyrs/src/components/Feed/Feed.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/Feed/Feed.vue.js +136 -83
- package/dist/martyrs/src/components/Feed/Feed.vue.js.map +1 -1
- package/dist/martyrs/src/components/Field/Field.vue.cjs +20 -22
- package/dist/martyrs/src/components/Field/Field.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/Field/Field.vue.js +21 -23
- package/dist/martyrs/src/components/Field/Field.vue.js.map +1 -1
- package/dist/martyrs/src/components/FieldPhone/FieldPhone.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/FieldPhone/FieldPhone.vue.js.map +1 -1
- package/dist/martyrs/src/components/FieldPhone/all-countries.cjs +245 -1
- package/dist/martyrs/src/components/FieldPhone/all-countries.cjs.map +1 -1
- package/dist/martyrs/src/components/FieldPhone/all-countries.js +245 -1
- package/dist/martyrs/src/components/FieldPhone/all-countries.js.map +1 -1
- package/dist/martyrs/src/components/FieldPhone/click-outside.cjs.map +1 -1
- package/dist/martyrs/src/components/FieldPhone/click-outside.js.map +1 -1
- package/dist/martyrs/src/components/FieldTags/BlockTags.vue.js +2 -2
- package/dist/martyrs/src/components/FieldTags/FieldTags.vue.cjs +451 -176
- package/dist/martyrs/src/components/FieldTags/FieldTags.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/FieldTags/FieldTags.vue.js +451 -176
- package/dist/martyrs/src/components/FieldTags/FieldTags.vue.js.map +1 -1
- package/dist/martyrs/src/components/FieldTags/create-tags.cjs.map +1 -1
- package/dist/martyrs/src/components/FieldTags/create-tags.js.map +1 -1
- package/dist/martyrs/src/components/FieldTags/vue-tags-input.props.cjs +1 -4
- package/dist/martyrs/src/components/FieldTags/vue-tags-input.props.cjs.map +1 -1
- package/dist/martyrs/src/components/FieldTags/vue-tags-input.props.js +1 -4
- package/dist/martyrs/src/components/FieldTags/vue-tags-input.props.js.map +1 -1
- package/dist/martyrs/src/components/Menu/{Menu.vue.cjs → Menu.vue2.cjs} +2 -2
- package/dist/martyrs/src/components/Menu/Menu.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/Menu/{Menu.vue.js → Menu.vue2.js} +2 -2
- package/dist/martyrs/src/components/Menu/Menu.vue2.js.map +1 -0
- package/dist/martyrs/src/components/Popup/Popup.vue2.cjs +27 -5
- package/dist/martyrs/src/components/Popup/Popup.vue2.cjs.map +1 -1
- package/dist/martyrs/src/components/Popup/Popup.vue2.js +28 -6
- package/dist/martyrs/src/components/Popup/Popup.vue2.js.map +1 -1
- package/dist/martyrs/src/components/Select/Select.vue.cjs +2 -4
- package/dist/martyrs/src/components/Select/Select.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/Select/Select.vue.js +2 -4
- package/dist/martyrs/src/components/Select/Select.vue.js.map +1 -1
- package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue2.cjs +639 -0
- package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue2.js +639 -0
- package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue2.js.map +1 -0
- package/dist/martyrs/src/components/Table/Table.vue.cjs +23 -38
- package/dist/martyrs/src/components/Table/Table.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/Table/Table.vue.js +24 -39
- package/dist/martyrs/src/components/Table/Table.vue.js.map +1 -1
- package/dist/martyrs/src/components/Tooltip/{Tooltip.vue.cjs → Tooltip.vue2.cjs} +2 -2
- package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/Tooltip/{Tooltip.vue.js → Tooltip.vue2.js} +2 -2
- package/dist/martyrs/src/components/Tooltip/{Tooltip.vue.cjs.map → Tooltip.vue2.js.map} +1 -1
- package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.cjs +4 -4
- package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.js +4 -4
- package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.js.map +1 -1
- package/dist/martyrs/src/modules/auth/auth.client.cjs +5 -5
- package/dist/martyrs/src/modules/auth/auth.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/auth.client.js +5 -5
- package/dist/martyrs/src/modules/auth/auth.client.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js.map +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.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.cjs +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/sections/FeaturedUsers.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/sections/FeaturedUsers.vue.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/middlewares/auth.validation.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/middlewares/auth.validation.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/middlewares/ownership.validation.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/middlewares/ownership.validation.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/router/auth.cjs +87 -98
- package/dist/martyrs/src/modules/auth/views/router/auth.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/router/auth.js +87 -98
- package/dist/martyrs/src/modules/auth/views/router/auth.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/router/users.cjs +105 -106
- package/dist/martyrs/src/modules/auth/views/router/users.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/router/users.js +105 -106
- package/dist/martyrs/src/modules/auth/views/router/users.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/store/auth.cjs +7 -1
- package/dist/martyrs/src/modules/auth/views/store/auth.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/store/auth.js +7 -1
- package/dist/martyrs/src/modules/auth/views/store/auth.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/store/twofa.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/store/twofa.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/store/users.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/store/users.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/store/users.js +1 -1
- package/dist/martyrs/src/modules/auth/views/store/users.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/validations/inputs.validation.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/validations/inputs.validation.js.map +1 -1
- package/dist/martyrs/src/modules/backoffice/backoffice.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/backoffice/backoffice.client.js.map +1 -1
- package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.js.map +1 -1
- package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.cjs +1 -1
- package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.js +1 -1
- package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.js.map +1 -1
- package/dist/martyrs/src/modules/backoffice/router/backoffice.cjs +1 -4
- package/dist/martyrs/src/modules/backoffice/router/backoffice.cjs.map +1 -1
- package/dist/martyrs/src/modules/backoffice/router/backoffice.js +1 -4
- package/dist/martyrs/src/modules/backoffice/router/backoffice.js.map +1 -1
- package/dist/martyrs/src/modules/chats/chats.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/chats/chats.client.js.map +1 -1
- package/dist/martyrs/src/modules/chats/store/chat.store.cjs +10 -6
- package/dist/martyrs/src/modules/chats/store/chat.store.cjs.map +1 -1
- package/dist/martyrs/src/modules/chats/store/chat.store.js +10 -6
- package/dist/martyrs/src/modules/chats/store/chat.store.js.map +1 -1
- package/dist/martyrs/src/modules/community/community.client.cjs +14 -14
- package/dist/martyrs/src/modules/community/community.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/community/community.client.js +3 -3
- package/dist/martyrs/src/modules/community/community.client.js.map +1 -1
- package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.cjs +1 -1
- package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.js +1 -1
- package/dist/martyrs/src/modules/community/components/blocks/FooterBlogpost.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/community/components/blocks/FooterBlogpost.vue.js.map +1 -1
- package/dist/martyrs/src/modules/community/components/layouts/Community.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js.map +1 -1
- package/dist/martyrs/src/modules/community/components/pages/Blog.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/community/components/pages/Blog.vue.js.map +1 -1
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs +1 -1
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +1 -1
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js.map +1 -1
- package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs +16 -10
- package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +16 -10
- package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js.map +1 -1
- package/dist/martyrs/src/modules/community/components/sections/Comment.vue.cjs +2 -2
- package/dist/martyrs/src/modules/community/components/sections/Comment.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/community/components/sections/Comment.vue.js +2 -2
- package/dist/martyrs/src/modules/community/components/sections/Comment.vue.js.map +1 -1
- package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.cjs +1 -1
- package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.js +1 -1
- package/dist/martyrs/src/modules/community/router/blogposts.cjs +61 -59
- package/dist/martyrs/src/modules/community/router/blogposts.cjs.map +1 -1
- package/dist/martyrs/src/modules/community/router/blogposts.js +61 -59
- package/dist/martyrs/src/modules/community/router/blogposts.js.map +1 -1
- package/dist/martyrs/src/modules/community/store/blogposts.cjs +14 -10
- package/dist/martyrs/src/modules/community/store/blogposts.cjs.map +1 -1
- package/dist/martyrs/src/modules/community/store/blogposts.js +14 -10
- package/dist/martyrs/src/modules/community/store/blogposts.js.map +1 -1
- package/dist/martyrs/src/modules/community/store/reactions.cjs.map +1 -1
- package/dist/martyrs/src/modules/community/store/reactions.js.map +1 -1
- package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.cjs +5 -3
- package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.js +5 -3
- package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.js.map +1 -1
- package/dist/martyrs/src/modules/constructor/components/elements/ImageUpload.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/constructor/components/elements/ImageUpload.vue.js.map +1 -1
- package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.js.map +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.js.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs +12 -6
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +12 -6
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs +3 -4
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +3 -4
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.js.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/Events.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/Events.vue.js.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.js.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EventsSearch.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EventsSearch.vue.js.map +1 -1
- package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/sections/FeaturedEvents.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/sections/FeaturedEvents.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/components/sections/FeaturedEvents.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/sections/FeaturedEvents.vue.js.map +1 -1
- package/dist/martyrs/src/modules/events/events.client.cjs +17 -17
- package/dist/martyrs/src/modules/events/events.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/events.client.js +4 -4
- package/dist/martyrs/src/modules/events/events.client.js.map +1 -1
- package/dist/martyrs/src/modules/events/router/events.cjs +11 -21
- package/dist/martyrs/src/modules/events/router/events.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/router/events.js +11 -21
- package/dist/martyrs/src/modules/events/router/events.js.map +1 -1
- package/dist/martyrs/src/modules/events/store/events.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/store/events.js.map +1 -1
- package/dist/martyrs/src/modules/events/store/tickets.cjs +3 -1
- package/dist/martyrs/src/modules/events/store/tickets.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/store/tickets.js +3 -1
- package/dist/martyrs/src/modules/events/store/tickets.js.map +1 -1
- package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.js.map +1 -1
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +2 -2
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +2 -2
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js.map +1 -1
- package/dist/martyrs/src/modules/gallery/gallery.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/gallery/gallery.client.js.map +1 -1
- package/dist/martyrs/src/modules/gallery/router/gallery.backoffice.router.cjs +17 -17
- package/dist/martyrs/src/modules/gallery/router/gallery.backoffice.router.cjs.map +1 -1
- package/dist/martyrs/src/modules/gallery/router/gallery.backoffice.router.js +17 -17
- package/dist/martyrs/src/modules/gallery/router/gallery.backoffice.router.js.map +1 -1
- package/dist/martyrs/src/modules/gallery/router/gallery.router.cjs.map +1 -1
- package/dist/martyrs/src/modules/gallery/router/gallery.router.js.map +1 -1
- package/dist/martyrs/src/modules/gallery/store/gallery.cjs.map +1 -1
- package/dist/martyrs/src/modules/gallery/store/gallery.js.map +1 -1
- package/dist/martyrs/src/modules/globals/globals.client.cjs +24 -8
- package/dist/martyrs/src/modules/globals/globals.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/globals.client.js +22 -6
- package/dist/martyrs/src/modules/globals/globals.client.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/classes/globals.store.cjs +9 -7
- package/dist/martyrs/src/modules/globals/views/classes/globals.store.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/classes/globals.store.js +9 -7
- package/dist/martyrs/src/modules/globals/views/classes/globals.store.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/classes/globals.websocket.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/classes/globals.websocket.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/classes/store.cjs +2 -2
- package/dist/martyrs/src/modules/globals/views/classes/store.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/classes/store.js +2 -2
- package/dist/martyrs/src/modules/globals/views/classes/store.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/{plugins → components/blocks}/AlertDialog.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/AlertDialog.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/globals/views/{plugins → components/blocks}/AlertDialog.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/AlertDialog.vue.js.map +1 -0
- package/dist/martyrs/src/modules/globals/views/components/blocks/BlockMultiselect.vue.cjs +308 -0
- package/dist/martyrs/src/modules/globals/views/components/blocks/BlockMultiselect.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/globals/views/components/blocks/BlockMultiselect.vue.js +308 -0
- package/dist/martyrs/src/modules/globals/views/components/blocks/BlockMultiselect.vue.js.map +1 -0
- package/dist/martyrs/src/modules/globals/views/components/blocks/Card.vue.cjs +61 -49
- package/dist/martyrs/src/modules/globals/views/components/blocks/Card.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/Card.vue.js +62 -50
- package/dist/martyrs/src/modules/globals/views/components/blocks/Card.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +2 -2
- package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js +2 -2
- package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/elements/ButtonDate.vue.cjs +2 -2
- package/dist/martyrs/src/modules/globals/views/components/elements/ButtonDate.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/elements/ButtonDate.vue.js +2 -2
- package/dist/martyrs/src/modules/globals/views/components/elements/ButtonDate.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/layouts/App.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/layouts/App.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/BottomNavigationBar.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/BottomNavigationBar.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/LocationSelection.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/LocationSelection.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs +9 -10
- package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js +9 -10
- package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Sidebar.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Sidebar.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Sidebar.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Sidebar.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/localization/get-browser-locale.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/localization/get-browser-locale.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/mixins/mixins.cjs +24 -5
- package/dist/martyrs/src/modules/globals/views/mixins/mixins.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/mixins/mixins.js +24 -5
- package/dist/martyrs/src/modules/globals/views/mixins/mixins.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/plugins/alert.plugin.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/plugins/alert.plugin.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/plugins/alert.plugin.js +1 -1
- package/dist/martyrs/src/modules/globals/views/plugins/alert.plugin.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/plugins/date-picker.plugin.cjs +74 -0
- package/dist/martyrs/src/modules/globals/views/plugins/date-picker.plugin.cjs.map +1 -0
- package/dist/martyrs/src/modules/globals/views/plugins/date-picker.plugin.js +74 -0
- package/dist/martyrs/src/modules/globals/views/plugins/date-picker.plugin.js.map +1 -0
- package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/StoreDebugger.vue.cjs +200 -0
- package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/StoreDebugger.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/StoreDebugger.vue.js +200 -0
- package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/StoreDebugger.vue.js.map +1 -0
- package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/store-debugger.plugin.cjs +21 -0
- package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/store-debugger.plugin.cjs.map +1 -0
- package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/store-debugger.plugin.js +21 -0
- package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/store-debugger.plugin.js.map +1 -0
- package/dist/martyrs/src/modules/globals/views/router/addRoutes.cjs +1 -4
- package/dist/martyrs/src/modules/globals/views/router/addRoutes.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/router/addRoutes.js +1 -4
- package/dist/martyrs/src/modules/globals/views/router/addRoutes.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/router/scrollBehavior.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/router/scrollBehavior.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/store/globals.cjs +4 -14
- package/dist/martyrs/src/modules/globals/views/store/globals.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/store/globals.js +4 -14
- package/dist/martyrs/src/modules/globals/views/store/globals.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/utils/axios-instance.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/utils/axios-instance.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/utils/vue-app-renderer.cjs +2 -2
- 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 +2 -2
- package/dist/martyrs/src/modules/globals/views/utils/vue-app-renderer.js.map +1 -1
- package/dist/martyrs/src/modules/icons/actions/IconDuplicate.vue.cjs +39 -0
- package/dist/martyrs/src/modules/icons/actions/IconDuplicate.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/icons/actions/IconDuplicate.vue.js +39 -0
- package/dist/martyrs/src/modules/icons/actions/IconDuplicate.vue.js.map +1 -0
- package/dist/martyrs/src/modules/icons/entities/IconDiscount.vue.cjs +57 -0
- package/dist/martyrs/src/modules/icons/entities/IconDiscount.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/icons/entities/IconDiscount.vue.js +57 -0
- package/dist/martyrs/src/modules/icons/entities/IconDiscount.vue.js.map +1 -0
- package/dist/martyrs/src/modules/icons/entities/IconFile.vue.cjs +33 -0
- package/dist/martyrs/src/modules/icons/entities/IconFile.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/icons/entities/IconFile.vue.js +33 -0
- package/dist/martyrs/src/modules/icons/entities/IconFile.vue.js.map +1 -0
- package/dist/martyrs/src/modules/icons/entities/IconMusic.vue.cjs +33 -0
- package/dist/martyrs/src/modules/icons/entities/IconMusic.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/icons/entities/IconMusic.vue.js +33 -0
- package/dist/martyrs/src/modules/icons/entities/IconMusic.vue.js.map +1 -0
- package/dist/martyrs/src/modules/icons/entities/IconSettings.vue.cjs +35 -0
- package/dist/martyrs/src/modules/icons/entities/IconSettings.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/icons/entities/IconSettings.vue.js +35 -0
- package/dist/martyrs/src/modules/icons/entities/IconSettings.vue.js.map +1 -0
- package/dist/martyrs/src/modules/icons/icons.client.cjs +97 -79
- package/dist/martyrs/src/modules/icons/icons.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/icons.client.js +140 -122
- package/dist/martyrs/src/modules/icons/icons.client.js.map +1 -1
- package/dist/martyrs/src/modules/icons/logos/Logotype.vue.cjs +25 -0
- package/dist/martyrs/src/modules/icons/logos/Logotype.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/icons/logos/Logotype.vue.js +25 -0
- package/dist/martyrs/src/modules/icons/logos/Logotype.vue.js.map +1 -0
- package/dist/martyrs/src/modules/icons/navigation/IconAttach.vue.cjs +35 -0
- package/dist/martyrs/src/modules/icons/navigation/IconAttach.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/icons/navigation/IconAttach.vue.js +35 -0
- package/dist/martyrs/src/modules/icons/navigation/IconAttach.vue.js.map +1 -0
- package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.cjs +39 -0
- package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.js +39 -0
- package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.js.map +1 -0
- package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.cjs +39 -0
- package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.js +39 -0
- package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.js.map +1 -0
- package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.cjs +34 -0
- package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.js +34 -0
- package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.js.map +1 -0
- package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.cjs +39 -0
- package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.js +39 -0
- package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.js.map +1 -0
- package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.cjs +31 -0
- package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.js +31 -0
- package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.js.map +1 -0
- package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.cjs +39 -0
- package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.js +39 -0
- package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.js.map +1 -0
- package/dist/martyrs/src/modules/icons/navigation/IconSend.vue.cjs +31 -0
- package/dist/martyrs/src/modules/icons/navigation/IconSend.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/icons/navigation/IconSend.vue.js +31 -0
- package/dist/martyrs/src/modules/icons/navigation/IconSend.vue.js.map +1 -0
- package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.cjs +39 -0
- package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.js +39 -0
- package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.js.map +1 -0
- package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.cjs +39 -0
- package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.js +39 -0
- package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.js.map +1 -0
- package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.cjs +278 -0
- package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.js +278 -0
- package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.js.map +1 -0
- package/dist/martyrs/src/modules/icons/router/icons.router.cjs +33 -0
- package/dist/martyrs/src/modules/icons/router/icons.router.cjs.map +1 -0
- package/dist/martyrs/src/modules/icons/router/icons.router.js +33 -0
- package/dist/martyrs/src/modules/icons/router/icons.router.js.map +1 -0
- package/dist/martyrs/src/modules/icons/socials/dribbble.vue.cjs +2 -2
- package/dist/martyrs/src/modules/icons/socials/dribbble.vue.js +2 -2
- package/dist/martyrs/src/modules/icons/socials/facebook.vue.cjs +2 -2
- package/dist/martyrs/src/modules/icons/socials/facebook.vue.js +2 -2
- package/dist/martyrs/src/modules/icons/socials/instagram.vue.cjs +2 -2
- package/dist/martyrs/src/modules/icons/socials/instagram.vue.js +2 -2
- package/dist/martyrs/src/modules/icons/socials/line.vue.cjs +2 -2
- package/dist/martyrs/src/modules/icons/socials/line.vue.js +2 -2
- package/dist/martyrs/src/modules/icons/socials/linkedin.vue.cjs +2 -2
- package/dist/martyrs/src/modules/icons/socials/linkedin.vue.js +2 -2
- package/dist/martyrs/src/modules/icons/socials/reddit.vue.cjs +2 -2
- package/dist/martyrs/src/modules/icons/socials/reddit.vue.js +2 -2
- package/dist/martyrs/src/modules/icons/socials/telegram.vue.cjs +2 -2
- package/dist/martyrs/src/modules/icons/socials/telegram.vue.js +2 -2
- package/dist/martyrs/src/modules/icons/socials/twitter.vue.cjs +2 -2
- package/dist/martyrs/src/modules/icons/socials/twitter.vue.js +2 -2
- package/dist/martyrs/src/modules/icons/socials/vk.vue.cjs +2 -2
- package/dist/martyrs/src/modules/icons/socials/vk.vue.js +2 -2
- package/dist/martyrs/src/modules/icons/socials/youtube.vue.cjs +2 -2
- package/dist/martyrs/src/modules/icons/socials/youtube.vue.js +2 -2
- package/dist/martyrs/src/modules/landing/landing.client.cjs +12 -12
- package/dist/martyrs/src/modules/landing/landing.client.js +22 -22
- package/dist/martyrs/src/modules/marketplace/marketplace.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/marketplace/marketplace.client.js.map +1 -1
- package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.js.map +1 -1
- package/dist/martyrs/src/modules/marketplace/views/components/pages/Catalog.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/marketplace/views/components/pages/Catalog.vue.js.map +1 -1
- package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.js.map +1 -1
- package/dist/martyrs/src/modules/marketplace/views/router/marketplace.router.cjs +0 -1
- package/dist/martyrs/src/modules/marketplace/views/router/marketplace.router.cjs.map +1 -1
- package/dist/martyrs/src/modules/marketplace/views/router/marketplace.router.js +0 -1
- package/dist/martyrs/src/modules/marketplace/views/router/marketplace.router.js.map +1 -1
- package/dist/martyrs/src/modules/marketplace/views/store/marketplace.cjs +25 -19
- package/dist/martyrs/src/modules/marketplace/views/store/marketplace.cjs.map +1 -1
- package/dist/martyrs/src/modules/marketplace/views/store/marketplace.js +25 -19
- package/dist/martyrs/src/modules/marketplace/views/store/marketplace.js.map +1 -1
- package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.cjs +1 -1
- package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js +1 -1
- package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js.map +1 -1
- package/dist/martyrs/src/modules/notifications/components/sections/NotificationsList.vue.cjs +1 -1
- package/dist/martyrs/src/modules/notifications/components/sections/NotificationsList.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/notifications/components/sections/NotificationsList.vue.js +1 -1
- package/dist/martyrs/src/modules/notifications/components/sections/NotificationsList.vue.js.map +1 -1
- package/dist/martyrs/src/modules/notifications/notifications.client.cjs +18 -27
- package/dist/martyrs/src/modules/notifications/notifications.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/notifications/notifications.client.js +16 -25
- package/dist/martyrs/src/modules/notifications/notifications.client.js.map +1 -1
- package/dist/martyrs/src/modules/notifications/router/notifications.router.cjs +1 -1
- package/dist/martyrs/src/modules/notifications/router/notifications.router.cjs.map +1 -1
- package/dist/martyrs/src/modules/notifications/router/notifications.router.js +1 -1
- package/dist/martyrs/src/modules/notifications/router/notifications.router.js.map +1 -1
- package/dist/martyrs/src/modules/notifications/store/notifications.store.cjs.map +1 -1
- package/dist/martyrs/src/modules/notifications/store/notifications.store.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +2 -2
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +2 -2
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +1 -3
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +1 -3
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/orders.client.cjs +5 -5
- package/dist/martyrs/src/modules/orders/orders.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/orders.client.js +5 -5
- package/dist/martyrs/src/modules/orders/orders.client.js.map +1 -1
- package/dist/martyrs/src/modules/orders/router/orders.router.cjs +2 -3
- package/dist/martyrs/src/modules/orders/router/orders.router.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/router/orders.router.js +2 -3
- package/dist/martyrs/src/modules/orders/router/orders.router.js.map +1 -1
- package/dist/martyrs/src/modules/orders/store/applications.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/store/applications.js.map +1 -1
- package/dist/martyrs/src/modules/orders/store/customers.store.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/store/customers.store.js.map +1 -1
- package/dist/martyrs/src/modules/orders/store/models/customer.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/store/models/customer.js.map +1 -1
- package/dist/martyrs/src/modules/orders/store/models/order.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/store/models/order.js.map +1 -1
- package/dist/martyrs/src/modules/orders/store/orders.cjs +23 -26
- package/dist/martyrs/src/modules/orders/store/orders.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/store/orders.js +23 -26
- package/dist/martyrs/src/modules/orders/store/orders.js.map +1 -1
- package/dist/martyrs/src/modules/orders/store/shopcart.cjs +94 -47
- package/dist/martyrs/src/modules/orders/store/shopcart.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/store/shopcart.js +94 -47
- package/dist/martyrs/src/modules/orders/store/shopcart.js.map +1 -1
- package/dist/martyrs/src/modules/orders/store/testimonials.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/store/testimonials.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/Socials.vue.js +16 -16
- package/dist/martyrs/src/modules/organizations/components/blocks/Socials.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs +2 -2
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs +5 -5
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +5 -5
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.cjs +2 -2
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +8 -8
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.cjs +2 -2
- package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs +5 -5
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Publics.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Publics.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.cjs +225 -0
- package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.cjs.map +1 -0
- package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.js +225 -0
- package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.js.map +1 -0
- package/dist/martyrs/src/modules/organizations/organizations.client.cjs +28 -28
- package/dist/martyrs/src/modules/organizations/organizations.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/organizations.client.js +10 -10
- package/dist/martyrs/src/modules/organizations/organizations.client.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/router/backoffice.router.cjs +26 -23
- package/dist/martyrs/src/modules/organizations/router/backoffice.router.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/router/backoffice.router.js +26 -23
- package/dist/martyrs/src/modules/organizations/router/backoffice.router.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/router/departments.router.cjs +27 -23
- package/dist/martyrs/src/modules/organizations/router/departments.router.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/router/departments.router.js +27 -23
- package/dist/martyrs/src/modules/organizations/router/departments.router.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/router/members.router.cjs +17 -15
- package/dist/martyrs/src/modules/organizations/router/members.router.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/router/members.router.js +17 -15
- package/dist/martyrs/src/modules/organizations/router/members.router.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/router/organizations.cjs +73 -60
- package/dist/martyrs/src/modules/organizations/router/organizations.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/router/organizations.js +73 -60
- package/dist/martyrs/src/modules/organizations/router/organizations.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/store/departments.cjs +3 -1
- package/dist/martyrs/src/modules/organizations/store/departments.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/store/departments.js +3 -1
- package/dist/martyrs/src/modules/organizations/store/departments.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/store/invites.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/store/invites.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/store/memberships.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/store/memberships.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/store/organizations.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/store/organizations.js.map +1 -1
- package/dist/martyrs/src/modules/pages/pages.client.cjs +2 -2
- package/dist/martyrs/src/modules/pages/pages.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/pages/pages.client.js +2 -2
- package/dist/martyrs/src/modules/pages/pages.client.js.map +1 -1
- package/dist/martyrs/src/modules/pages/views/components/pages/Page.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/pages/views/components/pages/Page.vue.js.map +1 -1
- package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js +1 -1
- package/dist/martyrs/src/modules/pages/views/components/pages/Pages.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/pages/views/components/pages/Pages.vue.js.map +1 -1
- package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.js.map +1 -1
- package/dist/martyrs/src/modules/pages/views/router/pages.backoffice.router.cjs +35 -31
- package/dist/martyrs/src/modules/pages/views/router/pages.backoffice.router.cjs.map +1 -1
- package/dist/martyrs/src/modules/pages/views/router/pages.backoffice.router.js +35 -31
- package/dist/martyrs/src/modules/pages/views/router/pages.backoffice.router.js.map +1 -1
- package/dist/martyrs/src/modules/pages/views/router/pages.router.cjs +16 -14
- package/dist/martyrs/src/modules/pages/views/router/pages.router.cjs.map +1 -1
- package/dist/martyrs/src/modules/pages/views/router/pages.router.js +16 -14
- package/dist/martyrs/src/modules/pages/views/router/pages.router.js.map +1 -1
- package/dist/martyrs/src/modules/pages/views/store/pages.cjs +5 -2
- package/dist/martyrs/src/modules/pages/views/store/pages.cjs.map +1 -1
- package/dist/martyrs/src/modules/pages/views/store/pages.js +5 -2
- package/dist/martyrs/src/modules/pages/views/store/pages.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardLeftover.vue.cjs +2 -2
- package/dist/martyrs/src/modules/products/components/blocks/CardLeftover.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardLeftover.vue.js +2 -2
- package/dist/martyrs/src/modules/products/components/blocks/CardLeftover.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.cjs +76 -135
- package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.js +77 -136
- package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.cjs +4 -4
- package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.js +4 -4
- package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.cjs +128 -0
- package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.js +128 -0
- package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.js.map +1 -0
- package/dist/martyrs/src/modules/products/components/blocks/{ImagesThumbnails.vue.cjs → ProductImages.vue.cjs} +7 -7
- package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/products/components/blocks/{ImagesThumbnails.vue.js → ProductImages.vue.js} +7 -7
- package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.js.map +1 -0
- package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.cjs +141 -0
- package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.js +141 -0
- package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.js.map +1 -0
- package/dist/martyrs/src/modules/products/components/{blocks/Images360.vue.cjs → elements/Image360.vue.cjs} +5 -5
- package/dist/martyrs/src/modules/products/components/{blocks/Images360.vue.cjs.map → elements/Image360.vue.cjs.map} +1 -1
- package/dist/martyrs/src/modules/products/components/{blocks/Images360.vue.js → elements/Image360.vue.js} +5 -5
- package/dist/martyrs/src/modules/products/components/{blocks/Images360.vue.js.map → elements/Image360.vue.js.map} +1 -1
- package/dist/martyrs/src/modules/products/components/elements/Price.vue.cjs +19 -20
- package/dist/martyrs/src/modules/products/components/elements/Price.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/elements/Price.vue.js +20 -21
- package/dist/martyrs/src/modules/products/components/elements/Price.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.cjs +71 -0
- package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.js +71 -0
- package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.js.map +1 -0
- package/dist/martyrs/src/modules/products/components/elements/THC.vue.cjs +6 -6
- package/dist/martyrs/src/modules/products/components/elements/THC.vue.js +6 -6
- package/dist/martyrs/src/modules/products/components/forms/ColumnSettingsMenu.vue.cjs +73 -0
- package/dist/martyrs/src/modules/products/components/forms/ColumnSettingsMenu.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/products/components/forms/ColumnSettingsMenu.vue.js +73 -0
- package/dist/martyrs/src/modules/products/components/forms/ColumnSettingsMenu.vue.js.map +1 -0
- package/dist/martyrs/src/modules/products/components/forms/ReorderSettingsForm.vue.cjs +101 -0
- package/dist/martyrs/src/modules/products/components/forms/ReorderSettingsForm.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/products/components/forms/ReorderSettingsForm.vue.js +101 -0
- package/dist/martyrs/src/modules/products/components/forms/ReorderSettingsForm.vue.js.map +1 -0
- package/dist/martyrs/src/modules/products/components/forms/StockAuditForm.vue.cjs +135 -0
- package/dist/martyrs/src/modules/products/components/forms/StockAuditForm.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/products/components/forms/StockAuditForm.vue.js +135 -0
- package/dist/martyrs/src/modules/products/components/forms/StockAuditForm.vue.js.map +1 -0
- package/dist/martyrs/src/modules/products/components/forms/StockHistoryView.vue.cjs +148 -0
- package/dist/martyrs/src/modules/products/components/forms/StockHistoryView.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/products/components/forms/StockHistoryView.vue.js +148 -0
- package/dist/martyrs/src/modules/products/components/forms/StockHistoryView.vue.js.map +1 -0
- package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs +2 -2
- package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js +2 -2
- package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs +6 -6
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +6 -6
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/LeftoverEdit.vue.cjs +345 -0
- package/dist/martyrs/src/modules/products/components/pages/LeftoverEdit.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/products/components/pages/LeftoverEdit.vue.js +345 -0
- package/dist/martyrs/src/modules/products/components/pages/LeftoverEdit.vue.js.map +1 -0
- package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.cjs +279 -55
- package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.js +282 -58
- package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs +107 -116
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.js +116 -125
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs +257 -312
- package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +262 -317
- package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/ProductRecommmendation.vue.cjs +2 -2
- package/dist/martyrs/src/modules/products/components/pages/ProductRecommmendation.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/ProductRecommmendation.vue.js +2 -2
- package/dist/martyrs/src/modules/products/components/pages/ProductRecommmendation.vue.js.map +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.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +2 -2
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.cjs +168 -0
- package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js +168 -0
- package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js.map +1 -0
- package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.cjs +319 -0
- package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js +319 -0
- package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js.map +1 -0
- package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.cjs +140 -0
- package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.js +140 -0
- package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.js.map +1 -0
- package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.cjs +468 -0
- package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +468 -0
- package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js.map +1 -0
- package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.cjs +2 -2
- package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.js +2 -2
- package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/HeroRecommendation.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/HeroRecommendation.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/PopularProducts.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/sections/PopularProducts.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/PopularProducts.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/sections/PopularProducts.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.cjs +134 -0
- package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js +134 -0
- package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js.map +1 -0
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs +13 -13
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +13 -13
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/products.client.cjs +20 -29
- package/dist/martyrs/src/modules/products/products.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/products.client.js +37 -46
- package/dist/martyrs/src/modules/products/products.client.js.map +1 -1
- package/dist/martyrs/src/modules/products/router/categories.router.cjs +34 -30
- package/dist/martyrs/src/modules/products/router/categories.router.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/router/categories.router.js +34 -30
- package/dist/martyrs/src/modules/products/router/categories.router.js.map +1 -1
- package/dist/martyrs/src/modules/products/router/leftovers.router.cjs +42 -39
- package/dist/martyrs/src/modules/products/router/leftovers.router.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/router/leftovers.router.js +42 -39
- package/dist/martyrs/src/modules/products/router/leftovers.router.js.map +1 -1
- package/dist/martyrs/src/modules/products/router/products.router.cjs +0 -1
- package/dist/martyrs/src/modules/products/router/products.router.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/router/products.router.js +0 -1
- package/dist/martyrs/src/modules/products/router/products.router.js.map +1 -1
- package/dist/martyrs/src/modules/products/store/categories.cjs +7 -3
- package/dist/martyrs/src/modules/products/store/categories.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/store/categories.js +7 -3
- package/dist/martyrs/src/modules/products/store/categories.js.map +1 -1
- package/dist/martyrs/src/modules/products/store/leftovers.cjs +42 -3
- package/dist/martyrs/src/modules/products/store/leftovers.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/store/leftovers.js +42 -3
- package/dist/martyrs/src/modules/products/store/leftovers.js.map +1 -1
- package/dist/martyrs/src/modules/products/store/products.cjs +32 -60
- package/dist/martyrs/src/modules/products/store/products.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/store/products.js +32 -60
- package/dist/martyrs/src/modules/products/store/products.js.map +1 -1
- package/dist/martyrs/src/modules/products/store/variants.store.cjs +6 -0
- package/dist/martyrs/src/modules/products/store/variants.store.cjs.map +1 -0
- package/dist/martyrs/src/modules/products/store/variants.store.js +6 -0
- package/dist/martyrs/src/modules/products/store/variants.store.js.map +1 -0
- package/dist/martyrs/src/modules/rents/rents.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/rents/rents.client.js.map +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.cjs +1 -2
- package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js +1 -2
- package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js.map +1 -1
- package/dist/martyrs/src/modules/rents/views/router/rents.router.cjs +3 -11
- package/dist/martyrs/src/modules/rents/views/router/rents.router.cjs.map +1 -1
- package/dist/martyrs/src/modules/rents/views/router/rents.router.js +3 -11
- package/dist/martyrs/src/modules/rents/views/router/rents.router.js.map +1 -1
- package/dist/martyrs/src/modules/rents/views/store/rents.store.cjs.map +1 -1
- package/dist/martyrs/src/modules/rents/views/store/rents.store.js.map +1 -1
- package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js.map +1 -1
- package/dist/martyrs/src/modules/reports/reports.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/reports/reports.client.js.map +1 -1
- package/dist/martyrs/src/modules/reports/store/reports.cjs +1 -1
- package/dist/martyrs/src/modules/reports/store/reports.cjs.map +1 -1
- package/dist/martyrs/src/modules/reports/store/reports.js +1 -1
- package/dist/martyrs/src/modules/reports/store/reports.js.map +1 -1
- package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.cjs +74 -51
- package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.js +75 -52
- package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.js.map +1 -1
- package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.cjs +1 -1
- package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js.map +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/Map.vue.cjs +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/Map.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js.map +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js.map +1 -1
- package/dist/martyrs/src/modules/spots/router/spots.cjs +3 -9
- package/dist/martyrs/src/modules/spots/router/spots.cjs.map +1 -1
- package/dist/martyrs/src/modules/spots/router/spots.js +3 -9
- package/dist/martyrs/src/modules/spots/router/spots.js.map +1 -1
- package/dist/martyrs/src/modules/spots/spots.client.cjs +1 -1
- package/dist/martyrs/src/modules/spots/spots.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/spots/spots.client.js +1 -1
- package/dist/martyrs/src/modules/spots/spots.client.js.map +1 -1
- package/dist/martyrs/src/modules/spots/store/spots.cjs.map +1 -1
- package/dist/martyrs/src/modules/spots/store/spots.js.map +1 -1
- package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.cjs +3 -3
- package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js +3 -3
- package/dist/martyrs/src/modules/wallet/views/router/payments.router.cjs +26 -23
- package/dist/martyrs/src/modules/wallet/views/router/payments.router.cjs.map +1 -1
- package/dist/martyrs/src/modules/wallet/views/router/payments.router.js +26 -23
- package/dist/martyrs/src/modules/wallet/views/router/payments.router.js.map +1 -1
- package/dist/martyrs/src/modules/wallet/views/store/payments.store.cjs +2 -2
- package/dist/martyrs/src/modules/wallet/views/store/payments.store.cjs.map +1 -1
- package/dist/martyrs/src/modules/wallet/views/store/payments.store.js +2 -2
- package/dist/martyrs/src/modules/wallet/views/store/payments.store.js.map +1 -1
- package/dist/martyrs/src/modules/wallet/views/store/wallet.store.cjs +11 -12
- package/dist/martyrs/src/modules/wallet/views/store/wallet.store.cjs.map +1 -1
- package/dist/martyrs/src/modules/wallet/views/store/wallet.store.js +11 -12
- package/dist/martyrs/src/modules/wallet/views/store/wallet.store.js.map +1 -1
- package/dist/martyrs.cjs.js +1 -1
- package/dist/martyrs.css +1 -1
- package/dist/martyrs.es.js +1 -1
- package/dist/metadata.schema-CWmcDJN7.js +268 -0
- package/dist/metadata.schema-RlxNv46L.cjs +267 -0
- package/dist/node_modules/date-fns/_lib/addLeadingZeros.cjs +9 -0
- package/dist/node_modules/date-fns/_lib/addLeadingZeros.cjs.map +1 -0
- package/dist/node_modules/date-fns/_lib/addLeadingZeros.js +9 -0
- package/dist/node_modules/date-fns/_lib/addLeadingZeros.js.map +1 -0
- package/dist/node_modules/date-fns/_lib/defaultOptions.cjs +8 -0
- package/dist/node_modules/date-fns/_lib/defaultOptions.cjs.map +1 -0
- package/dist/node_modules/date-fns/_lib/defaultOptions.js +8 -0
- package/dist/node_modules/date-fns/_lib/defaultOptions.js.map +1 -0
- package/dist/node_modules/date-fns/_lib/format/formatters.cjs +653 -0
- package/dist/node_modules/date-fns/_lib/format/formatters.cjs.map +1 -0
- package/dist/node_modules/date-fns/_lib/format/formatters.js +653 -0
- package/dist/node_modules/date-fns/_lib/format/formatters.js.map +1 -0
- package/dist/node_modules/date-fns/_lib/format/lightFormatters.cjs +63 -0
- package/dist/node_modules/date-fns/_lib/format/lightFormatters.cjs.map +1 -0
- package/dist/node_modules/date-fns/_lib/format/lightFormatters.js +63 -0
- package/dist/node_modules/date-fns/_lib/format/lightFormatters.js.map +1 -0
- package/dist/node_modules/date-fns/_lib/format/longFormatters.cjs +59 -0
- package/dist/node_modules/date-fns/_lib/format/longFormatters.cjs.map +1 -0
- package/dist/node_modules/date-fns/_lib/format/longFormatters.js +59 -0
- package/dist/node_modules/date-fns/_lib/format/longFormatters.js.map +1 -0
- package/dist/node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.cjs +21 -0
- package/dist/node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.cjs.map +1 -0
- package/dist/node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.js +21 -0
- package/dist/node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.js.map +1 -0
- package/dist/node_modules/date-fns/_lib/normalizeDates.cjs +12 -0
- package/dist/node_modules/date-fns/_lib/normalizeDates.cjs.map +1 -0
- package/dist/node_modules/date-fns/_lib/normalizeDates.js +12 -0
- package/dist/node_modules/date-fns/_lib/normalizeDates.js.map +1 -0
- package/dist/node_modules/date-fns/_lib/protectedTokens.cjs +24 -0
- package/dist/node_modules/date-fns/_lib/protectedTokens.cjs.map +1 -0
- package/dist/node_modules/date-fns/_lib/protectedTokens.js +24 -0
- package/dist/node_modules/date-fns/_lib/protectedTokens.js.map +1 -0
- package/dist/node_modules/date-fns/constants.cjs +9 -0
- package/dist/node_modules/date-fns/constants.cjs.map +1 -0
- package/dist/node_modules/date-fns/constants.js +9 -0
- package/dist/node_modules/date-fns/constants.js.map +1 -0
- package/dist/node_modules/date-fns/constructFrom.cjs +13 -0
- package/dist/node_modules/date-fns/constructFrom.cjs.map +1 -0
- package/dist/node_modules/date-fns/constructFrom.js +13 -0
- package/dist/node_modules/date-fns/constructFrom.js.map +1 -0
- package/dist/node_modules/date-fns/differenceInCalendarDays.cjs +21 -0
- package/dist/node_modules/date-fns/differenceInCalendarDays.cjs.map +1 -0
- package/dist/node_modules/date-fns/differenceInCalendarDays.js +21 -0
- package/dist/node_modules/date-fns/differenceInCalendarDays.js.map +1 -0
- package/dist/node_modules/date-fns/format.cjs +80 -0
- package/dist/node_modules/date-fns/format.cjs.map +1 -0
- package/dist/node_modules/date-fns/format.js +80 -0
- package/dist/node_modules/date-fns/format.js.map +1 -0
- package/dist/node_modules/date-fns/getDayOfYear.cjs +14 -0
- package/dist/node_modules/date-fns/getDayOfYear.cjs.map +1 -0
- package/dist/node_modules/date-fns/getDayOfYear.js +14 -0
- package/dist/node_modules/date-fns/getDayOfYear.js.map +1 -0
- package/dist/node_modules/date-fns/getISOWeek.cjs +14 -0
- package/dist/node_modules/date-fns/getISOWeek.cjs.map +1 -0
- package/dist/node_modules/date-fns/getISOWeek.js +14 -0
- package/dist/node_modules/date-fns/getISOWeek.js.map +1 -0
- package/dist/node_modules/date-fns/getISOWeekYear.cjs +27 -0
- package/dist/node_modules/date-fns/getISOWeekYear.cjs.map +1 -0
- package/dist/node_modules/date-fns/getISOWeekYear.js +27 -0
- package/dist/node_modules/date-fns/getISOWeekYear.js.map +1 -0
- package/dist/node_modules/date-fns/getWeek.cjs +14 -0
- package/dist/node_modules/date-fns/getWeek.cjs.map +1 -0
- package/dist/node_modules/date-fns/getWeek.js +14 -0
- package/dist/node_modules/date-fns/getWeek.js.map +1 -0
- package/dist/node_modules/date-fns/getWeekYear.cjs +31 -0
- package/dist/node_modules/date-fns/getWeekYear.cjs.map +1 -0
- package/dist/node_modules/date-fns/getWeekYear.js +31 -0
- package/dist/node_modules/date-fns/getWeekYear.js.map +1 -0
- package/dist/node_modules/date-fns/isDate.cjs +8 -0
- package/dist/node_modules/date-fns/isDate.cjs.map +1 -0
- package/dist/node_modules/date-fns/isDate.js +8 -0
- package/dist/node_modules/date-fns/isDate.js.map +1 -0
- package/dist/node_modules/date-fns/isValid.cjs +10 -0
- package/dist/node_modules/date-fns/isValid.cjs.map +1 -0
- package/dist/node_modules/date-fns/isValid.js +10 -0
- package/dist/node_modules/date-fns/isValid.js.map +1 -0
- package/dist/node_modules/date-fns/locale/_lib/buildFormatLongFn.cjs +11 -0
- package/dist/node_modules/date-fns/locale/_lib/buildFormatLongFn.cjs.map +1 -0
- package/dist/node_modules/date-fns/locale/_lib/buildFormatLongFn.js +11 -0
- package/dist/node_modules/date-fns/locale/_lib/buildFormatLongFn.js.map +1 -0
- package/dist/node_modules/date-fns/locale/_lib/buildLocalizeFn.cjs +21 -0
- package/dist/node_modules/date-fns/locale/_lib/buildLocalizeFn.cjs.map +1 -0
- package/dist/node_modules/date-fns/locale/_lib/buildLocalizeFn.js +21 -0
- package/dist/node_modules/date-fns/locale/_lib/buildLocalizeFn.js.map +1 -0
- package/dist/node_modules/date-fns/locale/_lib/buildMatchFn.cjs +44 -0
- package/dist/node_modules/date-fns/locale/_lib/buildMatchFn.cjs.map +1 -0
- package/dist/node_modules/date-fns/locale/_lib/buildMatchFn.js +44 -0
- package/dist/node_modules/date-fns/locale/_lib/buildMatchFn.js.map +1 -0
- package/dist/node_modules/date-fns/locale/_lib/buildMatchPatternFn.cjs +17 -0
- package/dist/node_modules/date-fns/locale/_lib/buildMatchPatternFn.cjs.map +1 -0
- package/dist/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js +17 -0
- package/dist/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js.map +1 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/formatDistance.cjs +86 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/formatDistance.cjs.map +1 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/formatDistance.js +86 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/formatDistance.js.map +1 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/formatLong.cjs +37 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/formatLong.cjs.map +1 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/formatLong.js +37 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/formatLong.js.map +1 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/formatRelative.cjs +13 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/formatRelative.cjs.map +1 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/formatRelative.js +13 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/formatRelative.js.map +1 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/localize.cjs +165 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/localize.cjs.map +1 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/localize.js +165 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/localize.js.map +1 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/match.cjs +123 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/match.cjs.map +1 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/match.js +123 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/match.js.map +1 -0
- package/dist/node_modules/date-fns/locale/en-US.cjs +22 -0
- package/dist/node_modules/date-fns/locale/en-US.cjs.map +1 -0
- package/dist/node_modules/date-fns/locale/en-US.js +22 -0
- package/dist/node_modules/date-fns/locale/en-US.js.map +1 -0
- package/dist/node_modules/date-fns/startOfDay.cjs +11 -0
- package/dist/node_modules/date-fns/startOfDay.cjs.map +1 -0
- package/dist/node_modules/date-fns/startOfDay.js +11 -0
- package/dist/node_modules/date-fns/startOfDay.js.map +1 -0
- package/dist/node_modules/date-fns/startOfISOWeek.cjs +9 -0
- package/dist/node_modules/date-fns/startOfISOWeek.cjs.map +1 -0
- package/dist/node_modules/date-fns/startOfISOWeek.js +9 -0
- package/dist/node_modules/date-fns/startOfISOWeek.js.map +1 -0
- package/dist/node_modules/date-fns/startOfISOWeekYear.cjs +15 -0
- package/dist/node_modules/date-fns/startOfISOWeekYear.cjs.map +1 -0
- package/dist/node_modules/date-fns/startOfISOWeekYear.js +15 -0
- package/dist/node_modules/date-fns/startOfISOWeekYear.js.map +1 -0
- package/dist/node_modules/date-fns/startOfWeek.cjs +18 -0
- package/dist/node_modules/date-fns/startOfWeek.cjs.map +1 -0
- package/dist/node_modules/date-fns/startOfWeek.js +18 -0
- package/dist/node_modules/date-fns/startOfWeek.js.map +1 -0
- package/dist/node_modules/date-fns/startOfWeekYear.cjs +20 -0
- package/dist/node_modules/date-fns/startOfWeekYear.cjs.map +1 -0
- package/dist/node_modules/date-fns/startOfWeekYear.js +20 -0
- package/dist/node_modules/date-fns/startOfWeekYear.js.map +1 -0
- package/dist/node_modules/date-fns/startOfYear.cjs +12 -0
- package/dist/node_modules/date-fns/startOfYear.cjs.map +1 -0
- package/dist/node_modules/date-fns/startOfYear.js +12 -0
- package/dist/node_modules/date-fns/startOfYear.js.map +1 -0
- package/dist/node_modules/date-fns/toDate.cjs +9 -0
- package/dist/node_modules/date-fns/toDate.cjs.map +1 -0
- package/dist/node_modules/date-fns/toDate.js +9 -0
- package/dist/node_modules/date-fns/toDate.js.map +1 -0
- package/dist/notifications.server.cjs +552 -0
- package/dist/notifications.server.js +511 -621
- package/dist/orders.server.cjs +820 -0
- package/dist/orders.server.js +733 -838
- package/dist/organizations.server.cjs +1493 -0
- package/dist/organizations.server.js +1301 -1414
- package/dist/ownership.schema-CCZX5vfw.js +43 -0
- package/dist/ownership.schema-DCosqOc1.cjs +42 -0
- package/dist/pages.server.cjs +142 -0
- package/dist/pages.server.js +125 -160
- package/dist/products.server.cjs +2635 -0
- package/dist/products.server.js +2528 -1273
- package/dist/profile.schema-DchVS-Jr.js +21 -0
- package/dist/profile.schema-yQuIzngl.cjs +20 -0
- package/dist/queryProcessor-B_X680wC.cjs +332 -0
- package/dist/queryProcessor-CVcLPEnv.js +333 -0
- package/dist/rents.server.cjs +487 -0
- package/dist/rents.server.js +462 -480
- package/dist/reports.server.cjs +133 -0
- package/dist/reports.server.js +97 -150
- package/dist/spots.server.cjs +331 -0
- package/dist/spots.server.js +301 -349
- package/dist/style.css +854 -724
- package/dist/{tickets.controller-zEHIAe_B.js → tickets.controller-D0V0gJCA.cjs} +239 -263
- package/dist/{tickets.controller-BIhfgjNb.mjs → tickets.controller-DQQcjyui.js} +222 -263
- package/dist/wallet.server.cjs +528 -0
- package/dist/wallet.server.js +473 -666
- package/package.json +7 -6
- package/src/builder/builder.js +19 -14
- package/src/builder/modes/spa.dev.js +16 -39
- package/src/builder/modes/spa.prod.js +15 -26
- package/src/builder/modes/ssr.dev.js +123 -107
- package/src/builder/modes/ssr.prod.js +19 -38
- package/src/builder/modes/ssr.rspack.dev.js +70 -66
- package/src/builder/modes/ssr.vite.dev.js +45 -71
- package/src/builder/rspack/index.js +10 -8
- package/src/builder/rspack/rspack.config.api.js +59 -0
- package/src/builder/rspack/rspack.config.base.js +28 -11
- package/src/builder/rspack/{rspack.config.spa.js → rspack.config.spa.client.js} +21 -26
- package/src/builder/rspack/{rspack.config.client.js → rspack.config.ssr.client.js} +9 -13
- package/src/builder/rspack/{rspack.config.ssr.js → rspack.config.ssr.server.js} +22 -10
- package/src/builder/ssr/ssr-render-html.js +13 -12
- package/src/builder/ssr/ssr-transform-webpack-stats.js +37 -25
- package/src/builder/ssr/utils.js +7 -14
- package/src/builder/templates/page.js +2 -2
- package/src/builder/templates/screen.js +2 -2
- package/src/builder/utils/hot-reload.js +1 -1
- package/src/builder/vite/index.js +8 -8
- package/src/builder/vite/vite.config.base.js +37 -47
- package/src/builder/vite/vite.config.client.js +42 -64
- package/src/builder/vite/vite.config.server.js +14 -24
- package/src/builder/vite/vite.config.spa.js +37 -46
- package/src/builder/vite/vite.config.ssr.js +44 -60
- package/src/builder/webpack/index.js +7 -7
- package/src/builder/webpack/webpack.config.base.js +54 -39
- package/src/builder/webpack/webpack.config.client.js +36 -47
- package/src/builder/webpack/webpack.config.server.js +23 -17
- package/src/builder/webpack/webpack.config.spa.js +22 -28
- package/src/builder/webpack/webpack.config.ssr.js +33 -30
- package/src/components/Button/Button.vue +8 -3
- package/src/components/Chips/Chips.vue +1 -1
- package/src/components/Dropdown/Dropdown.vue +1 -1
- package/src/components/Feed/Feed.vue +156 -63
- package/src/components/Field/Field.vue +82 -75
- package/src/components/FieldPhone/FieldPhone.vue +2 -2
- package/src/components/FieldPhone/all-countries.js +247 -3
- package/src/components/FieldPhone/click-outside.js +1 -1
- package/src/components/FieldPhone/utils.js +263 -262
- package/src/components/FieldTags/FieldTags.vue +375 -25
- package/src/components/FieldTags/create-tags.js +15 -15
- package/src/components/FieldTags/vue-tags-input.props.js +2 -9
- package/src/components/Map/LoaderGMaps.js +4 -4
- package/src/components/Popup/Popup.vue +142 -89
- package/src/components/Select/Select.vue +2 -4
- package/src/components/SelectMulti/SelectMulti.vue +911 -656
- package/src/components/Table/Table.vue +21 -64
- package/src/components/UploadImageMultiple/UploadImageMultiple.vue +4 -4
- package/src/components/index.js +10 -10
- package/src/configurator/router/configurator.router.js +10 -8
- package/src/main.js +79 -80
- package/src/modules/auth/auth.client.js +17 -18
- package/src/modules/auth/auth.server.js +32 -42
- package/src/modules/auth/controllers/middlewares/authJwt.js +16 -34
- package/src/modules/auth/controllers/middlewares/authSecret.js +2 -8
- package/src/modules/auth/controllers/middlewares/index.js +15 -10
- package/src/modules/auth/controllers/middlewares/verifyInvites.js +13 -21
- package/src/modules/auth/controllers/middlewares/verifySignUp.js +7 -16
- package/src/modules/auth/controllers/middlewares/verifyUser.js +20 -31
- package/src/modules/auth/controllers/middlewares/visitor.logger.js +10 -23
- package/src/modules/auth/controllers/routes/auth.routes.js +9 -29
- package/src/modules/auth/controllers/routes/twofa.routes.js +6 -23
- package/src/modules/auth/controllers/routes/users.routes.js +8 -39
- package/src/modules/auth/controllers/services/auth.service.js +49 -82
- package/src/modules/auth/controllers/services/twofa.service.js +6 -13
- package/src/modules/auth/controllers/services/users.service.js +31 -70
- package/src/modules/auth/controllers/utils/verifyAppleIdToken.js +47 -54
- package/src/modules/auth/models/request.model.js +5 -9
- package/src/modules/auth/models/role.model.js +3 -7
- package/src/modules/auth/models/user.model.js +39 -41
- package/src/modules/auth/models/visitor.model.js +3 -6
- package/src/modules/auth/views/components/layouts/Auth.vue +1 -1
- package/src/modules/auth/views/components/pages/EnterCode.vue +3 -3
- package/src/modules/auth/views/components/pages/EnterPassword.vue +1 -1
- package/src/modules/auth/views/components/pages/Invite.vue +2 -2
- package/src/modules/auth/views/components/pages/Profile.vue +3 -3
- package/src/modules/auth/views/components/pages/ProfileBlogposts.vue +3 -3
- package/src/modules/auth/views/components/pages/ProfileEdit.vue +3 -3
- package/src/modules/auth/views/components/pages/ResetPassword.vue +3 -3
- package/src/modules/auth/views/components/pages/SignIn.vue +2 -2
- package/src/modules/auth/views/components/pages/SignUp.vue +3 -3
- package/src/modules/auth/views/components/sections/FeaturedUsers.vue +1 -1
- package/src/modules/auth/views/components/sections/ProfileEditCredentials.vue +2 -2
- package/src/modules/auth/views/localization/EnterCode.json +1 -1
- package/src/modules/auth/views/localization/EnterPassword.json +1 -1
- package/src/modules/auth/views/localization/ResetPassword.json +1 -1
- package/src/modules/auth/views/localization/SignUp.json +1 -1
- package/src/modules/auth/views/middlewares/auth.validation.js +16 -29
- package/src/modules/auth/views/middlewares/ownership.validation.js +9 -14
- package/src/modules/auth/views/router/auth.js +66 -77
- package/src/modules/auth/views/router/users.js +87 -89
- package/src/modules/auth/views/store/auth.js +41 -39
- package/src/modules/auth/views/store/twofa.js +44 -42
- package/src/modules/auth/views/store/users.js +22 -26
- package/src/modules/auth/views/validations/inputs.validation.js +53 -59
- package/src/modules/backoffice/backoffice.client.js +8 -8
- package/src/modules/backoffice/components/pages/Dashboard.vue +3 -3
- package/src/modules/backoffice/components/partials/Sidebar.vue +2 -2
- package/src/modules/backoffice/router/backoffice.js +49 -49
- package/src/modules/chats/chats.client.js +9 -9
- package/src/modules/chats/chats.server.js +18 -23
- package/src/modules/chats/controllers/chats.controller.js +8 -15
- package/src/modules/chats/models/chat.model.js +6 -9
- package/src/modules/chats/routes/chats.routes.js +12 -20
- package/src/modules/chats/store/chat.store.js +14 -11
- package/src/modules/community/community.client.js +13 -26
- package/src/modules/community/community.server.js +30 -35
- package/src/modules/community/components/blocks/FooterBlogpost.vue +1 -1
- package/src/modules/community/components/layouts/Community.vue +6 -4
- package/src/modules/community/components/pages/Blog.vue +1 -1
- package/src/modules/community/components/pages/BlogPost.vue +1 -1
- package/src/modules/community/components/pages/CreateBlogPost.vue +5 -5
- package/src/modules/community/components/sections/Comment.vue +2 -2
- package/src/modules/community/components/sections/HotPosts.vue +1 -1
- package/src/modules/community/controllers/blog.controller.js +103 -139
- package/src/modules/community/controllers/comments.controller.js +79 -124
- package/src/modules/community/controllers/reactions.controller.js +32 -59
- package/src/modules/community/controllers/utils/queryProcessor.js +13 -17
- package/src/modules/community/controllers/utils/queryProcessorReactions.js +28 -34
- package/src/modules/community/middlewares/server/index.js +7 -5
- package/src/modules/community/middlewares/server/verifyBlogpost.js +9 -14
- package/src/modules/community/models/blogpost.model.js +33 -34
- package/src/modules/community/models/comment.model.js +48 -50
- package/src/modules/community/models/reaction.model.js +48 -46
- package/src/modules/community/router/blogposts.js +52 -50
- package/src/modules/community/routes/blog.routes.js +15 -49
- package/src/modules/community/routes/comments.routes.js +14 -44
- package/src/modules/community/routes/reactions.routes.js +10 -43
- package/src/modules/community/store/blogposts.js +54 -59
- package/src/modules/community/store/reactions.js +9 -13
- package/src/modules/constructor/components/elements/Embed.vue +3 -3
- package/src/modules/constructor/components/elements/ImageUpload.vue +3 -3
- package/src/modules/core/classes/event.js +48 -0
- package/src/modules/core/classes/memory-tracker.js +1063 -0
- package/src/modules/{globals/views/core → core/classes}/module-manager.js +43 -46
- package/src/modules/{globals/views/core → core/classes}/module.js +52 -53
- package/src/modules/core/model/Adapter.js +17 -0
- package/src/modules/core/model/Adapter.mogodb.js +65 -0
- package/src/modules/core/model/Adapter.postgre.js +127 -0
- package/src/modules/core/model/Model.js +99 -0
- package/src/modules/core/model/Schema.js +70 -0
- package/src/modules/core/model/Validation.js +97 -0
- package/src/modules/events/components/elements/ButtonCheck.vue +1 -1
- package/src/modules/events/components/elements/ButtonJoin.vue +2 -2
- package/src/modules/events/components/pages/EditEvent.vue +5 -5
- package/src/modules/events/components/pages/EditEventTickets.vue +3 -3
- package/src/modules/events/components/pages/Event.vue +1 -2
- package/src/modules/events/components/pages/Events.vue +3 -3
- package/src/modules/events/components/pages/EventsBackoffice.vue +1 -1
- package/src/modules/events/components/pages/EventsSearch.vue +1 -1
- package/src/modules/events/components/sections/EventsHot.vue +1 -1
- package/src/modules/events/components/sections/FeaturedEvents.vue +1 -1
- package/src/modules/events/controllers/events.controller.js +90 -155
- package/src/modules/events/controllers/tickets.controller.js +157 -220
- package/src/modules/events/controllers/utils/queryProcessor.js +117 -123
- package/src/modules/events/controllers/utils/templateEmail.js +6 -7
- package/src/modules/events/controllers/utils/templateTicket.js +6 -7
- package/src/modules/events/events.client.js +22 -28
- package/src/modules/events/events.server.js +25 -32
- package/src/modules/events/middlewares/server/index.js +6 -5
- package/src/modules/events/middlewares/server/verifyEvent.js +29 -31
- package/src/modules/events/models/event.model.js +68 -70
- package/src/modules/events/models/ticket.model.js +55 -55
- package/src/modules/events/router/events.js +28 -38
- package/src/modules/events/routes/events.routes.js +15 -49
- package/src/modules/events/routes/tickets.routes.js +7 -21
- package/src/modules/events/store/events.js +41 -50
- package/src/modules/events/store/tickets.js +11 -14
- package/src/modules/files/controllers/files.controller.js +5 -17
- package/src/modules/files/files.server.js +13 -16
- package/src/modules/files/middlewares/server/index.js +7 -5
- package/src/modules/files/middlewares/server/middlewareBusboy.js +62 -123
- package/src/modules/files/routes/files.routes.js +11 -40
- package/src/modules/gallery/components/pages/Gallery.vue +1 -1
- package/src/modules/gallery/components/sections/BackofficeGallery.vue +3 -3
- package/src/modules/gallery/controllers/gallery.controller.js +27 -58
- package/src/modules/gallery/gallery.client.js +11 -11
- package/src/modules/gallery/gallery.server.js +18 -23
- package/src/modules/gallery/models/photo.model.js +27 -29
- package/src/modules/gallery/router/gallery.backoffice.router.js +14 -14
- package/src/modules/gallery/router/gallery.router.js +2 -2
- package/src/modules/gallery/routes/gallery.routes.js +12 -44
- package/src/modules/gallery/store/gallery.js +3 -3
- package/src/modules/globals/controllers/classes/abac/abac.adapter.express.js +194 -0
- package/src/modules/globals/controllers/classes/abac/abac.adapter.ws.js +84 -0
- package/src/modules/globals/controllers/classes/abac/abac.core.js +220 -0
- package/src/modules/globals/controllers/classes/abac/abac.fields.js +376 -0
- package/src/modules/globals/controllers/classes/abac/abac.js +104 -0
- package/src/modules/globals/controllers/classes/abac/abac.policies.js +226 -0
- package/src/modules/globals/controllers/classes/crud/crud.controller.js +314 -0
- package/src/modules/globals/controllers/classes/crud/crud.core.js +230 -0
- package/src/modules/globals/controllers/classes/crud/crud.events.js +209 -0
- package/src/modules/globals/controllers/classes/crud/crud.js +169 -0
- package/src/modules/globals/controllers/classes/crud/crud.policies.js +256 -0
- package/src/modules/globals/controllers/classes/crud/crud.service.js +285 -0
- package/src/modules/globals/controllers/classes/globals.abac.js +69 -120
- package/src/modules/globals/controllers/classes/globals.cache.js +2 -15
- package/src/modules/globals/controllers/classes/globals.crud.js +15 -43
- package/src/modules/globals/controllers/classes/globals.logger.js +2 -6
- package/src/modules/globals/controllers/classes/globals.observer.js +36 -43
- package/src/modules/globals/controllers/classes/globals.validator.js +62 -88
- package/src/modules/globals/controllers/classes/globals.verifier.js +144 -128
- package/src/modules/globals/controllers/classes/globals.webhook.js +1 -3
- package/src/modules/globals/controllers/classes/globals.websocket.js +29 -89
- package/src/modules/globals/controllers/classes/globals.websocket.ws.js +6 -28
- package/src/modules/globals/controllers/policies/globals.policies.js +33 -50
- package/src/modules/globals/controllers/utils/mailing.js +26 -34
- package/src/modules/globals/controllers/utils/parseCookie.js +2 -5
- package/src/modules/globals/controllers/utils/queryProcessor.js +188 -127
- package/src/modules/globals/controllers/utils/seo-friendly-url.js +195 -48
- package/src/modules/globals/controllers/utils/sitemap.js +14 -20
- package/src/modules/globals/globals.client.js +55 -53
- package/src/modules/globals/globals.server.js +22 -14
- package/src/modules/globals/models/schemas/common.schema.js +4 -4
- package/src/modules/globals/models/schemas/credentials.schema.js +3 -3
- package/src/modules/globals/models/schemas/engagement.schema.js +6 -16
- package/src/modules/globals/models/schemas/metadata.schema.js +16 -20
- package/src/modules/globals/models/schemas/ownership.schema.js +16 -13
- package/src/modules/globals/models/schemas/profile.schema.js +6 -7
- package/src/modules/globals/models/schemas/socials.schema.js +9 -9
- package/src/modules/globals/views/classes/globals.store.js +25 -22
- package/src/modules/globals/views/classes/globals.websocket.js +16 -16
- package/src/modules/globals/views/classes/globals.websocket.ws.js +1 -1
- package/src/modules/globals/views/classes/store.js +18 -19
- package/src/modules/globals/views/components/blocks/BlockMultiselect.vue +364 -0
- package/src/modules/globals/views/components/blocks/Card.vue +75 -46
- package/src/modules/globals/views/components/blocks/CardFooter.vue +1 -1
- package/src/modules/globals/views/components/blocks/CardHeader.vue +0 -1
- package/src/modules/globals/views/components/elements/ButtonDate.vue +2 -2
- package/src/modules/globals/views/components/layouts/App.vue +2 -2
- package/src/modules/globals/views/components/layouts/Client.vue +2 -2
- package/src/modules/globals/views/components/partials/BottomNavigationBar.vue +1 -1
- package/src/modules/globals/views/components/partials/Footer.vue +1 -1
- package/src/modules/globals/views/components/partials/Header.vue +3 -3
- package/src/modules/globals/views/components/partials/LocationSelection.vue +1 -1
- package/src/modules/globals/views/components/partials/Navigation.vue +11 -19
- package/src/modules/globals/views/components/partials/NavigationBar.vue +3 -3
- package/src/modules/globals/views/components/partials/Sidebar.vue +1 -1
- package/src/modules/globals/views/localization/get-browser-locale.js +7 -12
- package/src/modules/globals/views/middlewares/localization.js +3 -6
- package/src/modules/globals/views/mixins/mixins.js +152 -134
- package/src/modules/globals/views/plugins/alert.plugin.js +28 -28
- package/src/modules/globals/views/plugins/date-picker.plugin.js +85 -0
- package/src/modules/globals/views/plugins/store-debugger/StoreDebugger.vue +284 -0
- package/src/modules/globals/views/plugins/store-debugger/store-debugger.plugin.js +24 -0
- package/src/modules/globals/views/router/addRoutes.js +15 -17
- package/src/modules/globals/views/router/scrollBehavior.js +17 -13
- package/src/modules/globals/views/store/globals.js +64 -78
- package/src/modules/globals/views/utils/axios-instance.js +1 -1
- package/src/modules/globals/views/utils/vue-app-renderer.js +23 -26
- package/src/modules/governance/controllers/factories/initiatives.controller.js +23 -29
- package/src/modules/governance/controllers/factories/tasks.controller.js +21 -27
- package/src/modules/governance/controllers/factories/votes.controller.js +17 -21
- package/src/modules/governance/controllers/factories/votings.controller.js +25 -32
- package/src/modules/governance/controllers/routes/initiatives.routes.js +10 -12
- package/src/modules/governance/controllers/routes/tasks.routes.js +10 -12
- package/src/modules/governance/controllers/routes/votes.routes.js +8 -10
- package/src/modules/governance/controllers/routes/votings.routes.js +11 -13
- package/src/modules/governance/governance.client.js +7 -7
- package/src/modules/governance/governance.server.js +36 -39
- package/src/modules/governance/models/initiative.model.js +26 -22
- package/src/modules/governance/models/milestone.model.js +86 -82
- package/src/modules/governance/models/task.model.js +48 -45
- package/src/modules/governance/models/vote.model.js +18 -16
- package/src/modules/governance/models/voting.model.js +23 -19
- package/src/modules/governance/views/router/goverance.router.js +56 -80
- package/src/modules/governance/views/store/initiatives.js +8 -11
- package/src/modules/governance/views/store/projects.js +57 -66
- package/src/modules/governance/views/store/tasks.js +9 -14
- package/src/modules/governance/views/store/votes.js +8 -13
- package/src/modules/governance/views/store/votings.js +7 -11
- package/src/modules/icons/actions/IconDuplicate.vue +17 -0
- package/src/modules/icons/entities/IconDiscount.vue +23 -0
- package/src/modules/icons/entities/IconSettings.vue +32 -0
- package/src/modules/icons/icons.client.js +118 -96
- package/src/modules/icons/pages/IconsPage.vue +300 -0
- package/src/modules/icons/router/icons.router.js +34 -0
- package/src/modules/integrations/integrations.service.js +34 -91
- package/src/modules/integrations/openai/openai.globals.js +116 -0
- package/src/modules/integrations/paypal/controllers/webhooks/paypal.webhook.js +15 -19
- package/src/modules/integrations/stripe/controllers/services/stripe.service.js +241 -285
- package/src/modules/integrations/stripe/controllers/webhooks/stripe.webhook.js +8 -17
- package/src/modules/integrations/tinkoff/controllers/services/tinkoff.service.js +111 -119
- package/src/modules/integrations/tinkoff/models/tinkoff.payment.model.js +12 -13
- package/src/modules/inventory/inventory.server.js +23 -0
- package/src/modules/inventory/models/stock.adjustment.model.js +63 -0
- package/src/modules/inventory/models/stock.availability.model.js +56 -0
- package/src/modules/inventory/models/stock.balance.model.js +43 -0
- package/src/modules/inventory/models/stock.inventory.model.js +38 -0
- package/src/modules/inventory/policies/inventory.policies.js +47 -0
- package/src/modules/inventory/routes/inventory.routes.js +61 -0
- package/src/modules/inventory/services/inventory.crud.js +527 -0
- package/src/modules/inventory/services/inventory.verifier.js +81 -0
- package/src/modules/inventory/store/ inventory.store.js +131 -0
- package/src/modules/inventory/workers/inventory.availability.worker.js +300 -0
- package/src/modules/landing/landing.client.js +16 -16
- package/src/modules/marketplace/marketplace.client.js +12 -13
- package/src/modules/marketplace/views/components/layouts/Marketplace.vue +2 -2
- package/src/modules/marketplace/views/components/pages/Catalog.vue +2 -2
- package/src/modules/marketplace/views/components/sections/SectionMenu.vue +2 -2
- package/src/modules/marketplace/views/router/marketplace.router.js +9 -11
- package/src/modules/marketplace/views/store/marketplace.js +33 -29
- package/src/modules/music/components/cards/ArtistCard.vue +62 -15
- package/src/modules/music/components/lists/ArtistList.vue +267 -12
- package/src/modules/music/components/pages/ArtistDetail.vue +375 -189
- package/src/modules/music/components/pages/ArtistForm.vue +426 -0
- package/src/modules/music/components/pages/ArtistManager.vue +277 -0
- package/src/modules/music/components/pages/MusicLibrary.vue +5 -8
- package/src/modules/music/controllers/album.controller.js +15 -31
- package/src/modules/music/controllers/artist.controller.js +29 -41
- package/src/modules/music/controllers/genre.controller.js +23 -31
- package/src/modules/music/controllers/music.controller.js +28 -57
- package/src/modules/music/controllers/playlist.controller.js +20 -56
- package/src/modules/music/controllers/search.controller.js +37 -62
- package/src/modules/music/controllers/stream.controller.js +16 -32
- package/src/modules/music/models/album.model.js +54 -51
- package/src/modules/music/models/artist.model.js +50 -52
- package/src/modules/music/models/genre.model.js +27 -31
- package/src/modules/music/models/play-history.model.js +41 -42
- package/src/modules/music/models/playlist.model.js +54 -54
- package/src/modules/music/models/track.model.js +65 -69
- package/src/modules/music/music.client.js +55 -52
- package/src/modules/music/music.server.js +62 -77
- package/src/modules/music/policies/music.policies.js +9 -29
- package/src/modules/music/router/music.js +38 -19
- package/src/modules/music/routes/album.routes.js +21 -55
- package/src/modules/music/routes/artist.routes.js +22 -59
- package/src/modules/music/routes/genre.routes.js +21 -53
- package/src/modules/music/routes/music.routes.js +74 -113
- package/src/modules/music/routes/playlist.routes.js +36 -88
- package/src/modules/music/routes/search.routes.js +5 -9
- package/src/modules/music/routes/stream.routes.js +23 -34
- package/src/modules/music/store/albums.js +34 -34
- package/src/modules/music/store/artists.js +31 -28
- package/src/modules/music/store/player.js +71 -73
- package/src/modules/music/store/playlists.js +37 -37
- package/src/modules/music/store/search.js +25 -25
- package/src/modules/music/store/tracks.js +40 -45
- package/src/modules/music/websocket/streaming.handler.js +58 -76
- package/src/modules/notifications/components/elements/NotificationBadge.vue +1 -1
- package/src/modules/notifications/components/sections/NotificationsList.vue +1 -1
- package/src/modules/notifications/controllers/notifications.controller.js +32 -62
- package/src/modules/notifications/middlewares/notifications.abac.js +1 -5
- package/src/modules/notifications/models/notification-log.model.js +8 -5
- package/src/modules/notifications/models/notification-preference.model.js +8 -6
- package/src/modules/notifications/models/notification.model.js +2 -3
- package/src/modules/notifications/models/user-device.model.js +3 -5
- package/src/modules/notifications/notifications.client.js +65 -75
- package/src/modules/notifications/notifications.server.js +31 -44
- package/src/modules/notifications/router/notifications.router.js +8 -8
- package/src/modules/notifications/routes/notifications.routes.js +4 -11
- package/src/modules/notifications/services/apns.service.js +4 -13
- package/src/modules/notifications/services/email.service.js +4 -8
- package/src/modules/notifications/services/fcm.service.js +4 -11
- package/src/modules/notifications/services/notification.service.js +49 -84
- package/src/modules/notifications/services/sms.service.js +4 -7
- package/src/modules/notifications/services/telegram.service.js +4 -7
- package/src/modules/notifications/services/web-push.service.js +14 -23
- package/src/modules/notifications/services/whatsapp.service.js +4 -11
- package/src/modules/notifications/store/notifications.store.js +50 -55
- package/src/modules/orders/components/pages/OrderBackoffice.vue +5 -5
- package/src/modules/orders/components/pages/OrderCreate.vue +6 -6
- package/src/modules/orders/components/pages/OrderCreateBackoffice.vue +5 -5
- package/src/modules/orders/components/pages/Orders.vue +2 -2
- package/src/modules/orders/components/partials/ShopCart.vue +3 -3
- package/src/modules/orders/components/sections/FormAddCustomer.vue +5 -5
- package/src/modules/orders/components/sections/FormDelivery.vue +2 -2
- package/src/modules/orders/controllers/applications.controller.js +37 -67
- package/src/modules/orders/controllers/orders.controller.js +96 -155
- package/src/modules/orders/controllers/testimonials.controller.js +22 -31
- package/src/modules/orders/models/application.model.js +25 -24
- package/src/modules/orders/models/customer.model.js +61 -55
- package/src/modules/orders/models/order.model.js +80 -81
- package/src/modules/orders/models/testimonial.model.js +7 -9
- package/src/modules/orders/orders.client.js +24 -26
- package/src/modules/orders/orders.server.js +27 -32
- package/src/modules/orders/router/orders.router.js +21 -22
- package/src/modules/orders/routes/applications.routes.js +10 -40
- package/src/modules/orders/routes/orders.routes.js +8 -19
- package/src/modules/orders/routes/testimonials.routes.js +9 -29
- package/src/modules/orders/store/applications.js +34 -39
- package/src/modules/orders/store/customers.store.js +3 -3
- package/src/modules/orders/store/models/customer.js +5 -5
- package/src/modules/orders/store/models/order.js +4 -4
- package/src/modules/orders/store/orders.js +61 -76
- package/src/modules/orders/store/shopcart.js +150 -98
- package/src/modules/orders/store/testimonials.js +7 -10
- package/src/modules/organizations/components/elements/ButtonToggleMembership.vue +2 -2
- package/src/modules/organizations/components/pages/Department.vue +1 -1
- package/src/modules/organizations/components/pages/DepartmentEdit.vue +3 -3
- package/src/modules/organizations/components/pages/Members.vue +6 -6
- package/src/modules/organizations/components/pages/Organization.vue +9 -9
- package/src/modules/organizations/components/pages/OrganizationBackoffice.vue +2 -2
- package/src/modules/organizations/components/pages/OrganizationCreate.vue +2 -2
- package/src/modules/organizations/components/pages/OrganizationDetails.vue +2 -2
- package/src/modules/organizations/components/pages/OrganizationEdit.vue +3 -3
- package/src/modules/organizations/components/pages/OrganizationPeople.vue +1 -1
- package/src/modules/organizations/components/pages/Organizations.vue +2 -2
- package/src/modules/organizations/components/sections/DetailsTabSection.vue +2 -2
- package/src/modules/organizations/components/sections/MembersAdd.vue +1 -1
- package/src/modules/organizations/components/sections/Organizations.vue +3 -3
- package/src/modules/organizations/components/sections/Publics.vue +3 -3
- package/src/modules/organizations/configs/navigation.organization.config.js +227 -0
- package/src/modules/organizations/controllers/departments.controller.js +11 -22
- package/src/modules/organizations/controllers/invites.controller.js +14 -30
- package/src/modules/organizations/controllers/memberships.controller.js +21 -54
- package/src/modules/organizations/controllers/organizations.controller.js +32 -83
- package/src/modules/organizations/controllers/utils/addMembersQuantity.js +11 -12
- package/src/modules/organizations/controllers/utils/addUserStatusFields.js +31 -41
- package/src/modules/organizations/controllers/utils/lookupConfigs.js +31 -31
- package/src/modules/organizations/controllers/utils/queryProcessor.js +40 -51
- package/src/modules/organizations/controllers/utils/queryProcessorOrganizations.js +124 -147
- package/src/modules/organizations/middlewares/verifyAccesses.js +7 -25
- package/src/modules/organizations/middlewares/verifyAccessesRefactored.js +26 -51
- package/src/modules/organizations/models/department.model.js +58 -59
- package/src/modules/organizations/models/invite.model.js +45 -42
- package/src/modules/organizations/models/membership.model.js +35 -35
- package/src/modules/organizations/models/organization.model.js +65 -80
- package/src/modules/organizations/models/schemas/accesses.schema.js +1 -2
- package/src/modules/organizations/organizations.client.js +45 -46
- package/src/modules/organizations/organizations.server.js +40 -41
- package/src/modules/organizations/policies/organizations.policies.js +193 -85
- package/src/modules/organizations/router/backoffice.router.js +22 -20
- package/src/modules/organizations/router/departments.router.js +27 -23
- package/src/modules/organizations/router/members.router.js +18 -18
- package/src/modules/organizations/router/organizations.js +74 -66
- package/src/modules/organizations/routes/departments.routes.js +9 -20
- package/src/modules/organizations/routes/invites.routes.js +9 -31
- package/src/modules/organizations/routes/memberships.routes.js +7 -23
- package/src/modules/organizations/routes/organizations.routes.js +15 -40
- package/src/modules/organizations/store/departments.js +13 -14
- package/src/modules/organizations/store/invites.js +38 -41
- package/src/modules/organizations/store/memberships.js +21 -26
- package/src/modules/organizations/store/organizations.js +40 -46
- package/src/modules/pages/controllers/factories/pages.factory.js +6 -27
- package/src/modules/pages/controllers/routes/pages.routes.js +7 -23
- package/src/modules/pages/models/page.model.js +22 -20
- package/src/modules/pages/pages.client.js +12 -12
- package/src/modules/pages/pages.server.js +18 -21
- package/src/modules/pages/views/components/pages/Page.vue +1 -1
- package/src/modules/pages/views/components/pages/Pages.vue +1 -1
- package/src/modules/pages/views/components/partials/SidebarPages.vue +1 -1
- package/src/modules/pages/views/router/pages.backoffice.router.js +29 -29
- package/src/modules/pages/views/router/pages.router.js +16 -14
- package/src/modules/pages/views/store/pages.js +12 -11
- package/src/modules/pages/views/store/pages.store.js +3 -3
- package/src/modules/products/components/blocks/CardLeftover.vue +1 -1
- package/src/modules/products/components/blocks/CardPosition.vue +94 -157
- package/src/modules/products/components/blocks/CardProduct.vue +5 -5
- package/src/modules/products/components/blocks/ProductDiscounts.vue +141 -0
- package/src/modules/products/components/blocks/{ImagesThumbnails.vue → ProductImages.vue} +3 -4
- package/src/modules/products/components/blocks/ProductVariants.vue +125 -0
- package/src/modules/products/components/elements/Price.vue +34 -37
- package/src/modules/products/components/elements/QuantitySelector.vue +52 -0
- package/src/modules/products/components/elements/THC.vue +6 -6
- package/src/modules/products/components/forms/ColumnSettingsMenu.vue +80 -0
- package/src/modules/products/components/forms/ReorderSettingsForm.vue +107 -0
- package/src/modules/products/components/forms/StockAuditForm.vue +154 -0
- package/src/modules/products/components/forms/StockHistoryView.vue +134 -0
- package/src/modules/products/components/pages/Categories.vue +5 -5
- package/src/modules/products/components/pages/CategoryEdit.vue +8 -44
- package/src/modules/products/components/pages/LeftoverEdit.vue +360 -0
- package/src/modules/products/components/pages/Leftovers.vue +288 -131
- package/src/modules/products/components/pages/Product.vue +171 -100
- package/src/modules/products/components/pages/ProductEdit.vue +329 -461
- package/src/modules/products/components/pages/ProductRecommmendation.vue +2 -2
- package/src/modules/products/components/pages/Products.vue +7 -7
- package/src/modules/products/components/sections/EditAttributes.vue +154 -0
- package/src/modules/products/components/sections/EditCategories.vue +149 -0
- package/src/modules/products/components/sections/EditDiscounts.vue +308 -0
- package/src/modules/products/components/sections/EditIngredients.vue +130 -0
- package/src/modules/products/components/sections/EditVariants.vue +453 -0
- package/src/modules/products/components/sections/FilterProducts.vue +4 -4
- package/src/modules/products/components/sections/HeroRecommendation.vue +1 -1
- package/src/modules/products/components/sections/PopularProducts.vue +2 -2
- package/src/modules/products/components/sections/ProductConfigurator.vue +131 -0
- package/src/modules/products/components/sections/SectionProduct.vue +17 -17
- package/src/modules/products/controllers/categories.controller.js +45 -143
- package/src/modules/products/controllers/configs/products.lookup.config.js +135 -0
- package/src/modules/products/controllers/leftovers.controller.js +38 -62
- package/src/modules/products/controllers/products.controller.js +103 -364
- package/src/modules/products/controllers/queries/products.queries.js +112 -0
- package/src/modules/products/middlewares/categories.verifier.js +94 -72
- package/src/modules/products/middlewares/variants.verifier.js +226 -0
- package/src/modules/products/models/category.model.js +26 -22
- package/src/modules/products/models/leftover.model.js +61 -44
- package/src/modules/products/models/product.model.js +54 -119
- package/src/modules/products/models/schemas/discount.schema.js +33 -0
- package/src/modules/products/models/schemas/ingredient.schema.js +46 -0
- package/src/modules/products/models/variant.model.js +66 -0
- package/src/modules/products/products.client.js +31 -41
- package/src/modules/products/products.server.js +34 -35
- package/src/modules/products/router/categories.router.js +34 -30
- package/src/modules/products/router/leftovers.router.js +32 -30
- package/src/modules/products/router/products.router.js +18 -21
- package/src/modules/products/routes/categories.routes.js +13 -52
- package/src/modules/products/routes/leftovers.routes.js +9 -27
- package/src/modules/products/routes/products.routes.js +8 -27
- package/src/modules/products/routes/variants.routes.js +102 -0
- package/src/modules/products/store/categories.js +24 -23
- package/src/modules/products/store/leftovers.js +53 -17
- package/src/modules/products/store/products.js +73 -125
- package/src/modules/products/store/variants.store.js +5 -0
- package/src/modules/rents/controllers/routes/rents.routes.js +12 -21
- package/src/modules/rents/controllers/services/rents.services.js +183 -239
- package/src/modules/rents/models/rent.model.js +27 -17
- package/src/modules/rents/rents.client.js +5 -10
- package/src/modules/rents/rents.server.js +15 -21
- package/src/modules/rents/views/components/pages/RentsEdit.vue +2 -2
- package/src/modules/rents/views/router/rents.router.js +11 -20
- package/src/modules/rents/views/store/rents.store.js +33 -33
- package/src/modules/reports/components/sections/FormReport.vue +1 -1
- package/src/modules/reports/controllers/reports.controller.js +17 -26
- package/src/modules/reports/models/report.model.js +39 -56
- package/src/modules/reports/reports.client.js +8 -8
- package/src/modules/reports/reports.server.js +17 -22
- package/src/modules/reports/routes/reports.routes.js +7 -28
- package/src/modules/reports/store/reports.js +15 -17
- package/src/modules/spots/components/blocks/CardSpot.vue +73 -58
- package/src/modules/spots/components/layouts/Spots.vue +3 -3
- package/src/modules/spots/components/pages/Map.vue +3 -3
- package/src/modules/spots/components/pages/SpotEdit.vue +1 -1
- package/src/modules/spots/controllers/queries/getIsOpenNowStage.js +49 -65
- package/src/modules/spots/controllers/spots.controller.js +25 -43
- package/src/modules/spots/models/spot.model.js +45 -52
- package/src/modules/spots/router/spots.js +22 -26
- package/src/modules/spots/routes/spots.routes.js +8 -16
- package/src/modules/spots/spots.client.js +6 -6
- package/src/modules/spots/spots.server.js +17 -20
- package/src/modules/spots/store/spots.js +11 -14
- package/src/modules/wallet/controllers/factories/payments.factory.js +15 -42
- package/src/modules/wallet/controllers/factories/rewards.factory.js +56 -134
- package/src/modules/wallet/controllers/routes/payments.routes.js +45 -80
- package/src/modules/wallet/controllers/routes/rewards.routes.js +10 -50
- package/src/modules/wallet/models/payment.model.js +26 -27
- package/src/modules/wallet/models/reward.model.js +3 -4
- package/src/modules/wallet/models/wallet.model.js +10 -9
- package/src/modules/wallet/views/router/payments.router.js +24 -23
- package/src/modules/wallet/views/store/payments.store.js +6 -6
- package/src/modules/wallet/views/store/wallet.store.js +28 -35
- package/src/modules/wallet/wallet.server.js +25 -27
- package/src/styles/typography.scss +24 -0
- package/dist/Media-DmnrxIEI.js +0 -1
- package/dist/_commonjsHelpers-CUmg6egw.mjs +0 -6
- package/dist/_commonjsHelpers-DHfMLFPC.js +0 -5
- package/dist/addMembersQuantity-DBfuUEx_.mjs +0 -113
- package/dist/addMembersQuantity-DxWjHK1K.js +0 -112
- package/dist/auth.server.mjs +0 -764
- package/dist/authJwt-CELQKF2s.js +0 -82
- package/dist/authJwt-DnXu3BFq.mjs +0 -83
- package/dist/builder.mjs +0 -1502
- package/dist/chats.server.mjs +0 -137
- package/dist/common.schema-C2m3O1XY.mjs +0 -20
- package/dist/common.schema-O0w_rDyC.js +0 -19
- package/dist/community.server.mjs +0 -1068
- package/dist/credentials.schema-BmOPv6FD.js +0 -16
- package/dist/credentials.schema-oOC8B5KL.mjs +0 -17
- package/dist/engagement.schema-DAiXsvh1.js +0 -33
- package/dist/engagement.schema-DnDD7Bn3.mjs +0 -34
- package/dist/events.server.mjs +0 -1060
- package/dist/files.server.mjs +0 -339
- package/dist/gallery.server.mjs +0 -337
- package/dist/globals.abac-Bn-4tbX8.js +0 -303
- package/dist/globals.abac-DZpTRxKR.mjs +0 -304
- package/dist/globals.cache-BT6q3vOf.mjs +0 -140
- package/dist/globals.cache-CwWvNGFQ.js +0 -139
- package/dist/globals.logger-BdjooLaD.js +0 -34
- package/dist/globals.logger-DusiFsxN.mjs +0 -35
- package/dist/globals.server.mjs +0 -453
- package/dist/globals.verifier-BdJxc8-8.mjs +0 -609
- package/dist/globals.verifier-CKYpYfQl.js +0 -608
- package/dist/index-BOmxJQ5W.js +0 -205
- package/dist/index-C_Fw0Umg.mjs +0 -206
- package/dist/mailing-D4kWlk3_.js +0 -93
- package/dist/mailing-DvCT5ijo.mjs +0 -94
- package/dist/main-DxWqDgs1.js +0 -11
- package/dist/martyrs/src/components/Chips/Chips.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Chips/Chips.vue.js.map +0 -1
- package/dist/martyrs/src/components/Dropdown/Dropdown.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Dropdown/Dropdown.vue.js.map +0 -1
- package/dist/martyrs/src/components/FieldTags/vue-tags-input.cjs +0 -292
- package/dist/martyrs/src/components/FieldTags/vue-tags-input.cjs.map +0 -1
- package/dist/martyrs/src/components/FieldTags/vue-tags-input.js +0 -292
- package/dist/martyrs/src/components/FieldTags/vue-tags-input.js.map +0 -1
- package/dist/martyrs/src/components/Menu/Menu.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Menu/Menu.vue.js.map +0 -1
- package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue.cjs +0 -450
- package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue.js +0 -450
- package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue.js.map +0 -1
- package/dist/martyrs/src/components/SelectMulti/multiselectMixin.cjs +0 -633
- package/dist/martyrs/src/components/SelectMulti/multiselectMixin.cjs.map +0 -1
- package/dist/martyrs/src/components/SelectMulti/multiselectMixin.js +0 -633
- package/dist/martyrs/src/components/SelectMulti/multiselectMixin.js.map +0 -1
- package/dist/martyrs/src/components/SelectMulti/pointerMixin.cjs +0 -117
- package/dist/martyrs/src/components/SelectMulti/pointerMixin.cjs.map +0 -1
- package/dist/martyrs/src/components/SelectMulti/pointerMixin.js +0 -117
- package/dist/martyrs/src/components/SelectMulti/pointerMixin.js.map +0 -1
- package/dist/martyrs/src/components/Table/TableCell.vue.cjs +0 -59
- package/dist/martyrs/src/components/Table/TableCell.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Table/TableCell.vue.js +0 -59
- package/dist/martyrs/src/components/Table/TableCell.vue.js.map +0 -1
- package/dist/martyrs/src/components/Tooltip/Tooltip.vue.js.map +0 -1
- package/dist/martyrs/src/modules/globals/views/plugins/AlertDialog.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/globals/views/plugins/AlertDialog.vue.js.map +0 -1
- package/dist/martyrs/src/modules/products/components/blocks/ImagesThumbnails.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/blocks/ImagesThumbnails.vue.js.map +0 -1
- package/dist/martyrs/src/modules/products/components/blocks/LeftoverPositions.vue.cjs +0 -65
- package/dist/martyrs/src/modules/products/components/blocks/LeftoverPositions.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/blocks/LeftoverPositions.vue.js +0 -65
- package/dist/martyrs/src/modules/products/components/blocks/LeftoverPositions.vue.js.map +0 -1
- package/dist/martyrs/src/modules/products/components/blocks/ListPositions.vue.cjs +0 -49
- package/dist/martyrs/src/modules/products/components/blocks/ListPositions.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/blocks/ListPositions.vue.js +0 -49
- package/dist/martyrs/src/modules/products/components/blocks/ListPositions.vue.js.map +0 -1
- package/dist/martyrs/src/modules/products/components/pages/EditLeftover.vue.cjs +0 -237
- package/dist/martyrs/src/modules/products/components/pages/EditLeftover.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/pages/EditLeftover.vue.js +0 -237
- package/dist/martyrs/src/modules/products/components/pages/EditLeftover.vue.js.map +0 -1
- package/dist/martyrs/src/modules/products/components/sections/EditModifications.vue.cjs +0 -152
- package/dist/martyrs/src/modules/products/components/sections/EditModifications.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/sections/EditModifications.vue.js +0 -152
- package/dist/martyrs/src/modules/products/components/sections/EditModifications.vue.js.map +0 -1
- package/dist/martyrs/src/modules/products/components/sections/EditProductInfo.vue.cjs +0 -120
- package/dist/martyrs/src/modules/products/components/sections/EditProductInfo.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/sections/EditProductInfo.vue.js +0 -120
- package/dist/martyrs/src/modules/products/components/sections/EditProductInfo.vue.js.map +0 -1
- package/dist/metadata.schema--tle-GU8.mjs +0 -282
- package/dist/metadata.schema-CUkLXZ2f.js +0 -281
- package/dist/notifications.server.mjs +0 -663
- package/dist/orders.server.mjs +0 -926
- package/dist/organizations.server.mjs +0 -1590
- package/dist/ownership.schema-CNCotD3D.mjs +0 -50
- package/dist/ownership.schema-MxfJlPtq.js +0 -49
- package/dist/pages.server.mjs +0 -178
- package/dist/products.server.mjs +0 -1381
- package/dist/profile.schema-BLSuV_VC.js +0 -27
- package/dist/profile.schema-BRuvQ7QV.mjs +0 -28
- package/dist/queryProcessor-CVKI651_.mjs +0 -314
- package/dist/queryProcessor-DSUqSk3I.js +0 -313
- package/dist/rents.server.mjs +0 -506
- package/dist/reports.server.mjs +0 -187
- package/dist/spots.server.mjs +0 -380
- package/dist/wallet.server.mjs +0 -705
- package/src/builder/rspack/rspack.config.server.js +0 -30
- package/src/components/FieldTags/vue-tags-input.js +0 -424
- package/src/components/SelectMulti/index.js +0 -7
- package/src/components/SelectMulti/multiselectMixin.js +0 -725
- package/src/components/SelectMulti/pointerMixin.js +0 -143
- package/src/modules/globals/views/core/event.js +0 -48
- package/src/modules/icons/logos/LogotypeNunito.vue +0 -12
- package/src/modules/integrations/openai/controllers/openai.controller.js +0 -89
- package/src/modules/products/components/blocks/EditFilters.vue +0 -56
- package/src/modules/products/components/blocks/LeftoverPositions.vue +0 -99
- package/src/modules/products/components/blocks/ListPositions.vue +0 -74
- package/src/modules/products/components/pages/EditLeftover.vue +0 -288
- package/src/modules/products/components/pages/Product.old.vue +0 -201
- package/src/modules/products/components/sections/EditModifications.vue +0 -92
- package/src/modules/products/components/sections/EditProductInfo.vue +0 -106
- package/src/modules/products/controllers/modifications.controller.js +0 -66
- /package/src/modules/globals/views/{plugins → components/blocks}/AlertDialog.vue +0 -0
- /package/src/modules/products/components/{blocks/Images360.vue → elements/Image360.vue} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Field.vue.js","sources":["../../../../../src/components/Field/Field.vue"],"sourcesContent":["<script setup>\
|
|
1
|
+
{"version":3,"file":"Field.vue.js","sources":["../../../../../src/components/Field/Field.vue"],"sourcesContent":["<script setup>\nimport { ref, onMounted, nextTick, watch } from 'vue'\nconst emit = defineEmits(['update:field', 'focus', 'blur']);\nconst props = defineProps({\n label: null,\n symbol: null,\n type: 'text',\n placeholder: 'Enter something here',\n field: null,\n value: null,\n validation: false,\n disabled: null,\n tabindex: -1,\n autofocus: false\n});\nif (props.value) {\n emit('update:field', props.value)\n}\nconst textarea = ref(null);\nconst input = ref(null);\n\nfunction resize() {\n if (!textarea.value) {\n textarea.value.style.height = '';\n return;\n }\n \n const el = textarea.value;\n \n // Сначала сбрасываем высоту для правильного расчета scrollHeight\n el.style.height = '';\n \n const scrollHeight = el.scrollHeight;\n \n // Теперь устанавливаем высоту на основе scrollHeight\n if (scrollHeight > 33) {\n el.style.height = scrollHeight + 'px';\n } else {\n el.style.height = '';\n }\n}\n\n\nfunction focus() {\n if (props.autofocus) {\n if (props.type === 'textarea' && textarea.value) {\n textarea.value.focus();\n } else if (input.value) {\n input.value.focus();\n }\n }\n}\n\n// Следим за изменениями поля\nwatch(() => props.field, () => {\n if (props.type === 'textarea') {\n nextTick(resize);\n }\n});\n\n// Autofocus\nwatch(() => props.autofocus, (newVal) => {\n if (newVal) {\n nextTick(focus);\n }\n});\n\nonMounted(() => {\n nextTick(focus);\n});\n\nconst text = ref(props.field);\n</script>\n<template>\n <div \n :class=\"[\n $attrs.class, \n { \n 'bg-fourth-nano': validation \n }\n ]\" \n class=\"flex-center flex-nowrap flex\"\n >\n <div \n v-if=\"label\" \n class=\"t-transp mn-r-small\"\n >\n <span class=\"t-nowrap\">\n {{label}}\n </span>\n </div>\n <div class=\"w-100\">\n <input \n v-if=\"type !== 'textarea'\"\n ref=\"input\"\n @input=\"event => text = emit('update:field', event.target.value)\"\n @focus=\"event => emit('focus', event)\"\n @blur=\"event => emit('blur', event)\"\n :type=\"type\"\n class=\"w-100\"\n :value=\"field\"\n :placeholder=\"placeholder\"\n :tabindex=\"tabindex\"\n :disabled=\"disabled\"\n :autofocus=\"autofocus\"\n />\n <textarea \n v-else\n ref=\"textarea\"\n @input=\"event => text = emit('update:field', event.target.value)\"\n @focus=\"event => emit('focus', event)\"\n @blur=\"event => emit('blur', event)\"\n class=\"w-100\"\n :value=\"field\"\n :placeholder=\"placeholder\"\n :tabindex=\"tabindex\"\n :disabled=\"disabled\"\n />\n </div> \n <slot></slot>\n <div \n v-if=\"symbol\" \n class=\"t-transp mn-l-small\"\n >\n <span>\n {{symbol}}\n </span>\n </div>\n </div>\n <!-- Validation -->\n <transition name=\"fade\">\n <div v-if=\"validation\" class=\"mn-t-thin mn-b-thin mn-b-thin invalid-feedback\">\n * {{validation.message}}\n </div>\n </transition>\n</template>\n<style scoped>\ninput, textarea, span {\n line-height: 1;\n color: inherit;\n}\ntextarea {\n resize: none;\n overflow: hidden;\n height: 1rem; \n line-height: 1rem;\n}\ninput[type=\"date\"]::-webkit-calendar-picker-indicator,\ninput[type=\"time\"]::-webkit-calendar-picker-indicator {\n filter: invert(1); /* Это инвертирует иконку, подходит при светлом фоне */\n opacity: 1;\n color: inherit;\n}\n</style>"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,UAAM,OAAO;AACb,UAAM,QAAQ;AAYd,QAAI,MAAM,OAAO;AACf,WAAK,gBAAgB,MAAM,KAAK;AAAA,IAClC;AACA,UAAM,WAAW,IAAI,IAAI;AACzB,UAAM,QAAQ,IAAI,IAAI;AAEtB,aAAS,SAAS;AAChB,UAAI,CAAC,SAAS,OAAO;AACnB,iBAAS,MAAM,MAAM,SAAS;AAC9B;AAAA,MACJ;AAEE,YAAM,KAAK,SAAS;AAGpB,SAAG,MAAM,SAAS;AAElB,YAAM,eAAe,GAAG;AAGxB,UAAI,eAAe,IAAI;AACrB,WAAG,MAAM,SAAS,eAAe;AAAA,MACrC,OAAS;AACL,WAAG,MAAM,SAAS;AAAA,MACtB;AAAA,IACA;AAGA,aAAS,QAAQ;AACf,UAAI,MAAM,WAAW;AACnB,YAAI,MAAM,SAAS,cAAc,SAAS,OAAO;AAC/C,mBAAS,MAAM,MAAO;AAAA,QAC5B,WAAe,MAAM,OAAO;AACtB,gBAAM,MAAM,MAAO;AAAA,QACzB;AAAA,MACA;AAAA,IACA;AAGA,UAAM,MAAM,MAAM,OAAO,MAAM;AAC7B,UAAI,MAAM,SAAS,YAAY;AAC7B,iBAAS,MAAM;AAAA,MACnB;AAAA,IACA,CAAC;AAGD,UAAM,MAAM,MAAM,WAAW,CAAC,WAAW;AACvC,UAAI,QAAQ;AACV,iBAAS,KAAK;AAAA,MAClB;AAAA,IACA,CAAC;AAED,cAAU,MAAM;AACd,eAAS,KAAK;AAAA,IAChB,CAAC;AAED,UAAM,OAAO,IAAI,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FieldPhone.vue.cjs","sources":["../../../../../src/components/FieldPhone/FieldPhone.vue"],"sourcesContent":["<template>\n <div \n :class=\"[\n rootClass, \n classes,\n $attrs.class, \n { 'bg-fourth-nano': validation }, \n { disabled: disabled }\n ]\" \n :style=\"[\n rootStyle, \n styles\n ]\" \n ref=\"rootElement\"\n class=\"vue3-reactive-tel-input\"\n >\n <div\n v-click-outside=\"clickedOutside\"\n :class=\"['vti__dropdown', { open: open }]\"\n :style=\"[dropdownStyle]\"\n :tabindex=\"dropdownOptions.tabindex\"\n @keydown=\"keyboardNav\"\n @click=\"toggleDropdown\"\n @keydown.esc=\"reset\"\n class=\"br-solid br-black-transp br-1px radius-thin\"\n >\n <span class=\"flex-nowrap flex flex-v-center p-medium vti__selection\">\n <span v-if=\"dropdownOptions.showFlags\" v-html=\"activeCountryFlag\" class=\"mn-r-nano\" />\n <span v-if=\"dropdownOptions.showDialCodeInSelection\" class=\"vti__country-code\">\n +{{ activeCountry && activeCountry.dialCode }}\n </span>\n <!-- <slot name=\"arrow-icon\" :open=\"open\"> -->\n <!-- <span class=\"vti__dropdown-arrow\">{{ open ? \"▲\" : \"▼\" }}</span> -->\n <!-- </slot> -->\n </span>\n <ul \n ref=\"list\" \n class=\"bs-black radius-small vti__dropdown-list\"\n v-show=\"open\" \n :class=\"dropdownOpenDirection\"\n :style=\"[listStyle]\"\n \n >\n <li\n v-for=\"(pb, index) in sortedCountries\"\n class=\"flex-nowrap flex w-max\"\n :class=\"['vti__dropdown-item', getItemClass(index, pb.iso2)]\"\n :key=\"pb.iso2 + (pb.preferred ? '-preferred' : '')\"\n @click=\"choose(pb)\"\n @mousemove=\"selectedIndex = index\"\n >\n <span v-if=\"dropdownOptions.showFlags\" v-html=\"pb.flag\" class=\"mn-r-thin\"/>\n <strong>{{ pb.name }}</strong>\n <span v-if=\"dropdownOptions.showDialCodeInList\"> +{{ pb.dialCode }} </span>\n </li>\n </ul>\n </div>\n <!-- <div :class=\"[divInputClass]\" > -->\n <input\n v-model=\"phone\"\n inputmode=\"numeric\" \n pattern=\"\\d*\"\n ref=\"input\"\n :type=\"inputOptions.type\"\n :autocomplete=\"inputOptions.autocomplete\"\n :autofocus=\"inputOptions.autofocus\"\n :class=\"['vti__input', inputOptions.styleClasses, inputClass, Iclasses]\"\n :style=\"[inputStyle, Istyles]\"\n :disabled=\"disabled\"\n :id=\"inputId !== ''? inputId : inputOptions.id\"\n :maxlength=\"inputOptions.maxlength\"\n :name=\"inputId !== ''? inputId : inputOptions.name\"\n :placeholder=\"parsedPlaceholder\"\n :readonly=\"inputOptions.readonly\"\n :required=\"inputOptions.required\"\n :tabindex=\"inputOptions.tabindex\"\n @blur=\"onBlur\"\n @focus=\"onFocus\"\n @input=\"onInput\"\n @keyup.enter=\"onEnter\"\n @keyup.space=\"onSpace\"\n />\n <slot></slot> <!-- slot outlet -->\n <!-- </div> -->\n\n </div>\n <!-- Validation -->\n <transition name=\"fade\">\n <div v-if=\"validation\" class=\"mn-t-thin mn-b-thin invalid-feedback\">\n * {{validation.message}}\n </div>\n </transition>\n</template>\n\n\n<script setup>\n import { ref, reactive, watch, computed, onMounted, nextTick } from 'vue';\n import { parsePhoneNumberFromString } from 'libphonenumber-js';\n\n import clickOutside from './click-outside';\n import allCountries from './all-countries';\n\n let vClickOutside = clickOutside\n\n const props = defineProps({\n modelValue: { type: String, default: '',},\n badClass: { type: [String, Array, Object], default: '', },\n goodClass: { type: [String, Array, Object], default: '', },\n badStyle: { type: [String, Array, Object], default: '', },\n goodStyle: { type: [String, Array, Object], default: '', },\n badInputClass: { type: [String, Array, Object], default: '', },\n goodInputClass: { type: [String, Array, Object], default: '', },\n badInputStyle: { type: [String, Array, Object], default: '', },\n goodInputStyle: { type: [String, Array, Object], default: '', },\n allCountries: { type: Array, default: () => allCountries, },\n autoFormat: { type: Boolean, default: () => true, },\n validation: { type: [Boolean, Object], default: false, },\n customValidate: { type: [Boolean, RegExp], default: () => false, },\n defaultCountry: { type: String, default: () => '', },\n disabled: { type: Boolean, default: () => false, },\n autoDefaultCountry: { type: Boolean, default: () => true },\n ignoredCountries: { type: Array, default: () => [], },\n invalidMsg: { type: String, default: () => '', },\n mode: { type: String, default: () => 'auto', },\n onlyCountries: { type: Array, default: () => [], },\n preferredCountries: { type: Array, default: () => [], },\n validCharactersOnly: { type: Boolean, default: () => false, },\n rootClass: { type: [String, Array, Object], default: () => '', },\n inputClass: { type: [String, Array, Object], default: () => {return ''}, },\n divInputClass: { type: [String, Array, Object], default: () => {return ''}, },\n rootStyle: { type: [String, Array, Object], default: () => {return ''}, },\n dropdownStyle: { type: [String, Array, Object], default: () => {return ''}, },\n listStyle: { type: [String, Array, Object], default: () => {return ''}, },\n inputStyle: { type: [String, Array, Object], default: () => {return ''}, },\n inputId: { type: [String, Array, Object], default: () => {return ''}, },\n Placeholder: { type: [String, Object, Function], default: () => {return ''}, },\n dropdownOptions: { \n type: Object, \n default: () => {\n return {\n showDialCodeInList: true,\n showDialCodeInSelection: false,\n showFlags: true,\n tabindex: 0\n }\n } \n },\n inputOptions: { \n type: Object, \n default: () => { \n return {\n autocomplete: 'on',\n autofocus: false,\n id: '',\n maxlength: 25,\n name: 'telephone',\n placeholder: 'Enter a phone number',\n readonly: false,\n required: false,\n tabindex: 0,\n type: 'tel',\n styleClasses: ''\n }\n }\n },\n });\n\n const emits = defineEmits([\n 'update:modelValue', \n 'change',\n 'validate', \n 'country-changed', \n 'open', \n 'close', \n 'blur', \n 'focus', \n 'enter', \n 'space'\n ]);\n\n const counter = ref(5);\n const initCounter = ref(5);\n const message = reactive({\n action: null,\n amount: null,\n });\n const phone = ref(props.modelValue ? props.modelValue : '');\n const activeCountryCode = ref('');\n const open = ref(false);\n const finishMounted = ref(false);\n const selectedIndex = ref(null);\n const typeToFindInput = ref('');\n const typeToFindTimer = ref(null);\n const dropdownOpenDirection = ref('below');\n const parsedPlaceholder = ref(props.Placeholder !== '' ? props.Placeholder : props.inputOptions.placeholder);\n\n const rootElement = ref(null)\n const list = ref(null)\n const input = ref(null)\n\n // Lifecycle hooks\n onMounted(async () => {\n if (props.modelValue) {\n phone.value = props.modelValue;\n }\n\n cleanInvalidCharacters();\n\n initializeCountry()\n .then(() => {\n if (!phone.value\n && props.inputOptions?.showDialCode\n && activeCountryCode.value) {\n phone.value = `+${activeCountryCode.value}`;\n }\n emits('validate', phoneObject.value);\n })\n .catch(console.error)\n .then(() => {\n finishMounted.value = true;\n });\n });\n\n // Computed properties\n const activeCountry = computed(() => {\n return findCountry(activeCountryCode.value);\n });\n\n const activeCountryFlag = computed(() => {\n return activeCountry.value ? activeCountry.value.flag : null;\n });\n\n const parsedMode = computed(() => {\n if (props.mode === 'auto') {\n if (!phone.value || phone.value[0] !== '+') {\n return 'national';\n }\n return 'international';\n }\n if (!['international', 'national'].includes(props.mode)) {\n console.error('Invalid value of prop \"mode\"');\n return 'international';\n }\n return props.mode;\n });\n\n const filteredCountries = computed(() => {\n if (props.onlyCountries && props.onlyCountries.length) {\n return props.allCountries.filter(({ iso2 }) => props.onlyCountries.includes(iso2.toUpperCase()));\n }\n\n if (props.ignoredCountries && props.ignoredCountries.length) {\n return props.allCountries.filter(({ iso2 }) =>\n !props.ignoredCountries.includes(iso2.toUpperCase()) && !props.ignoredCountries.includes(iso2.toLowerCase()),\n );\n }\n\n return props.allCountries;\n });\n const sortedCountries = computed(() => {\n const preferredCountries = getCountries(props.preferredCountries)\n .map(country => ({ ...country, preferred: true }));\n\n return [...preferredCountries, ...filteredCountries.value];\n });\n\n const phoneObject = computed(() => {\n let result = {};\n\n if (phone.value?.[0] === '+') {\n result = parsePhoneNumberFromString(phone.value) || {};\n } else {\n result = parsePhoneNumberFromString(phone.value, activeCountryCode.value) || {};\n }\n\n const { metadata, ...phoneDetails } = result;\n\n let valid = result.isValid?.();\n let formatted = phone.value;\n\n if (valid) {\n formatted = result.format?.(parsedMode.value.toUpperCase(), { nationalPrefix: false });\n }\n\n if (result.country && (props.ignoredCountries.length || props.onlyCountries.length)) {\n if (!findCountry(result.country)) {\n valid = false;\n result = { ...result, country: null };\n }\n }\n\n return {\n ...phoneDetails,\n countryCode: result.country,\n valid,\n country: activeCountry.value,\n formatted,\n };\n });\n\n const classes = computed(() => {\n return phoneObject.value.valid === true ? props.goodClass : \n phoneObject.value.valid === false ? props.badClass : undefined;\n });\n\n const styles = computed(() => {\n return phoneObject.value.valid === true ? props.goodStyle : \n phoneObject.value.valid === false ? props.badStyle : undefined;\n });\n\n const Iclasses = computed(() => {\n return phoneObject.value.valid === true ? props.goodInputClass : \n phoneObject.value.valid === false ? props.badInputClass : undefined;\n });\n\n const Istyles = computed(() => {\n return phoneObject.value.valid === true ? props.goodInputStyle : \n phoneObject.value.valid === false ? props.badInputStyle : undefined;\n });\n // ///////////\n // Watchers\n // ///////////\n watch(activeCountry, (newValue, oldValue) => {\n if (!newValue && oldValue?.iso2) {\n activeCountryCode.value = oldValue.iso2;\n return;\n }\n if (newValue?.iso2) {\n emits('country-changed', newValue);\n resetPlaceholder();\n }\n });\n\n // Следим за изменениями countryCode в phoneObject\n watch(() => phoneObject.value.countryCode, (newValue) => {\n activeCountryCode.value = newValue;\n });\n\n // Следим за изменениями валидности phoneObject\n watch(() => phoneObject.value.valid, () => {\n emits('validate', phoneObject.value);\n });\n\n // Следим за изменениями отформатированного номера в phoneObject\n watch(() => phoneObject.value.formatted, (newValue) => {\n if (!props.autoFormat || props.customValidate) {\n return;\n }\n emitInput(newValue);\n\n nextTick(() => {\n if (newValue && !props.modelValue) {\n phone.value = newValue;\n }\n });\n });\n\n // Следим за изменениями placeholder в inputOptions\n watch(() => props.inputOptions.placeholder, () => {\n resetPlaceholder();\n });\n\n // Следим за внешними изменениями значения (например, через v-model)\n watch(() => props.modelValue, (newValue, oldValue) => {\n if (!testCharacters()) {\n nextTick(() => {\n phone.value = oldValue;\n onInput();\n });\n } else {\n phone.value = newValue;\n }\n });\n\n // Следим за состоянием открытия/закрытия dropdown\n watch(open, (isDropdownOpened) => {\n if (isDropdownOpened) {\n setDropdownPosition();\n emits('open');\n } else {\n emits('close');\n }\n });\n\n // Methods\n function getCountry() {\n return fetch('https://ip2c.org/s')\n .then((response) => response.text())\n .then((response) => {\n const result = (response || '').toString();\n\n if (!result || result[0] !== '1') {\n throw new Error('unable to fetch the country');\n }\n\n return result.substr(2, 2);\n });\n }\n \n function setCaretPosition(ctrl, pos) {\n // Modern browsers\n if (ctrl.setSelectionRange) {\n ctrl.focus();\n ctrl.setSelectionRange(pos, pos);\n\n // IE8 and below\n } else if (ctrl.createTextRange) {\n const range = ctrl.createTextRange();\n range.collapse(true);\n range.moveEnd('character', pos);\n range.moveStart('character', pos);\n range.select();\n }\n }\n\n function resetPlaceholder() {\n parsedPlaceholder.value = props.inputOptions.placeholder;\n }\n function initializeCountry() {\n return new Promise((resolve) => {\n if (phone.value?.[0] === '+') { resolve(); return; }\n if (props.defaultCountry) { choose(props.defaultCountry); resolve(); return; }\n const fallbackCountry = props.preferredCountries[0] || filteredCountries.value[0];\n if (props.autoDefaultCountry) {\n getCountry()\n .then((res) => { choose(res || activeCountryCode.value); })\n .catch((error) => { console.warn(error); choose(fallbackCountry); })\n .finally(() => { resolve(); });\n } else {\n choose(fallbackCountry);\n resolve();\n }\n });\n }\n\n function getCountries(list = []) {\n return list.map((countryCode) => findCountry(countryCode)).filter(Boolean);\n }\n\n function findCountry(iso = '') {\n return filteredCountries.value.find((country) => country.iso2 === iso.toUpperCase());\n }\n\n function getItemClass(index, iso2) {\n const highlighted = selectedIndex.value === index;\n const lastPreferred = index === props.preferredCountries.length - 1;\n const preferred = props.preferredCountries.some((c) => c.toUpperCase() === iso2);\n return { highlighted, 'last-preferred': lastPreferred, preferred };\n }\n\n function choose(country) {\n let parsedCountry = typeof country === 'string' ? findCountry(country) : country;\n if (!parsedCountry) return;\n \n if (phone.value?.[0] === '+' && parsedCountry.iso2 && phoneObject.value.nationalNumber) {\n activeCountryCode.value = parsedCountry.iso2;\n phone.value = parsePhoneNumberFromString(phoneObject.value.nationalNumber, parsedCountry.iso2).formatInternational();\n return;\n }\n\n if (props.inputOptions?.showDialCode && parsedCountry) {\n phone.value = `+${parsedCountry.dialCode}`;\n return;\n }\n\n activeCountryCode.value = parsedCountry.iso2;\n emitInput(phone.value);\n }\n\n function cleanInvalidCharacters() {\n const currentPhone = phone.value;\n\n if (props.validCharactersOnly) {\n const results = phone.value.match(/[()\\-+0-9\\s]*/g);\n phone.value = results.join('');\n }\n\n if (props.customValidate && props.customValidate instanceof RegExp) {\n const results = phone.value.match(props.customValidate);\n phone.value = results ? results.join('') : '';\n }\n\n if (currentPhone !== phone.value) {\n emitInput(phone.value);\n }\n }\n\n function testCharacters() {\n if (props.validCharactersOnly) {\n const result = /^[()\\-+0-9\\s]*$/.test(phone.value);\n if (!result) return false;\n }\n if (props.customValidate) {\n return testCustomValidate();\n }\n return true;\n }\n\n function testCustomValidate() {\n return props.customValidate instanceof RegExp ? props.customValidate.test(phone.value) : false;\n }\n\n function onInput() {\n input.value.setCustomValidity(phoneObject.valid ? '' : props.invalidMsg);\n\n emitInput(phone.value);\n }\n\n function emitInput(value) {\n emits('update:modelValue', value);\n\n\n\n if (phoneObject.value.valid) { \n emits('change', phoneObject.value.number);\n emits('country', phoneObject.value.number);\n } else {\n emits('country', null);\n }\n }\n\n function onBlur() {\n emits('blur');\n }\n\n function onFocus() {\n setCaretPosition(input.value, phone.value.length);\n emits('focus');\n }\n\n function onEnter() {\n emits('enter');\n }\n\n function onSpace() {\n emits('space');\n }\n\n function focus() {\n input.value.focus();\n }\n\n function toggleDropdown() {\n if (props.disabled) return;\n open.value = !open.value;\n }\n\n function clickedOutside() {\n open.value = false;\n }\n\n function keyboardNav(e) {\n if (e.keyCode === 40) { // down arrow\n e.preventDefault();\n open.value = true;\n selectedIndex.value = selectedIndex.value === null ? 0 : Math.min(sortedCountries.value.length - 1, selectedIndex.value + 1);\n nextTick(() => {\n const selEle = list.value.children[selectedIndex.value];\n if (selEle.offsetTop + selEle.clientHeight > list.value.scrollTop + list.value.clientHeight) {\n list.value.scrollTop = selEle.offsetTop - list.value.clientHeight + selEle.clientHeight;\n }\n });\n } else if (e.keyCode === 38) { // up arrow\n e.preventDefault();\n open.value = true;\n selectedIndex.value = selectedIndex.value === null ? sortedCountries.value.length - 1 : Math.max(0, selectedIndex.value - 1);\n nextTick(() => {\n const selEle = list.value.children[selectedIndex.value];\n if (selEle.offsetTop < list.value.scrollTop) {\n list.value.scrollTop = selEle.offsetTop;\n }\n });\n } else if (e.keyCode === 13) { // enter key\n e.preventDefault();\n if (selectedIndex.value !== null) {\n choose(sortedCountries.value[selectedIndex.value]);\n }\n open.value = !open.value;\n } else { // typing a country's name\n typeToFindInput.value += e.key;\n clearTimeout(typeToFindTimer);\n typeToFindTimer = setTimeout(() => {\n typeToFindInput.value = '';\n }, 700);\n nextTick(() => {\n const typedCountryI = sortedCountries.value.slice(props.preferredCountries.length).findIndex((c) => c.name.toLowerCase().startsWith(typeToFindInput.value));\n if (typedCountryI >= 0) {\n selectedIndex.value = props.preferredCountries.length + typedCountryI;\n const selEle = list.value.children[selectedIndex.value];\n const needToScroll = selEle.offsetTop < list.value.scrollTop || selEle.offsetTop + selEle.clientHeight > list.value.scrollTop + list.value.clientHeight;\n if (needToScroll) {\n list.value.scrollTop = selEle.offsetTop - list.value.clientHeight / 2;\n }\n }\n });\n }\n }\n\n function reset() {\n selectedIndex.value = sortedCountries.value.map(c => c.iso2).indexOf(activeCountryCode.value);\n open.value = false;\n }\n\n function setDropdownPosition() {\n const spaceBelow = window.innerHeight - rootElement.value.getBoundingClientRect().bottom;\n const hasEnoughSpaceBelow = spaceBelow > 200;\n dropdownOpenDirection.value = hasEnoughSpaceBelow ? 'below' : 'above';\n }\n</script>\n\n<style lang=\"scss\">\n .vue3-reactive-tel-input{\n display:flex\n }\n .vue3-reactive-tel-input.disabled .dropdown,.vue3-reactive-tel-input.disabled .selection,.vue3-reactive-tel-input.disabled input{\n cursor:no-drop\n }\n .vti__dropdown{\n display:flex;\n flex-direction:column;\n align-content:center;\n justify-content:center;\n position:relative;\n padding:0.5rem;\n cursor:pointer\n }\n .vti__dropdown.show{\n max-height:300px;\n overflow:scroll\n }\n .vti__dropdown-list{\n z-index:1;\n padding:0;\n margin:0;\n text-align:left;\n list-style:none;\n max-height:200px;\n overflow-y:scroll;\n position:absolute;\n left:-1px;\n background-color:#fff;\n width:fit-content\n }\n .vti__dropdown-list.below{\n top:33px\n }\n .vti__dropdown-list.above{\n top:auto;\n bottom:100%\n }\n .vti__dropdown-arrow{\n transform:scaleY(.5);\n display:inline-block;\n color:#666\n }\n .vti__dropdown-item{\n cursor:pointer;\n padding:4px 15px\n }\n .vti__dropdown-item.last-preferred{\n border-bottom:1px solid #cacaca\n }\n .vti__dropdown-item .vti__flag{\n display:inline-block;\n margin-right:5px\n }\n .vti__input{\n color: inherit;\n border:none;\n border-radius:0 2px 2px 0;\n width:100%;\n outline:0;\n padding-left:7px\n }\n</style>"],"names":["clickOutside","ref","reactive","onMounted","computed","parsePhoneNumberFromString","watch","nextTick","list"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FieldPhone.vue.cjs","sources":["../../../../../src/components/FieldPhone/FieldPhone.vue"],"sourcesContent":["<template>\n <div \n :class=\"[\n rootClass, \n classes,\n $attrs.class, \n { 'bg-fourth-nano': validation }, \n { disabled: disabled }\n ]\" \n :style=\"[\n rootStyle, \n styles\n ]\" \n ref=\"rootElement\"\n class=\"vue3-reactive-tel-input\"\n >\n <div\n v-click-outside=\"clickedOutside\"\n :class=\"['vti__dropdown', { open: open }]\"\n :style=\"[dropdownStyle]\"\n :tabindex=\"dropdownOptions.tabindex\"\n @keydown=\"keyboardNav\"\n @click=\"toggleDropdown\"\n @keydown.esc=\"reset\"\n class=\"br-solid br-black-transp br-1px radius-thin\"\n >\n <span class=\"flex-nowrap flex flex-v-center p-medium vti__selection\">\n <span v-if=\"dropdownOptions.showFlags\" v-html=\"activeCountryFlag\" class=\"mn-r-nano\" />\n <span v-if=\"dropdownOptions.showDialCodeInSelection\" class=\"vti__country-code\">\n +{{ activeCountry && activeCountry.dialCode }}\n </span>\n <!-- <slot name=\"arrow-icon\" :open=\"open\"> -->\n <!-- <span class=\"vti__dropdown-arrow\">{{ open ? \"▲\" : \"▼\" }}</span> -->\n <!-- </slot> -->\n </span>\n <ul \n ref=\"list\" \n class=\"bs-black radius-small vti__dropdown-list\"\n v-show=\"open\" \n :class=\"dropdownOpenDirection\"\n :style=\"[listStyle]\"\n \n >\n <li\n v-for=\"(pb, index) in sortedCountries\"\n class=\"flex-nowrap flex w-max\"\n :class=\"['vti__dropdown-item', getItemClass(index, pb.iso2)]\"\n :key=\"pb.iso2 + (pb.preferred ? '-preferred' : '')\"\n @click=\"choose(pb)\"\n @mousemove=\"selectedIndex = index\"\n >\n <span v-if=\"dropdownOptions.showFlags\" v-html=\"pb.flag\" class=\"mn-r-thin\"/>\n <strong>{{ pb.name }}</strong>\n <span v-if=\"dropdownOptions.showDialCodeInList\"> +{{ pb.dialCode }} </span>\n </li>\n </ul>\n </div>\n <!-- <div :class=\"[divInputClass]\" > -->\n <input\n v-model=\"phone\"\n inputmode=\"numeric\" \n pattern=\"\\d*\"\n ref=\"input\"\n :type=\"inputOptions.type\"\n :autocomplete=\"inputOptions.autocomplete\"\n :autofocus=\"inputOptions.autofocus\"\n :class=\"['vti__input', inputOptions.styleClasses, inputClass, Iclasses]\"\n :style=\"[inputStyle, Istyles]\"\n :disabled=\"disabled\"\n :id=\"inputId !== ''? inputId : inputOptions.id\"\n :maxlength=\"inputOptions.maxlength\"\n :name=\"inputId !== ''? inputId : inputOptions.name\"\n :placeholder=\"parsedPlaceholder\"\n :readonly=\"inputOptions.readonly\"\n :required=\"inputOptions.required\"\n :tabindex=\"inputOptions.tabindex\"\n @blur=\"onBlur\"\n @focus=\"onFocus\"\n @input=\"onInput\"\n @keyup.enter=\"onEnter\"\n @keyup.space=\"onSpace\"\n />\n <slot></slot> <!-- slot outlet -->\n <!-- </div> -->\n\n </div>\n <!-- Validation -->\n <transition name=\"fade\">\n <div v-if=\"validation\" class=\"mn-t-thin mn-b-thin invalid-feedback\">\n * {{validation.message}}\n </div>\n </transition>\n</template>\n\n\n<script setup>\n import { ref, reactive, watch, computed, onMounted, nextTick } from 'vue';\n import { parsePhoneNumberFromString } from 'libphonenumber-js';\n\n import clickOutside from './click-outside.js';\n import allCountries from './all-countries.js';\n\n let vClickOutside = clickOutside\n\n const props = defineProps({\n modelValue: { type: String, default: '',},\n badClass: { type: [String, Array, Object], default: '', },\n goodClass: { type: [String, Array, Object], default: '', },\n badStyle: { type: [String, Array, Object], default: '', },\n goodStyle: { type: [String, Array, Object], default: '', },\n badInputClass: { type: [String, Array, Object], default: '', },\n goodInputClass: { type: [String, Array, Object], default: '', },\n badInputStyle: { type: [String, Array, Object], default: '', },\n goodInputStyle: { type: [String, Array, Object], default: '', },\n allCountries: { type: Array, default: () => allCountries, },\n autoFormat: { type: Boolean, default: () => true, },\n validation: { type: [Boolean, Object], default: false, },\n customValidate: { type: [Boolean, RegExp], default: () => false, },\n defaultCountry: { type: String, default: () => '', },\n disabled: { type: Boolean, default: () => false, },\n autoDefaultCountry: { type: Boolean, default: () => true },\n ignoredCountries: { type: Array, default: () => [], },\n invalidMsg: { type: String, default: () => '', },\n mode: { type: String, default: () => 'auto', },\n onlyCountries: { type: Array, default: () => [], },\n preferredCountries: { type: Array, default: () => [], },\n validCharactersOnly: { type: Boolean, default: () => false, },\n rootClass: { type: [String, Array, Object], default: () => '', },\n inputClass: { type: [String, Array, Object], default: () => {return ''}, },\n divInputClass: { type: [String, Array, Object], default: () => {return ''}, },\n rootStyle: { type: [String, Array, Object], default: () => {return ''}, },\n dropdownStyle: { type: [String, Array, Object], default: () => {return ''}, },\n listStyle: { type: [String, Array, Object], default: () => {return ''}, },\n inputStyle: { type: [String, Array, Object], default: () => {return ''}, },\n inputId: { type: [String, Array, Object], default: () => {return ''}, },\n Placeholder: { type: [String, Object, Function], default: () => {return ''}, },\n dropdownOptions: { \n type: Object, \n default: () => {\n return {\n showDialCodeInList: true,\n showDialCodeInSelection: false,\n showFlags: true,\n tabindex: 0\n }\n } \n },\n inputOptions: { \n type: Object, \n default: () => { \n return {\n autocomplete: 'on',\n autofocus: false,\n id: '',\n maxlength: 25,\n name: 'telephone',\n placeholder: 'Enter a phone number',\n readonly: false,\n required: false,\n tabindex: 0,\n type: 'tel',\n styleClasses: ''\n }\n }\n },\n });\n\n const emits = defineEmits([\n 'update:modelValue', \n 'change',\n 'validate', \n 'country-changed', \n 'open', \n 'close', \n 'blur', \n 'focus', \n 'enter', \n 'space'\n ]);\n\n const counter = ref(5);\n const initCounter = ref(5);\n const message = reactive({\n action: null,\n amount: null,\n });\n const phone = ref(props.modelValue ? props.modelValue : '');\n const activeCountryCode = ref('');\n const open = ref(false);\n const finishMounted = ref(false);\n const selectedIndex = ref(null);\n const typeToFindInput = ref('');\n const typeToFindTimer = ref(null);\n const dropdownOpenDirection = ref('below');\n const parsedPlaceholder = ref(props.Placeholder !== '' ? props.Placeholder : props.inputOptions.placeholder);\n\n const rootElement = ref(null)\n const list = ref(null)\n const input = ref(null)\n\n // Lifecycle hooks\n onMounted(async () => {\n if (props.modelValue) {\n phone.value = props.modelValue;\n }\n\n cleanInvalidCharacters();\n\n initializeCountry()\n .then(() => {\n if (!phone.value\n && props.inputOptions?.showDialCode\n && activeCountryCode.value) {\n phone.value = `+${activeCountryCode.value}`;\n }\n emits('validate', phoneObject.value);\n })\n .catch(console.error)\n .then(() => {\n finishMounted.value = true;\n });\n });\n\n // Computed properties\n const activeCountry = computed(() => {\n return findCountry(activeCountryCode.value);\n });\n\n const activeCountryFlag = computed(() => {\n return activeCountry.value ? activeCountry.value.flag : null;\n });\n\n const parsedMode = computed(() => {\n if (props.mode === 'auto') {\n if (!phone.value || phone.value[0] !== '+') {\n return 'national';\n }\n return 'international';\n }\n if (!['international', 'national'].includes(props.mode)) {\n console.error('Invalid value of prop \"mode\"');\n return 'international';\n }\n return props.mode;\n });\n\n const filteredCountries = computed(() => {\n if (props.onlyCountries && props.onlyCountries.length) {\n return props.allCountries.filter(({ iso2 }) => props.onlyCountries.includes(iso2.toUpperCase()));\n }\n\n if (props.ignoredCountries && props.ignoredCountries.length) {\n return props.allCountries.filter(({ iso2 }) =>\n !props.ignoredCountries.includes(iso2.toUpperCase()) && !props.ignoredCountries.includes(iso2.toLowerCase()),\n );\n }\n\n return props.allCountries;\n });\n const sortedCountries = computed(() => {\n const preferredCountries = getCountries(props.preferredCountries)\n .map(country => ({ ...country, preferred: true }));\n\n return [...preferredCountries, ...filteredCountries.value];\n });\n\n const phoneObject = computed(() => {\n let result = {};\n\n if (phone.value?.[0] === '+') {\n result = parsePhoneNumberFromString(phone.value) || {};\n } else {\n result = parsePhoneNumberFromString(phone.value, activeCountryCode.value) || {};\n }\n\n const { metadata, ...phoneDetails } = result;\n\n let valid = result.isValid?.();\n let formatted = phone.value;\n\n if (valid) {\n formatted = result.format?.(parsedMode.value.toUpperCase(), { nationalPrefix: false });\n }\n\n if (result.country && (props.ignoredCountries.length || props.onlyCountries.length)) {\n if (!findCountry(result.country)) {\n valid = false;\n result = { ...result, country: null };\n }\n }\n\n return {\n ...phoneDetails,\n countryCode: result.country,\n valid,\n country: activeCountry.value,\n formatted,\n };\n });\n\n const classes = computed(() => {\n return phoneObject.value.valid === true ? props.goodClass : \n phoneObject.value.valid === false ? props.badClass : undefined;\n });\n\n const styles = computed(() => {\n return phoneObject.value.valid === true ? props.goodStyle : \n phoneObject.value.valid === false ? props.badStyle : undefined;\n });\n\n const Iclasses = computed(() => {\n return phoneObject.value.valid === true ? props.goodInputClass : \n phoneObject.value.valid === false ? props.badInputClass : undefined;\n });\n\n const Istyles = computed(() => {\n return phoneObject.value.valid === true ? props.goodInputStyle : \n phoneObject.value.valid === false ? props.badInputStyle : undefined;\n });\n // ///////////\n // Watchers\n // ///////////\n watch(activeCountry, (newValue, oldValue) => {\n if (!newValue && oldValue?.iso2) {\n activeCountryCode.value = oldValue.iso2;\n return;\n }\n if (newValue?.iso2) {\n emits('country-changed', newValue);\n resetPlaceholder();\n }\n });\n\n // Следим за изменениями countryCode в phoneObject\n watch(() => phoneObject.value.countryCode, (newValue) => {\n activeCountryCode.value = newValue;\n });\n\n // Следим за изменениями валидности phoneObject\n watch(() => phoneObject.value.valid, () => {\n emits('validate', phoneObject.value);\n });\n\n // Следим за изменениями отформатированного номера в phoneObject\n watch(() => phoneObject.value.formatted, (newValue) => {\n if (!props.autoFormat || props.customValidate) {\n return;\n }\n emitInput(newValue);\n\n nextTick(() => {\n if (newValue && !props.modelValue) {\n phone.value = newValue;\n }\n });\n });\n\n // Следим за изменениями placeholder в inputOptions\n watch(() => props.inputOptions.placeholder, () => {\n resetPlaceholder();\n });\n\n // Следим за внешними изменениями значения (например, через v-model)\n watch(() => props.modelValue, (newValue, oldValue) => {\n if (!testCharacters()) {\n nextTick(() => {\n phone.value = oldValue;\n onInput();\n });\n } else {\n phone.value = newValue;\n }\n });\n\n // Следим за состоянием открытия/закрытия dropdown\n watch(open, (isDropdownOpened) => {\n if (isDropdownOpened) {\n setDropdownPosition();\n emits('open');\n } else {\n emits('close');\n }\n });\n\n // Methods\n function getCountry() {\n return fetch('https://ip2c.org/s')\n .then((response) => response.text())\n .then((response) => {\n const result = (response || '').toString();\n\n if (!result || result[0] !== '1') {\n throw new Error('unable to fetch the country');\n }\n\n return result.substr(2, 2);\n });\n }\n \n function setCaretPosition(ctrl, pos) {\n // Modern browsers\n if (ctrl.setSelectionRange) {\n ctrl.focus();\n ctrl.setSelectionRange(pos, pos);\n\n // IE8 and below\n } else if (ctrl.createTextRange) {\n const range = ctrl.createTextRange();\n range.collapse(true);\n range.moveEnd('character', pos);\n range.moveStart('character', pos);\n range.select();\n }\n }\n\n function resetPlaceholder() {\n parsedPlaceholder.value = props.inputOptions.placeholder;\n }\n function initializeCountry() {\n return new Promise((resolve) => {\n if (phone.value?.[0] === '+') { resolve(); return; }\n if (props.defaultCountry) { choose(props.defaultCountry); resolve(); return; }\n const fallbackCountry = props.preferredCountries[0] || filteredCountries.value[0];\n if (props.autoDefaultCountry) {\n getCountry()\n .then((res) => { choose(res || activeCountryCode.value); })\n .catch((error) => { console.warn(error); choose(fallbackCountry); })\n .finally(() => { resolve(); });\n } else {\n choose(fallbackCountry);\n resolve();\n }\n });\n }\n\n function getCountries(list = []) {\n return list.map((countryCode) => findCountry(countryCode)).filter(Boolean);\n }\n\n function findCountry(iso = '') {\n return filteredCountries.value.find((country) => country.iso2 === iso.toUpperCase());\n }\n\n function getItemClass(index, iso2) {\n const highlighted = selectedIndex.value === index;\n const lastPreferred = index === props.preferredCountries.length - 1;\n const preferred = props.preferredCountries.some((c) => c.toUpperCase() === iso2);\n return { highlighted, 'last-preferred': lastPreferred, preferred };\n }\n\n function choose(country) {\n let parsedCountry = typeof country === 'string' ? findCountry(country) : country;\n if (!parsedCountry) return;\n \n if (phone.value?.[0] === '+' && parsedCountry.iso2 && phoneObject.value.nationalNumber) {\n activeCountryCode.value = parsedCountry.iso2;\n phone.value = parsePhoneNumberFromString(phoneObject.value.nationalNumber, parsedCountry.iso2).formatInternational();\n return;\n }\n\n if (props.inputOptions?.showDialCode && parsedCountry) {\n phone.value = `+${parsedCountry.dialCode}`;\n return;\n }\n\n activeCountryCode.value = parsedCountry.iso2;\n emitInput(phone.value);\n }\n\n function cleanInvalidCharacters() {\n const currentPhone = phone.value;\n\n if (props.validCharactersOnly) {\n const results = phone.value.match(/[()\\-+0-9\\s]*/g);\n phone.value = results.join('');\n }\n\n if (props.customValidate && props.customValidate instanceof RegExp) {\n const results = phone.value.match(props.customValidate);\n phone.value = results ? results.join('') : '';\n }\n\n if (currentPhone !== phone.value) {\n emitInput(phone.value);\n }\n }\n\n function testCharacters() {\n if (props.validCharactersOnly) {\n const result = /^[()\\-+0-9\\s]*$/.test(phone.value);\n if (!result) return false;\n }\n if (props.customValidate) {\n return testCustomValidate();\n }\n return true;\n }\n\n function testCustomValidate() {\n return props.customValidate instanceof RegExp ? props.customValidate.test(phone.value) : false;\n }\n\n function onInput() {\n input.value.setCustomValidity(phoneObject.valid ? '' : props.invalidMsg);\n\n emitInput(phone.value);\n }\n\n function emitInput(value) {\n emits('update:modelValue', value);\n\n\n\n if (phoneObject.value.valid) { \n emits('change', phoneObject.value.number);\n emits('country', phoneObject.value.number);\n } else {\n emits('country', null);\n }\n }\n\n function onBlur() {\n emits('blur');\n }\n\n function onFocus() {\n setCaretPosition(input.value, phone.value.length);\n emits('focus');\n }\n\n function onEnter() {\n emits('enter');\n }\n\n function onSpace() {\n emits('space');\n }\n\n function focus() {\n input.value.focus();\n }\n\n function toggleDropdown() {\n if (props.disabled) return;\n open.value = !open.value;\n }\n\n function clickedOutside() {\n open.value = false;\n }\n\n function keyboardNav(e) {\n if (e.keyCode === 40) { // down arrow\n e.preventDefault();\n open.value = true;\n selectedIndex.value = selectedIndex.value === null ? 0 : Math.min(sortedCountries.value.length - 1, selectedIndex.value + 1);\n nextTick(() => {\n const selEle = list.value.children[selectedIndex.value];\n if (selEle.offsetTop + selEle.clientHeight > list.value.scrollTop + list.value.clientHeight) {\n list.value.scrollTop = selEle.offsetTop - list.value.clientHeight + selEle.clientHeight;\n }\n });\n } else if (e.keyCode === 38) { // up arrow\n e.preventDefault();\n open.value = true;\n selectedIndex.value = selectedIndex.value === null ? sortedCountries.value.length - 1 : Math.max(0, selectedIndex.value - 1);\n nextTick(() => {\n const selEle = list.value.children[selectedIndex.value];\n if (selEle.offsetTop < list.value.scrollTop) {\n list.value.scrollTop = selEle.offsetTop;\n }\n });\n } else if (e.keyCode === 13) { // enter key\n e.preventDefault();\n if (selectedIndex.value !== null) {\n choose(sortedCountries.value[selectedIndex.value]);\n }\n open.value = !open.value;\n } else { // typing a country's name\n typeToFindInput.value += e.key;\n clearTimeout(typeToFindTimer);\n typeToFindTimer = setTimeout(() => {\n typeToFindInput.value = '';\n }, 700);\n nextTick(() => {\n const typedCountryI = sortedCountries.value.slice(props.preferredCountries.length).findIndex((c) => c.name.toLowerCase().startsWith(typeToFindInput.value));\n if (typedCountryI >= 0) {\n selectedIndex.value = props.preferredCountries.length + typedCountryI;\n const selEle = list.value.children[selectedIndex.value];\n const needToScroll = selEle.offsetTop < list.value.scrollTop || selEle.offsetTop + selEle.clientHeight > list.value.scrollTop + list.value.clientHeight;\n if (needToScroll) {\n list.value.scrollTop = selEle.offsetTop - list.value.clientHeight / 2;\n }\n }\n });\n }\n }\n\n function reset() {\n selectedIndex.value = sortedCountries.value.map(c => c.iso2).indexOf(activeCountryCode.value);\n open.value = false;\n }\n\n function setDropdownPosition() {\n const spaceBelow = window.innerHeight - rootElement.value.getBoundingClientRect().bottom;\n const hasEnoughSpaceBelow = spaceBelow > 200;\n dropdownOpenDirection.value = hasEnoughSpaceBelow ? 'below' : 'above';\n }\n</script>\n\n<style lang=\"scss\">\n .vue3-reactive-tel-input{\n display:flex\n }\n .vue3-reactive-tel-input.disabled .dropdown,.vue3-reactive-tel-input.disabled .selection,.vue3-reactive-tel-input.disabled input{\n cursor:no-drop\n }\n .vti__dropdown{\n display:flex;\n flex-direction:column;\n align-content:center;\n justify-content:center;\n position:relative;\n padding:0.5rem;\n cursor:pointer\n }\n .vti__dropdown.show{\n max-height:300px;\n overflow:scroll\n }\n .vti__dropdown-list{\n z-index:1;\n padding:0;\n margin:0;\n text-align:left;\n list-style:none;\n max-height:200px;\n overflow-y:scroll;\n position:absolute;\n left:-1px;\n background-color:#fff;\n width:fit-content\n }\n .vti__dropdown-list.below{\n top:33px\n }\n .vti__dropdown-list.above{\n top:auto;\n bottom:100%\n }\n .vti__dropdown-arrow{\n transform:scaleY(.5);\n display:inline-block;\n color:#666\n }\n .vti__dropdown-item{\n cursor:pointer;\n padding:4px 15px\n }\n .vti__dropdown-item.last-preferred{\n border-bottom:1px solid #cacaca\n }\n .vti__dropdown-item .vti__flag{\n display:inline-block;\n margin-right:5px\n }\n .vti__input{\n color: inherit;\n border:none;\n border-radius:0 2px 2px 0;\n width:100%;\n outline:0;\n padding-left:7px\n }\n</style>"],"names":["clickOutside","ref","reactive","onMounted","computed","parsePhoneNumberFromString","watch","nextTick","list"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FieldPhone.vue.js","sources":["../../../../../src/components/FieldPhone/FieldPhone.vue"],"sourcesContent":["<template>\n <div \n :class=\"[\n rootClass, \n classes,\n $attrs.class, \n { 'bg-fourth-nano': validation }, \n { disabled: disabled }\n ]\" \n :style=\"[\n rootStyle, \n styles\n ]\" \n ref=\"rootElement\"\n class=\"vue3-reactive-tel-input\"\n >\n <div\n v-click-outside=\"clickedOutside\"\n :class=\"['vti__dropdown', { open: open }]\"\n :style=\"[dropdownStyle]\"\n :tabindex=\"dropdownOptions.tabindex\"\n @keydown=\"keyboardNav\"\n @click=\"toggleDropdown\"\n @keydown.esc=\"reset\"\n class=\"br-solid br-black-transp br-1px radius-thin\"\n >\n <span class=\"flex-nowrap flex flex-v-center p-medium vti__selection\">\n <span v-if=\"dropdownOptions.showFlags\" v-html=\"activeCountryFlag\" class=\"mn-r-nano\" />\n <span v-if=\"dropdownOptions.showDialCodeInSelection\" class=\"vti__country-code\">\n +{{ activeCountry && activeCountry.dialCode }}\n </span>\n <!-- <slot name=\"arrow-icon\" :open=\"open\"> -->\n <!-- <span class=\"vti__dropdown-arrow\">{{ open ? \"▲\" : \"▼\" }}</span> -->\n <!-- </slot> -->\n </span>\n <ul \n ref=\"list\" \n class=\"bs-black radius-small vti__dropdown-list\"\n v-show=\"open\" \n :class=\"dropdownOpenDirection\"\n :style=\"[listStyle]\"\n \n >\n <li\n v-for=\"(pb, index) in sortedCountries\"\n class=\"flex-nowrap flex w-max\"\n :class=\"['vti__dropdown-item', getItemClass(index, pb.iso2)]\"\n :key=\"pb.iso2 + (pb.preferred ? '-preferred' : '')\"\n @click=\"choose(pb)\"\n @mousemove=\"selectedIndex = index\"\n >\n <span v-if=\"dropdownOptions.showFlags\" v-html=\"pb.flag\" class=\"mn-r-thin\"/>\n <strong>{{ pb.name }}</strong>\n <span v-if=\"dropdownOptions.showDialCodeInList\"> +{{ pb.dialCode }} </span>\n </li>\n </ul>\n </div>\n <!-- <div :class=\"[divInputClass]\" > -->\n <input\n v-model=\"phone\"\n inputmode=\"numeric\" \n pattern=\"\\d*\"\n ref=\"input\"\n :type=\"inputOptions.type\"\n :autocomplete=\"inputOptions.autocomplete\"\n :autofocus=\"inputOptions.autofocus\"\n :class=\"['vti__input', inputOptions.styleClasses, inputClass, Iclasses]\"\n :style=\"[inputStyle, Istyles]\"\n :disabled=\"disabled\"\n :id=\"inputId !== ''? inputId : inputOptions.id\"\n :maxlength=\"inputOptions.maxlength\"\n :name=\"inputId !== ''? inputId : inputOptions.name\"\n :placeholder=\"parsedPlaceholder\"\n :readonly=\"inputOptions.readonly\"\n :required=\"inputOptions.required\"\n :tabindex=\"inputOptions.tabindex\"\n @blur=\"onBlur\"\n @focus=\"onFocus\"\n @input=\"onInput\"\n @keyup.enter=\"onEnter\"\n @keyup.space=\"onSpace\"\n />\n <slot></slot> <!-- slot outlet -->\n <!-- </div> -->\n\n </div>\n <!-- Validation -->\n <transition name=\"fade\">\n <div v-if=\"validation\" class=\"mn-t-thin mn-b-thin invalid-feedback\">\n * {{validation.message}}\n </div>\n </transition>\n</template>\n\n\n<script setup>\n import { ref, reactive, watch, computed, onMounted, nextTick } from 'vue';\n import { parsePhoneNumberFromString } from 'libphonenumber-js';\n\n import clickOutside from './click-outside';\n import allCountries from './all-countries';\n\n let vClickOutside = clickOutside\n\n const props = defineProps({\n modelValue: { type: String, default: '',},\n badClass: { type: [String, Array, Object], default: '', },\n goodClass: { type: [String, Array, Object], default: '', },\n badStyle: { type: [String, Array, Object], default: '', },\n goodStyle: { type: [String, Array, Object], default: '', },\n badInputClass: { type: [String, Array, Object], default: '', },\n goodInputClass: { type: [String, Array, Object], default: '', },\n badInputStyle: { type: [String, Array, Object], default: '', },\n goodInputStyle: { type: [String, Array, Object], default: '', },\n allCountries: { type: Array, default: () => allCountries, },\n autoFormat: { type: Boolean, default: () => true, },\n validation: { type: [Boolean, Object], default: false, },\n customValidate: { type: [Boolean, RegExp], default: () => false, },\n defaultCountry: { type: String, default: () => '', },\n disabled: { type: Boolean, default: () => false, },\n autoDefaultCountry: { type: Boolean, default: () => true },\n ignoredCountries: { type: Array, default: () => [], },\n invalidMsg: { type: String, default: () => '', },\n mode: { type: String, default: () => 'auto', },\n onlyCountries: { type: Array, default: () => [], },\n preferredCountries: { type: Array, default: () => [], },\n validCharactersOnly: { type: Boolean, default: () => false, },\n rootClass: { type: [String, Array, Object], default: () => '', },\n inputClass: { type: [String, Array, Object], default: () => {return ''}, },\n divInputClass: { type: [String, Array, Object], default: () => {return ''}, },\n rootStyle: { type: [String, Array, Object], default: () => {return ''}, },\n dropdownStyle: { type: [String, Array, Object], default: () => {return ''}, },\n listStyle: { type: [String, Array, Object], default: () => {return ''}, },\n inputStyle: { type: [String, Array, Object], default: () => {return ''}, },\n inputId: { type: [String, Array, Object], default: () => {return ''}, },\n Placeholder: { type: [String, Object, Function], default: () => {return ''}, },\n dropdownOptions: { \n type: Object, \n default: () => {\n return {\n showDialCodeInList: true,\n showDialCodeInSelection: false,\n showFlags: true,\n tabindex: 0\n }\n } \n },\n inputOptions: { \n type: Object, \n default: () => { \n return {\n autocomplete: 'on',\n autofocus: false,\n id: '',\n maxlength: 25,\n name: 'telephone',\n placeholder: 'Enter a phone number',\n readonly: false,\n required: false,\n tabindex: 0,\n type: 'tel',\n styleClasses: ''\n }\n }\n },\n });\n\n const emits = defineEmits([\n 'update:modelValue', \n 'change',\n 'validate', \n 'country-changed', \n 'open', \n 'close', \n 'blur', \n 'focus', \n 'enter', \n 'space'\n ]);\n\n const counter = ref(5);\n const initCounter = ref(5);\n const message = reactive({\n action: null,\n amount: null,\n });\n const phone = ref(props.modelValue ? props.modelValue : '');\n const activeCountryCode = ref('');\n const open = ref(false);\n const finishMounted = ref(false);\n const selectedIndex = ref(null);\n const typeToFindInput = ref('');\n const typeToFindTimer = ref(null);\n const dropdownOpenDirection = ref('below');\n const parsedPlaceholder = ref(props.Placeholder !== '' ? props.Placeholder : props.inputOptions.placeholder);\n\n const rootElement = ref(null)\n const list = ref(null)\n const input = ref(null)\n\n // Lifecycle hooks\n onMounted(async () => {\n if (props.modelValue) {\n phone.value = props.modelValue;\n }\n\n cleanInvalidCharacters();\n\n initializeCountry()\n .then(() => {\n if (!phone.value\n && props.inputOptions?.showDialCode\n && activeCountryCode.value) {\n phone.value = `+${activeCountryCode.value}`;\n }\n emits('validate', phoneObject.value);\n })\n .catch(console.error)\n .then(() => {\n finishMounted.value = true;\n });\n });\n\n // Computed properties\n const activeCountry = computed(() => {\n return findCountry(activeCountryCode.value);\n });\n\n const activeCountryFlag = computed(() => {\n return activeCountry.value ? activeCountry.value.flag : null;\n });\n\n const parsedMode = computed(() => {\n if (props.mode === 'auto') {\n if (!phone.value || phone.value[0] !== '+') {\n return 'national';\n }\n return 'international';\n }\n if (!['international', 'national'].includes(props.mode)) {\n console.error('Invalid value of prop \"mode\"');\n return 'international';\n }\n return props.mode;\n });\n\n const filteredCountries = computed(() => {\n if (props.onlyCountries && props.onlyCountries.length) {\n return props.allCountries.filter(({ iso2 }) => props.onlyCountries.includes(iso2.toUpperCase()));\n }\n\n if (props.ignoredCountries && props.ignoredCountries.length) {\n return props.allCountries.filter(({ iso2 }) =>\n !props.ignoredCountries.includes(iso2.toUpperCase()) && !props.ignoredCountries.includes(iso2.toLowerCase()),\n );\n }\n\n return props.allCountries;\n });\n const sortedCountries = computed(() => {\n const preferredCountries = getCountries(props.preferredCountries)\n .map(country => ({ ...country, preferred: true }));\n\n return [...preferredCountries, ...filteredCountries.value];\n });\n\n const phoneObject = computed(() => {\n let result = {};\n\n if (phone.value?.[0] === '+') {\n result = parsePhoneNumberFromString(phone.value) || {};\n } else {\n result = parsePhoneNumberFromString(phone.value, activeCountryCode.value) || {};\n }\n\n const { metadata, ...phoneDetails } = result;\n\n let valid = result.isValid?.();\n let formatted = phone.value;\n\n if (valid) {\n formatted = result.format?.(parsedMode.value.toUpperCase(), { nationalPrefix: false });\n }\n\n if (result.country && (props.ignoredCountries.length || props.onlyCountries.length)) {\n if (!findCountry(result.country)) {\n valid = false;\n result = { ...result, country: null };\n }\n }\n\n return {\n ...phoneDetails,\n countryCode: result.country,\n valid,\n country: activeCountry.value,\n formatted,\n };\n });\n\n const classes = computed(() => {\n return phoneObject.value.valid === true ? props.goodClass : \n phoneObject.value.valid === false ? props.badClass : undefined;\n });\n\n const styles = computed(() => {\n return phoneObject.value.valid === true ? props.goodStyle : \n phoneObject.value.valid === false ? props.badStyle : undefined;\n });\n\n const Iclasses = computed(() => {\n return phoneObject.value.valid === true ? props.goodInputClass : \n phoneObject.value.valid === false ? props.badInputClass : undefined;\n });\n\n const Istyles = computed(() => {\n return phoneObject.value.valid === true ? props.goodInputStyle : \n phoneObject.value.valid === false ? props.badInputStyle : undefined;\n });\n // ///////////\n // Watchers\n // ///////////\n watch(activeCountry, (newValue, oldValue) => {\n if (!newValue && oldValue?.iso2) {\n activeCountryCode.value = oldValue.iso2;\n return;\n }\n if (newValue?.iso2) {\n emits('country-changed', newValue);\n resetPlaceholder();\n }\n });\n\n // Следим за изменениями countryCode в phoneObject\n watch(() => phoneObject.value.countryCode, (newValue) => {\n activeCountryCode.value = newValue;\n });\n\n // Следим за изменениями валидности phoneObject\n watch(() => phoneObject.value.valid, () => {\n emits('validate', phoneObject.value);\n });\n\n // Следим за изменениями отформатированного номера в phoneObject\n watch(() => phoneObject.value.formatted, (newValue) => {\n if (!props.autoFormat || props.customValidate) {\n return;\n }\n emitInput(newValue);\n\n nextTick(() => {\n if (newValue && !props.modelValue) {\n phone.value = newValue;\n }\n });\n });\n\n // Следим за изменениями placeholder в inputOptions\n watch(() => props.inputOptions.placeholder, () => {\n resetPlaceholder();\n });\n\n // Следим за внешними изменениями значения (например, через v-model)\n watch(() => props.modelValue, (newValue, oldValue) => {\n if (!testCharacters()) {\n nextTick(() => {\n phone.value = oldValue;\n onInput();\n });\n } else {\n phone.value = newValue;\n }\n });\n\n // Следим за состоянием открытия/закрытия dropdown\n watch(open, (isDropdownOpened) => {\n if (isDropdownOpened) {\n setDropdownPosition();\n emits('open');\n } else {\n emits('close');\n }\n });\n\n // Methods\n function getCountry() {\n return fetch('https://ip2c.org/s')\n .then((response) => response.text())\n .then((response) => {\n const result = (response || '').toString();\n\n if (!result || result[0] !== '1') {\n throw new Error('unable to fetch the country');\n }\n\n return result.substr(2, 2);\n });\n }\n \n function setCaretPosition(ctrl, pos) {\n // Modern browsers\n if (ctrl.setSelectionRange) {\n ctrl.focus();\n ctrl.setSelectionRange(pos, pos);\n\n // IE8 and below\n } else if (ctrl.createTextRange) {\n const range = ctrl.createTextRange();\n range.collapse(true);\n range.moveEnd('character', pos);\n range.moveStart('character', pos);\n range.select();\n }\n }\n\n function resetPlaceholder() {\n parsedPlaceholder.value = props.inputOptions.placeholder;\n }\n function initializeCountry() {\n return new Promise((resolve) => {\n if (phone.value?.[0] === '+') { resolve(); return; }\n if (props.defaultCountry) { choose(props.defaultCountry); resolve(); return; }\n const fallbackCountry = props.preferredCountries[0] || filteredCountries.value[0];\n if (props.autoDefaultCountry) {\n getCountry()\n .then((res) => { choose(res || activeCountryCode.value); })\n .catch((error) => { console.warn(error); choose(fallbackCountry); })\n .finally(() => { resolve(); });\n } else {\n choose(fallbackCountry);\n resolve();\n }\n });\n }\n\n function getCountries(list = []) {\n return list.map((countryCode) => findCountry(countryCode)).filter(Boolean);\n }\n\n function findCountry(iso = '') {\n return filteredCountries.value.find((country) => country.iso2 === iso.toUpperCase());\n }\n\n function getItemClass(index, iso2) {\n const highlighted = selectedIndex.value === index;\n const lastPreferred = index === props.preferredCountries.length - 1;\n const preferred = props.preferredCountries.some((c) => c.toUpperCase() === iso2);\n return { highlighted, 'last-preferred': lastPreferred, preferred };\n }\n\n function choose(country) {\n let parsedCountry = typeof country === 'string' ? findCountry(country) : country;\n if (!parsedCountry) return;\n \n if (phone.value?.[0] === '+' && parsedCountry.iso2 && phoneObject.value.nationalNumber) {\n activeCountryCode.value = parsedCountry.iso2;\n phone.value = parsePhoneNumberFromString(phoneObject.value.nationalNumber, parsedCountry.iso2).formatInternational();\n return;\n }\n\n if (props.inputOptions?.showDialCode && parsedCountry) {\n phone.value = `+${parsedCountry.dialCode}`;\n return;\n }\n\n activeCountryCode.value = parsedCountry.iso2;\n emitInput(phone.value);\n }\n\n function cleanInvalidCharacters() {\n const currentPhone = phone.value;\n\n if (props.validCharactersOnly) {\n const results = phone.value.match(/[()\\-+0-9\\s]*/g);\n phone.value = results.join('');\n }\n\n if (props.customValidate && props.customValidate instanceof RegExp) {\n const results = phone.value.match(props.customValidate);\n phone.value = results ? results.join('') : '';\n }\n\n if (currentPhone !== phone.value) {\n emitInput(phone.value);\n }\n }\n\n function testCharacters() {\n if (props.validCharactersOnly) {\n const result = /^[()\\-+0-9\\s]*$/.test(phone.value);\n if (!result) return false;\n }\n if (props.customValidate) {\n return testCustomValidate();\n }\n return true;\n }\n\n function testCustomValidate() {\n return props.customValidate instanceof RegExp ? props.customValidate.test(phone.value) : false;\n }\n\n function onInput() {\n input.value.setCustomValidity(phoneObject.valid ? '' : props.invalidMsg);\n\n emitInput(phone.value);\n }\n\n function emitInput(value) {\n emits('update:modelValue', value);\n\n\n\n if (phoneObject.value.valid) { \n emits('change', phoneObject.value.number);\n emits('country', phoneObject.value.number);\n } else {\n emits('country', null);\n }\n }\n\n function onBlur() {\n emits('blur');\n }\n\n function onFocus() {\n setCaretPosition(input.value, phone.value.length);\n emits('focus');\n }\n\n function onEnter() {\n emits('enter');\n }\n\n function onSpace() {\n emits('space');\n }\n\n function focus() {\n input.value.focus();\n }\n\n function toggleDropdown() {\n if (props.disabled) return;\n open.value = !open.value;\n }\n\n function clickedOutside() {\n open.value = false;\n }\n\n function keyboardNav(e) {\n if (e.keyCode === 40) { // down arrow\n e.preventDefault();\n open.value = true;\n selectedIndex.value = selectedIndex.value === null ? 0 : Math.min(sortedCountries.value.length - 1, selectedIndex.value + 1);\n nextTick(() => {\n const selEle = list.value.children[selectedIndex.value];\n if (selEle.offsetTop + selEle.clientHeight > list.value.scrollTop + list.value.clientHeight) {\n list.value.scrollTop = selEle.offsetTop - list.value.clientHeight + selEle.clientHeight;\n }\n });\n } else if (e.keyCode === 38) { // up arrow\n e.preventDefault();\n open.value = true;\n selectedIndex.value = selectedIndex.value === null ? sortedCountries.value.length - 1 : Math.max(0, selectedIndex.value - 1);\n nextTick(() => {\n const selEle = list.value.children[selectedIndex.value];\n if (selEle.offsetTop < list.value.scrollTop) {\n list.value.scrollTop = selEle.offsetTop;\n }\n });\n } else if (e.keyCode === 13) { // enter key\n e.preventDefault();\n if (selectedIndex.value !== null) {\n choose(sortedCountries.value[selectedIndex.value]);\n }\n open.value = !open.value;\n } else { // typing a country's name\n typeToFindInput.value += e.key;\n clearTimeout(typeToFindTimer);\n typeToFindTimer = setTimeout(() => {\n typeToFindInput.value = '';\n }, 700);\n nextTick(() => {\n const typedCountryI = sortedCountries.value.slice(props.preferredCountries.length).findIndex((c) => c.name.toLowerCase().startsWith(typeToFindInput.value));\n if (typedCountryI >= 0) {\n selectedIndex.value = props.preferredCountries.length + typedCountryI;\n const selEle = list.value.children[selectedIndex.value];\n const needToScroll = selEle.offsetTop < list.value.scrollTop || selEle.offsetTop + selEle.clientHeight > list.value.scrollTop + list.value.clientHeight;\n if (needToScroll) {\n list.value.scrollTop = selEle.offsetTop - list.value.clientHeight / 2;\n }\n }\n });\n }\n }\n\n function reset() {\n selectedIndex.value = sortedCountries.value.map(c => c.iso2).indexOf(activeCountryCode.value);\n open.value = false;\n }\n\n function setDropdownPosition() {\n const spaceBelow = window.innerHeight - rootElement.value.getBoundingClientRect().bottom;\n const hasEnoughSpaceBelow = spaceBelow > 200;\n dropdownOpenDirection.value = hasEnoughSpaceBelow ? 'below' : 'above';\n }\n</script>\n\n<style lang=\"scss\">\n .vue3-reactive-tel-input{\n display:flex\n }\n .vue3-reactive-tel-input.disabled .dropdown,.vue3-reactive-tel-input.disabled .selection,.vue3-reactive-tel-input.disabled input{\n cursor:no-drop\n }\n .vti__dropdown{\n display:flex;\n flex-direction:column;\n align-content:center;\n justify-content:center;\n position:relative;\n padding:0.5rem;\n cursor:pointer\n }\n .vti__dropdown.show{\n max-height:300px;\n overflow:scroll\n }\n .vti__dropdown-list{\n z-index:1;\n padding:0;\n margin:0;\n text-align:left;\n list-style:none;\n max-height:200px;\n overflow-y:scroll;\n position:absolute;\n left:-1px;\n background-color:#fff;\n width:fit-content\n }\n .vti__dropdown-list.below{\n top:33px\n }\n .vti__dropdown-list.above{\n top:auto;\n bottom:100%\n }\n .vti__dropdown-arrow{\n transform:scaleY(.5);\n display:inline-block;\n color:#666\n }\n .vti__dropdown-item{\n cursor:pointer;\n padding:4px 15px\n }\n .vti__dropdown-item.last-preferred{\n border-bottom:1px solid #cacaca\n }\n .vti__dropdown-item .vti__flag{\n display:inline-block;\n margin-right:5px\n }\n .vti__input{\n color: inherit;\n border:none;\n border-radius:0 2px 2px 0;\n width:100%;\n outline:0;\n padding-left:7px\n }\n</style>"],"names":["parsePhoneNumberFromString","list"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FieldPhone.vue.js","sources":["../../../../../src/components/FieldPhone/FieldPhone.vue"],"sourcesContent":["<template>\n <div \n :class=\"[\n rootClass, \n classes,\n $attrs.class, \n { 'bg-fourth-nano': validation }, \n { disabled: disabled }\n ]\" \n :style=\"[\n rootStyle, \n styles\n ]\" \n ref=\"rootElement\"\n class=\"vue3-reactive-tel-input\"\n >\n <div\n v-click-outside=\"clickedOutside\"\n :class=\"['vti__dropdown', { open: open }]\"\n :style=\"[dropdownStyle]\"\n :tabindex=\"dropdownOptions.tabindex\"\n @keydown=\"keyboardNav\"\n @click=\"toggleDropdown\"\n @keydown.esc=\"reset\"\n class=\"br-solid br-black-transp br-1px radius-thin\"\n >\n <span class=\"flex-nowrap flex flex-v-center p-medium vti__selection\">\n <span v-if=\"dropdownOptions.showFlags\" v-html=\"activeCountryFlag\" class=\"mn-r-nano\" />\n <span v-if=\"dropdownOptions.showDialCodeInSelection\" class=\"vti__country-code\">\n +{{ activeCountry && activeCountry.dialCode }}\n </span>\n <!-- <slot name=\"arrow-icon\" :open=\"open\"> -->\n <!-- <span class=\"vti__dropdown-arrow\">{{ open ? \"▲\" : \"▼\" }}</span> -->\n <!-- </slot> -->\n </span>\n <ul \n ref=\"list\" \n class=\"bs-black radius-small vti__dropdown-list\"\n v-show=\"open\" \n :class=\"dropdownOpenDirection\"\n :style=\"[listStyle]\"\n \n >\n <li\n v-for=\"(pb, index) in sortedCountries\"\n class=\"flex-nowrap flex w-max\"\n :class=\"['vti__dropdown-item', getItemClass(index, pb.iso2)]\"\n :key=\"pb.iso2 + (pb.preferred ? '-preferred' : '')\"\n @click=\"choose(pb)\"\n @mousemove=\"selectedIndex = index\"\n >\n <span v-if=\"dropdownOptions.showFlags\" v-html=\"pb.flag\" class=\"mn-r-thin\"/>\n <strong>{{ pb.name }}</strong>\n <span v-if=\"dropdownOptions.showDialCodeInList\"> +{{ pb.dialCode }} </span>\n </li>\n </ul>\n </div>\n <!-- <div :class=\"[divInputClass]\" > -->\n <input\n v-model=\"phone\"\n inputmode=\"numeric\" \n pattern=\"\\d*\"\n ref=\"input\"\n :type=\"inputOptions.type\"\n :autocomplete=\"inputOptions.autocomplete\"\n :autofocus=\"inputOptions.autofocus\"\n :class=\"['vti__input', inputOptions.styleClasses, inputClass, Iclasses]\"\n :style=\"[inputStyle, Istyles]\"\n :disabled=\"disabled\"\n :id=\"inputId !== ''? inputId : inputOptions.id\"\n :maxlength=\"inputOptions.maxlength\"\n :name=\"inputId !== ''? inputId : inputOptions.name\"\n :placeholder=\"parsedPlaceholder\"\n :readonly=\"inputOptions.readonly\"\n :required=\"inputOptions.required\"\n :tabindex=\"inputOptions.tabindex\"\n @blur=\"onBlur\"\n @focus=\"onFocus\"\n @input=\"onInput\"\n @keyup.enter=\"onEnter\"\n @keyup.space=\"onSpace\"\n />\n <slot></slot> <!-- slot outlet -->\n <!-- </div> -->\n\n </div>\n <!-- Validation -->\n <transition name=\"fade\">\n <div v-if=\"validation\" class=\"mn-t-thin mn-b-thin invalid-feedback\">\n * {{validation.message}}\n </div>\n </transition>\n</template>\n\n\n<script setup>\n import { ref, reactive, watch, computed, onMounted, nextTick } from 'vue';\n import { parsePhoneNumberFromString } from 'libphonenumber-js';\n\n import clickOutside from './click-outside.js';\n import allCountries from './all-countries.js';\n\n let vClickOutside = clickOutside\n\n const props = defineProps({\n modelValue: { type: String, default: '',},\n badClass: { type: [String, Array, Object], default: '', },\n goodClass: { type: [String, Array, Object], default: '', },\n badStyle: { type: [String, Array, Object], default: '', },\n goodStyle: { type: [String, Array, Object], default: '', },\n badInputClass: { type: [String, Array, Object], default: '', },\n goodInputClass: { type: [String, Array, Object], default: '', },\n badInputStyle: { type: [String, Array, Object], default: '', },\n goodInputStyle: { type: [String, Array, Object], default: '', },\n allCountries: { type: Array, default: () => allCountries, },\n autoFormat: { type: Boolean, default: () => true, },\n validation: { type: [Boolean, Object], default: false, },\n customValidate: { type: [Boolean, RegExp], default: () => false, },\n defaultCountry: { type: String, default: () => '', },\n disabled: { type: Boolean, default: () => false, },\n autoDefaultCountry: { type: Boolean, default: () => true },\n ignoredCountries: { type: Array, default: () => [], },\n invalidMsg: { type: String, default: () => '', },\n mode: { type: String, default: () => 'auto', },\n onlyCountries: { type: Array, default: () => [], },\n preferredCountries: { type: Array, default: () => [], },\n validCharactersOnly: { type: Boolean, default: () => false, },\n rootClass: { type: [String, Array, Object], default: () => '', },\n inputClass: { type: [String, Array, Object], default: () => {return ''}, },\n divInputClass: { type: [String, Array, Object], default: () => {return ''}, },\n rootStyle: { type: [String, Array, Object], default: () => {return ''}, },\n dropdownStyle: { type: [String, Array, Object], default: () => {return ''}, },\n listStyle: { type: [String, Array, Object], default: () => {return ''}, },\n inputStyle: { type: [String, Array, Object], default: () => {return ''}, },\n inputId: { type: [String, Array, Object], default: () => {return ''}, },\n Placeholder: { type: [String, Object, Function], default: () => {return ''}, },\n dropdownOptions: { \n type: Object, \n default: () => {\n return {\n showDialCodeInList: true,\n showDialCodeInSelection: false,\n showFlags: true,\n tabindex: 0\n }\n } \n },\n inputOptions: { \n type: Object, \n default: () => { \n return {\n autocomplete: 'on',\n autofocus: false,\n id: '',\n maxlength: 25,\n name: 'telephone',\n placeholder: 'Enter a phone number',\n readonly: false,\n required: false,\n tabindex: 0,\n type: 'tel',\n styleClasses: ''\n }\n }\n },\n });\n\n const emits = defineEmits([\n 'update:modelValue', \n 'change',\n 'validate', \n 'country-changed', \n 'open', \n 'close', \n 'blur', \n 'focus', \n 'enter', \n 'space'\n ]);\n\n const counter = ref(5);\n const initCounter = ref(5);\n const message = reactive({\n action: null,\n amount: null,\n });\n const phone = ref(props.modelValue ? props.modelValue : '');\n const activeCountryCode = ref('');\n const open = ref(false);\n const finishMounted = ref(false);\n const selectedIndex = ref(null);\n const typeToFindInput = ref('');\n const typeToFindTimer = ref(null);\n const dropdownOpenDirection = ref('below');\n const parsedPlaceholder = ref(props.Placeholder !== '' ? props.Placeholder : props.inputOptions.placeholder);\n\n const rootElement = ref(null)\n const list = ref(null)\n const input = ref(null)\n\n // Lifecycle hooks\n onMounted(async () => {\n if (props.modelValue) {\n phone.value = props.modelValue;\n }\n\n cleanInvalidCharacters();\n\n initializeCountry()\n .then(() => {\n if (!phone.value\n && props.inputOptions?.showDialCode\n && activeCountryCode.value) {\n phone.value = `+${activeCountryCode.value}`;\n }\n emits('validate', phoneObject.value);\n })\n .catch(console.error)\n .then(() => {\n finishMounted.value = true;\n });\n });\n\n // Computed properties\n const activeCountry = computed(() => {\n return findCountry(activeCountryCode.value);\n });\n\n const activeCountryFlag = computed(() => {\n return activeCountry.value ? activeCountry.value.flag : null;\n });\n\n const parsedMode = computed(() => {\n if (props.mode === 'auto') {\n if (!phone.value || phone.value[0] !== '+') {\n return 'national';\n }\n return 'international';\n }\n if (!['international', 'national'].includes(props.mode)) {\n console.error('Invalid value of prop \"mode\"');\n return 'international';\n }\n return props.mode;\n });\n\n const filteredCountries = computed(() => {\n if (props.onlyCountries && props.onlyCountries.length) {\n return props.allCountries.filter(({ iso2 }) => props.onlyCountries.includes(iso2.toUpperCase()));\n }\n\n if (props.ignoredCountries && props.ignoredCountries.length) {\n return props.allCountries.filter(({ iso2 }) =>\n !props.ignoredCountries.includes(iso2.toUpperCase()) && !props.ignoredCountries.includes(iso2.toLowerCase()),\n );\n }\n\n return props.allCountries;\n });\n const sortedCountries = computed(() => {\n const preferredCountries = getCountries(props.preferredCountries)\n .map(country => ({ ...country, preferred: true }));\n\n return [...preferredCountries, ...filteredCountries.value];\n });\n\n const phoneObject = computed(() => {\n let result = {};\n\n if (phone.value?.[0] === '+') {\n result = parsePhoneNumberFromString(phone.value) || {};\n } else {\n result = parsePhoneNumberFromString(phone.value, activeCountryCode.value) || {};\n }\n\n const { metadata, ...phoneDetails } = result;\n\n let valid = result.isValid?.();\n let formatted = phone.value;\n\n if (valid) {\n formatted = result.format?.(parsedMode.value.toUpperCase(), { nationalPrefix: false });\n }\n\n if (result.country && (props.ignoredCountries.length || props.onlyCountries.length)) {\n if (!findCountry(result.country)) {\n valid = false;\n result = { ...result, country: null };\n }\n }\n\n return {\n ...phoneDetails,\n countryCode: result.country,\n valid,\n country: activeCountry.value,\n formatted,\n };\n });\n\n const classes = computed(() => {\n return phoneObject.value.valid === true ? props.goodClass : \n phoneObject.value.valid === false ? props.badClass : undefined;\n });\n\n const styles = computed(() => {\n return phoneObject.value.valid === true ? props.goodStyle : \n phoneObject.value.valid === false ? props.badStyle : undefined;\n });\n\n const Iclasses = computed(() => {\n return phoneObject.value.valid === true ? props.goodInputClass : \n phoneObject.value.valid === false ? props.badInputClass : undefined;\n });\n\n const Istyles = computed(() => {\n return phoneObject.value.valid === true ? props.goodInputStyle : \n phoneObject.value.valid === false ? props.badInputStyle : undefined;\n });\n // ///////////\n // Watchers\n // ///////////\n watch(activeCountry, (newValue, oldValue) => {\n if (!newValue && oldValue?.iso2) {\n activeCountryCode.value = oldValue.iso2;\n return;\n }\n if (newValue?.iso2) {\n emits('country-changed', newValue);\n resetPlaceholder();\n }\n });\n\n // Следим за изменениями countryCode в phoneObject\n watch(() => phoneObject.value.countryCode, (newValue) => {\n activeCountryCode.value = newValue;\n });\n\n // Следим за изменениями валидности phoneObject\n watch(() => phoneObject.value.valid, () => {\n emits('validate', phoneObject.value);\n });\n\n // Следим за изменениями отформатированного номера в phoneObject\n watch(() => phoneObject.value.formatted, (newValue) => {\n if (!props.autoFormat || props.customValidate) {\n return;\n }\n emitInput(newValue);\n\n nextTick(() => {\n if (newValue && !props.modelValue) {\n phone.value = newValue;\n }\n });\n });\n\n // Следим за изменениями placeholder в inputOptions\n watch(() => props.inputOptions.placeholder, () => {\n resetPlaceholder();\n });\n\n // Следим за внешними изменениями значения (например, через v-model)\n watch(() => props.modelValue, (newValue, oldValue) => {\n if (!testCharacters()) {\n nextTick(() => {\n phone.value = oldValue;\n onInput();\n });\n } else {\n phone.value = newValue;\n }\n });\n\n // Следим за состоянием открытия/закрытия dropdown\n watch(open, (isDropdownOpened) => {\n if (isDropdownOpened) {\n setDropdownPosition();\n emits('open');\n } else {\n emits('close');\n }\n });\n\n // Methods\n function getCountry() {\n return fetch('https://ip2c.org/s')\n .then((response) => response.text())\n .then((response) => {\n const result = (response || '').toString();\n\n if (!result || result[0] !== '1') {\n throw new Error('unable to fetch the country');\n }\n\n return result.substr(2, 2);\n });\n }\n \n function setCaretPosition(ctrl, pos) {\n // Modern browsers\n if (ctrl.setSelectionRange) {\n ctrl.focus();\n ctrl.setSelectionRange(pos, pos);\n\n // IE8 and below\n } else if (ctrl.createTextRange) {\n const range = ctrl.createTextRange();\n range.collapse(true);\n range.moveEnd('character', pos);\n range.moveStart('character', pos);\n range.select();\n }\n }\n\n function resetPlaceholder() {\n parsedPlaceholder.value = props.inputOptions.placeholder;\n }\n function initializeCountry() {\n return new Promise((resolve) => {\n if (phone.value?.[0] === '+') { resolve(); return; }\n if (props.defaultCountry) { choose(props.defaultCountry); resolve(); return; }\n const fallbackCountry = props.preferredCountries[0] || filteredCountries.value[0];\n if (props.autoDefaultCountry) {\n getCountry()\n .then((res) => { choose(res || activeCountryCode.value); })\n .catch((error) => { console.warn(error); choose(fallbackCountry); })\n .finally(() => { resolve(); });\n } else {\n choose(fallbackCountry);\n resolve();\n }\n });\n }\n\n function getCountries(list = []) {\n return list.map((countryCode) => findCountry(countryCode)).filter(Boolean);\n }\n\n function findCountry(iso = '') {\n return filteredCountries.value.find((country) => country.iso2 === iso.toUpperCase());\n }\n\n function getItemClass(index, iso2) {\n const highlighted = selectedIndex.value === index;\n const lastPreferred = index === props.preferredCountries.length - 1;\n const preferred = props.preferredCountries.some((c) => c.toUpperCase() === iso2);\n return { highlighted, 'last-preferred': lastPreferred, preferred };\n }\n\n function choose(country) {\n let parsedCountry = typeof country === 'string' ? findCountry(country) : country;\n if (!parsedCountry) return;\n \n if (phone.value?.[0] === '+' && parsedCountry.iso2 && phoneObject.value.nationalNumber) {\n activeCountryCode.value = parsedCountry.iso2;\n phone.value = parsePhoneNumberFromString(phoneObject.value.nationalNumber, parsedCountry.iso2).formatInternational();\n return;\n }\n\n if (props.inputOptions?.showDialCode && parsedCountry) {\n phone.value = `+${parsedCountry.dialCode}`;\n return;\n }\n\n activeCountryCode.value = parsedCountry.iso2;\n emitInput(phone.value);\n }\n\n function cleanInvalidCharacters() {\n const currentPhone = phone.value;\n\n if (props.validCharactersOnly) {\n const results = phone.value.match(/[()\\-+0-9\\s]*/g);\n phone.value = results.join('');\n }\n\n if (props.customValidate && props.customValidate instanceof RegExp) {\n const results = phone.value.match(props.customValidate);\n phone.value = results ? results.join('') : '';\n }\n\n if (currentPhone !== phone.value) {\n emitInput(phone.value);\n }\n }\n\n function testCharacters() {\n if (props.validCharactersOnly) {\n const result = /^[()\\-+0-9\\s]*$/.test(phone.value);\n if (!result) return false;\n }\n if (props.customValidate) {\n return testCustomValidate();\n }\n return true;\n }\n\n function testCustomValidate() {\n return props.customValidate instanceof RegExp ? props.customValidate.test(phone.value) : false;\n }\n\n function onInput() {\n input.value.setCustomValidity(phoneObject.valid ? '' : props.invalidMsg);\n\n emitInput(phone.value);\n }\n\n function emitInput(value) {\n emits('update:modelValue', value);\n\n\n\n if (phoneObject.value.valid) { \n emits('change', phoneObject.value.number);\n emits('country', phoneObject.value.number);\n } else {\n emits('country', null);\n }\n }\n\n function onBlur() {\n emits('blur');\n }\n\n function onFocus() {\n setCaretPosition(input.value, phone.value.length);\n emits('focus');\n }\n\n function onEnter() {\n emits('enter');\n }\n\n function onSpace() {\n emits('space');\n }\n\n function focus() {\n input.value.focus();\n }\n\n function toggleDropdown() {\n if (props.disabled) return;\n open.value = !open.value;\n }\n\n function clickedOutside() {\n open.value = false;\n }\n\n function keyboardNav(e) {\n if (e.keyCode === 40) { // down arrow\n e.preventDefault();\n open.value = true;\n selectedIndex.value = selectedIndex.value === null ? 0 : Math.min(sortedCountries.value.length - 1, selectedIndex.value + 1);\n nextTick(() => {\n const selEle = list.value.children[selectedIndex.value];\n if (selEle.offsetTop + selEle.clientHeight > list.value.scrollTop + list.value.clientHeight) {\n list.value.scrollTop = selEle.offsetTop - list.value.clientHeight + selEle.clientHeight;\n }\n });\n } else if (e.keyCode === 38) { // up arrow\n e.preventDefault();\n open.value = true;\n selectedIndex.value = selectedIndex.value === null ? sortedCountries.value.length - 1 : Math.max(0, selectedIndex.value - 1);\n nextTick(() => {\n const selEle = list.value.children[selectedIndex.value];\n if (selEle.offsetTop < list.value.scrollTop) {\n list.value.scrollTop = selEle.offsetTop;\n }\n });\n } else if (e.keyCode === 13) { // enter key\n e.preventDefault();\n if (selectedIndex.value !== null) {\n choose(sortedCountries.value[selectedIndex.value]);\n }\n open.value = !open.value;\n } else { // typing a country's name\n typeToFindInput.value += e.key;\n clearTimeout(typeToFindTimer);\n typeToFindTimer = setTimeout(() => {\n typeToFindInput.value = '';\n }, 700);\n nextTick(() => {\n const typedCountryI = sortedCountries.value.slice(props.preferredCountries.length).findIndex((c) => c.name.toLowerCase().startsWith(typeToFindInput.value));\n if (typedCountryI >= 0) {\n selectedIndex.value = props.preferredCountries.length + typedCountryI;\n const selEle = list.value.children[selectedIndex.value];\n const needToScroll = selEle.offsetTop < list.value.scrollTop || selEle.offsetTop + selEle.clientHeight > list.value.scrollTop + list.value.clientHeight;\n if (needToScroll) {\n list.value.scrollTop = selEle.offsetTop - list.value.clientHeight / 2;\n }\n }\n });\n }\n }\n\n function reset() {\n selectedIndex.value = sortedCountries.value.map(c => c.iso2).indexOf(activeCountryCode.value);\n open.value = false;\n }\n\n function setDropdownPosition() {\n const spaceBelow = window.innerHeight - rootElement.value.getBoundingClientRect().bottom;\n const hasEnoughSpaceBelow = spaceBelow > 200;\n dropdownOpenDirection.value = hasEnoughSpaceBelow ? 'below' : 'above';\n }\n</script>\n\n<style lang=\"scss\">\n .vue3-reactive-tel-input{\n display:flex\n }\n .vue3-reactive-tel-input.disabled .dropdown,.vue3-reactive-tel-input.disabled .selection,.vue3-reactive-tel-input.disabled input{\n cursor:no-drop\n }\n .vti__dropdown{\n display:flex;\n flex-direction:column;\n align-content:center;\n justify-content:center;\n position:relative;\n padding:0.5rem;\n cursor:pointer\n }\n .vti__dropdown.show{\n max-height:300px;\n overflow:scroll\n }\n .vti__dropdown-list{\n z-index:1;\n padding:0;\n margin:0;\n text-align:left;\n list-style:none;\n max-height:200px;\n overflow-y:scroll;\n position:absolute;\n left:-1px;\n background-color:#fff;\n width:fit-content\n }\n .vti__dropdown-list.below{\n top:33px\n }\n .vti__dropdown-list.above{\n top:auto;\n bottom:100%\n }\n .vti__dropdown-arrow{\n transform:scaleY(.5);\n display:inline-block;\n color:#666\n }\n .vti__dropdown-item{\n cursor:pointer;\n padding:4px 15px\n }\n .vti__dropdown-item.last-preferred{\n border-bottom:1px solid #cacaca\n }\n .vti__dropdown-item .vti__flag{\n display:inline-block;\n margin-right:5px\n }\n .vti__input{\n color: inherit;\n border:none;\n border-radius:0 2px 2px 0;\n width:100%;\n outline:0;\n padding-left:7px\n }\n</style>"],"names":["parsePhoneNumberFromString","list"],"mappings":"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"}
|