import{h as p}from"./chunk-N2ZCN6XY.js";import{b as i}from"./chunk-CB6LZ537.js";import{c as k,f as h,k as u,l as g}from"./chunk-XRTLPMPO.js";var f=(e,n)=>{let r=e.type,o;switch(r){case"checkbox":{let c=y(e.name,e.form,n);if(c?.length){o=[];for(let a of c){let s=n?a.getAttribute(n)??a.value:a.value;!s||!a.checked||o.push(s)}break}let{checked:t}=e;o=t?"true":"";break}case"radio":{let c=e.form?.querySelector(`input[name="${e.name}"][type="radio"]:checked`);o=c?n?c.getAttribute(n)??c.value:c.value:"";break}case"select-multiple":{o=[...e.selectedOptions].map(c=>c.value).filter(Boolean);break}case"date":case"month":case"week":case"time":{let{valueAsDate:c,value:t}=e;o=c?c.toISOString():t;break}default:o=e.value}return o},E=(e,n,r)=>{switch(e.type){case"checkbox":{if(!u(e))break;if(!Array.isArray(n)){let t=k(n)?n:n==="true";t!==e.checked&&(e.checked=t,i(e,["click","input","change"]));break}let c=y(e.name,e.form,r);if(!c?.length)break;for(let t of c){let a=r?t.getAttribute(r)??t.value:t.value,s=n.includes(a);s!==t.checked&&(t.checked=s,i(t,["click","input","change"]))}break}case"radio":{if(Array.isArray(n))break;let c=b(e);for(let t of c){let s=(r?t.getAttribute(r)??t.value:t.value)===n;if(s!==t.checked){if(t.checked=s,i(t,["click","input","change"]),s)continue;let l=t.parentElement?.querySelector(`.${p.radioInput}`);if(!l)continue;l.classList.remove(p.checkboxOrRadioFocus,p.checkboxOrRadioChecked)}}break}case"select-multiple":{if(!Array.isArray(n)||!g(e))break;for(let c of e.options){let t=n.includes(c.value);t!==c.selected&&(c.selected=t,i(c,["input","change"]))}break}default:{if(Array.isArray(n))break;e.value!==n&&(e.value=n.toString(),i(e,["input","change"]))}}},b=e=>e.form?[...e.form.querySelectorAll(`input[name="${e.name}"][type="${e.type}"]`)]:[],y=(e,n,r)=>{let o=[`input[name="${e}"][type="checkbox"][value]`,r&&`input[name="${e}"][type="checkbox"][${r}]`].filter(h).join(",");return n?.querySelectorAll(o)},S=e=>e.closest(`.${p.checkboxField}, .${p.radioField}, label`)||e;export{f as a,E as b,b as c,y as d,S as e};
