(()=>{document.addEventListener("DOMContentLoaded",(()=>{t()}));const{__:__,_n:_n}=wp.i18n,e={
/* translators: text read by a screen reader when a warning icon is displayed in front of an error message. */
warning:__("Warning.","jetpack-forms"),
/* translators: error message shown when one or more fields of the form are invalid. */
invalidForm:__("Please make sure all fields are valid.","jetpack-forms"),
/* translators: error message shown when a multiple choice field requires at least one option to be selected. */
checkboxMissingValue:__("Please select at least one option.","jetpack-forms"),
/* translators: error message shown when a user enters an invalid date */
invalidDate:__("The date is not valid.","jetpack-forms"),
/* translators: text read by a screen reader when a form is being submitted */
submittingForm:__("Submitting form","jetpack-forms"),
/* translators: generic error message */
genericError:__("Please correct this field","jetpack-forms"),errorCount:e=>/* translators: message displayed when errors need to be fixed. %d is the number of errors. */
_n("You need to fix %d error.","You need to fix %d errors.",e,"jetpack-forms")},t=()=>{document.querySelectorAll(".wp-block-jetpack-contact-form-container form.contact-form").forEach(r)},r=e=>{e.hasAttribute("novalidate")||e.setAttribute("novalidate",!0);const t={hasInsetLabel:m(e)};let r={};const o=i=>{i.preventDefault(),a(e)||(L(e,r,t),n(e)?(r={},e.removeEventListener("submit",o),x(e)):r=j(e,t))};e.addEventListener("submit",o)},n=e=>{let t=e.checkValidity();if(!t)return!1;const r=f(e);for(const e of r)if(s(e)&&!d(e))return!1;const n=h(e);for(const e of n)if(!u(e))return!1;return t},a=e=>!0===e.getAttribute("data-submitting"),o=e=>"fieldset"===e.tagName.toLowerCase()&&e.classList.contains("grunion-checkbox-multiple-options"),i=e=>"fieldset"===e.tagName.toLowerCase()&&e.classList.contains("grunion-radio-options"),s=e=>e.hasAttribute("data-required"),c=e=>{return"input"===(t=e).tagName.toLowerCase()&&t.classList.contains("jp-contact-form-date")&&e.value?u(e):e.validity.valid;var t},l=e=>{const t=Array.from(e.querySelectorAll('input[type="radio"]'));return t.length>0&&t.every((e=>e.validity.valid))},d=e=>{if(!s(e))return!0;const t=Array.from(e.querySelectorAll('input[type="checkbox"]'));return t.length>0&&t.some((e=>e.checked))},u=t=>{const r=t.getAttribute("data-format"),n=t.value,a=window.jQuery;if(n&&r&&void 0!==a)try{a.datepicker.parseDate(r,n)}catch{return t.setCustomValidity(e.invalidDate),!1}return!0},m=e=>{const t=e.querySelector(".wp-block-jetpack-contact-form");if(!t)return!1;const r=t.classList;return r.contains("is-style-outlined")||r.contains("is-style-animated")},p=e=>e.querySelector('[type="submit"]')||e.querySelector('button:not([type="reset"])'),f=e=>Array.from(e.querySelectorAll(".grunion-checkbox-multiple-options")),h=e=>Array.from(e.querySelectorAll("input.jp-contact-form-date")),b=e=>{const t=C((e=>Array.from(e.elements).filter((e=>!["hidden","submit"].includes(e.type)&&null!==e.offsetParent)))(e)),r={simple:t.default,singleChoice:[],multipleChoice:[]},n=t.radios.reduce(((e,t)=>e.includes(t.name)?e:[...e,t.name]),[]);for(const t of n){const n=e.querySelector(`input[type="radio"][name="${t}"]`);if(n){const e=n.closest("fieldset");e&&r.singleChoice.push(e)}}const a=t.checkboxes.reduce(((e,t)=>e.includes(t.name)?e:[...e,t.name]),[]);for(const t of a){const n=e.querySelector(`input[type="checkbox"][name="${t}"]`);if(n){const e=n.closest("fieldset");e&&r.multipleChoice.push(e)}}return r},v=e=>e.querySelector(".contact-form__error"),y=e=>e.querySelectorAll("[aria-invalid]"),g=t=>{const r=document.createDocumentFragment();return r.appendChild((()=>{const t=document.createElement("span"),r=document.createElement("span"),n=document.createElement("i");return r.textContent=e.warning,r.classList.add("visually-hidden"),n.setAttribute("aria-hidden",!0),t.classList.add("contact-form__warning-icon"),t.appendChild(r),t.appendChild(n),t})()),r.appendChild((e=>{const t=document.createElement("span");return t.textContent=e,t})(t)),r},A=e=>{const t=document.createElement("div");return t.id=e,t.classList.add("contact-form__input-error"),t},C=e=>e.reduce(((e,t)=>{switch(t.type){case"radio":e.radios.push(t);break;case"checkbox":t.name.indexOf("[]")===t.name.length-2?e.checkboxes.push(t):e.default.push(t);break;default:e.default.push(t)}return e}),{default:[],radios:[],checkboxes:[]}),L=(e,t,r)=>{k(e,r);for(const r in t)e.querySelectorAll(`[name="${r}"]`).forEach((e=>e.removeEventListener(t[r][0],t[r][1])))},k=(e,t)=>{q(e),E(e,t)},q=e=>{const t=v(e);t&&t.replaceChildren()},E=(e,t)=>{for(const r of y(e))i(r)||o(r)?S(r):w(r,t)},S=e=>{e.removeAttribute("aria-invalid"),e.removeAttribute("aria-describedby");const t=e.querySelector(".contact-form__input-error");t&&t.replaceChildren()},w=(e,t)=>{e.removeAttribute("aria-invalid"),e.removeAttribute("aria-describedby");const r=e.closest(t.hasInsetLabel?".contact-form__inset-label-wrap":".grunion-field-wrap");if(!r)return;const n=r.querySelector(".contact-form__input-error");n&&n.replaceChildren()},x=e=>{_(e),e.setAttribute("data-submitting",!0),e.submit()},_=t=>{const r=p(t);r&&(r.setAttribute("aria-disabled",!0),r.appendChild((()=>{const t=document.createElement("span"),r=document.createElement("span"),n=document.createElement("span");return r.setAttribute("aria-hidden",!0),r.innerHTML='<svg width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M12,1A11,11,0,1,0,23,12,11,11,0,0,0,12,1Zm0,19a8,8,0,1,1,8-8A8,8,0,0,1,12,20Z" opacity=".25"/><path d="M10.14,1.16a11,11,0,0,0-9,8.92A1.59,1.59,0,0,0,2.46,12,1.52,1.52,0,0,0,4.11,10.7a8,8,0,0,1,6.66-6.61A1.42,1.42,0,0,0,12,2.69h0A1.57,1.57,0,0,0,10.14,1.16Z"><animateTransform attributeName="transform" type="rotate" dur="0.75s" values="0 12 12;360 12 12" repeatCount="indefinite"/></path></svg>',n.classList.add("visually-hidden"),n.textContent=e.submittingForm,t.classList.add("contact-form__spinner"),t.appendChild(r),t.appendChild(n),t})()))},j=(e,t)=>(F(e,t),M(e,t)),M=(e,t)=>{let r={};const n=()=>T(e);for(const c of y(e)){let l;l=i(c)&&(a=c,Array.from(a.querySelectorAll('input[type="radio"]')).some((e=>e.hasAttribute("required")||e.hasAttribute("aria-required"))))?$(c,n,e,t):o(c)&&s(c)?N(c,n,e,t):D(c,n,e,t),r={...r,...l}}var a;return r},$=(e,t,r,n)=>{const a={},o=()=>{l(e)?S(e):Z(e,r,n),t()},i=e.querySelectorAll('input[type="radio"]');for(const e of i)e.addEventListener("blur",o),e.addEventListener("change",o),a[e.name]=["blur",o],a[e.name]=["change",o];return a},N=(e,t,r,n)=>{const a={},o=()=>{d(e)?S(e):B(e,r,n),t()},i=e.querySelectorAll('input[type="checkbox"]');for(const e of i)e.addEventListener("blur",o),e.addEventListener("change",o),a[e.name]=["blur",o],a[e.name]=["change",o];return a},D=(e,t,r,n)=>{const a=e.validity.valueMissing,o={},i=()=>{c(e)?w(e,n):I(e,r,n),t()},s=()=>{e.validity.valueMissing?I(e,r,n):w(e,n),t()};return e.addEventListener("blur",i),o[e.name]=["blur",i],a&&(e.addEventListener("input",s),o[e.name]=["input",s]),o},F=(e,t)=>{const r=V(e,t);P(e,r)},P=(t,r,n={})=>{let a=v(t);if(!a){a=(()=>{const e=document.createElement("div");return e.classList.add("contact-form__error"),e})();const e=p(t);e?e.parentNode.parentNode.insertBefore(a,e.parentNode):t.appendChild(a)}const{disableLiveRegion:s}=n;s?(a.removeAttribute("aria-live"),a.removeAttribute("role")):(a.setAttribute("aria-live","assertive"),a.setAttribute("role","alert"));const c=r.length,l=[e.invalidForm];c>0&&l.push(e.errorCount(c).replace("%d",c)),a.appendChild(g(l.join(" "))),c>0&&a.appendChild(((e,t)=>{const r=document.createElement("ul");for(const n of t){const t=n.id;if(!t)continue;let a;if(a=o(n)||i(n)?n.querySelector("legend"):e.querySelector(`label[for="${t}"]`),!a)continue;const s=document.createElement("li"),c=document.createElement("a");c.textContent=a.innerText,c.setAttribute("href",`#${t}`),s.appendChild(c),r.appendChild(s)}return r})(t,r))},T=e=>{q(e),n(e)||P(e,y(e),{disableLiveRegion:!0})},V=(e,t)=>{const r=[],{simple:n,singleChoice:a,multipleChoice:o}=b(e);for(const a of n)c(a)||(I(a,e,t),r.push(a));for(const n of a)l(n)||(Z(n,e,t),r.push(n));for(const n of o)d(n)||(B(n,e,t),r.push(n));return r},I=(e,t,r)=>{const n=`${e.name}-error`;let a=t.querySelector(`#${n}`);if(!a){a=A(n);const t=e.closest(r.hasInsetLabel?".contact-form__inset-label-wrap":".grunion-field-wrap");t&&t.appendChild(a)}a.replaceChildren(g(e.validationMessage)),e.setAttribute("aria-invalid","true"),e.setAttribute("aria-describedby",n)},Z=(e,t,r)=>{O(e,t,r)},B=(t,r,n)=>{O(t,r,{...n,message:e.checkboxMissingValue})},O=(t,r,n)=>{const a=t.querySelector("input");if(!a)return;const o=`${a.name.replace("[]","")}-error`;let i=r.querySelector(`#${o}`);i||(i=A(o)),i.replaceChildren(g(a.validationMessage||n.message||e.genericError)),t.appendChild(i),t.setAttribute("aria-invalid","true"),t.setAttribute("aria-describedby",o)}})();