@perevorot/shop 2.0.159 → 2.0.161

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.
Files changed (56) hide show
  1. package/dist/api.js.map +1 -1
  2. package/dist/components/account/OrderItem.js.map +1 -1
  3. package/dist/components/account/User.js.map +1 -1
  4. package/dist/components/auth/Forget.js.map +1 -1
  5. package/dist/components/auth/Login.js.map +1 -1
  6. package/dist/components/auth/Reset.js.map +1 -1
  7. package/dist/components/auth/User.js.map +1 -1
  8. package/dist/components/shop/CodeCopy.js.map +1 -1
  9. package/dist/components/shop/Gallery.js.map +1 -1
  10. package/dist/components/shop/Notice.js.map +1 -1
  11. package/dist/components/shop/PromoProducts.js.map +1 -1
  12. package/dist/components/shop/Search.js.map +1 -1
  13. package/dist/components/shop/bundle/Bundle.js.map +1 -1
  14. package/dist/components/shop/bundle/BundleAdd.js.map +1 -1
  15. package/dist/components/shop/cart/Cart.js.map +1 -1
  16. package/dist/components/shop/cart/CartAdd.js +1 -1
  17. package/dist/components/shop/cart/CartAdd.js.map +1 -1
  18. package/dist/components/shop/cart/CartItem.js +1 -1
  19. package/dist/components/shop/cart/CartItem.js.map +1 -1
  20. package/dist/components/shop/cart/CartTrigger.js.map +1 -1
  21. package/dist/components/shop/compare/CompareAdd.js.map +1 -1
  22. package/dist/components/shop/compare/CompareDelete.js.map +1 -1
  23. package/dist/components/shop/compare/CompareDeleteAll.js.map +1 -1
  24. package/dist/components/shop/filters/FilterSearch.js.map +1 -1
  25. package/dist/components/shop/filters/Price.js.map +1 -1
  26. package/dist/components/shop/order/Checkout.js +1 -1
  27. package/dist/components/shop/order/Checkout.js.map +1 -1
  28. package/dist/components/shop/order/CheckoutItem.js.map +1 -1
  29. package/dist/components/shop/order/OneClick.js.map +1 -1
  30. package/dist/components/shop/order/shipping/CheckoutShippingCourier.js.map +1 -1
  31. package/dist/components/shop/order/shipping/CheckoutShippingNovaposhtaAddress.js.map +1 -1
  32. package/dist/components/shop/order/shipping/CheckoutShippingNovaposhtaWarehouse.js.map +1 -1
  33. package/dist/components/shop/order/shipping/CheckoutShippingPickup.js +1 -1
  34. package/dist/components/shop/order/shipping/CheckoutShippingPickup.js.map +1 -1
  35. package/dist/components/shop/order/shipping/CheckoutShippingUkrposhtaWarehouse.js.map +1 -1
  36. package/dist/components/shop/reviews/Question.js.map +1 -1
  37. package/dist/components/shop/reviews/Review.js.map +1 -1
  38. package/dist/components/shop/viewed/Viewed.js.map +1 -1
  39. package/dist/components/shop/viewed/ViewedDelete.js.map +1 -1
  40. package/dist/components/shop/viewed/Viewer.js +1 -1
  41. package/dist/components/shop/viewed/Viewer.js.map +1 -1
  42. package/dist/components/shop/wishlist/WishlistAdd.js +1 -1
  43. package/dist/components/shop/wishlist/WishlistAdd.js.map +1 -1
  44. package/dist/components/shop/wishlist/WishlistDelete.js.map +1 -1
  45. package/dist/forms/FormCheckbox.js.map +1 -1
  46. package/dist/forms/FormCheckboxes.js.map +1 -1
  47. package/dist/forms/FormPassword.js.map +1 -1
  48. package/dist/forms/FormRadio.js.map +1 -1
  49. package/dist/forms/FormRating.js.map +1 -1
  50. package/dist/forms/FormSelect.js.map +1 -1
  51. package/dist/forms/FormSwitch.js.map +1 -1
  52. package/dist/forms/FormText.js.map +1 -1
  53. package/dist/forms/FormTextarea.js.map +1 -1
  54. package/dist/global.js.map +1 -1
  55. package/dist/store.js.map +1 -1
  56. package/package.json +2 -2
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(store) {\n return $http.post(\n $ziggy('auth.register.form'),\n store\n ? {\n store: store,\n }\n : {}\n );\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(cart) {\n return $http.post($ziggy('api.cart'), {\n action: 'get',\n storage: cart,\n });\n },\n\n add(item, cart) {\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 extra: item.extra ? item.extra : false,\n storage: cart,\n });\n },\n\n options(item, cart) {\n return $http.post($ziggy('api.cart'), {\n action: 'options',\n id: item.id,\n options: item.options,\n storage: cart,\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, cart) {\n return $http.post($ziggy('api.cart'), {\n action: 'remove',\n id: id,\n storage: cart,\n });\n },\n\n clear(cart) {\n return $http.post($ziggy('api.cart'), {\n action: 'clear',\n storage: cart,\n });\n },\n\n quantity(item, cart) {\n return $http.post($ziggy('api.cart'), {\n action: 'quantity',\n id: item.id,\n exact: item.exact,\n storage: cart,\n });\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":["index","auth","me","$http","post","$ziggy","login","credentials","logout","reset","resetSms","passwordUpdate","registerShort","registerFull","registerForm","store","update","cart","items","action","storage","add","item","id","quantity","options","extra","addBundle","second","third","remove","clear","exact","compare","category","slug","toggle","delete","_delete","modal","shop","search","term","wishlist"],"mappings":"aAAA,ICMeA,EAAA,CACXC,KDPW,CACXC,GAAE,WACE,OAAOC,MAAMC,KAAKC,OAAO,aAE7BC,MAAK,SAACC,GACF,OAAOJ,MAAMC,KAAKC,OAAO,cAAeE,IAE5CC,OAAM,WACF,OAAOL,MAAMC,KAAKC,OAAO,iBAE7BI,MAAK,SAACF,GACF,OAAOJ,MAAMC,KAAKC,OAAO,uBAAwBE,IAErDG,SAAQ,SAACH,GACL,OAAOJ,MAAMC,KAAKC,OAAO,qBAAsBE,IAEnDI,eAAc,SAACJ,GACX,OAAOJ,MAAMC,KAAKC,OAAO,wBAAyBE,IAEtDK,cAAa,SAACL,GACV,OAAOJ,MAAMC,KAAKC,OAAO,uBAAwBE,IAErDM,aAAY,SAACN,GACT,OAAOJ,MAAMC,KAAKC,OAAO,sBAAuBE,IAEpDO,aAAY,SAACC,GACT,OAAOZ,MAAMC,KACTC,OAAO,sBACPU,EACM,CACIA,MAAOA,GAEX,KAGdC,OAAM,SAACT,GACH,OAAOJ,MAAMC,KAAKC,OAAO,wBAAyBE,KC5BtDU,KCRW,CACXC,MAAK,SAACD,GACF,OAAOd,MAAMC,KAAKC,OAAO,YAAa,CAClCc,OAAQ,MACRC,QAASH,KAIjBI,IAAGA,SAACC,EAAML,GACN,OAAOd,MAAMC,KAAKC,OAAO,YAAa,CAClCc,OAAQ,MACRI,GAAID,EAAKC,GACTC,SAAUF,EAAKE,SACfC,UAASH,EAAKG,SAAUH,EAAKG,QAC7BC,QAAOJ,EAAKI,OAAQJ,EAAKI,MACzBN,QAASH,KAIjBQ,QAAOA,SAACH,EAAML,GACV,OAAOd,MAAMC,KAAKC,OAAO,YAAa,CAClCc,OAAQ,UACRI,GAAID,EAAKC,GACTE,QAASH,EAAKG,QACdL,QAASH,KAIjBU,UAAS,SAACL,GACN,OAAOnB,MAAMC,KAAKC,OAAO,YAAa,CAClCc,OAAQ,YACRI,GAAID,EAAKC,GACTK,OAAQN,EAAKM,OACbC,MAAOP,EAAKO,SAIpBC,OAAMA,SAACP,EAAIN,GACP,OAAOd,MAAMC,KAAKC,OAAO,YAAa,CAClCc,OAAQ,SACRI,GAAIA,EACJH,QAASH,KAIjBc,MAAK,SAACd,GACF,OAAOd,MAAMC,KAAKC,OAAO,YAAa,CAClCc,OAAQ,QACRC,QAASH,KAIjBO,SAAQA,SAACF,EAAML,GACX,OAAOd,MAAMC,KAAKC,OAAO,YAAa,CAClCc,OAAQ,WACRI,GAAID,EAAKC,GACTS,MAAOV,EAAKU,MACZZ,QAASH,MDhDjBgB,QETW,CACXf,MAAK,WACD,OAAOf,MAAMC,KAAKC,OAAO,eAAgB,CACrCc,OAAQ,SAIhBe,SAAQ,SAACC,GACL,OAAOhC,MAAMC,KAAKC,OAAO,eAAgB,CACrCc,OAAQ,WACRgB,KAAMA,KAIdC,OAAM,SAACb,GACH,OAAOpB,MAAMC,KAAKC,OAAO,eAAgB,CACrCc,OAAQ,SACRI,GAAIA,KAEXc,OAAAC,SAEMf,GACH,OAAOpB,MAAMC,KAAKC,OAAO,eAAgB,CACrCc,OAAQ,SACRI,GAAIA,KAGZgB,MAAK,SAAChB,GACF,OAAOpB,MAAMC,KAAKC,OAAO,eAAgB,CACrCc,OAAQ,QACRI,GAAIA,MFpBZiB,KGVW,CACXC,OAAM,SAACC,GACH,OAAOvC,MAAMC,KAAKC,OAAO,cAAe,CACpCqC,KAAMA,MHQdC,SIXW,CACXzB,MAAK,WACD,OAAOf,MAAMC,KAAKC,OAAO,gBAAiB,CACtCc,OAAQ,SAIhBiB,OAAM,SAACb,GACH,OAAOpB,MAAMC,KAAKC,OAAO,gBAAiB,CACtCc,OAAQ,SACRI,GAAIA"}
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(store) {\n return $http.post(\n $ziggy('auth.register.form'),\n store\n ? {\n store: store,\n }\n : {}\n );\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(cart) {\n return $http.post($ziggy('api.cart'), {\n action: 'get',\n storage: cart,\n });\n },\n\n add(item, cart) {\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 extra: item.extra ? item.extra : false,\n storage: cart,\n });\n },\n\n options(item, cart) {\n return $http.post($ziggy('api.cart'), {\n action: 'options',\n id: item.id,\n options: item.options,\n storage: cart,\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, cart) {\n return $http.post($ziggy('api.cart'), {\n action: 'remove',\n id: id,\n storage: cart,\n });\n },\n\n clear(cart) {\n return $http.post($ziggy('api.cart'), {\n action: 'clear',\n storage: cart,\n });\n },\n\n quantity(item, cart) {\n return $http.post($ziggy('api.cart'), {\n action: 'quantity',\n id: item.id,\n exact: item.exact,\n storage: cart,\n });\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":["index","auth","me","$http","post","$ziggy","login","credentials","logout","reset","resetSms","passwordUpdate","registerShort","registerFull","registerForm","store","update","cart","items","action","storage","add","item","id","quantity","options","extra","addBundle","second","third","remove","clear","exact","compare","category","slug","toggle","delete","modal","shop","search","term","wishlist"],"mappings":"aAAA,ICMeA,EAAA,CACXC,KDPW,CACXC,GAAE,WACE,OAAOC,MAAMC,KAAKC,OAAO,aAE7BC,MAAAA,SAAMC,GACF,OAAOJ,MAAMC,KAAKC,OAAO,cAAeE,IAE5CC,OAAM,WACF,OAAOL,MAAMC,KAAKC,OAAO,iBAE7BI,MAAAA,SAAMF,GACF,OAAOJ,MAAMC,KAAKC,OAAO,uBAAwBE,IAErDG,SAAAA,SAASH,GACL,OAAOJ,MAAMC,KAAKC,OAAO,qBAAsBE,IAEnDI,eAAAA,SAAeJ,GACX,OAAOJ,MAAMC,KAAKC,OAAO,wBAAyBE,IAEtDK,cAAAA,SAAcL,GACV,OAAOJ,MAAMC,KAAKC,OAAO,uBAAwBE,IAErDM,aAAAA,SAAaN,GACT,OAAOJ,MAAMC,KAAKC,OAAO,sBAAuBE,IAEpDO,aAAAA,SAAaC,GACT,OAAOZ,MAAMC,KACTC,OAAO,sBACPU,EACM,CACIA,MAAOA,GAEX,KAGdC,OAAAA,SAAOT,GACH,OAAOJ,MAAMC,KAAKC,OAAO,wBAAyBE,KC5BtDU,KCRW,CACXC,MAAAA,SAAMD,GACF,OAAOd,MAAMC,KAAKC,OAAO,YAAa,CAClCc,OAAQ,MACRC,QAASH,KAIjBI,aAAIC,EAAML,GACN,OAAOd,MAAMC,KAAKC,OAAO,YAAa,CAClCc,OAAQ,MACRI,GAAID,EAAKC,GACTC,SAAUF,EAAKE,SACfC,UAASH,EAAKG,SAAUH,EAAKG,QAC7BC,QAAOJ,EAAKI,OAAQJ,EAAKI,MACzBN,QAASH,KAIjBQ,iBAAQH,EAAML,GACV,OAAOd,MAAMC,KAAKC,OAAO,YAAa,CAClCc,OAAQ,UACRI,GAAID,EAAKC,GACTE,QAASH,EAAKG,QACdL,QAASH,KAIjBU,UAAAA,SAAUL,GACN,OAAOnB,MAAMC,KAAKC,OAAO,YAAa,CAClCc,OAAQ,YACRI,GAAID,EAAKC,GACTK,OAAQN,EAAKM,OACbC,MAAOP,EAAKO,SAIpBC,gBAAOP,EAAIN,GACP,OAAOd,MAAMC,KAAKC,OAAO,YAAa,CAClCc,OAAQ,SACRI,GAAIA,EACJH,QAASH,KAIjBc,MAAAA,SAAMd,GACF,OAAOd,MAAMC,KAAKC,OAAO,YAAa,CAClCc,OAAQ,QACRC,QAASH,KAIjBO,kBAASF,EAAML,GACX,OAAOd,MAAMC,KAAKC,OAAO,YAAa,CAClCc,OAAQ,WACRI,GAAID,EAAKC,GACTS,MAAOV,EAAKU,MACZZ,QAASH,MDhDjBgB,QETW,CACXf,MAAK,WACD,OAAOf,MAAMC,KAAKC,OAAO,eAAgB,CACrCc,OAAQ,SAIhBe,SAAAA,SAASC,GACL,OAAOhC,MAAMC,KAAKC,OAAO,eAAgB,CACrCc,OAAQ,WACRgB,KAAMA,KAIdC,OAAAA,SAAOb,GACH,OAAOpB,MAAMC,KAAKC,OAAO,eAAgB,CACrCc,OAAQ,SACRI,GAAIA,KAEXc,OAEDA,SAAOd,GACH,OAAOpB,MAAMC,KAAKC,OAAO,eAAgB,CACrCc,OAAQ,SACRI,GAAIA,KAGZe,MAAAA,SAAMf,GACF,OAAOpB,MAAMC,KAAKC,OAAO,eAAgB,CACrCc,OAAQ,QACRI,GAAIA,MFpBZgB,KGVW,CACXC,OAAAA,SAAOC,GACH,OAAOtC,MAAMC,KAAKC,OAAO,cAAe,CACpCoC,KAAMA,MHQdC,SIXW,CACXxB,MAAK,WACD,OAAOf,MAAMC,KAAKC,OAAO,gBAAiB,CACtCc,OAAQ,SAIhBiB,OAAAA,SAAOb,GACH,OAAOpB,MAAMC,KAAKC,OAAO,gBAAiB,CACtCc,OAAQ,SACRI,GAAIA"}
@@ -1 +1 @@
1
- {"version":3,"file":"OrderItem.js","sources":["../../../src/components/account/OrderItem.vue","../../../src/components/account/OrderItem.vue?vue&type=template&id=34dcd282&lang.js"],"sourcesContent":["<template>\n <div class=\"history-order\" v-bind:class=\"{ 'is-open': isOpen }\">\n <div class=\"history-order-head\" @click=\"toggle\">\n <div class=\"history-order-title\">\n №{{ item.id }} {{ __('shop.cart.bydate') }} {{ item.date }} <span>{{ pluralize(item.positions.length, __('shop.pluralize.products')) }} {{ __('shop.cart.bysum') }} <span v-html=\"$filters.price(item.total)\"></span></span>\n </div>\n <div class=\"history-order-status\" v-bind:style=\"'color:' + item.status.color\">{{ item.status.name }}</div>\n </div>\n <div class=\"history-order-body\">\n <table class=\"history-order-table\">\n <thead>\n <tr>\n <th>{{ __('shop.cart.table.product') }}</th>\n <th>{{ __('shop.cart.table.price') }}</th>\n <th>{{ __('shop.cart.table.quantity') }}</th>\n <th>{{ __('shop.cart.table.sum') }}</th>\n </tr>\n </thead>\n <tbody>\n <tr v-for=\"(p, key) in item.positions\" v-bind:key=\"key\">\n <td>\n <div class=\"product\">\n <div class=\"product-photo\">\n <img :src=\"p.image\" v-if=\"p.image\" />\n <img src=\"/images/blank.png\" :alt=\"p.name\" v-else />\n </div>\n <div class=\"product-info\">\n <a :href=\"p.category.href\" class=\"product-category\">{{ p.category.name }}</a>\n <a :href=\"p.href\" class=\"product-title\">{{ p.name }}</a>\n </div>\n </div>\n </td>\n <td>\n <div class=\"cell-title\">{{ __('shop.cart.table.price') }}</div>\n <div v-html=\"$filters.price(p.price)\"></div>\n </td>\n <td>\n <div class=\"cell-title\">{{ __('shop.cart.table.quantity') }}</div>\n <div>{{ p.quantity }}</div>\n </td>\n <td>\n <div class=\"cell-title\">{{ __('shop.cart.table.sum') }}</div>\n <div v-html=\"$filters.price(p.quantity * p.price)\"></div>\n </td>\n </tr>\n </tbody>\n </table>\n <div class=\"history-order-summary\">\n <div class=\"history-order-delivery-payment\" v-if=\"item.delivery && item.payment\">\n <div class=\"delivery-group\">\n <div>{{ __('shop.cart.shipment_info') }}</div>\n <div>\n {{ item.delivery }} <br />\n <span v-html=\"item.property.pickup_name ? item.property.pickup_name + '<br>' : ''\"></span>\n <span v-html=\"item.property.novaposhta_city ? item.property.novaposhta_city + '<br>' + item.property.novaposhta_warehouse + '<br>' : ''\"></span>\n <span v-html=\"addressName(item.property) + '<br>'\"></span>\n <span v-html=\"item.property.shipping_time ? item.property.shipping_time + '<br />' : ''\"></span>\n </div>\n </div>\n <div class=\"payment-group\">\n <div>{{ __('shop.cart.payment_info') }}</div>\n <div>{{ item.payment }}</div>\n </div>\n </div>\n <div class=\"history-order-total\">\n <div class=\"total-item products-amount\">\n {{ __('shop.cart.products') }}: <span>{{ item.positions.length }}</span>\n </div>\n <div class=\"total-item summ-regular\">{{ __('shop.cart.table.sum') }}: <span v-html=\"$filters.price(item.total)\"></span></div>\n <a @click=\"repeat\" class=\"repeat-checkout-btn\">{{ __('shop.cart.repeat') }}</a>\n </div>\n </div>\n </div>\n </div>\n</template>\n<script>\nimport { ref, defineComponent } from 'vue';\nimport { useToast } from \"vue-toastification\";\nimport { useStore } from 'vuex';\n\nexport default defineComponent({\n props: {\n item: Object\n },\n setup(props) {\n const store = useStore();\n const toast = useToast();\n const item = props.item;\n const isOpen = ref(false);\n\n const toggle = () => {\n isOpen.value = !isOpen.value;\n };\n\n const pluralize = (count, words) => {\n let cases = [2, 0, 1, 1, 1, 2];\n\n return count + ' ' + words[count % 100 > 4 && count % 100 < 20 ? 2 : cases[Math.min(count % 10, 5)]];\n };\n\n const addressName = (item) => {\n if (!item) {\n return '';\n }\n\n return (item.shipping_postcode ? item.shipping_postcode + ', ' : '') + (item.shipping_city ? item.shipping_city : '') + (item.shipping_street ? ', ' + item.shipping_street : '') + (item.shipping_house ? ' ' + item.shipping_house : '') + (item.shipping_building ? ', ' + __('shop.address.building') + ' ' + item.shipping_building : '') + (item.shipping_flat ? ', ' + __('shop.address.apartment') + ' ' + item.shipping_flat : '') + (item.shipping_floor ? ', ' + item.shipping_floor + __('shop.address.floor') : '');\n };\n\n const repeat = () => {\n $http\n .post($ziggy('account.forward.orders'), {\n action: 'repeat',\n id: item.id\n })\n .then((response) => {\n toast(__('shop.cart.repeated'), {\n type: 'success'\n });\n\n store.dispatch('cart/get', {\n finally: () => { }\n });\n })\n .catch(() => {\n toast(__('shop.cart.repeated_error'), {\n type: 'error'\n });\n });\n };\n\n return {\n item,\n isOpen,\n toggle,\n pluralize,\n addressName,\n repeat\n };\n }\n});\n</script>\n","<template>\n <div class=\"history-order\" v-bind:class=\"{ 'is-open': isOpen }\">\n <div class=\"history-order-head\" @click=\"toggle\">\n <div class=\"history-order-title\">\n №{{ item.id }} {{ __('shop.cart.bydate') }} {{ item.date }} <span>{{ pluralize(item.positions.length, __('shop.pluralize.products')) }} {{ __('shop.cart.bysum') }} <span v-html=\"$filters.price(item.total)\"></span></span>\n </div>\n <div class=\"history-order-status\" v-bind:style=\"'color:' + item.status.color\">{{ item.status.name }}</div>\n </div>\n <div class=\"history-order-body\">\n <table class=\"history-order-table\">\n <thead>\n <tr>\n <th>{{ __('shop.cart.table.product') }}</th>\n <th>{{ __('shop.cart.table.price') }}</th>\n <th>{{ __('shop.cart.table.quantity') }}</th>\n <th>{{ __('shop.cart.table.sum') }}</th>\n </tr>\n </thead>\n <tbody>\n <tr v-for=\"(p, key) in item.positions\" v-bind:key=\"key\">\n <td>\n <div class=\"product\">\n <div class=\"product-photo\">\n <img :src=\"p.image\" v-if=\"p.image\" />\n <img src=\"/images/blank.png\" :alt=\"p.name\" v-else />\n </div>\n <div class=\"product-info\">\n <a :href=\"p.category.href\" class=\"product-category\">{{ p.category.name }}</a>\n <a :href=\"p.href\" class=\"product-title\">{{ p.name }}</a>\n </div>\n </div>\n </td>\n <td>\n <div class=\"cell-title\">{{ __('shop.cart.table.price') }}</div>\n <div v-html=\"$filters.price(p.price)\"></div>\n </td>\n <td>\n <div class=\"cell-title\">{{ __('shop.cart.table.quantity') }}</div>\n <div>{{ p.quantity }}</div>\n </td>\n <td>\n <div class=\"cell-title\">{{ __('shop.cart.table.sum') }}</div>\n <div v-html=\"$filters.price(p.quantity * p.price)\"></div>\n </td>\n </tr>\n </tbody>\n </table>\n <div class=\"history-order-summary\">\n <div class=\"history-order-delivery-payment\" v-if=\"item.delivery && item.payment\">\n <div class=\"delivery-group\">\n <div>{{ __('shop.cart.shipment_info') }}</div>\n <div>\n {{ item.delivery }} <br />\n <span v-html=\"item.property.pickup_name ? item.property.pickup_name + '<br>' : ''\"></span>\n <span v-html=\"item.property.novaposhta_city ? item.property.novaposhta_city + '<br>' + item.property.novaposhta_warehouse + '<br>' : ''\"></span>\n <span v-html=\"addressName(item.property) + '<br>'\"></span>\n <span v-html=\"item.property.shipping_time ? item.property.shipping_time + '<br />' : ''\"></span>\n </div>\n </div>\n <div class=\"payment-group\">\n <div>{{ __('shop.cart.payment_info') }}</div>\n <div>{{ item.payment }}</div>\n </div>\n </div>\n <div class=\"history-order-total\">\n <div class=\"total-item products-amount\">\n {{ __('shop.cart.products') }}: <span>{{ item.positions.length }}</span>\n </div>\n <div class=\"total-item summ-regular\">{{ __('shop.cart.table.sum') }}: <span v-html=\"$filters.price(item.total)\"></span></div>\n <a @click=\"repeat\" class=\"repeat-checkout-btn\">{{ __('shop.cart.repeat') }}</a>\n </div>\n </div>\n </div>\n </div>\n</template>\n<script>\nimport { ref, defineComponent } from 'vue';\nimport { useToast } from \"vue-toastification\";\nimport { useStore } from 'vuex';\n\nexport default defineComponent({\n props: {\n item: Object\n },\n setup(props) {\n const store = useStore();\n const toast = useToast();\n const item = props.item;\n const isOpen = ref(false);\n\n const toggle = () => {\n isOpen.value = !isOpen.value;\n };\n\n const pluralize = (count, words) => {\n let cases = [2, 0, 1, 1, 1, 2];\n\n return count + ' ' + words[count % 100 > 4 && count % 100 < 20 ? 2 : cases[Math.min(count % 10, 5)]];\n };\n\n const addressName = (item) => {\n if (!item) {\n return '';\n }\n\n return (item.shipping_postcode ? item.shipping_postcode + ', ' : '') + (item.shipping_city ? item.shipping_city : '') + (item.shipping_street ? ', ' + item.shipping_street : '') + (item.shipping_house ? ' ' + item.shipping_house : '') + (item.shipping_building ? ', ' + __('shop.address.building') + ' ' + item.shipping_building : '') + (item.shipping_flat ? ', ' + __('shop.address.apartment') + ' ' + item.shipping_flat : '') + (item.shipping_floor ? ', ' + item.shipping_floor + __('shop.address.floor') : '');\n };\n\n const repeat = () => {\n $http\n .post($ziggy('account.forward.orders'), {\n action: 'repeat',\n id: item.id\n })\n .then((response) => {\n toast(__('shop.cart.repeated'), {\n type: 'success'\n });\n\n store.dispatch('cart/get', {\n finally: () => { }\n });\n })\n .catch(() => {\n toast(__('shop.cart.repeated_error'), {\n type: 'error'\n });\n });\n };\n\n return {\n item,\n isOpen,\n toggle,\n pluralize,\n addressName,\n repeat\n };\n }\n});\n</script>\n"],"names":["script","defineComponent","props","item","Object","setup","store","useStore","toast","useToast","isOpen","ref","toggle","value","pluralize","count","words","Math","min","addressName","shipping_postcode","shipping_city","shipping_street","shipping_house","shipping_building","__","shipping_flat","shipping_floor","repeat","$http","post","$ziggy","action","id","then","response","type","dispatch","finally","_hoisted_1","class","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_9","_hoisted_12","_hoisted_14","_hoisted_15","_hoisted_17","_hoisted_19","_createElementVNode","createElementVNode","_hoisted_25","_hoisted_26","_hoisted_27","_hoisted_28","_createElementBlock","createElementBlock","_normalizeClass","is-open","_ctx","onClick","apply","arguments","_createTextVNode","createTextVNode","_toDisplayString","date","positions","length","toDisplayString","innerHTML","$filters","price","total","style","_normalizeStyle","normalizeStyle","status","color","name","_openBlock","openBlock","_Fragment","p","key","image","src","alt","href","category","_hoisted_10","quantity","delivery","payment","_hoisted_18","_hoisted_20","property","pickup_name","novaposhta_city","novaposhta_warehouse","shipping_time"],"mappings":"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"}
1
+ {"version":3,"file":"OrderItem.js","sources":["../../../src/components/account/OrderItem.vue","../../../src/components/account/OrderItem.vue?vue&type=template&id=34dcd282&lang.js"],"sourcesContent":["<template>\n <div class=\"history-order\" v-bind:class=\"{ 'is-open': isOpen }\">\n <div class=\"history-order-head\" @click=\"toggle\">\n <div class=\"history-order-title\">\n №{{ item.id }} {{ __('shop.cart.bydate') }} {{ item.date }} <span>{{ pluralize(item.positions.length, __('shop.pluralize.products')) }} {{ __('shop.cart.bysum') }} <span v-html=\"$filters.price(item.total)\"></span></span>\n </div>\n <div class=\"history-order-status\" v-bind:style=\"'color:' + item.status.color\">{{ item.status.name }}</div>\n </div>\n <div class=\"history-order-body\">\n <table class=\"history-order-table\">\n <thead>\n <tr>\n <th>{{ __('shop.cart.table.product') }}</th>\n <th>{{ __('shop.cart.table.price') }}</th>\n <th>{{ __('shop.cart.table.quantity') }}</th>\n <th>{{ __('shop.cart.table.sum') }}</th>\n </tr>\n </thead>\n <tbody>\n <tr v-for=\"(p, key) in item.positions\" v-bind:key=\"key\">\n <td>\n <div class=\"product\">\n <div class=\"product-photo\">\n <img :src=\"p.image\" v-if=\"p.image\" />\n <img src=\"/images/blank.png\" :alt=\"p.name\" v-else />\n </div>\n <div class=\"product-info\">\n <a :href=\"p.category.href\" class=\"product-category\">{{ p.category.name }}</a>\n <a :href=\"p.href\" class=\"product-title\">{{ p.name }}</a>\n </div>\n </div>\n </td>\n <td>\n <div class=\"cell-title\">{{ __('shop.cart.table.price') }}</div>\n <div v-html=\"$filters.price(p.price)\"></div>\n </td>\n <td>\n <div class=\"cell-title\">{{ __('shop.cart.table.quantity') }}</div>\n <div>{{ p.quantity }}</div>\n </td>\n <td>\n <div class=\"cell-title\">{{ __('shop.cart.table.sum') }}</div>\n <div v-html=\"$filters.price(p.quantity * p.price)\"></div>\n </td>\n </tr>\n </tbody>\n </table>\n <div class=\"history-order-summary\">\n <div class=\"history-order-delivery-payment\" v-if=\"item.delivery && item.payment\">\n <div class=\"delivery-group\">\n <div>{{ __('shop.cart.shipment_info') }}</div>\n <div>\n {{ item.delivery }} <br />\n <span v-html=\"item.property.pickup_name ? item.property.pickup_name + '<br>' : ''\"></span>\n <span v-html=\"item.property.novaposhta_city ? item.property.novaposhta_city + '<br>' + item.property.novaposhta_warehouse + '<br>' : ''\"></span>\n <span v-html=\"addressName(item.property) + '<br>'\"></span>\n <span v-html=\"item.property.shipping_time ? item.property.shipping_time + '<br />' : ''\"></span>\n </div>\n </div>\n <div class=\"payment-group\">\n <div>{{ __('shop.cart.payment_info') }}</div>\n <div>{{ item.payment }}</div>\n </div>\n </div>\n <div class=\"history-order-total\">\n <div class=\"total-item products-amount\">\n {{ __('shop.cart.products') }}: <span>{{ item.positions.length }}</span>\n </div>\n <div class=\"total-item summ-regular\">{{ __('shop.cart.table.sum') }}: <span v-html=\"$filters.price(item.total)\"></span></div>\n <a @click=\"repeat\" class=\"repeat-checkout-btn\">{{ __('shop.cart.repeat') }}</a>\n </div>\n </div>\n </div>\n </div>\n</template>\n<script>\nimport { ref, defineComponent } from 'vue';\nimport { useToast } from \"vue-toastification\";\nimport { useStore } from 'vuex';\n\nexport default defineComponent({\n props: {\n item: Object\n },\n setup(props) {\n const store = useStore();\n const toast = useToast();\n const item = props.item;\n const isOpen = ref(false);\n\n const toggle = () => {\n isOpen.value = !isOpen.value;\n };\n\n const pluralize = (count, words) => {\n let cases = [2, 0, 1, 1, 1, 2];\n\n return count + ' ' + words[count % 100 > 4 && count % 100 < 20 ? 2 : cases[Math.min(count % 10, 5)]];\n };\n\n const addressName = (item) => {\n if (!item) {\n return '';\n }\n\n return (item.shipping_postcode ? item.shipping_postcode + ', ' : '') + (item.shipping_city ? item.shipping_city : '') + (item.shipping_street ? ', ' + item.shipping_street : '') + (item.shipping_house ? ' ' + item.shipping_house : '') + (item.shipping_building ? ', ' + __('shop.address.building') + ' ' + item.shipping_building : '') + (item.shipping_flat ? ', ' + __('shop.address.apartment') + ' ' + item.shipping_flat : '') + (item.shipping_floor ? ', ' + item.shipping_floor + __('shop.address.floor') : '');\n };\n\n const repeat = () => {\n $http\n .post($ziggy('account.forward.orders'), {\n action: 'repeat',\n id: item.id\n })\n .then((response) => {\n toast(__('shop.cart.repeated'), {\n type: 'success'\n });\n\n store.dispatch('cart/get', {\n finally: () => { }\n });\n })\n .catch(() => {\n toast(__('shop.cart.repeated_error'), {\n type: 'error'\n });\n });\n };\n\n return {\n item,\n isOpen,\n toggle,\n pluralize,\n addressName,\n repeat\n };\n }\n});\n</script>\n","<template>\n <div class=\"history-order\" v-bind:class=\"{ 'is-open': isOpen }\">\n <div class=\"history-order-head\" @click=\"toggle\">\n <div class=\"history-order-title\">\n №{{ item.id }} {{ __('shop.cart.bydate') }} {{ item.date }} <span>{{ pluralize(item.positions.length, __('shop.pluralize.products')) }} {{ __('shop.cart.bysum') }} <span v-html=\"$filters.price(item.total)\"></span></span>\n </div>\n <div class=\"history-order-status\" v-bind:style=\"'color:' + item.status.color\">{{ item.status.name }}</div>\n </div>\n <div class=\"history-order-body\">\n <table class=\"history-order-table\">\n <thead>\n <tr>\n <th>{{ __('shop.cart.table.product') }}</th>\n <th>{{ __('shop.cart.table.price') }}</th>\n <th>{{ __('shop.cart.table.quantity') }}</th>\n <th>{{ __('shop.cart.table.sum') }}</th>\n </tr>\n </thead>\n <tbody>\n <tr v-for=\"(p, key) in item.positions\" v-bind:key=\"key\">\n <td>\n <div class=\"product\">\n <div class=\"product-photo\">\n <img :src=\"p.image\" v-if=\"p.image\" />\n <img src=\"/images/blank.png\" :alt=\"p.name\" v-else />\n </div>\n <div class=\"product-info\">\n <a :href=\"p.category.href\" class=\"product-category\">{{ p.category.name }}</a>\n <a :href=\"p.href\" class=\"product-title\">{{ p.name }}</a>\n </div>\n </div>\n </td>\n <td>\n <div class=\"cell-title\">{{ __('shop.cart.table.price') }}</div>\n <div v-html=\"$filters.price(p.price)\"></div>\n </td>\n <td>\n <div class=\"cell-title\">{{ __('shop.cart.table.quantity') }}</div>\n <div>{{ p.quantity }}</div>\n </td>\n <td>\n <div class=\"cell-title\">{{ __('shop.cart.table.sum') }}</div>\n <div v-html=\"$filters.price(p.quantity * p.price)\"></div>\n </td>\n </tr>\n </tbody>\n </table>\n <div class=\"history-order-summary\">\n <div class=\"history-order-delivery-payment\" v-if=\"item.delivery && item.payment\">\n <div class=\"delivery-group\">\n <div>{{ __('shop.cart.shipment_info') }}</div>\n <div>\n {{ item.delivery }} <br />\n <span v-html=\"item.property.pickup_name ? item.property.pickup_name + '<br>' : ''\"></span>\n <span v-html=\"item.property.novaposhta_city ? item.property.novaposhta_city + '<br>' + item.property.novaposhta_warehouse + '<br>' : ''\"></span>\n <span v-html=\"addressName(item.property) + '<br>'\"></span>\n <span v-html=\"item.property.shipping_time ? item.property.shipping_time + '<br />' : ''\"></span>\n </div>\n </div>\n <div class=\"payment-group\">\n <div>{{ __('shop.cart.payment_info') }}</div>\n <div>{{ item.payment }}</div>\n </div>\n </div>\n <div class=\"history-order-total\">\n <div class=\"total-item products-amount\">\n {{ __('shop.cart.products') }}: <span>{{ item.positions.length }}</span>\n </div>\n <div class=\"total-item summ-regular\">{{ __('shop.cart.table.sum') }}: <span v-html=\"$filters.price(item.total)\"></span></div>\n <a @click=\"repeat\" class=\"repeat-checkout-btn\">{{ __('shop.cart.repeat') }}</a>\n </div>\n </div>\n </div>\n </div>\n</template>\n<script>\nimport { ref, defineComponent } from 'vue';\nimport { useToast } from \"vue-toastification\";\nimport { useStore } from 'vuex';\n\nexport default defineComponent({\n props: {\n item: Object\n },\n setup(props) {\n const store = useStore();\n const toast = useToast();\n const item = props.item;\n const isOpen = ref(false);\n\n const toggle = () => {\n isOpen.value = !isOpen.value;\n };\n\n const pluralize = (count, words) => {\n let cases = [2, 0, 1, 1, 1, 2];\n\n return count + ' ' + words[count % 100 > 4 && count % 100 < 20 ? 2 : cases[Math.min(count % 10, 5)]];\n };\n\n const addressName = (item) => {\n if (!item) {\n return '';\n }\n\n return (item.shipping_postcode ? item.shipping_postcode + ', ' : '') + (item.shipping_city ? item.shipping_city : '') + (item.shipping_street ? ', ' + item.shipping_street : '') + (item.shipping_house ? ' ' + item.shipping_house : '') + (item.shipping_building ? ', ' + __('shop.address.building') + ' ' + item.shipping_building : '') + (item.shipping_flat ? ', ' + __('shop.address.apartment') + ' ' + item.shipping_flat : '') + (item.shipping_floor ? ', ' + item.shipping_floor + __('shop.address.floor') : '');\n };\n\n const repeat = () => {\n $http\n .post($ziggy('account.forward.orders'), {\n action: 'repeat',\n id: item.id\n })\n .then((response) => {\n toast(__('shop.cart.repeated'), {\n type: 'success'\n });\n\n store.dispatch('cart/get', {\n finally: () => { }\n });\n })\n .catch(() => {\n toast(__('shop.cart.repeated_error'), {\n type: 'error'\n });\n });\n };\n\n return {\n item,\n isOpen,\n toggle,\n pluralize,\n addressName,\n repeat\n };\n }\n});\n</script>\n"],"names":["script","defineComponent","props","item","Object","setup","store","useStore","toast","useToast","isOpen","ref","toggle","value","pluralize","count","words","Math","min","addressName","shipping_postcode","shipping_city","shipping_street","shipping_house","shipping_building","__","shipping_flat","shipping_floor","repeat","$http","post","$ziggy","action","id","then","response","type","dispatch","finally","_hoisted_1","class","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_9","_hoisted_12","_hoisted_14","_hoisted_15","_hoisted_17","_hoisted_19","_createElementVNode","createElementVNode","_hoisted_25","_hoisted_26","_hoisted_27","_hoisted_28","_createElementBlock","createElementBlock","_normalizeClass","is-open","_ctx","onClick","apply","arguments","_createTextVNode","createTextVNode","_toDisplayString","date","positions","length","toDisplayString","innerHTML","$filters","price","total","style","_normalizeStyle","normalizeStyle","status","color","name","_openBlock","openBlock","_Fragment","p","key","image","src","alt","href","category","_hoisted_10","quantity","delivery","payment","_hoisted_18","_hoisted_20","property","pickup_name","novaposhta_city","novaposhta_warehouse","shipping_time"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"User.js","sources":["../../../src/components/account/User.vue","../../../src/components/account/User.vue?vue&type=template&id=4578454c&lang.js"],"sourcesContent":["<template>\n <div v-if=\"!loadingForm\" v-bind:class=\"model.user_type ? 'is-user-type-' + model.user_type.replaceAll('_', '-') : null\">\n <SchemaForm schemaRowClasses=\"field\" :schema=\"schema\" :validation-schema=\"validation\" :initial-errors=\"errors\" :key=\"key\" @submit=\"onSubmit\">\n <template #afterForm>\n <div class=\"field\">\n <div class=\"columns is-vcentered\">\n <div class=\"column\">\n <button class=\"button is-link\" type=\"submit\" v-bind:class=\"{ 'is-loading': loading }\">\n {{ __('auth.' + mode + '.form.save') }}\n </button>\n </div>\n </div>\n </div>\n </template>\n </SchemaForm>\n </div>\n</template>\n<script>\nimport { ref } from 'vue';\nimport { useStore } from 'vuex';\nimport { SchemaFormFactory, useSchemaForm } from 'formvuelate';\nimport { useToast } from \"vue-toastification\";\n\nimport VeeValidatePlugin from '@formvuelate/plugin-vee-validate';\nimport { auth as api } from '@perevorot/shop/dist/api';\nimport { formParse } from '@perevorot/shop/dist/helpers';\n\nconst SchemaForm = SchemaFormFactory([VeeValidatePlugin({})]);\n\nexport default {\n name: 'user',\n components: {\n SchemaForm\n },\n props: {\n mode: {\n type: String,\n default: 'registration'\n }\n },\n setup(props) {\n const store = useStore();\n const loading = ref(false);\n const loadingForm = ref(true);\n const errors = ref({});\n const schema = ref({});\n const validation = ref({});\n const model = ref({});\n const toast = useToast();\n const key = ref(0);\n\n useSchemaForm(model);\n\n const onSubmit = () => {\n loading.value = true;\n\n store.dispatch('auth/update', {\n credentials: model.value,\n finally: () => {\n loading.value = false;\n },\n callback: () => {\n toast(__('auth.' + props.mode + '.form.saved'), {\n type: 'success'\n });\n\n store.commit('auth/modal', null);\n store.dispatch('auth/me');\n },\n catch: (error) => {\n if (error.response && error.response.data && error.response.data.errors) {\n for (const [field, messages] of Object.entries(error.response.data.errors)) {\n if (messages[0]) {\n errors.value[field] = messages[0];\n }\n }\n } else {\n console.error(error);\n }\n\n key.value++;\n }\n });\n };\n\n api.registerForm()\n .then((response) => {\n const form = formParse(response.data);\n\n if (props.mode == 'confirm') {\n form.schema.email.hidden = true\n form.schema.password.hidden = true;\n }\n\n schema.value = form.schema;\n model.value = { ...form.model, ...response.data.model };\n validation.value = form.validation;\n })\n .finally(() => {\n loadingForm.value = false;\n });\n\n return {\n loading,\n loadingForm,\n errors,\n schema,\n validation,\n onSubmit,\n model,\n key\n };\n }\n};\n</script>","<template>\n <div v-if=\"!loadingForm\" v-bind:class=\"model.user_type ? 'is-user-type-' + model.user_type.replaceAll('_', '-') : null\">\n <SchemaForm schemaRowClasses=\"field\" :schema=\"schema\" :validation-schema=\"validation\" :initial-errors=\"errors\" :key=\"key\" @submit=\"onSubmit\">\n <template #afterForm>\n <div class=\"field\">\n <div class=\"columns is-vcentered\">\n <div class=\"column\">\n <button class=\"button is-link\" type=\"submit\" v-bind:class=\"{ 'is-loading': loading }\">\n {{ __('auth.' + mode + '.form.save') }}\n </button>\n </div>\n </div>\n </div>\n </template>\n </SchemaForm>\n </div>\n</template>\n<script>\nimport { ref } from 'vue';\nimport { useStore } from 'vuex';\nimport { SchemaFormFactory, useSchemaForm } from 'formvuelate';\nimport { useToast } from \"vue-toastification\";\n\nimport VeeValidatePlugin from '@formvuelate/plugin-vee-validate';\nimport { auth as api } from '@perevorot/shop/dist/api';\nimport { formParse } from '@perevorot/shop/dist/helpers';\n\nconst SchemaForm = SchemaFormFactory([VeeValidatePlugin({})]);\n\nexport default {\n name: 'user',\n components: {\n SchemaForm\n },\n props: {\n mode: {\n type: String,\n default: 'registration'\n }\n },\n setup(props) {\n const store = useStore();\n const loading = ref(false);\n const loadingForm = ref(true);\n const errors = ref({});\n const schema = ref({});\n const validation = ref({});\n const model = ref({});\n const toast = useToast();\n const key = ref(0);\n\n useSchemaForm(model);\n\n const onSubmit = () => {\n loading.value = true;\n\n store.dispatch('auth/update', {\n credentials: model.value,\n finally: () => {\n loading.value = false;\n },\n callback: () => {\n toast(__('auth.' + props.mode + '.form.saved'), {\n type: 'success'\n });\n\n store.commit('auth/modal', null);\n store.dispatch('auth/me');\n },\n catch: (error) => {\n if (error.response && error.response.data && error.response.data.errors) {\n for (const [field, messages] of Object.entries(error.response.data.errors)) {\n if (messages[0]) {\n errors.value[field] = messages[0];\n }\n }\n } else {\n console.error(error);\n }\n\n key.value++;\n }\n });\n };\n\n api.registerForm()\n .then((response) => {\n const form = formParse(response.data);\n\n if (props.mode == 'confirm') {\n form.schema.email.hidden = true\n form.schema.password.hidden = true;\n }\n\n schema.value = form.schema;\n model.value = { ...form.model, ...response.data.model };\n validation.value = form.validation;\n })\n .finally(() => {\n loadingForm.value = false;\n });\n\n return {\n loading,\n loadingForm,\n errors,\n schema,\n validation,\n onSubmit,\n model,\n key\n };\n }\n};\n</script>"],"names":["script","name","components","SchemaForm","SchemaFormFactory","VeeValidatePlugin","props","mode","type","String","default","setup","store","useStore","loading","ref","loadingForm","errors","schema","validation","model","toast","useToast","key","useSchemaForm","api","registerForm","then","response","form","formParse","data","email","hidden","password","value","Object","assign","onSubmit","dispatch","credentials","finally","callback","__","commit","catch","error","_i","_Object$entries","entries","length","_Object$entries$_i","_slicedToArray","field","messages","console","_hoisted_1","class","_hoisted_2","_hoisted_3","$setup","_createElementBlock","_normalizeClass","user_type","replaceAll","_createBlock","createBlock","_component_SchemaForm","schemaRowClasses","validation-schema","initial-errors","afterForm","_createElementVNode","createElementVNode","is-loading","_toDisplayString","toDisplayString","_ctx","$props"],"mappings":"8zCA2BA,IAEeA,EAAA,CACXC,KAAM,OACNC,WAAY,CACRC,WALWC,EAAAA,kBAAkB,CAACC,EAAiB,QAAC,OAOpDC,MAAO,CACHC,KAAM,CACFC,KAAMC,OACNC,QAAS,iBAGjBC,MAAK,SAACL,GACF,IAAMM,EAAQC,EAAAA,WACRC,EAAUC,OAAI,GACdC,EAAcD,OAAI,GAClBE,EAASF,MAAI,IACbG,EAASH,MAAI,IACbI,EAAaJ,MAAI,IACjBK,EAAQL,MAAI,IACZM,EAAQC,EAAAA,WACRC,EAAMR,MAAI,GAEhBS,EAAaA,cAACJ,GAmDd,OAjBAK,EAAAA,KAAIC,eACCC,MAAK,SAACC,GACH,IAAMC,EAAOC,EAAAA,UAAUF,EAASG,MAEd,WAAdzB,EAAMC,OACNsB,EAAKX,OAAOc,MAAMC,QAAS,EAC3BJ,EAAKX,OAAOgB,SAASD,QAAS,GAGlCf,EAAOiB,MAAQN,EAAKX,OACpBE,EAAMe,MAAMC,OAAAC,OAAOR,GAAAA,EAAKT,MAAUQ,EAASG,KAAKX,OAChDD,EAAWgB,MAAQN,EAAKV,cAEpB,SAAC,WACLH,EAAYmB,OAAQ,KAGrB,CACHrB,QAAAA,EACAE,YAAAA,EACAC,OAAAA,EACAC,OAAAA,EACAC,WAAAA,EACAmB,SAvDa,WACbxB,EAAQqB,OAAQ,EAEhBvB,EAAM2B,SAAS,cAAe,CAC1BC,YAAapB,EAAMe,MACnBM,QAAS,WACL3B,EAAQqB,OAAQ,GAEpBO,SAAU,WACNrB,EAAMsB,GAAG,QAAUrC,EAAMC,KAAO,eAAgB,CAC5CC,KAAM,YAGVI,EAAMgC,OAAO,aAAc,MAC3BhC,EAAM2B,SAAS,YAEnBM,MAAO,SAACC,GACJ,GAAIA,EAAMlB,UAAYkB,EAAMlB,SAASG,MAAQe,EAAMlB,SAASG,KAAKd,OAC7D,IAAA8B,IAAAA,EAAAC,EAAAA,EAAgCZ,OAAOa,QAAQH,EAAMlB,SAASG,KAAKd,QAAO8B,EAAAC,EAAAE,OAAAH,IAAE,CAAvE,IAAAI,EAAAC,EAAAJ,EAAAD,GAAA,GAAOM,EAAKF,EAAA,GAAEG,EAAQH,EAAA,GACnBG,EAAS,KACTrC,EAAOkB,MAAMkB,GAASC,EAAS,SAIvCC,QAAQT,MAAMA,GAGlBvB,EAAIY,YA6BZf,MAAAA,EACAG,IAAAA,KC1GSiC,EAAA,CAAAC,MAAM,SACFC,EAAA,CAAAD,MAAM,wBACFE,EAAA,CAAAF,MAAM,uFALnBG,EAAW5C,2DAAvB6C,EAAAA,mBAcK,MAAA,OAd2BJ,MAAKK,EAAAA,eAAEF,QAAMG,0BAA8BH,EAAKxC,MAAC2C,UAAUC,WAAU,IAAA,KAAA,uBACjGC,EAYYC,YAAAC,EAAA,CAZAC,iBAAiB,QAASlD,OAAQ0C,EAAM1C,OAAGmD,oBAAmBT,EAAUzC,WAAGmD,iBAAgBV,EAAM3C,OAAGM,IAAKqC,EAAGrC,IAAGe,SAAQsB,EAAQtB,WAC5HiC,qBACP,WAAA,MAQK,CARLC,EAAAA,mBAQK,MARLhB,EAQK,CAPDgB,EAAAC,mBAMK,MANLf,EAMK,CALDc,EAAAC,mBAIK,MAJLd,EAIK,CAHDa,EAAAA,mBAEQ,SAAA,CAFAf,MAAKK,EAAAA,eAAA,CAAC,iBAAiB,CAAAY,aAA4Cd,EAAM9C,WAAlDN,KAAK,UAC7BmE,EAAAC,gBAAAC,EAAAlC,WAAamC,EAAKvE,KAAA,eAAA"}
1
+ {"version":3,"file":"User.js","sources":["../../../src/components/account/User.vue","../../../src/components/account/User.vue?vue&type=template&id=4578454c&lang.js"],"sourcesContent":["<template>\n <div v-if=\"!loadingForm\" v-bind:class=\"model.user_type ? 'is-user-type-' + model.user_type.replaceAll('_', '-') : null\">\n <SchemaForm schemaRowClasses=\"field\" :schema=\"schema\" :validation-schema=\"validation\" :initial-errors=\"errors\" :key=\"key\" @submit=\"onSubmit\">\n <template #afterForm>\n <div class=\"field\">\n <div class=\"columns is-vcentered\">\n <div class=\"column\">\n <button class=\"button is-link\" type=\"submit\" v-bind:class=\"{ 'is-loading': loading }\">\n {{ __('auth.' + mode + '.form.save') }}\n </button>\n </div>\n </div>\n </div>\n </template>\n </SchemaForm>\n </div>\n</template>\n<script>\nimport { ref } from 'vue';\nimport { useStore } from 'vuex';\nimport { SchemaFormFactory, useSchemaForm } from 'formvuelate';\nimport { useToast } from \"vue-toastification\";\n\nimport VeeValidatePlugin from '@formvuelate/plugin-vee-validate';\nimport { auth as api } from '@perevorot/shop/dist/api';\nimport { formParse } from '@perevorot/shop/dist/helpers';\n\nconst SchemaForm = SchemaFormFactory([VeeValidatePlugin({})]);\n\nexport default {\n name: 'user',\n components: {\n SchemaForm\n },\n props: {\n mode: {\n type: String,\n default: 'registration'\n }\n },\n setup(props) {\n const store = useStore();\n const loading = ref(false);\n const loadingForm = ref(true);\n const errors = ref({});\n const schema = ref({});\n const validation = ref({});\n const model = ref({});\n const toast = useToast();\n const key = ref(0);\n\n useSchemaForm(model);\n\n const onSubmit = () => {\n loading.value = true;\n\n store.dispatch('auth/update', {\n credentials: model.value,\n finally: () => {\n loading.value = false;\n },\n callback: () => {\n toast(__('auth.' + props.mode + '.form.saved'), {\n type: 'success'\n });\n\n store.commit('auth/modal', null);\n store.dispatch('auth/me');\n },\n catch: (error) => {\n if (error.response && error.response.data && error.response.data.errors) {\n for (const [field, messages] of Object.entries(error.response.data.errors)) {\n if (messages[0]) {\n errors.value[field] = messages[0];\n }\n }\n } else {\n console.error(error);\n }\n\n key.value++;\n }\n });\n };\n\n api.registerForm()\n .then((response) => {\n const form = formParse(response.data);\n\n if (props.mode == 'confirm') {\n form.schema.email.hidden = true\n form.schema.password.hidden = true;\n }\n\n schema.value = form.schema;\n model.value = { ...form.model, ...response.data.model };\n validation.value = form.validation;\n })\n .finally(() => {\n loadingForm.value = false;\n });\n\n return {\n loading,\n loadingForm,\n errors,\n schema,\n validation,\n onSubmit,\n model,\n key\n };\n }\n};\n</script>","<template>\n <div v-if=\"!loadingForm\" v-bind:class=\"model.user_type ? 'is-user-type-' + model.user_type.replaceAll('_', '-') : null\">\n <SchemaForm schemaRowClasses=\"field\" :schema=\"schema\" :validation-schema=\"validation\" :initial-errors=\"errors\" :key=\"key\" @submit=\"onSubmit\">\n <template #afterForm>\n <div class=\"field\">\n <div class=\"columns is-vcentered\">\n <div class=\"column\">\n <button class=\"button is-link\" type=\"submit\" v-bind:class=\"{ 'is-loading': loading }\">\n {{ __('auth.' + mode + '.form.save') }}\n </button>\n </div>\n </div>\n </div>\n </template>\n </SchemaForm>\n </div>\n</template>\n<script>\nimport { ref } from 'vue';\nimport { useStore } from 'vuex';\nimport { SchemaFormFactory, useSchemaForm } from 'formvuelate';\nimport { useToast } from \"vue-toastification\";\n\nimport VeeValidatePlugin from '@formvuelate/plugin-vee-validate';\nimport { auth as api } from '@perevorot/shop/dist/api';\nimport { formParse } from '@perevorot/shop/dist/helpers';\n\nconst SchemaForm = SchemaFormFactory([VeeValidatePlugin({})]);\n\nexport default {\n name: 'user',\n components: {\n SchemaForm\n },\n props: {\n mode: {\n type: String,\n default: 'registration'\n }\n },\n setup(props) {\n const store = useStore();\n const loading = ref(false);\n const loadingForm = ref(true);\n const errors = ref({});\n const schema = ref({});\n const validation = ref({});\n const model = ref({});\n const toast = useToast();\n const key = ref(0);\n\n useSchemaForm(model);\n\n const onSubmit = () => {\n loading.value = true;\n\n store.dispatch('auth/update', {\n credentials: model.value,\n finally: () => {\n loading.value = false;\n },\n callback: () => {\n toast(__('auth.' + props.mode + '.form.saved'), {\n type: 'success'\n });\n\n store.commit('auth/modal', null);\n store.dispatch('auth/me');\n },\n catch: (error) => {\n if (error.response && error.response.data && error.response.data.errors) {\n for (const [field, messages] of Object.entries(error.response.data.errors)) {\n if (messages[0]) {\n errors.value[field] = messages[0];\n }\n }\n } else {\n console.error(error);\n }\n\n key.value++;\n }\n });\n };\n\n api.registerForm()\n .then((response) => {\n const form = formParse(response.data);\n\n if (props.mode == 'confirm') {\n form.schema.email.hidden = true\n form.schema.password.hidden = true;\n }\n\n schema.value = form.schema;\n model.value = { ...form.model, ...response.data.model };\n validation.value = form.validation;\n })\n .finally(() => {\n loadingForm.value = false;\n });\n\n return {\n loading,\n loadingForm,\n errors,\n schema,\n validation,\n onSubmit,\n model,\n key\n };\n }\n};\n</script>"],"names":["script","name","components","SchemaForm","SchemaFormFactory","VeeValidatePlugin","props","mode","type","String","default","setup","store","useStore","loading","ref","loadingForm","errors","schema","validation","model","toast","useToast","key","useSchemaForm","api","registerForm","then","response","form","formParse","data","email","hidden","password","value","Object","assign","onSubmit","dispatch","credentials","finally","callback","__","commit","catch","error","_i","_Object$entries","entries","length","_Object$entries$_i","_slicedToArray","field","messages","console","_hoisted_1","class","_hoisted_2","_hoisted_3","$setup","_createElementBlock","_normalizeClass","user_type","replaceAll","_createBlock","createBlock","_component_SchemaForm","schemaRowClasses","validation-schema","initial-errors","afterForm","_createElementVNode","createElementVNode","is-loading","_toDisplayString","toDisplayString","_ctx","$props"],"mappings":"8zCA2BA,IAEeA,EAAA,CACXC,KAAM,OACNC,WAAY,CACRC,WALWC,EAAAA,kBAAkB,CAACC,EAAiB,QAAC,OAOpDC,MAAO,CACHC,KAAM,CACFC,KAAMC,OACNC,QAAS,iBAGjBC,MAAAA,SAAML,GACF,IAAMM,EAAQC,EAAAA,WACRC,EAAUC,OAAI,GACdC,EAAcD,OAAI,GAClBE,EAASF,MAAI,IACbG,EAASH,MAAI,IACbI,EAAaJ,MAAI,IACjBK,EAAQL,MAAI,IACZM,EAAQC,EAAAA,WACRC,EAAMR,MAAI,GAEhBS,EAAaA,cAACJ,GAmDd,OAjBAK,EAAAA,KAAIC,eACCC,MAAK,SAACC,GACH,IAAMC,EAAOC,EAAAA,UAAUF,EAASG,MAEd,WAAdzB,EAAMC,OACNsB,EAAKX,OAAOc,MAAMC,QAAS,EAC3BJ,EAAKX,OAAOgB,SAASD,QAAS,GAGlCf,EAAOiB,MAAQN,EAAKX,OACpBE,EAAMe,MAAMC,OAAAC,OAAOR,GAAAA,EAAKT,MAAUQ,EAASG,KAAKX,OAChDD,EAAWgB,MAAQN,EAAKV,cAEpB,SAAC,WACLH,EAAYmB,OAAQ,KAGrB,CACHrB,QAAAA,EACAE,YAAAA,EACAC,OAAAA,EACAC,OAAAA,EACAC,WAAAA,EACAmB,SAvDa,WACbxB,EAAQqB,OAAQ,EAEhBvB,EAAM2B,SAAS,cAAe,CAC1BC,YAAapB,EAAMe,MACnBM,QAAS,WACL3B,EAAQqB,OAAQ,GAEpBO,SAAU,WACNrB,EAAMsB,GAAG,QAAUrC,EAAMC,KAAO,eAAgB,CAC5CC,KAAM,YAGVI,EAAMgC,OAAO,aAAc,MAC3BhC,EAAM2B,SAAS,YAEnBM,MAAO,SAACC,GACJ,GAAIA,EAAMlB,UAAYkB,EAAMlB,SAASG,MAAQe,EAAMlB,SAASG,KAAKd,OAC7D,IAAA8B,IAAAA,EAAAC,EAAAA,EAAgCZ,OAAOa,QAAQH,EAAMlB,SAASG,KAAKd,QAAO8B,EAAAC,EAAAE,OAAAH,IAAE,CAAvE,IAAAI,EAAAC,EAAAJ,EAAAD,GAAA,GAAOM,EAAKF,EAAA,GAAEG,EAAQH,EAAA,GACnBG,EAAS,KACTrC,EAAOkB,MAAMkB,GAASC,EAAS,SAIvCC,QAAQT,MAAMA,GAGlBvB,EAAIY,YA6BZf,MAAAA,EACAG,IAAAA,KC1GSiC,EAAA,CAAAC,MAAM,SACFC,EAAA,CAAAD,MAAM,wBACFE,EAAA,CAAAF,MAAM,uFALnBG,EAAW5C,2DAAvB6C,EAAAA,mBAcK,MAAA,OAd2BJ,MAAKK,EAAAA,eAAEF,QAAMG,0BAA8BH,EAAKxC,MAAC2C,UAAUC,WAAU,IAAA,KAAA,uBACjGC,EAYYC,YAAAC,EAAA,CAZAC,iBAAiB,QAASlD,OAAQ0C,EAAM1C,OAAGmD,oBAAmBT,EAAUzC,WAAGmD,iBAAgBV,EAAM3C,OAAGM,IAAKqC,EAAGrC,IAAGe,SAAQsB,EAAQtB,WAC5HiC,qBACP,WAAA,MAQK,CARLC,EAAAA,mBAQK,MARLhB,EAQK,CAPDgB,EAAAC,mBAMK,MANLf,EAMK,CALDc,EAAAC,mBAIK,MAJLd,EAIK,CAHDa,EAAAA,mBAEQ,SAAA,CAFAf,MAAKK,EAAAA,eAAA,CAAC,iBAAiB,CAAAY,aAA4Cd,EAAM9C,WAAlDN,KAAK,UAC7BmE,EAAAC,gBAAAC,EAAAlC,WAAamC,EAAKvE,KAAA,eAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"Forget.js","sources":["../../../src/components/auth/Forget.vue","../../../src/components/auth/Forget.vue?vue&type=template&id=01249924&lang.js"],"sourcesContent":["<template>\n <div class=\"form auth-forget\">\n <div class=\"title\">{{ __('auth.forget.title') }}</div>\n <div v-show=\"!sent\">\n <SchemaForm schemaRowClasses=\"field\" :schema=\"schema\" :validation-schema=\"validation\" :key=\"key\" @submit=\"onSubmit\">\n <template #afterForm>\n <div class=\"field\">\n <div class=\"columns is-vcentered\">\n <div class=\"column\">\n <button class=\"button is-link\" type=\"submit\" v-bind:class=\"{ 'is-loading': loading }\">\n {{ __('auth.forget.form.submit') }}\n </button>\n </div>\n </div>\n </div>\n </template>\n </SchemaForm>\n <div class=\"mt-2\">\n <a @click=\"remembered\">{{ __('auth.forget.remembered') }}</a>\n </div>\n </div>\n <div v-show=\"sent && message && !sms\" class=\"forget-thanks-mesage\">\n <div v-html=\"message\" class=\"thanks-message\"></div>\n <div class=\"mt-2 close-button\">\n <a @click=\"close\">{{ __('auth.forget.close') }}</a>\n </div>\n </div>\n <div v-show=\"sent && message && sms\" class=\"forget-thanks-mesage schema-col\">\n <div v-html=\"message\" class=\"thanks-message\"></div>\n <div class=\"sms-code\">\n <div class=\"control\">\n <input type=\"text\" class=\"input\" v-model=\"code1\" v-maska=\"'#'\" v-bind:class=\"{ 'is-filled': code1 !== '' }\" @keyup=\"codeKeyUp($event)\" @paste=\"codePaste($event)\" />\n <input type=\"text\" class=\"input\" v-model=\"code2\" v-maska=\"'#'\" v-bind:class=\"{ 'is-filled': code2 !== '' }\" @keyup=\"codeKeyUp($event)\" @paste=\"codePaste($event)\" />\n <input type=\"text\" class=\"input\" v-model=\"code3\" v-maska=\"'#'\" v-bind:class=\"{ 'is-filled': code3 !== '' }\" @keyup=\"codeKeyUp($event)\" @paste=\"codePaste($event)\" />\n <input type=\"text\" class=\"input\" v-model=\"code4\" v-maska=\"'#'\" v-bind:class=\"{ 'is-filled': code4 !== '' }\" @keyup=\"codeKeyUp($event)\" @paste=\"codePaste($event)\" />\n </div>\n <p class=\"help is-danger\" v-html=\"error\" v-if=\"error\"></p>\n </div>\n <div class=\"actions-wrapper\">\n <button class=\"button\" v-bind:class=\"{ 'is-loading': loading }\" @click=\"smsReset\">{{ __('auth.forget.sms_reset_password') }}</button>\n <button class=\"button\" @click=\"more\">{{ __('auth.forget.sms_more') }}</button>\n <button class=\"button\" @click=\"remembered\">{{ __('auth.forget.remembered') }}</button>\n </div>\n </div>\n <div v-show=\"sent && error && !sms\" class=\"forget-error-mesage\">\n <div class=\"message\" v-html=\"error\"></div>\n <div class=\"mt-2\">\n <a @click=\"again\">{{ __('auth.forget.send') }}</a>\n </div>\n </div>\n </div>\n</template>\n<script>\nimport { ref, markRaw, getCurrentInstance, inject } from 'vue';\nimport { useStore } from 'vuex';\nimport { SchemaFormFactory, useSchemaForm } from 'formvuelate';\nimport VeeValidatePlugin from '@formvuelate/plugin-vee-validate';\nimport FormText from '@perevorot/shop/dist/forms/FormText';\nimport * as yup from 'yup';\n\nmarkRaw(FormText);\n\nconst SchemaForm = SchemaFormFactory([VeeValidatePlugin({})]);\n\nexport default {\n name: 'forget',\n components: {\n SchemaForm\n },\n props: {\n email: {\n type: String,\n default: ''\n },\n emailOrPhone: {\n type: String,\n default: ''\n },\n forgetType: {\n type: String,\n default: 'email'\n },\n showPlaceholders: {\n type: Boolean,\n default: false\n }\n },\n setup(props) {\n const loading = ref(false);\n const store = useStore();\n const key = ref(0);\n const message = ref('');\n const error = ref('');\n const sent = ref(false);\n const schema = ref({});\n const model = ref({});\n const sms = ref(false);\n const code1 = ref('');\n const code2 = ref('');\n const code3 = ref('');\n const code4 = ref('');\n const instance = getCurrentInstance();\n\n const s = {\n email: {\n component: FormText,\n label: __('auth.login.form.email'),\n placeholder: props.showPlaceholders ? __('auth.login.form.email') : '',\n },\n emailOrPhone: {\n component: FormText,\n label: __('auth.login.form.emailOrPhone'),\n placeholder: props.showPlaceholders ? __('auth.login.form.emailOrPhone') : '',\n }\n };\n\n const yupValidations = {\n email: yup.string().email(__('auth.validation.email')).required(__('auth.validation.required')),\n emailOrPhone: yup\n .string()\n .required(__('auth.validation.required'))\n .test('test-name', __('auth.validation.emailOrPhone'), function (value) {\n const emailRegex = /^([a-zA-Z0-9_\\.\\-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$/;\n const phoneRegex = /^(?:\\+38)?(?:\\((044|050|067|066|095|099|063|073|093|068|096|097|098|091|092|094)\\)[ .-]?[0-9]{3}[ .-]?[0-9]{2}[ .-]?[0-9]{2}|(044|050|067|066|095|099|063|073|093|068|096|097|098|091|092|094)[ .-]?[0-9]{3}[ .-]?[0-9]{2}[ .-]?[0-9]{2}|(044|050|067|066|095|099|063|073|093|068|096|097|098|091|092|094)[0-9]{7})$/;\n\n let isValidEmail = emailRegex.test(value);\n let isValidPhone = phoneRegex.test(value);\n\n if (!isValidEmail && !isValidPhone) {\n return false;\n }\n\n return true;\n })\n };\n\n schema.value[props.forgetType] = s[props.forgetType];\n model.value[props.forgetType] = props[props.forgetType];\n\n let currentYupValidation = {};\n currentYupValidation[props.forgetType] = yupValidations[props.forgetType];\n\n const validation = yup.object().shape(currentYupValidation);\n\n useSchemaForm(model);\n\n const remembered = () => {\n store.commit('auth/modal', 'login');\n };\n\n const more = () => {\n sms.value = false;\n code1.value = '';\n code2.value = '';\n code3.value = '';\n code4.value = '';\n message.value = '';\n sent.value = false;\n };\n\n const again = () => {\n sent.value = false;\n };\n\n const onSubmit = () => {\n loading.value = true;\n message.value = '';\n error.value = '';\n\n store.dispatch('auth/reset', {\n credentials: model.value,\n callback: (m, isError, response) => {\n if (!isError) {\n message.value = m;\n sms.value = response?.credentials == 'phone';\n } else {\n error.value = m;\n }\n },\n finally: () => {\n model.value = {};\n loading.value = false;\n sent.value = true;\n key.value++;\n }\n });\n };\n\n const close = () => {\n store.commit('auth/modal', null);\n };\n\n const codeKeyUp = (e) => {\n const nextElement = e.target.nextElementSibling;\n const prevElement = e.target.previousElementSibling;\n const isNextElementIsInput = nextElement && nextElement.tagName === 'INPUT';\n const isPrevElementIsInput = prevElement && prevElement.tagName === 'INPUT';\n\n if (e.keyCode >= 48 && e.keyCode <= 57) {\n error.value = '';\n\n if (isNextElementIsInput) {\n nextElement.focus();\n }\n }\n\n if (e.keyCode === 8) {\n error.value = '';\n\n if (e.target.value === '') {\n if (isPrevElementIsInput) {\n prevElement.focus();\n }\n }\n }\n\n // if (e.keyCode == 37) {\n // if (isPrevElementIsInput) {\n // prevElement.focus();\n // }\n // }\n\n // if (e.keyCode == 39) {\n // if (isNextElementIsInput) {\n // nextElement.focus();\n // }\n // }\n };\n\n const codePaste = (e) => {\n e.preventDefault();\n\n const value = e.clipboardData.getData('Text');\n\n if (value.length == 4) {\n if (!isNaN(value[0]) && !isNaN(value[1]) && !isNaN(value[2]) && !isNaN(value[3])) {\n code1.value = value[0];\n code2.value = value[1];\n code3.value = value[2];\n code4.value = value[3];\n\n error.value = '';\n }\n }\n };\n\n const presetedResetToken = inject('presetedResetToken');\n const presetedResetEmail = inject('presetedResetEmail');\n\n const smsReset = () => {\n if (code1.value === '' || code2.value === '' || code3.value === '' || code4.value === '') {\n error.value = __('auth.validation.required');\n } else {\n loading.value = true;\n error.value = '';\n\n store.dispatch('auth/resetSms', {\n credentials: {\n code: String(code1.value) + String(code2.value) + String(code3.value) + String(code4.value)\n },\n callback: (m, isError) => {\n if (!isError) {\n code1.value = '';\n code2.value = '';\n code3.value = '';\n code4.value = '';\n\n presetedResetToken.value = m.token;\n presetedResetEmail.value = m.email;\n\n store.commit('auth/modal', 'reset');\n } else {\n error.value = m.message;\n }\n },\n finally: () => {\n loading.value = false;\n key.value++;\n }\n });\n }\n };\n\n return {\n loading,\n key,\n schema,\n validation,\n remembered,\n onSubmit,\n again,\n sent,\n message,\n error,\n close,\n sms,\n code1,\n code2,\n code3,\n code4,\n codeKeyUp,\n codePaste,\n more,\n smsReset\n };\n }\n};\n</script>","<template>\n <div class=\"form auth-forget\">\n <div class=\"title\">{{ __('auth.forget.title') }}</div>\n <div v-show=\"!sent\">\n <SchemaForm schemaRowClasses=\"field\" :schema=\"schema\" :validation-schema=\"validation\" :key=\"key\" @submit=\"onSubmit\">\n <template #afterForm>\n <div class=\"field\">\n <div class=\"columns is-vcentered\">\n <div class=\"column\">\n <button class=\"button is-link\" type=\"submit\" v-bind:class=\"{ 'is-loading': loading }\">\n {{ __('auth.forget.form.submit') }}\n </button>\n </div>\n </div>\n </div>\n </template>\n </SchemaForm>\n <div class=\"mt-2\">\n <a @click=\"remembered\">{{ __('auth.forget.remembered') }}</a>\n </div>\n </div>\n <div v-show=\"sent && message && !sms\" class=\"forget-thanks-mesage\">\n <div v-html=\"message\" class=\"thanks-message\"></div>\n <div class=\"mt-2 close-button\">\n <a @click=\"close\">{{ __('auth.forget.close') }}</a>\n </div>\n </div>\n <div v-show=\"sent && message && sms\" class=\"forget-thanks-mesage schema-col\">\n <div v-html=\"message\" class=\"thanks-message\"></div>\n <div class=\"sms-code\">\n <div class=\"control\">\n <input type=\"text\" class=\"input\" v-model=\"code1\" v-maska=\"'#'\" v-bind:class=\"{ 'is-filled': code1 !== '' }\" @keyup=\"codeKeyUp($event)\" @paste=\"codePaste($event)\" />\n <input type=\"text\" class=\"input\" v-model=\"code2\" v-maska=\"'#'\" v-bind:class=\"{ 'is-filled': code2 !== '' }\" @keyup=\"codeKeyUp($event)\" @paste=\"codePaste($event)\" />\n <input type=\"text\" class=\"input\" v-model=\"code3\" v-maska=\"'#'\" v-bind:class=\"{ 'is-filled': code3 !== '' }\" @keyup=\"codeKeyUp($event)\" @paste=\"codePaste($event)\" />\n <input type=\"text\" class=\"input\" v-model=\"code4\" v-maska=\"'#'\" v-bind:class=\"{ 'is-filled': code4 !== '' }\" @keyup=\"codeKeyUp($event)\" @paste=\"codePaste($event)\" />\n </div>\n <p class=\"help is-danger\" v-html=\"error\" v-if=\"error\"></p>\n </div>\n <div class=\"actions-wrapper\">\n <button class=\"button\" v-bind:class=\"{ 'is-loading': loading }\" @click=\"smsReset\">{{ __('auth.forget.sms_reset_password') }}</button>\n <button class=\"button\" @click=\"more\">{{ __('auth.forget.sms_more') }}</button>\n <button class=\"button\" @click=\"remembered\">{{ __('auth.forget.remembered') }}</button>\n </div>\n </div>\n <div v-show=\"sent && error && !sms\" class=\"forget-error-mesage\">\n <div class=\"message\" v-html=\"error\"></div>\n <div class=\"mt-2\">\n <a @click=\"again\">{{ __('auth.forget.send') }}</a>\n </div>\n </div>\n </div>\n</template>\n<script>\nimport { ref, markRaw, getCurrentInstance, inject } from 'vue';\nimport { useStore } from 'vuex';\nimport { SchemaFormFactory, useSchemaForm } from 'formvuelate';\nimport VeeValidatePlugin from '@formvuelate/plugin-vee-validate';\nimport FormText from '@perevorot/shop/dist/forms/FormText';\nimport * as yup from 'yup';\n\nmarkRaw(FormText);\n\nconst SchemaForm = SchemaFormFactory([VeeValidatePlugin({})]);\n\nexport default {\n name: 'forget',\n components: {\n SchemaForm\n },\n props: {\n email: {\n type: String,\n default: ''\n },\n emailOrPhone: {\n type: String,\n default: ''\n },\n forgetType: {\n type: String,\n default: 'email'\n },\n showPlaceholders: {\n type: Boolean,\n default: false\n }\n },\n setup(props) {\n const loading = ref(false);\n const store = useStore();\n const key = ref(0);\n const message = ref('');\n const error = ref('');\n const sent = ref(false);\n const schema = ref({});\n const model = ref({});\n const sms = ref(false);\n const code1 = ref('');\n const code2 = ref('');\n const code3 = ref('');\n const code4 = ref('');\n const instance = getCurrentInstance();\n\n const s = {\n email: {\n component: FormText,\n label: __('auth.login.form.email'),\n placeholder: props.showPlaceholders ? __('auth.login.form.email') : '',\n },\n emailOrPhone: {\n component: FormText,\n label: __('auth.login.form.emailOrPhone'),\n placeholder: props.showPlaceholders ? __('auth.login.form.emailOrPhone') : '',\n }\n };\n\n const yupValidations = {\n email: yup.string().email(__('auth.validation.email')).required(__('auth.validation.required')),\n emailOrPhone: yup\n .string()\n .required(__('auth.validation.required'))\n .test('test-name', __('auth.validation.emailOrPhone'), function (value) {\n const emailRegex = /^([a-zA-Z0-9_\\.\\-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$/;\n const phoneRegex = /^(?:\\+38)?(?:\\((044|050|067|066|095|099|063|073|093|068|096|097|098|091|092|094)\\)[ .-]?[0-9]{3}[ .-]?[0-9]{2}[ .-]?[0-9]{2}|(044|050|067|066|095|099|063|073|093|068|096|097|098|091|092|094)[ .-]?[0-9]{3}[ .-]?[0-9]{2}[ .-]?[0-9]{2}|(044|050|067|066|095|099|063|073|093|068|096|097|098|091|092|094)[0-9]{7})$/;\n\n let isValidEmail = emailRegex.test(value);\n let isValidPhone = phoneRegex.test(value);\n\n if (!isValidEmail && !isValidPhone) {\n return false;\n }\n\n return true;\n })\n };\n\n schema.value[props.forgetType] = s[props.forgetType];\n model.value[props.forgetType] = props[props.forgetType];\n\n let currentYupValidation = {};\n currentYupValidation[props.forgetType] = yupValidations[props.forgetType];\n\n const validation = yup.object().shape(currentYupValidation);\n\n useSchemaForm(model);\n\n const remembered = () => {\n store.commit('auth/modal', 'login');\n };\n\n const more = () => {\n sms.value = false;\n code1.value = '';\n code2.value = '';\n code3.value = '';\n code4.value = '';\n message.value = '';\n sent.value = false;\n };\n\n const again = () => {\n sent.value = false;\n };\n\n const onSubmit = () => {\n loading.value = true;\n message.value = '';\n error.value = '';\n\n store.dispatch('auth/reset', {\n credentials: model.value,\n callback: (m, isError, response) => {\n if (!isError) {\n message.value = m;\n sms.value = response?.credentials == 'phone';\n } else {\n error.value = m;\n }\n },\n finally: () => {\n model.value = {};\n loading.value = false;\n sent.value = true;\n key.value++;\n }\n });\n };\n\n const close = () => {\n store.commit('auth/modal', null);\n };\n\n const codeKeyUp = (e) => {\n const nextElement = e.target.nextElementSibling;\n const prevElement = e.target.previousElementSibling;\n const isNextElementIsInput = nextElement && nextElement.tagName === 'INPUT';\n const isPrevElementIsInput = prevElement && prevElement.tagName === 'INPUT';\n\n if (e.keyCode >= 48 && e.keyCode <= 57) {\n error.value = '';\n\n if (isNextElementIsInput) {\n nextElement.focus();\n }\n }\n\n if (e.keyCode === 8) {\n error.value = '';\n\n if (e.target.value === '') {\n if (isPrevElementIsInput) {\n prevElement.focus();\n }\n }\n }\n\n // if (e.keyCode == 37) {\n // if (isPrevElementIsInput) {\n // prevElement.focus();\n // }\n // }\n\n // if (e.keyCode == 39) {\n // if (isNextElementIsInput) {\n // nextElement.focus();\n // }\n // }\n };\n\n const codePaste = (e) => {\n e.preventDefault();\n\n const value = e.clipboardData.getData('Text');\n\n if (value.length == 4) {\n if (!isNaN(value[0]) && !isNaN(value[1]) && !isNaN(value[2]) && !isNaN(value[3])) {\n code1.value = value[0];\n code2.value = value[1];\n code3.value = value[2];\n code4.value = value[3];\n\n error.value = '';\n }\n }\n };\n\n const presetedResetToken = inject('presetedResetToken');\n const presetedResetEmail = inject('presetedResetEmail');\n\n const smsReset = () => {\n if (code1.value === '' || code2.value === '' || code3.value === '' || code4.value === '') {\n error.value = __('auth.validation.required');\n } else {\n loading.value = true;\n error.value = '';\n\n store.dispatch('auth/resetSms', {\n credentials: {\n code: String(code1.value) + String(code2.value) + String(code3.value) + String(code4.value)\n },\n callback: (m, isError) => {\n if (!isError) {\n code1.value = '';\n code2.value = '';\n code3.value = '';\n code4.value = '';\n\n presetedResetToken.value = m.token;\n presetedResetEmail.value = m.email;\n\n store.commit('auth/modal', 'reset');\n } else {\n error.value = m.message;\n }\n },\n finally: () => {\n loading.value = false;\n key.value++;\n }\n });\n }\n };\n\n return {\n loading,\n key,\n schema,\n validation,\n remembered,\n onSubmit,\n again,\n sent,\n message,\n error,\n close,\n sms,\n code1,\n code2,\n code3,\n code4,\n codeKeyUp,\n codePaste,\n more,\n smsReset\n };\n }\n};\n</script>"],"names":["markRaw","FormText","script","name","components","SchemaForm","SchemaFormFactory","VeeValidatePlugin","props","email","type","String","default","emailOrPhone","forgetType","showPlaceholders","Boolean","setup","loading","ref","store","useStore","key","message","error","sent","schema","model","sms","code1","code2","code3","code4","getCurrentInstance","s","component","label","__","placeholder","yupValidations","yup","string","required","test","value","isValidEmail","isValidPhone","currentYupValidation","validation","object","shape","useSchemaForm","presetedResetToken","inject","presetedResetEmail","remembered","commit","onSubmit","dispatch","credentials","callback","m","isError","response","finally","again","close","codeKeyUp","e","nextElement","target","nextElementSibling","prevElement","previousElementSibling","isNextElementIsInput","tagName","isPrevElementIsInput","keyCode","focus","codePaste","preventDefault","clipboardData","getData","length","isNaN","more","smsReset","code","token","_hoisted_1","class","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_9","_hoisted_10","_hoisted_12","_hoisted_13","_hoisted_15","_hoisted_16","_hoisted_18","_openBlock","_createElementBlock","_createElementVNode","createElementVNode","_toDisplayString","toDisplayString","_ctx","_createBlock","_component_SchemaForm","schemaRowClasses","$setup","validation-schema","afterForm","_normalizeClass","is-loading","onClick","apply","arguments","_withDirectives","withDirectives","innerHTML","$event","onKeyup","_cache","onPaste","createElementBlock"],"mappings":"6jBA4DAA,EAAOA,QAACC,EAAQ,SAEhB,IAEeC,EAAA,CACXC,KAAM,SACNC,WAAY,CACRC,WALWC,EAAAA,kBAAkB,CAACC,EAAiB,QAAC,OAOpDC,MAAO,CACHC,MAAO,CACHC,KAAMC,OACNC,QAAS,IAEbC,aAAc,CACVH,KAAMC,OACNC,QAAS,IAEbE,WAAY,CACRJ,KAAMC,OACNC,QAAS,SAEbG,iBAAkB,CACdL,KAAMM,QACNJ,SAAS,IAGjBK,MAAK,SAACT,GACF,IAAMU,EAAUC,OAAI,GACdC,EAAQC,EAAAA,WACRC,EAAMH,MAAI,GACVI,EAAUJ,MAAI,IACdK,EAAQL,MAAI,IACZM,EAAON,OAAI,GACXO,EAASP,MAAI,IACbQ,EAAQR,MAAI,IACZS,EAAMT,OAAI,GACVU,EAAQV,MAAI,IACZW,EAAQX,MAAI,IACZY,EAAQZ,MAAI,IACZa,EAAQb,MAAI,IACDc,uBAEjB,IAAMC,EAAI,CACNzB,MAAO,CACH0B,UAAWlC,EAAQ,QACnBmC,MAAOC,GAAG,yBACVC,YAAa9B,EAAMO,iBAAmBsB,GAAG,yBAA2B,IAExExB,aAAc,CACVsB,UAAWlC,EAAQ,QACnBmC,MAAOC,GAAG,gCACVC,YAAa9B,EAAMO,iBAAmBsB,GAAG,gCAAkC,KAI7EE,EAAiB,CACnB9B,MAAO+B,EAAIC,SAAShC,MAAM4B,GAAG,0BAA0BK,SAASL,GAAG,6BACnExB,aAAc2B,EACTC,SACAC,SAASL,GAAG,6BACZM,KAAK,YAAaN,GAAG,iCAAiC,SAAUO,GAC7D,IAGIC,EAHe,kEAGWF,KAAKC,GAC/BE,EAHe,uTAGWH,KAAKC,GAEnC,SAAKC,IAAiBC,OAQlCpB,EAAOkB,MAAMpC,EAAMM,YAAcoB,EAAE1B,EAAMM,YACzCa,EAAMiB,MAAMpC,EAAMM,YAAcN,EAAMA,EAAMM,YAE5C,IAAIiC,EAAuB,GAC3BA,EAAqBvC,EAAMM,YAAcyB,EAAe/B,EAAMM,YAE9D,IAAMkC,EAAaR,EAAIS,SAASC,MAAMH,GAEtCI,EAAaA,cAACxB,GAEd,IAoGMyB,EAAqBC,SAAO,sBAC5BC,EAAqBD,SAAO,sBAoClC,MAAO,CACHnC,QAAAA,EACAI,IAAAA,EACAI,OAAAA,EACAsB,WAAAA,EACAO,WA9Ie,WACfnC,EAAMoC,OAAO,aAAc,UA8I3BC,SA7Ha,WACbvC,EAAQ0B,OAAQ,EAChBrB,EAAQqB,MAAQ,GAChBpB,EAAMoB,MAAQ,GAEdxB,EAAMsC,SAAS,aAAc,CACzBC,YAAahC,EAAMiB,MACnBgB,SAAU,SAACC,EAAGC,EAASC,GACdD,EAIDtC,EAAMoB,MAAQiB,GAHdtC,EAAQqB,MAAQiB,EAChBjC,EAAIgB,MAAiC,UAAzBmB,MAAAA,OAAQ,EAARA,EAAUJ,eAK9BK,QAAS,WACLrC,EAAMiB,MAAQ,GACd1B,EAAQ0B,OAAQ,EAChBnB,EAAKmB,OAAQ,EACbtB,EAAIsB,YA2GZqB,MAlIU,WACVxC,EAAKmB,OAAQ,GAkIbnB,KAAAA,EACAF,QAAAA,EACAC,MAAAA,EACA0C,MA1GU,WACV9C,EAAMoC,OAAO,aAAc,OA0G3B5B,IAAAA,EACAC,MAAAA,EACAC,MAAAA,EACAC,MAAAA,EACAC,MAAAA,EACAmC,UA5Gc,SAACC,GACf,IAAMC,EAAcD,EAAEE,OAAOC,mBACvBC,EAAcJ,EAAEE,OAAOG,uBACvBC,EAAuBL,GAAuC,UAAxBA,EAAYM,QAClDC,EAAuBJ,GAAuC,UAAxBA,EAAYG,QAEpDP,EAAES,SAAW,IAAMT,EAAES,SAAW,KAChCrD,EAAMoB,MAAQ,GAEV8B,GACAL,EAAYS,SAIF,IAAdV,EAAES,UACFrD,EAAMoB,MAAQ,GAES,KAAnBwB,EAAEE,OAAO1B,OACLgC,GACAJ,EAAYM,UA0FxBC,UAxEc,SAACX,GACfA,EAAEY,iBAEF,IAAMpC,EAAQwB,EAAEa,cAAcC,QAAQ,QAElB,GAAhBtC,EAAMuC,SACDC,MAAMxC,EAAM,KAAQwC,MAAMxC,EAAM,KAAQwC,MAAMxC,EAAM,KAAQwC,MAAMxC,EAAM,MACzEf,EAAMe,MAAQA,EAAM,GACpBd,EAAMc,MAAQA,EAAM,GACpBb,EAAMa,MAAQA,EAAM,GACpBZ,EAAMY,MAAQA,EAAM,GAEpBpB,EAAMoB,MAAQ,MA6DtByC,KAxJS,WACTzD,EAAIgB,OAAQ,EACZf,EAAMe,MAAQ,GACdd,EAAMc,MAAQ,GACdb,EAAMa,MAAQ,GACdZ,EAAMY,MAAQ,GACdrB,EAAQqB,MAAQ,GAChBnB,EAAKmB,OAAQ,GAkJb0C,SAtDa,WACO,KAAhBzD,EAAMe,OAAgC,KAAhBd,EAAMc,OAAgC,KAAhBb,EAAMa,OAAgC,KAAhBZ,EAAMY,MACxEpB,EAAMoB,MAAQP,GAAG,6BAEjBnB,EAAQ0B,OAAQ,EAChBpB,EAAMoB,MAAQ,GAEdxB,EAAMsC,SAAS,gBAAiB,CAC5BC,YAAa,CACT4B,KAAM5E,OAAOkB,EAAMe,OAASjC,OAAOmB,EAAMc,OAASjC,OAAOoB,EAAMa,OAASjC,OAAOqB,EAAMY,QAEzFgB,SAAU,SAACC,EAAGC,GACLA,EAWDtC,EAAMoB,MAAQiB,EAAEtC,SAVhBM,EAAMe,MAAQ,GACdd,EAAMc,MAAQ,GACdb,EAAMa,MAAQ,GACdZ,EAAMY,MAAQ,GAEdQ,EAAmBR,MAAQiB,EAAE2B,MAC7BlC,EAAmBV,MAAQiB,EAAEpD,MAE7BW,EAAMoC,OAAO,aAAc,WAKnCQ,QAAS,WACL9C,EAAQ0B,OAAQ,EAChBtB,EAAIsB,gBCpRnB6C,EAAA,CAAAC,MAAM,oBACFC,EAAA,CAAAD,MAAM,SAIME,EAAA,CAAAF,MAAM,SACFG,EAAA,CAAAH,MAAM,wBACFI,EAAA,CAAAJ,MAAM,UAStBK,EAAA,CAAAL,MAAM,QAIuBM,EAAA,CAAAN,MAAM,wCAEnCO,EAAA,CAAAP,MAAM,qBAIsBQ,EAAA,CAAAR,MAAM,mDAElCS,EAAA,CAAAT,MAAM,YACFU,EAAA,CAAAV,MAAM,2BAQVW,EAAA,CAAAX,MAAM,mBAMqBY,EAAA,CAAAZ,MAAM,uCAEjCa,EAAA,CAAAb,MAAM,4GA7CnB,OAAAc,cAAAC,qBAiDK,MAjDLhB,EAiDK,CAhDDiB,EAAqDC,mBAAA,MAArDhB,EAAqDiB,EAAAC,gBAA/BC,EAAEzE,GAAA,sBAAA,oBACxBqE,EAiBKC,mBAAA,MAAA,KAAA,gBAhBDI,EAAAA,YAYYC,EAAA,CAZAC,iBAAiB,QAASvF,OAAQwF,EAAMxF,OAAGyF,oBAAmBD,EAAUlE,WAAG1B,IAAK4F,EAAG5F,IAAGmC,SAAQyD,EAAQzD,WACnG2D,qBACP,WAAA,MAQK,CARLV,EAAAA,mBAQK,MARLd,EAQK,CAPDc,EAAAC,mBAMK,MANLd,EAMK,CALDa,EAAAC,mBAIK,MAJLb,EAIK,CAHDY,EAAAA,mBAEQ,SAAA,CAFAhB,MAAK2B,EAAAA,eAAA,CAAC,iBAAiB,CAAAC,aAA4CJ,EAAMhG,WAAlDR,KAAK,4BAC7BoG,EAAEzE,GAAA,4BAAA,gEAO7BqE,EAAAC,mBAEK,MAFLZ,EAEK,CADDW,EAAAA,mBAA4D,IAAA,CAAxDa,sCAAOL,EAAU3D,YAAA2D,EAAA3D,WAAAiE,MAAAN,EAAAO,gCAAKX,EAAEzE,GAAA,2BAAA,sBAftB6E,EAAIzF,QAkBlBiG,EAAAC,eAAAjB,qBAKK,MALLV,EAKK,CAJDU,EAAkDC,mBAAA,MAAA,CAA7CiB,UAAQV,EAAO3F,QAAEmE,MAAM,4BAC5BgB,EAAAA,mBAEK,MAFLT,EAEK,CADDS,EAAkDC,mBAAA,IAAA,CAA9CY,sCAAOL,EAAKhD,OAAAgD,EAAAhD,MAAAsD,MAAAN,EAAAO,gCAAKX,EAAEzE,GAAA,sBAAA,qBAHlB6E,EAAGzF,MAAKyF,EAAQ3F,UAAI2F,EAAGtF,OAMpC8F,iBAAAhB,EAAAA,mBAgBK,MAhBLR,EAgBK,CAfDQ,EAAAA,mBAAkD,MAAA,CAA7CkB,UAAQV,EAAO3F,QAAEmE,MAAM,4BAC5BgB,EAAAA,mBAQK,MARLP,EAQK,CAPDO,EAAAC,mBAKK,MALLP,EAKK,kBAJDM,EAAAA,mBAAmK,QAAA,CAA5JhG,KAAK,OAAOgF,MAAK2B,EAAAA,eAAA,CAAC,qBAAyE,KAANH,EAAMrF,8DAAxDqF,EAAKrF,MAAAgG,IAA8DC,QAAKC,EAAA,KAAAA,EAAA,GAAA,SAAAF,GAAA,OAAEX,EAAS/C,UAAC0D,KAAUG,QAAKD,EAAA,KAAAA,EAAA,GAAA,SAAAF,GAAA,OAAEX,EAASnC,UAAC8C,8BAA/GX,EAAKrF,UAAW,wBAC1D6E,EAAAA,mBAAmK,QAAA,CAA5JhG,KAAK,OAAOgF,MAAK2B,EAAAA,eAAA,CAAC,qBAAyE,KAANH,EAAMpF,8DAAxDoF,EAAKpF,MAAA+F,IAA8DC,QAAKC,EAAA,KAAAA,EAAA,GAAA,SAAAF,GAAA,OAAEX,EAAS/C,UAAC0D,KAAUG,QAAKD,EAAA,KAAAA,EAAA,GAAA,SAAAF,GAAA,OAAEX,EAASnC,UAAC8C,8BAA/GX,EAAKpF,UAAW,wBAC1D4E,EAAAA,mBAAmK,QAAA,CAA5JhG,KAAK,OAAOgF,MAAK2B,EAAAA,eAAA,CAAC,qBAAyE,KAANH,EAAMnF,8DAAxDmF,EAAKnF,MAAA8F,IAA8DC,QAAKC,EAAA,KAAAA,EAAA,GAAA,SAAAF,GAAA,OAAEX,EAAS/C,UAAC0D,KAAUG,QAAKD,EAAA,MAAAA,EAAA,IAAA,SAAAF,GAAA,OAAEX,EAASnC,UAAC8C,8BAA/GX,EAAKnF,UAAW,wBAC1D2E,EAAAA,mBAAmK,QAAA,CAA5JhG,KAAK,OAAOgF,MAAK2B,EAAAA,eAAA,CAAC,qBAAyE,KAANH,EAAMlF,gEAAxDkF,EAAKlF,MAAA6F,IAA8DC,QAAKC,EAAA,MAAAA,EAAA,IAAA,SAAAF,GAAA,OAAEX,EAAS/C,UAAC0D,KAAUG,QAAKD,EAAA,MAAAA,EAAA,IAAA,SAAAF,GAAA,OAAEX,EAASnC,UAAC8C,8BAA/GX,EAAKlF,UAAW,SAEfkF,EAAK1F,qBAApDiF,EAAyDwB,mBAAA,IAAA,OAAtDvC,MAAM,iBAAiBkC,UAAQV,EAAK1F,oDAE3CkF,EAAAC,mBAIK,MAJLN,EAIK,CAHDK,EAAAA,mBAAoI,SAAA,CAA5HhB,MAAK2B,EAAAA,eAAA,CAAC,SAAS,CAAAC,aAA8BJ,EAAMhG,WAAMqG,wCAAOL,EAAQ5B,UAAA4B,EAAA5B,SAAAkC,MAAAN,EAAAO,gCAAKX,EAAEzE,GAAA,mCAAA,GACvFqE,EAA6EC,mBAAA,SAAA,CAArEjB,MAAM,SAAU6B,wCAAOL,EAAI7B,MAAA6B,EAAA7B,KAAAmC,MAAAN,EAAAO,gCAAKX,EAAEzE,GAAA,yBAAA,GAC1CqE,EAAqFC,mBAAA,SAAA,CAA7EjB,MAAM,SAAU6B,wCAAOL,EAAU3D,YAAA2D,EAAA3D,WAAAiE,MAAAN,EAAAO,gCAAKX,EAAEzE,GAAA,2BAAA,qBAd3C6E,EAAGzF,MAAKyF,EAAM3F,SAAK2F,EAAGtF,OAiBnC8F,iBAAAhB,EAAAA,mBAKK,MALLJ,EAKK,CAJDI,EAAAA,mBAAyC,MAAA,CAApChB,MAAM,UAAUkC,UAAQV,EAAK1F,iBAClCkF,EAAAA,mBAEK,MAFLH,EAEK,CADDG,EAAiDC,mBAAA,IAAA,CAA7CY,wCAAOL,EAAKjD,OAAAiD,EAAAjD,MAAAuD,MAAAN,EAAAO,gCAAKX,EAAEzE,GAAA,qBAAA,qBAHlB6E,EAAGzF,MAAKyF,EAAM1F,QAAI0F,EAAGtF"}
1
+ {"version":3,"file":"Forget.js","sources":["../../../src/components/auth/Forget.vue","../../../src/components/auth/Forget.vue?vue&type=template&id=01249924&lang.js"],"sourcesContent":["<template>\n <div class=\"form auth-forget\">\n <div class=\"title\">{{ __('auth.forget.title') }}</div>\n <div v-show=\"!sent\">\n <SchemaForm schemaRowClasses=\"field\" :schema=\"schema\" :validation-schema=\"validation\" :key=\"key\" @submit=\"onSubmit\">\n <template #afterForm>\n <div class=\"field\">\n <div class=\"columns is-vcentered\">\n <div class=\"column\">\n <button class=\"button is-link\" type=\"submit\" v-bind:class=\"{ 'is-loading': loading }\">\n {{ __('auth.forget.form.submit') }}\n </button>\n </div>\n </div>\n </div>\n </template>\n </SchemaForm>\n <div class=\"mt-2\">\n <a @click=\"remembered\">{{ __('auth.forget.remembered') }}</a>\n </div>\n </div>\n <div v-show=\"sent && message && !sms\" class=\"forget-thanks-mesage\">\n <div v-html=\"message\" class=\"thanks-message\"></div>\n <div class=\"mt-2 close-button\">\n <a @click=\"close\">{{ __('auth.forget.close') }}</a>\n </div>\n </div>\n <div v-show=\"sent && message && sms\" class=\"forget-thanks-mesage schema-col\">\n <div v-html=\"message\" class=\"thanks-message\"></div>\n <div class=\"sms-code\">\n <div class=\"control\">\n <input type=\"text\" class=\"input\" v-model=\"code1\" v-maska=\"'#'\" v-bind:class=\"{ 'is-filled': code1 !== '' }\" @keyup=\"codeKeyUp($event)\" @paste=\"codePaste($event)\" />\n <input type=\"text\" class=\"input\" v-model=\"code2\" v-maska=\"'#'\" v-bind:class=\"{ 'is-filled': code2 !== '' }\" @keyup=\"codeKeyUp($event)\" @paste=\"codePaste($event)\" />\n <input type=\"text\" class=\"input\" v-model=\"code3\" v-maska=\"'#'\" v-bind:class=\"{ 'is-filled': code3 !== '' }\" @keyup=\"codeKeyUp($event)\" @paste=\"codePaste($event)\" />\n <input type=\"text\" class=\"input\" v-model=\"code4\" v-maska=\"'#'\" v-bind:class=\"{ 'is-filled': code4 !== '' }\" @keyup=\"codeKeyUp($event)\" @paste=\"codePaste($event)\" />\n </div>\n <p class=\"help is-danger\" v-html=\"error\" v-if=\"error\"></p>\n </div>\n <div class=\"actions-wrapper\">\n <button class=\"button\" v-bind:class=\"{ 'is-loading': loading }\" @click=\"smsReset\">{{ __('auth.forget.sms_reset_password') }}</button>\n <button class=\"button\" @click=\"more\">{{ __('auth.forget.sms_more') }}</button>\n <button class=\"button\" @click=\"remembered\">{{ __('auth.forget.remembered') }}</button>\n </div>\n </div>\n <div v-show=\"sent && error && !sms\" class=\"forget-error-mesage\">\n <div class=\"message\" v-html=\"error\"></div>\n <div class=\"mt-2\">\n <a @click=\"again\">{{ __('auth.forget.send') }}</a>\n </div>\n </div>\n </div>\n</template>\n<script>\nimport { ref, markRaw, getCurrentInstance, inject } from 'vue';\nimport { useStore } from 'vuex';\nimport { SchemaFormFactory, useSchemaForm } from 'formvuelate';\nimport VeeValidatePlugin from '@formvuelate/plugin-vee-validate';\nimport FormText from '@perevorot/shop/dist/forms/FormText';\nimport * as yup from 'yup';\n\nmarkRaw(FormText);\n\nconst SchemaForm = SchemaFormFactory([VeeValidatePlugin({})]);\n\nexport default {\n name: 'forget',\n components: {\n SchemaForm\n },\n props: {\n email: {\n type: String,\n default: ''\n },\n emailOrPhone: {\n type: String,\n default: ''\n },\n forgetType: {\n type: String,\n default: 'email'\n },\n showPlaceholders: {\n type: Boolean,\n default: false\n }\n },\n setup(props) {\n const loading = ref(false);\n const store = useStore();\n const key = ref(0);\n const message = ref('');\n const error = ref('');\n const sent = ref(false);\n const schema = ref({});\n const model = ref({});\n const sms = ref(false);\n const code1 = ref('');\n const code2 = ref('');\n const code3 = ref('');\n const code4 = ref('');\n const instance = getCurrentInstance();\n\n const s = {\n email: {\n component: FormText,\n label: __('auth.login.form.email'),\n placeholder: props.showPlaceholders ? __('auth.login.form.email') : '',\n },\n emailOrPhone: {\n component: FormText,\n label: __('auth.login.form.emailOrPhone'),\n placeholder: props.showPlaceholders ? __('auth.login.form.emailOrPhone') : '',\n }\n };\n\n const yupValidations = {\n email: yup.string().email(__('auth.validation.email')).required(__('auth.validation.required')),\n emailOrPhone: yup\n .string()\n .required(__('auth.validation.required'))\n .test('test-name', __('auth.validation.emailOrPhone'), function (value) {\n const emailRegex = /^([a-zA-Z0-9_\\.\\-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$/;\n const phoneRegex = /^(?:\\+38)?(?:\\((044|050|067|066|095|099|063|073|093|068|096|097|098|091|092|094)\\)[ .-]?[0-9]{3}[ .-]?[0-9]{2}[ .-]?[0-9]{2}|(044|050|067|066|095|099|063|073|093|068|096|097|098|091|092|094)[ .-]?[0-9]{3}[ .-]?[0-9]{2}[ .-]?[0-9]{2}|(044|050|067|066|095|099|063|073|093|068|096|097|098|091|092|094)[0-9]{7})$/;\n\n let isValidEmail = emailRegex.test(value);\n let isValidPhone = phoneRegex.test(value);\n\n if (!isValidEmail && !isValidPhone) {\n return false;\n }\n\n return true;\n })\n };\n\n schema.value[props.forgetType] = s[props.forgetType];\n model.value[props.forgetType] = props[props.forgetType];\n\n let currentYupValidation = {};\n currentYupValidation[props.forgetType] = yupValidations[props.forgetType];\n\n const validation = yup.object().shape(currentYupValidation);\n\n useSchemaForm(model);\n\n const remembered = () => {\n store.commit('auth/modal', 'login');\n };\n\n const more = () => {\n sms.value = false;\n code1.value = '';\n code2.value = '';\n code3.value = '';\n code4.value = '';\n message.value = '';\n sent.value = false;\n };\n\n const again = () => {\n sent.value = false;\n };\n\n const onSubmit = () => {\n loading.value = true;\n message.value = '';\n error.value = '';\n\n store.dispatch('auth/reset', {\n credentials: model.value,\n callback: (m, isError, response) => {\n if (!isError) {\n message.value = m;\n sms.value = response?.credentials == 'phone';\n } else {\n error.value = m;\n }\n },\n finally: () => {\n model.value = {};\n loading.value = false;\n sent.value = true;\n key.value++;\n }\n });\n };\n\n const close = () => {\n store.commit('auth/modal', null);\n };\n\n const codeKeyUp = (e) => {\n const nextElement = e.target.nextElementSibling;\n const prevElement = e.target.previousElementSibling;\n const isNextElementIsInput = nextElement && nextElement.tagName === 'INPUT';\n const isPrevElementIsInput = prevElement && prevElement.tagName === 'INPUT';\n\n if (e.keyCode >= 48 && e.keyCode <= 57) {\n error.value = '';\n\n if (isNextElementIsInput) {\n nextElement.focus();\n }\n }\n\n if (e.keyCode === 8) {\n error.value = '';\n\n if (e.target.value === '') {\n if (isPrevElementIsInput) {\n prevElement.focus();\n }\n }\n }\n\n // if (e.keyCode == 37) {\n // if (isPrevElementIsInput) {\n // prevElement.focus();\n // }\n // }\n\n // if (e.keyCode == 39) {\n // if (isNextElementIsInput) {\n // nextElement.focus();\n // }\n // }\n };\n\n const codePaste = (e) => {\n e.preventDefault();\n\n const value = e.clipboardData.getData('Text');\n\n if (value.length == 4) {\n if (!isNaN(value[0]) && !isNaN(value[1]) && !isNaN(value[2]) && !isNaN(value[3])) {\n code1.value = value[0];\n code2.value = value[1];\n code3.value = value[2];\n code4.value = value[3];\n\n error.value = '';\n }\n }\n };\n\n const presetedResetToken = inject('presetedResetToken');\n const presetedResetEmail = inject('presetedResetEmail');\n\n const smsReset = () => {\n if (code1.value === '' || code2.value === '' || code3.value === '' || code4.value === '') {\n error.value = __('auth.validation.required');\n } else {\n loading.value = true;\n error.value = '';\n\n store.dispatch('auth/resetSms', {\n credentials: {\n code: String(code1.value) + String(code2.value) + String(code3.value) + String(code4.value)\n },\n callback: (m, isError) => {\n if (!isError) {\n code1.value = '';\n code2.value = '';\n code3.value = '';\n code4.value = '';\n\n presetedResetToken.value = m.token;\n presetedResetEmail.value = m.email;\n\n store.commit('auth/modal', 'reset');\n } else {\n error.value = m.message;\n }\n },\n finally: () => {\n loading.value = false;\n key.value++;\n }\n });\n }\n };\n\n return {\n loading,\n key,\n schema,\n validation,\n remembered,\n onSubmit,\n again,\n sent,\n message,\n error,\n close,\n sms,\n code1,\n code2,\n code3,\n code4,\n codeKeyUp,\n codePaste,\n more,\n smsReset\n };\n }\n};\n</script>","<template>\n <div class=\"form auth-forget\">\n <div class=\"title\">{{ __('auth.forget.title') }}</div>\n <div v-show=\"!sent\">\n <SchemaForm schemaRowClasses=\"field\" :schema=\"schema\" :validation-schema=\"validation\" :key=\"key\" @submit=\"onSubmit\">\n <template #afterForm>\n <div class=\"field\">\n <div class=\"columns is-vcentered\">\n <div class=\"column\">\n <button class=\"button is-link\" type=\"submit\" v-bind:class=\"{ 'is-loading': loading }\">\n {{ __('auth.forget.form.submit') }}\n </button>\n </div>\n </div>\n </div>\n </template>\n </SchemaForm>\n <div class=\"mt-2\">\n <a @click=\"remembered\">{{ __('auth.forget.remembered') }}</a>\n </div>\n </div>\n <div v-show=\"sent && message && !sms\" class=\"forget-thanks-mesage\">\n <div v-html=\"message\" class=\"thanks-message\"></div>\n <div class=\"mt-2 close-button\">\n <a @click=\"close\">{{ __('auth.forget.close') }}</a>\n </div>\n </div>\n <div v-show=\"sent && message && sms\" class=\"forget-thanks-mesage schema-col\">\n <div v-html=\"message\" class=\"thanks-message\"></div>\n <div class=\"sms-code\">\n <div class=\"control\">\n <input type=\"text\" class=\"input\" v-model=\"code1\" v-maska=\"'#'\" v-bind:class=\"{ 'is-filled': code1 !== '' }\" @keyup=\"codeKeyUp($event)\" @paste=\"codePaste($event)\" />\n <input type=\"text\" class=\"input\" v-model=\"code2\" v-maska=\"'#'\" v-bind:class=\"{ 'is-filled': code2 !== '' }\" @keyup=\"codeKeyUp($event)\" @paste=\"codePaste($event)\" />\n <input type=\"text\" class=\"input\" v-model=\"code3\" v-maska=\"'#'\" v-bind:class=\"{ 'is-filled': code3 !== '' }\" @keyup=\"codeKeyUp($event)\" @paste=\"codePaste($event)\" />\n <input type=\"text\" class=\"input\" v-model=\"code4\" v-maska=\"'#'\" v-bind:class=\"{ 'is-filled': code4 !== '' }\" @keyup=\"codeKeyUp($event)\" @paste=\"codePaste($event)\" />\n </div>\n <p class=\"help is-danger\" v-html=\"error\" v-if=\"error\"></p>\n </div>\n <div class=\"actions-wrapper\">\n <button class=\"button\" v-bind:class=\"{ 'is-loading': loading }\" @click=\"smsReset\">{{ __('auth.forget.sms_reset_password') }}</button>\n <button class=\"button\" @click=\"more\">{{ __('auth.forget.sms_more') }}</button>\n <button class=\"button\" @click=\"remembered\">{{ __('auth.forget.remembered') }}</button>\n </div>\n </div>\n <div v-show=\"sent && error && !sms\" class=\"forget-error-mesage\">\n <div class=\"message\" v-html=\"error\"></div>\n <div class=\"mt-2\">\n <a @click=\"again\">{{ __('auth.forget.send') }}</a>\n </div>\n </div>\n </div>\n</template>\n<script>\nimport { ref, markRaw, getCurrentInstance, inject } from 'vue';\nimport { useStore } from 'vuex';\nimport { SchemaFormFactory, useSchemaForm } from 'formvuelate';\nimport VeeValidatePlugin from '@formvuelate/plugin-vee-validate';\nimport FormText from '@perevorot/shop/dist/forms/FormText';\nimport * as yup from 'yup';\n\nmarkRaw(FormText);\n\nconst SchemaForm = SchemaFormFactory([VeeValidatePlugin({})]);\n\nexport default {\n name: 'forget',\n components: {\n SchemaForm\n },\n props: {\n email: {\n type: String,\n default: ''\n },\n emailOrPhone: {\n type: String,\n default: ''\n },\n forgetType: {\n type: String,\n default: 'email'\n },\n showPlaceholders: {\n type: Boolean,\n default: false\n }\n },\n setup(props) {\n const loading = ref(false);\n const store = useStore();\n const key = ref(0);\n const message = ref('');\n const error = ref('');\n const sent = ref(false);\n const schema = ref({});\n const model = ref({});\n const sms = ref(false);\n const code1 = ref('');\n const code2 = ref('');\n const code3 = ref('');\n const code4 = ref('');\n const instance = getCurrentInstance();\n\n const s = {\n email: {\n component: FormText,\n label: __('auth.login.form.email'),\n placeholder: props.showPlaceholders ? __('auth.login.form.email') : '',\n },\n emailOrPhone: {\n component: FormText,\n label: __('auth.login.form.emailOrPhone'),\n placeholder: props.showPlaceholders ? __('auth.login.form.emailOrPhone') : '',\n }\n };\n\n const yupValidations = {\n email: yup.string().email(__('auth.validation.email')).required(__('auth.validation.required')),\n emailOrPhone: yup\n .string()\n .required(__('auth.validation.required'))\n .test('test-name', __('auth.validation.emailOrPhone'), function (value) {\n const emailRegex = /^([a-zA-Z0-9_\\.\\-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$/;\n const phoneRegex = /^(?:\\+38)?(?:\\((044|050|067|066|095|099|063|073|093|068|096|097|098|091|092|094)\\)[ .-]?[0-9]{3}[ .-]?[0-9]{2}[ .-]?[0-9]{2}|(044|050|067|066|095|099|063|073|093|068|096|097|098|091|092|094)[ .-]?[0-9]{3}[ .-]?[0-9]{2}[ .-]?[0-9]{2}|(044|050|067|066|095|099|063|073|093|068|096|097|098|091|092|094)[0-9]{7})$/;\n\n let isValidEmail = emailRegex.test(value);\n let isValidPhone = phoneRegex.test(value);\n\n if (!isValidEmail && !isValidPhone) {\n return false;\n }\n\n return true;\n })\n };\n\n schema.value[props.forgetType] = s[props.forgetType];\n model.value[props.forgetType] = props[props.forgetType];\n\n let currentYupValidation = {};\n currentYupValidation[props.forgetType] = yupValidations[props.forgetType];\n\n const validation = yup.object().shape(currentYupValidation);\n\n useSchemaForm(model);\n\n const remembered = () => {\n store.commit('auth/modal', 'login');\n };\n\n const more = () => {\n sms.value = false;\n code1.value = '';\n code2.value = '';\n code3.value = '';\n code4.value = '';\n message.value = '';\n sent.value = false;\n };\n\n const again = () => {\n sent.value = false;\n };\n\n const onSubmit = () => {\n loading.value = true;\n message.value = '';\n error.value = '';\n\n store.dispatch('auth/reset', {\n credentials: model.value,\n callback: (m, isError, response) => {\n if (!isError) {\n message.value = m;\n sms.value = response?.credentials == 'phone';\n } else {\n error.value = m;\n }\n },\n finally: () => {\n model.value = {};\n loading.value = false;\n sent.value = true;\n key.value++;\n }\n });\n };\n\n const close = () => {\n store.commit('auth/modal', null);\n };\n\n const codeKeyUp = (e) => {\n const nextElement = e.target.nextElementSibling;\n const prevElement = e.target.previousElementSibling;\n const isNextElementIsInput = nextElement && nextElement.tagName === 'INPUT';\n const isPrevElementIsInput = prevElement && prevElement.tagName === 'INPUT';\n\n if (e.keyCode >= 48 && e.keyCode <= 57) {\n error.value = '';\n\n if (isNextElementIsInput) {\n nextElement.focus();\n }\n }\n\n if (e.keyCode === 8) {\n error.value = '';\n\n if (e.target.value === '') {\n if (isPrevElementIsInput) {\n prevElement.focus();\n }\n }\n }\n\n // if (e.keyCode == 37) {\n // if (isPrevElementIsInput) {\n // prevElement.focus();\n // }\n // }\n\n // if (e.keyCode == 39) {\n // if (isNextElementIsInput) {\n // nextElement.focus();\n // }\n // }\n };\n\n const codePaste = (e) => {\n e.preventDefault();\n\n const value = e.clipboardData.getData('Text');\n\n if (value.length == 4) {\n if (!isNaN(value[0]) && !isNaN(value[1]) && !isNaN(value[2]) && !isNaN(value[3])) {\n code1.value = value[0];\n code2.value = value[1];\n code3.value = value[2];\n code4.value = value[3];\n\n error.value = '';\n }\n }\n };\n\n const presetedResetToken = inject('presetedResetToken');\n const presetedResetEmail = inject('presetedResetEmail');\n\n const smsReset = () => {\n if (code1.value === '' || code2.value === '' || code3.value === '' || code4.value === '') {\n error.value = __('auth.validation.required');\n } else {\n loading.value = true;\n error.value = '';\n\n store.dispatch('auth/resetSms', {\n credentials: {\n code: String(code1.value) + String(code2.value) + String(code3.value) + String(code4.value)\n },\n callback: (m, isError) => {\n if (!isError) {\n code1.value = '';\n code2.value = '';\n code3.value = '';\n code4.value = '';\n\n presetedResetToken.value = m.token;\n presetedResetEmail.value = m.email;\n\n store.commit('auth/modal', 'reset');\n } else {\n error.value = m.message;\n }\n },\n finally: () => {\n loading.value = false;\n key.value++;\n }\n });\n }\n };\n\n return {\n loading,\n key,\n schema,\n validation,\n remembered,\n onSubmit,\n again,\n sent,\n message,\n error,\n close,\n sms,\n code1,\n code2,\n code3,\n code4,\n codeKeyUp,\n codePaste,\n more,\n smsReset\n };\n }\n};\n</script>"],"names":["markRaw","FormText","script","name","components","SchemaForm","SchemaFormFactory","VeeValidatePlugin","props","email","type","String","default","emailOrPhone","forgetType","showPlaceholders","Boolean","setup","loading","ref","store","useStore","key","message","error","sent","schema","model","sms","code1","code2","code3","code4","getCurrentInstance","s","component","label","__","placeholder","yupValidations","yup","string","required","test","value","isValidEmail","isValidPhone","currentYupValidation","validation","object","shape","useSchemaForm","presetedResetToken","inject","presetedResetEmail","remembered","commit","onSubmit","dispatch","credentials","callback","m","isError","response","finally","again","close","codeKeyUp","e","nextElement","target","nextElementSibling","prevElement","previousElementSibling","isNextElementIsInput","tagName","isPrevElementIsInput","keyCode","focus","codePaste","preventDefault","clipboardData","getData","length","isNaN","more","smsReset","code","token","_hoisted_1","class","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_9","_hoisted_10","_hoisted_12","_hoisted_13","_hoisted_15","_hoisted_16","_hoisted_18","_openBlock","_createElementBlock","_createElementVNode","createElementVNode","_toDisplayString","toDisplayString","_ctx","_createBlock","_component_SchemaForm","schemaRowClasses","$setup","validation-schema","afterForm","_normalizeClass","is-loading","onClick","apply","arguments","_withDirectives","withDirectives","innerHTML","$event","onKeyup","_cache","onPaste","createElementBlock"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Login.js","sources":["../../../src/components/auth/Login.vue","../../../src/components/auth/Login.vue?vue&type=template&id=11762c76&lang.js"],"sourcesContent":["<template>\n <div class=\"auth-login\">\n <div v-show=\"modal == 'login'\">\n <div class=\"title\">{{ __('auth.login.title') }}</div>\n <SchemaForm schemaRowClasses=\"field\" :schema=\"schema\" :validation-schema=\"validation\" :initial-errors=\"errors\" :key=\"key\" @submit=\"onSubmit\">\n <template #afterForm>\n <div class=\"href-forget-password\">\n <a @click=\"reset\">{{ __('auth.login.forget_password') }}</a>\n </div>\n <div class=\"field\">\n <button class=\"button is-link\" type=\"submit\" v-bind:class=\"{ 'is-loading': loading }\">{{ __('auth.login.form.submit') }}</button>\n </div>\n <div class=\"socials\">\n <div class=\"description has-text-centered\">{{ __('auth.login.socials') }}</div>\n <div class=\"buttons\">\n <a class=\"button\" @click=\"facebook\">\n <svg class=\"icon fb-btn\">\n <use xlink:href=\"#logo-facebook-icon\" />\n </svg>\n <span>Facebook</span>\n </a>\n <a class=\"button\" @click=\"google\">\n <svg class=\"icon google-btn\">\n <use xlink:href=\"#logo-google-icon\" />\n </svg>\n <span>Google</span>\n </a>\n </div>\n </div>\n <div class=\"href-register\">\n <a @click=\"register\">{{ __('auth.login.signup') }}</a>\n </div>\n </template>\n </SchemaForm>\n </div>\n\n <forget v-if=\"modal == 'forget'\" :email=\"model.email\" :forget-type=\"forgetType\" :show-placeholders=\"showPlaceholders\"></forget>\n </div>\n</template>\n<script>\nimport { ref, markRaw, computed } from 'vue';\nimport { useStore } from 'vuex';\nimport { SchemaFormFactory, useSchemaForm } from 'formvuelate';\nimport VeeValidatePlugin from '@formvuelate/plugin-vee-validate';\nimport FormText from '@perevorot/shop/dist/forms/FormText';\nimport FormPassword from '@perevorot/shop/dist/forms/FormPassword';\nimport * as yup from 'yup';\n\nmarkRaw(FormText);\n\nconst SchemaForm = SchemaFormFactory([VeeValidatePlugin({})]);\n\nexport default {\n props: {\n loginCallback: {\n type: Function,\n default: () => { }\n },\n forgetType: {\n type: String,\n default: 'email'\n },\n showPlaceholders: {\n type: Boolean,\n default: false\n },\n showPlaceholders: {\n type: Boolean,\n default: false\n }\n },\n name: 'login',\n components: {\n SchemaForm\n },\n setup(props) {\n const loading = ref(false);\n const store = useStore();\n const key = ref(0);\n const errors = ref({});\n const modal = computed(() => store.getters['auth/modal']);\n\n const schema = ref({\n email: {\n component: FormText,\n label: __('auth.login.form.email'),\n store: 'login',\n model: 'email',\n placeholder: props.showPlaceholders ? __('auth.login.form.email') : '',\n },\n password: {\n component: FormPassword,\n label: __('auth.login.form.password'),\n placeholder: props.showPlaceholders ? __('auth.login.form.password') : '',\n }\n });\n\n const validation = yup.object().shape({\n email: yup.string().email(__('auth.validation.email')).required(__('auth.validation.required')),\n password: yup.string().required(__('auth.validation.required'))\n });\n\n const model = ref({\n email: '',\n password: ''\n });\n\n useSchemaForm(model);\n\n const reset = () => {\n store.commit('auth/modal', 'forget');\n };\n\n const register = () => {\n store.commit('auth/modal', 'registration');\n };\n\n const facebook = () => {\n window.location.href = $ziggy('auth.login.social', {\n provider: 'facebook'\n });\n };\n\n const google = () => {\n window.location.href = $ziggy('auth.login.social', {\n provider: 'google'\n });\n };\n\n const onSubmit = () => {\n loading.value = true;\n\n store.dispatch('auth/login', {\n credentials: model.value,\n callback: (response) => {\n if (props.loginCallback) {\n props.loginCallback();\n }\n\n if (window.authUserLoginCallback) {\n window.authUserLoginCallback();\n }\n\n if (response.data && response.data.user && !response.data.user.is_login_tracked) {\n let object = {\n event: 'login',\n user_id: response.data.user.id,\n method: 'site'\n };\n\n if ($env.debug.ecommerce) {\n console.log(object);\n }\n\n if (!$env.debug.ecommerce && window.dataLayer) {\n window.dataLayer.push({\n ecommerce: null\n });\n\n window.dataLayer.push(object);\n }\n }\n },\n finally: () => {\n loading.value = false;\n },\n catch: (error) => {\n if (error.response.data && error.response.data.errors) {\n for (const [field, messages] of Object.entries(error.response.data.errors)) {\n if (messages[0]) {\n errors.value[field] = messages[0];\n }\n }\n\n model.value.password = '';\n\n key.value++;\n }\n }\n });\n };\n\n return {\n loading,\n modal,\n schema,\n validation,\n reset,\n facebook,\n google,\n schema,\n onSubmit,\n errors,\n key,\n model,\n register\n };\n }\n};\n</script>","<template>\n <div class=\"auth-login\">\n <div v-show=\"modal == 'login'\">\n <div class=\"title\">{{ __('auth.login.title') }}</div>\n <SchemaForm schemaRowClasses=\"field\" :schema=\"schema\" :validation-schema=\"validation\" :initial-errors=\"errors\" :key=\"key\" @submit=\"onSubmit\">\n <template #afterForm>\n <div class=\"href-forget-password\">\n <a @click=\"reset\">{{ __('auth.login.forget_password') }}</a>\n </div>\n <div class=\"field\">\n <button class=\"button is-link\" type=\"submit\" v-bind:class=\"{ 'is-loading': loading }\">{{ __('auth.login.form.submit') }}</button>\n </div>\n <div class=\"socials\">\n <div class=\"description has-text-centered\">{{ __('auth.login.socials') }}</div>\n <div class=\"buttons\">\n <a class=\"button\" @click=\"facebook\">\n <svg class=\"icon fb-btn\">\n <use xlink:href=\"#logo-facebook-icon\" />\n </svg>\n <span>Facebook</span>\n </a>\n <a class=\"button\" @click=\"google\">\n <svg class=\"icon google-btn\">\n <use xlink:href=\"#logo-google-icon\" />\n </svg>\n <span>Google</span>\n </a>\n </div>\n </div>\n <div class=\"href-register\">\n <a @click=\"register\">{{ __('auth.login.signup') }}</a>\n </div>\n </template>\n </SchemaForm>\n </div>\n\n <forget v-if=\"modal == 'forget'\" :email=\"model.email\" :forget-type=\"forgetType\" :show-placeholders=\"showPlaceholders\"></forget>\n </div>\n</template>\n<script>\nimport { ref, markRaw, computed } from 'vue';\nimport { useStore } from 'vuex';\nimport { SchemaFormFactory, useSchemaForm } from 'formvuelate';\nimport VeeValidatePlugin from '@formvuelate/plugin-vee-validate';\nimport FormText from '@perevorot/shop/dist/forms/FormText';\nimport FormPassword from '@perevorot/shop/dist/forms/FormPassword';\nimport * as yup from 'yup';\n\nmarkRaw(FormText);\n\nconst SchemaForm = SchemaFormFactory([VeeValidatePlugin({})]);\n\nexport default {\n props: {\n loginCallback: {\n type: Function,\n default: () => { }\n },\n forgetType: {\n type: String,\n default: 'email'\n },\n showPlaceholders: {\n type: Boolean,\n default: false\n },\n showPlaceholders: {\n type: Boolean,\n default: false\n }\n },\n name: 'login',\n components: {\n SchemaForm\n },\n setup(props) {\n const loading = ref(false);\n const store = useStore();\n const key = ref(0);\n const errors = ref({});\n const modal = computed(() => store.getters['auth/modal']);\n\n const schema = ref({\n email: {\n component: FormText,\n label: __('auth.login.form.email'),\n store: 'login',\n model: 'email',\n placeholder: props.showPlaceholders ? __('auth.login.form.email') : '',\n },\n password: {\n component: FormPassword,\n label: __('auth.login.form.password'),\n placeholder: props.showPlaceholders ? __('auth.login.form.password') : '',\n }\n });\n\n const validation = yup.object().shape({\n email: yup.string().email(__('auth.validation.email')).required(__('auth.validation.required')),\n password: yup.string().required(__('auth.validation.required'))\n });\n\n const model = ref({\n email: '',\n password: ''\n });\n\n useSchemaForm(model);\n\n const reset = () => {\n store.commit('auth/modal', 'forget');\n };\n\n const register = () => {\n store.commit('auth/modal', 'registration');\n };\n\n const facebook = () => {\n window.location.href = $ziggy('auth.login.social', {\n provider: 'facebook'\n });\n };\n\n const google = () => {\n window.location.href = $ziggy('auth.login.social', {\n provider: 'google'\n });\n };\n\n const onSubmit = () => {\n loading.value = true;\n\n store.dispatch('auth/login', {\n credentials: model.value,\n callback: (response) => {\n if (props.loginCallback) {\n props.loginCallback();\n }\n\n if (window.authUserLoginCallback) {\n window.authUserLoginCallback();\n }\n\n if (response.data && response.data.user && !response.data.user.is_login_tracked) {\n let object = {\n event: 'login',\n user_id: response.data.user.id,\n method: 'site'\n };\n\n if ($env.debug.ecommerce) {\n console.log(object);\n }\n\n if (!$env.debug.ecommerce && window.dataLayer) {\n window.dataLayer.push({\n ecommerce: null\n });\n\n window.dataLayer.push(object);\n }\n }\n },\n finally: () => {\n loading.value = false;\n },\n catch: (error) => {\n if (error.response.data && error.response.data.errors) {\n for (const [field, messages] of Object.entries(error.response.data.errors)) {\n if (messages[0]) {\n errors.value[field] = messages[0];\n }\n }\n\n model.value.password = '';\n\n key.value++;\n }\n }\n });\n };\n\n return {\n loading,\n modal,\n schema,\n validation,\n reset,\n facebook,\n google,\n schema,\n onSubmit,\n errors,\n key,\n model,\n register\n };\n }\n};\n</script>"],"names":["markRaw","FormText","SchemaForm","SchemaFormFactory","VeeValidatePlugin","script","props","_defineProperty","loginCallback","type","Function","default","forgetType","String","showPlaceholders","Boolean","name","components","setup","loading","ref","store","useStore","key","errors","modal","computed","getters","schema","email","component","label","__","model","placeholder","password","FormPassword","validation","yup","object","shape","string","required","useSchemaForm","reset","commit","facebook","window","location","href","$ziggy","provider","google","onSubmit","value","dispatch","credentials","callback","response","authUserLoginCallback","data","user","is_login_tracked","event","user_id","id","method","$env","debug","ecommerce","console","log","dataLayer","push","finally","catch","error","_i","_Object$entries","Object","entries","length","_Object$entries$_i","_slicedToArray","field","messages","_hoisted_1","class","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_createElementVNode","createElementVNode","xlink:href","_hoisted_14","_openBlock","_createElementBlock","_toDisplayString","toDisplayString","_ctx","_createBlock","_component_SchemaForm","schemaRowClasses","$setup","validation-schema","initial-errors","afterForm","onClick","apply","arguments","_normalizeClass","is-loading","register","createBlock","_component_forget","forget-type","$props","show-placeholders"],"mappings":"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"}
1
+ {"version":3,"file":"Login.js","sources":["../../../src/components/auth/Login.vue","../../../src/components/auth/Login.vue?vue&type=template&id=11762c76&lang.js"],"sourcesContent":["<template>\n <div class=\"auth-login\">\n <div v-show=\"modal == 'login'\">\n <div class=\"title\">{{ __('auth.login.title') }}</div>\n <SchemaForm schemaRowClasses=\"field\" :schema=\"schema\" :validation-schema=\"validation\" :initial-errors=\"errors\" :key=\"key\" @submit=\"onSubmit\">\n <template #afterForm>\n <div class=\"href-forget-password\">\n <a @click=\"reset\">{{ __('auth.login.forget_password') }}</a>\n </div>\n <div class=\"field\">\n <button class=\"button is-link\" type=\"submit\" v-bind:class=\"{ 'is-loading': loading }\">{{ __('auth.login.form.submit') }}</button>\n </div>\n <div class=\"socials\">\n <div class=\"description has-text-centered\">{{ __('auth.login.socials') }}</div>\n <div class=\"buttons\">\n <a class=\"button\" @click=\"facebook\">\n <svg class=\"icon fb-btn\">\n <use xlink:href=\"#logo-facebook-icon\" />\n </svg>\n <span>Facebook</span>\n </a>\n <a class=\"button\" @click=\"google\">\n <svg class=\"icon google-btn\">\n <use xlink:href=\"#logo-google-icon\" />\n </svg>\n <span>Google</span>\n </a>\n </div>\n </div>\n <div class=\"href-register\">\n <a @click=\"register\">{{ __('auth.login.signup') }}</a>\n </div>\n </template>\n </SchemaForm>\n </div>\n\n <forget v-if=\"modal == 'forget'\" :email=\"model.email\" :forget-type=\"forgetType\" :show-placeholders=\"showPlaceholders\"></forget>\n </div>\n</template>\n<script>\nimport { ref, markRaw, computed } from 'vue';\nimport { useStore } from 'vuex';\nimport { SchemaFormFactory, useSchemaForm } from 'formvuelate';\nimport VeeValidatePlugin from '@formvuelate/plugin-vee-validate';\nimport FormText from '@perevorot/shop/dist/forms/FormText';\nimport FormPassword from '@perevorot/shop/dist/forms/FormPassword';\nimport * as yup from 'yup';\n\nmarkRaw(FormText);\n\nconst SchemaForm = SchemaFormFactory([VeeValidatePlugin({})]);\n\nexport default {\n props: {\n loginCallback: {\n type: Function,\n default: () => { }\n },\n forgetType: {\n type: String,\n default: 'email'\n },\n showPlaceholders: {\n type: Boolean,\n default: false\n },\n showPlaceholders: {\n type: Boolean,\n default: false\n }\n },\n name: 'login',\n components: {\n SchemaForm\n },\n setup(props) {\n const loading = ref(false);\n const store = useStore();\n const key = ref(0);\n const errors = ref({});\n const modal = computed(() => store.getters['auth/modal']);\n\n const schema = ref({\n email: {\n component: FormText,\n label: __('auth.login.form.email'),\n store: 'login',\n model: 'email',\n placeholder: props.showPlaceholders ? __('auth.login.form.email') : '',\n },\n password: {\n component: FormPassword,\n label: __('auth.login.form.password'),\n placeholder: props.showPlaceholders ? __('auth.login.form.password') : '',\n }\n });\n\n const validation = yup.object().shape({\n email: yup.string().email(__('auth.validation.email')).required(__('auth.validation.required')),\n password: yup.string().required(__('auth.validation.required'))\n });\n\n const model = ref({\n email: '',\n password: ''\n });\n\n useSchemaForm(model);\n\n const reset = () => {\n store.commit('auth/modal', 'forget');\n };\n\n const register = () => {\n store.commit('auth/modal', 'registration');\n };\n\n const facebook = () => {\n window.location.href = $ziggy('auth.login.social', {\n provider: 'facebook'\n });\n };\n\n const google = () => {\n window.location.href = $ziggy('auth.login.social', {\n provider: 'google'\n });\n };\n\n const onSubmit = () => {\n loading.value = true;\n\n store.dispatch('auth/login', {\n credentials: model.value,\n callback: (response) => {\n if (props.loginCallback) {\n props.loginCallback();\n }\n\n if (window.authUserLoginCallback) {\n window.authUserLoginCallback();\n }\n\n if (response.data && response.data.user && !response.data.user.is_login_tracked) {\n let object = {\n event: 'login',\n user_id: response.data.user.id,\n method: 'site'\n };\n\n if ($env.debug.ecommerce) {\n console.log(object);\n }\n\n if (!$env.debug.ecommerce && window.dataLayer) {\n window.dataLayer.push({\n ecommerce: null\n });\n\n window.dataLayer.push(object);\n }\n }\n },\n finally: () => {\n loading.value = false;\n },\n catch: (error) => {\n if (error.response.data && error.response.data.errors) {\n for (const [field, messages] of Object.entries(error.response.data.errors)) {\n if (messages[0]) {\n errors.value[field] = messages[0];\n }\n }\n\n model.value.password = '';\n\n key.value++;\n }\n }\n });\n };\n\n return {\n loading,\n modal,\n schema,\n validation,\n reset,\n facebook,\n google,\n schema,\n onSubmit,\n errors,\n key,\n model,\n register\n };\n }\n};\n</script>","<template>\n <div class=\"auth-login\">\n <div v-show=\"modal == 'login'\">\n <div class=\"title\">{{ __('auth.login.title') }}</div>\n <SchemaForm schemaRowClasses=\"field\" :schema=\"schema\" :validation-schema=\"validation\" :initial-errors=\"errors\" :key=\"key\" @submit=\"onSubmit\">\n <template #afterForm>\n <div class=\"href-forget-password\">\n <a @click=\"reset\">{{ __('auth.login.forget_password') }}</a>\n </div>\n <div class=\"field\">\n <button class=\"button is-link\" type=\"submit\" v-bind:class=\"{ 'is-loading': loading }\">{{ __('auth.login.form.submit') }}</button>\n </div>\n <div class=\"socials\">\n <div class=\"description has-text-centered\">{{ __('auth.login.socials') }}</div>\n <div class=\"buttons\">\n <a class=\"button\" @click=\"facebook\">\n <svg class=\"icon fb-btn\">\n <use xlink:href=\"#logo-facebook-icon\" />\n </svg>\n <span>Facebook</span>\n </a>\n <a class=\"button\" @click=\"google\">\n <svg class=\"icon google-btn\">\n <use xlink:href=\"#logo-google-icon\" />\n </svg>\n <span>Google</span>\n </a>\n </div>\n </div>\n <div class=\"href-register\">\n <a @click=\"register\">{{ __('auth.login.signup') }}</a>\n </div>\n </template>\n </SchemaForm>\n </div>\n\n <forget v-if=\"modal == 'forget'\" :email=\"model.email\" :forget-type=\"forgetType\" :show-placeholders=\"showPlaceholders\"></forget>\n </div>\n</template>\n<script>\nimport { ref, markRaw, computed } from 'vue';\nimport { useStore } from 'vuex';\nimport { SchemaFormFactory, useSchemaForm } from 'formvuelate';\nimport VeeValidatePlugin from '@formvuelate/plugin-vee-validate';\nimport FormText from '@perevorot/shop/dist/forms/FormText';\nimport FormPassword from '@perevorot/shop/dist/forms/FormPassword';\nimport * as yup from 'yup';\n\nmarkRaw(FormText);\n\nconst SchemaForm = SchemaFormFactory([VeeValidatePlugin({})]);\n\nexport default {\n props: {\n loginCallback: {\n type: Function,\n default: () => { }\n },\n forgetType: {\n type: String,\n default: 'email'\n },\n showPlaceholders: {\n type: Boolean,\n default: false\n },\n showPlaceholders: {\n type: Boolean,\n default: false\n }\n },\n name: 'login',\n components: {\n SchemaForm\n },\n setup(props) {\n const loading = ref(false);\n const store = useStore();\n const key = ref(0);\n const errors = ref({});\n const modal = computed(() => store.getters['auth/modal']);\n\n const schema = ref({\n email: {\n component: FormText,\n label: __('auth.login.form.email'),\n store: 'login',\n model: 'email',\n placeholder: props.showPlaceholders ? __('auth.login.form.email') : '',\n },\n password: {\n component: FormPassword,\n label: __('auth.login.form.password'),\n placeholder: props.showPlaceholders ? __('auth.login.form.password') : '',\n }\n });\n\n const validation = yup.object().shape({\n email: yup.string().email(__('auth.validation.email')).required(__('auth.validation.required')),\n password: yup.string().required(__('auth.validation.required'))\n });\n\n const model = ref({\n email: '',\n password: ''\n });\n\n useSchemaForm(model);\n\n const reset = () => {\n store.commit('auth/modal', 'forget');\n };\n\n const register = () => {\n store.commit('auth/modal', 'registration');\n };\n\n const facebook = () => {\n window.location.href = $ziggy('auth.login.social', {\n provider: 'facebook'\n });\n };\n\n const google = () => {\n window.location.href = $ziggy('auth.login.social', {\n provider: 'google'\n });\n };\n\n const onSubmit = () => {\n loading.value = true;\n\n store.dispatch('auth/login', {\n credentials: model.value,\n callback: (response) => {\n if (props.loginCallback) {\n props.loginCallback();\n }\n\n if (window.authUserLoginCallback) {\n window.authUserLoginCallback();\n }\n\n if (response.data && response.data.user && !response.data.user.is_login_tracked) {\n let object = {\n event: 'login',\n user_id: response.data.user.id,\n method: 'site'\n };\n\n if ($env.debug.ecommerce) {\n console.log(object);\n }\n\n if (!$env.debug.ecommerce && window.dataLayer) {\n window.dataLayer.push({\n ecommerce: null\n });\n\n window.dataLayer.push(object);\n }\n }\n },\n finally: () => {\n loading.value = false;\n },\n catch: (error) => {\n if (error.response.data && error.response.data.errors) {\n for (const [field, messages] of Object.entries(error.response.data.errors)) {\n if (messages[0]) {\n errors.value[field] = messages[0];\n }\n }\n\n model.value.password = '';\n\n key.value++;\n }\n }\n });\n };\n\n return {\n loading,\n modal,\n schema,\n validation,\n reset,\n facebook,\n google,\n schema,\n onSubmit,\n errors,\n key,\n model,\n register\n };\n }\n};\n</script>"],"names":["markRaw","FormText","SchemaForm","SchemaFormFactory","VeeValidatePlugin","script","props","_defineProperty","loginCallback","type","Function","default","forgetType","String","showPlaceholders","Boolean","name","components","setup","loading","ref","store","useStore","key","errors","modal","computed","getters","schema","email","component","label","__","model","placeholder","password","FormPassword","validation","yup","object","shape","string","required","useSchemaForm","reset","commit","facebook","window","location","href","$ziggy","provider","google","onSubmit","value","dispatch","credentials","callback","response","authUserLoginCallback","data","user","is_login_tracked","event","user_id","id","method","$env","debug","ecommerce","console","log","dataLayer","push","finally","catch","error","_i","_Object$entries","Object","entries","length","_Object$entries$_i","_slicedToArray","field","messages","_hoisted_1","class","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_createElementVNode","createElementVNode","xlink:href","_hoisted_14","_openBlock","_createElementBlock","_toDisplayString","toDisplayString","_ctx","_createBlock","_component_SchemaForm","schemaRowClasses","$setup","validation-schema","initial-errors","afterForm","onClick","apply","arguments","_normalizeClass","is-loading","register","createBlock","_component_forget","forget-type","$props","show-placeholders"],"mappings":"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"}