UNPKG

@visitscotland/component-library

Version:
1 lines 2.7 kB
"use strict";(self.webpackChunk_visitscotland_component_library=self.webpackChunk_visitscotland_component_library||[]).push([[4282],{68269:function(t,i){i.A={computed:{ariaDescription:function(){return this.v$.inputVal&&this.v$.inputVal.$anyError||this.invalid?"error-".concat(this.fieldName):this.hintText?"hint-".concat(this.fieldName):null}}}},85510:function(t,i,e){var r=e(64467),n=e(3453),s=e(13855);function a(t,i){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);i&&(r=r.filter((function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable}))),e.push.apply(e,r)}return e}function o(t){for(var i=1;i<arguments.length;i++){var e=null!=arguments[i]?arguments[i]:{};i%2?a(Object(e),!0).forEach((function(i){(0,r.A)(t,i,e[i])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(e)):a(Object(e)).forEach((function(i){Object.defineProperty(t,i,Object.getOwnPropertyDescriptor(e,i))}))}return t}var u=s._$.regex(/^([A-Za-z][A-HJ-Ya-hj-y]?\d[A-Za-z\d]? ?\d[A-Za-z]{2}|GIR ?0A{2})$/),l={emits:["status-update"],data:function(){return{inputVal:this.value,isInvalid:this.invalid}},computed:{isRequired:function(){return void 0!==s.mw&&"required"in this.validationRules},rules:function(){for(var t=this,i={},e=0,r=Object.entries(this.validationRules);e<r.length;e++){var a=(0,n.A)(r[e],2),l=a[0],c=a[1];"required"===l?i=o(o({},i),{},{required:s.mw}):"email"===l?i=o(o({},i),{},{email:s.Rp}):"minLength"===l?i=o(o({},i),{},{minLength:(0,s.Bp)(c)}):"maxLength"===l?i=o(o({},i),{},{maxLength:(0,s.Ru)(c)}):"invalidVal"===l?i=o(o({},i),{},{noInvalid:function(){return-1===t.inputVal.indexOf(t.validationRules.invalidVal)}}):"postcode"===l&&(i=o(o({},i),{},{postcode:u}))}return void 0!==i?{inputVal:i=o({},i)}:{}},errorsList:function(){var t=this,i=[];return Object.keys(this.rules.inputVal).forEach((function(e){t.v$.$errors&&t.v$.$errors.forEach((function(t){t.$validator===e&&i.push(e)}))})),i}},watch:{errorsList:function(t){t.length?this.isInvalid=!0:this.isInvalid=!1}},methods:{manualValidate:function(){var t=this;if(this.isInvalid=!1,"required"in this.rules.inputVal){var i=!1;"string"==typeof this.inputVal?/\S/.test(this.inputVal)||(i=!0):this.inputVal||(i=!0),i&&-1===this.errorsList.indexOf("required")&&this.errorsList.push("required")}else this.errorsList.forEach((function(i,e){"required"===i&&t.errorsList.splice(e,1)}));this.errorsList.length&&(this.isInvalid=!0),this.touched=!0,this.$emit("status-update",{field:this.fieldName,value:this.inputVal,errors:this.errorsList})},emitStatus:function(){var t=this;setTimeout((function(){t.manualValidate(),t.touched=!0,t.v$.$touch()}),50)}}};i.A=l}}]);