@perevorot/shop 2.0.156 → 2.0.158
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/api.js.map +1 -1
- package/dist/app.js.map +1 -1
- package/dist/components/account/Account.js.map +1 -1
- package/dist/components/account/OrderItem.js.map +1 -1
- package/dist/components/account/Orders.js.map +1 -1
- package/dist/components/account/User.js +1 -1
- package/dist/components/account/User.js.map +1 -1
- package/dist/components/account/Viewed.js.map +1 -1
- package/dist/components/account/Wish.js.map +1 -1
- package/dist/components/auth/Confirm.js.map +1 -1
- package/dist/components/auth/Forget.js.map +1 -1
- package/dist/components/auth/Login.js +1 -1
- package/dist/components/auth/Login.js.map +1 -1
- package/dist/components/auth/Registration.js +1 -1
- package/dist/components/auth/Registration.js.map +1 -1
- package/dist/components/auth/Reset.js.map +1 -1
- package/dist/components/auth/User.js +1 -1
- package/dist/components/auth/User.js.map +1 -1
- package/dist/components/auth/UserTrigger.js.map +1 -1
- package/dist/components/shop/Catalog.js.map +1 -1
- package/dist/components/shop/CodeCopy.js +1 -1
- package/dist/components/shop/CodeCopy.js.map +1 -1
- package/dist/components/shop/Cross.js.map +1 -1
- package/dist/components/shop/FilterToggle.js +1 -1
- package/dist/components/shop/FilterToggle.js.map +1 -1
- package/dist/components/shop/Gallery.js.map +1 -1
- package/dist/components/shop/Notice.js.map +1 -1
- package/dist/components/shop/Pagination.js.map +1 -1
- package/dist/components/shop/PromoProducts.js.map +1 -1
- package/dist/components/shop/Search.js.map +1 -1
- package/dist/components/shop/bundle/Bundle.js +1 -1
- package/dist/components/shop/bundle/Bundle.js.map +1 -1
- package/dist/components/shop/bundle/BundleAdd.js.map +1 -1
- package/dist/components/shop/cart/Cart.js.map +1 -1
- package/dist/components/shop/cart/CartAdd.js.map +1 -1
- package/dist/components/shop/cart/CartItem.js.map +1 -1
- package/dist/components/shop/cart/CartTrigger.js.map +1 -1
- package/dist/components/shop/cart/SuccessMessage.js.map +1 -1
- package/dist/components/shop/compare/Compare.js.map +1 -1
- package/dist/components/shop/compare/CompareAdd.js.map +1 -1
- package/dist/components/shop/compare/CompareDelete.js.map +1 -1
- package/dist/components/shop/compare/CompareDeleteAll.js.map +1 -1
- package/dist/components/shop/compare/CompareList.js.map +1 -1
- package/dist/components/shop/compare/Comparsion.js.map +1 -1
- package/dist/components/shop/compare/ComparsionModal.js.map +1 -1
- package/dist/components/shop/compare/SuccessMessage.js.map +1 -1
- package/dist/components/shop/filters/FilterSearch.js.map +1 -1
- package/dist/components/shop/filters/Price.js.map +1 -1
- package/dist/components/shop/order/Checkout.js +1 -1
- package/dist/components/shop/order/Checkout.js.map +1 -1
- package/dist/components/shop/order/CheckoutItem.js.map +1 -1
- package/dist/components/shop/order/OneClick.js +1 -1
- package/dist/components/shop/order/OneClick.js.map +1 -1
- package/dist/components/shop/order/shipping/CheckoutShippingCourier.js.map +1 -1
- package/dist/components/shop/order/shipping/CheckoutShippingNovaposhtaAddress.js.map +1 -1
- package/dist/components/shop/order/shipping/CheckoutShippingNovaposhtaWarehouse.js +1 -1
- package/dist/components/shop/order/shipping/CheckoutShippingNovaposhtaWarehouse.js.map +1 -1
- package/dist/components/shop/order/shipping/CheckoutShippingPickup.js.map +1 -1
- package/dist/components/shop/order/shipping/CheckoutShippingUkrposhtaWarehouse.js +1 -1
- package/dist/components/shop/order/shipping/CheckoutShippingUkrposhtaWarehouse.js.map +1 -1
- package/dist/components/shop/order/shipping/OtherRecipient.js.map +1 -1
- package/dist/components/shop/reviews/Question.js +1 -1
- package/dist/components/shop/reviews/Question.js.map +1 -1
- package/dist/components/shop/reviews/Review.js +1 -1
- package/dist/components/shop/reviews/Review.js.map +1 -1
- package/dist/components/shop/viewed/Viewed.js.map +1 -1
- package/dist/components/shop/viewed/ViewedDelete.js.map +1 -1
- package/dist/components/shop/viewed/Viewer.js.map +1 -1
- package/dist/components/shop/wishlist/SuccessMessage.js.map +1 -1
- package/dist/components/shop/wishlist/Wishlist.js.map +1 -1
- package/dist/components/shop/wishlist/WishlistAdd.js.map +1 -1
- package/dist/components/shop/wishlist/WishlistDelete.js.map +1 -1
- package/dist/forms/FormCheckbox.js.map +1 -1
- package/dist/forms/FormCheckboxes.js.map +1 -1
- package/dist/forms/FormPassword.js.map +1 -1
- package/dist/forms/FormRadio.js.map +1 -1
- package/dist/forms/FormRating.js.map +1 -1
- package/dist/forms/FormSection.js.map +1 -1
- package/dist/forms/FormSelect.js.map +1 -1
- package/dist/forms/FormSwitch.js.map +1 -1
- package/dist/forms/FormText.js.map +1 -1
- package/dist/forms/FormTextarea.js.map +1 -1
- package/dist/global.js.map +1 -1
- package/dist/helpers.js +1 -1
- package/dist/helpers.js.map +1 -1
- package/dist/store.js +1 -1
- package/dist/store.js.map +1 -1
- package/dist/vuex.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComparsionModal.js","sources":["../../../../src/components/shop/compare/ComparsionModal.vue","../../../../src/components/shop/compare/ComparsionModal.vue?vue&type=template&id=74595e87&lang.js"],"sourcesContent":["<template>\n <section class=\"shop-comparsion\" v-if=\"modal && modal.category && modal.products\">\n <div class=\"comparsion-head\">\n <h1 class=\"page-title\" v-if=\"modal.category\">\n Порівнюємо {{ modal.category.name }}\n <span class=\"badge\" v-text=\"pluralize(modal.products.length, __('shop.pluralize.products'))\"></span>\n </h1>\n <button class=\"button comparsion-close\" @click=\"close($event, true)\">\n <svg>\n <use xlink:href=\"#close\"></use>\n </svg>\n </button>\n </div>\n <div class=\"comparsion-controls\">\n <div class=\"compare-switcher\">\n <label class=\"switcher checkbox-label\">\n <input id=\"comparsion-show\" type=\"checkbox\" name=\"compare-view\" hidden />\n <span class=\"checkbox-custom\"></span>\n <span class=\"checkbox-text all-char\" @click=\"showAll = true\">Всі параметри</span>\n <span class=\"checkbox-text diff\" @click=\"showAll = false\">Тільки відмінності</span>\n </label>\n </div>\n\n <button class=\"button compare reset-compare\" @click=\"deleteCategory($event, modal.category.slug, modal.category.name)\">\n <svg>\n <use xlink:href=\"#icon-trash\"></use>\n </svg>\n <span>Очистити список</span>\n </button>\n\n <button class=\"all-compare-lists\" @click=\"close($event, true)\">\n <svg>\n <use xlink:href=\"#compare\"></use>\n </svg>\n <span>Всі списки порівнянь</span>\n </button>\n </div>\n <div class=\"scroll-wrapper\">\n <div class=\"comparsion-body\">\n <div class=\"products\" ref=\"productsElement\">\n <table class=\"comparsion table\" id=\"comparsion-header\" v-bind:class=\"{ 'only-difference': !showAll }\">\n <thead>\n <th v-for=\"product in modal.products\" shop-product>\n <div class=\"is-hidden\" shop-product-category>{{ (modal.category.parent ? modal.category.parent + ' / ' : '') + modal.category.name }}</div>\n <div class=\"is-hidden\" shop-product-brand>{{ product.brand }}</div>\n <div class=\"product-card product-item\">\n <a class=\"product-item-image\" :href=\"product.href\" data-ga-item-index>\n <figure class=\"image\">\n <img :src=\"product.image\">\n </figure>\n </a>\n <div class=\"product-item-info\">\n <a class=\"product-item-title\" :href=\"product.href\" shop-product-name data-ga-item-index>\n {{ product.name }}\n </a>\n </div>\n <div class=\"product-item-controls\">\n <wishlist-add :id=\"product.id\" :code=\"product.code\" :property=\"product.property\"></wishlist-add>\n <button class=\"button compare\" @click=\"remove($event, product.id)\">\n <span class=\"product-remove\">\n <svg>\n <use xlink:href=\"#icon-trash\"></use>\n </svg>\n </span>\n </button>\n </div>\n <div class=\"product-item-add\">\n <div class=\"prices\">\n <div class=\"current-price\" v-html=\"product.price\" v-if=\"product.price\" shop-product-price></div>\n <div class=\"old-price\" v-html=\"product.priceOld\" v-if=\"product.priceOld\"></div>\n <div class=\"discount\" v-html=\"product.discount\" v-if=\"product.discount\"></div>\n </div>\n <div class=\"availability\">\n <div class=\"has-text-success\" v-if=\"product.available\">В наявності</div>\n <div class=\"available has-text-danger\" v-else>Товар очікується</div>\n </div>\n </div>\n <div class=\"is-hidden-tablet\" @click=\"close($event)\">\n <cart-add :id=\"product.cart_id\" :is-simple=\"true\"></cart-add>\n </div>\n </div>\n </th>\n </thead>\n <tbody>\n <template v-for=\"property in modal.properties\">\n <tr class=\"row-title-mobile\">\n <td :colspan=\"modal.products.length\">\n <div class=\"row-title-text\">\n <p>{{ property.name }}</p>\n </div>\n </td>\n </tr>\n <tr :class=\"property.is_same ? 'is-same' : 'is-differs'\">\n <td v-for=\"(value, index) in property.values\">\n <div class=\"property-title property-title-desktop\">\n {{ property.name }}\n </div>\n <div class=\"property-product is-hidden-tablet\">\n {{ modal.products[index].name }}\n </div>\n <div class=\"property-value\">\n {{ value ? value : '—' }}\n </div>\n </td>\n </tr>\n </template>\n </tbody>\n <tfoot>\n <tr>\n <td v-for=\"product in modal.products\" shop-product :data-code=\"product.code\">\n <span class=\"is-hidden\" shop-product-name>{{ product.name }}</span>\n <span class=\"is-hidden\" shop-product-price>{{ product.price }}</span>\n <span class=\"is-hidden\" shop-product-brand>{{ product.brand }}</span>\n <span class=\"is-hidden\" shop-product-property>{{ product.property }}</span>\n <span class=\"is-hidden\" shop-product-category>{{ product.categoryFull }}</span>\n <div class=\"cell-btn-wrapper\" @click=\"close($event)\">\n <cart-add :id=\"product.cart_id\" :is-simple=\"true\"></cart-add>\n </div>\n </td>\n </tr>\n </tfoot>\n </table>\n </div>\n </div>\n </div>\n </section>\n</template>\n<script>\nimport { ref, watch, computed, defineComponent, onMounted } from 'vue';\nimport { useStore } from 'vuex';\nimport { pluralize } from '@perevorot/shop/dist/helpers';\nimport { useToast } from \"vue-toastification\";\n\nconst toast = useToast();\n\nexport default /*#__PURE__*/ defineComponent({\n setup() {\n const store = useStore();\n const modal = computed(() => {\n const out = store.getters['compare/modal'];\n\n return out;\n });\n const showAll = ref(true);\n const loading = ref(false);\n const productsElement = ref(null);\n\n watch(productsElement, (value) => {\n if (productsElement.value) {\n if (window.promoCodeCallback && typeof window.promoCodeCallback === 'function') {\n window.promoCodeCallback(productsElement.value);\n }\n }\n });\n\n const close = (e, isKeepCompare) => {\n if (!isKeepCompare) {\n const compareToggler = document.getElementById('compare-toggler');\n const compareOverlay = document.getElementById('compare-overlay');\n\n compareToggler.classList.remove('is-open');\n compareOverlay.classList.remove('is-open');\n\n document.querySelector('html').classList.remove('is-no-scroll');\n }\n\n store.commit('compare/modal', null);\n };\n\n const deleteCategory = ($event, slug, name) => {\n if (!loading.value) {\n loading.value = true;\n\n store.dispatch(\"compare/category\", {\n slug: slug,\n finally: () => {\n toast(\n __(\"shop.compare.category_deleted\", {\n category: name,\n }),\n {\n type: \"success\",\n }\n );\n\n close();\n\n loading.value = false;\n },\n });\n }\n };\n\n const remove = ($event, id) => {\n let slug = [];\n\n modal.value.products.forEach((product) => {\n if (product.id != id) {\n slug.push(product.id);\n }\n });\n\n store.dispatch(\"compare/delete\", {\n id: id,\n callback: (data) => {\n toast(\n __(\"shop.compare.product_deleted\"),\n {\n type: \"success\",\n }\n );\n\n let object = {\n event: 'remove_from_comparison_list'\n };\n\n if ($env.debug.ecommerce) {\n console.log(object);\n }\n\n if (!$env.debug.ecommerce && window.dataLayer) {\n window.dataLayer.push({\n ecommerce: null\n });\n\n window.dataLayer.push(object);\n }\n\n if (slug.length > 0) {\n store.dispatch(\"compare/modal\", {\n id: modal.value.category.slug + '/' + slug.join(','),\n finally: () => {\n loading.value = false;\n },\n });\n } else {\n deleteCategory(null, modal.value.category.slug, modal.value.category.name)\n }\n },\n finally: () => {\n loading.value = false;\n },\n });\n }\n\n window.addEventListener('beforeunload', () => {\n store.commit('compare/modal', null);\n });\n\n window.addEventListener('pagehide', () => {\n store.commit('compare/modal', null);\n });\n\n return {\n modal,\n close,\n pluralize,\n showAll,\n deleteCategory,\n remove,\n productsElement\n }\n }\n});\n</script>","<template>\n <section class=\"shop-comparsion\" v-if=\"modal && modal.category && modal.products\">\n <div class=\"comparsion-head\">\n <h1 class=\"page-title\" v-if=\"modal.category\">\n Порівнюємо {{ modal.category.name }}\n <span class=\"badge\" v-text=\"pluralize(modal.products.length, __('shop.pluralize.products'))\"></span>\n </h1>\n <button class=\"button comparsion-close\" @click=\"close($event, true)\">\n <svg>\n <use xlink:href=\"#close\"></use>\n </svg>\n </button>\n </div>\n <div class=\"comparsion-controls\">\n <div class=\"compare-switcher\">\n <label class=\"switcher checkbox-label\">\n <input id=\"comparsion-show\" type=\"checkbox\" name=\"compare-view\" hidden />\n <span class=\"checkbox-custom\"></span>\n <span class=\"checkbox-text all-char\" @click=\"showAll = true\">Всі параметри</span>\n <span class=\"checkbox-text diff\" @click=\"showAll = false\">Тільки відмінності</span>\n </label>\n </div>\n\n <button class=\"button compare reset-compare\" @click=\"deleteCategory($event, modal.category.slug, modal.category.name)\">\n <svg>\n <use xlink:href=\"#icon-trash\"></use>\n </svg>\n <span>Очистити список</span>\n </button>\n\n <button class=\"all-compare-lists\" @click=\"close($event, true)\">\n <svg>\n <use xlink:href=\"#compare\"></use>\n </svg>\n <span>Всі списки порівнянь</span>\n </button>\n </div>\n <div class=\"scroll-wrapper\">\n <div class=\"comparsion-body\">\n <div class=\"products\" ref=\"productsElement\">\n <table class=\"comparsion table\" id=\"comparsion-header\" v-bind:class=\"{ 'only-difference': !showAll }\">\n <thead>\n <th v-for=\"product in modal.products\" shop-product>\n <div class=\"is-hidden\" shop-product-category>{{ (modal.category.parent ? modal.category.parent + ' / ' : '') + modal.category.name }}</div>\n <div class=\"is-hidden\" shop-product-brand>{{ product.brand }}</div>\n <div class=\"product-card product-item\">\n <a class=\"product-item-image\" :href=\"product.href\" data-ga-item-index>\n <figure class=\"image\">\n <img :src=\"product.image\">\n </figure>\n </a>\n <div class=\"product-item-info\">\n <a class=\"product-item-title\" :href=\"product.href\" shop-product-name data-ga-item-index>\n {{ product.name }}\n </a>\n </div>\n <div class=\"product-item-controls\">\n <wishlist-add :id=\"product.id\" :code=\"product.code\" :property=\"product.property\"></wishlist-add>\n <button class=\"button compare\" @click=\"remove($event, product.id)\">\n <span class=\"product-remove\">\n <svg>\n <use xlink:href=\"#icon-trash\"></use>\n </svg>\n </span>\n </button>\n </div>\n <div class=\"product-item-add\">\n <div class=\"prices\">\n <div class=\"current-price\" v-html=\"product.price\" v-if=\"product.price\" shop-product-price></div>\n <div class=\"old-price\" v-html=\"product.priceOld\" v-if=\"product.priceOld\"></div>\n <div class=\"discount\" v-html=\"product.discount\" v-if=\"product.discount\"></div>\n </div>\n <div class=\"availability\">\n <div class=\"has-text-success\" v-if=\"product.available\">В наявності</div>\n <div class=\"available has-text-danger\" v-else>Товар очікується</div>\n </div>\n </div>\n <div class=\"is-hidden-tablet\" @click=\"close($event)\">\n <cart-add :id=\"product.cart_id\" :is-simple=\"true\"></cart-add>\n </div>\n </div>\n </th>\n </thead>\n <tbody>\n <template v-for=\"property in modal.properties\">\n <tr class=\"row-title-mobile\">\n <td :colspan=\"modal.products.length\">\n <div class=\"row-title-text\">\n <p>{{ property.name }}</p>\n </div>\n </td>\n </tr>\n <tr :class=\"property.is_same ? 'is-same' : 'is-differs'\">\n <td v-for=\"(value, index) in property.values\">\n <div class=\"property-title property-title-desktop\">\n {{ property.name }}\n </div>\n <div class=\"property-product is-hidden-tablet\">\n {{ modal.products[index].name }}\n </div>\n <div class=\"property-value\">\n {{ value ? value : '—' }}\n </div>\n </td>\n </tr>\n </template>\n </tbody>\n <tfoot>\n <tr>\n <td v-for=\"product in modal.products\" shop-product :data-code=\"product.code\">\n <span class=\"is-hidden\" shop-product-name>{{ product.name }}</span>\n <span class=\"is-hidden\" shop-product-price>{{ product.price }}</span>\n <span class=\"is-hidden\" shop-product-brand>{{ product.brand }}</span>\n <span class=\"is-hidden\" shop-product-property>{{ product.property }}</span>\n <span class=\"is-hidden\" shop-product-category>{{ product.categoryFull }}</span>\n <div class=\"cell-btn-wrapper\" @click=\"close($event)\">\n <cart-add :id=\"product.cart_id\" :is-simple=\"true\"></cart-add>\n </div>\n </td>\n </tr>\n </tfoot>\n </table>\n </div>\n </div>\n </div>\n </section>\n</template>\n<script>\nimport { ref, watch, computed, defineComponent, onMounted } from 'vue';\nimport { useStore } from 'vuex';\nimport { pluralize } from '@perevorot/shop/dist/helpers';\nimport { useToast } from \"vue-toastification\";\n\nconst toast = useToast();\n\nexport default /*#__PURE__*/ defineComponent({\n setup() {\n const store = useStore();\n const modal = computed(() => {\n const out = store.getters['compare/modal'];\n\n return out;\n });\n const showAll = ref(true);\n const loading = ref(false);\n const productsElement = ref(null);\n\n watch(productsElement, (value) => {\n if (productsElement.value) {\n if (window.promoCodeCallback && typeof window.promoCodeCallback === 'function') {\n window.promoCodeCallback(productsElement.value);\n }\n }\n });\n\n const close = (e, isKeepCompare) => {\n if (!isKeepCompare) {\n const compareToggler = document.getElementById('compare-toggler');\n const compareOverlay = document.getElementById('compare-overlay');\n\n compareToggler.classList.remove('is-open');\n compareOverlay.classList.remove('is-open');\n\n document.querySelector('html').classList.remove('is-no-scroll');\n }\n\n store.commit('compare/modal', null);\n };\n\n const deleteCategory = ($event, slug, name) => {\n if (!loading.value) {\n loading.value = true;\n\n store.dispatch(\"compare/category\", {\n slug: slug,\n finally: () => {\n toast(\n __(\"shop.compare.category_deleted\", {\n category: name,\n }),\n {\n type: \"success\",\n }\n );\n\n close();\n\n loading.value = false;\n },\n });\n }\n };\n\n const remove = ($event, id) => {\n let slug = [];\n\n modal.value.products.forEach((product) => {\n if (product.id != id) {\n slug.push(product.id);\n }\n });\n\n store.dispatch(\"compare/delete\", {\n id: id,\n callback: (data) => {\n toast(\n __(\"shop.compare.product_deleted\"),\n {\n type: \"success\",\n }\n );\n\n let object = {\n event: 'remove_from_comparison_list'\n };\n\n if ($env.debug.ecommerce) {\n console.log(object);\n }\n\n if (!$env.debug.ecommerce && window.dataLayer) {\n window.dataLayer.push({\n ecommerce: null\n });\n\n window.dataLayer.push(object);\n }\n\n if (slug.length > 0) {\n store.dispatch(\"compare/modal\", {\n id: modal.value.category.slug + '/' + slug.join(','),\n finally: () => {\n loading.value = false;\n },\n });\n } else {\n deleteCategory(null, modal.value.category.slug, modal.value.category.name)\n }\n },\n finally: () => {\n loading.value = false;\n },\n });\n }\n\n window.addEventListener('beforeunload', () => {\n store.commit('compare/modal', null);\n });\n\n window.addEventListener('pagehide', () => {\n store.commit('compare/modal', null);\n });\n\n return {\n modal,\n close,\n pluralize,\n showAll,\n deleteCategory,\n remove,\n productsElement\n }\n }\n});\n</script>"],"names":["toast","defineComponent","setup","store","useStore","modal","computed","getters","showAll","ref","loading","productsElement","watch","value","window","promoCodeCallback","close","e","isKeepCompare","compareToggler","document","getElementById","compareOverlay","classList","remove","querySelector","commit","deleteCategory","$event","slug","name","dispatch","__","category","type","addEventListener","pluralize","id","products","forEach","product","push","callback","data","object","event","$env","debug","ecommerce","console","log","dataLayer","length","join","_createElementVNode","hidden","_ctx","_createElementBlock","_hoisted_1","_hoisted_2","_hoisted_3","_toDisplayString","onClick","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_22","parent","_hoisted_23","brand","_hoisted_24","href","_hoisted_26","src","image","_hoisted_28","_hoisted_30","_createVNode","code","property","_hoisted_34","_hoisted_35","price","innerHTML","priceOld","discount","_hoisted_39","available","_hoisted_40","_hoisted_41","cart_id","properties","_hoisted_42","colspan","_hoisted_44","is_same","values","index","_hoisted_45","_hoisted_46","_hoisted_47","_hoisted_49","_hoisted_50","_hoisted_51","_hoisted_52","_hoisted_53","categoryFull"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ComparsionModal.js","sources":["../../../../src/components/shop/compare/ComparsionModal.vue","../../../../src/components/shop/compare/ComparsionModal.vue?vue&type=template&id=74595e87&lang.js"],"sourcesContent":["<template>\n <section class=\"shop-comparsion\" v-if=\"modal && modal.category && modal.products\">\n <div class=\"comparsion-head\">\n <h1 class=\"page-title\" v-if=\"modal.category\">\n Порівнюємо {{ modal.category.name }}\n <span class=\"badge\" v-text=\"pluralize(modal.products.length, __('shop.pluralize.products'))\"></span>\n </h1>\n <button class=\"button comparsion-close\" @click=\"close($event, true)\">\n <svg>\n <use xlink:href=\"#close\"></use>\n </svg>\n </button>\n </div>\n <div class=\"comparsion-controls\">\n <div class=\"compare-switcher\">\n <label class=\"switcher checkbox-label\">\n <input id=\"comparsion-show\" type=\"checkbox\" name=\"compare-view\" hidden />\n <span class=\"checkbox-custom\"></span>\n <span class=\"checkbox-text all-char\" @click=\"showAll = true\">Всі параметри</span>\n <span class=\"checkbox-text diff\" @click=\"showAll = false\">Тільки відмінності</span>\n </label>\n </div>\n\n <button class=\"button compare reset-compare\" @click=\"deleteCategory($event, modal.category.slug, modal.category.name)\">\n <svg>\n <use xlink:href=\"#icon-trash\"></use>\n </svg>\n <span>Очистити список</span>\n </button>\n\n <button class=\"all-compare-lists\" @click=\"close($event, true)\">\n <svg>\n <use xlink:href=\"#compare\"></use>\n </svg>\n <span>Всі списки порівнянь</span>\n </button>\n </div>\n <div class=\"scroll-wrapper\">\n <div class=\"comparsion-body\">\n <div class=\"products\" ref=\"productsElement\">\n <table class=\"comparsion table\" id=\"comparsion-header\" v-bind:class=\"{ 'only-difference': !showAll }\">\n <thead>\n <th v-for=\"product in modal.products\" shop-product>\n <div class=\"is-hidden\" shop-product-category>{{ (modal.category.parent ? modal.category.parent + ' / ' : '') + modal.category.name }}</div>\n <div class=\"is-hidden\" shop-product-brand>{{ product.brand }}</div>\n <div class=\"product-card product-item\">\n <a class=\"product-item-image\" :href=\"product.href\" data-ga-item-index>\n <figure class=\"image\">\n <img :src=\"product.image\">\n </figure>\n </a>\n <div class=\"product-item-info\">\n <a class=\"product-item-title\" :href=\"product.href\" shop-product-name data-ga-item-index>\n {{ product.name }}\n </a>\n </div>\n <div class=\"product-item-controls\">\n <wishlist-add :id=\"product.id\" :code=\"product.code\" :property=\"product.property\"></wishlist-add>\n <button class=\"button compare\" @click=\"remove($event, product.id)\">\n <span class=\"product-remove\">\n <svg>\n <use xlink:href=\"#icon-trash\"></use>\n </svg>\n </span>\n </button>\n </div>\n <div class=\"product-item-add\">\n <div class=\"prices\">\n <div class=\"current-price\" v-html=\"product.price\" v-if=\"product.price\" shop-product-price></div>\n <div class=\"old-price\" v-html=\"product.priceOld\" v-if=\"product.priceOld\"></div>\n <div class=\"discount\" v-html=\"product.discount\" v-if=\"product.discount\"></div>\n </div>\n <div class=\"availability\">\n <div class=\"has-text-success\" v-if=\"product.available\">В наявності</div>\n <div class=\"available has-text-danger\" v-else>Товар очікується</div>\n </div>\n </div>\n <div class=\"is-hidden-tablet\" @click=\"close($event)\">\n <cart-add :id=\"product.cart_id\" :is-simple=\"true\"></cart-add>\n </div>\n </div>\n </th>\n </thead>\n <tbody>\n <template v-for=\"property in modal.properties\">\n <tr class=\"row-title-mobile\">\n <td :colspan=\"modal.products.length\">\n <div class=\"row-title-text\">\n <p>{{ property.name }}</p>\n </div>\n </td>\n </tr>\n <tr :class=\"property.is_same ? 'is-same' : 'is-differs'\">\n <td v-for=\"(value, index) in property.values\">\n <div class=\"property-title property-title-desktop\">\n {{ property.name }}\n </div>\n <div class=\"property-product is-hidden-tablet\">\n {{ modal.products[index].name }}\n </div>\n <div class=\"property-value\">\n {{ value ? value : '—' }}\n </div>\n </td>\n </tr>\n </template>\n </tbody>\n <tfoot>\n <tr>\n <td v-for=\"product in modal.products\" shop-product :data-code=\"product.code\">\n <span class=\"is-hidden\" shop-product-name>{{ product.name }}</span>\n <span class=\"is-hidden\" shop-product-price>{{ product.price }}</span>\n <span class=\"is-hidden\" shop-product-brand>{{ product.brand }}</span>\n <span class=\"is-hidden\" shop-product-property>{{ product.property }}</span>\n <span class=\"is-hidden\" shop-product-category>{{ product.categoryFull }}</span>\n <div class=\"cell-btn-wrapper\" @click=\"close($event)\">\n <cart-add :id=\"product.cart_id\" :is-simple=\"true\"></cart-add>\n </div>\n </td>\n </tr>\n </tfoot>\n </table>\n </div>\n </div>\n </div>\n </section>\n</template>\n<script>\nimport { ref, watch, computed, defineComponent, onMounted } from 'vue';\nimport { useStore } from 'vuex';\nimport { pluralize } from '@perevorot/shop/dist/helpers';\nimport { useToast } from \"vue-toastification\";\n\nconst toast = useToast();\n\nexport default /*#__PURE__*/ defineComponent({\n setup() {\n const store = useStore();\n const modal = computed(() => {\n const out = store.getters['compare/modal'];\n\n return out;\n });\n const showAll = ref(true);\n const loading = ref(false);\n const productsElement = ref(null);\n\n watch(productsElement, (value) => {\n if (productsElement.value) {\n if (window.promoCodeCallback && typeof window.promoCodeCallback === 'function') {\n window.promoCodeCallback(productsElement.value);\n }\n }\n });\n\n const close = (e, isKeepCompare) => {\n if (!isKeepCompare) {\n const compareToggler = document.getElementById('compare-toggler');\n const compareOverlay = document.getElementById('compare-overlay');\n\n compareToggler.classList.remove('is-open');\n compareOverlay.classList.remove('is-open');\n\n document.querySelector('html').classList.remove('is-no-scroll');\n }\n\n store.commit('compare/modal', null);\n };\n\n const deleteCategory = ($event, slug, name) => {\n if (!loading.value) {\n loading.value = true;\n\n store.dispatch(\"compare/category\", {\n slug: slug,\n finally: () => {\n toast(\n __(\"shop.compare.category_deleted\", {\n category: name,\n }),\n {\n type: \"success\",\n }\n );\n\n close();\n\n loading.value = false;\n },\n });\n }\n };\n\n const remove = ($event, id) => {\n let slug = [];\n\n modal.value.products.forEach((product) => {\n if (product.id != id) {\n slug.push(product.id);\n }\n });\n\n store.dispatch(\"compare/delete\", {\n id: id,\n callback: (data) => {\n toast(\n __(\"shop.compare.product_deleted\"),\n {\n type: \"success\",\n }\n );\n\n let object = {\n event: 'remove_from_comparison_list'\n };\n\n if ($env.debug.ecommerce) {\n console.log(object);\n }\n\n if (!$env.debug.ecommerce && window.dataLayer) {\n window.dataLayer.push({\n ecommerce: null\n });\n\n window.dataLayer.push(object);\n }\n\n if (slug.length > 0) {\n store.dispatch(\"compare/modal\", {\n id: modal.value.category.slug + '/' + slug.join(','),\n finally: () => {\n loading.value = false;\n },\n });\n } else {\n deleteCategory(null, modal.value.category.slug, modal.value.category.name)\n }\n },\n finally: () => {\n loading.value = false;\n },\n });\n }\n\n window.addEventListener('beforeunload', () => {\n store.commit('compare/modal', null);\n });\n\n window.addEventListener('pagehide', () => {\n store.commit('compare/modal', null);\n });\n\n return {\n modal,\n close,\n pluralize,\n showAll,\n deleteCategory,\n remove,\n productsElement\n }\n }\n});\n</script>","<template>\n <section class=\"shop-comparsion\" v-if=\"modal && modal.category && modal.products\">\n <div class=\"comparsion-head\">\n <h1 class=\"page-title\" v-if=\"modal.category\">\n Порівнюємо {{ modal.category.name }}\n <span class=\"badge\" v-text=\"pluralize(modal.products.length, __('shop.pluralize.products'))\"></span>\n </h1>\n <button class=\"button comparsion-close\" @click=\"close($event, true)\">\n <svg>\n <use xlink:href=\"#close\"></use>\n </svg>\n </button>\n </div>\n <div class=\"comparsion-controls\">\n <div class=\"compare-switcher\">\n <label class=\"switcher checkbox-label\">\n <input id=\"comparsion-show\" type=\"checkbox\" name=\"compare-view\" hidden />\n <span class=\"checkbox-custom\"></span>\n <span class=\"checkbox-text all-char\" @click=\"showAll = true\">Всі параметри</span>\n <span class=\"checkbox-text diff\" @click=\"showAll = false\">Тільки відмінності</span>\n </label>\n </div>\n\n <button class=\"button compare reset-compare\" @click=\"deleteCategory($event, modal.category.slug, modal.category.name)\">\n <svg>\n <use xlink:href=\"#icon-trash\"></use>\n </svg>\n <span>Очистити список</span>\n </button>\n\n <button class=\"all-compare-lists\" @click=\"close($event, true)\">\n <svg>\n <use xlink:href=\"#compare\"></use>\n </svg>\n <span>Всі списки порівнянь</span>\n </button>\n </div>\n <div class=\"scroll-wrapper\">\n <div class=\"comparsion-body\">\n <div class=\"products\" ref=\"productsElement\">\n <table class=\"comparsion table\" id=\"comparsion-header\" v-bind:class=\"{ 'only-difference': !showAll }\">\n <thead>\n <th v-for=\"product in modal.products\" shop-product>\n <div class=\"is-hidden\" shop-product-category>{{ (modal.category.parent ? modal.category.parent + ' / ' : '') + modal.category.name }}</div>\n <div class=\"is-hidden\" shop-product-brand>{{ product.brand }}</div>\n <div class=\"product-card product-item\">\n <a class=\"product-item-image\" :href=\"product.href\" data-ga-item-index>\n <figure class=\"image\">\n <img :src=\"product.image\">\n </figure>\n </a>\n <div class=\"product-item-info\">\n <a class=\"product-item-title\" :href=\"product.href\" shop-product-name data-ga-item-index>\n {{ product.name }}\n </a>\n </div>\n <div class=\"product-item-controls\">\n <wishlist-add :id=\"product.id\" :code=\"product.code\" :property=\"product.property\"></wishlist-add>\n <button class=\"button compare\" @click=\"remove($event, product.id)\">\n <span class=\"product-remove\">\n <svg>\n <use xlink:href=\"#icon-trash\"></use>\n </svg>\n </span>\n </button>\n </div>\n <div class=\"product-item-add\">\n <div class=\"prices\">\n <div class=\"current-price\" v-html=\"product.price\" v-if=\"product.price\" shop-product-price></div>\n <div class=\"old-price\" v-html=\"product.priceOld\" v-if=\"product.priceOld\"></div>\n <div class=\"discount\" v-html=\"product.discount\" v-if=\"product.discount\"></div>\n </div>\n <div class=\"availability\">\n <div class=\"has-text-success\" v-if=\"product.available\">В наявності</div>\n <div class=\"available has-text-danger\" v-else>Товар очікується</div>\n </div>\n </div>\n <div class=\"is-hidden-tablet\" @click=\"close($event)\">\n <cart-add :id=\"product.cart_id\" :is-simple=\"true\"></cart-add>\n </div>\n </div>\n </th>\n </thead>\n <tbody>\n <template v-for=\"property in modal.properties\">\n <tr class=\"row-title-mobile\">\n <td :colspan=\"modal.products.length\">\n <div class=\"row-title-text\">\n <p>{{ property.name }}</p>\n </div>\n </td>\n </tr>\n <tr :class=\"property.is_same ? 'is-same' : 'is-differs'\">\n <td v-for=\"(value, index) in property.values\">\n <div class=\"property-title property-title-desktop\">\n {{ property.name }}\n </div>\n <div class=\"property-product is-hidden-tablet\">\n {{ modal.products[index].name }}\n </div>\n <div class=\"property-value\">\n {{ value ? value : '—' }}\n </div>\n </td>\n </tr>\n </template>\n </tbody>\n <tfoot>\n <tr>\n <td v-for=\"product in modal.products\" shop-product :data-code=\"product.code\">\n <span class=\"is-hidden\" shop-product-name>{{ product.name }}</span>\n <span class=\"is-hidden\" shop-product-price>{{ product.price }}</span>\n <span class=\"is-hidden\" shop-product-brand>{{ product.brand }}</span>\n <span class=\"is-hidden\" shop-product-property>{{ product.property }}</span>\n <span class=\"is-hidden\" shop-product-category>{{ product.categoryFull }}</span>\n <div class=\"cell-btn-wrapper\" @click=\"close($event)\">\n <cart-add :id=\"product.cart_id\" :is-simple=\"true\"></cart-add>\n </div>\n </td>\n </tr>\n </tfoot>\n </table>\n </div>\n </div>\n </div>\n </section>\n</template>\n<script>\nimport { ref, watch, computed, defineComponent, onMounted } from 'vue';\nimport { useStore } from 'vuex';\nimport { pluralize } from '@perevorot/shop/dist/helpers';\nimport { useToast } from \"vue-toastification\";\n\nconst toast = useToast();\n\nexport default /*#__PURE__*/ defineComponent({\n setup() {\n const store = useStore();\n const modal = computed(() => {\n const out = store.getters['compare/modal'];\n\n return out;\n });\n const showAll = ref(true);\n const loading = ref(false);\n const productsElement = ref(null);\n\n watch(productsElement, (value) => {\n if (productsElement.value) {\n if (window.promoCodeCallback && typeof window.promoCodeCallback === 'function') {\n window.promoCodeCallback(productsElement.value);\n }\n }\n });\n\n const close = (e, isKeepCompare) => {\n if (!isKeepCompare) {\n const compareToggler = document.getElementById('compare-toggler');\n const compareOverlay = document.getElementById('compare-overlay');\n\n compareToggler.classList.remove('is-open');\n compareOverlay.classList.remove('is-open');\n\n document.querySelector('html').classList.remove('is-no-scroll');\n }\n\n store.commit('compare/modal', null);\n };\n\n const deleteCategory = ($event, slug, name) => {\n if (!loading.value) {\n loading.value = true;\n\n store.dispatch(\"compare/category\", {\n slug: slug,\n finally: () => {\n toast(\n __(\"shop.compare.category_deleted\", {\n category: name,\n }),\n {\n type: \"success\",\n }\n );\n\n close();\n\n loading.value = false;\n },\n });\n }\n };\n\n const remove = ($event, id) => {\n let slug = [];\n\n modal.value.products.forEach((product) => {\n if (product.id != id) {\n slug.push(product.id);\n }\n });\n\n store.dispatch(\"compare/delete\", {\n id: id,\n callback: (data) => {\n toast(\n __(\"shop.compare.product_deleted\"),\n {\n type: \"success\",\n }\n );\n\n let object = {\n event: 'remove_from_comparison_list'\n };\n\n if ($env.debug.ecommerce) {\n console.log(object);\n }\n\n if (!$env.debug.ecommerce && window.dataLayer) {\n window.dataLayer.push({\n ecommerce: null\n });\n\n window.dataLayer.push(object);\n }\n\n if (slug.length > 0) {\n store.dispatch(\"compare/modal\", {\n id: modal.value.category.slug + '/' + slug.join(','),\n finally: () => {\n loading.value = false;\n },\n });\n } else {\n deleteCategory(null, modal.value.category.slug, modal.value.category.name)\n }\n },\n finally: () => {\n loading.value = false;\n },\n });\n }\n\n window.addEventListener('beforeunload', () => {\n store.commit('compare/modal', null);\n });\n\n window.addEventListener('pagehide', () => {\n store.commit('compare/modal', null);\n });\n\n return {\n modal,\n close,\n pluralize,\n showAll,\n deleteCategory,\n remove,\n productsElement\n }\n }\n});\n</script>"],"names":["toast","useToast","script","defineComponent","setup","store","useStore","modal","computed","getters","showAll","ref","loading","productsElement","watch","value","window","promoCodeCallback","close","e","isKeepCompare","compareToggler","document","getElementById","compareOverlay","classList","remove","querySelector","commit","deleteCategory","$event","slug","name","dispatch","finally","__","category","type","addEventListener","pluralize","id","products","forEach","product","push","callback","data","object","event","$env","debug","ecommerce","console","log","dataLayer","length","join","class","_hoisted_2","_createElementVNode","createElementVNode","xlink:href","_hoisted_7","_hoisted_8","_hoisted_9","hidden","_hoisted_18","_hoisted_19","_hoisted_21","shop-product","shop-product-category","shop-product-brand","_hoisted_24","_hoisted_26","_hoisted_28","_hoisted_30","_hoisted_34","_hoisted_35","_hoisted_39","_hoisted_42","_hoisted_44","_hoisted_45","_hoisted_46","_hoisted_47","shop-product-name","shop-product-price","shop-product-property","_ctx","_openBlock","openBlock","_createElementBlock","_hoisted_1","createElementBlock","_hoisted_3","_createTextVNode","createTextVNode","_toDisplayString","toDisplayString","onClick","_cache","_hoisted_10","_hoisted_11","_hoisted_20","_normalizeClass","only-difference","_Fragment","_renderList","_hoisted_22","parent","_hoisted_23","brand","href","data-ga-item-index","src","image","_createVNode","_component_wishlist_add","code","property","price","innerHTML","priceOld","discount","available","_hoisted_40","_hoisted_41","createVNode","_component_cart_add","cart_id","is-simple","renderList","properties","colspan","is_same","values","index","data-code","_hoisted_49","_hoisted_50","_hoisted_51","_hoisted_52","_hoisted_53","categoryFull"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SuccessMessage.js","sources":["../../../../src/components/shop/compare/SuccessMessage.vue","../../../../src/components/shop/compare/SuccessMessage.vue?vue&type=template&id=2662d3ca&lang.js"],"sourcesContent":["<template>\n <div class=\"shop-compare-success-message\">\n <div>\n {{\n translate(\"shop.compare.product_deleted_named\", {\n product: last.name,\n })\n }}\n </div>\n <!-- <a\n :href=\"last.url\"\n class=\"mt-2 is-size-7\"\n style=\"color: #fff; border-bottom: 1px solid #fff\"\n >{{ translate(\"shop.compare.goto\") }}</a\n > -->\n </div>\n</template>\n<script>\nexport default {\n props: {\n last: null,\n },\n setup() {\n const translate = window.__;\n\n return {\n translate,\n };\n },\n};\n</script>","<template>\n <div class=\"shop-compare-success-message\">\n <div>\n {{\n translate(\"shop.compare.product_deleted_named\", {\n product: last.name,\n })\n }}\n </div>\n <!-- <a\n :href=\"last.url\"\n class=\"mt-2 is-size-7\"\n style=\"color: #fff; border-bottom: 1px solid #fff\"\n >{{ translate(\"shop.compare.goto\") }}</a\n > -->\n </div>\n</template>\n<script>\nexport default {\n props: {\n last: null,\n },\n setup() {\n const translate = window.__;\n\n return {\n translate,\n };\n },\n};\n</script>"],"names":["props","last","setup","translate","window","__","
|
|
1
|
+
{"version":3,"file":"SuccessMessage.js","sources":["../../../../src/components/shop/compare/SuccessMessage.vue","../../../../src/components/shop/compare/SuccessMessage.vue?vue&type=template&id=2662d3ca&lang.js"],"sourcesContent":["<template>\n <div class=\"shop-compare-success-message\">\n <div>\n {{\n translate(\"shop.compare.product_deleted_named\", {\n product: last.name,\n })\n }}\n </div>\n <!-- <a\n :href=\"last.url\"\n class=\"mt-2 is-size-7\"\n style=\"color: #fff; border-bottom: 1px solid #fff\"\n >{{ translate(\"shop.compare.goto\") }}</a\n > -->\n </div>\n</template>\n<script>\nexport default {\n props: {\n last: null,\n },\n setup() {\n const translate = window.__;\n\n return {\n translate,\n };\n },\n};\n</script>","<template>\n <div class=\"shop-compare-success-message\">\n <div>\n {{\n translate(\"shop.compare.product_deleted_named\", {\n product: last.name,\n })\n }}\n </div>\n <!-- <a\n :href=\"last.url\"\n class=\"mt-2 is-size-7\"\n style=\"color: #fff; border-bottom: 1px solid #fff\"\n >{{ translate(\"shop.compare.goto\") }}</a\n > -->\n </div>\n</template>\n<script>\nexport default {\n props: {\n last: null,\n },\n setup() {\n const translate = window.__;\n\n return {\n translate,\n };\n },\n};\n</script>"],"names":["script","props","last","setup","translate","window","__","_hoisted_1","class","_openBlock","openBlock","_createElementBlock","_createElementVNode","$setup","product","$props","name","_createCommentVNode","createCommentVNode"],"mappings":"kCAkBeA,EAAA,CACXC,MAAO,CACHC,KAAM,MAEVC,MAAK,WAGD,MAAO,CACHC,UAHcC,OAAOC,MCtBxBC,EAAA,CAAAC,MAAM,+DAAX,OAAAC,EAAAC,YAAAC,EAAAA,mBAcK,MAdLJ,EAcK,CAbDK,EAAAA,mBAMK,6BAJGC,EAAST,UAAA,qCAAA,CAAuCU,QAAAC,EAAAb,KAAAc,WAKxDC,EAKIC,mBAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterSearch.js","sources":["../../../../src/components/shop/filters/FilterSearch.vue","../../../../src/components/shop/filters/FilterSearch.vue?vue&type=template&id=a7d1bee4&lang.js"],"sourcesContent":["<template>\n <div class=\"shop-filters-search\">\n <input type=\"search\" class=\"input is-small mb-2\" :placeholder=\"__('shop.filter.search')\" v-model=\"term\" />\n </div>\n</template>\n<script>\nimport { ref, watch, defineComponent, onMounted } from 'vue';\nimport SimpleBar from 'simplebar';\n\nexport default /*#__PURE__*/ defineComponent({\n name: 'filterSearch',\n props: {\n selector: String,\n element: String\n },\n setup(props) {\n const term = ref('');\n\n const search = () => {\n if (term.value.trim()) {\n const t = term.value.trim().toLowerCase();\n let ids = [];\n\n data.forEach((item, key) => {\n if (item.indexOf(t) !== -1) {\n ids.push(key);\n }\n });\n\n otherElements.forEach((element) => {\n element.hidden = true;\n });\n\n nodes.forEach((node, key) => {\n node.hidden = ids.indexOf(key) === -1;\n });\n } else {\n nodes.forEach((node) => {\n node.hidden = false;\n });\n\n otherElements.forEach((element) => {\n element.hidden = false;\n });\n }\n };\n\n let data = [];\n let nodes;\n let otherElements;\n\n const load = () => {\n nodes = document.querySelectorAll(props.selector + ' ' + props.element);\n\n otherElements = document.querySelectorAll(props.selector + ' > :not(' + props.element + ')');\n\n const options = {\n autoHide: true\n };\n\n const scrollBar = new SimpleBar(document.querySelector(props.selector), options);\n\n const firstChecked = document.querySelector(props.selector + ' input[type=checkbox]:checked');\n\n if (firstChecked) {\n scrollBar.getScrollElement().scrollTo(0, firstChecked.closest(props.element).offsetTop);\n }\n\n nodes.forEach((element) => {\n let text = element.querySelector('[filter]').textContent.trim();\n\n if (!text.replace(/^[\\s\\d]+/, '')) {\n text = text.replace(/[^0-9 ]/g, '');\n }\n\n data.push(text.toLowerCase());\n });\n };\n\n watch(\n () => term.value,\n () => {\n search();\n }\n );\n\n onMounted(() => {\n load();\n });\n\n //document.addEventListener('DOMContentLoaded', load, false);\n\n return {\n term,\n search\n };\n }\n});\n</script>","<template>\n <div class=\"shop-filters-search\">\n <input type=\"search\" class=\"input is-small mb-2\" :placeholder=\"__('shop.filter.search')\" v-model=\"term\" />\n </div>\n</template>\n<script>\nimport { ref, watch, defineComponent, onMounted } from 'vue';\nimport SimpleBar from 'simplebar';\n\nexport default /*#__PURE__*/ defineComponent({\n name: 'filterSearch',\n props: {\n selector: String,\n element: String\n },\n setup(props) {\n const term = ref('');\n\n const search = () => {\n if (term.value.trim()) {\n const t = term.value.trim().toLowerCase();\n let ids = [];\n\n data.forEach((item, key) => {\n if (item.indexOf(t) !== -1) {\n ids.push(key);\n }\n });\n\n otherElements.forEach((element) => {\n element.hidden = true;\n });\n\n nodes.forEach((node, key) => {\n node.hidden = ids.indexOf(key) === -1;\n });\n } else {\n nodes.forEach((node) => {\n node.hidden = false;\n });\n\n otherElements.forEach((element) => {\n element.hidden = false;\n });\n }\n };\n\n let data = [];\n let nodes;\n let otherElements;\n\n const load = () => {\n nodes = document.querySelectorAll(props.selector + ' ' + props.element);\n\n otherElements = document.querySelectorAll(props.selector + ' > :not(' + props.element + ')');\n\n const options = {\n autoHide: true\n };\n\n const scrollBar = new SimpleBar(document.querySelector(props.selector), options);\n\n const firstChecked = document.querySelector(props.selector + ' input[type=checkbox]:checked');\n\n if (firstChecked) {\n scrollBar.getScrollElement().scrollTo(0, firstChecked.closest(props.element).offsetTop);\n }\n\n nodes.forEach((element) => {\n let text = element.querySelector('[filter]').textContent.trim();\n\n if (!text.replace(/^[\\s\\d]+/, '')) {\n text = text.replace(/[^0-9 ]/g, '');\n }\n\n data.push(text.toLowerCase());\n });\n };\n\n watch(\n () => term.value,\n () => {\n search();\n }\n );\n\n onMounted(() => {\n load();\n });\n\n //document.addEventListener('DOMContentLoaded', load, false);\n\n return {\n term,\n search\n };\n }\n});\n</script>"],"names":["defineComponent","name","props","selector","String","element","setup","nodes","otherElements","term","ref","search","value","trim","t","toLowerCase","ids","data","forEach","item","key","indexOf","push","hidden","node","watch","onMounted","document","querySelectorAll","scrollBar","SimpleBar","querySelector","autoHide","firstChecked","getScrollElement","scrollTo","closest","offsetTop","text","textContent","replace","load","
|
|
1
|
+
{"version":3,"file":"FilterSearch.js","sources":["../../../../src/components/shop/filters/FilterSearch.vue","../../../../src/components/shop/filters/FilterSearch.vue?vue&type=template&id=a7d1bee4&lang.js"],"sourcesContent":["<template>\n <div class=\"shop-filters-search\">\n <input type=\"search\" class=\"input is-small mb-2\" :placeholder=\"__('shop.filter.search')\" v-model=\"term\" />\n </div>\n</template>\n<script>\nimport { ref, watch, defineComponent, onMounted } from 'vue';\nimport SimpleBar from 'simplebar';\n\nexport default /*#__PURE__*/ defineComponent({\n name: 'filterSearch',\n props: {\n selector: String,\n element: String\n },\n setup(props) {\n const term = ref('');\n\n const search = () => {\n if (term.value.trim()) {\n const t = term.value.trim().toLowerCase();\n let ids = [];\n\n data.forEach((item, key) => {\n if (item.indexOf(t) !== -1) {\n ids.push(key);\n }\n });\n\n otherElements.forEach((element) => {\n element.hidden = true;\n });\n\n nodes.forEach((node, key) => {\n node.hidden = ids.indexOf(key) === -1;\n });\n } else {\n nodes.forEach((node) => {\n node.hidden = false;\n });\n\n otherElements.forEach((element) => {\n element.hidden = false;\n });\n }\n };\n\n let data = [];\n let nodes;\n let otherElements;\n\n const load = () => {\n nodes = document.querySelectorAll(props.selector + ' ' + props.element);\n\n otherElements = document.querySelectorAll(props.selector + ' > :not(' + props.element + ')');\n\n const options = {\n autoHide: true\n };\n\n const scrollBar = new SimpleBar(document.querySelector(props.selector), options);\n\n const firstChecked = document.querySelector(props.selector + ' input[type=checkbox]:checked');\n\n if (firstChecked) {\n scrollBar.getScrollElement().scrollTo(0, firstChecked.closest(props.element).offsetTop);\n }\n\n nodes.forEach((element) => {\n let text = element.querySelector('[filter]').textContent.trim();\n\n if (!text.replace(/^[\\s\\d]+/, '')) {\n text = text.replace(/[^0-9 ]/g, '');\n }\n\n data.push(text.toLowerCase());\n });\n };\n\n watch(\n () => term.value,\n () => {\n search();\n }\n );\n\n onMounted(() => {\n load();\n });\n\n //document.addEventListener('DOMContentLoaded', load, false);\n\n return {\n term,\n search\n };\n }\n});\n</script>","<template>\n <div class=\"shop-filters-search\">\n <input type=\"search\" class=\"input is-small mb-2\" :placeholder=\"__('shop.filter.search')\" v-model=\"term\" />\n </div>\n</template>\n<script>\nimport { ref, watch, defineComponent, onMounted } from 'vue';\nimport SimpleBar from 'simplebar';\n\nexport default /*#__PURE__*/ defineComponent({\n name: 'filterSearch',\n props: {\n selector: String,\n element: String\n },\n setup(props) {\n const term = ref('');\n\n const search = () => {\n if (term.value.trim()) {\n const t = term.value.trim().toLowerCase();\n let ids = [];\n\n data.forEach((item, key) => {\n if (item.indexOf(t) !== -1) {\n ids.push(key);\n }\n });\n\n otherElements.forEach((element) => {\n element.hidden = true;\n });\n\n nodes.forEach((node, key) => {\n node.hidden = ids.indexOf(key) === -1;\n });\n } else {\n nodes.forEach((node) => {\n node.hidden = false;\n });\n\n otherElements.forEach((element) => {\n element.hidden = false;\n });\n }\n };\n\n let data = [];\n let nodes;\n let otherElements;\n\n const load = () => {\n nodes = document.querySelectorAll(props.selector + ' ' + props.element);\n\n otherElements = document.querySelectorAll(props.selector + ' > :not(' + props.element + ')');\n\n const options = {\n autoHide: true\n };\n\n const scrollBar = new SimpleBar(document.querySelector(props.selector), options);\n\n const firstChecked = document.querySelector(props.selector + ' input[type=checkbox]:checked');\n\n if (firstChecked) {\n scrollBar.getScrollElement().scrollTo(0, firstChecked.closest(props.element).offsetTop);\n }\n\n nodes.forEach((element) => {\n let text = element.querySelector('[filter]').textContent.trim();\n\n if (!text.replace(/^[\\s\\d]+/, '')) {\n text = text.replace(/[^0-9 ]/g, '');\n }\n\n data.push(text.toLowerCase());\n });\n };\n\n watch(\n () => term.value,\n () => {\n search();\n }\n );\n\n onMounted(() => {\n load();\n });\n\n //document.addEventListener('DOMContentLoaded', load, false);\n\n return {\n term,\n search\n };\n }\n});\n</script>"],"names":["script","defineComponent","name","props","selector","String","element","setup","nodes","otherElements","term","ref","search","value","trim","t","toLowerCase","ids","data","forEach","item","key","indexOf","push","hidden","node","watch","onMounted","document","querySelectorAll","scrollBar","SimpleBar","querySelector","autoHide","firstChecked","getScrollElement","scrollTo","closest","offsetTop","text","textContent","replace","load","_hoisted_1","class","_openBlock","openBlock","_createElementBlock","_createElementVNode","createElementVNode","type","placeholder","_ctx","__","$event"],"mappings":"wIASeA,EAAcC,kBAAgB,CACzCC,KAAM,eACNC,MAAO,CACHC,SAAUC,OACVC,QAASD,QAEbE,MAAK,SAACJ,GACF,IAgCIK,EACAC,EAjCEC,EAAOC,MAAI,IAEXC,EAAS,WACX,GAAIF,EAAKG,MAAMC,OAAQ,CACnB,IAAMC,EAAIL,EAAKG,MAAMC,OAAOE,cACxBC,EAAM,GAEVC,EAAKC,SAAQ,SAACC,EAAMC,IACS,IAArBD,EAAKE,QAAQP,IACbE,EAAIM,KAAKF,MAIjBZ,EAAcU,SAAQ,SAACb,GACnBA,EAAQkB,QAAS,KAGrBhB,EAAMW,SAAQ,SAACM,EAAMJ,GACjBI,EAAKD,QAA+B,IAAtBP,EAAIK,QAAQD,WAG9Bb,EAAMW,SAAQ,SAACM,GACXA,EAAKD,QAAS,KAGlBf,EAAcU,SAAQ,SAACb,GACnBA,EAAQkB,QAAS,MAKzBN,EAAO,GA6CX,OAbAQ,EAAAA,OACI,WAAA,OAAMhB,EAAKG,SACX,WACID,OAIRe,EAAAA,WAAU,YAnCG,WACTnB,EAAQoB,SAASC,iBAAiB1B,EAAMC,SAAW,IAAMD,EAAMG,SAE/DG,EAAgBmB,SAASC,iBAAiB1B,EAAMC,SAAW,WAAaD,EAAMG,QAAU,KAExF,IAIMwB,EAAY,IAAIC,EAAAA,QAAUH,SAASI,cAAc7B,EAAMC,UAJ7C,CACZ6B,UAAU,IAKRC,EAAeN,SAASI,cAAc7B,EAAMC,SAAW,iCAEzD8B,GACAJ,EAAUK,mBAAmBC,SAAS,EAAGF,EAAaG,QAAQlC,EAAMG,SAASgC,WAGjF9B,EAAMW,SAAQ,SAACb,GACX,IAAIiC,EAAOjC,EAAQ0B,cAAc,YAAYQ,YAAY1B,OAEpDyB,EAAKE,QAAQ,WAAY,MAC1BF,EAAOA,EAAKE,QAAQ,WAAY,KAGpCvB,EAAKK,KAAKgB,EAAKvB,kBAYnB0B,MAKG,CACHhC,KAAAA,EACAE,OAAAA,MC7FH+B,EAAA,CAAAC,MAAM,wEAAX,OAAAC,EAAAC,YAAAC,EAAAA,mBAEK,MAFLJ,EAEK,kBADDK,EAAyGC,mBAAA,QAAA,CAAlGC,KAAK,SAASN,MAAM,sBAAuBO,YAAaC,EAAEC,GAAA,2EAAiCD,EAAI1C,KAAA4C,8BAAJF,EAAI1C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Price.js","sources":["../../../../src/components/shop/filters/Price.vue","../../../../src/components/shop/filters/Price.vue?vue&type=template&id=4ec0b279&lang.js"],"sourcesContent":["<template>\n <div class=\"shop-filters-price\">\n <div class=\"mb-2\">\n <div class=\"title is-6 mb-0 is-clickable\" shop-filter-title>\n {{ __(\"shop.filter.price\") }}\n </div>\n <a :href=\"reset\" class=\"is-size-7\" v-if=\"reset\">{{\n __(\"shop.clearFilter\")\n }}</a>\n </div>\n <div shop-filter-content>\n <div class=\"columns is-gapless is-vcentered\">\n <div class=\"column\">\n <span v-html=\"$filters.price(value[0])\"></span> — <span\n v-html=\"$filters.price(value[1])\"\n ></span>\n </div>\n <div class=\"column is-narrow\">\n <a :href=\"href\" class=\"button is-small\">OK</a>\n </div>\n </div>\n <div\n class=\"columns is-gapless is-align-items-flex-end mb-0\"\n style=\"height: 30px\"\n >\n <div\n v-for=\"(item, key) in bar\"\n :key=\"key\"\n class=\"column\"\n :style=\"\n 'width:5%;background-color:#DDD;height: ' +\n height(item[0]) +\n ';opacity:' +\n opacity(key)\n \"\n :title=\"item[1]\"\n ></div>\n </div>\n <slider\n v-model=\"value\"\n :min=\"min\"\n :max=\"max\"\n :step=\"step\"\n :tooltips=\"false\"\n @update=\"change\"\n />\n </div>\n </div>\n</template>\n\n<script>\nimport { ref, computed, defineComponent } from \"vue\";\nimport Slider from \"@vueform/slider\";\n\nexport default /*#__PURE__*/ defineComponent({\n name: \"price\",\n components: {\n Slider,\n },\n props: {\n min: Number,\n max: Number,\n step: Number,\n from: Number,\n to: Number,\n bar: Array,\n reset: String,\n hrefTemplate: String,\n },\n setup(props) {\n const value = ref([props.from, props.to]);\n const disabled = ref(true);\n\n const href = computed(() => {\n return props.hrefTemplate.replace(\n \"#-#\",\n Math.floor(value.value[0]) + \"-\" + Math.ceil(value.value[1])\n );\n });\n\n const opacity = (key) => {\n let opacity = 1;\n\n // if (value.value[0] > (key + 2) * props.step) {\n // opacity = 0.5;\n // } else if (value.value[1] < (key + 2) * props.step) {\n // opacity = 0.5;\n // }\n\n return opacity;\n };\n\n const height = (value) => {\n return value > 0 ? \"calc(10% + \" + value + \"%)\" : \"0px\";\n };\n\n const change = () => {\n disabled.value = false;\n };\n\n return {\n value,\n opacity,\n height,\n change,\n href,\n disabled,\n };\n },\n});\n</script>","<template>\n <div class=\"shop-filters-price\">\n <div class=\"mb-2\">\n <div class=\"title is-6 mb-0 is-clickable\" shop-filter-title>\n {{ __(\"shop.filter.price\") }}\n </div>\n <a :href=\"reset\" class=\"is-size-7\" v-if=\"reset\">{{\n __(\"shop.clearFilter\")\n }}</a>\n </div>\n <div shop-filter-content>\n <div class=\"columns is-gapless is-vcentered\">\n <div class=\"column\">\n <span v-html=\"$filters.price(value[0])\"></span> — <span\n v-html=\"$filters.price(value[1])\"\n ></span>\n </div>\n <div class=\"column is-narrow\">\n <a :href=\"href\" class=\"button is-small\">OK</a>\n </div>\n </div>\n <div\n class=\"columns is-gapless is-align-items-flex-end mb-0\"\n style=\"height: 30px\"\n >\n <div\n v-for=\"(item, key) in bar\"\n :key=\"key\"\n class=\"column\"\n :style=\"\n 'width:5%;background-color:#DDD;height: ' +\n height(item[0]) +\n ';opacity:' +\n opacity(key)\n \"\n :title=\"item[1]\"\n ></div>\n </div>\n <slider\n v-model=\"value\"\n :min=\"min\"\n :max=\"max\"\n :step=\"step\"\n :tooltips=\"false\"\n @update=\"change\"\n />\n </div>\n </div>\n</template>\n\n<script>\nimport { ref, computed, defineComponent } from \"vue\";\nimport Slider from \"@vueform/slider\";\n\nexport default /*#__PURE__*/ defineComponent({\n name: \"price\",\n components: {\n Slider,\n },\n props: {\n min: Number,\n max: Number,\n step: Number,\n from: Number,\n to: Number,\n bar: Array,\n reset: String,\n hrefTemplate: String,\n },\n setup(props) {\n const value = ref([props.from, props.to]);\n const disabled = ref(true);\n\n const href = computed(() => {\n return props.hrefTemplate.replace(\n \"#-#\",\n Math.floor(value.value[0]) + \"-\" + Math.ceil(value.value[1])\n );\n });\n\n const opacity = (key) => {\n let opacity = 1;\n\n // if (value.value[0] > (key + 2) * props.step) {\n // opacity = 0.5;\n // } else if (value.value[1] < (key + 2) * props.step) {\n // opacity = 0.5;\n // }\n\n return opacity;\n };\n\n const height = (value) => {\n return value > 0 ? \"calc(10% + \" + value + \"%)\" : \"0px\";\n };\n\n const change = () => {\n disabled.value = false;\n };\n\n return {\n value,\n opacity,\n height,\n change,\n href,\n disabled,\n };\n },\n});\n</script>"],"names":["defineComponent","name","components","Slider","props","min","Number","max","step","from","to","bar","Array","reset","String","hrefTemplate","setup","value","ref","disabled","href","computed","replace","Math","floor","ceil","opacity","key","height","change","style","
|
|
1
|
+
{"version":3,"file":"Price.js","sources":["../../../../src/components/shop/filters/Price.vue","../../../../src/components/shop/filters/Price.vue?vue&type=template&id=4ec0b279&lang.js"],"sourcesContent":["<template>\n <div class=\"shop-filters-price\">\n <div class=\"mb-2\">\n <div class=\"title is-6 mb-0 is-clickable\" shop-filter-title>\n {{ __(\"shop.filter.price\") }}\n </div>\n <a :href=\"reset\" class=\"is-size-7\" v-if=\"reset\">{{\n __(\"shop.clearFilter\")\n }}</a>\n </div>\n <div shop-filter-content>\n <div class=\"columns is-gapless is-vcentered\">\n <div class=\"column\">\n <span v-html=\"$filters.price(value[0])\"></span> — <span\n v-html=\"$filters.price(value[1])\"\n ></span>\n </div>\n <div class=\"column is-narrow\">\n <a :href=\"href\" class=\"button is-small\">OK</a>\n </div>\n </div>\n <div\n class=\"columns is-gapless is-align-items-flex-end mb-0\"\n style=\"height: 30px\"\n >\n <div\n v-for=\"(item, key) in bar\"\n :key=\"key\"\n class=\"column\"\n :style=\"\n 'width:5%;background-color:#DDD;height: ' +\n height(item[0]) +\n ';opacity:' +\n opacity(key)\n \"\n :title=\"item[1]\"\n ></div>\n </div>\n <slider\n v-model=\"value\"\n :min=\"min\"\n :max=\"max\"\n :step=\"step\"\n :tooltips=\"false\"\n @update=\"change\"\n />\n </div>\n </div>\n</template>\n\n<script>\nimport { ref, computed, defineComponent } from \"vue\";\nimport Slider from \"@vueform/slider\";\n\nexport default /*#__PURE__*/ defineComponent({\n name: \"price\",\n components: {\n Slider,\n },\n props: {\n min: Number,\n max: Number,\n step: Number,\n from: Number,\n to: Number,\n bar: Array,\n reset: String,\n hrefTemplate: String,\n },\n setup(props) {\n const value = ref([props.from, props.to]);\n const disabled = ref(true);\n\n const href = computed(() => {\n return props.hrefTemplate.replace(\n \"#-#\",\n Math.floor(value.value[0]) + \"-\" + Math.ceil(value.value[1])\n );\n });\n\n const opacity = (key) => {\n let opacity = 1;\n\n // if (value.value[0] > (key + 2) * props.step) {\n // opacity = 0.5;\n // } else if (value.value[1] < (key + 2) * props.step) {\n // opacity = 0.5;\n // }\n\n return opacity;\n };\n\n const height = (value) => {\n return value > 0 ? \"calc(10% + \" + value + \"%)\" : \"0px\";\n };\n\n const change = () => {\n disabled.value = false;\n };\n\n return {\n value,\n opacity,\n height,\n change,\n href,\n disabled,\n };\n },\n});\n</script>","<template>\n <div class=\"shop-filters-price\">\n <div class=\"mb-2\">\n <div class=\"title is-6 mb-0 is-clickable\" shop-filter-title>\n {{ __(\"shop.filter.price\") }}\n </div>\n <a :href=\"reset\" class=\"is-size-7\" v-if=\"reset\">{{\n __(\"shop.clearFilter\")\n }}</a>\n </div>\n <div shop-filter-content>\n <div class=\"columns is-gapless is-vcentered\">\n <div class=\"column\">\n <span v-html=\"$filters.price(value[0])\"></span> — <span\n v-html=\"$filters.price(value[1])\"\n ></span>\n </div>\n <div class=\"column is-narrow\">\n <a :href=\"href\" class=\"button is-small\">OK</a>\n </div>\n </div>\n <div\n class=\"columns is-gapless is-align-items-flex-end mb-0\"\n style=\"height: 30px\"\n >\n <div\n v-for=\"(item, key) in bar\"\n :key=\"key\"\n class=\"column\"\n :style=\"\n 'width:5%;background-color:#DDD;height: ' +\n height(item[0]) +\n ';opacity:' +\n opacity(key)\n \"\n :title=\"item[1]\"\n ></div>\n </div>\n <slider\n v-model=\"value\"\n :min=\"min\"\n :max=\"max\"\n :step=\"step\"\n :tooltips=\"false\"\n @update=\"change\"\n />\n </div>\n </div>\n</template>\n\n<script>\nimport { ref, computed, defineComponent } from \"vue\";\nimport Slider from \"@vueform/slider\";\n\nexport default /*#__PURE__*/ defineComponent({\n name: \"price\",\n components: {\n Slider,\n },\n props: {\n min: Number,\n max: Number,\n step: Number,\n from: Number,\n to: Number,\n bar: Array,\n reset: String,\n hrefTemplate: String,\n },\n setup(props) {\n const value = ref([props.from, props.to]);\n const disabled = ref(true);\n\n const href = computed(() => {\n return props.hrefTemplate.replace(\n \"#-#\",\n Math.floor(value.value[0]) + \"-\" + Math.ceil(value.value[1])\n );\n });\n\n const opacity = (key) => {\n let opacity = 1;\n\n // if (value.value[0] > (key + 2) * props.step) {\n // opacity = 0.5;\n // } else if (value.value[1] < (key + 2) * props.step) {\n // opacity = 0.5;\n // }\n\n return opacity;\n };\n\n const height = (value) => {\n return value > 0 ? \"calc(10% + \" + value + \"%)\" : \"0px\";\n };\n\n const change = () => {\n disabled.value = false;\n };\n\n return {\n value,\n opacity,\n height,\n change,\n href,\n disabled,\n };\n },\n});\n</script>"],"names":["script","defineComponent","name","components","Slider","props","min","Number","max","step","from","to","bar","Array","reset","String","hrefTemplate","setup","value","ref","disabled","href","computed","replace","Math","floor","ceil","opacity","key","height","change","_hoisted_1","class","_hoisted_2","shop-filter-title","_hoisted_5","shop-filter-content","_hoisted_6","_hoisted_7","_hoisted_10","style","_openBlock","_createElementBlock","_createElementVNode","createElementVNode","_hoisted_3","_toDisplayString","toDisplayString","_ctx","__","_hoisted_4","innerHTML","$filters","price","_hoisted_11","_hoisted_12","_Fragment","Fragment","_renderList","item","createElementBlock","_normalizeStyle","title","_createVNode","_component_slider","$event","tooltips","onUpdate"],"mappings":"8IAsDeA,EAAcC,kBAAgB,CACzCC,KAAM,QACNC,WAAY,CACRC,OAAAA,EAAAA,SAEJC,MAAO,CACHC,IAAKC,OACLC,IAAKD,OACLE,KAAMF,OACNG,KAAMH,OACNI,GAAIJ,OACJK,IAAKC,MACLC,MAAOC,OACPC,aAAcD,QAElBE,MAAK,SAACZ,GACF,IAAMa,EAAQC,EAAAA,IAAI,CAACd,EAAMK,KAAML,EAAMM,KAC/BS,EAAWD,OAAI,GAEfE,EAAOC,EAAAA,UAAS,WAClB,OAAOjB,EAAMW,aAAaO,QACtB,MACAC,KAAKC,MAAMP,EAAMA,MAAM,IAAM,IAAMM,KAAKE,KAAKR,EAAMA,MAAM,QAwBjE,MAAO,CACHA,MAAAA,EACAS,QAtBY,SAACC,GASb,OARc,GAsBdC,OAXW,SAACX,GACZ,OAAOA,EAAQ,EAAI,cAAgBA,EAAQ,KAAO,OAWlDY,OARW,WACXV,EAASF,OAAQ,GAQjBG,KAAAA,EACAD,SAAAA,MCzGHW,EAAA,CAAAC,MAAM,sBACFC,EAAA,CAAAD,MAAM,WACFA,MAAM,+BAA+BE,oBAAA,eAOzCC,EAAA,CAAAC,sBAAA,IACIC,EAAA,CAAAL,MAAM,mCACFM,EAAA,CAAAN,MAAM,0CAKNO,EAAA,CAAAP,MAAM,kCAKXA,MAAM,kDACNQ,MAAA,CAAmBX,OAAA,uFAtB/B,OAAAY,cAAAC,qBA8CK,MA9CLX,EA8CK,CA7CDY,EAAAC,mBAOK,MAPLX,EAOK,CANDU,EAAAA,mBAEK,MAFLE,EAEKC,EAAAC,gBADEC,EAAEC,GAAA,sBAAA,GAEgCD,EAAKlC,qBAA9C4B,EAAAA,mBAEK,IAAA,OAFDrB,KAAM2B,EAAKlC,MAAEkB,MAAM,+BACnBgB,EAAEC,GAAA,qBAAA,EAAAC,sCAGVP,EAAAC,mBAoCK,MApCLT,EAoCK,CAnCDQ,EAAAA,mBASK,MATLN,EASK,CARDM,EAAAA,mBAIK,MAJLL,EAIK,CAHDK,EAAAA,2BAAMQ,UAAQH,EAAAI,SAASC,MAAML,EAAK9B,MAAA,wCAAgByB,EAE3CC,mBAAA,OAAA,CADHO,UAAQH,EAAAI,SAASC,MAAML,EAAK9B,MAAA,iBAGpCyB,qBAEK,MAFLJ,EAEK,CADDI,EAA6CC,mBAAA,IAAA,CAAzCvB,KAAM2B,EAAI3B,KAAEW,MAAM,mBAAkB,KAAE,EAAAsB,OAGlDX,EAAAC,mBAgBK,MAhBLW,EAgBK,EAZDd,EAAAA,WAAA,GAAAC,EAAAA,mBAWMc,EAVoBC,SAAA,KAAAC,EAAAA,WAAAV,EAAApC,KAAd,SAAA+C,EAAM/B,wBADlBc,EAWMkB,mBAAA,MAAA,CATDhC,IAAKA,EACNI,MAAM,SACLQ,MAAKqB,EAAAA,yDAACb,EAAAnB,OAAA8B,EAAA,gBAAAX,EAAArB,QAAAC,IAMNkC,MAAOH,EAAI,0BAGpBI,EAAAA,YAOCC,EAAA,YANYhB,EAAK9B,2DAAL8B,EAAK9B,MAAA+C,IACb3D,IAAK0C,EAAG1C,IACRE,IAAKwC,EAAGxC,IACRC,KAAMuC,EAAIvC,KACVyD,UAAU,EACVC,SAAQnB,EAAMlB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("vue"),t=require("@perevorot/shop/dist/helpers"),o=require("vuex"),n=require("formvuelate"),r=require("@formvuelate/plugin-vee-validate"),a=require("@perevorot/shop/dist/forms/FormText"),l=require("@perevorot/shop/dist/forms/FormRadio"),i=require("yup"),c=require("vue-toastification");function s(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function d(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(o){if("default"!==o){var n=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(t,o,n.get?n:{enumerable:!0,get:function(){return e[o]}})}})),t.default=e,Object.freeze(t)}var u=s(r),m=s(a),p=s(l),v=d(i),h=e.defineComponent({name:"CheckoutItem",props:{item:Object},setup:function(t){var o=e.computed((function(){return t.item.attributes.options&&t.item.attributes.options.length?t.item.attributes.options:[]}));return{itemOptions:e.computed((function(){return t.item.options&&t.item.options.length?t.item.options.filter((function(e){return-1!==o.value.indexOf(e.id)})):[]}))}}}),f={key:0,class:"column is-12"},y={class:"bundle-title"},g={class:"column name"},k={class:"column is-narrow"},_=["href"],E=["src"],V={key:1},N=[e.createElementVNode("use",{"xlink:href":"#logo"},null,-1)],b={class:"column"},B={class:"columns is-gapless mb-0"},C={class:"column"},S={key:0,class:"code"},w={class:"title"},D=["href"],T={class:"column is-2 has-text-centered is-relative"},x={class:"quantity"},L={key:0,class:"quantity-price"},M=["innerHTML"],P={class:"column is-2 has-text-right"},F=["innerHTML"],O=["innerHTML"],H=["innerHTML"],q={key:0,class:"options is-toggled"},$={class:"toggler"},U={class:"wrapper"},z={class:"column"},R={class:"option-title"},A={class:"column is-2 has-text-right"},j=["innerHTML"],W={key:0,class:"bundle columns"},J={class:"column is-narrow"},I=e.createElementVNode("svg",{class:"bundle-icon"},[e.createElementVNode("use",{"xlink:href":"#bundle-plus"})],-1),G=["href"],K=["src"],Q={key:1},X=[e.createElementVNode("use",{"xlink:href":"#logo"},null,-1)],Y={class:"column"},Z={key:0,class:"code"},ee={class:"title"},te=["href"],oe={key:1,class:"bundle columns"},ne={class:"column is-narrow"},re=e.createElementVNode("svg",{class:"bundle-icon"},[e.createElementVNode("use",{"xlink:href":"#bundle-plus"})],-1),ae=["href"],le=["src"],ie={key:1},ce=[e.createElementVNode("use",{"xlink:href":"#logo"},null,-1)],se={class:"column"},de={key:0,class:"code"},ue={class:"title"},me=["href"];function pe(e,t,o){return o?t?t(e):e:(e&&e.then||(e=Promise.resolve(e)),t?e.then(t):e)}function ve(){}function he(e){return function(){for(var t=[],o=0;o<arguments.length;o++)t[o]=arguments[o];try{return Promise.resolve(e.apply(this,t))}catch(e){return Promise.reject(e)}}}h.render=function(t,o,n,r,a,l){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["columns is-multiline shop-cart-item",{"is-bundle":t.item.attributes.bundle}])},[t.item.attributes.bundle?(e.openBlock(),e.createElementBlock("div",f,[e.createElementVNode("div",y,e.toDisplayString(t.__("shop.cart.bundle")),1)])):e.createCommentVNode("v-if",!0),e.createElementVNode("div",g,[e.createElementVNode("div",{class:e.normalizeClass(["columns",{"mb-0":t.item.attributes.bundle}])},[e.createElementVNode("div",k,[e.createElementVNode("a",{href:t.item.attributes.href},[e.createElementVNode("figure",{class:e.normalizeClass(["image is-square",{"no-thumb":!t.item.attributes.image}])},[t.item.attributes.image?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.item.attributes.image},null,8,E)):(e.openBlock(),e.createElementBlock("svg",V,N))],2)],8,_)]),e.createElementVNode("div",b,[e.createElementVNode("div",B,[e.createElementVNode("div",C,[t.item.attributes.code?(e.openBlock(),e.createElementBlock("div",S,e.toDisplayString(t.__("shop.cart.code"))+" "+e.toDisplayString(t.item.attributes.code),1)):e.createCommentVNode("v-if",!0),e.createElementVNode("div",w,[e.createElementVNode("a",{href:t.item.attributes.href},e.toDisplayString(t.item.name),9,D)])]),e.createElementVNode("div",T,[e.createElementVNode("div",x,"⨉ "+e.toDisplayString(t.item.quantity),1),parseInt(t.item.quantity)>1?(e.openBlock(),e.createElementBlock("div",L,[e.createElementVNode("span",{innerHTML:t.$filters.price(t.item.attributes.price)},null,8,M),e.createTextVNode(" / "+e.toDisplayString(t.__("shop.cart.q")),1)])):e.createCommentVNode("v-if",!0)]),e.createElementVNode("div",P,[e.createElementVNode("div",{class:e.normalizeClass(["price",{"bundle-price":t.item.attributes.bundle}])},[t.item.attributes.priceOld?(e.openBlock(),e.createElementBlock("div",{key:0,class:"price-old",innerHTML:t.$filters.price(t.item.attributes.priceOld*t.item.quantity)},null,8,F)):e.createCommentVNode("v-if",!0),t.item.attributes.bundle&&t.item.attributes.amount?(e.openBlock(),e.createElementBlock("div",{key:1,class:"bundle-amount",innerHTML:t.__("shop.cart.bundle_amount")+(t.item.attributes.amount.percent?t.item.attributes.amount.percent+"%":t.$filters.price(t.item.attributes.amount.sum*t.item.quantity))},null,8,O)):e.createCommentVNode("v-if",!0),e.createElementVNode("div",{innerHTML:t.$filters.price(t.item.attributes.price*t.item.quantity)},null,8,H)],2)])]),t.itemOptions&&t.itemOptions.length?(e.openBlock(),e.createElementBlock("div",q,[e.createElementVNode("div",$,[e.createElementVNode("span",null,e.toDisplayString(t.__("shop.cart.additional"))+" "+e.toDisplayString(t.itemOptions.length),1)]),e.createElementVNode("div",U,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.itemOptions,(function(o,n){return e.openBlock(),e.createElementBlock("div",{key:n,class:"columns is-checked"},[e.createElementVNode("div",z,[e.createElementVNode("div",R,e.toDisplayString(o.name),1)]),e.createElementVNode("div",A,[e.createTextVNode("+"),e.createElementVNode("span",{innerHTML:t.$filters.price(o.price)},null,8,j)])])})),128))])])):e.createCommentVNode("v-if",!0)])],2),t.item.attributes.bundle?(e.openBlock(),e.createElementBlock("div",W,[e.createElementVNode("div",J,[I,e.createElementVNode("a",{href:t.item.attributes.second.href},[e.createElementVNode("figure",{class:e.normalizeClass(["image is-square",{"no-thumb":!t.item.attributes.second.image}])},[t.item.attributes.second.image?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.item.attributes.second.image},null,8,K)):(e.openBlock(),e.createElementBlock("svg",Q,X))],2)],8,G)]),e.createElementVNode("div",Y,[t.item.attributes.second.code?(e.openBlock(),e.createElementBlock("div",Z,e.toDisplayString(t.__("shop.cart.code"))+" "+e.toDisplayString(t.item.attributes.second.code),1)):e.createCommentVNode("v-if",!0),e.createElementVNode("div",ee,[e.createElementVNode("a",{href:t.item.attributes.second.href},e.toDisplayString(t.item.attributes.second.name),9,te)])])])):e.createCommentVNode("v-if",!0),t.item.attributes.bundle&&t.item.attributes.third?(e.openBlock(),e.createElementBlock("div",oe,[e.createElementVNode("div",ne,[re,e.createElementVNode("a",{href:t.item.attributes.third.href},[e.createElementVNode("figure",{class:e.normalizeClass(["image is-square",{"no-thumb":!t.item.attributes.third.image}])},[t.item.attributes.third.image?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.item.attributes.third.image},null,8,le)):(e.openBlock(),e.createElementBlock("svg",ie,ce))],2)],8,ae)]),e.createElementVNode("div",se,[t.item.attributes.third.code?(e.openBlock(),e.createElementBlock("div",de,e.toDisplayString(t.__("shop.cart.code"))+" "+e.toDisplayString(t.item.attributes.third.code),1)):e.createCommentVNode("v-if",!0),e.createElementVNode("div",ue,[e.createElementVNode("a",{href:t.item.attributes.third.href},e.toDisplayString(t.item.attributes.third.name),9,me)])])])):e.createCommentVNode("v-if",!0)])],2)},v.addMethod(v.string,"numberFilled",(function(e,t){return this.test({name:"numberFilled",exclusive:!0,message:__("auth.validation.number"),params:{min:e},test:function(e){return!(""==e||isNaN(e))}})})),e.markRaw(m.default),e.markRaw(p.default);var fe=n.SchemaFormFactory([u.default({})]),ye={props:{message:""},template:'<div v-html="message"></div>'};window.viewedSwiperOptions={slidesPerView:"auto",freeMode:!0,slideClass:"product",mousewheel:{forceToAxis:!0},navigation:{nextEl:".next",prevEl:".prev"},observer:!0,observeParents:!0};var ge=e.defineComponent({components:{CheckoutItem:h,SchemaForm:fe},props:{isLogin:{type:Boolean,default:!0},isPhoneMasked:{type:Boolean,default:!0},isPromoCode:{type:Boolean,default:!0},isConsent:{type:Boolean,default:!1},isPaymentMethodOverSummary:{type:Boolean,default:!1},userFields:{type:Array,default:["last_name","name","email","phone"]},redirectOnEmpty:{type:String,default:!1},showPlaceholders:{type:Boolean,default:!1},isTrackAfterSuccessOnlinePurchase:{type:Boolean,default:!1}},name:"order-checkout",setup:function(r){var a=e.useSlots(),l=c.useToast(),i=o.useStore(),s=e.ref(!1),d=e.computed((function(){return i.getters["cart/quantity"]})),u=e.computed((function(){return i.getters["cart/items"]})),h=e.computed((function(){return i.getters["cart/total"]})),f=e.computed((function(){return i.getters["auth/is"]})),y=e.computed((function(){return i.getters["checkout/user"]})),g=e.ref(!0),k=e.ref(null),_=e.ref(!1),E=e.ref(null),V=e.ref(!1),N=e.ref(null),b=e.ref({}),B=e.ref([]),C=e.ref([]),S=e.ref("new"),w=e.ref(null),D=e.computed((function(){return i.getters["checkout/shippingData"]})),T=e.ref(!1),x=e.ref(!1),L=e.ref(""),M=e.ref(null),P=e.ref(!1),F=e.getCurrentInstance(),O=e.computed((function(){var e=u.value.reduce((function(e,t){return e+(t.attributes.loyalty?t.attributes.loyalty.points*t.quantity:0)}),0);return{points:e,name:t.pluralize(e,__("shop.pluralize.points"))}})),H=e.ref(""),q=e.ref(!1),$=e.computed((function(){return t.numberFormat(y.value.loyalty_points-(q.value?H.value:0))})),U=e.computed((function(){return r.isConsent&&V.value||!r.isConsent})),z=e.computed({get:function(){return i.getters["checkout/dontcall"]},set:function(e){i.commit("checkout/dontcall",e)}}),R=e.computed({get:function(){var e=i.getters["checkout/comment"];return e&&(T.value=!0),e},set:function(e){i.commit("checkout/comment",e)}});e.watch(R,(function(e){e.length>1e3&&(R.value=R.value.substring(0,1e3))}));var A=function(t,o){return e.computed({get:function(){return y.value[t]?y.value[t]:o},set:function(e){var o=JSON.parse(JSON.stringify(y.value));o[t]=e,i.commit("checkout/user",o)}})};e.provide("field",A);var j=e.ref({last_name:A("last_name"),middle_name:A("middle_name"),name:A("name"),email:A("email"),phone:A("phone"),registration_number:A("registration_number"),company_name:A("company_name"),user_type:A("user_type","individual")});e.provide("user",j),i.dispatch("auth/me",{finally:function(){}});var W=e.computed({get:function(){return i.getters["checkout/shipping"]},set:function(e){i.commit("checkout/shipping",e)}}),J=e.computed({get:function(){return i.getters["checkout/payment"]},set:function(e){i.commit("checkout/payment",e)}}),I=e.computed((function(){return W.value?B.value.find((function(e){return e.id==W.value})):{}})),G=e.computed((function(){return J.value?C.value.find((function(e){return e.id==J.value})):{}})),K=e.computed((function(){return ee(B.value,W.value)})),Q=e.computed((function(){return ee(C.value,J.value)})),X=e.computed((function(){return te(B.value)})),Y=e.computed((function(){return te(C.value)})),Z=e.computed((function(){var e=[];return u.value.forEach((function(t){-1===e.indexOf(t.category_id)&&e.push(t.category_id)})),e})),ee=function(e,t){var o=0;if(t){var n=e.find((function(e){return e.id==t}));n&&(o="sum"==n.type?n.amount:Math.round(h.value*n.amount/100))}return o},te=function(e){var t=[];return e.forEach((function(e){if(e.restrictions&&Object.keys(e.restrictions).length){var o=!0,n=e.restrictions;n.price_min&&n.price_max?(o=h.value>=n.price_min&&h.value<=n.price_max,e.restrictedForce=!o):n.price_min?(o=h.value>=n.price_min,e.restrictedForce=!o):n.price_max&&(o=h.value<=n.price_max,e.restrictedForce=!o),o&&W.value&&n.shipping_type&&n.shipping_type.length&&(o=-1!==n.shipping_type.indexOf(W.value)),o&&J.value&&n.payment_method&&n.payment_method.length&&(o=-1!==n.payment_method.indexOf(J.value)),o&&n.categories&&n.categories.length&&(o=!Z.value.filter((function(e){return!n.categories.includes(e)})).length,e.restrictedForce=!o),o&&"user_type"===n.code&&(o=n.value===j.value.user_type,e.restrictedForce=!o),e.restricted=!o}else e.restricted=!1;e.restrictedForce||t.push(e)})),t},oe=e.computed((function(){var e=0;return u.value.forEach((function(t){var o=0;t.attributes.priceOld&&(o=t.attributes.priceOld-t.attributes.price),e+=o*t.quantity})),e}));$http.post(window.location.href).then((function(e){B.value=e.data.shipping,C.value=e.data.payment})),e.watch(S,(function(e){"login"==e&&i.commit("auth/modal","login")}));var ne={user_type:{component:p.default,model:"user_type",label:"",list:[{code:"individual",value:__("auth.registration.form.user_type_individual")},{code:"legal",value:__("auth.registration.form.user_type_legal")}]},name:{component:m.default,label:__("auth.registration.form.name"),model:"first_name",placeholder:r.showPlaceholders?__("auth.registration.form.name"):""},last_name:{component:m.default,label:__("auth.registration.form.last_name"),model:"last_name",placeholder:r.showPlaceholders?__("auth.registration.form.last_name"):""},middle_name:{component:m.default,label:__("auth.registration.form.middle_name"),model:"middle_name",placeholder:r.showPlaceholders?__("auth.registration.form.middle_name"):""},phone:{component:m.default,label:__("auth.registration.form.phone"),model:"phone",type:"phone"},registration_number:{component:m.default,label:__("auth.registration.form.registration_number"),model:"registration_number",condition:function(e){return"legal"===e.user_type},placeholder:r.showPlaceholders?__("auth.registration.form.registration_number"):""},company_name:{component:m.default,label:__("auth.registration.form.company_name"),model:"company_name",condition:function(e){return"legal"===e.user_type},placeholder:r.showPlaceholders?__("auth.registration.form.company_name"):""},email:{component:m.default,label:__("auth.login.form.email"),model:"email",placeholder:r.showPlaceholders?__("auth.login.form.email"):""}};r.isPhoneMasked&&(ne.phone.mask="(###) ###-##-##");var re=Object.keys(ne).reduce((function(e,t){return r.userFields.includes(t)&&(e[t]=ne[t]),e}),{});re=r.userFields.reduce((function(e,t){return e[t]=re[t],e}),{});var ae=e.ref(re);n.useSchemaForm(j);var le={last_name:v.string().trim().required(__("auth.validation.required")),middle_name:v.string().trim().required(__("auth.validation.required")),name:v.string().trim().required(__("auth.validation.required")),phone:r.isPhoneMasked?v.string().required(__("auth.validation.phone")).matches(/^\(\d{3}\) \d{3}\-\d{2}\-\d{2}$/,__("auth.validation.phone")):v.string().required(__("auth.validation.phone")),email:v.string().trim().email(__("auth.validation.email")).required(__("auth.validation.required")),registration_number:v.string().when("user_type",(function(e){if("legal"==e)return v.string().numberFilled()})),company_name:v.string().when("user_type",(function(e){if("legal"==e)return v.string().required(__("auth.validation.required"))}))},ie=Object.keys(le).reduce((function(e,t){return r.userFields.includes(t)&&(e[t]=le[t]),e}),{}),ce=v.object().shape(ie);window.addEventListener("beforeunload",(function(){i.commit("auth/modal",null)})),window.addEventListener("pagehide",(function(){i.commit("auth/modal",null)}));var se=he((function(){return function(e){var t=e();if(t&&t.then)return t.then(ve)}((function(){if("function"==typeof de.value)return pe(de.value(),(function(e){w.value&&w.value.click(),ce.isValid(j.value).then((function(t){g.value=t&&J.value&&U.value&&W.value&&(!I.value.component||I.value.component&&D.value[I.value.code]&&D.value[I.value.code].isValid)&&e}))}))}))})),de=e.ref(null);e.provide("shippingComponentValid",de);var ue=e.ref({});e.provide("shippingComponentUserData",ue);var me=e.ref(!1),fe=function(e){_.value=!0,E.value=e,document.querySelector("html").classList.add("is-checkout-thanks"),ke()},ge=he((function(){var t="function"==typeof de.value?de.value():null;return I.value&&!I.value.component&&(t=!0),ce.isValid(j.value).then((function(o){if(o)if(W.value)if(!I.value.component||D.value[I.value.code]&&D.value[I.value.code].isValid)if(t)if(J.value)if(U.value){var n,a=D.value[I.value.code]?JSON.parse(JSON.stringify(D.value[I.value.code])):{};delete a.isValid;var c=JSON.parse(JSON.stringify(ue.value));if(document.cookie)document.cookie.split(";").forEach((function(e){var t=e.split("=");"_ga"===t[0].trim()&&(n=t[1].split(".")[2]+"."+t[1].split(".")[3])}));var d={checkout:!0,user:{last_name:j.value.last_name,middle_name:j.value.middle_name,name:j.value.name,phone:j.value.phone,email:j.value.email,user_type:j.value.user_type,registration_number:j.value.registration_number,company_name:j.value.company_name},shipping:{id:W.value,data:a,user:c},payment:{id:J.value},comment:R.value,dontcall:z.value,promoCode:L.value,loyalty:H.value,clientId:n};s.value=!0,$http.post(window.location.href,d).then((function(t){if(t.data&&t.data.error&&t.data.message)l(t.data.message,{type:"error"});else{var o=[];u.value.forEach((function(e){var t={item_name:e.name,item_id:e.attributes.code,price:e.price,quantity:e.quantity};e.attributes.brand&&(t.item_brand=e.attributes.brand),e.attributes.property&&(t.item_variant=e.attributes.property),e.attributes.categoryFull&&(-1!==e.attributes.categoryFull.indexOf("/")?e.attributes.categoryFull.split("/").forEach((function(e,o){t["item_category"+(o?o+1:"")]=e.trim()})):t.item_category=e.attributes.categoryFull),e.attributes.index&&(t.index=e.attributes.index),e.attributes.itemListName&&(t.item_list_name=e.attributes.itemListName),o.push(t)}));var n={payment_type:G.value.name,shipping_tier:I.value.name,ecommerce:{transaction_id:t.data.order.id,affiliation:"main",value:parseFloat(h.value),shipping:0,currency:"UAH",items:o},event:"purchase"};j.value.user_type&&(n.user_type=__("auth.registration.form.user_type_"+j.value.user_type)),L.value&&(n.ecommerce.coupon=L.value),r.isTrackAfterSuccessOnlinePurchase&&(t.data.redirect||t.data.payment_widget_data&&window.Wayforpay)?localStorage.setItem("ecommerce",JSON.stringify(n)):($env.debug.ecommerce&&console.log(n),!$env.debug.ecommerce&&window.dataLayer&&(window.dataLayer.push({ecommerce:null}),window.dataLayer.push(n))),t.data.redirect&&(b.value={url:t.data.redirect.url,data:t.data.redirect.data},e.nextTick((function(){setTimeout((function(){k.value.submit()}),400)}))),t.data.payment_widget_data&&window.Wayforpay?function(e,t){var o=new Wayforpay;window.addEventListener("message",(function(e){"WfpWidgetEventClose"==e.data||"WfpWidgetEventDeclined"==e.data||e.data,"WfpWidgetEventApproved"==e.data&&(fe(t),me.value=!0,i.dispatch("cart/clear",{finally:function(){}}))})),o.run(e)}(JSON.parse(t.data.payment_widget_data),t.data.order):fe(t.data.order)}})).catch((function(e){l(__("shop.order.error"),{type:"error"}),console.error(e)})).finally((function(){s.value=!1}))}else l(__("shop.order.validate_consent"),{type:"error"});else l(__("shop.order.validate_payment"),{type:"error"});else l(__("shop.order.validate_shipping1")+": «"+I.value.name+"»",{type:"error"});else l(__("shop.order.validate_shipping1")+": «"+I.value.name+"»",{type:"error"});else l(__("shop.order.validate_shipping"),{type:"error"});else S.value="new",w.value.click(),l(__("shop.order.validate_user"),{type:"error"})})),pe()})),ke=function(){i.commit("checkout/reset"),i.commit("cart/clear")};return e.onMounted((function(){!d.value&&r.redirectOnEmpty&&(window.location.href=r.redirectOnEmpty);var e=[];if(u.value.forEach((function(t){var o={item_name:t.name,item_id:t.attributes.code,price:parseFloat(t.attributes.price),quantity:t.quantity};t.attributes.brand&&(o.item_brand=t.attributes.brand),t.attributes.property&&(o.item_variant=t.attributes.property),t.attributes.categoryFull&&(-1!==t.attributes.categoryFull.indexOf("/")?t.attributes.categoryFull.split("/").forEach((function(e,t){o["item_category"+(t?t+1:"")]=e.trim()})):o.item_category=t.attributes.categoryFull),t.attributes.index&&(o.index=t.attributes.index),t.attributes.itemListName&&(o.item_list_name=t.attributes.itemListName),e.push(o)})),e.length){var t={ecommerce:{currency:"UAH",items:e,value:parseFloat(h.value)},event:"begin_checkout"};$env.debug.ecommerce&&console.log(t),!$env.debug.ecommerce&&window.dataLayer&&(window.dataLayer.push({ecommerce:null}),window.dataLayer.push(t))}})),{auth:f,userType:S,facebook:function(){window.location.href=$ziggy("auth.login.social",{provider:"facebook"})},google:function(){window.location.href=$ziggy("auth.login.social",{provider:"google"})},loginCallback:function(){S.value="new"},quantity:d,items:u,loading:s,pluralize:t.pluralize,discount:oe,total:h,shipping:W,shippingPrice:K,payment:J,fee:Q,userValidation:ce,userSchema:ae,userSubmitButton:w,checkout:ge,ifCheckoutReady:g,validate:se,shippingTypesRestricted:X,paymentMethodsRestricted:Y,toggleShippingRadio:function(e){W.value===e&&(W.value=null)},togglePaymentRadio:function(e){J.value===e&&(J.value=null)},shippingSelected:I,paymentSelected:G,shippingComponentData:D,shippingStoreData:function(e,t,o){var n=JSON.parse(JSON.stringify(D.value));t.isValid=o,n[e]=t,i.commit("checkout/shippingData",n)},resertStore:ke,user:j,dontcall:z,comment:R,isCommentToggled:T,commentMaxLength:1e3,userCheckout:y,thanks:_,order:E,redirect:b,redirectForm:k,home:function(){window.location.href=$env.locale.url?$env.locale.url:"/"},isPromoCodeToggled:x,applyPromoCode:function(){L.value&&(P.value=!0,$http.post(window.location.href,{promoCodeApply:L.value,email:j.value.email,total:h.value}).then((function(e){M.value=e.data})).catch((function(e){e.response&&e.response.data.length&&(e.response.data.forEach((function(e){var t={component:ye,props:{message:__("shop.order.promo.error_"+e.error,{number:F.appContext.config.globalProperties.$filters.price(e.number)})}};l(t,{type:"error"}),"not_found"==e.error&&(L.value="")})),M.value=null)})).finally((function(){P.value=!1})))},promoCode:L,isPromoLoading:P,promoCodeApplied:M,resetPromoCode:function(){L.value="",M.value=null},calculateWithPromoCodeDiscount:function(){var e=h.value+Q.value+K.value;return M.value&&"percent"==M.value.type?Math.round(e-e*M.value.amount/100):M.value&&"discount"==M.value.type?Math.max(0,e-M.value.amount):e},consent:V,shippingComponent:N,slots:a,isPayed:me,loyalty:O,loyaltyUse:H,loyaltyUseApplied:q,resetLoyaltyUse:function(){H.value=0,q.value=!1},applyLoyaltyUse:function(){H.value&&(q.value=!0)},readableUserLoyaltyPoints:$}}}),ke={class:"cart checkout"},_e=["action"],Ee=["name","value"],Ve={key:1,class:"items-wrapper"},Ne={class:"checkout-title"},be={class:"columns"},Be={class:"column checkout-blocks-wrapper"},Ce={class:"checkout-block is-cart"},Se={class:"wrapper"},we={class:"title-row"},De={class:"items-title"},Te=["textContent"],xe=["innerHTML"],Le=["onClick"],Me=e.createElementVNode("svg",null,[e.createElementVNode("use",{"xlink:href":"#cart-edit"})],-1),Pe={class:"checkout-block is-user auth-user"},Fe={class:"wrapper"},Oe={class:"items-title"},He={key:0,class:"user-tabs"},qe={class:"columns"},$e={class:"column user-form"},Ue={type:"submit",ref:"userSubmitButton",class:"is-hidden"},ze={key:0,class:"column user-login user-form"},Re={key:1,class:"column"},Ae={key:0,class:"social-auth"},je={class:"socials"},We={class:"description"},Je={class:"buttons"},Ie=[e.createElementVNode("svg",{class:"icon fb-btn"},[e.createElementVNode("use",{"xlink:href":"#logo-facebook-icon"})],-1),e.createElementVNode("span",null,"Facebook",-1)],Ge=[e.createElementVNode("svg",{class:"icon google-btn"},[e.createElementVNode("use",{"xlink:href":"#logo-google-icon"})],-1),e.createElementVNode("span",null,"Google",-1)],Ke={class:"checkout-block is-shipping"},Qe={class:"wrapper shipping-type-block"},Xe={class:"rows"},Ye={class:"item"},Ze={class:"row"},et={class:"info"},tt={class:"items-title mb-1"},ot={key:0,class:"value"},nt={class:"next-dates"},rt={class:"row"},at={class:"info"},lt=["value","onClick"],it=["src"],ct={key:1,class:"icon"},st=[e.createElementVNode("use",{"xlink:href":"#shipping"},null,-1)],dt={key:0,class:"description"},ut={class:"value"},mt={key:0,class:"green"},pt=["innerHTML"],vt={key:0},ht={key:0,class:"checkout-block is-payment"},ft={class:"wrapper payment-method-block"},yt={class:"rows"},gt={class:"item"},kt={class:"row"},_t={class:"info"},Et={class:"items-title mb-1"},Vt={class:"info"},Nt=["value","onClick"],bt={key:0,class:"description"},Bt={key:0,class:"value"},Ct=["innerHTML"],St={class:"column is-4"},wt={class:"checkout-block summary"},Dt={key:0,class:"inner payment-method-block"},Tt={class:"rows"},xt={class:"item"},Lt={class:"row"},Mt={class:"info"},Pt={class:"items-title mb-1"},Ft={class:"info"},Ot=["value","onClick"],Ht={key:0,class:"description"},qt={key:0,class:"value"},$t=["innerHTML"],Ut=e.createElementVNode("div",{class:"divider is-hidden"},null,-1),zt={class:"inner"},Rt={class:"items-title"},At={class:"rows"},jt={class:"row products"},Wt={class:"info"},Jt=["textContent"],It={class:"value"},Gt=["innerHTML"],Kt={key:0,class:"row discount"},Qt={class:"info"},Xt={class:"value"},Yt=["innerHTML"],Zt={key:1,class:"row fee"},eo={class:"info"},to={class:"value"},oo=["innerHTML"],no={key:2,class:"row shipping"},ro={class:"info"},ao={class:"value"},lo=["innerHTML"],io={key:1,class:"green"},co={key:3,class:"row promo"},so={class:"info"},uo=e.createElementVNode("br",null,null,-1),mo={class:"green"},po={class:"value"},vo=["innerHTML"],ho={class:"row price"},fo={class:"info"},yo={class:"value orange"},go=["innerHTML"],ko={key:0,class:"user-loyalty"},_o={class:"notice"},Eo={class:"user-form is-loyalty-use"},Vo={class:"control"},No=["disabled"],bo=["disabled"],Bo={class:"checkbox-wrapper nocall"},Co={key:1,class:"consent"},So={class:"checkbox-wrapper"},wo=["innerHTML"],Do=e.createElementVNode("svg",null,[e.createElementVNode("use",{"xlink:href":"#arrow-down"})],-1),To={class:"user-form is-promo-code"},xo={class:"control"},Lo=["disabled"],Mo={class:"label",for:"promo-code-applied"},Po=["disabled"],Fo=e.createElementVNode("svg",null,[e.createElementVNode("use",{"xlink:href":"#arrow-down"})],-1),Oo={class:"user-form"},Ho={key:0,class:"chars-count"},qo={key:2,class:"checkout-block thanks"},$o={class:"title"},Uo={class:"columns"},zo={key:0,class:"column is-6"},Ro={class:"subtitle"},Ao={key:1,class:"column is-6"},jo={class:"column is-6"},Wo={key:0,class:"info-wrapper"},Jo={class:"title"},Io={class:"columns"},Go=["innerHTML"],Ko=["innerHTML"],Qo={key:1,class:"info-wrapper"},Xo={class:"title"},Yo={class:"columns"},Zo=["innerHTML"],en=["innerHTML"],tn={key:2,class:"info-wrapper"},on={class:"title"},nn={class:"columns"},rn={class:"column is-6"},an=["innerHTML"],ln={key:3,class:"checkout-block empty"},cn={class:"title"},sn={class:"message"},dn=["href"],un=e.createElementVNode("br",null,null,-1),mn=["href"];ge.render=function(t,o,n,r,a,l){var i=e.resolveComponent("checkout-item"),c=e.resolveComponent("cart-trigger"),s=e.resolveComponent("SchemaForm"),d=e.resolveComponent("login");return e.openBlock(),e.createElementBlock("div",ke,[t.redirect.url?(e.openBlock(),e.createElementBlock("form",{key:0,ref:"redirectForm",action:t.redirect.url,style:{position:"absolute",left:"-1000px",top:"-1000px"},method:"post"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.redirect.data,(function(t,o,n){return e.openBlock(),e.createElementBlock("input",{type:"hidden",name:o,value:t,key:n},null,8,Ee)})),128))],8,_e)):e.createCommentVNode("v-if",!0),t.items.length&&!t.thanks?(e.openBlock(),e.createElementBlock("div",Ve,[e.createElementVNode("div",Ne,e.toDisplayString(t.__("shop.order.checkout_title")),1),e.createElementVNode("div",be,[e.createElementVNode("div",Be,[e.renderSlot(t.$slots,"header"),e.createElementVNode("div",Ce,[e.createCommentVNode("items"),e.createElementVNode("div",Se,[e.createElementVNode("div",we,[e.createElementVNode("div",De,[e.createTextVNode(e.toDisplayString(t.__("shop.order.your_order"))+" ",1),e.createElementVNode("span",{class:"ml-3",textContent:e.toDisplayString(t.pluralize(t.quantity,t.__("shop.pluralize.products")))},null,8,Te),e.createTextVNode(" "),e.createElementVNode("span",{innerHTML:t.__("shop.cart.bysum")+" "+t.$filters.price(t.total)},null,8,xe)])]),e.renderSlot(t.$slots,"cart",{items:t.items},(function(){return[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(function(t){return e.openBlock(),e.createBlock(i,{key:t.id,item:t},null,8,["item"])})),128)),e.createVNode(c,{class:"trigger"},{default:e.withCtx((function(o){return[e.createElementVNode("button",{class:"button",onClick:o.open},[Me,e.createElementVNode("span",null,e.toDisplayString(t.__("shop.order.edit")),1)],8,Le)]})),_:1})]})),e.renderSlot(t.$slots,"cart-footer",{total:t.total})])]),e.createElementVNode("div",Pe,[e.createElementVNode("div",Fe,[e.createElementVNode("div",Oe,e.toDisplayString(t.__("shop.order.contact_title")),1),!t.auth&&t.isLogin?(e.openBlock(),e.createElementBlock("div",He,[e.createElementVNode("label",null,[e.withDirectives(e.createElementVNode("input",{type:"radio",class:"radio","onUpdate:modelValue":o[0]||(o[0]=function(e){return t.userType=e}),value:"new"},null,512),[[e.vModelRadio,t.userType]]),e.createTextVNode(e.toDisplayString(t.__("shop.order.auth_new")),1)]),e.createElementVNode("label",null,[e.withDirectives(e.createElementVNode("input",{type:"radio",class:"radio","onUpdate:modelValue":o[1]||(o[1]=function(e){return t.userType=e}),value:"login"},null,512),[[e.vModelRadio,t.userType]]),e.createTextVNode(e.toDisplayString(t.__("shop.order.auth_old")),1)])])):e.createCommentVNode("v-if",!0),e.createElementVNode("div",qe,[e.withDirectives(e.createElementVNode("div",$e,[e.createVNode(s,{schemaRowClasses:"field",schema:t.userSchema,"validation-schema":t.userValidation,preventModelCleanupOnSchemaChange:!0},{afterForm:e.withCtx((function(){return[e.createElementVNode("button",Ue,null,512)]})),_:1},8,["schema","validation-schema"])],512),[[e.vShow,"new"==t.userType]]),t.isLogin?e.withDirectives((e.openBlock(),e.createElementBlock("div",ze,[e.createVNode(d,{"login-callback":t.loginCallback},null,8,["login-callback"])],512)),[[e.vShow,"login"==t.userType]]):e.createCommentVNode("v-if",!0),t.isLogin?(e.openBlock(),e.createElementBlock("div",Re,[t.auth?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("div",Ae,[e.createElementVNode("div",je,[e.createElementVNode("div",We,e.toDisplayString(t.__("shop.order.auth_social")),1),e.createElementVNode("div",Je,[e.createElementVNode("a",{class:"button",onClick:o[2]||(o[2]=function(){return t.facebook&&t.facebook.apply(t,arguments)})},Ie),e.createElementVNode("a",{class:"button",onClick:o[3]||(o[3]=function(){return t.google&&t.google.apply(t,arguments)})},Ge)])])]))])):e.createCommentVNode("v-if",!0)])])]),e.createElementVNode("div",Ke,[e.createElementVNode("div",Qe,[e.createElementVNode("div",Xe,[e.createElementVNode("div",Ye,[e.createElementVNode("div",Ze,[e.createElementVNode("div",et,[e.createElementVNode("div",tt,e.toDisplayString(t.__("shop.order.shipping")),1)]),t.shippingSelected&&t.shippingSelected.nextDates?(e.openBlock(),e.createElementBlock("div",ot,[e.createElementVNode("div",nt,"на "+e.toDisplayString(t.shippingSelected.nextDates),1)])):e.createCommentVNode("v-if",!0),e.createCommentVNode("v-if",!0)])]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.shippingTypesRestricted,(function(n){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["item",{"is-disabled":n.restricted}]),key:n.id},[e.createElementVNode("div",rt,[e.createElementVNode("div",at,[e.createElementVNode("label",null,[e.withDirectives(e.createElementVNode("input",{type:"radio",class:"radio","onUpdate:modelValue":o[5]||(o[5]=function(e){return t.shipping=e}),value:n.id,onClick:function(e){return t.toggleShippingRadio(n.id)}},null,8,lt),[[e.vModelRadio,t.shipping]]),n.icon?(e.openBlock(),e.createElementBlock("img",{key:0,class:"icon",src:n.icon},null,8,it)):(e.openBlock(),e.createElementBlock("svg",ct,st)),e.createElementVNode("span",null,e.toDisplayString(n.name),1)]),n.description?(e.openBlock(),e.createElementBlock("div",dt,e.toDisplayString(n.description),1)):e.createCommentVNode("v-if",!0)]),e.createElementVNode("div",ut,[!n.amount&&n.price_label?(e.openBlock(),e.createElementBlock("span",mt,e.toDisplayString(n.price_label),1)):(e.openBlock(),e.createElementBlock("span",{key:1,innerHTML:"percent"==n.type?n.amount+"%":t.$filters.price(n.amount)},null,8,pt))])]),t.slots.shippingFooter?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("div",vt,[n.component&&n.id==t.shipping?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.component),{key:0,commit:t.shippingStoreData,data:t.shippingComponentData,item:n},null,8,["commit","data","item"])):e.createCommentVNode("v-if",!0)]))],2)})),128))]),e.renderSlot(t.$slots,"shipping-footer",{shippingTypesRestricted:t.shippingTypesRestricted,shipping:t.shipping,shippingStoreData:t.shippingStoreData,shippingComponentData:t.shippingComponentData})])]),t.isPaymentMethodOverSummary?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("div",ht,[e.createElementVNode("div",ft,[e.createElementVNode("div",yt,[e.createElementVNode("div",gt,[e.createElementVNode("div",kt,[e.createElementVNode("div",_t,[e.createElementVNode("div",Et,e.toDisplayString(t.__("shop.order.payment")),1)]),e.createCommentVNode("v-if",!0)])]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.paymentMethodsRestricted,(function(n){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["item",{"is-disabled":n.restricted}]),key:n.id},[e.createElementVNode("div",{class:e.normalizeClass(["row no-icon","is-"+n.code])},[e.createElementVNode("div",Vt,[e.createElementVNode("label",null,[e.withDirectives(e.createElementVNode("input",{type:"radio",class:"radio","onUpdate:modelValue":o[7]||(o[7]=function(e){return t.payment=e}),value:n.id,onClick:function(e){return t.togglePaymentRadio(n.id)}},null,8,Nt),[[e.vModelRadio,t.payment]]),e.createElementVNode("span",null,e.toDisplayString(n.name),1)]),n.description?(e.openBlock(),e.createElementBlock("div",bt,e.toDisplayString(n.description),1)):e.createCommentVNode("v-if",!0)]),n.amount?(e.openBlock(),e.createElementBlock("div",Bt,[e.createElementVNode("span",{innerHTML:"percent"==n.type?n.amount+"%":t.$filters.price(n.amount)},null,8,Ct)])):e.createCommentVNode("v-if",!0)],2)],2)})),128))])])]))]),e.createElementVNode("div",St,[e.createElementVNode("div",wt,[t.isPaymentMethodOverSummary?(e.openBlock(),e.createElementBlock("div",Dt,[e.createElementVNode("div",Tt,[e.createElementVNode("div",xt,[e.createElementVNode("div",Lt,[e.createElementVNode("div",Mt,[e.createElementVNode("div",Pt,e.toDisplayString(t.__("shop.order.payment")),1)]),e.createCommentVNode("v-if",!0)])]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.paymentMethodsRestricted,(function(n){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["item",{"is-disabled":n.restricted}]),key:n.id},[e.createElementVNode("div",{class:e.normalizeClass(["row no-icon","is-"+n.code])},[e.createElementVNode("div",Ft,[e.createElementVNode("label",null,[e.withDirectives(e.createElementVNode("input",{type:"radio",class:"radio","onUpdate:modelValue":o[9]||(o[9]=function(e){return t.payment=e}),value:n.id,onClick:function(e){return t.togglePaymentRadio(n.id)}},null,8,Ot),[[e.vModelRadio,t.payment]]),e.createElementVNode("span",null,e.toDisplayString(n.name),1)]),n.description?(e.openBlock(),e.createElementBlock("div",Ht,e.toDisplayString(n.description),1)):e.createCommentVNode("v-if",!0)]),n.amount?(e.openBlock(),e.createElementBlock("div",qt,[e.createElementVNode("span",{innerHTML:"percent"==n.type?n.amount+"%":t.$filters.price(n.amount)},null,8,$t)])):e.createCommentVNode("v-if",!0)],2)],2)})),128))])])):e.createCommentVNode("v-if",!0),Ut,e.createElementVNode("div",zt,[e.createElementVNode("div",Rt,e.toDisplayString(t.__("shop.order.total")),1),e.createElementVNode("div",At,[e.createElementVNode("div",jt,[e.createElementVNode("div",Wt,[e.createElementVNode("span",{textContent:e.toDisplayString(t.pluralize(t.quantity,t.__("shop.pluralize.products")))},null,8,Jt),e.createTextVNode(" "+e.toDisplayString(t.__("shop.cart.bysum")),1)]),e.createElementVNode("div",It,[e.createElementVNode("span",{innerHTML:t.$filters.price(t.total)},null,8,Gt)])]),t.discount?(e.openBlock(),e.createElementBlock("div",Kt,[e.createElementVNode("div",Qt,e.toDisplayString(t.__("shop.order.discount")),1),e.createElementVNode("div",Xt,[e.createElementVNode("span",{innerHTML:t.$filters.price(t.discount)},null,8,Yt)])])):e.createCommentVNode("v-if",!0),t.fee>0?(e.openBlock(),e.createElementBlock("div",Zt,[e.createElementVNode("div",eo,e.toDisplayString(t.__("shop.order.fee")),1),e.createElementVNode("div",to,[e.createElementVNode("span",{innerHTML:t.$filters.price(t.fee)},null,8,oo)]),e.renderSlot(t.$slots,"fee")])):e.createCommentVNode("v-if",!0),t.shipping?(e.openBlock(),e.createElementBlock("div",no,[e.createElementVNode("div",ro,e.toDisplayString(t.__("shop.order.shipping_price")),1),e.createElementVNode("div",ao,[t.shippingPrice>0?(e.openBlock(),e.createElementBlock("span",{key:0,innerHTML:t.$filters.price(t.shippingPrice)},null,8,lo)):t.shippingSelected&&t.shippingSelected.price_label?(e.openBlock(),e.createElementBlock("span",io,e.toDisplayString(t.shippingSelected.price_label),1)):e.createCommentVNode("v-if",!0)])])):e.createCommentVNode("v-if",!0),t.promoCodeApplied?(e.openBlock(),e.createElementBlock("div",co,[e.createElementVNode("div",so,[e.createTextVNode(e.toDisplayString(t.__("shop.order.promo_code")),1),uo,e.createElementVNode("span",mo,e.toDisplayString(t.promoCode),1)]),e.createElementVNode("div",po,[e.createElementVNode("span",{innerHTML:"percent"==t.promoCodeApplied.type?t.promoCodeApplied.amount+"%":t.$filters.price(t.promoCodeApplied.amount)},null,8,vo)])])):e.createCommentVNode("v-if",!0),e.createElementVNode("div",ho,[e.createElementVNode("div",fo,e.toDisplayString(t.__("shop.order.price")),1),e.createElementVNode("div",yo,[e.createElementVNode("span",{innerHTML:t.$filters.price(t.calculateWithPromoCodeDiscount())},null,8,go)])])]),e.renderSlot(t.$slots,"loyalty",{loyalty:t.loyalty}),t.userCheckout.loyalty_points>0?(e.openBlock(),e.createElementBlock("div",ko,[e.createElementVNode("div",_o,e.toDisplayString(t.pluralize(t.readableUserLoyaltyPoints,t.__("shop.pluralize.points")))+" в наявності",1),e.createElementVNode("div",Eo,[e.createElementVNode("div",Vo,[e.withDirectives(e.createElementVNode("input",{type:"number",class:"input",placeholder:"Сума бонусів","onUpdate:modelValue":o[10]||(o[10]=function(e){return t.loyaltyUse=e}),disabled:t.loyaltyUseApplied},null,8,No),[[e.vModelText,t.loyaltyUse]])]),t.loyaltyUseApplied?(e.openBlock(),e.createElementBlock("button",{key:1,class:"button is-reset",onClick:o[12]||(o[12]=function(){return t.resetLoyaltyUse&&t.resetLoyaltyUse.apply(t,arguments)})},"Відмінити")):(e.openBlock(),e.createElementBlock("button",{key:0,class:"button",onClick:o[11]||(o[11]=function(){return t.applyLoyaltyUse&&t.applyLoyaltyUse.apply(t,arguments)}),disabled:!t.loyaltyUse||t.loyaltyUse>t.userCheckout.loyalty_points},"Використати",8,bo))])])):e.createCommentVNode("v-if",!0),e.createElementVNode("div",Bo,[e.createElementVNode("label",null,[e.withDirectives(e.createElementVNode("input",{type:"checkbox",class:"checkbox","onUpdate:modelValue":o[13]||(o[13]=function(e){return t.dontcall=e})},null,512),[[e.vModelCheckbox,t.dontcall]]),e.createTextVNode(e.toDisplayString(t.__("shop.order.nocall")),1)])]),e.createElementVNode("button",{class:e.normalizeClass(["button submit",{red:!t.ifCheckoutReady,"is-loading":t.loading}]),onClick:o[14]||(o[14]=function(){return t.checkout&&t.checkout.apply(t,arguments)})},e.toDisplayString(t.__("shop.order.action")),3),e.renderSlot(t.$slots,"submit",{total:t.total}),t.isConsent?(e.openBlock(),e.createElementBlock("div",Co,[e.createElementVNode("div",So,[e.createElementVNode("label",null,[e.withDirectives(e.createElementVNode("input",{type:"checkbox",class:"checkbox","onUpdate:modelValue":o[15]||(o[15]=function(e){return t.consent=e})},null,512),[[e.vModelCheckbox,t.consent]]),e.createElementVNode("div",{class:"label",innerHTML:t.__("shop.order.consent")},null,8,wo)])])])):e.createCommentVNode("v-if",!0),t.isPromoCode?(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass(["comment-wrapper is-promo-code",{"is-open":t.isPromoCodeToggled}])},[e.createElementVNode("div",{class:"toggler",onClick:o[16]||(o[16]=function(e){return t.isPromoCodeToggled=!t.isPromoCodeToggled})},[e.createElementVNode("span",null,e.toDisplayString(t.__("shop.order.promo_code")),1),Do]),e.createElementVNode("div",To,[e.createElementVNode("div",xo,[e.withDirectives(e.createElementVNode("input",{type:"text",class:"input",placeholder:" ","onUpdate:modelValue":o[17]||(o[17]=function(e){return t.promoCode=e}),disabled:t.promoCodeApplied,id:"promo-code-applied"},null,8,Lo),[[e.vModelText,t.promoCode]]),e.createElementVNode("label",Mo,e.toDisplayString(t.__("shop.order.promo.placeholder")),1)]),t.promoCodeApplied?(e.openBlock(),e.createElementBlock("button",{key:1,class:"button",onClick:o[19]||(o[19]=function(){return t.resetPromoCode&&t.resetPromoCode.apply(t,arguments)})},e.toDisplayString(t.__("shop.order.promo.reset")),1)):(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(["button",{"is-loading":t.isPromoLoading}]),onClick:o[18]||(o[18]=function(){return t.applyPromoCode&&t.applyPromoCode.apply(t,arguments)}),disabled:!t.promoCode},e.toDisplayString(t.__("shop.order.promo.apply")),11,Po))])],2)):e.createCommentVNode("v-if",!0),e.createElementVNode("div",{class:e.normalizeClass(["comment-wrapper",{"is-open":t.isCommentToggled}])},[e.createElementVNode("div",{class:"toggler",onClick:o[20]||(o[20]=function(e){return t.isCommentToggled=!t.isCommentToggled})},[e.createElementVNode("span",null,e.toDisplayString(t.__("shop.order.comment")),1),Fo]),e.createElementVNode("div",Oo,[e.withDirectives(e.createElementVNode("textarea",{class:"textarea","onUpdate:modelValue":o[21]||(o[21]=function(e){return t.comment=e})},null,512),[[e.vModelText,t.comment]]),t.comment.length?(e.openBlock(),e.createElementBlock("div",Ho,e.toDisplayString(t.commentMaxLength-t.comment.length),1)):e.createCommentVNode("v-if",!0)])],2)])])])])])):t.thanks&&t.order?(e.openBlock(),e.createElementBlock("div",qo,[e.renderSlot(t.$slots,"thanks",{order:t.order,redirect:t.redirect,redirectForm:t.redirectForm,home:t.home,auth:t.auth,filters:t.$filters},(function(){return[e.createElementVNode("div",$o,[e.createTextVNode(e.toDisplayString(t.__("shop.order.order"))+" ",1),e.createElementVNode("span",null,"№"+e.toDisplayString(t.order.id),1),e.createTextVNode(" "+e.toDisplayString(t.isPayed?t.__("shop.order.payed"):t.__("shop.order.success")),1)]),e.createElementVNode("div",Uo,[t.redirect.url?(e.openBlock(),e.createElementBlock("div",zo,[e.createElementVNode("div",Ro,e.toDisplayString(t.__("shop.order.pay_online")),1),e.createElementVNode("button",{class:"button is-payment",onClick:o[22]||(o[22]=function(e){return t.redirectForm.submit()})},e.toDisplayString(t.__("shop.order.pay_online_go")),1)])):(e.openBlock(),e.createElementBlock("div",Ao,[e.createElementVNode("button",{class:"button is-orange",onClick:o[23]||(o[23]=function(){return t.home&&t.home.apply(t,arguments)})},e.toDisplayString(t.__("shop.cart.continue")),1)])),e.createElementVNode("div",jo,[t.order.shipping[0]?(e.openBlock(),e.createElementBlock("div",Wo,[e.createElementVNode("div",Jo,e.toDisplayString(t.__("shop.order.shipping")),1),e.createElementVNode("div",Io,[t.order.shipping[0]?(e.openBlock(),e.createElementBlock("div",{key:0,class:"column is-6",innerHTML:t.order.shipping[0]},null,8,Go)):e.createCommentVNode("v-if",!0),t.order.shipping[1]?(e.openBlock(),e.createElementBlock("div",{key:1,class:"column is-6",innerHTML:t.order.shipping[1]},null,8,Ko)):e.createCommentVNode("v-if",!0)])])):e.createCommentVNode("v-if",!0),t.order.payment[0]?(e.openBlock(),e.createElementBlock("div",Qo,[e.createElementVNode("div",Xo,e.toDisplayString(t.__("shop.order.payment")),1),e.createElementVNode("div",Yo,[t.order.payment[0]?(e.openBlock(),e.createElementBlock("div",{key:0,class:"column is-6",innerHTML:t.order.payment[0]},null,8,Zo)):e.createCommentVNode("v-if",!0),t.order.payment[1]?(e.openBlock(),e.createElementBlock("div",{key:1,class:"column is-6",innerHTML:t.order.payment[1]},null,8,en)):e.createCommentVNode("v-if",!0)])])):e.createCommentVNode("v-if",!0),t.order.promoCode?(e.openBlock(),e.createElementBlock("div",tn,[e.createElementVNode("div",on,e.toDisplayString(t.__("shop.order.promo_code")),1),e.createElementVNode("div",nn,[e.createElementVNode("div",rn,[e.createElementVNode("span",{innerHTML:t.order.promoCode,class:"green"},null,8,an)])])])):e.createCommentVNode("v-if",!0)])])]}))])):t.redirectOnEmpty?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("div",ln,[e.createElementVNode("div",cn,e.toDisplayString(t.__("shop.cart.no_no")),1),e.createElementVNode("div",sn,[e.createTextVNode(e.toDisplayString(t.__("shop.cart.no_prop"))+" ",1),e.createElementVNode("a",{href:t.$env.locale.url?t.$env.locale.url:"/"},e.toDisplayString(t.__("shop.cart.no_home")),9,dn),e.createTextVNode(", "),un,e.createTextVNode(e.toDisplayString(t.__("shop.cart.no_search")),1)]),e.createElementVNode("a",{class:"button continue",href:t.$env.locale.url?t.$env.locale.url:"/"},e.toDisplayString(t.__("shop.cart.continue")),9,mn)]))])},module.exports=ge;
|
|
1
|
+
"use strict";var e=require("vue"),t=require("@perevorot/shop/dist/helpers"),o=require("vuex"),n=require("formvuelate"),r=require("@formvuelate/plugin-vee-validate"),a=require("@perevorot/shop/dist/forms/FormText"),l=require("@perevorot/shop/dist/forms/FormRadio"),i=require("yup"),c=require("vue-toastification");function s(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function d(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(o){if("default"!==o){var n=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(t,o,n.get?n:{enumerable:!0,get:function(){return e[o]}})}})),t.default=e,Object.freeze(t)}var u=s(r),m=s(a),p=s(l),v=d(i),h=e.defineComponent({name:"CheckoutItem",props:{item:Object},setup:function(t){var o=e.computed((function(){return t.item.attributes.options&&t.item.attributes.options.length?t.item.attributes.options:[]}));return{itemOptions:e.computed((function(){return t.item.options&&t.item.options.length?t.item.options.filter((function(e){return-1!==o.value.indexOf(e.id)})):[]}))}}}),f={key:0,class:"column is-12"},y={class:"bundle-title"},g={class:"column name"},k={class:"column is-narrow"},_=["href"],E=["src"],V={key:1},N=[e.createElementVNode("use",{"xlink:href":"#logo"},null,-1)],b={class:"column"},B={class:"columns is-gapless mb-0"},C={class:"column"},w={key:0,class:"code"},S={class:"title"},D=["href"],T={class:"column is-2 has-text-centered is-relative"},x={class:"quantity"},L={key:0,class:"quantity-price"},M=["innerHTML"],P={class:"column is-2 has-text-right"},F=["innerHTML"],O=["innerHTML"],H=["innerHTML"],q={key:0,class:"options is-toggled"},$={class:"toggler"},U={class:"wrapper"},z={class:"column"},R={class:"option-title"},A={class:"column is-2 has-text-right"},j=["innerHTML"],W={key:0,class:"bundle columns"},J={class:"column is-narrow"},I=e.createElementVNode("svg",{class:"bundle-icon"},[e.createElementVNode("use",{"xlink:href":"#bundle-plus"})],-1),G=["href"],K=["src"],Q={key:1},X=[e.createElementVNode("use",{"xlink:href":"#logo"},null,-1)],Y={class:"column"},Z={key:0,class:"code"},ee={class:"title"},te=["href"],oe={key:1,class:"bundle columns"},ne={class:"column is-narrow"},re=e.createElementVNode("svg",{class:"bundle-icon"},[e.createElementVNode("use",{"xlink:href":"#bundle-plus"})],-1),ae=["href"],le=["src"],ie={key:1},ce=[e.createElementVNode("use",{"xlink:href":"#logo"},null,-1)],se={class:"column"},de={key:0,class:"code"},ue={class:"title"},me=["href"];function pe(e,t,o){return o?t?t(e):e:(e&&e.then||(e=Promise.resolve(e)),t?e.then(t):e)}function ve(){}function he(e){return function(){for(var t=[],o=0;o<arguments.length;o++)t[o]=arguments[o];try{return Promise.resolve(e.apply(this,t))}catch(e){return Promise.reject(e)}}}h.render=function(t,o,n,r,a,l){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["columns is-multiline shop-cart-item",{"is-bundle":t.item.attributes.bundle}])},[t.item.attributes.bundle?(e.openBlock(),e.createElementBlock("div",f,[e.createElementVNode("div",y,e.toDisplayString(t.__("shop.cart.bundle")),1)])):e.createCommentVNode("v-if",!0),e.createElementVNode("div",g,[e.createElementVNode("div",{class:e.normalizeClass(["columns",{"mb-0":t.item.attributes.bundle}])},[e.createElementVNode("div",k,[e.createElementVNode("a",{href:t.item.attributes.href},[e.createElementVNode("figure",{class:e.normalizeClass(["image is-square",{"no-thumb":!t.item.attributes.image}])},[t.item.attributes.image?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.item.attributes.image},null,8,E)):(e.openBlock(),e.createElementBlock("svg",V,N))],2)],8,_)]),e.createElementVNode("div",b,[e.createElementVNode("div",B,[e.createElementVNode("div",C,[t.item.attributes.code?(e.openBlock(),e.createElementBlock("div",w,e.toDisplayString(t.__("shop.cart.code"))+" "+e.toDisplayString(t.item.attributes.code),1)):e.createCommentVNode("v-if",!0),e.createElementVNode("div",S,[e.createElementVNode("a",{href:t.item.attributes.href},e.toDisplayString(t.item.name),9,D)])]),e.createElementVNode("div",T,[e.createElementVNode("div",x,"⨉ "+e.toDisplayString(t.item.quantity),1),parseInt(t.item.quantity)>1?(e.openBlock(),e.createElementBlock("div",L,[e.createElementVNode("span",{innerHTML:t.$filters.price(t.item.attributes.price)},null,8,M),e.createTextVNode(" / "+e.toDisplayString(t.__("shop.cart.q")),1)])):e.createCommentVNode("v-if",!0)]),e.createElementVNode("div",P,[e.createElementVNode("div",{class:e.normalizeClass(["price",{"bundle-price":t.item.attributes.bundle}])},[t.item.attributes.priceOld?(e.openBlock(),e.createElementBlock("div",{key:0,class:"price-old",innerHTML:t.$filters.price(t.item.attributes.priceOld*t.item.quantity)},null,8,F)):e.createCommentVNode("v-if",!0),t.item.attributes.bundle&&t.item.attributes.amount?(e.openBlock(),e.createElementBlock("div",{key:1,class:"bundle-amount",innerHTML:t.__("shop.cart.bundle_amount")+(t.item.attributes.amount.percent?t.item.attributes.amount.percent+"%":t.$filters.price(t.item.attributes.amount.sum*t.item.quantity))},null,8,O)):e.createCommentVNode("v-if",!0),e.createElementVNode("div",{innerHTML:t.$filters.price(t.item.attributes.price*t.item.quantity)},null,8,H)],2)])]),t.itemOptions&&t.itemOptions.length?(e.openBlock(),e.createElementBlock("div",q,[e.createElementVNode("div",$,[e.createElementVNode("span",null,e.toDisplayString(t.__("shop.cart.additional"))+" "+e.toDisplayString(t.itemOptions.length),1)]),e.createElementVNode("div",U,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.itemOptions,(function(o,n){return e.openBlock(),e.createElementBlock("div",{key:n,class:"columns is-checked"},[e.createElementVNode("div",z,[e.createElementVNode("div",R,e.toDisplayString(o.name),1)]),e.createElementVNode("div",A,[e.createTextVNode("+"),e.createElementVNode("span",{innerHTML:t.$filters.price(o.price)},null,8,j)])])})),128))])])):e.createCommentVNode("v-if",!0)])],2),t.item.attributes.bundle?(e.openBlock(),e.createElementBlock("div",W,[e.createElementVNode("div",J,[I,e.createElementVNode("a",{href:t.item.attributes.second.href},[e.createElementVNode("figure",{class:e.normalizeClass(["image is-square",{"no-thumb":!t.item.attributes.second.image}])},[t.item.attributes.second.image?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.item.attributes.second.image},null,8,K)):(e.openBlock(),e.createElementBlock("svg",Q,X))],2)],8,G)]),e.createElementVNode("div",Y,[t.item.attributes.second.code?(e.openBlock(),e.createElementBlock("div",Z,e.toDisplayString(t.__("shop.cart.code"))+" "+e.toDisplayString(t.item.attributes.second.code),1)):e.createCommentVNode("v-if",!0),e.createElementVNode("div",ee,[e.createElementVNode("a",{href:t.item.attributes.second.href},e.toDisplayString(t.item.attributes.second.name),9,te)])])])):e.createCommentVNode("v-if",!0),t.item.attributes.bundle&&t.item.attributes.third?(e.openBlock(),e.createElementBlock("div",oe,[e.createElementVNode("div",ne,[re,e.createElementVNode("a",{href:t.item.attributes.third.href},[e.createElementVNode("figure",{class:e.normalizeClass(["image is-square",{"no-thumb":!t.item.attributes.third.image}])},[t.item.attributes.third.image?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.item.attributes.third.image},null,8,le)):(e.openBlock(),e.createElementBlock("svg",ie,ce))],2)],8,ae)]),e.createElementVNode("div",se,[t.item.attributes.third.code?(e.openBlock(),e.createElementBlock("div",de,e.toDisplayString(t.__("shop.cart.code"))+" "+e.toDisplayString(t.item.attributes.third.code),1)):e.createCommentVNode("v-if",!0),e.createElementVNode("div",ue,[e.createElementVNode("a",{href:t.item.attributes.third.href},e.toDisplayString(t.item.attributes.third.name),9,me)])])])):e.createCommentVNode("v-if",!0)])],2)},v.addMethod(v.string,"numberFilled",(function(e,t){return this.test({name:"numberFilled",exclusive:!0,message:__("auth.validation.number"),params:{min:e},test:function(e){return!(""==e||isNaN(e))}})})),e.markRaw(m.default),e.markRaw(p.default);var fe=n.SchemaFormFactory([u.default({})]),ye={props:{message:""},template:'<div v-html="message"></div>'};window.viewedSwiperOptions={slidesPerView:"auto",freeMode:!0,slideClass:"product",mousewheel:{forceToAxis:!0},navigation:{nextEl:".next",prevEl:".prev"},observer:!0,observeParents:!0};var ge=e.defineComponent({components:{CheckoutItem:h,SchemaForm:fe},props:{isLogin:{type:Boolean,default:!0},isPhoneMasked:{type:Boolean,default:!0},isPromoCode:{type:Boolean,default:!0},isConsent:{type:Boolean,default:!1},isPaymentMethodOverSummary:{type:Boolean,default:!1},userFields:{type:Array,default:["last_name","name","email","phone"]},redirectOnEmpty:{type:String,default:!1},showPlaceholders:{type:Boolean,default:!1},isTrackAfterSuccessOnlinePurchase:{type:Boolean,default:!1}},name:"order-checkout",setup:function(r){var a=e.useSlots(),l=c.useToast(),i=o.useStore(),s=e.ref(!1),d=e.computed((function(){return i.getters["cart/quantity"]})),u=e.computed((function(){return i.getters["cart/items"]})),h=e.computed((function(){return i.getters["cart/total"]})),f=e.computed((function(){return i.getters["auth/is"]})),y=e.computed((function(){return i.getters["checkout/user"]})),g=e.ref(!0),k=e.ref(null),_=e.ref(!1),E=e.ref(null),V=e.ref(!1),N=e.ref(null),b=e.ref({}),B=e.ref([]),C=e.ref([]),w=e.ref("new"),S=e.ref(null),D=e.computed((function(){return i.getters["checkout/shippingData"]})),T=e.ref(!1),x=e.ref(!1),L=e.ref(""),M=e.ref(null),P=e.ref(!1),F=e.getCurrentInstance(),O=e.computed((function(){var e=u.value.reduce((function(e,t){return e+(t.attributes.loyalty?t.attributes.loyalty.points*t.quantity:0)}),0);return{points:e,name:t.pluralize(e,__("shop.pluralize.points"))}})),H=e.ref(""),q=e.ref(!1),$=e.computed((function(){return t.numberFormat(y.value.loyalty_points-(q.value?H.value:0))})),U=e.computed((function(){return r.isConsent&&V.value||!r.isConsent})),z=e.computed({get:function(){return i.getters["checkout/dontcall"]},set:function(e){i.commit("checkout/dontcall",e)}}),R=e.computed({get:function(){var e=i.getters["checkout/comment"];return e&&(T.value=!0),e},set:function(e){i.commit("checkout/comment",e)}});e.watch(R,(function(e){e.length>1e3&&(R.value=R.value.substring(0,1e3))}));var A=function(t,o){return e.computed({get:function(){return y.value[t]?y.value[t]:o},set:function(e){var o=JSON.parse(JSON.stringify(y.value));o[t]=e,i.commit("checkout/user",o)}})};e.provide("field",A);var j=e.ref({last_name:A("last_name"),middle_name:A("middle_name"),name:A("name"),email:A("email"),phone:A("phone"),registration_number:A("registration_number"),company_name:A("company_name"),user_type:A("user_type","individual")});e.provide("user",j),i.dispatch("auth/me",{finally:function(){}});var W=e.computed({get:function(){return i.getters["checkout/shipping"]},set:function(e){i.commit("checkout/shipping",e)}}),J=e.computed({get:function(){return i.getters["checkout/payment"]},set:function(e){i.commit("checkout/payment",e)}}),I=e.computed((function(){return W.value?B.value.find((function(e){return e.id==W.value})):{}})),G=e.computed((function(){return J.value?C.value.find((function(e){return e.id==J.value})):{}})),K=e.computed((function(){return ee(B.value,W.value)})),Q=e.computed((function(){return ee(C.value,J.value)})),X=e.computed((function(){return te(B.value)})),Y=e.computed((function(){return te(C.value)})),Z=e.computed((function(){var e=[];return u.value.forEach((function(t){-1===e.indexOf(t.category_id)&&e.push(t.category_id)})),e})),ee=function(e,t){var o=0;if(t){var n=e.find((function(e){return e.id==t}));n&&(o="sum"==n.type?n.amount:Math.round(h.value*n.amount/100))}return o},te=function(e){var t=[];return e.forEach((function(e){if(e.restrictions&&Object.keys(e.restrictions).length){var o=!0,n=e.restrictions;n.price_min&&n.price_max?(o=h.value>=n.price_min&&h.value<=n.price_max,e.restrictedForce=!o):n.price_min?(o=h.value>=n.price_min,e.restrictedForce=!o):n.price_max&&(o=h.value<=n.price_max,e.restrictedForce=!o),o&&W.value&&n.shipping_type&&n.shipping_type.length&&(o=-1!==n.shipping_type.indexOf(W.value)),o&&J.value&&n.payment_method&&n.payment_method.length&&(o=-1!==n.payment_method.indexOf(J.value)),o&&n.categories&&n.categories.length&&(o=!Z.value.filter((function(e){return!n.categories.includes(e)})).length,e.restrictedForce=!o),o&&"user_type"===n.code&&(o=n.value===j.value.user_type,e.restrictedForce=!o),e.restricted=!o}else e.restricted=!1;e.restrictedForce||t.push(e)})),t},oe=e.computed((function(){var e=0;return u.value.forEach((function(t){var o=0;t.attributes.priceOld&&(o=t.attributes.priceOld-t.attributes.price),e+=o*t.quantity})),e}));$http.post(window.location.href).then((function(e){B.value=e.data.shipping,C.value=e.data.payment})),e.watch(w,(function(e){"login"==e&&i.commit("auth/modal","login")}));var ne={user_type:{component:p.default,model:"user_type",label:"",list:[{code:"individual",value:__("auth.registration.form.user_type_individual")},{code:"legal",value:__("auth.registration.form.user_type_legal")}]},name:{component:m.default,label:__("auth.registration.form.name"),model:"first_name",placeholder:r.showPlaceholders?__("auth.registration.form.name"):""},last_name:{component:m.default,label:__("auth.registration.form.last_name"),model:"last_name",placeholder:r.showPlaceholders?__("auth.registration.form.last_name"):""},middle_name:{component:m.default,label:__("auth.registration.form.middle_name"),model:"middle_name",placeholder:r.showPlaceholders?__("auth.registration.form.middle_name"):""},phone:{component:m.default,label:__("auth.registration.form.phone"),model:"phone",type:"phone"},registration_number:{component:m.default,label:__("auth.registration.form.registration_number"),model:"registration_number",condition:function(e){return"legal"===e.user_type},placeholder:r.showPlaceholders?__("auth.registration.form.registration_number"):""},company_name:{component:m.default,label:__("auth.registration.form.company_name"),model:"company_name",condition:function(e){return"legal"===e.user_type},placeholder:r.showPlaceholders?__("auth.registration.form.company_name"):""},email:{component:m.default,label:__("auth.login.form.email"),model:"email",placeholder:r.showPlaceholders?__("auth.login.form.email"):""}};r.isPhoneMasked&&(ne.phone.mask="(###) ###-##-##");var re=Object.keys(ne).reduce((function(e,t){return r.userFields.includes(t)&&(e[t]=ne[t]),e}),{});re=r.userFields.reduce((function(e,t){return e[t]=re[t],e}),{});var ae=e.ref(re);n.useSchemaForm(j);var le={last_name:v.string().trim().required(__("auth.validation.required")),middle_name:v.string().trim().required(__("auth.validation.required")),name:v.string().trim().required(__("auth.validation.required")),phone:r.isPhoneMasked?v.string().required(__("auth.validation.phone")).matches(/^\(\d{3}\) \d{3}\-\d{2}\-\d{2}$/,__("auth.validation.phone")):v.string().required(__("auth.validation.phone")),email:v.string().trim().email(__("auth.validation.email")).required(__("auth.validation.required")),registration_number:v.string().when("user_type",(function(e){if("legal"==e)return v.string().numberFilled()})),company_name:v.string().when("user_type",(function(e){if("legal"==e)return v.string().required(__("auth.validation.required"))}))},ie=Object.keys(le).reduce((function(e,t){return r.userFields.includes(t)&&(e[t]=le[t]),e}),{}),ce=v.object().shape(ie);window.addEventListener("beforeunload",(function(){i.commit("auth/modal",null)})),window.addEventListener("pagehide",(function(){i.commit("auth/modal",null)}));var se=he((function(){return function(e){var t=e();if(t&&t.then)return t.then(ve)}((function(){if("function"==typeof de.value)return pe(de.value(),(function(e){S.value&&S.value.click(),ce.isValid(j.value).then((function(t){g.value=t&&J.value&&U.value&&W.value&&(!I.value.component||I.value.component&&D.value[I.value.code]&&D.value[I.value.code].isValid)&&e}))}))}))})),de=e.ref(null);e.provide("shippingComponentValid",de);var ue=e.ref({});e.provide("shippingComponentUserData",ue);var me=e.ref(!1),fe=function(e){_.value=!0,E.value=e,document.querySelector("html").classList.add("is-checkout-thanks"),ke()};e.watch((function(){return j}),(function(e){if(e&&e.value.phone){var t=e.value.phone;t&&t.match(/^(\+38|38)/)&&(j.value.phone=t.replace(/^(\+38|38)/,""))}}),{deep:!0});var ge=he((function(){var t="function"==typeof de.value?de.value():null;return I.value&&!I.value.component&&(t=!0),ce.isValid(j.value).then((function(o){if(o)if(W.value)if(!I.value.component||D.value[I.value.code]&&D.value[I.value.code].isValid)if(t)if(J.value)if(U.value){var n,a=D.value[I.value.code]?JSON.parse(JSON.stringify(D.value[I.value.code])):{};delete a.isValid;var c=JSON.parse(JSON.stringify(ue.value));if(document.cookie)document.cookie.split(";").forEach((function(e){var t=e.split("=");"_ga"===t[0].trim()&&(n=t[1].split(".")[2]+"."+t[1].split(".")[3])}));var d={checkout:!0,user:{last_name:j.value.last_name,middle_name:j.value.middle_name,name:j.value.name,phone:j.value.phone,email:j.value.email,user_type:j.value.user_type,registration_number:j.value.registration_number,company_name:j.value.company_name},shipping:{id:W.value,data:a,user:c},payment:{id:J.value},comment:R.value,dontcall:z.value,promoCode:L.value,loyalty:H.value,clientId:n};s.value=!0,$http.post(window.location.href,d).then((function(t){if(t.data&&t.data.error&&t.data.message)l(t.data.message,{type:"error"});else{var o=[];u.value.forEach((function(e){var t={item_name:e.name,item_id:e.attributes.code,price:e.price,quantity:e.quantity};e.attributes.brand&&(t.item_brand=e.attributes.brand),e.attributes.property&&(t.item_variant=e.attributes.property),e.attributes.categoryFull&&(-1!==e.attributes.categoryFull.indexOf("/")?e.attributes.categoryFull.split("/").forEach((function(e,o){t["item_category"+(o?o+1:"")]=e.trim()})):t.item_category=e.attributes.categoryFull),e.attributes.index&&(t.index=e.attributes.index),e.attributes.itemListName&&(t.item_list_name=e.attributes.itemListName),o.push(t)}));var n={payment_type:G.value.name,shipping_tier:I.value.name,ecommerce:{transaction_id:t.data.order.id,affiliation:"main",value:parseFloat(h.value),shipping:0,currency:"UAH",items:o},event:"purchase"};j.value.user_type&&(n.user_type=__("auth.registration.form.user_type_"+j.value.user_type)),L.value&&(n.ecommerce.coupon=L.value),r.isTrackAfterSuccessOnlinePurchase&&(t.data.redirect||t.data.payment_widget_data&&window.Wayforpay)?localStorage.setItem("ecommerce",JSON.stringify(n)):($env.debug.ecommerce&&console.log(n),!$env.debug.ecommerce&&window.dataLayer&&(window.dataLayer.push({ecommerce:null}),window.dataLayer.push(n))),t.data.redirect&&(b.value={url:t.data.redirect.url,data:t.data.redirect.data},e.nextTick((function(){setTimeout((function(){k.value.submit()}),400)}))),t.data.payment_widget_data&&window.Wayforpay?function(e,t){var o=new Wayforpay;window.addEventListener("message",(function(e){"WfpWidgetEventClose"==e.data||"WfpWidgetEventDeclined"==e.data||e.data,"WfpWidgetEventApproved"==e.data&&(fe(t),me.value=!0,i.dispatch("cart/clear",{finally:function(){}}))})),o.run(e)}(JSON.parse(t.data.payment_widget_data),t.data.order):fe(t.data.order)}})).catch((function(e){l(__("shop.order.error"),{type:"error"}),console.error(e)})).finally((function(){s.value=!1}))}else l(__("shop.order.validate_consent"),{type:"error"});else l(__("shop.order.validate_payment"),{type:"error"});else l(__("shop.order.validate_shipping1")+": «"+I.value.name+"»",{type:"error"});else l(__("shop.order.validate_shipping1")+": «"+I.value.name+"»",{type:"error"});else l(__("shop.order.validate_shipping"),{type:"error"});else w.value="new",S.value.click(),l(__("shop.order.validate_user"),{type:"error"})})),pe()})),ke=function(){i.commit("checkout/reset"),i.commit("cart/clear")};return e.onMounted((function(){!d.value&&r.redirectOnEmpty&&(window.location.href=r.redirectOnEmpty);var e=[];if(u.value.forEach((function(t){var o={item_name:t.name,item_id:t.attributes.code,price:parseFloat(t.attributes.price),quantity:t.quantity};t.attributes.brand&&(o.item_brand=t.attributes.brand),t.attributes.property&&(o.item_variant=t.attributes.property),t.attributes.categoryFull&&(-1!==t.attributes.categoryFull.indexOf("/")?t.attributes.categoryFull.split("/").forEach((function(e,t){o["item_category"+(t?t+1:"")]=e.trim()})):o.item_category=t.attributes.categoryFull),t.attributes.index&&(o.index=t.attributes.index),t.attributes.itemListName&&(o.item_list_name=t.attributes.itemListName),e.push(o)})),e.length){var t={ecommerce:{currency:"UAH",items:e,value:parseFloat(h.value)},event:"begin_checkout"};$env.debug.ecommerce&&console.log(t),!$env.debug.ecommerce&&window.dataLayer&&(window.dataLayer.push({ecommerce:null}),window.dataLayer.push(t))}})),{auth:f,userType:w,facebook:function(){window.location.href=$ziggy("auth.login.social",{provider:"facebook"})},google:function(){window.location.href=$ziggy("auth.login.social",{provider:"google"})},loginCallback:function(){w.value="new"},quantity:d,items:u,loading:s,pluralize:t.pluralize,discount:oe,total:h,shipping:W,shippingPrice:K,payment:J,fee:Q,userValidation:ce,userSchema:ae,userSubmitButton:S,checkout:ge,ifCheckoutReady:g,validate:se,shippingTypesRestricted:X,paymentMethodsRestricted:Y,toggleShippingRadio:function(e){W.value===e&&(W.value=null)},togglePaymentRadio:function(e){J.value===e&&(J.value=null)},shippingSelected:I,paymentSelected:G,shippingComponentData:D,shippingStoreData:function(e,t,o){var n=JSON.parse(JSON.stringify(D.value));t.isValid=o,n[e]=t,i.commit("checkout/shippingData",n)},resertStore:ke,user:j,dontcall:z,comment:R,isCommentToggled:T,commentMaxLength:1e3,userCheckout:y,thanks:_,order:E,redirect:b,redirectForm:k,home:function(){window.location.href=$env.locale.url?$env.locale.url:"/"},isPromoCodeToggled:x,applyPromoCode:function(){L.value&&(P.value=!0,$http.post(window.location.href,{promoCodeApply:L.value,email:j.value.email,total:h.value}).then((function(e){M.value=e.data})).catch((function(e){e.response&&e.response.data.length&&(e.response.data.forEach((function(e){var t={component:ye,props:{message:__("shop.order.promo.error_"+e.error,{number:F.appContext.config.globalProperties.$filters.price(e.number)})}};l(t,{type:"error"}),"not_found"==e.error&&(L.value="")})),M.value=null)})).finally((function(){P.value=!1})))},promoCode:L,isPromoLoading:P,promoCodeApplied:M,resetPromoCode:function(){L.value="",M.value=null},calculateWithPromoCodeDiscount:function(){var e=h.value+Q.value+K.value;return M.value&&"percent"==M.value.type?Math.round(e-e*M.value.amount/100):M.value&&"discount"==M.value.type?Math.max(0,e-M.value.amount):e},consent:V,shippingComponent:N,slots:a,isPayed:me,loyalty:O,loyaltyUse:H,loyaltyUseApplied:q,resetLoyaltyUse:function(){H.value=0,q.value=!1},applyLoyaltyUse:function(){H.value&&(q.value=!0)},readableUserLoyaltyPoints:$}}}),ke={class:"cart checkout"},_e=["action"],Ee=["name","value"],Ve={key:1,class:"items-wrapper"},Ne={class:"checkout-title"},be={class:"columns"},Be={class:"column checkout-blocks-wrapper"},Ce={class:"checkout-block is-cart"},we={class:"wrapper"},Se={class:"title-row"},De={class:"items-title"},Te=["textContent"],xe=["innerHTML"],Le=["onClick"],Me=e.createElementVNode("svg",null,[e.createElementVNode("use",{"xlink:href":"#cart-edit"})],-1),Pe={class:"checkout-block is-user auth-user"},Fe={class:"wrapper"},Oe={class:"items-title"},He={key:0,class:"user-tabs"},qe={class:"columns"},$e={class:"column user-form"},Ue={type:"submit",ref:"userSubmitButton",class:"is-hidden"},ze={key:0,class:"column user-login user-form"},Re={key:1,class:"column"},Ae={key:0,class:"social-auth"},je={class:"socials"},We={class:"description"},Je={class:"buttons"},Ie=[e.createElementVNode("svg",{class:"icon fb-btn"},[e.createElementVNode("use",{"xlink:href":"#logo-facebook-icon"})],-1),e.createElementVNode("span",null,"Facebook",-1)],Ge=[e.createElementVNode("svg",{class:"icon google-btn"},[e.createElementVNode("use",{"xlink:href":"#logo-google-icon"})],-1),e.createElementVNode("span",null,"Google",-1)],Ke={class:"checkout-block is-shipping"},Qe={class:"wrapper shipping-type-block"},Xe={class:"rows"},Ye={class:"item"},Ze={class:"row"},et={class:"info"},tt={class:"items-title mb-1"},ot={key:0,class:"value"},nt={class:"next-dates"},rt={class:"row"},at={class:"info"},lt=["value","onClick"],it=["src"],ct={key:1,class:"icon"},st=[e.createElementVNode("use",{"xlink:href":"#shipping"},null,-1)],dt={key:0,class:"description"},ut={class:"value"},mt={key:0,class:"green"},pt=["innerHTML"],vt={key:0},ht={key:0,class:"checkout-block is-payment"},ft={class:"wrapper payment-method-block"},yt={class:"rows"},gt={class:"item"},kt={class:"row"},_t={class:"info"},Et={class:"items-title mb-1"},Vt={class:"info"},Nt=["value","onClick"],bt={key:0,class:"description"},Bt={key:0,class:"value"},Ct=["innerHTML"],wt={class:"column is-4"},St={class:"checkout-block summary"},Dt={key:0,class:"inner payment-method-block"},Tt={class:"rows"},xt={class:"item"},Lt={class:"row"},Mt={class:"info"},Pt={class:"items-title mb-1"},Ft={class:"info"},Ot=["value","onClick"],Ht={key:0,class:"description"},qt={key:0,class:"value"},$t=["innerHTML"],Ut=e.createElementVNode("div",{class:"divider is-hidden"},null,-1),zt={class:"inner"},Rt={class:"items-title"},At={class:"rows"},jt={class:"row products"},Wt={class:"info"},Jt=["textContent"],It={class:"value"},Gt=["innerHTML"],Kt={key:0,class:"row discount"},Qt={class:"info"},Xt={class:"value"},Yt=["innerHTML"],Zt={key:1,class:"row fee"},eo={class:"info"},to={class:"value"},oo=["innerHTML"],no={key:2,class:"row shipping"},ro={class:"info"},ao={class:"value"},lo=["innerHTML"],io={key:1,class:"green"},co={key:3,class:"row promo"},so={class:"info"},uo=e.createElementVNode("br",null,null,-1),mo={class:"green"},po={class:"value"},vo=["innerHTML"],ho={class:"row price"},fo={class:"info"},yo={class:"value orange"},go=["innerHTML"],ko={key:0,class:"user-loyalty"},_o={class:"notice"},Eo={class:"user-form is-loyalty-use"},Vo={class:"control"},No=["disabled"],bo=["disabled"],Bo={class:"checkbox-wrapper nocall"},Co={key:1,class:"consent"},wo={class:"checkbox-wrapper"},So=["innerHTML"],Do=e.createElementVNode("svg",null,[e.createElementVNode("use",{"xlink:href":"#arrow-down"})],-1),To={class:"user-form is-promo-code"},xo={class:"control"},Lo=["disabled"],Mo={class:"label",for:"promo-code-applied"},Po=["disabled"],Fo=e.createElementVNode("svg",null,[e.createElementVNode("use",{"xlink:href":"#arrow-down"})],-1),Oo={class:"user-form"},Ho={key:0,class:"chars-count"},qo={key:2,class:"checkout-block thanks"},$o={class:"title"},Uo={class:"columns"},zo={key:0,class:"column is-6"},Ro={class:"subtitle"},Ao={key:1,class:"column is-6"},jo={class:"column is-6"},Wo={key:0,class:"info-wrapper"},Jo={class:"title"},Io={class:"columns"},Go=["innerHTML"],Ko=["innerHTML"],Qo={key:1,class:"info-wrapper"},Xo={class:"title"},Yo={class:"columns"},Zo=["innerHTML"],en=["innerHTML"],tn={key:2,class:"info-wrapper"},on={class:"title"},nn={class:"columns"},rn={class:"column is-6"},an=["innerHTML"],ln={key:3,class:"checkout-block empty"},cn={class:"title"},sn={class:"message"},dn=["href"],un=e.createElementVNode("br",null,null,-1),mn=["href"];ge.render=function(t,o,n,r,a,l){var i=e.resolveComponent("checkout-item"),c=e.resolveComponent("cart-trigger"),s=e.resolveComponent("SchemaForm"),d=e.resolveComponent("login");return e.openBlock(),e.createElementBlock("div",ke,[t.redirect.url?(e.openBlock(),e.createElementBlock("form",{key:0,ref:"redirectForm",action:t.redirect.url,style:{position:"absolute",left:"-1000px",top:"-1000px"},method:"post"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.redirect.data,(function(t,o,n){return e.openBlock(),e.createElementBlock("input",{type:"hidden",name:o,value:t,key:n},null,8,Ee)})),128))],8,_e)):e.createCommentVNode("v-if",!0),t.items.length&&!t.thanks?(e.openBlock(),e.createElementBlock("div",Ve,[e.createElementVNode("div",Ne,e.toDisplayString(t.__("shop.order.checkout_title")),1),e.createElementVNode("div",be,[e.createElementVNode("div",Be,[e.renderSlot(t.$slots,"header"),e.createElementVNode("div",Ce,[e.createCommentVNode("items"),e.createElementVNode("div",we,[e.createElementVNode("div",Se,[e.createElementVNode("div",De,[e.createTextVNode(e.toDisplayString(t.__("shop.order.your_order"))+" ",1),e.createElementVNode("span",{class:"ml-3",textContent:e.toDisplayString(t.pluralize(t.quantity,t.__("shop.pluralize.products")))},null,8,Te),e.createTextVNode(" "),e.createElementVNode("span",{innerHTML:t.__("shop.cart.bysum")+" "+t.$filters.price(t.total)},null,8,xe)])]),e.renderSlot(t.$slots,"cart",{items:t.items},(function(){return[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(function(t){return e.openBlock(),e.createBlock(i,{key:t.id,item:t},null,8,["item"])})),128)),e.createVNode(c,{class:"trigger"},{default:e.withCtx((function(o){return[e.createElementVNode("button",{class:"button",onClick:o.open},[Me,e.createElementVNode("span",null,e.toDisplayString(t.__("shop.order.edit")),1)],8,Le)]})),_:1})]})),e.renderSlot(t.$slots,"cart-footer",{total:t.total})])]),e.createElementVNode("div",Pe,[e.createElementVNode("div",Fe,[e.createElementVNode("div",Oe,e.toDisplayString(t.__("shop.order.contact_title")),1),!t.auth&&t.isLogin?(e.openBlock(),e.createElementBlock("div",He,[e.createElementVNode("label",null,[e.withDirectives(e.createElementVNode("input",{type:"radio",class:"radio","onUpdate:modelValue":o[0]||(o[0]=function(e){return t.userType=e}),value:"new"},null,512),[[e.vModelRadio,t.userType]]),e.createTextVNode(e.toDisplayString(t.__("shop.order.auth_new")),1)]),e.createElementVNode("label",null,[e.withDirectives(e.createElementVNode("input",{type:"radio",class:"radio","onUpdate:modelValue":o[1]||(o[1]=function(e){return t.userType=e}),value:"login"},null,512),[[e.vModelRadio,t.userType]]),e.createTextVNode(e.toDisplayString(t.__("shop.order.auth_old")),1)])])):e.createCommentVNode("v-if",!0),e.createElementVNode("div",qe,[e.withDirectives(e.createElementVNode("div",$e,[e.createVNode(s,{schemaRowClasses:"field",schema:t.userSchema,"validation-schema":t.userValidation,preventModelCleanupOnSchemaChange:!0},{afterForm:e.withCtx((function(){return[e.createElementVNode("button",Ue,null,512)]})),_:1},8,["schema","validation-schema"])],512),[[e.vShow,"new"==t.userType]]),t.isLogin?e.withDirectives((e.openBlock(),e.createElementBlock("div",ze,[e.createVNode(d,{"login-callback":t.loginCallback},null,8,["login-callback"])],512)),[[e.vShow,"login"==t.userType]]):e.createCommentVNode("v-if",!0),t.isLogin?(e.openBlock(),e.createElementBlock("div",Re,[t.auth?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("div",Ae,[e.createElementVNode("div",je,[e.createElementVNode("div",We,e.toDisplayString(t.__("shop.order.auth_social")),1),e.createElementVNode("div",Je,[e.createElementVNode("a",{class:"button",onClick:o[2]||(o[2]=function(){return t.facebook&&t.facebook.apply(t,arguments)})},Ie),e.createElementVNode("a",{class:"button",onClick:o[3]||(o[3]=function(){return t.google&&t.google.apply(t,arguments)})},Ge)])])]))])):e.createCommentVNode("v-if",!0)])])]),e.createElementVNode("div",Ke,[e.createElementVNode("div",Qe,[e.createElementVNode("div",Xe,[e.createElementVNode("div",Ye,[e.createElementVNode("div",Ze,[e.createElementVNode("div",et,[e.createElementVNode("div",tt,e.toDisplayString(t.__("shop.order.shipping")),1)]),t.shippingSelected&&t.shippingSelected.nextDates?(e.openBlock(),e.createElementBlock("div",ot,[e.createElementVNode("div",nt,"на "+e.toDisplayString(t.shippingSelected.nextDates),1)])):e.createCommentVNode("v-if",!0),e.createCommentVNode("v-if",!0)])]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.shippingTypesRestricted,(function(n){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["item",{"is-disabled":n.restricted}]),key:n.id},[e.createElementVNode("div",rt,[e.createElementVNode("div",at,[e.createElementVNode("label",null,[e.withDirectives(e.createElementVNode("input",{type:"radio",class:"radio","onUpdate:modelValue":o[5]||(o[5]=function(e){return t.shipping=e}),value:n.id,onClick:function(e){return t.toggleShippingRadio(n.id)}},null,8,lt),[[e.vModelRadio,t.shipping]]),n.icon?(e.openBlock(),e.createElementBlock("img",{key:0,class:"icon",src:n.icon},null,8,it)):(e.openBlock(),e.createElementBlock("svg",ct,st)),e.createElementVNode("span",null,e.toDisplayString(n.name),1)]),n.description?(e.openBlock(),e.createElementBlock("div",dt,e.toDisplayString(n.description),1)):e.createCommentVNode("v-if",!0)]),e.createElementVNode("div",ut,[!n.amount&&n.price_label?(e.openBlock(),e.createElementBlock("span",mt,e.toDisplayString(n.price_label),1)):(e.openBlock(),e.createElementBlock("span",{key:1,innerHTML:"percent"==n.type?n.amount+"%":t.$filters.price(n.amount)},null,8,pt))])]),t.slots.shippingFooter?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("div",vt,[n.component&&n.id==t.shipping?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.component),{key:0,commit:t.shippingStoreData,data:t.shippingComponentData,item:n},null,8,["commit","data","item"])):e.createCommentVNode("v-if",!0)]))],2)})),128))]),e.renderSlot(t.$slots,"shipping-footer",{shippingTypesRestricted:t.shippingTypesRestricted,shipping:t.shipping,shippingStoreData:t.shippingStoreData,shippingComponentData:t.shippingComponentData})])]),t.isPaymentMethodOverSummary?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("div",ht,[e.createElementVNode("div",ft,[e.createElementVNode("div",yt,[e.createElementVNode("div",gt,[e.createElementVNode("div",kt,[e.createElementVNode("div",_t,[e.createElementVNode("div",Et,e.toDisplayString(t.__("shop.order.payment")),1)]),e.createCommentVNode("v-if",!0)])]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.paymentMethodsRestricted,(function(n){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["item",{"is-disabled":n.restricted}]),key:n.id},[e.createElementVNode("div",{class:e.normalizeClass(["row no-icon","is-"+n.code])},[e.createElementVNode("div",Vt,[e.createElementVNode("label",null,[e.withDirectives(e.createElementVNode("input",{type:"radio",class:"radio","onUpdate:modelValue":o[7]||(o[7]=function(e){return t.payment=e}),value:n.id,onClick:function(e){return t.togglePaymentRadio(n.id)}},null,8,Nt),[[e.vModelRadio,t.payment]]),e.createElementVNode("span",null,e.toDisplayString(n.name),1)]),n.description?(e.openBlock(),e.createElementBlock("div",bt,e.toDisplayString(n.description),1)):e.createCommentVNode("v-if",!0)]),n.amount?(e.openBlock(),e.createElementBlock("div",Bt,[e.createElementVNode("span",{innerHTML:"percent"==n.type?n.amount+"%":t.$filters.price(n.amount)},null,8,Ct)])):e.createCommentVNode("v-if",!0)],2)],2)})),128))])])]))]),e.createElementVNode("div",wt,[e.createElementVNode("div",St,[t.isPaymentMethodOverSummary?(e.openBlock(),e.createElementBlock("div",Dt,[e.createElementVNode("div",Tt,[e.createElementVNode("div",xt,[e.createElementVNode("div",Lt,[e.createElementVNode("div",Mt,[e.createElementVNode("div",Pt,e.toDisplayString(t.__("shop.order.payment")),1)]),e.createCommentVNode("v-if",!0)])]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.paymentMethodsRestricted,(function(n){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["item",{"is-disabled":n.restricted}]),key:n.id},[e.createElementVNode("div",{class:e.normalizeClass(["row no-icon","is-"+n.code])},[e.createElementVNode("div",Ft,[e.createElementVNode("label",null,[e.withDirectives(e.createElementVNode("input",{type:"radio",class:"radio","onUpdate:modelValue":o[9]||(o[9]=function(e){return t.payment=e}),value:n.id,onClick:function(e){return t.togglePaymentRadio(n.id)}},null,8,Ot),[[e.vModelRadio,t.payment]]),e.createElementVNode("span",null,e.toDisplayString(n.name),1)]),n.description?(e.openBlock(),e.createElementBlock("div",Ht,e.toDisplayString(n.description),1)):e.createCommentVNode("v-if",!0)]),n.amount?(e.openBlock(),e.createElementBlock("div",qt,[e.createElementVNode("span",{innerHTML:"percent"==n.type?n.amount+"%":t.$filters.price(n.amount)},null,8,$t)])):e.createCommentVNode("v-if",!0)],2)],2)})),128))])])):e.createCommentVNode("v-if",!0),Ut,e.createElementVNode("div",zt,[e.createElementVNode("div",Rt,e.toDisplayString(t.__("shop.order.total")),1),e.createElementVNode("div",At,[e.createElementVNode("div",jt,[e.createElementVNode("div",Wt,[e.createElementVNode("span",{textContent:e.toDisplayString(t.pluralize(t.quantity,t.__("shop.pluralize.products")))},null,8,Jt),e.createTextVNode(" "+e.toDisplayString(t.__("shop.cart.bysum")),1)]),e.createElementVNode("div",It,[e.createElementVNode("span",{innerHTML:t.$filters.price(t.total)},null,8,Gt)])]),t.discount?(e.openBlock(),e.createElementBlock("div",Kt,[e.createElementVNode("div",Qt,e.toDisplayString(t.__("shop.order.discount")),1),e.createElementVNode("div",Xt,[e.createElementVNode("span",{innerHTML:t.$filters.price(t.discount)},null,8,Yt)])])):e.createCommentVNode("v-if",!0),t.fee>0?(e.openBlock(),e.createElementBlock("div",Zt,[e.createElementVNode("div",eo,e.toDisplayString(t.__("shop.order.fee")),1),e.createElementVNode("div",to,[e.createElementVNode("span",{innerHTML:t.$filters.price(t.fee)},null,8,oo)]),e.renderSlot(t.$slots,"fee")])):e.createCommentVNode("v-if",!0),t.shipping?(e.openBlock(),e.createElementBlock("div",no,[e.createElementVNode("div",ro,e.toDisplayString(t.__("shop.order.shipping_price")),1),e.createElementVNode("div",ao,[t.shippingPrice>0?(e.openBlock(),e.createElementBlock("span",{key:0,innerHTML:t.$filters.price(t.shippingPrice)},null,8,lo)):t.shippingSelected&&t.shippingSelected.price_label?(e.openBlock(),e.createElementBlock("span",io,e.toDisplayString(t.shippingSelected.price_label),1)):e.createCommentVNode("v-if",!0)])])):e.createCommentVNode("v-if",!0),t.promoCodeApplied?(e.openBlock(),e.createElementBlock("div",co,[e.createElementVNode("div",so,[e.createTextVNode(e.toDisplayString(t.__("shop.order.promo_code")),1),uo,e.createElementVNode("span",mo,e.toDisplayString(t.promoCode),1)]),e.createElementVNode("div",po,[e.createElementVNode("span",{innerHTML:"percent"==t.promoCodeApplied.type?t.promoCodeApplied.amount+"%":t.$filters.price(t.promoCodeApplied.amount)},null,8,vo)])])):e.createCommentVNode("v-if",!0),e.createElementVNode("div",ho,[e.createElementVNode("div",fo,e.toDisplayString(t.__("shop.order.price")),1),e.createElementVNode("div",yo,[e.createElementVNode("span",{innerHTML:t.$filters.price(t.calculateWithPromoCodeDiscount())},null,8,go)])])]),e.renderSlot(t.$slots,"loyalty",{loyalty:t.loyalty}),t.userCheckout.loyalty_points>0?(e.openBlock(),e.createElementBlock("div",ko,[e.createElementVNode("div",_o,e.toDisplayString(t.pluralize(t.readableUserLoyaltyPoints,t.__("shop.pluralize.points")))+" в наявності",1),e.createElementVNode("div",Eo,[e.createElementVNode("div",Vo,[e.withDirectives(e.createElementVNode("input",{type:"number",class:"input",placeholder:"Сума бонусів","onUpdate:modelValue":o[10]||(o[10]=function(e){return t.loyaltyUse=e}),disabled:t.loyaltyUseApplied},null,8,No),[[e.vModelText,t.loyaltyUse]])]),t.loyaltyUseApplied?(e.openBlock(),e.createElementBlock("button",{key:1,class:"button is-reset",onClick:o[12]||(o[12]=function(){return t.resetLoyaltyUse&&t.resetLoyaltyUse.apply(t,arguments)})},"Відмінити")):(e.openBlock(),e.createElementBlock("button",{key:0,class:"button",onClick:o[11]||(o[11]=function(){return t.applyLoyaltyUse&&t.applyLoyaltyUse.apply(t,arguments)}),disabled:!t.loyaltyUse||t.loyaltyUse>t.userCheckout.loyalty_points},"Використати",8,bo))])])):e.createCommentVNode("v-if",!0),e.createElementVNode("div",Bo,[e.createElementVNode("label",null,[e.withDirectives(e.createElementVNode("input",{type:"checkbox",class:"checkbox","onUpdate:modelValue":o[13]||(o[13]=function(e){return t.dontcall=e})},null,512),[[e.vModelCheckbox,t.dontcall]]),e.createTextVNode(e.toDisplayString(t.__("shop.order.nocall")),1)])]),e.createElementVNode("button",{class:e.normalizeClass(["button submit",{red:!t.ifCheckoutReady,"is-loading":t.loading}]),onClick:o[14]||(o[14]=function(){return t.checkout&&t.checkout.apply(t,arguments)})},e.toDisplayString(t.__("shop.order.action")),3),e.renderSlot(t.$slots,"submit",{total:t.total}),t.isConsent?(e.openBlock(),e.createElementBlock("div",Co,[e.createElementVNode("div",wo,[e.createElementVNode("label",null,[e.withDirectives(e.createElementVNode("input",{type:"checkbox",class:"checkbox","onUpdate:modelValue":o[15]||(o[15]=function(e){return t.consent=e})},null,512),[[e.vModelCheckbox,t.consent]]),e.createElementVNode("div",{class:"label",innerHTML:t.__("shop.order.consent")},null,8,So)])])])):e.createCommentVNode("v-if",!0),t.isPromoCode?(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass(["comment-wrapper is-promo-code",{"is-open":t.isPromoCodeToggled}])},[e.createElementVNode("div",{class:"toggler",onClick:o[16]||(o[16]=function(e){return t.isPromoCodeToggled=!t.isPromoCodeToggled})},[e.createElementVNode("span",null,e.toDisplayString(t.__("shop.order.promo_code")),1),Do]),e.createElementVNode("div",To,[e.createElementVNode("div",xo,[e.withDirectives(e.createElementVNode("input",{type:"text",class:"input",placeholder:" ","onUpdate:modelValue":o[17]||(o[17]=function(e){return t.promoCode=e}),disabled:t.promoCodeApplied,id:"promo-code-applied"},null,8,Lo),[[e.vModelText,t.promoCode]]),e.createElementVNode("label",Mo,e.toDisplayString(t.__("shop.order.promo.placeholder")),1)]),t.promoCodeApplied?(e.openBlock(),e.createElementBlock("button",{key:1,class:"button",onClick:o[19]||(o[19]=function(){return t.resetPromoCode&&t.resetPromoCode.apply(t,arguments)})},e.toDisplayString(t.__("shop.order.promo.reset")),1)):(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(["button",{"is-loading":t.isPromoLoading}]),onClick:o[18]||(o[18]=function(){return t.applyPromoCode&&t.applyPromoCode.apply(t,arguments)}),disabled:!t.promoCode},e.toDisplayString(t.__("shop.order.promo.apply")),11,Po))])],2)):e.createCommentVNode("v-if",!0),e.createElementVNode("div",{class:e.normalizeClass(["comment-wrapper",{"is-open":t.isCommentToggled}])},[e.createElementVNode("div",{class:"toggler",onClick:o[20]||(o[20]=function(e){return t.isCommentToggled=!t.isCommentToggled})},[e.createElementVNode("span",null,e.toDisplayString(t.__("shop.order.comment")),1),Fo]),e.createElementVNode("div",Oo,[e.withDirectives(e.createElementVNode("textarea",{class:"textarea","onUpdate:modelValue":o[21]||(o[21]=function(e){return t.comment=e})},null,512),[[e.vModelText,t.comment]]),t.comment.length?(e.openBlock(),e.createElementBlock("div",Ho,e.toDisplayString(t.commentMaxLength-t.comment.length),1)):e.createCommentVNode("v-if",!0)])],2)])])])])])):t.thanks&&t.order?(e.openBlock(),e.createElementBlock("div",qo,[e.renderSlot(t.$slots,"thanks",{order:t.order,redirect:t.redirect,redirectForm:t.redirectForm,home:t.home,auth:t.auth,filters:t.$filters},(function(){return[e.createElementVNode("div",$o,[e.createTextVNode(e.toDisplayString(t.__("shop.order.order"))+" ",1),e.createElementVNode("span",null,"№"+e.toDisplayString(t.order.id),1),e.createTextVNode(" "+e.toDisplayString(t.isPayed?t.__("shop.order.payed"):t.__("shop.order.success")),1)]),e.createElementVNode("div",Uo,[t.redirect.url?(e.openBlock(),e.createElementBlock("div",zo,[e.createElementVNode("div",Ro,e.toDisplayString(t.__("shop.order.pay_online")),1),e.createElementVNode("button",{class:"button is-payment",onClick:o[22]||(o[22]=function(e){return t.redirectForm.submit()})},e.toDisplayString(t.__("shop.order.pay_online_go")),1)])):(e.openBlock(),e.createElementBlock("div",Ao,[e.createElementVNode("button",{class:"button is-orange",onClick:o[23]||(o[23]=function(){return t.home&&t.home.apply(t,arguments)})},e.toDisplayString(t.__("shop.cart.continue")),1)])),e.createElementVNode("div",jo,[t.order.shipping[0]?(e.openBlock(),e.createElementBlock("div",Wo,[e.createElementVNode("div",Jo,e.toDisplayString(t.__("shop.order.shipping")),1),e.createElementVNode("div",Io,[t.order.shipping[0]?(e.openBlock(),e.createElementBlock("div",{key:0,class:"column is-6",innerHTML:t.order.shipping[0]},null,8,Go)):e.createCommentVNode("v-if",!0),t.order.shipping[1]?(e.openBlock(),e.createElementBlock("div",{key:1,class:"column is-6",innerHTML:t.order.shipping[1]},null,8,Ko)):e.createCommentVNode("v-if",!0)])])):e.createCommentVNode("v-if",!0),t.order.payment[0]?(e.openBlock(),e.createElementBlock("div",Qo,[e.createElementVNode("div",Xo,e.toDisplayString(t.__("shop.order.payment")),1),e.createElementVNode("div",Yo,[t.order.payment[0]?(e.openBlock(),e.createElementBlock("div",{key:0,class:"column is-6",innerHTML:t.order.payment[0]},null,8,Zo)):e.createCommentVNode("v-if",!0),t.order.payment[1]?(e.openBlock(),e.createElementBlock("div",{key:1,class:"column is-6",innerHTML:t.order.payment[1]},null,8,en)):e.createCommentVNode("v-if",!0)])])):e.createCommentVNode("v-if",!0),t.order.promoCode?(e.openBlock(),e.createElementBlock("div",tn,[e.createElementVNode("div",on,e.toDisplayString(t.__("shop.order.promo_code")),1),e.createElementVNode("div",nn,[e.createElementVNode("div",rn,[e.createElementVNode("span",{innerHTML:t.order.promoCode,class:"green"},null,8,an)])])])):e.createCommentVNode("v-if",!0)])])]}))])):t.redirectOnEmpty?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("div",ln,[e.createElementVNode("div",cn,e.toDisplayString(t.__("shop.cart.no_no")),1),e.createElementVNode("div",sn,[e.createTextVNode(e.toDisplayString(t.__("shop.cart.no_prop"))+" ",1),e.createElementVNode("a",{href:t.$env.locale.url?t.$env.locale.url:"/"},e.toDisplayString(t.__("shop.cart.no_home")),9,dn),e.createTextVNode(", "),un,e.createTextVNode(e.toDisplayString(t.__("shop.cart.no_search")),1)]),e.createElementVNode("a",{class:"button continue",href:t.$env.locale.url?t.$env.locale.url:"/"},e.toDisplayString(t.__("shop.cart.continue")),9,mn)]))])},module.exports=ge;
|
|
2
2
|
//# sourceMappingURL=Checkout.js.map
|