{"version":3,"sources":["webpack:///./src/components/UI/Loader.vue?15e6","webpack:///./src/components/UI/Loader.vue","webpack:///./src/components/UI/Loader.vue?05d4","webpack:///./src/components/UI/Loader.vue?d4ac","webpack:///./src/components/Forms/ErrorList.vue?dcd8","webpack:///./src/components/Forms/Form.vue?35da","webpack:///./src/components/Forms/Section.vue?8823","webpack:///./src/components/UI/Loader.vue?d2c4","webpack:///./src/components/Forms/ErrorList.vue?9cde","webpack:///./src/components/Forms/ErrorList.vue","webpack:///./src/components/Forms/ErrorList.vue?805f","webpack:///./src/components/Forms/ErrorList.vue?12a6","webpack:///./node_modules/client-website-ts-library/plugins/view/index.ts","webpack:///./src/components/Forms/Form.vue?c801","webpack:///./src/components/Forms/Section.vue?b29b","webpack:///./src/components/Forms/FieldTypes/FormDateField.vue?a4b3","webpack:///./src/components/Forms/FieldTypes/FormDateField.vue","webpack:///./src/components/Forms/FieldTypes/FormDateField.vue?e801","webpack:///./src/components/Forms/FieldTypes/FormDateField.vue?e688","webpack:///./src/components/Forms/FieldTypes/FormDropdownField.vue?2fe9","webpack:///./src/components/Forms/FieldTypes/FormDropdownField.vue","webpack:///./src/components/Forms/FieldTypes/FormDropdownField.vue?8924","webpack:///./src/components/Forms/FieldTypes/FormDropdownField.vue?97ae","webpack:///./src/components/Forms/FieldTypes/FormEmailField.vue?94fc","webpack:///./src/components/Forms/FieldTypes/FormEmailField.vue","webpack:///./src/components/Forms/FieldTypes/FormEmailField.vue?9c17","webpack:///./src/components/Forms/FieldTypes/FormEmailField.vue?6a2f","webpack:///./src/components/Forms/FieldTypes/FormStaticTextField.vue?f7e2","webpack:///./src/components/Forms/FieldTypes/FormStaticTextField.vue","webpack:///./src/components/Forms/FieldTypes/FormStaticTextField.vue?8813","webpack:///./src/components/Forms/FieldTypes/FormStaticTextField.vue?c88b","webpack:///./src/components/Forms/FieldTypes/FormTelField.vue?74fa","webpack:///./src/components/Forms/FieldTypes/FormTelField.vue","webpack:///./src/components/Forms/FieldTypes/FormTelField.vue?f3fd","webpack:///./src/components/Forms/FieldTypes/FormTelField.vue?b788","webpack:///./src/components/Forms/FieldTypes/FormTextareaField.vue?4578","webpack:///./src/components/Forms/FieldTypes/FormTextareaField.vue","webpack:///./src/components/Forms/FieldTypes/FormTextareaField.vue?ba41","webpack:///./src/components/Forms/FieldTypes/FormTextareaField.vue?997b","webpack:///./src/components/Forms/FieldTypes/FormTextField.vue?be67","webpack:///./src/components/Forms/FieldTypes/FormTextField.vue","webpack:///./src/components/Forms/FieldTypes/FormTextField.vue?a3ac","webpack:///./src/components/Forms/FieldTypes/FormTextField.vue?b8fa","webpack:///./src/components/Forms/Section.vue","webpack:///./src/components/Forms/Section.vue?e2a0","webpack:///./src/components/Forms/Section.vue?80a3","webpack:///./src/components/Forms/Form.vue","webpack:///./src/components/Forms/Form.vue?d965","webpack:///./src/components/Forms/Form.vue?4d45","webpack:///./src/components/Forms/FieldTypes/FormDropdownField.vue?af7a","webpack:///./src/components/Forms/Form.vue?d5d9"],"names":["render","_vm","this","_h","$createElement","_c","_self","directives","name","rawName","value","expression","staticClass","staticRenderFns","component","_l","error","key","Key","SubfieldKey","_v","_s","Message","prolistAnalyticsService","ServiceManager","Get","Analytics","headService","Require","Head","evt","obj","getAnalyticsEvent","call","getAnalyticsData","$route","path","undefined","triggerAnalyticsEvent","event","GetAll","forEach","adapter","Record","result","head","bind","Promise","then","meta","Update","UpdateWithStatic","View","requestAnimationFrame","updateHead","updateAnalytics","AsyncView","$on","style","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","elemId","Required","Placeholder","$event","target","composing","Label","length","Value","$emit","components","ErrorList","$$selectedVal","Array","prototype","filter","options","o","selected","map","val","_value","multiple","option","MaxLength","MinLength","CSSStyles","Text","FormGraphicalPDFField","FormVideoUploadField","FormMultiFileUploaderField","formContext","formType","e","fieldDef","FormFields","$refs","getValue","values","find","v","setValue","required","FormDateField","FormDropdownField","FormEmailField","FormStaticTextField","FormTelField","FormTextareaField","FormTextField","context","errored","submitted","autosaveManager","FormAutosave","hasAutosave","submitPercent","recaptchaService","ReCaptcha","propertyAdressFormFieldValue","fieldBg","fieldColour","borderColour","labelColour","labelFocusedBg","labelFocusedColour","underlineInactive","underlineActive","progress","total","Math","round","console","log","Items","ClientWebsiteId","Website","Id","Forms","GetForm","enableAutosave","state","GetState","catch","Sections","sectionComponent","setData","err","collectData","includeRecaptcha","data","normalisedData","normaliseData","SubmitForm","Valid","Submitted","Result","resetRecaptcha","ValidationState","Errors","finally","newValues","entry","push","i","resolve","reject","setTimeout","getRecaptchaResponse","recaptchaResponse","Log","Debug","Reset","GetResponse","default","Section","Loader"],"mappings":"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","file":"js/chunk-195a41ff.b3067861.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.loading),expression:\"loading\"}],staticClass:\"loader\"})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class Loader extends Vue {\r\n @Prop()\r\n private readonly loading!: boolean;\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-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--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-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Loader.vue?vue&type=template&id=1c9cce74&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=1c9cce74&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 \"1c9cce74\",\n null\n \n)\n\nexport default component.exports","import mod 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-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-loader/lib/index.js??vue-loader-options!./ErrorList.vue?vue&type=style&index=0&id=13c6ef07&scoped=true&lang=css&\"; export default mod; 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-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-loader/lib/index.js??vue-loader-options!./ErrorList.vue?vue&type=style&index=0&id=13c6ef07&scoped=true&lang=css&\"","import mod 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-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-loader/lib/index.js??vue-loader-options!./Form.vue?vue&type=style&index=1&lang=css&\"; export default mod; 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-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-loader/lib/index.js??vue-loader-options!./Form.vue?vue&type=style&index=1&lang=css&\"","import mod 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-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-loader/lib/index.js??vue-loader-options!./Section.vue?vue&type=style&index=0&id=632f4da6&scoped=true&lang=css&\"; export default mod; 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-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-loader/lib/index.js??vue-loader-options!./Section.vue?vue&type=style&index=0&id=632f4da6&scoped=true&lang=css&\"","import mod 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-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-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=style&index=0&id=1c9cce74&scoped=true&lang=css&\"; export default mod; 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-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-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=style&index=0&id=1c9cce74&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-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-loader/lib/index.js??vue-loader-options!./ErrorList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ErrorList.vue?vue&type=template&id=13c6ef07&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=13c6ef07&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 \"13c6ef07\",\n null\n \n)\n\nexport default component.exports","import Vue from \"vue\";\r\nimport { Component } from \"vue-property-decorator\";\r\nimport { AnalyticsEvent, AnalyticsEventObject, AnalyticsPageView, IAnalyticsAdapter, PROListAnalyticsAdapter } from \"../../services/Analytics\";\r\nimport { HeadService } from \"../../services/HeadService\";\r\nimport { ServiceManager, ServiceType } from \"../../services/ServiceManager\";\r\nimport { RouteMeta } from \"../meta\";\r\n\r\ninterface ViewBase {\r\n getAnalyticsEvent?(): AnalyticsEvent | null;\r\n getAnalyticsData?(): AnalyticsEventObject | null;\r\n head?(): RouteMeta | Promise | null;\r\n}\r\n\r\n@Component\r\nclass ViewBase extends Vue {\r\n protected prolistAnalyticsService = ServiceManager.Get(ServiceType.Analytics, 'PROListAnalyticsAdapter');\r\n protected headService = ServiceManager.Require(ServiceType.Head)!;\r\n\r\n public updateAnalytics() {\r\n let evt: AnalyticsEvent | null = null;\r\n let obj: AnalyticsEventObject | null = null;\r\n\r\n if (typeof this.getAnalyticsEvent !== 'undefined') {\r\n evt = this.getAnalyticsEvent.call(this);\r\n } else if(typeof this.getAnalyticsData !== 'undefined') {\r\n obj = this.getAnalyticsData.call(this);\r\n }\r\n\r\n if (evt === null) evt = new AnalyticsPageView(this.$route.path, this.$route.name || '', obj || undefined);\r\n\r\n this.triggerAnalyticsEvent(evt);\r\n }\r\n\r\n public triggerAnalyticsEvent(event: AnalyticsEvent) {\r\n ServiceManager.GetAll(ServiceType.Analytics).forEach((adapter) => {\r\n adapter.Record(event);\r\n });\r\n }\r\n\r\n public triggerCustomAnalyticsEvent(event: AnalyticsEvent) {\r\n if (this.prolistAnalyticsService !== null) this.prolistAnalyticsService.Record(event);\r\n }\r\n\r\n protected updateHead() {\r\n if ('head' in this) {\r\n const result = this.head!.bind(this)();\r\n\r\n if(result instanceof Promise) {\r\n result.then((meta: RouteMeta | null) => {\r\n this.headService.Update(meta);\r\n });\r\n } else {\r\n this.headService.Update(result as RouteMeta | null);\r\n }\r\n } else {\r\n this.headService.UpdateWithStatic(this.$route.path);\r\n }\r\n }\r\n}\r\n\r\n@Component\r\nclass View extends ViewBase {\r\n public mounted() {\r\n requestAnimationFrame(() => {\r\n this.updateHead();\r\n this.updateAnalytics();\r\n });\r\n }\r\n}\r\n\r\n@Component\r\nclass AsyncView extends ViewBase {\r\n public mounted() {\r\n this.$on('updateView', () => {\r\n requestAnimationFrame(() => {\r\n this.updateHead();\r\n this.updateAnalytics();\r\n });\r\n });\r\n }\r\n}\r\n\r\nexport {\r\n View,\r\n AsyncView\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('form',{staticClass:\"form\",style:(_vm.formStyle)},[_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.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}})}),(_vm.errored)?_c('div',{staticClass:\"form__panel form__panel--errored\"},[_c('p',[_vm._v(\" Please fill out all red highlighted fields. \")])]):_vm._e(),_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-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-loader/lib/index.js??vue-loader-options!./FormDateField.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormDateField.vue?vue&type=template&id=7316195a&\"\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 () {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-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-loader/lib/index.js??vue-loader-options!./FormDropdownField.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormDropdownField.vue?vue&type=template&id=ce944540&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=ce944540&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 \"ce944540\",\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-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-loader/lib/index.js??vue-loader-options!./FormEmailField.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormEmailField.vue?vue&type=template&id=179cda90&\"\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 () {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-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-loader/lib/index.js??vue-loader-options!./FormStaticTextField.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormStaticTextField.vue?vue&type=template&id=56be8314&\"\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 () {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-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-loader/lib/index.js??vue-loader-options!./FormTelField.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormTelField.vue?vue&type=template&id=58b41292&\"\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 () {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-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-loader/lib/index.js??vue-loader-options!./FormTextareaField.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormTextareaField.vue?vue&type=template&id=1b710161&\"\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 () {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-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-loader/lib/index.js??vue-loader-options!./FormTextField.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormTextField.vue?vue&type=template&id=355731dd&\"\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","\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-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-loader/lib/index.js??vue-loader-options!./Section.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Section.vue?vue&type=template&id=632f4da6&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=632f4da6&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 \"632f4da6\",\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\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 @Prop({ default: '#eee' })\r\n private readonly underlineInactive!: string;\r\n\r\n @Prop({ default: 'var(--brand-primary)' })\r\n private readonly underlineActive!: string;\r\n\r\n @Prop({ default: true })\r\n private readonly includeRecaptcha!: boolean;\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 private propertyAdressFormFieldValue: string | null = null;\r\n\r\n get formStyle() {\r\n return {\r\n '--field-bg': this.fieldBg,\r\n '--field-colour': this.fieldColour,\r\n '--border-colour': this.borderColour,\r\n '--label-colour': this.labelColour,\r\n '--label-focused-bg': this.labelFocusedBg,\r\n '--label-focused-colour': this.labelFocusedColour,\r\n '--underline-inactive': this.underlineInactive,\r\n '--underline-active': this.underlineActive,\r\n };\r\n }\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(this.includeRecaptcha).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 this.errored = true;\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', result.Result);\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 }).finally(() => {\r\n this.loading = false;\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 setTimeout(() => {\r\n this.loading = false;\r\n }, 1000);\r\n\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-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-loader/lib/index.js??vue-loader-options!./Form.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Form.vue?vue&type=template&id=57affc4e&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=57affc4e&scoped=true&lang=css&\"\nimport style1 from \"./Form.vue?vue&type=style&index=1&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 \"57affc4e\",\n null\n \n)\n\nexport default component.exports","import mod 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-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-loader/lib/index.js??vue-loader-options!./FormDropdownField.vue?vue&type=style&index=0&id=ce944540&scoped=true&lang=css&\"; export default mod; 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-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-loader/lib/index.js??vue-loader-options!./FormDropdownField.vue?vue&type=style&index=0&id=ce944540&scoped=true&lang=css&\"","import mod 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-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-loader/lib/index.js??vue-loader-options!./Form.vue?vue&type=style&index=0&id=57affc4e&scoped=true&lang=css&\"; export default mod; 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-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-loader/lib/index.js??vue-loader-options!./Form.vue?vue&type=style&index=0&id=57affc4e&scoped=true&lang=css&\""],"sourceRoot":""}