![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/vreg/node_modules/.cache/nuxt/dist/server/pages/fl/ |
{"version":3,"file":"pages/fl/step-4.js","sources":["webpack:///./components/Forms/PlateBox.vue?6b0f","webpack:///./components/Forms/PlateBox.vue?8388","webpack:///./components/Forms/PlateBox.vue?eb16","webpack:///./components/Forms/PlateBox.vue?1a19","webpack:///./components/Forms/PlateBox.vue","webpack:///./components/Forms/PlateBox.vue?87a0","webpack:///./components/Forms/PlateBox.vue?14d0","webpack:///./pages/fl/step-4.vue?155a","webpack:///./components/States/FL/OfflineVehicleForm.vue?a8e7","webpack:///./components/States/FL/OfflineVehicleForm.vue","webpack:///./components/States/FL/OfflineVehicleForm.vue?1d14","webpack:///./components/States/FL/OfflineVehicleForm.vue?7e77","webpack:///./pages/fl/step-4.vue","webpack:///./pages/fl/step-4.vue?9959","webpack:///./pages/fl/step-4.vue?2cab","webpack:///./components/Forms/InputField.vue?b99a","webpack:///./components/Forms/InputField.vue","webpack:///./components/Forms/InputField.vue?b7d9","webpack:///./components/Forms/InputField.vue?be57","webpack:///./components/Forms/InputField.vue?bf7d","webpack:///./components/Forms/FormErrorMsg.vue?9f25","webpack:///./mixins/forms.js","webpack:///./components/Forms/FormErrorMsg.vue?497a","webpack:///./components/Forms/FormErrorMsg.vue","webpack:///./components/Forms/FormErrorMsg.vue?5544","webpack:///./components/Forms/FormErrorMsg.vue?6e2b","webpack:///./components/Forms/InputField.vue?db84","webpack:///./components/Forms/InputField.vue?fbac","webpack:///./components/Forms/FormErrorMsg.vue?6c28","webpack:///./components/Forms/FormErrorMsg.vue?d1be","webpack:///./components/Forms/VregSuggesstions/v-reg-vue-simple-suggest.vue?29b1","webpack:///./components/Forms/VregSelect.vue?359b","webpack:///./components/Forms/VregSelect.vue","webpack:///./components/Forms/VregSelect.vue?3476","webpack:///./components/Forms/VregSelect.vue?daa6","webpack:///./components/Forms/VregSuggesstions/v-reg-vue-simple-suggest.vue?d4c4","webpack:///./components/Forms/VregSuggesstions/v-reg-vue-simple-suggest.vue?41a5","webpack:///./components/Forms/VregSuggesstions/v-reg-vue-simple-suggest.vue?f66b","webpack:///./components/Forms/VregSuggesstions/misc.js","webpack:///./components/Forms/VregSuggesstions/v-reg-vue-simple-suggest.vue","webpack:///./components/Forms/VregSuggesstions/v-reg-vue-simple-suggest.vue?b11c","webpack:///./components/Forms/VregSuggesstions/v-reg-vue-simple-suggest.vue?73de","webpack:///./components/States lazy ^\\.\\/.*\\/VehicleInfoHeader$ namespace object"],"sourcesContent":["// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../node_modules/css-loader/dist/cjs.js??ref--3-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--3-oneOf-1-2!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PlateBox.vue?vue&type=style&index=0&id=54052148&scoped=true&lang=css&\");\nif(content.__esModule) content = content.default;\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add CSS to SSR context\nvar add = require(\"!../../node_modules/vue-style-loader/lib/addStylesServer.js\").default\nmodule.exports.__inject__ = function (context) {\n add(\"6d708003\", content, true, context)\n};","export * from \"-!../../node_modules/vue-style-loader/index.js??ref--3-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--3-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--3-oneOf-1-2!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PlateBox.vue?vue&type=style&index=0&id=54052148&scoped=true&lang=css&\"","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../node_modules/css-loader/dist/runtime/api.js\");\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".form-plate-wrapper[data-v-54052148]{margin-bottom:10px!important;cursor:pointer;border-radius:2px}.plate-selected[data-v-54052148]{background-color:rgba(47,171,255,.1);border:1px solid #2fabff;transition:all .2s ease-in}@media only screen and (max-width:767px){.plate-selected[data-v-54052148]{border:unset}}.checkbox-input-wrapper .checkbox-inner[data-v-54052148]{background-color:unset!important}\", \"\"]);\n// Exports\nmodule.exports = ___CSS_LOADER_EXPORT___;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"form-plate-wrapper\",class:{'plate-hover':_vm.hover,'plate-selected':_vm.plateSelected},on:{\"click\":function($event){$event.preventDefault();return _vm.selectUnselectPlate.apply(null, arguments)},\"mouseleave\":function($event){_vm.hover=false},\"mouseenter\":function($event){_vm.hover=true}}},[_vm._ssrNode(\"<div class=\\\"form-plate-header\\\" data-v-54052148>\",\"</div>\",[(!_vm.$store.state.emptyEstimates)?_c(_vm.vehicleInfoHeaderComponent,{tag:\"component\",attrs:{\"plate\":_vm.plate}}):_vm._e(),_vm._ssrNode(\" <div class=\\\"form-group \\\" data-v-54052148><label class=\\\"checkbox-input-wrapper\\\" data-v-54052148><input type=\\\"checkbox\\\"\"+(_vm._ssrAttr(\"checked\",_vm.plateSelected))+\" class=\\\"c-input\\\" data-v-54052148> <div class=\\\"checkbox-inner\\\" data-v-54052148><div class=\\\"outer\\\" data-v-54052148><div class=\\\"inner\\\" data-v-54052148><svg width=\\\"12\\\" height=\\\"8\\\" viewBox=\\\"0 0 13 9\\\" fill=\\\"none\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" data-v-54052148><path d=\\\"M11.2252 1.90835L5.60358 7.53001C5.21306 7.92053 4.57989 7.92053 4.18937 7.53001L1.32944 4.67008\\\" stroke=\\\"white\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" data-v-54052148></path></svg></div></div> <p class=\\\"font-weight-bold\\\" style=\\\"font-size: 14px\\\" data-v-54052148>Renew this vehicle</p></div></label></div>\")],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\nexport default {\n props: ['plate'],\n name: \"PlateBox\",\n data() {\n return {\n hover: false\n }\n },\n methods: {\n selectUnselectPlate() {\n if (this.plateSelected) {\n this.unselectPlate();\n } else {\n this.selectPlate();\n }\n\n },\n selectPlate() {\n this.$store.commit('SET_OFFLINE_FORM_PLATE', this.plate);\n },\n unselectPlate() {\n this.$store.commit('REMOVE_OFFLINE_FORM_PLATE', this.plate);\n }\n },\n computed: {\n vehicleInfoHeaderComponent() {\n return () => import(`@/components/States/${this.currentStateCode.toUpperCase()}/VehicleInfoHeader`);\n },\n plateSelected() {\n return !!this.offlineFormPlates\n .find(plateObject => {\n return plateObject.license_plate === this.plate.license_plate\n });\n }\n }\n}\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js??ref--2-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PlateBox.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js??ref--2-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PlateBox.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PlateBox.vue?vue&type=template&id=54052148&scoped=true&\"\nimport script from \"./PlateBox.vue?vue&type=script&lang=js&\"\nexport * from \"./PlateBox.vue?vue&type=script&lang=js&\"\nfunction injectStyles (context) {\n \n var style0 = require(\"./PlateBox.vue?vue&type=style&index=0&id=54052148&scoped=true&lang=css&\")\nif (style0.__inject__) style0.__inject__(context)\n\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 injectStyles,\n \"54052148\",\n \"04526276\"\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_vm._ssrNode(\"<h1 data-v-93384c2c>Tell us about your vehicle</h1> \"),_c('ValidationObserver',{ref:\"form\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar invalid = ref.invalid;\nreturn [_c('form',{attrs:{\"action\":\"\"}},[_vm._l((_vm.offlineFormPlates),function(offlinePlate,index){return _c('offline-vehicle-form',{key:(index + \"_offline_vehicle_form\"),attrs:{\"plate\":offlinePlate,\"index\":index,\"wrapper-class\":{ 'another-vehicle-wrapper':index >0 }}})}),_vm._v(\" \"),(!_vm.isEmptyEstimates)?[(!_vm.showUnselectedPlates && _vm.unselectedPlates.length)?_c('div',{staticClass:\"add-new-vehicle\"},[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();_vm.showUnselectedPlates=true}}},[_c('svg',{attrs:{\"width\":\"20\",\"height\":\"20\",\"viewBox\":\"0 0 20 20\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\"}},[_c('rect',{attrs:{\"x\":\"0.5\",\"y\":\"0.5\",\"width\":\"19\",\"height\":\"19\",\"rx\":\"1.5\",\"fill\":\"white\",\"stroke\":\"#DCDCDC\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M10 6.37207V13.5156\",\"stroke\":\"#182D40\",\"stroke-linecap\":\"round\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M13.5723 9.94385L6.42869 9.94385\",\"stroke\":\"#182D40\",\"stroke-linecap\":\"round\"}})]),_vm._v(\"\\n Add another vehicle to this renewal\\n \")])]):_vm._e(),_vm._v(\" \"),(_vm.showUnselectedPlates)?_vm._l((_vm.unselectedPlates),function(unselectedPlat,index){return _c('plate-box',{key:(\"unselected_plate_\" + index),attrs:{\"plate\":unselectedPlat}})}):_vm._e()]:[_c('div',{staticClass:\"add-new-vehicle\"},[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.addMoreVehicles.apply(null, arguments)}}},[_c('svg',{attrs:{\"width\":\"20\",\"height\":\"20\",\"viewBox\":\"0 0 20 20\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\"}},[_c('rect',{attrs:{\"x\":\"0.5\",\"y\":\"0.5\",\"width\":\"19\",\"height\":\"19\",\"rx\":\"1.5\",\"fill\":\"white\",\"stroke\":\"#DCDCDC\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M10 6.37207V13.5156\",\"stroke\":\"#182D40\",\"stroke-linecap\":\"round\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M13.5723 9.94385L6.42869 9.94385\",\"stroke\":\"#182D40\",\"stroke-linecap\":\"round\"}})]),_vm._v(\"\\n Add another vehicle to this renewal\\n \")])])],_vm._v(\" \"),_c('div',{staticClass:\"form-button-wrapper\"},[_c('nuxt-link',{staticClass:\"btn-return\",attrs:{\"to\":_vm.isEmptyEstimates ? '/fl/step-3': '/fl/select-offline-plates'}},[_c('svg',{attrs:{\"width\":\"6\",\"height\":\"10\",\"viewBox\":\"0 0 6 10\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\"}},[_c('path',{attrs:{\"d\":\"M5 9L1 5L5 1\",\"stroke\":\"#182D40\",\"stroke-width\":\"1.2\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}})]),_vm._v(\"\\n Return to terms & conditions\\n \")]),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-form-green\",attrs:{\"type\":\"submit\",\"disabled\":!_vm.offlineFormPlates.length},on:{\"click\":function($event){$event.preventDefault();return _vm.frontendFormSubmitHandler.apply(null, arguments)}}},[_vm._v(\"\\n Continue\\n \"),_c('svg',{attrs:{\"width\":\"7\",\"height\":\"13\",\"viewBox\":\"0 0 7 13\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\"}},[_c('path',{attrs:{\"d\":\"M1 1.5L6 6.5L1 11.5\",\"stroke\":\"white\",\"stroke-width\":\"1.2\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}})])])],1)],2)]}}])})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:_vm.wrapperClass},[_vm._ssrNode(\"<div class=\\\"sub-title\\\" data-v-6d320034><div class=\\\"left\\\" data-v-6d320034><h5 data-v-6d320034>\"+_vm._ssrEscape(\"\\n Vehicle \"+_vm._s(_vm.index + 1)+\" of \"+_vm._s(_vm.offlineFormPlates.length)+\"\\n\\n \")+\"</h5> <p class=\\\"description\\\" data-v-6d320034>If you don't know your vehicle information - <a href=\\\"look-it-up.html\\\" data-v-6d320034>look it up.</a></p></div> <a href=\\\"#\\\" class=\\\"btn-cancel-vehicle\\\" data-v-6d320034><span data-v-6d320034>Cancel vehicle</span> <svg width=\\\"9\\\" height=\\\"10\\\" viewBox=\\\"0 0 9 10\\\" fill=\\\"none\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" data-v-6d320034><path d=\\\"M7.99903 1.56965L1 8.5M8 8.43035L1.00097 1.5\\\" stroke=\\\"#FF0000\\\" stroke-width=\\\"1.2\\\" stroke-linecap=\\\"round\\\" data-v-6d320034></path></svg></a></div> \"),(_vm.$store.state.emptyEstimates)?_c('input-field',{attrs:{\"rules\":\"required\",\"form\":_vm.form,\"field\":\"license_plate\",\"vName\":(\"license_plate_\" + _vm.index),\"placeholder\":\"License plate\"}}):_vm._e(),_vm._ssrNode(\" \"),(_vm.vehicleTypes)?_c('vreg-select',{attrs:{\"form\":_vm.form,\"header-text\":\"Vehicle type\",\"required\":\"\",\"fieldValue\":_vm.form.vehicle_type,\"used-value-key\":\"code\",\"vName\":(\"vehicle_type_\" + _vm.index),\"options\":_vm.vehicleTypes,\"field\":\"vehicle_type\"},on:{\"value-selected\":function (v){ return _vm.form.vehicle_type=v; }}},[_c('div',{attrs:{\"slot\":\"extra-field\"},slot:\"extra-field\"},[_c('transition',{attrs:{\"name\":\"slide\"}},[(_vm.form.vehicle_type==='largesuv')?_c('div',{staticClass:\"v-radio-wrapper\"},[_c('ValidationProvider',{attrs:{\"rules\":\"required\",\"name\":(\"vehicle_used_interstate_commerce_\" + _vm.index)},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('label',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.form.vehicle_used_interstate_commerce),expression:\"form.vehicle_used_interstate_commerce\"}],staticClass:\"radio-input\",attrs:{\"type\":\"radio\",\"name\":(\"vehicle_used_interstate_commerce_\" + _vm.index),\"value\":\"yes\"},domProps:{\"checked\":_vm._q(_vm.form.vehicle_used_interstate_commerce,\"yes\")},on:{\"change\":function($event){return _vm.$set(_vm.form, \"vehicle_used_interstate_commerce\", \"yes\")}}}),_vm._v(\" \"),_c('div',{staticClass:\"radio-box\"},[_c('div',{staticClass:\"outer\"},[_c('div',{staticClass:\"inner\"})]),_vm._v(\" \"),_c('p',[_vm._v(\"This vehicle is used for interstate commerce and I certify that this vehicle has a curently valid\\n certification of safety inspection.\")])])]),_vm._v(\" \"),_c('label',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.form.vehicle_used_interstate_commerce),expression:\"form.vehicle_used_interstate_commerce\"}],staticClass:\"radio-input\",attrs:{\"type\":\"radio\",\"name\":(\"vehicle_used_interstate_commerce_\" + _vm.index),\"value\":\"no\"},domProps:{\"checked\":_vm._q(_vm.form.vehicle_used_interstate_commerce,\"no\")},on:{\"change\":function($event){return _vm.$set(_vm.form, \"vehicle_used_interstate_commerce\", \"no\")}}}),_vm._v(\" \"),_c('div',{staticClass:\"radio-box\"},[_c('div',{staticClass:\"outer\"},[_c('div',{staticClass:\"inner\"})]),_vm._v(\" \"),_c('p',[_vm._v(\"This vehicle is not used for interstate commerce\")])])]),_vm._v(\" \"),_vm._l((_vm.$getFormInputErrors(errors,'vehicle_used_interstate_commerce',_vm.form)),function(err){return _c('span',{staticClass:\"validation-err-msg\",domProps:{\"innerHTML\":_vm._s(err)}})})]}}],null,false,265782396)})],1):_vm._e()])],1)]):_vm._e(),_vm._ssrNode(\" \"),_c('input-field',{attrs:{\"rules\":\"required\",\"form\":_vm.form,\"field\":\"license_make\",\"vName\":(\"vehicle_make_\" + _vm.index),\"placeholder\":\"Vehicle make \"}}),_vm._ssrNode(\" \"),_c('input-field',{attrs:{\"rules\":_vm.vehicleYearValidation,\"type\":\"number\",\"form\":_vm.form,\"vName\":(\"vehicle_year_\" + _vm.index),\"field\":\"vehicle_year\",\"placeholder\":\"Vehicle year \"}}),_vm._ssrNode(\" \"),_c('v-reg-vue-simple-suggest',{attrs:{\"mode\":\"input\",\"placeholder-text\":\"Insurance provider\",\"display-attribute\":\"value\",\"filterByQuery\":true,\"field\":\"insurance_provider\",\"rules\":_vm.insuranceValidation,\"maxSuggestions\":0,\"vName\":(\"insurance_provider_\" + _vm.index),\"list\":_vm.getInsuranceProviders},model:{value:(_vm.form.insurance_provider),callback:function ($$v) {_vm.$set(_vm.form, \"insurance_provider\", $$v)},expression:\"form.insurance_provider\"}}),_vm._ssrNode(\" \"),_c('input-field',{attrs:{\"rules\":_vm.insuranceValidation,\"form\":_vm.form,\"field\":\"insurance_policy_number\",\"vName\":(\"policy_number_\" + _vm.index),\"placeholder\":\"Policy number \"}})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\nimport InputField from \"@/components/Forms/InputField\";\nimport VregSelect from \"@/components/Forms/VregSelect\";\nimport insuranceProviders from '@/data/insurance_providers.json';\nimport vehicleTypes from '@/pricing/vehicle_types.json'\nimport VRegVueSimpleSuggest from \"@/components/Forms//VregSuggesstions/v-reg-vue-simple-suggest\";\n\nexport default {\n name: \"OfflineVehicleForm\",\n components: {VregSelect, InputField, VRegVueSimpleSuggest},\n props: {\n wrapperClass: {\n required: false\n },\n plate: {\n required: false\n },\n index: {\n required: true\n }\n },\n data() {\n return {\n vehicleTypes: Object.values(vehicleTypes),\n vehicleYearValidation: 'required|length:4',\n insuranceValidation: 'required',\n hideInsuranceFields: false,\n form: this.$form({\n index: this.index,\n vehicle_type: this.plate.vehicle_type || '',\n vehicle_year: this.plate.vehicle_year || '',\n license_make: this.plate.license_make || '',\n license_plate: this.plate.license_plate || '',\n expires_on: this.plate.expires_on || '',\n license_plate_label: this.plate.license_plate || '',\n prices: this.plate.prices || [],\n insurance_provider: this.plate.insurance_provider || '',\n insurance_policy_number: this.plate.insurance_policy_number || '',\n insurance_copy: this.plate.insurance_copy || null,\n vehicle_type_object: this.plate.vehicle_type_object || null,\n vehicle_used_interstate_commerce: this.plate.vehicle_used_interstate_commerce || null\n })\n }\n },\n mounted() {\n\n if (this.plate.vehicle_type_object) {\n this.handleVehicleTypeValidations(this.plate.vehicle_type_object)\n }\n },\n methods: {\n getInsuranceProviders(query) {\n let providers = [];\n\n insuranceProviders.forEach(insuranceP => {\n providers.push({\n label: insuranceP,\n value: insuranceP\n })\n })\n\n return providers;\n },\n handleVehicleTypeValidations(vehicleType) {\n\n this.vehicleYearValidation = 'required|length:4';\n\n\n if (!vehicleType.year_required) {\n this.vehicleYearValidation = '';\n }\n\n\n if (vehicleType.insurance_required) {\n this.insuranceValidation = 'required';\n } else {\n this.insuranceValidation = '';\n }\n\n if (vehicleType.code !== 'largesuv') {\n this.form.vehicle_used_interstate_commerce = null;\n }\n\n this.hideInsuranceFields = vehicleType.insurance_disabled;\n },\n unselectPlate() {\n this.$store.commit('REMOVE_OFFLINE_FORM_PLATE', this.plate);\n },\n storePlate() {\n this.$store.commit('SET_OFFLINE_FORM_PLATE', {...this.form.data()});\n\n }\n },\n computed: {\n offlineFormPlates() {\n return this.$store.getters.getOfflineFormPlates\n }\n },\n watch: {\n 'form.vehicle_year'() {\n if (this.form.vehicle_year.length > 4) {\n this.form.vehicle_year = this.form.vehicle_year.substr(0, 4);\n }\n },\n 'form.vehicle_type'(vehicleTypeCode) {\n\n if (!vehicleTypeCode) {\n return;\n }\n\n let vehicleTypeObject;\n\n for (let vType in this.vehicleTypes) {\n if (this.vehicleTypes[vType].code === vehicleTypeCode) {\n vehicleTypeObject = this.vehicleTypes[vType];\n }\n }\n\n this.handleVehicleTypeValidations(vehicleTypeObject);\n this.form.vehicle_type_object = vehicleTypeObject;\n\n }\n },\n beforeMount() {\n this.$eventBus.$on(`submitOfflineStep_${this.index}`, this.storePlate);\n },\n beforeDestroy() {\n this.$eventBus.$off(`submitOfflineStep_${this.index}`);\n }\n}\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js??ref--2-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OfflineVehicleForm.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js??ref--2-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OfflineVehicleForm.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./OfflineVehicleForm.vue?vue&type=template&id=6d320034&scoped=true&\"\nimport script from \"./OfflineVehicleForm.vue?vue&type=script&lang=js&\"\nexport * from \"./OfflineVehicleForm.vue?vue&type=script&lang=js&\"\nfunction injectStyles (context) {\n \n \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 injectStyles,\n \"6d320034\",\n \"0eeb9c4e\"\n \n)\n\nexport default component.exports","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nimport OfflineVehicleForm from \"@/components/States/FL/OfflineVehicleForm\";\nimport forms from \"@/mixins/forms\";\nimport PlateBox from \"@/components/Forms/PlateBox\";\n\nexport default {\n name: \"step-4\",\n middleware({store: {state}, redirect, route: {path}}) {\n\n if (state.offlineFormPlates.length === 0) {\n return redirect('/fl/step-1');\n }\n\n },\n mixins: [forms],\n components: {PlateBox, OfflineVehicleForm},\n data() {\n return {\n showUnselectedPlates: false\n }\n },\n methods: {\n submit() {\n\n let offlineFormPlates = this.offlineFormPlates;\n\n for (let index in offlineFormPlates) {\n this.$eventBus.$emit(`submitOfflineStep_${index}`);\n }\n\n let payload = {\n order_type: this.isEmptyEstimates ? 'unverified' : 'verified',\n storedPlates: offlineFormPlates\n }\n\n this.storeSavedSession('offline-step', '/fl/step-5', payload);\n },\n addMoreVehicles() {\n this.$store.commit('SET_OFFLINE_FORM_PLATE', {\n index: this.offlineFormPlates.length,\n 'license_plate': '',\n 'license_make': '',\n 'license_plate_label': '',\n offline_processing: true,\n 'prices': [{\n price: ''\n }],\n });\n }\n },\n computed: {\n offlineFormPlates() {\n return this.$store.getters.getOfflineFormPlates;\n },\n isEmptyEstimates() {\n return this.$store.state.emptyEstimates;\n },\n apiPlates() {\n return this.$store.getters.getAPIPlates;\n },\n unselectedPlates() {\n let offlinePlatesArray = [],\n apiPlates = this.apiPlates,\n storedPlatesNumbers = [];\n\n for (let storedPlate of this.offlineFormPlates) {\n storedPlatesNumbers.push(storedPlate.license_plate);\n }\n\n\n for (let plate in apiPlates) {\n if (apiPlates[plate].offline_processing && !storedPlatesNumbers.includes(apiPlates[plate].license_plate)) {\n offlinePlatesArray.push(apiPlates[plate]);\n }\n }\n\n return offlinePlatesArray;\n }\n },\n\n}\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js??ref--2-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./step-4.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js??ref--2-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./step-4.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./step-4.vue?vue&type=template&id=93384c2c&scoped=true&\"\nimport script from \"./step-4.vue?vue&type=script&lang=js&\"\nexport * from \"./step-4.vue?vue&type=script&lang=js&\"\nfunction injectStyles (context) {\n \n \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 injectStyles,\n \"93384c2c\",\n \"288fdd48\"\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ValidationProvider',{attrs:{\"rules\":_vm.rules,\"name\":_vm.vName || _vm.field},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('div',{staticClass:\"form-group with-animation\",class:_vm.formGroupClasses},[_vm._t(\"default\",function(){return [_c('p',{staticClass:\"placeholder-text\",class:{'required':_vm.isRequired}},[_vm._v(_vm._s(_vm.placeholder))]),_vm._v(\" \"),((_vm.type)==='checkbox')?_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.form[_vm.field]),expression:\"form[field]\"}],staticClass:\"form-control\",class:{'with-border':_vm.addWithBorderClass},attrs:{\"disabled\":_vm.$attrs['disabled'],\"name\":_vm.vName || _vm.field,\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.form[_vm.field])?_vm._i(_vm.form[_vm.field],null)>-1:(_vm.form[_vm.field])},on:{\"change\":function($event){var $$a=_vm.form[_vm.field],$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.form, _vm.field, $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.form, _vm.field, $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.form, _vm.field, $$c)}}}}):((_vm.type)==='radio')?_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.form[_vm.field]),expression:\"form[field]\"}],staticClass:\"form-control\",class:{'with-border':_vm.addWithBorderClass},attrs:{\"disabled\":_vm.$attrs['disabled'],\"name\":_vm.vName || _vm.field,\"type\":\"radio\"},domProps:{\"checked\":_vm._q(_vm.form[_vm.field],null)},on:{\"change\":function($event){return _vm.$set(_vm.form, _vm.field, null)}}}):_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.form[_vm.field]),expression:\"form[field]\"}],staticClass:\"form-control\",class:{'with-border':_vm.addWithBorderClass},attrs:{\"disabled\":_vm.$attrs['disabled'],\"name\":_vm.vName || _vm.field,\"type\":_vm.type},domProps:{\"value\":(_vm.form[_vm.field])},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.form, _vm.field, $event.target.value)}}})]}),_vm._v(\" \"),_vm._l((_vm.$getFormInputErrors(errors,_vm.field,_vm.form)),function(err){return (!_vm.errorMsgsOutOfWrapper)?_c('span',{staticClass:\"validation-err-msg\",domProps:{\"innerHTML\":_vm._s(err)}}):_vm._e()})],2),_vm._v(\" \"),_vm._l((_vm.$getFormInputErrors(errors,_vm.field,_vm.form)),function(err){return (_vm.errorMsgsOutOfWrapper)?_c('span',{staticClass:\"validation-err-msg\",domProps:{\"innerHTML\":_vm._s(err)}}):_vm._e()})]}}],null,true)})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n name: \"input-field\",\n props: {\n vName: {\n required: false,\n },\n type: {\n required: false,\n default: 'text'\n },\n rules: {\n required: false,\n type: String,\n default: ''\n },\n formGroupClass: {\n require: false,\n default: ''\n },\n form: {\n required: true\n },\n field: {\n required: true,\n type: String\n },\n placeholder: {\n required: false,\n default: ''\n },\n errorMsgsOutOfWrapper: {\n required: false,\n default: false\n }\n },\n data() {\n return {\n addWithBorderClass: false,\n formGroupClasses: []\n }\n },\n mounted() {\n\n this.formGroupClass.split(' ').forEach(c => {\n if (c.trim()) {\n this.formGroupClasses.push({[c]: true});\n }\n });\n\n this.focusOnInputIfValue();\n\n },\n methods: {\n focusOnInputIfValue() {\n\n if (!this.fieldValue) {\n return;\n }\n\n let hasFocusedClass = this.formGroupClasses.find(c => {\n if (c['focused']) {\n return c;\n }\n });\n\n if (hasFocusedClass) {\n return;\n }\n\n this.formGroupClasses.push({\n 'focused': true\n });\n },\n\n },\n computed: {\n isRequired() {\n return this.rules.indexOf('required') >= 0;\n },\n fieldValue() {\n return this.field.split('.').reduce((o, f) => o[f], this.form);\n }\n },\n watch: {\n fieldValue() {\n this.focusOnInputIfValue();\n }\n }\n}\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js??ref--2-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputField.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js??ref--2-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputField.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputField.vue?vue&type=template&id=7fbd73e8&scoped=true&\"\nimport script from \"./InputField.vue?vue&type=script&lang=js&\"\nexport * from \"./InputField.vue?vue&type=script&lang=js&\"\nfunction injectStyles (context) {\n \n var style0 = require(\"./InputField.vue?vue&type=style&index=0&id=7fbd73e8&scoped=true&lang=css&\")\nif (style0.__inject__) style0.__inject__(context)\n\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 injectStyles,\n \"7fbd73e8\",\n \"4951dfc0\"\n \n)\n\nexport default component.exports","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../node_modules/css-loader/dist/cjs.js??ref--3-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--3-oneOf-1-2!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputField.vue?vue&type=style&index=0&id=7fbd73e8&scoped=true&lang=css&\");\nif(content.__esModule) content = content.default;\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add CSS to SSR context\nvar add = require(\"!../../node_modules/vue-style-loader/lib/addStylesServer.js\").default\nmodule.exports.__inject__ = function (context) {\n add(\"f5598fc8\", content, true, context)\n};","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../node_modules/css-loader/dist/cjs.js??ref--3-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--3-oneOf-1-2!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormErrorMsg.vue?vue&type=style&index=0&id=4c656529&scoped=true&lang=css&\");\nif(content.__esModule) content = content.default;\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add CSS to SSR context\nvar add = require(\"!../../node_modules/vue-style-loader/lib/addStylesServer.js\").default\nmodule.exports.__inject__ = function (context) {\n add(\"3e06b350\", content, true, context)\n};","import InputField from \"@/components/Forms/InputField\";\nimport FormErrorMsg from \"@/components/Forms/FormErrorMsg\";\nimport {toPng} from 'html-to-image';\n\nexport default {\n components: {\n InputField, FormErrorMsg\n },\n data() {\n return {\n formErrorMsg: ''\n }\n },\n methods: {\n frontendFormSubmitHandler() {\n\n if (!this.$refs.form) {\n return this.submit();\n }\n\n this.$refs.form.validate().then(success => {\n //submit the form if not errors occurs\n if (success) {\n return this.submit();\n }\n\n let firstErrorFieldName = this.getFirstFieldErrorName();\n\n //focus on the input if found!\n if (firstErrorFieldName) {\n this.focusOnElement(firstErrorFieldName);\n }\n\n });\n\n },\n getFirstFieldErrorName() {\n let errorsKeys = Object.keys(this.$refs.form.errors),\n firstErrorFieldName;\n\n while (errorsKeys.length) {\n firstErrorFieldName = errorsKeys.shift();\n\n if (this.$refs.form.errors[firstErrorFieldName].length) {\n return firstErrorFieldName;\n }\n }\n },\n focusOnElement(fieldName) {\n let [el] = document.getElementsByName(fieldName);\n\n //try with id\n if (!el) {\n el = document.getElementById(fieldName);\n }\n\n el.scrollIntoView({behavior: 'smooth'});\n el.focus();\n },\n catchError(err) {\n if (err.response) {\n this.form.onFail(err.response.data.data);\n this.formErrorMsg = err.response.data.message;\n } else {\n this.formErrorMsg = err.message;\n }\n },\n storeSavedSession(step, redirectTo, payload) {\n let storedOrderId = this.$store.state.orderId;\n\n if (storedOrderId) {\n\n this.$axios.post(`orders/${storedOrderId}/${step}/store-saved-session`, {\n payload: payload\n });\n\n }\n\n if (redirectTo) {\n this.$router.push({path: redirectTo});\n }\n\n },\n saveElectronicSignature() {\n const {isEmpty, data} = this.$refs.signaturePad.saveSignature();\n\n if (isEmpty) {\n this.form.electronic_signature = '';\n } else {\n this.form.electronic_signature = data;\n }\n },\n clearElectronicSignature() {\n this.$refs.signaturePad.clearSignature();\n this.saveElectronicSignature();\n },\n async htmlToPNG() {\n const el = this.$refs.screenShotSection;\n this.form.signature_sc = await toPng(el);\n },\n async screenshot() {\n await this.htmlToPNG();\n this.ipVisible = false;\n },\n onBeginSignature() {\n },\n onEndSignature() {\n this.saveElectronicSignature();\n },\n }\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.errorMsg)?_c('p',{staticClass:\"form-error-msg\",domProps:{\"innerHTML\":_vm._s(_vm.errorMsg)}},[]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n\nexport default {\n name: \"FormErrorMsg\",\n props: {\n msg: {\n type: String\n }\n },\n data() {\n return {\n errorMsg: ''\n }\n },\n mounted() {\n this.setFormErrorMsg(this.msg);\n },\n methods: {\n setFormErrorMsg(msg) {\n this.errorMsg = msg;\n }\n },\n beforeMount() {\n this.$eventBus.$on('setFormErrorMsg', this.setFormErrorMsg)\n },\n watch: {\n msg() {\n this.setFormErrorMsg(this.msg);\n }\n }\n}\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js??ref--2-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormErrorMsg.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js??ref--2-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormErrorMsg.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FormErrorMsg.vue?vue&type=template&id=4c656529&scoped=true&\"\nimport script from \"./FormErrorMsg.vue?vue&type=script&lang=js&\"\nexport * from \"./FormErrorMsg.vue?vue&type=script&lang=js&\"\nfunction injectStyles (context) {\n \n var style0 = require(\"./FormErrorMsg.vue?vue&type=style&index=0&id=4c656529&scoped=true&lang=css&\")\nif (style0.__inject__) style0.__inject__(context)\n\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 injectStyles,\n \"4c656529\",\n \"1910dda6\"\n \n)\n\nexport default component.exports","export * from \"-!../../node_modules/vue-style-loader/index.js??ref--3-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--3-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--3-oneOf-1-2!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputField.vue?vue&type=style&index=0&id=7fbd73e8&scoped=true&lang=css&\"","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../node_modules/css-loader/dist/runtime/api.js\");\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".form-control[data-v-7fbd73e8]:disabled{background-color:unset!important}\", \"\"]);\n// Exports\nmodule.exports = ___CSS_LOADER_EXPORT___;\n","export * from \"-!../../node_modules/vue-style-loader/index.js??ref--3-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--3-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--3-oneOf-1-2!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormErrorMsg.vue?vue&type=style&index=0&id=4c656529&scoped=true&lang=css&\"","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../node_modules/css-loader/dist/runtime/api.js\");\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".form-error-msg[data-v-4c656529]{text-align:right;margin-top:10px;color:red;font-weight:700}\", \"\"]);\n// Exports\nmodule.exports = ___CSS_LOADER_EXPORT___;\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/dist/cjs.js??ref--3-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--3-oneOf-1-2!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./v-reg-vue-simple-suggest.vue?vue&type=style&index=0&lang=css&\");\nif(content.__esModule) content = content.default;\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add CSS to SSR context\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesServer.js\").default\nmodule.exports.__inject__ = function (context) {\n add(\"0611e616\", content, true, context)\n};","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ValidationProvider',{attrs:{\"rules\":\"required\",\"name\":_vm.vName || _vm.field},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.fieldValue),expression:\"fieldValue\"}],staticClass:\"vehicle-type-input hidden-input\",attrs:{\"type\":\"hidden\"},domProps:{\"value\":(_vm.fieldValue)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.fieldValue=$event.target.value}}}),_vm._v(\" \"),_c('div',{staticClass:\"vehicle-type-wrapper medium-height\",class:{'opened mh-50':_vm.headerOpened},attrs:{\"id\":_vm.vName}},[_c('div',{staticClass:\"vehicle-type-wrapper-menu\"},[_c('div',{staticClass:\"vehicle-type-header\",class:{'open':_vm.headerOpened,'selected':!!_vm.selectedValue},on:{\"click\":function($event){$event.preventDefault();return _vm.selectHeaderClicked.apply(null, arguments)}}},[_c('p',{staticClass:\"vehicle-type-title\",class:{'required':_vm.required},domProps:{\"innerHTML\":_vm._s(_vm.headerText)}}),_vm._v(\" \"),_c('h5',{staticClass:\"vehicle-type-name\",domProps:{\"innerHTML\":_vm._s(_vm.displayableName)}}),_vm._v(\" \"),_c('svg',{staticClass:\"arrow\",attrs:{\"width\":\"10\",\"height\":\"7\",\"viewBox\":\"0 0 10 7\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\"}},[_c('path',{attrs:{\"d\":\"M6.20003 6.56466C5.80005 7.04961 5.0571 7.04961 4.65712 6.56466L1.21085 2.38628C0.672897 1.73404 1.13684 0.749999 1.98231 0.749999L8.87484 0.75C9.72031 0.75 10.1843 1.73404 9.6463 2.38628L6.20003 6.56466Z\",\"fill\":\"#182D40\"}})])]),_vm._v(\" \"),_c('div',{staticClass:\"vehicle-type-options\",class:_vm.headerOpened ? 'd-block':'d-none'},_vm._l((_vm.options),function(option,index){return _c('div',{key:((option[_vm.usedValueKey]) + \"_\" + index),staticClass:\"vehicle-type-row\",on:{\"click\":function($event){$event.preventDefault();return _vm.optionClicked(option)}}},[_c('h6',[_vm._v(_vm._s(option.label))]),_vm._v(\" \"),(option.tooltip)?_c('p',{staticClass:\"small-text\",domProps:{\"innerHTML\":_vm._s(option.tooltip)}}):_vm._e()])}),0)]),_vm._v(\" \"),_vm._t(\"extra-field\")],2),_vm._v(\" \"),_vm._l((_vm.$getFormInputErrors(errors,_vm.field,_vm.form)),function(err){return _c('span',{staticClass:\"validation-err-msg\",domProps:{\"innerHTML\":_vm._s(err)}})})]}}],null,true)})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n name: \"VregSelect\",\n props: {\n vName: {\n required: false\n },\n required: {\n type: Boolean,\n default: false\n },\n fieldValue: {\n required: false\n },\n options: {\n required: true\n },\n headerText: {\n required: false,\n default: 'Select'\n },\n field: {},\n form: {\n default: () => {\n return {}\n }\n },\n usedValueKey: {\n required: false,\n default: 'value'\n }\n },\n data() {\n return {\n headerOpened: false,\n selectedValue: '',\n displayableName: ''\n }\n },\n mounted() {\n this.setSelectedValue();\n },\n methods: {\n setSelectedValue() {\n\n this.selectedValue = this.fieldValue || '';\n if (this.selectedValue) {\n this.setSelectedOption();\n }\n\n },\n setSelectedOption() {\n let option = this.options\n .find(option => option[this.usedValueKey].toLowerCase() === this.selectedValue.toLowerCase());\n\n if (option) {\n this.setSelectedValueAndDisplayableName(option);\n }\n\n },\n selectHeaderClicked() {\n this.headerOpened = !this.headerOpened;\n },\n optionClicked(option) {\n this.setSelectedValueAndDisplayableName(option);\n this.headerOpened = false;\n },\n\n setSelectedValueAndDisplayableName(option) {\n this.selectedValue = option[this.usedValueKey];\n this.displayableName = option.label;\n }\n },\n\n watch: {\n fieldValue() {\n if (this.fieldValue) {\n this.setSelectedValue();\n }\n },\n selectedValue: {\n handler() {\n\n this.$emit('value-selected', this.selectedValue);\n },\n immediate: true\n }\n }\n}\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js??ref--2-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VregSelect.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js??ref--2-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VregSelect.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./VregSelect.vue?vue&type=template&id=5bb083e6&scoped=true&\"\nimport script from \"./VregSelect.vue?vue&type=script&lang=js&\"\nexport * from \"./VregSelect.vue?vue&type=script&lang=js&\"\nfunction injectStyles (context) {\n \n \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 injectStyles,\n \"5bb083e6\",\n \"bb0edb2c\"\n \n)\n\nexport default component.exports","export * from \"-!../../../node_modules/vue-style-loader/index.js??ref--3-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--3-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--3-oneOf-1-2!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./v-reg-vue-simple-suggest.vue?vue&type=style&index=0&lang=css&\"","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/api.js\");\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".vue-simple-suggest>ul{list-style:none;margin:0;padding:0}.vue-simple-suggest.designed{position:relative}.vue-simple-suggest.designed,.vue-simple-suggest.designed *{box-sizing:border-box}.vue-simple-suggest.designed .input-wrapper input{display:block;width:100%;border:1px solid #cde;border-radius:3px;color:#000;background:#fff;outline:none;transition:all .1s;transition-delay:.05s}.vue-simple-suggest.designed.focus .input-wrapper input{border:1px solid #aaa}.vue-simple-suggest.designed .suggestions{position:absolute;left:0;right:0;top:100%;top:calc(100% + 5px);border-radius:3px;border:1px solid #aaa;background-color:#fff;opacity:1;z-index:1000;max-height:344px;overflow-y:scroll}.vue-simple-suggest.designed .suggestions .suggest-item{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vue-simple-suggest.designed .suggestions .misc-item,.vue-simple-suggest.designed .suggestions .suggest-item{padding:5px 10px}.vue-simple-suggest.designed .suggestions .suggest-item.hover{background-color:#2874d5!important;color:#fff!important}.vue-simple-suggest.designed .suggestions .suggest-item.selected{background-color:#2832d5;color:#fff}\", \"\"]);\n// Exports\nmodule.exports = ___CSS_LOADER_EXPORT___;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"vue-simple-suggest\",class:[_vm.styles.vueSimpleSuggest, { designed: !_vm.destyled, focus: _vm.isInFocus }],on:{\"keydown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"tab\",9,$event.key,\"Tab\")){ return null; }_vm.isTabbed = true}}},[_c('ValidationProvider',{attrs:{\"rules\":_vm.rules,\"name\":_vm.vName || _vm.field},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('div',{ref:\"inputSlot\",staticClass:\"input-wrapper form-group with-animation\",class:[_vm.styles.inputWrapper,{'focused':_vm.addFocusedClass}],attrs:{\"role\":\"combobox\",\"aria-haspopup\":\"listbox\",\"aria-owns\":_vm.listId,\"aria-expanded\":!!_vm.listShown && !_vm.removeList ? 'true' : 'false'}},[_c('p',{staticClass:\"placeholder-text\",class:{'required':_vm.isRequired}},[_vm._v(_vm._s(_vm.placeholderText))]),_vm._v(\" \"),_vm._t(\"default\",function(){return [_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.text),expression:\"text\"}],staticClass:\"default-input form-control v-reg-select-input\",class:_vm.styles.defaultInput,attrs:{\"name\":_vm.vName || _vm.field},domProps:{\"value\":(_vm.text)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.text=$event.target.value}}})]}),_vm._v(\" \"),_vm._l((_vm.$getFormInputErrors(errors,_vm.field)),function(err){return _c('span',{staticClass:\"validation-err-msg\",domProps:{\"innerHTML\":_vm._s(err)}})})],2)]}}],null,true)}),_vm._ssrNode(\" \"),_c('transition',{attrs:{\"name\":\"vue-simple-suggest\"}},[(!!_vm.listShown && !_vm.removeList)?_c('ul',{staticClass:\"suggestions\",class:_vm.styles.suggestions,attrs:{\"id\":_vm.listId,\"role\":\"listbox\",\"aria-labelledby\":_vm.listId}},[(!!this.$scopedSlots['misc-item-above'])?_c('li',[_vm._t(\"misc-item-above\",null,{\"suggestions\":_vm.suggestions,\"query\":_vm.text})],2):_vm._e(),_vm._v(\" \"),_vm._l((_vm.suggestions),function(suggestion,index){return _c('li',{key:_vm.getId(suggestion, index),staticClass:\"suggest-item\",class:[\n _vm.styles.suggestItem,{\n selected: _vm.isSelected(suggestion),\n hover: _vm.isHovered(suggestion)\n }],attrs:{\"role\":\"option\",\"aria-selected\":(_vm.isHovered(suggestion) || _vm.isSelected(suggestion)) ? 'true' : 'false',\"id\":_vm.getId(suggestion, index)},on:{\"mouseenter\":function($event){return _vm.hover(suggestion, $event.target)},\"mouseleave\":function($event){return _vm.hover(undefined)},\"click\":function($event){return _vm.suggestionClick(suggestion, $event)}}},[_vm._t(\"suggestion-item\",function(){return [_c('span',[_vm._v(_vm._s(_vm.displayProperty(suggestion)))])]},{\"autocomplete\":function () { return _vm.autocompleteText(suggestion); },\"suggestion\":suggestion,\"query\":_vm.text})],2)}),_vm._v(\" \"),(!!this.$scopedSlots['misc-item-below'])?_c('li',[_vm._t(\"misc-item-below\",null,{\"suggestions\":_vm.suggestions,\"query\":_vm.text})],2):_vm._e()],2):_vm._e()])],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export const defaultControls = {\n selectionUp: [38],\n selectionDown: [40],\n select: [13],\n hideList: [27],\n showList: [40],\n autocomplete: [32, 13]\n}\n\nexport const modes = {\n input: String,\n select: Object,\n}\n\nexport function fromPath(obj, path) {\n return path.split('.').reduce((o, i) => (o === Object(o) ? o[i] : o), obj)\n}\n\nexport function hasKeyCode(arr, event) {\n return hasKeyCodeByCode(arr, event.keyCode)\n}\n\nexport function hasKeyCodeByCode(arr, keyCode) {\n if (arr.length <= 0) return false\n\n const has = arr => arr.some(code => code === keyCode)\n if (Array.isArray(arr[0])) {\n return arr.some(array => has(array))\n } else {\n return has(arr)\n }\n}\n","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nimport {\n defaultControls,\n modes,\n fromPath,\n hasKeyCodeByCode,\n hasKeyCode\n} from './misc'\n\nexport default {\n name: 'vue-simple-suggest',\n inheritAttrs: false,\n model: {\n prop: 'value',\n event: 'input'\n },\n props: {\n vName: {\n required: false\n },\n field: {},\n rules: {},\n placeholderText: {},\n useRandomUnique: {\n type: Boolean,\n default: true\n },\n styles: {\n type: Object,\n default: () => ({})\n },\n controls: {\n type: Object,\n default: () => defaultControls\n },\n minLength: {\n type: Number,\n default: 1\n },\n maxSuggestions: {\n type: Number,\n default: 10\n },\n displayAttribute: {\n type: String,\n default: 'title'\n },\n valueAttribute: {\n type: String,\n default: 'id'\n },\n list: {\n type: [Function, Array],\n default: () => []\n },\n removeList: {\n type: Boolean,\n default: false\n },\n destyled: {\n type: Boolean,\n default: false\n },\n filterByQuery: {\n type: Boolean,\n default: false\n },\n filter: {\n type: Function,\n default(el, value) {\n return value ? ~this.displayProperty(el).toLowerCase().indexOf(value.toLowerCase()) : true\n }\n },\n debounce: {\n type: Number,\n default: 0\n },\n nullableSelect: {\n type: Boolean,\n default: false\n },\n value: {},\n mode: {\n type: String,\n default: 'input',\n validator: value => !!~Object.keys(modes).indexOf(value.toLowerCase())\n },\n preventHide: {\n type: Boolean,\n default: false\n }\n },\n // Handle run-time mode changes (now working):\n watch: {\n mode: {\n handler(current, old) {\n this.constructor.options.model.event = current\n\n // Can be null if the component is root\n this.$parent && this.$parent.$forceUpdate()\n\n this.$nextTick(() => {\n if (current === 'input') {\n this.$emit('input', this.text)\n } else {\n this.$emit('select', this.selected)\n }\n })\n },\n immediate: true\n },\n value: {\n handler(current) {\n\n if (typeof current !== 'string') {\n current = this.displayProperty(current)\n }\n\n // this.updateTextOutside(current)\n },\n immediate: true\n },\n isInFocus() {\n this.focusOnInputIfValue();\n }\n },\n //\n data() {\n return {\n addFocusedClass: false,\n selected: null,\n hovered: null,\n suggestions: [],\n listShown: false,\n inputElement: null,\n canSend: true,\n timeoutInstance: null,\n text: this.value,\n isPlainSuggestion: false,\n isClicking: false,\n isInFocus: false,\n isFalseFocus: false,\n isTabbed: false,\n controlScheme: {},\n listId: `${this._uid}-suggestions`\n }\n },\n computed: {\n isRequired() {\n return this.rules.indexOf('required') >= 0;\n },\n listIsRequest() {\n return typeof this.list === 'function'\n },\n inputIsComponent() {\n return (this.$slots.default && this.$slots.default.length > 0) && !!this.$slots.default[0].componentInstance\n },\n input() {\n return this.inputIsComponent ? this.$slots.default[0].componentInstance : this.inputElement\n },\n on() {\n return this.inputIsComponent ? '$on' : 'addEventListener'\n },\n off() {\n return this.inputIsComponent ? '$off' : 'removeEventListener'\n },\n hoveredIndex() {\n for (let i = 0; i < this.suggestions.length; i++) {\n const el = this.suggestions[i];\n if (this.hovered && (this.valueProperty(this.hovered) == this.valueProperty(el))) {\n return i;\n }\n }\n return -1;\n },\n textLength() {\n return (this.text && this.text.length) || (this.inputElement.value.length) || 0\n },\n isSelectedUpToDate() {\n return !!this.selected && this.displayProperty(this.selected) === this.text\n }\n },\n created() {\n this.controlScheme = Object.assign({}, defaultControls, this.controls)\n },\n async mounted() {\n await this.$slots.default;\n\n this.$nextTick(() => {\n this.inputElement = this.$refs['inputSlot'].querySelector('input')\n\n if (this.inputElement) {\n this.setInputAriaAttributes()\n this.prepareEventHandlers(true)\n } else {\n console.error('No input element found')\n }\n\n this.focusOnInputIfValue();\n })\n },\n beforeDestroy() {\n this.prepareEventHandlers(false)\n },\n methods: {\n focusOnInputIfValue() {\n if (this.isInFocus) {\n return this.addFocusedClass = true;\n }\n\n if (this.value || this.text) {\n return this.addFocusedClass = true;\n }\n\n return this.addFocusedClass = false;\n },\n\n isEqual(suggestion, item) {\n return item && (this.valueProperty(suggestion) == this.valueProperty(item))\n },\n isSelected(suggestion) {\n return this.isEqual(suggestion, this.selected)\n },\n isHovered(suggestion) {\n return this.isEqual(suggestion, this.hovered)\n },\n setInputAriaAttributes() {\n this.inputElement.setAttribute('aria-activedescendant', '')\n this.inputElement.setAttribute('aria-autocomplete', 'list')\n this.inputElement.setAttribute('aria-controls', this.listId)\n },\n prepareEventHandlers(enable) {\n const binder = this[enable ? 'on' : 'off']\n const keyEventsList = {\n click: this.showSuggestions,\n keydown: this.onKeyDown,\n keyup: this.onListKeyUp\n }\n const eventsList = Object.assign({\n blur: this.onBlur,\n focus: this.onFocus,\n input: this.onInput,\n }, keyEventsList)\n\n for (const event in eventsList) {\n this.input[binder](event, eventsList[event])\n }\n\n const listenerBinder = enable ? 'addEventListener' : 'removeEventListener'\n\n for (const event in keyEventsList) {\n this.inputElement[listenerBinder](event, keyEventsList[event])\n }\n },\n isScopedSlotEmpty(slot) {\n if (slot) {\n const vNode = slot(this)\n return !(Array.isArray(vNode) || (vNode && (vNode.tag || vNode.context || vNode.text || vNode.children)))\n }\n\n return true\n },\n miscSlotsAreEmpty() {\n const slots = ['misc-item-above', 'misc-item-below'].map(s => this.$scopedSlots[s])\n\n if (slots.every(s => !!s)) {\n return slots.every(this.isScopedSlotEmpty.bind(this))\n }\n\n const slot = slots.find(s => !!s)\n\n return this.isScopedSlotEmpty.call(this, slot)\n },\n getPropertyByAttribute(obj, attr) {\n return this.isPlainSuggestion ? obj : typeof obj !== undefined ? fromPath(obj, attr) : obj\n },\n displayProperty(obj) {\n if (this.isPlainSuggestion) {\n return obj\n }\n\n let display = this.getPropertyByAttribute(obj, this.displayAttribute);\n\n if (typeof display === 'undefined') {\n display = JSON.stringify(obj)\n\n if (process && ~process.env.NODE_ENV.indexOf('dev')) {\n console.warn('[vue-simple-suggest]: Please, provide `display-attribute` as a key or a dotted path for a property from your object.')\n }\n }\n\n return String(display || '')\n },\n valueProperty(obj) {\n if (this.isPlainSuggestion || this.useRandomUnique) {\n return obj\n }\n\n const value = this.getPropertyByAttribute(obj, this.valueAttribute);\n\n if (typeof value === 'undefined') {\n console.error(\n `[vue-simple-suggest]: Please, check if you passed 'value-attribute' (default is 'id') and 'display-attribute' (default is 'title') props correctly.\n Your list objects should always contain a unique identifier.`\n )\n }\n\n return value\n },\n\n autocompleteText(suggestion) {\n this.setText(this.displayProperty(suggestion));\n },\n setText(text) {\n this.$nextTick(() => {\n this.inputElement.value = text\n this.text = text\n this.$emit('input', text)\n })\n },\n select(item) {\n if (this.selected !== item || (this.nullableSelect && !item)) {\n this.selected = item\n this.$emit('select', item)\n\n if (item) {\n this.autocompleteText(item)\n }\n }\n\n this.hover(null)\n },\n hover(item, elem) {\n const elemId = !!item ? this.getId(item, this.hoveredIndex) : ''\n\n this.inputElement.setAttribute('aria-activedescendant', elemId)\n\n if (item && (item !== this.hovered)) {\n this.$emit('hover', item, elem)\n }\n\n this.hovered = item\n },\n hideList() {\n if (this.listShown) {\n this.listShown = false\n this.hover(null)\n this.$emit('hide-list')\n }\n },\n showList() {\n if (!this.listShown) {\n if (this.textLength >= this.minLength\n && ((this.suggestions.length > 0) || !this.miscSlotsAreEmpty())\n ) {\n this.listShown = true\n this.$emit('show-list')\n }\n }\n },\n async showSuggestions() {\n if (this.suggestions.length === 0 && this.minLength <= this.textLength) {\n // try show misc slots while researching\n this.showList()\n await this.research()\n }\n\n this.showList()\n },\n onShowList(e) {\n if (hasKeyCode(this.controlScheme.showList, e)) {\n this.showSuggestions()\n }\n },\n moveSelection(e) {\n if (!this.listShown || !this.suggestions.length) return\n if (hasKeyCode([this.controlScheme.selectionUp, this.controlScheme.selectionDown], e)) {\n e.preventDefault()\n\n const isMovingDown = hasKeyCode(this.controlScheme.selectionDown, e)\n const direction = isMovingDown * 2 - 1\n const listEdge = isMovingDown ? 0 : this.suggestions.length - 1\n const hoversBetweenEdges = isMovingDown ? this.hoveredIndex < this.suggestions.length - 1 : this.hoveredIndex > 0\n\n let item = null\n\n if (!this.hovered) {\n item = this.selected || this.suggestions[listEdge]\n } else if (hoversBetweenEdges) {\n item = this.suggestions[this.hoveredIndex + direction]\n } else /* if hovers on edge */ {\n item = this.suggestions[listEdge]\n }\n this.hover(item)\n }\n },\n onKeyDown(e) {\n const select = this.controlScheme.select,\n hideList = this.controlScheme.hideList\n\n // prevent form submit on keydown if Enter key registered in the keyup list\n if (e.key === 'Enter' && this.listShown && hasKeyCodeByCode([select, hideList], 13)) {\n e.preventDefault()\n }\n\n if (e.key === 'Tab' && this.hovered) {\n this.select(this.hovered)\n }\n\n this.onShowList(e)\n this.moveSelection(e);\n this.onAutocomplete(e);\n },\n onListKeyUp(e) {\n const select = this.controlScheme.select,\n hideList = this.controlScheme.hideList\n\n if (this.listShown && hasKeyCode([select, hideList], e)) {\n e.preventDefault()\n if (hasKeyCode(select, e)) {\n this.select(this.hovered)\n }\n\n this.hideList()\n }\n },\n onAutocomplete(e) {\n if (hasKeyCode(this.controlScheme.autocomplete, e)\n && (e.ctrlKey || e.shiftKey)\n && (this.suggestions.length > 0 && this.suggestions[0])\n && (this.listShown)\n ) {\n e.preventDefault()\n this.hover(this.suggestions[0])\n this.autocompleteText(this.suggestions[0])\n }\n },\n suggestionClick(suggestion, e) {\n this.$emit('suggestion-click', suggestion, e)\n this.select(suggestion)\n\n if (!this.preventHide) this.hideList()\n\n if (this.isClicking) {\n setTimeout(() => {\n this.inputElement.focus()\n\n /// Ensure, that all needed flags are off before finishing the click.\n this.isClicking = false\n }, 0)\n }\n },\n onBlur(e) {\n if (this.isInFocus) {\n\n /// Clicking starts here, because input's blur occurs before the suggestionClick\n /// and exactly when the user clicks the mouse button or taps the screen.\n this.isClicking = this.hovered && !this.isTabbed\n\n if (!this.isClicking) {\n this.isInFocus = false\n this.hideList()\n\n this.$emit('blur', e)\n } else if (e && e.isTrusted && !this.isTabbed) {\n this.isFalseFocus = true\n }\n } else {\n this.inputElement.blur()\n console.error(\n `This should never happen!\n If you encountered this error, please make sure that your input component emits 'focus' events properly.\n For more info see https://github.com/KazanExpress/vue-simple-suggest#custom-input.\n\n If your 'vue-simple-suggest' setup does not include a custom input component - please,\n report to https://github.com/KazanExpress/vue-simple-suggest/issues/new`\n )\n }\n\n this.isTabbed = false\n },\n onFocus(e) {\n this.isInFocus = true\n\n // Only emit, if it was a native input focus\n if (e && !this.isFalseFocus) {\n this.$emit('focus', e)\n }\n\n // Show list only if the item has not been clicked (isFalseFocus indicates that click was made earlier)\n if (!this.isClicking && !this.isFalseFocus) {\n this.showSuggestions()\n }\n\n this.isFalseFocus = false\n },\n onInput(inputEvent) {\n const value = !inputEvent.target ? inputEvent : inputEvent.target.value\n\n this.updateTextOutside(value)\n this.$emit('input', value)\n },\n updateTextOutside(value) {\n\n //to determined get new list or keep same list.\n // if (this.text === value) {\n // return\n // }\n\n this.text = value\n if (this.hovered) this.hover(null)\n\n if (this.text.length < this.minLength) {\n this.hideList()\n return;\n }\n\n if (this.debounce) {\n clearTimeout(this.timeoutInstance)\n this.timeoutInstance = setTimeout(this.research, this.debounce)\n } else {\n this.research()\n }\n },\n async research() {\n try {\n\n\n if (this.canSend) {\n this.canSend = false\n // @TODO: fix when promises will be cancelable (never :D)\n let textBeforeRequest = this.text\n let newList = await this.getSuggestions(this.text)\n\n if (textBeforeRequest === this.text) {\n this.$set(this, 'suggestions', newList)\n }\n }\n } catch (e) {\n this.clearSuggestions()\n throw e\n } finally {\n this.canSend = true;\n\n if ((this.suggestions.length === 0) && this.miscSlotsAreEmpty()) {\n this.hideList()\n } else if (this.isInFocus) {\n this.showList()\n }\n\n return this.suggestions\n }\n },\n async getSuggestions(value) {\n value = value || '';\n\n if (value.length < this.minLength) {\n return []\n }\n\n this.selected = null\n\n // Start request if can\n if (this.listIsRequest) {\n this.$emit('request-start', value)\n }\n\n let nextIsPlainSuggestion = false\n let result = []\n try {\n if (this.listIsRequest) {\n result = (await this.list(value)) || []\n } else {\n result = this.list\n }\n\n // IFF the result is not an array (just in case!) - make it an array\n if (!Array.isArray(result)) {\n result = [result]\n }\n\n nextIsPlainSuggestion = (typeof result[0] !== 'object' && typeof result[0] !== 'undefined') || Array.isArray(result[0])\n\n if (this.filterByQuery) {\n result = result.filter((el) => this.filter(el, value))\n }\n\n if (this.listIsRequest) {\n this.$emit('request-done', result)\n }\n } catch (e) {\n if (this.listIsRequest) {\n this.$emit('request-failed', e)\n } else {\n throw e\n }\n } finally {\n if (this.maxSuggestions) {\n result.splice(this.maxSuggestions)\n }\n\n this.isPlainSuggestion = nextIsPlainSuggestion\n return result\n }\n },\n clearSuggestions() {\n this.suggestions.splice(0)\n },\n getId(value, i) {\n let id;\n\n if (this.useRandomUnique || this.this.isPlainSuggestion) {\n id = i;\n } else {\n id = this.valueProperty(value) || i;\n }\n\n return `${this.listId}-suggestion-${id}`\n }\n }\n}\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js??ref--2-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./v-reg-vue-simple-suggest.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js??ref--2-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./v-reg-vue-simple-suggest.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./v-reg-vue-simple-suggest.vue?vue&type=template&id=0d2d8e89&\"\nimport script from \"./v-reg-vue-simple-suggest.vue?vue&type=script&lang=js&\"\nexport * from \"./v-reg-vue-simple-suggest.vue?vue&type=script&lang=js&\"\nfunction injectStyles (context) {\n \n var style0 = require(\"./v-reg-vue-simple-suggest.vue?vue&type=style&index=0&lang=css&\")\nif (style0.__inject__) style0.__inject__(context)\n\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 injectStyles,\n null,\n \"65999c95\"\n \n)\n\nexport default component.exports","var map = {\n\t\"./AZ/VehicleInfoHeader\": [\n\t\t111,\n\t\t52\n\t],\n\t\"./FL/VehicleInfoHeader\": [\n\t\t112,\n\t\t57\n\t],\n\t\"./PA/VehicleInfoHeader\": [\n\t\t113,\n\t\t59\n\t],\n\t\"./WI/VehicleInfoHeader\": [\n\t\t114,\n\t\t53\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn __webpack_require__.e(ids[1]).then(function() {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = 97;\nmodule.exports = webpackAsyncContext;"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACXA;AAAA;AAAA;AAAA;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACNA;AACA;AACA;;;;;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;;ACpCA;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;ACvBA;AACA;AACA;AACA;AACA;;;;;ACJA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;;AChHA;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;;ACtEA;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;ACrBA;AACA;AACA;AACA;AACA;;;;;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;;AC5BA;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACXA;AAAA;AAAA;AAAA;AAAA;AAsBA;AAOA;AAuBA;;;;;;;;;;ACpDA;AACA;AACA;;;;;ACFA;AACA;AACA;AACA;AAEA;;ACLA;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACvBA;AAAA;AAAA;AAAA;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACNA;AAAA;AAAA;AAAA;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;ACXA;AACA;AACA;AACA;AACA;;;;;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;;AChDA;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACrBA;AAAA;AAAA;AAAA;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;ACRA;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AA4FA;AAMA;AAoBA;AAQA;AAgLA;AA4DA;AAsCA;AA+CA;AAQA;AACA;AAcA;AACA;AACA;AACA;AACA;AAUA;AAKA;AAeA;AACA;AACA;AAEA;AAsBA;AAgCA;AAcA;;AC1oBA;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;A","sourceRoot":""}