{"version":3,"sources":["webpack:///./src/views/Flow/MobileTTP/Step5TireInfoMobileTTP/Step5TireInfoMobileTTP.vue?48ba","webpack:///./src/views/Flow/MobileTTP/Step5TireInfoMobileTTP/Step5TireInfoMobileTTP.controller.js","webpack:///./src/views/Flow/MobileTTP/Step5TireInfoMobileTTP/Step5TireInfoMobileTTP.controller.js?b742","webpack:///./src/views/Flow/MobileTTP/Step5TireInfoMobileTTP/Step5TireInfoMobileTTP.vue","webpack:///./src/views/Flow/MobileTTP/Step5TireInfoMobileTTP/Step5TireInfoMobileTTP.styles.scss?d6b9"],"names":["render","_vm","this","_h","$createElement","_c","_self","staticClass","directives","name","rawName","_v","attrs","class","isValidTireInfo","on","$event","makeAppointment","staticRenderFns","components","RunFlatToggle","TireTypePicker","Title","TireLocationPicker","TireSizeSelector","WarningModal","props","data","computed","mapGetters","tireType","tireLocations","bodyworkType","tireSizes","serviceType","garages","tireCodes","stockOrActive","forEach","tireLocation","stockProperty","stockState","correctAmountOfTires","frontAxisTireLocations","backAxisTireLocations","hasFrontAxisTire","hasBackAxisTire","properties","correctFrontSizes","correctBackSizes","property","frontTire","backTire","methods","goToPreviousStep","$router","push","validationFlow","validateStep5TireInfoMobileTPP","mapActions","getGarages","getTireCodes","created","length","component"],"mappings":"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","file":"js/chunk-475c285a.c8670835.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"l-container\"},[_c('Title',[_c('h1',{directives:[{name:\"translate\",rawName:\"v-translate\"}]},[_vm._v(\"Step 5 - Title\")])]),_c('p',{directives:[{name:\"translate\",rawName:\"v-translate\"}],staticClass:\"u-hide\"},[_vm._v(\"Step 5 - Previous title\")]),_c('p',{directives:[{name:\"translate\",rawName:\"v-translate\"}],staticClass:\"u-hide\"},[_vm._v(\"Step 5 - Title\")]),_c('hr',{staticClass:\"hr--full-width\"}),_c('TireTypePicker',{attrs:{\"type\":\"tpp\"}}),_c('hr'),_c('TireLocationPicker'),_c('hr'),_c('RunFlatToggle'),_c('hr'),_c('TireSizeSelector',{attrs:{\"type\":\"tpp\"}}),_c('hr'),_c('div',{staticClass:\"a-button__flow-container\"},[_c('div',{staticClass:\"a-button a-button--primary u-full-width u-margin-bottom-3x\",class:{ 'a-button--disabled': !_vm.isValidTireInfo },on:{\"click\":function($event){return _vm.makeAppointment()}}},[_c('span',{directives:[{name:\"translate\",rawName:\"v-translate\"}]},[_vm._v(\"General - Make appointment\")]),_c('div',{staticClass:\"a-spinner\"})])]),_c('WarningModal')],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import {\r\n RunFlatToggle,\r\n TireTypePicker,\r\n Title,\r\n TireLocationPicker,\r\n TireSizeSelector,\r\n WarningModal,\r\n} from '@/components';\r\n\r\nimport validationFlow from '@/validation-flow';\r\n\r\nimport {\r\n mapGetters,\r\n mapActions,\r\n} from 'vuex';\r\n\r\nexport default {\r\n name: 'step5TireInfoMobileTTP',\r\n components: {\r\n [RunFlatToggle.name]: RunFlatToggle,\r\n [TireTypePicker.name]: TireTypePicker,\r\n [Title.name]: Title,\r\n [TireLocationPicker.name]: TireLocationPicker,\r\n [TireSizeSelector.name]: TireSizeSelector,\r\n [WarningModal.name]: WarningModal,\r\n },\r\n props: {},\r\n data: () => ({\r\n\r\n }),\r\n computed: {\r\n ...mapGetters('appointment', {\r\n tireType: 'getTireType',\r\n tireLocations: 'getTireLocations',\r\n bodyworkType: 'getBodyworkType',\r\n tireSizes: 'getTireSizes',\r\n serviceType: 'getServiceType',\r\n }),\r\n ...mapGetters('garage', {\r\n garages: 'getGarages',\r\n tireCodes: 'getTireCodes',\r\n }),\r\n isValidTireInfo() {\r\n // Check als ze 4 banden hebben volgens tiretype & cartype\r\n let stockOrActive = 0;\r\n const tireLocations = ['t1l1', 't1r1', 't2l2', 't2l1', 't2r1', 't2r2'];\r\n\r\n tireLocations.forEach(tireLocation => {\r\n const stockProperty = `${this.tireType}Stock`;\r\n const stockState = this.tireLocations[tireLocation][stockProperty];\r\n // 2 active, 3 stock\r\n if (stockState === 2 || stockState === 3) {\r\n stockOrActive += 1;\r\n }\r\n });\r\n\r\n let correctAmountOfTires = (this.bodyworkType === 'car' && stockOrActive === 4) ||\r\n (this.bodyworkType === 'bus' && stockOrActive === 6);\r\n\r\n // Bij nieuwe banden moet de stock niet /4 of /6 zijn\r\n if (this.serviceType === 'new-tires' && stockOrActive > 0) {\r\n correctAmountOfTires = true;\r\n }\r\n\r\n // Check size on ax where there is an active tire\r\n const frontAxisTireLocations = ['t1l1', 't1r1'];\r\n const backAxisTireLocations = ['t2l2', 't2l1', 't2r1', 't2r2'];\r\n\r\n let hasFrontAxisTire = false;\r\n let hasBackAxisTire = false;\r\n\r\n frontAxisTireLocations.forEach(tireLocation => {\r\n const stockProperty = `${this.tireType}Stock`;\r\n const stockState = this.tireLocations[tireLocation][stockProperty];\r\n // 2 active, 3 stock\r\n if (stockState === 2 && stockState !== 1) {\r\n hasFrontAxisTire = true;\r\n }\r\n });\r\n\r\n backAxisTireLocations.forEach(tireLocation => {\r\n const stockProperty = `${this.tireType}Stock`;\r\n const stockState = this.tireLocations[tireLocation][stockProperty];\r\n // 2 active, 3 stock\r\n if (stockState === 2 && stockState !== 1) {\r\n hasBackAxisTire = true;\r\n }\r\n });\r\n\r\n const properties = ['width', 'height', 'diameter', 'loadCapacity', 'speedIndex'];\r\n let correctFrontSizes = true;\r\n let correctBackSizes = true;\r\n\r\n if (hasFrontAxisTire) {\r\n properties.forEach(property => {\r\n if (this.tireSizes.frontTire[property] === 0 ||\r\n this.tireSizes.frontTire[property] === '') {\r\n correctFrontSizes = false;\r\n }\r\n });\r\n }\r\n\r\n if (hasBackAxisTire) {\r\n properties.forEach(property => {\r\n if (this.tireSizes.backTire[property] === 0 ||\r\n this.tireSizes.backTire[property] === '') {\r\n correctBackSizes = false;\r\n }\r\n });\r\n }\r\n\r\n return correctAmountOfTires && correctFrontSizes && correctBackSizes;\r\n },\r\n },\r\n methods: {\r\n goToPreviousStep() {\r\n this.$router.push({\r\n name: 'step3ServiceType',\r\n });\r\n },\r\n makeAppointment() {\r\n if (this.isValidTireInfo) {\r\n validationFlow.validateStep5TireInfoMobileTPP();\r\n }\r\n },\r\n ...mapActions('garage', {\r\n getGarages: 'FETCH_DATA_GARAGES',\r\n getTireCodes: 'FETCH_DATA_TIRECODES',\r\n }),\r\n },\r\n created() {\r\n if (this.garages.length === 0) {\r\n this.getGarages();\r\n }\r\n if (this.tireCodes.length === 0) {\r\n this.getTireCodes();\r\n }\r\n },\r\n};\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/eslint-loader/index.js??ref--13-0!./Step5TireInfoMobileTTP.controller.js?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/eslint-loader/index.js??ref--13-0!./Step5TireInfoMobileTTP.controller.js?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Step5TireInfoMobileTTP.vue?vue&type=template&id=2062ea94&\"\nimport script from \"./Step5TireInfoMobileTTP.controller.js?vue&type=script&lang=js&\"\nexport * from \"./Step5TireInfoMobileTTP.controller.js?vue&type=script&lang=js&\"\nimport style0 from \"./Step5TireInfoMobileTTP.styles.scss?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!./Step5TireInfoMobileTTP.styles.scss?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!./Step5TireInfoMobileTTP.styles.scss?vue&type=style&index=0&lang=scss&\""],"sourceRoot":""}