import{r as t,c as s,h as o,a}from"./p-9add63ef.js";function i(t){const s=new FormData(t);const o={};s.forEach(((t,s)=>{o[s]=t}));return o}const e=":host{display:block}::slotted(*:not(:last-child)){margin-bottom:var(--sc-form-row-spacing, 0.75em)}::slotted(*:not(:last-child)).wp-block-spacer{margin-bottom:0}::slotted(*:focus-within),::slotted(*:active){position:relative;z-index:var(--sc-form-focus-within-z-index, auto);}";const r=e;const n=class{constructor(o){t(this,o);this.scSubmit=s(this,"scSubmit",7);this.scFormSubmit=s(this,"scFormSubmit",7);this.scFormChange=s(this,"scFormChange",7);this.novalidate=false}async getFormData(){return new FormData(this.formElement)}async getFormJson(){return i(this.formElement)}async handleChange(){this.scFormChange.emit(i(this.formElement))}async submit(){return this.submitForm()}getFormControls(){return[...this.form.querySelectorAll("*")]}async validate(){const t=this.getFormControls();const s=t.filter((t=>typeof t.reportValidity==="function"));if(!this.novalidate){for(const t of s){if(!(t.offsetWidth||t.offsetHeight||t.getClientRects().length)){continue}const s=await t.reportValidity();if(!s){return false}}}return true}submitForm(){const t=document.createElement("button");if(this.formElement){t.type="submit";t.style.position="absolute";t.style.width="0";t.style.height="0";t.style.clip="rect(0 0 0 0)";t.style.clipPath="inset(50%)";t.style.overflow="hidden";t.style.whiteSpace="nowrap";this.formElement.append(t);t.click();t.remove()}}render(){return o("div",{key:"8820047721895e36c396303023c4e4edb13da816",part:"base",class:"form",role:"form"},o("form",{key:"78a397734a84dd2a498081e9c076acbeac7f2d8d",part:"form",ref:t=>this.formElement=t,class:"test",onSubmit:async t=>{t.preventDefault();const s=await this.validate();if(!s){return false}this.scSubmit.emit();this.scFormSubmit.emit()},novalidate:this.novalidate},o("slot",{key:"f41b3e63b451baaa2a631b279172c4b6f1b0eab0"})))}get form(){return a(this)}};n.style=r;export{n as sc_form};
//# sourceMappingURL=p-f4358626.entry.js.map