@ozdao/martyrs 0.2.429 → 0.2.431
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chats.server.js +0 -19
- package/dist/chats.server.mjs +0 -19
- package/dist/community.server.js +1 -1
- package/dist/community.server.mjs +1 -1
- package/dist/events.server.js +1 -1
- package/dist/events.server.mjs +1 -1
- package/dist/gallery.server.js +1 -1
- package/dist/gallery.server.mjs +1 -1
- package/dist/{globals.logger-Deb_8o7C.mjs → globals.cache-BT6q3vOf.mjs} +0 -33
- package/dist/{globals.logger-BuG0pN80.js → globals.cache-CwWvNGFQ.js} +0 -33
- package/dist/globals.logger-BdjooLaD.js +34 -0
- package/dist/globals.logger-DusiFsxN.mjs +35 -0
- package/dist/martyrs/src/components/Block/Block.vue.cjs +1 -1
- package/dist/martyrs/src/components/Block/Block.vue.js +1 -1
- package/dist/martyrs/src/components/Button/{Button.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/Chips/{Chips.vue.cjs → Chips.vue2.cjs} +2 -2
- package/dist/martyrs/src/components/Chips/Chips.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/Chips/{Chips.vue.js → Chips.vue2.js} +2 -2
- package/dist/martyrs/src/components/Chips/Chips.vue2.js.map +1 -0
- package/dist/martyrs/src/components/Menu/{Menu.vue2.cjs → Menu.vue.cjs} +2 -2
- package/dist/martyrs/src/components/Menu/Menu.vue.cjs.map +1 -0
- package/dist/martyrs/src/components/Menu/{Menu.vue2.js → Menu.vue.js} +2 -2
- package/dist/martyrs/src/components/Menu/Menu.vue.js.map +1 -0
- package/dist/martyrs/src/components/Popup/{Popup.vue2.cjs → Popup.vue.cjs} +2 -2
- package/dist/martyrs/src/components/Popup/{Popup.vue2.js.map → Popup.vue.cjs.map} +1 -1
- package/dist/martyrs/src/components/Popup/{Popup.vue2.js → Popup.vue.js} +2 -2
- package/dist/martyrs/src/components/Popup/Popup.vue.js.map +1 -0
- package/dist/martyrs/src/components/Tab/{Tab.vue.cjs → Tab.vue2.cjs} +2 -2
- package/dist/martyrs/src/components/Tab/Tab.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/Tab/{Tab.vue.js → Tab.vue2.js} +2 -2
- package/dist/martyrs/src/components/Tab/{Tab.vue.cjs.map → Tab.vue2.js.map} +1 -1
- package/dist/martyrs/src/components/Tooltip/{Tooltip.vue.cjs → Tooltip.vue2.cjs} +2 -2
- package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/Tooltip/{Tooltip.vue.js → Tooltip.vue2.js} +2 -2
- package/dist/martyrs/src/components/Tooltip/{Tooltip.vue.cjs.map → Tooltip.vue2.js.map} +1 -1
- package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.cjs +2 -2
- package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +2 -2
- 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/community/components/blocks/CardBlogpost.vue.cjs +1 -1
- package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.js +1 -1
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs +3 -3
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +3 -3
- 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/events/components/blocks/CardEvent.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.cjs +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/Event.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/pages/Events.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/pages/Events.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.js +1 -1
- package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.cjs +1 -1
- package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.js +1 -1
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +3 -3
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +3 -3
- package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +2 -2
- package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js +2 -2
- package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.cjs +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 +16 -12
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js +16 -12
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.cjs +6 -6
- package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js +6 -6
- package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs +17 -9
- package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js +17 -9
- package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Sidebar.vue.cjs +16 -4
- package/dist/martyrs/src/modules/globals/views/components/partials/Sidebar.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Sidebar.vue.js +16 -4
- package/dist/martyrs/src/modules/globals/views/components/partials/Sidebar.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue.js +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionFeaturesImages.vue.cjs +101 -0
- package/dist/martyrs/src/modules/landing/components/sections/SectionFeaturesImages.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/landing/components/sections/SectionFeaturesImages.vue.js +101 -0
- package/dist/martyrs/src/modules/landing/components/sections/SectionFeaturesImages.vue.js.map +1 -0
- package/dist/martyrs/src/modules/landing/components/sections/SectionHeroToken.vue.cjs +85 -0
- package/dist/martyrs/src/modules/landing/components/sections/SectionHeroToken.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/landing/components/sections/SectionHeroToken.vue.js +85 -0
- package/dist/martyrs/src/modules/landing/components/sections/SectionHeroToken.vue.js.map +1 -0
- package/dist/martyrs/src/modules/landing/components/sections/SectionRoadmap.vue.cjs +97 -0
- package/dist/martyrs/src/modules/landing/components/sections/SectionRoadmap.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/landing/components/sections/SectionRoadmap.vue.js +97 -0
- package/dist/martyrs/src/modules/landing/components/sections/SectionRoadmap.vue.js.map +1 -0
- package/dist/martyrs/src/modules/landing/landing.client.cjs +6 -0
- package/dist/martyrs/src/modules/landing/landing.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/landing/landing.client.js +6 -0
- package/dist/martyrs/src/modules/landing/landing.client.js.map +1 -1
- package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.cjs +4 -12
- 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 +4 -12
- package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js.map +1 -1
- package/dist/martyrs/src/modules/notifications/notifications.client.cjs +135 -248
- package/dist/martyrs/src/modules/notifications/notifications.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/notifications/notifications.client.js +135 -248
- package/dist/martyrs/src/modules/notifications/notifications.client.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.cjs +112 -0
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.js +112 -0
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.js.map +1 -0
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.cjs +19 -13
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.js +19 -13
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +3 -3
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +3 -3
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.cjs +2 -2
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js +2 -2
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +17 -9
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +26 -18
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.cjs +17 -100
- package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.js +17 -100
- package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.cjs +2 -2
- package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.js +2 -2
- package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/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 +3 -3
- package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.js +3 -3
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs +4 -4
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +4 -4
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs +61 -58
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +65 -62
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +3 -3
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +3 -3
- package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.js +1 -1
- 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 +2 -2
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/store/organizations.cjs +0 -2
- package/dist/martyrs/src/modules/organizations/store/organizations.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/store/organizations.js +1 -3
- package/dist/martyrs/src/modules/organizations/store/organizations.js.map +1 -1
- package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.cjs +1 -1
- package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js +1 -1
- package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.cjs +2 -2
- package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js +2 -2
- 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/ImagesThumbnails.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/ImagesThumbnails.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/pages/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 +1 -1
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/pages/EditLeftover.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/pages/EditLeftover.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/pages/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 +12 -10
- 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 +12 -10
- 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 +3 -3
- package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +3 -3
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs +5 -4
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +6 -5
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditProductInfo.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditProductInfo.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs +2 -2
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +2 -2
- package/dist/martyrs/src/modules/rents/views/components/pages/GanttChart.vue.cjs +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/GanttChart.vue.js +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.cjs +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.js +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.cjs +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/blocks/CardSpot.vue.cjs +1 -1
- package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/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 +3 -3
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +3 -3
- package/dist/martyrs/src/modules/spots/store/spots.cjs +4 -11
- package/dist/martyrs/src/modules/spots/store/spots.cjs.map +1 -1
- package/dist/martyrs/src/modules/spots/store/spots.js +4 -11
- package/dist/martyrs/src/modules/spots/store/spots.js.map +1 -1
- package/dist/martyrs.css +1 -1
- package/dist/notifications.server.js +85 -1
- package/dist/notifications.server.mjs +85 -1
- package/dist/orders.server.js +4 -30
- package/dist/orders.server.mjs +3 -29
- package/dist/organizations.server.js +33 -30
- package/dist/organizations.server.mjs +33 -30
- package/dist/products.server.js +1 -1
- package/dist/products.server.mjs +1 -1
- package/dist/{queryProcessor-CCmHM0yi.mjs → queryProcessor-CWnMIe2U.mjs} +4 -1
- package/dist/{queryProcessor-CwQakZkT.js → queryProcessor-D6GuKfTV.js} +4 -1
- package/dist/rents.server.js +4 -3
- package/dist/rents.server.mjs +3 -2
- package/dist/spots.server.js +4 -16
- package/dist/spots.server.mjs +4 -16
- package/dist/style.css +136 -61
- package/dist/wallet.server.js +1 -1
- package/dist/wallet.server.mjs +1 -1
- package/package.json +1 -1
- package/src/builder/modes/ssr.dev.js +0 -20
- package/src/modules/chats/routes/chats.routes.js +19 -19
- package/src/modules/globals/controllers/utils/queryProcessor.js +2 -1
- package/src/modules/globals/views/components/layouts/Client.vue +25 -19
- package/src/modules/globals/views/components/partials/Header.vue +3 -4
- package/src/modules/globals/views/components/partials/Navigation.vue +17 -19
- package/src/modules/globals/views/components/partials/Sidebar.vue +20 -9
- package/src/modules/landing/components/sections/SectionHeroToken.vue +1 -1
- package/src/modules/landing/landing.client.js +7 -0
- package/src/modules/notifications/components/elements/NotificationBadge.vue +4 -13
- package/src/modules/notifications/notifications.client.js +166 -350
- package/src/modules/notifications/services/notification.service.js +4 -3
- package/src/modules/notifications/services/websocket.service.js +54 -56
- package/src/modules/orders/components/blocks/CardOrderBackoffice.vue +106 -0
- package/src/modules/orders/components/blocks/CardOrderUser.vue +16 -9
- package/src/modules/orders/components/pages/OrderCreate.vue +3 -3
- package/src/modules/orders/components/pages/OrderCreateBackoffice.vue +15 -3
- package/src/modules/orders/components/pages/Orders.vue +10 -93
- package/src/modules/orders/components/partials/ShopCart.vue +2 -2
- package/src/modules/orders/controllers/orders.controller.js +2 -2
- package/src/modules/organizations/components/pages/Organization.vue +48 -47
- package/src/modules/organizations/controllers/organizations.controller.js +57 -47
- package/src/modules/organizations/store/organizations.js +6 -6
- package/src/modules/products/components/pages/Product.vue +10 -9
- package/src/modules/products/components/pages/Products.vue +4 -3
- package/src/modules/spots/controllers/spots.controller.js +3 -17
- package/src/modules/spots/routes/spots.routes.js +1 -4
- package/src/modules/spots/store/spots.js +4 -12
- package/src/styles/base/shadow_transitions_hover_refactor.scss +1 -0
- package/dist/martyrs/src/components/Button/Button.vue.js.map +0 -1
- package/dist/martyrs/src/components/Chips/Chips.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Chips/Chips.vue.js.map +0 -1
- package/dist/martyrs/src/components/Menu/Menu.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/Menu/Menu.vue2.js.map +0 -1
- package/dist/martyrs/src/components/Popup/Popup.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/Tab/Tab.vue.js.map +0 -1
- package/dist/martyrs/src/components/Tooltip/Tooltip.vue.js.map +0 -1
- package/src/modules/landing/components/sections/HowToBuyWDR.vue +0 -130
- package/src/modules/landing/components/sections/WhatIsWDRSection.vue +0 -116
|
@@ -1,61 +1,44 @@
|
|
|
1
1
|
// services/websocket.service.js
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
2
|
+
const WebSocketService = (wss) => {
|
|
3
|
+
const connections = new Map();
|
|
4
|
+
|
|
5
|
+
// Добавление соединения
|
|
6
|
+
const addConnection = (userId, ws) => {
|
|
7
|
+
if (!connections.has(userId)) {
|
|
8
|
+
connections.set(userId, new Set());
|
|
9
|
+
}
|
|
10
|
+
connections.get(userId).add(ws);
|
|
10
11
|
|
|
11
|
-
//
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
if (req.userId) {
|
|
15
|
-
// Mark this connection as a notification connection
|
|
16
|
-
ws.type = 'notification';
|
|
17
|
-
this.addConnection(req.userId, ws);
|
|
18
|
-
|
|
19
|
-
ws.on('close', () => {
|
|
20
|
-
this.removeConnection(req.userId, ws);
|
|
21
|
-
});
|
|
22
|
-
}
|
|
12
|
+
// Отслеживаем закрытие соединения
|
|
13
|
+
ws.on('close', () => {
|
|
14
|
+
removeConnection(userId, ws);
|
|
23
15
|
});
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
// Store a new connection
|
|
27
|
-
addConnection(userId, ws) {
|
|
28
|
-
if (!this.connections.has(userId)) {
|
|
29
|
-
this.connections.set(userId, new Set());
|
|
30
|
-
}
|
|
31
|
-
this.connections.get(userId).add(ws);
|
|
32
|
-
}
|
|
16
|
+
};
|
|
33
17
|
|
|
34
|
-
//
|
|
35
|
-
removeConnection(userId, ws) {
|
|
36
|
-
if (
|
|
37
|
-
|
|
38
|
-
if (
|
|
39
|
-
|
|
18
|
+
// Удаление соединения
|
|
19
|
+
const removeConnection = (userId, ws) => {
|
|
20
|
+
if (connections.has(userId)) {
|
|
21
|
+
connections.get(userId).delete(ws);
|
|
22
|
+
if (connections.get(userId).size === 0) {
|
|
23
|
+
connections.delete(userId);
|
|
40
24
|
}
|
|
41
25
|
}
|
|
42
|
-
}
|
|
26
|
+
};
|
|
43
27
|
|
|
44
|
-
//
|
|
45
|
-
sendToUser(userId, data) {
|
|
28
|
+
// Отправка сообщения конкретному пользователю
|
|
29
|
+
const sendToUser = (userId, data) => {
|
|
46
30
|
return new Promise((resolve) => {
|
|
47
31
|
try {
|
|
48
|
-
if (!
|
|
49
|
-
//
|
|
32
|
+
if (!connections.has(userId)) {
|
|
33
|
+
// Пользователь не подключен
|
|
50
34
|
return resolve({ delivered: false, reason: 'user-not-connected' });
|
|
51
35
|
}
|
|
52
36
|
|
|
53
|
-
const userSockets =
|
|
37
|
+
const userSockets = connections.get(userId);
|
|
54
38
|
let delivered = 0;
|
|
55
39
|
|
|
56
40
|
userSockets.forEach((ws) => {
|
|
57
|
-
|
|
58
|
-
if (ws.type === 'notification' && ws.readyState === 1) { // 1 = OPEN
|
|
41
|
+
if (ws.readyState === 1) { // 1 = OPEN
|
|
59
42
|
ws.send(JSON.stringify({
|
|
60
43
|
type: 'notification',
|
|
61
44
|
data
|
|
@@ -63,23 +46,24 @@ class WebSocketService {
|
|
|
63
46
|
delivered++;
|
|
64
47
|
}
|
|
65
48
|
});
|
|
49
|
+
|
|
50
|
+
console.log(userSockets)
|
|
66
51
|
|
|
67
52
|
resolve({ delivered: delivered > 0, connections: delivered });
|
|
68
53
|
} catch (error) {
|
|
69
|
-
console.error('
|
|
54
|
+
console.error('Ошибка отправки уведомления:', error);
|
|
70
55
|
resolve({ delivered: false, reason: 'error', error: error.message });
|
|
71
56
|
}
|
|
72
57
|
});
|
|
73
|
-
}
|
|
58
|
+
};
|
|
74
59
|
|
|
75
|
-
//
|
|
76
|
-
broadcast(data) {
|
|
60
|
+
// Рассылка всем подключенным клиентам
|
|
61
|
+
const broadcast = (data) => {
|
|
77
62
|
return new Promise((resolve) => {
|
|
78
63
|
let count = 0;
|
|
79
64
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
if (ws.type === 'notification' && ws.readyState === 1) { // 1 = OPEN
|
|
65
|
+
wss.clients.forEach((ws) => {
|
|
66
|
+
if (ws.readyState === 1) { // 1 = OPEN
|
|
83
67
|
try {
|
|
84
68
|
ws.send(JSON.stringify({
|
|
85
69
|
type: 'notification',
|
|
@@ -87,16 +71,30 @@ class WebSocketService {
|
|
|
87
71
|
}));
|
|
88
72
|
count++;
|
|
89
73
|
} catch (e) {
|
|
90
|
-
console.error('
|
|
74
|
+
console.error('Ошибка рассылки клиенту:', e);
|
|
91
75
|
}
|
|
92
76
|
}
|
|
93
77
|
});
|
|
94
78
|
|
|
95
79
|
resolve({ delivered: count > 0, connections: count });
|
|
96
80
|
});
|
|
97
|
-
}
|
|
98
|
-
|
|
81
|
+
};
|
|
82
|
+
|
|
83
|
+
// Настраиваем обработчик подключений для нашего сервиса
|
|
84
|
+
wss.on('connection', (ws, req) => {
|
|
85
|
+
// Если у соединения есть userId (аутентифицированный пользователь)
|
|
86
|
+
if (req.userId) {
|
|
87
|
+
// Просто добавляем соединение в наш трекер
|
|
88
|
+
addConnection(req.userId, ws);
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
|
|
92
|
+
return {
|
|
93
|
+
addConnection,
|
|
94
|
+
removeConnection,
|
|
95
|
+
sendToUser,
|
|
96
|
+
broadcast
|
|
97
|
+
};
|
|
98
|
+
};
|
|
99
99
|
|
|
100
|
-
|
|
101
|
-
const webSocketService = new WebSocketService();
|
|
102
|
-
module.exports = webSocketService;
|
|
100
|
+
module.exports = WebSocketService;
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="bg-light pos-relative pd-medium radius-medium">
|
|
3
|
+
<CardHeader
|
|
4
|
+
:entity="order"
|
|
5
|
+
:entityType="'order'"
|
|
6
|
+
:user="user"
|
|
7
|
+
:owner="order.creator"
|
|
8
|
+
:creator="order.creator"
|
|
9
|
+
:date="order.createdAt"
|
|
10
|
+
class="mn-b-small"
|
|
11
|
+
/>
|
|
12
|
+
|
|
13
|
+
<div class="mn-b-small pd-small bg-white radius-small flex-nowrap flex">
|
|
14
|
+
<div class="w-100">
|
|
15
|
+
<p class="t-truncate">{{order.delivery.address || 'Not specified'}}</p>
|
|
16
|
+
</div>
|
|
17
|
+
|
|
18
|
+
<div class="w-100 t-right">
|
|
19
|
+
<h3 class="mn-b-thin">{{currency}}{{getTotal(order.positions)}}</h3>
|
|
20
|
+
<p>#{{order._id.slice(0, 4) + '...' + order._id.slice(-4)}}</p>
|
|
21
|
+
</div>
|
|
22
|
+
</div>
|
|
23
|
+
|
|
24
|
+
<div class="cols-1 pos-relative mn-b-small gap-thin pd-small bg-white radius-small">
|
|
25
|
+
<!-- Всегда отображаем первые две позиции -->
|
|
26
|
+
<template v-for="(position, index) in order.positions">
|
|
27
|
+
<transition name="moveFromTop">
|
|
28
|
+
<div
|
|
29
|
+
v-if="index < 2 || (spoiler && index >= 2)"
|
|
30
|
+
:key="index"
|
|
31
|
+
class="w-100 flex"
|
|
32
|
+
>
|
|
33
|
+
<p class="mn-r-auto">{{ position.name }}</p>
|
|
34
|
+
<p class="t-right">
|
|
35
|
+
{{ position.quantity }} {{ position.type }}
|
|
36
|
+
x
|
|
37
|
+
<span class="t-transp">{{ currency }} {{ position.price }}</span>
|
|
38
|
+
</p>
|
|
39
|
+
</div>
|
|
40
|
+
</transition>
|
|
41
|
+
</template>
|
|
42
|
+
|
|
43
|
+
<!-- Кнопка переключения для дополнительных позиций, видна только если есть больше двух позиций -->
|
|
44
|
+
<button
|
|
45
|
+
v-if="order.positions.length > 2"
|
|
46
|
+
@click.prevent="spoiler = !spoiler"
|
|
47
|
+
class="cursor-pointer radius-big bg-light-transp-50 pd-nano w-100 flex-center flex"
|
|
48
|
+
>
|
|
49
|
+
{{ !spoiler ? `+${order.positions.length - 2} more` : `Hide` }}
|
|
50
|
+
</button>
|
|
51
|
+
</div>
|
|
52
|
+
|
|
53
|
+
<div class="pd-small bg-white radius-small gap-micro flex-v-center flex-nowrap flex">
|
|
54
|
+
<IconTime class="i-semi t-transp" fill="rgb(var(--black)" />
|
|
55
|
+
<p class="t-medium mn-r-auto">{{formatDate(order.deadline)}}</p>
|
|
56
|
+
|
|
57
|
+
<span
|
|
58
|
+
class="flex-child flex-child-shrink-0 capitalize w-max t-medium radius-big pd-b-nano pd-t-nano pd-r-thin pd-l-thin bg-main"
|
|
59
|
+
>
|
|
60
|
+
{{order.status}}
|
|
61
|
+
</span>
|
|
62
|
+
|
|
63
|
+
<span
|
|
64
|
+
class="flex-child flex-child-shrink-0 capitalize w-max t-medium radius-big pd-b-nano pd-t-nano pd-r-thin pd-l-thin t-white bg-red"
|
|
65
|
+
>
|
|
66
|
+
{{order.payment.status || 'Not defined'}}
|
|
67
|
+
</span>
|
|
68
|
+
</div>
|
|
69
|
+
|
|
70
|
+
<div v-if="order.comment" class="pos-relative radius-small bg-fifth-transp-10 mn-t-thin pd-small">
|
|
71
|
+
<p class="mn-b-thin t-transp uppercase p-small t-medium">Comment</p>
|
|
72
|
+
<p>{{order.comment}}</p>
|
|
73
|
+
</div>
|
|
74
|
+
</div>
|
|
75
|
+
</template>
|
|
76
|
+
|
|
77
|
+
<script setup>
|
|
78
|
+
import { ref } from 'vue';
|
|
79
|
+
import CardHeader from '@martyrs/src/modules/globals/views/components/blocks/CardHeader.vue';
|
|
80
|
+
import IconTime from '@martyrs/src/modules/icons/entities/IconTime.vue';
|
|
81
|
+
|
|
82
|
+
const props = defineProps({
|
|
83
|
+
order: {
|
|
84
|
+
type: Object,
|
|
85
|
+
required: true
|
|
86
|
+
},
|
|
87
|
+
user: {
|
|
88
|
+
type: Object,
|
|
89
|
+
required: true
|
|
90
|
+
},
|
|
91
|
+
formatDate: {
|
|
92
|
+
type: Function,
|
|
93
|
+
required: true
|
|
94
|
+
},
|
|
95
|
+
getTotal: {
|
|
96
|
+
type: Function,
|
|
97
|
+
required: true
|
|
98
|
+
},
|
|
99
|
+
currency: {
|
|
100
|
+
type: String,
|
|
101
|
+
default: ''
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
|
|
105
|
+
const spoiler = ref(false);
|
|
106
|
+
</script>
|
|
@@ -148,17 +148,24 @@ const statusText = computed(() => {
|
|
|
148
148
|
case 'canceled':
|
|
149
149
|
return `Canceled, ${updatedDate}`;
|
|
150
150
|
default:
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
151
|
+
// Расчет задержки
|
|
152
|
+
if (props.positions?.length) {
|
|
153
|
+
const lastPosition = props.positions[props.positions.length - 1];
|
|
154
|
+
const lastEndDateRaw = lastPosition?.date?.end;
|
|
155
|
+
|
|
156
|
+
if (lastEndDateRaw) {
|
|
157
|
+
const lastEndDate = new Date(lastEndDateRaw);
|
|
154
158
|
const now = new Date();
|
|
155
|
-
const diffTime = Math.abs(now - lastEndDate);
|
|
159
|
+
const diffTime = Math.abs(now.getTime() - lastEndDate.getTime());
|
|
156
160
|
const diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24));
|
|
161
|
+
|
|
157
162
|
if (diffDays > 0 && props.status !== 'finished' && props.status !== 'canceled') {
|
|
158
163
|
return `Delay ${diffDays} day${diffDays > 1 ? 's' : ''}`;
|
|
159
164
|
}
|
|
160
165
|
}
|
|
161
|
-
|
|
166
|
+
}
|
|
167
|
+
return `Created, ${createdDate}`;
|
|
168
|
+
|
|
162
169
|
}
|
|
163
170
|
});
|
|
164
171
|
|
|
@@ -192,16 +199,16 @@ threeDaysFromNow.setDate(today.getDate() + 3);
|
|
|
192
199
|
// Показывать ли уведомление о возврате
|
|
193
200
|
const showReturnNotice = computed(() => {
|
|
194
201
|
return props.positions.some(position => {
|
|
195
|
-
const endDate = getDateWithoutTime(position.date.end);
|
|
196
|
-
return endDate <= threeDaysFromNow;
|
|
202
|
+
const endDate = position?.date?.end ? getDateWithoutTime(position.date.end) : null;
|
|
203
|
+
return endDate !== null && endDate <= threeDaysFromNow;
|
|
197
204
|
});
|
|
198
205
|
});
|
|
199
206
|
|
|
200
207
|
// Есть ли просроченные позиции
|
|
201
208
|
const hasOverdue = computed(() => {
|
|
202
209
|
return props.positions.some(position => {
|
|
203
|
-
const endDate = getDateWithoutTime(position.date.end);
|
|
204
|
-
return endDate < today;
|
|
210
|
+
const endDate = position?.date?.end ? getDateWithoutTime(position.date.end) : null;
|
|
211
|
+
return endDate !== null && endDate < today;
|
|
205
212
|
});
|
|
206
213
|
});
|
|
207
214
|
|
|
@@ -260,14 +260,14 @@ async function handleCreate() {
|
|
|
260
260
|
let order = await orders.actions.create(orders.state.current);
|
|
261
261
|
|
|
262
262
|
if (order) {
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
router.push({
|
|
263
|
+
await router.push({
|
|
266
264
|
name: 'Order',
|
|
267
265
|
params: {
|
|
268
266
|
order: order._id
|
|
269
267
|
}
|
|
270
268
|
})
|
|
269
|
+
|
|
270
|
+
shopcart.actions.resetShopcart()
|
|
271
271
|
} else {
|
|
272
272
|
alert('something wrong')
|
|
273
273
|
}
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
state: null
|
|
54
54
|
}"
|
|
55
55
|
:options="{
|
|
56
|
-
|
|
56
|
+
owner: route.params._id
|
|
57
57
|
}"
|
|
58
58
|
v-slot="{
|
|
59
59
|
items
|
|
@@ -165,12 +165,14 @@
|
|
|
165
165
|
|
|
166
166
|
<FormDelivery
|
|
167
167
|
v-if="tabOrderCreate === 'delivery'"
|
|
168
|
-
:order="orders.state.current"
|
|
168
|
+
:order="orders.state.current"
|
|
169
|
+
:organization="orderOrganization[0]"
|
|
169
170
|
/>
|
|
170
171
|
|
|
171
172
|
<FormPayment
|
|
172
173
|
v-if="tabOrderCreate === 'payment'"
|
|
173
174
|
:order="orders.state.current"
|
|
175
|
+
:organization="orderOrganization[0]"
|
|
174
176
|
/>
|
|
175
177
|
|
|
176
178
|
<Popup
|
|
@@ -223,6 +225,7 @@
|
|
|
223
225
|
import * as globals from '@martyrs/src/modules/globals/views/store/globals';
|
|
224
226
|
import * as auth from '@martyrs/src/modules/auth/views/store/auth';
|
|
225
227
|
import * as orders from '@martyrs/src/modules/orders/store/orders';
|
|
228
|
+
import * as organizations from '@martyrs/src/modules/organizations/store/organizations';
|
|
226
229
|
import * as products from '@martyrs/src/modules/products/store/products';
|
|
227
230
|
|
|
228
231
|
import customers from '@martyrs/src/modules/orders/store/customers.store';
|
|
@@ -296,7 +299,16 @@
|
|
|
296
299
|
})
|
|
297
300
|
}
|
|
298
301
|
|
|
299
|
-
|
|
302
|
+
const orderOrganization = ref({})
|
|
303
|
+
|
|
304
|
+
|
|
305
|
+
|
|
306
|
+
onMounted(async() => {
|
|
307
|
+
|
|
308
|
+
orderOrganization.value = await organizations.actions.read({
|
|
309
|
+
_id: route.params._id,
|
|
310
|
+
lookup: ['spots']
|
|
311
|
+
})
|
|
300
312
|
|
|
301
313
|
// await orders.actions.fetchOrder(route.params.id) // Implement this action in your store
|
|
302
314
|
|
|
@@ -4,8 +4,9 @@
|
|
|
4
4
|
v-if="!MOBILE_APP"
|
|
5
5
|
title="Orders"
|
|
6
6
|
:actions="[
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
route.meta.context === 'backoffice' && { to: { name: 'BackofficeAdminCreateOrder' }, label: 'Create Order' },
|
|
8
|
+
route.meta.context === 'organization' && { to: { name: 'OrganizationAdminCreateOrder', params: { _id: route.params._id}}, label: 'Create Order' }
|
|
9
|
+
].filter(Boolean)"
|
|
9
10
|
class="mn-b-small"
|
|
10
11
|
/>
|
|
11
12
|
|
|
@@ -44,7 +45,7 @@
|
|
|
44
45
|
}"
|
|
45
46
|
:options="{
|
|
46
47
|
limit: 15,
|
|
47
|
-
...(route.meta.context === 'organization' && {
|
|
48
|
+
...(route.meta.context === 'organization' && { owner: route.params._id }),
|
|
48
49
|
...(route.meta.context === 'user' && { customer: route.params._id }),
|
|
49
50
|
...(tab !== 'all' && { status: tab })
|
|
50
51
|
}"
|
|
@@ -62,98 +63,14 @@
|
|
|
62
63
|
? { order: order._id }
|
|
63
64
|
: { order: order._id, organization: order.owner.target || order.owner._id }
|
|
64
65
|
}"
|
|
65
|
-
class="bg-light pos-relative pd-medium radius-big"
|
|
66
66
|
>
|
|
67
|
-
<
|
|
68
|
-
:
|
|
69
|
-
:entityType="'order'"
|
|
67
|
+
<CardOrderBackoffice
|
|
68
|
+
:order="order"
|
|
70
69
|
:user="auth.state.user"
|
|
71
|
-
:
|
|
72
|
-
:
|
|
73
|
-
:
|
|
74
|
-
class="mn-b-small"
|
|
70
|
+
:formatDate="formatDate"
|
|
71
|
+
:getTotal="orders.getters.getTotal"
|
|
72
|
+
:currency="returnCurrency()"
|
|
75
73
|
/>
|
|
76
|
-
|
|
77
|
-
<div class="mn-b-small pd-small bg-white radius-small flex-nowrap flex">
|
|
78
|
-
<div class="w-100">
|
|
79
|
-
<!-- <h3 class="mn-b-thin">{{order.customer.target.profile?.name || order.customer.target.phone || order.customer.target.email || 'No name'}}</h3> -->
|
|
80
|
-
<p class="t-truncate">{{order.delivery.address || 'Not specified'}}</p>
|
|
81
|
-
</div>
|
|
82
|
-
|
|
83
|
-
<div class=" w-100 t-right">
|
|
84
|
-
<h3 class="mn-b-thin">{{returnCurrency()}}{{orders.getters.getTotal(order.positions)}}</h3>
|
|
85
|
-
<p>#{{order._id.slice(0, 4) + '...' + order._id.slice(-4)}}</p>
|
|
86
|
-
</div>
|
|
87
|
-
</div>
|
|
88
|
-
|
|
89
|
-
<div class="cols-1 mn-b-small gap-thin pd-small bg-white radius-small">
|
|
90
|
-
<!-- Always display the first two positions -->
|
|
91
|
-
<div
|
|
92
|
-
v-for="(position, index) in order.positions.slice(0, 2)"
|
|
93
|
-
:key="index"
|
|
94
|
-
class="w-100 flex"
|
|
95
|
-
>
|
|
96
|
-
<p class="mn-r-auto">{{ position.name }}</p>
|
|
97
|
-
<p class="t-right">
|
|
98
|
-
{{ position.quantity }} {{ position.type }}
|
|
99
|
-
x
|
|
100
|
-
{{ position.price }}
|
|
101
|
-
<span class="t-transp">{{ returnCurrency() }}</span>
|
|
102
|
-
</p>
|
|
103
|
-
</div>
|
|
104
|
-
|
|
105
|
-
<transition name="fade">
|
|
106
|
-
<!-- Display the rest of the positions if there are more than two and spoiler is true -->
|
|
107
|
-
<div v-if="spoiler && order.positions.length > 2">
|
|
108
|
-
<div
|
|
109
|
-
v-for="(position, index) in order.positions.slice(2)"
|
|
110
|
-
:key="index + 2"
|
|
111
|
-
class="w-100 flex"
|
|
112
|
-
>
|
|
113
|
-
<p class="mn-r-auto">{{ position.name }}</p>
|
|
114
|
-
<p class="t-right">
|
|
115
|
-
{{ position.quantity }} {{ position.type }}
|
|
116
|
-
x
|
|
117
|
-
{{ position.price }}
|
|
118
|
-
<span class="t-transp">{{ returnCurrency() }}</span>
|
|
119
|
-
</p>
|
|
120
|
-
</div>
|
|
121
|
-
</div>
|
|
122
|
-
</transition>
|
|
123
|
-
|
|
124
|
-
<!-- Toggle button for additional positions, visible only if there are more than two positions -->
|
|
125
|
-
<button
|
|
126
|
-
v-if="order.positions.length > 2"
|
|
127
|
-
@click.prevent="spoiler = !spoiler"
|
|
128
|
-
class="radius-big bg-light-transp-50 pd-nano w-100 flex-center flex"
|
|
129
|
-
>
|
|
130
|
-
{{ !spoiler ? `+${order.positions.length - 2} more` : `Hide` }}
|
|
131
|
-
</button>
|
|
132
|
-
</div>
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
<div class="pd-small bg-white radius-small gap-micro flex-v-center flex-nowrap flex">
|
|
136
|
-
<IconTime class="i-semi t-transp" fill="rgb(var(--black)" />
|
|
137
|
-
<p class="t-medium mn-r-auto">{{formatDate(order.deadline)}}</p>
|
|
138
|
-
|
|
139
|
-
<span
|
|
140
|
-
class="flex-child flex-child-shrink-0 capitalize w-max t-medium radius-big pd-b-nano pd-t-nano pd-r-thin pd-l-thin bg-main"
|
|
141
|
-
>
|
|
142
|
-
{{order.status}}
|
|
143
|
-
</span>
|
|
144
|
-
|
|
145
|
-
<span
|
|
146
|
-
class="flex-child flex-child-shrink-0 capitalize w-max t-medium radius-big pd-b-nano pd-t-nano pd-r-thin pd-l-thin t-white bg-red"
|
|
147
|
-
>
|
|
148
|
-
Unpaid
|
|
149
|
-
</span>
|
|
150
|
-
</div>
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
<div v-if="order.comment" class="pos-relative radius-small bg-fifth-transp-10 mn-t-thin pd-small">
|
|
154
|
-
<p class="mn-b-thin t-transp uppercase p-small t-medium">Comment</p>
|
|
155
|
-
<p>{{order.comment}}</p>
|
|
156
|
-
</div>
|
|
157
74
|
</router-link>
|
|
158
75
|
|
|
159
76
|
<router-link
|
|
@@ -192,7 +109,7 @@
|
|
|
192
109
|
import CardOrder from '@martyrs/src/modules/orders/components/blocks/CardOrder.vue'
|
|
193
110
|
|
|
194
111
|
import CardOrderUser from '@martyrs/src/modules/orders/components/blocks/CardOrderUser.vue'
|
|
195
|
-
import
|
|
112
|
+
import CardOrderBackoffice from '@martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue'
|
|
196
113
|
|
|
197
114
|
import SectionPageTitle from '@martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue'
|
|
198
115
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<!-- ---------------------------------------------------------------- -->
|
|
4
4
|
<!-- 01. Popup Header -->
|
|
5
5
|
<!-- ---------------------------------------------------------------- -->
|
|
6
|
-
<div class="
|
|
6
|
+
<div class="flex-nowrap flex">
|
|
7
7
|
<div class="mn-b-medium w-100">
|
|
8
8
|
<h4 class="mn-b-thin p-big">{{t('title')}}</h4>
|
|
9
9
|
<p class="t-transp p-small">{{t('subtitle')}} {{ t('positions', { count: StoreCartAmount }) }}</p>
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
<!-- ---------------------------------------------------------------- -->
|
|
14
14
|
<!-- 02. Popup Content -->
|
|
15
15
|
<!-- ---------------------------------------------------------------- -->
|
|
16
|
-
<div class="
|
|
16
|
+
<div class="h-100 flex flex-column w-100 pos-relative o-x-hidden o-y-scroll gap-small shopcart-content">
|
|
17
17
|
<!-- Empty State -->
|
|
18
18
|
<p v-if="!(shopcart.state.positions.length > 0)" class="mn-t-medium"><i>{{t('emptystate')}}</i></p>
|
|
19
19
|
<!-- Shopcart positions -->
|
|
@@ -113,6 +113,7 @@ const controllerFactory = (db) => {
|
|
|
113
113
|
|
|
114
114
|
// Start a database transaction
|
|
115
115
|
const session = await db.mongoose.startSession();
|
|
116
|
+
|
|
116
117
|
session.startTransaction();
|
|
117
118
|
|
|
118
119
|
try {
|
|
@@ -125,7 +126,6 @@ const controllerFactory = (db) => {
|
|
|
125
126
|
}
|
|
126
127
|
}
|
|
127
128
|
|
|
128
|
-
|
|
129
129
|
console.log(orderData)
|
|
130
130
|
|
|
131
131
|
// Create the order first
|
|
@@ -192,7 +192,7 @@ const controllerFactory = (db) => {
|
|
|
192
192
|
await session.commitTransaction();
|
|
193
193
|
|
|
194
194
|
// Send notification
|
|
195
|
-
|
|
195
|
+
// sendOrderMessage(orderData);
|
|
196
196
|
|
|
197
197
|
// Return the created order
|
|
198
198
|
res.status(201).send(createdOrder);
|
|
@@ -69,55 +69,57 @@
|
|
|
69
69
|
/>
|
|
70
70
|
</transition>
|
|
71
71
|
|
|
72
|
-
|
|
73
|
-
v-if="tabOrganization === 'products' && hasAccess(route.params._id, null, null, auth.state.accesses, auth.state.access.roles)"
|
|
74
|
-
class="o-scroll mn-b-small "
|
|
75
|
-
>
|
|
76
|
-
<div class="w-100 gap-thin flex flex-nowrap o-x-scroll">
|
|
77
|
-
<router-link
|
|
78
|
-
class="bg-black t-nowrap t-white uppercase t-semi pd-thin radius-extra "
|
|
79
|
-
:to="{
|
|
80
|
-
name:'Organization_ProductAdd',
|
|
81
|
-
params: {
|
|
82
|
-
_id: route.params._id
|
|
83
|
-
}
|
|
84
|
-
}"
|
|
85
|
-
>
|
|
86
|
-
Add Product
|
|
87
|
-
</router-link>
|
|
88
|
-
|
|
89
|
-
<router-link
|
|
90
|
-
class=" uppercase t-nowrap t-semi pd-thin radius-extra "
|
|
91
|
-
:to="{
|
|
92
|
-
name:'Leftovers',
|
|
93
|
-
params: {
|
|
94
|
-
_id: route.params._id
|
|
95
|
-
}
|
|
96
|
-
}"
|
|
97
|
-
>
|
|
98
|
-
Change Invetory
|
|
99
|
-
</router-link>
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
<router-link
|
|
103
|
-
class="d-block t-nowrap mn-l-auto uppercase t-semi bg-white pd-thin radius-extra "
|
|
104
|
-
:to="{
|
|
105
|
-
name:'Backoffice',
|
|
106
|
-
params: {
|
|
107
|
-
_id: route.params._id
|
|
108
|
-
}
|
|
109
|
-
}"
|
|
110
|
-
>
|
|
111
|
-
Go to Backoffice
|
|
112
|
-
</router-link>
|
|
113
|
-
</div>
|
|
114
|
-
</Block>
|
|
72
|
+
|
|
115
73
|
|
|
116
74
|
<transition name="slide-fade">
|
|
117
75
|
<Products
|
|
118
76
|
v-if="tabOrganization === 'products'"
|
|
119
77
|
:organization="organization.state.current"
|
|
120
|
-
|
|
78
|
+
>
|
|
79
|
+
<Block
|
|
80
|
+
v-if="hasAccess(route.params._id, null, null, auth.state.accesses, auth.state.access.roles)"
|
|
81
|
+
class="o-y-scroll w-100 pos-relative mn-b-small"
|
|
82
|
+
>
|
|
83
|
+
<div class="w-100 gap-thin flex flex-nowrap o-x-scroll">
|
|
84
|
+
<router-link
|
|
85
|
+
class="bg-black t-nowrap t-white uppercase t-semi pd-thin radius-small "
|
|
86
|
+
:to="{
|
|
87
|
+
name:'Organization_ProductAdd',
|
|
88
|
+
params: {
|
|
89
|
+
_id: route.params._id
|
|
90
|
+
}
|
|
91
|
+
}"
|
|
92
|
+
>
|
|
93
|
+
Add Product
|
|
94
|
+
</router-link>
|
|
95
|
+
|
|
96
|
+
<router-link
|
|
97
|
+
class=" uppercase t-nowrap t-semi pd-thin"
|
|
98
|
+
:to="{
|
|
99
|
+
name:'Leftovers',
|
|
100
|
+
params: {
|
|
101
|
+
_id: route.params._id
|
|
102
|
+
}
|
|
103
|
+
}"
|
|
104
|
+
>
|
|
105
|
+
Change Invetory
|
|
106
|
+
</router-link>
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
<router-link
|
|
110
|
+
class="d-block t-nowrap mn-l-auto uppercase t-semi bg-white pd-thin radius-small "
|
|
111
|
+
:to="{
|
|
112
|
+
name:'Backoffice',
|
|
113
|
+
params: {
|
|
114
|
+
_id: route.params._id
|
|
115
|
+
}
|
|
116
|
+
}"
|
|
117
|
+
>
|
|
118
|
+
Go to Backoffice
|
|
119
|
+
</router-link>
|
|
120
|
+
</div>
|
|
121
|
+
</Block>
|
|
122
|
+
</Products>
|
|
121
123
|
|
|
122
124
|
</transition>
|
|
123
125
|
|
|
@@ -131,13 +133,12 @@
|
|
|
131
133
|
}
|
|
132
134
|
}"
|
|
133
135
|
:store="{
|
|
134
|
-
read: (options) => spots.actions.read(
|
|
136
|
+
read: (options) => spots.actions.read(options),
|
|
135
137
|
state: organization.state
|
|
136
138
|
}"
|
|
137
139
|
:options="{
|
|
138
140
|
user: auth.state.user._id,
|
|
139
|
-
|
|
140
|
-
contain: ['blogposts'],
|
|
141
|
+
organization: route.params._id,
|
|
141
142
|
limit: 10
|
|
142
143
|
}"
|
|
143
144
|
v-slot="{
|