Server IP : 80.87.202.40 / Your IP : 216.73.216.169 Web Server : Apache System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64 User : bitrix ( 600) PHP Version : 8.2.27 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/bitrix/ext_www/cvetdv.ru/bitrix/js/sale/checkout/model/dist/ |
Upload File : |
{"version":3,"file":"model.bundle.js","sources":["../src/order.js","../src/check.js","../src/basket.js","../src/property.js","../src/payment.js","../src/pay-system.js","../src/application.js","../src/consent.js","../src/property-variant.js"],"sourcesContent":["import {VuexBuilderModel} from 'ui.vue.vuex';\nimport {Type} from 'main.core';\n\nexport class Order extends VuexBuilderModel\n{\n getName()\n {\n return 'order';\n }\n\n getState()\n {\n return {\n order: Order.getBaseItem(),\n errors: []\n }\n }\n\n static getBaseItem()\n {\n return {\n id: 0,\n payed: 'N',\n accountNumber: null,\n hash: null,\n };\n }\n\n validate(fields)\n {\n const result = {};\n\n if (Type.isObject(fields.order))\n {\n result.order = this.validateOrder(fields.order);\n }\n\n return result;\n }\n\n validateOrder(fields)\n {\n const result = {};\n\n if (Type.isNumber(fields.id) || Type.isString(fields.id))\n {\n result.id = parseInt(fields.id);\n }\n\n if (Type.isNumber(fields.accountNumber) || Type.isString(fields.accountNumber))\n {\n result.accountNumber = fields.accountNumber.toString();\n }\n\n if (Type.isString(fields.hash))\n {\n result.hash = fields.hash.toString()\n }\n \n if (Type.isString(fields.payed))\n {\n result.payed = fields.payed.toString() === 'Y' ? 'Y':'N'\n }\n\n return result;\n }\n\n getActions()\n {\n return {\n set: ({ commit }, payload) =>\n {\n payload = this.validate({order: payload});\n commit('set', payload);\n }\n }\n }\n\n getGetters()\n {\n return {\n getOrder: state =>\n {\n return state.order;\n }\n }\n }\n\n getMutations()\n {\n return {\n set: (state, payload) =>\n {\n let item = Order.getBaseItem();\n state.order = Object.assign(item, payload.order);\n }\n }\n }\n}","import {Vue} from 'ui.vue';\r\nimport {VuexBuilderModel} from 'ui.vue.vuex';\r\nimport {Type} from 'main.core';\r\nimport {Loader as LoaderConst, Check as Const} from 'sale.checkout.const';\r\n\r\nexport class Check extends VuexBuilderModel\r\n{\r\n\tgetName()\r\n\t{\r\n\t\treturn 'check';\r\n\t}\r\n\r\n\tgetState()\r\n\t{\r\n\t\treturn {\r\n\t\t\tcheck: [],\r\n\t\t\tstatus: LoaderConst.status.none,\r\n\t\t}\r\n\t}\r\n\r\n\tstatic getBaseItem()\r\n\t{\r\n\t\treturn {\r\n\t\t\tid: 0,\r\n\t\t\tpaymentId: 0,\r\n\t\t\tdateFormatted: null,\r\n\t\t\tstatus: Const.status.new,\r\n\t\t\tlink: null\r\n\t\t};\r\n\t}\r\n\r\n\tvalidate(fields)\r\n\t{\r\n\t\tconst result = {};\r\n\r\n\t\tif (Type.isObject(fields.check))\r\n\t\t{\r\n\t\t\tresult.check = this.validateCheck(fields.check);\r\n\t\t}\r\n\r\n\t\tif (Type.isString(fields.status))\r\n\t\t{\r\n\t\t\tresult.status = fields.status.toString()\r\n\t\t}\r\n\r\n\t\treturn result;\r\n\t}\r\n\r\n\tvalidateCheck(fields)\r\n\t{\r\n\t\tconst result = {};\r\n\r\n\t\tif (Type.isNumber(fields.id) || Type.isString(fields.id))\r\n\t\t{\r\n\t\t\tresult.id = parseInt(fields.id);\r\n\t\t}\r\n\r\n\t\tif (Type.isNumber(fields.paymentId) || Type.isString(fields.paymentId))\r\n\t\t{\r\n\t\t\tresult.paymentId = parseInt(fields.paymentId);\r\n\t\t}\r\n\r\n\t\tif (Type.isString(fields.dateFormatted))\r\n\t\t{\r\n\t\t\tresult.dateFormatted = fields.dateFormatted.toString();\r\n\t\t}\r\n\r\n\t\tif (Type.isString(fields.link))\r\n\t\t{\r\n\t\t\tresult.link = fields.link.toString();\r\n\t\t}\r\n\r\n\t\tif (Type.isString(fields.status))\r\n\t\t{\r\n\t\t\tlet allowed = Object.values(Const.status);\r\n\r\n\t\t\tlet status = fields.status.toString();\r\n\r\n\t\t\tresult.status = allowed.includes(status) ? status : Const.status.new;\r\n\t\t}\r\n\r\n\t\treturn result;\r\n\t}\r\n\r\n\tgetActions()\r\n\t{\r\n\t\treturn {\r\n\t\t\tsetStatus: ({ commit }, payload) =>\r\n\t\t\t{\r\n\t\t\t\tpayload = this.validate(payload);\r\n\r\n\t\t\t\tconst status = Object.values(LoaderConst.status);\r\n\r\n\t\t\t\tpayload.status = status.includes(payload.status) ? payload.status : LoaderConst.status.none;\r\n\r\n\t\t\t\tcommit('setStatus', payload);\r\n\t\t\t},\r\n\t\t\taddItem: ({ commit }, payload) =>\r\n\t\t\t{\r\n\t\t\t\tpayload.fields = this.validateCheck(payload.fields);\r\n\t\t\t\tcommit('addItem', payload);\r\n\t\t\t},\r\n\t\t\tchangeItem: ({ commit }, payload) =>\r\n\t\t\t{\r\n\t\t\t\tpayload.fields = this.validateCheck(payload.fields);\r\n\t\t\t\tcommit('updateItem', payload);\r\n\t\t\t},\r\n\t\t\tremoveItem({ commit }, payload)\r\n\t\t\t{\r\n\t\t\t\tcommit('deleteItem', payload);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tgetGetters()\r\n\t{\r\n\t\treturn {\r\n\t\t\tgetStatus: state =>\r\n\t\t\t{\r\n\t\t\t\treturn state.status;\r\n\t\t\t},\r\n\t\t\tgetCheck: state =>\r\n\t\t\t{\r\n\t\t\t\treturn state.check;\r\n\t\t\t},\r\n\t\t}\r\n\t}\r\n\r\n\tgetMutations()\r\n\t{\r\n\t\treturn {\r\n\t\t\tsetStatus: (state, payload) =>\r\n\t\t\t{\r\n\t\t\t\tlet item = { status: LoaderConst.status.none };\r\n\r\n\t\t\t\titem = Object.assign(item, payload);\r\n\t\t\t\tstate.status = item.status;\r\n\t\t\t},\r\n\t\t\taddItem: (state, payload) =>\r\n\t\t\t{\r\n\t\t\t\tlet item = Check.getBaseItem();\r\n\r\n\t\t\t\titem = Object.assign(item, payload.fields);\r\n\r\n\t\t\t\tstate.check.push(item);\r\n\t\t\t},\r\n\t\t\tupdateItem: (state, payload) =>\r\n\t\t\t{\r\n\t\t\t\tif (typeof state.check[payload.index] === 'undefined')\r\n\t\t\t\t{\r\n\t\t\t\t\tVue.set(state.check, payload.index, Check.getBaseItem());\r\n\t\t\t\t}\r\n\r\n\t\t\t\tstate.check[payload.index] = Object.assign(\r\n\t\t\t\t\tstate.check[payload.index],\r\n\t\t\t\t\tpayload.fields\r\n\t\t\t\t);\r\n\t\t\t},\r\n\t\t\tdeleteItem: (state, payload) =>\r\n\t\t\t{\r\n\t\t\t\tstate.check.splice(payload.index, 1);\r\n\t\t\t},\r\n\t\t\tclearCheck: (state) =>\r\n\t\t\t{\r\n\t\t\t\tstate.check = [];\r\n\t\t\t},\r\n\t\t}\r\n\t}\r\n}","import { Vue } from 'ui.vue';\nimport { VuexBuilderModel } from 'ui.vue.vuex';\nimport { Type } from 'main.core';\nimport { Loader as LoaderConst, Product as ProductConst } from 'sale.checkout.const';\n\nexport class Basket extends VuexBuilderModel\n{\n getName()\n {\n return 'basket';\n }\n\n getState()\n {\n return {\n basket: [],\n status: LoaderConst.status.none,\n needRefresh: 'N',\n currency: null,\n discount: Basket.getDiscountItem(),\n total: Basket.getTotalItem(),\n errors: []\n }\n }\n\n getBaseItem()\n {\n return {\n id: 0,\n name: null,\n quantity: 0,\n measureText: null,\n currency: null,\n module: null,\n productProviderClass: null,\n sum: 0.0, // finalSum, basket sum with discounts and taxes => basketItem->getPrice() * basketItem->getQuantity()\n price: 0.0, // finalPrice, basket price with discounts and taxes => basketItem->getPrice()\n baseSum: 0.0, // baseSum, basket sum without discounts and taxes => basketItem->getBasePrice() * basketItem->getQuantity()\n basePrice: 0.0, // basePrice, basket price without discounts and taxes => basketItem->getBasePrice()\n discount: Basket.getDiscountItem(),\n props: [],\n sku: Basket.getSkuItem(),\n product: this.getProductItem(),\n deleted: \"N\",\n status: LoaderConst.status.none,\n };\n }\n \n static getSkuItem()\n {\n return {\n parentProductId: 0,\n tree: {}\n }\n }\n\n static getPropsItem()\n {\n return {\n code: \"\",\n id: 0,\n value: \"\",\n sort: 0,\n name: \"\"\n };\n }\n\n static getDiscountItem()\n {\n return {\n sum: 0, // => (basketItem->getBasePrice() * basketItem->getQuantity()) - (basketItem->getPrice() * basketItem->getQuantity())\n price: 0 // => basketItem->getDiscountPrice();\n };\n }\n\n static getDiscountTotalItem()\n {\n return {\n sum: 0, // => order->getDiscountPrice() + (basket->getBasePrice() - basket->getPrice())\n };\n }\n\n static getTotalItem()\n {\n return {\n price: 0.0, //finalPrice, basket price with discounts and taxes => basket->getPrice()\n basePrice: 0.0, //basePrice, basket price without discounts => basket->getBasePrice();\n };\n }\n\n getProductItem()\n {\n return {\n id: 0,\n picture : this.getVariable('product.noImage', null),\n detailPageUrl : \"\",\n availableQuantity: 0,\n ratio: 0,\n\t\t\ttype: ProductConst.type.product,\n\t\t\tcheckMaxQuantity: 'N',\n };\n }\n \n static isFloat(value)\n {\n return parseInt(value) !== parseFloat(value);\n }\n \n validate(fields)\n {\n const result = {};\n\n if (Type.isObject(fields.basket))\n {\n result.basket = this.validateBasket(fields.basket);\n }\n\n if (Type.isString(fields.status))\n {\n result.status = fields.status.toString()\n }\n \n if (Type.isString(fields.needRefresh))\n {\n result.needRefresh = fields.needRefresh.toString() === 'Y' ? 'Y':'N'\n }\n\n if (Type.isString(fields.currency))\n {\n result.currency = fields.currency.toString();\n }\n\n if (Type.isObject(fields.discount))\n {\n result.discount = this.validateTotalDiscount(fields.discount);\n }\n\n if (Type.isObject(fields.total))\n {\n result.total = this.validateTotal(fields.total);\n }\n\n return result;\n }\n\n validateBasket(fields)\n {\n const result = {};\n\n if (Type.isString(fields.status))\n {\n const allowed = Object.values(LoaderConst.status);\n\n let status = fields.status.toString();\n\n result.status = allowed.includes(status) ? status : LoaderConst.status.none;\n }\n\n if (Type.isString(fields.deleted))\n {\n result.deleted = fields.deleted.toString() === 'Y' ? 'Y':'N';\n }\n\n if (Type.isNumber(fields.id) || Type.isString(fields.id))\n {\n result.id = parseInt(fields.id);\n }\n\n if (Type.isString(fields.name))\n {\n result.name = fields.name.toString();\n }\n\n if (Type.isNumber(fields.quantity) || Type.isString(fields.quantity))\n {\n result.quantity = parseFloat(fields.quantity);\n }\n\n if (Type.isString(fields.measureText))\n {\n result.measureText = fields.measureText.toString();\n }\n\n if (Type.isNumber(fields.sum) || Type.isString(fields.sum))\n {\n result.sum = parseFloat(fields.sum);\n }\n\n if (Type.isNumber(fields.price) || Type.isString(fields.price))\n {\n result.price = parseFloat(fields.price);\n }\n\n if (Type.isNumber(fields.baseSum) || Type.isString(fields.baseSum))\n {\n result.baseSum = parseFloat(fields.baseSum);\n }\n\n if (Type.isNumber(fields.basePrice) || Type.isString(fields.basePrice))\n {\n result.basePrice = parseFloat(fields.basePrice);\n }\n\n if (Type.isString(fields.currency))\n {\n result.currency = fields.currency.toString();\n }\n\n if (Type.isString(fields.module))\n {\n result.module = fields.module.toString();\n }\n\n if (Type.isString(fields.productProviderClass))\n {\n result.productProviderClass = fields.productProviderClass.toString();\n }\n\n if (Type.isObject(fields.product))\n {\n result.product = this.validateProduct(fields.product);\n }\n \n if (Type.isObject(fields.props))\n {\n result.props = [];\n fields.props.forEach((item)=>{\n let fields = this.validateProps(item);\n result.props.push(fields);\n })\n }\n \n if (Type.isObject(fields.sku))\n {\n result.sku = this.validateSku(fields.sku);\n }\n\n if (Type.isObject(fields.discount))\n {\n result.discount = this.validateDiscount(fields.discount);\n }\n\n return result;\n }\n \n validateSku(fields)\n {\n const result = {};\n \n if (Type.isObject(fields.tree))\n {\n result.tree = fields.tree;\n }\n \n if (Type.isNumber(fields.parentProductId) || Type.isString(fields.parentProductId))\n {\n result.parentProductId = parseInt(fields.parentProductId);\n }\n \n return result;\n }\n\n validateDiscount(fields)\n {\n const result = {};\n\n if (Type.isNumber(fields.sum) || Type.isString(fields.sum))\n {\n result.sum = parseFloat(fields.sum);\n }\n\n if (Type.isNumber(fields.price) || Type.isString(fields.price))\n {\n result.price = parseFloat(fields.price);\n }\n\n return result;\n }\n\n validateTotalDiscount(fields)\n {\n const result = {};\n\n if (Type.isNumber(fields.sum) || Type.isString(fields.sum))\n {\n result.sum = parseFloat(fields.sum);\n }\n\n return result;\n }\n\n validateTotal(fields)\n {\n const result = {};\n\n if (Type.isNumber(fields.price) || Type.isString(fields.price))\n {\n result.price = parseFloat(fields.price);\n }\n\n if (Type.isNumber(fields.basePrice) || Type.isString(fields.basePrice))\n {\n result.basePrice = parseFloat(fields.basePrice);\n }\n\n return result;\n }\n\n validateProduct(fields)\n {\n const result = {};\n \n try\n {\n for (let field in fields)\n {\n if (!fields.hasOwnProperty(field))\n {\n continue;\n }\n\n if (field === 'id')\n {\n if (Type.isNumber(fields.id) || Type.isString(fields.id))\n {\n result[field] = fields.id;\n }\n }\n else if (field === 'picture')\n {\n if (Type.isString(fields.picture) && fields.picture.length > 0)\n {\n result[field] = fields.picture.toString();\n }\n }\n else if (field === 'detailPageUrl')\n {\n if (Type.isString(fields.detailPageUrl))\n {\n result[field] = fields.detailPageUrl.toString();\n }\n }\n else if (field === 'availableQuantity')\n {\n if (Type.isNumber(fields.availableQuantity) || Type.isString(fields.availableQuantity))\n {\n result.availableQuantity = parseFloat(fields.availableQuantity)\n }\n }\n else if (field === 'ratio')\n {\n if (Type.isNumber(fields.ratio) || Type.isString(fields.ratio))\n {\n result.ratio = parseFloat(fields.ratio)\n }\n }\n\t\t\t\telse if (field === 'type')\n\t\t\t\t{\n\t\t\t\t\tif (Type.isString(fields.type))\n\t\t\t\t\t{\n\t\t\t\t\t\tconst productTypes = Object.values(ProductConst.type);\n\t\t\t\t\t\tconst type = fields.type.toString();\n\n\t\t\t\t\t\tresult.type = productTypes.includes(type) ? type : ProductConst.type.product;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse if (field === 'checkMaxQuantity')\n\t\t\t\t{\n\t\t\t\t\tif (Type.isString(fields.checkMaxQuantity))\n\t\t\t\t\t{\n\t\t\t\t\t\tresult.checkMaxQuantity = fields.checkMaxQuantity.toString() === 'Y' ? 'Y' : 'N'\n\t\t\t\t\t}\n\t\t\t\t}\n else\n {\n result[field] = fields[field];\n }\n }\n }\n catch (e) {}\n\n return result;\n }\n\n validateProps(fields)\n {\n const result = {};\n\n if (Type.isNumber(fields.id) || Type.isString(fields.id))\n {\n result.id = parseInt(fields.id);\n }\n\n if (Type.isString(fields.name))\n {\n result.name = fields.name.toString();\n }\n\n if (Type.isString(fields.code))\n {\n result.code = fields.code.toString();\n }\n\n if (Type.isString(fields.value))\n {\n result.value = fields.value.toString();\n }\n\n if (Type.isNumber(fields.sort) || Type.isString(fields.sort))\n {\n result.sort = parseInt(fields.sort);\n }\n \n return result;\n }\n \n getActions()\n {\n return {\n setTradingPlatformId: ({ commit }, payload) =>\n {\n payload = this.validate(payload);\n commit('setTradingPlatformId', payload);\n },\n setStatus: ({ commit }, payload) =>\n {\n payload = this.validate(payload);\n\n const allowed = Object.values(LoaderConst.status);\n\n payload.status = allowed.includes(payload.status) ? payload.status : LoaderConst.status.none;\n commit('setStatus', payload);\n },\n setNeedRefresh: ({ commit }, payload) =>\n {\n payload = this.validate(payload);\n commit('setNeedRefresh', payload);\n },\n addItem: ({ commit }, payload) =>\n {\n payload.fields = this.validateBasket(payload.fields);\n commit('addItem', payload);\n },\n changeItem: ({ commit }, payload) =>\n {\n payload.fields = this.validateBasket(payload.fields);\n commit('updateItem', payload);\n },\n removeItem({ commit }, payload)\n {\n commit('deleteItem', payload);\n },\n setFUserId: ({ commit }, payload) =>\n {\n payload = this.validate(payload);\n commit('setFUserId', payload);\n },\n setCurrency: ({ commit }, payload) =>\n {\n payload = this.validate(payload);\n commit('setCurrency', payload);\n },\n setDiscount: ({ commit }, payload) =>\n {\n payload = this.validateDiscount(payload);\n commit('setDiscount', payload);\n },\n setTotal: ({ commit }, payload) =>\n {\n payload = this.validateTotal(payload);\n commit('setTotal', payload);\n }\n }\n }\n\n getGetters()\n {\n return {\n\n getStatus: state =>\n {\n return state.status;\n },\n getNeedRefresh: state =>\n {\n return state.needRefresh;\n },\n get: state => id =>\n {\n if (!state.basket[id] || state.basket[id].length <= 0)\n {\n return [];\n }\n\n return state.basket[id];\n },\n getBasket: state =>\n {\n return state.basket;\n },\n getBaseItem: state =>\n {\n return this.getBaseItem();\n },\n getCurrency: state =>\n {\n return state.currency;\n },\n getDiscount: state =>\n {\n return state.discount;\n },\n getTotal: state =>\n {\n return state.total;\n },\n getErrors: state =>\n {\n return state.errors;\n }\n }\n }\n\n getMutations()\n {\n return {\n setStatus: (state, payload) =>\n {\n let item = { status: LoaderConst.status.none };\n\n item = Object.assign(item, payload);\n state.status = item.status;\n },\n setNeedRefresh: (state, payload) =>\n {\n let item = { needRefresh: 'N' };\n \n item = Object.assign(item, payload);\n state.needRefresh = item.needRefresh;\n },\n setCurrency: (state, payload) =>\n {\n let item = { currency: null };\n\n item = Object.assign(item, payload);\n state.currency = item.currency;\n },\n setDiscount: (state, payload) =>\n {\n let item = Basket.getDiscountTotalItem();\n item = Object.assign(item, payload);\n state.discount = Object.assign(item, payload);\n },\n setTotal: (state, payload) =>\n {\n let item = Basket.getTotalItem();\n item = Object.assign(item, payload);\n state.total = Object.assign(item, payload);\n },\n addItem: (state, payload) =>\n {\n let item = this.getBaseItem();\n\n item = Object.assign(item, payload.fields);\n \n if (Type.isObject(payload.fields.product))\n {\n item.product = Object.assign(\n item.product,\n payload.fields.product\n )\n }\n \n if (Type.isObject(item.props))\n {\n item.props.forEach((fields, index)=>{\n let prop = Basket.getPropsItem();\n prop = Object.assign(prop, fields);\n\n item.props[index] = prop;\n })\n }\n \n if (Type.isObject(payload.fields.sku))\n {\n let item = Basket.getSkuItem();\n item = Object.assign(item, payload.fields.sku);\n payload.fields.sku = item;\n }\n\n state.basket.push(item);\n state.basket.forEach((item, index) => {\n item.sort = index + 1;\n });\n },\n updateItem: (state, payload) =>\n {\n if (typeof state.basket[payload.index] === 'undefined')\n {\n Vue.set(state.basket, payload.index, this.getBaseItem());\n }\n \n if (Type.isObject(payload.fields.product))\n {\n payload.fields.product = Object.assign(\n state.basket[payload.index].product,\n payload.fields.product\n )\n }\n \n if (Type.isObject(payload.fields.props))\n {\n payload.fields.props.forEach((fields, index)=>{\n let item = Basket.getPropsItem();\n item = Object.assign(item, fields);\n\n payload.fields.props[index] = item;\n })\n }\n \n if (Type.isObject(payload.fields.sku))\n {\n let item = Basket.getSkuItem();\n item = Object.assign(item, payload.fields.sku);\n payload.fields.sku = item;\n }\n\n state.basket[payload.index] = Object.assign(\n state.basket[payload.index],\n payload.fields\n );\n },\n deleteItem: (state, payload) =>\n {\n // delete state.basket[payload.index];\n state.basket.splice(payload.index, 1);\n },\n clearBasket: (state) =>\n {\n state.basket = [];\n },\n clearDiscount: (state) =>\n {\n state.discount = Basket.getDiscountItem();\n },\n clearTotal: (state) =>\n {\n state.total = Basket.getTotalItem();\n },\n setErrors: (state, payload) =>\n {\n state.errors = payload;\n },\n clearErrors: (state) =>\n {\n state.errors = [];\n }\n }\n }\n}","import { Vue } from 'ui.vue';\nimport { VuexBuilderModel } from 'ui.vue.vuex';\nimport { Type } from 'main.core';\nimport { Property as Const } from 'sale.checkout.const';\n\nexport class Property extends VuexBuilderModel\n{\n getName()\n {\n return 'property';\n }\n\n getState()\n {\n return {\n property: [],\n errors: []\n }\n }\n\n static getBaseItem()\n {\n return {\n id: 0,\n name: \"\",\n type: Const.type.undefined,\n value: \"\",\n validated: Const.validate.unvalidated,\n\t\t\trequired: 'N',\n\t\t\tmultiple: 'N',\n };\n }\n\n validate(fields)\n {\n const result = {};\n\n if (Type.isNumber(fields.id) || Type.isString(fields.id))\n {\n result.id = parseInt(fields.id);\n }\n\n if (Type.isString(fields.name))\n {\n result.name = fields.name.toString();\n }\n\n if (Type.isString(fields.type))\n {\n let allowed = Object.values(Const.type);\n\n let type = fields.type.toString();\n\n result.type = allowed.includes(type) ? type : Const.type.undefined;\n }\n\n if (Type.isString(fields.value))\n {\n result.value = fields.value.toString();\n }\n\n if (Type.isString(fields.validated))\n {\n result.validated = fields.validated.toString();\n }\n\n if (Type.isNumber(fields.personTypeId) || Type.isString(fields.personTypeId))\n {\n result.personTypeId = parseInt(fields.personTypeId);\n }\n\n\t\tif (Type.isString(fields.required))\n\t\t{\n\t\t\tconst requiredValue = fields.required.toString();\n\t\t\tresult.required = requiredValue === 'Y' ? 'Y' : 'N';\n\t\t}\n\n\t\tif (Type.isString(fields.multiple))\n\t\t{\n\t\t\tconst multipleValue = fields.multiple.toString();\n\t\t\tresult.multiple = multipleValue === 'Y' ? 'Y' : 'N';\n\t\t}\n\n return result;\n }\n\n getActions()\n {\n return {\n addItem: ({ commit }, payload) =>\n {\n payload.fields = this.validate(payload.fields);\n\n commit('addItem', payload);\n },\n changeItem: ({ commit }, payload) =>\n {\n payload.fields = this.validate(payload.fields);\n\n commit('updateItem', payload);\n },\n removeItem({ commit }, payload)\n {\n commit('deleteItem', payload);\n }\n }\n }\n\n getGetters()\n {\n return {\n get: state => id =>\n {\n if (!state.property[id] || state.property[id].length <= 0)\n {\n return [];\n }\n\n return state.property[id];\n },\n getProperty: state =>\n {\n return state.property;\n },\n getBaseItem: state =>\n {\n return Property.getBaseItem();\n },\n getErrors: state =>\n {\n return state.errors;\n }\n }\n }\n\n getMutations()\n {\n return {\n addItem: (state, payload) =>\n {\n payload = this.prepareFields(payload);\n\n let item = Property.getBaseItem();\n\n item = Object.assign(item, payload);\n state.property.unshift(item);\n state.property.forEach((item, index) => {\n item.sort = index + 1;\n });\n },\n updateItem: (state, payload) =>\n {\n if (typeof state.property[payload.index] === 'undefined')\n {\n Vue.set(state.property, payload.index, Property.getBaseItem());\n }\n\n payload = this.prepareFields(payload);\n\n state.property[payload.index] = Object.assign(\n state.property[payload.index],\n payload.fields\n );\n },\n deleteItem: (state, payload) =>\n {\n state.property.splice(payload.index, 1);\n },\n clearProperty: (state) =>\n {\n state.property = [];\n },\n setErrors: (state, payload) =>\n {\n state.errors = payload;\n },\n clearErrors: (state) =>\n {\n state.errors = [];\n }\n }\n }\n\n prepareFields(fields)\n {\n const result = {};\n try\n {\n for (let field in fields)\n {\n if (!fields.hasOwnProperty(field))\n {\n continue;\n }\n\n if (field === 'validated')\n {\n const validate = Object.values(Const.validate);\n\n fields.validated = validate.includes(fields.validated) ? fields.validated : Const.validate.unvalidated;\n result[field] = fields.validated;\n\n }\n else\n {\n result[field] = fields[field];\n }\n }\n }\n catch (e) {}\n\n return result;\n }\n}","import { Vue } from 'ui.vue';\nimport { VuexBuilderModel } from 'ui.vue.vuex';\nimport { Type } from 'main.core';\n\nexport class Payment extends VuexBuilderModel\n{\n\tgetName()\n\t{\n\t\treturn 'payment';\n\t}\n\n\tgetState()\n\t{\n\t\treturn {\n\t\t\tpayment: [],\n\t\t\terrors: []\n\t\t}\n\t}\n\n\tstatic getBaseItem()\n\t{\n\t\treturn {\n\t\t\tid: 0,\n\t\t\tsum: 0.0,\n\t\t\tpaid: 'N',\n\t\t\tcurrency: null,\n\t\t\taccountNumber: null,\n\t\t\tdateBillFormatted: null,\n\t\t\tpaySystemId: 0\n\t\t};\n\t}\n\n\tvalidate(fields)\n\t{\n\t\tconst result = {};\n\n\t\tif (Type.isNumber(fields.id) || Type.isString(fields.id))\n\t\t{\n\t\t\tresult.id = parseInt(fields.id);\n\t\t}\n\n\t\tif (Type.isNumber(fields.sum) || Type.isString(fields.sum))\n\t\t{\n\t\t\tresult.sum = parseFloat(fields.sum);\n\t\t}\n\n\t\tif (Type.isString(fields.paid))\n\t\t{\n\t\t\tresult.paid = fields.paid.toString() === 'Y' ? 'Y':'N';\n\t\t}\n\n\t\tif (Type.isString(fields.currency))\n\t\t{\n\t\t\tresult.currency = fields.currency.toString();\n\t\t}\n\n\t\tif (Type.isNumber(fields.accountNumber) || Type.isString(fields.accountNumber))\n\t\t{\n\t\t\tresult.accountNumber = fields.accountNumber.toString();\n\t\t}\n\n\t\tif (Type.isString(fields.dateBillFormatted))\n\t\t{\n\t\t\tresult.dateBillFormatted = fields.dateBillFormatted.toString();\n\t\t}\n\n\t\tif (Type.isNumber(fields.paySystemId) || Type.isString(fields.paySystemId))\n\t\t{\n\t\t\tresult.paySystemId = parseInt(fields.paySystemId);\n\t\t}\n\t\treturn result;\n\t}\n\n\tgetActions()\n\t{\n\t\treturn {\n\t\t\taddItem: ({ commit }, payload) =>\n\t\t\t{\n\t\t\t\tpayload.fields = this.validate(payload.fields);\n\n\t\t\t\tcommit('addItem', payload);\n\t\t\t},\n\t\t\tchangeItem: ({ commit }, payload) =>\n\t\t\t{\n\t\t\t\tpayload.fields = this.validate(payload.fields);\n\n\t\t\t\tcommit('updateItem', payload);\n\t\t\t},\n\t\t\tremoveItem({ commit }, payload)\n\t\t\t{\n\t\t\t\tcommit('deleteItem', payload);\n\t\t\t}\n\t\t}\n\t}\n\n\tgetGetters()\n\t{\n\t\treturn {\n\t\t\tget: state => id =>\n\t\t\t{\n\t\t\t\tif (!state.payment[id] || state.payment[id].length <= 0)\n\t\t\t\t{\n\t\t\t\t\treturn [];\n\t\t\t\t}\n\n\t\t\t\treturn state.payment[id];\n\t\t\t},\n\t\t\tgetPayment: state =>\n\t\t\t{\n\t\t\t\treturn state.payment;\n\t\t\t},\n\t\t\tgetErrors: state =>\n\t\t\t{\n\t\t\t\treturn state.errors;\n\t\t\t}\n\t\t}\n\t}\n\n\tgetMutations()\n\t{\n\t\treturn {\n\t\t\taddItem: (state, payload) =>\n\t\t\t{\n\t\t\t\tlet item = Payment.getBaseItem();\n\n\t\t\t\titem = Object.assign(item, payload.fields);\n\n\t\t\t\tstate.payment.push(item);\n\t\t\t},\n\t\t\tupdateItem: (state, payload) =>\n\t\t\t{\n\t\t\t\tif (typeof state.payment[payload.index] === 'undefined')\n\t\t\t\t{\n\t\t\t\t\tVue.set(state.payment, payload.index, Payment.getBaseItem());\n\t\t\t\t}\n\n\t\t\t\tstate.payment[payload.index] = Object.assign(\n\t\t\t\t\tstate.payment[payload.index],\n\t\t\t\t\tpayload.fields\n\t\t\t\t);\n\t\t\t},\n\t\t\tdeleteItem: (state, payload) =>\n\t\t\t{\n\t\t\t\tstate.payment.splice(payload.index, 1);\n\t\t\t},\n\t\t\tclearPayment: (state) =>\n\t\t\t{\n\t\t\t\tstate.payment = [];\n\t\t\t},\n\t\t}\n\t}\n}\n","import {Vue} from 'ui.vue';\r\nimport {VuexBuilderModel} from 'ui.vue.vuex';\r\nimport {Type} from 'main.core';\r\nimport {Loader as LoaderConst, PaySystem as Const} from 'sale.checkout.const';\r\n\r\nexport class PaySystem extends VuexBuilderModel\r\n{\r\n\tgetName()\r\n\t{\r\n\t\treturn 'pay-system';\r\n\t}\r\n\t\r\n\tgetState()\r\n\t{\r\n\t\treturn {\r\n\t\t\tpaySystem: [],\r\n\t\t\tstatus: LoaderConst.status.none,\r\n\t\t}\r\n\t}\r\n\t\r\n\tstatic getBaseItem()\r\n\t{\r\n\t\treturn {\r\n\t\t\tid: 0,\r\n\t\t\tname: null,\r\n\t\t\ttype: Const.type.undefined,\r\n\t\t\tpicture: null\r\n\t\t};\r\n\t}\r\n\t\r\n\tvalidate(fields)\r\n\t{\r\n\t\tconst result = {};\r\n\t\t\r\n\t\tif (Type.isObject(fields.paySystem))\r\n\t\t{\r\n\t\t\tresult.paySystem = this.validatePaySystem(fields.paySystem);\r\n\t\t}\r\n\t\t\r\n\t\tif (Type.isString(fields.status))\r\n\t\t{\r\n\t\t\tresult.status = fields.status.toString()\r\n\t\t}\r\n\t\t\r\n\t\treturn result;\r\n\t}\r\n\t\r\n\tvalidatePaySystem(fields)\r\n\t{\r\n\t\tconst result = {};\r\n\t\t\r\n\t\tif (Type.isNumber(fields.id) || Type.isString(fields.id))\r\n\t\t{\r\n\t\t\tresult.id = parseInt(fields.id);\r\n\t\t}\r\n\t\t\r\n\t\tif (Type.isString(fields.name))\r\n\t\t{\r\n\t\t\tresult.name = fields.name.toString();\r\n\t\t}\r\n\r\n\t\tif (Type.isString(fields.logotypeSrc) && fields.logotypeSrc.length > 0)\r\n\t\t{\r\n\t\t\tresult.picture = fields.logotypeSrc.toString();\r\n\t\t}\r\n\t\t\r\n\t\tif (Type.isString(fields.type))\r\n\t\t{\r\n\t\t\tlet allowed = Object.values(Const.type);\r\n\t\t\t\r\n\t\t\tlet type = fields.type.toString();\r\n\t\t\t\r\n\t\t\tresult.type = allowed.includes(type) ? type : Const.type.undefined;\r\n\t\t}\r\n\t\t\r\n\t\treturn result;\r\n\t}\r\n\t\r\n\tgetActions()\r\n\t{\r\n\t\treturn {\r\n\t\t\tsetStatus: ({ commit }, payload) =>\r\n\t\t\t{\r\n\t\t\t\tpayload = this.validate(payload);\r\n\t\t\t\t\r\n\t\t\t\tconst status = Object.values(LoaderConst.status);\r\n\t\t\t\t\r\n\t\t\t\tpayload.status = status.includes(payload.status) ? payload.status : LoaderConst.status.none;\r\n\t\t\t\t\r\n\t\t\t\tcommit('setStatus', payload);\r\n\t\t\t},\r\n\t\t\taddItem: ({ commit }, payload) =>\r\n\t\t\t{\r\n\t\t\t\tpayload.fields = this.validatePaySystem(payload.fields);\r\n\t\t\t\tcommit('addItem', payload);\r\n\t\t\t},\r\n\t\t\tchangeItem: ({ commit }, payload) =>\r\n\t\t\t{\r\n\t\t\t\tpayload.fields = this.validatePaySystem(payload.fields);\r\n\t\t\t\tcommit('updateItem', payload);\r\n\t\t\t},\r\n\t\t\tremoveItem({ commit }, payload)\r\n\t\t\t{\r\n\t\t\t\tcommit('deleteItem', payload);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\t\r\n\tgetGetters()\r\n\t{\r\n\t\treturn {\r\n\t\t\tgetStatus: state =>\r\n\t\t\t{\r\n\t\t\t\treturn state.status;\r\n\t\t\t},\r\n\t\t\tgetPaySystem: state =>\r\n\t\t\t{\r\n\t\t\t\treturn state.paySystem;\r\n\t\t\t},\r\n\t\t}\r\n\t}\r\n\t\r\n\tgetMutations()\r\n\t{\r\n\t\treturn {\r\n\t\t\tsetStatus: (state, payload) =>\r\n\t\t\t{\r\n\t\t\t\tlet item = { status: LoaderConst.status.none };\r\n\t\t\t\t\r\n\t\t\t\titem = Object.assign(item, payload);\r\n\t\t\t\tstate.status = item.status;\r\n\t\t\t},\r\n\t\t\taddItem: (state, payload) =>\r\n\t\t\t{\r\n\t\t\t\tlet item = PaySystem.getBaseItem();\r\n\t\t\t\t\r\n\t\t\t\titem = Object.assign(item, payload.fields);\r\n\t\t\t\t\r\n\t\t\t\tstate.paySystem.push(item);\r\n\t\t\t},\r\n\t\t\tupdateItem: (state, payload) =>\r\n\t\t\t{\r\n\t\t\t\tif (typeof state.paySystem[payload.index] === 'undefined')\r\n\t\t\t\t{\r\n\t\t\t\t\tVue.set(state.paySystem, payload.index, PaySystem.getBaseItem());\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\tstate.paySystem[payload.index] = Object.assign(\r\n\t\t\t\t\tstate.paySystem[payload.index],\r\n\t\t\t\t\tpayload.fields\r\n\t\t\t\t);\r\n\t\t\t},\r\n\t\t\tdeleteItem: (state, payload) =>\r\n\t\t\t{\r\n\t\t\t\tstate.paySystem.splice(payload.index, 1);\r\n\t\t\t},\r\n\t\t\tclearPaySystem: (state) =>\r\n\t\t\t{\r\n\t\t\t\tstate.paySystem = [];\r\n\t\t\t},\r\n\t\t}\r\n\t}\r\n}","import {VuexBuilderModel} from 'ui.vue.vuex';\nimport {Type} from 'main.core';\nimport {Application as ApplicationConst, Loader as LoaderConst} from 'sale.checkout.const';\n\nexport class Application extends VuexBuilderModel\n{\n getName()\n {\n return 'application';\n }\n\n getState()\n {\n return {\n stage: ApplicationConst.stage.undefined,\n status: LoaderConst.status.none,\n path:\n {\n emptyCart: this.getVariable('path.emptyCart', null),\n mainPage: this.getVariable('path.mainPage', null),\n location: this.getVariable('path.location', null)\n },\n common:\n {\n siteId: this.getVariable('common.siteId', null),\n personTypeId: this.getVariable('common.personTypeId', 0),\n tradingPlatformId: this.getVariable('common.tradingPlatformId', null),\n },\n option:\n {\n signedParameters: this.getVariable('option.signedParameters', null),\n showReturnButton: this.getVariable('option.showReturnButton', true),\n },\n message:\n {\n buttonCheckoutTitle: this.getVariable('messages.buttonCheckoutTitle', null)\n },\n errors: []\n }\n }\n\n validate(fields)\n {\n const result = {};\n\n if (Type.isString(fields.stage))\n {\n result.stage = fields.stage.toString()\n }\n\n if (Type.isString(fields.status))\n {\n result.status = fields.status.toString()\n }\n\n if (Type.isObject(fields.path))\n {\n result.path = this.validatePaths(fields.path);\n }\n\n if (Type.isObject(fields.common))\n {\n result.common = this.validateCommon(fields.common);\n }\n\n if (Type.isObject(fields.options))\n {\n result.options = this.validateOptions(fields.options);\n }\n\n return result;\n }\n\n validateCommon(fields)\n {\n const result = {};\n\n if (Type.isString(fields.siteId))\n {\n result.siteId = fields.siteId.toString();\n }\n\n if (Type.isNumber(fields.tradingPlatformId) || Type.isString(fields.tradingPlatformId))\n {\n result.tradingPlatformId = parseInt(fields.tradingPlatformId)\n }\n\n if (Type.isNumber(fields.personTypeId) || Type.isString(fields.personTypeId))\n {\n result.personTypeId = parseInt(fields.personTypeId);\n }\n\n return result;\n }\n\n validatePaths(fields)\n {\n const result = {};\n\n if (Type.isString(fields.productNoImage))\n {\n result.productNoImage = fields.productNoImage.toString();\n }\n\n if (Type.isString(fields.emptyCart))\n {\n result.emptyCart = fields.emptyCart.toString();\n }\n\n if (Type.isString(fields.mainPage))\n {\n result.mainPage = fields.mainPage.toString();\n }\n\n if (Type.isString(fields.location))\n {\n result.location = fields.location.toString();\n }\n\n return result;\n }\n\n validateOptions(fields)\n {\n const result = {};\n\n if (Type.isString(fields.signedParameters))\n {\n result.signedParameters = fields.signedParameters.toString();\n }\n\n\t\tif (Type.isString(fields.showReturnButton))\n\t\t{\n\t\t\tresult.showReturnButton = fields.showReturnButton.toString() === 'Y' ? 'Y' : 'N';\n\t\t}\n\n return result;\n }\n\n getActions()\n {\n return {\n setPathLocation: ({ commit }, payload) =>\n {\n payload = this.validatePaths({location: payload});\n commit('setPathLocation', payload.location);\n },\n setStatus: ({ commit }, payload) =>\n {\n payload = this.validate(payload);\n\n const status = [\n LoaderConst.status.none,\n LoaderConst.status.wait,\n ];\n\n payload.status = status.includes(payload.status) ? payload.status : LoaderConst.status.none;\n\n commit('setStatus', payload);\n },\n setStage: ({ commit }, payload) =>\n {\n payload = this.validate(payload);\n\n let allowed = Object.values(ApplicationConst.stage);\n\n payload.stage = allowed.includes(payload.stage) ? payload.stage : ApplicationConst.stage.undefined;\n commit('setStage', payload);\n }\n }\n }\n\n getGetters()\n {\n return {\n getErrors: state =>\n {\n return state.errors;\n },\n getPath: state =>\n {\n return state.path;\n },\n getSignedParameters: state =>\n {\n return state.option.signedParameters;\n },\n\t\t\tgetShowReturnButton: state =>\n\t\t\t{\n\t\t\t\treturn state.option.showReturnButton;\n\t\t\t},\n getPathLocation: (state, getters) =>\n {\n return getters.getPath.location;\n },\n getPathMainPage: (state, getters) =>\n {\n return getters.getPath.mainPage;\n },\n getTradingPlatformId: state =>\n {\n return state.common.tradingPlatformId;\n },\n getTitleCheckoutButton: state =>\n {\n return state.message.buttonCheckoutTitle;\n },\n getSiteId: state =>\n {\n return state.common.siteId;\n },\n getPersonTypeId: state =>\n {\n return state.common.personTypeId;\n },\n getStatus: state =>\n {\n return state.status;\n },\n getStage: state =>\n {\n return state.stage;\n },\n }\n }\n\n getMutations()\n {\n return {\n setPathLocation: (state, payload) =>\n {\n state.path.location = payload;\n },\n setStatus: (state, payload) =>\n {\n let item = { status: LoaderConst.status.none };\n\n item = Object.assign(item, payload);\n state.status = item.status;\n },\n setStage: (state, payload) =>\n {\n let item = { stage: ApplicationConst.stage.undefined };\n\n item = Object.assign(item, payload);\n state.stage = item.stage;\n },\n setErrors: (state, payload) =>\n {\n state.errors = payload;\n },\n clearErrors: (state) =>\n {\n state.errors = [];\n }\n }\n }\n}","import {VuexBuilderModel} from 'ui.vue.vuex';\r\nimport {Type} from 'main.core';\r\nimport {Consent as Const} from 'sale.checkout.const';\r\n\r\nexport class Consent extends VuexBuilderModel\r\n{\r\n getName()\r\n {\r\n return 'consent';\r\n }\r\n\r\n getState()\r\n {\r\n return {\r\n status: Const.status.init,\r\n consent: Consent.getBaseItem(),\r\n errors: []\r\n }\r\n }\r\n\r\n static getBaseItem()\r\n {\r\n return {\r\n id: 0,\r\n title: '',\r\n isLoaded: '',\r\n autoSave: '',\r\n isChecked: '',\r\n submitEventName: '',\r\n params: []\r\n };\r\n }\r\n\r\n validate(fields)\r\n {\r\n const result = {};\r\n\r\n if (Type.isString(fields.status))\r\n {\r\n result.status = fields.status.toString()\r\n }\r\n\r\n if (Type.isObject(fields.consent))\r\n {\r\n result.consent = this.validateConsent(fields.consent);\r\n }\r\n\r\n return result;\r\n }\r\n\r\n validateConsent(fields)\r\n {\r\n const result = {};\r\n\r\n if (Type.isNumber(fields.id) || Type.isString(fields.id))\r\n {\r\n result.id = parseInt(fields.id);\r\n }\r\n\r\n if (Type.isString(fields.title))\r\n {\r\n result.title = fields.title.toString();\r\n }\r\n\r\n if (Type.isString(fields.isLoaded))\r\n {\r\n result.isLoaded = fields.isLoaded.toString();\r\n }\r\n\r\n if (Type.isString(fields.autoSave))\r\n {\r\n result.autoSave = fields.autoSave.toString();\r\n }\r\n\r\n if (Type.isString(fields.isChecked))\r\n {\r\n result.isChecked = fields.isChecked.toString();\r\n }\r\n\r\n if (Type.isString(fields.submitEventName))\r\n {\r\n result.submitEventName = fields.submitEventName.toString();\r\n }\r\n\r\n if (Type.isArrayFilled(fields.params))\r\n {\r\n result.params = this.validateParams(fields.params);\r\n }\r\n\r\n return result;\r\n }\r\n\r\n validateParams(fields)\r\n {\r\n const result = [];\r\n try\r\n {\r\n for (let key in fields)\r\n {\r\n if (!fields.hasOwnProperty(key))\r\n {\r\n continue;\r\n }\r\n\r\n if (Type.isNumber(fields[key]) || Type.isString(fields[key]))\r\n {\r\n result[key] = fields[key];\r\n }\r\n }\r\n }\r\n catch (e) {}\r\n\r\n return result;\r\n }\r\n\r\n getActions()\r\n {\r\n return {\r\n setStatus: ({ commit }, payload) =>\r\n {\r\n payload = this.validate({status: payload});\r\n\r\n const status = Object.values(Const.status);\r\n\r\n payload.status = status.includes(payload.status) ? payload.status : Const.status.init;\r\n\r\n commit('setStatus', payload);\r\n },\r\n\r\n set: ({ commit }, payload) =>\r\n {\r\n payload = this.validate({consent: payload});\r\n commit('set', payload);\r\n }\r\n }\r\n }\r\n\r\n getGetters()\r\n {\r\n return {\r\n getStatus: state =>\r\n {\r\n return state.status;\r\n },\r\n get: state =>\r\n {\r\n return state.consent;\r\n },\r\n }\r\n }\r\n\r\n getMutations()\r\n {\r\n return {\r\n setStatus: (state, payload) =>\r\n {\r\n state.status = payload.status;\r\n },\r\n\r\n set: (state, payload) =>\r\n {\r\n let item = Consent.getBaseItem();\r\n\r\n state.consent = Object.assign(item, payload.consent);\r\n },\r\n setErrors: (state, payload) =>\r\n {\r\n state.errors = payload;\r\n },\r\n clearErrors: (state) =>\r\n {\r\n state.errors = [];\r\n }\r\n }\r\n }\r\n}","import { Vue } from 'ui.vue';\nimport { VuexBuilderModel } from 'ui.vue.vuex';\nimport { Type } from 'main.core';\n\nexport class Variant extends VuexBuilderModel\n{\n\tgetName()\n\t{\n\t\treturn 'property-variant';\n\t}\n\n\tgetState()\n\t{\n\t\treturn {\n\t\t\tvariant: [],\n\t\t}\n\t}\n\n\tstatic getBaseItem()\n\t{\n\t\treturn {\n\t\t\tid: 0,\n\t\t\tpropertyId: 0,\n\t\t\tvalue: \"\",\n\t\t\tname: \"\",\n\t\t};\n\t}\n\n\tvalidate(fields)\n\t{\n\t\tconst result = {};\n\n\t\tif (Type.isNumber(fields.id) || Type.isString(fields.id))\n\t\t{\n\t\t\tresult.id = parseInt(fields.id);\n\t\t}\n\n\t\tif (Type.isNumber(fields.orderPropsId) || Type.isString(fields.orderPropsId))\n\t\t{\n\t\t\tresult.propertyId = parseInt(fields.orderPropsId);\n\t\t}\n\n\t\tif (Type.isString(fields.name))\n\t\t{\n\t\t\tresult.name = fields.name.toString();\n\t\t}\n\n\t\tif (Type.isString(fields.value))\n\t\t{\n\t\t\tresult.value = fields.value.toString();\n\t\t}\n\n\t\treturn result;\n\t}\n\n\tgetActions()\n\t{\n\t\treturn {\n\t\t\taddItem: ({ commit }, payload) =>\n\t\t\t{\n\t\t\t\tpayload.fields = this.validate(payload.fields);\n\n\t\t\t\tcommit('addItem', payload);\n\t\t\t},\n\t\t\tchangeItem: ({ commit }, payload) =>\n\t\t\t{\n\t\t\t\tpayload.fields = this.validate(payload.fields);\n\n\t\t\t\tcommit('updateItem', payload);\n\t\t\t},\n\t\t\tremoveItem({ commit }, payload)\n\t\t\t{\n\t\t\t\tcommit('deleteItem', payload);\n\t\t\t}\n\t\t}\n\t}\n\n\tgetGetters()\n\t{\n\t\treturn {\n\t\t\tget: state => id =>\n\t\t\t{\n\t\t\t\tif (!state.variant[id] || state.variant[id].length <= 0)\n\t\t\t\t{\n\t\t\t\t\treturn [];\n\t\t\t\t}\n\n\t\t\t\treturn state.variant[id];\n\t\t\t},\n\t\t\tgetVariant: state =>\n\t\t\t{\n\t\t\t\treturn state.variant;\n\t\t\t},\n\t\t\tgetBaseItem: state =>\n\t\t\t{\n\t\t\t\treturn Variant.getBaseItem();\n\t\t\t},\n\t\t\tgetErrors: state =>\n\t\t\t{\n\t\t\t\treturn state.errors;\n\t\t\t}\n\t\t}\n\t}\n\n\tgetMutations()\n\t{\n\t\treturn {\n\t\t\taddItem: (state, payload) =>\n\t\t\t{\n\t\t\t\tpayload = this.prepareFields(payload);\n\n\t\t\t\tlet item = Variant.getBaseItem();\n\n\t\t\t\titem = Object.assign(item, payload);\n\t\t\t\tstate.variant.unshift(item);\n\t\t\t\tstate.variant.forEach((item, index) => {\n\t\t\t\t\titem.sort = index + 1;\n\t\t\t\t});\n\t\t\t},\n\t\t\tupdateItem: (state, payload) =>\n\t\t\t{\n\t\t\t\tif (typeof state.variant[payload.index] === 'undefined')\n\t\t\t\t{\n\t\t\t\t\tVue.set(state.variant, payload.index, Variant.getBaseItem());\n\t\t\t\t}\n\n\t\t\t\tstate.variant[payload.index] = Object.assign(\n\t\t\t\t\tstate.variant[payload.index],\n\t\t\t\t\tpayload.fields\n\t\t\t\t);\n\t\t\t},\n\t\t\tdeleteItem: (state, payload) =>\n\t\t\t{\n\t\t\t\tstate.variant.splice(payload.index, 1);\n\t\t\t},\n\t\t\tclearVariant: (state) =>\n\t\t\t{\n\t\t\t\tstate.variant = [];\n\t\t\t},\n\t\t\tsetErrors: (state, payload) =>\n\t\t\t{\n\t\t\t\tstate.errors = payload;\n\t\t\t},\n\t\t\tclearErrors: (state) =>\n\t\t\t{\n\t\t\t\tstate.errors = [];\n\t\t\t}\n\t\t}\n\t}\n}"],"names":["Order","order","getBaseItem","errors","fields","result","Type","isObject","validateOrder","isNumber","id","isString","parseInt","accountNumber","toString","hash","payed","set","payload","commit","validate","getOrder","state","item","Object","assign","VuexBuilderModel","Check","check","status","LoaderConst","none","validateCheck","paymentId","dateFormatted","link","allowed","values","Const","includes","setStatus","addItem","changeItem","removeItem","getStatus","getCheck","push","updateItem","index","Vue","deleteItem","splice","clearCheck","Basket","basket","needRefresh","currency","discount","getDiscountItem","total","getTotalItem","name","quantity","measureText","module","productProviderClass","sum","price","baseSum","basePrice","props","sku","getSkuItem","product","getProductItem","deleted","picture","getVariable","detailPageUrl","availableQuantity","ratio","type","ProductConst","checkMaxQuantity","validateBasket","validateTotalDiscount","validateTotal","parseFloat","validateProduct","forEach","validateProps","validateSku","validateDiscount","tree","parentProductId","field","hasOwnProperty","length","productTypes","e","code","value","sort","setTradingPlatformId","setNeedRefresh","setFUserId","setCurrency","setDiscount","setTotal","getNeedRefresh","get","getBasket","getCurrency","getDiscount","getTotal","getErrors","getDiscountTotalItem","prop","getPropsItem","clearBasket","clearDiscount","clearTotal","setErrors","clearErrors","Property","property","undefined","validated","personTypeId","required","requiredValue","multiple","multipleValue","getProperty","prepareFields","unshift","clearProperty","unvalidated","Payment","payment","paid","dateBillFormatted","paySystemId","getPayment","clearPayment","PaySystem","paySystem","validatePaySystem","logotypeSrc","getPaySystem","clearPaySystem","Application","stage","ApplicationConst","path","emptyCart","mainPage","location","common","siteId","tradingPlatformId","option","signedParameters","showReturnButton","message","buttonCheckoutTitle","validatePaths","validateCommon","options","validateOptions","productNoImage","setPathLocation","wait","setStage","getPath","getSignedParameters","getShowReturnButton","getPathLocation","getters","getPathMainPage","getTradingPlatformId","getTitleCheckoutButton","getSiteId","getPersonTypeId","getStage","Consent","init","consent","validateConsent","title","isLoaded","autoSave","isChecked","submitEventName","isArrayFilled","params","validateParams","key","Variant","variant","orderPropsId","propertyId","getVariant","clearVariant"],"mappings":"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"}