@perevorot/shop 2.0.90 → 2.0.92
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 +1 -1
- package/dist/api.js.map +1 -1
- package/dist/components/shop/compare/Compare.js +1 -1
- package/dist/components/shop/compare/Compare.js.map +1 -1
- package/dist/components/shop/compare/CompareAdd.js +1 -1
- package/dist/components/shop/compare/CompareAdd.js.map +1 -1
- package/dist/components/shop/compare/CompareDeleteAll.js +1 -1
- package/dist/components/shop/compare/CompareDeleteAll.js.map +1 -1
- package/dist/components/shop/compare/ComparsionModal.js +2 -0
- package/dist/components/shop/compare/ComparsionModal.js.map +1 -0
- package/dist/components/shop/compare/SuccessMessage.js +1 -1
- package/dist/components/shop/compare/SuccessMessage.js.map +1 -1
- package/dist/store.js +1 -1
- package/dist/store.js.map +1 -1
- package/package.json +1 -1
package/dist/api.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var t={auth:{me:function(){return $http.post($ziggy("auth.me"))},login:function(t){return $http.post($ziggy("auth.login"),t)},logout:function(){return $http.post($ziggy("auth.logout"))},reset:function(t){return $http.post($ziggy("auth.password.email"),t)},resetSms:function(t){return $http.post($ziggy("auth.password.sms"),t)},passwordUpdate:function(t){return $http.post($ziggy("auth.password.update"),t)},registerShort:function(t){return $http.post($ziggy("auth.register.short"),t)},registerFull:function(t){return $http.post($ziggy("auth.register.full"),t)},registerForm:function(){return $http.post($ziggy("auth.register.form"))},update:function(t){return $http.post($ziggy("auth.register.update"),t)}},cart:{items:function(){return $http.post($ziggy("api.cart"),{action:"get"})},add:function(t){return $http.post($ziggy("api.cart"),{action:"add",id:t.id,quantity:t.quantity,options:!!t.options&&t.options})},options:function(t){return $http.post($ziggy("api.cart"),{action:"options",id:t.id,options:t.options})},addBundle:function(t){return $http.post($ziggy("api.cart"),{action:"addBundle",id:t.id,second:t.second,third:t.third})},remove:function(t){return $http.post($ziggy("api.cart"),{action:"remove",id:t})},clear:function(){return $http.post($ziggy("api.cart"),{action:"clear"})},quantity:function(t){return $http.post($ziggy("api.cart"),{action:"quantity",id:t.id,exact:t.exact})}},compare:{items:function(){return $http.post($ziggy("api.compare"),{action:"get"})},category:function(t){return $http.post($ziggy("api.compare"),{action:"category",slug:t})},toggle:function(t){return $http.post($ziggy("api.compare"),{action:"toggle",id:t})},delete:function(t){return $http.post($ziggy("api.compare"),{action:"delete",id:t})}},shop:{search:function(t){return $http.post($ziggy("api.search"),{term:t})}},wishlist:{items:function(){return $http.post($ziggy("api.wishlist"),{action:"get"})},toggle:function(t){return $http.post($ziggy("api.wishlist"),{action:"toggle",id:t})}}};module.exports=t;
|
|
1
|
+
"use strict";var t={auth:{me:function(){return $http.post($ziggy("auth.me"))},login:function(t){return $http.post($ziggy("auth.login"),t)},logout:function(){return $http.post($ziggy("auth.logout"))},reset:function(t){return $http.post($ziggy("auth.password.email"),t)},resetSms:function(t){return $http.post($ziggy("auth.password.sms"),t)},passwordUpdate:function(t){return $http.post($ziggy("auth.password.update"),t)},registerShort:function(t){return $http.post($ziggy("auth.register.short"),t)},registerFull:function(t){return $http.post($ziggy("auth.register.full"),t)},registerForm:function(){return $http.post($ziggy("auth.register.form"))},update:function(t){return $http.post($ziggy("auth.register.update"),t)}},cart:{items:function(){return $http.post($ziggy("api.cart"),{action:"get"})},add:function(t){return $http.post($ziggy("api.cart"),{action:"add",id:t.id,quantity:t.quantity,options:!!t.options&&t.options})},options:function(t){return $http.post($ziggy("api.cart"),{action:"options",id:t.id,options:t.options})},addBundle:function(t){return $http.post($ziggy("api.cart"),{action:"addBundle",id:t.id,second:t.second,third:t.third})},remove:function(t){return $http.post($ziggy("api.cart"),{action:"remove",id:t})},clear:function(){return $http.post($ziggy("api.cart"),{action:"clear"})},quantity:function(t){return $http.post($ziggy("api.cart"),{action:"quantity",id:t.id,exact:t.exact})}},compare:{items:function(){return $http.post($ziggy("api.compare"),{action:"get"})},category:function(t){return $http.post($ziggy("api.compare"),{action:"category",slug:t})},toggle:function(t){return $http.post($ziggy("api.compare"),{action:"toggle",id:t})},delete:function(t){return $http.post($ziggy("api.compare"),{action:"delete",id:t})},modal:function(t){return $http.post($ziggy("api.compare"),{action:"modal",id:t})}},shop:{search:function(t){return $http.post($ziggy("api.search"),{term:t})}},wishlist:{items:function(){return $http.post($ziggy("api.wishlist"),{action:"get"})},toggle:function(t){return $http.post($ziggy("api.wishlist"),{action:"toggle",id:t})}}};module.exports=t;
|
|
2
2
|
//# sourceMappingURL=api.js.map
|
package/dist/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sources":["../src/api/modules/auth.js","../src/api/index.js","../src/api/modules/cart.js","../src/api/modules/compare.js","../src/api/modules/shop.js","../src/api/modules/wishlist.js"],"sourcesContent":["export default {\n me() {\n return $http.post($ziggy('auth.me'));\n },\n login(credentials) {\n return $http.post($ziggy('auth.login'), credentials);\n },\n logout() {\n return $http.post($ziggy('auth.logout'));\n },\n reset(credentials) {\n return $http.post($ziggy('auth.password.email'), credentials);\n },\n resetSms(credentials) {\n return $http.post($ziggy('auth.password.sms'), credentials);\n },\n passwordUpdate(credentials) {\n return $http.post($ziggy('auth.password.update'), credentials);\n },\n registerShort(credentials) {\n return $http.post($ziggy('auth.register.short'), credentials);\n },\n registerFull(credentials) {\n return $http.post($ziggy('auth.register.full'), credentials);\n },\n registerForm() {\n return $http.post($ziggy('auth.register.form'));\n },\n update(credentials) {\n return $http.post($ziggy('auth.register.update'), credentials);\n },\n};\n","import auth from './modules/auth';\nimport cart from './modules/cart';\nimport compare from './modules/compare';\nimport shop from './modules/shop';\nimport wishlist from './modules/wishlist';\n\nexport default {\n auth,\n cart,\n compare,\n shop,\n wishlist\n};","export default {\n items() {\n return $http.post($ziggy(\"api.cart\"), {\n action: \"get\",\n });\n },\n\n add(item) {\n return $http.post($ziggy(\"api.cart\"), {\n action: \"add\",\n id: item.id,\n quantity: item.quantity,\n options: item.options ? item.options : false\n });\n },\n\n options(item) {\n return $http.post($ziggy(\"api.cart\"), {\n action: \"options\",\n id: item.id,\n options: item.options\n });\n },\n\n addBundle(item) {\n return $http.post($ziggy(\"api.cart\"), {\n action: \"addBundle\",\n id: item.id,\n second: item.second,\n third: item.third\n });\n },\n\n remove(id) {\n return $http.post($ziggy(\"api.cart\"), {\n action: \"remove\",\n id: id\n });\n },\n\n clear() {\n return $http.post($ziggy(\"api.cart\"), {\n action: \"clear\"\n });\n },\n\n quantity(item) {\n return $http.post($ziggy(\"api.cart\"), {\n action: \"quantity\",\n id: item.id,\n exact: item.exact\n });\n },\n}","export default {\n items() {\n return $http.post($ziggy(
|
|
1
|
+
{"version":3,"file":"api.js","sources":["../src/api/modules/auth.js","../src/api/index.js","../src/api/modules/cart.js","../src/api/modules/compare.js","../src/api/modules/shop.js","../src/api/modules/wishlist.js"],"sourcesContent":["export default {\n me() {\n return $http.post($ziggy('auth.me'));\n },\n login(credentials) {\n return $http.post($ziggy('auth.login'), credentials);\n },\n logout() {\n return $http.post($ziggy('auth.logout'));\n },\n reset(credentials) {\n return $http.post($ziggy('auth.password.email'), credentials);\n },\n resetSms(credentials) {\n return $http.post($ziggy('auth.password.sms'), credentials);\n },\n passwordUpdate(credentials) {\n return $http.post($ziggy('auth.password.update'), credentials);\n },\n registerShort(credentials) {\n return $http.post($ziggy('auth.register.short'), credentials);\n },\n registerFull(credentials) {\n return $http.post($ziggy('auth.register.full'), credentials);\n },\n registerForm() {\n return $http.post($ziggy('auth.register.form'));\n },\n update(credentials) {\n return $http.post($ziggy('auth.register.update'), credentials);\n },\n};\n","import auth from './modules/auth';\nimport cart from './modules/cart';\nimport compare from './modules/compare';\nimport shop from './modules/shop';\nimport wishlist from './modules/wishlist';\n\nexport default {\n auth,\n cart,\n compare,\n shop,\n wishlist\n};","export default {\n items() {\n return $http.post($ziggy(\"api.cart\"), {\n action: \"get\",\n });\n },\n\n add(item) {\n return $http.post($ziggy(\"api.cart\"), {\n action: \"add\",\n id: item.id,\n quantity: item.quantity,\n options: item.options ? item.options : false\n });\n },\n\n options(item) {\n return $http.post($ziggy(\"api.cart\"), {\n action: \"options\",\n id: item.id,\n options: item.options\n });\n },\n\n addBundle(item) {\n return $http.post($ziggy(\"api.cart\"), {\n action: \"addBundle\",\n id: item.id,\n second: item.second,\n third: item.third\n });\n },\n\n remove(id) {\n return $http.post($ziggy(\"api.cart\"), {\n action: \"remove\",\n id: id\n });\n },\n\n clear() {\n return $http.post($ziggy(\"api.cart\"), {\n action: \"clear\"\n });\n },\n\n quantity(item) {\n return $http.post($ziggy(\"api.cart\"), {\n action: \"quantity\",\n id: item.id,\n exact: item.exact\n });\n },\n}","export default {\n items() {\n return $http.post($ziggy('api.compare'), {\n action: 'get',\n });\n },\n\n category(slug) {\n return $http.post($ziggy('api.compare'), {\n action: 'category',\n slug: slug,\n });\n },\n\n toggle(id) {\n return $http.post($ziggy('api.compare'), {\n action: 'toggle',\n id: id,\n });\n },\n\n delete(id) {\n return $http.post($ziggy('api.compare'), {\n action: 'delete',\n id: id,\n });\n },\n modal(id) {\n return $http.post($ziggy('api.compare'), {\n action: 'modal',\n id: id,\n });\n },\n};\n","export default {\n search(term) {\n return $http.post($ziggy(\"api.search\"), {\n term: term,\n });\n },\n}","export default {\n items() {\n return $http.post($ziggy(\"api.wishlist\"), {\n action: \"get\",\n });\n },\n\n toggle(id) {\n return $http.post($ziggy(\"api.wishlist\"), {\n action: \"toggle\",\n id: id\n });\n },\n}"],"names":["auth","me","$http","post","$ziggy","login","credentials","logout","reset","resetSms","passwordUpdate","registerShort","registerFull","registerForm","update","cart","items","action","add","item","id","quantity","options","addBundle","second","third","remove","clear","exact","compare","category","slug","toggle","modal","shop","search","term","wishlist"],"mappings":"aAAA,MCMe,CACXA,KDPW,CACXC,qBACWC,MAAMC,KAAKC,OAAO,aAE7BC,eAAMC,UACKJ,MAAMC,KAAKC,OAAO,cAAeE,IAE5CC,yBACWL,MAAMC,KAAKC,OAAO,iBAE7BI,eAAMF,UACKJ,MAAMC,KAAKC,OAAO,uBAAwBE,IAErDG,kBAASH,UACEJ,MAAMC,KAAKC,OAAO,qBAAsBE,IAEnDI,wBAAeJ,UACJJ,MAAMC,KAAKC,OAAO,wBAAyBE,IAEtDK,uBAAcL,UACHJ,MAAMC,KAAKC,OAAO,uBAAwBE,IAErDM,sBAAaN,UACFJ,MAAMC,KAAKC,OAAO,sBAAuBE,IAEpDO,+BACWX,MAAMC,KAAKC,OAAO,wBAE7BU,gBAAOR,UACIJ,MAAMC,KAAKC,OAAO,wBAAyBE,KCrBtDS,KCRW,CACXC,wBACWd,MAAMC,KAAKC,OAAO,YAAa,CAClCa,OAAQ,SAIhBC,aAAIC,UACOjB,MAAMC,KAAKC,OAAO,YAAa,CAClCa,OAAQ,MACRG,GAAID,EAAKC,GACTC,SAAUF,EAAKE,SACfC,UAASH,EAAKG,SAAUH,EAAKG,WAIrCA,iBAAQH,UACGjB,MAAMC,KAAKC,OAAO,YAAa,CAClCa,OAAQ,UACRG,GAAID,EAAKC,GACTE,QAASH,EAAKG,WAItBC,mBAAUJ,UACCjB,MAAMC,KAAKC,OAAO,YAAa,CAClCa,OAAQ,YACRG,GAAID,EAAKC,GACTI,OAAQL,EAAKK,OACbC,MAAON,EAAKM,SAIpBC,gBAAON,UACIlB,MAAMC,KAAKC,OAAO,YAAa,CAClCa,OAAQ,SACRG,GAAIA,KAIZO,wBACWzB,MAAMC,KAAKC,OAAO,YAAa,CAClCa,OAAQ,WAIhBI,kBAASF,UACEjB,MAAMC,KAAKC,OAAO,YAAa,CAClCa,OAAQ,WACRG,GAAID,EAAKC,GACTQ,MAAOT,EAAKS,UDzCpBC,QETW,CACXb,wBACWd,MAAMC,KAAKC,OAAO,eAAgB,CACrCa,OAAQ,SAIhBa,kBAASC,UACE7B,MAAMC,KAAKC,OAAO,eAAgB,CACrCa,OAAQ,WACRc,KAAMA,KAIdC,gBAAOZ,UACIlB,MAAMC,KAAKC,OAAO,eAAgB,CACrCa,OAAQ,SACRG,GAAIA,qBAILA,UACIlB,MAAMC,KAAKC,OAAO,eAAgB,CACrCa,OAAQ,SACRG,GAAIA,KAGZa,eAAMb,UACKlB,MAAMC,KAAKC,OAAO,eAAgB,CACrCa,OAAQ,QACRG,GAAIA,MFpBZc,KGVW,CACXC,gBAAOC,UACIlC,MAAMC,KAAKC,OAAO,cAAe,CACpCgC,KAAMA,MHQdC,SIXW,CACXrB,wBACWd,MAAMC,KAAKC,OAAO,gBAAiB,CACtCa,OAAQ,SAIhBe,gBAAOZ,UACIlB,MAAMC,KAAKC,OAAO,gBAAiB,CACtCa,OAAQ,SACRG,GAAIA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("vue"),t=require("vuex"),o=require("vue-toastification"),r=require("@perevorot/shop/dist/helpers"),
|
|
1
|
+
"use strict";var e=require("vue"),t=require("vuex"),o=require("vue-toastification"),r=require("@perevorot/shop/dist/helpers"),l=o.useToast(),a=e.defineComponent({props:{showEmpty:{type:Boolean,default:!0},close:{type:Function}},setup:function(){var o=t.useStore(),a=e.ref(!1),n=e.computed((function(){return o.getters["compare/categories"]})),c=e.computed((function(){return o.getters["compare/products"]})),s=e.ref(!1);o.dispatch("compare/get",{finally:function(){a.value=!0}});var i=e.computed((function(){return o.getters["cart/quantity"]}));return{mounted:a,categories:n,products:c,deleteCategory:function(e){s.value||(s.value=!0,o.dispatch("compare/category",{slug:e.slug,finally:function(){l(__("shop.compare.category_deleted",{category:e.name}),{type:"success"}),s.value=!1}}))},url:function(e){return $ziggy("shop.compare")+($env.shop.isTrailingSlash?"":"/")+e+($env.shop.isTrailingSlash?"/":"")},pluralize:r.pluralize,cartQuantity:i,modal:function(e){s.value||(s.value=!0,o.dispatch("compare/modal",{id:e,finally:function(){s.value=!1}}))}}}}),n={class:"dropdown-trigger"},c={key:0,class:"button"},s=e.createElementVNode("span",null,[e.createElementVNode("i",{class:"fas fa-balance-scale"})],-1),i={class:"ml-2"},u={key:0,class:"icon is-small"},d=[e.createElementVNode("i",{class:"fas fa-angle-down","aria-hidden":"true"},null,-1)],m={key:0,class:"dropdown-menu",role:"menu"},p={class:"dropdown-content"},g={class:"dropdown-item is-title"},f=e.createElementVNode("div",{class:"dropdown-divider"},null,-1),v={class:"column"},h=["href"],y={class:"badge"},E={class:"column is-narrow"},N=["onClick"],V=[e.createElementVNode("span",{class:"icon",style:{transform:"scale(0.8)",color:"#888"}},[e.createElementVNode("i",{class:"fas fa-times"})],-1)];a.render=function(t,o,r,l,a,k){return t.showEmpty||t.products.length?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["dropdown is-right is-hoverable shop-compare",{"has-categories":t.categories.length,"has-cart-products":t.cartQuantity}])},[e.createElementVNode("div",n,[t.mounted?(e.openBlock(),e.createElementBlock("div",c,[e.renderSlot(t.$slots,"default",{total:t.products.length,categories:t.categories.length},(function(){return[s,e.createElementVNode("span",i,e.toDisplayString(t.products.length),1),t.categories.length?(e.openBlock(),e.createElementBlock("span",u,d)):e.createCommentVNode("v-if",!0)]}))])):e.createCommentVNode("v-if",!0)]),t.categories.length?(e.openBlock(),e.createElementBlock("div",m,[e.renderSlot(t.$slots,"close",{close:t.close}),e.createElementVNode("div",p,[e.createElementVNode("div",g,e.toDisplayString(t.__("shop.title.compare")),1),f,(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.categories,(function(o,r){return e.openBlock(),e.createElementBlock("div",{class:"columns is-gapless is-vcentered mb-0",key:r},[e.renderSlot(t.$slots,"item",{item:o,deleteCategory:t.deleteCategory,url:t.url,plural:t.pluralize(o.count,t.__("shop.pluralize.products")),modal:t.modal},(function(){return[e.createElementVNode("div",v,[e.createElementVNode("a",{href:t.url(o.slug),class:"dropdown-item"},[e.createTextVNode(e.toDisplayString(o.name)+" ",1),e.createElementVNode("span",y,e.toDisplayString(o.count),1)],8,h)]),e.createElementVNode("div",E,[e.createElementVNode("a",{class:"mr-2",onClick:function(e){return t.deleteCategory(o)}},V,8,N)])]}))])})),128))])])):e.createCommentVNode("v-if",!0)],2)):e.createCommentVNode("v-if",!0)},module.exports=a;
|
|
2
2
|
//# sourceMappingURL=Compare.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Compare.js","sources":["../../../../src/components/shop/compare/Compare.vue","../../../../src/components/shop/compare/Compare.vue?vue&type=template&id=3d236b71&lang.js"],"sourcesContent":["<template>\n <div class=\"dropdown is-right is-hoverable shop-compare\" v-if=\"showEmpty || products.length\" v-bind:class=\"{ 'has-categories': categories.length, 'has-cart-products': cartQuantity }\">\n <div class=\"dropdown-trigger\">\n <div class=\"button\" v-if=\"mounted\">\n <slot :total=\"products.length\" :categories=\"categories.length\">\n <span>\n <i class=\"fas fa-balance-scale\"></i>\n </span>\n <span class=\"ml-2\">{{ products.length }}</span>\n <span class=\"icon is-small\" v-if=\"categories.length\">\n <i class=\"fas fa-angle-down\" aria-hidden=\"true\"></i>\n </span>\n </slot>\n </div>\n </div>\n <div class=\"dropdown-menu\" role=\"menu\" v-if=\"categories.length\">\n <slot name=\"close\" :close=\"close\"></slot>\n <div class=\"dropdown-content\">\n <div class=\"dropdown-item is-title\">{{ __(\"shop.title.compare\") }}</div>\n <div class=\"dropdown-divider\"></div>\n <div class=\"columns is-gapless is-vcentered mb-0\" v-for=\"(item, key) in categories\" v-bind:key=\"key\">\n <slot name=\"item\" :item=\"item\" :deleteCategory=\"deleteCategory\" :url=\"url\" :plural=\"pluralize(item.count, __('shop.pluralize.products'))\">\n <div class=\"column\">\n <a :href=\"url(item.slug)\" class=\"dropdown-item\">\n {{ item.name }}\n <span class=\"badge\">{{ item.count }}</span>\n </a>\n </div>\n <div class=\"column is-narrow\">\n\n <a class=\"mr-2\" @click=\"deleteCategory(item)\">\n <span class=\"icon\" style=\"transform: scale(0.8); color: #888\">\n <i class=\"fas fa-times\"></i>\n </span>\n </a>\n </div>\n </slot>\n </div>\n </div>\n </div>\n </div>\n</template>\n<script>\nimport { ref, computed, defineComponent } from \"vue\";\nimport { useStore } from \"vuex\";\nimport { useToast } from \"vue-toastification\";\nimport { pluralize } from '@perevorot/shop/dist/helpers';\n\nconst toast = useToast();\n\nexport default /*#__PURE__*/ defineComponent({\n props: {\n showEmpty: {\n type: Boolean,\n default: true\n },\n close: {\n type: Function\n }\n },\n setup(props) {\n const store = useStore();\n const mounted = ref(false);\n const categories = computed(() => store.getters[\"compare/categories\"]);\n const products = computed(() => store.getters[\"compare/products\"]);\n const loading = ref(false);\n\n const url = (slug) => {\n return $ziggy('shop.compare') + ($env.shop.isTrailingSlash ? '' : '/') + slug + ($env.shop.isTrailingSlash ? '/' : '')\n }\n\n const deleteCategory = (category) => {\n if (!loading.value) {\n loading.value = true;\n\n store.dispatch(\"compare/category\", {\n slug: category.slug,\n finally: () => {\n toast(\n __(\"shop.compare.category_deleted\", {\n name: category.name,\n }),\n {\n type: \"success\",\n }\n );\n\n loading.value = false;\n },\n });\n }\n };\n\n store.dispatch(\"compare/get\", {\n finally: () => {\n mounted.value = true;\n },\n });\n\n const cartQuantity = computed(() => store.getters['cart/quantity']);\n\n return {\n mounted,\n categories,\n products,\n deleteCategory,\n url,\n pluralize,\n cartQuantity\n };\n },\n});\n</script>","<template>\n <div class=\"dropdown is-right is-hoverable shop-compare\" v-if=\"showEmpty || products.length\" v-bind:class=\"{ 'has-categories': categories.length, 'has-cart-products': cartQuantity }\">\n <div class=\"dropdown-trigger\">\n <div class=\"button\" v-if=\"mounted\">\n <slot :total=\"products.length\" :categories=\"categories.length\">\n <span>\n <i class=\"fas fa-balance-scale\"></i>\n </span>\n <span class=\"ml-2\">{{ products.length }}</span>\n <span class=\"icon is-small\" v-if=\"categories.length\">\n <i class=\"fas fa-angle-down\" aria-hidden=\"true\"></i>\n </span>\n </slot>\n </div>\n </div>\n <div class=\"dropdown-menu\" role=\"menu\" v-if=\"categories.length\">\n <slot name=\"close\" :close=\"close\"></slot>\n <div class=\"dropdown-content\">\n <div class=\"dropdown-item is-title\">{{ __(\"shop.title.compare\") }}</div>\n <div class=\"dropdown-divider\"></div>\n <div class=\"columns is-gapless is-vcentered mb-0\" v-for=\"(item, key) in categories\" v-bind:key=\"key\">\n <slot name=\"item\" :item=\"item\" :deleteCategory=\"deleteCategory\" :url=\"url\" :plural=\"pluralize(item.count, __('shop.pluralize.products'))\">\n <div class=\"column\">\n <a :href=\"url(item.slug)\" class=\"dropdown-item\">\n {{ item.name }}\n <span class=\"badge\">{{ item.count }}</span>\n </a>\n </div>\n <div class=\"column is-narrow\">\n\n <a class=\"mr-2\" @click=\"deleteCategory(item)\">\n <span class=\"icon\" style=\"transform: scale(0.8); color: #888\">\n <i class=\"fas fa-times\"></i>\n </span>\n </a>\n </div>\n </slot>\n </div>\n </div>\n </div>\n </div>\n</template>\n<script>\nimport { ref, computed, defineComponent } from \"vue\";\nimport { useStore } from \"vuex\";\nimport { useToast } from \"vue-toastification\";\nimport { pluralize } from '@perevorot/shop/dist/helpers';\n\nconst toast = useToast();\n\nexport default /*#__PURE__*/ defineComponent({\n props: {\n showEmpty: {\n type: Boolean,\n default: true\n },\n close: {\n type: Function\n }\n },\n setup(props) {\n const store = useStore();\n const mounted = ref(false);\n const categories = computed(() => store.getters[\"compare/categories\"]);\n const products = computed(() => store.getters[\"compare/products\"]);\n const loading = ref(false);\n\n const url = (slug) => {\n return $ziggy('shop.compare') + ($env.shop.isTrailingSlash ? '' : '/') + slug + ($env.shop.isTrailingSlash ? '/' : '')\n }\n\n const deleteCategory = (category) => {\n if (!loading.value) {\n loading.value = true;\n\n store.dispatch(\"compare/category\", {\n slug: category.slug,\n finally: () => {\n toast(\n __(\"shop.compare.category_deleted\", {\n name: category.name,\n }),\n {\n type: \"success\",\n }\n );\n\n loading.value = false;\n },\n });\n }\n };\n\n store.dispatch(\"compare/get\", {\n finally: () => {\n mounted.value = true;\n },\n });\n\n const cartQuantity = computed(() => store.getters['cart/quantity']);\n\n return {\n mounted,\n categories,\n products,\n deleteCategory,\n url,\n pluralize,\n cartQuantity\n };\n },\n});\n</script>"],"names":["toast","useToast","defineComponent","props","showEmpty","type","Boolean","close","Function","setup","store","useStore","mounted","ref","categories","computed","getters","products","loading","dispatch","value","cartQuantity","deleteCategory","category","slug","__","name","url","$ziggy","$env","shop","isTrailingSlash","pluralize","_createElementVNode","role","style","_ctx","length","_createElementBlock","_hoisted_1","_hoisted_2","_renderSlot","total","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","item","key","plural","count","_hoisted_12","href","_hoisted_14","_hoisted_15","onClick"],"mappings":"8HAgDMA,EAAQC,eAEeC,kBAAgB,CACzCC,MAAO,CACHC,UAAW,CACPC,KAAMC,iBACG,GAEbC,MAAO,CACHF,KAAMG,WAGdC,eAAMN,OACIO,EAAQC,aACRC,EAAUC,OAAI,GACdC,EAAaC,YAAS,kBAAML,EAAMM,QAAQ,yBAC1CC,EAAWF,YAAS,kBAAML,EAAMM,QAAQ,uBACxCE,EAAUL,OAAI,GA4BpBH,EAAMS,SAAS,cAAe,SACjB,WACLP,EAAQQ,OAAQ,SAIlBC,EAAeN,YAAS,kBAAML,EAAMM,QAAQ,0BAE3C,CACHJ,QAAAA,EACAE,WAAAA,EACAG,SAAAA,EACAK,eAlCmB,SAACC,GACfL,EAAQE,QACTF,EAAQE,OAAQ,EAEhBV,EAAMS,SAAS,mBAAoB,CAC/BK,KAAMD,EAASC,aACN,WACLxB,EACIyB,GAAG,gCAAiC,CAChCC,KAAMH,EAASG,OAEnB,CACIrB,KAAM,YAIda,EAAQE,OAAQ,OAmB5BO,IAvCQ,SAACH,UACFI,OAAO,iBAAmBC,KAAKC,KAAKC,gBAAkB,GAAK,KAAOP,GAAQK,KAAKC,KAAKC,gBAAkB,IAAM,KAuCnHC,UAAAA,YACAX,aAAAA,eC1GO,mCACI,YAEHY,kCACIA,gCAAS,uCAED,uBACA,oBACRA,gCAAS,kCAAgC,iCAK9C,gBAAgBC,KAAK,iBAEjB,6BACI,4BACXD,kCAAW,sCAGQ,8BAGS,kBAGT,qCAGHA,mCAAY,OAAOE,MAAA,wCACfF,gCAAS,6DA/BsBG,aAAaA,WAASC,sBAArFC,0DAAW,gEAAoHF,aAAWC,2BAA6BD,oBACnKH,2BAAAM,GAC8BH,yBAA1BE,2BAAAE,GACIC,iCAAOC,MAAON,WAASC,OAASvB,WAAYsB,aAAWC,SAAvD,kBACIM,EAGAV,4BAAAW,oBAAsBR,WAASC,WACGD,aAAWC,sBAA7CC,4BAAAO,+EAMiCT,aAAWC,sBAAxDC,2BAAAQ,GACIL,+BAAoBlC,MAAO6B,UAC3BH,2BAAAc,GACId,2BAAAe,oBAAuCZ,+BACvCa,mBACAX,kDAAwEF,uBAAdc,EAAMC,wBAAhEb,kCAAW,uCAAgFa,IAAKA,IAC5FV,8BAAmBS,KAAMA,EAAO5B,eAAgBc,iBAAiBT,IAAKS,MAAMgB,OAAQhB,YAAUc,EAAKG,MAAOjB,mCAA1G,kBACIH,2BAAAqB,GACIrB,0BAAIsB,KAAMnB,MAAIc,EAAK1B,YAAa,sDACzB0B,EAAKxB,aACRO,4BAAAuB,oBAAuBN,EAAKG,kBAGpCpB,2BAAAwB,GAEIxB,gCAAS,OAAQyB,2BAAOtB,iBAAec"}
|
|
1
|
+
{"version":3,"file":"Compare.js","sources":["../../../../src/components/shop/compare/Compare.vue","../../../../src/components/shop/compare/Compare.vue?vue&type=template&id=3eb1e4f8&lang.js"],"sourcesContent":["<template>\n <div class=\"dropdown is-right is-hoverable shop-compare\" v-if=\"showEmpty || products.length\" v-bind:class=\"{ 'has-categories': categories.length, 'has-cart-products': cartQuantity }\">\n <div class=\"dropdown-trigger\">\n <div class=\"button\" v-if=\"mounted\">\n <slot :total=\"products.length\" :categories=\"categories.length\">\n <span>\n <i class=\"fas fa-balance-scale\"></i>\n </span>\n <span class=\"ml-2\">{{ products.length }}</span>\n <span class=\"icon is-small\" v-if=\"categories.length\">\n <i class=\"fas fa-angle-down\" aria-hidden=\"true\"></i>\n </span>\n </slot>\n </div>\n </div>\n <div class=\"dropdown-menu\" role=\"menu\" v-if=\"categories.length\">\n <slot name=\"close\" :close=\"close\"></slot>\n <div class=\"dropdown-content\">\n <div class=\"dropdown-item is-title\">{{ __(\"shop.title.compare\") }}</div>\n <div class=\"dropdown-divider\"></div>\n <div class=\"columns is-gapless is-vcentered mb-0\" v-for=\"(item, key) in categories\" v-bind:key=\"key\">\n <slot name=\"item\" :item=\"item\" :deleteCategory=\"deleteCategory\" :url=\"url\" :plural=\"pluralize(item.count, __('shop.pluralize.products'))\" :modal=\"modal\">\n <div class=\"column\">\n <a :href=\"url(item.slug)\" class=\"dropdown-item\">\n {{ item.name }}\n <span class=\"badge\">{{ item.count }}</span>\n </a>\n </div>\n <div class=\"column is-narrow\">\n\n <a class=\"mr-2\" @click=\"deleteCategory(item)\">\n <span class=\"icon\" style=\"transform: scale(0.8); color: #888\">\n <i class=\"fas fa-times\"></i>\n </span>\n </a>\n </div>\n </slot>\n </div>\n </div>\n </div>\n </div>\n</template>\n<script>\nimport { ref, computed, defineComponent } from \"vue\";\nimport { useStore } from \"vuex\";\nimport { useToast } from \"vue-toastification\";\nimport { pluralize } from '@perevorot/shop/dist/helpers';\n\nconst toast = useToast();\n\nexport default /*#__PURE__*/ defineComponent({\n props: {\n showEmpty: {\n type: Boolean,\n default: true\n },\n close: {\n type: Function\n }\n },\n setup() {\n const store = useStore();\n const mounted = ref(false);\n const categories = computed(() => store.getters[\"compare/categories\"]);\n const products = computed(() => store.getters[\"compare/products\"]);\n const loading = ref(false);\n\n const url = (slug) => {\n return $ziggy('shop.compare') + ($env.shop.isTrailingSlash ? '' : '/') + slug + ($env.shop.isTrailingSlash ? '/' : '')\n }\n\n const modal = (slug) => {\n if (!loading.value) {\n loading.value = true;\n\n store.dispatch(\"compare/modal\", {\n id: slug,\n finally: () => {\n loading.value = false;\n },\n });\n }\n }\n\n const deleteCategory = (category) => {\n if (!loading.value) {\n loading.value = true;\n\n store.dispatch(\"compare/category\", {\n slug: category.slug,\n finally: () => {\n toast(\n __(\"shop.compare.category_deleted\", {\n category: category.name,\n }),\n {\n type: \"success\",\n }\n );\n\n loading.value = false;\n },\n });\n }\n };\n\n store.dispatch(\"compare/get\", {\n finally: () => {\n mounted.value = true;\n },\n });\n\n const cartQuantity = computed(() => store.getters['cart/quantity']);\n\n return {\n mounted,\n categories,\n products,\n deleteCategory,\n url,\n pluralize,\n cartQuantity,\n modal,\n };\n },\n});\n</script>","<template>\n <div class=\"dropdown is-right is-hoverable shop-compare\" v-if=\"showEmpty || products.length\" v-bind:class=\"{ 'has-categories': categories.length, 'has-cart-products': cartQuantity }\">\n <div class=\"dropdown-trigger\">\n <div class=\"button\" v-if=\"mounted\">\n <slot :total=\"products.length\" :categories=\"categories.length\">\n <span>\n <i class=\"fas fa-balance-scale\"></i>\n </span>\n <span class=\"ml-2\">{{ products.length }}</span>\n <span class=\"icon is-small\" v-if=\"categories.length\">\n <i class=\"fas fa-angle-down\" aria-hidden=\"true\"></i>\n </span>\n </slot>\n </div>\n </div>\n <div class=\"dropdown-menu\" role=\"menu\" v-if=\"categories.length\">\n <slot name=\"close\" :close=\"close\"></slot>\n <div class=\"dropdown-content\">\n <div class=\"dropdown-item is-title\">{{ __(\"shop.title.compare\") }}</div>\n <div class=\"dropdown-divider\"></div>\n <div class=\"columns is-gapless is-vcentered mb-0\" v-for=\"(item, key) in categories\" v-bind:key=\"key\">\n <slot name=\"item\" :item=\"item\" :deleteCategory=\"deleteCategory\" :url=\"url\" :plural=\"pluralize(item.count, __('shop.pluralize.products'))\" :modal=\"modal\">\n <div class=\"column\">\n <a :href=\"url(item.slug)\" class=\"dropdown-item\">\n {{ item.name }}\n <span class=\"badge\">{{ item.count }}</span>\n </a>\n </div>\n <div class=\"column is-narrow\">\n\n <a class=\"mr-2\" @click=\"deleteCategory(item)\">\n <span class=\"icon\" style=\"transform: scale(0.8); color: #888\">\n <i class=\"fas fa-times\"></i>\n </span>\n </a>\n </div>\n </slot>\n </div>\n </div>\n </div>\n </div>\n</template>\n<script>\nimport { ref, computed, defineComponent } from \"vue\";\nimport { useStore } from \"vuex\";\nimport { useToast } from \"vue-toastification\";\nimport { pluralize } from '@perevorot/shop/dist/helpers';\n\nconst toast = useToast();\n\nexport default /*#__PURE__*/ defineComponent({\n props: {\n showEmpty: {\n type: Boolean,\n default: true\n },\n close: {\n type: Function\n }\n },\n setup() {\n const store = useStore();\n const mounted = ref(false);\n const categories = computed(() => store.getters[\"compare/categories\"]);\n const products = computed(() => store.getters[\"compare/products\"]);\n const loading = ref(false);\n\n const url = (slug) => {\n return $ziggy('shop.compare') + ($env.shop.isTrailingSlash ? '' : '/') + slug + ($env.shop.isTrailingSlash ? '/' : '')\n }\n\n const modal = (slug) => {\n if (!loading.value) {\n loading.value = true;\n\n store.dispatch(\"compare/modal\", {\n id: slug,\n finally: () => {\n loading.value = false;\n },\n });\n }\n }\n\n const deleteCategory = (category) => {\n if (!loading.value) {\n loading.value = true;\n\n store.dispatch(\"compare/category\", {\n slug: category.slug,\n finally: () => {\n toast(\n __(\"shop.compare.category_deleted\", {\n category: category.name,\n }),\n {\n type: \"success\",\n }\n );\n\n loading.value = false;\n },\n });\n }\n };\n\n store.dispatch(\"compare/get\", {\n finally: () => {\n mounted.value = true;\n },\n });\n\n const cartQuantity = computed(() => store.getters['cart/quantity']);\n\n return {\n mounted,\n categories,\n products,\n deleteCategory,\n url,\n pluralize,\n cartQuantity,\n modal,\n };\n },\n});\n</script>"],"names":["toast","useToast","defineComponent","props","showEmpty","type","Boolean","close","Function","setup","store","useStore","mounted","ref","categories","computed","getters","products","loading","dispatch","value","cartQuantity","deleteCategory","category","slug","__","name","url","$ziggy","$env","shop","isTrailingSlash","pluralize","modal","id","_createElementVNode","role","style","_ctx","length","_createElementBlock","_hoisted_1","_hoisted_2","_renderSlot","total","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","item","key","plural","count","_hoisted_12","href","_hoisted_14","_hoisted_15","onClick"],"mappings":"8HAgDMA,EAAQC,eAEeC,kBAAgB,CACzCC,MAAO,CACHC,UAAW,CACPC,KAAMC,iBACG,GAEbC,MAAO,CACHF,KAAMG,WAGdC,qBACUC,EAAQC,aACRC,EAAUC,OAAI,GACdC,EAAaC,YAAS,kBAAML,EAAMM,QAAQ,yBAC1CC,EAAWF,YAAS,kBAAML,EAAMM,QAAQ,uBACxCE,EAAUL,OAAI,GAyCpBH,EAAMS,SAAS,cAAe,SACjB,WACLP,EAAQQ,OAAQ,SAIlBC,EAAeN,YAAS,kBAAML,EAAMM,QAAQ,0BAE3C,CACHJ,QAAAA,EACAE,WAAAA,EACAG,SAAAA,EACAK,eAlCmB,SAACC,GACfL,EAAQE,QACTF,EAAQE,OAAQ,EAEhBV,EAAMS,SAAS,mBAAoB,CAC/BK,KAAMD,EAASC,aACN,WACLxB,EACIyB,GAAG,gCAAiC,CAChCF,SAAUA,EAASG,OAEvB,CACIrB,KAAM,YAIda,EAAQE,OAAQ,OAmB5BO,IApDQ,SAACH,UACFI,OAAO,iBAAmBC,KAAKC,KAAKC,gBAAkB,GAAK,KAAOP,GAAQK,KAAKC,KAAKC,gBAAkB,IAAM,KAoDnHC,UAAAA,YACAX,aAAAA,EACAY,MAnDU,SAACT,GACNN,EAAQE,QACTF,EAAQE,OAAQ,EAEhBV,EAAMS,SAAS,gBAAiB,CAC5Be,GAAIV,UACK,WACLN,EAAQE,OAAQ,oBC5ErB,mCACI,YAEHe,kCACIA,gCAAS,uCAED,uBACA,oBACRA,gCAAS,kCAAgC,iCAK9C,gBAAgBC,KAAK,iBAEjB,6BACI,4BACXD,kCAAW,sCAGQ,8BAGS,kBAGT,qCAGHA,mCAAY,OAAOE,MAAA,wCACfF,gCAAS,6DA/BsBG,aAAaA,WAASC,sBAArFC,0DAAW,gEAAoHF,aAAWC,2BAA6BD,oBACnKH,2BAAAM,GAC8BH,yBAA1BE,2BAAAE,GACIC,iCAAOC,MAAON,WAASC,OAASzB,WAAYwB,aAAWC,SAAvD,kBACIM,EAGAV,4BAAAW,oBAAsBR,WAASC,WACGD,aAAWC,sBAA7CC,4BAAAO,+EAMiCT,aAAWC,sBAAxDC,2BAAAQ,GACIL,+BAAoBpC,MAAO+B,UAC3BH,2BAAAc,GACId,2BAAAe,oBAAuCZ,+BACvCa,mBACAX,kDAAwEF,uBAAdc,EAAMC,wBAAhEb,kCAAW,uCAAgFa,IAAKA,IAC5FV,8BAAmBS,KAAMA,EAAO9B,eAAgBgB,iBAAiBX,IAAKW,MAAMgB,OAAQhB,YAAUc,EAAKG,MAAOjB,iCAAiCL,MAAOK,UAAlJ,kBACIH,2BAAAqB,GACIrB,0BAAIsB,KAAMnB,MAAIc,EAAK5B,YAAa,sDACzB4B,EAAK1B,aACRS,4BAAAuB,oBAAuBN,EAAKG,kBAGpCpB,2BAAAwB,GAEIxB,gCAAS,OAAQyB,2BAAOtB,iBAAec"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("vue"),t=require("vuex"),o=require("vue-toastification"),r={props:{last:null},setup:function(){return{translate:window.__}}},n={class:"shop-compare-success-message"}
|
|
1
|
+
"use strict";var e=require("vue"),t=require("vuex"),o=require("vue-toastification"),r={props:{last:null},setup:function(){return{translate:window.__}}},n={class:"shop-compare-success-message"};r.render=function(t,o,r,a,c,s){return e.openBlock(),e.createElementBlock("div",n,[e.createElementVNode("div",null,e.toDisplayString(a.translate("shop.compare.product_deleted_named",{product:r.last.name})),1),e.createCommentVNode(' <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 > ')])};var a=o.useToast(),c=e.defineComponent({props:{id:Number},setup:function(o){var n=e.ref(!1),c=t.useStore(),s=e.computed((function(){return c.getters["compare/last"]})),u=e.computed((function(){return c.getters["compare/product"](o.id)}));return{product:u,action:function(){n.value||(n.value=!0,c.dispatch("compare/toggle",{id:o.id,finally:function(){u.value?a({component:r,props:{last:s}},{type:"success"}):a(__("shop.compare.product_deleted"),{type:"warning"});n.value=!1}}))},loading:n}}}),s=["title"],u=e.createElementVNode("svg",{class:"icon compare"},[e.createElementVNode("use",{"xlink:href":"#compare"})],-1);c.render=function(t,o,r,n,a,c){return e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["button compare",{"is-loading":t.loading,"is-transparent":!t.product}]),onClick:o[0]||(o[0]=function(){return t.action&&t.action.apply(t,arguments)}),title:t.__("shop.compare.add")},[e.renderSlot(t.$slots,"default",{product:t.product},(function(){return[u]}))],10,s)},module.exports=c;
|
|
2
2
|
//# sourceMappingURL=CompareAdd.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CompareAdd.js","sources":["../../../../src/components/shop/compare/SuccessMessage.vue","../../../../src/components/shop/compare/SuccessMessage.vue?vue&type=template&id=
|
|
1
|
+
{"version":3,"file":"CompareAdd.js","sources":["../../../../src/components/shop/compare/SuccessMessage.vue","../../../../src/components/shop/compare/SuccessMessage.vue?vue&type=template&id=2662d3ca&lang.js","../../../../src/components/shop/compare/CompareAdd.vue","../../../../src/components/shop/compare/CompareAdd.vue?vue&type=template&id=b42f83fc&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>","<template>\n <button\n class=\"button compare\"\n @click=\"action\"\n v-bind:class=\"{ 'is-loading': loading, 'is-transparent': !product }\"\n :title=\"__('shop.compare.add')\"\n >\n <slot :product=\"product\">\n <svg class=\"icon compare\">\n <use xlink:href=\"#compare\" />\n </svg>\n </slot>\n </button>\n</template>\n<script>\nimport { ref, computed, defineComponent } from \"vue\";\nimport { useStore } from \"vuex\";\nimport { useToast } from \"vue-toastification\";\nimport SuccessMessage from \"./SuccessMessage.vue\";\n\nconst toast = useToast();\n\nexport default /*#__PURE__*/ defineComponent({\n props: {\n id: Number,\n },\n setup(props) {\n const loading = ref(false);\n const store = useStore();\n const last = computed(() => store.getters[\"compare/last\"]);\n const product = computed(() =>\n store.getters[\"compare/product\"](props.id)\n );\n\n const action = () => {\n if (!loading.value) {\n loading.value = true;\n\n store.dispatch(\"compare/toggle\", {\n id: props.id,\n finally: () => {\n if (product.value) {\n const component = {\n component: SuccessMessage,\n props: {\n last: last,\n },\n };\n\n toast(component, {\n type: \"success\",\n });\n } else {\n toast(__(\"shop.compare.product_deleted\"), {\n type: \"warning\",\n });\n }\n\n loading.value = false;\n },\n });\n }\n };\n\n return {\n product,\n action,\n loading,\n };\n },\n});\n</script>","<template>\n <button\n class=\"button compare\"\n @click=\"action\"\n v-bind:class=\"{ 'is-loading': loading, 'is-transparent': !product }\"\n :title=\"__('shop.compare.add')\"\n >\n <slot :product=\"product\">\n <svg class=\"icon compare\">\n <use xlink:href=\"#compare\" />\n </svg>\n </slot>\n </button>\n</template>\n<script>\nimport { ref, computed, defineComponent } from \"vue\";\nimport { useStore } from \"vuex\";\nimport { useToast } from \"vue-toastification\";\nimport SuccessMessage from \"./SuccessMessage.vue\";\n\nconst toast = useToast();\n\nexport default /*#__PURE__*/ defineComponent({\n props: {\n id: Number,\n },\n setup(props) {\n const loading = ref(false);\n const store = useStore();\n const last = computed(() => store.getters[\"compare/last\"]);\n const product = computed(() =>\n store.getters[\"compare/product\"](props.id)\n );\n\n const action = () => {\n if (!loading.value) {\n loading.value = true;\n\n store.dispatch(\"compare/toggle\", {\n id: props.id,\n finally: () => {\n if (product.value) {\n const component = {\n component: SuccessMessage,\n props: {\n last: last,\n },\n };\n\n toast(component, {\n type: \"success\",\n });\n } else {\n toast(__(\"shop.compare.product_deleted\"), {\n type: \"warning\",\n });\n }\n\n loading.value = false;\n },\n });\n }\n };\n\n return {\n product,\n action,\n loading,\n };\n },\n});\n</script>"],"names":["props","last","setup","translate","window","__","_createElementBlock","_hoisted_1","_createElementVNode","$setup","_createCommentVNode","toast","useToast","defineComponent","id","Number","loading","ref","store","useStore","computed","getters","product","action","value","dispatch","component","SuccessMessage","type","_ctx","onClick","title","_renderSlot","_hoisted_2"],"mappings":"sFAkBe,CACXA,MAAO,CACHC,KAAM,MAEVC,uBAGW,CACHC,UAHcC,OAAOC,eCtBlB,oFAAXC,2BAAAC,GACIC,kDAEQC,4EAKRC,mOCWR,IAAMC,EAAQC,eAEeC,kBAAgB,CACzCb,MAAO,CACHc,GAAIC,QAERb,eAAMF,OACIgB,EAAUC,OAAI,GACdC,EAAQC,aACRlB,EAAOmB,YAAS,kBAAMF,EAAMG,QAAQ,mBACpCC,EAAUF,YAAS,kBACrBF,EAAMG,QAAQ,mBAAmBrB,EAAMc,aAiCpC,CACHQ,QAAAA,EACAC,OAhCW,WACNP,EAAQQ,QACTR,EAAQQ,OAAQ,EAEhBN,EAAMO,SAAS,iBAAkB,CAC7BX,GAAId,EAAMc,WACD,WACDQ,EAAQE,MAQRb,EAPkB,CACde,UAAWC,EACX3B,MAAO,CACHC,KAAMA,IAIG,CACb2B,KAAM,YAGVjB,EAAMN,GAAG,gCAAiC,CACtCuB,KAAM,YAIdZ,EAAQQ,OAAQ,OAS5BR,QAAAA,oBC3DAR,kCAAW,iBACPA,yCAAgB,sEAR5BF,uDACU,+BAEwBuB,4BAA4BA,aADzDC,sCAAOD,wCAEPE,MAAOF,2BAERG,iCAAOV,QAASO,YAAhB,kBACII"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("vue"),n=require("vuex"),o=e.defineComponent({setup:function(){var
|
|
1
|
+
"use strict";var e=require("vue"),n=require("vuex"),o=e.defineComponent({props:{callback:{type:Function,default:null}},setup:function(o){var t=n.useStore(),a=e.ref(!1);return{action:function(){a.value||(a.value=!0,t.dispatch("compare/delete",{id:"all",callback:function(){o.callback?o.callback():window.location.href=$ziggy("shop.compare")},finally:function(){a.value=!1}}))},loading:a}}});o.render=function(n,o,t,a,l,c){return e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["button compare",{"is-loading":n.loading}]),onClick:o[0]||(o[0]=function(){return n.action&&n.action.apply(n,arguments)})},[e.renderSlot(n.$slots,"default",{},(function(){return[e.createTextVNode(e.toDisplayString(n.__("shop.compare.clear")),1)]}))],2)},module.exports=o;
|
|
2
2
|
//# sourceMappingURL=CompareDeleteAll.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CompareDeleteAll.js","sources":["../../../../src/components/shop/compare/CompareDeleteAll.vue","../../../../src/components/shop/compare/CompareDeleteAll.vue?vue&type=template&id=
|
|
1
|
+
{"version":3,"file":"CompareDeleteAll.js","sources":["../../../../src/components/shop/compare/CompareDeleteAll.vue","../../../../src/components/shop/compare/CompareDeleteAll.vue?vue&type=template&id=24871093&lang.js"],"sourcesContent":["<template>\n <button class=\"button compare\" @click=\"action\" v-bind:class=\"{ 'is-loading': loading }\">\n <slot>{{ __('shop.compare.clear') }}</slot>\n </button>\n</template>\n<script>\nimport { ref, defineComponent } from 'vue';\nimport { useStore } from 'vuex';\n\nexport default /*#__PURE__*/ defineComponent({\n props: {\n callback: {\n type: Function,\n default: null\n }\n },\n setup(props) {\n const store = useStore();\n\n const loading = ref(false);\n\n const action = () => {\n if (!loading.value) {\n loading.value = true;\n\n store.dispatch('compare/delete', {\n id: 'all',\n callback: () => {\n if (props.callback) {\n props.callback();\n } else {\n window.location.href = $ziggy('shop.compare');\n }\n },\n finally: () => {\n loading.value = false;\n }\n });\n }\n };\n\n return {\n action,\n loading\n };\n }\n});\n</script>","<template>\n <button class=\"button compare\" @click=\"action\" v-bind:class=\"{ 'is-loading': loading }\">\n <slot>{{ __('shop.compare.clear') }}</slot>\n </button>\n</template>\n<script>\nimport { ref, defineComponent } from 'vue';\nimport { useStore } from 'vuex';\n\nexport default /*#__PURE__*/ defineComponent({\n props: {\n callback: {\n type: Function,\n default: null\n }\n },\n setup(props) {\n const store = useStore();\n\n const loading = ref(false);\n\n const action = () => {\n if (!loading.value) {\n loading.value = true;\n\n store.dispatch('compare/delete', {\n id: 'all',\n callback: () => {\n if (props.callback) {\n props.callback();\n } else {\n window.location.href = $ziggy('shop.compare');\n }\n },\n finally: () => {\n loading.value = false;\n }\n });\n }\n };\n\n return {\n action,\n loading\n };\n }\n});\n</script>"],"names":["defineComponent","props","callback","type","Function","setup","store","useStore","loading","ref","action","value","dispatch","id","window","location","href","$ziggy","_createElementBlock","_ctx","onClick","_renderSlot"],"mappings":"sDAS6BA,kBAAgB,CACzCC,MAAO,CACHC,SAAU,CACNC,KAAMC,iBACG,OAGjBC,eAAMJ,OACIK,EAAQC,aAERC,EAAUC,OAAI,SAsBb,CACHC,OArBW,WACNF,EAAQG,QACTH,EAAQG,OAAQ,EAEhBL,EAAMM,SAAS,iBAAkB,CAC7BC,GAAI,MACJX,SAAU,WACFD,EAAMC,SACND,EAAMC,WAENY,OAAOC,SAASC,KAAOC,OAAO,yBAG7B,WACLT,EAAQG,OAAQ,OAQ5BH,QAAAA,0DC1CRU,uDAAc,+BAA+DC,aAA7CC,sCAAOD,0CACnCE,oCAAA,sDAASF"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var e=require("vue"),t=require("vuex"),l=require("@perevorot/shop/dist/helpers"),o=require("vue-toastification").useToast(),c=e.defineComponent({setup:function(){var c=t.useStore(),n=e.computed((function(){return c.getters["compare/modal"]})),r=e.ref(!0),a=e.ref(!1),s=function(e,t){if(!t){var l=document.getElementById("compare-toggler"),o=document.getElementById("compare-overlay");l.classList.remove("is-open"),o.classList.remove("is-open"),document.querySelector("html").classList.remove("is-no-scroll")}c.commit("compare/modal",null)},i=function(e,t,l){a.value||(a.value=!0,c.dispatch("compare/category",{slug:t,finally:function(){o(__("shop.compare.category_deleted",{category:l}),{type:"success"}),s(),a.value=!1}}))};return{modal:n,close:s,pluralize:l.pluralize,showAll:r,deleteCategory:i,remove:function(e,t){var l=[];n.value.products.forEach((function(e){e.id!=t&&l.push(e.id)})),c.dispatch("compare/delete",{id:t,callback:function(e){o(__("shop.compare.product_deleted"),{type:"success"}),l.length>0?c.dispatch("compare/modal",{id:n.value.category.slug+"/"+l.join(","),finally:function(){a.value=!1}}):i(0,n.value.category.slug,n.value.category.name)},finally:function(){a.value=!1}})}}}}),n={key:0,class:"shop-comparsion"},r={class:"comparsion-head"},a={key:0,class:"page-title"},s=["textContent"],i=[e.createElementVNode("svg",null,[e.createElementVNode("use",{"xlink:href":"#close"})],-1)],d={class:"comparsion-controls"},m={class:"compare-switcher"},u={class:"switcher checkbox-label"},p=e.createElementVNode("input",{id:"comparsion-show",type:"checkbox",name:"compare-view",hidden:""},null,-1),E=e.createElementVNode("span",{class:"checkbox-custom"},null,-1),v=[e.createElementVNode("svg",null,[e.createElementVNode("use",{"xlink:href":"#icon-trash"})],-1),e.createElementVNode("span",null,"Очистити список",-1)],N=[e.createElementVNode("svg",null,[e.createElementVNode("use",{"xlink:href":"#compare"})],-1),e.createElementVNode("span",null,"Всі списки порівнянь",-1)],V={class:"scroll-wrapper"},h={class:"comparsion-body"},k={class:"products"},f={class:"product-item"},g=["href"],y={class:"image"},B=["src"],b={class:"product-item-info"},C=["href"],x={class:"product-item-controls"},w=["onClick"],L=[e.createElementVNode("span",{class:"product-remove"},[e.createElementVNode("svg",null,[e.createElementVNode("use",{"xlink:href":"#icon-trash"})])],-1)],S={class:"product-item-add"},_={class:"prices"},D=["innerHTML"],T=["innerHTML"],z=["innerHTML"],H={class:"availability"},M={key:0,class:"has-text-success"},q={key:1,class:"available has-text-danger"},F={class:"row-title-mobile"},A=["colspan"],I={class:"row-title-text"},O={class:"property-title property-title-desktop"},j={class:"property-value"},G={"shop-product":""},J={class:"is-hidden","shop-product-name":""},K={class:"is-hidden","shop-product-price":""},P={class:"is-hidden","shop-product-code":""};c.render=function(t,l,o,c,Q,R){var U=e.resolveComponent("wishlist-add"),W=e.resolveComponent("cart-add");return t.modal&&t.modal.category&&t.modal.products?(e.openBlock(),e.createElementBlock("section",n,[e.createElementVNode("div",r,[t.modal.category?(e.openBlock(),e.createElementBlock("h1",a,[e.createTextVNode(" Порівнюємо "+e.toDisplayString(t.modal.category.name)+" ",1),e.createElementVNode("span",{class:"badge",textContent:e.toDisplayString(t.pluralize(t.modal.products.length,t.__("shop.pluralize.products")))},null,8,s)])):e.createCommentVNode("v-if",!0),e.createElementVNode("button",{class:"button comparsion-close",onClick:l[0]||(l[0]=function(e){return t.close(e,!0)})},i)]),e.createElementVNode("div",d,[e.createElementVNode("div",m,[e.createElementVNode("label",u,[p,E,e.createElementVNode("span",{class:"checkbox-text all-char",onClick:l[1]||(l[1]=function(e){return t.showAll=!0})},"Всі параметри"),e.createElementVNode("span",{class:"checkbox-text diff",onClick:l[2]||(l[2]=function(e){return t.showAll=!1})},"Тільки відмінності")])]),e.createElementVNode("button",{class:"button compare reset-compare",onClick:l[3]||(l[3]=function(e){return t.deleteCategory(e,t.modal.category.slug,t.modal.category.name)})},v),e.createElementVNode("button",{class:"all-compare-lists",onClick:l[4]||(l[4]=function(e){return t.close(e,!0)})},N)]),e.createElementVNode("div",V,[e.createElementVNode("div",h,[e.createElementVNode("div",k,[e.createElementVNode("table",{class:e.normalizeClass(["comparsion table",{"only-difference":!t.showAll}]),id:"comparsion-header"},[e.createElementVNode("thead",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.modal.products,(function(l){return e.openBlock(),e.createElementBlock("th",null,[e.createElementVNode("div",f,[e.createElementVNode("a",{class:"product-item-image",href:l.href},[e.createElementVNode("figure",y,[e.createElementVNode("img",{src:l.image},null,8,B)])],8,g),e.createElementVNode("div",b,[e.createElementVNode("a",{class:"product-item-title",href:l.href},e.toDisplayString(l.name),9,C)]),e.createElementVNode("div",x,[e.createVNode(U,{id:l.id},null,8,["id"]),e.createElementVNode("button",{class:"button compare",onClick:function(e){return t.remove(e,l.id)}},L,8,w)]),e.createElementVNode("div",S,[e.createElementVNode("div",_,[l.price?(e.openBlock(),e.createElementBlock("div",{key:0,class:"current-price",innerHTML:l.price},null,8,D)):e.createCommentVNode("v-if",!0),l.priceOld?(e.openBlock(),e.createElementBlock("div",{key:1,class:"old-price",innerHTML:l.priceOld},null,8,T)):e.createCommentVNode("v-if",!0),l.discount?(e.openBlock(),e.createElementBlock("div",{key:2,class:"discount",innerHTML:l.discount},null,8,z)):e.createCommentVNode("v-if",!0)]),e.createElementVNode("div",H,[l.available?(e.openBlock(),e.createElementBlock("div",M,"В наявності")):(e.openBlock(),e.createElementBlock("div",q,"Товар очікується"))])])])])})),256))]),e.createElementVNode("tbody",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.modal.properties,(function(l){return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("tr",F,[e.createElementVNode("td",{colspan:t.modal.products.length},[e.createElementVNode("div",I,[e.createElementVNode("p",null,e.toDisplayString(l.name),1)])],8,A)]),e.createElementVNode("tr",{class:e.normalizeClass(l.is_same?"is-same":"is-differs")},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.values,(function(t){return e.openBlock(),e.createElementBlock("td",null,[e.createElementVNode("div",O,e.toDisplayString(l.name),1),e.createElementVNode("div",j,e.toDisplayString(t||"—"),1)])})),256))],2)],64)})),256))]),e.createElementVNode("tfoot",null,[e.createElementVNode("tr",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.modal.products,(function(o){return e.openBlock(),e.createElementBlock("td",G,[e.createElementVNode("span",J,e.toDisplayString(o.name),1),e.createElementVNode("span",K,e.toDisplayString(o.price),1),e.createElementVNode("span",P,e.toDisplayString(o.code),1),e.createElementVNode("div",{class:"cell-btn-wrapper",onClick:l[5]||(l[5]=function(e){return t.close(e)})},[e.createVNode(W,{id:o.cart_id,"is-simple":!0},null,8,["id"])])])})),256))])])],2)])])])])):e.createCommentVNode("v-if",!0)},module.exports=c;
|
|
2
|
+
//# sourceMappingURL=ComparsionModal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComparsionModal.js","sources":["../../../../src/components/shop/compare/ComparsionModal.vue","../../../../src/components/shop/compare/ComparsionModal.vue?vue&type=template&id=6dc18d2a&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\">\n <table class=\"comparsion table\" id=\"comparsion-header\" v-bind:class=\"{ 'only-difference': !showAll }\">\n <thead>\n <th v-for=\"product in modal.products\">\n <div class=\"product-item\">\n <a class=\"product-item-image\" :href=\"product.href\">\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\">\n {{ product.name }}\n </a>\n </div>\n <div class=\"product-item-controls\">\n <wishlist-add :id=\"product.id\"></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\"></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>\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 in property.values\">\n <div class=\"property-title property-title-desktop\">\n {{ property.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>\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-code>{{ product.code }}</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, computed, defineComponent } 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(() => store.getters['compare/modal']);\n const showAll = ref(true);\n const loading = ref(false);\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 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 return {\n modal,\n close,\n pluralize,\n showAll,\n deleteCategory,\n remove\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\">\n <table class=\"comparsion table\" id=\"comparsion-header\" v-bind:class=\"{ 'only-difference': !showAll }\">\n <thead>\n <th v-for=\"product in modal.products\">\n <div class=\"product-item\">\n <a class=\"product-item-image\" :href=\"product.href\">\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\">\n {{ product.name }}\n </a>\n </div>\n <div class=\"product-item-controls\">\n <wishlist-add :id=\"product.id\"></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\"></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>\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 in property.values\">\n <div class=\"property-title property-title-desktop\">\n {{ property.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>\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-code>{{ product.code }}</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, computed, defineComponent } 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(() => store.getters['compare/modal']);\n const showAll = ref(true);\n const loading = ref(false);\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 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 return {\n modal,\n close,\n pluralize,\n showAll,\n deleteCategory,\n remove\n }\n }\n});\n</script>"],"names":["toast","defineComponent","setup","store","useStore","modal","computed","getters","showAll","ref","loading","close","e","isKeepCompare","compareToggler","document","getElementById","compareOverlay","classList","remove","querySelector","commit","deleteCategory","$event","slug","name","value","dispatch","__","category","type","pluralize","id","products","forEach","product","push","callback","data","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","href","_hoisted_23","src","image","_hoisted_25","_hoisted_27","_createVNode","_hoisted_31","_hoisted_32","price","innerHTML","priceOld","discount","_hoisted_36","available","_hoisted_37","_hoisted_38","properties","property","_hoisted_39","colspan","_hoisted_41","is_same","values","_hoisted_42","_hoisted_43","_hoisted_44","_hoisted_45","_hoisted_46","_hoisted_47","code","cart_id"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("vue"),t={props:{last:null},setup:function(){return{translate:window.__}}},
|
|
1
|
+
"use strict";var e=require("vue"),t={props:{last:null},setup:function(){return{translate:window.__}}},o={class:"shop-compare-success-message"};t.render=function(t,r,s,n,a,l){return e.openBlock(),e.createElementBlock("div",o,[e.createElementVNode("div",null,e.toDisplayString(n.translate("shop.compare.product_deleted_named",{product:s.last.name})),1),e.createCommentVNode(' <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 > ')])},module.exports=t;
|
|
2
2
|
//# sourceMappingURL=SuccessMessage.js.map
|
|
@@ -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=
|
|
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","__","_createElementBlock","_hoisted_1","_createElementVNode","$setup","_createCommentVNode"],"mappings":"oCAkBe,CACXA,MAAO,CACHC,KAAM,MAEVC,uBAGW,CACHC,UAHcC,OAAOC,eCtBlB,oFAAXC,2BAAAC,GACIC,kDAEQC,4EAKRC"}
|
package/dist/store.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var t=require("@perevorot/shop/dist/api"),a={namespaced:!0,state:{items:[],cross:[],bundles:[],modal:!1},getters:{items:function(t){return t.items},cross:function(t){return t.cross},bundles:function(t){return t.bundles},productQuantity:function(t,a){return function(t){var n=a.items.find((function(a){return a.id===t}));return n?n.quantity:0}},quantity:function(t,a){var n=0;return a.items.forEach((function(t){n+=parseInt(t.quantity)})),n},total:function(t,a){var n=0;return a.items.forEach((function(t){var a=t.attributes.price?t.attributes.price:t.price;if(t.attributes.options&&t.attributes.options.length&&t.options&&t.options.length){var e=0;t.options.forEach((function(a){-1!==t.attributes.options.indexOf(a.id)&&(e+=parseInt(a.price))})),a+=e}n+=a*(!1===t.attributes.active?0:t.quantity)})),n},modal:function(t){return document.documentElement.classList[t.modal?"add":"remove"]("is-modal-open"),t.modal}},actions:{get:function(a,n){var e=a.commit;t.cart.items().then((function(t){e("items",t.data.items),t.data&&t.data.cross&&e("cross",t.data.cross),t.data&&t.data.bundles&&e("bundles",t.data.bundles),"function"==typeof n.callback&&n.callback()})).finally(n.finally)},add:function(a,n){var e=a.commit,c=a.state;t.cart.add(n.product).then((function(t){t.data&&t.data.items&&t.data.items.length?e("items",t.data.items):e("quantity",n.product),t.data&&t.data.cross&&e("cross",t.data.cross),t.data&&t.data.bundles&&e("bundles",t.data.bundles),c.modal||e("modal",!0),"function"==typeof n.callback&&n.callback()})).finally(n.finally)},options:function(a,n){var e=a.commit,c=a.state;t.cart.options(n.product).then((function(t){t.data&&t.data.items&&t.data.items.length&&e("items",t.data.items),c.modal||e("modal",!0),"function"==typeof n.callback&&n.callback()})).finally(n.finally)},quantity:function(a,n){var e=a.commit;t.cart.quantity(n.product).then((function(){e("quantity",n.product),"function"==typeof n.callback&&n.callback()})).finally(n.finally)},remove:function(a,n){var e=a.commit;t.cart.remove(n.id).then((function(t){e("remove",n.id),t.data&&t.data.cross&&e("cross",t.data.cross),t.data&&t.data.bundles&&e("bundles",t.data.bundles),"function"==typeof n.callback&&n.callback()})).finally(n.finally)},clear:function(a,n){var e=a.commit;t.cart.clear(n.id).then((function(){e("clear"),"function"==typeof n.callback&&n.callback()})).finally(n.finally)}},mutations:{modal:function(t,a){t.modal=a},items:function(t,a){t.items=a},cross:function(t,a){t.cross=a},bundles:function(t,a){t.bundles=a},remove:function(t,a){t.items=t.items.filter((function(t){return t.id!==a}))},quantity:function(t,a){var n=t.items.find((function(t){return t.id===a.id}));n.quantity=a.exact?a.exact:n.quantity+a.quantity},clear:function(t){t.items=[],t.cross=[],t.bundles=[]}}};function n(t){if(null==t)throw new TypeError("Cannot destructure undefined")}var e=require("vue-toastification").useToast(),c={me:function(t){return t.user},account:function(t){return t.account},modal:function(t){return document.documentElement.classList[t.modal?"add":"remove"]("is-modal-open"),t.modal},is:function(t){return Object.keys(t.user).length>0}},i={me:function(t,a){t.user=Array.isArray(a.user)&&!a.user.length?{}:a.user,t.account=a.account},modal:function(t,a){t.modal=a}},o={namespaced:!0,state:{items:[],list:[],last:""},getters:{items:function(t){return t.items},item:function(t,a){return function(t){return-1!==a.items.indexOf(t)}},list:function(t){return t.list},last:function(t){return t.last}},actions:{get:function(a,n){var e=a.commit;t.wishlist.items().then((function(t){e("items",t.data.items),"function"==typeof n.callback&&n.callback()})).finally(n.finally)},list:function(a,n){var e=a.commit;t.wishlist.list().then((function(t){e("list",t.data),"function"==typeof n.callback&&n.callback()})).finally(n.finally)},toggle:function(a,n){var e=a.commit;a.state,t.wishlist.toggle(n.id).then((function(t){t.data&&t.data.items&&e("items",t.data.items),t.data&&t.data.last&&e("last",t.data.last),"function"==typeof n.callback&&n.callback()})).finally(n.finally)}},mutations:{items:function(t,a){t.items=a},list:function(t,a){t.list=a},last:function(t,a){t.last=a},remove:function(t,a){t.items=t.items.filter((function(t){return t.id!==a}))}}},l={namespaced:!0,state:{products:[],categories:[],list:[],last:""},getters:{products:function(t){return t.products},categories:function(t){return t.categories},product:function(t,a){return function(t){return-1!==a.products.indexOf(t)}},list:function(t){return t.list},last:function(t){return t.last}},actions:{get:function(a,n){var e=a.commit;t.compare.items().then((function(t){e("products",t.data.products),e("categories",t.data.categories),"function"==typeof n.callback&&n.callback()})).finally(n.finally)},category:function(a,n){var e=a.commit;t.compare.category(n.slug).then((function(t){e("products",t.data.products),e("categories",t.data.categories),"function"==typeof n.callback&&n.callback()})).finally(n.finally)},list:function(a,n){var e=a.commit;t.compare.list().then((function(t){e("list",t.data),"function"==typeof n.callback&&n.callback()})).finally(n.finally)},toggle:function(a,n){var e=a.commit;a.state,t.compare.toggle(n.id).then((function(t){t.data&&(e("products",t.data.products),e("categories",t.data.categories),e("last",t.data.last)),"function"==typeof n.callback&&n.callback(t.data)})).finally(n.finally)},delete:function(a,n){a.commit,a.state,t.compare.delete(n.id).then((function(t){"function"==typeof n.callback&&n.callback(t.data)})).finally(n.finally)}},mutations:{products:function(t,a){t.products=a},categories:function(t,a){t.categories=a},list:function(t,a){t.list=a},remove:function(t,a){t.products=t.products.filter((function(t){return t.id!==a}))},last:function(t,a){t.last=a}}},s={namespaced:!0,state:{modal:!1},getters:{modal:function(t){return t.modal}},mutations:{modal:function(t,a){document.documentElement.classList[a?"add":"remove"]("is-modal-open"),t.modal=a}}},u={namespaced:!0,state:{steps:{},current:1,modal:!1},getters:{steps:function(t){return t.steps},current:function(t){return t.current},modal:function(t){return t.modal}},mutations:{step:function(t,a){Number.isInteger(a)?t.current=a:a.data&&(t.steps[a.step]=a.data)},stepInit:function(t,a){t.steps[a.step]||(t.steps[a.step]=a.data)},reset:function(t){t.steps={},t.current=1},modal:function(t,a){t.modal=a}}},r={modules:{cart:a,auth:{namespaced:!0,state:{user:{},modal:!1,account:[]},getters:c,actions:{me:function(a,n){var c=a.commit;t.auth.me().then((function(t){c("me",t.data),t.data.flash&&t.data.flash.message&&(console.error(t.data.flash.message),e(t.data.flash.message,{type:t.data.flash.type?t.data.flash.type:"default"})),t.data.flash&&t.data.flash.modal&&c("modal",t.data.flash.modal),n&&"function"==typeof n.callback&&n.callback()})).finally(n&&n.finally?n.finally:function(){})},login:function(a,n){var e=a.commit,c=a.dispatch;t.auth.login(n.credentials).then((function(t){t.data.csrf_token&&($http.defaults.headers.common["X-CSRF-TOKEN"]=t.data.csrf_token,delete t.data.csrf_token),e("me",t.data),e("modal",null),document.documentElement.classList.remove("is-modal-open"),c("cart/get",{finally:function(){}},{root:!0}),c("wishlist/get",{finally:function(){}},{root:!0}),window.localStorage&&window.localStorage.clear(),n&&"function"==typeof n.callback&&n.callback()})).catch((function(t){n&&"function"==typeof n.catch&&n.catch(t)})).finally(n.finally)},logout:function(a,n){var e=a.commit;t.auth.logout().then((function(){e("me",{user:{},account:[]}),e("wishlist/items",[],{root:!0}),window.localStorage&&window.localStorage.clear(),n&&"function"==typeof n.callback&&n.callback(),-1!==window.location.href.indexOf("/account")&&(window.location.href=$env.locale.url+"/")}))},reset:function(a,e){n(a),t.auth.reset(e.credentials).then((function(t){if(e&&"function"==typeof e.callback){var a=t.data&&t.data.message?t.data.message:"";e.callback(a,!1,t.data)}})).catch((function(t){e&&"function"==typeof e.callback&&t.response.data.errors&&t.response.data.errors.email&&e.callback(t.response.data.errors.email[0],!0)})).finally(e.finally)},resetSms:function(a,e){n(a),t.auth.resetSms(e.credentials).then((function(t){e&&"function"==typeof e.callback&&e.callback(t.data,!1)})).catch((function(t){e&&"function"==typeof e.callback&&t.response.data.error&&e.callback(t.response.data,!0)})).finally(e.finally)},passwordUpdate:function(a,e){n(a),t.auth.passwordUpdate(e.credentials).then((function(t){if(e&&"function"==typeof e.callback){var a=t.data&&t.data.message?t.data.message:"";e.callback(a)}})).catch((function(t){e&&"function"==typeof e.callback&&t.response.data.errors&&t.response.data.errors.email&&e.callback(t.response.data.errors.email[0],!0)})).finally(e.finally)},register:function(a,n){a.commit,t.auth["register"+n.type](n.credentials).then((function(t){n&&"function"==typeof n.callback&&n.callback()})).catch((function(t){n&&"function"==typeof n.catch&&n.catch(t)})).finally(n.finally)},update:function(a,n){a.commit,t.auth.update(n.credentials).then((function(t){n&&"function"==typeof n.callback&&n.callback()})).catch((function(t){n&&"function"==typeof n.catch&&n.catch(t)})).finally(n.finally)}},mutations:i},wishlist:o,compare:l,review:s,order:u,checkout:{namespaced:!0,state:{user:{},payment:null,shipping:null,shippingData:{},dontcall:!1,comment:""},getters:{user:function(t,a,n,e){return Object.keys(t.user).length?t.user:JSON.parse(JSON.stringify(e["auth/me"]))},shipping:function(t){return t.shipping},shippingData:function(t){return t.shippingData},payment:function(t){return t.payment},dontcall:function(t){return t.dontcall},comment:function(t){return t.comment}},mutations:{user:function(t,a){t.user=a},shipping:function(t,a){t.shipping=a},shippingData:function(t,a){t.shippingData=a},payment:function(t,a){t.payment=a},dontcall:function(t,a){t.dontcall=a},comment:function(t,a){t.comment=a},reset:function(t){t.user={},t.payment=null,t.shipping=null,t.shippingData={},t.dontcall=!1,t.comment=""}}}},strict:!1};module.exports=r;
|
|
1
|
+
"use strict";var t=require("@perevorot/shop/dist/api"),a={namespaced:!0,state:{items:[],cross:[],bundles:[],modal:!1},getters:{items:function(t){return t.items},cross:function(t){return t.cross},bundles:function(t){return t.bundles},productQuantity:function(t,a){return function(t){var n=a.items.find((function(a){return a.id===t}));return n?n.quantity:0}},quantity:function(t,a){var n=0;return a.items.forEach((function(t){n+=parseInt(t.quantity)})),n},total:function(t,a){var n=0;return a.items.forEach((function(t){var a=t.attributes.price?t.attributes.price:t.price;if(t.attributes.options&&t.attributes.options.length&&t.options&&t.options.length){var e=0;t.options.forEach((function(a){-1!==t.attributes.options.indexOf(a.id)&&(e+=parseInt(a.price))})),a+=e}n+=a*(!1===t.attributes.active?0:t.quantity)})),n},modal:function(t){return document.documentElement.classList[t.modal?"add":"remove"]("is-modal-open"),t.modal}},actions:{get:function(a,n){var e=a.commit;t.cart.items().then((function(t){e("items",t.data.items),t.data&&t.data.cross&&e("cross",t.data.cross),t.data&&t.data.bundles&&e("bundles",t.data.bundles),"function"==typeof n.callback&&n.callback()})).finally(n.finally)},add:function(a,n){var e=a.commit,c=a.state;t.cart.add(n.product).then((function(t){t.data&&t.data.items&&t.data.items.length?e("items",t.data.items):e("quantity",n.product),t.data&&t.data.cross&&e("cross",t.data.cross),t.data&&t.data.bundles&&e("bundles",t.data.bundles),c.modal||e("modal",!0),"function"==typeof n.callback&&n.callback()})).finally(n.finally)},options:function(a,n){var e=a.commit,c=a.state;t.cart.options(n.product).then((function(t){t.data&&t.data.items&&t.data.items.length&&e("items",t.data.items),c.modal||e("modal",!0),"function"==typeof n.callback&&n.callback()})).finally(n.finally)},quantity:function(a,n){var e=a.commit;t.cart.quantity(n.product).then((function(){e("quantity",n.product),"function"==typeof n.callback&&n.callback()})).finally(n.finally)},remove:function(a,n){var e=a.commit;t.cart.remove(n.id).then((function(t){e("remove",n.id),t.data&&t.data.cross&&e("cross",t.data.cross),t.data&&t.data.bundles&&e("bundles",t.data.bundles),"function"==typeof n.callback&&n.callback()})).finally(n.finally)},clear:function(a,n){var e=a.commit;t.cart.clear(n.id).then((function(){e("clear"),"function"==typeof n.callback&&n.callback()})).finally(n.finally)}},mutations:{modal:function(t,a){t.modal=a},items:function(t,a){t.items=a},cross:function(t,a){t.cross=a},bundles:function(t,a){t.bundles=a},remove:function(t,a){t.items=t.items.filter((function(t){return t.id!==a}))},quantity:function(t,a){var n=t.items.find((function(t){return t.id===a.id}));n.quantity=a.exact?a.exact:n.quantity+a.quantity},clear:function(t){t.items=[],t.cross=[],t.bundles=[]}}};function n(t){if(null==t)throw new TypeError("Cannot destructure undefined")}var e=require("vue-toastification").useToast(),c={me:function(t){return t.user},account:function(t){return t.account},modal:function(t){return document.documentElement.classList[t.modal?"add":"remove"]("is-modal-open"),t.modal},is:function(t){return Object.keys(t.user).length>0}},o={me:function(t,a){t.user=Array.isArray(a.user)&&!a.user.length?{}:a.user,t.account=a.account},modal:function(t,a){t.modal=a}},i={namespaced:!0,state:{items:[],list:[],last:""},getters:{items:function(t){return t.items},item:function(t,a){return function(t){return-1!==a.items.indexOf(t)}},list:function(t){return t.list},last:function(t){return t.last}},actions:{get:function(a,n){var e=a.commit;t.wishlist.items().then((function(t){e("items",t.data.items),"function"==typeof n.callback&&n.callback()})).finally(n.finally)},list:function(a,n){var e=a.commit;t.wishlist.list().then((function(t){e("list",t.data),"function"==typeof n.callback&&n.callback()})).finally(n.finally)},toggle:function(a,n){var e=a.commit;a.state,t.wishlist.toggle(n.id).then((function(t){t.data&&t.data.items&&e("items",t.data.items),t.data&&t.data.last&&e("last",t.data.last),"function"==typeof n.callback&&n.callback()})).finally(n.finally)}},mutations:{items:function(t,a){t.items=a},list:function(t,a){t.list=a},last:function(t,a){t.last=a},remove:function(t,a){t.items=t.items.filter((function(t){return t.id!==a}))}}},l={namespaced:!0,state:{products:[],categories:[],list:[],last:"",modal:null},getters:{products:function(t){return t.products},categories:function(t){return t.categories},product:function(t,a){return function(t){return-1!==a.products.indexOf(t)}},list:function(t){return t.list},last:function(t){return t.last},modal:function(t){return t.modal}},actions:{get:function(a,n){var e=a.commit;t.compare.items().then((function(t){e("products",t.data.products),e("categories",t.data.categories),"function"==typeof n.callback&&n.callback()})).finally(n.finally)},category:function(a,n){var e=a.commit;t.compare.category(n.slug).then((function(t){e("products",t.data.products),e("categories",t.data.categories),"function"==typeof n.callback&&n.callback()})).finally(n.finally)},list:function(a,n){var e=a.commit;t.compare.list().then((function(t){e("list",t.data),"function"==typeof n.callback&&n.callback()})).finally(n.finally)},toggle:function(a,n){var e=a.commit;a.state,t.compare.toggle(n.id).then((function(t){t.data&&(e("products",t.data.products),e("categories",t.data.categories),e("last",t.data.last)),"function"==typeof n.callback&&n.callback(t.data)})).finally(n.finally)},delete:function(a,n){a.commit,a.state,t.compare.delete(n.id).then((function(t){"function"==typeof n.callback&&n.callback(t.data)})).finally(n.finally)},modal:function(a,n){var e=a.commit;a.state,t.compare.modal(n.id).then((function(t){e("modal",t.data),"function"==typeof n.callback&&n.callback(t.data)})).finally(n.finally)}},mutations:{products:function(t,a){t.products=a},categories:function(t,a){t.categories=a},list:function(t,a){t.list=a},remove:function(t,a){t.products=t.products.filter((function(t){return t.id!==a}))},last:function(t,a){t.last=a},modal:function(t,a){t.modal=a}}},s={namespaced:!0,state:{modal:!1},getters:{modal:function(t){return t.modal}},mutations:{modal:function(t,a){document.documentElement.classList[a?"add":"remove"]("is-modal-open"),t.modal=a}}},u={namespaced:!0,state:{steps:{},current:1,modal:!1},getters:{steps:function(t){return t.steps},current:function(t){return t.current},modal:function(t){return t.modal}},mutations:{step:function(t,a){Number.isInteger(a)?t.current=a:a.data&&(t.steps[a.step]=a.data)},stepInit:function(t,a){t.steps[a.step]||(t.steps[a.step]=a.data)},reset:function(t){t.steps={},t.current=1},modal:function(t,a){t.modal=a}}},r={modules:{cart:a,auth:{namespaced:!0,state:{user:{},modal:!1,account:[]},getters:c,actions:{me:function(a,n){var c=a.commit;t.auth.me().then((function(t){c("me",t.data),t.data.flash&&t.data.flash.message&&(console.error(t.data.flash.message),e(t.data.flash.message,{type:t.data.flash.type?t.data.flash.type:"default"})),t.data.flash&&t.data.flash.modal&&c("modal",t.data.flash.modal),n&&"function"==typeof n.callback&&n.callback()})).finally(n&&n.finally?n.finally:function(){})},login:function(a,n){var e=a.commit,c=a.dispatch;t.auth.login(n.credentials).then((function(t){t.data.csrf_token&&($http.defaults.headers.common["X-CSRF-TOKEN"]=t.data.csrf_token,delete t.data.csrf_token),e("me",t.data),e("modal",null),document.documentElement.classList.remove("is-modal-open"),c("cart/get",{finally:function(){}},{root:!0}),c("wishlist/get",{finally:function(){}},{root:!0}),window.localStorage&&window.localStorage.clear(),n&&"function"==typeof n.callback&&n.callback()})).catch((function(t){n&&"function"==typeof n.catch&&n.catch(t)})).finally(n.finally)},logout:function(a,n){var e=a.commit;t.auth.logout().then((function(){e("me",{user:{},account:[]}),e("wishlist/items",[],{root:!0}),window.localStorage&&window.localStorage.clear(),n&&"function"==typeof n.callback&&n.callback(),-1!==window.location.href.indexOf("/account")&&(window.location.href=$env.locale.url+"/")}))},reset:function(a,e){n(a),t.auth.reset(e.credentials).then((function(t){if(e&&"function"==typeof e.callback){var a=t.data&&t.data.message?t.data.message:"";e.callback(a,!1,t.data)}})).catch((function(t){e&&"function"==typeof e.callback&&t.response.data.errors&&t.response.data.errors.email&&e.callback(t.response.data.errors.email[0],!0)})).finally(e.finally)},resetSms:function(a,e){n(a),t.auth.resetSms(e.credentials).then((function(t){e&&"function"==typeof e.callback&&e.callback(t.data,!1)})).catch((function(t){e&&"function"==typeof e.callback&&t.response.data.error&&e.callback(t.response.data,!0)})).finally(e.finally)},passwordUpdate:function(a,e){n(a),t.auth.passwordUpdate(e.credentials).then((function(t){if(e&&"function"==typeof e.callback){var a=t.data&&t.data.message?t.data.message:"";e.callback(a)}})).catch((function(t){e&&"function"==typeof e.callback&&t.response.data.errors&&t.response.data.errors.email&&e.callback(t.response.data.errors.email[0],!0)})).finally(e.finally)},register:function(a,n){a.commit,t.auth["register"+n.type](n.credentials).then((function(t){n&&"function"==typeof n.callback&&n.callback()})).catch((function(t){n&&"function"==typeof n.catch&&n.catch(t)})).finally(n.finally)},update:function(a,n){a.commit,t.auth.update(n.credentials).then((function(t){n&&"function"==typeof n.callback&&n.callback()})).catch((function(t){n&&"function"==typeof n.catch&&n.catch(t)})).finally(n.finally)}},mutations:o},wishlist:i,compare:l,review:s,order:u,checkout:{namespaced:!0,state:{user:{},payment:null,shipping:null,shippingData:{},dontcall:!1,comment:""},getters:{user:function(t,a,n,e){return Object.keys(t.user).length?t.user:JSON.parse(JSON.stringify(e["auth/me"]))},shipping:function(t){return t.shipping},shippingData:function(t){return t.shippingData},payment:function(t){return t.payment},dontcall:function(t){return t.dontcall},comment:function(t){return t.comment}},mutations:{user:function(t,a){t.user=a},shipping:function(t,a){t.shipping=a},shippingData:function(t,a){t.shippingData=a},payment:function(t,a){t.payment=a},dontcall:function(t,a){t.dontcall=a},comment:function(t,a){t.comment=a},reset:function(t){t.user={},t.payment=null,t.shipping=null,t.shippingData={},t.dontcall=!1,t.comment=""}}}},strict:!1};module.exports=r;
|
|
2
2
|
//# sourceMappingURL=store.js.map
|
package/dist/store.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.js","sources":["../src/store/modules/cart.js","../src/store/modules/auth.js","../src/store/modules/wishlist.js","../src/store/modules/compare.js","../src/store/modules/review.js","../src/store/modules/order.js","../src/store/index.js","../src/store/modules/checkout.js"],"sourcesContent":["import {\n cart as api\n} from '@perevorot/shop/dist/api'\n\nconst state = {\n items: [],\n cross: [],\n bundles: [],\n modal: false\n}\n\nconst getters = {\n items: (state) => {\n return state.items;\n },\n\n cross: (state) => {\n return state.cross;\n },\n\n bundles: (state) => {\n return state.bundles;\n },\n\n productQuantity: (state, getters) => (id) => {\n const product = getters.items.find(product => product.id === id);\n\n return product ? product.quantity : 0;\n },\n\n quantity: (state, getters) => {\n let count = 0;\n\n getters.items.forEach((item) => {\n count += parseInt(item.quantity);\n });\n\n return count;\n },\n\n total: (state, getters) => {\n let total = 0;\n\n getters.items.forEach((item) => {\n let price = (item.attributes.price ? item.attributes.price : item.price);\n\n if (item.attributes.options && item.attributes.options.length && item.options && item.options.length) {\n let optionsPrice = 0;\n\n item.options.forEach(option => {\n if (item.attributes.options.indexOf(option.id) !== -1) {\n optionsPrice += parseInt(option.price);\n }\n });\n\n price += optionsPrice;\n }\n\n total +=\n price *\n (item.attributes.active === false ? 0 : item.quantity);\n });\n\n return total;\n },\n\n modal: (state) => {\n document.documentElement.classList[state.modal ? 'add' : 'remove']('is-modal-open');\n\n return state.modal;\n }\n}\n\nconst actions = {\n get({\n commit\n }, data) {\n api.items().then((response) => {\n commit('items', response.data.items);\n\n if (response.data && response.data.cross) {\n commit('cross', response.data.cross);\n }\n\n if (response.data && response.data.bundles) {\n commit('bundles', response.data.bundles);\n }\n\n if (typeof data.callback == 'function') {\n data.callback();\n }\n }).finally(data.finally);\n },\n\n add({\n commit,\n state\n }, data) {\n api.add(data.product).then((response) => {\n if (response.data && response.data.items && response.data.items.length) {\n commit('items', response.data.items);\n } else {\n commit('quantity', data.product);\n }\n\n if (response.data && response.data.cross) {\n commit('cross', response.data.cross);\n }\n\n if (response.data && response.data.bundles) {\n commit('bundles', response.data.bundles);\n }\n\n if (!state.modal) {\n commit('modal', true);\n }\n\n if (typeof data.callback == 'function') {\n data.callback();\n }\n }).finally(data.finally);\n },\n\n options({\n commit,\n state\n }, data) {\n api.options(data.product).then((response) => {\n if (response.data && response.data.items && response.data.items.length) {\n commit('items', response.data.items);\n }\n\n if (!state.modal) {\n commit('modal', true);\n }\n\n if (typeof data.callback == 'function') {\n data.callback();\n }\n }).finally(data.finally);\n },\n\n quantity({\n commit\n }, data) {\n api.quantity(data.product).then(() => {\n commit('quantity', data.product);\n\n if (typeof data.callback == 'function') {\n data.callback();\n }\n }).finally(data.finally);\n },\n\n remove({\n commit\n }, data) {\n api.remove(data.id).then((response) => {\n commit('remove', data.id);\n\n if (response.data && response.data.cross) {\n commit('cross', response.data.cross);\n }\n\n if (response.data && response.data.bundles) {\n commit('bundles', response.data.bundles);\n }\n\n if (typeof data.callback == 'function') {\n data.callback();\n }\n }).finally(data.finally);\n },\n\n clear({\n commit\n }, data) {\n api.clear(data.id).then(() => {\n commit('clear');\n\n if (typeof data.callback == 'function') {\n data.callback();\n }\n }).finally(data.finally);\n }\n}\n\nconst mutations = {\n modal(state, action) {\n state.modal = action;\n },\n\n items(state, items) {\n state.items = items;\n },\n\n cross(state, cross) {\n state.cross = cross;\n },\n\n bundles(state, bundles) {\n state.bundles = bundles;\n },\n\n remove(state, id) {\n state.items = state.items.filter(item => item.id !== id);\n },\n\n quantity(state, item) {\n const product = state.items.find(product => product.id === item.id);\n\n product.quantity = item.exact ? item.exact : (product.quantity + item.quantity);\n },\n\n clear(state) {\n state.items = [];\n state.cross = [];\n state.bundles = [];\n },\n}\n\nexport default {\n namespaced: true,\n state,\n getters,\n actions,\n mutations\n}","import { auth as api } from '@perevorot/shop/dist/api';\n// import {\n// useGlobalToast as useToast\n// } from \"@/global/toast\";\nimport { useToast } from 'vue-toastification';\nconst toast = useToast();\n\nconst state = {\n user: {},\n modal: false,\n account: [],\n};\n\nconst getters = {\n me: (state) => {\n return state.user;\n },\n account: (state) => {\n return state.account;\n },\n modal: (state) => {\n document.documentElement.classList[state.modal ? 'add' : 'remove']('is-modal-open');\n\n return state.modal;\n },\n is: (state) => {\n return Object.keys(state.user).length > 0;\n },\n};\n\nconst actions = {\n me({ commit }, data) {\n api.me()\n .then((response) => {\n commit('me', response.data);\n\n if (response.data.flash && response.data.flash.message) {\n console.error(response.data.flash.message);\n\n toast(response.data.flash.message, {\n type: response.data.flash.type ? response.data.flash.type : 'default',\n });\n }\n\n if (response.data.flash && response.data.flash.modal) {\n commit('modal', response.data.flash.modal);\n }\n\n if (data && typeof data.callback == 'function') {\n data.callback();\n }\n })\n .finally(data && data.finally ? data.finally : () => {});\n },\n login({ commit, dispatch }, data) {\n api.login(data.credentials)\n .then((response) => {\n if (response.data.csrf_token) {\n $http.defaults.headers.common['X-CSRF-TOKEN'] = response.data.csrf_token;\n\n delete response.data.csrf_token;\n }\n\n commit('me', response.data);\n commit('modal', null);\n\n document.documentElement.classList.remove('is-modal-open');\n\n dispatch(\n 'cart/get',\n {\n finally: () => {},\n },\n {\n root: true,\n }\n );\n\n dispatch(\n 'wishlist/get',\n {\n finally: () => {},\n },\n {\n root: true,\n }\n );\n\n if (window.localStorage) {\n window.localStorage.clear();\n }\n\n if (data && typeof data.callback == 'function') {\n data.callback();\n }\n })\n .catch((error) => {\n if (data && typeof data.catch == 'function') {\n data.catch(error);\n }\n })\n .finally(data.finally);\n },\n logout({ commit }, data) {\n api.logout().then(() => {\n commit('me', {\n user: {},\n account: [],\n });\n\n commit('wishlist/items', [], {\n root: true,\n });\n\n if (window.localStorage) {\n window.localStorage.clear();\n }\n\n if (data && typeof data.callback == 'function') {\n data.callback();\n }\n\n if (window.location.href.indexOf('/account') !== -1) {\n window.location.href = $env.locale.url + '/';\n }\n });\n },\n reset({}, data) {\n api.reset(data.credentials)\n .then((response) => {\n if (data && typeof data.callback == 'function') {\n const message = response.data && response.data.message ? response.data.message : '';\n\n data.callback(message, false, response.data);\n }\n })\n .catch((error) => {\n if (data && typeof data.callback == 'function') {\n if (error.response.data.errors && error.response.data.errors.email) {\n data.callback(error.response.data.errors.email[0], true);\n }\n }\n })\n .finally(data.finally);\n },\n resetSms({}, data) {\n api.resetSms(data.credentials)\n .then((response) => {\n if (data && typeof data.callback == 'function') {\n data.callback(response.data, false);\n }\n })\n .catch((error) => {\n if (data && typeof data.callback == 'function') {\n if (error.response.data.error) {\n data.callback(error.response.data, true);\n }\n }\n })\n .finally(data.finally);\n },\n passwordUpdate({}, data) {\n api.passwordUpdate(data.credentials)\n .then((response) => {\n if (data && typeof data.callback == 'function') {\n const message = response.data && response.data.message ? response.data.message : '';\n\n data.callback(message);\n }\n })\n .catch((error) => {\n if (data && typeof data.callback == 'function') {\n if (error.response.data.errors && error.response.data.errors.email) {\n data.callback(error.response.data.errors.email[0], true);\n }\n }\n })\n .finally(data.finally);\n },\n register({ commit }, data) {\n api['register' + data.type](data.credentials)\n .then((response) => {\n if (data && typeof data.callback == 'function') {\n data.callback();\n }\n })\n .catch((error) => {\n if (data && typeof data.catch == 'function') {\n data.catch(error);\n }\n })\n .finally(data.finally);\n },\n update({ commit }, data) {\n api['update'](data.credentials)\n .then((response) => {\n if (data && typeof data.callback == 'function') {\n data.callback();\n }\n })\n .catch((error) => {\n if (data && typeof data.catch == 'function') {\n data.catch(error);\n }\n })\n .finally(data.finally);\n },\n};\n\nconst mutations = {\n me(state, me) {\n state.user = Array.isArray(me.user) && !me.user.length ? {} : me.user;\n state.account = me.account;\n },\n modal(state, action) {\n state.modal = action;\n },\n};\n\nexport default {\n namespaced: true,\n state,\n getters,\n actions,\n mutations,\n};\n","import {\n wishlist as api\n} from '@perevorot/shop/dist/api'\n\nconst state = {\n items: [],\n list: [],\n last: ''\n}\n\nconst getters = {\n items: (state) => {\n return state.items;\n },\n item: (state, getters) => (id) => {\n return getters.items.indexOf(id) !== -1;\n },\n list: (state) => {\n return state.list;\n },\n // badge: (state) => {\n // return state.items.length;\n // },\n last: (state) => {\n return state.last;\n },\n}\n\nconst actions = {\n get({\n commit,\n }, data) {\n api.items().then((response) => {\n commit('items', response.data.items);\n\n if (typeof data.callback == 'function') {\n data.callback();\n }\n }).finally(data.finally);\n },\n\n list({\n commit,\n }, data) {\n api.list().then((response) => {\n commit('list', response.data);\n\n if (typeof data.callback == 'function') {\n data.callback();\n }\n }).finally(data.finally);\n },\n\n toggle({\n commit,\n state\n }, data) {\n api.toggle(data.id).then((response) => {\n if (response.data && response.data.items) {\n commit('items', response.data.items);\n }\n\n if (response.data && response.data.last) {\n commit('last', response.data.last);\n }\n\n if (typeof data.callback == 'function') {\n data.callback();\n }\n }).finally(data.finally);\n },\n}\n\nconst mutations = {\n items(state, items) {\n state.items = items;\n },\n\n list(state, list) {\n state.list = list;\n },\n\n last(state, last) {\n state.last = last;\n },\n\n remove(state, id) {\n state.items = state.items.filter(item => item.id !== id);\n },\n}\n\nexport default {\n namespaced: true,\n state,\n getters,\n actions,\n mutations\n}","import {\n compare as api\n} from '@perevorot/shop/dist/api'\n\nconst state = {\n products: [],\n categories: [],\n list: [],\n last: ''\n}\n\nconst getters = {\n products: (state) => {\n return state.products;\n },\n categories: (state) => {\n return state.categories;\n },\n product: (state, getters) => (id) => {\n return getters.products.indexOf(id) !== -1;\n },\n list: (state) => {\n return state.list;\n },\n last: (state) => {\n return state.last;\n },\n}\n\nconst actions = {\n get({\n commit,\n }, data) {\n api.items().then((response) => {\n commit('products', response.data.products);\n commit('categories', response.data.categories);\n\n if (typeof data.callback == 'function') {\n data.callback();\n }\n }).finally(data.finally);\n },\n\n category({\n commit,\n }, data) {\n api.category(data.slug).then((response) => {\n commit('products', response.data.products);\n commit('categories', response.data.categories);\n\n if (typeof data.callback == 'function') {\n data.callback();\n }\n }).finally(data.finally);\n },\n\n list({\n commit,\n }, data) {\n api.list().then((response) => {\n commit('list', response.data);\n\n if (typeof data.callback == 'function') {\n data.callback();\n }\n }).finally(data.finally);\n },\n\n toggle({\n commit,\n state\n }, data) {\n api.toggle(data.id).then((response) => {\n if (response.data) {\n commit('products', response.data.products);\n commit('categories', response.data.categories);\n commit('last', response.data.last);\n }\n\n if (typeof data.callback == 'function') {\n data.callback(response.data);\n }\n }).finally(data.finally);\n },\n\n delete({\n commit,\n state\n }, data) {\n api.delete(data.id).then((response) => {\n if (typeof data.callback == 'function') {\n data.callback(response.data);\n }\n }).finally(data.finally);\n },\n}\n\nconst mutations = {\n products(state, products) {\n state.products = products;\n },\n\n categories(state, categories) {\n state.categories = categories;\n },\n\n list(state, list) {\n state.list = list;\n },\n\n remove(state, id) {\n state.products = state.products.filter(item => item.id !== id);\n },\n\n last(state, last) {\n state.last = last;\n },\n}\n\nexport default {\n namespaced: true,\n state,\n getters,\n actions,\n mutations\n}","const state = {\n modal: false\n}\n\nconst getters = {\n modal: (state) => {\n return state.modal;\n }\n}\n\nconst mutations = {\n modal(state, action) {\n document.documentElement.classList[action ? 'add' : 'remove']('is-modal-open');\n\n state.modal = action;\n },\n}\n\nexport default {\n namespaced: true,\n state,\n getters,\n mutations\n}","const state = {\n steps: {},\n current: 1,\n modal: false,\n}\n\nconst getters = {\n steps: (state) => {\n return state.steps;\n },\n current: (state) => {\n return state.current;\n },\n modal: (state) => {\n return state.modal;\n }\n}\n\nconst mutations = {\n step(state, data) {\n if (Number.isInteger(data)) {\n state.current = data;\n } else {\n if (data.data) {\n state.steps[data.step] = data.data;\n }\n }\n },\n stepInit(state, data) {\n if (!state.steps[data.step]) {\n state.steps[data.step] = data.data;\n }\n },\n reset(state) {\n state.steps = {};\n state.current = 1;\n },\n modal(state, action) {\n state.modal = action;\n },\n}\n\nexport default {\n namespaced: true,\n state,\n getters,\n mutations\n}","import cart from './modules/cart';\nimport auth from './modules/auth';\nimport wishlist from './modules/wishlist';\nimport compare from './modules/compare';\nimport review from './modules/review';\nimport order from './modules/order';\nimport checkout from './modules/checkout';\n\nexport default {\n modules: {\n cart,\n auth,\n wishlist,\n compare,\n review,\n order,\n checkout,\n },\n strict: false,\n};","const state = {\n user: {},\n payment: null,\n shipping: null,\n shippingData: {},\n dontcall: false,\n comment: '',\n};\n\nconst getters = {\n user: (state, getters, rootState, rootGetters) => {\n return Object.keys(state.user).length ? state.user : JSON.parse(JSON.stringify(rootGetters['auth/me']));\n },\n shipping: (state) => {\n return state.shipping;\n },\n shippingData: (state) => {\n return state.shippingData;\n },\n payment: (state) => {\n return state.payment;\n },\n dontcall: (state) => {\n return state.dontcall;\n },\n comment: (state) => {\n return state.comment;\n },\n};\n\nconst mutations = {\n user(state, data) {\n state.user = data;\n },\n shipping(state, data) {\n state.shipping = data;\n },\n shippingData(state, data) {\n state.shippingData = data;\n },\n payment(state, data) {\n state.payment = data;\n },\n dontcall(state, data) {\n state.dontcall = data;\n },\n comment(state, data) {\n state.comment = data;\n },\n reset(state) {\n state.user = {};\n state.payment = null;\n state.shipping = null;\n state.shippingData = {};\n state.dontcall = false;\n state.comment = '';\n },\n};\n\nexport default {\n namespaced: true,\n state,\n getters,\n mutations,\n};\n"],"names":["namespaced","state","items","cross","bundles","modal","getters","productQuantity","id","product","find","quantity","count","forEach","item","parseInt","total","price","attributes","options","length","optionsPrice","option","indexOf","active","document","documentElement","classList","actions","get","data","commit","api","then","response","callback","add","remove","clear","mutations","action","filter","exact","toast","me","user","account","is","Object","keys","Array","isArray","list","last","toggle","products","categories","category","slug","steps","current","step","Number","isInteger","stepInit","reset","modules","cart","auth","flash","message","console","error","type","login","dispatch","credentials","csrf_token","$http","defaults","headers","common","root","window","localStorage","logout","location","href","$env","locale","url","errors","email","resetSms","passwordUpdate","register","update","wishlist","compare","review","order","checkout","payment","shipping","shippingData","dontcall","comment","rootState","rootGetters","JSON","parse","stringify","strict"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"store.js","sources":["../src/store/modules/cart.js","../src/store/modules/auth.js","../src/store/modules/wishlist.js","../src/store/modules/compare.js","../src/store/modules/review.js","../src/store/modules/order.js","../src/store/index.js","../src/store/modules/checkout.js"],"sourcesContent":["import {\n cart as api\n} from '@perevorot/shop/dist/api'\n\nconst state = {\n items: [],\n cross: [],\n bundles: [],\n modal: false\n}\n\nconst getters = {\n items: (state) => {\n return state.items;\n },\n\n cross: (state) => {\n return state.cross;\n },\n\n bundles: (state) => {\n return state.bundles;\n },\n\n productQuantity: (state, getters) => (id) => {\n const product = getters.items.find(product => product.id === id);\n\n return product ? product.quantity : 0;\n },\n\n quantity: (state, getters) => {\n let count = 0;\n\n getters.items.forEach((item) => {\n count += parseInt(item.quantity);\n });\n\n return count;\n },\n\n total: (state, getters) => {\n let total = 0;\n\n getters.items.forEach((item) => {\n let price = (item.attributes.price ? item.attributes.price : item.price);\n\n if (item.attributes.options && item.attributes.options.length && item.options && item.options.length) {\n let optionsPrice = 0;\n\n item.options.forEach(option => {\n if (item.attributes.options.indexOf(option.id) !== -1) {\n optionsPrice += parseInt(option.price);\n }\n });\n\n price += optionsPrice;\n }\n\n total +=\n price *\n (item.attributes.active === false ? 0 : item.quantity);\n });\n\n return total;\n },\n\n modal: (state) => {\n document.documentElement.classList[state.modal ? 'add' : 'remove']('is-modal-open');\n\n return state.modal;\n }\n}\n\nconst actions = {\n get({\n commit\n }, data) {\n api.items().then((response) => {\n commit('items', response.data.items);\n\n if (response.data && response.data.cross) {\n commit('cross', response.data.cross);\n }\n\n if (response.data && response.data.bundles) {\n commit('bundles', response.data.bundles);\n }\n\n if (typeof data.callback == 'function') {\n data.callback();\n }\n }).finally(data.finally);\n },\n\n add({\n commit,\n state\n }, data) {\n api.add(data.product).then((response) => {\n if (response.data && response.data.items && response.data.items.length) {\n commit('items', response.data.items);\n } else {\n commit('quantity', data.product);\n }\n\n if (response.data && response.data.cross) {\n commit('cross', response.data.cross);\n }\n\n if (response.data && response.data.bundles) {\n commit('bundles', response.data.bundles);\n }\n\n if (!state.modal) {\n commit('modal', true);\n }\n\n if (typeof data.callback == 'function') {\n data.callback();\n }\n }).finally(data.finally);\n },\n\n options({\n commit,\n state\n }, data) {\n api.options(data.product).then((response) => {\n if (response.data && response.data.items && response.data.items.length) {\n commit('items', response.data.items);\n }\n\n if (!state.modal) {\n commit('modal', true);\n }\n\n if (typeof data.callback == 'function') {\n data.callback();\n }\n }).finally(data.finally);\n },\n\n quantity({\n commit\n }, data) {\n api.quantity(data.product).then(() => {\n commit('quantity', data.product);\n\n if (typeof data.callback == 'function') {\n data.callback();\n }\n }).finally(data.finally);\n },\n\n remove({\n commit\n }, data) {\n api.remove(data.id).then((response) => {\n commit('remove', data.id);\n\n if (response.data && response.data.cross) {\n commit('cross', response.data.cross);\n }\n\n if (response.data && response.data.bundles) {\n commit('bundles', response.data.bundles);\n }\n\n if (typeof data.callback == 'function') {\n data.callback();\n }\n }).finally(data.finally);\n },\n\n clear({\n commit\n }, data) {\n api.clear(data.id).then(() => {\n commit('clear');\n\n if (typeof data.callback == 'function') {\n data.callback();\n }\n }).finally(data.finally);\n }\n}\n\nconst mutations = {\n modal(state, action) {\n state.modal = action;\n },\n\n items(state, items) {\n state.items = items;\n },\n\n cross(state, cross) {\n state.cross = cross;\n },\n\n bundles(state, bundles) {\n state.bundles = bundles;\n },\n\n remove(state, id) {\n state.items = state.items.filter(item => item.id !== id);\n },\n\n quantity(state, item) {\n const product = state.items.find(product => product.id === item.id);\n\n product.quantity = item.exact ? item.exact : (product.quantity + item.quantity);\n },\n\n clear(state) {\n state.items = [];\n state.cross = [];\n state.bundles = [];\n },\n}\n\nexport default {\n namespaced: true,\n state,\n getters,\n actions,\n mutations\n}","import { auth as api } from '@perevorot/shop/dist/api';\n// import {\n// useGlobalToast as useToast\n// } from \"@/global/toast\";\nimport { useToast } from 'vue-toastification';\nconst toast = useToast();\n\nconst state = {\n user: {},\n modal: false,\n account: [],\n};\n\nconst getters = {\n me: (state) => {\n return state.user;\n },\n account: (state) => {\n return state.account;\n },\n modal: (state) => {\n document.documentElement.classList[state.modal ? 'add' : 'remove']('is-modal-open');\n\n return state.modal;\n },\n is: (state) => {\n return Object.keys(state.user).length > 0;\n },\n};\n\nconst actions = {\n me({ commit }, data) {\n api.me()\n .then((response) => {\n commit('me', response.data);\n\n if (response.data.flash && response.data.flash.message) {\n console.error(response.data.flash.message);\n\n toast(response.data.flash.message, {\n type: response.data.flash.type ? response.data.flash.type : 'default',\n });\n }\n\n if (response.data.flash && response.data.flash.modal) {\n commit('modal', response.data.flash.modal);\n }\n\n if (data && typeof data.callback == 'function') {\n data.callback();\n }\n })\n .finally(data && data.finally ? data.finally : () => {});\n },\n login({ commit, dispatch }, data) {\n api.login(data.credentials)\n .then((response) => {\n if (response.data.csrf_token) {\n $http.defaults.headers.common['X-CSRF-TOKEN'] = response.data.csrf_token;\n\n delete response.data.csrf_token;\n }\n\n commit('me', response.data);\n commit('modal', null);\n\n document.documentElement.classList.remove('is-modal-open');\n\n dispatch(\n 'cart/get',\n {\n finally: () => {},\n },\n {\n root: true,\n }\n );\n\n dispatch(\n 'wishlist/get',\n {\n finally: () => {},\n },\n {\n root: true,\n }\n );\n\n if (window.localStorage) {\n window.localStorage.clear();\n }\n\n if (data && typeof data.callback == 'function') {\n data.callback();\n }\n })\n .catch((error) => {\n if (data && typeof data.catch == 'function') {\n data.catch(error);\n }\n })\n .finally(data.finally);\n },\n logout({ commit }, data) {\n api.logout().then(() => {\n commit('me', {\n user: {},\n account: [],\n });\n\n commit('wishlist/items', [], {\n root: true,\n });\n\n if (window.localStorage) {\n window.localStorage.clear();\n }\n\n if (data && typeof data.callback == 'function') {\n data.callback();\n }\n\n if (window.location.href.indexOf('/account') !== -1) {\n window.location.href = $env.locale.url + '/';\n }\n });\n },\n reset({}, data) {\n api.reset(data.credentials)\n .then((response) => {\n if (data && typeof data.callback == 'function') {\n const message = response.data && response.data.message ? response.data.message : '';\n\n data.callback(message, false, response.data);\n }\n })\n .catch((error) => {\n if (data && typeof data.callback == 'function') {\n if (error.response.data.errors && error.response.data.errors.email) {\n data.callback(error.response.data.errors.email[0], true);\n }\n }\n })\n .finally(data.finally);\n },\n resetSms({}, data) {\n api.resetSms(data.credentials)\n .then((response) => {\n if (data && typeof data.callback == 'function') {\n data.callback(response.data, false);\n }\n })\n .catch((error) => {\n if (data && typeof data.callback == 'function') {\n if (error.response.data.error) {\n data.callback(error.response.data, true);\n }\n }\n })\n .finally(data.finally);\n },\n passwordUpdate({}, data) {\n api.passwordUpdate(data.credentials)\n .then((response) => {\n if (data && typeof data.callback == 'function') {\n const message = response.data && response.data.message ? response.data.message : '';\n\n data.callback(message);\n }\n })\n .catch((error) => {\n if (data && typeof data.callback == 'function') {\n if (error.response.data.errors && error.response.data.errors.email) {\n data.callback(error.response.data.errors.email[0], true);\n }\n }\n })\n .finally(data.finally);\n },\n register({ commit }, data) {\n api['register' + data.type](data.credentials)\n .then((response) => {\n if (data && typeof data.callback == 'function') {\n data.callback();\n }\n })\n .catch((error) => {\n if (data && typeof data.catch == 'function') {\n data.catch(error);\n }\n })\n .finally(data.finally);\n },\n update({ commit }, data) {\n api['update'](data.credentials)\n .then((response) => {\n if (data && typeof data.callback == 'function') {\n data.callback();\n }\n })\n .catch((error) => {\n if (data && typeof data.catch == 'function') {\n data.catch(error);\n }\n })\n .finally(data.finally);\n },\n};\n\nconst mutations = {\n me(state, me) {\n state.user = Array.isArray(me.user) && !me.user.length ? {} : me.user;\n state.account = me.account;\n },\n modal(state, action) {\n state.modal = action;\n },\n};\n\nexport default {\n namespaced: true,\n state,\n getters,\n actions,\n mutations,\n};\n","import {\n wishlist as api\n} from '@perevorot/shop/dist/api'\n\nconst state = {\n items: [],\n list: [],\n last: ''\n}\n\nconst getters = {\n items: (state) => {\n return state.items;\n },\n item: (state, getters) => (id) => {\n return getters.items.indexOf(id) !== -1;\n },\n list: (state) => {\n return state.list;\n },\n // badge: (state) => {\n // return state.items.length;\n // },\n last: (state) => {\n return state.last;\n },\n}\n\nconst actions = {\n get({\n commit,\n }, data) {\n api.items().then((response) => {\n commit('items', response.data.items);\n\n if (typeof data.callback == 'function') {\n data.callback();\n }\n }).finally(data.finally);\n },\n\n list({\n commit,\n }, data) {\n api.list().then((response) => {\n commit('list', response.data);\n\n if (typeof data.callback == 'function') {\n data.callback();\n }\n }).finally(data.finally);\n },\n\n toggle({\n commit,\n state\n }, data) {\n api.toggle(data.id).then((response) => {\n if (response.data && response.data.items) {\n commit('items', response.data.items);\n }\n\n if (response.data && response.data.last) {\n commit('last', response.data.last);\n }\n\n if (typeof data.callback == 'function') {\n data.callback();\n }\n }).finally(data.finally);\n },\n}\n\nconst mutations = {\n items(state, items) {\n state.items = items;\n },\n\n list(state, list) {\n state.list = list;\n },\n\n last(state, last) {\n state.last = last;\n },\n\n remove(state, id) {\n state.items = state.items.filter(item => item.id !== id);\n },\n}\n\nexport default {\n namespaced: true,\n state,\n getters,\n actions,\n mutations\n}","import { compare as api } from '@perevorot/shop/dist/api';\n\nconst state = {\n products: [],\n categories: [],\n list: [],\n last: '',\n modal: null,\n};\n\nconst getters = {\n products: (state) => {\n return state.products;\n },\n categories: (state) => {\n return state.categories;\n },\n product: (state, getters) => (id) => {\n return getters.products.indexOf(id) !== -1;\n },\n list: (state) => {\n return state.list;\n },\n last: (state) => {\n return state.last;\n },\n modal: (state) => {\n return state.modal;\n },\n};\n\nconst actions = {\n get({ commit }, data) {\n api.items()\n .then((response) => {\n commit('products', response.data.products);\n commit('categories', response.data.categories);\n\n if (typeof data.callback == 'function') {\n data.callback();\n }\n })\n .finally(data.finally);\n },\n\n category({ commit }, data) {\n api.category(data.slug)\n .then((response) => {\n commit('products', response.data.products);\n commit('categories', response.data.categories);\n\n if (typeof data.callback == 'function') {\n data.callback();\n }\n })\n .finally(data.finally);\n },\n\n list({ commit }, data) {\n api.list()\n .then((response) => {\n commit('list', response.data);\n\n if (typeof data.callback == 'function') {\n data.callback();\n }\n })\n .finally(data.finally);\n },\n\n toggle({ commit, state }, data) {\n api.toggle(data.id)\n .then((response) => {\n if (response.data) {\n commit('products', response.data.products);\n commit('categories', response.data.categories);\n commit('last', response.data.last);\n }\n\n if (typeof data.callback == 'function') {\n data.callback(response.data);\n }\n })\n .finally(data.finally);\n },\n\n delete({ commit, state }, data) {\n api.delete(data.id)\n .then((response) => {\n if (typeof data.callback == 'function') {\n data.callback(response.data);\n }\n })\n .finally(data.finally);\n },\n\n modal({ commit, state }, data) {\n api.modal(data.id)\n .then((response) => {\n commit('modal', response.data);\n\n if (typeof data.callback == 'function') {\n data.callback(response.data);\n }\n })\n .finally(data.finally);\n },\n};\n\nconst mutations = {\n products(state, products) {\n state.products = products;\n },\n\n categories(state, categories) {\n state.categories = categories;\n },\n\n list(state, list) {\n state.list = list;\n },\n\n remove(state, id) {\n state.products = state.products.filter((item) => item.id !== id);\n },\n\n last(state, last) {\n state.last = last;\n },\n\n modal(state, modal) {\n state.modal = modal;\n },\n};\n\nexport default {\n namespaced: true,\n state,\n getters,\n actions,\n mutations,\n};\n","const state = {\n modal: false\n}\n\nconst getters = {\n modal: (state) => {\n return state.modal;\n }\n}\n\nconst mutations = {\n modal(state, action) {\n document.documentElement.classList[action ? 'add' : 'remove']('is-modal-open');\n\n state.modal = action;\n },\n}\n\nexport default {\n namespaced: true,\n state,\n getters,\n mutations\n}","const state = {\n steps: {},\n current: 1,\n modal: false,\n}\n\nconst getters = {\n steps: (state) => {\n return state.steps;\n },\n current: (state) => {\n return state.current;\n },\n modal: (state) => {\n return state.modal;\n }\n}\n\nconst mutations = {\n step(state, data) {\n if (Number.isInteger(data)) {\n state.current = data;\n } else {\n if (data.data) {\n state.steps[data.step] = data.data;\n }\n }\n },\n stepInit(state, data) {\n if (!state.steps[data.step]) {\n state.steps[data.step] = data.data;\n }\n },\n reset(state) {\n state.steps = {};\n state.current = 1;\n },\n modal(state, action) {\n state.modal = action;\n },\n}\n\nexport default {\n namespaced: true,\n state,\n getters,\n mutations\n}","import cart from './modules/cart';\nimport auth from './modules/auth';\nimport wishlist from './modules/wishlist';\nimport compare from './modules/compare';\nimport review from './modules/review';\nimport order from './modules/order';\nimport checkout from './modules/checkout';\n\nexport default {\n modules: {\n cart,\n auth,\n wishlist,\n compare,\n review,\n order,\n checkout,\n },\n strict: false,\n};","const state = {\n user: {},\n payment: null,\n shipping: null,\n shippingData: {},\n dontcall: false,\n comment: '',\n};\n\nconst getters = {\n user: (state, getters, rootState, rootGetters) => {\n return Object.keys(state.user).length ? state.user : JSON.parse(JSON.stringify(rootGetters['auth/me']));\n },\n shipping: (state) => {\n return state.shipping;\n },\n shippingData: (state) => {\n return state.shippingData;\n },\n payment: (state) => {\n return state.payment;\n },\n dontcall: (state) => {\n return state.dontcall;\n },\n comment: (state) => {\n return state.comment;\n },\n};\n\nconst mutations = {\n user(state, data) {\n state.user = data;\n },\n shipping(state, data) {\n state.shipping = data;\n },\n shippingData(state, data) {\n state.shippingData = data;\n },\n payment(state, data) {\n state.payment = data;\n },\n dontcall(state, data) {\n state.dontcall = data;\n },\n comment(state, data) {\n state.comment = data;\n },\n reset(state) {\n state.user = {};\n state.payment = null;\n state.shipping = null;\n state.shippingData = {};\n state.dontcall = false;\n state.comment = '';\n },\n};\n\nexport default {\n namespaced: true,\n state,\n getters,\n mutations,\n};\n"],"names":["namespaced","state","items","cross","bundles","modal","getters","productQuantity","id","product","find","quantity","count","forEach","item","parseInt","total","price","attributes","options","length","optionsPrice","option","indexOf","active","document","documentElement","classList","actions","get","data","commit","api","then","response","callback","add","remove","clear","mutations","action","filter","exact","toast","me","user","account","is","Object","keys","Array","isArray","list","last","toggle","products","categories","category","slug","steps","current","step","Number","isInteger","stepInit","reset","modules","cart","auth","flash","message","console","error","type","login","dispatch","credentials","csrf_token","$http","defaults","headers","common","root","window","localStorage","logout","location","href","$env","locale","url","errors","email","resetSms","passwordUpdate","register","update","wishlist","compare","review","order","checkout","payment","shipping","shippingData","dontcall","comment","rootState","rootGetters","JSON","parse","stringify","strict"],"mappings":"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"}
|