@perevorot/shop 2.0.156 → 2.0.158
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api.js.map +1 -1
- package/dist/app.js.map +1 -1
- package/dist/components/account/Account.js.map +1 -1
- package/dist/components/account/OrderItem.js.map +1 -1
- package/dist/components/account/Orders.js.map +1 -1
- package/dist/components/account/User.js +1 -1
- package/dist/components/account/User.js.map +1 -1
- package/dist/components/account/Viewed.js.map +1 -1
- package/dist/components/account/Wish.js.map +1 -1
- package/dist/components/auth/Confirm.js.map +1 -1
- package/dist/components/auth/Forget.js.map +1 -1
- package/dist/components/auth/Login.js +1 -1
- package/dist/components/auth/Login.js.map +1 -1
- package/dist/components/auth/Registration.js +1 -1
- package/dist/components/auth/Registration.js.map +1 -1
- package/dist/components/auth/Reset.js.map +1 -1
- package/dist/components/auth/User.js +1 -1
- package/dist/components/auth/User.js.map +1 -1
- package/dist/components/auth/UserTrigger.js.map +1 -1
- package/dist/components/shop/Catalog.js.map +1 -1
- package/dist/components/shop/CodeCopy.js +1 -1
- package/dist/components/shop/CodeCopy.js.map +1 -1
- package/dist/components/shop/Cross.js.map +1 -1
- package/dist/components/shop/FilterToggle.js +1 -1
- package/dist/components/shop/FilterToggle.js.map +1 -1
- package/dist/components/shop/Gallery.js.map +1 -1
- package/dist/components/shop/Notice.js.map +1 -1
- package/dist/components/shop/Pagination.js.map +1 -1
- package/dist/components/shop/PromoProducts.js.map +1 -1
- package/dist/components/shop/Search.js.map +1 -1
- package/dist/components/shop/bundle/Bundle.js +1 -1
- package/dist/components/shop/bundle/Bundle.js.map +1 -1
- package/dist/components/shop/bundle/BundleAdd.js.map +1 -1
- package/dist/components/shop/cart/Cart.js.map +1 -1
- package/dist/components/shop/cart/CartAdd.js.map +1 -1
- package/dist/components/shop/cart/CartItem.js.map +1 -1
- package/dist/components/shop/cart/CartTrigger.js.map +1 -1
- package/dist/components/shop/cart/SuccessMessage.js.map +1 -1
- package/dist/components/shop/compare/Compare.js.map +1 -1
- package/dist/components/shop/compare/CompareAdd.js.map +1 -1
- package/dist/components/shop/compare/CompareDelete.js.map +1 -1
- package/dist/components/shop/compare/CompareDeleteAll.js.map +1 -1
- package/dist/components/shop/compare/CompareList.js.map +1 -1
- package/dist/components/shop/compare/Comparsion.js.map +1 -1
- package/dist/components/shop/compare/ComparsionModal.js.map +1 -1
- package/dist/components/shop/compare/SuccessMessage.js.map +1 -1
- package/dist/components/shop/filters/FilterSearch.js.map +1 -1
- package/dist/components/shop/filters/Price.js.map +1 -1
- package/dist/components/shop/order/Checkout.js +1 -1
- package/dist/components/shop/order/Checkout.js.map +1 -1
- package/dist/components/shop/order/CheckoutItem.js.map +1 -1
- package/dist/components/shop/order/OneClick.js +1 -1
- package/dist/components/shop/order/OneClick.js.map +1 -1
- package/dist/components/shop/order/shipping/CheckoutShippingCourier.js.map +1 -1
- package/dist/components/shop/order/shipping/CheckoutShippingNovaposhtaAddress.js.map +1 -1
- package/dist/components/shop/order/shipping/CheckoutShippingNovaposhtaWarehouse.js +1 -1
- package/dist/components/shop/order/shipping/CheckoutShippingNovaposhtaWarehouse.js.map +1 -1
- package/dist/components/shop/order/shipping/CheckoutShippingPickup.js.map +1 -1
- package/dist/components/shop/order/shipping/CheckoutShippingUkrposhtaWarehouse.js +1 -1
- package/dist/components/shop/order/shipping/CheckoutShippingUkrposhtaWarehouse.js.map +1 -1
- package/dist/components/shop/order/shipping/OtherRecipient.js.map +1 -1
- package/dist/components/shop/reviews/Question.js +1 -1
- package/dist/components/shop/reviews/Question.js.map +1 -1
- package/dist/components/shop/reviews/Review.js +1 -1
- package/dist/components/shop/reviews/Review.js.map +1 -1
- package/dist/components/shop/viewed/Viewed.js.map +1 -1
- package/dist/components/shop/viewed/ViewedDelete.js.map +1 -1
- package/dist/components/shop/viewed/Viewer.js.map +1 -1
- package/dist/components/shop/wishlist/SuccessMessage.js.map +1 -1
- package/dist/components/shop/wishlist/Wishlist.js.map +1 -1
- package/dist/components/shop/wishlist/WishlistAdd.js.map +1 -1
- package/dist/components/shop/wishlist/WishlistDelete.js.map +1 -1
- package/dist/forms/FormCheckbox.js.map +1 -1
- package/dist/forms/FormCheckboxes.js.map +1 -1
- package/dist/forms/FormPassword.js.map +1 -1
- package/dist/forms/FormRadio.js.map +1 -1
- package/dist/forms/FormRating.js.map +1 -1
- package/dist/forms/FormSection.js.map +1 -1
- package/dist/forms/FormSelect.js.map +1 -1
- package/dist/forms/FormSwitch.js.map +1 -1
- package/dist/forms/FormText.js.map +1 -1
- package/dist/forms/FormTextarea.js.map +1 -1
- package/dist/global.js.map +1 -1
- package/dist/helpers.js +1 -1
- package/dist/helpers.js.map +1 -1
- package/dist/store.js +1 -1
- package/dist/store.js.map +1 -1
- package/dist/vuex.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"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","name","components","SchemaForm","SchemaFormFactory","VeeValidatePlugin","props","email","type","String","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","again","close","codeKeyUp","e","nextElement","target","nextElementSibling","prevElement","previousElementSibling","isNextElementIsInput","tagName","isPrevElementIsInput","keyCode","focus","codePaste","preventDefault","clipboardData","getData","length","isNaN","more","smsReset","code","token","_createElementBlock","_hoisted_1","_createElementVNode","_hoisted_2","_ctx","_createBlock","schemaRowClasses","$setup","afterForm","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","onClick","_hoisted_7","innerHTML","_hoisted_9","_hoisted_10","_hoisted_12","_hoisted_13","onKeyup","$event","onPaste","_hoisted_15","_hoisted_16","_hoisted_18"],"mappings":"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"}
|
|
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,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("vue"),t=require("vuex"),o=require("formvuelate"),r=require("@formvuelate/plugin-vee-validate"),a=require("@perevorot/shop/dist/forms/FormText"),n=require("@perevorot/shop/dist/forms/FormPassword"),l=require("yup");function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function c(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(o){if("default"!==o){var r=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(t,o,r.get?r:{enumerable:!0,get:function(){return e[o]}})}})),t.default=e,Object.freeze(t)}var s=i(r),u=i(a),d=i(n),m=c(l);function f(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function
|
|
1
|
+
"use strict";var e=require("vue"),t=require("vuex"),o=require("formvuelate"),r=require("@formvuelate/plugin-vee-validate"),a=require("@perevorot/shop/dist/forms/FormText"),n=require("@perevorot/shop/dist/forms/FormPassword"),l=require("yup");function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function c(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(o){if("default"!==o){var r=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(t,o,r.get?r:{enumerable:!0,get:function(){return e[o]}})}})),t.default=e,Object.freeze(t)}var s=i(r),u=i(a),d=i(n),m=c(l);function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,r=Array(t);o<t;o++)r[o]=e[o];return r}function g(e,t,o){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var o=e[Symbol.toPrimitive];if(void 0!==o){var r=o.call(e,t||"default");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function p(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var r,a,n,l,i=[],c=!0,s=!1;try{if(n=(o=o.call(e)).next,0===t){if(Object(o)!==o)return;c=!1}else for(;!(c=(r=n.call(o)).done)&&(i.push(r.value),i.length!==t);c=!0);}catch(e){s=!0,a=e}finally{try{if(!c&&null!=o.return&&(l=o.return(),Object(l)!==l))return}finally{if(s)throw a}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return f(e,t);var o={}.toString.call(e).slice(8,-1);return"Object"===o&&e.constructor&&(o=e.constructor.name),"Map"===o||"Set"===o?Array.from(e):"Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o)?f(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}e.markRaw(u.default);var h=o.SchemaFormFactory([s.default({})]),v={props:g({loginCallback:{type:Function,default:function(){}},forgetType:{type:String,default:"email"},showPlaceholders:{type:Boolean,default:!1}},"showPlaceholders",{type:Boolean,default:!1}),name:"login",components:{SchemaForm:h},setup:function(r){var a=e.ref(!1),n=t.useStore(),l=e.ref(0),i=e.ref({}),c=e.computed((function(){return n.getters["auth/modal"]})),s=e.ref({email:{component:u.default,label:__("auth.login.form.email"),store:"login",model:"email",placeholder:r.showPlaceholders?__("auth.login.form.email"):""},password:{component:d.default,label:__("auth.login.form.password"),placeholder:r.showPlaceholders?__("auth.login.form.password"):""}}),f=m.object().shape({email:m.string().email(__("auth.validation.email")).required(__("auth.validation.required")),password:m.string().required(__("auth.validation.required"))}),h=e.ref({email:"",password:""});o.useSchemaForm(h);return g(g(g(g(g(g({loading:a,modal:c,schema:s,validation:f,reset:function(){n.commit("auth/modal","forget")},facebook:function(){window.location.href=$ziggy("auth.login.social",{provider:"facebook"})},google:function(){window.location.href=$ziggy("auth.login.social",{provider:"google"})}},"schema",s),"onSubmit",(function(){a.value=!0,n.dispatch("auth/login",{credentials:h.value,callback:function(e){if(r.loginCallback&&r.loginCallback(),window.authUserLoginCallback&&window.authUserLoginCallback(),e.data&&e.data.user&&!e.data.user.is_login_tracked){var t={event:"login",user_id:e.data.user.id,method:"site"};$env.debug.ecommerce&&console.log(t),!$env.debug.ecommerce&&window.dataLayer&&(window.dataLayer.push({ecommerce:null}),window.dataLayer.push(t))}},finally:function(){a.value=!1},catch:function(e){if(e.response.data&&e.response.data.errors){for(var t=0,o=Object.entries(e.response.data.errors);t<o.length;t++){var r=p(o[t],2),a=r[0],n=r[1];n[0]&&(i.value[a]=n[0])}h.value.password="",l.value++}}})})),"errors",i),"key",l),"model",h),"register",(function(){n.commit("auth/modal","registration")}))}},b={class:"auth-login"},y={class:"title"},w={class:"href-forget-password"},k={class:"field"},_={class:"socials"},E={class:"description has-text-centered"},S={class:"buttons"},N=[e.createElementVNode("svg",{class:"icon fb-btn"},[e.createElementVNode("use",{"xlink:href":"#logo-facebook-icon"})],-1),e.createElementVNode("span",null,"Facebook",-1)],V=[e.createElementVNode("svg",{class:"icon google-btn"},[e.createElementVNode("use",{"xlink:href":"#logo-google-icon"})],-1),e.createElementVNode("span",null,"Google",-1)],C={class:"href-register"};v.render=function(t,o,r,a,n,l){var i=e.resolveComponent("SchemaForm"),c=e.resolveComponent("forget");return e.openBlock(),e.createElementBlock("div",b,[e.withDirectives(e.createElementVNode("div",null,[e.createElementVNode("div",y,e.toDisplayString(t.__("auth.login.title")),1),(e.openBlock(),e.createBlock(i,{schemaRowClasses:"field",schema:a.schema,"validation-schema":a.validation,"initial-errors":a.errors,key:a.key,onSubmit:a.onSubmit},{afterForm:e.withCtx((function(){return[e.createElementVNode("div",w,[e.createElementVNode("a",{onClick:o[0]||(o[0]=function(){return a.reset&&a.reset.apply(a,arguments)})},e.toDisplayString(t.__("auth.login.forget_password")),1)]),e.createElementVNode("div",k,[e.createElementVNode("button",{class:e.normalizeClass(["button is-link",{"is-loading":a.loading}]),type:"submit"},e.toDisplayString(t.__("auth.login.form.submit")),3)]),e.createElementVNode("div",_,[e.createElementVNode("div",E,e.toDisplayString(t.__("auth.login.socials")),1),e.createElementVNode("div",S,[e.createElementVNode("a",{class:"button",onClick:o[1]||(o[1]=function(){return a.facebook&&a.facebook.apply(a,arguments)})},N),e.createElementVNode("a",{class:"button",onClick:o[2]||(o[2]=function(){return a.google&&a.google.apply(a,arguments)})},V)])]),e.createElementVNode("div",C,[e.createElementVNode("a",{onClick:o[3]||(o[3]=function(){return a.register&&a.register.apply(a,arguments)})},e.toDisplayString(t.__("auth.login.signup")),1)])]})),_:1},8,["schema","validation-schema","initial-errors","onSubmit"]))],512),[[e.vShow,"login"==a.modal]]),"forget"==a.modal?(e.openBlock(),e.createBlock(c,{key:0,email:a.model.email,"forget-type":r.forgetType,"show-placeholders":r.showPlaceholders},null,8,["email","forget-type","show-placeholders"])):e.createCommentVNode("v-if",!0)])},module.exports=v;
|
|
2
2
|
//# sourceMappingURL=Login.js.map
|
|
@@ -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","props","loginCallback","type","Function","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","value","dispatch","credentials","callback","response","authUserLoginCallback","data","user","is_login_tracked","event","user_id","id","method","$env","debug","ecommerce","console","log","dataLayer","push","error","Object","entries","field","messages","_createElementVNode","_createElementBlock","_hoisted_1","_hoisted_2","_ctx","_createBlock","schemaRowClasses","$setup","onSubmit","afterForm","_hoisted_3","onClick","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_14","$props"],"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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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("vue"),t=require("vuex"),r=require("formvuelate"),o=require("@formvuelate/plugin-vee-validate"),a=require("@perevorot/shop/dist/api"),n=require("@perevorot/shop/dist/helpers"),i=require("secure-ls");function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var s=l(o),c=l(i);function u(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null
|
|
1
|
+
"use strict";var e=require("vue"),t=require("vuex"),r=require("formvuelate"),o=require("@formvuelate/plugin-vee-validate"),a=require("@perevorot/shop/dist/api"),n=require("@perevorot/shop/dist/helpers"),i=require("secure-ls");function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var s=l(o),c=l(i);function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,o=Array(t);r<t;r++)o[r]=e[r];return o}function d(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var o,a,n,i,l=[],s=!0,c=!1;try{if(n=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;s=!1}else for(;!(s=(o=n.call(r)).done)&&(l.push(o.value),l.length!==t);s=!0);}catch(e){c=!0,a=e}finally{try{if(!s&&null!=r.return&&(i=r.return(),Object(i)!==i))return}finally{if(c)throw a}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return u(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?u(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}var m={name:"registration",components:{SchemaForm:r.SchemaFormFactory([s.default({})])},setup:function(){var o,i=t.useStore(),l=e.ref(!1),s=e.ref(!0),u=e.ref(0),m=e.ref({}),f=e.ref(!1),v=e.ref(""),h=e.ref({}),g=e.ref({}),p=e.ref({});r.useSchemaForm(p);return a.auth.registerForm().then((function(e){if(e.data){var t=n.formParse(e.data);o=t.model,h.value=t.schema,p.value=t.model,g.value=t.validation,v.value=e.data.type}})).finally((function(){s.value=!1})),{loading:l,loadingForm:s,key:u,errors:m,schema:h,validation:g,onSubmit:function(){l.value=!0,i.dispatch("auth/register",{type:v.value?v.value.charAt(0).toUpperCase()+v.value.slice(1):"",credentials:p.value,finally:function(){l.value=!1},callback:function(e){if(e.data&&e.data.user_id){var t={event:"sign_up",user_id:e.data.user_id,method:"site"};$env.debug.ecommerce&&console.log(t),!$env.debug.ecommerce&&window.dataLayer&&(window.dataLayer.push({ecommerce:null}),window.dataLayer.push(t))}f.value=!0,p.value=o,u.value++;var r=new c.default({isCompression:!1}),a=r.get("forms");a.registration&&(a.registration={}),r.set("forms",a)},catch:function(e){var t={};if(e.response.data&&e.response.data.errors){for(var r=0,o=Object.entries(e.response.data.errors);r<o.length;r++){var a=d(o[r],2),n=a[0],i=a[1];i[0]&&(t[n]=i[0])}u.value++}m.value=t}})},facebook:function(){window.location.href=$ziggy("auth.login.social",{provider:"facebook"})},google:function(){window.location.href=$ziggy("auth.login.social",{provider:"google"})},thanks:f,model:p,close:function(){i.commit("auth/modal",null),i.dispatch("auth/me")},type:v,login:function(){i.commit("auth/modal","login")}}}},f={key:0,class:"auth-registration"},v={class:"title"},h={class:"field"},g={class:"socials"},p={class:"description has-text-centered"},y={class:"buttons"},b=[e.createElementVNode("svg",{class:"icon fb-btn"},[e.createElementVNode("use",{"xlink:href":"#logo-facebook-icon"})],-1),e.createElementVNode("span",null,"Facebook",-1)],k=[e.createElementVNode("svg",{class:"icon google-btn"},[e.createElementVNode("use",{"xlink:href":"#logo-google-icon"})],-1),e.createElementVNode("span",null,"Google",-1)],E={class:"href-already-register"},N={class:"mt-3"};m.render=function(t,r,o,a,n,i){var l=e.resolveComponent("SchemaForm");return a.loadingForm?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("div",f,[e.createElementVNode("div",v,e.toDisplayString(t.__("auth.registration.title")),1),e.withDirectives(e.createElementVNode("div",{class:e.normalizeClass(a.model.user_type?"is-user-type-"+a.model.user_type.replaceAll("_","-"):null)},[(e.openBlock(),e.createBlock(l,{schemaRowClasses:"field",schema:a.schema,"validation-schema":a.validation,"initial-errors":a.errors,key:a.key,onSubmit:a.onSubmit},{afterForm:e.withCtx((function(){return[e.createElementVNode("div",h,[e.createElementVNode("button",{class:e.normalizeClass(["button is-link",{"is-loading":a.loading}]),type:"submit"},e.toDisplayString(t.__("auth.registration.form.submit"+("short"==a.type?"_short":""))),3)]),e.createElementVNode("div",g,[e.createElementVNode("div",p,e.toDisplayString(t.__("auth.login.socials")),1),e.createElementVNode("div",y,[e.createElementVNode("a",{class:"button",onClick:r[0]||(r[0]=function(){return a.facebook&&a.facebook.apply(a,arguments)})},b),e.createElementVNode("a",{class:"button",onClick:r[1]||(r[1]=function(){return a.google&&a.google.apply(a,arguments)})},k)])]),e.createElementVNode("div",E,[e.createElementVNode("a",{onClick:r[2]||(r[2]=function(){return a.login&&a.login.apply(a,arguments)})},e.toDisplayString(t.__("auth.registration.already")),1)])]})),_:1},8,["schema","validation-schema","initial-errors","onSubmit"]))],2),[[e.vShow,!a.thanks]]),e.withDirectives(e.createElementVNode("div",null,[e.createElementVNode("div",null,e.toDisplayString(t.__("auth.registration.thanks"+("short"==a.type?"_short":""),{email:a.model.email})),1),e.createElementVNode("div",N,[e.createElementVNode("button",{class:"button",onClick:r[3]||(r[3]=function(){return a.close&&a.close.apply(a,arguments)})},e.toDisplayString(t.__("auth.registration.continue")),1)])],512),[[e.vShow,a.thanks]])]))},module.exports=m;
|
|
2
2
|
//# sourceMappingURL=Registration.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Registration.js","sources":["../../../src/components/auth/Registration.vue","../../../src/components/auth/Registration.vue?vue&type=template&id=5718b73a&lang.js"],"sourcesContent":["<template>\n <div class=\"auth-registration\" v-if=\"!loadingForm\">\n <div class=\"title\">{{ __('auth.registration.title') }}</div>\n <div v-show=\"!thanks\" 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 <button class=\"button is-link\" type=\"submit\" v-bind:class=\"{ 'is-loading': loading }\">\n {{ __('auth.registration.form.submit' + (type == 'short' ? '_short' : '')) }}\n </button>\n </div>\n <div class=\"socials\">\n <div class=\"description has-text-centered\">\n {{ __('auth.login.socials') }}\n </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\"><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-already-register\">\n <a @click=\"login\">{{ __('auth.registration.already') }}</a>\n </div>\n </template>\n </SchemaForm>\n </div>\n <div v-show=\"thanks\">\n <div>\n {{\n __('auth.registration.thanks' + (type == 'short' ? '_short' : ''), {\n email: model.email\n })\n }}\n </div>\n <div class=\"mt-3\">\n <button class=\"button\" @click=\"close\">\n {{ __('auth.registration.continue') }}\n </button>\n </div>\n </div>\n </div>\n</template>\n<script>\nimport { ref } from 'vue';\nimport { useStore } from 'vuex';\nimport { SchemaFormFactory, useSchemaForm } from 'formvuelate';\nimport VeeValidatePlugin from '@formvuelate/plugin-vee-validate';\nimport { auth as api } from '@perevorot/shop/dist/api';\nimport { formParse } from '@perevorot/shop/dist/helpers';\nimport SecureLS from 'secure-ls';\n\nconst SchemaForm = SchemaFormFactory([VeeValidatePlugin({})]);\n\nexport default {\n name: 'registration',\n components: {\n SchemaForm\n },\n setup() {\n const store = useStore();\n const loading = ref(false);\n const loadingForm = ref(true);\n const key = ref(0);\n const errors = ref({});\n const thanks = ref(false);\n const type = ref('');\n const schema = ref({});\n const validation = ref({});\n const model = ref({});\n\n let emptyModel;\n\n useSchemaForm(model);\n\n const onSubmit = () => {\n loading.value = true;\n\n store.dispatch('auth/register', {\n type: type.value ? type.value.charAt(0).toUpperCase() + type.value.slice(1) : '',\n credentials: model.value,\n finally: () => {\n loading.value = false;\n },\n callback: (response) => {\n if (response.data && response.data.user_id) {\n let object = {\n event: 'sign_up',\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 thanks.value = true;\n\n model.value = emptyModel;\n\n key.value++;\n\n let ls = new SecureLS({\n isCompression: false\n });\n\n let forms = ls.get('forms');\n\n if (forms.registration) {\n forms.registration = {};\n }\n\n ls.set('forms', forms);\n },\n catch: (error) => {\n let incomingErrors = {};\n\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 incomingErrors[field] = messages[0];\n }\n }\n\n key.value++;\n }\n\n errors.value = incomingErrors;\n }\n });\n };\n\n const close = () => {\n store.commit('auth/modal', null);\n store.dispatch('auth/me');\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 login = () => {\n store.commit('auth/modal', 'login');\n };\n\n api.registerForm()\n .then((response) => {\n if (response.data) {\n const form = formParse(response.data);\n\n emptyModel = form.model;\n\n schema.value = form.schema;\n model.value = form.model;\n validation.value = form.validation;\n\n type.value = response.data.type;\n }\n })\n .finally(() => {\n loadingForm.value = false;\n });\n\n return {\n loading,\n loadingForm,\n key,\n errors,\n schema,\n validation,\n onSubmit,\n facebook,\n google,\n thanks,\n model,\n close,\n type,\n login\n };\n }\n};\n</script>","<template>\n <div class=\"auth-registration\" v-if=\"!loadingForm\">\n <div class=\"title\">{{ __('auth.registration.title') }}</div>\n <div v-show=\"!thanks\" 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 <button class=\"button is-link\" type=\"submit\" v-bind:class=\"{ 'is-loading': loading }\">\n {{ __('auth.registration.form.submit' + (type == 'short' ? '_short' : '')) }}\n </button>\n </div>\n <div class=\"socials\">\n <div class=\"description has-text-centered\">\n {{ __('auth.login.socials') }}\n </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\"><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-already-register\">\n <a @click=\"login\">{{ __('auth.registration.already') }}</a>\n </div>\n </template>\n </SchemaForm>\n </div>\n <div v-show=\"thanks\">\n <div>\n {{\n __('auth.registration.thanks' + (type == 'short' ? '_short' : ''), {\n email: model.email\n })\n }}\n </div>\n <div class=\"mt-3\">\n <button class=\"button\" @click=\"close\">\n {{ __('auth.registration.continue') }}\n </button>\n </div>\n </div>\n </div>\n</template>\n<script>\nimport { ref } from 'vue';\nimport { useStore } from 'vuex';\nimport { SchemaFormFactory, useSchemaForm } from 'formvuelate';\nimport VeeValidatePlugin from '@formvuelate/plugin-vee-validate';\nimport { auth as api } from '@perevorot/shop/dist/api';\nimport { formParse } from '@perevorot/shop/dist/helpers';\nimport SecureLS from 'secure-ls';\n\nconst SchemaForm = SchemaFormFactory([VeeValidatePlugin({})]);\n\nexport default {\n name: 'registration',\n components: {\n SchemaForm\n },\n setup() {\n const store = useStore();\n const loading = ref(false);\n const loadingForm = ref(true);\n const key = ref(0);\n const errors = ref({});\n const thanks = ref(false);\n const type = ref('');\n const schema = ref({});\n const validation = ref({});\n const model = ref({});\n\n let emptyModel;\n\n useSchemaForm(model);\n\n const onSubmit = () => {\n loading.value = true;\n\n store.dispatch('auth/register', {\n type: type.value ? type.value.charAt(0).toUpperCase() + type.value.slice(1) : '',\n credentials: model.value,\n finally: () => {\n loading.value = false;\n },\n callback: (response) => {\n if (response.data && response.data.user_id) {\n let object = {\n event: 'sign_up',\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 thanks.value = true;\n\n model.value = emptyModel;\n\n key.value++;\n\n let ls = new SecureLS({\n isCompression: false\n });\n\n let forms = ls.get('forms');\n\n if (forms.registration) {\n forms.registration = {};\n }\n\n ls.set('forms', forms);\n },\n catch: (error) => {\n let incomingErrors = {};\n\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 incomingErrors[field] = messages[0];\n }\n }\n\n key.value++;\n }\n\n errors.value = incomingErrors;\n }\n });\n };\n\n const close = () => {\n store.commit('auth/modal', null);\n store.dispatch('auth/me');\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 login = () => {\n store.commit('auth/modal', 'login');\n };\n\n api.registerForm()\n .then((response) => {\n if (response.data) {\n const form = formParse(response.data);\n\n emptyModel = form.model;\n\n schema.value = form.schema;\n model.value = form.model;\n validation.value = form.validation;\n\n type.value = response.data.type;\n }\n })\n .finally(() => {\n loadingForm.value = false;\n });\n\n return {\n loading,\n loadingForm,\n key,\n errors,\n schema,\n validation,\n onSubmit,\n facebook,\n google,\n thanks,\n model,\n close,\n type,\n login\n };\n }\n};\n</script>"],"names":["name","components","SchemaForm","SchemaFormFactory","VeeValidatePlugin","setup","emptyModel","store","useStore","loading","ref","loadingForm","key","errors","thanks","type","schema","validation","model","useSchemaForm","api","registerForm","then","response","data","form","formParse","value","onSubmit","dispatch","charAt","toUpperCase","slice","credentials","callback","user_id","object","event","method","$env","debug","ecommerce","console","log","window","dataLayer","push","ls","SecureLS","isCompression","forms","get","registration","set","error","incomingErrors","Object","entries","field","messages","facebook","location","href","$ziggy","provider","google","close","commit","login","_createElementVNode","$setup","_createElementBlock","_hoisted_1","_hoisted_2","_ctx","user_type","replaceAll","_createBlock","schemaRowClasses","afterForm","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","onClick","_hoisted_13","_hoisted_14"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Registration.js","sources":["../../../src/components/auth/Registration.vue","../../../src/components/auth/Registration.vue?vue&type=template&id=5718b73a&lang.js"],"sourcesContent":["<template>\n <div class=\"auth-registration\" v-if=\"!loadingForm\">\n <div class=\"title\">{{ __('auth.registration.title') }}</div>\n <div v-show=\"!thanks\" 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 <button class=\"button is-link\" type=\"submit\" v-bind:class=\"{ 'is-loading': loading }\">\n {{ __('auth.registration.form.submit' + (type == 'short' ? '_short' : '')) }}\n </button>\n </div>\n <div class=\"socials\">\n <div class=\"description has-text-centered\">\n {{ __('auth.login.socials') }}\n </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\"><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-already-register\">\n <a @click=\"login\">{{ __('auth.registration.already') }}</a>\n </div>\n </template>\n </SchemaForm>\n </div>\n <div v-show=\"thanks\">\n <div>\n {{\n __('auth.registration.thanks' + (type == 'short' ? '_short' : ''), {\n email: model.email\n })\n }}\n </div>\n <div class=\"mt-3\">\n <button class=\"button\" @click=\"close\">\n {{ __('auth.registration.continue') }}\n </button>\n </div>\n </div>\n </div>\n</template>\n<script>\nimport { ref } from 'vue';\nimport { useStore } from 'vuex';\nimport { SchemaFormFactory, useSchemaForm } from 'formvuelate';\nimport VeeValidatePlugin from '@formvuelate/plugin-vee-validate';\nimport { auth as api } from '@perevorot/shop/dist/api';\nimport { formParse } from '@perevorot/shop/dist/helpers';\nimport SecureLS from 'secure-ls';\n\nconst SchemaForm = SchemaFormFactory([VeeValidatePlugin({})]);\n\nexport default {\n name: 'registration',\n components: {\n SchemaForm\n },\n setup() {\n const store = useStore();\n const loading = ref(false);\n const loadingForm = ref(true);\n const key = ref(0);\n const errors = ref({});\n const thanks = ref(false);\n const type = ref('');\n const schema = ref({});\n const validation = ref({});\n const model = ref({});\n\n let emptyModel;\n\n useSchemaForm(model);\n\n const onSubmit = () => {\n loading.value = true;\n\n store.dispatch('auth/register', {\n type: type.value ? type.value.charAt(0).toUpperCase() + type.value.slice(1) : '',\n credentials: model.value,\n finally: () => {\n loading.value = false;\n },\n callback: (response) => {\n if (response.data && response.data.user_id) {\n let object = {\n event: 'sign_up',\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 thanks.value = true;\n\n model.value = emptyModel;\n\n key.value++;\n\n let ls = new SecureLS({\n isCompression: false\n });\n\n let forms = ls.get('forms');\n\n if (forms.registration) {\n forms.registration = {};\n }\n\n ls.set('forms', forms);\n },\n catch: (error) => {\n let incomingErrors = {};\n\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 incomingErrors[field] = messages[0];\n }\n }\n\n key.value++;\n }\n\n errors.value = incomingErrors;\n }\n });\n };\n\n const close = () => {\n store.commit('auth/modal', null);\n store.dispatch('auth/me');\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 login = () => {\n store.commit('auth/modal', 'login');\n };\n\n api.registerForm()\n .then((response) => {\n if (response.data) {\n const form = formParse(response.data);\n\n emptyModel = form.model;\n\n schema.value = form.schema;\n model.value = form.model;\n validation.value = form.validation;\n\n type.value = response.data.type;\n }\n })\n .finally(() => {\n loadingForm.value = false;\n });\n\n return {\n loading,\n loadingForm,\n key,\n errors,\n schema,\n validation,\n onSubmit,\n facebook,\n google,\n thanks,\n model,\n close,\n type,\n login\n };\n }\n};\n</script>","<template>\n <div class=\"auth-registration\" v-if=\"!loadingForm\">\n <div class=\"title\">{{ __('auth.registration.title') }}</div>\n <div v-show=\"!thanks\" 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 <button class=\"button is-link\" type=\"submit\" v-bind:class=\"{ 'is-loading': loading }\">\n {{ __('auth.registration.form.submit' + (type == 'short' ? '_short' : '')) }}\n </button>\n </div>\n <div class=\"socials\">\n <div class=\"description has-text-centered\">\n {{ __('auth.login.socials') }}\n </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\"><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-already-register\">\n <a @click=\"login\">{{ __('auth.registration.already') }}</a>\n </div>\n </template>\n </SchemaForm>\n </div>\n <div v-show=\"thanks\">\n <div>\n {{\n __('auth.registration.thanks' + (type == 'short' ? '_short' : ''), {\n email: model.email\n })\n }}\n </div>\n <div class=\"mt-3\">\n <button class=\"button\" @click=\"close\">\n {{ __('auth.registration.continue') }}\n </button>\n </div>\n </div>\n </div>\n</template>\n<script>\nimport { ref } from 'vue';\nimport { useStore } from 'vuex';\nimport { SchemaFormFactory, useSchemaForm } from 'formvuelate';\nimport VeeValidatePlugin from '@formvuelate/plugin-vee-validate';\nimport { auth as api } from '@perevorot/shop/dist/api';\nimport { formParse } from '@perevorot/shop/dist/helpers';\nimport SecureLS from 'secure-ls';\n\nconst SchemaForm = SchemaFormFactory([VeeValidatePlugin({})]);\n\nexport default {\n name: 'registration',\n components: {\n SchemaForm\n },\n setup() {\n const store = useStore();\n const loading = ref(false);\n const loadingForm = ref(true);\n const key = ref(0);\n const errors = ref({});\n const thanks = ref(false);\n const type = ref('');\n const schema = ref({});\n const validation = ref({});\n const model = ref({});\n\n let emptyModel;\n\n useSchemaForm(model);\n\n const onSubmit = () => {\n loading.value = true;\n\n store.dispatch('auth/register', {\n type: type.value ? type.value.charAt(0).toUpperCase() + type.value.slice(1) : '',\n credentials: model.value,\n finally: () => {\n loading.value = false;\n },\n callback: (response) => {\n if (response.data && response.data.user_id) {\n let object = {\n event: 'sign_up',\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 thanks.value = true;\n\n model.value = emptyModel;\n\n key.value++;\n\n let ls = new SecureLS({\n isCompression: false\n });\n\n let forms = ls.get('forms');\n\n if (forms.registration) {\n forms.registration = {};\n }\n\n ls.set('forms', forms);\n },\n catch: (error) => {\n let incomingErrors = {};\n\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 incomingErrors[field] = messages[0];\n }\n }\n\n key.value++;\n }\n\n errors.value = incomingErrors;\n }\n });\n };\n\n const close = () => {\n store.commit('auth/modal', null);\n store.dispatch('auth/me');\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 login = () => {\n store.commit('auth/modal', 'login');\n };\n\n api.registerForm()\n .then((response) => {\n if (response.data) {\n const form = formParse(response.data);\n\n emptyModel = form.model;\n\n schema.value = form.schema;\n model.value = form.model;\n validation.value = form.validation;\n\n type.value = response.data.type;\n }\n })\n .finally(() => {\n loadingForm.value = false;\n });\n\n return {\n loading,\n loadingForm,\n key,\n errors,\n schema,\n validation,\n onSubmit,\n facebook,\n google,\n thanks,\n model,\n close,\n type,\n login\n };\n }\n};\n</script>"],"names":["script","name","components","SchemaForm","SchemaFormFactory","VeeValidatePlugin","setup","emptyModel","store","useStore","loading","ref","loadingForm","key","errors","thanks","type","schema","validation","model","useSchemaForm","api","registerForm","then","response","data","form","formParse","value","onSubmit","dispatch","charAt","toUpperCase","slice","credentials","finally","callback","user_id","object","event","method","$env","debug","ecommerce","console","log","window","dataLayer","push","ls","SecureLS","isCompression","forms","get","registration","set","catch","error","incomingErrors","_i","_Object$entries","Object","entries","length","_Object$entries$_i","_slicedToArray","field","messages","facebook","location","href","$ziggy","provider","google","close","commit","login","class","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_createElementVNode","createElementVNode","xlink:href","_hoisted_13","_hoisted_14","$setup","_openBlock","_createElementBlock","createElementBlock","_hoisted_1","_toDisplayString","_ctx","__","_normalizeClass","user_type","replaceAll","_createBlock","createBlock","_component_SchemaForm","schemaRowClasses","validation-schema","initial-errors","afterForm","is-loading","onClick","apply","arguments","email"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Reset.js","sources":["../../../src/components/auth/Reset.vue","../../../src/components/auth/Reset.vue?vue&type=template&id=7cbc8208&lang.js"],"sourcesContent":["<template>\n <div class=\"form auth-reset\">\n <div class=\"title\">{{ __('auth.reset.title') }}</div>\n <div v-show=\"!reseted\">\n <div v-if=\"$parent.tokenValid || presetedResetToken\">\n <div class=\"mb-3\" v-html=\"__('auth.reset.info', { email: $parent.resetEmail || presetedResetEmail })\"></div>\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.reset.form.submit') }}\n </button>\n </div>\n </div>\n </div>\n </template>\n </SchemaForm>\n <div class=\"mt-3\">\n <button class=\"button\" @click=\"cancel\">\n {{ __('auth.reset.cancel') }}\n </button>\n </div>\n </div>\n <div v-else>\n <p>{{ __('auth.reset.token-not-valid') }}</p>\n <div class=\"mt-3\">\n <button class=\"button\" @click=\"again\">\n {{ __('auth.reset.again') }}\n </button>\n </div>\n </div>\n </div>\n <div v-show=\"reseted\">\n <div>{{ message }}</div>\n <div class=\"mt-3\">\n <button class=\"button\" @click=\"close\">\n {{ __('auth.reset.close') }}\n </button>\n </div>\n </div>\n </div>\n</template>\n<script>\nimport { ref, markRaw, getCurrentInstance, inject, watch } 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(FormPassword);\nmarkRaw(FormText);\n\nconst SchemaForm = SchemaFormFactory([VeeValidatePlugin({})]);\n\nexport default {\n name: 'reset',\n props: {\n showPlaceholders: {\n type: Boolean,\n default: false\n }\n },\n components: {\n SchemaForm\n },\n setup(props) {\n const loading = ref(false);\n const store = useStore();\n const key = ref(0);\n const message = ref('');\n const reseted = ref(false);\n const instance = getCurrentInstance();\n const presetedResetToken = inject('presetedResetToken');\n const presetedResetEmail = inject('presetedResetEmail');\n\n watch(presetedResetToken, (value) => {\n if (value) {\n model.value.token = value;\n }\n });\n\n watch(presetedResetEmail, (value) => {\n if (value) {\n model.value.email = value;\n }\n });\n\n const schema = ref({\n password: {\n component: FormPassword,\n label: __('auth.login.form.password'),\n type: 'password',\n placeholder: props.showPlaceholders ? __('auth.login.form.password') : '',\n },\n password_confirmation: {\n component: FormText,\n label: __('auth.login.form.password_confirmation'),\n type: 'password',\n placeholder: props.showPlaceholders ? __('auth.login.form.password_confirmation') : '',\n }\n });\n\n const validation = yup.object().shape({\n password: yup.string().min(6, __('auth.validation.min')).required(__('auth.validation.required')),\n password_confirmation: yup.string().oneOf([yup.ref('password'), null], __('auth.validation.password_confirmation'))\n });\n\n const model = ref({\n password: '',\n password_confirmation: '',\n token: instance.parent.props.resetToken,\n email: instance.parent.props.resetEmail\n });\n\n useSchemaForm(model);\n\n const cancel = () => {\n store.commit('auth/modal', 'login');\n };\n\n const again = () => {\n store.commit('auth/modal', 'forget');\n };\n\n const onSubmit = () => {\n loading.value = true;\n\n store.dispatch('auth/passwordUpdate', {\n credentials: model.value,\n callback: (m, isError) => {\n message.value = m;\n },\n finally: () => {\n model.value = {};\n loading.value = false;\n reseted.value = true;\n key.value++;\n }\n });\n };\n\n const close = () => {\n store.commit('auth/modal', null);\n store.dispatch('auth/me');\n };\n\n return {\n loading,\n key,\n schema,\n validation,\n onSubmit,\n reseted,\n message,\n cancel,\n again,\n close,\n presetedResetToken,\n presetedResetEmail\n };\n }\n};\n</script>","<template>\n <div class=\"form auth-reset\">\n <div class=\"title\">{{ __('auth.reset.title') }}</div>\n <div v-show=\"!reseted\">\n <div v-if=\"$parent.tokenValid || presetedResetToken\">\n <div class=\"mb-3\" v-html=\"__('auth.reset.info', { email: $parent.resetEmail || presetedResetEmail })\"></div>\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.reset.form.submit') }}\n </button>\n </div>\n </div>\n </div>\n </template>\n </SchemaForm>\n <div class=\"mt-3\">\n <button class=\"button\" @click=\"cancel\">\n {{ __('auth.reset.cancel') }}\n </button>\n </div>\n </div>\n <div v-else>\n <p>{{ __('auth.reset.token-not-valid') }}</p>\n <div class=\"mt-3\">\n <button class=\"button\" @click=\"again\">\n {{ __('auth.reset.again') }}\n </button>\n </div>\n </div>\n </div>\n <div v-show=\"reseted\">\n <div>{{ message }}</div>\n <div class=\"mt-3\">\n <button class=\"button\" @click=\"close\">\n {{ __('auth.reset.close') }}\n </button>\n </div>\n </div>\n </div>\n</template>\n<script>\nimport { ref, markRaw, getCurrentInstance, inject, watch } 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(FormPassword);\nmarkRaw(FormText);\n\nconst SchemaForm = SchemaFormFactory([VeeValidatePlugin({})]);\n\nexport default {\n name: 'reset',\n props: {\n showPlaceholders: {\n type: Boolean,\n default: false\n }\n },\n components: {\n SchemaForm\n },\n setup(props) {\n const loading = ref(false);\n const store = useStore();\n const key = ref(0);\n const message = ref('');\n const reseted = ref(false);\n const instance = getCurrentInstance();\n const presetedResetToken = inject('presetedResetToken');\n const presetedResetEmail = inject('presetedResetEmail');\n\n watch(presetedResetToken, (value) => {\n if (value) {\n model.value.token = value;\n }\n });\n\n watch(presetedResetEmail, (value) => {\n if (value) {\n model.value.email = value;\n }\n });\n\n const schema = ref({\n password: {\n component: FormPassword,\n label: __('auth.login.form.password'),\n type: 'password',\n placeholder: props.showPlaceholders ? __('auth.login.form.password') : '',\n },\n password_confirmation: {\n component: FormText,\n label: __('auth.login.form.password_confirmation'),\n type: 'password',\n placeholder: props.showPlaceholders ? __('auth.login.form.password_confirmation') : '',\n }\n });\n\n const validation = yup.object().shape({\n password: yup.string().min(6, __('auth.validation.min')).required(__('auth.validation.required')),\n password_confirmation: yup.string().oneOf([yup.ref('password'), null], __('auth.validation.password_confirmation'))\n });\n\n const model = ref({\n password: '',\n password_confirmation: '',\n token: instance.parent.props.resetToken,\n email: instance.parent.props.resetEmail\n });\n\n useSchemaForm(model);\n\n const cancel = () => {\n store.commit('auth/modal', 'login');\n };\n\n const again = () => {\n store.commit('auth/modal', 'forget');\n };\n\n const onSubmit = () => {\n loading.value = true;\n\n store.dispatch('auth/passwordUpdate', {\n credentials: model.value,\n callback: (m, isError) => {\n message.value = m;\n },\n finally: () => {\n model.value = {};\n loading.value = false;\n reseted.value = true;\n key.value++;\n }\n });\n };\n\n const close = () => {\n store.commit('auth/modal', null);\n store.dispatch('auth/me');\n };\n\n return {\n loading,\n key,\n schema,\n validation,\n onSubmit,\n reseted,\n message,\n cancel,\n again,\n close,\n presetedResetToken,\n presetedResetEmail\n };\n }\n};\n</script>"],"names":["markRaw","FormPassword","FormText","SchemaForm","SchemaFormFactory","VeeValidatePlugin","name","props","showPlaceholders","type","Boolean","components","setup","loading","ref","store","useStore","key","message","reseted","instance","getCurrentInstance","presetedResetToken","inject","presetedResetEmail","watch","value","model","token","email","schema","password","component","label","__","placeholder","password_confirmation","validation","yup","object","shape","string","min","required","oneOf","parent","resetToken","resetEmail","useSchemaForm","onSubmit","dispatch","credentials","callback","m","isError","cancel","commit","again","close","_createElementBlock","_hoisted_1","_createElementVNode","_hoisted_2","_ctx","tokenValid","$setup","innerHTML","_createBlock","schemaRowClasses","afterForm","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","onClick","_hoisted_10","_hoisted_11"],"mappings":"ynBAqDAA,UAAQC,WACRD,UAAQE,WAER,IAAMC,EAAaC,oBAAkB,CAACC,UAAkB,QAEzC,CACXC,KAAM,QACNC,MAAO,CACHC,iBAAkB,CACdC,KAAMC,iBACG,IAGjBC,WAAY,CACRR,WAAAA,GAEJS,eAAML,OACIM,EAAUC,OAAI,GACdC,EAAQC,aACRC,EAAMH,MAAI,GACVI,EAAUJ,MAAI,IACdK,EAAUL,OAAI,GACdM,EAAWC,uBACXC,EAAqBC,SAAO,sBAC5BC,EAAqBD,SAAO,sBAElCE,QAAMH,GAAoB,SAACI,GACnBA,IACAC,EAAMD,MAAME,MAAQF,MAI5BD,QAAMD,GAAoB,SAACE,GACnBA,IACAC,EAAMD,MAAMG,MAAQH,UAItBI,EAAShB,MAAI,CACfiB,SAAU,CACNC,UAAW/B,UACXgC,MAAOC,GAAG,4BACVzB,KAAM,WACN0B,YAAa5B,EAAMC,iBAAmB0B,GAAG,4BAA8B,IAE3EE,sBAAuB,CACnBJ,UAAW9B,UACX+B,MAAOC,GAAG,yCACVzB,KAAM,WACN0B,YAAa5B,EAAMC,iBAAmB0B,GAAG,yCAA2C,MAItFG,EAAaC,EAAIC,SAASC,MAAM,CAClCT,SAAUO,EAAIG,SAASC,IAAI,EAAGR,GAAG,wBAAwBS,SAAST,GAAG,6BACrEE,sBAAuBE,EAAIG,SAASG,MAAM,CAACN,EAAIxB,IAAI,YAAa,MAAOoB,GAAG,4CAGxEP,EAAQb,MAAI,CACdiB,SAAU,GACVK,sBAAuB,GACvBR,MAAOR,EAASyB,OAAOtC,MAAMuC,WAC7BjB,MAAOT,EAASyB,OAAOtC,MAAMwC,aAGjCC,gBAAcrB,SAgCP,CACHd,QAAAA,EACAI,IAAAA,EACAa,OAAAA,EACAO,WAAAA,EACAY,SA3Ba,WACbpC,EAAQa,OAAQ,EAEhBX,EAAMmC,SAAS,sBAAuB,CAClCC,YAAaxB,EAAMD,MACnB0B,SAAU,SAACC,EAAGC,GACVpC,EAAQQ,MAAQ2B,WAEX,WACL1B,EAAMD,MAAQ,GACdb,EAAQa,OAAQ,EAChBP,EAAQO,OAAQ,EAChBT,EAAIS,YAgBZP,QAAAA,EACAD,QAAAA,EACAqC,OAtCW,WACXxC,EAAMyC,OAAO,aAAc,UAsC3BC,MAnCU,WACV1C,EAAMyC,OAAO,aAAc,WAmC3BE,MAfU,WACV3C,EAAMyC,OAAO,aAAc,MAC3BzC,EAAMmC,SAAS,YAcf5B,mBAAAA,EACAE,mBAAAA,cCjKG,4BACI,4CAMgB,kBACI,iCACI,mBAShB,2BAQA,iBASJ,mGAnCnBmC,2BAAAC,GACIC,2BAAAC,oBAAsBC,8CACtBF,iCACeE,UAAQC,YAAcC,oCAAjCN,8BACIE,kCAAW,OAAOK,UAAQH,8BAA+BA,UAAQhB,YAAckB,iDAC/EE,iBAAYC,iBAAiB,QAAStC,OAAQmC,6BAA4BA,aAAahD,IAAKgD,MAAMhB,SAAQgB,aAC3FI,qBACP,kBAAAR,2BAAAS,GACIT,2BAAAU,GACIV,2BAAAW,GACIX,uDAAc,+BAA6DI,aAA5CxD,KAAK,4BAC7BsD,gGAO3BF,2BAAAY,GACIZ,qCAAc,SAAUa,sCAAOT,2DACxBF,kDAIfJ,8BACIE,gDAAME,uCACNF,2BAAAc,GACId,qCAAc,SAAUa,sCAAOT,yDACxBF,mDA1BLE,8BA+BdJ,iCACIA,kDAAQI,cACRJ,2BAAAe,GACIf,qCAAc,SAAUa,sCAAOT,yDACxBF,+CAJFE"}
|
|
1
|
+
{"version":3,"file":"Reset.js","sources":["../../../src/components/auth/Reset.vue","../../../src/components/auth/Reset.vue?vue&type=template&id=7cbc8208&lang.js"],"sourcesContent":["<template>\n <div class=\"form auth-reset\">\n <div class=\"title\">{{ __('auth.reset.title') }}</div>\n <div v-show=\"!reseted\">\n <div v-if=\"$parent.tokenValid || presetedResetToken\">\n <div class=\"mb-3\" v-html=\"__('auth.reset.info', { email: $parent.resetEmail || presetedResetEmail })\"></div>\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.reset.form.submit') }}\n </button>\n </div>\n </div>\n </div>\n </template>\n </SchemaForm>\n <div class=\"mt-3\">\n <button class=\"button\" @click=\"cancel\">\n {{ __('auth.reset.cancel') }}\n </button>\n </div>\n </div>\n <div v-else>\n <p>{{ __('auth.reset.token-not-valid') }}</p>\n <div class=\"mt-3\">\n <button class=\"button\" @click=\"again\">\n {{ __('auth.reset.again') }}\n </button>\n </div>\n </div>\n </div>\n <div v-show=\"reseted\">\n <div>{{ message }}</div>\n <div class=\"mt-3\">\n <button class=\"button\" @click=\"close\">\n {{ __('auth.reset.close') }}\n </button>\n </div>\n </div>\n </div>\n</template>\n<script>\nimport { ref, markRaw, getCurrentInstance, inject, watch } 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(FormPassword);\nmarkRaw(FormText);\n\nconst SchemaForm = SchemaFormFactory([VeeValidatePlugin({})]);\n\nexport default {\n name: 'reset',\n props: {\n showPlaceholders: {\n type: Boolean,\n default: false\n }\n },\n components: {\n SchemaForm\n },\n setup(props) {\n const loading = ref(false);\n const store = useStore();\n const key = ref(0);\n const message = ref('');\n const reseted = ref(false);\n const instance = getCurrentInstance();\n const presetedResetToken = inject('presetedResetToken');\n const presetedResetEmail = inject('presetedResetEmail');\n\n watch(presetedResetToken, (value) => {\n if (value) {\n model.value.token = value;\n }\n });\n\n watch(presetedResetEmail, (value) => {\n if (value) {\n model.value.email = value;\n }\n });\n\n const schema = ref({\n password: {\n component: FormPassword,\n label: __('auth.login.form.password'),\n type: 'password',\n placeholder: props.showPlaceholders ? __('auth.login.form.password') : '',\n },\n password_confirmation: {\n component: FormText,\n label: __('auth.login.form.password_confirmation'),\n type: 'password',\n placeholder: props.showPlaceholders ? __('auth.login.form.password_confirmation') : '',\n }\n });\n\n const validation = yup.object().shape({\n password: yup.string().min(6, __('auth.validation.min')).required(__('auth.validation.required')),\n password_confirmation: yup.string().oneOf([yup.ref('password'), null], __('auth.validation.password_confirmation'))\n });\n\n const model = ref({\n password: '',\n password_confirmation: '',\n token: instance.parent.props.resetToken,\n email: instance.parent.props.resetEmail\n });\n\n useSchemaForm(model);\n\n const cancel = () => {\n store.commit('auth/modal', 'login');\n };\n\n const again = () => {\n store.commit('auth/modal', 'forget');\n };\n\n const onSubmit = () => {\n loading.value = true;\n\n store.dispatch('auth/passwordUpdate', {\n credentials: model.value,\n callback: (m, isError) => {\n message.value = m;\n },\n finally: () => {\n model.value = {};\n loading.value = false;\n reseted.value = true;\n key.value++;\n }\n });\n };\n\n const close = () => {\n store.commit('auth/modal', null);\n store.dispatch('auth/me');\n };\n\n return {\n loading,\n key,\n schema,\n validation,\n onSubmit,\n reseted,\n message,\n cancel,\n again,\n close,\n presetedResetToken,\n presetedResetEmail\n };\n }\n};\n</script>","<template>\n <div class=\"form auth-reset\">\n <div class=\"title\">{{ __('auth.reset.title') }}</div>\n <div v-show=\"!reseted\">\n <div v-if=\"$parent.tokenValid || presetedResetToken\">\n <div class=\"mb-3\" v-html=\"__('auth.reset.info', { email: $parent.resetEmail || presetedResetEmail })\"></div>\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.reset.form.submit') }}\n </button>\n </div>\n </div>\n </div>\n </template>\n </SchemaForm>\n <div class=\"mt-3\">\n <button class=\"button\" @click=\"cancel\">\n {{ __('auth.reset.cancel') }}\n </button>\n </div>\n </div>\n <div v-else>\n <p>{{ __('auth.reset.token-not-valid') }}</p>\n <div class=\"mt-3\">\n <button class=\"button\" @click=\"again\">\n {{ __('auth.reset.again') }}\n </button>\n </div>\n </div>\n </div>\n <div v-show=\"reseted\">\n <div>{{ message }}</div>\n <div class=\"mt-3\">\n <button class=\"button\" @click=\"close\">\n {{ __('auth.reset.close') }}\n </button>\n </div>\n </div>\n </div>\n</template>\n<script>\nimport { ref, markRaw, getCurrentInstance, inject, watch } 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(FormPassword);\nmarkRaw(FormText);\n\nconst SchemaForm = SchemaFormFactory([VeeValidatePlugin({})]);\n\nexport default {\n name: 'reset',\n props: {\n showPlaceholders: {\n type: Boolean,\n default: false\n }\n },\n components: {\n SchemaForm\n },\n setup(props) {\n const loading = ref(false);\n const store = useStore();\n const key = ref(0);\n const message = ref('');\n const reseted = ref(false);\n const instance = getCurrentInstance();\n const presetedResetToken = inject('presetedResetToken');\n const presetedResetEmail = inject('presetedResetEmail');\n\n watch(presetedResetToken, (value) => {\n if (value) {\n model.value.token = value;\n }\n });\n\n watch(presetedResetEmail, (value) => {\n if (value) {\n model.value.email = value;\n }\n });\n\n const schema = ref({\n password: {\n component: FormPassword,\n label: __('auth.login.form.password'),\n type: 'password',\n placeholder: props.showPlaceholders ? __('auth.login.form.password') : '',\n },\n password_confirmation: {\n component: FormText,\n label: __('auth.login.form.password_confirmation'),\n type: 'password',\n placeholder: props.showPlaceholders ? __('auth.login.form.password_confirmation') : '',\n }\n });\n\n const validation = yup.object().shape({\n password: yup.string().min(6, __('auth.validation.min')).required(__('auth.validation.required')),\n password_confirmation: yup.string().oneOf([yup.ref('password'), null], __('auth.validation.password_confirmation'))\n });\n\n const model = ref({\n password: '',\n password_confirmation: '',\n token: instance.parent.props.resetToken,\n email: instance.parent.props.resetEmail\n });\n\n useSchemaForm(model);\n\n const cancel = () => {\n store.commit('auth/modal', 'login');\n };\n\n const again = () => {\n store.commit('auth/modal', 'forget');\n };\n\n const onSubmit = () => {\n loading.value = true;\n\n store.dispatch('auth/passwordUpdate', {\n credentials: model.value,\n callback: (m, isError) => {\n message.value = m;\n },\n finally: () => {\n model.value = {};\n loading.value = false;\n reseted.value = true;\n key.value++;\n }\n });\n };\n\n const close = () => {\n store.commit('auth/modal', null);\n store.dispatch('auth/me');\n };\n\n return {\n loading,\n key,\n schema,\n validation,\n onSubmit,\n reseted,\n message,\n cancel,\n again,\n close,\n presetedResetToken,\n presetedResetEmail\n };\n }\n};\n</script>"],"names":["markRaw","FormPassword","FormText","SchemaForm","SchemaFormFactory","VeeValidatePlugin","script","name","props","showPlaceholders","type","Boolean","default","components","setup","loading","ref","store","useStore","key","message","reseted","instance","getCurrentInstance","presetedResetToken","inject","presetedResetEmail","watch","value","model","token","email","schema","password","component","label","__","placeholder","password_confirmation","validation","yup","object","shape","string","min","required","oneOf","parent","resetToken","resetEmail","useSchemaForm","onSubmit","dispatch","credentials","callback","m","isError","finally","cancel","commit","again","close","_hoisted_1","class","_hoisted_2","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_10","_hoisted_11","_openBlock","_createElementBlock","createElementBlock","_createElementVNode","_toDisplayString","_ctx","$parent","tokenValid","$setup","_hoisted_3","createElementVNode","innerHTML","_createBlock","createBlock","_component_SchemaForm","schemaRowClasses","validation-schema","afterForm","_normalizeClass","is-loading","onClick","apply","arguments","_hoisted_9"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("js-cookie"),o=require("vue"),t=require("vuex");function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var n=l(e),a={name:"user",props:{resetToken:{type:String,default:""},resetEmail:{type:String,default:""},tokenValid:{type:Boolean,default:!1},forgetType:{type:String,default:"email"},showPlaceholders:{type:Boolean,default:!1}},setup:function(e){var l=t.useStore(),a=o.computed((function(){return l.getters["auth/me"]})),r=o.computed((function(){return l.getters["auth/modal"]})),c=o.computed((function(){return Object.keys(a.value).length>0})),s=o.ref(!1),i=o.computed((function(){return l.getters["auth/account"]})),d=o.ref(""),u=o.ref("");o.provide("presetedResetToken",d),o.provide("presetedResetEmail",u);var m=function(){l.commit("auth/modal",null),l.dispatch("auth/me")};return l.dispatch("auth/me",{finally:function(){if(s.value=!0,c.value){if(a.value.is_social_registration_tracked){if(!a.value.is_login_tracked){var e={event:"login",user_id:a.value.id,method:a.value.social_provider?a.value.social_provider:"site"};$env.debug.ecommerce&&console.log(e),!$env.debug.ecommerce&&window.dataLayer&&(window.dataLayer.push({ecommerce:null}),window.dataLayer.push(e))}}else{var o={event:"sign_up",user_id:a.value.id,method:a.value.social_provider};$env.debug.ecommerce&&console.log(o),!$env.debug.ecommerce&&window.dataLayer&&(window.dataLayer.push({ecommerce:null}),window.dataLayer.push(o))}n.default.set("user_id",a.value.id)}}}),window.addEventListener("keyup",(function(e){r.value&&"Escape"===e.key&&m()})),e.resetToken&&l.commit("auth/modal","reset"),{mounted:s,user:a,logged:c,modal:r,open:function(){l.commit("auth/modal","login")},close:m,register:function(){l.commit("auth/modal","registration")},logout:function(){l.dispatch("auth/logout"),window.authUserLogoutCallback&&window.authUserLogoutCallback()},routes:i}}},r={key:0,class:"auth-user"},c={class:"modal-content"},s=[o.createElementVNode("svg",{class:"icon close"},[o.createElementVNode("use",{"xlink:href":"#close"})],-1)],i={class:"box"},d={class:"tabs"},u={href:"#register"},m={key:1,class:"auth-user is-logged"},p={class:"dropdown is-right is-hoverable"},g={class:"dropdown-trigger"},v=["href"],f=o.createElementVNode("i",{class:"fas fa-user"},null,-1),h=o.createElementVNode("span",{class:"icon is-small"},[o.createElementVNode("i",{class:"fas fa-angle-down","aria-hidden":"true"})],-1),k={class:"dropdown-menu",role:"menu"},y={class:"dropdown-content"},E=["href"],V={key:0,class:"icon"},N=["xlink:href"],w={key:1,class:"badge"},B={key:1,class:"dropdown-divider"},_=o.createElementVNode("hr",{class:"dropdown-divider"},null,-1),
|
|
1
|
+
"use strict";var e=require("js-cookie"),o=require("vue"),t=require("vuex");function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var n=l(e),a={name:"user",props:{resetToken:{type:String,default:""},resetEmail:{type:String,default:""},tokenValid:{type:Boolean,default:!1},forgetType:{type:String,default:"email"},showPlaceholders:{type:Boolean,default:!1}},setup:function(e){var l=t.useStore(),a=o.computed((function(){return l.getters["auth/me"]})),r=o.computed((function(){return l.getters["auth/modal"]})),c=o.computed((function(){return Object.keys(a.value).length>0})),s=o.ref(!1),i=o.computed((function(){return l.getters["auth/account"]})),d=o.ref(""),u=o.ref("");o.provide("presetedResetToken",d),o.provide("presetedResetEmail",u);var m=function(){l.commit("auth/modal",null),l.dispatch("auth/me")};return l.dispatch("auth/me",{finally:function(){if(s.value=!0,c.value){if(a.value.is_social_registration_tracked){if(!a.value.is_login_tracked){var e={event:"login",user_id:a.value.id,method:a.value.social_provider?a.value.social_provider:"site"};$env.debug.ecommerce&&console.log(e),!$env.debug.ecommerce&&window.dataLayer&&(window.dataLayer.push({ecommerce:null}),window.dataLayer.push(e))}}else{var o={event:"sign_up",user_id:a.value.id,method:a.value.social_provider};$env.debug.ecommerce&&console.log(o),!$env.debug.ecommerce&&window.dataLayer&&(window.dataLayer.push({ecommerce:null}),window.dataLayer.push(o))}n.default.set("user_id",a.value.id)}}}),window.addEventListener("keyup",(function(e){r.value&&"Escape"===e.key&&m()})),e.resetToken&&l.commit("auth/modal","reset"),{mounted:s,user:a,logged:c,modal:r,open:function(){l.commit("auth/modal","login")},close:m,register:function(){l.commit("auth/modal","registration")},logout:function(){l.dispatch("auth/logout"),window.authUserLogoutCallback&&window.authUserLogoutCallback()},routes:i}}},r={key:0,class:"auth-user"},c={class:"modal-content"},s=[o.createElementVNode("svg",{class:"icon close"},[o.createElementVNode("use",{"xlink:href":"#close"})],-1)],i={class:"box"},d={class:"tabs"},u={href:"#register"},m={key:1,class:"auth-user is-logged"},p={class:"dropdown is-right is-hoverable"},g={class:"dropdown-trigger"},v=["href"],f=o.createElementVNode("i",{class:"fas fa-user"},null,-1),h=o.createElementVNode("span",{class:"icon is-small"},[o.createElementVNode("i",{class:"fas fa-angle-down","aria-hidden":"true"})],-1),k={class:"dropdown-menu",role:"menu"},y={class:"dropdown-content"},E=["href"],V={key:0,class:"icon"},N=["xlink:href"],w={key:1,class:"badge"},B={key:1,class:"dropdown-divider"},_=o.createElementVNode("hr",{class:"dropdown-divider"},null,-1),C=o.createElementVNode("svg",{class:"icon"},[o.createElementVNode("use",{"xlink:href":"#icon-logout"})],-1);a.render=function(e,t,l,n,a,b){var S=o.resolveComponent("login"),x=o.resolveComponent("registration"),L=o.resolveComponent("reset");return n.mounted&&!n.logged?(o.openBlock(),o.createElementBlock("div",r,[o.renderSlot(e.$slots,"login",{open:n.open,label:e.__("auth.login.login")},(function(){return[o.createElementVNode("a",{href:"#login",class:"button",onClick:t[0]||(t[0]=function(){return n.open&&n.open.apply(n,arguments)})},o.toDisplayString(e.__("auth.login.login")),1)]})),n.modal?(o.openBlock(),o.createElementBlock("div",{key:0,class:o.normalizeClass(["modal",{"is-active":n.modal}])},[o.createElementVNode("div",{class:"modal-background",onClick:t[1]||(t[1]=function(){return n.close&&n.close.apply(n,arguments)})}),o.createElementVNode("div",c,[o.createElementVNode("button",{class:"modal-close is-large",onClick:t[2]||(t[2]=function(){return n.close&&n.close.apply(n,arguments)})},s),o.createElementVNode("div",i,[o.renderSlot(e.$slots,"hero"),o.createElementVNode("div",d,[o.createElementVNode("ul",null,[o.createElementVNode("li",{class:o.normalizeClass({"is-active":"login"==n.modal||"forget"==n.modal})},[o.createElementVNode("a",{href:"#login",onClick:t[3]||(t[3]=function(){return n.open&&n.open.apply(n,arguments)})},o.toDisplayString(e.__("auth.login.login")),1)],2),o.createElementVNode("li",{class:o.normalizeClass({"is-active":"registration"==n.modal}),onClick:t[4]||(t[4]=function(){return n.register&&n.register.apply(n,arguments)})},[o.createElementVNode("a",u,o.toDisplayString(e.__("auth.login.signup")),1)],2)])]),(o.openBlock(),o.createBlock(o.KeepAlive,null,["login"==n.modal||"forget"==n.modal?(o.openBlock(),o.createBlock(S,{key:0,"forget-type":l.forgetType,"show-placeholders":l.showPlaceholders},null,8,["forget-type","show-placeholders"])):o.createCommentVNode("v-if",!0)],1024)),(o.openBlock(),o.createBlock(o.KeepAlive,null,["registration"==n.modal?(o.openBlock(),o.createBlock(x,{key:0})):o.createCommentVNode("v-if",!0)],1024)),o.withDirectives(o.createVNode(L,{"show-placeholders":l.showPlaceholders},null,8,["show-placeholders"]),[[o.vShow,"reset"==n.modal]])])])],2)):o.createCommentVNode("v-if",!0)])):n.mounted?(o.openBlock(),o.createElementBlock("div",m,[o.createElementVNode("div",p,[o.createElementVNode("div",g,[o.createElementVNode("a",{class:"button",href:n.routes[0].path},[o.renderSlot(e.$slots,"user",{user:n.user.name?n.user.name:n.user.email},(function(){return[o.createElementVNode("span",null,[f,o.createTextVNode(" "+o.toDisplayString(n.user.name?n.user.name:n.user.email),1)]),h]}))],8,v)]),o.createElementVNode("div",k,[o.createElementVNode("div",y,[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(n.routes,(function(e,t){return o.openBlock(),o.createElementBlock("div",{key:t},[e.text?(o.openBlock(),o.createElementBlock("a",{key:0,href:e.path,class:"dropdown-item"},[e.icon?(o.openBlock(),o.createElementBlock("svg",V,[o.createElementVNode("use",{"xlink:href":"#"+e.icon},null,8,N)])):o.createCommentVNode("v-if",!0),o.createElementVNode("span",null,o.toDisplayString(e.text),1),e.badge?(o.openBlock(),o.createElementBlock("span",w,o.toDisplayString(e.badge),1)):o.createCommentVNode("v-if",!0)],8,E)):(o.openBlock(),o.createElementBlock("hr",B))])})),128)),_,o.createElementVNode("a",{class:"dropdown-item",onClick:t[5]||(t[5]=function(){return n.logout&&n.logout.apply(n,arguments)})},[C,o.createElementVNode("span",null,o.toDisplayString(e.__("auth.user.menu.logout")),1)])])])])])):o.createCommentVNode("v-if",!0)},module.exports=a;
|
|
2
2
|
//# sourceMappingURL=User.js.map
|