{"version":3,"sources":["webpack:///./src/components/UI/Loader.vue","webpack:///./src/components/UI/Loader.vue?baee","webpack:///./src/components/UI/Loader.vue?8596","webpack:///./src/components/UI/Loader.vue?9492","webpack:///./src/components/Forms/Form.vue?bbd2","webpack:///./src/components/Forms/Section.vue?f950","webpack:///./src/components/Forms/ErrorList.vue","webpack:///./src/components/Forms/ErrorList.vue?f939","webpack:///./src/components/Forms/ErrorList.vue?db83","webpack:///./src/components/Forms/ErrorList.vue?d642","webpack:///./src/components/Forms/Form.vue","webpack:///./src/components/Forms/Section.vue","webpack:///./src/components/Forms/FieldTypes/FormDateField.vue","webpack:///./src/components/Forms/FieldTypes/FormDateField.vue?0aba","webpack:///./src/components/Forms/FieldTypes/FormDateField.vue?8b1f","webpack:///./src/components/Forms/FieldTypes/FormDateField.vue?d35a","webpack:///./src/components/Forms/FieldTypes/FormDropdownField.vue","webpack:///./src/components/Forms/FieldTypes/FormDropdownField.vue?3451","webpack:///./src/components/Forms/FieldTypes/FormDropdownField.vue?05ba","webpack:///./src/components/Forms/FieldTypes/FormDropdownField.vue?0b6a","webpack:///./src/components/Forms/FieldTypes/FormEmailField.vue","webpack:///./src/components/Forms/FieldTypes/FormEmailField.vue?97e4","webpack:///./src/components/Forms/FieldTypes/FormEmailField.vue?09d9","webpack:///./src/components/Forms/FieldTypes/FormEmailField.vue?ceed","webpack:///./src/components/Forms/FieldTypes/FormStaticTextField.vue","webpack:///./src/components/Forms/FieldTypes/FormStaticTextField.vue?1ef5","webpack:///./src/components/Forms/FieldTypes/FormStaticTextField.vue?ee59","webpack:///./src/components/Forms/FieldTypes/FormStaticTextField.vue?b012","webpack:///./src/components/Forms/FieldTypes/FormTelField.vue","webpack:///./src/components/Forms/FieldTypes/FormTelField.vue?4dc4","webpack:///./src/components/Forms/FieldTypes/FormTelField.vue?0c88","webpack:///./src/components/Forms/FieldTypes/FormTelField.vue?950e","webpack:///./src/components/Forms/FieldTypes/FormTextareaField.vue","webpack:///./src/components/Forms/FieldTypes/FormTextareaField.vue?76e3","webpack:///./src/components/Forms/FieldTypes/FormTextareaField.vue?c42d","webpack:///./src/components/Forms/FieldTypes/FormTextareaField.vue?231f","webpack:///./src/components/Forms/FieldTypes/FormTextField.vue","webpack:///./src/components/Forms/FieldTypes/FormTextField.vue?2d94","webpack:///./src/components/Forms/FieldTypes/FormTextField.vue?d195","webpack:///./src/components/Forms/FieldTypes/FormTextField.vue?3d1b","webpack:///./src/components/Forms/Section.vue?73e9","webpack:///./src/components/Forms/Section.vue?eb67","webpack:///./src/components/Forms/Section.vue?76ac","webpack:///./src/components/Forms/Form.vue?17d1","webpack:///./src/components/Forms/Form.vue?a166","webpack:///./src/components/Forms/Form.vue?fe66","webpack:///./src/components/Forms/ErrorList.vue?8140","webpack:///./src/components/UI/Loader.vue?fa85","webpack:///./src/components/Forms/FieldTypes/FormDropdownField.vue?660c"],"names":["render","_vm","this","_c","_self","_setupProxy","directives","name","rawName","value","loading","expression","staticClass","staticRenderFns","Loader","Vue","__decorate","Prop","Component","component","_l","errors","error","key","Key","SubfieldKey","_v","_s","Message","ErrorList","style","fieldBg","borderColour","attrs","hasAutosave","on","loadAutosave","autosaveDate","_e","errored","definition","submitted","domProps","Options","SubmittedText","Sections","section","SectionId","ref","refInFor","ctx","type","handleFieldInput","class","submitButtonClass","submitButtonColour","submitButtonBackgroundColour","submitForm","SubmitButtonText","def","CSSClasses","join","IsSegregated","DisplayTitle","Title","VerticalAlignment","FormFields","field","FieldId","LayoutOptions","ColumnSpan","TypeName","_b","tag","handleInput","getProps","hasErrors","elemId","Required","Placeholder","$event","target","composing","Label","FormDateField","constructor","length","getValue","Value","setValue","$emit","components","$$selectedVal","Array","prototype","filter","call","options","o","selected","map","val","_value","multiple","option","FormTextField","MaxLength","MinLength","FormEmailField","CSSStyles","Text","FormStaticTextField","FormTelField","FormTextareaField","FormGraphicalPDFField","FormVideoUploadField","FormMultiFileUploaderField","Section","formContext","formType","e","fieldDef","collectData","$refs","setData","values","forEach","find","v","undefined","required","FormDropdownField","Form","context","autosaveManager","ServiceManager","Require","ServiceType","FormAutosave","submitPercent","recaptchaService","ReCaptcha","onProgress","progress","total","Math","round","console","log","mounted","Items","ClientWebsiteId","Config","Website","Id","API","Forms","GetForm","then","enableAutosave","state","GetState","catch","sectionComponent","err","data","normalisedData","Form_1","normaliseData","SubmitForm","result","Valid","Submitted","resetRecaptcha","ValidationState","Errors","newValues","entry","push","i","includeRecaptcha","Promise","resolve","reject","getRecaptchaResponse","recaptchaResponse","Logger","Log","LogLevel","Debug","Reset","GetResponse","default"],"mappings":"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","file":"js/chunk-32cbb7c4.91447cb1.js","sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.loading),expression:\"loading\"}],staticClass:\"loader\"})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\nimport { Component, Vue, Prop } from 'vue-property-decorator';\n\n@Component\nexport default class Loader extends Vue {\n @Prop()\n private readonly loading!: boolean;\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Loader.vue?vue&type=template&id=b15215d2&scoped=true&\"\nimport script from \"./Loader.vue?vue&type=script&lang=ts&\"\nexport * from \"./Loader.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Loader.vue?vue&type=style&index=0&id=b15215d2&prod&scoped=true&lang=css&\"\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 \"b15215d2\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Form.vue?vue&type=style&index=0&id=e4aa66b0&prod&scoped=true&lang=css&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Section.vue?vue&type=style&index=0&id=21bc423e&prod&scoped=true&lang=css&\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"form-field__errors\"},[_c('ul',_vm._l((_vm.errors),function(error){return _c('li',{key:error.Key + error.SubfieldKey},[_vm._v(\" \"+_vm._s(error.Message)+\" \")])}),0)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\nimport { Component, Vue, Prop } from 'vue-property-decorator';\nimport { FormSubmissionValidationError } from 'client-website-ts-library/types/Forms';\n\n@Component\nexport default class ErrorList extends Vue {\n @Prop()\n private readonly errors!: FormSubmissionValidationError[];\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ErrorList.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ErrorList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ErrorList.vue?vue&type=template&id=a5bf78fc&scoped=true&\"\nimport script from \"./ErrorList.vue?vue&type=script&lang=ts&\"\nexport * from \"./ErrorList.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ErrorList.vue?vue&type=style&index=0&id=a5bf78fc&prod&scoped=true&lang=css&\"\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 \"a5bf78fc\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('form',{staticClass:\"form\",style:({'--field-bg': _vm.fieldBg, '--border-colour': _vm.borderColour})},[_c('Loader',{attrs:{\"loading\":_vm.loading}}),(_vm.hasAutosave)?_c('div',{staticClass:\"form__panel form__panel--autosaved\",on:{\"click\":_vm.loadAutosave}},[_c('p',[_vm._v(\" This form was autosaved at \"+_vm._s(_vm.autosaveDate)+\". Click here to load the autosave. \")])]):_vm._e(),(_vm.errored)?_c('div',{staticClass:\"form__panel form__panel--errored\"},[_c('p',[_vm._v(\" An error occurred. Please try again later. \")])]):_vm._e(),(_vm.definition)?[(_vm.submitted)?_c('div',{staticClass:\"form__panel form__panel--success\"},[_c('p',{domProps:{\"innerHTML\":_vm._s(_vm.definition.Options.SubmittedText)}})]):[_vm._l((_vm.definition.Sections),function(section){return _c('Section',{key:section.SectionId,ref:section.SectionId,refInFor:true,attrs:{\"def\":section,\"errors\":_vm.errors,\"form-context\":_vm.ctx,\"form-type\":_vm.type},on:{\"field_input\":_vm.handleFieldInput}})}),_c('div',{staticClass:\"center-text\"},[_c('Button',{staticClass:\"form__submit-btn\",class:_vm.submitButtonClass,attrs:{\"loading\":_vm.loading,\"colour\":_vm.submitButtonColour,\"background-colour\":_vm.submitButtonBackgroundColour},on:{\"click\":_vm.submitForm}},[_vm._v(_vm._s(_vm.definition.Options.SubmitButtonText))])],1)]]:_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"form-section\",class:[_vm.def.CSSClasses.join(','), {'form-section--segregated': _vm.def.IsSegregated}]},[(_vm.def.DisplayTitle)?_c('h6',{staticClass:\"form-section__title\"},[_vm._v(_vm._s(_vm.def.Title))]):_vm._e(),_c('div',{staticClass:\"form-section__content\"},[_c('Row',{attrs:{\"vertical-align\":_vm.def.VerticalAlignment}},_vm._l((_vm.def.FormFields),function(field){return _c('Column',{key:field.FieldId,attrs:{\"width\":field.LayoutOptions.ColumnSpan}},[_c('Form' + field.TypeName + 'Field',_vm._b({ref:field.FieldId,refInFor:true,tag:\"component\",on:{\"input\":_vm.handleInput}},'component',_vm.getProps(field),false))],1)}),1)],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"form-field\",class:[{'has-errors': _vm.hasErrors}, 'form-field--' + _vm.def.TypeName]},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.value),expression:\"value\"}],staticClass:\"form-field__input\",class:{\n 'form-field__input--has-value': _vm.value != null\n },attrs:{\"type\":\"date\",\"id\":_vm.elemId,\"required\":_vm.def.Required,\"placeholder\":_vm.def.Placeholder},domProps:{\"value\":(_vm.value)},on:{\"input\":[function($event){if($event.target.composing)return;_vm.value=$event.target.value},_vm.handleInput]}}),_c('label',{staticClass:\"form-field__label\",attrs:{\"for\":_vm.elemId}},[_vm._v(_vm._s(_vm.def.Label))]),(_vm.hasErrors)?_c('ErrorList',{attrs:{\"errors\":_vm.errors}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\nimport { Component, Vue, Prop } from 'vue-property-decorator';\nimport { FormSubmissionValidationError, FormValue } from 'client-website-ts-library/types/Forms';\nimport { DateField, IFormField } from 'client-website-ts-library/types/Forms/FieldTypes';\n\nimport ErrorList from '../ErrorList.vue';\n\n@Component({\n components: {\n ErrorList,\n },\n})\nexport default class FormDateField extends Vue implements IFormField {\n @Prop()\n private readonly def!: DateField;\n\n @Prop()\n private readonly errors!: FormSubmissionValidationError[];\n\n private value: string | null = null;\n\n get hasErrors(): boolean {\n return this.errors.length > 0;\n }\n\n get elemId() {\n return `field_${this.def.FieldId}`;\n }\n\n getValue(): FormValue {\n return {\n Key: this.def.Key,\n Value: this.value,\n };\n }\n\n setValue(value: FormValue): void {\n if (typeof value.Value === 'string' || value.Value === null) {\n this.value = value.Value;\n }\n }\n\n handleInput(): void {\n this.$emit('input', this.def);\n }\n}\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormDateField.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormDateField.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormDateField.vue?vue&type=template&id=f7cca14e&\"\nimport script from \"./FormDateField.vue?vue&type=script&lang=ts&\"\nexport * from \"./FormDateField.vue?vue&type=script&lang=ts&\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"form-field\",class:[{'has-errors': _vm.hasErrors}, 'form-field--' + _vm.def.TypeName]},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.value),expression:\"value\"}],ref:\"elem\",staticClass:\"form-field__input\",class:{\n 'form-field__input--has-value': _vm.value\n },attrs:{\"id\":_vm.elemId},on:{\"change\":[function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.value=$event.target.multiple ? $$selectedVal : $$selectedVal[0]},_vm.handleInput]}},[(_vm.def.Placeholder)?_c('option',{attrs:{\"disabled\":\"\",\"selected\":\"\",\"value\":\"\"}},[_vm._v(_vm._s(_vm.def.Placeholder))]):_c('option',{attrs:{\"value\":\"\",\"disabled\":\"\",\"selected\":\"\"}}),_vm._l((_vm.def.Options),function(option){return _c('option',{key:option.Value,domProps:{\"value\":option.Value}},[_vm._v(_vm._s(option.Label))])})],2),_c('label',{staticClass:\"form-field__label\",attrs:{\"for\":_vm.elemId}},[_vm._v(_vm._s(_vm.def.Label))]),(_vm.hasErrors)?_c('ErrorList',{attrs:{\"errors\":_vm.errors}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\nimport { Component, Vue, Prop } from 'vue-property-decorator';\nimport { FormSubmissionValidationError, FormValue } from 'client-website-ts-library/types/Forms';\nimport { DropdownField, IFormField } from 'client-website-ts-library/types/Forms/FieldTypes';\n\nimport ErrorList from '../ErrorList.vue';\n\n@Component({\n components: {\n ErrorList,\n },\n})\nexport default class FormTextField extends Vue implements IFormField {\n @Prop()\n private readonly def!: DropdownField;\n\n @Prop()\n private readonly errors!: FormSubmissionValidationError[];\n\n private value: string | null = '';\n\n get hasErrors(): boolean {\n return this.errors.length > 0;\n }\n\n get elemId() {\n return `field_${this.def.FieldId}`;\n }\n\n getValue(): FormValue {\n return {\n Key: this.def.Key,\n Value: this.value,\n };\n }\n\n setValue(value: FormValue) {\n if (typeof value.Value === 'string' || value.Value === null) {\n this.value = value.Value;\n }\n }\n\n handleInput(): void {\n this.$emit('input', this.def);\n }\n}\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormDropdownField.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormDropdownField.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormDropdownField.vue?vue&type=template&id=7c760baa&scoped=true&\"\nimport script from \"./FormDropdownField.vue?vue&type=script&lang=ts&\"\nexport * from \"./FormDropdownField.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./FormDropdownField.vue?vue&type=style&index=0&id=7c760baa&prod&scoped=true&lang=css&\"\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 \"7c760baa\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"form-field\",class:[{'has-errors': _vm.hasErrors}, 'form-field--' + _vm.def.TypeName]},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.value),expression:\"value\"}],staticClass:\"form-field__input\",class:{\n 'form-field__input--has-value': _vm.value != null\n },attrs:{\"type\":\"email\",\"id\":_vm.elemId,\"required\":_vm.def.Required,\"placeholder\":_vm.def.Placeholder,\"maxlength\":_vm.def.MaxLength || 1000,\"minlength\":_vm.def.MinLength || 0,\"autocomplete\":\"email\"},domProps:{\"value\":(_vm.value)},on:{\"input\":[function($event){if($event.target.composing)return;_vm.value=$event.target.value},_vm.handleInput]}}),_c('label',{staticClass:\"form-field__label\",attrs:{\"for\":_vm.elemId}},[_vm._v(_vm._s(_vm.def.Label))]),(_vm.hasErrors)?_c('ErrorList',{attrs:{\"errors\":_vm.errors}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\nimport { Component, Vue, Prop } from 'vue-property-decorator';\nimport { FormSubmissionValidationError, FormValue } from 'client-website-ts-library/types/Forms';\nimport { EmailField, IFormField } from 'client-website-ts-library/types/Forms/FieldTypes';\n\nimport ErrorList from '../ErrorList.vue';\n\n@Component({\n components: {\n ErrorList,\n },\n})\nexport default class FormEmailField extends Vue implements IFormField {\n @Prop()\n private readonly def!: EmailField;\n\n @Prop()\n private readonly errors!: FormSubmissionValidationError[];\n\n private value: string | null = null;\n\n get hasErrors(): boolean {\n return this.errors.length > 0;\n }\n\n get elemId() {\n return `field_${this.def.FieldId}`;\n }\n\n getValue(): FormValue {\n return {\n Key: this.def.Key,\n Value: this.value,\n };\n }\n\n setValue(value: FormValue) {\n if (typeof value.Value === 'string' || value.Value === null) {\n this.value = value.Value;\n }\n }\n\n handleInput(): void {\n this.$emit('input', this.def);\n }\n}\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormEmailField.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormEmailField.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormEmailField.vue?vue&type=template&id=154ec92e&\"\nimport script from \"./FormEmailField.vue?vue&type=script&lang=ts&\"\nexport * from \"./FormEmailField.vue?vue&type=script&lang=ts&\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"form-field\",class:[{'has-errors': _vm.hasErrors}, 'form-field--' + _vm.def.TypeName]},[_c('div',{staticClass:\"static-text\",style:(_vm.def.CSSStyles.join(' ')),domProps:{\"innerHTML\":_vm._s(_vm.def.Text)}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\nimport { Component, Vue, Prop } from 'vue-property-decorator';\nimport { FormSubmissionValidationError, FormValue } from 'client-website-ts-library/types/Forms';\nimport { StaticText, IFormField } from 'client-website-ts-library/types/Forms/FieldTypes';\n\nimport ErrorList from '../ErrorList.vue';\n\n@Component({\n components: {\n ErrorList,\n },\n})\nexport default class FormStaticTextField extends Vue implements IFormField {\n @Prop()\n private readonly def!: StaticText;\n\n @Prop()\n private readonly errors!: FormSubmissionValidationError[];\n\n private value: string | null = null;\n\n get hasErrors(): boolean {\n return this.errors.length > 0;\n }\n\n get elemId() {\n return `field_${this.def.FieldId}`;\n }\n\n getValue(): FormValue {\n return {\n Key: this.def.Key,\n Value: null,\n };\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-empty-function\n setValue(value: FormValue): void {}\n}\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormStaticTextField.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormStaticTextField.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormStaticTextField.vue?vue&type=template&id=0118d07e&\"\nimport script from \"./FormStaticTextField.vue?vue&type=script&lang=ts&\"\nexport * from \"./FormStaticTextField.vue?vue&type=script&lang=ts&\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"form-field\",class:[{'has-errors': _vm.hasErrors}, 'form-field--' + _vm.def.TypeName]},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.value),expression:\"value\"}],staticClass:\"form-field__input\",class:{\n 'form-field__input--has-value': _vm.value != null\n },attrs:{\"type\":\"tel\",\"id\":_vm.elemId,\"required\":_vm.def.Required,\"placeholder\":_vm.def.Placeholder,\"maxlength\":_vm.def.MaxLength || 1000,\"minlength\":_vm.def.MinLength || 0,\"autocomplete\":\"tel\"},domProps:{\"value\":(_vm.value)},on:{\"input\":[function($event){if($event.target.composing)return;_vm.value=$event.target.value},_vm.handleInput]}}),_c('label',{staticClass:\"form-field__label\",attrs:{\"for\":_vm.elemId}},[_vm._v(_vm._s(_vm.def.Label))]),(_vm.hasErrors)?_c('ErrorList',{attrs:{\"errors\":_vm.errors}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\nimport { Component, Vue, Prop } from 'vue-property-decorator';\nimport { FormSubmissionValidationError, FormValue } from 'client-website-ts-library/types/Forms';\nimport { TelField, IFormField } from 'client-website-ts-library/types/Forms/FieldTypes';\n\nimport ErrorList from '../ErrorList.vue';\n\n@Component({\n components: {\n ErrorList,\n },\n})\nexport default class FormTelField extends Vue implements IFormField {\n @Prop()\n private readonly def!: TelField;\n\n @Prop()\n private readonly errors!: FormSubmissionValidationError[];\n\n private value: string | null = null;\n\n get hasErrors(): boolean {\n return this.errors.length > 0;\n }\n\n get elemId() {\n return `field_${this.def.FieldId}`;\n }\n\n getValue(): FormValue {\n return {\n Key: this.def.Key,\n Value: this.value,\n };\n }\n\n setValue(value: FormValue) {\n if (typeof value.Value === 'string' || value.Value === null) {\n this.value = value.Value;\n }\n }\n\n handleInput(): void {\n this.$emit('input', this.def);\n }\n}\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormTelField.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormTelField.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormTelField.vue?vue&type=template&id=0df1bb67&\"\nimport script from \"./FormTelField.vue?vue&type=script&lang=ts&\"\nexport * from \"./FormTelField.vue?vue&type=script&lang=ts&\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"form-field\",class:[{'has-errors': _vm.hasErrors}, 'form-field--' + _vm.def.TypeName]},[_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.value),expression:\"value\"}],staticClass:\"form-field__input\",class:{\n 'form-field__input--has-value': _vm.value != null\n },attrs:{\"type\":\"text\",\"id\":_vm.elemId,\"required\":_vm.def.Required,\"placeholder\":_vm.def.Placeholder,\"rows\":\"4\",\"maxlength\":_vm.def.MaxLength || 1000,\"minlength\":_vm.def.MinLength || 0},domProps:{\"value\":(_vm.value)},on:{\"input\":[function($event){if($event.target.composing)return;_vm.value=$event.target.value},_vm.handleInput]}}),_c('label',{staticClass:\"form-field__label\",attrs:{\"for\":_vm.elemId}},[_vm._v(_vm._s(_vm.def.Label))]),(_vm.hasErrors)?_c('ErrorList',{attrs:{\"errors\":_vm.errors}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\nimport { Component, Vue, Prop } from 'vue-property-decorator';\nimport { FormSubmissionValidationError, FormValue } from 'client-website-ts-library/types/Forms';\nimport { TextareaField, IFormField } from 'client-website-ts-library/types/Forms/FieldTypes';\n\nimport ErrorList from '../ErrorList.vue';\n\n@Component({\n components: {\n ErrorList,\n },\n})\nexport default class FormTextareaField extends Vue implements IFormField {\n @Prop()\n private readonly def!: TextareaField;\n\n @Prop()\n private readonly errors!: FormSubmissionValidationError[];\n\n private value: string | null = null;\n\n get hasErrors(): boolean {\n return this.errors.length > 0;\n }\n\n get elemId() {\n return `field_${this.def.FieldId}`;\n }\n\n getValue(): FormValue {\n return {\n Key: this.def.Key,\n Value: this.value,\n };\n }\n\n setValue(value: FormValue) {\n if (typeof value.Value === 'string' || value.Value === null) {\n this.value = value.Value;\n }\n }\n\n handleInput(): void {\n this.$emit('input', this.def);\n }\n}\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormTextareaField.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormTextareaField.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormTextareaField.vue?vue&type=template&id=3acac4c6&\"\nimport script from \"./FormTextareaField.vue?vue&type=script&lang=ts&\"\nexport * from \"./FormTextareaField.vue?vue&type=script&lang=ts&\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"form-field\",class:[{'has-errors': _vm.hasErrors}, 'form-field--' + _vm.def.TypeName]},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.value),expression:\"value\"}],staticClass:\"form-field__input\",class:{\n 'form-field__input--has-value': _vm.value != null\n },attrs:{\"type\":\"text\",\"id\":_vm.elemId,\"required\":_vm.def.Required,\"placeholder\":_vm.def.Placeholder,\"maxlength\":_vm.def.MaxLength || 1000,\"minlength\":_vm.def.MinLength || 0},domProps:{\"value\":(_vm.value)},on:{\"input\":[function($event){if($event.target.composing)return;_vm.value=$event.target.value},_vm.handleInput]}}),_c('label',{staticClass:\"form-field__label\",attrs:{\"for\":_vm.elemId}},[_vm._v(_vm._s(_vm.def.Label))]),(_vm.hasErrors)?_c('ErrorList',{attrs:{\"errors\":_vm.errors}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\nimport { Component, Vue, Prop } from 'vue-property-decorator';\nimport { FormSubmissionValidationError, FormValue } from 'client-website-ts-library/types/Forms';\nimport { TextField, IFormField } from 'client-website-ts-library/types/Forms/FieldTypes';\n\nimport ErrorList from '../ErrorList.vue';\n\n@Component({\n components: {\n ErrorList,\n },\n})\nexport default class FormTextField extends Vue implements IFormField {\n @Prop()\n private readonly def!: TextField;\n\n @Prop()\n private readonly errors!: FormSubmissionValidationError[];\n\n private value: string | null = null;\n\n get hasErrors(): boolean {\n return this.errors.length > 0;\n }\n\n get elemId() {\n return `field_${this.def.FieldId}`;\n }\n\n getValue(): FormValue {\n return {\n Key: this.def.Key,\n Value: this.value,\n };\n }\n\n setValue(value: FormValue) {\n if (typeof value.Value === 'string' || value.Value === null) {\n this.value = value.Value;\n }\n }\n\n handleInput(): void {\n this.$emit('input', this.def);\n }\n}\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormTextField.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormTextField.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormTextField.vue?vue&type=template&id=e56964a6&\"\nimport script from \"./FormTextField.vue?vue&type=script&lang=ts&\"\nexport * from \"./FormTextField.vue?vue&type=script&lang=ts&\"\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","\nimport { Component, Vue, Prop } from 'vue-property-decorator';\nimport {\n FormSection,\n FormSubmissionValidationError,\n FormConstructorData,\n FormField,\n FormValue,\n} from 'client-website-ts-library/types/Forms';\nimport { IFormField } from 'client-website-ts-library/types/Forms/FieldTypes';\n\n// Field components\nimport FormDateField from './FieldTypes/FormDateField.vue';\nimport FormDropdownField from './FieldTypes/FormDropdownField.vue';\nimport FormEmailField from './FieldTypes/FormEmailField.vue';\nimport FormStaticTextField from './FieldTypes/FormStaticTextField.vue';\nimport FormTelField from './FieldTypes/FormTelField.vue';\nimport FormTextareaField from './FieldTypes/FormTextareaField.vue';\nimport FormTextField from './FieldTypes/FormTextField.vue';\n\n// Big field types get loaded in async for more speeds\nconst FormGraphicalPDFField = () => import('./FieldTypes/PDFs/FormGraphicalPDFField.vue');\nconst FormVideoUploadField = () => import('./FieldTypes/FormVideoUploadField.vue');\nconst FormMultiFileUploaderField = () => import('./FieldTypes/MultiFileUploader/FormMultiFileUploaderField.vue');\n\n@Component({\n components: {\n FormDateField,\n FormDropdownField,\n FormEmailField,\n FormStaticTextField,\n FormTelField,\n FormTextareaField,\n FormTextField,\n FormGraphicalPDFField,\n FormVideoUploadField,\n FormMultiFileUploaderField,\n },\n})\nexport default class Section extends Vue {\n @Prop({ required: true })\n private readonly def!: FormSection;\n\n @Prop({ required: true })\n private readonly errors!: FormSubmissionValidationError[];\n\n @Prop({ required: true })\n private readonly formContext!: FormConstructorData;\n\n @Prop({ required: true })\n private readonly formType!: string;\n\n getProps(field: FormField): object {\n return {\n def: field,\n formContext: this.formContext,\n formType: this.formType,\n errors: this.errors.filter((e) => e.Key === field.Key),\n };\n }\n\n handleInput(fieldDef: FormField): void {\n this.$emit('field_input', fieldDef);\n }\n\n collectData(): FormValue[] {\n return this.def.FormFields.map((field) => ((this.$refs[field.FieldId] as Vue[])[0] as unknown as IFormField).getValue());\n }\n\n setData(values: FormValue[]): void {\n this.def.FormFields.forEach((field) => {\n const val = values.find((v) => v.Key === field.Key);\n\n if (val === undefined || val.Value === null) return;\n\n ((this.$refs[field.FieldId] as Vue[])[0] as unknown as IFormField).setValue(val);\n });\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Section.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Section.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Section.vue?vue&type=template&id=21bc423e&scoped=true&\"\nimport script from \"./Section.vue?vue&type=script&lang=ts&\"\nexport * from \"./Section.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Section.vue?vue&type=style&index=0&id=21bc423e&prod&scoped=true&lang=css&\"\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 \"21bc423e\",\n null\n \n)\n\nexport default component.exports","\nimport { Component, Vue, Prop } from 'vue-property-decorator';\nimport { FormDefinition, FormSubmissionValidationError, FormField, FormValue } from 'client-website-ts-library/types/Forms';\nimport {\n AutosaveManager,\n ServiceManager,\n ServiceType,\n API,\n Config,\n Logger,\n LogLevel,\n ReCaptchaService,\n} from 'client-website-ts-library/services';\nimport { Context } from 'client-website-ts-library/types';\nimport { PDFFieldData } from 'client-website-ts-library/types/Forms/FieldTypes';\nimport { IRequestProgressDelegate } from 'client-website-ts-library/services/API/IRequestProgressDelegate';\n\nimport Section from './Section.vue';\nimport Loader from '../UI/Loader.vue';\n\n@Component({\n components: {\n Section,\n Loader,\n },\n})\nexport default class Form extends Vue implements IRequestProgressDelegate {\n @Prop({ default: () => ({ Items: [] }) })\n private readonly context!: Context;\n\n @Prop()\n private readonly type!: string;\n\n @Prop()\n private readonly submitButtonColour!: string;\n\n @Prop()\n private readonly submitButtonBackgroundColour!: string;\n\n @Prop()\n private readonly submitButtonClass!: string;\n\n @Prop()\n private readonly autosaveNamespace!: string;\n\n @Prop()\n private readonly enableAutosave!: boolean;\n\n @Prop({ default: 'var(--form-field-bg)' })\n private readonly fieldBg!: string;\n\n @Prop({ default: 'var(--form-field-colour)' })\n private readonly fieldColour!: string;\n\n @Prop({ default: 'var(--form-label-colour)' })\n private readonly labelColour!: string;\n\n @Prop({ default: 'var(--form-field-border-colour)' })\n private readonly borderColour!: string;\n\n @Prop({ default: 'var(--form-label-focused-bg)' })\n private readonly labelFocusedBg!: string;\n\n @Prop({ default: 'var(--form-label-focused-colour)' })\n private readonly labelFocusedColour!: string;\n\n private ctx: Context = this.context;\n\n private errored = false;\n\n private submitted = false;\n\n private errors: FormSubmissionValidationError[] = [];\n\n private loading = true;\n\n private definition: FormDefinition | null = null;\n\n private autosaveManager: AutosaveManager = ServiceManager.Require(ServiceType.FormAutosave);\n\n private hasAutosave = false;\n\n private autosaveDate: string | null = null;\n\n private submitPercent = 0;\n\n private recaptchaService = ServiceManager.Require(ServiceType.ReCaptcha) as ReCaptchaService;\n\n onProgress(progress: number, total: number) {\n this.submitPercent = Math.round((progress / total) * 100);\n\n console.log(this.submitPercent);\n }\n\n mounted() {\n if (this.ctx === null) {\n this.ctx = {\n Items: [],\n ClientWebsiteId: Config.Website.Id,\n };\n }\n\n if (this.ctx.ClientWebsiteId === undefined) {\n this.ctx.ClientWebsiteId = Config.Website.Id;\n }\n\n API.Forms.GetForm(this.type, this.context).then((def) => {\n this.loading = false;\n this.definition = def;\n\n if (this.enableAutosave) {\n const state = this.autosaveManager.GetState(this.type);\n\n if (state !== null) {\n this.hasAutosave = true;\n }\n }\n }).catch(() => {\n this.errored = true;\n });\n }\n\n loadAutosave(): void {\n if (!this.hasAutosave) return;\n\n const state = this.autosaveManager.GetState(this.type);\n\n if (state === null) return;\n\n this.definition!.Sections.forEach((section) => {\n const sectionComponent = (this.$refs[section.SectionId] as Vue[])[0] as Section;\n\n sectionComponent.setData(state);\n });\n }\n\n private handleFieldInput(fieldDef: FormField): void {\n this.errors = this.errors.filter((err) => err.Key !== fieldDef.Key);\n }\n\n submitForm(): void {\n if (this.loading) return;\n\n this.loading = true;\n\n this.errors = [];\n\n this.collectData(true).then((data) => {\n const normalisedData = Form.normaliseData(data);\n\n console.log(normalisedData);\n\n this.loading = false;\n\n // this.context.ClientWebsiteId = Config.Website.Id;\n\n // if (this.enableAutosave) this.autosaveManager.SetState(this.type, data);\n\n API.Forms.SubmitForm(this.type, this.context, normalisedData).then((result) => {\n this.loading = false;\n\n if (!result.Valid) {\n // Reset ReCaptcha\n this.resetRecaptcha();\n\n // Update errors\n this.errors = result.ValidationState.Errors;\n } else if (result.Submitted) {\n // Inform the user that the form was submitted\n this.submitted = true;\n\n this.$emit('submitted');\n }\n }).catch(() => {\n // Reset ReCaptcha\n this.resetRecaptcha();\n\n // Inform the user that there was an error\n this.errored = true;\n });\n });\n }\n\n private static normaliseData(data: FormValue[]): FormValue[] {\n const newValues: FormValue[] = [];\n\n data.forEach((entry) => {\n if (entry.Value instanceof Array) {\n if (entry.Value.length) {\n newValues.push({\n Key: `${entry.Key}_length`,\n Value: entry.Value.length,\n });\n\n for (let i = 0; i < entry.Value.length; i += 1) {\n newValues.push({\n Key: `${entry.Key}_${i}`,\n Value: entry.Value[i],\n });\n }\n }\n } else {\n newValues.push(entry);\n }\n });\n\n return newValues;\n }\n\n private collectData(includeRecaptcha: boolean): Promise {\n return new Promise((resolve, reject) => {\n const data: FormValue[] = [];\n\n // Loop through each form secction and collect the data from it\n this.definition!.Sections.forEach((section) => {\n const sectionComponent = (this.$refs[section.SectionId] as Vue[])[0] as Section;\n\n data.push(...sectionComponent.collectData());\n });\n\n // If we also need to submit the ReCaptcha response, make sure we call getResponse on the ReCaptcha component\n if (includeRecaptcha) {\n this.getRecaptchaResponse().then((recaptchaResponse: string) => {\n Logger.Log(LogLevel.Debug, '[Form]', 'Got ReCaptcha response');\n\n data.push({\n Key: '_recaptcha',\n Value: recaptchaResponse,\n });\n\n resolve(data);\n }).catch(reject);\n\n return;\n }\n\n // If we don't need ReCaptcha, resolve straight away\n resolve(data);\n });\n }\n\n private resetRecaptcha(): void {\n this.recaptchaService.Reset();\n }\n\n private getRecaptchaResponse(): Promise {\n return this.recaptchaService.GetResponse();\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Form.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Form.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Form.vue?vue&type=template&id=e4aa66b0&scoped=true&\"\nimport script from \"./Form.vue?vue&type=script&lang=ts&\"\nexport * from \"./Form.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Form.vue?vue&type=style&index=0&id=e4aa66b0&prod&scoped=true&lang=css&\"\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 \"e4aa66b0\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ErrorList.vue?vue&type=style&index=0&id=a5bf78fc&prod&scoped=true&lang=css&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=style&index=0&id=b15215d2&prod&scoped=true&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormDropdownField.vue?vue&type=style&index=0&id=7c760baa&prod&scoped=true&lang=css&\""],"sourceRoot":""}