@ozdao/martyrs 0.2.480 → 0.2.482
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 +4 -13
- package/dist/{Media-CKk33U4A.js → Media-JBERcJWj.js} +1 -1
- package/dist/{Media-B1ZP3D7B.cjs → Media-p7Q8ZAQM.cjs} +1 -1
- package/dist/{abac-XF1JVCLI.cjs → abac-6LjoG9u-.cjs} +107 -26
- package/dist/{abac-BuL5pUZ4.js → abac-Cf_9lCSh.js} +107 -26
- package/dist/builder.cjs +8 -12
- package/dist/builder.js +8 -12
- package/dist/globals.server.cjs +1 -1
- package/dist/globals.server.js +1 -1
- package/dist/{main-BhAiwmnI.js → main-AtCVQKF9.js} +2855 -4162
- package/dist/main-B-we7C0w.cjs +11 -0
- package/dist/martyrs/src/components/Button/{Button.vue.cjs → Button.vue2.cjs} +2 -2
- package/dist/martyrs/src/components/Button/Button.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/Button/{Button.vue.js → Button.vue2.js} +2 -2
- package/dist/martyrs/src/components/Button/{Button.vue.cjs.map → Button.vue2.js.map} +1 -1
- package/dist/martyrs/src/components/Checkbox/Checkbox.vue.cjs +28 -7
- package/dist/martyrs/src/components/Checkbox/Checkbox.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/Checkbox/Checkbox.vue.js +29 -8
- package/dist/martyrs/src/components/Checkbox/Checkbox.vue.js.map +1 -1
- package/dist/martyrs/src/components/Chips/Chips.vue2.cjs +5 -8
- package/dist/martyrs/src/components/Chips/Chips.vue2.cjs.map +1 -1
- package/dist/martyrs/src/components/Chips/Chips.vue2.js +6 -9
- package/dist/martyrs/src/components/Chips/Chips.vue2.js.map +1 -1
- package/dist/martyrs/src/components/Feed/Carousel.vue.cjs +84 -0
- package/dist/martyrs/src/components/Feed/Carousel.vue.cjs.map +1 -0
- package/dist/martyrs/src/components/Feed/Carousel.vue.js +84 -0
- package/dist/martyrs/src/components/Feed/Carousel.vue.js.map +1 -0
- package/dist/martyrs/src/components/Feed/Feed.vue.cjs +4 -4
- package/dist/martyrs/src/components/Feed/Feed.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/Feed/Feed.vue.js +4 -4
- package/dist/martyrs/src/components/Feed/Feed.vue.js.map +1 -1
- package/dist/martyrs/src/components/Field/Field.vue.cjs +2 -1
- package/dist/martyrs/src/components/Field/Field.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/Field/Field.vue.js +2 -1
- package/dist/martyrs/src/components/Field/Field.vue.js.map +1 -1
- package/dist/martyrs/src/components/PhotoViewer/PhotoViewer.vue.cjs +203 -151
- package/dist/martyrs/src/components/PhotoViewer/PhotoViewer.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/PhotoViewer/PhotoViewer.vue.js +204 -152
- package/dist/martyrs/src/components/PhotoViewer/PhotoViewer.vue.js.map +1 -1
- package/dist/martyrs/src/components/Popup/{Popup.vue.cjs → Popup.vue2.cjs} +2 -2
- package/dist/martyrs/src/components/Popup/Popup.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/Popup/{Popup.vue.js → Popup.vue2.js} +2 -2
- package/dist/martyrs/src/components/Popup/{Popup.vue.cjs.map → Popup.vue2.js.map} +1 -1
- package/dist/martyrs/src/components/Radio/Radio.vue.cjs +2 -2
- package/dist/martyrs/src/components/Radio/Radio.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/Radio/Radio.vue.js +2 -2
- package/dist/martyrs/src/components/Radio/Radio.vue.js.map +1 -1
- package/dist/martyrs/src/components/Skeleton/Skeleton.vue.cjs +4 -3
- package/dist/martyrs/src/components/Skeleton/Skeleton.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/Skeleton/Skeleton.vue.js +4 -3
- package/dist/martyrs/src/components/Skeleton/Skeleton.vue.js.map +1 -1
- package/dist/martyrs/src/components/Slider/{Slider.native.vue.cjs → Slider.vue.cjs} +22 -80
- package/dist/martyrs/src/components/Slider/Slider.vue.cjs.map +1 -0
- package/dist/martyrs/src/components/Slider/{Slider.native.vue.js → Slider.vue.js} +23 -81
- package/dist/martyrs/src/components/Slider/Slider.vue.js.map +1 -0
- package/dist/martyrs/src/components/Status/Status.vue.cjs.map +1 -1
- package/dist/martyrs/src/components/Status/Status.vue.js.map +1 -1
- package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.cjs +4 -2
- package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.cjs.map +1 -1
- package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.js +4 -2
- package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs +3 -1
- 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 +4 -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/ProfileEdit.vue.cjs +22 -149
- 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 +24 -151
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js.map +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.cjs +77 -0
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.js +77 -0
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.js.map +1 -0
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.cjs +121 -0
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js +121 -0
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js.map +1 -0
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditSidebar.vue.cjs +38 -0
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditSidebar.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditSidebar.vue.js +38 -0
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditSidebar.vue.js.map +1 -0
- package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/router/users.cjs +23 -16
- package/dist/martyrs/src/modules/auth/views/router/users.cjs.map +1 -1
- package/dist/martyrs/src/modules/auth/views/router/users.js +23 -16
- package/dist/martyrs/src/modules/auth/views/router/users.js.map +1 -1
- package/dist/martyrs/src/modules/community/components/blocks/FooterBlogpost.vue.cjs +3 -3
- 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 +3 -3
- package/dist/martyrs/src/modules/community/components/blocks/FooterBlogpost.vue.js.map +1 -1
- package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js +6 -6
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs +5 -4
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +5 -4
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js.map +1 -1
- package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs +2 -2
- package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +2 -2
- package/dist/martyrs/src/modules/community/components/sections/Comment.vue.cjs +92 -62
- 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 +93 -63
- package/dist/martyrs/src/modules/community/components/sections/Comment.vue.js.map +1 -1
- package/dist/martyrs/src/modules/community/components/sections/Comments.vue.cjs +82 -53
- package/dist/martyrs/src/modules/community/components/sections/Comments.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/community/components/sections/Comments.vue.js +82 -53
- package/dist/martyrs/src/modules/community/components/sections/Comments.vue.js.map +1 -1
- package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.cjs +2 -6
- package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.js +2 -6
- package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.js.map +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs +2 -2
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +2 -2
- package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.cjs +2 -2
- package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +2 -2
- package/dist/martyrs/src/modules/events/components/pages/Events.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/pages/Events.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.cjs +3 -9
- package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.js +3 -9
- package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.js.map +1 -1
- package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.cjs +1 -1
- package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.js +5 -5
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +2 -2
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +10 -10
- package/dist/martyrs/src/modules/globals/globals.client.cjs +2 -0
- package/dist/martyrs/src/modules/globals/globals.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/globals.client.js +2 -0
- package/dist/martyrs/src/modules/globals/globals.client.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/AlertDialog.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/AlertDialog.vue.js +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/blocks/PopupAuth.vue.cjs +84 -0
- package/dist/martyrs/src/modules/globals/views/components/blocks/PopupAuth.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/globals/views/components/blocks/PopupAuth.vue.js +84 -0
- package/dist/martyrs/src/modules/globals/views/components/blocks/PopupAuth.vue.js.map +1 -0
- package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.cjs +2 -2
- package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.js +2 -2
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs +2 -2
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js +2 -2
- package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/mixins/mixins.cjs +17 -0
- package/dist/martyrs/src/modules/globals/views/mixins/mixins.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/mixins/mixins.js +17 -0
- package/dist/martyrs/src/modules/globals/views/mixins/mixins.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/plugins/popup.auth.plugin.cjs +70 -0
- package/dist/martyrs/src/modules/globals/views/plugins/popup.auth.plugin.cjs.map +1 -0
- package/dist/martyrs/src/modules/globals/views/plugins/popup.auth.plugin.js +70 -0
- package/dist/martyrs/src/modules/globals/views/plugins/popup.auth.plugin.js.map +1 -0
- package/dist/martyrs/src/modules/icons/entities/IconList.vue.cjs +35 -0
- package/dist/martyrs/src/modules/icons/entities/IconList.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/icons/entities/IconList.vue.js +35 -0
- package/dist/martyrs/src/modules/icons/entities/IconList.vue.js.map +1 -0
- package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.cjs +1 -3
- package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.js +1 -3
- package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.cjs +1 -3
- package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.js +1 -3
- package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconLike.vue.cjs +1 -3
- package/dist/martyrs/src/modules/icons/navigation/IconLike.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconLike.vue.js +1 -3
- package/dist/martyrs/src/modules/icons/navigation/IconLike.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconMute.vue.cjs +1 -3
- package/dist/martyrs/src/modules/icons/navigation/IconMute.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconMute.vue.js +1 -3
- package/dist/martyrs/src/modules/icons/navigation/IconMute.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.cjs +1 -3
- package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.js +1 -3
- package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.cjs +21 -20
- package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.js +21 -20
- package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.cjs +1 -3
- package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.js +1 -3
- package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.cjs +6 -13
- package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.js +6 -13
- package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconUnMute.vue.cjs +1 -3
- package/dist/martyrs/src/modules/icons/navigation/IconUnMute.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconUnMute.vue.js +1 -3
- package/dist/martyrs/src/modules/icons/navigation/IconUnMute.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.cjs +1 -3
- package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.js +1 -3
- package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.js.map +1 -1
- package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.cjs +1 -3
- package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.js +41 -43
- package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.js.map +1 -1
- package/dist/martyrs/src/modules/notifications/components/blocks/NotificationItem.vue.cjs +8 -8
- package/dist/martyrs/src/modules/notifications/components/blocks/NotificationItem.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/notifications/components/blocks/NotificationItem.vue.js +8 -8
- package/dist/martyrs/src/modules/notifications/components/blocks/NotificationItem.vue.js.map +1 -1
- package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.cjs +50 -51
- 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 +51 -52
- package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +2 -2
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +2 -2
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +2 -2
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +2 -2
- package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs +2 -2
- package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +2 -2
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.cjs +2 -2
- package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.cjs +7 -4
- package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.js +18 -15
- package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.js.map +1 -1
- package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.cjs +1 -1
- package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js +1 -1
- package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js +1 -1
- package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.cjs +2 -2
- package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.js +2 -2
- package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.cjs +7 -2
- 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 +8 -3
- 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 +11 -12
- package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.js +12 -13
- package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.cjs +33 -24
- package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.js +36 -27
- package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.cjs +4 -4
- package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.js +4 -4
- package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/elements/Price.vue.cjs +7 -5
- 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 +7 -5
- package/dist/martyrs/src/modules/products/components/elements/Price.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs +2 -2
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/products/components/pages/LeftoverEdit.vue.cjs +2 -2
- package/dist/martyrs/src/modules/products/components/pages/LeftoverEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs +58 -41
- 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 +60 -43
- 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 +105 -85
- 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 +107 -87
- package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.cjs +2 -2
- package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js +2 -2
- package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.cjs +2 -2
- package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js +2 -2
- package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.cjs +145 -0
- package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.js +145 -0
- package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.js.map +1 -0
- package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.cjs +2 -2
- package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +2 -2
- package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.cjs +46 -31
- package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js +50 -35
- package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/ProductsPopular.vue.cjs +43 -0
- package/dist/martyrs/src/modules/products/components/sections/ProductsPopular.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/products/components/sections/ProductsPopular.vue.js +43 -0
- package/dist/martyrs/src/modules/products/components/sections/ProductsPopular.vue.js.map +1 -0
- package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.cjs +131 -0
- package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.js +131 -0
- package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.js.map +1 -0
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +1 -1
- package/dist/martyrs/src/modules/products/products.client.cjs +3 -3
- package/dist/martyrs/src/modules/products/products.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/products.client.js +3 -3
- package/dist/martyrs/src/modules/products/products.client.js.map +1 -1
- package/dist/martyrs/src/modules/products/store/products.cjs +4 -0
- package/dist/martyrs/src/modules/products/store/products.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/store/products.js +4 -0
- package/dist/martyrs/src/modules/products/store/products.js.map +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js +1 -1
- package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.cjs +2 -2
- package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js +2 -2
- package/dist/martyrs/src/modules/spots/components/pages/Map.vue.cjs +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs +2 -2
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.cjs +2 -2
- package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.cjs +2 -2
- package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js +2 -2
- package/dist/martyrs.cjs.js +1 -1
- package/dist/martyrs.css +1 -1
- package/dist/martyrs.es.js +1 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/utils.cjs +1 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/utils.js +1 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/utils.cjs +1 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/utils.js +1 -1
- package/dist/organizations.server.cjs +1 -1
- package/dist/organizations.server.js +1 -1
- package/dist/products.server.cjs +111 -34
- package/dist/products.server.js +111 -34
- package/dist/style.css +196 -170
- package/package.json +1 -1
- package/src/.martyrs/chunks.json +325 -0
- package/src/.martyrs/filemap.json +6802 -0
- package/src/.martyrs/semantic-analysis.json +307 -0
- package/src/.martyrs/toc.json +14 -0
- package/src/builder/rspack/rspack.config.api.js +8 -11
- package/src/components/Button/Button.vue +2 -2
- package/src/components/Checkbox/Checkbox.vue +28 -16
- package/src/components/Chips/Chips.vue +4 -4
- package/src/components/Feed/Carousel.vue +72 -0
- package/src/components/Feed/Feed.vue +2 -2
- package/src/components/Field/Field.vue +1 -0
- package/src/components/PhotoViewer/PhotoViewer.vue +307 -220
- package/src/components/Radio/Radio.vue +2 -10
- package/src/components/Skeleton/Skeleton.vue +9 -12
- package/src/components/Slider/Slider.vue +220 -100
- package/src/components/Status/Status.vue +0 -1
- package/src/components/Tooltip/Tooltip.vue +2 -2
- package/src/modules/auth/views/components/pages/Profile.vue +1 -1
- package/src/modules/auth/views/components/pages/ProfileEdit.old.vue +189 -0
- package/src/modules/auth/views/components/pages/ProfileEdit.vue +19 -182
- package/src/modules/auth/views/components/pages/ProfileEditAccount.vue +72 -0
- package/src/modules/auth/views/components/pages/ProfileEditProfile.vue +110 -0
- package/src/modules/auth/views/components/pages/ProfileEditSidebar.vue +28 -0
- package/src/modules/auth/views/router/users.js +23 -12
- package/src/modules/community/components/blocks/FooterBlogpost.vue +3 -3
- package/src/modules/community/components/pages/BlogPost.vue +2 -1
- package/src/modules/community/components/sections/Comment.vue +161 -57
- package/src/modules/community/components/sections/Comments.vue +120 -63
- package/src/modules/community/components/sections/HotPosts.vue +7 -7
- package/src/modules/events/components/sections/EventsHot.vue +26 -33
- package/src/modules/globals/controllers/classes/abac/abac.core.js +3 -1
- package/src/modules/globals/controllers/classes/abac/abac.fields.js +126 -42
- package/src/modules/globals/controllers/classes/abac/v2/abac-core-fixed.js +313 -0
- package/src/modules/globals/controllers/classes/abac/v2/abac-express-fixed.js +276 -0
- package/src/modules/globals/controllers/classes/abac/v2/abac-fields-fixed.js +422 -0
- package/src/modules/globals/controllers/classes/abac/v2/abac-main-fixed.js +295 -0
- package/src/modules/globals/controllers/classes/abac/v2/abac-policies-fixed.js +316 -0
- package/src/modules/globals/controllers/classes/abac/v2/abac-ws-fixed.js +237 -0
- package/src/modules/globals/globals.client.js +2 -0
- package/src/modules/globals/views/components/blocks/CardFooter.vue +3 -3
- package/src/modules/globals/views/components/blocks/CardHeader.vue +1 -1
- package/src/modules/globals/views/components/blocks/PopupAuth.vue +66 -0
- package/src/modules/globals/views/mixins/mixins.js +37 -17
- package/src/modules/globals/views/plugins/popup.auth.plugin.js +77 -0
- package/src/modules/icons/entities/IconList.vue +14 -0
- package/src/modules/icons/navigation/IconCheck.vue +1 -3
- package/src/modules/icons/navigation/IconDoubleCheck.vue +1 -3
- package/src/modules/icons/navigation/IconLike.vue +1 -3
- package/src/modules/icons/navigation/IconMute.vue +1 -3
- package/src/modules/icons/navigation/IconPause.vue +1 -3
- package/src/modules/icons/navigation/IconPlay.vue +12 -15
- package/src/modules/icons/navigation/IconRefresh.vue +1 -3
- package/src/modules/icons/navigation/IconShuffle.vue +11 -26
- package/src/modules/icons/navigation/IconUnMute.vue +1 -3
- package/src/modules/icons/navigation/IconVolume.vue +1 -3
- package/src/modules/icons/pages/IconsPage.vue +0 -2
- package/src/modules/music/components/pages/AlbumDetail.vue +2 -2
- package/src/modules/music/components/pages/PlaylistDetail.vue +2 -2
- package/src/modules/music/components/pages/TrackDetail.vue +1 -1
- package/src/modules/music/components/player/MusicPlayer.vue +2 -2
- package/src/modules/notifications/components/blocks/NotificationItem.vue +6 -51
- package/src/modules/notifications/components/elements/NotificationBadge.vue +53 -97
- package/src/modules/organizations/configs/navigation.organization.config.js +8 -4
- package/src/modules/products/components/blocks/CardProduct.vue +8 -2
- package/src/modules/products/components/blocks/ProductDiscounts.vue +3 -4
- package/src/modules/products/components/blocks/ProductImages.vue +32 -23
- package/src/modules/products/components/blocks/ProductVariants.vue +6 -4
- package/src/modules/products/components/elements/Price.vue +3 -3
- package/src/modules/products/components/pages/Product.vue +32 -26
- package/src/modules/products/components/pages/ProductEdit.vue +95 -72
- package/src/modules/products/components/sections/EditRecommended.vue +131 -0
- package/src/modules/products/components/sections/ProductConfigurator.vue +35 -21
- package/src/modules/products/components/sections/ProductsPopular.vue +44 -0
- package/src/modules/products/components/sections/ProductsRecommended.vue +134 -0
- package/src/modules/products/controllers/configs/products.lookup.config.js +20 -15
- package/src/modules/products/controllers/products.controller.js +7 -22
- package/src/modules/products/models/category.model.js +28 -1
- package/src/modules/products/models/leftover.model.js +32 -0
- package/src/modules/products/models/product.model.js +37 -1
- package/src/modules/products/models/variant.model.js +35 -0
- package/src/modules/products/products.client.js +3 -3
- package/src/modules/products/routes/products.routes.js +1 -0
- package/src/modules/products/store/products.js +4 -0
- package/src/styles/base/all.scss +0 -38
- package/src/styles/base/shadow_transitions_hover_refactor.scss +20 -51
- package/src/styles/config.scss +51 -1
- package/dist/main-C75EcBpE.cjs +0 -11
- package/dist/martyrs/src/components/Button/Button.vue.js.map +0 -1
- package/dist/martyrs/src/components/Popup/Popup.vue.js.map +0 -1
- package/dist/martyrs/src/components/Slider/Slider.native.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Slider/Slider.native.vue.js.map +0 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue2.cjs +0 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue2.cjs.map +0 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue2.js +0 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue2.js.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.cjs +0 -34
- package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.js +0 -34
- package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.js.map +0 -1
- package/dist/martyrs/src/modules/products/components/sections/PopularProducts.vue.cjs +0 -124
- package/dist/martyrs/src/modules/products/components/sections/PopularProducts.vue.cjs.map +0 -1
- package/dist/martyrs/src/modules/products/components/sections/PopularProducts.vue.js +0 -124
- package/dist/martyrs/src/modules/products/components/sections/PopularProducts.vue.js.map +0 -1
- package/src/components/Slider/Slider.native.vue +0 -313
- package/src/modules/products/components/sections/PopularProducts.vue +0 -156
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
|
+
const vue = require("vue");
|
|
4
|
+
const vueRouter = require("vue-router");
|
|
5
|
+
const Button = require("../../../../components/Button/Button.vue2.cjs");
|
|
6
|
+
const Checkbox = require("../../../../components/Checkbox/Checkbox.vue.cjs");
|
|
7
|
+
const CardProduct = require("../blocks/CardProduct.vue.cjs");
|
|
8
|
+
const IconProducts = require("../../../icons/entities/IconProducts.vue.cjs");
|
|
9
|
+
const IconShopcartAdd = require("../../../icons/actions/IconShopcartAdd.vue.cjs");
|
|
10
|
+
const shopcart = require("../../../orders/store/shopcart.cjs");
|
|
11
|
+
const _hoisted_1 = { class: "recommended-products cols-4 mobile:cols-2 gap-thin" };
|
|
12
|
+
const _hoisted_2 = { class: "flex-center flex flex-column pd-small radius-small br-solid br-1px br-light" };
|
|
13
|
+
const _hoisted_3 = { class: "mn-b-thin i-extra pd-small bg-light radius-extra" };
|
|
14
|
+
const _hoisted_4 = { class: "mn-b-medium h3 t-medium" };
|
|
15
|
+
const _sfc_main = {
|
|
16
|
+
__name: "ProductsRecommended",
|
|
17
|
+
props: {
|
|
18
|
+
products: {
|
|
19
|
+
type: Array,
|
|
20
|
+
required: true,
|
|
21
|
+
default: () => []
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
setup(__props) {
|
|
25
|
+
const router = vueRouter.useRouter();
|
|
26
|
+
const props = __props;
|
|
27
|
+
const selectedProducts = vue.ref(props.products.filter((p) => {
|
|
28
|
+
var _a;
|
|
29
|
+
return ((_a = p.variants) == null ? void 0 : _a.length) > 0;
|
|
30
|
+
}).map((p) => p._id));
|
|
31
|
+
const totalPrice = vue.computed(() => {
|
|
32
|
+
return props.products.filter((p) => selectedProducts.value.includes(p._id)).reduce((sum, p) => {
|
|
33
|
+
var _a, _b;
|
|
34
|
+
const price = ((_b = (_a = p.variants) == null ? void 0 : _a[0]) == null ? void 0 : _b.price) || 0;
|
|
35
|
+
return sum + price;
|
|
36
|
+
}, 0).toFixed(2);
|
|
37
|
+
});
|
|
38
|
+
const canAddToCart = vue.computed(() => {
|
|
39
|
+
const selected = props.products.filter((p) => selectedProducts.value.includes(p._id));
|
|
40
|
+
return selected.length > 0 && selected.some((p) => {
|
|
41
|
+
var _a;
|
|
42
|
+
return ((_a = p.variants) == null ? void 0 : _a.length) > 0;
|
|
43
|
+
});
|
|
44
|
+
});
|
|
45
|
+
const handleProductClick = (product) => {
|
|
46
|
+
var _a;
|
|
47
|
+
if ((product == null ? void 0 : product._id) && ((_a = product == null ? void 0 : product.owner) == null ? void 0 : _a.target)) {
|
|
48
|
+
router.push({
|
|
49
|
+
name: "Organization_Product",
|
|
50
|
+
params: {
|
|
51
|
+
_id: product.owner.target,
|
|
52
|
+
product: product._id
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
const addSelectedToCart = async () => {
|
|
58
|
+
var _a, _b, _c;
|
|
59
|
+
const selected = props.products.filter((p) => selectedProducts.value.includes(p._id));
|
|
60
|
+
if (selected.length === 0) return;
|
|
61
|
+
try {
|
|
62
|
+
const firstProduct = selected[0];
|
|
63
|
+
const organizationId = ((_b = (_a = firstProduct.owner) == null ? void 0 : _a.target) == null ? void 0 : _b._id) || ((_c = firstProduct.owner) == null ? void 0 : _c.target);
|
|
64
|
+
if (shopcart.state.organization && shopcart.state.organization !== organizationId) {
|
|
65
|
+
shopcart.state.positions = [];
|
|
66
|
+
}
|
|
67
|
+
shopcart.state.organization = organizationId;
|
|
68
|
+
for (const product of selected) {
|
|
69
|
+
if (!product.variants || product.variants.length === 0) continue;
|
|
70
|
+
await shopcart.actions.addProductToCart(
|
|
71
|
+
product,
|
|
72
|
+
organizationId,
|
|
73
|
+
null
|
|
74
|
+
// selectedDates для rent листинга
|
|
75
|
+
);
|
|
76
|
+
}
|
|
77
|
+
} catch (error) {
|
|
78
|
+
console.error("Error adding to cart:", error);
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
return (_ctx, _cache) => {
|
|
82
|
+
return vue.openBlock(), vue.createElementBlock("div", null, [
|
|
83
|
+
_cache[4] || (_cache[4] = vue.createElementVNode("h3", { class: "mn-b-small" }, "Frequently Bought Together", -1)),
|
|
84
|
+
vue.createElementVNode("div", _hoisted_1, [
|
|
85
|
+
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.products, (product, index) => {
|
|
86
|
+
return vue.openBlock(), vue.createBlock(CardProduct.default, {
|
|
87
|
+
key: (product == null ? void 0 : product._id) || index,
|
|
88
|
+
product,
|
|
89
|
+
class: "h-100 bg-light",
|
|
90
|
+
onClick: ($event) => handleProductClick(product),
|
|
91
|
+
showAddToCart: false
|
|
92
|
+
}, {
|
|
93
|
+
default: vue.withCtx(() => [
|
|
94
|
+
vue.createVNode(Checkbox.default, {
|
|
95
|
+
radio: selectedProducts.value,
|
|
96
|
+
"onUpdate:radio": _cache[0] || (_cache[0] = ($event) => selectedProducts.value = $event),
|
|
97
|
+
value: product._id,
|
|
98
|
+
mode: "checkbox",
|
|
99
|
+
validation: !product.variants || product.variants.length === 0,
|
|
100
|
+
class: "pos-r-small pos-t-small pos-absolute",
|
|
101
|
+
onClick: _cache[1] || (_cache[1] = vue.withModifiers(() => {
|
|
102
|
+
}, ["stop"]))
|
|
103
|
+
}, null, 8, ["radio", "value", "validation"])
|
|
104
|
+
]),
|
|
105
|
+
_: 2
|
|
106
|
+
}, 1032, ["product", "onClick"]);
|
|
107
|
+
}), 128)),
|
|
108
|
+
vue.createElementVNode("div", _hoisted_2, [
|
|
109
|
+
vue.createElementVNode("div", _hoisted_3, [
|
|
110
|
+
vue.createVNode(IconProducts.default, { class: "i-big" })
|
|
111
|
+
]),
|
|
112
|
+
_cache[3] || (_cache[3] = vue.createElementVNode("p", { class: "mn-b-small" }, "Total price:", -1)),
|
|
113
|
+
vue.createElementVNode("p", _hoisted_4, "$" + vue.toDisplayString(totalPrice.value), 1),
|
|
114
|
+
vue.createVNode(Button.default, {
|
|
115
|
+
class: "bg-main gap-micro",
|
|
116
|
+
submit: canAddToCart.value ? addSelectedToCart : void 0
|
|
117
|
+
}, {
|
|
118
|
+
default: vue.withCtx(() => [
|
|
119
|
+
vue.createVNode(IconShopcartAdd.default, { class: "i-semi" }),
|
|
120
|
+
_cache[2] || (_cache[2] = vue.createElementVNode("span", null, "Add to Cart", -1))
|
|
121
|
+
]),
|
|
122
|
+
_: 1
|
|
123
|
+
}, 8, ["submit"])
|
|
124
|
+
])
|
|
125
|
+
])
|
|
126
|
+
]);
|
|
127
|
+
};
|
|
128
|
+
}
|
|
129
|
+
};
|
|
130
|
+
exports.default = _sfc_main;
|
|
131
|
+
//# sourceMappingURL=ProductsRecommended.vue.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProductsRecommended.vue.cjs","sources":["../../../../../../../src/modules/products/components/sections/ProductsRecommended.vue"],"sourcesContent":["<script setup>\nimport { ref, computed } from 'vue'\nimport { useRouter } from 'vue-router'\n\nimport Button from '@martyrs/src/components/Button/Button.vue'\nimport Checkbox from '@martyrs/src/components/Checkbox/Checkbox.vue'\n\nimport CardProduct from '@martyrs/src/modules/products/components/blocks/CardProduct.vue'\n\nimport IconShopcart from '@martyrs/src/modules/icons/entities/IconShopcart.vue';\nimport IconProducts from '@martyrs/src/modules/icons/entities/IconProducts.vue';\nimport IconShopcartAdd from '@martyrs/src/modules/icons/actions/IconShopcartAdd.vue'\n\nimport * as shopcart from '@martyrs/src/modules/orders/store/shopcart.js'\n\nconst router = useRouter()\n\n// Props\nconst props = defineProps({\n products: {\n type: Array,\n required: true,\n default: () => []\n }\n})\n\n// Состояние выбранных товаров - массив id товаров с вариантами\nconst selectedProducts = ref(props.products.filter(p => p.variants?.length > 0).map(p => p._id))\n\n// Вычисляемая общая цена\nconst totalPrice = computed(() => {\n return props.products\n .filter(p => selectedProducts.value.includes(p._id))\n .reduce((sum, p) => {\n const price = p.variants?.[0]?.price || 0\n return sum + price\n }, 0)\n .toFixed(2)\n})\n\n// Проверка возможности добавления в корзину\nconst canAddToCart = computed(() => {\n const selected = props.products.filter(p => selectedProducts.value.includes(p._id))\n return selected.length > 0 && selected.some(p => p.variants?.length > 0)\n})\n\nconst handleProductClick = (product) => {\n if (product?._id && product?.owner?.target) {\n router.push({\n name: 'Organization_Product', \n params: { \n _id: product.owner.target, \n product: product._id \n } \n })\n }\n}\n\n// Добавление выбранных товаров в корзину\nconst addSelectedToCart = async () => {\n const selected = props.products.filter(p => selectedProducts.value.includes(p._id))\n \n if (selected.length === 0) return\n \n try {\n // Берем организацию первого товара\n const firstProduct = selected[0]\n const organizationId = firstProduct.owner?.target?._id || firstProduct.owner?.target\n \n // Проверяем, что в корзине товары той же организации\n if (shopcart.state.organization && shopcart.state.organization !== organizationId) {\n // Можно добавить подтверждение замены корзины\n shopcart.state.positions = []\n }\n \n shopcart.state.organization = organizationId\n \n // Добавляем каждый выбранный товар\n for (const product of selected) {\n // Проверяем наличие варианта\n if (!product.variants || product.variants.length === 0) continue\n \n await shopcart.actions.addProductToCart(\n product, \n organizationId,\n null // selectedDates для rent листинга\n )\n }\n } catch (error) {\n console.error('Error adding to cart:', error)\n }\n}\n</script>\n\n<template>\n <div>\n <h3 class=\"mn-b-small\">Frequently Bought Together</h3>\n <div class=\"recommended-products cols-4 mobile:cols-2 gap-thin\">\n \n <CardProduct \n v-for=\"(product, index) in products\" \n :key=\"product?._id || index\"\n :product=\"product\"\n class=\"h-100 bg-light\"\n @click=\"handleProductClick(product)\"\n :showAddToCart=\"false\"\n >\n <Checkbox\n v-model:radio=\"selectedProducts\"\n :value=\"product._id\"\n mode=\"checkbox\"\n :validation=\"!product.variants || product.variants.length === 0\"\n class=\"pos-r-small pos-t-small pos-absolute\"\n @click.stop\n />\n </CardProduct>\n\n <div class=\"flex-center flex flex-column pd-small radius-small br-solid br-1px br-light\">\n <div class=\"mn-b-thin i-extra pd-small bg-light radius-extra\">\n <IconProducts class=\"i-big\"/>\n </div>\n <p class=\"mn-b-small\">Total price:</p>\n <p class=\"mn-b-medium h3 t-medium\">${{ totalPrice }}</p>\n <Button \n class=\"bg-main gap-micro\"\n :submit=\"canAddToCart ? addSelectedToCart : undefined\"\n >\n <IconShopcartAdd class=\"i-semi\"/>\n <span>Add to Cart</span>\n </Button>\n </div>\n </div>\n </div>\n</template>"],"names":["useRouter","ref","computed","shopcart.state","shopcart.actions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAeA,UAAM,SAASA,UAAS,UAAA;AAGxB,UAAM,QAAQ;AASd,UAAM,mBAAmBC,IAAG,IAAC,MAAM,SAAS,OAAO,OAAC;;AAAI,sBAAE,aAAF,mBAAY,UAAS;AAAA,KAAC,EAAE,IAAI,OAAK,EAAE,GAAG,CAAC;AAG/F,UAAM,aAAaC,IAAQ,SAAC,MAAM;AAChC,aAAO,MAAM,SACV,OAAO,OAAK,iBAAiB,MAAM,SAAS,EAAE,GAAG,CAAC,EAClD,OAAO,CAAC,KAAK,MAAM;;AAClB,cAAM,UAAQ,aAAE,aAAF,mBAAa,OAAb,mBAAiB,UAAS;AACxC,eAAO,MAAM;AAAA,MACnB,GAAO,CAAC,EACH,QAAQ,CAAC;AAAA,IACd,CAAC;AAGD,UAAM,eAAeA,IAAQ,SAAC,MAAM;AAClC,YAAM,WAAW,MAAM,SAAS,OAAO,OAAK,iBAAiB,MAAM,SAAS,EAAE,GAAG,CAAC;AAClF,aAAO,SAAS,SAAS,KAAK,SAAS,KAAK;;AAAK,wBAAE,aAAF,mBAAY,UAAS;AAAA,OAAC;AAAA,IACzE,CAAC;AAED,UAAM,qBAAqB,CAAC,YAAY;;AACtC,WAAI,mCAAS,UAAO,wCAAS,UAAT,mBAAgB,SAAQ;AAC1C,eAAO,KAAK;AAAA,UACV,MAAM;AAAA,UACN,QAAQ;AAAA,YACN,KAAK,QAAQ,MAAM;AAAA,YACnB,SAAS,QAAQ;AAAA,UAClB;AAAA,QACF,CAAA;AAAA,MACL;AAAA,IACA;AAGA,UAAM,oBAAoB,YAAY;;AACpC,YAAM,WAAW,MAAM,SAAS,OAAO,OAAK,iBAAiB,MAAM,SAAS,EAAE,GAAG,CAAC;AAElF,UAAI,SAAS,WAAW,EAAG;AAE3B,UAAI;AAEF,cAAM,eAAe,SAAS,CAAC;AAC/B,cAAM,mBAAiB,wBAAa,UAAb,mBAAoB,WAApB,mBAA4B,UAAO,kBAAa,UAAb,mBAAoB;AAG9E,YAAIC,SAAc,MAAC,gBAAgBA,eAAe,iBAAiB,gBAAgB;AAEjFA,mBAAAA,MAAe,YAAY,CAAA;AAAA,QACjC;AAEIA,iBAAAA,MAAe,eAAe;AAG9B,mBAAW,WAAW,UAAU;AAE9B,cAAI,CAAC,QAAQ,YAAY,QAAQ,SAAS,WAAW,EAAG;AAExD,gBAAMC,SAAgB,QAAC;AAAA,YACrB;AAAA,YACA;AAAA,YACA;AAAA;AAAA,UACR;AAAA,QACA;AAAA,MACG,SAAQ,OAAO;AACd,gBAAQ,MAAM,yBAAyB,KAAK;AAAA,MAChD;AAAA,IACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { ref, computed, createElementBlock, openBlock, createElementVNode, Fragment, renderList, createBlock, withCtx, createVNode, withModifiers, toDisplayString } from "vue";
|
|
2
|
+
import { useRouter } from "vue-router";
|
|
3
|
+
import _sfc_main$4 from "../../../../components/Button/Button.vue2.js";
|
|
4
|
+
import _sfc_main$2 from "../../../../components/Checkbox/Checkbox.vue.js";
|
|
5
|
+
import _sfc_main$1 from "../blocks/CardProduct.vue.js";
|
|
6
|
+
import _sfc_main$3 from "../../../icons/entities/IconProducts.vue.js";
|
|
7
|
+
import _sfc_main$5 from "../../../icons/actions/IconShopcartAdd.vue.js";
|
|
8
|
+
import { state, actions } from "../../../orders/store/shopcart.js";
|
|
9
|
+
const _hoisted_1 = { class: "recommended-products cols-4 mobile:cols-2 gap-thin" };
|
|
10
|
+
const _hoisted_2 = { class: "flex-center flex flex-column pd-small radius-small br-solid br-1px br-light" };
|
|
11
|
+
const _hoisted_3 = { class: "mn-b-thin i-extra pd-small bg-light radius-extra" };
|
|
12
|
+
const _hoisted_4 = { class: "mn-b-medium h3 t-medium" };
|
|
13
|
+
const _sfc_main = {
|
|
14
|
+
__name: "ProductsRecommended",
|
|
15
|
+
props: {
|
|
16
|
+
products: {
|
|
17
|
+
type: Array,
|
|
18
|
+
required: true,
|
|
19
|
+
default: () => []
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
setup(__props) {
|
|
23
|
+
const router = useRouter();
|
|
24
|
+
const props = __props;
|
|
25
|
+
const selectedProducts = ref(props.products.filter((p) => {
|
|
26
|
+
var _a;
|
|
27
|
+
return ((_a = p.variants) == null ? void 0 : _a.length) > 0;
|
|
28
|
+
}).map((p) => p._id));
|
|
29
|
+
const totalPrice = computed(() => {
|
|
30
|
+
return props.products.filter((p) => selectedProducts.value.includes(p._id)).reduce((sum, p) => {
|
|
31
|
+
var _a, _b;
|
|
32
|
+
const price = ((_b = (_a = p.variants) == null ? void 0 : _a[0]) == null ? void 0 : _b.price) || 0;
|
|
33
|
+
return sum + price;
|
|
34
|
+
}, 0).toFixed(2);
|
|
35
|
+
});
|
|
36
|
+
const canAddToCart = computed(() => {
|
|
37
|
+
const selected = props.products.filter((p) => selectedProducts.value.includes(p._id));
|
|
38
|
+
return selected.length > 0 && selected.some((p) => {
|
|
39
|
+
var _a;
|
|
40
|
+
return ((_a = p.variants) == null ? void 0 : _a.length) > 0;
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
const handleProductClick = (product) => {
|
|
44
|
+
var _a;
|
|
45
|
+
if ((product == null ? void 0 : product._id) && ((_a = product == null ? void 0 : product.owner) == null ? void 0 : _a.target)) {
|
|
46
|
+
router.push({
|
|
47
|
+
name: "Organization_Product",
|
|
48
|
+
params: {
|
|
49
|
+
_id: product.owner.target,
|
|
50
|
+
product: product._id
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
const addSelectedToCart = async () => {
|
|
56
|
+
var _a, _b, _c;
|
|
57
|
+
const selected = props.products.filter((p) => selectedProducts.value.includes(p._id));
|
|
58
|
+
if (selected.length === 0) return;
|
|
59
|
+
try {
|
|
60
|
+
const firstProduct = selected[0];
|
|
61
|
+
const organizationId = ((_b = (_a = firstProduct.owner) == null ? void 0 : _a.target) == null ? void 0 : _b._id) || ((_c = firstProduct.owner) == null ? void 0 : _c.target);
|
|
62
|
+
if (state.organization && state.organization !== organizationId) {
|
|
63
|
+
state.positions = [];
|
|
64
|
+
}
|
|
65
|
+
state.organization = organizationId;
|
|
66
|
+
for (const product of selected) {
|
|
67
|
+
if (!product.variants || product.variants.length === 0) continue;
|
|
68
|
+
await actions.addProductToCart(
|
|
69
|
+
product,
|
|
70
|
+
organizationId,
|
|
71
|
+
null
|
|
72
|
+
// selectedDates для rent листинга
|
|
73
|
+
);
|
|
74
|
+
}
|
|
75
|
+
} catch (error) {
|
|
76
|
+
console.error("Error adding to cart:", error);
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
return (_ctx, _cache) => {
|
|
80
|
+
return openBlock(), createElementBlock("div", null, [
|
|
81
|
+
_cache[4] || (_cache[4] = createElementVNode("h3", { class: "mn-b-small" }, "Frequently Bought Together", -1)),
|
|
82
|
+
createElementVNode("div", _hoisted_1, [
|
|
83
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(__props.products, (product, index) => {
|
|
84
|
+
return openBlock(), createBlock(_sfc_main$1, {
|
|
85
|
+
key: (product == null ? void 0 : product._id) || index,
|
|
86
|
+
product,
|
|
87
|
+
class: "h-100 bg-light",
|
|
88
|
+
onClick: ($event) => handleProductClick(product),
|
|
89
|
+
showAddToCart: false
|
|
90
|
+
}, {
|
|
91
|
+
default: withCtx(() => [
|
|
92
|
+
createVNode(_sfc_main$2, {
|
|
93
|
+
radio: selectedProducts.value,
|
|
94
|
+
"onUpdate:radio": _cache[0] || (_cache[0] = ($event) => selectedProducts.value = $event),
|
|
95
|
+
value: product._id,
|
|
96
|
+
mode: "checkbox",
|
|
97
|
+
validation: !product.variants || product.variants.length === 0,
|
|
98
|
+
class: "pos-r-small pos-t-small pos-absolute",
|
|
99
|
+
onClick: _cache[1] || (_cache[1] = withModifiers(() => {
|
|
100
|
+
}, ["stop"]))
|
|
101
|
+
}, null, 8, ["radio", "value", "validation"])
|
|
102
|
+
]),
|
|
103
|
+
_: 2
|
|
104
|
+
}, 1032, ["product", "onClick"]);
|
|
105
|
+
}), 128)),
|
|
106
|
+
createElementVNode("div", _hoisted_2, [
|
|
107
|
+
createElementVNode("div", _hoisted_3, [
|
|
108
|
+
createVNode(_sfc_main$3, { class: "i-big" })
|
|
109
|
+
]),
|
|
110
|
+
_cache[3] || (_cache[3] = createElementVNode("p", { class: "mn-b-small" }, "Total price:", -1)),
|
|
111
|
+
createElementVNode("p", _hoisted_4, "$" + toDisplayString(totalPrice.value), 1),
|
|
112
|
+
createVNode(_sfc_main$4, {
|
|
113
|
+
class: "bg-main gap-micro",
|
|
114
|
+
submit: canAddToCart.value ? addSelectedToCart : void 0
|
|
115
|
+
}, {
|
|
116
|
+
default: withCtx(() => [
|
|
117
|
+
createVNode(_sfc_main$5, { class: "i-semi" }),
|
|
118
|
+
_cache[2] || (_cache[2] = createElementVNode("span", null, "Add to Cart", -1))
|
|
119
|
+
]),
|
|
120
|
+
_: 1
|
|
121
|
+
}, 8, ["submit"])
|
|
122
|
+
])
|
|
123
|
+
])
|
|
124
|
+
]);
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
};
|
|
128
|
+
export {
|
|
129
|
+
_sfc_main as default
|
|
130
|
+
};
|
|
131
|
+
//# sourceMappingURL=ProductsRecommended.vue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProductsRecommended.vue.js","sources":["../../../../../../../src/modules/products/components/sections/ProductsRecommended.vue"],"sourcesContent":["<script setup>\nimport { ref, computed } from 'vue'\nimport { useRouter } from 'vue-router'\n\nimport Button from '@martyrs/src/components/Button/Button.vue'\nimport Checkbox from '@martyrs/src/components/Checkbox/Checkbox.vue'\n\nimport CardProduct from '@martyrs/src/modules/products/components/blocks/CardProduct.vue'\n\nimport IconShopcart from '@martyrs/src/modules/icons/entities/IconShopcart.vue';\nimport IconProducts from '@martyrs/src/modules/icons/entities/IconProducts.vue';\nimport IconShopcartAdd from '@martyrs/src/modules/icons/actions/IconShopcartAdd.vue'\n\nimport * as shopcart from '@martyrs/src/modules/orders/store/shopcart.js'\n\nconst router = useRouter()\n\n// Props\nconst props = defineProps({\n products: {\n type: Array,\n required: true,\n default: () => []\n }\n})\n\n// Состояние выбранных товаров - массив id товаров с вариантами\nconst selectedProducts = ref(props.products.filter(p => p.variants?.length > 0).map(p => p._id))\n\n// Вычисляемая общая цена\nconst totalPrice = computed(() => {\n return props.products\n .filter(p => selectedProducts.value.includes(p._id))\n .reduce((sum, p) => {\n const price = p.variants?.[0]?.price || 0\n return sum + price\n }, 0)\n .toFixed(2)\n})\n\n// Проверка возможности добавления в корзину\nconst canAddToCart = computed(() => {\n const selected = props.products.filter(p => selectedProducts.value.includes(p._id))\n return selected.length > 0 && selected.some(p => p.variants?.length > 0)\n})\n\nconst handleProductClick = (product) => {\n if (product?._id && product?.owner?.target) {\n router.push({\n name: 'Organization_Product', \n params: { \n _id: product.owner.target, \n product: product._id \n } \n })\n }\n}\n\n// Добавление выбранных товаров в корзину\nconst addSelectedToCart = async () => {\n const selected = props.products.filter(p => selectedProducts.value.includes(p._id))\n \n if (selected.length === 0) return\n \n try {\n // Берем организацию первого товара\n const firstProduct = selected[0]\n const organizationId = firstProduct.owner?.target?._id || firstProduct.owner?.target\n \n // Проверяем, что в корзине товары той же организации\n if (shopcart.state.organization && shopcart.state.organization !== organizationId) {\n // Можно добавить подтверждение замены корзины\n shopcart.state.positions = []\n }\n \n shopcart.state.organization = organizationId\n \n // Добавляем каждый выбранный товар\n for (const product of selected) {\n // Проверяем наличие варианта\n if (!product.variants || product.variants.length === 0) continue\n \n await shopcart.actions.addProductToCart(\n product, \n organizationId,\n null // selectedDates для rent листинга\n )\n }\n } catch (error) {\n console.error('Error adding to cart:', error)\n }\n}\n</script>\n\n<template>\n <div>\n <h3 class=\"mn-b-small\">Frequently Bought Together</h3>\n <div class=\"recommended-products cols-4 mobile:cols-2 gap-thin\">\n \n <CardProduct \n v-for=\"(product, index) in products\" \n :key=\"product?._id || index\"\n :product=\"product\"\n class=\"h-100 bg-light\"\n @click=\"handleProductClick(product)\"\n :showAddToCart=\"false\"\n >\n <Checkbox\n v-model:radio=\"selectedProducts\"\n :value=\"product._id\"\n mode=\"checkbox\"\n :validation=\"!product.variants || product.variants.length === 0\"\n class=\"pos-r-small pos-t-small pos-absolute\"\n @click.stop\n />\n </CardProduct>\n\n <div class=\"flex-center flex flex-column pd-small radius-small br-solid br-1px br-light\">\n <div class=\"mn-b-thin i-extra pd-small bg-light radius-extra\">\n <IconProducts class=\"i-big\"/>\n </div>\n <p class=\"mn-b-small\">Total price:</p>\n <p class=\"mn-b-medium h3 t-medium\">${{ totalPrice }}</p>\n <Button \n class=\"bg-main gap-micro\"\n :submit=\"canAddToCart ? addSelectedToCart : undefined\"\n >\n <IconShopcartAdd class=\"i-semi\"/>\n <span>Add to Cart</span>\n </Button>\n </div>\n </div>\n </div>\n</template>"],"names":["shopcart.state","shopcart.actions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAeA,UAAM,SAAS,UAAS;AAGxB,UAAM,QAAQ;AASd,UAAM,mBAAmB,IAAI,MAAM,SAAS,OAAO,OAAC;;AAAI,sBAAE,aAAF,mBAAY,UAAS;AAAA,KAAC,EAAE,IAAI,OAAK,EAAE,GAAG,CAAC;AAG/F,UAAM,aAAa,SAAS,MAAM;AAChC,aAAO,MAAM,SACV,OAAO,OAAK,iBAAiB,MAAM,SAAS,EAAE,GAAG,CAAC,EAClD,OAAO,CAAC,KAAK,MAAM;;AAClB,cAAM,UAAQ,aAAE,aAAF,mBAAa,OAAb,mBAAiB,UAAS;AACxC,eAAO,MAAM;AAAA,MACnB,GAAO,CAAC,EACH,QAAQ,CAAC;AAAA,IACd,CAAC;AAGD,UAAM,eAAe,SAAS,MAAM;AAClC,YAAM,WAAW,MAAM,SAAS,OAAO,OAAK,iBAAiB,MAAM,SAAS,EAAE,GAAG,CAAC;AAClF,aAAO,SAAS,SAAS,KAAK,SAAS,KAAK;;AAAK,wBAAE,aAAF,mBAAY,UAAS;AAAA,OAAC;AAAA,IACzE,CAAC;AAED,UAAM,qBAAqB,CAAC,YAAY;;AACtC,WAAI,mCAAS,UAAO,wCAAS,UAAT,mBAAgB,SAAQ;AAC1C,eAAO,KAAK;AAAA,UACV,MAAM;AAAA,UACN,QAAQ;AAAA,YACN,KAAK,QAAQ,MAAM;AAAA,YACnB,SAAS,QAAQ;AAAA,UAClB;AAAA,QACF,CAAA;AAAA,MACL;AAAA,IACA;AAGA,UAAM,oBAAoB,YAAY;;AACpC,YAAM,WAAW,MAAM,SAAS,OAAO,OAAK,iBAAiB,MAAM,SAAS,EAAE,GAAG,CAAC;AAElF,UAAI,SAAS,WAAW,EAAG;AAE3B,UAAI;AAEF,cAAM,eAAe,SAAS,CAAC;AAC/B,cAAM,mBAAiB,wBAAa,UAAb,mBAAoB,WAApB,mBAA4B,UAAO,kBAAa,UAAb,mBAAoB;AAG9E,YAAIA,MAAe,gBAAgBA,MAAe,iBAAiB,gBAAgB;AAEjFA,gBAAe,YAAY,CAAA;AAAA,QACjC;AAEIA,cAAe,eAAe;AAG9B,mBAAW,WAAW,UAAU;AAE9B,cAAI,CAAC,QAAQ,YAAY,QAAQ,SAAS,WAAW,EAAG;AAExD,gBAAMC,QAAiB;AAAA,YACrB;AAAA,YACA;AAAA,YACA;AAAA;AAAA,UACR;AAAA,QACA;AAAA,MACG,SAAQ,OAAO;AACd,gBAAQ,MAAM,yBAAyB,KAAK;AAAA,MAChD;AAAA,IACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
3
|
const vue = require("vue");
|
|
4
|
-
const Button = require("../../../../components/Button/Button.
|
|
4
|
+
const Button = require("../../../../components/Button/Button.vue2.cjs");
|
|
5
5
|
const Tab = require("../../../../components/Tab/Tab.vue2.cjs");
|
|
6
6
|
const IconEdit = require("../../../icons/navigation/IconEdit.vue.cjs");
|
|
7
7
|
const PlaceholderImage = require("../../../icons/placeholders/PlaceholderImage.vue.cjs");
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { computed, ref, createElementBlock, openBlock, createElementVNode, createBlock, createCommentVNode, createVNode, unref, toDisplayString, Transition, withCtx, Fragment, renderList, createTextVNode } from "vue";
|
|
2
|
-
import _sfc_main$4 from "../../../../components/Button/Button.
|
|
2
|
+
import _sfc_main$4 from "../../../../components/Button/Button.vue2.js";
|
|
3
3
|
import _sfc_main$3 from "../../../../components/Tab/Tab.vue2.js";
|
|
4
4
|
import _sfc_main$1 from "../../../icons/navigation/IconEdit.vue.js";
|
|
5
5
|
import PlaceholderImage from "../../../icons/placeholders/PlaceholderImage.vue.js";
|
|
@@ -13,7 +13,7 @@ const ProductImages = require("./components/blocks/ProductImages.vue.cjs");
|
|
|
13
13
|
const EditVariants = require("./components/sections/EditVariants.vue.cjs");
|
|
14
14
|
const FilterProducts = require("./components/sections/FilterProducts.vue.cjs");
|
|
15
15
|
const HeroRecommendation = require("./components/sections/HeroRecommendation.vue.cjs");
|
|
16
|
-
const
|
|
16
|
+
const ProductsPopular = require("./components/sections/ProductsPopular.vue.cjs");
|
|
17
17
|
const SectionProduct = require("./components/sections/SectionProduct.vue.cjs");
|
|
18
18
|
const Price = require("./components/elements/Price.vue.cjs");
|
|
19
19
|
const LeftoverEdit = require("./components/pages/LeftoverEdit.vue.cjs");
|
|
@@ -56,7 +56,7 @@ const ModuleProducts = {
|
|
|
56
56
|
HeroRecommendation: HeroRecommendation.default,
|
|
57
57
|
FilterProducts: FilterProducts.default,
|
|
58
58
|
EditVariants: EditVariants.default,
|
|
59
|
-
|
|
59
|
+
ProductsPopular: ProductsPopular.default,
|
|
60
60
|
// Pages
|
|
61
61
|
Product: Product.default,
|
|
62
62
|
ProductEdit: ProductEdit.default,
|
|
@@ -77,7 +77,7 @@ exports.ProductImages = ProductImages.default;
|
|
|
77
77
|
exports.EditVariants = EditVariants.default;
|
|
78
78
|
exports.FilterProducts = FilterProducts.default;
|
|
79
79
|
exports.HeroRecommendation = HeroRecommendation.default;
|
|
80
|
-
exports.
|
|
80
|
+
exports.ProductsPopular = ProductsPopular.default;
|
|
81
81
|
exports.SectionProduct = SectionProduct.default;
|
|
82
82
|
exports.Price = Price.default;
|
|
83
83
|
exports.LeftoverEdit = LeftoverEdit.default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"products.client.cjs","sources":["../../../../../src/modules/products/products.client.js"],"sourcesContent":["// Router\nimport { createProductRoutes } from './router/products.router.js';\n\n//Store\nimport * as storeCategories from './store/categories.js';\nimport * as storeLeftovers from './store/leftovers.js';\nimport * as storeProducts from './store/products.js';\n\n// Layouts\n\n// Blocks\nimport CardCategory from './components/blocks/CardCategory.vue';\nimport CardLeftover from './components/blocks/CardLeftover.vue';\nimport CardPosition from './components/blocks/CardPosition.vue';\nimport CardProduct from './components/blocks/CardProduct.vue';\nimport Image360 from './components/elements/Image360.vue';\nimport ProductImages from './components/blocks/ProductImages.vue';\n\n// Sections\nimport EditVariants from './components/sections/EditVariants.vue';\nimport FilterProducts from './components/sections/FilterProducts.vue';\nimport HeroRecommendation from './components/sections/HeroRecommendation.vue';\nimport
|
|
1
|
+
{"version":3,"file":"products.client.cjs","sources":["../../../../../src/modules/products/products.client.js"],"sourcesContent":["// Router\nimport { createProductRoutes } from './router/products.router.js';\n\n//Store\nimport * as storeCategories from './store/categories.js';\nimport * as storeLeftovers from './store/leftovers.js';\nimport * as storeProducts from './store/products.js';\n\n// Layouts\n\n// Blocks\nimport CardCategory from './components/blocks/CardCategory.vue';\nimport CardLeftover from './components/blocks/CardLeftover.vue';\nimport CardPosition from './components/blocks/CardPosition.vue';\nimport CardProduct from './components/blocks/CardProduct.vue';\nimport Image360 from './components/elements/Image360.vue';\nimport ProductImages from './components/blocks/ProductImages.vue';\n\n// Sections\nimport EditVariants from './components/sections/EditVariants.vue';\nimport FilterProducts from './components/sections/FilterProducts.vue';\nimport HeroRecommendation from './components/sections/HeroRecommendation.vue';\nimport ProductsPopular from './components/sections/ProductsPopular.vue';\nimport SectionProduct from './components/sections/SectionProduct.vue';\n\n// Elements\nimport Price from './components/elements/Price.vue';\n// Pages\nimport LeftoverEdit from './components/pages/LeftoverEdit.vue';\nimport Leftovers from './components/pages/Leftovers.vue';\nimport Product from './components/pages/Product.vue';\nimport ProductEdit from './components/pages/ProductEdit.vue';\nimport ProductRecommendation from './components/pages/ProductRecommmendation.vue';\nimport Products from './components/pages/Products.vue';\n\n// Пример функции инициализации для модуля продуктов\nfunction initializeProducts(app, store, router, options = {}) {\n const route = options.route || 'Home';\n\n const routesProducts = createProductRoutes();\n\n router.addRoute(route, routesProducts);\n\n store.addStore('categories', storeCategories);\n store.addStore('leftovers', storeLeftovers);\n store.addStore('products', storeProducts);\n}\n\nconst ModuleProducts = {\n initialize: initializeProducts,\n views: {\n store: {\n storeCategories,\n storeLeftovers,\n storeProducts,\n },\n router: {\n createProductRoutes,\n },\n components: {\n // Elements\n Price,\n // Blocks\n ProductImages,\n CardCategory,\n CardProduct,\n CardLeftover,\n Image360,\n CardPosition,\n // Sections\n SectionProduct,\n HeroRecommendation,\n FilterProducts,\n EditVariants,\n ProductsPopular,\n // Pages\n Product,\n ProductEdit,\n LeftoverEdit,\n ProductRecommendation,\n Products,\n Leftovers,\n // Layouts\n },\n },\n};\n\nexport {\n CardCategory,\n CardLeftover,\n CardPosition,\n CardProduct,\n LeftoverEdit,\n EditVariants,\n FilterProducts,\n HeroRecommendation,\n Image360,\n // Blocks\n ProductImages,\n Leftovers,\n ProductsPopular,\n // Elements\n Price,\n // Pages\n Product,\n ProductEdit,\n ProductRecommendation,\n Products,\n // Sections\n SectionProduct,\n};\n\nexport default ModuleProducts;\n"],"names":["createProductRoutes","storeCategories","storeLeftovers","storeProducts","Price","ProductImages","CardCategory","CardProduct","CardLeftover","Image360","CardPosition","SectionProduct","HeroRecommendation","FilterProducts","EditVariants","ProductsPopular","Product","ProductEdit","LeftoverEdit","ProductRecommendation","Products","Leftovers"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAoCA,SAAS,mBAAmB,KAAK,OAAO,QAAQ,UAAU,CAAA,GAAI;AAC5D,QAAM,QAAQ,QAAQ,SAAS;AAE/B,QAAM,iBAAiBA,gBAAAA,oBAAqB;AAE5C,SAAO,SAAS,OAAO,cAAc;AAErC,QAAM,SAAS,cAAcC,UAAe;AAC5C,QAAM,SAAS,aAAaC,SAAc;AAC1C,QAAM,SAAS,YAAYC,QAAa;AAC1C;AAEK,MAAC,iBAAiB;AAAA,EACrB,YAAY;AAAA,EACZ,OAAO;AAAA,IACL,OAAO;AAAA,MACX,iBAAMF;AAAAA,MACN,gBAAMC;AAAAA,MACN,eAAMC;AAAAA,IACD;AAAA,IACD,QAAQ;AAAA,MACZ,qBAAMH,gBAAmB;AAAA,IACpB;AAAA,IACD,YAAY;AAAA;AAAA,MAEhB,OAAMI,MAAK;AAAA;AAAA,MAEX,eAAMC,cAAa;AAAA,MACnB,cAAMC,aAAY;AAAA,MAClB,aAAMC,YAAW;AAAA,MACjB,cAAMC,aAAY;AAAA,MAClB,UAAMC,SAAQ;AAAA,MACd,cAAMC,aAAY;AAAA;AAAA,MAElB,gBAAMC,eAAc;AAAA,MACpB,oBAAMC,mBAAkB;AAAA,MACxB,gBAAMC,eAAc;AAAA,MACpB,cAAMC,aAAY;AAAA,MAClB,iBAAMC,gBAAe;AAAA;AAAA,MAErB,SAAMC,QAAO;AAAA,MACb,aAAMC,YAAW;AAAA,MACjB,cAAMC,aAAY;AAAA,MAClB,uBAAMC,uBAAqB;AAAA,MAC3B,UAAMC,SAAQ;AAAA,MACd,WAAMC,UAAS;AAAA;AAAA,IAEV;AAAA,EACF;AACH;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -11,7 +11,7 @@ import ProductImages from "./components/blocks/ProductImages.vue.js";
|
|
|
11
11
|
import _sfc_main$6 from "./components/sections/EditVariants.vue.js";
|
|
12
12
|
import _sfc_main$7 from "./components/sections/FilterProducts.vue.js";
|
|
13
13
|
import _sfc_main$8 from "./components/sections/HeroRecommendation.vue.js";
|
|
14
|
-
import _sfc_main$5 from "./components/sections/
|
|
14
|
+
import _sfc_main$5 from "./components/sections/ProductsPopular.vue.js";
|
|
15
15
|
import _sfc_main$9 from "./components/sections/SectionProduct.vue.js";
|
|
16
16
|
import _sfc_main$d from "./components/elements/Price.vue.js";
|
|
17
17
|
import _sfc_main$2 from "./components/pages/LeftoverEdit.vue.js";
|
|
@@ -54,7 +54,7 @@ const ModuleProducts = {
|
|
|
54
54
|
HeroRecommendation: _sfc_main$8,
|
|
55
55
|
FilterProducts: _sfc_main$7,
|
|
56
56
|
EditVariants: _sfc_main$6,
|
|
57
|
-
|
|
57
|
+
ProductsPopular: _sfc_main$5,
|
|
58
58
|
// Pages
|
|
59
59
|
Product: _sfc_main$4,
|
|
60
60
|
ProductEdit: _sfc_main$3,
|
|
@@ -77,13 +77,13 @@ export {
|
|
|
77
77
|
Image360,
|
|
78
78
|
_sfc_main$2 as LeftoverEdit,
|
|
79
79
|
_sfc_main as Leftovers,
|
|
80
|
-
_sfc_main$5 as PopularProducts,
|
|
81
80
|
_sfc_main$d as Price,
|
|
82
81
|
_sfc_main$4 as Product,
|
|
83
82
|
_sfc_main$3 as ProductEdit,
|
|
84
83
|
ProductImages,
|
|
85
84
|
ProductRecommendation,
|
|
86
85
|
_sfc_main$1 as Products,
|
|
86
|
+
_sfc_main$5 as ProductsPopular,
|
|
87
87
|
_sfc_main$9 as SectionProduct,
|
|
88
88
|
ModuleProducts as default
|
|
89
89
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"products.client.js","sources":["../../../../../src/modules/products/products.client.js"],"sourcesContent":["// Router\nimport { createProductRoutes } from './router/products.router.js';\n\n//Store\nimport * as storeCategories from './store/categories.js';\nimport * as storeLeftovers from './store/leftovers.js';\nimport * as storeProducts from './store/products.js';\n\n// Layouts\n\n// Blocks\nimport CardCategory from './components/blocks/CardCategory.vue';\nimport CardLeftover from './components/blocks/CardLeftover.vue';\nimport CardPosition from './components/blocks/CardPosition.vue';\nimport CardProduct from './components/blocks/CardProduct.vue';\nimport Image360 from './components/elements/Image360.vue';\nimport ProductImages from './components/blocks/ProductImages.vue';\n\n// Sections\nimport EditVariants from './components/sections/EditVariants.vue';\nimport FilterProducts from './components/sections/FilterProducts.vue';\nimport HeroRecommendation from './components/sections/HeroRecommendation.vue';\nimport
|
|
1
|
+
{"version":3,"file":"products.client.js","sources":["../../../../../src/modules/products/products.client.js"],"sourcesContent":["// Router\nimport { createProductRoutes } from './router/products.router.js';\n\n//Store\nimport * as storeCategories from './store/categories.js';\nimport * as storeLeftovers from './store/leftovers.js';\nimport * as storeProducts from './store/products.js';\n\n// Layouts\n\n// Blocks\nimport CardCategory from './components/blocks/CardCategory.vue';\nimport CardLeftover from './components/blocks/CardLeftover.vue';\nimport CardPosition from './components/blocks/CardPosition.vue';\nimport CardProduct from './components/blocks/CardProduct.vue';\nimport Image360 from './components/elements/Image360.vue';\nimport ProductImages from './components/blocks/ProductImages.vue';\n\n// Sections\nimport EditVariants from './components/sections/EditVariants.vue';\nimport FilterProducts from './components/sections/FilterProducts.vue';\nimport HeroRecommendation from './components/sections/HeroRecommendation.vue';\nimport ProductsPopular from './components/sections/ProductsPopular.vue';\nimport SectionProduct from './components/sections/SectionProduct.vue';\n\n// Elements\nimport Price from './components/elements/Price.vue';\n// Pages\nimport LeftoverEdit from './components/pages/LeftoverEdit.vue';\nimport Leftovers from './components/pages/Leftovers.vue';\nimport Product from './components/pages/Product.vue';\nimport ProductEdit from './components/pages/ProductEdit.vue';\nimport ProductRecommendation from './components/pages/ProductRecommmendation.vue';\nimport Products from './components/pages/Products.vue';\n\n// Пример функции инициализации для модуля продуктов\nfunction initializeProducts(app, store, router, options = {}) {\n const route = options.route || 'Home';\n\n const routesProducts = createProductRoutes();\n\n router.addRoute(route, routesProducts);\n\n store.addStore('categories', storeCategories);\n store.addStore('leftovers', storeLeftovers);\n store.addStore('products', storeProducts);\n}\n\nconst ModuleProducts = {\n initialize: initializeProducts,\n views: {\n store: {\n storeCategories,\n storeLeftovers,\n storeProducts,\n },\n router: {\n createProductRoutes,\n },\n components: {\n // Elements\n Price,\n // Blocks\n ProductImages,\n CardCategory,\n CardProduct,\n CardLeftover,\n Image360,\n CardPosition,\n // Sections\n SectionProduct,\n HeroRecommendation,\n FilterProducts,\n EditVariants,\n ProductsPopular,\n // Pages\n Product,\n ProductEdit,\n LeftoverEdit,\n ProductRecommendation,\n Products,\n Leftovers,\n // Layouts\n },\n },\n};\n\nexport {\n CardCategory,\n CardLeftover,\n CardPosition,\n CardProduct,\n LeftoverEdit,\n EditVariants,\n FilterProducts,\n HeroRecommendation,\n Image360,\n // Blocks\n ProductImages,\n Leftovers,\n ProductsPopular,\n // Elements\n Price,\n // Pages\n Product,\n ProductEdit,\n ProductRecommendation,\n Products,\n // Sections\n SectionProduct,\n};\n\nexport default ModuleProducts;\n"],"names":["storeCategories","storeLeftovers","storeProducts","Price","CardCategory","CardProduct","CardPosition","SectionProduct","HeroRecommendation","FilterProducts","EditVariants","ProductsPopular","Product","ProductEdit","LeftoverEdit","Products","Leftovers"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAoCA,SAAS,mBAAmB,KAAK,OAAO,QAAQ,UAAU,CAAA,GAAI;AAC5D,QAAM,QAAQ,QAAQ,SAAS;AAE/B,QAAM,iBAAiB,oBAAqB;AAE5C,SAAO,SAAS,OAAO,cAAc;AAErC,QAAM,SAAS,cAAcA,UAAe;AAC5C,QAAM,SAAS,aAAaC,SAAc;AAC1C,QAAM,SAAS,YAAYC,QAAa;AAC1C;AAEK,MAAC,iBAAiB;AAAA,EACrB,YAAY;AAAA,EACZ,OAAO;AAAA,IACL,OAAO;AAAA,MACX,iBAAMF;AAAAA,MACN,gBAAMC;AAAAA,MACN,eAAMC;AAAAA,IACD;AAAA,IACD,QAAQ;AAAA,MACN;AAAA,IACD;AAAA,IACD,YAAY;AAAA;AAAA,MAEhB,OAAMC;AAAAA;AAAAA,MAEA;AAAA,MACN,cAAMC;AAAAA,MACN,aAAMC;AAAAA,MACA;AAAA,MACA;AAAA,MACN,cAAMC;AAAAA;AAAAA,MAEN,gBAAMC;AAAAA,MACN,oBAAMC;AAAAA,MACN,gBAAMC;AAAAA,MACN,cAAMC;AAAAA,MACN,iBAAMC;AAAAA;AAAAA,MAEN,SAAMC;AAAAA,MACN,aAAMC;AAAAA,MACN,cAAMC;AAAAA,MACA;AAAA,MACN,UAAMC;AAAAA,MACN,WAAMC;AAAAA;AAAAA,IAED;AAAA,EACF;AACH;"}
|
|
@@ -19,8 +19,10 @@ const state = vue.reactive({
|
|
|
19
19
|
price: 0,
|
|
20
20
|
price_cost: 0,
|
|
21
21
|
localization: [],
|
|
22
|
+
recommended: [],
|
|
22
23
|
variants: [],
|
|
23
24
|
discounts: [],
|
|
25
|
+
included: [],
|
|
24
26
|
ingredients: [],
|
|
25
27
|
description: ""
|
|
26
28
|
},
|
|
@@ -182,6 +184,7 @@ const actions = {
|
|
|
182
184
|
const mutations = {
|
|
183
185
|
resetProduct(product) {
|
|
184
186
|
state.current = {
|
|
187
|
+
included: [],
|
|
185
188
|
recommendation: false,
|
|
186
189
|
category: [],
|
|
187
190
|
status: "unpublished",
|
|
@@ -196,6 +199,7 @@ const mutations = {
|
|
|
196
199
|
price_currency: "$",
|
|
197
200
|
localization: [],
|
|
198
201
|
variants: [],
|
|
202
|
+
recommended: [],
|
|
199
203
|
discounts: [],
|
|
200
204
|
ingredients: [],
|
|
201
205
|
description: ""
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"products.cjs","sources":["../../../../../../src/modules/products/store/products.js"],"sourcesContent":["/////////////////////////////\n// DEPENDENCIES\n/////////////////////////////\nimport { reactive, watch } from 'vue';\n// Globals\nimport { setError } from '@martyrs/src/modules/globals/views/store/globals.js';\n// Setup Axios\nimport $axios from '@martyrs/src/modules/globals/views/utils/axios-instance.js';\n/////////////////////////////\n// STATE\n/////////////////////////////\nconst state = reactive({\n all: [],\n current: {\n recommendation: false,\n category: [],\n status: 'unpublished',\n listing: 'sale',\n attributes: [],\n images: [],\n files: [],\n image3d: false,\n name: '',\n sale: 0,\n price: 0,\n price_cost: 0,\n localization: [],\n variants: [],\n discounts: [],\n ingredients: [],\n description: '',\n },\n filter: {\n active: false,\n class: 'mobile-only',\n selected: {},\n options: [\n {\n title: 'Price',\n value: 'price',\n options: [\n { label: 'Pickup', value: 'pickup' },\n { label: 'Courier', value: 'courier' },\n { label: 'Post', value: 'post' },\n ],\n },\n ],\n },\n sort: {\n param: 'distance',\n order: 'asc',\n options: [\n {\n label: 'Distance',\n value: 'distance',\n },\n {\n label: 'Popularity',\n value: 'views',\n },\n {\n label: 'Products',\n value: 'numberOfProducts',\n },\n ],\n },\n});\n\n/////////////////////////////\n// ACTIONS\n/////////////////////////////\nconst actions = {\n async create(product) {\n return await $axios.post('/api/products/create', product).then(\n response => {\n set(response.data, 'current');\n return Promise.resolve(response.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async read(options = {}) {\n\n try {\n const response = await $axios.get('/api/products/read', { params: options });\n\n if (options._id) {\n state.current = { ...response.data[0] };\n return Promise.resolve(response.data[0]);\n } else {\n return Promise.resolve(response.data);\n }\n return Promise.resolve(response.data);\n } catch (error) {\n setError(error);\n return Promise.reject(error);\n }\n },\n\n async update(_id, product) {\n return await $axios.post('/api/products/' + _id, product).then(\n response => {\n return Promise.resolve(response.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async deleteProduct(_id) {\n return await $axios.delete('/api/products/' + _id).then(\n response => {\n return Promise.resolve(response.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async submitMood(presetMood = null) {\n return $axios.post('/api/product/recommended', { mood: presetMood }).then(\n response => {\n state.current = response.data.product;\n state.current.recommendation = response.data.recommendationText;\n return Promise.resolve(response.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async fetchProducts() {\n return await $axios.get(`/api/products/read`).then(\n products => {\n state.all = products.data;\n return Promise.resolve(products.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async fetchProductsPopular() {\n return await $axios.get(`/api/products/popular`).then(\n products => {\n state.popular = products.data;\n return Promise.resolve(products.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async fetchProductsPublished() {\n return await $axios.get(`/api/products`).then(\n products => {\n let publishedProduct = products.data.filter(function (product, index) {\n return product.status !== 'unpublished';\n });\n\n state.all = publishedProduct;\n state.filtered = publishedProduct.slice();\n state.filteredPrice = state.filtered;\n\n state.filteredPrice.sort(function (l, r) {\n return l[state.sort.current] > r[state.sort.current] ? (state.sort.ascending ? 1 : -1) : l[state.sort.current] < r[state.sort.current] ? (state.sort.ascending ? -1 : 1) : 0;\n });\n\n return Promise.resolve(products.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async fetchProductPopular() {\n return await $axios.get(`/api/products`).then(\n products => {\n state.all = products.data.slice(1, 5);\n return Promise.resolve(products.data.slice(1, 5));\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n};\n\nconst mutations = {\n resetProduct(product) {\n state.current = {\n recommendation: false,\n category: [],\n status: 'unpublished',\n attributes: [],\n images: [],\n files: [],\n image3d: false,\n name: '',\n sale: 0,\n price: 0,\n price_cost: 0,\n price_currency: '$',\n localization: [],\n variants: [],\n discounts: [],\n ingredients: [],\n description: '',\n };\n },\n};\n\nfunction set(product, property) {\n state[property] = product;\n}\n\n/////////////////////////////\n// GETTERS\n/////////////////////////////\nconst getters = {};\n\n/////////////////////////////\n// UTILS\n/////////////////////////////\n\n/////////////////////////////\n// HISTORY\n/////////////////////////////\nconst history = [];\nhistory.push(state);\n\n/////////////////////////////\n// WATCH\n/////////////////////////////\nwatch(state, (newState, oldState) => {\n history.push(newState);\n});\n\n/////////////////////////////\n// Module Export\n/////////////////////////////\nexport { actions, getters, mutations, state };\n"],"names":["reactive","$axios","setError","watch"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"products.cjs","sources":["../../../../../../src/modules/products/store/products.js"],"sourcesContent":["/////////////////////////////\n// DEPENDENCIES\n/////////////////////////////\nimport { reactive, watch } from 'vue';\n// Globals\nimport { setError } from '@martyrs/src/modules/globals/views/store/globals.js';\n// Setup Axios\nimport $axios from '@martyrs/src/modules/globals/views/utils/axios-instance.js';\n/////////////////////////////\n// STATE\n/////////////////////////////\nconst state = reactive({\n all: [],\n current: {\n recommendation: false,\n category: [],\n status: 'unpublished',\n listing: 'sale',\n attributes: [],\n images: [],\n files: [],\n image3d: false,\n name: '',\n sale: 0,\n price: 0,\n price_cost: 0,\n localization: [],\n recommended: [],\n variants: [],\n discounts: [],\n included: [],\n ingredients: [],\n description: '',\n },\n filter: {\n active: false,\n class: 'mobile-only',\n selected: {},\n options: [\n {\n title: 'Price',\n value: 'price',\n options: [\n { label: 'Pickup', value: 'pickup' },\n { label: 'Courier', value: 'courier' },\n { label: 'Post', value: 'post' },\n ],\n },\n ],\n },\n sort: {\n param: 'distance',\n order: 'asc',\n options: [\n {\n label: 'Distance',\n value: 'distance',\n },\n {\n label: 'Popularity',\n value: 'views',\n },\n {\n label: 'Products',\n value: 'numberOfProducts',\n },\n ],\n },\n});\n\n/////////////////////////////\n// ACTIONS\n/////////////////////////////\nconst actions = {\n async create(product) {\n return await $axios.post('/api/products/create', product).then(\n response => {\n set(response.data, 'current');\n return Promise.resolve(response.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async read(options = {}) {\n\n try {\n const response = await $axios.get('/api/products/read', { params: options });\n\n if (options._id) {\n state.current = { ...response.data[0] };\n return Promise.resolve(response.data[0]);\n } else {\n return Promise.resolve(response.data);\n }\n return Promise.resolve(response.data);\n } catch (error) {\n setError(error);\n return Promise.reject(error);\n }\n },\n\n async update(_id, product) {\n return await $axios.post('/api/products/' + _id, product).then(\n response => {\n return Promise.resolve(response.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async deleteProduct(_id) {\n return await $axios.delete('/api/products/' + _id).then(\n response => {\n return Promise.resolve(response.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async submitMood(presetMood = null) {\n return $axios.post('/api/product/recommended', { mood: presetMood }).then(\n response => {\n state.current = response.data.product;\n state.current.recommendation = response.data.recommendationText;\n return Promise.resolve(response.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async fetchProducts() {\n return await $axios.get(`/api/products/read`).then(\n products => {\n state.all = products.data;\n return Promise.resolve(products.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async fetchProductsPopular() {\n return await $axios.get(`/api/products/popular`).then(\n products => {\n state.popular = products.data;\n return Promise.resolve(products.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async fetchProductsPublished() {\n return await $axios.get(`/api/products`).then(\n products => {\n let publishedProduct = products.data.filter(function (product, index) {\n return product.status !== 'unpublished';\n });\n\n state.all = publishedProduct;\n state.filtered = publishedProduct.slice();\n state.filteredPrice = state.filtered;\n\n state.filteredPrice.sort(function (l, r) {\n return l[state.sort.current] > r[state.sort.current] ? (state.sort.ascending ? 1 : -1) : l[state.sort.current] < r[state.sort.current] ? (state.sort.ascending ? -1 : 1) : 0;\n });\n\n return Promise.resolve(products.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async fetchProductPopular() {\n return await $axios.get(`/api/products`).then(\n products => {\n state.all = products.data.slice(1, 5);\n return Promise.resolve(products.data.slice(1, 5));\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n};\n\nconst mutations = {\n resetProduct(product) {\n state.current = {\n included: [],\n recommendation: false,\n category: [],\n status: 'unpublished',\n attributes: [],\n images: [],\n files: [],\n image3d: false,\n name: '',\n sale: 0,\n price: 0,\n price_cost: 0,\n price_currency: '$',\n localization: [],\n variants: [],\n recommended: [],\n discounts: [],\n ingredients: [],\n description: '',\n };\n },\n};\n\nfunction set(product, property) {\n state[property] = product;\n}\n\n/////////////////////////////\n// GETTERS\n/////////////////////////////\nconst getters = {};\n\n/////////////////////////////\n// UTILS\n/////////////////////////////\n\n/////////////////////////////\n// HISTORY\n/////////////////////////////\nconst history = [];\nhistory.push(state);\n\n/////////////////////////////\n// WATCH\n/////////////////////////////\nwatch(state, (newState, oldState) => {\n history.push(newState);\n});\n\n/////////////////////////////\n// Module Export\n/////////////////////////////\nexport { actions, getters, mutations, state };\n"],"names":["reactive","$axios","setError","watch"],"mappings":"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"}
|
|
@@ -17,8 +17,10 @@ const state = reactive({
|
|
|
17
17
|
price: 0,
|
|
18
18
|
price_cost: 0,
|
|
19
19
|
localization: [],
|
|
20
|
+
recommended: [],
|
|
20
21
|
variants: [],
|
|
21
22
|
discounts: [],
|
|
23
|
+
included: [],
|
|
22
24
|
ingredients: [],
|
|
23
25
|
description: ""
|
|
24
26
|
},
|
|
@@ -180,6 +182,7 @@ const actions = {
|
|
|
180
182
|
const mutations = {
|
|
181
183
|
resetProduct(product) {
|
|
182
184
|
state.current = {
|
|
185
|
+
included: [],
|
|
183
186
|
recommendation: false,
|
|
184
187
|
category: [],
|
|
185
188
|
status: "unpublished",
|
|
@@ -194,6 +197,7 @@ const mutations = {
|
|
|
194
197
|
price_currency: "$",
|
|
195
198
|
localization: [],
|
|
196
199
|
variants: [],
|
|
200
|
+
recommended: [],
|
|
197
201
|
discounts: [],
|
|
198
202
|
ingredients: [],
|
|
199
203
|
description: ""
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"products.js","sources":["../../../../../../src/modules/products/store/products.js"],"sourcesContent":["/////////////////////////////\n// DEPENDENCIES\n/////////////////////////////\nimport { reactive, watch } from 'vue';\n// Globals\nimport { setError } from '@martyrs/src/modules/globals/views/store/globals.js';\n// Setup Axios\nimport $axios from '@martyrs/src/modules/globals/views/utils/axios-instance.js';\n/////////////////////////////\n// STATE\n/////////////////////////////\nconst state = reactive({\n all: [],\n current: {\n recommendation: false,\n category: [],\n status: 'unpublished',\n listing: 'sale',\n attributes: [],\n images: [],\n files: [],\n image3d: false,\n name: '',\n sale: 0,\n price: 0,\n price_cost: 0,\n localization: [],\n variants: [],\n discounts: [],\n ingredients: [],\n description: '',\n },\n filter: {\n active: false,\n class: 'mobile-only',\n selected: {},\n options: [\n {\n title: 'Price',\n value: 'price',\n options: [\n { label: 'Pickup', value: 'pickup' },\n { label: 'Courier', value: 'courier' },\n { label: 'Post', value: 'post' },\n ],\n },\n ],\n },\n sort: {\n param: 'distance',\n order: 'asc',\n options: [\n {\n label: 'Distance',\n value: 'distance',\n },\n {\n label: 'Popularity',\n value: 'views',\n },\n {\n label: 'Products',\n value: 'numberOfProducts',\n },\n ],\n },\n});\n\n/////////////////////////////\n// ACTIONS\n/////////////////////////////\nconst actions = {\n async create(product) {\n return await $axios.post('/api/products/create', product).then(\n response => {\n set(response.data, 'current');\n return Promise.resolve(response.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async read(options = {}) {\n\n try {\n const response = await $axios.get('/api/products/read', { params: options });\n\n if (options._id) {\n state.current = { ...response.data[0] };\n return Promise.resolve(response.data[0]);\n } else {\n return Promise.resolve(response.data);\n }\n return Promise.resolve(response.data);\n } catch (error) {\n setError(error);\n return Promise.reject(error);\n }\n },\n\n async update(_id, product) {\n return await $axios.post('/api/products/' + _id, product).then(\n response => {\n return Promise.resolve(response.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async deleteProduct(_id) {\n return await $axios.delete('/api/products/' + _id).then(\n response => {\n return Promise.resolve(response.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async submitMood(presetMood = null) {\n return $axios.post('/api/product/recommended', { mood: presetMood }).then(\n response => {\n state.current = response.data.product;\n state.current.recommendation = response.data.recommendationText;\n return Promise.resolve(response.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async fetchProducts() {\n return await $axios.get(`/api/products/read`).then(\n products => {\n state.all = products.data;\n return Promise.resolve(products.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async fetchProductsPopular() {\n return await $axios.get(`/api/products/popular`).then(\n products => {\n state.popular = products.data;\n return Promise.resolve(products.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async fetchProductsPublished() {\n return await $axios.get(`/api/products`).then(\n products => {\n let publishedProduct = products.data.filter(function (product, index) {\n return product.status !== 'unpublished';\n });\n\n state.all = publishedProduct;\n state.filtered = publishedProduct.slice();\n state.filteredPrice = state.filtered;\n\n state.filteredPrice.sort(function (l, r) {\n return l[state.sort.current] > r[state.sort.current] ? (state.sort.ascending ? 1 : -1) : l[state.sort.current] < r[state.sort.current] ? (state.sort.ascending ? -1 : 1) : 0;\n });\n\n return Promise.resolve(products.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async fetchProductPopular() {\n return await $axios.get(`/api/products`).then(\n products => {\n state.all = products.data.slice(1, 5);\n return Promise.resolve(products.data.slice(1, 5));\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n};\n\nconst mutations = {\n resetProduct(product) {\n state.current = {\n recommendation: false,\n category: [],\n status: 'unpublished',\n attributes: [],\n images: [],\n files: [],\n image3d: false,\n name: '',\n sale: 0,\n price: 0,\n price_cost: 0,\n price_currency: '$',\n localization: [],\n variants: [],\n discounts: [],\n ingredients: [],\n description: '',\n };\n },\n};\n\nfunction set(product, property) {\n state[property] = product;\n}\n\n/////////////////////////////\n// GETTERS\n/////////////////////////////\nconst getters = {};\n\n/////////////////////////////\n// UTILS\n/////////////////////////////\n\n/////////////////////////////\n// HISTORY\n/////////////////////////////\nconst history = [];\nhistory.push(state);\n\n/////////////////////////////\n// WATCH\n/////////////////////////////\nwatch(state, (newState, oldState) => {\n history.push(newState);\n});\n\n/////////////////////////////\n// Module Export\n/////////////////////////////\nexport { actions, getters, mutations, state };\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"products.js","sources":["../../../../../../src/modules/products/store/products.js"],"sourcesContent":["/////////////////////////////\n// DEPENDENCIES\n/////////////////////////////\nimport { reactive, watch } from 'vue';\n// Globals\nimport { setError } from '@martyrs/src/modules/globals/views/store/globals.js';\n// Setup Axios\nimport $axios from '@martyrs/src/modules/globals/views/utils/axios-instance.js';\n/////////////////////////////\n// STATE\n/////////////////////////////\nconst state = reactive({\n all: [],\n current: {\n recommendation: false,\n category: [],\n status: 'unpublished',\n listing: 'sale',\n attributes: [],\n images: [],\n files: [],\n image3d: false,\n name: '',\n sale: 0,\n price: 0,\n price_cost: 0,\n localization: [],\n recommended: [],\n variants: [],\n discounts: [],\n included: [],\n ingredients: [],\n description: '',\n },\n filter: {\n active: false,\n class: 'mobile-only',\n selected: {},\n options: [\n {\n title: 'Price',\n value: 'price',\n options: [\n { label: 'Pickup', value: 'pickup' },\n { label: 'Courier', value: 'courier' },\n { label: 'Post', value: 'post' },\n ],\n },\n ],\n },\n sort: {\n param: 'distance',\n order: 'asc',\n options: [\n {\n label: 'Distance',\n value: 'distance',\n },\n {\n label: 'Popularity',\n value: 'views',\n },\n {\n label: 'Products',\n value: 'numberOfProducts',\n },\n ],\n },\n});\n\n/////////////////////////////\n// ACTIONS\n/////////////////////////////\nconst actions = {\n async create(product) {\n return await $axios.post('/api/products/create', product).then(\n response => {\n set(response.data, 'current');\n return Promise.resolve(response.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async read(options = {}) {\n\n try {\n const response = await $axios.get('/api/products/read', { params: options });\n\n if (options._id) {\n state.current = { ...response.data[0] };\n return Promise.resolve(response.data[0]);\n } else {\n return Promise.resolve(response.data);\n }\n return Promise.resolve(response.data);\n } catch (error) {\n setError(error);\n return Promise.reject(error);\n }\n },\n\n async update(_id, product) {\n return await $axios.post('/api/products/' + _id, product).then(\n response => {\n return Promise.resolve(response.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async deleteProduct(_id) {\n return await $axios.delete('/api/products/' + _id).then(\n response => {\n return Promise.resolve(response.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async submitMood(presetMood = null) {\n return $axios.post('/api/product/recommended', { mood: presetMood }).then(\n response => {\n state.current = response.data.product;\n state.current.recommendation = response.data.recommendationText;\n return Promise.resolve(response.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async fetchProducts() {\n return await $axios.get(`/api/products/read`).then(\n products => {\n state.all = products.data;\n return Promise.resolve(products.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async fetchProductsPopular() {\n return await $axios.get(`/api/products/popular`).then(\n products => {\n state.popular = products.data;\n return Promise.resolve(products.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async fetchProductsPublished() {\n return await $axios.get(`/api/products`).then(\n products => {\n let publishedProduct = products.data.filter(function (product, index) {\n return product.status !== 'unpublished';\n });\n\n state.all = publishedProduct;\n state.filtered = publishedProduct.slice();\n state.filteredPrice = state.filtered;\n\n state.filteredPrice.sort(function (l, r) {\n return l[state.sort.current] > r[state.sort.current] ? (state.sort.ascending ? 1 : -1) : l[state.sort.current] < r[state.sort.current] ? (state.sort.ascending ? -1 : 1) : 0;\n });\n\n return Promise.resolve(products.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async fetchProductPopular() {\n return await $axios.get(`/api/products`).then(\n products => {\n state.all = products.data.slice(1, 5);\n return Promise.resolve(products.data.slice(1, 5));\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n};\n\nconst mutations = {\n resetProduct(product) {\n state.current = {\n included: [],\n recommendation: false,\n category: [],\n status: 'unpublished',\n attributes: [],\n images: [],\n files: [],\n image3d: false,\n name: '',\n sale: 0,\n price: 0,\n price_cost: 0,\n price_currency: '$',\n localization: [],\n variants: [],\n recommended: [],\n discounts: [],\n ingredients: [],\n description: '',\n };\n },\n};\n\nfunction set(product, property) {\n state[property] = product;\n}\n\n/////////////////////////////\n// GETTERS\n/////////////////////////////\nconst getters = {};\n\n/////////////////////////////\n// UTILS\n/////////////////////////////\n\n/////////////////////////////\n// HISTORY\n/////////////////////////////\nconst history = [];\nhistory.push(state);\n\n/////////////////////////////\n// WATCH\n/////////////////////////////\nwatch(state, (newState, oldState) => {\n history.push(newState);\n});\n\n/////////////////////////////\n// Module Export\n/////////////////////////////\nexport { actions, getters, mutations, state };\n"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ const vue = require("vue");
|
|
|
4
4
|
const Block = require("../../../../../components/Block/Block.vue.cjs");
|
|
5
5
|
const Field = require("../../../../../components/Field/Field.vue.cjs");
|
|
6
6
|
const Feed = require("../../../../../components/Feed/Feed.vue.cjs");
|
|
7
|
-
const Popup = require("../../../../../components/Popup/Popup.
|
|
7
|
+
const Popup = require("../../../../../components/Popup/Popup.vue2.cjs");
|
|
8
8
|
require("../../../../globals/views/store/globals.cjs");
|
|
9
9
|
const CardOrderItem = require("../../../../orders/components/blocks/CardOrderItem.vue.cjs");
|
|
10
10
|
const vueRouter = require("vue-router");
|