1 | !function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(require("./foundation.core"),require("jquery")):"function"==typeof define&&define.amd?define(["./foundation.core","jquery"],e):"object"==typeof exports?exports["foundation.abide"]=e(require("./foundation.core"),require("jquery")):(t.__FOUNDATION_EXTERNAL__=t.__FOUNDATION_EXTERNAL__||{},t.__FOUNDATION_EXTERNAL__["foundation.abide"]=e(t.__FOUNDATION_EXTERNAL__["foundation.core"],t.jQuery))}(window,function(r,i){return o={},a.m=n={"./foundation.core":function(t,e){t.exports=r},"./js/entries/plugins/foundation.abide.js":function(t,e,r){"use strict";r.r(e);var i=r("./foundation.core");r.d(e,"Foundation",function(){return i.Foundation});var a=r("./js/foundation.abide.js");r.d(e,"Abide",function(){return a.Abide}),i.Foundation.plugin(a.Abide,"Abide")},"./js/foundation.abide.js":function(t,e,r){"use strict";r.r(e),r.d(e,"Abide",function(){return d});var i=r("jquery"),f=r.n(i),o=r("./foundation.core");function a(t){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function n(t,e){for(var r=0;r<e.length;r++){var i=e[r];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function s(t,e){return!e||"object"!==a(e)&&"function"!=typeof e?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):e}function l(t){return(l=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function u(t,e){return(u=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var d=function(){function i(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,i),s(this,l(i).apply(this,arguments))}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&u(t,e)}(i,o["Plugin"]),function(t,e,r){e&&n(t.prototype,e),r&&n(t,r)}(i,[{key:"_setup",value:function(t,e){var r=1<arguments.length&&void 0!==e?e:{};this.$element=t,this.options=f.a.extend(!0,{},i.defaults,this.$element.data(),r),this.isEnabled=!0,this.formnovalidate=null,this.className="Abide",this._init()}},{key:"_init",value:function(){var r=this;this.$inputs=f.a.merge(this.$element.find("input").not('[type="submit"]'),this.$element.find("textarea, select")),this.$submits=this.$element.find('[type="submit"]');var t=this.$element.find("[data-abide-error]");this.options.a11yAttributes&&(this.$inputs.each(function(t,e){return r.addA11yAttributes(f()(e))}),t.each(function(t,e){return r.addGlobalErrorA11yAttributes(f()(e))})),this._events()}},{key:"_events",value:function(){var e=this;this.$element.off(".abide").on("reset.zf.abide",function(){e.resetForm()}).on("submit.zf.abide",function(){return e.validateForm()}),this.$submits.off("click.zf.abide keydown.zf.abide").on("click.zf.abide keydown.zf.abide",function(t){t.key&&" "!==t.key&&"Enter"!==t.key||(t.preventDefault(),e.formnovalidate=null!==t.target.getAttribute("formnovalidate"),e.$element.submit())}),"fieldChange"===this.options.validateOn&&this.$inputs.off("change.zf.abide").on("change.zf.abide",function(t){e.validateInput(f()(t.target))}),this.options.liveValidate&&this.$inputs.off("input.zf.abide").on("input.zf.abide",function(t){e.validateInput(f()(t.target))}),this.options.validateOnBlur&&this.$inputs.off("blur.zf.abide").on("blur.zf.abide",function(t){e.validateInput(f()(t.target))})}},{key:"_reflow",value:function(){this._init()}},{key:"_validationIsDisabled",value:function(){return!1===this.isEnabled||("boolean"==typeof this.formnovalidate?this.formnovalidate:!!this.$submits.length&&null!==this.$submits[0].getAttribute("formnovalidate"))}},{key:"enableValidation",value:function(){this.isEnabled=!0}},{key:"disableValidation",value:function(){this.isEnabled=!1}},{key:"requiredCheck",value:function(t){if(!t.attr("required"))return!0;var e=!0;switch(t[0].type){case"checkbox":e=t[0].checked;break;case"select":case"select-one":case"select-multiple":var r=t.find("option:selected");r.length&&r.val()||(e=!1);break;default:t.val()&&t.val().length||(e=!1)}return e}},{key:"findFormError",value:function(e,t){var r=this,i=e.length?e[0].id:"",a=e.siblings(this.options.formErrorSelector);return a.length||(a=e.parent().find(this.options.formErrorSelector)),i&&(a=a.add(this.$element.find('[data-form-error-for="'.concat(i,'"]')))),t&&(a=a.not("[data-form-error-on]"),t.forEach(function(t){a=(a=a.add(e.siblings('[data-form-error-on="'.concat(t,'"]')))).add(r.$element.find('[data-form-error-for="'.concat(i,'"][data-form-error-on="').concat(t,'"]')))})),a}},{key:"findLabel",value:function(t){var e=t[0].id,r=this.$element.find('label[for="'.concat(e,'"]'));return r.length?r:t.closest("label")}},{key:"findRadioLabels",value:function(t){var a=this,e=t.map(function(t,e){var r=e.id,i=a.$element.find('label[for="'.concat(r,'"]'));return i.length||(i=f()(e).closest("label")),i[0]});return f()(e)}},{key:"findCheckboxLabels",value:function(t){var a=this,e=t.map(function(t,e){var r=e.id,i=a.$element.find('label[for="'.concat(r,'"]'));return i.length||(i=f()(e).closest("label")),i[0]});return f()(e)}},{key:"addErrorClasses",value:function(t,e){var r=this.findLabel(t),i=this.findFormError(t,e);r.length&&r.addClass(this.options.labelErrorClass),i.length&&i.addClass(this.options.formErrorClass),t.addClass(this.options.inputErrorClass).attr({"data-invalid":"","aria-invalid":!0})}},{key:"addA11yAttributes",value:function(t){var e=this.findFormError(t),r=e.filter("label"),i=e.first();if(e.length){if(void 0===t.attr("aria-describedby")){var a=i.attr("id");void 0===a&&(a=Object(o.GetYoDigits)(6,"abide-error"),i.attr("id",a)),t.attr("aria-describedby",a)}if(r.filter("[for]").length<r.length){var n=t.attr("id");void 0===n&&(n=Object(o.GetYoDigits)(6,"abide-input"),t.attr("id",n)),r.each(function(t,e){var r=f()(e);void 0===r.attr("for")&&r.attr("for",n)})}e.each(function(t,e){var r=f()(e);void 0===r.attr("role")&&r.attr("role","alert")}).end()}}},{key:"addGlobalErrorA11yAttributes",value:function(t){void 0===t.attr("aria-live")&&t.attr("aria-live",this.options.a11yErrorLevel)}},{key:"removeRadioErrorClasses",value:function(t){var e=this.$element.find(':radio[name="'.concat(t,'"]')),r=this.findRadioLabels(e),i=this.findFormError(e);r.length&&r.removeClass(this.options.labelErrorClass),i.length&&i.removeClass(this.options.formErrorClass),e.removeClass(this.options.inputErrorClass).attr({"data-invalid":null,"aria-invalid":null})}},{key:"removeCheckboxErrorClasses",value:function(t){var e=this.$element.find(':checkbox[name="'.concat(t,'"]')),r=this.findCheckboxLabels(e),i=this.findFormError(e);r.length&&r.removeClass(this.options.labelErrorClass),i.length&&i.removeClass(this.options.formErrorClass),e.removeClass(this.options.inputErrorClass).attr({"data-invalid":null,"aria-invalid":null})}},{key:"removeErrorClasses",value:function(t){if("radio"==t[0].type)return this.removeRadioErrorClasses(t.attr("name"));if("checkbox"==t[0].type)return this.removeCheckboxErrorClasses(t.attr("name"));var e=this.findLabel(t),r=this.findFormError(t);e.length&&e.removeClass(this.options.labelErrorClass),r.length&&r.removeClass(this.options.formErrorClass),t.removeClass(this.options.inputErrorClass).attr({"data-invalid":null,"aria-invalid":null})}},{key:"validateInput",value:function(e){var r=this,t=this.requiredCheck(e),i=e.attr("data-validator"),a=[],n=!0;if(this._validationIsDisabled())return!0;if(e.is("[data-abide-ignore]")||e.is('[type="hidden"]')||e.is("[disabled]"))return!0;switch(e[0].type){case"radio":this.validateRadio(e.attr("name"))||a.push("required");break;case"checkbox":this.validateCheckbox(e.attr("name"))||a.push("required"),n=!1;break;case"select":case"select-one":case"select-multiple":t||a.push("required");break;default:t||a.push("required"),this.validateText(e)||a.push("pattern")}if(i){var o=!!e.attr("required");i.split(" ").forEach(function(t){r.options.validators[t](e,o,e.parent())||a.push(t)})}e.attr("data-equalto")&&(this.options.validators.equalTo(e)||a.push("equalTo"));var s=0===a.length,l=(s?"valid":"invalid")+".zf.abide";if(s){var u=this.$element.find('[data-equalto="'.concat(e.attr("id"),'"]'));if(u.length){var d=this;u.each(function(){f()(this).val()&&d.validateInput(f()(this))})}}return n&&(this.removeErrorClasses(e),s||this.addErrorClasses(e,a)),e.trigger(l,[e]),s}},{key:"validateForm",value:function(){var t,i=this,e=[],r=this;if(this.initialized||(this.initialized=!0),this._validationIsDisabled())return!(this.formnovalidate=null);this.$inputs.each(function(){if("checkbox"===f()(this)[0].type){if(f()(this).attr("name")===t)return!0;t=f()(this).attr("name")}e.push(r.validateInput(f()(this)))});var a=-1===e.indexOf(!1);return this.$element.find("[data-abide-error]").each(function(t,e){var r=f()(e);i.options.a11yAttributes&&i.addGlobalErrorA11yAttributes(r),r.css("display",a?"none":"block")}),this.$element.trigger((a?"formvalid":"forminvalid")+".zf.abide",[this.$element]),a}},{key:"validateText",value:function(t,e){e=e||t.attr("data-pattern")||t.attr("pattern")||t.attr("type");var r=t.val(),i=!0;return r.length&&(this.options.patterns.hasOwnProperty(e)?i=this.options.patterns[e].test(r):e!==t.attr("type")&&(i=new RegExp(e).test(r))),i}},{key:"validateRadio",value:function(t){var e=this.$element.find(':radio[name="'.concat(t,'"]')),r=!1,i=!1;return e.each(function(t,e){f()(e).attr("required")&&(i=!0)}),i||(r=!0),r||e.each(function(t,e){f()(e).prop("checked")&&(r=!0)}),r}},{key:"validateCheckbox",value:function(t){var r=this,e=this.$element.find(':checkbox[name="'.concat(t,'"]')),i=!1,a=!1,n=1,o=0;return e.each(function(t,e){f()(e).attr("required")&&(a=!0)}),a||(i=!0),i||(e.each(function(t,e){f()(e).prop("checked")&&o++,void 0!==f()(e).attr("data-min-required")&&(n=parseInt(f()(e).attr("data-min-required")))}),n<=o&&(i=!0)),!0!==this.initialized&&1<n||(e.each(function(t,e){i?r.removeErrorClasses(f()(e)):r.addErrorClasses(f()(e),["required"])}),i)}},{key:"matchValidation",value:function(e,t,r){var i=this;return r=!!r,-1===t.split(" ").map(function(t){return i.options.validators[t](e,r,e.parent())}).indexOf(!1)}},{key:"resetForm",value:function(){var t=this.$element,e=this.options;f()(".".concat(e.labelErrorClass),t).not("small").removeClass(e.labelErrorClass),f()(".".concat(e.inputErrorClass),t).not("small").removeClass(e.inputErrorClass),f()("".concat(e.formErrorSelector,".").concat(e.formErrorClass)).removeClass(e.formErrorClass),t.find("[data-abide-error]").css("display","none"),f()(":input",t).not(":button, :submit, :reset, :hidden, :radio, :checkbox, [data-abide-ignore]").val("").attr({"data-invalid":null,"aria-invalid":null}),f()(":input:radio",t).not("[data-abide-ignore]").prop("checked",!1).attr({"data-invalid":null,"aria-invalid":null}),f()(":input:checkbox",t).not("[data-abide-ignore]").prop("checked",!1).attr({"data-invalid":null,"aria-invalid":null}),t.trigger("formreset.zf.abide",[t])}},{key:"_destroy",value:function(){var t=this;this.$element.off(".abide").find("[data-abide-error]").css("display","none"),this.$inputs.off(".abide").each(function(){t.removeErrorClasses(f()(this))}),this.$submits.off(".abide")}}]),i}();d.defaults={validateOn:"fieldChange",labelErrorClass:"is-invalid-label",inputErrorClass:"is-invalid-input",formErrorSelector:".form-error",formErrorClass:"is-visible",a11yAttributes:!0,a11yErrorLevel:"assertive",liveValidate:!1,validateOnBlur:!1,patterns:{alpha:/^[a-zA-Z]+$/,alpha_numeric:/^[a-zA-Z0-9]+$/,integer:/^[-+]?\d+$/,number:/^[-+]?\d*(?:[\.\,]\d+)?$/,card:/^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|(?:222[1-9]|2[3-6][0-9]{2}|27[0-1][0-9]|2720)[0-9]{12}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11})$/,cvv:/^([0-9]){3,4}$/,email:/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+$/,url:/^((?:(https?|ftps?|file|ssh|sftp):\/\/|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}\/)(?:[^\s()<>]+|\((?:[^\s()<>]+|(?:\([^\s()<>]+\)))*\))+(?:\((?:[^\s()<>]+|(?:\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:\'".,<>?\xab\xbb\u201c\u201d\u2018\u2019]))$/,domain:/^([a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,8}$/,datetime:/^([0-2][0-9]{3})\-([0-1][0-9])\-([0-3][0-9])T([0-5][0-9])\:([0-5][0-9])\:([0-5][0-9])(Z|([\-\+]([0-1][0-9])\:00))$/,date:/(?:19|20)[0-9]{2}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-9])|(?:(?!02)(?:0[1-9]|1[0-2])-(?:30))|(?:(?:0[13578]|1[02])-31))$/,time:/^(0[0-9]|1[0-9]|2[0-3])(:[0-5][0-9]){2}$/,dateISO:/^\d{4}[\/\-]\d{1,2}[\/\-]\d{1,2}$/,month_day_year:/^(0[1-9]|1[012])[- \/.](0[1-9]|[12][0-9]|3[01])[- \/.]\d{4}$/,day_month_year:/^(0[1-9]|[12][0-9]|3[01])[- \/.](0[1-9]|1[012])[- \/.]\d{4}$/,color:/^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/,website:{test:function(t){return d.defaults.patterns.domain.test(t)||d.defaults.patterns.url.test(t)}}},validators:{equalTo:function(t,e,r){return f()("#".concat(t.attr("data-equalto"))).val()===t.val()}}}},0:function(t,e,r){t.exports=r("./js/entries/plugins/foundation.abide.js")},jquery:function(t,e){t.exports=i}},a.c=o,a.d=function(t,e,r){a.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:r})},a.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},a.t=function(e,t){if(1&t&&(e=a(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(a.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)a.d(r,i,function(t){return e[t]}.bind(null,i));return r},a.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return a.d(e,"a",e),e},a.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},a.p="",a(a.s=0);function a(t){if(o[t])return o[t].exports;var e=o[t]={i:t,l:!1,exports:{}};return n[t].call(e.exports,e,e.exports,a),e.l=!0,e.exports}var n,o});
|