{"version":3,"sources":["webpack:///./src/components/Forms/Form.vue?f6eb","webpack:///./src/components/Forms/Section.vue?1dc4","webpack:///./src/components/Forms/ErrorList.vue?595a","webpack:///./src/components/Forms/ErrorList.vue","webpack:///./src/components/Forms/ErrorList.vue?70a5","webpack:///./src/components/Forms/ErrorList.vue?7d0c","webpack:///./src/components/Forms/Form.vue?f689","webpack:///./src/components/Forms/Section.vue?2c89","webpack:///./src/components/Forms/FieldTypes/FormDateField.vue?e359","webpack:///./src/components/Forms/FieldTypes/FormDateField.vue","webpack:///./src/components/Forms/FieldTypes/FormDateField.vue?91f6","webpack:///./src/components/Forms/FieldTypes/FormDateField.vue?1679","webpack:///./src/components/Forms/FieldTypes/FormDropdownField.vue?479b","webpack:///./src/components/Forms/FieldTypes/FormDropdownField.vue","webpack:///./src/components/Forms/FieldTypes/FormDropdownField.vue?f155","webpack:///./src/components/Forms/FieldTypes/FormDropdownField.vue?13c5","webpack:///./src/components/Forms/FieldTypes/FormEmailField.vue?df99","webpack:///./src/components/Forms/FieldTypes/FormEmailField.vue","webpack:///./src/components/Forms/FieldTypes/FormEmailField.vue?35a9","webpack:///./src/components/Forms/FieldTypes/FormEmailField.vue?c589","webpack:///./src/components/Forms/FieldTypes/FormStaticTextField.vue?3baa","webpack:///./src/components/Forms/FieldTypes/FormStaticTextField.vue","webpack:///./src/components/Forms/FieldTypes/FormStaticTextField.vue?55df","webpack:///./src/components/Forms/FieldTypes/FormStaticTextField.vue?bfb8","webpack:///./src/components/Forms/FieldTypes/FormTelField.vue?01b1","webpack:///./src/components/Forms/FieldTypes/FormTelField.vue","webpack:///./src/components/Forms/FieldTypes/FormTelField.vue?bfe2","webpack:///./src/components/Forms/FieldTypes/FormTelField.vue?8a17","webpack:///./src/components/Forms/FieldTypes/FormTextareaField.vue?fa1e","webpack:///./src/components/Forms/FieldTypes/FormTextareaField.vue","webpack:///./src/components/Forms/FieldTypes/FormTextareaField.vue?492d","webpack:///./src/components/Forms/FieldTypes/FormTextareaField.vue?3175","webpack:///./src/components/Forms/FieldTypes/FormTextField.vue?51ea","webpack:///./src/components/Forms/FieldTypes/FormTextField.vue","webpack:///./src/components/Forms/FieldTypes/FormTextField.vue?55ac","webpack:///./src/components/Forms/FieldTypes/FormTextField.vue?8008","webpack:///./src/components/Forms/Section.vue","webpack:///./src/components/Forms/Section.vue?a090","webpack:///./src/components/Forms/Section.vue?60fc","webpack:///./src/components/Forms/Form.vue","webpack:///./src/components/Forms/Form.vue?dd4c","webpack:///./src/components/Forms/Form.vue?9db8","webpack:///./src/components/Forms/ErrorList.vue?3ee6","webpack:///./src/components/Forms/FieldTypes/FormDropdownField.vue?474e"],"names":["render","_vm","this","_h","$createElement","_c","_self","staticClass","_l","error","key","Key","SubfieldKey","_v","_s","Message","staticRenderFns","component","style","fieldBg","borderColour","attrs","loading","on","loadAutosave","autosaveDate","_e","domProps","definition","Options","SubmittedText","section","SectionId","ref","refInFor","errors","ctx","type","handleFieldInput","class","submitButtonClass","submitButtonColour","submitButtonBackgroundColour","submitForm","SubmitButtonText","def","CSSClasses","join","IsSegregated","Title","VerticalAlignment","field","FieldId","LayoutOptions","ColumnSpan","TypeName","_b","tag","handleInput","getProps","hasErrors","directives","name","rawName","value","expression","elemId","Required","Placeholder","$event","target","composing","Label","length","Value","$emit","components","ErrorList","$$selectedVal","Array","prototype","filter","call","options","o","selected","map","val","_value","multiple","option","MaxLength","MinLength","CSSStyles","Text","FormGraphicalPDFField","FormVideoUploadField","FormMultiFileUploaderField","formContext","formType","e","fieldDef","FormFields","$refs","getValue","values","forEach","find","v","undefined","setValue","required","FormDateField","FormDropdownField","FormEmailField","FormStaticTextField","FormTelField","FormTextareaField","FormTextField","context","errored","submitted","autosaveManager","Require","FormAutosave","hasAutosave","submitPercent","recaptchaService","ReCaptcha","progress","total","Math","round","console","log","Items","ClientWebsiteId","Website","Id","Forms","GetForm","then","enableAutosave","state","GetState","catch","Sections","sectionComponent","setData","err","collectData","data","normalisedData","normaliseData","SubmitForm","result","Valid","Submitted","resetRecaptcha","ValidationState","Errors","newValues","entry","push","i","includeRecaptcha","Promise","resolve","reject","getRecaptchaResponse","recaptchaResponse","Log","Debug","Reset","GetResponse","default","Section","Loader"],"mappings":"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","file":"js/chunk-66dcf0b6.f2c5366c.js","sourcesContent":["export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/@vue/cli-service/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--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/@vue/cli-service/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 () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;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)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\nimport { FormSubmissionValidationError } from 'client-website-ts-library/types/Forms';\r\n\r\n@Component\r\nexport default class ErrorList extends Vue {\r\n @Prop()\r\n private readonly errors!: FormSubmissionValidationError[];\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/@vue/cli-service/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--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/@vue/cli-service/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/cli-service/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 () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;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)}\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',{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)])}\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',{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)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\nimport { FormSubmissionValidationError, FormValue } from 'client-website-ts-library/types/Forms';\r\nimport { DateField, IFormField } from 'client-website-ts-library/types/Forms/FieldTypes';\r\n\r\nimport ErrorList from '../ErrorList.vue';\r\n\r\n@Component({\r\n components: {\r\n ErrorList,\r\n },\r\n})\r\nexport default class FormDateField extends Vue implements IFormField {\r\n @Prop()\r\n private readonly def!: DateField;\r\n\r\n @Prop()\r\n private readonly errors!: FormSubmissionValidationError[];\r\n\r\n private value: string | null = null;\r\n\r\n get hasErrors(): boolean {\r\n return this.errors.length > 0;\r\n }\r\n\r\n get elemId() {\r\n return `field_${this.def.FieldId}`;\r\n }\r\n\r\n getValue(): FormValue {\r\n return {\r\n Key: this.def.Key,\r\n Value: this.value,\r\n };\r\n }\r\n\r\n setValue(value: FormValue): void {\r\n if (typeof value.Value === 'string' || value.Value === null) {\r\n this.value = value.Value;\r\n }\r\n }\r\n\r\n handleInput(): void {\r\n this.$emit('input', this.def);\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/@vue/cli-service/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--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/@vue/cli-service/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/cli-service/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 () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;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)}\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\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\nimport { FormSubmissionValidationError, FormValue } from 'client-website-ts-library/types/Forms';\r\nimport { DropdownField, IFormField } from 'client-website-ts-library/types/Forms/FieldTypes';\r\n\r\nimport ErrorList from '../ErrorList.vue';\r\n\r\n@Component({\r\n components: {\r\n ErrorList,\r\n },\r\n})\r\nexport default class FormTextField extends Vue implements IFormField {\r\n @Prop()\r\n private readonly def!: DropdownField;\r\n\r\n @Prop()\r\n private readonly errors!: FormSubmissionValidationError[];\r\n\r\n private value: string | null = '';\r\n\r\n get hasErrors(): boolean {\r\n return this.errors.length > 0;\r\n }\r\n\r\n get elemId() {\r\n return `field_${this.def.FieldId}`;\r\n }\r\n\r\n getValue(): FormValue {\r\n return {\r\n Key: this.def.Key,\r\n Value: this.value,\r\n };\r\n }\r\n\r\n setValue(value: FormValue) {\r\n if (typeof value.Value === 'string' || value.Value === null) {\r\n this.value = value.Value;\r\n }\r\n }\r\n\r\n handleInput(): void {\r\n this.$emit('input', this.def);\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/@vue/cli-service/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--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/@vue/cli-service/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/cli-service/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 () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;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)}\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\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\nimport { FormSubmissionValidationError, FormValue } from 'client-website-ts-library/types/Forms';\r\nimport { EmailField, IFormField } from 'client-website-ts-library/types/Forms/FieldTypes';\r\n\r\nimport ErrorList from '../ErrorList.vue';\r\n\r\n@Component({\r\n components: {\r\n ErrorList,\r\n },\r\n})\r\nexport default class FormEmailField extends Vue implements IFormField {\r\n @Prop()\r\n private readonly def!: EmailField;\r\n\r\n @Prop()\r\n private readonly errors!: FormSubmissionValidationError[];\r\n\r\n private value: string | null = null;\r\n\r\n get hasErrors(): boolean {\r\n return this.errors.length > 0;\r\n }\r\n\r\n get elemId() {\r\n return `field_${this.def.FieldId}`;\r\n }\r\n\r\n getValue(): FormValue {\r\n return {\r\n Key: this.def.Key,\r\n Value: this.value,\r\n };\r\n }\r\n\r\n setValue(value: FormValue) {\r\n if (typeof value.Value === 'string' || value.Value === null) {\r\n this.value = value.Value;\r\n }\r\n }\r\n\r\n handleInput(): void {\r\n this.$emit('input', this.def);\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/@vue/cli-service/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--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/@vue/cli-service/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/cli-service/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 () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;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)}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\nimport { FormSubmissionValidationError, FormValue } from 'client-website-ts-library/types/Forms';\r\nimport { StaticText, IFormField } from 'client-website-ts-library/types/Forms/FieldTypes';\r\n\r\nimport ErrorList from '../ErrorList.vue';\r\n\r\n@Component({\r\n components: {\r\n ErrorList,\r\n },\r\n})\r\nexport default class FormStaticTextField extends Vue implements IFormField {\r\n @Prop()\r\n private readonly def!: StaticText;\r\n\r\n @Prop()\r\n private readonly errors!: FormSubmissionValidationError[];\r\n\r\n private value: string | null = null;\r\n\r\n get hasErrors(): boolean {\r\n return this.errors.length > 0;\r\n }\r\n\r\n get elemId() {\r\n return `field_${this.def.FieldId}`;\r\n }\r\n\r\n getValue(): FormValue {\r\n return {\r\n Key: this.def.Key,\r\n Value: null,\r\n };\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-empty-function\r\n setValue(value: FormValue): void {}\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/@vue/cli-service/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--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/@vue/cli-service/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/cli-service/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 () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;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)}\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\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\nimport { FormSubmissionValidationError, FormValue } from 'client-website-ts-library/types/Forms';\r\nimport { TelField, IFormField } from 'client-website-ts-library/types/Forms/FieldTypes';\r\n\r\nimport ErrorList from '../ErrorList.vue';\r\n\r\n@Component({\r\n components: {\r\n ErrorList,\r\n },\r\n})\r\nexport default class FormTelField extends Vue implements IFormField {\r\n @Prop()\r\n private readonly def!: TelField;\r\n\r\n @Prop()\r\n private readonly errors!: FormSubmissionValidationError[];\r\n\r\n private value: string | null = null;\r\n\r\n get hasErrors(): boolean {\r\n return this.errors.length > 0;\r\n }\r\n\r\n get elemId() {\r\n return `field_${this.def.FieldId}`;\r\n }\r\n\r\n getValue(): FormValue {\r\n return {\r\n Key: this.def.Key,\r\n Value: this.value,\r\n };\r\n }\r\n\r\n setValue(value: FormValue) {\r\n if (typeof value.Value === 'string' || value.Value === null) {\r\n this.value = value.Value;\r\n }\r\n }\r\n\r\n handleInput(): void {\r\n this.$emit('input', this.def);\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/@vue/cli-service/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--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/@vue/cli-service/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/cli-service/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 () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;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)}\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\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\nimport { FormSubmissionValidationError, FormValue } from 'client-website-ts-library/types/Forms';\r\nimport { TextareaField, IFormField } from 'client-website-ts-library/types/Forms/FieldTypes';\r\n\r\nimport ErrorList from '../ErrorList.vue';\r\n\r\n@Component({\r\n components: {\r\n ErrorList,\r\n },\r\n})\r\nexport default class FormTextareaField extends Vue implements IFormField {\r\n @Prop()\r\n private readonly def!: TextareaField;\r\n\r\n @Prop()\r\n private readonly errors!: FormSubmissionValidationError[];\r\n\r\n private value: string | null = null;\r\n\r\n get hasErrors(): boolean {\r\n return this.errors.length > 0;\r\n }\r\n\r\n get elemId() {\r\n return `field_${this.def.FieldId}`;\r\n }\r\n\r\n getValue(): FormValue {\r\n return {\r\n Key: this.def.Key,\r\n Value: this.value,\r\n };\r\n }\r\n\r\n setValue(value: FormValue) {\r\n if (typeof value.Value === 'string' || value.Value === null) {\r\n this.value = value.Value;\r\n }\r\n }\r\n\r\n handleInput(): void {\r\n this.$emit('input', this.def);\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/@vue/cli-service/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--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/@vue/cli-service/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/cli-service/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 () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;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)}\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\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\nimport { FormSubmissionValidationError, FormValue } from 'client-website-ts-library/types/Forms';\r\nimport { TextField, IFormField } from 'client-website-ts-library/types/Forms/FieldTypes';\r\n\r\nimport ErrorList from '../ErrorList.vue';\r\n\r\n@Component({\r\n components: {\r\n ErrorList,\r\n },\r\n})\r\nexport default class FormTextField extends Vue implements IFormField {\r\n @Prop()\r\n private readonly def!: TextField;\r\n\r\n @Prop()\r\n private readonly errors!: FormSubmissionValidationError[];\r\n\r\n private value: string | null = null;\r\n\r\n get hasErrors(): boolean {\r\n return this.errors.length > 0;\r\n }\r\n\r\n get elemId() {\r\n return `field_${this.def.FieldId}`;\r\n }\r\n\r\n getValue(): FormValue {\r\n return {\r\n Key: this.def.Key,\r\n Value: this.value,\r\n };\r\n }\r\n\r\n setValue(value: FormValue) {\r\n if (typeof value.Value === 'string' || value.Value === null) {\r\n this.value = value.Value;\r\n }\r\n }\r\n\r\n handleInput(): void {\r\n this.$emit('input', this.def);\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/@vue/cli-service/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--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/@vue/cli-service/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/cli-service/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","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\nimport {\r\n FormSection,\r\n FormSubmissionValidationError,\r\n FormConstructorData,\r\n FormField,\r\n FormValue,\r\n} from 'client-website-ts-library/types/Forms';\r\nimport { IFormField } from 'client-website-ts-library/types/Forms/FieldTypes';\r\n\r\n// Field components\r\nimport FormDateField from './FieldTypes/FormDateField.vue';\r\nimport FormDropdownField from './FieldTypes/FormDropdownField.vue';\r\nimport FormEmailField from './FieldTypes/FormEmailField.vue';\r\nimport FormStaticTextField from './FieldTypes/FormStaticTextField.vue';\r\nimport FormTelField from './FieldTypes/FormTelField.vue';\r\nimport FormTextareaField from './FieldTypes/FormTextareaField.vue';\r\nimport FormTextField from './FieldTypes/FormTextField.vue';\r\n\r\n// Big field types get loaded in async for more speeds\r\nconst FormGraphicalPDFField = () => import('./FieldTypes/PDFs/FormGraphicalPDFField.vue');\r\nconst FormVideoUploadField = () => import('./FieldTypes/FormVideoUploadField.vue');\r\nconst FormMultiFileUploaderField = () => import('./FieldTypes/MultiFileUploader/FormMultiFileUploaderField.vue');\r\n\r\n@Component({\r\n components: {\r\n FormDateField,\r\n FormDropdownField,\r\n FormEmailField,\r\n FormStaticTextField,\r\n FormTelField,\r\n FormTextareaField,\r\n FormTextField,\r\n FormGraphicalPDFField,\r\n FormVideoUploadField,\r\n FormMultiFileUploaderField,\r\n },\r\n})\r\nexport default class Section extends Vue {\r\n @Prop({ required: true })\r\n private readonly def!: FormSection;\r\n\r\n @Prop({ required: true })\r\n private readonly errors!: FormSubmissionValidationError[];\r\n\r\n @Prop({ required: true })\r\n private readonly formContext!: FormConstructorData;\r\n\r\n @Prop({ required: true })\r\n private readonly formType!: string;\r\n\r\n getProps(field: FormField): object {\r\n return {\r\n def: field,\r\n formContext: this.formContext,\r\n formType: this.formType,\r\n errors: this.errors.filter((e) => e.Key === field.Key),\r\n };\r\n }\r\n\r\n handleInput(fieldDef: FormField): void {\r\n this.$emit('field_input', fieldDef);\r\n }\r\n\r\n collectData(): FormValue[] {\r\n return this.def.FormFields.map((field) => ((this.$refs[field.FieldId] as Vue[])[0] as unknown as IFormField).getValue());\r\n }\r\n\r\n setData(values: FormValue[]): void {\r\n this.def.FormFields.forEach((field) => {\r\n const val = values.find((v) => v.Key === field.Key);\r\n\r\n if (val === undefined || val.Value === null) return;\r\n\r\n ((this.$refs[field.FieldId] as Vue[])[0] as unknown as IFormField).setValue(val);\r\n });\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/@vue/cli-service/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--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/@vue/cli-service/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/cli-service/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","\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\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\nimport { FormDefinition, FormSubmissionValidationError, FormField, FormValue } from 'client-website-ts-library/types/Forms';\r\nimport {\r\n AutosaveManager,\r\n ServiceManager,\r\n ServiceType,\r\n API,\r\n Config,\r\n Logger,\r\n LogLevel,\r\n ReCaptchaService,\r\n} from 'client-website-ts-library/services';\r\nimport { Context } from 'client-website-ts-library/types';\r\nimport { PDFFieldData } from 'client-website-ts-library/types/Forms/FieldTypes';\r\nimport { IRequestProgressDelegate } from 'client-website-ts-library/services/API/IRequestProgressDelegate';\r\n\r\nimport Section from './Section.vue';\r\nimport Loader from '../UI/Loader.vue';\r\n\r\n@Component({\r\n components: {\r\n Section,\r\n Loader,\r\n },\r\n})\r\nexport default class Form extends Vue implements IRequestProgressDelegate {\r\n @Prop({ default: () => ({ Items: [] }) })\r\n private readonly context!: Context;\r\n\r\n @Prop()\r\n private readonly type!: string;\r\n\r\n @Prop()\r\n private readonly submitButtonColour!: string;\r\n\r\n @Prop()\r\n private readonly submitButtonBackgroundColour!: string;\r\n\r\n @Prop()\r\n private readonly submitButtonClass!: string;\r\n\r\n @Prop()\r\n private readonly autosaveNamespace!: string;\r\n\r\n @Prop()\r\n private readonly enableAutosave!: boolean;\r\n\r\n @Prop({ default: 'var(--form-field-bg)' })\r\n private readonly fieldBg!: string;\r\n\r\n @Prop({ default: 'var(--form-field-colour)' })\r\n private readonly fieldColour!: string;\r\n\r\n @Prop({ default: 'var(--form-label-colour)' })\r\n private readonly labelColour!: string;\r\n\r\n @Prop({ default: 'var(--form-field-border-colour)' })\r\n private readonly borderColour!: string;\r\n\r\n @Prop({ default: 'var(--form-label-focused-bg)' })\r\n private readonly labelFocusedBg!: string;\r\n\r\n @Prop({ default: 'var(--form-label-focused-colour)' })\r\n private readonly labelFocusedColour!: string;\r\n\r\n private ctx: Context = this.context;\r\n\r\n private errored = false;\r\n\r\n private submitted = false;\r\n\r\n private errors: FormSubmissionValidationError[] = [];\r\n\r\n private loading = true;\r\n\r\n private definition: FormDefinition | null = null;\r\n\r\n private autosaveManager: AutosaveManager = ServiceManager.Require(ServiceType.FormAutosave);\r\n\r\n private hasAutosave = false;\r\n\r\n private autosaveDate: string | null = null;\r\n\r\n private submitPercent = 0;\r\n\r\n private recaptchaService = ServiceManager.Require(ServiceType.ReCaptcha) as ReCaptchaService;\r\n\r\n onProgress(progress: number, total: number) {\r\n this.submitPercent = Math.round((progress / total) * 100);\r\n\r\n console.log(this.submitPercent);\r\n }\r\n\r\n mounted() {\r\n if (this.ctx === null) {\r\n this.ctx = {\r\n Items: [],\r\n ClientWebsiteId: Config.Website.Id,\r\n };\r\n }\r\n\r\n if (this.ctx.ClientWebsiteId === undefined) {\r\n this.ctx.ClientWebsiteId = Config.Website.Id;\r\n }\r\n\r\n API.Forms.GetForm(this.type, this.context).then((def) => {\r\n this.loading = false;\r\n this.definition = def;\r\n\r\n if (this.enableAutosave) {\r\n const state = this.autosaveManager.GetState(this.type);\r\n\r\n if (state !== null) {\r\n this.hasAutosave = true;\r\n }\r\n }\r\n }).catch(() => {\r\n this.errored = true;\r\n });\r\n }\r\n\r\n loadAutosave(): void {\r\n if (!this.hasAutosave) return;\r\n\r\n const state = this.autosaveManager.GetState(this.type);\r\n\r\n if (state === null) return;\r\n\r\n this.definition!.Sections.forEach((section) => {\r\n const sectionComponent = (this.$refs[section.SectionId] as Vue[])[0] as Section;\r\n\r\n sectionComponent.setData(state);\r\n });\r\n }\r\n\r\n private handleFieldInput(fieldDef: FormField): void {\r\n this.errors = this.errors.filter((err) => err.Key !== fieldDef.Key);\r\n }\r\n\r\n submitForm(): void {\r\n if (this.loading) return;\r\n\r\n this.loading = true;\r\n\r\n this.errors = [];\r\n\r\n this.collectData(true).then((data) => {\r\n const normalisedData = Form.normaliseData(data);\r\n\r\n console.log(normalisedData);\r\n\r\n this.loading = false;\r\n\r\n // this.context.ClientWebsiteId = Config.Website.Id;\r\n\r\n // if (this.enableAutosave) this.autosaveManager.SetState(this.type, data);\r\n\r\n API.Forms.SubmitForm(this.type, this.context, normalisedData).then((result) => {\r\n this.loading = false;\r\n\r\n if (!result.Valid) {\r\n // Reset ReCaptcha\r\n this.resetRecaptcha();\r\n\r\n // Update errors\r\n this.errors = result.ValidationState.Errors;\r\n } else if (result.Submitted) {\r\n // Inform the user that the form was submitted\r\n this.submitted = true;\r\n\r\n this.$emit('submitted');\r\n }\r\n }).catch(() => {\r\n // Reset ReCaptcha\r\n this.resetRecaptcha();\r\n\r\n // Inform the user that there was an error\r\n this.errored = true;\r\n });\r\n });\r\n }\r\n\r\n private static normaliseData(data: FormValue[]): FormValue[] {\r\n const newValues: FormValue[] = [];\r\n\r\n data.forEach((entry) => {\r\n if (entry.Value instanceof Array) {\r\n if (entry.Value.length) {\r\n newValues.push({\r\n Key: `${entry.Key}_length`,\r\n Value: entry.Value.length,\r\n });\r\n\r\n for (let i = 0; i < entry.Value.length; i += 1) {\r\n newValues.push({\r\n Key: `${entry.Key}_${i}`,\r\n Value: entry.Value[i],\r\n });\r\n }\r\n }\r\n } else {\r\n newValues.push(entry);\r\n }\r\n });\r\n\r\n return newValues;\r\n }\r\n\r\n private collectData(includeRecaptcha: boolean): Promise {\r\n return new Promise((resolve, reject) => {\r\n const data: FormValue[] = [];\r\n\r\n // Loop through each form secction and collect the data from it\r\n this.definition!.Sections.forEach((section) => {\r\n const sectionComponent = (this.$refs[section.SectionId] as Vue[])[0] as Section;\r\n\r\n data.push(...sectionComponent.collectData());\r\n });\r\n\r\n // If we also need to submit the ReCaptcha response, make sure we call getResponse on the ReCaptcha component\r\n if (includeRecaptcha) {\r\n this.getRecaptchaResponse().then((recaptchaResponse: string) => {\r\n Logger.Log(LogLevel.Debug, '[Form]', 'Got ReCaptcha response');\r\n\r\n data.push({\r\n Key: '_recaptcha',\r\n Value: recaptchaResponse,\r\n });\r\n\r\n resolve(data);\r\n }).catch(reject);\r\n\r\n return;\r\n }\r\n\r\n // If we don't need ReCaptcha, resolve straight away\r\n resolve(data);\r\n });\r\n }\r\n\r\n private resetRecaptcha(): void {\r\n this.recaptchaService.Reset();\r\n }\r\n\r\n private getRecaptchaResponse(): Promise {\r\n return this.recaptchaService.GetResponse();\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/@vue/cli-service/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--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/@vue/cli-service/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/cli-service/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--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/@vue/cli-service/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--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/@vue/cli-service/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":""}