@visitscotland/component-library 4.3.7 → 4.3.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -20,7 +20,7 @@
20
20
  "index.js"
21
21
  ],
22
22
  "styles": [
23
- "styles/824d26207a7669ccafe3.css"
23
+ "styles/8d0a04782e54e55d2f8b.css"
24
24
  ]
25
25
  }
26
26
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@visitscotland/component-library",
3
- "version": "4.3.7",
3
+ "version": "4.3.8",
4
4
  "description": "VisitScotland Component Library",
5
5
  "author": "VisitScotland",
6
6
  "homepage": "https://github.com/visitscotland/vs-component-library#readme",
@@ -1 +0,0 @@
1
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.VsForm=t():e.VsForm=t()}(self,(function(){return(self.webpackChunk_visitscotland_component_library=self.webpackChunk_visitscotland_component_library||[]).push([[1736],{69577:function(){},97272:function(e,t,a){"use strict";var i=a(64467),n=a(3453),r=a(34352),s=a(57536),o=a(88620),l=a(22142),d=a(51688),u=a(26358),f=a(88258),g=a(48836),c=a(13838),m=a(79122),h=a(11696),p=a(98745);function v(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,i)}return a}function b(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?v(Object(a),!0).forEach((function(t){(0,i.A)(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):v(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}t.A={name:"VsForm",status:"prototype",release:"0.0.1",components:{VsInput:l.default,VsSelect:d.default,VsCheckbox:u.default,BFormGroup:r.a3,VsRecaptcha:f.default,VsButton:g.default,VsHeading:c.default,VsWarning:m.default,VsTextarea:h.default},mixins:[p.default],props:{isMarketo:{type:Boolean,default:!0},submitUrl:{type:String,default:""},dataUrl:{type:String,required:!0},recaptchaKey:{type:String,default:(0,o.A)("RECAPTCHA_TOKEN")},recaptchaTextareaLabel:{type:String,default:"Does not need any text"},isProd:{type:Boolean,default:!1},munchkinId:{type:String,default:""},marketoInstance:{type:String,default:""},language:{type:String,default:"en"},messagingUrl:{type:String,required:!0},countryListUrl:{type:String,default:""},isTest:{type:Boolean,default:!0}},data:function(){return{submitted:!1,submitting:!1,submitError:!1,formData:{},messagingData:{},form:{},formIsInvalid:!1,showErrorMessage:!1,errorFields:[],triggerValidate:!1,recaptchaVerified:!1,conditionalFields:{},inputVal:"",reAlertErrors:!1,emailFieldName:""}},computed:{formId:function(){return this.isProd?this.formData.formLiveId:this.formData.formSandboxId},showFormHeading:function(){return!this.isUndefined(this.getTranslatedContent)&&!this.isUndefined(this.getTranslatedContent("heading"))}},created:function(){this.getFormData(),this.getGlobalMessaging()},methods:{getFormData:function(){var e=this;s.A.get(this.dataUrl).then((function(t){e.formData=t.data,e.isMarketo&&window.MktoForms2&&window.MktoForms2.loadForm(e.marketoInstance,e.munchkinId,e.formId),t.data.fields.forEach((function(t){e.form[t.name]="",t.conditional&&(e.conditionalFields[t.name]=!1)})),e.checkConditionalFields()})).catch((function(){}))},getGlobalMessaging:function(){var e=this;s.A.get(this.messagingUrl).then((function(t){e.messagingData=t.data})).catch((function(){}))},getLanguageObj:function(){return this.isUndefined(this.formData[this.language])?{}:this.formData[this.language]||void 0},getTranslatedLabel:function(e,t){var a=this.getLanguageObj(),i="";return i="en"===this.language||this.isUndefined(a[e])||this.isUndefined(a[e].label)?this.formData.fields[t].label:a[e].label,this.showOptionalText(this.formData.fields[t])&&!this.isUndefined(this.getMessagingData("optional",this.language))&&(i="".concat(i," (").concat(this.getMessagingData("optional",this.language),")")),i},getTranslatedLegend:function(e,t){var a=this.getLanguageObj();return"en"===this.language||this.isUndefined(a[e])||this.isUndefined(a[e].descriptor)?this.formData.fields[t].descriptor:a[e].descriptor},getTranslatedInfo:function(e,t){var a=this.getLanguageObj();return"en"===this.language||this.isUndefined(a[e])||this.isUndefined(a[e].info)?this.formData.fields[t].info:a[e].info},getTranslatedValidation:function(e,t){var a,i=this.getLanguageObj();return"en"!==this.language||this.isUndefined(this.formData.fields[t].validationMessages)?this.isUndefined(i[e])||this.isUndefined(i[e].validationMessages)?"en"===this.language&&(a=this.formData.fields[t].validationMessages):a=i[e].validationMessages:a=this.formData.fields[t].validationMessages,a},getTranslatedOptions:function(e,t){var a=this.getLanguageObj(),i=[];return void 0===(i="en"===this.language||this.isUndefined(a[e])||this.isUndefined([e].options)?this.formData.fields[t].options:a[e].options)&&(i=[]),i},getTranslatedHint:function(e,t){var a=this.getLanguageObj();return"en"===this.language||this.isUndefined(a[e])||this.isUndefined(a[e].hint)?this.isUndefined(this.formData.fields[t].hint)?"":this.formData.fields[t].hint:a[e].hint},getTranslatedContent:function(e){var t=this.getLanguageObj();return"en"!==this.language||this.isUndefined(this.formData.content)||this.isUndefined(this.formData.content[e])?this.isUndefined(t.content)||this.isUndefined(t.content[e])?this.getMessagingData(e,this.language):t.content[e]:this.formData.content[e]},getMessagingData:function(e,t){return Object.keys(this.messagingData).length>0?this.messagingData[t][e]:"validation"===e?{}:""},getHiddenFields:function(){var e=this.$el.querySelectorAll("input[type=hidden]"),t={};return e.forEach((function(e){t[e.name]=e.value})),t},isUndefined:function(e){return void 0===e},updateFieldData:function(e){this.form[e.field]=e.value||"",Array.isArray(e.errors)?this.formIsInvalid=e.errors.length>0:this.formIsInvalid=null!==e.errors,this.manageErrorStatus(e.field,e.errors),this.checkConditionalFields()},manageErrorStatus:function(e,t){var a=this.errorFields.indexOf(e);-1!==a?(!t||t.length<1)&&this.errorFields.splice(a,1):t&&t.length>0&&this.errorFields.push(e)},showOptionalText:function(e){return!(!this.isUndefined(e.validation)&&!this.isUndefined(e.validation.required))},needsLabel:function(e){return"radio"!==e.element&&"submit"!==e.element&&"checkbox"!==e.element},preSubmit:function(e){var t=this;e.preventDefault(),this.isTest||this.onRecaptchaVerify(),this.triggerValidate=!0;var a=this.formData.fields.filter((function(e){return e.validation&&e.validation.required}));0===a.length?this.formIsInvalid=!1:a.forEach((function(e){if(!/\S/.test(t.form[e.name])){var a=!0;e.name in t.conditionalFields&&!t.conditionalFields[e.name]&&(a=!1),t.formIsInvalid=a}})),this.showErrorMessage=this.formIsInvalid,Object.entries(this.conditionalFields).forEach((function(e){var a=(0,n.A)(e,2),i=a[0];a[1]||(t.form[i]="")})),this.errorFields.length>0&&(this.formIsInvalid=!0),!this.formIsInvalid&&this.recaptchaVerified?this.isMarketo?this.marketoSubmit():this.axiosSubmit():(this.showErrorMessage=!0,this.reAlertErrors=!0,setTimeout((function(){t.reAlertErrors=!1}),100))},marketoSubmit:function(){var e=this;this.createDataLayerObject("formsDataEvent");var t=window.MktoForms2.allForms()[0];t.addHiddenFields(this.form),window.grecaptcha&&t.addHiddenFields({lastReCAPTCHAUserFingerprint:window.grecaptcha.getResponse(),lastRecaptchaEnabledFormID:this.formId}),t.onSuccess((function(){return e.submitting=!1,e.submitted=!0,e.attachEmail(),!1})),t.onSubmit((function(){e.submitting=!0})),t.submit()},axiosSubmit:function(){var e=this;this.createDataLayerObject("formsDataEvent"),this.submitting=!0;var t="";window.grecaptcha&&(t=window.grecaptcha.getResponse());var a=this.getHiddenFields();s.A.post(this.submitUrl,b(b(b({},this.form),a),{},{formType:this.formData.content?this.formData.content.formType:"","g-recaptcha-response":t})).then((function(){return e.submitting=!1,e.submitted=!0,e.attachEmail(),!1})).catch((function(){}))},attachEmail:function(){var e=this;this.formData.fields.forEach((function(t){"email"!==t.type||e.emailFieldName||(e.emailFieldName=t.name)})),this.emailFieldName&&"undefined"!=typeof exponea&&exponea.identify({email_id:this.form[this.emailFieldName]},null,null,null,!0)},onRecaptchaVerify:function(){window.grecaptcha&&"function"==typeof window.grecaptcha.getResponse&&""!==window.grecaptcha.getResponse()?this.recaptchaVerified=!0:this.recaptchaVerified=!1},checkConditionalFields:function(){var e=this;Object.keys(this.conditionalFields).forEach((function(t){var a=e.formData.fields.find((function(e){return e.name===t})),i=!0;Object.keys(a.conditional).forEach((function(n){var r=a.conditional[n];Array.isArray(r)?-1===r.indexOf(e.form[n])&&(i=!1):e.form[n]!==r&&(i=!1),i?e.conditionalFields[t]||(e.conditionalFields[t]=!0,e.$refs[t]&&e.$refs[t][0].manualValidate()):(e.manageErrorStatus(t,[]),e.conditionalFields[t]=!1)}))}))},conditionalElementClass:function(e){return!0===this.conditionalFields[e]||void 0===this.conditionalFields[e]?"":"d-none"}}}},56389:function(e,t,a){"use strict";a.d(t,{X:function(){return m}});var i=a(20641),n=a(53751),r=a(90033),s={class:"vs-form","data-test":"vs-form"},o=(0,i.Lk)("form",{class:"d-none"},null,-1),l={class:"vs-form__main-heading vs-heading vs-heading--heading-l float-none","data-test":"vs-form__main-heading"},d={key:0},u={"aria-live":"assertive"},f={key:0},g=["innerHTML"],c={key:2};function m(e,t,a,m,h,p){var v=(0,i.g2)("VsInput"),b=(0,i.g2)("VsSelect"),y=(0,i.g2)("VsCheckbox"),D=(0,i.g2)("VsTextarea"),F=(0,i.g2)("BFormGroup"),k=(0,i.g2)("VsRecaptcha"),E=(0,i.g2)("VsButton"),T=(0,i.g2)("VsWarning"),O=(0,i.g2)("VsHeading");return(0,i.uX)(),(0,i.CE)("div",s,[o,h.submitted?(0,i.Q3)("",!0):((0,i.uX)(),(0,i.CE)("form",{key:0,onSubmit:t[0]||(t[0]=(0,n.withModifiers)((function(){return p.preSubmit&&p.preSubmit.apply(p,arguments)}),["prevent"]))},[(0,i.Lk)("fieldset",null,[(0,i.Lk)("legend",l,(0,r.toDisplayString)(p.getTranslatedContent("heading")),1),((0,i.uX)(!0),(0,i.CE)(i.FK,null,(0,i.pI)(h.formData.fields,(function(e,t){return(0,i.uX)(),(0,i.Wv)(F,{key:e.name,label:p.needsLabel(e)?p.getTranslatedLabel(e.name,t):"","label-for":p.needsLabel(e)?e.name:"",class:(0,r.normalizeClass)(p.conditionalElementClass(e.name))},{default:(0,i.k6)((function(){return[p.isUndefined(e.descriptor)||"checkbox"!==e.element?(0,i.Q3)("",!0):((0,i.uX)(),(0,i.CE)("legend",d,(0,r.toDisplayString)(p.getTranslatedLegend(e.name,t)),1)),(0,i.Lk)("div",{class:(0,r.normalizeClass)(p.conditionalElementClass(e.name))},["input"===e.element?((0,i.uX)(),(0,i.Wv)(v,{key:0,ref_for:!0,ref:e.name,onStatusUpdate:p.updateFieldData,"field-name":e.name,type:e.type,"validation-rules":e.validation||{},"validation-messages":p.getTranslatedValidation(e.name,t)||{},"generic-validation":p.getMessagingData("validation",a.language),invalid:h.errorFields.indexOf(e.name)>-1,"trigger-validate":h.triggerValidate,"hint-text":p.getTranslatedHint(e.name,t),placeholder:e.placeholder||"","re-alert-errors":h.reAlertErrors},null,8,["onStatusUpdate","field-name","type","validation-rules","validation-messages","generic-validation","invalid","trigger-validate","hint-text","placeholder","re-alert-errors"])):(0,i.Q3)("",!0),"select"===e.element?((0,i.uX)(),(0,i.Wv)(b,{key:1,options:p.getTranslatedOptions(e.name,t),ref_for:!0,ref:e.name,onStatusUpdate:p.updateFieldData,"field-name":e.name,"validation-rules":e.validation||{},"validation-messages":p.getTranslatedValidation(e.name,t)||{},"generic-validation":p.getMessagingData("validation",a.language),invalid:h.errorFields.indexOf(e.name)>-1,"trigger-validate":h.triggerValidate,"country-list-url":a.countryListUrl,countries:e.countries,"hint-text":p.getTranslatedHint(e.name,t),"re-alert-errors":h.reAlertErrors},null,8,["options","onStatusUpdate","field-name","validation-rules","validation-messages","generic-validation","invalid","trigger-validate","country-list-url","countries","hint-text","re-alert-errors"])):(0,i.Q3)("",!0),"checkbox"===e.element?((0,i.uX)(),(0,i.Wv)(y,{key:e.name,ref_for:!0,ref:e.name,name:e.name,value:e.value,label:p.getTranslatedLabel(e.name,t),onStatusUpdate:p.updateFieldData,"field-name":e.name,"validation-rules":e.validation||{},"validation-messages":p.getTranslatedValidation(e.name,t)||{},"generic-validation":p.getMessagingData("validation",a.language),invalid:h.errorFields.indexOf(e.name)>-1,"trigger-validate":h.triggerValidate,"optional-text":p.getMessagingData("optional",a.language),"hint-text":p.getTranslatedHint(e.name,t),"info-text":p.getTranslatedInfo(e.name,t),"re-alert-errors":h.reAlertErrors},null,8,["name","value","label","onStatusUpdate","field-name","validation-rules","validation-messages","generic-validation","invalid","trigger-validate","optional-text","hint-text","info-text","re-alert-errors"])):(0,i.Q3)("",!0),"textarea"===e.element?((0,i.uX)(),(0,i.Wv)(D,{key:3,ref_for:!0,ref:e.name,onStatusUpdate:p.updateFieldData,"field-name":e.name,"validation-rules":e.validation||{},"validation-messages":p.getTranslatedValidation(e.name,t)||{},"generic-validation":p.getMessagingData("validation",a.language),invalid:h.errorFields.indexOf(e.name)>-1,"trigger-validate":h.triggerValidate,"hint-text":p.getTranslatedHint(e.name,t),placeholder:e.placeholder||"","re-alert-errors":h.reAlertErrors,rows:e.rows||null},null,8,["onStatusUpdate","field-name","validation-rules","validation-messages","generic-validation","invalid","trigger-validate","hint-text","placeholder","re-alert-errors","rows"])):(0,i.Q3)("",!0)],2)]})),_:2},1032,["label","label-for","class"])})),128))]),(0,i.RG)(e.$slots,"hidden-fields"),(0,i.bF)(k,{onVerified:p.onRecaptchaVerify,"site-key":a.recaptchaKey,invalid:!h.recaptchaVerified&&h.showErrorMessage,language:a.language,"error-msg":p.getMessagingData("recaptchaError",a.language),class:"mt-300","textarea-label":a.recaptchaTextareaLabel,"re-alert-errors":h.reAlertErrors},null,8,["onVerified","site-key","invalid","language","error-msg","textarea-label","re-alert-errors"]),(0,i.bF)(E,{variant:"primary",type:"submit",class:"vs-form__submit mt-300",onClick:p.preSubmit},{default:(0,i.k6)((function(){return[(0,i.eW)((0,r.toDisplayString)(p.getTranslatedContent("submit")),1)]})),_:1},8,["onClick"])],32)),(0,i.bF)(T,{class:"vs-form__no-js"},{default:(0,i.k6)((function(){return[(0,i.RG)(e.$slots,"no-js")]})),_:3}),(0,i.Lk)("div",u,[h.submitting?((0,i.uX)(),(0,i.CE)("p",f,[(0,i.RG)(e.$slots,"submitting")])):(0,i.Q3)("",!0),h.submitted?((0,i.uX)(),(0,i.CE)(i.FK,{key:1},[p.getTranslatedContent("successHeading")?((0,i.uX)(),(0,i.Wv)(O,{key:0,level:"2","heading-style":"heading-l"},{default:(0,i.k6)((function(){return[(0,i.eW)((0,r.toDisplayString)(p.getTranslatedContent("successHeading")),1)]})),_:1})):(0,i.Q3)("",!0),(0,i.Lk)("p",{class:"vs-form__content",innerHTML:p.getTranslatedContent("successContent")},null,8,g)],64)):(0,i.Q3)("",!0),h.submitError?((0,i.uX)(),(0,i.CE)("p",c,[(0,i.RG)(e.$slots,"submit-error")])):(0,i.Q3)("",!0)])])}},81351:function(e,t,a){"use strict";var i=a(85072),n=a.n(i),r=a(97825),s=a.n(r),o=a(77659),l=a.n(o),d=a(55056),u=a.n(d),f=a(10540),g=a.n(f),c=a(41113),m=a.n(c),h=a(69577),p=a.n(h),v={};v.styleTagTransform=m(),v.setAttributes=u(),v.insert=l().bind(null,"head"),v.domAPI=s(),v.insertStyleElement=g(),n()(p(),v),p()&&p().locals&&p().locals},19464:function(e,t,a){"use strict";a.r(t);var i=a(74101),n=a(18668);a(16243);const r=(0,a(66262).A)(n.A,[["render",i.X]]);t.default=r},18668:function(e,t,a){"use strict";a.d(t,{A:function(){return i.A}});var i=a(97272)},74101:function(e,t,a){"use strict";a.d(t,{X:function(){return i.X}});var i=a(56389)},16243:function(e,t,a){"use strict";a(81351)}},function(e){return e.O(0,[641,6262,7510,3751,4352,4467,7527,8086,810,2543,3453,281,7536,7171,6422,8745,8836,3838,9122,4282,2142,1688,1696,6358,8258],(function(){return 19464,e(e.s=19464)})),e.O()}])}));