@ozdao/martyrs 0.2.445 → 0.2.447
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/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/Chips/{Chips.vue2.cjs → Chips.vue.cjs} +2 -2
- package/dist/martyrs/src/components/Chips/Chips.vue.cjs.map +1 -0
- package/dist/martyrs/src/components/Chips/{Chips.vue2.js → Chips.vue.js} +2 -2
- package/dist/martyrs/src/components/Chips/Chips.vue.js.map +1 -0
- package/dist/martyrs/src/components/Dropdown/{Dropdown.vue2.cjs → Dropdown.vue.cjs} +2 -2
- package/dist/martyrs/src/components/Dropdown/{Dropdown.vue2.js.map → Dropdown.vue.cjs.map} +1 -1
- package/dist/martyrs/src/components/Dropdown/{Dropdown.vue2.js → Dropdown.vue.js} +2 -2
- package/dist/martyrs/src/components/Dropdown/Dropdown.vue.js.map +1 -0
- package/dist/martyrs/src/components/Feed/Feed.vue.cjs +1 -1
- package/dist/martyrs/src/components/Feed/Feed.vue.js +1 -1
- package/dist/martyrs/src/components/Menu/{Menu.vue.cjs → Menu.vue2.cjs} +2 -2
- package/dist/martyrs/src/components/Menu/Menu.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/Menu/{Menu.vue.js → Menu.vue2.js} +2 -2
- package/dist/martyrs/src/components/Menu/Menu.vue2.js.map +1 -0
- package/dist/martyrs/src/components/Popup/{Popup.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/SelectMulti/{SelectMulti.vue2.cjs → SelectMulti.vue.cjs} +2 -2
- package/dist/martyrs/src/components/SelectMulti/{SelectMulti.vue2.js.map → SelectMulti.vue.cjs.map} +1 -1
- package/dist/martyrs/src/components/SelectMulti/{SelectMulti.vue2.js → SelectMulti.vue.js} +2 -2
- package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue.js.map +1 -0
- package/dist/martyrs/src/components/Tab/{Tab.vue2.cjs → Tab.vue.cjs} +2 -2
- package/dist/martyrs/src/components/Tab/{Tab.vue2.js.map → Tab.vue.cjs.map} +1 -1
- package/dist/martyrs/src/components/Tab/{Tab.vue2.js → Tab.vue.js} +2 -2
- package/dist/martyrs/src/components/Tab/Tab.vue.js.map +1 -0
- package/dist/martyrs/src/components/Tooltip/{Tooltip.vue2.cjs → Tooltip.vue.cjs} +2 -2
- package/dist/martyrs/src/components/Tooltip/{Tooltip.vue2.js.map → Tooltip.vue.cjs.map} +1 -1
- package/dist/martyrs/src/components/Tooltip/{Tooltip.vue2.js → Tooltip.vue.js} +2 -2
- package/dist/martyrs/src/components/Tooltip/Tooltip.vue.js.map +1 -0
- 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 +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 +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js +1 -1
- 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/backoffice/components/partials/Sidebar.vue.cjs +1 -1
- package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.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 +2 -2
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +2 -2
- package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs +1 -1
- package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +1 -1
- package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.cjs +1 -1
- package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.js +1 -1
- package/dist/martyrs/src/modules/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/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 +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +1 -1
- 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/events/components/sections/EventsHot.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.js +1 -1
- package/dist/martyrs/src/modules/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/BlockFilter.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/BlockFilter.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +2 -2
- package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js +2 -2
- package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderItem.vue.cjs +2 -2
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderItem.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderItem.vue.js +2 -2
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderItem.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/elements/PriceTotal.vue.cjs +34 -8
- package/dist/martyrs/src/modules/orders/components/elements/PriceTotal.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/elements/PriceTotal.vue.js +34 -8
- package/dist/martyrs/src/modules/orders/components/elements/PriceTotal.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +28 -19
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +29 -20
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.cjs +32 -21
- 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 +34 -23
- 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 +3 -3
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +3 -3
- package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.cjs +12 -4
- 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 +25 -17
- package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/store/orders.cjs +11 -0
- package/dist/martyrs/src/modules/orders/store/orders.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/store/orders.js +11 -0
- package/dist/martyrs/src/modules/orders/store/orders.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/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 +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 +2 -2
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.cjs +2 -2
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js +2 -2
- 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 +2 -2
- package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +1 -1
- package/dist/martyrs/src/modules/pages/views/components/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 +1 -1
- package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.js +1 -1
- 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 +2 -2
- package/dist/martyrs/src/modules/products/components/pages/EditLeftover.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 +6 -6
- 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 +6 -6
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs +2 -2
- package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +1 -1
- package/dist/martyrs/src/modules/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 +2 -2
- package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.cjs +1 -1
- package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.cjs +1 -1
- package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.cjs +1 -1
- package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs +2 -2
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +2 -2
- package/dist/style.css +3 -3
- package/package.json +1 -1
- package/src/modules/globals/views/components/blocks/BlockFilter.vue +1 -1
- package/src/modules/orders/components/blocks/CardOrderItem.vue +2 -2
- package/src/modules/orders/components/elements/PriceTotal.vue +28 -2
- package/src/modules/orders/components/pages/OrderBackoffice.vue +14 -2
- package/src/modules/orders/components/pages/OrderCreate.vue +39 -24
- package/src/modules/orders/components/partials/ShopCart.vue +12 -5
- package/src/modules/orders/store/orders.js +14 -0
- package/src/modules/products/components/pages/Product.vue +6 -5
- package/dist/martyrs/src/components/Chips/Chips.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/Chips/Chips.vue2.js.map +0 -1
- package/dist/martyrs/src/components/Dropdown/Dropdown.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/Menu/Menu.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Menu/Menu.vue.js.map +0 -1
- package/dist/martyrs/src/components/Popup/Popup.vue.js.map +0 -1
- package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/Tab/Tab.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.cjs.map +0 -1
|
@@ -7,8 +7,8 @@ import { state, actions } from "../../store/products.js";
|
|
|
7
7
|
import "../../store/categories.js";
|
|
8
8
|
import { state as state$2, actions as actions$1 } from "../../../orders/store/shopcart.js";
|
|
9
9
|
import _sfc_main$6 from "../../../../components/Button/Button.vue.js";
|
|
10
|
-
/* empty css
|
|
11
|
-
import _sfc_main$3 from "../../../../components/Tab/Tab.
|
|
10
|
+
/* empty css */
|
|
11
|
+
import _sfc_main$3 from "../../../../components/Tab/Tab.vue.js";
|
|
12
12
|
import _sfc_main$5 from "../../../globals/views/components/blocks/PopupDateSelector.vue.js";
|
|
13
13
|
import _sfc_main$1 from "../../../icons/navigation/IconEdit.vue.js";
|
|
14
14
|
import _sfc_main$4 from "../../../icons/actions/IconShopcartAdd.vue.js";
|
|
@@ -160,10 +160,10 @@ const _sfc_main = {
|
|
|
160
160
|
createVNode(_sfc_main$5, {
|
|
161
161
|
product: product.value,
|
|
162
162
|
isOpen: isPopupOpen.value,
|
|
163
|
-
showFees: (_a = state$1.options) == null ? void 0 : _a.showFees,
|
|
164
|
-
feesRate: ((_b = state$1.options) == null ? void 0 : _b.feesRate) || 0.15,
|
|
165
|
-
showVat: (_c = state$1.options) == null ? void 0 : _c.showVat,
|
|
166
|
-
vatRate: ((_d = state$1.options) == null ? void 0 : _d.vatRate) || 0,
|
|
163
|
+
showFees: (_a = state$1.options) == null ? void 0 : _a.orders.showFees,
|
|
164
|
+
feesRate: ((_b = state$1.options) == null ? void 0 : _b.orders.feesRate) || 0.15,
|
|
165
|
+
showVat: (_c = state$1.options) == null ? void 0 : _c.orders.showVat,
|
|
166
|
+
vatRate: ((_d = state$1.options) == null ? void 0 : _d.orders.vatRate) || 0,
|
|
167
167
|
onConfirm: (selectedDates) => addToCart(product.value, selectedDates),
|
|
168
168
|
onClose: closePopup
|
|
169
169
|
}, null, 8, ["product", "isOpen", "showFees", "feesRate", "showVat", "vatRate", "onConfirm"])
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Product.vue.js","sources":["../../../../../../../src/modules/products/components/pages/Product.vue"],"sourcesContent":["<template>\n <div v-if=\"products.state.current\" class=\"h-100 w-100 mobile:pd-thin pd-big bg-white\">\n <div class=\"cols-2-1_2 w-100 gap-medium\">\n\n <ImagesThumbnails\n :images=\"images\"\n :product=\"product\"\n />\n\n <div class=\"pos-relative w-100 h-100 flex-column flex-h-center flex\">\n <IconEdit\n v-if=\"accesses && hasAccess(route.params._id, 'products', 'edit', accesses)\"\n @click=\"$router.push({ name: 'ProductEdit', params: { _id: product.owner.target, product: product._id } })\"\n class=\"pos-absolute pos-t-regular pos-r-regular i-regular t-transp\"\n />\n <h2 class=\"w-100 h1-product mn-b-small\">{{ product.name }}</h2>\n <Price :product=\"product\" size=\"big\" class=\"flex gap-micro flex-center pd-small br-solid br-1px br-black-transp-10 w-max mn-b-medium\" />\n\n <div v-if=\"product.description || product.specification\" class=\"h-min-5r o-hidden radius-small bg-light mn-b-medium pos-relative\">\n <Tab\n v-model:selected=\"tabProduct\"\n :tabs=\"[\n {name: 'Description', value: 'description'},\n {name: 'Specifications', value: 'specifications'}\n ]\"\n tabClass=\"pd-thin bg-white radius-thin p-small uppercase t-medium\"\n class=\"gap-micro bg-light pos-relative z-index-2 pd-thin br-solid br-b br-black-transp-10\"\n />\n <transition name=\"slide-fade\">\n <div v-if=\"tabProduct === 'description'\" class=\"pd-medium\">\n <p v-if=\"product.description && !product.localization < 1 && !recommendation\" class=\"w-100 t-transp\">\n {{ product.description }}\n </p>\n <p v-if=\"product.localization && product.localization.length > 1 && !recommendation\" class=\"w-100 t-transp\">\n {{ t('description') }}\n </p>\n </div>\n <div v-else class=\"cols-2 pd-medium w-100 gap-small\">\n <div\n v-if=\"product.information.length > 0\"\n v-for=\"information in product.information\"\n class=\"w-100 pd-small radius-small bg-white product-information\"\n >\n <p class=\"t-demi\">{{ information.name }}</p>\n <p>{{ information.value }}</p>\n </div>\n </div>\n </transition>\n </div>\n\n <div class=\"w-max-33r\">\n <div class=\"w-max-33r\">\n\t\t <div v-if=\"product.listing === 'rent'\">\n\t\t <button @click=\"openPopup\" class=\"cursor-pointer pd-small radius-big w-max mobile:w-100 bg-main button\">\n\t\t <div class=\"gap-thin flex flex-center flex-nowrap\">\n\t\t <IconShopcartAdd class=\"i-semi\" />\n\t\t <span>{{ t('addtoorder') }}</span>\n\t\t </div>\n\t\t </button>\n\t\t <PopupDateSelector\n\t\t :product=\"product\"\n\t\t :isOpen=\"isPopupOpen\"\n\t\t :showFees=\"globals.state.options?.showFees\"\n :feesRate=\"globals.state.options?.feesRate || 0.15\"\n :showVat=\"globals.state.options?.showVat\"\n :vatRate=\"globals.state.options?.vatRate || 0\"\n\t\t :onConfirm=\"selectedDates => addToCart(product, selectedDates)\"\n\t\t @close=\"closePopup\"\n\t\t />\n\t\t </div>\n\t <div v-else>\n\t <Button\n\t v-if=\"product.available > 0\"\n\t @click=\"addToCart(product, null)\"\n\t class=\"h-3r w-100 bg-main button\"\n\t >\n\t <div class=\"gap-thin flex flex-center flex-nowrap\">\n\t <IconShopcartAdd class=\"i-semi\" />\n\t <span>{{ t('addtoorder') }}</span>\n\t </div>\n\t </Button>\n\t <div\n\t v-else\n\t class=\"flex-center flex uppercase radius-big t-black w-max pd-small t-medium bg-grey h-3r w-100 mn-r-smallbutton\"\n\t >\n\t Out of Stock\n\t </div>\n\t </div>\n\t </div>\n </div>\n </div>\n </div>\n\n <div class=\"h-max mn-t-big pos-relative\">\n <h3 class=\"pd-b-small\">Most Popular</h3>\n <PopularProducts class=\"mn-r-big-negative mn-l-big-negative\"/>\n </div>\n </div>\n</template>\n\n<script setup>\nimport { computed, ref, onMounted } from 'vue'\nimport { useRoute, useRouter } from 'vue-router'\nimport { useI18n } from 'vue-i18n'\nimport * as auth from '@martyrs/src/modules/auth/views/store/auth'\nimport * as globals from '@martyrs/src/modules/globals/views/store/globals'\nimport * as products from '@martyrs/src/modules/products/store/products'\nimport * as categories from '@martyrs/src/modules/products/store/categories'\nimport * as shopcart from '@martyrs/src/modules/orders/store/shopcart'\n\nimport Button from '@martyrs/src/components/Button/Button.vue'\nimport Popup from '@martyrs/src/components/Popup/Popup.vue'\nimport Tab from '@martyrs/src/components/Tab/Tab.vue'\nimport Calendar from '@martyrs/src/components/DatePicker/Calendar.vue'\nimport PopupDateSelector from '@martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue'\nimport IconEdit from '@martyrs/src/modules/icons/navigation/IconEdit.vue'\nimport IconShopcartAdd from '@martyrs/src/modules/icons/actions/IconShopcartAdd.vue'\nimport ImagesThumbnails from '@martyrs/src/modules/products/components/blocks/ImagesThumbnails.vue'\nimport Price from '@martyrs/src/modules/products/components/elements/Price.vue'\nimport PopularProducts from '@martyrs/src/modules/products/components/sections/PopularProducts.vue'\n\nconst route = useRoute()\nconst router = useRouter()\n\nconst product = computed(() => products.state.current)\nconst images = computed(() => products.state.current.images)\n\nconst tabProduct = ref('description')\n\nconst text = {\n en: { addtoorder: 'Add to Cart', fastorder: 'Fast Order' },\n ru: { addtoorder: 'Добавить в корзину', fastorder: 'Быстрый заказ' }\n}\n\nconst { t } = useI18n({ messages: text })\n\nconst isPopupOpen = ref(false)\n\nfunction openPopup() {\n isPopupOpen.value = true\n}\n\nfunction closePopup() {\n isPopupOpen.value = false\n}\n\nconst emits = defineEmits(['page-loading', 'page-loaded']);\n \nconst pageProduct = ref(null)\n products.state.current = null\n// products.mutations.resetProduct()\nonMounted(async () => {\n\n
|
|
1
|
+
{"version":3,"file":"Product.vue.js","sources":["../../../../../../../src/modules/products/components/pages/Product.vue"],"sourcesContent":["<template>\n <div v-if=\"products.state.current\" class=\"h-100 w-100 mobile:pd-thin pd-big bg-white\">\n <div class=\"cols-2-1_2 w-100 gap-medium\">\n\n <ImagesThumbnails\n :images=\"images\"\n :product=\"product\"\n />\n\n <div class=\"pos-relative w-100 h-100 flex-column flex-h-center flex\">\n <IconEdit\n v-if=\"accesses && hasAccess(route.params._id, 'products', 'edit', accesses)\"\n @click=\"$router.push({ name: 'ProductEdit', params: { _id: product.owner.target, product: product._id } })\"\n class=\"pos-absolute pos-t-regular pos-r-regular i-regular t-transp\"\n />\n <h2 class=\"w-100 h1-product mn-b-small\">{{ product.name }}</h2>\n <Price :product=\"product\" size=\"big\" class=\"flex gap-micro flex-center pd-small br-solid br-1px br-black-transp-10 w-max mn-b-medium\" />\n\n <div v-if=\"product.description || product.specification\" class=\"h-min-5r o-hidden radius-small bg-light mn-b-medium pos-relative\">\n <Tab\n v-model:selected=\"tabProduct\"\n :tabs=\"[\n {name: 'Description', value: 'description'},\n {name: 'Specifications', value: 'specifications'}\n ]\"\n tabClass=\"pd-thin bg-white radius-thin p-small uppercase t-medium\"\n class=\"gap-micro bg-light pos-relative z-index-2 pd-thin br-solid br-b br-black-transp-10\"\n />\n <transition name=\"slide-fade\">\n <div v-if=\"tabProduct === 'description'\" class=\"pd-medium\">\n <p v-if=\"product.description && !product.localization < 1 && !recommendation\" class=\"w-100 t-transp\">\n {{ product.description }}\n </p>\n <p v-if=\"product.localization && product.localization.length > 1 && !recommendation\" class=\"w-100 t-transp\">\n {{ t('description') }}\n </p>\n </div>\n <div v-else class=\"cols-2 pd-medium w-100 gap-small\">\n <div\n v-if=\"product.information.length > 0\"\n v-for=\"information in product.information\"\n class=\"w-100 pd-small radius-small bg-white product-information\"\n >\n <p class=\"t-demi\">{{ information.name }}</p>\n <p>{{ information.value }}</p>\n </div>\n </div>\n </transition>\n </div>\n\n <div class=\"w-max-33r\">\n <div class=\"w-max-33r\">\n\t\t <div v-if=\"product.listing === 'rent'\">\n\t\t <button @click=\"openPopup\" class=\"cursor-pointer pd-small radius-big w-max mobile:w-100 bg-main button\">\n\t\t <div class=\"gap-thin flex flex-center flex-nowrap\">\n\t\t <IconShopcartAdd class=\"i-semi\" />\n\t\t <span>{{ t('addtoorder') }}</span>\n\t\t </div>\n\t\t </button>\n\t\t <PopupDateSelector\n\t\t :product=\"product\"\n\t\t :isOpen=\"isPopupOpen\"\n\t\t :showFees=\"globals.state.options?.orders.showFees\"\n :feesRate=\"globals.state.options?.orders.feesRate || 0.15\"\n :showVat=\"globals.state.options?.orders.showVat\"\n :vatRate=\"globals.state.options?.orders.vatRate || 0\"\n\t\t :onConfirm=\"selectedDates => addToCart(product, selectedDates)\"\n\t\t @close=\"closePopup\"\n\t\t />\n\t\t </div>\n\t <div v-else>\n\t <Button\n\t v-if=\"product.available > 0\"\n\t @click=\"addToCart(product, null)\"\n\t class=\"h-3r w-100 bg-main button\"\n\t >\n\t <div class=\"gap-thin flex flex-center flex-nowrap\">\n\t <IconShopcartAdd class=\"i-semi\" />\n\t <span>{{ t('addtoorder') }}</span>\n\t </div>\n\t </Button>\n\t <div\n\t v-else\n\t class=\"flex-center flex uppercase radius-big t-black w-max pd-small t-medium bg-grey h-3r w-100 mn-r-smallbutton\"\n\t >\n\t Out of Stock\n\t </div>\n\t </div>\n\t </div>\n </div>\n </div>\n </div>\n\n <div class=\"h-max mn-t-big pos-relative\">\n <h3 class=\"pd-b-small\">Most Popular</h3>\n <PopularProducts class=\"mn-r-big-negative mn-l-big-negative\"/>\n </div>\n </div>\n</template>\n\n<script setup>\nimport { computed, ref, onMounted } from 'vue'\nimport { useRoute, useRouter } from 'vue-router'\nimport { useI18n } from 'vue-i18n'\n\nimport * as auth from '@martyrs/src/modules/auth/views/store/auth'\nimport * as globals from '@martyrs/src/modules/globals/views/store/globals'\nimport * as products from '@martyrs/src/modules/products/store/products'\nimport * as categories from '@martyrs/src/modules/products/store/categories'\nimport * as shopcart from '@martyrs/src/modules/orders/store/shopcart'\n\nimport Button from '@martyrs/src/components/Button/Button.vue'\nimport Popup from '@martyrs/src/components/Popup/Popup.vue'\nimport Tab from '@martyrs/src/components/Tab/Tab.vue'\nimport Calendar from '@martyrs/src/components/DatePicker/Calendar.vue'\nimport PopupDateSelector from '@martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue'\nimport IconEdit from '@martyrs/src/modules/icons/navigation/IconEdit.vue'\nimport IconShopcartAdd from '@martyrs/src/modules/icons/actions/IconShopcartAdd.vue'\nimport ImagesThumbnails from '@martyrs/src/modules/products/components/blocks/ImagesThumbnails.vue'\nimport Price from '@martyrs/src/modules/products/components/elements/Price.vue'\nimport PopularProducts from '@martyrs/src/modules/products/components/sections/PopularProducts.vue'\n\nconst route = useRoute()\nconst router = useRouter()\n\nconst product = computed(() => products.state.current)\nconst images = computed(() => products.state.current.images)\n\nconst tabProduct = ref('description')\n\nconst text = {\n en: { addtoorder: 'Add to Cart', fastorder: 'Fast Order' },\n ru: { addtoorder: 'Добавить в корзину', fastorder: 'Быстрый заказ' }\n}\n\nconst { t } = useI18n({ messages: text })\n\nconst isPopupOpen = ref(false)\n\nfunction openPopup() {\n isPopupOpen.value = true\n}\n\nfunction closePopup() {\n isPopupOpen.value = false\n}\n\nconst emits = defineEmits(['page-loading', 'page-loaded']);\n \nconst pageProduct = ref(null)\n products.state.current = null\n// products.mutations.resetProduct()\nonMounted(async () => {\n\n emits('page-loading');\n await products.actions.read({ _id: route.params.product })\n emits('page-loaded');\n\n\n // route.meta.title.en = product.value.name\n // route.meta.title.ru = roduct.value.name\n\n})\n\n// onBeforeMounted\n\nfunction validateToCard(product) {\n return !(product.available > 0)\n}\n\nasync function addToCart(product, selectedDates = null) {\n try {\n if (shopcart.state.organization !== product.owner.target) {\n shopcart.state.organization = product.owner.target\n shopcart.state.positions = []\n }\n await shopcart.actions.addProductToCart(product, product.owner.target, selectedDates)\n return true\n } catch (error) {\n console.error('Ошибка при добавлении товара в корзину:', error)\n throw error\n }\n}\n</script>\n\n<style lang=\"scss\">\n</style>"],"names":["products.state","products.actions","product","shopcart.state","shopcart.actions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0HA,UAAM,QAAQ,SAAQ;AACP,cAAS;AAExB,UAAM,UAAU,SAAS,MAAMA,MAAe,OAAO;AACrD,UAAM,SAAS,SAAS,MAAMA,MAAe,QAAQ,MAAM;AAE3D,UAAM,aAAa,IAAI,aAAa;AAEpC,UAAM,OAAO;AAAA,MACX,IAAI,EAAE,YAAY,eAAe,WAAW,aAAc;AAAA,MAC1D,IAAI,EAAE,YAAY,sBAAsB,WAAW,gBAAe;AAAA,IACpE;AAEA,UAAM,EAAE,EAAC,IAAK,QAAQ,EAAE,UAAU,KAAM,CAAA;AAExC,UAAM,cAAc,IAAI,KAAK;AAE7B,aAAS,YAAY;AACnB,kBAAY,QAAQ;AAAA,IACtB;AAEA,aAAS,aAAa;AACpB,kBAAY,QAAQ;AAAA,IACtB;AAEA,UAAM,QAAQ;AAEM,QAAI,IAAI;AAC3BA,UAAe,UAAU;AAE1B,cAAU,YAAY;AAEpB,YAAM,cAAc;AACpB,YAAMC,QAAiB,KAAK,EAAE,KAAK,MAAM,OAAO,QAAS,CAAA;AACzD,YAAM,aAAa;AAAA,IAMrB,CAAC;AAQD,mBAAe,UAAUC,UAAS,gBAAgB,MAAM;AACtD,UAAI;AACF,YAAIC,QAAe,iBAAiBD,SAAQ,MAAM,QAAQ;AACxDC,kBAAe,eAAeD,SAAQ,MAAM;AAC5CC,kBAAe,YAAY,CAAA;AAAA,QACjC;AACI,cAAMC,UAAiB,iBAAiBF,UAASA,SAAQ,MAAM,QAAQ,aAAa;AACpF,eAAO;AAAA,MACR,SAAQ,OAAO;AACd,gBAAQ,MAAM,2CAA2C,KAAK;AAC9D,cAAM;AAAA,MACV;AAAA,IACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -5,11 +5,11 @@ const vueRouter = require("vue-router");
|
|
|
5
5
|
require("vue-i18n");
|
|
6
6
|
;/* empty css */
|
|
7
7
|
const Block = require("../../../../components/Block/Block.vue.cjs");
|
|
8
|
-
;/* empty css
|
|
8
|
+
;/* empty css */
|
|
9
9
|
const Field = require("../../../../components/Field/Field.vue.cjs");
|
|
10
10
|
const Checkbox = require("../../../../components/Checkbox/Checkbox.vue.cjs");
|
|
11
11
|
const Button = require("../../../../components/Button/Button.vue.cjs");
|
|
12
|
-
const Popup = require("../../../../components/Popup/Popup.
|
|
12
|
+
const Popup = require("../../../../components/Popup/Popup.vue2.cjs");
|
|
13
13
|
const Feed = require("../../../../components/Feed/Feed.vue.cjs");
|
|
14
14
|
const Tree = require("../../../../components/Tree/Tree.vue.cjs");
|
|
15
15
|
const EditImages = require("../../../../components/EditImages/EditImages.vue2.cjs");
|
|
@@ -3,11 +3,11 @@ import { useRoute, useRouter } from "vue-router";
|
|
|
3
3
|
import "vue-i18n";
|
|
4
4
|
/* empty css */
|
|
5
5
|
import _sfc_main$1 from "../../../../components/Block/Block.vue.js";
|
|
6
|
-
/* empty css
|
|
6
|
+
/* empty css */
|
|
7
7
|
import Field from "../../../../components/Field/Field.vue.js";
|
|
8
8
|
import _sfc_main$6 from "../../../../components/Checkbox/Checkbox.vue.js";
|
|
9
9
|
import _sfc_main$2 from "../../../../components/Button/Button.vue.js";
|
|
10
|
-
import _sfc_main$9 from "../../../../components/Popup/Popup.
|
|
10
|
+
import _sfc_main$9 from "../../../../components/Popup/Popup.vue2.js";
|
|
11
11
|
import _sfc_main$a from "../../../../components/Feed/Feed.vue.js";
|
|
12
12
|
import _sfc_main$5 from "../../../../components/Tree/Tree.vue.js";
|
|
13
13
|
import _sfc_main$3 from "../../../../components/EditImages/EditImages.vue2.js";
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
3
|
const vue = require("vue");
|
|
4
4
|
const vueRouter = require("vue-router");
|
|
5
|
-
const Tab = require("../../../../components/Tab/Tab.
|
|
5
|
+
const Tab = require("../../../../components/Tab/Tab.vue.cjs");
|
|
6
6
|
const Feed = require("../../../../components/Feed/Feed.vue.cjs");
|
|
7
7
|
;/* empty css */
|
|
8
8
|
require("vue-i18n");
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ref, watch, onMounted, onUnmounted, resolveComponent, createElementBlock, openBlock, createCommentVNode, createBlock, createElementVNode, unref, createVNode, renderSlot, withCtx, Fragment, renderList } from "vue";
|
|
2
2
|
import { useRoute, useRouter } from "vue-router";
|
|
3
|
-
import _sfc_main$2 from "../../../../components/Tab/Tab.
|
|
3
|
+
import _sfc_main$2 from "../../../../components/Tab/Tab.vue.js";
|
|
4
4
|
import _sfc_main$5 from "../../../../components/Feed/Feed.vue.js";
|
|
5
5
|
/* empty css */
|
|
6
6
|
import "vue-i18n";
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
3
|
const vue = require("vue");
|
|
4
4
|
const Button = require("../../../../components/Button/Button.vue.cjs");
|
|
5
|
-
const Tab = require("../../../../components/Tab/Tab.
|
|
5
|
+
const Tab = require("../../../../components/Tab/Tab.vue.cjs");
|
|
6
6
|
const IconEdit = require("../../../icons/navigation/IconEdit.vue.cjs");
|
|
7
7
|
const PlaceholderImage = require("../../../icons/placeholders/PlaceholderImage.vue.cjs");
|
|
8
8
|
const Images360 = require("../blocks/Images360.vue.cjs");
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { computed, ref, createElementBlock, openBlock, createElementVNode, createBlock, createCommentVNode, createVNode, unref, toDisplayString, Transition, withCtx, Fragment, renderList, createTextVNode } from "vue";
|
|
2
2
|
import _sfc_main$4 from "../../../../components/Button/Button.vue.js";
|
|
3
|
-
import _sfc_main$3 from "../../../../components/Tab/Tab.
|
|
3
|
+
import _sfc_main$3 from "../../../../components/Tab/Tab.vue.js";
|
|
4
4
|
import _sfc_main$1 from "../../../icons/navigation/IconEdit.vue.js";
|
|
5
5
|
import PlaceholderImage from "../../../icons/placeholders/PlaceholderImage.vue.js";
|
|
6
6
|
import Images360 from "../blocks/Images360.vue.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
3
|
const vue = require("vue");
|
|
4
|
-
const Tab = require("../../../../../components/Tab/Tab.
|
|
4
|
+
const Tab = require("../../../../../components/Tab/Tab.vue.cjs");
|
|
5
5
|
const Select = require("../../../../../components/Select/Select.vue.cjs");
|
|
6
6
|
const IconChevronRight = require("../../../../icons/navigation/IconChevronRight.vue.cjs");
|
|
7
7
|
const IconChevronLeft = require("../../../../icons/navigation/IconChevronLeft.vue.cjs");
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useCssVars, ref, computed, watch, onMounted, nextTick, createElementBlock, openBlock, createElementVNode, createVNode, withDirectives, Fragment, renderList, toDisplayString, vModelSelect, createCommentVNode, normalizeClass, normalizeStyle } from "vue";
|
|
2
|
-
import _sfc_main$1 from "../../../../../components/Tab/Tab.
|
|
2
|
+
import _sfc_main$1 from "../../../../../components/Tab/Tab.vue.js";
|
|
3
3
|
import Select from "../../../../../components/Select/Select.vue.js";
|
|
4
4
|
import IconChevronRight from "../../../../icons/navigation/IconChevronRight.vue.js";
|
|
5
5
|
import IconChevronLeft from "../../../../icons/navigation/IconChevronLeft.vue.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
3
|
const vue = require("vue");
|
|
4
|
-
const Tab = require("../../../../../components/Tab/Tab.
|
|
4
|
+
const Tab = require("../../../../../components/Tab/Tab.vue.cjs");
|
|
5
5
|
const Feed = require("../../../../../components/Feed/Feed.vue.cjs");
|
|
6
6
|
;/* empty css */
|
|
7
7
|
const GanttChart = require("./GanttChart.vue.cjs");
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ref, createElementBlock, openBlock, createElementVNode, createVNode, unref, toDisplayString, withCtx } from "vue";
|
|
2
|
-
import _sfc_main$1 from "../../../../../components/Tab/Tab.
|
|
2
|
+
import _sfc_main$1 from "../../../../../components/Tab/Tab.vue.js";
|
|
3
3
|
import _sfc_main$2 from "../../../../../components/Feed/Feed.vue.js";
|
|
4
4
|
/* empty css */
|
|
5
5
|
import GanttChart from "./GanttChart.vue.js";
|
|
@@ -4,8 +4,8 @@ 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.
|
|
8
|
-
;/* empty css
|
|
7
|
+
const Popup = require("../../../../../components/Popup/Popup.vue2.cjs");
|
|
8
|
+
;/* empty css */
|
|
9
9
|
;/* empty css */
|
|
10
10
|
const CardOrderItem = require("../../../../orders/components/blocks/CardOrderItem.vue.cjs");
|
|
11
11
|
const vueRouter = require("vue-router");
|
|
@@ -2,8 +2,8 @@ import { ref, computed, onMounted, createElementBlock, openBlock, createElementV
|
|
|
2
2
|
import _sfc_main$4 from "../../../../../components/Block/Block.vue.js";
|
|
3
3
|
import Field from "../../../../../components/Field/Field.vue.js";
|
|
4
4
|
import _sfc_main$2 from "../../../../../components/Feed/Feed.vue.js";
|
|
5
|
-
import _sfc_main$1 from "../../../../../components/Popup/Popup.
|
|
6
|
-
/* empty css
|
|
5
|
+
import _sfc_main$1 from "../../../../../components/Popup/Popup.vue2.js";
|
|
6
|
+
/* empty css */
|
|
7
7
|
/* empty css */
|
|
8
8
|
import _sfc_main$3 from "../../../../orders/components/blocks/CardOrderItem.vue.js";
|
|
9
9
|
import { useRoute, useRouter } from "vue-router";
|
|
@@ -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 Popup = require("../../../../components/Popup/Popup.
|
|
4
|
+
const Popup = require("../../../../components/Popup/Popup.vue2.cjs");
|
|
5
5
|
const Button = require("../../../../components/Button/Button.vue.cjs");
|
|
6
6
|
const Select = require("../../../../components/Select/Select.vue.cjs");
|
|
7
7
|
const reports = require("../../store/reports.cjs");
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { reactive, ref, createElementBlock, openBlock, renderSlot, createVNode, withCtx, createElementVNode, createTextVNode } from "vue";
|
|
2
|
-
import _sfc_main$1 from "../../../../components/Popup/Popup.
|
|
2
|
+
import _sfc_main$1 from "../../../../components/Popup/Popup.vue2.js";
|
|
3
3
|
import _sfc_main$2 from "../../../../components/Button/Button.vue.js";
|
|
4
4
|
import Select from "../../../../components/Select/Select.vue.js";
|
|
5
5
|
import { actions } from "../../store/reports.js";
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toString
|
|
|
3
3
|
const vue = require("vue");
|
|
4
4
|
const IconEdit = require("../../../icons/navigation/IconEdit.vue.cjs");
|
|
5
5
|
const IconCheckmark = require("../../../icons/navigation/IconCheckmark.vue.cjs");
|
|
6
|
-
const Chips = require("../../../../components/Chips/Chips.
|
|
6
|
+
const Chips = require("../../../../components/Chips/Chips.vue.cjs");
|
|
7
7
|
const Map = require("../../../../components/Map/Map.vue.cjs");
|
|
8
8
|
const _pluginVue_exportHelper = require("../../../../../../_virtual/_plugin-vue_export-helper.cjs");
|
|
9
9
|
const _hoisted_1 = { class: "pos-relative cols-2-1_3" };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createElementBlock, openBlock, createVNode, createElementVNode, createBlock, createCommentVNode, toDisplayString } from "vue";
|
|
2
2
|
import _sfc_main$1 from "../../../icons/navigation/IconEdit.vue.js";
|
|
3
3
|
import _sfc_main$2 from "../../../icons/navigation/IconCheckmark.vue.js";
|
|
4
|
-
import _sfc_main$3 from "../../../../components/Chips/Chips.
|
|
4
|
+
import _sfc_main$3 from "../../../../components/Chips/Chips.vue.js";
|
|
5
5
|
import Map from "../../../../components/Map/Map.vue.js";
|
|
6
6
|
import _export_sfc from "../../../../../../_virtual/_plugin-vue_export-helper.js";
|
|
7
7
|
const _hoisted_1 = { class: "pos-relative cols-2-1_3" };
|
|
@@ -5,7 +5,7 @@ const vueRouter = require("vue-router");
|
|
|
5
5
|
const vueI18n = require("vue-i18n");
|
|
6
6
|
;/* empty css */
|
|
7
7
|
;/* empty css */
|
|
8
|
-
;/* empty css
|
|
8
|
+
;/* empty css */
|
|
9
9
|
const globals = require("../../../globals/views/store/globals.cjs");
|
|
10
10
|
const categories = require("../../../products/store/categories.cjs");
|
|
11
11
|
const marketplace = require("../../../marketplace/views/store/marketplace.cjs");
|
|
@@ -3,7 +3,7 @@ import { useRoute, useRouter } from "vue-router";
|
|
|
3
3
|
import { useI18n } from "vue-i18n";
|
|
4
4
|
/* empty css */
|
|
5
5
|
/* empty css */
|
|
6
|
-
/* empty css
|
|
6
|
+
/* empty css */
|
|
7
7
|
import { state as state$1 } from "../../../globals/views/store/globals.js";
|
|
8
8
|
import { actions, state as state$2 } from "../../../products/store/categories.js";
|
|
9
9
|
import { state } from "../../../marketplace/views/store/marketplace.js";
|
|
@@ -4,7 +4,7 @@ const vue = require("vue");
|
|
|
4
4
|
const vueRouter = require("vue-router");
|
|
5
5
|
const Block = require("../../../../components/Block/Block.vue.cjs");
|
|
6
6
|
const UploadImage = require("../../../../components/UploadImage/UploadImage.vue.cjs");
|
|
7
|
-
;/* empty css
|
|
7
|
+
;/* empty css */
|
|
8
8
|
const Field = require("../../../../components/Field/Field.vue.cjs");
|
|
9
9
|
const Select = require("../../../../components/Select/Select.vue.cjs");
|
|
10
10
|
const Checkbox = require("../../../../components/Checkbox/Checkbox.vue.cjs");
|
|
@@ -12,7 +12,7 @@ const Address = require("../../../../components/Address/Address.vue2.cjs");
|
|
|
12
12
|
const LocationMarker = require("../../../../components/LocationMarker/LocationMarker.vue2.cjs");
|
|
13
13
|
const Button = require("../../../../components/Button/Button.vue.cjs");
|
|
14
14
|
require("vue-i18n");
|
|
15
|
-
;/* empty css
|
|
15
|
+
;/* empty css */
|
|
16
16
|
const spots = require("../../store/spots.cjs");
|
|
17
17
|
const _hoisted_1 = { class: "for-transition w-100 cols-1 pd-thin gap-thin" };
|
|
18
18
|
const _hoisted_2 = { class: "mn-r-auto" };
|
|
@@ -2,7 +2,7 @@ import { ref, onMounted, createElementBlock, openBlock, createVNode, createEleme
|
|
|
2
2
|
import { useRouter, useRoute } from "vue-router";
|
|
3
3
|
import _sfc_main$1 from "../../../../components/Block/Block.vue.js";
|
|
4
4
|
import _sfc_main$3 from "../../../../components/UploadImage/UploadImage.vue.js";
|
|
5
|
-
/* empty css
|
|
5
|
+
/* empty css */
|
|
6
6
|
import Field from "../../../../components/Field/Field.vue.js";
|
|
7
7
|
import Select from "../../../../components/Select/Select.vue.js";
|
|
8
8
|
import _sfc_main$4 from "../../../../components/Checkbox/Checkbox.vue.js";
|
|
@@ -10,7 +10,7 @@ import _sfc_main$5 from "../../../../components/Address/Address.vue2.js";
|
|
|
10
10
|
import _sfc_main$6 from "../../../../components/LocationMarker/LocationMarker.vue2.js";
|
|
11
11
|
import _sfc_main$2 from "../../../../components/Button/Button.vue.js";
|
|
12
12
|
import "vue-i18n";
|
|
13
|
-
/* empty css
|
|
13
|
+
/* empty css */
|
|
14
14
|
import { actions, state } from "../../store/spots.js";
|
|
15
15
|
const _hoisted_1 = { class: "for-transition w-100 cols-1 pd-thin gap-thin" };
|
|
16
16
|
const _hoisted_2 = { class: "mn-r-auto" };
|
package/dist/style.css
CHANGED
|
@@ -2578,10 +2578,10 @@ to {
|
|
|
2578
2578
|
}
|
|
2579
2579
|
.vue-select-header {
|
|
2580
2580
|
height: 3rem;
|
|
2581
|
-
}.blink[data-v-
|
|
2582
|
-
animation: blink-animation-
|
|
2581
|
+
}.blink[data-v-529cceb6] {
|
|
2582
|
+
animation: blink-animation-529cceb6 1s ease infinite;
|
|
2583
2583
|
}
|
|
2584
|
-
@keyframes blink-animation-
|
|
2584
|
+
@keyframes blink-animation-529cceb6 {
|
|
2585
2585
|
0%, 100% {
|
|
2586
2586
|
opacity: 1;
|
|
2587
2587
|
}
|
package/package.json
CHANGED
|
@@ -4,7 +4,7 @@ import { ref } from 'vue';
|
|
|
4
4
|
import Checkbox from "@martyrs/src/components/Checkbox/Checkbox.vue";
|
|
5
5
|
import Spoiler from "@martyrs/src/components/Spoiler/Spoiler.vue"
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
import IconChevronBottom from '@martyrs/src/modules/icons/navigation/IconChevronBottom.vue'
|
|
8
8
|
|
|
9
9
|
const props = defineProps({
|
|
10
10
|
title: {
|
|
@@ -23,11 +23,11 @@
|
|
|
23
23
|
<div>
|
|
24
24
|
<p>
|
|
25
25
|
<span class="t-second mn-r-micro d-inline-block t-demi">
|
|
26
|
-
{{
|
|
26
|
+
{{ returnCurrency() }}{{ (product.listing === 'rent' ? (rentalDays || product.quantity || 0) : (product.quantity || 0)) * product.price }}
|
|
27
27
|
</span>
|
|
28
28
|
|
|
29
29
|
<span class="p-small t-transp">
|
|
30
|
-
<template v-if="product.quantity">{{
|
|
30
|
+
<template v-if="product.quantity">{{returnCurrency() }}{{product.price}} </template>
|
|
31
31
|
×
|
|
32
32
|
<template v-if="product.listing === 'rent' && rentDates.start && rentDates.end">
|
|
33
33
|
{{ rentalDays }} days
|
|
@@ -13,10 +13,16 @@
|
|
|
13
13
|
</p>
|
|
14
14
|
|
|
15
15
|
<!-- VAT calculation (conditional) -->
|
|
16
|
-
<p v-if="showVat" class="flex flex-nowrap
|
|
16
|
+
<p v-if="showVat" class="flex flex-nowrap pd-t-small">
|
|
17
17
|
<span class="w-100 t-transp">{{ t('vat', { rate: vatRate * 100 }) }}</span>
|
|
18
18
|
<span class="w-100 t-right">{{currency}}{{vatAmount}}</span>
|
|
19
19
|
</p>
|
|
20
|
+
|
|
21
|
+
<!-- Delivery fee (conditional) -->
|
|
22
|
+
<p v-if="showDeliveryFee" class="flex flex-nowrap br-black-transp-10 br-solid br-b pd-b-small pd-t-small">
|
|
23
|
+
<span class="w-100 t-transp">{{ t('delivery') }}</span>
|
|
24
|
+
<span class="w-100 t-right">{{currency}}{{deliveryAmount}}</span>
|
|
25
|
+
</p>
|
|
20
26
|
|
|
21
27
|
<!-- Grand total -->
|
|
22
28
|
<p class="p-big flex flex-nowrap pd-b-small pd-t-small">
|
|
@@ -55,6 +61,14 @@ const props = defineProps({
|
|
|
55
61
|
vatRate: {
|
|
56
62
|
type: Number,
|
|
57
63
|
default: 0
|
|
64
|
+
},
|
|
65
|
+
showDeliveryFee: {
|
|
66
|
+
type: Boolean,
|
|
67
|
+
default: false
|
|
68
|
+
},
|
|
69
|
+
deliveryRate: {
|
|
70
|
+
type: Number,
|
|
71
|
+
default: 0
|
|
58
72
|
}
|
|
59
73
|
});
|
|
60
74
|
|
|
@@ -64,12 +78,14 @@ const text = {
|
|
|
64
78
|
subtotal: 'Subtotal',
|
|
65
79
|
feesRate: 'Platform Fee',
|
|
66
80
|
vat: 'VAT ({rate}%)',
|
|
81
|
+
delivery: 'Delivery',
|
|
67
82
|
intotal: 'In Total'
|
|
68
83
|
},
|
|
69
84
|
ru: {
|
|
70
85
|
subtotal: 'Подытог',
|
|
71
86
|
feesRate: 'Плата за платформу',
|
|
72
87
|
vat: 'НДС ({rate}%)',
|
|
88
|
+
delivery: 'Доставка',
|
|
73
89
|
intotal: 'Итого'
|
|
74
90
|
}
|
|
75
91
|
}
|
|
@@ -89,7 +105,17 @@ const feesRate = computed(() => {
|
|
|
89
105
|
return formatPrice(props.totalPrice * props.feesRate);
|
|
90
106
|
});
|
|
91
107
|
|
|
108
|
+
const deliveryAmount = computed(() => {
|
|
109
|
+
if (!props.showDeliveryFee) return 0;
|
|
110
|
+
return formatPrice(props.deliveryRate);
|
|
111
|
+
});
|
|
112
|
+
|
|
92
113
|
const grandTotal = computed(() => {
|
|
93
|
-
return formatPrice(
|
|
114
|
+
return formatPrice(
|
|
115
|
+
parseFloat(props.totalPrice) +
|
|
116
|
+
parseFloat(feesRate.value) +
|
|
117
|
+
parseFloat(vatAmount.value) +
|
|
118
|
+
parseFloat(deliveryAmount.value)
|
|
119
|
+
);
|
|
94
120
|
});
|
|
95
121
|
</script>
|
|
@@ -176,7 +176,7 @@
|
|
|
176
176
|
{{order.payment.type ? order.payment.type : 'Not specified'}}
|
|
177
177
|
</p>
|
|
178
178
|
|
|
179
|
-
<p @click="openPaymentPopup" class="w-max pd-thin radius-small bg-second t-white mn-l-thin cursor-pointer hover-bg-black t-right">
|
|
179
|
+
<p @click="route.meta.context !== 'user' && route.meta.context !== 'root' ? openPaymentPopup : console.log('hello')" class="w-max pd-thin radius-small bg-second t-white mn-l-thin cursor-pointer hover-bg-black t-right">
|
|
180
180
|
{{order.payment.status ? order.payment.status : 'Unpaid'}}
|
|
181
181
|
</p>
|
|
182
182
|
</div>
|
|
@@ -184,7 +184,7 @@
|
|
|
184
184
|
|
|
185
185
|
</div>
|
|
186
186
|
|
|
187
|
-
<div v-if="route.meta.context !== 'user'" class="o-y-scroll bg-light pd-thin mn-b-thin pd-thin radius-medium flex-nowrap flex">
|
|
187
|
+
<div v-if="route.meta.context !== 'user' && route.meta.context !== 'root'" class="o-y-scroll bg-light pd-thin mn-b-thin pd-thin radius-medium flex-nowrap flex">
|
|
188
188
|
<div class="flex-child-default mn-r-small w-max flex-v-center gap-thin flex-nowrap flex pd-thin radius-small bg-light-transp-20">
|
|
189
189
|
<IconTime class="i-semi t-transp" fill="rgb(var(--black)" />
|
|
190
190
|
<p class="t-medium mn-r-auto"><span class="p-small t-transp">Estimated Reaction</span><br>{{formatDate(order.deadline, { language: locale })}}</p>
|
|
@@ -239,11 +239,14 @@
|
|
|
239
239
|
|
|
240
240
|
<PriceTotal
|
|
241
241
|
:totalPrice="cartTotalPrice"
|
|
242
|
+
:deliveryRate="deliveryCost"
|
|
242
243
|
:currency="returnCurrency()"
|
|
243
244
|
:showFees="globals.state.options?.orders?.showFees"
|
|
244
245
|
:feesRate="globals.state.options?.orders?.feesRate || 0"
|
|
245
246
|
:showVat="globals.state.options?.orders?.showVat"
|
|
246
247
|
:vatRate="globals.state.options?.orders?.vatRate || 0"
|
|
248
|
+
:showDeliveryFee="globals.state.options?.orders.showDeliveryFee"
|
|
249
|
+
|
|
247
250
|
/>
|
|
248
251
|
</div>
|
|
249
252
|
|
|
@@ -345,6 +348,15 @@
|
|
|
345
348
|
|
|
346
349
|
})
|
|
347
350
|
|
|
351
|
+
|
|
352
|
+
const deliveryCost = computed(() => {
|
|
353
|
+
const type = orders.state.current.delivery.type
|
|
354
|
+
const distance = orderOrganization.value[0]?.distance || 0
|
|
355
|
+
const config = globals.state.options?.orders?.delivery_formula || {}
|
|
356
|
+
|
|
357
|
+
return orders.getters.getDeliveryPrice(type, distance, config)
|
|
358
|
+
})
|
|
359
|
+
|
|
348
360
|
let cartTotalPrice = computed(() => {
|
|
349
361
|
return Number(order.value?.positions.reduce((total, product) => {
|
|
350
362
|
// Проверяем тип листинга
|
|
@@ -58,16 +58,18 @@
|
|
|
58
58
|
/>
|
|
59
59
|
</ul>
|
|
60
60
|
|
|
61
|
-
|
|
61
|
+
<div
|
|
62
62
|
class="mn-b-thin"
|
|
63
63
|
>
|
|
64
64
|
<PriceTotal
|
|
65
65
|
:totalPrice="cartTotalPrice"
|
|
66
|
+
:deliveryRate="deliveryCost"
|
|
66
67
|
:currency="returnCurrency()"
|
|
67
|
-
:showFees="globals.state.options?.showFees"
|
|
68
|
-
:feesRate="globals.state.options?.feesRate || 0"
|
|
69
|
-
:showVat="globals.state.options?.showVat"
|
|
70
|
-
:vatRate="globals.state.options?.vatRate || 0"
|
|
68
|
+
:showFees="globals.state.options?.orders.showFees"
|
|
69
|
+
:feesRate="globals.state.options?.orders.feesRate || 0"
|
|
70
|
+
:showVat="globals.state.options?.orders.showVat"
|
|
71
|
+
:vatRate="globals.state.options?.orders.vatRate || 0"
|
|
72
|
+
:showDeliveryFee="globals.state.options?.orders.showDeliveryFee"
|
|
71
73
|
/>
|
|
72
74
|
</div>
|
|
73
75
|
<!-- Send order -->
|
|
@@ -80,6 +82,7 @@
|
|
|
80
82
|
|| errorAddress
|
|
81
83
|
|| errorDelivery
|
|
82
84
|
|| errorPayment
|
|
85
|
+
|| isLocationLoading
|
|
83
86
|
"
|
|
84
87
|
@click="handleCreate()"
|
|
85
88
|
class="bg-main mn-b-small pd-small radius-big w-100 button"
|
|
@@ -134,7 +137,8 @@ import * as orders from '@martyrs/src/modules/orders/store/orders';
|
|
|
134
137
|
import * as users from '@martyrs/src/modules/auth/views/store/users';
|
|
135
138
|
///////////////////////////////////////////////////////////////////////////////////////////////////
|
|
136
139
|
// Variables and computed
|
|
137
|
-
|
|
140
|
+
//////////////////////////////////////////////////////////////////////////////////////////////////
|
|
141
|
+
const isLocationLoading = ref(false)
|
|
138
142
|
// Accessing router and store
|
|
139
143
|
const route = useRoute()
|
|
140
144
|
const router = useRouter()
|
|
@@ -144,21 +148,14 @@ const user = computed(() => users.state.current)
|
|
|
144
148
|
|
|
145
149
|
const cartTotalPrice = shopcart.getters.cartTotalPrice
|
|
146
150
|
|
|
147
|
-
|
|
148
151
|
const deliveryCost = computed(() => {
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
return 0;
|
|
156
|
-
});
|
|
152
|
+
const type = orders.state.current.delivery.type
|
|
153
|
+
const distance = orderOrganization.value[0]?.distance || 0
|
|
154
|
+
const config = globals.state.options?.orders?.delivery_formula || {}
|
|
155
|
+
|
|
156
|
+
return orders.getters.getDeliveryPrice(type, distance, config)
|
|
157
|
+
})
|
|
157
158
|
|
|
158
|
-
// Computed property for total cost
|
|
159
|
-
const totalCost = computed(() => {
|
|
160
|
-
return deliveryCost.value + cartTotalPrice.value.value;
|
|
161
|
-
});
|
|
162
159
|
// Organization
|
|
163
160
|
const orderOrganization = ref({})
|
|
164
161
|
|
|
@@ -168,7 +165,7 @@ if (!globals.state.options.orders.allowUnauthenticatedOrders && !auth.state.user
|
|
|
168
165
|
}
|
|
169
166
|
|
|
170
167
|
onMounted(async()=> {
|
|
171
|
-
|
|
168
|
+
isLocationLoading.value = true
|
|
172
169
|
|
|
173
170
|
if (auth.state.user._id) {
|
|
174
171
|
let data = await users.actions.read({ _id:auth.state.user._id, user: auth.state.user._id });
|
|
@@ -184,8 +181,30 @@ onMounted(async()=> {
|
|
|
184
181
|
location: globals.state.position?.location,
|
|
185
182
|
lookup: ['spots']
|
|
186
183
|
})
|
|
184
|
+
|
|
185
|
+
isLocationLoading.value = false
|
|
187
186
|
})
|
|
188
187
|
|
|
188
|
+
|
|
189
|
+
watch(
|
|
190
|
+
() => orders.state.current.delivery,
|
|
191
|
+
async (newVal) => {
|
|
192
|
+
if (newVal?.location) {
|
|
193
|
+
isLocationLoading.value = true
|
|
194
|
+
|
|
195
|
+
orderOrganization.value = await organizations.actions.read({
|
|
196
|
+
_id: shopcart.state.organization,
|
|
197
|
+
location: newVal.location,
|
|
198
|
+
lookup: ['spots']
|
|
199
|
+
})
|
|
200
|
+
|
|
201
|
+
isLocationLoading.value = false
|
|
202
|
+
}
|
|
203
|
+
},
|
|
204
|
+
{ deep: true }
|
|
205
|
+
)
|
|
206
|
+
|
|
207
|
+
|
|
189
208
|
/////////////////////////////
|
|
190
209
|
// Store Verification
|
|
191
210
|
/////////////////////////////
|
|
@@ -247,10 +266,6 @@ async function handleCreate() {
|
|
|
247
266
|
|
|
248
267
|
orders.state.current.positions = shopcart.state.positions
|
|
249
268
|
|
|
250
|
-
watch(() => shopcart.state.positions, (newVal) => {
|
|
251
|
-
if (newVal) orders.state.current.positions === newVal
|
|
252
|
-
})
|
|
253
|
-
|
|
254
269
|
const referralCode = localStorage.getItem('referalCode');
|
|
255
270
|
|
|
256
271
|
if (referralCode) {
|