react-luna-form 0.0.84 → 0.0.85
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.
package/dist/client/cjs/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var bs=Object.create;var vt=Object.defineProperty;var xs=Object.getOwnPropertyDescriptor;var hs=Object.getOwnPropertyNames;var Rs=Object.getPrototypeOf,vs=Object.prototype.hasOwnProperty;var Ss=(e,t)=>{for(var n in t)vt(e,n,{get:t[n],enumerable:!0})},ur=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of hs(t))!vs.call(e,o)&&o!==n&&vt(e,o,{get:()=>t[o],enumerable:!(r=xs(t,o))||r.enumerable});return e};var Ts=(e,t,n)=>(n=e!=null?bs(Rs(e)):{},ur(t||!e||!e.__esModule?vt(n,"default",{value:e,enumerable:!0}):n,e)),As=e=>ur(vt({},"__esModule",{value:!0}),e);var hu={};Ss(hu,{Form:()=>gs,withDeclaredFields:()=>ys});module.exports=As(hu);var dr=require("react/jsx-runtime");function cr(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,dr.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var An=require("react/jsx-runtime");function He(e){return(0,An.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",className:`size-4 transition-transform duration-200 ${e.expanded?"rotate-90":""}`,children:(0,An.jsx)("path",{fillRule:"evenodd",d:"M8.22 5.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.75.75 0 0 1-1.06-1.06L11.94 10 8.22 6.28a.75.75 0 0 1 0-1.06Z",clipRule:"evenodd"})})}var mr=require("react");var fr=require("react"),St=(0,fr.createContext)(!1);var wn=require("react/jsx-runtime");function et({children:e,visible:t}){return(0,wn.jsx)(mr.Activity,{mode:t?"visible":"hidden",children:(0,wn.jsx)(St,{value:!0,children:e})})}var Tt="input",gr="input/date",pr="input/email",yr="input/number",br="input/time";var xr="textarea",hr="radio",Rr="checkbox",Cn="list",vr="select",Sr="select/active",Tr="select/day",Ar="select/month",wr="select/timezone",Cr="select/year";var Fr="chips",kr="chips/day",Nr="chips/month",tt="column",Ir="description",Fn="fields",Er="label",W="value",At="options",kn="email",Lr="number",Pr="password",Vr="tel",nt="text",Dr="aria-errormessage",Or="aria-invalid",Mr="data-invalid",zr="data-readonly",_r="aria",Br="data",wt="max",$r="maxLength",Ct="min",Gr="minLength",Ye="$ref",Ur="source",Hr="state",Ft="http://luna.internal",Yr="type",qr={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};var M=require("date-fns"),De=require("date-fns/locale");function m(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function kt(e){return Array.isArray(e)&&e.every(m)}function G(e){return e==null||e===""}function ne(e){return g(e)||typeof e=="number"||Nn(e)}function rt(e){return Array.isArray(e)&&e.every(ne)}function g(e){return typeof e=="string"}function Zr(e){return m(e)&&"url"in e}function Nn(e){return typeof e=="boolean"}var Kr={en:De.enUS,"en-US":De.enUS,es:De.es,"es-ES":De.es,"es-MX":De.es},ws={short:"M/d/yy",medium:"MMM d, yyyy",long:"MMMM d, yyyy",full:"EEEE, MMMM d, yyyy"},Cs={ms:1,s:1e3,min:6e4,h:36e5,d:864e5};function Wr(e){if(e)return Kr[e]??Kr[e.split("-")[0]]}function Nt(e){if(typeof e=="number"&&!Number.isNaN(e))return e;if(g(e)&&e.trim()!==""){let t=Number(e);return Number.isNaN(t)?null:t}return null}function Xr(e,t,n){let r=Cs[t];if(r===void 0)return String(e);let o=e*r,i=(0,M.intervalToDuration)({start:0,end:o});return(0,M.formatDuration)(i,{locale:n})}function jr(e){if(e instanceof Date)return(0,M.isValid)(e)?e:null;if(g(e)){let t=(0,M.parseISO)(e);if((0,M.isValid)(t))return t;let n=new Date(e);return(0,M.isValid)(n)?n:null}if(typeof e=="number"){let t=new Date(e);return(0,M.isValid)(t)?t:null}return null}var Fs={currency:(e,t,n)=>{let r=Nt(e);if(r===null)return String(e);let o=t[0]??"USD";return new Intl.NumberFormat(n.locale,{style:"currency",currency:o}).format(r)},percent:(e,t,n)=>{let r=Nt(e);return r===null?String(e):new Intl.NumberFormat(n.locale,{style:"percent"}).format(r)},number:(e,t,n)=>{let r=Nt(e);return r===null?String(e):new Intl.NumberFormat(n.locale).format(r)},date:(e,t,n)=>{let r=jr(e);if(!r)return String(e);let o=t[0]??"short",i=Wr(n.locale);if(o==="relative")return(0,M.formatDistanceToNow)(r,{addSuffix:!0,locale:i});let a=ws[o]??o;return(0,M.format)(r,a,{locale:i})},duration:(e,t,n)=>{let r=Wr(n.locale);if(typeof e=="number")return Xr(e,t[0]??"ms",r);if(g(e)){let i=Nt(e);if(i!==null)return Xr(i,t[0]??"ms",r)}let o=jr(e);return o?(0,M.formatDistanceToNow)(o,{addSuffix:!0,locale:r}):String(e)}};function Jr(e,t,n){let r=t.split(":").map(s=>s.trim()).filter(s=>s.length>0);if(r.length===0)return;let[o,...i]=r,a=Fs[o];if(a)return a(e,i,n)}var ks=/^\d+$/;function En(e,t=[],n=W){return rt(e)?{value:e}:Array.isArray(t)?t.find(r=>{let o=Ln(r,n);if(o!==void 0&&`${o}`==`${e}`)return r})??{value:e}:{value:e}}function Ln(e,t=W){if(e!=null){if(rt(e)||ne(e))return e;if(m(e)){let n=Ns(e,t);if(ne(n))return n}}}function Ns(e,t){let n=B(e,t);if(ne(n))return n}function Qr(e,t){if(Array.isArray(e))return e;let n=B(e,t);return Array.isArray(n)?n:null}function B(e,t){if(!t||!m(e))return null;let n=t.split(".").filter(o=>o!=="");if(n.length===0)return null;let r=e;for(let o of n)if(m(r)&&o in r)r=r[o];else if(Array.isArray(r)){let i=Number(o);if(!Number.isInteger(i)||i<0||i>=r.length)return null;r=r[i]}else return null;return r}function Pn(e,t={description:Ir,label:Er,value:W}){return e.map(n=>{if(m(n)){let r=B(n,t.label),o=B(n,t.value);if(ne(r)&&ne(o)){let i=B(n,t.description);return{label:`${r}`,value:`${o}`,...ne(i)&&{description:`${i}`}}}}return n})}function eo(e=nt){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==Tt?n.trim().toLowerCase():nt}function to(e){let t={};for(let n of e.keys()){let r=e.getAll(n);t[n]=r.length>1?r:r[0]}return t}function no(e){let t={};for(let n of Object.keys(e)){let r=n.split(".");if(r.length===1){t[n]=e[n];continue}let o=t;for(let a=0;a<r.length-1;a++){let s=r[a],l=r[a+1],u=ks.test(l);s in o||(o[s]=u?[]:{}),o=o[s]}let i=r[r.length-1];o[i]=e[n]}return In(t),t}function In(e){for(let t of Object.keys(e)){let n=e[t];if(Array.isArray(n)){let r=n.filter(o=>o!==void 0);for(let o of r)m(o)&&In(o);e[t]=r}else m(n)&&In(n)}}var Is=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g,Es=/{([^}]{1,200})}/,Ls=/{([^}]{1,200})}/g,Ps=/^{([^}|]{1,200})}$/;function ce(e,t={},n={}){if(g(e))return Ds(e,t,n);if(Array.isArray(e))return e.map(r=>ce(r,t,n));if(m(e)){let r={};for(let o in e)r[o]=ce(e[o],t,n);return r}return e}function ro(e,t={},n={}){if(g(e)){let r=Vs(e,t);if(r!==void 0)return r}return ce(e,t,n)}function ot(e,t={},n={}){return Oe(e)?ce(e,t,n):e}function Oe(e){return g(e)?Es.test(e):Array.isArray(e)?e.some(t=>Oe(t)):m(e)?Object.values(e).some(t=>Oe(t)):!1}function oo(e,t){return t.includes(".")?B(e,t):e[t]}function Vs(e,t){let n=Ps.exec(e);if(!n)return;let r=n[1].trim();if(!r)return;let o=oo(t,r);if(m(o)||Array.isArray(o))return o}function Ds(e,t={},n={}){return e.replace(Ls,(r,o)=>{let i=String(o).split("|").map(c=>c.trim()),[a,...s]=i;if(!a)return r;let l=oo(t,a);if(s.length===0)return ne(l)?String(l):r;if(l==null)return r;let u=l;for(let c of s){let p=Jr(u,c,{locale:n.locale});if(p===void 0)return r;u=p}return String(u)})}function io(e,t){if(!g(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Is.exec(e))!==null;){let[a,s,l]=n,u=n.index;o=!0,u>r&&i.push(e.substring(r,u));let c=t?t(u,l,s):a;i.push(c),r=u+a.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var it={error:(...e)=>{Vn()&&!Dn()&&It().error("[Luna Form]",...e)},warn:(...e)=>{Vn()&&!Dn()&&It().warn("[Luna Form]",...e)},info:(...e)=>{Vn()&&!Dn()&&It().info("[Luna Form]",...e)}},Vn=()=>typeof It()<"u",Dn=()=>!0,It=()=>globalThis.console;function ao(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===W&&n.push(i),i.action===Ur&&r.push(i),i.action===Hr&&o.push(i);t({sources:r,states:o,values:n})}function so(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(Zr(i)){let a=ce(i.url,e),s=i.body?ce(i.body,e):i.body;n(o,{...i,url:a,body:s})}}}var Me={eq:Bs,gt:Hs,gte:Ys,in:Gs,lt:qs,lte:Zs,neq:$s,nin:Us,contains:Ks,exists:uo,empty:Ws,truthy:Xs},Os=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,lo=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function Ms(e){return typeof e=="string"&&Os.test(e)}function zs(e){return typeof e=="string"&&lo.test(e)}function _s(e){let t=e.match(lo);if(t){let[,n,r,o,i,a,s]=t;return new Date(Number(o),Number(r)-1,Number(n),Number(i??0),Number(a??0),Number(s??0)).getTime()}return NaN}function Te(e){return Ms(e)?new Date(e).getTime():zs(e)?_s(e):Number(e)}function Bs(e,t){return e===t}function $s(e,t){return e!==t}function Gs(e,t){return Array.isArray(t)&&t.includes(String(e))}function Us(e,t){return Array.isArray(t)&&!t.includes(String(e))}function Hs(e,t){return Te(e)>Te(t)}function Ys(e,t){return Te(e)>=Te(t)}function qs(e,t){return Te(e)<Te(t)}function Zs(e,t){return Te(e)<=Te(t)}function Ks(e,t){return typeof e=="string"?e.includes(String(t)):Array.isArray(e)?e.map(String).includes(String(t)):!1}function uo(e){return Array.isArray(e)?e.length>0:e!=null&&e!==""}function Ws(e){return!uo(e)}function Xs(e){return Array.isArray(e)?e.length>0:!!e}function qe(e,t){if(t===void 0)return!0;if(g(t)){let n=Et(e,W);return Array.isArray(n)?n.length===1&&n[0]===t:n===t}if(Nn(t)){let n=Et(e,W);return(Array.isArray(n)?n.length>0:!!n)===t}if(Array.isArray(t)){let n=Et(e,W);return Array.isArray(n)?n.some(r=>t.includes(String(r))):t.includes(String(n))}return js(e,t)}function js(e=null,t){let n=Et(e,t.field??W),{operator:r="eq",value:o}=t,i=Me[r];return i?i(n,o):!1}function Et(e,t){return m(e)?B(e,t):e}function co(e=null,t=[],n){for(let r of t){let{target:o,state:i,when:a}=r,s=Array.isArray(o)?o:[o];if(!e){n(s);continue}let l=qe(e,a);n(s,l?i:void 0)}}function fo(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?ro(i,e):void 0,{onlyIfTargetEmpty:r.onlyIfTargetEmpty??!1})}var at=e=>P(Sr)(e),mo=e=>P(Tr)(e),Lt=e=>P(Ar)(e),Pt=e=>P(Cr)(e),go=e=>P(wr)(e),Vt=e=>P(kr)(e),Dt=e=>P(Nr)(e),X=P(gr),de=P(br),Y=P(Rr),re=P(Fr),fe=P(hr),Ae=P(Tt),oe=P(vr),On=P(xr),po=P(nt,kn,Pr,Vr),yo=P(pr,kn),Ot=P(yr,Lr);function Mt(e){return fe(e)||Y(e)}function ie(e){return e.type===Cn}function me(e){return e.type===tt}function zt(e){return e.type!==tt&&e.type!==Cn}function Ze(e){return oe(e)||fe(e)||re(e)}function bo(e){return Ae(e)||On(e)}function k(e){return e!=null&&e!==""}function P(...e){return t=>{let n=g(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function xo(e,t={}){if(oe(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&m(n))return[n]}}function ho(e){return fe(e)||Y(e)?!0:e.advanced?.horizontal}function Ro(e){return Y(e)?e.advanced?.reverse!==!1:!1}function vo(e,t){let n=e.readonly??!1;return t||n}function _t(e){if(Js(e)){let t=e.source;if(Array.isArray(t)||m(t)&&!(Ye in t))return t}}function So(e){return Array.isArray(_t(e))}function Js(e){return fe(e)||re(e)||oe(e)&&!e.disabled}var $=require("date-fns"),Qs=/^\d+$/,Bt=new Date(2e3,0,1),el=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[],Mn="default";function wo(e){if(!e)return Mn;try{return Intl.getCanonicalLocales(e)[0]??Mn}catch{return Mn}}function zn(e){let t=wo(e);return Array.from({length:12},(n,r)=>({value:(r+1).toString(),label:new Date(0,r).toLocaleString(t,{month:"long"})}))}function _n(e){let t=wo(e);return Array.from({length:7},(n,r)=>({value:r.toString(),label:new Date(2e3,0,2+r).toLocaleString(t,{weekday:"long"})}))}function Co(e,t){return t>=e?Array.from({length:t-e+1},(n,r)=>{let o=e+r;return{value:o.toString(),label:o.toString()}}):[]}function Bn(){return new Date().getFullYear()}function tl(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function nl(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return qr[n]??"Other"}function rl(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function To(e,t){let n=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"longOffset"}).formatToParts(t),r=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"long"}).formatToParts(t),i=(n.find(s=>s.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),a=rl(r,e);return{offset:i,longName:a}}function Ao(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function Fo(){let e=new Date,t=tl(),n=new Map,r=Ao(t),{offset:o,longName:i}=To(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let l of el()){if(l===t)continue;let u=Ao(l),{offset:c,longName:p}=To(l,e),f={value:l,label:`${u} - ${p} (${c})`},A=nl(l);if(A==="Other")continue;let y=n.get(A);y?y.push(f):n.set(A,[f])}for(let l of n.values())l.sort((u,c)=>u.label.localeCompare(c.label));let s=Array.from(n.entries()).sort(([l],[u])=>l.localeCompare(u)).map(([l,u])=>({label:l,items:u}));return[{label:"Suggested",items:[a]},...s]}function $n(e,t){if(typeof e=="number")return e;let n=t??Bn(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,a]=o,s=parseInt(a,10);if(!isNaN(s))return i==="+"?n+s:n-s}return n}return Qs.test(r)?parseInt(r,10):n}function $t(e,t){if(!e)return"";try{let n=(0,$.parse)(e,t,Bt);return(0,$.isValid)(n)?(0,$.format)(n,"yyyy-MM-dd"):""}catch{return""}}function ko(e,t){if(!e)return"";try{let n=(0,$.parse)(e,t,Bt);return(0,$.isValid)(n)?(0,$.format)(n,"HH:mm:ss"):""}catch{return""}}function No(e,t="HH:mm"){if(!e)return"";try{let n=e.split(":").length===3?"HH:mm:ss":"HH:mm",r=(0,$.parse)(e,n,Bt);return(0,$.isValid)(r)?(0,$.format)(r,t):""}catch{return""}}function Gt(e,t="MMMM d, yyyy"){if(!e)return"";try{let n=(0,$.parse)(e,"yyyy-MM-dd",Bt);return(0,$.isValid)(n)?(0,$.format)(n,t):""}catch{return""}}function ze(e){return e.advanced?.format??"HH:mm"}function ge(e){return e.advanced?.format??"MMMM d, yyyy"}var ol={es:{"(Optional)":"(Opcional)","Add item":"A\xF1adir elemento","An unexpected error occurred submitting the form.":"Ocurri\xF3 un error inesperado al enviar el formulario.","Collapse {label} {index}":"Contraer {label} {index}","Expand {label} {index}":"Expandir {label} {index}","Please correct the errors and try again.":"Corrige los errores e int\xE9ntalo de nuevo.","Remove {label} item {index}":"Eliminar {label} {index}","There were validation errors submitting the form.":"Se encontraron errores de validaci\xF3n al enviar el formulario.","Unknown error":"Error desconocido",No:"No",Yes:"S\xED"}};function j(e,t){return N(e,t)}function Eo(e,t){let n=t?.[e??""],r=e?ol[il(e)]:void 0;return r?n?{...r,...n}:r:n}function il(e){return e.toLowerCase().split(/[-_]/)[0]}function N(e,t){return e?t?t[e]??e:e:""}function ae(e,t){return e?N(e,t):void 0}function st(e,t){if(!t)return e;let n=!1,r=e.map(o=>{let i=al(o,t);return i!==o&&(n=!0),i});return n?r:e}function al(e,t){if(!m(e))return e;let n=Io(e.label,t),r=e.items;if(Array.isArray(r)){let i=st(r,t);return i===r&&n===e.label?e:{...e,...n!==void 0&&{label:n},items:i}}let o=Io(e.description,t);return n===e.label&&o===e.description?e:{...e,...n!==void 0&&{label:n},...o!==void 0&&{description:o}}}function Io(e,t){return g(e)?N(e,t):e}var Ut=Bn();function Po(e,t){if(re(e))return sl(e,t?.lang)}function sl(e,t){if(Vt(e))return _n(t);if(Dt(e))return zn(t)}function Vo(e,t){if(oe(e))return ll(e,t)}function ll(e,t){let{lang:n,translations:r}=t??{};if(mo(e))return _n(n);if(Lt(e))return zn(n);if(Pt(e)){let o=e.advanced?.length?.min??Ut,i=e.advanced?.length?.max??Ut+5;return Co($n(o,Ut),$n(i,Ut))}if(go(e))return Fo();if(at(e))return st([{value:"true",label:"Yes"},{value:"false",label:"No"}],r)}function Do(e,t=!1,n){let r={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return Ae(e)?{...r,...ul(e)}:oe(e)?{...r,...Oo(Vo(e,n))}:On(e)?{...r,...dl(e)}:re(e)?{...r,...cl(e,n)}:r}function ul(e){let t=eo(e.type),n={...e,type:t};return{...ml(e),...Mo(e),...fl(n),...po(n)?zo(n):{},type:t}}function Oo(e){return e?{options:e}:{}}function cl(e,t){let n=Oo(Po(e,t)),r=e.advanced?.multiple??!0;return{...n,multiple:r}}function dl(e){return{...Mo(e),...zo(e)}}function Mo(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function fl(e){return Ot(e)?gl(e):{}}function ml(e){if(de(e)){let t=ze(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function zo(e){return _o(e,{min:Gr,max:$r})}function gl(e){return _o(e,{min:Ct,max:wt})}function _o(e,t){let n={},r=e.advanced?.length;return r&&(r.min!==void 0&&(n[t.min]=r.min),r.max!==void 0&&(n[t.max]=r.max)),n}function Bo(e,t){let n=_t(e);return n||xo(e,t)}function pl(e,t){let n=m(t)&&e.name in t?t[e.name]:t,r=Ln(n,e.advanced?.entity),o=k(r)?r:e.defaultValue;return de(e)&&k(o)?yl(e,o):X(e)&&k(o)?Rl(e,o):o}function yl(e,t){let n=ze(e);return g(t)?ko(t,n):t}function bl(e,t,n){return Ze(e)&&Array.isArray(n)?{...t,[At]:n}:t}function xl(e,t,n){if(e.required&&!k(n)&&oe(e)&&e.advanced?.preselected!==!1&&At in t){let r=t[At];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function hl(e,t,n){if(Ze(e)&&Array.isArray(t)){let r=Pn(t,e.advanced?.options);return So(e)?st(r,n):r}return t}function $o(e,t,n,r,o){let i=pl(e,r),a=Array.isArray(n)?hl(e,n,o):n,s=bl(e,t,a),l=xl(e,s,i);return{commonPropsWithOptions:s,defaultValue:l}}function Go(e,t){return Y(e)?{checked:!!t}:re(e)?{value:Array.isArray(t)?t:[]}:X(e)&&g(t)&&k(t)?{value:Gt(t,ge(e))}:at(e)?{value:k(t)?String(t):""}:{value:t??""}}function Rl(e,t){let n=ge(e);return g(t)?$t(t,n):t}function Uo(e,t){let n=e??t;return n?{"data-format":n}:{}}function Lo(e){let t=[];for(let n of e){if(typeof n=="string"){t.push(n);continue}m(n)&&"value"in n&&"label"in n&&g(n.value)&&g(n.label)&&t.push({label:n.label,value:n.value})}return t}function Ho(e,t){if(!Ze(e))return;let n=re(e)?Po(e,t):Vo(e,t);if(Array.isArray(n)){let o=Lo(n);return o.length>0?o:void 0}let r=_t(e);if(Array.isArray(r)){let o=Pn(r,e.advanced?.options),i=Lo(st(o,t?.translations));return i.length>0?i:void 0}}function Yo(e,t){let n=String(e);for(let r of t)if(typeof r=="string"){if(r===n)return r}else if(r.value===n)return r.label;return n}var vl=/^#\/definition\//;function Yt(e=[],t){let n=Ht(e,t);return Array.isArray(n)?n.filter(Tl).sort((r,o)=>qo(r)-qo(o)):[]}function Ht(e,t,n=new Map,r=new WeakSet){if(!Sl(t)||!e||typeof e!="object")return e;if(n.has(e))return n.get(e);if(r.has(e))return e;if(r.add(e),Array.isArray(e))return e.map(i=>Ht(i,t,n,r));if(Ye in e&&g(e[Ye])){let i=e[Ye].replace(vl,""),a=B(t,i);return a!==null?Ht(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=Ht(a,t,n,r);return r.delete(e),n.set(e,o),o}function Zo(e){return Object.entries(e??{})}function qo(e){return e.order??Number.MAX_VALUE}function Sl(e){return e!==void 0&&m(e)&&Object.keys(e).length>0}function Tl(e){return Yr in e?!0:Array.isArray(e[Fn])?e[Fn].length>0:!0}function Ko(e,t){let n={};for(let[r,o]of Zo(t))n[`${e}-${r}`]=o;return n}function Al(e){return Ko(_r,e)}function wl(e){return Ko(Br,e)}function Wo(e,t){let n=Al(e.advanced?.aria);return t&&t.length>0&&(n[Or]="true",n[Dr]=`${e.name}-error`),n}function Xo(e){return wl(e.advanced?.data)}var jo={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Jo={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function Qo(e,t=2){return jo[e&&e in jo?e:t]}function ei(e){if(e&&e in Jo)return Jo[e]}function Gn(e){return{min:e.advanced?.length?.min??1,max:e.advanced?.length?.max??1/0}}function qt(e){let t=[];for(let n of e)if(me(n))for(let r of n.fields)t.push(r);else t.push(n);return t}function Cl(e,t){let n=t?B(t,e.name):null;return ii(e,Array.isArray(n)?n.length:0)}function ti(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===tt}function ni(e,t){let n=Cl(e,t);return Array.from({length:n},(r,o)=>o)}function ri(e){return e.advanced?.title??e.label??e.name}function oi(e){let t={};for(let n of qt(e))ie(n)||(t[n.name]=n);return t}function ii(e,t){let{min:n,max:r}=Gn(e);return Math.min(Math.max(t,n),r)}function Un(e,t){let n=qt(e.fields),r=ii(e,t.length),o=[];for(let i=0;i<r;i++){let a=t[i],s={};for(let l of n){let u=a?.[l.name];s[l.name]=ie(l)?Un(l,kt(u)?u:[]):u}o.push(s)}return o}function Zt(e,t){if(!e.includes("/"))return e;let[n,r]=e.split("/"),o=new RegExp(`(^|.*\\.)(${n}\\.\\d+\\.)`),i=t.match(o);return i?`${i[0]}${r}`:r}var C=require("zod");var Fl=[[Y,ai],[yo,kl],[Ot,El],[fe,Nl],[at,ai],[Lt,Pl],[Pt,Ll],[re,Hn],[Vt,Hn],[Dt,Hn]];function ui(e,t=[],n){let r=C.z.object(e);if(t.length===0)return r;let o=Ml(r,t,n);return Bl(o,t,n)}function ci(e){let t={},n=C.z.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function di(e,t){for(let[n,r]of Fl)if(n(e))return r(e,t);return Il(e,t)}function kl(e,t){let n=C.z.string().trim();if(e.required){let r=we(e,t),o=n.min(1,r).pipe(si(e,t));return C.z.preprocess(i=>G(i)?"":i,o)}return n.pipe(si(e,t)).or(C.z.literal("")).nullable()}function ai(e,t){let n=C.z.preprocess(r=>{if(typeof r=="string"){if(r==="true")return!0;if(r==="false")return!1}return r},C.z.coerce.boolean());return e.required?(Y(e)?n=n.refine(r=>r===!0,{message:we(e,t)}):n=n.refine(r=>typeof r=="boolean",{message:we(e,t)}),C.z.preprocess(r=>r===null?!1:r,n)):n.nullable()}function Nl(e,t){let n=C.z.coerce.string();return e.required?(n=n.min(1,we(e,t)),C.z.preprocess(r=>G(r)?"":r,n)):n.or(C.z.literal("")).nullable()}function Il(e,t){let n=C.z.coerce.string().trim();return n=fi(n,e,t),e.required?(n=mi(n,e,t),C.z.preprocess(r=>G(r)?"":r,n)):n.nullable()}function El(e,t){let n=C.z.coerce.number().int();return n=fi(n,e,t),e.required?(n=mi(n,e,t),C.z.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function Ll(e,t){return e.required?C.z.preprocess(Vl,C.z.coerce.number({message:we(e,t)}).int()):C.z.coerce.number().int().nullable()}function Pl(e,t){let n=we(e,t),r=C.z.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function Vl(e){return e===null||e===""?void 0:e}function si(e,t){let n=e.validation?.email?N(e.validation?.email,t):void 0;return C.z.email(n)}function fi(e,t,n){return e=Dl(e,t,n),e=Ol(e,t,n),e}function mi(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,we(t,n)):e}var Dl=(e,t,n)=>gi(e,t,Ct,n),Ol=(e,t,n)=>gi(e,t,wt,n);function gi(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?N(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function Ml(e,t=[],n){let r=_l(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:s}of r)if(!zl(o,a,s)){let l=N(s.message,n);i.addIssue({code:"custom",message:l,path:[a]})}})}function zl(e,t,n){let r=n.operator??"eq",o=Me[r];return o?o(Kt(e,t),Kt(e,n.field)):!1}function _l(e){let t=[];for(let n of e){let r=n.validation?.custom;if(!r)continue;let o=Array.isArray(r)?r:[r];for(let i of o)t.push({name:n.name,rule:i})}return t}function pi(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let s=a.operator??"eq",l=Me[s];if(l&&!l(e,n(a.field))&&a.message){let u=N(a.message,r);o.push(u)}}return o}function we(e,t){return e.validation?.required?N(e.validation?.required,t):void 0}function Hn(e,t){let n=C.z.array(C.z.string());return e.required&&(n=n.min(1,we(e,t))),C.z.preprocess(r=>G(r)?[]:Array.isArray(r)?r.map(String):[String(r)],n)}function Bl(e,t=[],n){let r=t.filter($l);return r.length===0?e:e.superRefine((o,i)=>{let a=m(o)?o:{};for(let s of r)for(let l of Gl(a,s,n))i.addIssue({code:"custom",path:l.path,message:l.message})})}function $l(e){let t=e.validation;return t!==void 0&&(t.requiredWhen!==void 0||t.pattern!==void 0||t.rules!==void 0)}function Gl(e,t,n){let r=[],o=Kt(e,t.name),i=t.validation?.requiredWhen;if(i){let l=(Array.isArray(i)?i:[i]).find(u=>lt(e,u));l&&!Yn(o)&&r.push({path:[t.name],message:ae(l.message??t.validation?.required,n)})}let a=t.validation?.pattern;a&&!yi(a,o)&&r.push({path:[t.name],message:ae(a.message,n)});for(let s of t.validation?.rules??[])Ul(e,s.when)&&!Hl(s,o)&&r.push({path:[t.name],message:ae(s.message,n)});return r}function lt(e,t){let n=Me[t.operator??"eq"];return n?n(Kt(e,t.field),t.value):!1}function Kt(e,t){return t in e?e[t]:B(e,t)??void 0}function Ul(e,t){if(!t)return!0;if(Array.isArray(t))return t.every(o=>lt(e,o));if("field"in t)return lt(e,t);let n=t.all?t.all.every(o=>lt(e,o)):!0,r=t.any?t.any.some(o=>lt(e,o)):!0;return n&&r}function Hl(e,t){switch(e.assert){case"required":return Yn(t);case"minItems":return Array.isArray(t)&&t.length>=Number(e.value);case"maxItems":return Array.isArray(t)&&t.length<=Number(e.value);case"min":return li(t)>=Number(e.value);case"max":return li(t)<=Number(e.value);case"oneOf":return Array.isArray(e.value)&&e.value.map(String).includes(String(t));case"pattern":return ql(e.value)?yi(e.value,t):!0;default:return!0}}function yi(e,t){return!Yn(t)||typeof t!="string"||e.allowInterpolation&&(Oe(t)||Yl(t))?!0:new RegExp(e.regex,e.flags).test(t)}function Yl(e){return g(e)&&e.trimStart().startsWith("@")}function Yn(e){return g(e)?e.trim().length>0:Me.exists(e,void 0)}function li(e){return typeof e=="number"?e:g(e)||Array.isArray(e)?e.length:0}function ql(e){return m(e)&&"regex"in e}function bi(e,t){if(!t||!Kl(e))return!0;if(t.length===0)return!1;try{let n=new URL(e),r=n.protocol.replace(":",""),o=n.hostname,i=n.port||Zl(r);return t.some(a=>!(a.protocol&&a.protocol!==r||a.hostname&&a.hostname!==o||a.port!==void 0&&String(a.port)!==i))}catch{return!1}}function Zl(e){return e==="https"?"443":"80"}function Kl(e){return/^(https?:)?\/\//.test(e)}function xi(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,Ft);new URL(t,Ft).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(Ft,""):o}catch{return t||e}}function hi(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=xi(t.url,n.url),o=Wl(t,n),i=Xl(t,n);return{...t,...n,url:r,body:o,headers:i}})}function Wl(e,t){return m(t.body)&&m(e?.body)?{...e.body,...t.body}:t.body??e?.body}function Xl(e,t){return m(t.headers)&&m(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function Wt(e,t){let n={...e};for(let r of Object.keys(t??{})){let o=t?.[r];o!==void 0&&(n[r]=o)}return n}var jl={uppercase:e=>e.toUpperCase(),lowercase:e=>e.toLowerCase(),"remove-space":e=>e.replace(/\s+/g,""),"remove-accent":e=>e.normalize("NFD").replace(/[\u0300-\u036f]/g,"")};function ut(e,t){return!t||!g(e)||G(e)?e:(Array.isArray(t)?t:[t]).reduce((r,o)=>{let i=jl[o];return i?i(r):r},e)}var Ri=require("react/jsx-runtime");function pe(e){return io(e,(t,n,r)=>(0,Ri.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}var Xt=require("react"),se=require("react/jsx-runtime");function vi(e){let{fields:t=[]}=e.section,[n,r]=(0,Xt.useState)(!1),o=(0,Xt.useCallback)(()=>r(i=>!i),[]);return(0,se.jsxs)("fieldset",{"data-slot":"field-set","data-advanced":"true","data-expanded":n,"data-empty":t.length===0,className:"flex flex-col",id:e.section.id?.toString(),children:[(0,se.jsx)("legend",{children:(0,se.jsxs)("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-zinc-600 dark:text-zinc-400",onClick:o,type:"button",children:[(0,se.jsx)(He,{expanded:n}),(0,se.jsx)("span",{children:pe(e.title)})]})}),(0,se.jsx)(et,{visible:n,children:(0,se.jsxs)("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-zinc-300 pl-4 dark:border-zinc-600","data-slot":"field-set-content",children:[e.description&&(0,se.jsx)("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:pe(e.description)}),e.group]})})]})}var Ce=require("react/jsx-runtime");function Si(e){let t=(0,Ce.jsxs)("div",{className:"flex flex-col",children:[e.title&&(0,Ce.jsx)("legend",{className:"mb-3 font-medium text-zinc-800 dark:text-zinc-200",children:pe(e.title)}),e.description&&(0,Ce.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:pe(e.description)})]});return e.step?(0,Ce.jsxs)("div",{className:"flex flex-row items-start gap-4",children:[(0,Ce.jsx)("div",{className:"bg-primary text-primary-foreground flex size-6 shrink-0 items-center justify-center rounded-full",children:(0,Ce.jsx)("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}var ct=require("react/jsx-runtime");function jt(e){return(0,ct.jsxs)("fieldset",{className:"flex w-full min-w-0 flex-col data-[empty=false]:gap-6","data-empty":e.empty,"data-slot":"field-set",id:e.id,children:[(0,ct.jsx)(Si,{description:e.description,step:e.step,title:e.title}),(0,ct.jsx)("div",{className:"w-full min-w-0",children:e.children})]})}var Ti=require("react/jsx-runtime");function Fe(e){return(0,Ti.jsx)("div",{"data-slot":"field-group","data-compact":e.compact,className:"flex w-full flex-col gap-8 data-[compact=true]:gap-3",children:e.children})}var Jt=require("react/jsx-runtime");function Ai(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=Wt(e.style,{compact:e.section.advanced?.compact}),o=(0,Jt.jsx)(Fe,{compact:r,children:e.children});if(!e.section.title&&!e.section.description)return o;let i=ae(e.section.title,e.translations),a=ae(e.section.description,e.translations);return e.section.advanced?.collapsible?(0,Jt.jsx)(vi,{description:a,group:o,section:e.section,title:i}):(0,Jt.jsx)(jt,{description:a,empty:t.length===0,id:e.section.id?.toString(),step:n,title:i,children:o})}var qn=require("react/jsx-runtime");function wi(){return(0,qn.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,qn.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-zinc-200 dark:bg-zinc-800"})})}var Ni=require("jotai");var ke=require("jotai"),Zn=require("jotai-family"),Qt=require("fast-equals");function dt(e,t){let{[t]:n,...r}=e;return r}function Jl(e){return(0,Zn.atomFamily)(t=>(0,ke.atom)(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];(0,Qt.deepEqual)(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,dt(i,t))}))}function Ql(e){return(0,ke.atom)(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function eu(e){return(0,ke.atom)(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let s of r)s in i&&(delete i[s],a=!0);a&&n(e,i)})}function tu(e){return(0,ke.atom)(null,(t,n,r)=>{let o=t(e);(0,Qt.deepEqual)(o,r)||n(e,r)})}function Ci(e,t={}){let{merge:n,validateTarget:r}=t;return(0,Zn.atomFamily)(o=>(0,ke.atom)(i=>{let a=i(e)[o];if(a&&n)return n(Object.values(a))},(i,a,s,l)=>{if(r&&!r(s))return;let u=i(e),c={...u[s]??{}};if(l!=null){let p=c[o];(!p||!(0,Qt.deepEqual)(p,l))&&(c[o]=l,a(e,{...u,[s]:c}))}else o in c&&(delete c[o],Object.keys(c).length===0?a(e,dt(u,s)):a(e,{...u,[s]:c}))}))}function Fi(e){return(0,ke.atom)(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let s of r)s in i&&(delete i[s],a=!0);for(let s in i){let l={...i[s]},u=!1;for(let c of r)c in l&&(delete l[c],u=!0,a=!0);u&&(Object.keys(l).length===0?delete i[s]:i[s]=l)}a&&n(e,i)})}function ye(e={}){let t=(0,ke.atom)(e);return{atom:t,clearAll:Ql(t),clear:eu(t),bulkReport:tu(t),report:Jl(t)}}var ki=ye(),en=ki.atom,tn=ki.report;function nu(e,t){return e.fields.every(n=>Ii(n,t))}function Ii(e,t){return t[e.name]?.hidden??e.hidden??!1}function ru(e,t){return me(e)?nu(e,t):Ii(e,t)}function nn(e){let t=(0,Ni.useAtomValue)(en);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>ru(r,t))?null:e.children}var be=require("react/jsx-runtime");function Ei(e){let t=Yt(e.sections,e.definition);return(0,be.jsx)("div",{className:"h-full w-full",children:(0,be.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,be.jsxs)(Fe,{children:[t.map((n,r)=>(0,be.jsxs)(nn,{fields:n.fields??[],children:[(0,be.jsx)(Ai,{advanced:e.advanced,section:n,step:r+1,style:e.config.style,translations:e.translations,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.advanced?.separator&&(0,be.jsx)(wi,{})]},`key-${n.id}-${r}`)),e.control&&(0,be.jsx)(cr,{isPending:e.isPending,children:e.control})]})})})}var Pi=require("react/jsx-runtime");function Li(e){return(0,Pi.jsx)("p",{className:"-mt-2 text-xs leading-normal font-normal text-zinc-600 dark:text-zinc-400 [[data-slot=column]_&]:md:line-clamp-2",title:e.title,children:e.children})}var Vi=require("react"),Ke=require("react/jsx-runtime");function rn(e){let t={context:e.context,env:e.config?.env,value:e.value},r={locale:e.config?.env?.locale},[o,i]=(0,Vi.useState)(()=>m(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),a=()=>i(c=>!c),s=m(e.text)&&g(e.text.title)?pe(N(ot(e.text.title,t,r),e.translations)):void 0,l=N(ot(g(e.text)?e.text:e.text?.message,t,r),e.translations),u=pe(l);return u?(0,Ke.jsxs)("div",{className:"flex flex-col gap-2",children:[s&&(0,Ke.jsxs)("button",{className:"flex items-center gap-1 text-left text-xs font-medium text-zinc-700 hover:text-zinc-900 dark:text-zinc-300 dark:hover:text-zinc-100",onClick:a,type:"button",children:[s,(0,Ke.jsx)(He,{expanded:o})]}),o&&(0,Ke.jsx)(Li,{title:l,children:u})]}):null}var Kn=require("jotai");var on=ye(),U=on.atom,Di=on.clearAll,Oi=on.clear,Ne=on.report,Wn=(0,Kn.atom)({}),Xn=(0,Kn.atom)(null);var jn=require("jotai"),Mi=require("react/jsx-runtime");function an(e){let t=(0,jn.useAtomValue)(Ne(e.field.name)),r=(0,jn.useAtomValue)(tn(e.field.name))?.description??e.field.description;return(0,Mi.jsx)(rn,{config:e.config,context:e.context,text:r,translations:e.translations,value:t})}var zi=require("tailwind-merge"),ft=require("react/jsx-runtime");function _i(e){let t=e.style?.showOptionalLabel??!0,n=fe(e.field)||Y(e.field);return(0,ft.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,zi.twMerge)("flex w-fit items-center text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal [[data-slot=column]_&]:md:w-full","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,title:g(e.children)?e.children:void 0,children:[(0,ft.jsx)("span",{className:"[[data-slot=column]_&]:md:truncate",children:e.children}),t&&!e.field.required&&(0,ft.jsx)("span",{className:"ml-2 flex-shrink-0 text-sm text-zinc-600 dark:text-zinc-400",children:j("(Optional)",e.translations)})]})}var mt=require("react/jsx-runtime");function Bi(e){let t={context:e.context,env:e.config?.env},n=e.config?.env?.locale,r=ot(e.field.label,t,{locale:n});return(0,mt.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,mt.jsx)(_i,{field:e.field,style:e.config?.style,translations:e.translations,children:N(r,e.translations)}),e.horizontal===!0&&(0,mt.jsx)(an,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}var _e=require("react/jsx-runtime");function $i(e){return(0,_e.jsxs)(_e.Fragment,{children:[e.field.name&&e.field.label&&(0,_e.jsx)(Bi,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&(0,_e.jsx)(an,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}function sn(e,t){return e?t(e):null}var gt={found:!1,value:void 0};function pt(e,t){if(!Array.isArray(t)&&e in t)return{found:!0,value:t[e]};if(!e.includes("."))return gt;let n=e.split("."),r=t;for(let o of n){if(r==null)return gt;if(Array.isArray(r)){let i=Number(o);if(!Number.isInteger(i)||!(i in r))return gt;r=r[i]}else if(m(r)){if(!(o in r))return gt;r=r[o]}else return gt}return{found:!0,value:r}}function K(e,t){return pt(e,t).value}var Xe=require("react");var Gi=require("react"),ou=e=>e,Ie=(0,Gi.createContext)(ou);var Jn=ye(),Ui=Jn.clear,Hi=Jn.bulkReport,ln=Jn.report;var Yi=ye(),un=Yi.atom,qi=Yi.report,Zi=ye(),cn=Zi.atom,Ki=Zi.report;var q=require("react");var xe=require("react");function Wi(e,t,n,r){let{name:o}=e,i=(0,xe.useMemo)(()=>di(e,r),[e,r]),a=(0,xe.use)(St),s=(0,xe.useEffectEvent)(u=>{u&&t(u,i,e)}),l=(0,xe.useEffectEvent)(u=>{u&&n(u,{keepValue:a})});return(0,xe.useEffect)(()=>(s(o),()=>{l(o)}),[o]),i}var he=require("jotai");var We=require("react");function Xi(){let e=(0,We.useRef)(null);return(0,We.useEffect)(()=>()=>{e.current&&clearTimeout(e.current)},[]),(0,We.useCallback)((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}function iu(e){return document.activeElement?.getAttribute("name")===e}function ji(e,t){let n=(0,he.useStore)(),r=e.field.advanced?.entity,o=Xi(),[,i]=(0,q.useTransition)(),a=(0,q.use)(Ie),{setValue:s,shouldSkipOnChange:l,value:u,setSource:c}=t,p=(0,q.useRef)(u);p.current=u;let f=(0,q.useRef)(e.translations);f.current=e.translations;let A=Mt(e.field),y=(0,he.useSetAtom)(U),F=(0,he.useSetAtom)(en),I=(0,he.useSetAtom)(ln(e.field.name)),D=(0,he.useSetAtom)(Wn),O=(0,he.useSetAtom)(Xn),Q=(0,he.useSetAtom)(un),E=Wi(e.field,e.onMount,e.onUnmount,e.translations),L=N(e.commonProps.placeholder,e.translations),V={...e.commonProps,placeholder:L};function ue(d){let[,h]=e.getSchema();return h.find(R=>R.name===d)}function Se(d){let h=ue(d);if(h&&Ae(h)){let R=h.advanced?.transform;if(R)return R}}function ee(d,h){if(y(R=>({...R,[d]:h})),D(R=>({...R,[d]:h})),e.onValueChange){let R=ue(d);R&&e.onValueChange({name:a(d),type:R.type,value:h})}}function $e(d){let h=n.get(U),R=Object.keys(h).filter(S=>d.some(v=>S===v||S.startsWith(`${v}.`)));if(R.length!==0&&(y(S=>R.reduce((v,z)=>dt(v,z),S)),!!e.onValueChange))for(let S of R){let v=ue(S);v&&e.onValueChange({name:a(S),type:v.type,value:void 0})}}let Ge=(0,q.useRef)(null);Ge.current=d=>{if(e.field.advanced?.transient)return;let h=Ae(e.field)?ut(d,e.field.advanced?.transform):d;s(h),e.onValueChange&&e.onValueChange({name:a(e.field.name),type:e.field.type,value:h})};let Ue=(0,q.useRef)(null);Ue.current=d=>{let h=e.field.event?.change;h&&ao(h,({sources:R,states:S,values:v})=>{i(()=>{so(d,R,(z,H)=>{c(Zt(z,e.field.name),H)}),co(d,S,(z,H)=>{let te=z.map(Z=>Zt(Z,e.field.name));F(Z=>H?te.reduce((Ve,Rt)=>({...Ve,[Rt]:H}),Z):te.reduce((Ve,Rt)=>dt(Ve,Rt),Z));let _=H?.hidden===!0?te:H===void 0?te.filter(Z=>ue(Z)?.hidden===!0):[];_.length>0&&$e(_)})}),fo(d,v,(z,H,te)=>{let _=Zt(z,e.field.name);if(n.get(cn)[_]){kt(H)&&Q(Tn=>({...Tn,[_]:H}));return}let Z=Se(_),Ve=Z?ut(H,Z):H,Sn=n.get(U)[_];if(te.onlyIfTargetEmpty&&!G(Sn)){let Tn=n.get(Wn)[_];if(!Object.is(Tn,Sn))return}if(Ve!==Sn){if(iu(_)){O({target:_,value:Ve});return}ee(_,Ve)}})})};let Pe=(0,q.useCallback)(d=>{let R=E.safeParse(d).error?.issues.map(z=>z.message)??[],S=e.field.validation?.custom,v=S?pi(d,S,z=>n.get(Ne(z)),f.current):[];I([...R,...v])},[e.field.validation?.custom,E,I,n]),b=(0,q.useRef)(null);b.current=()=>{let d=n.get(Xn);d?.target===e.field.name&&(O(null),G(n.get(U)[d.target])&&ee(d.target,d.value))};let x=(0,q.useCallback)(d=>{if(!A){let h=d.target.value;e.config.validation.blur&&Pe(h)}b.current?.()},[A,e.config.validation.blur,Pe]);return{applyChangeEventsRef:Ue,commonProps:V,entity:r,hasClickable:A,onBlur:x,onValueChangeRef:Ge,setTimeoutRef:o,shouldSkipOnChange:l,validated:Pe,valueRef:p}}var Ji=require("fast-equals");var Qi=require("jotai"),J=require("react");function ea(e,t){let{name:n}=e,r=(0,J.useRef)(!1),[o,i]=(0,Qi.useAtom)(Ne(n)),a=(0,J.use)(Ie),s=(0,J.useEffectEvent)((c,p=!1)=>{let f=Ae(e)?ut(c,e.advanced?.transform):c;!p&&!(0,Ji.deepEqual)(o,f)&&(r.current=!0),i(f)}),l=(0,J.useEffectEvent)(c=>{let{found:p,value:f}=pt(a(n),c);if(k(f)){s(f);return}if(k(e.defaultValue)){s(e.defaultValue,!0);return}p&&s(f)});(0,J.useEffect)(()=>{if(t){l(t);return}k(e.defaultValue)&&s(e.defaultValue,!0)},[t,e.defaultValue]);let u=(0,J.useCallback)(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:u,value:o}}var Qn=require("react/jsx-runtime");function ta(e){let{useSource:t,useExtraProps:n,getValue:r,shouldSkipChange:o,dispatchChange:i,buildInitialSelected:a,isInitialReady:s}=e.strategies,{setValue:l,shouldSkipOnChange:u,value:c}=ea(e.field,e.value),{data:p,setSource:f,isStaticSource:A}=t(e.field,e.config,c),{applyChangeEventsRef:y,commonProps:F,entity:I,hasClickable:D,onBlur:O,onValueChangeRef:Q,setTimeoutRef:E,validated:L,valueRef:V}=ji(e,{setValue:l,shouldSkipOnChange:u,value:c,setSource:f}),{getSchema:ue}=e,Se=n?.(e.field),ee=(0,Xe.useRef)(!1),{commonPropsWithOptions:$e,defaultValue:Ge}=$o(e.field,F,p,c,A?e.translations:void 0),Ue=Go(e.field,Ge);(0,Xe.useEffect)(()=>{let b=!!e.value||k(e.field.defaultValue);if(ee.current||!b)return;if(!e.field.event?.change){ee.current=!0;return}let x=e.value?K(e.field.name,e.value):void 0,d=k(x)?x:e.field.defaultValue;if(!k(d)||!s(e.field,d,p))return;ee.current=!0;let h=a(d,p,I);queueMicrotask(()=>{let[,R]=ue();R.some(S=>S.name===e.field.name)&&y.current?.(h)})},[y,a,p,I,ue,s,e.field,e.value]);let Pe=(0,Xe.useCallback)(b=>{let x=r(b,e.field);o({field:e.field,shouldSkipOnChange:u,hasClickable:D,inputValue:x,valueRef:V})||(Q.current?.(x),e.config.validation.change&&L(x),e.field.event?.change&&i({applyChangeEventsRef:y,data:p,entity:I,inputValue:x,setTimeoutRef:E}))},[y,p,i,I,r,D,Q,e.config.validation.change,e.field,E,o,u,L,V]);return sn(e.config.inputs[e.field.type],b=>(0,Qn.jsx)($i,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:(0,Qn.jsx)(b,{...$e,...e.ariaAttributes,...e.dataAttributes,...Se,...Ue,onBlur:O,onChange:Pe})}))}var na=require("react/jsx-runtime");function je(e){return function(n){return(0,na.jsx)(ta,{...n,strategies:e})}}function ra(e){let t=X(e)?ge(e):null,n=de(e)?ze(e):null;return{dateFormat:t,timeFormat:n}}var oa=require("jotai");var au=e=>{let t=hi(e);if(t)return t},su=e=>e.trim()!=="",ia=(0,oa.atom)({}),dn=Ci(ia,{merge:au,validateTarget:su}),aa=Fi(ia);var sa=require("jotai");function fn(e){return{data:null,setSource:(0,sa.useSetAtom)(dn(e.name))}}var la=je({useSource:fn,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=ra(e);return Uo(t,n)},getValue:(e,t)=>{let n=e.target.value;if(!g(n))return n;let r=de(t)?ze(t):null;if(r!==null)return No(n,r);let o=X(t)?ge(t):null;return o!==null&&Gt(n,o)||n},shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>k(t)});var ma=require("fast-equals");var da=require("jotai");var ua=Ts(require("swr"),1);function ca(e=null,t,n=!1){let{data:r,error:o}=(0,ua.default)(lu(e,t,n),t.fetcher.provider);if(o&&it.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return Qr(r,e.namespace)}return null}function lu(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!Oe(e.url)){if(bi(e.url,t.fetcher.remotePatterns))return e;it.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function fa(e,t,n){let r=Bo(e,n),[o,i]=(0,da.useAtom)(dn(e.name)),a=o??r,s=ca(a,t,e.disabled),l=Array.isArray(a);return[s,i,l]}function uu(e,t,n){let[r,o,i]=fa(e,t,n);return{data:r,setSource:o,isStaticSource:i}}function cu(e,t){return oe(e)&&t===""}var ga=je({useSource:uu,getValue:e=>e.target.value,shouldSkipChange:({field:e,shouldSkipOnChange:t,hasClickable:n,inputValue:r,valueRef:o})=>cu(e,r)||!n&&t()&&(!r||(0,ma.deepEqual)(r,o.current)),dispatchChange:({applyChangeEventsRef:e,data:t,entity:n,inputValue:r})=>{e.current?.(En(r,t,n))},buildInitialSelected:(e,t,n)=>En(rt(e)?e:String(e),t,n),isInitialReady:(e,t,n)=>(!Ze(e)||!!n&&n.length>0)&&k(t)});var pa=je({useSource:fn,getValue:e=>e.target.value,shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>k(t)});var mn=require("react/jsx-runtime");function ya(e){return X(e.field)||de(e.field)?(0,mn.jsx)(la,{...e}):bo(e.field)?(0,mn.jsx)(pa,{...e}):(0,mn.jsx)(ga,{...e})}var er=require("react/jsx-runtime");function ba(e){return!e.errors||e.errors.length===0?null:(0,er.jsx)("ul",{className:"text-sm text-red-600 dark:text-red-500",id:e.name?`${e.name}-error`:void 0,children:e.errors?.map((t,n)=>(0,er.jsx)("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var xa=require("tailwind-merge"),ha=require("react/jsx-runtime");function gn(e){let t=e.errors&&e.errors.length>0;return(0,ha.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Mr]:"true"},...e.disabled&&{[zr]:"true"},"data-orientation":e.orientation,className:(0,xa.twMerge)("group flex w-full flex-col items-center data-[invalid=true]:text-red-600 data-[invalid=true]:dark:text-red-500","data-[clickable=true]:items-start",e.isCheckbox&&(e.isReversed?"flex-row-reverse!":"flex-row!"),"data-[clickable=true]:has-[>[data-slot=field-content]]:[&>:first-child]:mt-px",e.className),children:e.children})}var Ra=require("tailwind-merge"),Sa=require("react/jsx-runtime");function va(e){return(0,Sa.jsx)(gn,{...e,orientation:"vertical",className:(0,Ra.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var Ta=require("tailwind-merge"),wa=require("react/jsx-runtime");function Aa(e){return(0,wa.jsx)(gn,{...e,orientation:"horizontal",className:(0,Ta.twMerge)("gap-2 md:flex-row md:gap-4","[&>[data-slot=field-content]]:min-w-0 [&>[data-slot=field-content]]:flex-grow [&>[data-slot=field-content]]:self-start","[&_[role=checkbox]]:mt-[1.5px]",e.isClickable&&"md:flex-col",!e.isClickable&&["md:justify-between","[&>*:not([data-slot=field-content])]:w-full","[&>*:not([data-slot=field-content])]:md:w-1/2","[&>*:not([data-slot=field-content])]:xl:w-2/5"]),children:e.children})}var tr=require("react/jsx-runtime");function Ca(e){let t=Mt(e.field),n=Y(e.field),r=Ro(e.field);return e.horizontal?(0,tr.jsx)(Aa,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):(0,tr.jsx)(va,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function Fa(e){if(!e.field.type)return null;let t=Do(e.field,e.disabled,{lang:e.lang,translations:e.translations}),n=Xo(e.field),r=Wo(e.field,e.errors),o={...e.field,disabled:t.disabled};return e.children({ariaAttributes:r,commonProps:t,dataAttributes:n,field:o,horizontal:e.horizontal})}var ka=require("tailwind-merge"),Je=require("react/jsx-runtime");function Na(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r=!1}=Wt(e.style,{horizontal:ho(e.field)}),o=vo(e.field,e.disabled);return(0,Je.jsxs)("div",{className:(0,ka.twMerge)("flex flex-col gap-3",ei(t)),children:[(0,Je.jsx)(Ca,{disabled:o,errors:n,field:e.field,horizontal:r,children:(0,Je.jsx)(Fa,{disabled:o,errors:n,field:e.field,horizontal:r,lang:e.lang,translations:e.translations,children:e.children})}),(0,Je.jsx)(ba,{errors:n,name:e.field.name})]})}var Ia=require("jotai"),Va=require("react/jsx-runtime");function Ea(e){return(t,n)=>o=>{let i=(0,Ia.useAtomValue)(e(o.field.name)),a=n(i,o);return a===null?null:(0,Va.jsx)(t,{...o,...a})}}var du=Ea(ln);function La(e){return du(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var fu=Ea(tn);function Pa(e){return fu(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var Da=Pa(La(Na));var pn=require("tailwind-merge"),Oa=require("react"),w=require("react/jsx-runtime");function Ma(e){let t=e.isMultiField||e.collapsed!=null,[n,r]=(0,Oa.useState)(t?!e.collapsed:!0);function o(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function i(){r(c=>!c)}let a=c=>ce(j(c,e.translations),{index:e.index+1,label:e.label}),s=e.canRemove&&e.onRemove!=null&&(0,w.jsx)("button",{"aria-label":a("Remove {label} item {index}"),className:(0,pn.twMerge)("flex size-6 items-center justify-center rounded text-xl leading-none text-zinc-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:outline-none","dark:text-zinc-500 dark:hover:text-red-400"),onClick:o,type:"button",children:(0,w.jsx)("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),l=(0,w.jsxs)("div",{className:"flex min-w-0 flex-col font-medium text-zinc-700 dark:text-zinc-400",children:[(0,w.jsx)("span",{className:"text-base",children:e.previewLabel??(0,w.jsxs)(w.Fragment,{children:[e.label," ",e.index+1]})}),!n&&e.previewTags&&(0,w.jsx)("div",{className:"flex items-center gap-2 overflow-hidden text-xs font-normal text-ellipsis whitespace-nowrap text-zinc-500 dark:text-zinc-500",children:e.previewTags})]}),u=(0,w.jsxs)("div",{className:(0,pn.twMerge)("flex items-center justify-between gap-2",e.isMultiField&&n&&"mb-3"),children:[t?(0,w.jsxs)("div",{className:"flex min-w-0 grow items-center gap-2",children:[(0,w.jsxs)("button",{"aria-expanded":n,"aria-label":a(n?"Collapse {label} {index}":"Expand {label} {index}"),className:(0,pn.twMerge)("group flex grow items-center gap-2 rounded p-1 text-left text-zinc-400","focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:outline-none","dark:text-zinc-500"),onClick:i,type:"button",children:[(0,w.jsx)(He,{expanded:n}),l]}),!n&&e.previewBadge&&(0,w.jsx)("div",{className:"ml-auto shrink-0",children:e.previewBadge})]}):l,s]});return e.isMultiField?(0,w.jsxs)("div",{"data-slot":"list-item-card",className:"box-border w-full min-w-0 rounded-lg border border-zinc-100 p-4 dark:border-zinc-900",children:[u,(0,w.jsx)(et,{visible:n,children:(0,w.jsx)(Fe,{children:e.children})})]}):t?(0,w.jsxs)("div",{className:"box-border flex w-full min-w-0 flex-col gap-2",children:[u,(0,w.jsx)(et,{visible:n,children:(0,w.jsx)(Fe,{children:e.children})})]}):(0,w.jsxs)("div",{className:"box-border flex w-full min-w-0 items-start gap-2",children:[(0,w.jsx)("div",{className:"flex min-w-0 grow flex-col",children:(0,w.jsx)(Fe,{children:e.children})}),s&&(0,w.jsx)("div",{className:"shrink-0",children:s})]})}var _a=require("react");var nr=require("tailwind-merge");var za=require("jotai");function yn(e,t){return(0,za.useAtomValue)(Ne(e))??t}var Re=require("react/jsx-runtime");function Ba({className:e,initialValue:t,name:n,options:r,separator:o,staticLabel:i}){let a=yn(n??"",t);if(i===void 0&&r){let u=(Array.isArray(a)?a:a==null||a===""?[]:[a]).filter(c=>c!=null&&c!=="").map(c=>Yo(c,r));return u.length===0?null:(0,Re.jsx)("div",{className:"flex items-center gap-1.5 overflow-hidden",children:u.map((c,p)=>(0,Re.jsxs)(_a.Fragment,{children:[(o||p>0)&&(0,Re.jsx)("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),(0,Re.jsx)("span",{"aria-label":c,className:(0,nr.twMerge)("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:c,children:c})]},`${p}:${c}`))})}if(i===void 0&&(G(a)||m(a)||Array.isArray(a)))return null;let s=i??String(a);return(0,Re.jsxs)("div",{className:"flex items-center gap-1.5 overflow-hidden",children:[o&&(0,Re.jsx)("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),(0,Re.jsx)("span",{"aria-label":s,className:(0,nr.twMerge)("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:s,children:s})]})}var $a=require("jotai"),Ga=require("react");function bn(e,t){let n=(0,$a.useAtomValue)(U);return(0,Ga.useMemo)(()=>{let r=`${e}.`,o={},i=!1;for(let s in n)s.startsWith(r)&&(o[s.slice(r.length)]=n[s],i=!0);let a=t?K(e,t):void 0;return i?m(a)?{...a,...o}:o:a},[n,e,t])}var xn=require("react"),rr=require("react/jsx-runtime");function mu(e){return typeof e=="string"?{field:e}:e}function or({className:e,fields:t,label:n="Preview",lang:r,name:o,previews:i,translations:a,value:s}){let l=(0,xn.useMemo)(()=>(Array.isArray(i)?i:[i]).map(mu),[i]),u=(0,xn.useMemo)(()=>t?oi(t):void 0,[t]),c=bn(o,s),p=(0,xn.useMemo)(()=>{let f=[];for(let[A,y]of l.entries()){if(y.when!==void 0&&!qe(c,y.when))continue;if(y.label!==void 0){f.push({key:y.field??`label:${y.label}:${A}`,staticLabel:N(y.label,a)});continue}if(y.field===void 0)continue;let F=`${o}.${y.field}`,I=s!=null?K(F,s):void 0,D=u?.[y.field],O=D?Ho(D,{lang:r,translations:a}):void 0;f.push({key:`${A}:${y.field}`,initialValue:I,options:O,previewName:F})}return f},[l,c,r,o,s,a,u]);return p.length===0?null:(0,rr.jsx)("div",{"aria-label":n,className:"flex items-center gap-1.5 overflow-hidden",children:p.map((f,A)=>(0,rr.jsx)(Ba,{className:e,initialValue:"initialValue"in f?f.initialValue:void 0,name:"previewName"in f?f.previewName:void 0,options:"options"in f?f.options:void 0,separator:A>0,staticLabel:"staticLabel"in f?f.staticLabel:void 0},f.key))})}var hn=require("react/jsx-runtime");function Ua({children:e,initialValue:t,name:n}){let r=yn(n,t),i=G(r)||m(r)||Array.isArray(r)?"":String(r);return(0,hn.jsx)(hn.Fragment,{children:e(i)})}var yt=require("react/jsx-runtime");function Ha({canRemove:e,children:t,field:n,index:r,isMultiField:o,itemKey:i,label:a,lang:s,onRemove:l,previewBadge:u,previewLabel:c,previewTags:p,translations:f,value:A}){let y=`${n.name}.${i}`,F=`${a} ${r+1}`,I=bn(y,A);return(0,yt.jsx)(Ma,{canRemove:e,collapsed:n.advanced?.collapsed,index:r,isMultiField:o,label:a,onRemove:l,previewLabel:gu({fallbackLabel:F,liveItemValue:I,name:y,previewLabel:c,translations:f,value:A}),previewBadge:u?(0,yt.jsx)(or,{className:"bg-primary text-primary-foreground rounded-md px-1.5 py-0.5 leading-none font-bold uppercase",fields:n.fields,lang:s,name:y,previews:u,translations:f,value:A}):void 0,previewTags:p?(0,yt.jsx)(or,{fields:n.fields,lang:s,name:y,previews:p,translations:f,value:A}):void 0,translations:f,children:t})}function gu({fallbackLabel:e,liveItemValue:t,name:n,previewLabel:r,translations:o,value:i}){if(r===void 0)return;let a=g(r)?{field:r}:r;if(a.when!==void 0&&!qe(t,a.when))return;if(a.label!==void 0)return N(a.label,o);if(a.field===void 0)return;let s=`${n}.${a.field}`;return(0,yt.jsx)(Ua,{initialValue:i?K(s,i):void 0,name:s,children:l=>l||e})}var Za=require("tailwind-merge");var Ya=require("fast-equals");var Ee=require("jotai"),T=require("react");function Qe(e,t,n){return`${e}.${t}.${n}`}function pu(e,t){let{initial:n,mounted:r,values:o}=t,i=r[e];if(i)return ir(e,i,t);let a=o[e];if(a!==void 0)return a;if(n)return K(e,n)}function ir(e,{items:t,leafNames:n},r){return t.map(o=>{let i={};for(let a of n)i[a]=pu(Qe(e,o,a),r);return i})}function qa(e,t,n){let{min:r,max:o}=Gn(e),[i,a]=(0,T.useState)(()=>ni(e,t)),s=(0,T.useRef)(i),l=(0,T.useRef)(i.length);s.current=i;let u=(0,Ee.useStore)(),c=(0,Ee.useSetAtom)(U),p=(0,Ee.useSetAtom)(un),f=(0,T.useRef)(n);f.current=n;let A=(0,T.useRef)(t),y=(0,T.useMemo)(()=>qt(e.fields),[e.fields]),F=(0,T.useMemo)(()=>y.map(b=>b.name),[y]),I=(0,T.useCallback)((b,x)=>{let d=Number(b);return Number.isNaN(d)?!1:Number.isInteger(d)&&x>=0&&String(x)!==b},[]),D=(0,T.use)(Ie),O=(0,T.useCallback)(b=>{let x=`${e.name}.`;if(b.startsWith(x)){let d=b.slice(x.length),h=d.indexOf("."),R=h===-1?d:d.slice(0,h),S=Number(R),v=s.current.indexOf(S);I(R,v)&&(b=`${x}${v}${h===-1?"":d.slice(h)}`)}return D(b)},[e.name,I,D]),Q=(0,T.useEffectEvent)(()=>{let b=A.current;if(!b)return;let x={...u.get(U)},d=!1;for(let h of i)for(let R of F){let S=Qe(e.name,h,R);if(S in x)continue;let v=K(S,b);k(v)&&(x[S]=v,d=!0)}d&&c(x)});(0,T.useEffect)(()=>{Q()},[]);let E=(0,T.useCallback)((b,x)=>ir(e.name,{items:b,leafNames:F},{mounted:u.get(cn),values:x,initial:A.current}),[e.name,F,u]),L=(0,T.useCallback)((b,x)=>{f.current?.({name:O(e.name),value:E(b,x)})},[E,e.name,O]),V=(0,T.useCallback)(()=>{if(s.current.length>=o)return;let b=l.current++,x=[...s.current,b];a(x),L(x,u.get(U))},[L,o,u]),ue=(0,T.useCallback)(b=>{if(s.current.length<=r)return;let x=s.current[b],d=s.current.filter((S,v)=>v!==b),R={...u.get(U)};for(let S of F)delete R[Qe(e.name,x,S)];a(d),c(R),L(d,R)},[L,e.name,F,r,c,u]),Se=(0,Ee.useSetAtom)(Ki(e.name));(0,T.useEffect)(()=>{Se({items:i,leafNames:F})},[i,F,Se]),(0,T.useEffect)(()=>()=>{let b=u.get(U);c({...b,[e.name]:E(s.current,b)}),Se(void 0)},[E,e.name,Se,c,u]);let[ee,$e]=(0,Ee.useAtom)(qi(e.name)),Ge=(0,T.useEffectEvent)(b=>{let x=Un(e,b),d=u.get(U);if((0,Ya.deepEqual)(E(s.current,d),x))return;let h=[];for(let v=0;v<x.length;v++)h.push(s.current[v]??l.current++);let R={...d};for(let v of s.current)for(let z of F)delete R[Qe(e.name,v,z)];let S={};h.forEach((v,z)=>{let H=x[z];for(let te of y){let _=H[te.name];if(_===void 0)continue;let Z=Qe(e.name,v,te.name);R[Z]=_,ie(te)&&(S[Z]=_)}}),c(R),a(h),Object.keys(S).length>0&&p(v=>({...v,...S})),f.current?.({name:O(e.name),value:x})});(0,T.useEffect)(()=>{ee&&(Ge(ee),$e(void 0))},[ee,$e]);let Ue=i.length<o,Pe=i.length>r;return[i,V,ue,Ue,Pe,o,O]}var ve=require("react/jsx-runtime"),yu="flex h-9 w-full items-center gap-2 rounded-md border border-dashed border-zinc-200 px-4 text-sm font-medium text-zinc-500 transition-none hover:border-zinc-300 hover:text-zinc-800 focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:ring-offset-2 focus-visible:outline-none dark:border-zinc-800 dark:text-zinc-400 dark:hover:border-zinc-700 dark:hover:text-zinc-200";function Ka(e){let{field:t,lang:n,onValueChange:r,translations:o,value:i,children:a}=e,[s,l,u,c,p,f,A]=qa(t,i,r),y=N(ri(t),o),F=t.advanced?.action?N(t.advanced.action,o):j("Add item",o),I=f!==1/0,D=ti(t),{label:O,tags:Q,badge:E}=t.advanced?.preview??{};return(0,ve.jsx)(Ie.Provider,{value:A,children:(0,ve.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[s.map((L,V)=>(0,ve.jsx)(Ha,{canRemove:p,field:t,index:V,isMultiField:D,itemKey:L,label:y,lang:n,onRemove:u,previewBadge:E,previewLabel:O,previewTags:Q,translations:o,value:i,children:a(L)},L)),(0,ve.jsxs)("button",{"aria-disabled":!c,"aria-label":I?`${F}, ${s.length} of ${f}`:F,className:(0,Za.twMerge)(yu,I?"justify-between":"justify-center",!c&&"cursor-not-allowed opacity-50 hover:border-zinc-200 hover:text-zinc-500 dark:hover:border-zinc-800 dark:hover:text-zinc-400"),disabled:!c,onClick:l,type:"button",children:[(0,ve.jsxs)("span",{className:"flex items-center gap-2",children:[(0,ve.jsx)("span",{"aria-hidden":"true",className:"text-base leading-none",children:"+"}),F]}),I&&(0,ve.jsxs)("span",{"aria-hidden":"true",className:"text-zinc-400 tabular-nums dark:text-zinc-500",children:[s.length," / ",f]})]})]})})}var Xa=require("react/jsx-runtime");function Wa(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0,n=ae(e.field.label,e.translations),r=ae(e.field.description,e.translations);return(0,Xa.jsx)(jt,{description:r,empty:t,id:e.field.name,title:n,children:e.children})}var Rn=require("react/jsx-runtime");function ja({children:e,field:t,lang:n,onValueChange:r,translations:o,value:i}){return(0,Rn.jsx)(nn,{container:t,fields:t.fields,children:(0,Rn.jsx)(Wa,{field:t,translations:o,children:(0,Rn.jsx)(Ka,{field:t,lang:n,onValueChange:r,translations:o,value:i,children:e})})})}var Ja=require("tailwind-merge");var bt=require("react/jsx-runtime");function Qa(e){let t=Qo(e.column?.advanced?.cols);return(0,bt.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[(0,bt.jsx)("div",{"data-slot":"column",className:(0,Ja.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&(0,bt.jsx)(rn,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}var ns=require("react");var ts=require("react/jsx-runtime");function es(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>zt(n)||ie(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:me(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return(0,ts.jsx)(xt,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:t,lang:e.lang,onValueChange:e.onValueChange,style:e.style,translations:e.translations,value:e.value,children:e.children})}var Le=require("react/jsx-runtime");function xt(e){let{field:t,list:n}=e.components;return Yt(e.fields).map((r,o)=>(0,Le.jsxs)(ns.Fragment,{children:[me(r)&&(0,Le.jsx)(Qa,{column:r,config:e.config,context:e.context,translations:e.translations,children:(0,Le.jsx)(xt,{...e,fields:r.fields})}),zt(r)&&(0,Le.jsx)(t,{disabled:e.disabled,field:r,lang:e.lang,style:e.style,translations:e.translations,children:e.children}),ie(r)&&(0,Le.jsx)(n,{field:r,lang:e.lang,onValueChange:e.onValueChange,translations:e.translations,value:e.value,children:i=>(0,Le.jsx)(es,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:r,index:i,lang:e.lang,onValueChange:e.onValueChange,style:e.style,translations:e.translations,value:e.value,children:e.children})})]},o))}var os=require("react/jsx-runtime");function rs(e){return n=>(0,os.jsx)(xt,{...n,components:e})}var is=rs({field:Da,list:ja});var sr=require("jotai");var ht=require("react");function ss(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},s=(0,sr.useSetAtom)(Hi),l=(0,sr.useSetAtom)(Di),u={data:null,error:null,success:!1},[c,p,f]=(0,ht.useActionState)(async(A,y)=>{let[F,I]=e(),D=ui(F,I,a);if(i===!1)return t?await t(y,D):A;let O=to(y),Q=xu(O,I),E=D.safeParse(Q);if(!E.success){let V=ci(E.error);return(0,ht.startTransition)(()=>{s(V)}),ar(O,{description:j("Please correct the errors and try again.",a),details:[],title:j("There were validation errors submitting the form.",a)})}let L=no(E.data);if(t)try{let V=await t(L,D);return V.success?(r?.(V.data),o||(0,ht.startTransition)(()=>{l()}),as(L,o)):ar(L,V.error)}catch(V){return it.error("Error executing form action:",V),ar(L,{title:j("An unexpected error occurred submitting the form.",a),details:bu(V,a)})}return as(E.data,o)},u);return[p,c,f]}function bu(e,t){return e instanceof Error?[e.message]:[j("Unknown error",t)]}function as(e,t=!1){return{data:t?e:null,error:null,success:!0}}function ar(e,t){return{data:e,error:t,success:!1}}function xu(e,t){let n={...e};for(let r of t)if(X(r)&&typeof n[r.name]=="string"&&n[r.name]){let o=$t(n[r.name],ge(r));o&&(n[r.name]=o)}return n}var ds=require("react");var Be=require("react");var ls=require("react"),vn=require("jotai");function us(){let e=(0,vn.useSetAtom)(Ui),t=(0,vn.useSetAtom)(Oi),n=(0,vn.useSetAtom)(aa);return(0,ls.useCallback)((r,o)=>{let i=Array.isArray(r)?r:[r];e(i),n(i),o?.keepValue||t(i)},[e,n,t])}function cs(){let e=us(),t=(0,Be.useRef)({}),n=(0,Be.useRef)([]),r=(0,Be.useCallback)((a,s,l)=>{a in t.current||(t.current[a]=s,n.current.push(l))},[]),o=(0,Be.useCallback)((a,s)=>{t.current[a]&&(delete t.current[a],n.current=n.current.filter(l=>l.name!==a),e([a],{keepValue:s?.keepValue}))},[e]);return[(0,Be.useCallback)(()=>[t.current,n.current],[]),r,o]}var le=require("react/jsx-runtime");function fs(e){let t=(0,ds.useMemo)(()=>Eo(e.lang,e.translations),[e.lang,e.translations]),[n,r,o]=cs(),[i,a,s]=ss(n,e.action,{onSuccess:e.onSuccess,validation:e.config.validation.submit,translations:t}),l=e.config.validation.showError&&!a.success&&a.error,u=a.data??e.value;return(0,le.jsxs)(le.Fragment,{children:[l&&sn(e.config.alert,c=>(0,le.jsx)("div",{className:"mb-4 w-full",children:(0,le.jsx)(c,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),(0,le.jsx)(Ei,{action:i,advanced:e.advanced,config:e.config,control:e.children,definition:e.definition,isPending:s,noValidate:!0,readOnly:e.readOnly,sections:e.sections,translations:t,children:({disabled:c,fields:p})=>(0,le.jsx)(is,{config:e.config,context:e.context,disabled:c,fields:p,lang:e.lang,onValueChange:e.onValueChange,style:e.config.style,translations:t,value:u,children:f=>(0,le.jsx)(ya,{...f,config:e.config,context:e.context,getSchema:n,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:u})})})]})}var ms=require("jotai"),lr=require("react/jsx-runtime");function gs(e){return(0,lr.jsx)(ms.Provider,{children:(0,lr.jsx)(fs,{...e})})}function ps(e,t){for(let n of e){if("name"in n&&typeof n.name=="string"){t.push(n.name);continue}"fields"in n&&ps(n.fields??[],t)}}function ys(e,t){let n=[];for(let o of e)ps(o.fields??[],n);let r=t;for(let o of n)pt(o,t).found||(r===t&&(r={...t}),r[o]=void 0);return r}
|
|
1
|
+
"use strict";var Rs=Object.create;var kt=Object.defineProperty;var vs=Object.getOwnPropertyDescriptor;var Ss=Object.getOwnPropertyNames;var Ts=Object.getPrototypeOf,As=Object.prototype.hasOwnProperty;var ws=(e,t)=>{for(var n in t)kt(e,n,{get:t[n],enumerable:!0})},fr=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Ss(t))!As.call(e,o)&&o!==n&&kt(e,o,{get:()=>t[o],enumerable:!(r=vs(t,o))||r.enumerable});return e};var Cs=(e,t,n)=>(n=e!=null?Rs(Ts(e)):{},fr(t||!e||!e.__esModule?kt(n,"default",{value:e,enumerable:!0}):n,e)),ks=e=>fr(kt({},"__esModule",{value:!0}),e);var Su={};ws(Su,{Form:()=>bs,withDeclaredFields:()=>hs});module.exports=ks(Su);var gr=require("react/jsx-runtime");function mr(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,gr.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var kn=require("react/jsx-runtime");function Ye(e){return(0,kn.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",className:`size-4 transition-transform duration-200 ${e.expanded?"rotate-90":""}`,children:(0,kn.jsx)("path",{fillRule:"evenodd",d:"M8.22 5.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.75.75 0 0 1-1.06-1.06L11.94 10 8.22 6.28a.75.75 0 0 1 0-1.06Z",clipRule:"evenodd"})})}var yr=require("react");var pr=require("react"),qe=(0,pr.createContext)(!1);var Fn=require("react/jsx-runtime");function ot({children:e,visible:t}){return(0,Fn.jsx)(yr.Activity,{mode:t?"visible":"hidden",children:(0,Fn.jsx)(qe,{value:!0,children:e})})}var Ft="input",br="input/date",xr="input/email",hr="input/number",Rr="input/time";var vr="textarea",Sr="radio",Tr="checkbox",Nn="list",Ar="select",wr="select/active",Cr="select/day",kr="select/month",Fr="select/timezone",Nr="select/year";var Ir="chips",Er="chips/day",Lr="chips/month",it="column",Vr="description",In="fields",Pr="label",j="value",Nt="options",En="email",Dr="number",Or="password",Mr="tel",at="text",zr="aria-errormessage",_r="aria-invalid",Br="data-invalid",$r="data-readonly",Gr="aria",Ur="data",It="max",Hr="maxLength",Et="min",Yr="minLength",Ke="$ref",qr="source",Kr="state",Lt="http://luna.internal",Zr="type",Wr={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};var z=require("date-fns"),Oe=require("date-fns/locale");function m(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function Vt(e){return Array.isArray(e)&&e.every(m)}function Y(e){return e==null||e===""}function ne(e){return g(e)||typeof e=="number"||Ln(e)}function st(e){return Array.isArray(e)&&e.every(ne)}function g(e){return typeof e=="string"}function Xr(e){return m(e)&&"url"in e}function Ln(e){return typeof e=="boolean"}var jr={en:Oe.enUS,"en-US":Oe.enUS,es:Oe.es,"es-ES":Oe.es,"es-MX":Oe.es},Fs={short:"M/d/yy",medium:"MMM d, yyyy",long:"MMMM d, yyyy",full:"EEEE, MMMM d, yyyy"},Ns={ms:1,s:1e3,min:6e4,h:36e5,d:864e5};function Jr(e){if(e)return jr[e]??jr[e.split("-")[0]]}function Pt(e){if(typeof e=="number"&&!Number.isNaN(e))return e;if(g(e)&&e.trim()!==""){let t=Number(e);return Number.isNaN(t)?null:t}return null}function Qr(e,t,n){let r=Ns[t];if(r===void 0)return String(e);let o=e*r,i=(0,z.intervalToDuration)({start:0,end:o});return(0,z.formatDuration)(i,{locale:n})}function eo(e){if(e instanceof Date)return(0,z.isValid)(e)?e:null;if(g(e)){let t=(0,z.parseISO)(e);if((0,z.isValid)(t))return t;let n=new Date(e);return(0,z.isValid)(n)?n:null}if(typeof e=="number"){let t=new Date(e);return(0,z.isValid)(t)?t:null}return null}var Is={currency:(e,t,n)=>{let r=Pt(e);if(r===null)return String(e);let o=t[0]??"USD";return new Intl.NumberFormat(n.locale,{style:"currency",currency:o}).format(r)},percent:(e,t,n)=>{let r=Pt(e);return r===null?String(e):new Intl.NumberFormat(n.locale,{style:"percent"}).format(r)},number:(e,t,n)=>{let r=Pt(e);return r===null?String(e):new Intl.NumberFormat(n.locale).format(r)},date:(e,t,n)=>{let r=eo(e);if(!r)return String(e);let o=t[0]??"short",i=Jr(n.locale);if(o==="relative")return(0,z.formatDistanceToNow)(r,{addSuffix:!0,locale:i});let a=Fs[o]??o;return(0,z.format)(r,a,{locale:i})},duration:(e,t,n)=>{let r=Jr(n.locale);if(typeof e=="number")return Qr(e,t[0]??"ms",r);if(g(e)){let i=Pt(e);if(i!==null)return Qr(i,t[0]??"ms",r)}let o=eo(e);return o?(0,z.formatDistanceToNow)(o,{addSuffix:!0,locale:r}):String(e)}};function to(e,t,n){let r=t.split(":").map(s=>s.trim()).filter(s=>s.length>0);if(r.length===0)return;let[o,...i]=r,a=Is[o];if(a)return a(e,i,n)}var Es=/^\d+$/;function Pn(e,t=[],n=j){return st(e)?{value:e}:Array.isArray(t)?t.find(r=>{let o=Dn(r,n);if(o!==void 0&&`${o}`==`${e}`)return r})??{value:e}:{value:e}}function Dn(e,t=j){if(e!=null){if(st(e)||ne(e))return e;if(m(e)){let n=Ls(e,t);if(ne(n))return n}}}function Ls(e,t){let n=$(e,t);if(ne(n))return n}function no(e,t){if(Array.isArray(e))return e;let n=$(e,t);return Array.isArray(n)?n:null}function $(e,t){if(!t||!m(e))return null;let n=t.split(".").filter(o=>o!=="");if(n.length===0)return null;let r=e;for(let o of n)if(m(r)&&o in r)r=r[o];else if(Array.isArray(r)){let i=Number(o);if(!Number.isInteger(i)||i<0||i>=r.length)return null;r=r[i]}else return null;return r}function On(e,t={description:Vr,label:Pr,value:j}){return e.map(n=>{if(m(n)){let r=$(n,t.label),o=$(n,t.value);if(ne(r)&&ne(o)){let i=$(n,t.description);return{label:`${r}`,value:`${o}`,...ne(i)&&{description:`${i}`}}}}return n})}function ro(e=at){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==Ft?n.trim().toLowerCase():at}function oo(e){let t={};for(let n of e.keys()){let r=e.getAll(n);t[n]=r.length>1?r:r[0]}return t}function io(e){let t={};for(let n of Object.keys(e)){let r=n.split(".");if(r.length===1){t[n]=e[n];continue}let o=t;for(let a=0;a<r.length-1;a++){let s=r[a],l=r[a+1],u=Es.test(l);s in o||(o[s]=u?[]:{}),o=o[s]}let i=r[r.length-1];o[i]=e[n]}return Vn(t),t}function Vn(e){for(let t of Object.keys(e)){let n=e[t];if(Array.isArray(n)){let r=n.filter(o=>o!==void 0);for(let o of r)m(o)&&Vn(o);e[t]=r}else m(n)&&Vn(n)}}var Vs=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g,Ps=/{([^}]{1,200})}/,Ds=/{([^}]{1,200})}/g,Os=/^{([^}|]{1,200})}$/;function me(e,t={},n={}){if(g(e))return zs(e,t,n);if(Array.isArray(e))return e.map(r=>me(r,t,n));if(m(e)){let r={};for(let o in e)r[o]=me(e[o],t,n);return r}return e}function ao(e,t={},n={}){if(g(e)){let r=Ms(e,t);if(r!==void 0)return r}return me(e,t,n)}function lt(e,t={},n={}){return Me(e)?me(e,t,n):e}function Me(e){return g(e)?Ps.test(e):Array.isArray(e)?e.some(t=>Me(t)):m(e)?Object.values(e).some(t=>Me(t)):!1}function so(e,t){return t.includes(".")?$(e,t):e[t]}function Ms(e,t){let n=Os.exec(e);if(!n)return;let r=n[1].trim();if(!r)return;let o=so(t,r);if(m(o)||Array.isArray(o))return o}function zs(e,t={},n={}){return e.replace(Ds,(r,o)=>{let i=String(o).split("|").map(c=>c.trim()),[a,...s]=i;if(!a)return r;let l=so(t,a);if(s.length===0)return ne(l)?String(l):r;if(l==null)return r;let u=l;for(let c of s){let p=to(u,c,{locale:n.locale});if(p===void 0)return r;u=p}return String(u)})}function lo(e,t){if(!g(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Vs.exec(e))!==null;){let[a,s,l]=n,u=n.index;o=!0,u>r&&i.push(e.substring(r,u));let c=t?t(u,l,s):a;i.push(c),r=u+a.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var ut={error:(...e)=>{Mn()&&!zn()&&Dt().error("[Luna Form]",...e)},warn:(...e)=>{Mn()&&!zn()&&Dt().warn("[Luna Form]",...e)},info:(...e)=>{Mn()&&!zn()&&Dt().info("[Luna Form]",...e)}},Mn=()=>typeof Dt()<"u",zn=()=>!0,Dt=()=>globalThis.console;function uo(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===j&&n.push(i),i.action===qr&&r.push(i),i.action===Kr&&o.push(i);t({sources:r,states:o,values:n})}function co(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(Xr(i)){let a=me(i.url,e),s=i.body?me(i.body,e):i.body;n(o,{...i,url:a,body:s})}}}var ze={eq:Us,gt:Ks,gte:Zs,in:Ys,lt:Ws,lte:Xs,neq:Hs,nin:qs,contains:js,exists:mo,empty:Js,truthy:Qs},_s=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,fo=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function Bs(e){return typeof e=="string"&&_s.test(e)}function $s(e){return typeof e=="string"&&fo.test(e)}function Gs(e){let t=e.match(fo);if(t){let[,n,r,o,i,a,s]=t;return new Date(Number(o),Number(r)-1,Number(n),Number(i??0),Number(a??0),Number(s??0)).getTime()}return NaN}function we(e){return Bs(e)?new Date(e).getTime():$s(e)?Gs(e):Number(e)}function Us(e,t){return e===t}function Hs(e,t){return e!==t}function Ys(e,t){return Array.isArray(t)&&t.includes(String(e))}function qs(e,t){return Array.isArray(t)&&!t.includes(String(e))}function Ks(e,t){return we(e)>we(t)}function Zs(e,t){return we(e)>=we(t)}function Ws(e,t){return we(e)<we(t)}function Xs(e,t){return we(e)<=we(t)}function js(e,t){return typeof e=="string"?e.includes(String(t)):Array.isArray(e)?e.map(String).includes(String(t)):!1}function mo(e){return Array.isArray(e)?e.length>0:e!=null&&e!==""}function Js(e){return!mo(e)}function Qs(e){return Array.isArray(e)?e.length>0:!!e}function Ze(e,t){if(t===void 0)return!0;if(g(t)){let n=Ot(e,j);return Array.isArray(n)?n.length===1&&n[0]===t:n===t}if(Ln(t)){let n=Ot(e,j);return(Array.isArray(n)?n.length>0:!!n)===t}if(Array.isArray(t)){let n=Ot(e,j);return Array.isArray(n)?n.some(r=>t.includes(String(r))):t.includes(String(n))}return el(e,t)}function el(e=null,t){let n=Ot(e,t.field??j),{operator:r="eq",value:o}=t,i=ze[r];return i?i(n,o):!1}function Ot(e,t){return m(e)?$(e,t):e}function go(e=null,t=[],n){for(let r of t){let{target:o,state:i,when:a}=r,s=Array.isArray(o)?o:[o];if(!e){n(s);continue}let l=Ze(e,a);n(s,l?i:void 0)}}function po(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?ao(i,e):void 0,{onlyIfTargetEmpty:r.onlyIfTargetEmpty??!1})}var ct=e=>L(wr)(e),yo=e=>L(Cr)(e),Mt=e=>L(kr)(e),zt=e=>L(Nr)(e),bo=e=>L(Fr)(e),_t=e=>L(Er)(e),Bt=e=>L(Lr)(e),J=L(br),ge=L(Rr),K=L(Tr),re=L(Ir),pe=L(Sr),Ce=L(Ft),oe=L(Ar),_n=L(vr),xo=L(at,En,Or,Mr),ho=L(xr,En),$t=L(hr,Dr);function Gt(e){return pe(e)||K(e)}function ie(e){return e.type===Nn}function ye(e){return e.type===it}function Ut(e){return e.type!==it&&e.type!==Nn}function We(e){return oe(e)||pe(e)||re(e)}function Ro(e){return Ce(e)||_n(e)}function k(e){return e!=null&&e!==""}function L(...e){return t=>{let n=g(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function vo(e,t={}){if(oe(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&m(n))return[n]}}function So(e){return pe(e)||K(e)?!0:e.advanced?.horizontal}function To(e){return K(e)?e.advanced?.reverse!==!1:!1}function Ao(e,t){let n=e.readonly??!1;return t||n}function Ht(e){if(tl(e)){let t=e.source;if(Array.isArray(t)||m(t)&&!(Ke in t))return t}}function wo(e){return Array.isArray(Ht(e))}function tl(e){return pe(e)||re(e)||oe(e)&&!e.disabled}var G=require("date-fns"),nl=/^\d+$/,Yt=new Date(2e3,0,1),rl=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[],Bn="default";function Fo(e){if(!e)return Bn;try{return Intl.getCanonicalLocales(e)[0]??Bn}catch{return Bn}}function $n(e){let t=Fo(e);return Array.from({length:12},(n,r)=>({value:(r+1).toString(),label:new Date(0,r).toLocaleString(t,{month:"long"})}))}function Gn(e){let t=Fo(e);return Array.from({length:7},(n,r)=>({value:r.toString(),label:new Date(2e3,0,2+r).toLocaleString(t,{weekday:"long"})}))}function No(e,t){return t>=e?Array.from({length:t-e+1},(n,r)=>{let o=e+r;return{value:o.toString(),label:o.toString()}}):[]}function Un(){return new Date().getFullYear()}function ol(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function il(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return Wr[n]??"Other"}function al(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function Co(e,t){let n=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"longOffset"}).formatToParts(t),r=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"long"}).formatToParts(t),i=(n.find(s=>s.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),a=al(r,e);return{offset:i,longName:a}}function ko(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function Io(){let e=new Date,t=ol(),n=new Map,r=ko(t),{offset:o,longName:i}=Co(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let l of rl()){if(l===t)continue;let u=ko(l),{offset:c,longName:p}=Co(l,e),f={value:l,label:`${u} - ${p} (${c})`},v=il(l);if(v==="Other")continue;let b=n.get(v);b?b.push(f):n.set(v,[f])}for(let l of n.values())l.sort((u,c)=>u.label.localeCompare(c.label));let s=Array.from(n.entries()).sort(([l],[u])=>l.localeCompare(u)).map(([l,u])=>({label:l,items:u}));return[{label:"Suggested",items:[a]},...s]}function Hn(e,t){if(typeof e=="number")return e;let n=t??Un(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,a]=o,s=parseInt(a,10);if(!isNaN(s))return i==="+"?n+s:n-s}return n}return nl.test(r)?parseInt(r,10):n}function qt(e,t){if(!e)return"";try{let n=(0,G.parse)(e,t,Yt);return(0,G.isValid)(n)?(0,G.format)(n,"yyyy-MM-dd"):""}catch{return""}}function Eo(e,t){if(!e)return"";try{let n=(0,G.parse)(e,t,Yt);return(0,G.isValid)(n)?(0,G.format)(n,"HH:mm:ss"):""}catch{return""}}function Lo(e,t="HH:mm"){if(!e)return"";try{let n=e.split(":").length===3?"HH:mm:ss":"HH:mm",r=(0,G.parse)(e,n,Yt);return(0,G.isValid)(r)?(0,G.format)(r,t):""}catch{return""}}function Kt(e,t="MMMM d, yyyy"){if(!e)return"";try{let n=(0,G.parse)(e,"yyyy-MM-dd",Yt);return(0,G.isValid)(n)?(0,G.format)(n,t):""}catch{return""}}function _e(e){return e.advanced?.format??"HH:mm"}function be(e){return e.advanced?.format??"MMMM d, yyyy"}var sl={es:{"(Optional)":"(Opcional)","Add item":"A\xF1adir elemento","An unexpected error occurred submitting the form.":"Ocurri\xF3 un error inesperado al enviar el formulario.","Collapse {label} {index}":"Contraer {label} {index}","Expand {label} {index}":"Expandir {label} {index}","Please correct the errors and try again.":"Corrige los errores e int\xE9ntalo de nuevo.","Remove {label} item {index}":"Eliminar {label} {index}","There were validation errors submitting the form.":"Se encontraron errores de validaci\xF3n al enviar el formulario.","Unknown error":"Error desconocido",No:"No",Yes:"S\xED"}};function Q(e,t){return F(e,t)}function Po(e,t){let n=t?.[e??""],r=e?sl[ll(e)]:void 0;return r?n?{...r,...n}:r:n}function ll(e){return e.toLowerCase().split(/[-_]/)[0]}function F(e,t){return e?t?t[e]??e:e:""}function ae(e,t){return e?F(e,t):void 0}function dt(e,t){if(!t)return e;let n=!1,r=e.map(o=>{let i=ul(o,t);return i!==o&&(n=!0),i});return n?r:e}function ul(e,t){if(!m(e))return e;let n=Vo(e.label,t),r=e.items;if(Array.isArray(r)){let i=dt(r,t);return i===r&&n===e.label?e:{...e,...n!==void 0&&{label:n},items:i}}let o=Vo(e.description,t);return n===e.label&&o===e.description?e:{...e,...n!==void 0&&{label:n},...o!==void 0&&{description:o}}}function Vo(e,t){return g(e)?F(e,t):e}var Zt=Un();function Oo(e,t){if(re(e))return cl(e,t?.lang)}function cl(e,t){if(_t(e))return Gn(t);if(Bt(e))return $n(t)}function Mo(e,t){if(oe(e))return dl(e,t)}function dl(e,t){let{lang:n,translations:r}=t??{};if(yo(e))return Gn(n);if(Mt(e))return $n(n);if(zt(e)){let o=e.advanced?.length?.min??Zt,i=e.advanced?.length?.max??Zt+5;return No(Hn(o,Zt),Hn(i,Zt))}if(bo(e))return Io();if(ct(e))return dt([{value:"true",label:"Yes"},{value:"false",label:"No"}],r)}function zo(e,t=!1,n){let r={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return Ce(e)?{...r,...fl(e)}:oe(e)?{...r,..._o(Mo(e,n))}:_n(e)?{...r,...gl(e)}:re(e)?{...r,...ml(e,n)}:r}function fl(e){let t=ro(e.type),n={...e,type:t};return{...yl(e),...Bo(e),...pl(n),...xo(n)?$o(n):{},type:t}}function _o(e){return e?{options:e}:{}}function ml(e,t){let n=_o(Oo(e,t)),r=e.advanced?.multiple??!0;return{...n,multiple:r}}function gl(e){return{...Bo(e),...$o(e)}}function Bo(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function pl(e){return $t(e)?bl(e):{}}function yl(e){if(ge(e)){let t=_e(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function $o(e){return Go(e,{min:Yr,max:Hr})}function bl(e){return Go(e,{min:Et,max:It})}function Go(e,t){let n={},r=e.advanced?.length;return r&&(r.min!==void 0&&(n[t.min]=r.min),r.max!==void 0&&(n[t.max]=r.max)),n}function Uo(e,t){let n=Ht(e);return n||vo(e,t)}function xl(e,t){let n=m(t)&&e.name in t?t[e.name]:t,r=Dn(n,e.advanced?.entity),o=k(r)?r:e.defaultValue;return ge(e)&&k(o)?hl(e,o):J(e)&&k(o)?Tl(e,o):o}function hl(e,t){let n=_e(e);return g(t)?Eo(t,n):t}function Rl(e,t,n){return We(e)&&Array.isArray(n)?{...t,[Nt]:n}:t}function vl(e,t,n){if(e.required&&!k(n)&&oe(e)&&e.advanced?.preselected!==!1&&Nt in t){let r=t[Nt];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function Sl(e,t,n){if(We(e)&&Array.isArray(t)){let r=On(t,e.advanced?.options);return wo(e)?dt(r,n):r}return t}function Ho(e,t,n,r,o){let i=xl(e,r),a=Array.isArray(n)?Sl(e,n,o):n,s=Rl(e,t,a),l=vl(e,s,i);return{commonPropsWithOptions:s,defaultValue:l}}function Yo(e,t){return K(e)?{checked:!!t}:re(e)?{value:Array.isArray(t)?t:[]}:J(e)&&g(t)&&k(t)?{value:Kt(t,be(e))}:ct(e)?{value:k(t)?String(t):""}:{value:t??""}}function Tl(e,t){let n=be(e);return g(t)?qt(t,n):t}function qo(e,t){let n=e??t;return n?{"data-format":n}:{}}function Do(e){let t=[];for(let n of e){if(typeof n=="string"){t.push(n);continue}m(n)&&"value"in n&&"label"in n&&g(n.value)&&g(n.label)&&t.push({label:n.label,value:n.value})}return t}function Ko(e,t){if(!We(e))return;let n=re(e)?Oo(e,t):Mo(e,t);if(Array.isArray(n)){let o=Do(n);return o.length>0?o:void 0}let r=Ht(e);if(Array.isArray(r)){let o=On(r,e.advanced?.options),i=Do(dt(o,t?.translations));return i.length>0?i:void 0}}function Zo(e,t){let n=String(e);for(let r of t)if(typeof r=="string"){if(r===n)return r}else if(r.value===n)return r.label;return n}var Al=/^#\/definition\//;function Xt(e=[],t){let n=Wt(e,t);return Array.isArray(n)?n.filter(Cl).sort((r,o)=>Wo(r)-Wo(o)):[]}function Wt(e,t,n=new Map,r=new WeakSet){if(!wl(t)||!e||typeof e!="object")return e;if(n.has(e))return n.get(e);if(r.has(e))return e;if(r.add(e),Array.isArray(e))return e.map(i=>Wt(i,t,n,r));if(Ke in e&&g(e[Ke])){let i=e[Ke].replace(Al,""),a=$(t,i);return a!==null?Wt(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=Wt(a,t,n,r);return r.delete(e),n.set(e,o),o}function Xo(e){return Object.entries(e??{})}function Wo(e){return e.order??Number.MAX_VALUE}function wl(e){return e!==void 0&&m(e)&&Object.keys(e).length>0}function Cl(e){return Zr in e?!0:Array.isArray(e[In])?e[In].length>0:!0}function jo(e,t){let n={};for(let[r,o]of Xo(t))n[`${e}-${r}`]=o;return n}function kl(e){return jo(Gr,e)}function Fl(e){return jo(Ur,e)}function Jo(e,t){let n=kl(e.advanced?.aria);return t&&t.length>0&&(n[_r]="true",n[zr]=`${e.name}-error`),n}function Qo(e){return Fl(e.advanced?.data)}var ei={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},ti={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function ni(e,t=2){return ei[e&&e in ei?e:t]}function ri(e){if(e&&e in ti)return ti[e]}function Yn(e){return{min:e.advanced?.length?.min??1,max:e.advanced?.length?.max??1/0}}function jt(e){let t=[];for(let n of e)if(ye(n))for(let r of n.fields)t.push(r);else t.push(n);return t}function Nl(e,t){let n=t?$(t,e.name):null;return li(e,Array.isArray(n)?n.length:0)}function oi(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===it}function ii(e,t){let n=Nl(e,t);return Array.from({length:n},(r,o)=>o)}function ai(e){return e.advanced?.title??e.label??e.name}function si(e){let t={};for(let n of jt(e))ie(n)||(t[n.name]=n);return t}function li(e,t){let{min:n,max:r}=Yn(e);return Math.min(Math.max(t,n),r)}function qn(e,t){let n=jt(e.fields),r=li(e,t.length),o=[];for(let i=0;i<r;i++){let a=t[i],s={};for(let l of n){let u=a?.[l.name];s[l.name]=ie(l)?qn(l,Vt(u)?u:[]):u}o.push(s)}return o}function Jt(e,t){if(!e.includes("/"))return e;let[n,r]=e.split("/"),o=new RegExp(`(^|.*\\.)(${n}\\.\\d+\\.)`),i=t.match(o);return i?`${i[0]}${r}`:r}var A=require("zod");var Il=[[K,ui],[ho,El],[$t,Pl],[pe,Ll],[ct,ui],[Mt,Ol],[zt,Dl],[re,Kn],[_t,Kn],[Bt,Kn]];function fi(e,t=[],n){let r=A.z.object(e);if(t.length===0)return r;let o=Bl(r,t,n);return Ul(o,t,n)}function mi(e){let t={},n=A.z.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function gi(e,t){for(let[n,r]of Il)if(n(e))return r(e,t);return Vl(e,t)}function El(e,t){let n=A.z.string().trim();if(e.required){let r=ke(e,t),o=n.min(1,r).pipe(ci(e,t));return A.z.preprocess(i=>Y(i)?"":i,o)}return n.pipe(ci(e,t)).or(A.z.literal("")).nullable()}function ui(e,t){let n=A.z.preprocess(r=>{if(typeof r=="string"){if(r==="true")return!0;if(r==="false")return!1}return r},A.z.coerce.boolean());return e.required?(K(e)?n=n.refine(r=>r===!0,{message:ke(e,t)}):n=n.refine(r=>typeof r=="boolean",{message:ke(e,t)}),A.z.preprocess(r=>r===null?!1:r,n)):n.nullable()}function Ll(e,t){let n=A.z.coerce.string();return e.required?(n=n.min(1,ke(e,t)),A.z.preprocess(r=>Y(r)?"":r,n)):n.or(A.z.literal("")).nullable()}function Vl(e,t){let n=A.z.coerce.string().trim();return n=pi(n,e,t),e.required?(n=yi(n,e,t),A.z.preprocess(r=>Y(r)?"":r,n)):n.nullable()}function Pl(e,t){let n=A.z.coerce.number().int();return n=pi(n,e,t),e.required?(n=yi(n,e,t),A.z.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function Dl(e,t){return e.required?A.z.preprocess(Ml,A.z.coerce.number({message:ke(e,t)}).int()):A.z.coerce.number().int().nullable()}function Ol(e,t){let n=ke(e,t),r=A.z.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function Ml(e){return e===null||e===""?void 0:e}function ci(e,t){let n=e.validation?.email?F(e.validation?.email,t):void 0;return A.z.email(n)}function pi(e,t,n){return e=zl(e,t,n),e=_l(e,t,n),e}function yi(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,ke(t,n)):e}var zl=(e,t,n)=>bi(e,t,Et,n),_l=(e,t,n)=>bi(e,t,It,n);function bi(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?F(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function Bl(e,t=[],n){let r=Gl(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:s}of r)if(!$l(o,a,s)){let l=F(s.message,n);i.addIssue({code:"custom",message:l,path:[a]})}})}function $l(e,t,n){let r=n.operator??"eq",o=ze[r];return o?o(Qt(e,t),Qt(e,n.field)):!1}function Gl(e){let t=[];for(let n of e){let r=n.validation?.custom;if(!r)continue;let o=Array.isArray(r)?r:[r];for(let i of o)t.push({name:n.name,rule:i})}return t}function xi(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let s=a.operator??"eq",l=ze[s];if(l&&!l(e,n(a.field))&&a.message){let u=F(a.message,r);o.push(u)}}return o}function ke(e,t){return e.validation?.required?F(e.validation?.required,t):void 0}function Kn(e,t){let n=A.z.array(A.z.string());return e.required&&(n=n.min(1,ke(e,t))),A.z.preprocess(r=>Y(r)?[]:Array.isArray(r)?r.map(String):[String(r)],n)}function Ul(e,t=[],n){let r=t.filter(Hl);return r.length===0?e:e.superRefine((o,i)=>{let a=m(o)?o:{};for(let s of r)for(let l of Yl(a,s,n))i.addIssue({code:"custom",path:l.path,message:l.message})})}function Hl(e){let t=e.validation;return t!==void 0&&(t.requiredWhen!==void 0||t.pattern!==void 0||t.rules!==void 0)}function Yl(e,t,n){let r=[],o=Qt(e,t.name),i=t.validation?.requiredWhen;if(i){let l=(Array.isArray(i)?i:[i]).find(u=>ft(e,u));l&&!Zn(o)&&r.push({path:[t.name],message:ae(l.message??t.validation?.required,n)})}let a=t.validation?.pattern;a&&!hi(a,o)&&r.push({path:[t.name],message:ae(a.message,n)});for(let s of t.validation?.rules??[])ql(e,s.when)&&!Kl(s,o)&&r.push({path:[t.name],message:ae(s.message,n)});return r}function ft(e,t){let n=ze[t.operator??"eq"];return n?n(Qt(e,t.field),t.value):!1}function Qt(e,t){return t in e?e[t]:$(e,t)??void 0}function ql(e,t){if(!t)return!0;if(Array.isArray(t))return t.every(o=>ft(e,o));if("field"in t)return ft(e,t);let n=t.all?t.all.every(o=>ft(e,o)):!0,r=t.any?t.any.some(o=>ft(e,o)):!0;return n&&r}function Kl(e,t){switch(e.assert){case"required":return Zn(t);case"minItems":return Array.isArray(t)&&t.length>=Number(e.value);case"maxItems":return Array.isArray(t)&&t.length<=Number(e.value);case"min":return di(t)>=Number(e.value);case"max":return di(t)<=Number(e.value);case"oneOf":return Array.isArray(e.value)&&e.value.map(String).includes(String(t));case"pattern":return Wl(e.value)?hi(e.value,t):!0;default:return!0}}function hi(e,t){return!Zn(t)||typeof t!="string"||e.allowInterpolation&&(Me(t)||Zl(t))?!0:new RegExp(e.regex,e.flags).test(t)}function Zl(e){return g(e)&&e.trimStart().startsWith("@")}function Zn(e){return g(e)?e.trim().length>0:ze.exists(e,void 0)}function di(e){return typeof e=="number"?e:g(e)||Array.isArray(e)?e.length:0}function Wl(e){return m(e)&&"regex"in e}function Ri(e,t){if(!t||!jl(e))return!0;if(t.length===0)return!1;try{let n=new URL(e),r=n.protocol.replace(":",""),o=n.hostname,i=n.port||Xl(r);return t.some(a=>!(a.protocol&&a.protocol!==r||a.hostname&&a.hostname!==o||a.port!==void 0&&String(a.port)!==i))}catch{return!1}}function Xl(e){return e==="https"?"443":"80"}function jl(e){return/^(https?:)?\/\//.test(e)}function vi(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,Lt);new URL(t,Lt).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(Lt,""):o}catch{return t||e}}function Si(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=vi(t.url,n.url),o=Jl(t,n),i=Ql(t,n);return{...t,...n,url:r,body:o,headers:i}})}function Jl(e,t){return m(t.body)&&m(e?.body)?{...e.body,...t.body}:t.body??e?.body}function Ql(e,t){return m(t.headers)&&m(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function en(e,t){let n={...e};for(let r of Object.keys(t??{})){let o=t?.[r];o!==void 0&&(n[r]=o)}return n}var eu={uppercase:e=>e.toUpperCase(),lowercase:e=>e.toLowerCase(),"remove-space":e=>e.replace(/\s+/g,""),"remove-accent":e=>e.normalize("NFD").replace(/[\u0300-\u036f]/g,"")};function mt(e,t){return!t||!g(e)||Y(e)?e:(Array.isArray(t)?t:[t]).reduce((r,o)=>{let i=eu[o];return i?i(r):r},e)}var Ti=require("react/jsx-runtime");function xe(e){return lo(e,(t,n,r)=>(0,Ti.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}var tn=require("react"),se=require("react/jsx-runtime");function Ai(e){let{fields:t=[]}=e.section,[n,r]=(0,tn.useState)(!1),o=(0,tn.useCallback)(()=>r(i=>!i),[]);return(0,se.jsxs)("fieldset",{"data-slot":"field-set","data-advanced":"true","data-expanded":n,"data-empty":t.length===0,className:"flex flex-col",id:e.section.id?.toString(),children:[(0,se.jsx)("legend",{children:(0,se.jsxs)("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-zinc-600 dark:text-zinc-400",onClick:o,type:"button",children:[(0,se.jsx)(Ye,{expanded:n}),(0,se.jsx)("span",{children:xe(e.title)})]})}),(0,se.jsx)(ot,{visible:n,children:(0,se.jsxs)("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-zinc-300 pl-4 dark:border-zinc-600","data-slot":"field-set-content",children:[e.description&&(0,se.jsx)("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:xe(e.description)}),e.group]})})]})}var Fe=require("react/jsx-runtime");function wi(e){let t=(0,Fe.jsxs)("div",{className:"flex flex-col",children:[e.title&&(0,Fe.jsx)("legend",{className:"mb-3 font-medium text-zinc-800 dark:text-zinc-200",children:xe(e.title)}),e.description&&(0,Fe.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:xe(e.description)})]});return e.step?(0,Fe.jsxs)("div",{className:"flex flex-row items-start gap-4",children:[(0,Fe.jsx)("div",{className:"bg-primary text-primary-foreground flex size-6 shrink-0 items-center justify-center rounded-full",children:(0,Fe.jsx)("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}var gt=require("react/jsx-runtime");function nn(e){return(0,gt.jsxs)("fieldset",{className:"flex w-full min-w-0 flex-col data-[empty=false]:gap-6","data-empty":e.empty,"data-slot":"field-set",id:e.id,children:[(0,gt.jsx)(wi,{description:e.description,step:e.step,title:e.title}),(0,gt.jsx)("div",{className:"w-full min-w-0",children:e.children})]})}var Ci=require("react/jsx-runtime");function Ne(e){return(0,Ci.jsx)("div",{"data-slot":"field-group","data-compact":e.compact,className:"flex w-full flex-col gap-8 data-[compact=true]:gap-3",children:e.children})}var rn=require("react/jsx-runtime");function ki(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=en(e.style,{compact:e.section.advanced?.compact}),o=(0,rn.jsx)(Ne,{compact:r,children:e.children});if(!e.section.title&&!e.section.description)return o;let i=ae(e.section.title,e.translations),a=ae(e.section.description,e.translations);return e.section.advanced?.collapsible?(0,rn.jsx)(Ai,{description:a,group:o,section:e.section,title:i}):(0,rn.jsx)(nn,{description:a,empty:t.length===0,id:e.section.id?.toString(),step:n,title:i,children:o})}var Wn=require("react/jsx-runtime");function Fi(){return(0,Wn.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,Wn.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-zinc-200 dark:bg-zinc-800"})})}var Li=require("jotai");var Ie=require("jotai"),Xn=require("jotai-family"),on=require("fast-equals");function pt(e,t){let{[t]:n,...r}=e;return r}function tu(e){return(0,Xn.atomFamily)(t=>(0,Ie.atom)(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];(0,on.deepEqual)(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,pt(i,t))}))}function nu(e){return(0,Ie.atom)(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function ru(e){return(0,Ie.atom)(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let s of r)s in i&&(delete i[s],a=!0);a&&n(e,i)})}function ou(e){return(0,Ie.atom)(null,(t,n,r)=>{let o=t(e);(0,on.deepEqual)(o,r)||n(e,r)})}function Ni(e,t={}){let{merge:n,validateTarget:r}=t;return(0,Xn.atomFamily)(o=>(0,Ie.atom)(i=>{let a=i(e)[o];if(a&&n)return n(Object.values(a))},(i,a,s,l)=>{if(r&&!r(s))return;let u=i(e),c={...u[s]??{}};if(l!=null){let p=c[o];(!p||!(0,on.deepEqual)(p,l))&&(c[o]=l,a(e,{...u,[s]:c}))}else o in c&&(delete c[o],Object.keys(c).length===0?a(e,pt(u,s)):a(e,{...u,[s]:c}))}))}function Ii(e){return(0,Ie.atom)(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let s of r)s in i&&(delete i[s],a=!0);for(let s in i){let l={...i[s]},u=!1;for(let c of r)c in l&&(delete l[c],u=!0,a=!0);u&&(Object.keys(l).length===0?delete i[s]:i[s]=l)}a&&n(e,i)})}function he(e={}){let t=(0,Ie.atom)(e);return{atom:t,clearAll:nu(t),clear:ru(t),bulkReport:ou(t),report:tu(t)}}var Ei=he(),an=Ei.atom,sn=Ei.report;function iu(e,t){return e.fields.every(n=>Vi(n,t))}function Vi(e,t){return t[e.name]?.hidden??e.hidden??!1}function au(e,t){return ye(e)?iu(e,t):Vi(e,t)}function ln(e){let t=(0,Li.useAtomValue)(an);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>au(r,t))?null:e.children}var Re=require("react/jsx-runtime");function Pi(e){let t=Xt(e.sections,e.definition);return(0,Re.jsx)("div",{className:"h-full w-full",children:(0,Re.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,Re.jsxs)(Ne,{children:[t.map((n,r)=>(0,Re.jsxs)(ln,{fields:n.fields??[],children:[(0,Re.jsx)(ki,{advanced:e.advanced,section:n,step:r+1,style:e.config.style,translations:e.translations,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.advanced?.separator&&(0,Re.jsx)(Fi,{})]},`key-${n.id}-${r}`)),e.control&&(0,Re.jsx)(mr,{isPending:e.isPending,children:e.control})]})})})}var Oi=require("react/jsx-runtime");function Di(e){return(0,Oi.jsx)("p",{className:"-mt-2 text-xs leading-normal font-normal text-zinc-600 dark:text-zinc-400 [[data-slot=column]_&]:md:line-clamp-2",title:e.title,children:e.children})}var Mi=require("react"),Xe=require("react/jsx-runtime");function un(e){let t={context:e.context,env:e.config?.env,value:e.value},r={locale:e.config?.env?.locale},[o,i]=(0,Mi.useState)(()=>m(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),a=()=>i(c=>!c),s=m(e.text)&&g(e.text.title)?xe(F(lt(e.text.title,t,r),e.translations)):void 0,l=F(lt(g(e.text)?e.text:e.text?.message,t,r),e.translations),u=xe(l);return u?(0,Xe.jsxs)("div",{className:"flex flex-col gap-2",children:[s&&(0,Xe.jsxs)("button",{className:"flex items-center gap-1 text-left text-xs font-medium text-zinc-700 hover:text-zinc-900 dark:text-zinc-300 dark:hover:text-zinc-100",onClick:a,type:"button",children:[s,(0,Xe.jsx)(Ye,{expanded:o})]}),o&&(0,Xe.jsx)(Di,{title:l,children:u})]}):null}var jn=require("jotai");var cn=he(),q=cn.atom,zi=cn.clearAll,_i=cn.clear,Ee=cn.report,Jn=(0,jn.atom)({}),Qn=(0,jn.atom)(null);var er=require("jotai"),Bi=require("react/jsx-runtime");function dn(e){let t=(0,er.useAtomValue)(Ee(e.field.name)),r=(0,er.useAtomValue)(sn(e.field.name))?.description??e.field.description;return(0,Bi.jsx)(un,{config:e.config,context:e.context,text:r,translations:e.translations,value:t})}var $i=require("tailwind-merge"),yt=require("react/jsx-runtime");function Gi(e){let t=e.style?.showOptionalLabel??!0,n=pe(e.field)||K(e.field);return(0,yt.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,$i.twMerge)("flex w-fit items-center text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal [[data-slot=column]_&]:md:w-full","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,title:g(e.children)?e.children:void 0,children:[(0,yt.jsx)("span",{className:"[[data-slot=column]_&]:md:truncate",children:e.children}),t&&!e.field.required&&(0,yt.jsx)("span",{className:"ml-2 flex-shrink-0 text-sm text-zinc-600 dark:text-zinc-400",children:Q("(Optional)",e.translations)})]})}var bt=require("react/jsx-runtime");function Ui(e){let t={context:e.context,env:e.config?.env},n=e.config?.env?.locale,r=lt(e.field.label,t,{locale:n});return(0,bt.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,bt.jsx)(Gi,{field:e.field,style:e.config?.style,translations:e.translations,children:F(r,e.translations)}),e.horizontal===!0&&(0,bt.jsx)(dn,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}var Be=require("react/jsx-runtime");function Hi(e){return(0,Be.jsxs)(Be.Fragment,{children:[e.field.name&&e.field.label&&(0,Be.jsx)(Ui,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&(0,Be.jsx)(dn,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}function fn(e,t){return e?t(e):null}var xt={found:!1,value:void 0};function ht(e,t){if(!Array.isArray(t)&&e in t)return{found:!0,value:t[e]};if(!e.includes("."))return xt;let n=e.split("."),r=t;for(let o of n){if(r==null)return xt;if(Array.isArray(r)){let i=Number(o);if(!Number.isInteger(i)||!(i in r))return xt;r=r[i]}else if(m(r)){if(!(o in r))return xt;r=r[o]}else return xt}return{found:!0,value:r}}function W(e,t){return ht(e,t).value}var Je=require("react");var Yi=require("react"),su=e=>e,Le=(0,Yi.createContext)(su);var tr=he(),qi=tr.clear,Ki=tr.bulkReport,mn=tr.report;var Zi=he(),gn=Zi.atom,Wi=Zi.report,Xi=he(),Rt=Xi.atom,ji=Xi.report;var Z=require("react");var ve=require("react");function Ji(e,t,n,r){let{name:o}=e,i=(0,ve.useMemo)(()=>gi(e,r),[e,r]),s=(0,ve.use)(qe)||e.keepValue===!0,l=(0,ve.useEffectEvent)(c=>{c&&t(c,i,e)}),u=(0,ve.useEffectEvent)(c=>{c&&n(c,{keepValue:s})});return(0,ve.useEffect)(()=>(l(o),()=>{u(o)}),[o]),i}var Se=require("jotai");var je=require("react");function Qi(){let e=(0,je.useRef)(null);return(0,je.useEffect)(()=>()=>{e.current&&clearTimeout(e.current)},[]),(0,je.useCallback)((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}function lu(e){return document.activeElement?.getAttribute("name")===e}function ea(e,t){let n=(0,Se.useStore)(),r=e.field.advanced?.entity,o=Qi(),[,i]=(0,Z.useTransition)(),a=(0,Z.use)(Le),{setValue:s,shouldSkipOnChange:l,value:u,setSource:c}=t,p=(0,Z.useRef)(u);p.current=u;let f=(0,Z.useRef)(e.translations);f.current=e.translations;let v=Gt(e.field),b=(0,Se.useSetAtom)(q),w=(0,Se.useSetAtom)(an),N=(0,Se.useSetAtom)(mn(e.field.name)),P=(0,Se.useSetAtom)(Jn),D=(0,Se.useSetAtom)(Qn),te=(0,Se.useSetAtom)(gn),I=Ji(e.field,e.onMount,e.onUnmount,e.translations),E=F(e.commonProps.placeholder,e.translations),V={...e.commonProps,placeholder:E};function ue(d){let[,y]=e.getSchema();return y.find(C=>C.name===d)}function ce(d){return ue(d)??n.get(Rt)[d]}function de(d){return ce(d)?.hidden===!0}function Ge(d){return ce(d)?.keepValue===!0}function nt(d){let y=ue(d);if(y&&Ce(y)){let C=y.advanced?.transform;if(C)return C}}function Ue(d,y){if(b(C=>({...C,[d]:y})),P(C=>({...C,[d]:y})),e.onValueChange){let C=ue(d);C&&e.onValueChange({name:a(d),type:C.type,value:y})}}function rt(d){let y=n.get(q),C=Object.keys(y).filter(U=>d.some(_=>U===_||U.startsWith(`${_}.`)));if(C.length!==0&&(b(U=>C.reduce((_,B)=>pt(_,B),U)),!!e.onValueChange))for(let U of C){let _=ue(U);_&&e.onValueChange({name:a(U),type:_.type,value:void 0})}}let x=(0,Z.useRef)(null);x.current=d=>{if(e.field.advanced?.transient)return;let y=Ce(e.field)?mt(d,e.field.advanced?.transform):d;s(y),e.onValueChange&&e.onValueChange({name:a(e.field.name),type:e.field.type,value:y})};let h=(0,Z.useRef)(null);h.current=d=>{let y=e.field.event?.change;y&&uo(y,({sources:C,states:U,values:_})=>{i(()=>{co(d,C,(B,H)=>{c(Jt(B,e.field.name),H)}),go(d,U,(B,H)=>{let He=B.map(fe=>Jt(fe,e.field.name));w(fe=>H?He.reduce((De,Ct)=>({...De,[Ct]:H}),fe):He.reduce((De,Ct)=>pt(De,Ct),fe));let X=(H?.hidden===!0?He:H===void 0?He.filter(de):[]).filter(fe=>!Ge(fe));X.length>0&&rt(X)})}),po(d,_,(B,H,He)=>{let X=Jt(B,e.field.name);if(n.get(Rt)[X]){Vt(H)&&te(Cn=>({...Cn,[X]:H}));return}let fe=nt(X),De=fe?mt(H,fe):H,wn=n.get(q)[X];if(He.onlyIfTargetEmpty&&!Y(wn)){let Cn=n.get(Jn)[X];if(!Object.is(Cn,wn))return}if(De!==wn){if(lu(X)){D({target:X,value:De});return}Ue(X,De)}})})};let T=(0,Z.useCallback)(d=>{let C=I.safeParse(d).error?.issues.map(B=>B.message)??[],U=e.field.validation?.custom,_=U?xi(d,U,B=>n.get(Ee(B)),f.current):[];N([...C,..._])},[e.field.validation?.custom,I,N,n]),O=(0,Z.useRef)(null);O.current=()=>{let d=n.get(Qn);d?.target===e.field.name&&(D(null),Y(n.get(q)[d.target])&&Ue(d.target,d.value))};let M=(0,Z.useCallback)(d=>{if(!v){let y=d.target.value;e.config.validation.blur&&T(y)}O.current?.()},[v,e.config.validation.blur,T]);return{applyChangeEventsRef:h,commonProps:V,entity:r,hasClickable:v,onBlur:M,onValueChangeRef:x,setTimeoutRef:o,shouldSkipOnChange:l,validated:T,valueRef:p}}var ta=require("fast-equals");var na=require("jotai"),ee=require("react");function ra(e,t){let{name:n}=e,r=(0,ee.useRef)(!1),[o,i]=(0,na.useAtom)(Ee(n)),a=(0,ee.use)(Le),s=(0,ee.useEffectEvent)((c,p=!1)=>{let f=Ce(e)?mt(c,e.advanced?.transform):c;!p&&!(0,ta.deepEqual)(o,f)&&(r.current=!0),i(f)}),l=(0,ee.useEffectEvent)(c=>{let{found:p,value:f}=ht(a(n),c);if(k(f)){s(f);return}if(k(e.defaultValue)){s(e.defaultValue,!0);return}p&&s(f)});(0,ee.useEffect)(()=>{if(t){l(t);return}k(e.defaultValue)&&s(e.defaultValue,!0)},[t,e.defaultValue]);let u=(0,ee.useCallback)(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:u,value:o}}var nr=require("react/jsx-runtime");function oa(e){let{useSource:t,useExtraProps:n,getValue:r,shouldSkipChange:o,dispatchChange:i,buildInitialSelected:a,isInitialReady:s}=e.strategies,{setValue:l,shouldSkipOnChange:u,value:c}=ra(e.field,e.value),{data:p,setSource:f,isStaticSource:v}=t(e.field,e.config,c),{applyChangeEventsRef:b,commonProps:w,entity:N,hasClickable:P,onBlur:D,onValueChangeRef:te,setTimeoutRef:I,validated:E,valueRef:V}=ea(e,{setValue:l,shouldSkipOnChange:u,value:c,setSource:f}),{getSchema:ue}=e,ce=n?.(e.field),de=(0,Je.useRef)(!1),{commonPropsWithOptions:Ge,defaultValue:nt}=Ho(e.field,w,p,c,v?e.translations:void 0),Ue=Yo(e.field,nt);(0,Je.useEffect)(()=>{let x=!!e.value||k(e.field.defaultValue);if(de.current||!x)return;if(!e.field.event?.change){de.current=!0;return}let h=e.value?W(e.field.name,e.value):void 0,T=k(h)?h:e.field.defaultValue;if(!k(T)||!s(e.field,T,p))return;de.current=!0;let O=a(T,p,N);queueMicrotask(()=>{let[,M]=ue();M.some(d=>d.name===e.field.name)&&b.current?.(O)})},[b,a,p,N,ue,s,e.field,e.value]);let rt=(0,Je.useCallback)(x=>{let h=r(x,e.field);o({field:e.field,shouldSkipOnChange:u,hasClickable:P,inputValue:h,valueRef:V})||(te.current?.(h),e.config.validation.change&&E(h),e.field.event?.change&&i({applyChangeEventsRef:b,data:p,entity:N,inputValue:h,setTimeoutRef:I}))},[b,p,i,N,r,P,te,e.config.validation.change,e.field,I,o,u,E,V]);return fn(e.config.inputs[e.field.type],x=>(0,nr.jsx)(Hi,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:(0,nr.jsx)(x,{...Ge,...e.ariaAttributes,...e.dataAttributes,...ce,...Ue,onBlur:D,onChange:rt})}))}var ia=require("react/jsx-runtime");function Qe(e){return function(n){return(0,ia.jsx)(oa,{...n,strategies:e})}}function aa(e){let t=J(e)?be(e):null,n=ge(e)?_e(e):null;return{dateFormat:t,timeFormat:n}}var sa=require("jotai");var uu=e=>{let t=Si(e);if(t)return t},cu=e=>e.trim()!=="",la=(0,sa.atom)({}),pn=Ni(la,{merge:uu,validateTarget:cu}),ua=Ii(la);var ca=require("jotai");function yn(e){return{data:null,setSource:(0,ca.useSetAtom)(pn(e.name))}}var da=Qe({useSource:yn,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=aa(e);return qo(t,n)},getValue:(e,t)=>{let n=e.target.value;if(!g(n))return n;let r=ge(t)?_e(t):null;if(r!==null)return Lo(n,r);let o=J(t)?be(t):null;return o!==null&&Kt(n,o)||n},shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>k(t)});var ya=require("fast-equals");var ga=require("jotai");var fa=Cs(require("swr"),1);function ma(e=null,t,n=!1){let{data:r,error:o}=(0,fa.default)(du(e,t,n),t.fetcher.provider);if(o&&ut.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return no(r,e.namespace)}return null}function du(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!Me(e.url)){if(Ri(e.url,t.fetcher.remotePatterns))return e;ut.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function pa(e,t,n){let r=Uo(e,n),[o,i]=(0,ga.useAtom)(pn(e.name)),a=o??r,s=ma(a,t,e.disabled),l=Array.isArray(a);return[s,i,l]}function fu(e,t,n){let[r,o,i]=pa(e,t,n);return{data:r,setSource:o,isStaticSource:i}}function mu(e,t){return oe(e)&&t===""}var ba=Qe({useSource:fu,getValue:e=>e.target.value,shouldSkipChange:({field:e,shouldSkipOnChange:t,hasClickable:n,inputValue:r,valueRef:o})=>mu(e,r)||!n&&t()&&(!r||(0,ya.deepEqual)(r,o.current)),dispatchChange:({applyChangeEventsRef:e,data:t,entity:n,inputValue:r})=>{e.current?.(Pn(r,t,n))},buildInitialSelected:(e,t,n)=>Pn(st(e)?e:String(e),t,n),isInitialReady:(e,t,n)=>(!We(e)||!!n&&n.length>0)&&k(t)});var xa=Qe({useSource:yn,getValue:e=>e.target.value,shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>k(t)});var bn=require("react/jsx-runtime");function ha(e){return J(e.field)||ge(e.field)?(0,bn.jsx)(da,{...e}):Ro(e.field)?(0,bn.jsx)(xa,{...e}):(0,bn.jsx)(ba,{...e})}var rr=require("react/jsx-runtime");function Ra(e){return!e.errors||e.errors.length===0?null:(0,rr.jsx)("ul",{className:"text-sm text-red-600 dark:text-red-500",id:e.name?`${e.name}-error`:void 0,children:e.errors?.map((t,n)=>(0,rr.jsx)("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var va=require("tailwind-merge"),Sa=require("react/jsx-runtime");function xn(e){let t=e.errors&&e.errors.length>0;return(0,Sa.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Br]:"true"},...e.disabled&&{[$r]:"true"},"data-orientation":e.orientation,className:(0,va.twMerge)("group flex w-full flex-col items-center data-[invalid=true]:text-red-600 data-[invalid=true]:dark:text-red-500","data-[clickable=true]:items-start",e.isCheckbox&&(e.isReversed?"flex-row-reverse!":"flex-row!"),"data-[clickable=true]:has-[>[data-slot=field-content]]:[&>:first-child]:mt-px",e.className),children:e.children})}var Ta=require("tailwind-merge"),wa=require("react/jsx-runtime");function Aa(e){return(0,wa.jsx)(xn,{...e,orientation:"vertical",className:(0,Ta.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var Ca=require("tailwind-merge"),Fa=require("react/jsx-runtime");function ka(e){return(0,Fa.jsx)(xn,{...e,orientation:"horizontal",className:(0,Ca.twMerge)("gap-2 md:flex-row md:gap-4","[&>[data-slot=field-content]]:min-w-0 [&>[data-slot=field-content]]:flex-grow [&>[data-slot=field-content]]:self-start","[&_[role=checkbox]]:mt-[1.5px]",e.isClickable&&"md:flex-col",!e.isClickable&&["md:justify-between","[&>*:not([data-slot=field-content])]:w-full","[&>*:not([data-slot=field-content])]:md:w-1/2","[&>*:not([data-slot=field-content])]:xl:w-2/5"]),children:e.children})}var or=require("react/jsx-runtime");function Na(e){let t=Gt(e.field),n=K(e.field),r=To(e.field);return e.horizontal?(0,or.jsx)(ka,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):(0,or.jsx)(Aa,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function Ia(e){if(!e.field.type)return null;let t=zo(e.field,e.disabled,{lang:e.lang,translations:e.translations}),n=Qo(e.field),r=Jo(e.field,e.errors),o={...e.field,disabled:t.disabled};return e.children({ariaAttributes:r,commonProps:t,dataAttributes:n,field:o,horizontal:e.horizontal})}var Ea=require("tailwind-merge"),et=require("react/jsx-runtime");function La(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r=!1}=en(e.style,{horizontal:So(e.field)}),o=Ao(e.field,e.disabled);return(0,et.jsxs)("div",{className:(0,Ea.twMerge)("flex flex-col gap-3",ri(t)),children:[(0,et.jsx)(Na,{disabled:o,errors:n,field:e.field,horizontal:r,children:(0,et.jsx)(Ia,{disabled:o,errors:n,field:e.field,horizontal:r,lang:e.lang,translations:e.translations,children:e.children})}),(0,et.jsx)(Ra,{errors:n,name:e.field.name})]})}var Va=require("jotai"),Ma=require("react/jsx-runtime");function Pa(e){return(t,n)=>o=>{let i=(0,Va.useAtomValue)(e(o.field.name)),a=n(i,o);return a===null?null:(0,Ma.jsx)(t,{...o,...a})}}var gu=Pa(mn);function Da(e){return gu(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var pu=Pa(sn);function Oa(e){return pu(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var za=Oa(Da(La));var hn=require("tailwind-merge"),_a=require("react"),S=require("react/jsx-runtime");function Ba(e){let t=e.isMultiField||e.collapsed!=null,[n,r]=(0,_a.useState)(t?!e.collapsed:!0);function o(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function i(){r(c=>!c)}let a=c=>me(Q(c,e.translations),{index:e.index+1,label:e.label}),s=e.canRemove&&e.onRemove!=null&&(0,S.jsx)("button",{"aria-label":a("Remove {label} item {index}"),className:(0,hn.twMerge)("flex size-6 items-center justify-center rounded text-xl leading-none text-zinc-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:outline-none","dark:text-zinc-500 dark:hover:text-red-400"),onClick:o,type:"button",children:(0,S.jsx)("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),l=(0,S.jsxs)("div",{className:"flex min-w-0 flex-col font-medium text-zinc-700 dark:text-zinc-400",children:[(0,S.jsx)("span",{className:"text-base",children:e.previewLabel??(0,S.jsxs)(S.Fragment,{children:[e.label," ",e.index+1]})}),!n&&e.previewTags&&(0,S.jsx)("div",{className:"flex items-center gap-2 overflow-hidden text-xs font-normal text-ellipsis whitespace-nowrap text-zinc-500 dark:text-zinc-500",children:e.previewTags})]}),u=(0,S.jsxs)("div",{className:(0,hn.twMerge)("flex items-center justify-between gap-2",e.isMultiField&&n&&"mb-3"),children:[t?(0,S.jsxs)("div",{className:"flex min-w-0 grow items-center gap-2",children:[(0,S.jsxs)("button",{"aria-expanded":n,"aria-label":a(n?"Collapse {label} {index}":"Expand {label} {index}"),className:(0,hn.twMerge)("group flex grow items-center gap-2 rounded p-1 text-left text-zinc-400","focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:outline-none","dark:text-zinc-500"),onClick:i,type:"button",children:[(0,S.jsx)(Ye,{expanded:n}),l]}),!n&&e.previewBadge&&(0,S.jsx)("div",{className:"ml-auto shrink-0",children:e.previewBadge})]}):l,s]});return e.isMultiField?(0,S.jsxs)("div",{"data-slot":"list-item-card",className:"box-border w-full min-w-0 rounded-lg border border-zinc-100 p-4 dark:border-zinc-900",children:[u,(0,S.jsx)(ot,{visible:n,children:(0,S.jsx)(Ne,{children:e.children})})]}):t?(0,S.jsxs)("div",{className:"box-border flex w-full min-w-0 flex-col gap-2",children:[u,(0,S.jsx)(ot,{visible:n,children:(0,S.jsx)(Ne,{children:e.children})})]}):(0,S.jsxs)("div",{className:"box-border flex w-full min-w-0 items-start gap-2",children:[(0,S.jsx)("div",{className:"flex min-w-0 grow flex-col",children:(0,S.jsx)(Ne,{children:e.children})}),s&&(0,S.jsx)("div",{className:"shrink-0",children:s})]})}var Ga=require("react");var ir=require("tailwind-merge");var $a=require("jotai");function Rn(e,t){return(0,$a.useAtomValue)(Ee(e))??t}var Te=require("react/jsx-runtime");function Ua({className:e,initialValue:t,name:n,options:r,separator:o,staticLabel:i}){let a=Rn(n??"",t);if(i===void 0&&r){let u=(Array.isArray(a)?a:a==null||a===""?[]:[a]).filter(c=>c!=null&&c!=="").map(c=>Zo(c,r));return u.length===0?null:(0,Te.jsx)("div",{className:"flex items-center gap-1.5 overflow-hidden",children:u.map((c,p)=>(0,Te.jsxs)(Ga.Fragment,{children:[(o||p>0)&&(0,Te.jsx)("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),(0,Te.jsx)("span",{"aria-label":c,className:(0,ir.twMerge)("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:c,children:c})]},`${p}:${c}`))})}if(i===void 0&&(Y(a)||m(a)||Array.isArray(a)))return null;let s=i??String(a);return(0,Te.jsxs)("div",{className:"flex items-center gap-1.5 overflow-hidden",children:[o&&(0,Te.jsx)("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),(0,Te.jsx)("span",{"aria-label":s,className:(0,ir.twMerge)("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:s,children:s})]})}var Ha=require("jotai"),Ya=require("react");function vn(e,t){let n=(0,Ha.useAtomValue)(q);return(0,Ya.useMemo)(()=>{let r=`${e}.`,o={},i=!1;for(let s in n)s.startsWith(r)&&(o[s.slice(r.length)]=n[s],i=!0);let a=t?W(e,t):void 0;return i?m(a)?{...a,...o}:o:a},[n,e,t])}var Sn=require("react"),ar=require("react/jsx-runtime");function yu(e){return typeof e=="string"?{field:e}:e}function sr({className:e,fields:t,label:n="Preview",lang:r,name:o,previews:i,translations:a,value:s}){let l=(0,Sn.useMemo)(()=>(Array.isArray(i)?i:[i]).map(yu),[i]),u=(0,Sn.useMemo)(()=>t?si(t):void 0,[t]),c=vn(o,s),p=(0,Sn.useMemo)(()=>{let f=[];for(let[v,b]of l.entries()){if(b.when!==void 0&&!Ze(c,b.when))continue;if(b.label!==void 0){f.push({key:b.field??`label:${b.label}:${v}`,staticLabel:F(b.label,a)});continue}if(b.field===void 0)continue;let w=`${o}.${b.field}`,N=s!=null?W(w,s):void 0,P=u?.[b.field],D=P?Ko(P,{lang:r,translations:a}):void 0;f.push({key:`${v}:${b.field}`,initialValue:N,options:D,previewName:w})}return f},[l,c,r,o,s,a,u]);return p.length===0?null:(0,ar.jsx)("div",{"aria-label":n,className:"flex items-center gap-1.5 overflow-hidden",children:p.map((f,v)=>(0,ar.jsx)(Ua,{className:e,initialValue:"initialValue"in f?f.initialValue:void 0,name:"previewName"in f?f.previewName:void 0,options:"options"in f?f.options:void 0,separator:v>0,staticLabel:"staticLabel"in f?f.staticLabel:void 0},f.key))})}var Tn=require("react/jsx-runtime");function qa({children:e,initialValue:t,name:n}){let r=Rn(n,t),i=Y(r)||m(r)||Array.isArray(r)?"":String(r);return(0,Tn.jsx)(Tn.Fragment,{children:e(i)})}var vt=require("react/jsx-runtime");function Ka({canRemove:e,children:t,field:n,index:r,isMultiField:o,itemKey:i,label:a,lang:s,onRemove:l,previewBadge:u,previewLabel:c,previewTags:p,translations:f,value:v}){let b=`${n.name}.${i}`,w=`${a} ${r+1}`,N=vn(b,v);return(0,vt.jsx)(Ba,{canRemove:e,collapsed:n.advanced?.collapsed,index:r,isMultiField:o,label:a,onRemove:l,previewLabel:bu({fallbackLabel:w,liveItemValue:N,name:b,previewLabel:c,translations:f,value:v}),previewBadge:u?(0,vt.jsx)(sr,{className:"bg-primary text-primary-foreground rounded-md px-1.5 py-0.5 leading-none font-bold uppercase",fields:n.fields,lang:s,name:b,previews:u,translations:f,value:v}):void 0,previewTags:p?(0,vt.jsx)(sr,{fields:n.fields,lang:s,name:b,previews:p,translations:f,value:v}):void 0,translations:f,children:t})}function bu({fallbackLabel:e,liveItemValue:t,name:n,previewLabel:r,translations:o,value:i}){if(r===void 0)return;let a=g(r)?{field:r}:r;if(a.when!==void 0&&!Ze(t,a.when))return;if(a.label!==void 0)return F(a.label,o);if(a.field===void 0)return;let s=`${n}.${a.field}`;return(0,vt.jsx)(qa,{initialValue:i?W(s,i):void 0,name:s,children:l=>l||e})}var Xa=require("tailwind-merge");var Za=require("fast-equals");var Ve=require("jotai"),R=require("react");function tt(e,t,n){return`${e}.${t}.${n}`}function xu(e,t){let{initial:n,mounted:r,values:o}=t,i=r[e];if(i)return lr(e,i,t);let a=o[e];if(a!==void 0)return a;if(n)return W(e,n)}function lr(e,{items:t,leafNames:n},r){return t.map(o=>{let i={};for(let a of n)i[a]=xu(tt(e,o,a),r);return i})}function Wa(e,t,n){let{min:r,max:o}=Yn(e),[i,a]=(0,R.useState)(()=>ii(e,t)),s=(0,R.useRef)(i),l=(0,R.useRef)(i.length);s.current=i;let u=(0,Ve.useStore)(),c=(0,Ve.useSetAtom)(q),p=(0,Ve.useSetAtom)(gn),f=(0,R.useRef)(n);f.current=n;let v=(0,R.useRef)(t),b=(0,R.useMemo)(()=>jt(e.fields),[e.fields]),w=(0,R.useMemo)(()=>b.map(x=>x.name),[b]),N=(0,R.useCallback)((x,h)=>{let T=Number(x);return Number.isNaN(T)?!1:Number.isInteger(T)&&h>=0&&String(h)!==x},[]),P=(0,R.use)(Le),D=(0,R.useCallback)(x=>{let h=`${e.name}.`;if(x.startsWith(h)){let T=x.slice(h.length),O=T.indexOf("."),M=O===-1?T:T.slice(0,O),d=Number(M),y=s.current.indexOf(d);N(M,y)&&(x=`${h}${y}${O===-1?"":T.slice(O)}`)}return P(x)},[e.name,N,P]),te=(0,R.useEffectEvent)(()=>{let x=v.current;if(!x)return;let h={...u.get(q)},T=!1;for(let O of i)for(let M of w){let d=tt(e.name,O,M);if(d in h)continue;let y=W(d,x);k(y)&&(h[d]=y,T=!0)}T&&c(h)});(0,R.useEffect)(()=>{te()},[]);let I=(0,R.useCallback)((x,h)=>lr(e.name,{items:x,leafNames:w},{mounted:u.get(Rt),values:h,initial:v.current}),[e.name,w,u]),E=(0,R.useCallback)((x,h)=>{f.current?.({name:D(e.name),value:I(x,h)})},[I,e.name,D]),V=(0,R.useCallback)(()=>{if(s.current.length>=o)return;let x=l.current++,h=[...s.current,x];a(h),E(h,u.get(q))},[E,o,u]),ue=(0,R.useCallback)(x=>{if(s.current.length<=r)return;let h=s.current[x],T=s.current.filter((d,y)=>y!==x),M={...u.get(q)};for(let d of w)delete M[tt(e.name,h,d)];a(T),c(M),E(T,M)},[E,e.name,w,r,c,u]),ce=(0,Ve.useSetAtom)(ji(e.name));(0,R.useEffect)(()=>{ce({items:i,leafNames:w,hidden:e.hidden===!0,keepValue:e.keepValue===!0})},[e.hidden,e.keepValue,i,w,ce]),(0,R.useEffect)(()=>()=>{let x=u.get(q);c({...x,[e.name]:I(s.current,x)}),ce(void 0)},[I,e.name,ce,c,u]);let[de,Ge]=(0,Ve.useAtom)(Wi(e.name)),nt=(0,R.useEffectEvent)(x=>{let h=qn(e,x),T=u.get(q);if((0,Za.deepEqual)(I(s.current,T),h))return;let O=[];for(let y=0;y<h.length;y++)O.push(s.current[y]??l.current++);let M={...T};for(let y of s.current)for(let C of w)delete M[tt(e.name,y,C)];let d={};O.forEach((y,C)=>{let U=h[C];for(let _ of b){let B=U[_.name];if(B===void 0)continue;let H=tt(e.name,y,_.name);M[H]=B,ie(_)&&(d[H]=B)}}),c(M),a(O),Object.keys(d).length>0&&p(y=>({...y,...d})),f.current?.({name:D(e.name),value:h})});(0,R.useEffect)(()=>{de&&(nt(de),Ge(void 0))},[de,Ge]);let Ue=i.length<o,rt=i.length>r;return[i,V,ue,Ue,rt,o,D]}var Ae=require("react/jsx-runtime"),hu="flex h-9 w-full items-center gap-2 rounded-md border border-dashed border-zinc-200 px-4 text-sm font-medium text-zinc-500 transition-none hover:border-zinc-300 hover:text-zinc-800 focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:ring-offset-2 focus-visible:outline-none dark:border-zinc-800 dark:text-zinc-400 dark:hover:border-zinc-700 dark:hover:text-zinc-200";function ja(e){let{field:t,lang:n,onValueChange:r,translations:o,value:i,children:a}=e,[s,l,u,c,p,f,v]=Wa(t,i,r),b=F(ai(t),o),w=t.advanced?.action?F(t.advanced.action,o):Q("Add item",o),N=f!==1/0,P=oi(t),{label:D,tags:te,badge:I}=t.advanced?.preview??{};return(0,Ae.jsx)(Le.Provider,{value:v,children:(0,Ae.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[s.map((E,V)=>(0,Ae.jsx)(Ka,{canRemove:p,field:t,index:V,isMultiField:P,itemKey:E,label:b,lang:n,onRemove:u,previewBadge:I,previewLabel:D,previewTags:te,translations:o,value:i,children:a(E)},E)),(0,Ae.jsxs)("button",{"aria-disabled":!c,"aria-label":N?`${w}, ${s.length} of ${f}`:w,className:(0,Xa.twMerge)(hu,N?"justify-between":"justify-center",!c&&"cursor-not-allowed opacity-50 hover:border-zinc-200 hover:text-zinc-500 dark:hover:border-zinc-800 dark:hover:text-zinc-400"),disabled:!c,onClick:l,type:"button",children:[(0,Ae.jsxs)("span",{className:"flex items-center gap-2",children:[(0,Ae.jsx)("span",{"aria-hidden":"true",className:"text-base leading-none",children:"+"}),w]}),N&&(0,Ae.jsxs)("span",{"aria-hidden":"true",className:"text-zinc-400 tabular-nums dark:text-zinc-500",children:[s.length," / ",f]})]})]})})}var Qa=require("react/jsx-runtime");function Ja(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0,n=ae(e.field.label,e.translations),r=ae(e.field.description,e.translations);return(0,Qa.jsx)(nn,{description:r,empty:t,id:e.field.name,title:n,children:e.children})}var St=require("react/jsx-runtime");function es({children:e,field:t,lang:n,onValueChange:r,translations:o,value:i}){let a=(0,St.jsx)(Ja,{field:t,translations:o,children:(0,St.jsx)(ja,{field:t,lang:n,onValueChange:r,translations:o,value:i,children:e})});return(0,St.jsx)(ln,{container:t,fields:t.fields,children:t.keepValue?(0,St.jsx)(qe,{value:!0,children:a}):a})}var ts=require("tailwind-merge");var Tt=require("react/jsx-runtime");function ns(e){let t=ni(e.column?.advanced?.cols);return(0,Tt.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[(0,Tt.jsx)("div",{"data-slot":"column",className:(0,ts.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&(0,Tt.jsx)(un,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}var is=require("react");var os=require("react/jsx-runtime");function rs(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>Ut(n)||ie(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:ye(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return(0,os.jsx)(At,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:t,lang:e.lang,onValueChange:e.onValueChange,style:e.style,translations:e.translations,value:e.value,children:e.children})}var Pe=require("react/jsx-runtime");function At(e){let{field:t,list:n}=e.components;return Xt(e.fields).map((r,o)=>(0,Pe.jsxs)(is.Fragment,{children:[ye(r)&&(0,Pe.jsx)(ns,{column:r,config:e.config,context:e.context,translations:e.translations,children:(0,Pe.jsx)(At,{...e,fields:r.fields})}),Ut(r)&&(0,Pe.jsx)(t,{disabled:e.disabled,field:r,lang:e.lang,style:e.style,translations:e.translations,children:e.children}),ie(r)&&(0,Pe.jsx)(n,{field:r,lang:e.lang,onValueChange:e.onValueChange,translations:e.translations,value:e.value,children:i=>(0,Pe.jsx)(rs,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:r,index:i,lang:e.lang,onValueChange:e.onValueChange,style:e.style,translations:e.translations,value:e.value,children:e.children})})]},o))}var ss=require("react/jsx-runtime");function as(e){return n=>(0,ss.jsx)(At,{...n,components:e})}var ls=as({field:za,list:es});var cr=require("jotai");var wt=require("react");function cs(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},s=(0,cr.useSetAtom)(Ki),l=(0,cr.useSetAtom)(zi),u={data:null,error:null,success:!1},[c,p,f]=(0,wt.useActionState)(async(v,b)=>{let[w,N]=e(),P=fi(w,N,a);if(i===!1)return t?await t(b,P):v;let D=oo(b),te=vu(D,N),I=P.safeParse(te);if(!I.success){let V=mi(I.error);return(0,wt.startTransition)(()=>{s(V)}),ur(D,{description:Q("Please correct the errors and try again.",a),details:[],title:Q("There were validation errors submitting the form.",a)})}let E=io(I.data);if(t)try{let V=await t(E,P);return V.success?(r?.(V.data),o||(0,wt.startTransition)(()=>{l()}),us(E,o)):ur(E,V.error)}catch(V){return ut.error("Error executing form action:",V),ur(E,{title:Q("An unexpected error occurred submitting the form.",a),details:Ru(V,a)})}return us(I.data,o)},u);return[p,c,f]}function Ru(e,t){return e instanceof Error?[e.message]:[Q("Unknown error",t)]}function us(e,t=!1){return{data:t?e:null,error:null,success:!0}}function ur(e,t){return{data:e,error:t,success:!1}}function vu(e,t){let n={...e};for(let r of t)if(J(r)&&typeof n[r.name]=="string"&&n[r.name]){let o=qt(n[r.name],be(r));o&&(n[r.name]=o)}return n}var gs=require("react");var $e=require("react");var ds=require("react"),An=require("jotai");function fs(){let e=(0,An.useSetAtom)(qi),t=(0,An.useSetAtom)(_i),n=(0,An.useSetAtom)(ua);return(0,ds.useCallback)((r,o)=>{let i=Array.isArray(r)?r:[r];e(i),n(i),o?.keepValue||t(i)},[e,n,t])}function ms(){let e=fs(),t=(0,$e.useRef)({}),n=(0,$e.useRef)([]),r=(0,$e.useCallback)((a,s,l)=>{a in t.current||(t.current[a]=s,n.current.push(l))},[]),o=(0,$e.useCallback)((a,s)=>{t.current[a]&&(delete t.current[a],n.current=n.current.filter(l=>l.name!==a),e([a],{keepValue:s?.keepValue}))},[e]);return[(0,$e.useCallback)(()=>[t.current,n.current],[]),r,o]}var le=require("react/jsx-runtime");function ps(e){let t=(0,gs.useMemo)(()=>Po(e.lang,e.translations),[e.lang,e.translations]),[n,r,o]=ms(),[i,a,s]=cs(n,e.action,{onSuccess:e.onSuccess,validation:e.config.validation.submit,translations:t}),l=e.config.validation.showError&&!a.success&&a.error,u=a.data??e.value;return(0,le.jsxs)(le.Fragment,{children:[l&&fn(e.config.alert,c=>(0,le.jsx)("div",{className:"mb-4 w-full",children:(0,le.jsx)(c,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),(0,le.jsx)(Pi,{action:i,advanced:e.advanced,config:e.config,control:e.children,definition:e.definition,isPending:s,noValidate:!0,readOnly:e.readOnly,sections:e.sections,translations:t,children:({disabled:c,fields:p})=>(0,le.jsx)(ls,{config:e.config,context:e.context,disabled:c,fields:p,lang:e.lang,onValueChange:e.onValueChange,style:e.config.style,translations:t,value:u,children:f=>(0,le.jsx)(ha,{...f,config:e.config,context:e.context,getSchema:n,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:u})})})]})}var ys=require("jotai"),dr=require("react/jsx-runtime");function bs(e){return(0,dr.jsx)(ys.Provider,{children:(0,dr.jsx)(ps,{...e})})}function xs(e,t){for(let n of e){if("name"in n&&typeof n.name=="string"){t.push(n.name);continue}"fields"in n&&xs(n.fields??[],t)}}function hs(e,t){let n=[];for(let o of e)xs(o.fields??[],n);let r=t;for(let o of n)ht(o,t).found||(r===t&&(r={...t}),r[o]=void 0);return r}
|
package/dist/client/esm/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as Ma}from"react/jsx-runtime";function Un(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return Ma("div",{"data-slot":"field-control",className:"w-full",children:t})}import{jsx as Hn}from"react/jsx-runtime";function Fe(e){return Hn("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",className:`size-4 transition-transform duration-200 ${e.expanded?"rotate-90":""}`,children:Hn("path",{fillRule:"evenodd",d:"M8.22 5.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.75.75 0 0 1-1.06-1.06L11.94 10 8.22 6.28a.75.75 0 0 1 0-1.06Z",clipRule:"evenodd"})})}import{Activity as _a}from"react";import{createContext as za}from"react";var nt=za(!1);import{jsx as Yn}from"react/jsx-runtime";function De({children:e,visible:t}){return Yn(_a,{mode:t?"visible":"hidden",children:Yn(nt,{value:!0,children:e})})}var rt="input",qn="input/date",Zn="input/email",Kn="input/number",Wn="input/time";var Xn="textarea",jn="radio",Jn="checkbox",rn="list",Qn="select",er="select/active",tr="select/day",nr="select/month",rr="select/timezone",or="select/year";var ir="chips",ar="chips/day",sr="chips/month",Oe="column",lr="description",on="fields",ur="label",Y="value",ot="options",an="email",cr="number",dr="password",fr="tel",Me="text",mr="aria-errormessage",gr="aria-invalid",pr="data-invalid",yr="data-readonly",br="aria",xr="data",it="max",hr="maxLength",at="min",Rr="minLength",ke="$ref",vr="source",Sr="state",st="http://luna.internal",Tr="type",Ar={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};import{format as Ba,formatDistanceToNow as Cr,formatDuration as $a,intervalToDuration as Ga,isValid as ut,parseISO as Ua}from"date-fns";import{enUS as Fr,es as ln}from"date-fns/locale";function m(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function lt(e){return Array.isArray(e)&&e.every(m)}function z(e){return e==null||e===""}function j(e){return g(e)||typeof e=="number"||sn(e)}function ze(e){return Array.isArray(e)&&e.every(j)}function g(e){return typeof e=="string"}function wr(e){return m(e)&&"url"in e}function sn(e){return typeof e=="boolean"}var kr={en:Fr,"en-US":Fr,es:ln,"es-ES":ln,"es-MX":ln},Ha={short:"M/d/yy",medium:"MMM d, yyyy",long:"MMMM d, yyyy",full:"EEEE, MMMM d, yyyy"},Ya={ms:1,s:1e3,min:6e4,h:36e5,d:864e5};function Nr(e){if(e)return kr[e]??kr[e.split("-")[0]]}function ct(e){if(typeof e=="number"&&!Number.isNaN(e))return e;if(g(e)&&e.trim()!==""){let t=Number(e);return Number.isNaN(t)?null:t}return null}function Ir(e,t,n){let r=Ya[t];if(r===void 0)return String(e);let o=e*r,i=Ga({start:0,end:o});return $a(i,{locale:n})}function Er(e){if(e instanceof Date)return ut(e)?e:null;if(g(e)){let t=Ua(e);if(ut(t))return t;let n=new Date(e);return ut(n)?n:null}if(typeof e=="number"){let t=new Date(e);return ut(t)?t:null}return null}var qa={currency:(e,t,n)=>{let r=ct(e);if(r===null)return String(e);let o=t[0]??"USD";return new Intl.NumberFormat(n.locale,{style:"currency",currency:o}).format(r)},percent:(e,t,n)=>{let r=ct(e);return r===null?String(e):new Intl.NumberFormat(n.locale,{style:"percent"}).format(r)},number:(e,t,n)=>{let r=ct(e);return r===null?String(e):new Intl.NumberFormat(n.locale).format(r)},date:(e,t,n)=>{let r=Er(e);if(!r)return String(e);let o=t[0]??"short",i=Nr(n.locale);if(o==="relative")return Cr(r,{addSuffix:!0,locale:i});let a=Ha[o]??o;return Ba(r,a,{locale:i})},duration:(e,t,n)=>{let r=Nr(n.locale);if(typeof e=="number")return Ir(e,t[0]??"ms",r);if(g(e)){let i=ct(e);if(i!==null)return Ir(i,t[0]??"ms",r)}let o=Er(e);return o?Cr(o,{addSuffix:!0,locale:r}):String(e)}};function Lr(e,t,n){let r=t.split(":").map(s=>s.trim()).filter(s=>s.length>0);if(r.length===0)return;let[o,...i]=r,a=qa[o];if(a)return a(e,i,n)}var Za=/^\d+$/;function cn(e,t=[],n=Y){return ze(e)?{value:e}:Array.isArray(t)?t.find(r=>{let o=dn(r,n);if(o!==void 0&&`${o}`==`${e}`)return r})??{value:e}:{value:e}}function dn(e,t=Y){if(e!=null){if(ze(e)||j(e))return e;if(m(e)){let n=Ka(e,t);if(j(n))return n}}}function Ka(e,t){let n=M(e,t);if(j(n))return n}function Pr(e,t){if(Array.isArray(e))return e;let n=M(e,t);return Array.isArray(n)?n:null}function M(e,t){if(!t||!m(e))return null;let n=t.split(".").filter(o=>o!=="");if(n.length===0)return null;let r=e;for(let o of n)if(m(r)&&o in r)r=r[o];else if(Array.isArray(r)){let i=Number(o);if(!Number.isInteger(i)||i<0||i>=r.length)return null;r=r[i]}else return null;return r}function fn(e,t={description:lr,label:ur,value:Y}){return e.map(n=>{if(m(n)){let r=M(n,t.label),o=M(n,t.value);if(j(r)&&j(o)){let i=M(n,t.description);return{label:`${r}`,value:`${o}`,...j(i)&&{description:`${i}`}}}}return n})}function Vr(e=Me){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==rt?n.trim().toLowerCase():Me}function Dr(e){let t={};for(let n of e.keys()){let r=e.getAll(n);t[n]=r.length>1?r:r[0]}return t}function Or(e){let t={};for(let n of Object.keys(e)){let r=n.split(".");if(r.length===1){t[n]=e[n];continue}let o=t;for(let a=0;a<r.length-1;a++){let s=r[a],l=r[a+1],u=Za.test(l);s in o||(o[s]=u?[]:{}),o=o[s]}let i=r[r.length-1];o[i]=e[n]}return un(t),t}function un(e){for(let t of Object.keys(e)){let n=e[t];if(Array.isArray(n)){let r=n.filter(o=>o!==void 0);for(let o of r)m(o)&&un(o);e[t]=r}else m(n)&&un(n)}}var Wa=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g,Xa=/{([^}]{1,200})}/,ja=/{([^}]{1,200})}/g,Ja=/^{([^}|]{1,200})}$/;function re(e,t={},n={}){if(g(e))return es(e,t,n);if(Array.isArray(e))return e.map(r=>re(r,t,n));if(m(e)){let r={};for(let o in e)r[o]=re(e[o],t,n);return r}return e}function Mr(e,t={},n={}){if(g(e)){let r=Qa(e,t);if(r!==void 0)return r}return re(e,t,n)}function _e(e,t={},n={}){return Re(e)?re(e,t,n):e}function Re(e){return g(e)?Xa.test(e):Array.isArray(e)?e.some(t=>Re(t)):m(e)?Object.values(e).some(t=>Re(t)):!1}function zr(e,t){return t.includes(".")?M(e,t):e[t]}function Qa(e,t){let n=Ja.exec(e);if(!n)return;let r=n[1].trim();if(!r)return;let o=zr(t,r);if(m(o)||Array.isArray(o))return o}function es(e,t={},n={}){return e.replace(ja,(r,o)=>{let i=String(o).split("|").map(c=>c.trim()),[a,...s]=i;if(!a)return r;let l=zr(t,a);if(s.length===0)return j(l)?String(l):r;if(l==null)return r;let u=l;for(let c of s){let p=Lr(u,c,{locale:n.locale});if(p===void 0)return r;u=p}return String(u)})}function _r(e,t){if(!g(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Wa.exec(e))!==null;){let[a,s,l]=n,u=n.index;o=!0,u>r&&i.push(e.substring(r,u));let c=t?t(u,l,s):a;i.push(c),r=u+a.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var Be={error:(...e)=>{mn()&&!gn()&&dt().error("[Luna Form]",...e)},warn:(...e)=>{mn()&&!gn()&&dt().warn("[Luna Form]",...e)},info:(...e)=>{mn()&&!gn()&&dt().info("[Luna Form]",...e)}},mn=()=>typeof dt()<"u",gn=()=>!0,dt=()=>globalThis.console;function Br(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===Y&&n.push(i),i.action===vr&&r.push(i),i.action===Sr&&o.push(i);t({sources:r,states:o,values:n})}function $r(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(wr(i)){let a=re(i.url,e),s=i.body?re(i.body,e):i.body;n(o,{...i,url:a,body:s})}}}var ve={eq:is,gt:us,gte:cs,in:ss,lt:ds,lte:fs,neq:as,nin:ls,contains:ms,exists:Ur,empty:gs,truthy:ps},ts=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,Gr=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function ns(e){return typeof e=="string"&&ts.test(e)}function rs(e){return typeof e=="string"&&Gr.test(e)}function os(e){let t=e.match(Gr);if(t){let[,n,r,o,i,a,s]=t;return new Date(Number(o),Number(r)-1,Number(n),Number(i??0),Number(a??0),Number(s??0)).getTime()}return NaN}function de(e){return ns(e)?new Date(e).getTime():rs(e)?os(e):Number(e)}function is(e,t){return e===t}function as(e,t){return e!==t}function ss(e,t){return Array.isArray(t)&&t.includes(String(e))}function ls(e,t){return Array.isArray(t)&&!t.includes(String(e))}function us(e,t){return de(e)>de(t)}function cs(e,t){return de(e)>=de(t)}function ds(e,t){return de(e)<de(t)}function fs(e,t){return de(e)<=de(t)}function ms(e,t){return typeof e=="string"?e.includes(String(t)):Array.isArray(e)?e.map(String).includes(String(t)):!1}function Ur(e){return Array.isArray(e)?e.length>0:e!=null&&e!==""}function gs(e){return!Ur(e)}function ps(e){return Array.isArray(e)?e.length>0:!!e}function Ne(e,t){if(t===void 0)return!0;if(g(t)){let n=ft(e,Y);return Array.isArray(n)?n.length===1&&n[0]===t:n===t}if(sn(t)){let n=ft(e,Y);return(Array.isArray(n)?n.length>0:!!n)===t}if(Array.isArray(t)){let n=ft(e,Y);return Array.isArray(n)?n.some(r=>t.includes(String(r))):t.includes(String(n))}return ys(e,t)}function ys(e=null,t){let n=ft(e,t.field??Y),{operator:r="eq",value:o}=t,i=ve[r];return i?i(n,o):!1}function ft(e,t){return m(e)?M(e,t):e}function Hr(e=null,t=[],n){for(let r of t){let{target:o,state:i,when:a}=r,s=Array.isArray(o)?o:[o];if(!e){n(s);continue}let l=Ne(e,a);n(s,l?i:void 0)}}function Yr(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?Mr(i,e):void 0,{onlyIfTargetEmpty:r.onlyIfTargetEmpty??!1})}var $e=e=>E(er)(e),qr=e=>E(tr)(e),mt=e=>E(nr)(e),gt=e=>E(or)(e),Zr=e=>E(rr)(e),pt=e=>E(ar)(e),yt=e=>E(sr)(e),q=E(qn),oe=E(Wn),$=E(Jn),J=E(ir),ie=E(jn),fe=E(rt),Q=E(Qn),pn=E(Xn),Kr=E(Me,an,dr,fr),Wr=E(Zn,an),bt=E(Kn,cr);function xt(e){return ie(e)||$(e)}function ee(e){return e.type===rn}function ae(e){return e.type===Oe}function ht(e){return e.type!==Oe&&e.type!==rn}function Ie(e){return Q(e)||ie(e)||J(e)}function Xr(e){return fe(e)||pn(e)}function w(e){return e!=null&&e!==""}function E(...e){return t=>{let n=g(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function jr(e,t={}){if(Q(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&m(n))return[n]}}function Jr(e){return ie(e)||$(e)?!0:e.advanced?.horizontal}function Qr(e){return $(e)?e.advanced?.reverse!==!1:!1}function eo(e,t){let n=e.readonly??!1;return t||n}function Rt(e){if(bs(e)){let t=e.source;if(Array.isArray(t)||m(t)&&!(ke in t))return t}}function to(e){return Array.isArray(Rt(e))}function bs(e){return ie(e)||J(e)||Q(e)&&!e.disabled}import{isValid as vt,parse as St,format as Tt}from"date-fns";var xs=/^\d+$/,At=new Date(2e3,0,1),hs=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[],yn="default";function oo(e){if(!e)return yn;try{return Intl.getCanonicalLocales(e)[0]??yn}catch{return yn}}function bn(e){let t=oo(e);return Array.from({length:12},(n,r)=>({value:(r+1).toString(),label:new Date(0,r).toLocaleString(t,{month:"long"})}))}function xn(e){let t=oo(e);return Array.from({length:7},(n,r)=>({value:r.toString(),label:new Date(2e3,0,2+r).toLocaleString(t,{weekday:"long"})}))}function io(e,t){return t>=e?Array.from({length:t-e+1},(n,r)=>{let o=e+r;return{value:o.toString(),label:o.toString()}}):[]}function hn(){return new Date().getFullYear()}function Rs(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function vs(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return Ar[n]??"Other"}function Ss(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function no(e,t){let n=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"longOffset"}).formatToParts(t),r=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"long"}).formatToParts(t),i=(n.find(s=>s.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),a=Ss(r,e);return{offset:i,longName:a}}function ro(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function ao(){let e=new Date,t=Rs(),n=new Map,r=ro(t),{offset:o,longName:i}=no(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let l of hs()){if(l===t)continue;let u=ro(l),{offset:c,longName:p}=no(l,e),f={value:l,label:`${u} - ${p} (${c})`},T=vs(l);if(T==="Other")continue;let y=n.get(T);y?y.push(f):n.set(T,[f])}for(let l of n.values())l.sort((u,c)=>u.label.localeCompare(c.label));let s=Array.from(n.entries()).sort(([l],[u])=>l.localeCompare(u)).map(([l,u])=>({label:l,items:u}));return[{label:"Suggested",items:[a]},...s]}function Rn(e,t){if(typeof e=="number")return e;let n=t??hn(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,a]=o,s=parseInt(a,10);if(!isNaN(s))return i==="+"?n+s:n-s}return n}return xs.test(r)?parseInt(r,10):n}function wt(e,t){if(!e)return"";try{let n=St(e,t,At);return vt(n)?Tt(n,"yyyy-MM-dd"):""}catch{return""}}function so(e,t){if(!e)return"";try{let n=St(e,t,At);return vt(n)?Tt(n,"HH:mm:ss"):""}catch{return""}}function lo(e,t="HH:mm"){if(!e)return"";try{let n=e.split(":").length===3?"HH:mm:ss":"HH:mm",r=St(e,n,At);return vt(r)?Tt(r,t):""}catch{return""}}function Ct(e,t="MMMM d, yyyy"){if(!e)return"";try{let n=St(e,"yyyy-MM-dd",At);return vt(n)?Tt(n,t):""}catch{return""}}function Se(e){return e.advanced?.format??"HH:mm"}function se(e){return e.advanced?.format??"MMMM d, yyyy"}var Ts={es:{"(Optional)":"(Opcional)","Add item":"A\xF1adir elemento","An unexpected error occurred submitting the form.":"Ocurri\xF3 un error inesperado al enviar el formulario.","Collapse {label} {index}":"Contraer {label} {index}","Expand {label} {index}":"Expandir {label} {index}","Please correct the errors and try again.":"Corrige los errores e int\xE9ntalo de nuevo.","Remove {label} item {index}":"Eliminar {label} {index}","There were validation errors submitting the form.":"Se encontraron errores de validaci\xF3n al enviar el formulario.","Unknown error":"Error desconocido",No:"No",Yes:"S\xED"}};function Z(e,t){return C(e,t)}function co(e,t){let n=t?.[e??""],r=e?Ts[As(e)]:void 0;return r?n?{...r,...n}:r:n}function As(e){return e.toLowerCase().split(/[-_]/)[0]}function C(e,t){return e?t?t[e]??e:e:""}function te(e,t){return e?C(e,t):void 0}function Ge(e,t){if(!t)return e;let n=!1,r=e.map(o=>{let i=ws(o,t);return i!==o&&(n=!0),i});return n?r:e}function ws(e,t){if(!m(e))return e;let n=uo(e.label,t),r=e.items;if(Array.isArray(r)){let i=Ge(r,t);return i===r&&n===e.label?e:{...e,...n!==void 0&&{label:n},items:i}}let o=uo(e.description,t);return n===e.label&&o===e.description?e:{...e,...n!==void 0&&{label:n},...o!==void 0&&{description:o}}}function uo(e,t){return g(e)?C(e,t):e}var Ft=hn();function mo(e,t){if(J(e))return Cs(e,t?.lang)}function Cs(e,t){if(pt(e))return xn(t);if(yt(e))return bn(t)}function go(e,t){if(Q(e))return Fs(e,t)}function Fs(e,t){let{lang:n,translations:r}=t??{};if(qr(e))return xn(n);if(mt(e))return bn(n);if(gt(e)){let o=e.advanced?.length?.min??Ft,i=e.advanced?.length?.max??Ft+5;return io(Rn(o,Ft),Rn(i,Ft))}if(Zr(e))return ao();if($e(e))return Ge([{value:"true",label:"Yes"},{value:"false",label:"No"}],r)}function po(e,t=!1,n){let r={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return fe(e)?{...r,...ks(e)}:Q(e)?{...r,...yo(go(e,n))}:pn(e)?{...r,...Is(e)}:J(e)?{...r,...Ns(e,n)}:r}function ks(e){let t=Vr(e.type),n={...e,type:t};return{...Ls(e),...bo(e),...Es(n),...Kr(n)?xo(n):{},type:t}}function yo(e){return e?{options:e}:{}}function Ns(e,t){let n=yo(mo(e,t)),r=e.advanced?.multiple??!0;return{...n,multiple:r}}function Is(e){return{...bo(e),...xo(e)}}function bo(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Es(e){return bt(e)?Ps(e):{}}function Ls(e){if(oe(e)){let t=Se(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function xo(e){return ho(e,{min:Rr,max:hr})}function Ps(e){return ho(e,{min:at,max:it})}function ho(e,t){let n={},r=e.advanced?.length;return r&&(r.min!==void 0&&(n[t.min]=r.min),r.max!==void 0&&(n[t.max]=r.max)),n}function Ro(e,t){let n=Rt(e);return n||jr(e,t)}function Vs(e,t){let n=m(t)&&e.name in t?t[e.name]:t,r=dn(n,e.advanced?.entity),o=w(r)?r:e.defaultValue;return oe(e)&&w(o)?Ds(e,o):q(e)&&w(o)?_s(e,o):o}function Ds(e,t){let n=Se(e);return g(t)?so(t,n):t}function Os(e,t,n){return Ie(e)&&Array.isArray(n)?{...t,[ot]:n}:t}function Ms(e,t,n){if(e.required&&!w(n)&&Q(e)&&e.advanced?.preselected!==!1&&ot in t){let r=t[ot];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function zs(e,t,n){if(Ie(e)&&Array.isArray(t)){let r=fn(t,e.advanced?.options);return to(e)?Ge(r,n):r}return t}function vo(e,t,n,r,o){let i=Vs(e,r),a=Array.isArray(n)?zs(e,n,o):n,s=Os(e,t,a),l=Ms(e,s,i);return{commonPropsWithOptions:s,defaultValue:l}}function So(e,t){return $(e)?{checked:!!t}:J(e)?{value:Array.isArray(t)?t:[]}:q(e)&&g(t)&&w(t)?{value:Ct(t,se(e))}:$e(e)?{value:w(t)?String(t):""}:{value:t??""}}function _s(e,t){let n=se(e);return g(t)?wt(t,n):t}function To(e,t){let n=e??t;return n?{"data-format":n}:{}}function fo(e){let t=[];for(let n of e){if(typeof n=="string"){t.push(n);continue}m(n)&&"value"in n&&"label"in n&&g(n.value)&&g(n.label)&&t.push({label:n.label,value:n.value})}return t}function Ao(e,t){if(!Ie(e))return;let n=J(e)?mo(e,t):go(e,t);if(Array.isArray(n)){let o=fo(n);return o.length>0?o:void 0}let r=Rt(e);if(Array.isArray(r)){let o=fn(r,e.advanced?.options),i=fo(Ge(o,t?.translations));return i.length>0?i:void 0}}function wo(e,t){let n=String(e);for(let r of t)if(typeof r=="string"){if(r===n)return r}else if(r.value===n)return r.label;return n}var Bs=/^#\/definition\//;function Nt(e=[],t){let n=kt(e,t);return Array.isArray(n)?n.filter(Gs).sort((r,o)=>Co(r)-Co(o)):[]}function kt(e,t,n=new Map,r=new WeakSet){if(!$s(t)||!e||typeof e!="object")return e;if(n.has(e))return n.get(e);if(r.has(e))return e;if(r.add(e),Array.isArray(e))return e.map(i=>kt(i,t,n,r));if(ke in e&&g(e[ke])){let i=e[ke].replace(Bs,""),a=M(t,i);return a!==null?kt(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=kt(a,t,n,r);return r.delete(e),n.set(e,o),o}function Fo(e){return Object.entries(e??{})}function Co(e){return e.order??Number.MAX_VALUE}function $s(e){return e!==void 0&&m(e)&&Object.keys(e).length>0}function Gs(e){return Tr in e?!0:Array.isArray(e[on])?e[on].length>0:!0}function ko(e,t){let n={};for(let[r,o]of Fo(t))n[`${e}-${r}`]=o;return n}function Us(e){return ko(br,e)}function Hs(e){return ko(xr,e)}function No(e,t){let n=Us(e.advanced?.aria);return t&&t.length>0&&(n[gr]="true",n[mr]=`${e.name}-error`),n}function Io(e){return Hs(e.advanced?.data)}var Eo={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Lo={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function Po(e,t=2){return Eo[e&&e in Eo?e:t]}function Vo(e){if(e&&e in Lo)return Lo[e]}function vn(e){return{min:e.advanced?.length?.min??1,max:e.advanced?.length?.max??1/0}}function It(e){let t=[];for(let n of e)if(ae(n))for(let r of n.fields)t.push(r);else t.push(n);return t}function Ys(e,t){let n=t?M(t,e.name):null;return _o(e,Array.isArray(n)?n.length:0)}function Do(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===Oe}function Oo(e,t){let n=Ys(e,t);return Array.from({length:n},(r,o)=>o)}function Mo(e){return e.advanced?.title??e.label??e.name}function zo(e){let t={};for(let n of It(e))ee(n)||(t[n.name]=n);return t}function _o(e,t){let{min:n,max:r}=vn(e);return Math.min(Math.max(t,n),r)}function Sn(e,t){let n=It(e.fields),r=_o(e,t.length),o=[];for(let i=0;i<r;i++){let a=t[i],s={};for(let l of n){let u=a?.[l.name];s[l.name]=ee(l)?Sn(l,lt(u)?u:[]):u}o.push(s)}return o}function Et(e,t){if(!e.includes("/"))return e;let[n,r]=e.split("/"),o=new RegExp(`(^|.*\\.)(${n}\\.\\d+\\.)`),i=t.match(o);return i?`${i[0]}${r}`:r}import{z as F}from"zod";var qs=[[$,Bo],[Wr,Zs],[bt,Xs],[ie,Ks],[$e,Bo],[mt,Js],[gt,js],[J,Tn],[pt,Tn],[yt,Tn]];function Uo(e,t=[],n){let r=F.object(e);if(t.length===0)return r;let o=nl(r,t,n);return il(o,t,n)}function Ho(e){let t={},n=F.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function Yo(e,t){for(let[n,r]of qs)if(n(e))return r(e,t);return Ws(e,t)}function Zs(e,t){let n=F.string().trim();if(e.required){let r=me(e,t),o=n.min(1,r).pipe($o(e,t));return F.preprocess(i=>z(i)?"":i,o)}return n.pipe($o(e,t)).or(F.literal("")).nullable()}function Bo(e,t){let n=F.preprocess(r=>{if(typeof r=="string"){if(r==="true")return!0;if(r==="false")return!1}return r},F.coerce.boolean());return e.required?($(e)?n=n.refine(r=>r===!0,{message:me(e,t)}):n=n.refine(r=>typeof r=="boolean",{message:me(e,t)}),F.preprocess(r=>r===null?!1:r,n)):n.nullable()}function Ks(e,t){let n=F.coerce.string();return e.required?(n=n.min(1,me(e,t)),F.preprocess(r=>z(r)?"":r,n)):n.or(F.literal("")).nullable()}function Ws(e,t){let n=F.coerce.string().trim();return n=qo(n,e,t),e.required?(n=Zo(n,e,t),F.preprocess(r=>z(r)?"":r,n)):n.nullable()}function Xs(e,t){let n=F.coerce.number().int();return n=qo(n,e,t),e.required?(n=Zo(n,e,t),F.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function js(e,t){return e.required?F.preprocess(Qs,F.coerce.number({message:me(e,t)}).int()):F.coerce.number().int().nullable()}function Js(e,t){let n=me(e,t),r=F.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function Qs(e){return e===null||e===""?void 0:e}function $o(e,t){let n=e.validation?.email?C(e.validation?.email,t):void 0;return F.email(n)}function qo(e,t,n){return e=el(e,t,n),e=tl(e,t,n),e}function Zo(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,me(t,n)):e}var el=(e,t,n)=>Ko(e,t,at,n),tl=(e,t,n)=>Ko(e,t,it,n);function Ko(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?C(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function nl(e,t=[],n){let r=ol(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:s}of r)if(!rl(o,a,s)){let l=C(s.message,n);i.addIssue({code:"custom",message:l,path:[a]})}})}function rl(e,t,n){let r=n.operator??"eq",o=ve[r];return o?o(Lt(e,t),Lt(e,n.field)):!1}function ol(e){let t=[];for(let n of e){let r=n.validation?.custom;if(!r)continue;let o=Array.isArray(r)?r:[r];for(let i of o)t.push({name:n.name,rule:i})}return t}function Wo(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let s=a.operator??"eq",l=ve[s];if(l&&!l(e,n(a.field))&&a.message){let u=C(a.message,r);o.push(u)}}return o}function me(e,t){return e.validation?.required?C(e.validation?.required,t):void 0}function Tn(e,t){let n=F.array(F.string());return e.required&&(n=n.min(1,me(e,t))),F.preprocess(r=>z(r)?[]:Array.isArray(r)?r.map(String):[String(r)],n)}function il(e,t=[],n){let r=t.filter(al);return r.length===0?e:e.superRefine((o,i)=>{let a=m(o)?o:{};for(let s of r)for(let l of sl(a,s,n))i.addIssue({code:"custom",path:l.path,message:l.message})})}function al(e){let t=e.validation;return t!==void 0&&(t.requiredWhen!==void 0||t.pattern!==void 0||t.rules!==void 0)}function sl(e,t,n){let r=[],o=Lt(e,t.name),i=t.validation?.requiredWhen;if(i){let l=(Array.isArray(i)?i:[i]).find(u=>Ue(e,u));l&&!An(o)&&r.push({path:[t.name],message:te(l.message??t.validation?.required,n)})}let a=t.validation?.pattern;a&&!Xo(a,o)&&r.push({path:[t.name],message:te(a.message,n)});for(let s of t.validation?.rules??[])ll(e,s.when)&&!ul(s,o)&&r.push({path:[t.name],message:te(s.message,n)});return r}function Ue(e,t){let n=ve[t.operator??"eq"];return n?n(Lt(e,t.field),t.value):!1}function Lt(e,t){return t in e?e[t]:M(e,t)??void 0}function ll(e,t){if(!t)return!0;if(Array.isArray(t))return t.every(o=>Ue(e,o));if("field"in t)return Ue(e,t);let n=t.all?t.all.every(o=>Ue(e,o)):!0,r=t.any?t.any.some(o=>Ue(e,o)):!0;return n&&r}function ul(e,t){switch(e.assert){case"required":return An(t);case"minItems":return Array.isArray(t)&&t.length>=Number(e.value);case"maxItems":return Array.isArray(t)&&t.length<=Number(e.value);case"min":return Go(t)>=Number(e.value);case"max":return Go(t)<=Number(e.value);case"oneOf":return Array.isArray(e.value)&&e.value.map(String).includes(String(t));case"pattern":return dl(e.value)?Xo(e.value,t):!0;default:return!0}}function Xo(e,t){return!An(t)||typeof t!="string"||e.allowInterpolation&&(Re(t)||cl(t))?!0:new RegExp(e.regex,e.flags).test(t)}function cl(e){return g(e)&&e.trimStart().startsWith("@")}function An(e){return g(e)?e.trim().length>0:ve.exists(e,void 0)}function Go(e){return typeof e=="number"?e:g(e)||Array.isArray(e)?e.length:0}function dl(e){return m(e)&&"regex"in e}function jo(e,t){if(!t||!ml(e))return!0;if(t.length===0)return!1;try{let n=new URL(e),r=n.protocol.replace(":",""),o=n.hostname,i=n.port||fl(r);return t.some(a=>!(a.protocol&&a.protocol!==r||a.hostname&&a.hostname!==o||a.port!==void 0&&String(a.port)!==i))}catch{return!1}}function fl(e){return e==="https"?"443":"80"}function ml(e){return/^(https?:)?\/\//.test(e)}function Jo(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,st);new URL(t,st).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(st,""):o}catch{return t||e}}function Qo(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=Jo(t.url,n.url),o=gl(t,n),i=pl(t,n);return{...t,...n,url:r,body:o,headers:i}})}function gl(e,t){return m(t.body)&&m(e?.body)?{...e.body,...t.body}:t.body??e?.body}function pl(e,t){return m(t.headers)&&m(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function Pt(e,t){let n={...e};for(let r of Object.keys(t??{})){let o=t?.[r];o!==void 0&&(n[r]=o)}return n}var yl={uppercase:e=>e.toUpperCase(),lowercase:e=>e.toLowerCase(),"remove-space":e=>e.replace(/\s+/g,""),"remove-accent":e=>e.normalize("NFD").replace(/[\u0300-\u036f]/g,"")};function He(e,t){return!t||!g(e)||z(e)?e:(Array.isArray(t)?t:[t]).reduce((r,o)=>{let i=yl[o];return i?i(r):r},e)}import{jsx as bl}from"react/jsx-runtime";function le(e){return _r(e,(t,n,r)=>bl("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}import{useCallback as xl,useState as hl}from"react";import{jsx as Ye,jsxs as wn}from"react/jsx-runtime";function ei(e){let{fields:t=[]}=e.section,[n,r]=hl(!1),o=xl(()=>r(i=>!i),[]);return wn("fieldset",{"data-slot":"field-set","data-advanced":"true","data-expanded":n,"data-empty":t.length===0,className:"flex flex-col",id:e.section.id?.toString(),children:[Ye("legend",{children:wn("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-zinc-600 dark:text-zinc-400",onClick:o,type:"button",children:[Ye(Fe,{expanded:n}),Ye("span",{children:le(e.title)})]})}),Ye(De,{visible:n,children:wn("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-zinc-300 pl-4 dark:border-zinc-600","data-slot":"field-set-content",children:[e.description&&Ye("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:le(e.description)}),e.group]})})]})}import{jsx as Vt,jsxs as ti}from"react/jsx-runtime";function ni(e){let t=ti("div",{className:"flex flex-col",children:[e.title&&Vt("legend",{className:"mb-3 font-medium text-zinc-800 dark:text-zinc-200",children:le(e.title)}),e.description&&Vt("p",{className:"-mt-2 text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:le(e.description)})]});return e.step?ti("div",{className:"flex flex-row items-start gap-4",children:[Vt("div",{className:"bg-primary text-primary-foreground flex size-6 shrink-0 items-center justify-center rounded-full",children:Vt("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}import{jsx as ri,jsxs as Rl}from"react/jsx-runtime";function Dt(e){return Rl("fieldset",{className:"flex w-full min-w-0 flex-col data-[empty=false]:gap-6","data-empty":e.empty,"data-slot":"field-set",id:e.id,children:[ri(ni,{description:e.description,step:e.step,title:e.title}),ri("div",{className:"w-full min-w-0",children:e.children})]})}import{jsx as vl}from"react/jsx-runtime";function ge(e){return vl("div",{"data-slot":"field-group","data-compact":e.compact,className:"flex w-full flex-col gap-8 data-[compact=true]:gap-3",children:e.children})}import{jsx as Cn}from"react/jsx-runtime";function oi(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=Pt(e.style,{compact:e.section.advanced?.compact}),o=Cn(ge,{compact:r,children:e.children});if(!e.section.title&&!e.section.description)return o;let i=te(e.section.title,e.translations),a=te(e.section.description,e.translations);return e.section.advanced?.collapsible?Cn(ei,{description:a,group:o,section:e.section,title:i}):Cn(Dt,{description:a,empty:t.length===0,id:e.section.id?.toString(),step:n,title:i,children:o})}import{jsx as ii}from"react/jsx-runtime";function ai(){return ii("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:ii("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-zinc-200 dark:bg-zinc-800"})})}import{useAtomValue as Cl}from"jotai";import{atom as Te}from"jotai";import{atomFamily as si}from"jotai-family";import{deepEqual as Fn}from"fast-equals";function qe(e,t){let{[t]:n,...r}=e;return r}function Sl(e){return si(t=>Te(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];Fn(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,qe(i,t))}))}function Tl(e){return Te(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function Al(e){return Te(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let s of r)s in i&&(delete i[s],a=!0);a&&n(e,i)})}function wl(e){return Te(null,(t,n,r)=>{let o=t(e);Fn(o,r)||n(e,r)})}function li(e,t={}){let{merge:n,validateTarget:r}=t;return si(o=>Te(i=>{let a=i(e)[o];if(a&&n)return n(Object.values(a))},(i,a,s,l)=>{if(r&&!r(s))return;let u=i(e),c={...u[s]??{}};if(l!=null){let p=c[o];(!p||!Fn(p,l))&&(c[o]=l,a(e,{...u,[s]:c}))}else o in c&&(delete c[o],Object.keys(c).length===0?a(e,qe(u,s)):a(e,{...u,[s]:c}))}))}function ui(e){return Te(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let s of r)s in i&&(delete i[s],a=!0);for(let s in i){let l={...i[s]},u=!1;for(let c of r)c in l&&(delete l[c],u=!0,a=!0);u&&(Object.keys(l).length===0?delete i[s]:i[s]=l)}a&&n(e,i)})}function ue(e={}){let t=Te(e);return{atom:t,clearAll:Tl(t),clear:Al(t),bulkReport:wl(t),report:Sl(t)}}var ci=ue(),Ot=ci.atom,Mt=ci.report;function Fl(e,t){return e.fields.every(n=>di(n,t))}function di(e,t){return t[e.name]?.hidden??e.hidden??!1}function kl(e,t){return ae(e)?Fl(e,t):di(e,t)}function zt(e){let t=Cl(Ot);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>kl(r,t))?null:e.children}import{jsx as Ze,jsxs as fi}from"react/jsx-runtime";function mi(e){let t=Nt(e.sections,e.definition);return Ze("div",{className:"h-full w-full",children:Ze("form",{noValidate:e.noValidate,action:e.action,children:fi(ge,{children:[t.map((n,r)=>fi(zt,{fields:n.fields??[],children:[Ze(oi,{advanced:e.advanced,section:n,step:r+1,style:e.config.style,translations:e.translations,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.advanced?.separator&&Ze(ai,{})]},`key-${n.id}-${r}`)),e.control&&Ze(Un,{isPending:e.isPending,children:e.control})]})})})}import{jsx as Nl}from"react/jsx-runtime";function gi(e){return Nl("p",{className:"-mt-2 text-xs leading-normal font-normal text-zinc-600 dark:text-zinc-400 [[data-slot=column]_&]:md:line-clamp-2",title:e.title,children:e.children})}import{useState as Il}from"react";import{jsx as pi,jsxs as yi}from"react/jsx-runtime";function _t(e){let t={context:e.context,env:e.config?.env,value:e.value},r={locale:e.config?.env?.locale},[o,i]=Il(()=>m(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),a=()=>i(c=>!c),s=m(e.text)&&g(e.text.title)?le(C(_e(e.text.title,t,r),e.translations)):void 0,l=C(_e(g(e.text)?e.text:e.text?.message,t,r),e.translations),u=le(l);return u?yi("div",{className:"flex flex-col gap-2",children:[s&&yi("button",{className:"flex items-center gap-1 text-left text-xs font-medium text-zinc-700 hover:text-zinc-900 dark:text-zinc-300 dark:hover:text-zinc-100",onClick:a,type:"button",children:[s,pi(Fe,{expanded:o})]}),o&&pi(gi,{title:l,children:u})]}):null}import{atom as bi}from"jotai";var Bt=ue(),_=Bt.atom,xi=Bt.clearAll,hi=Bt.clear,pe=Bt.report,kn=bi({}),Nn=bi(null);import{useAtomValue as Ri}from"jotai";import{jsx as El}from"react/jsx-runtime";function $t(e){let t=Ri(pe(e.field.name)),r=Ri(Mt(e.field.name))?.description??e.field.description;return El(_t,{config:e.config,context:e.context,text:r,translations:e.translations,value:t})}import{twMerge as Ll}from"tailwind-merge";import{jsx as vi,jsxs as Pl}from"react/jsx-runtime";function Si(e){let t=e.style?.showOptionalLabel??!0,n=ie(e.field)||$(e.field);return Pl("label",{"data-slot":"field-label","data-normal":n,className:Ll("flex w-fit items-center text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal [[data-slot=column]_&]:md:w-full","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,title:g(e.children)?e.children:void 0,children:[vi("span",{className:"[[data-slot=column]_&]:md:truncate",children:e.children}),t&&!e.field.required&&vi("span",{className:"ml-2 flex-shrink-0 text-sm text-zinc-600 dark:text-zinc-400",children:Z("(Optional)",e.translations)})]})}import{jsx as Ti,jsxs as Vl}from"react/jsx-runtime";function Ai(e){let t={context:e.context,env:e.config?.env},n=e.config?.env?.locale,r=_e(e.field.label,t,{locale:n});return Vl("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[Ti(Si,{field:e.field,style:e.config?.style,translations:e.translations,children:C(r,e.translations)}),e.horizontal===!0&&Ti($t,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}import{Fragment as Dl,jsx as wi,jsxs as Ol}from"react/jsx-runtime";function Ci(e){return Ol(Dl,{children:[e.field.name&&e.field.label&&wi(Ai,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&wi($t,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}function Gt(e,t){return e?t(e):null}var Ke={found:!1,value:void 0};function We(e,t){if(!Array.isArray(t)&&e in t)return{found:!0,value:t[e]};if(!e.includes("."))return Ke;let n=e.split("."),r=t;for(let o of n){if(r==null)return Ke;if(Array.isArray(r)){let i=Number(o);if(!Number.isInteger(i)||!(i in r))return Ke;r=r[i]}else if(m(r)){if(!(o in r))return Ke;r=r[o]}else return Ke}return{found:!0,value:r}}function H(e,t){return We(e,t).value}import{useCallback as tu,useEffect as nu,useRef as ru}from"react";import{createContext as Ml}from"react";var zl=e=>e,ye=Ml(zl);var In=ue(),Fi=In.clear,ki=In.bulkReport,Ut=In.report;var Ni=ue(),Ht=Ni.atom,Ii=Ni.report,Ei=ue(),Yt=Ei.atom,Li=Ei.report;import{use as Yl,useCallback as Oi,useRef as Xe,useTransition as ql}from"react";import{use as _l,useEffect as Bl,useEffectEvent as Pi,useMemo as $l}from"react";function Vi(e,t,n,r){let{name:o}=e,i=$l(()=>Yo(e,r),[e,r]),a=_l(nt),s=Pi(u=>{u&&t(u,i,e)}),l=Pi(u=>{u&&n(u,{keepValue:a})});return Bl(()=>(s(o),()=>{l(o)}),[o]),i}import{useSetAtom as Ee,useStore as Zl}from"jotai";import{useCallback as Gl,useEffect as Ul,useRef as Hl}from"react";function Di(){let e=Hl(null);return Ul(()=>()=>{e.current&&clearTimeout(e.current)},[]),Gl((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}function Kl(e){return document.activeElement?.getAttribute("name")===e}function Mi(e,t){let n=Zl(),r=e.field.advanced?.entity,o=Di(),[,i]=ql(),a=Yl(ye),{setValue:s,shouldSkipOnChange:l,value:u,setSource:c}=t,p=Xe(u);p.current=u;let f=Xe(e.translations);f.current=e.translations;let T=xt(e.field),y=Ee(_),A=Ee(Ot),k=Ee(Ut(e.field.name)),P=Ee(kn),V=Ee(Nn),K=Ee(Ht),N=Vi(e.field,e.onMount,e.onUnmount,e.translations),I=C(e.commonProps.placeholder,e.translations),L={...e.commonProps,placeholder:I};function ne(d){let[,h]=e.getSchema();return h.find(R=>R.name===d)}function ce(d){let h=ne(d);if(h&&fe(h)){let R=h.advanced?.transform;if(R)return R}}function W(d,h){if(y(R=>({...R,[d]:h})),P(R=>({...R,[d]:h})),e.onValueChange){let R=ne(d);R&&e.onValueChange({name:a(d),type:R.type,value:h})}}function Ae(d){let h=n.get(_),R=Object.keys(h).filter(S=>d.some(v=>S===v||S.startsWith(`${v}.`)));if(R.length!==0&&(y(S=>R.reduce((v,D)=>qe(v,D),S)),!!e.onValueChange))for(let S of R){let v=ne(S);v&&e.onValueChange({name:a(S),type:v.type,value:void 0})}}let we=Xe(null);we.current=d=>{if(e.field.advanced?.transient)return;let h=fe(e.field)?He(d,e.field.advanced?.transform):d;s(h),e.onValueChange&&e.onValueChange({name:a(e.field.name),type:e.field.type,value:h})};let Ce=Xe(null);Ce.current=d=>{let h=e.field.event?.change;h&&Br(h,({sources:R,states:S,values:v})=>{i(()=>{$r(d,R,(D,B)=>{c(Et(D,e.field.name),B)}),Hr(d,S,(D,B)=>{let X=D.map(U=>Et(U,e.field.name));A(U=>B?X.reduce((he,tt)=>({...he,[tt]:B}),U):X.reduce((he,tt)=>qe(he,tt),U));let O=B?.hidden===!0?X:B===void 0?X.filter(U=>ne(U)?.hidden===!0):[];O.length>0&&Ae(O)})}),Yr(d,v,(D,B,X)=>{let O=Et(D,e.field.name);if(n.get(Yt)[O]){lt(B)&&K(nn=>({...nn,[O]:B}));return}let U=ce(O),he=U?He(B,U):B,tn=n.get(_)[O];if(X.onlyIfTargetEmpty&&!z(tn)){let nn=n.get(kn)[O];if(!Object.is(nn,tn))return}if(he!==tn){if(Kl(O)){V({target:O,value:he});return}W(O,he)}})})};let xe=Oi(d=>{let R=N.safeParse(d).error?.issues.map(D=>D.message)??[],S=e.field.validation?.custom,v=S?Wo(d,S,D=>n.get(pe(D)),f.current):[];k([...R,...v])},[e.field.validation?.custom,N,k,n]),b=Xe(null);b.current=()=>{let d=n.get(Nn);d?.target===e.field.name&&(V(null),z(n.get(_)[d.target])&&W(d.target,d.value))};let x=Oi(d=>{if(!T){let h=d.target.value;e.config.validation.blur&&xe(h)}b.current?.()},[T,e.config.validation.blur,xe]);return{applyChangeEventsRef:Ce,commonProps:L,entity:r,hasClickable:T,onBlur:x,onValueChangeRef:we,setTimeoutRef:o,shouldSkipOnChange:l,validated:xe,valueRef:p}}import{deepEqual as Wl}from"fast-equals";import{useAtom as Xl}from"jotai";import{use as jl,useCallback as Jl,useEffect as Ql,useRef as eu,useEffectEvent as zi}from"react";function _i(e,t){let{name:n}=e,r=eu(!1),[o,i]=Xl(pe(n)),a=jl(ye),s=zi((c,p=!1)=>{let f=fe(e)?He(c,e.advanced?.transform):c;!p&&!Wl(o,f)&&(r.current=!0),i(f)}),l=zi(c=>{let{found:p,value:f}=We(a(n),c);if(w(f)){s(f);return}if(w(e.defaultValue)){s(e.defaultValue,!0);return}p&&s(f)});Ql(()=>{if(t){l(t);return}w(e.defaultValue)&&s(e.defaultValue,!0)},[t,e.defaultValue]);let u=Jl(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:u,value:o}}import{jsx as Bi}from"react/jsx-runtime";function $i(e){let{useSource:t,useExtraProps:n,getValue:r,shouldSkipChange:o,dispatchChange:i,buildInitialSelected:a,isInitialReady:s}=e.strategies,{setValue:l,shouldSkipOnChange:u,value:c}=_i(e.field,e.value),{data:p,setSource:f,isStaticSource:T}=t(e.field,e.config,c),{applyChangeEventsRef:y,commonProps:A,entity:k,hasClickable:P,onBlur:V,onValueChangeRef:K,setTimeoutRef:N,validated:I,valueRef:L}=Mi(e,{setValue:l,shouldSkipOnChange:u,value:c,setSource:f}),{getSchema:ne}=e,ce=n?.(e.field),W=ru(!1),{commonPropsWithOptions:Ae,defaultValue:we}=vo(e.field,A,p,c,T?e.translations:void 0),Ce=So(e.field,we);nu(()=>{let b=!!e.value||w(e.field.defaultValue);if(W.current||!b)return;if(!e.field.event?.change){W.current=!0;return}let x=e.value?H(e.field.name,e.value):void 0,d=w(x)?x:e.field.defaultValue;if(!w(d)||!s(e.field,d,p))return;W.current=!0;let h=a(d,p,k);queueMicrotask(()=>{let[,R]=ne();R.some(S=>S.name===e.field.name)&&y.current?.(h)})},[y,a,p,k,ne,s,e.field,e.value]);let xe=tu(b=>{let x=r(b,e.field);o({field:e.field,shouldSkipOnChange:u,hasClickable:P,inputValue:x,valueRef:L})||(K.current?.(x),e.config.validation.change&&I(x),e.field.event?.change&&i({applyChangeEventsRef:y,data:p,entity:k,inputValue:x,setTimeoutRef:N}))},[y,p,i,k,r,P,K,e.config.validation.change,e.field,N,o,u,I,L]);return Gt(e.config.inputs[e.field.type],b=>Bi(Ci,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:Bi(b,{...Ae,...e.ariaAttributes,...e.dataAttributes,...ce,...Ce,onBlur:V,onChange:xe})}))}import{jsx as ou}from"react/jsx-runtime";function Le(e){return function(n){return ou($i,{...n,strategies:e})}}function Gi(e){let t=q(e)?se(e):null,n=oe(e)?Se(e):null;return{dateFormat:t,timeFormat:n}}import{atom as iu}from"jotai";var au=e=>{let t=Qo(e);if(t)return t},su=e=>e.trim()!=="",Ui=iu({}),qt=li(Ui,{merge:au,validateTarget:su}),Hi=ui(Ui);import{useSetAtom as lu}from"jotai";function Zt(e){return{data:null,setSource:lu(qt(e.name))}}var Yi=Le({useSource:Zt,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=Gi(e);return To(t,n)},getValue:(e,t)=>{let n=e.target.value;if(!g(n))return n;let r=oe(t)?Se(t):null;if(r!==null)return lo(n,r);let o=q(t)?se(t):null;return o!==null&&Ct(n,o)||n},shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>w(t)});import{deepEqual as fu}from"fast-equals";import{useAtom as du}from"jotai";import uu from"swr";function qi(e=null,t,n=!1){let{data:r,error:o}=uu(cu(e,t,n),t.fetcher.provider);if(o&&Be.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return Pr(r,e.namespace)}return null}function cu(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!Re(e.url)){if(jo(e.url,t.fetcher.remotePatterns))return e;Be.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function Zi(e,t,n){let r=Ro(e,n),[o,i]=du(qt(e.name)),a=o??r,s=qi(a,t,e.disabled),l=Array.isArray(a);return[s,i,l]}function mu(e,t,n){let[r,o,i]=Zi(e,t,n);return{data:r,setSource:o,isStaticSource:i}}function gu(e,t){return Q(e)&&t===""}var Ki=Le({useSource:mu,getValue:e=>e.target.value,shouldSkipChange:({field:e,shouldSkipOnChange:t,hasClickable:n,inputValue:r,valueRef:o})=>gu(e,r)||!n&&t()&&(!r||fu(r,o.current)),dispatchChange:({applyChangeEventsRef:e,data:t,entity:n,inputValue:r})=>{e.current?.(cn(r,t,n))},buildInitialSelected:(e,t,n)=>cn(ze(e)?e:String(e),t,n),isInitialReady:(e,t,n)=>(!Ie(e)||!!n&&n.length>0)&&w(t)});var Wi=Le({useSource:Zt,getValue:e=>e.target.value,shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>w(t)});import{jsx as En}from"react/jsx-runtime";function Xi(e){return q(e.field)||oe(e.field)?En(Yi,{...e}):Xr(e.field)?En(Wi,{...e}):En(Ki,{...e})}import{jsx as ji}from"react/jsx-runtime";function Ji(e){return!e.errors||e.errors.length===0?null:ji("ul",{className:"text-sm text-red-600 dark:text-red-500",id:e.name?`${e.name}-error`:void 0,children:e.errors?.map((t,n)=>ji("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}import{twMerge as pu}from"tailwind-merge";import{jsx as yu}from"react/jsx-runtime";function Kt(e){let t=e.errors&&e.errors.length>0;return yu("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[pr]:"true"},...e.disabled&&{[yr]:"true"},"data-orientation":e.orientation,className:pu("group flex w-full flex-col items-center data-[invalid=true]:text-red-600 data-[invalid=true]:dark:text-red-500","data-[clickable=true]:items-start",e.isCheckbox&&(e.isReversed?"flex-row-reverse!":"flex-row!"),"data-[clickable=true]:has-[>[data-slot=field-content]]:[&>:first-child]:mt-px",e.className),children:e.children})}import{twMerge as bu}from"tailwind-merge";import{jsx as xu}from"react/jsx-runtime";function Qi(e){return xu(Kt,{...e,orientation:"vertical",className:bu("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as hu}from"tailwind-merge";import{jsx as Ru}from"react/jsx-runtime";function ea(e){return Ru(Kt,{...e,orientation:"horizontal",className:hu("gap-2 md:flex-row md:gap-4","[&>[data-slot=field-content]]:min-w-0 [&>[data-slot=field-content]]:flex-grow [&>[data-slot=field-content]]:self-start","[&_[role=checkbox]]:mt-[1.5px]",e.isClickable&&"md:flex-col",!e.isClickable&&["md:justify-between","[&>*:not([data-slot=field-content])]:w-full","[&>*:not([data-slot=field-content])]:md:w-1/2","[&>*:not([data-slot=field-content])]:xl:w-2/5"]),children:e.children})}import{jsx as ta}from"react/jsx-runtime";function na(e){let t=xt(e.field),n=$(e.field),r=Qr(e.field);return e.horizontal?ta(ea,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):ta(Qi,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function ra(e){if(!e.field.type)return null;let t=po(e.field,e.disabled,{lang:e.lang,translations:e.translations}),n=Io(e.field),r=No(e.field,e.errors),o={...e.field,disabled:t.disabled};return e.children({ariaAttributes:r,commonProps:t,dataAttributes:n,field:o,horizontal:e.horizontal})}import{twMerge as vu}from"tailwind-merge";import{jsx as Ln,jsxs as Su}from"react/jsx-runtime";function oa(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r=!1}=Pt(e.style,{horizontal:Jr(e.field)}),o=eo(e.field,e.disabled);return Su("div",{className:vu("flex flex-col gap-3",Vo(t)),children:[Ln(na,{disabled:o,errors:n,field:e.field,horizontal:r,children:Ln(ra,{disabled:o,errors:n,field:e.field,horizontal:r,lang:e.lang,translations:e.translations,children:e.children})}),Ln(Ji,{errors:n,name:e.field.name})]})}import{useAtomValue as Tu}from"jotai";import{jsx as Cu}from"react/jsx-runtime";function ia(e){return(t,n)=>o=>{let i=Tu(e(o.field.name)),a=n(i,o);return a===null?null:Cu(t,{...o,...a})}}var Au=ia(Ut);function aa(e){return Au(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var wu=ia(Mt);function sa(e){return wu(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var la=sa(aa(oa));import{twMerge as Pn}from"tailwind-merge";import{useState as Fu}from"react";import{Fragment as ku,jsx as G,jsxs as be}from"react/jsx-runtime";function ua(e){let t=e.isMultiField||e.collapsed!=null,[n,r]=Fu(t?!e.collapsed:!0);function o(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function i(){r(c=>!c)}let a=c=>re(Z(c,e.translations),{index:e.index+1,label:e.label}),s=e.canRemove&&e.onRemove!=null&&G("button",{"aria-label":a("Remove {label} item {index}"),className:Pn("flex size-6 items-center justify-center rounded text-xl leading-none text-zinc-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:outline-none","dark:text-zinc-500 dark:hover:text-red-400"),onClick:o,type:"button",children:G("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),l=be("div",{className:"flex min-w-0 flex-col font-medium text-zinc-700 dark:text-zinc-400",children:[G("span",{className:"text-base",children:e.previewLabel??be(ku,{children:[e.label," ",e.index+1]})}),!n&&e.previewTags&&G("div",{className:"flex items-center gap-2 overflow-hidden text-xs font-normal text-ellipsis whitespace-nowrap text-zinc-500 dark:text-zinc-500",children:e.previewTags})]}),u=be("div",{className:Pn("flex items-center justify-between gap-2",e.isMultiField&&n&&"mb-3"),children:[t?be("div",{className:"flex min-w-0 grow items-center gap-2",children:[be("button",{"aria-expanded":n,"aria-label":a(n?"Collapse {label} {index}":"Expand {label} {index}"),className:Pn("group flex grow items-center gap-2 rounded p-1 text-left text-zinc-400","focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:outline-none","dark:text-zinc-500"),onClick:i,type:"button",children:[G(Fe,{expanded:n}),l]}),!n&&e.previewBadge&&G("div",{className:"ml-auto shrink-0",children:e.previewBadge})]}):l,s]});return e.isMultiField?be("div",{"data-slot":"list-item-card",className:"box-border w-full min-w-0 rounded-lg border border-zinc-100 p-4 dark:border-zinc-900",children:[u,G(De,{visible:n,children:G(ge,{children:e.children})})]}):t?be("div",{className:"box-border flex w-full min-w-0 flex-col gap-2",children:[u,G(De,{visible:n,children:G(ge,{children:e.children})})]}):be("div",{className:"box-border flex w-full min-w-0 items-start gap-2",children:[G("div",{className:"flex min-w-0 grow flex-col",children:G(ge,{children:e.children})}),s&&G("div",{className:"shrink-0",children:s})]})}import{Fragment as Iu}from"react";import{twMerge as ca}from"tailwind-merge";import{useAtomValue as Nu}from"jotai";function Wt(e,t){return Nu(pe(e))??t}import{jsx as je,jsxs as da}from"react/jsx-runtime";function fa({className:e,initialValue:t,name:n,options:r,separator:o,staticLabel:i}){let a=Wt(n??"",t);if(i===void 0&&r){let u=(Array.isArray(a)?a:a==null||a===""?[]:[a]).filter(c=>c!=null&&c!=="").map(c=>wo(c,r));return u.length===0?null:je("div",{className:"flex items-center gap-1.5 overflow-hidden",children:u.map((c,p)=>da(Iu,{children:[(o||p>0)&&je("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),je("span",{"aria-label":c,className:ca("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:c,children:c})]},`${p}:${c}`))})}if(i===void 0&&(z(a)||m(a)||Array.isArray(a)))return null;let s=i??String(a);return da("div",{className:"flex items-center gap-1.5 overflow-hidden",children:[o&&je("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),je("span",{"aria-label":s,className:ca("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:s,children:s})]})}import{useAtomValue as Eu}from"jotai";import{useMemo as Lu}from"react";function Xt(e,t){let n=Eu(_);return Lu(()=>{let r=`${e}.`,o={},i=!1;for(let s in n)s.startsWith(r)&&(o[s.slice(r.length)]=n[s],i=!0);let a=t?H(e,t):void 0;return i?m(a)?{...a,...o}:o:a},[n,e,t])}import{useMemo as Vn}from"react";import{jsx as ma}from"react/jsx-runtime";function Pu(e){return typeof e=="string"?{field:e}:e}function Dn({className:e,fields:t,label:n="Preview",lang:r,name:o,previews:i,translations:a,value:s}){let l=Vn(()=>(Array.isArray(i)?i:[i]).map(Pu),[i]),u=Vn(()=>t?zo(t):void 0,[t]),c=Xt(o,s),p=Vn(()=>{let f=[];for(let[T,y]of l.entries()){if(y.when!==void 0&&!Ne(c,y.when))continue;if(y.label!==void 0){f.push({key:y.field??`label:${y.label}:${T}`,staticLabel:C(y.label,a)});continue}if(y.field===void 0)continue;let A=`${o}.${y.field}`,k=s!=null?H(A,s):void 0,P=u?.[y.field],V=P?Ao(P,{lang:r,translations:a}):void 0;f.push({key:`${T}:${y.field}`,initialValue:k,options:V,previewName:A})}return f},[l,c,r,o,s,a,u]);return p.length===0?null:ma("div",{"aria-label":n,className:"flex items-center gap-1.5 overflow-hidden",children:p.map((f,T)=>ma(fa,{className:e,initialValue:"initialValue"in f?f.initialValue:void 0,name:"previewName"in f?f.previewName:void 0,options:"options"in f?f.options:void 0,separator:T>0,staticLabel:"staticLabel"in f?f.staticLabel:void 0},f.key))})}import{Fragment as Vu,jsx as Du}from"react/jsx-runtime";function ga({children:e,initialValue:t,name:n}){let r=Wt(n,t),i=z(r)||m(r)||Array.isArray(r)?"":String(r);return Du(Vu,{children:e(i)})}import{jsx as jt}from"react/jsx-runtime";function pa({canRemove:e,children:t,field:n,index:r,isMultiField:o,itemKey:i,label:a,lang:s,onRemove:l,previewBadge:u,previewLabel:c,previewTags:p,translations:f,value:T}){let y=`${n.name}.${i}`,A=`${a} ${r+1}`,k=Xt(y,T);return jt(ua,{canRemove:e,collapsed:n.advanced?.collapsed,index:r,isMultiField:o,label:a,onRemove:l,previewLabel:Ou({fallbackLabel:A,liveItemValue:k,name:y,previewLabel:c,translations:f,value:T}),previewBadge:u?jt(Dn,{className:"bg-primary text-primary-foreground rounded-md px-1.5 py-0.5 leading-none font-bold uppercase",fields:n.fields,lang:s,name:y,previews:u,translations:f,value:T}):void 0,previewTags:p?jt(Dn,{fields:n.fields,lang:s,name:y,previews:p,translations:f,value:T}):void 0,translations:f,children:t})}function Ou({fallbackLabel:e,liveItemValue:t,name:n,previewLabel:r,translations:o,value:i}){if(r===void 0)return;let a=g(r)?{field:r}:r;if(a.when!==void 0&&!Ne(t,a.when))return;if(a.label!==void 0)return C(a.label,o);if(a.field===void 0)return;let s=`${n}.${a.field}`;return jt(ga,{initialValue:i?H(s,i):void 0,name:s,children:l=>l||e})}import{twMerge as Uu}from"tailwind-merge";import{deepEqual as zu}from"fast-equals";import{useAtom as _u,useSetAtom as Mn,useStore as Bu}from"jotai";import{use as $u,useCallback as Ve,useEffect as Jt,useEffectEvent as ya,useMemo as ba,useRef as Qt,useState as Gu}from"react";function Pe(e,t,n){return`${e}.${t}.${n}`}function Mu(e,t){let{initial:n,mounted:r,values:o}=t,i=r[e];if(i)return On(e,i,t);let a=o[e];if(a!==void 0)return a;if(n)return H(e,n)}function On(e,{items:t,leafNames:n},r){return t.map(o=>{let i={};for(let a of n)i[a]=Mu(Pe(e,o,a),r);return i})}function xa(e,t,n){let{min:r,max:o}=vn(e),[i,a]=Gu(()=>Oo(e,t)),s=Qt(i),l=Qt(i.length);s.current=i;let u=Bu(),c=Mn(_),p=Mn(Ht),f=Qt(n);f.current=n;let T=Qt(t),y=ba(()=>It(e.fields),[e.fields]),A=ba(()=>y.map(b=>b.name),[y]),k=Ve((b,x)=>{let d=Number(b);return Number.isNaN(d)?!1:Number.isInteger(d)&&x>=0&&String(x)!==b},[]),P=$u(ye),V=Ve(b=>{let x=`${e.name}.`;if(b.startsWith(x)){let d=b.slice(x.length),h=d.indexOf("."),R=h===-1?d:d.slice(0,h),S=Number(R),v=s.current.indexOf(S);k(R,v)&&(b=`${x}${v}${h===-1?"":d.slice(h)}`)}return P(b)},[e.name,k,P]),K=ya(()=>{let b=T.current;if(!b)return;let x={...u.get(_)},d=!1;for(let h of i)for(let R of A){let S=Pe(e.name,h,R);if(S in x)continue;let v=H(S,b);w(v)&&(x[S]=v,d=!0)}d&&c(x)});Jt(()=>{K()},[]);let N=Ve((b,x)=>On(e.name,{items:b,leafNames:A},{mounted:u.get(Yt),values:x,initial:T.current}),[e.name,A,u]),I=Ve((b,x)=>{f.current?.({name:V(e.name),value:N(b,x)})},[N,e.name,V]),L=Ve(()=>{if(s.current.length>=o)return;let b=l.current++,x=[...s.current,b];a(x),I(x,u.get(_))},[I,o,u]),ne=Ve(b=>{if(s.current.length<=r)return;let x=s.current[b],d=s.current.filter((S,v)=>v!==b),R={...u.get(_)};for(let S of A)delete R[Pe(e.name,x,S)];a(d),c(R),I(d,R)},[I,e.name,A,r,c,u]),ce=Mn(Li(e.name));Jt(()=>{ce({items:i,leafNames:A})},[i,A,ce]),Jt(()=>()=>{let b=u.get(_);c({...b,[e.name]:N(s.current,b)}),ce(void 0)},[N,e.name,ce,c,u]);let[W,Ae]=_u(Ii(e.name)),we=ya(b=>{let x=Sn(e,b),d=u.get(_);if(zu(N(s.current,d),x))return;let h=[];for(let v=0;v<x.length;v++)h.push(s.current[v]??l.current++);let R={...d};for(let v of s.current)for(let D of A)delete R[Pe(e.name,v,D)];let S={};h.forEach((v,D)=>{let B=x[D];for(let X of y){let O=B[X.name];if(O===void 0)continue;let U=Pe(e.name,v,X.name);R[U]=O,ee(X)&&(S[U]=O)}}),c(R),a(h),Object.keys(S).length>0&&p(v=>({...v,...S})),f.current?.({name:V(e.name),value:x})});Jt(()=>{W&&(we(W),Ae(void 0))},[W,Ae]);let Ce=i.length<o,xe=i.length>r;return[i,L,ne,Ce,xe,o,V]}import{jsx as zn,jsxs as en}from"react/jsx-runtime";var Hu="flex h-9 w-full items-center gap-2 rounded-md border border-dashed border-zinc-200 px-4 text-sm font-medium text-zinc-500 transition-none hover:border-zinc-300 hover:text-zinc-800 focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:ring-offset-2 focus-visible:outline-none dark:border-zinc-800 dark:text-zinc-400 dark:hover:border-zinc-700 dark:hover:text-zinc-200";function ha(e){let{field:t,lang:n,onValueChange:r,translations:o,value:i,children:a}=e,[s,l,u,c,p,f,T]=xa(t,i,r),y=C(Mo(t),o),A=t.advanced?.action?C(t.advanced.action,o):Z("Add item",o),k=f!==1/0,P=Do(t),{label:V,tags:K,badge:N}=t.advanced?.preview??{};return zn(ye.Provider,{value:T,children:en("div",{className:"flex w-full flex-col gap-4",children:[s.map((I,L)=>zn(pa,{canRemove:p,field:t,index:L,isMultiField:P,itemKey:I,label:y,lang:n,onRemove:u,previewBadge:N,previewLabel:V,previewTags:K,translations:o,value:i,children:a(I)},I)),en("button",{"aria-disabled":!c,"aria-label":k?`${A}, ${s.length} of ${f}`:A,className:Uu(Hu,k?"justify-between":"justify-center",!c&&"cursor-not-allowed opacity-50 hover:border-zinc-200 hover:text-zinc-500 dark:hover:border-zinc-800 dark:hover:text-zinc-400"),disabled:!c,onClick:l,type:"button",children:[en("span",{className:"flex items-center gap-2",children:[zn("span",{"aria-hidden":"true",className:"text-base leading-none",children:"+"}),A]}),k&&en("span",{"aria-hidden":"true",className:"text-zinc-400 tabular-nums dark:text-zinc-500",children:[s.length," / ",f]})]})]})})}import{jsx as Yu}from"react/jsx-runtime";function Ra(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0,n=te(e.field.label,e.translations),r=te(e.field.description,e.translations);return Yu(Dt,{description:r,empty:t,id:e.field.name,title:n,children:e.children})}import{jsx as _n}from"react/jsx-runtime";function va({children:e,field:t,lang:n,onValueChange:r,translations:o,value:i}){return _n(zt,{container:t,fields:t.fields,children:_n(Ra,{field:t,translations:o,children:_n(ha,{field:t,lang:n,onValueChange:r,translations:o,value:i,children:e})})})}import{twMerge as qu}from"tailwind-merge";import{jsx as Sa,jsxs as Zu}from"react/jsx-runtime";function Ta(e){let t=Po(e.column?.advanced?.cols);return Zu("div",{className:"flex w-full flex-col gap-4",children:[Sa("div",{"data-slot":"column",className:qu("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&Sa(_t,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}import{Fragment as Wu}from"react";import{jsx as Ku}from"react/jsx-runtime";function Aa(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>ht(n)||ee(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:ae(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return Ku(Je,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:t,lang:e.lang,onValueChange:e.onValueChange,style:e.style,translations:e.translations,value:e.value,children:e.children})}import{jsx as Qe,jsxs as Xu}from"react/jsx-runtime";function Je(e){let{field:t,list:n}=e.components;return Nt(e.fields).map((r,o)=>Xu(Wu,{children:[ae(r)&&Qe(Ta,{column:r,config:e.config,context:e.context,translations:e.translations,children:Qe(Je,{...e,fields:r.fields})}),ht(r)&&Qe(t,{disabled:e.disabled,field:r,lang:e.lang,style:e.style,translations:e.translations,children:e.children}),ee(r)&&Qe(n,{field:r,lang:e.lang,onValueChange:e.onValueChange,translations:e.translations,value:e.value,children:i=>Qe(Aa,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:r,index:i,lang:e.lang,onValueChange:e.onValueChange,style:e.style,translations:e.translations,value:e.value,children:e.children})})]},o))}import{jsx as ju}from"react/jsx-runtime";function wa(e){return n=>ju(Je,{...n,components:e})}var Ca=wa({field:la,list:va});import{useSetAtom as Fa}from"jotai";import{startTransition as ka,useActionState as Ju}from"react";function Ia(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},s=Fa(ki),l=Fa(xi),u={data:null,error:null,success:!1},[c,p,f]=Ju(async(T,y)=>{let[A,k]=e(),P=Uo(A,k,a);if(i===!1)return t?await t(y,P):T;let V=Dr(y),K=ec(V,k),N=P.safeParse(K);if(!N.success){let L=Ho(N.error);return ka(()=>{s(L)}),Bn(V,{description:Z("Please correct the errors and try again.",a),details:[],title:Z("There were validation errors submitting the form.",a)})}let I=Or(N.data);if(t)try{let L=await t(I,P);return L.success?(r?.(L.data),o||ka(()=>{l()}),Na(I,o)):Bn(I,L.error)}catch(L){return Be.error("Error executing form action:",L),Bn(I,{title:Z("An unexpected error occurred submitting the form.",a),details:Qu(L,a)})}return Na(N.data,o)},u);return[p,c,f]}function Qu(e,t){return e instanceof Error?[e.message]:[Z("Unknown error",t)]}function Na(e,t=!1){return{data:t?e:null,error:null,success:!0}}function Bn(e,t){return{data:e,error:t,success:!1}}function ec(e,t){let n={...e};for(let r of t)if(q(r)&&typeof n[r.name]=="string"&&n[r.name]){let o=wt(n[r.name],se(r));o&&(n[r.name]=o)}return n}import{useMemo as nc}from"react";import{useCallback as Gn,useRef as La}from"react";import{useCallback as tc}from"react";import{useSetAtom as $n}from"jotai";function Ea(){let e=$n(Fi),t=$n(hi),n=$n(Hi);return tc((r,o)=>{let i=Array.isArray(r)?r:[r];e(i),n(i),o?.keepValue||t(i)},[e,n,t])}function Pa(){let e=Ea(),t=La({}),n=La([]),r=Gn((a,s,l)=>{a in t.current||(t.current[a]=s,n.current.push(l))},[]),o=Gn((a,s)=>{t.current[a]&&(delete t.current[a],n.current=n.current.filter(l=>l.name!==a),e([a],{keepValue:s?.keepValue}))},[e]);return[Gn(()=>[t.current,n.current],[]),r,o]}import{Fragment as rc,jsx as et,jsxs as oc}from"react/jsx-runtime";function Va(e){let t=nc(()=>co(e.lang,e.translations),[e.lang,e.translations]),[n,r,o]=Pa(),[i,a,s]=Ia(n,e.action,{onSuccess:e.onSuccess,validation:e.config.validation.submit,translations:t}),l=e.config.validation.showError&&!a.success&&a.error,u=a.data??e.value;return oc(rc,{children:[l&&Gt(e.config.alert,c=>et("div",{className:"mb-4 w-full",children:et(c,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),et(mi,{action:i,advanced:e.advanced,config:e.config,control:e.children,definition:e.definition,isPending:s,noValidate:!0,readOnly:e.readOnly,sections:e.sections,translations:t,children:({disabled:c,fields:p})=>et(Ca,{config:e.config,context:e.context,disabled:c,fields:p,lang:e.lang,onValueChange:e.onValueChange,style:e.config.style,translations:t,value:u,children:f=>et(Xi,{...f,config:e.config,context:e.context,getSchema:n,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:u})})})]})}import{Provider as ic}from"jotai";import{jsx as Da}from"react/jsx-runtime";function ac(e){return Da(ic,{children:Da(Va,{...e})})}function Oa(e,t){for(let n of e){if("name"in n&&typeof n.name=="string"){t.push(n.name);continue}"fields"in n&&Oa(n.fields??[],t)}}function sc(e,t){let n=[];for(let o of e)Oa(o.fields??[],n);let r=t;for(let o of n)We(o,t).found||(r===t&&(r={...t}),r[o]=void 0);return r}export{ac as Form,sc as withDeclaredFields};
|
|
1
|
+
import{jsx as Ba}from"react/jsx-runtime";function qn(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return Ba("div",{"data-slot":"field-control",className:"w-full",children:t})}import{jsx as Kn}from"react/jsx-runtime";function Fe(e){return Kn("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",className:`size-4 transition-transform duration-200 ${e.expanded?"rotate-90":""}`,children:Kn("path",{fillRule:"evenodd",d:"M8.22 5.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.75.75 0 0 1-1.06-1.06L11.94 10 8.22 6.28a.75.75 0 0 1 0-1.06Z",clipRule:"evenodd"})})}import{Activity as Ga}from"react";import{createContext as $a}from"react";var Ne=$a(!1);import{jsx as Zn}from"react/jsx-runtime";function _e({children:e,visible:t}){return Zn(Ga,{mode:t?"visible":"hidden",children:Zn(Ne,{value:!0,children:e})})}var st="input",Wn="input/date",Xn="input/email",jn="input/number",Jn="input/time";var Qn="textarea",er="radio",tr="checkbox",ln="list",nr="select",rr="select/active",or="select/day",ir="select/month",ar="select/timezone",sr="select/year";var lr="chips",ur="chips/day",cr="chips/month",Be="column",dr="description",un="fields",fr="label",K="value",lt="options",cn="email",mr="number",gr="password",pr="tel",$e="text",yr="aria-errormessage",br="aria-invalid",xr="data-invalid",hr="data-readonly",Rr="aria",vr="data",ut="max",Sr="maxLength",ct="min",Tr="minLength",Ie="$ref",Ar="source",wr="state",dt="http://luna.internal",Cr="type",kr={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};import{format as Ua,formatDistanceToNow as Nr,formatDuration as Ha,intervalToDuration as Ya,isValid as mt,parseISO as qa}from"date-fns";import{enUS as Ir,es as fn}from"date-fns/locale";function m(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function ft(e){return Array.isArray(e)&&e.every(m)}function $(e){return e==null||e===""}function j(e){return g(e)||typeof e=="number"||dn(e)}function Ge(e){return Array.isArray(e)&&e.every(j)}function g(e){return typeof e=="string"}function Fr(e){return m(e)&&"url"in e}function dn(e){return typeof e=="boolean"}var Er={en:Ir,"en-US":Ir,es:fn,"es-ES":fn,"es-MX":fn},Ka={short:"M/d/yy",medium:"MMM d, yyyy",long:"MMMM d, yyyy",full:"EEEE, MMMM d, yyyy"},Za={ms:1,s:1e3,min:6e4,h:36e5,d:864e5};function Lr(e){if(e)return Er[e]??Er[e.split("-")[0]]}function gt(e){if(typeof e=="number"&&!Number.isNaN(e))return e;if(g(e)&&e.trim()!==""){let t=Number(e);return Number.isNaN(t)?null:t}return null}function Vr(e,t,n){let r=Za[t];if(r===void 0)return String(e);let o=e*r,i=Ya({start:0,end:o});return Ha(i,{locale:n})}function Pr(e){if(e instanceof Date)return mt(e)?e:null;if(g(e)){let t=qa(e);if(mt(t))return t;let n=new Date(e);return mt(n)?n:null}if(typeof e=="number"){let t=new Date(e);return mt(t)?t:null}return null}var Wa={currency:(e,t,n)=>{let r=gt(e);if(r===null)return String(e);let o=t[0]??"USD";return new Intl.NumberFormat(n.locale,{style:"currency",currency:o}).format(r)},percent:(e,t,n)=>{let r=gt(e);return r===null?String(e):new Intl.NumberFormat(n.locale,{style:"percent"}).format(r)},number:(e,t,n)=>{let r=gt(e);return r===null?String(e):new Intl.NumberFormat(n.locale).format(r)},date:(e,t,n)=>{let r=Pr(e);if(!r)return String(e);let o=t[0]??"short",i=Lr(n.locale);if(o==="relative")return Nr(r,{addSuffix:!0,locale:i});let a=Ka[o]??o;return Ua(r,a,{locale:i})},duration:(e,t,n)=>{let r=Lr(n.locale);if(typeof e=="number")return Vr(e,t[0]??"ms",r);if(g(e)){let i=gt(e);if(i!==null)return Vr(i,t[0]??"ms",r)}let o=Pr(e);return o?Nr(o,{addSuffix:!0,locale:r}):String(e)}};function Dr(e,t,n){let r=t.split(":").map(s=>s.trim()).filter(s=>s.length>0);if(r.length===0)return;let[o,...i]=r,a=Wa[o];if(a)return a(e,i,n)}var Xa=/^\d+$/;function gn(e,t=[],n=K){return Ge(e)?{value:e}:Array.isArray(t)?t.find(r=>{let o=pn(r,n);if(o!==void 0&&`${o}`==`${e}`)return r})??{value:e}:{value:e}}function pn(e,t=K){if(e!=null){if(Ge(e)||j(e))return e;if(m(e)){let n=ja(e,t);if(j(n))return n}}}function ja(e,t){let n=z(e,t);if(j(n))return n}function Or(e,t){if(Array.isArray(e))return e;let n=z(e,t);return Array.isArray(n)?n:null}function z(e,t){if(!t||!m(e))return null;let n=t.split(".").filter(o=>o!=="");if(n.length===0)return null;let r=e;for(let o of n)if(m(r)&&o in r)r=r[o];else if(Array.isArray(r)){let i=Number(o);if(!Number.isInteger(i)||i<0||i>=r.length)return null;r=r[i]}else return null;return r}function yn(e,t={description:dr,label:fr,value:K}){return e.map(n=>{if(m(n)){let r=z(n,t.label),o=z(n,t.value);if(j(r)&&j(o)){let i=z(n,t.description);return{label:`${r}`,value:`${o}`,...j(i)&&{description:`${i}`}}}}return n})}function Mr(e=$e){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==st?n.trim().toLowerCase():$e}function zr(e){let t={};for(let n of e.keys()){let r=e.getAll(n);t[n]=r.length>1?r:r[0]}return t}function _r(e){let t={};for(let n of Object.keys(e)){let r=n.split(".");if(r.length===1){t[n]=e[n];continue}let o=t;for(let a=0;a<r.length-1;a++){let s=r[a],l=r[a+1],u=Xa.test(l);s in o||(o[s]=u?[]:{}),o=o[s]}let i=r[r.length-1];o[i]=e[n]}return mn(t),t}function mn(e){for(let t of Object.keys(e)){let n=e[t];if(Array.isArray(n)){let r=n.filter(o=>o!==void 0);for(let o of r)m(o)&&mn(o);e[t]=r}else m(n)&&mn(n)}}var Ja=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g,Qa=/{([^}]{1,200})}/,es=/{([^}]{1,200})}/g,ts=/^{([^}|]{1,200})}$/;function ae(e,t={},n={}){if(g(e))return rs(e,t,n);if(Array.isArray(e))return e.map(r=>ae(r,t,n));if(m(e)){let r={};for(let o in e)r[o]=ae(e[o],t,n);return r}return e}function Br(e,t={},n={}){if(g(e)){let r=ns(e,t);if(r!==void 0)return r}return ae(e,t,n)}function Ue(e,t={},n={}){return ve(e)?ae(e,t,n):e}function ve(e){return g(e)?Qa.test(e):Array.isArray(e)?e.some(t=>ve(t)):m(e)?Object.values(e).some(t=>ve(t)):!1}function $r(e,t){return t.includes(".")?z(e,t):e[t]}function ns(e,t){let n=ts.exec(e);if(!n)return;let r=n[1].trim();if(!r)return;let o=$r(t,r);if(m(o)||Array.isArray(o))return o}function rs(e,t={},n={}){return e.replace(es,(r,o)=>{let i=String(o).split("|").map(c=>c.trim()),[a,...s]=i;if(!a)return r;let l=$r(t,a);if(s.length===0)return j(l)?String(l):r;if(l==null)return r;let u=l;for(let c of s){let p=Dr(u,c,{locale:n.locale});if(p===void 0)return r;u=p}return String(u)})}function Gr(e,t){if(!g(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Ja.exec(e))!==null;){let[a,s,l]=n,u=n.index;o=!0,u>r&&i.push(e.substring(r,u));let c=t?t(u,l,s):a;i.push(c),r=u+a.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var He={error:(...e)=>{bn()&&!xn()&&pt().error("[Luna Form]",...e)},warn:(...e)=>{bn()&&!xn()&&pt().warn("[Luna Form]",...e)},info:(...e)=>{bn()&&!xn()&&pt().info("[Luna Form]",...e)}},bn=()=>typeof pt()<"u",xn=()=>!0,pt=()=>globalThis.console;function Ur(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===K&&n.push(i),i.action===Ar&&r.push(i),i.action===wr&&o.push(i);t({sources:r,states:o,values:n})}function Hr(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(Fr(i)){let a=ae(i.url,e),s=i.body?ae(i.body,e):i.body;n(o,{...i,url:a,body:s})}}}var Se={eq:ls,gt:fs,gte:ms,in:cs,lt:gs,lte:ps,neq:us,nin:ds,contains:ys,exists:qr,empty:bs,truthy:xs},os=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,Yr=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function is(e){return typeof e=="string"&&os.test(e)}function as(e){return typeof e=="string"&&Yr.test(e)}function ss(e){let t=e.match(Yr);if(t){let[,n,r,o,i,a,s]=t;return new Date(Number(o),Number(r)-1,Number(n),Number(i??0),Number(a??0),Number(s??0)).getTime()}return NaN}function me(e){return is(e)?new Date(e).getTime():as(e)?ss(e):Number(e)}function ls(e,t){return e===t}function us(e,t){return e!==t}function cs(e,t){return Array.isArray(t)&&t.includes(String(e))}function ds(e,t){return Array.isArray(t)&&!t.includes(String(e))}function fs(e,t){return me(e)>me(t)}function ms(e,t){return me(e)>=me(t)}function gs(e,t){return me(e)<me(t)}function ps(e,t){return me(e)<=me(t)}function ys(e,t){return typeof e=="string"?e.includes(String(t)):Array.isArray(e)?e.map(String).includes(String(t)):!1}function qr(e){return Array.isArray(e)?e.length>0:e!=null&&e!==""}function bs(e){return!qr(e)}function xs(e){return Array.isArray(e)?e.length>0:!!e}function Ee(e,t){if(t===void 0)return!0;if(g(t)){let n=yt(e,K);return Array.isArray(n)?n.length===1&&n[0]===t:n===t}if(dn(t)){let n=yt(e,K);return(Array.isArray(n)?n.length>0:!!n)===t}if(Array.isArray(t)){let n=yt(e,K);return Array.isArray(n)?n.some(r=>t.includes(String(r))):t.includes(String(n))}return hs(e,t)}function hs(e=null,t){let n=yt(e,t.field??K),{operator:r="eq",value:o}=t,i=Se[r];return i?i(n,o):!1}function yt(e,t){return m(e)?z(e,t):e}function Kr(e=null,t=[],n){for(let r of t){let{target:o,state:i,when:a}=r,s=Array.isArray(o)?o:[o];if(!e){n(s);continue}let l=Ee(e,a);n(s,l?i:void 0)}}function Zr(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?Br(i,e):void 0,{onlyIfTargetEmpty:r.onlyIfTargetEmpty??!1})}var Ye=e=>I(rr)(e),Wr=e=>I(or)(e),bt=e=>I(ir)(e),xt=e=>I(sr)(e),Xr=e=>I(ar)(e),ht=e=>I(ur)(e),Rt=e=>I(cr)(e),Z=I(Wn),se=I(Jn),U=I(tr),J=I(lr),le=I(er),ge=I(st),Q=I(nr),hn=I(Qn),jr=I($e,cn,gr,pr),Jr=I(Xn,cn),vt=I(jn,mr);function St(e){return le(e)||U(e)}function ee(e){return e.type===ln}function ue(e){return e.type===Be}function Tt(e){return e.type!==Be&&e.type!==ln}function Le(e){return Q(e)||le(e)||J(e)}function Qr(e){return ge(e)||hn(e)}function A(e){return e!=null&&e!==""}function I(...e){return t=>{let n=g(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function eo(e,t={}){if(Q(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&m(n))return[n]}}function to(e){return le(e)||U(e)?!0:e.advanced?.horizontal}function no(e){return U(e)?e.advanced?.reverse!==!1:!1}function ro(e,t){let n=e.readonly??!1;return t||n}function At(e){if(Rs(e)){let t=e.source;if(Array.isArray(t)||m(t)&&!(Ie in t))return t}}function oo(e){return Array.isArray(At(e))}function Rs(e){return le(e)||J(e)||Q(e)&&!e.disabled}import{isValid as wt,parse as Ct,format as kt}from"date-fns";var vs=/^\d+$/,Ft=new Date(2e3,0,1),Ss=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[],Rn="default";function so(e){if(!e)return Rn;try{return Intl.getCanonicalLocales(e)[0]??Rn}catch{return Rn}}function vn(e){let t=so(e);return Array.from({length:12},(n,r)=>({value:(r+1).toString(),label:new Date(0,r).toLocaleString(t,{month:"long"})}))}function Sn(e){let t=so(e);return Array.from({length:7},(n,r)=>({value:r.toString(),label:new Date(2e3,0,2+r).toLocaleString(t,{weekday:"long"})}))}function lo(e,t){return t>=e?Array.from({length:t-e+1},(n,r)=>{let o=e+r;return{value:o.toString(),label:o.toString()}}):[]}function Tn(){return new Date().getFullYear()}function Ts(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function As(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return kr[n]??"Other"}function ws(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function io(e,t){let n=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"longOffset"}).formatToParts(t),r=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"long"}).formatToParts(t),i=(n.find(s=>s.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),a=ws(r,e);return{offset:i,longName:a}}function ao(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function uo(){let e=new Date,t=Ts(),n=new Map,r=ao(t),{offset:o,longName:i}=io(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let l of Ss()){if(l===t)continue;let u=ao(l),{offset:c,longName:p}=io(l,e),f={value:l,label:`${u} - ${p} (${c})`},R=As(l);if(R==="Other")continue;let b=n.get(R);b?b.push(f):n.set(R,[f])}for(let l of n.values())l.sort((u,c)=>u.label.localeCompare(c.label));let s=Array.from(n.entries()).sort(([l],[u])=>l.localeCompare(u)).map(([l,u])=>({label:l,items:u}));return[{label:"Suggested",items:[a]},...s]}function An(e,t){if(typeof e=="number")return e;let n=t??Tn(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,a]=o,s=parseInt(a,10);if(!isNaN(s))return i==="+"?n+s:n-s}return n}return vs.test(r)?parseInt(r,10):n}function Nt(e,t){if(!e)return"";try{let n=Ct(e,t,Ft);return wt(n)?kt(n,"yyyy-MM-dd"):""}catch{return""}}function co(e,t){if(!e)return"";try{let n=Ct(e,t,Ft);return wt(n)?kt(n,"HH:mm:ss"):""}catch{return""}}function fo(e,t="HH:mm"){if(!e)return"";try{let n=e.split(":").length===3?"HH:mm:ss":"HH:mm",r=Ct(e,n,Ft);return wt(r)?kt(r,t):""}catch{return""}}function It(e,t="MMMM d, yyyy"){if(!e)return"";try{let n=Ct(e,"yyyy-MM-dd",Ft);return wt(n)?kt(n,t):""}catch{return""}}function Te(e){return e.advanced?.format??"HH:mm"}function ce(e){return e.advanced?.format??"MMMM d, yyyy"}var Cs={es:{"(Optional)":"(Opcional)","Add item":"A\xF1adir elemento","An unexpected error occurred submitting the form.":"Ocurri\xF3 un error inesperado al enviar el formulario.","Collapse {label} {index}":"Contraer {label} {index}","Expand {label} {index}":"Expandir {label} {index}","Please correct the errors and try again.":"Corrige los errores e int\xE9ntalo de nuevo.","Remove {label} item {index}":"Eliminar {label} {index}","There were validation errors submitting the form.":"Se encontraron errores de validaci\xF3n al enviar el formulario.","Unknown error":"Error desconocido",No:"No",Yes:"S\xED"}};function W(e,t){return w(e,t)}function go(e,t){let n=t?.[e??""],r=e?Cs[ks(e)]:void 0;return r?n?{...r,...n}:r:n}function ks(e){return e.toLowerCase().split(/[-_]/)[0]}function w(e,t){return e?t?t[e]??e:e:""}function te(e,t){return e?w(e,t):void 0}function qe(e,t){if(!t)return e;let n=!1,r=e.map(o=>{let i=Fs(o,t);return i!==o&&(n=!0),i});return n?r:e}function Fs(e,t){if(!m(e))return e;let n=mo(e.label,t),r=e.items;if(Array.isArray(r)){let i=qe(r,t);return i===r&&n===e.label?e:{...e,...n!==void 0&&{label:n},items:i}}let o=mo(e.description,t);return n===e.label&&o===e.description?e:{...e,...n!==void 0&&{label:n},...o!==void 0&&{description:o}}}function mo(e,t){return g(e)?w(e,t):e}var Et=Tn();function yo(e,t){if(J(e))return Ns(e,t?.lang)}function Ns(e,t){if(ht(e))return Sn(t);if(Rt(e))return vn(t)}function bo(e,t){if(Q(e))return Is(e,t)}function Is(e,t){let{lang:n,translations:r}=t??{};if(Wr(e))return Sn(n);if(bt(e))return vn(n);if(xt(e)){let o=e.advanced?.length?.min??Et,i=e.advanced?.length?.max??Et+5;return lo(An(o,Et),An(i,Et))}if(Xr(e))return uo();if(Ye(e))return qe([{value:"true",label:"Yes"},{value:"false",label:"No"}],r)}function xo(e,t=!1,n){let r={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return ge(e)?{...r,...Es(e)}:Q(e)?{...r,...ho(bo(e,n))}:hn(e)?{...r,...Vs(e)}:J(e)?{...r,...Ls(e,n)}:r}function Es(e){let t=Mr(e.type),n={...e,type:t};return{...Ds(e),...Ro(e),...Ps(n),...jr(n)?vo(n):{},type:t}}function ho(e){return e?{options:e}:{}}function Ls(e,t){let n=ho(yo(e,t)),r=e.advanced?.multiple??!0;return{...n,multiple:r}}function Vs(e){return{...Ro(e),...vo(e)}}function Ro(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Ps(e){return vt(e)?Os(e):{}}function Ds(e){if(se(e)){let t=Te(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function vo(e){return So(e,{min:Tr,max:Sr})}function Os(e){return So(e,{min:ct,max:ut})}function So(e,t){let n={},r=e.advanced?.length;return r&&(r.min!==void 0&&(n[t.min]=r.min),r.max!==void 0&&(n[t.max]=r.max)),n}function To(e,t){let n=At(e);return n||eo(e,t)}function Ms(e,t){let n=m(t)&&e.name in t?t[e.name]:t,r=pn(n,e.advanced?.entity),o=A(r)?r:e.defaultValue;return se(e)&&A(o)?zs(e,o):Z(e)&&A(o)?Gs(e,o):o}function zs(e,t){let n=Te(e);return g(t)?co(t,n):t}function _s(e,t,n){return Le(e)&&Array.isArray(n)?{...t,[lt]:n}:t}function Bs(e,t,n){if(e.required&&!A(n)&&Q(e)&&e.advanced?.preselected!==!1&< in t){let r=t[lt];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function $s(e,t,n){if(Le(e)&&Array.isArray(t)){let r=yn(t,e.advanced?.options);return oo(e)?qe(r,n):r}return t}function Ao(e,t,n,r,o){let i=Ms(e,r),a=Array.isArray(n)?$s(e,n,o):n,s=_s(e,t,a),l=Bs(e,s,i);return{commonPropsWithOptions:s,defaultValue:l}}function wo(e,t){return U(e)?{checked:!!t}:J(e)?{value:Array.isArray(t)?t:[]}:Z(e)&&g(t)&&A(t)?{value:It(t,ce(e))}:Ye(e)?{value:A(t)?String(t):""}:{value:t??""}}function Gs(e,t){let n=ce(e);return g(t)?Nt(t,n):t}function Co(e,t){let n=e??t;return n?{"data-format":n}:{}}function po(e){let t=[];for(let n of e){if(typeof n=="string"){t.push(n);continue}m(n)&&"value"in n&&"label"in n&&g(n.value)&&g(n.label)&&t.push({label:n.label,value:n.value})}return t}function ko(e,t){if(!Le(e))return;let n=J(e)?yo(e,t):bo(e,t);if(Array.isArray(n)){let o=po(n);return o.length>0?o:void 0}let r=At(e);if(Array.isArray(r)){let o=yn(r,e.advanced?.options),i=po(qe(o,t?.translations));return i.length>0?i:void 0}}function Fo(e,t){let n=String(e);for(let r of t)if(typeof r=="string"){if(r===n)return r}else if(r.value===n)return r.label;return n}var Us=/^#\/definition\//;function Vt(e=[],t){let n=Lt(e,t);return Array.isArray(n)?n.filter(Ys).sort((r,o)=>No(r)-No(o)):[]}function Lt(e,t,n=new Map,r=new WeakSet){if(!Hs(t)||!e||typeof e!="object")return e;if(n.has(e))return n.get(e);if(r.has(e))return e;if(r.add(e),Array.isArray(e))return e.map(i=>Lt(i,t,n,r));if(Ie in e&&g(e[Ie])){let i=e[Ie].replace(Us,""),a=z(t,i);return a!==null?Lt(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=Lt(a,t,n,r);return r.delete(e),n.set(e,o),o}function Io(e){return Object.entries(e??{})}function No(e){return e.order??Number.MAX_VALUE}function Hs(e){return e!==void 0&&m(e)&&Object.keys(e).length>0}function Ys(e){return Cr in e?!0:Array.isArray(e[un])?e[un].length>0:!0}function Eo(e,t){let n={};for(let[r,o]of Io(t))n[`${e}-${r}`]=o;return n}function qs(e){return Eo(Rr,e)}function Ks(e){return Eo(vr,e)}function Lo(e,t){let n=qs(e.advanced?.aria);return t&&t.length>0&&(n[br]="true",n[yr]=`${e.name}-error`),n}function Vo(e){return Ks(e.advanced?.data)}var Po={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Do={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function Oo(e,t=2){return Po[e&&e in Po?e:t]}function Mo(e){if(e&&e in Do)return Do[e]}function wn(e){return{min:e.advanced?.length?.min??1,max:e.advanced?.length?.max??1/0}}function Pt(e){let t=[];for(let n of e)if(ue(n))for(let r of n.fields)t.push(r);else t.push(n);return t}function Zs(e,t){let n=t?z(t,e.name):null;return Go(e,Array.isArray(n)?n.length:0)}function zo(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===Be}function _o(e,t){let n=Zs(e,t);return Array.from({length:n},(r,o)=>o)}function Bo(e){return e.advanced?.title??e.label??e.name}function $o(e){let t={};for(let n of Pt(e))ee(n)||(t[n.name]=n);return t}function Go(e,t){let{min:n,max:r}=wn(e);return Math.min(Math.max(t,n),r)}function Cn(e,t){let n=Pt(e.fields),r=Go(e,t.length),o=[];for(let i=0;i<r;i++){let a=t[i],s={};for(let l of n){let u=a?.[l.name];s[l.name]=ee(l)?Cn(l,ft(u)?u:[]):u}o.push(s)}return o}function Dt(e,t){if(!e.includes("/"))return e;let[n,r]=e.split("/"),o=new RegExp(`(^|.*\\.)(${n}\\.\\d+\\.)`),i=t.match(o);return i?`${i[0]}${r}`:r}import{z as C}from"zod";var Ws=[[U,Uo],[Jr,Xs],[vt,Qs],[le,js],[Ye,Uo],[bt,tl],[xt,el],[J,kn],[ht,kn],[Rt,kn]];function qo(e,t=[],n){let r=C.object(e);if(t.length===0)return r;let o=il(r,t,n);return ll(o,t,n)}function Ko(e){let t={},n=C.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function Zo(e,t){for(let[n,r]of Ws)if(n(e))return r(e,t);return Js(e,t)}function Xs(e,t){let n=C.string().trim();if(e.required){let r=pe(e,t),o=n.min(1,r).pipe(Ho(e,t));return C.preprocess(i=>$(i)?"":i,o)}return n.pipe(Ho(e,t)).or(C.literal("")).nullable()}function Uo(e,t){let n=C.preprocess(r=>{if(typeof r=="string"){if(r==="true")return!0;if(r==="false")return!1}return r},C.coerce.boolean());return e.required?(U(e)?n=n.refine(r=>r===!0,{message:pe(e,t)}):n=n.refine(r=>typeof r=="boolean",{message:pe(e,t)}),C.preprocess(r=>r===null?!1:r,n)):n.nullable()}function js(e,t){let n=C.coerce.string();return e.required?(n=n.min(1,pe(e,t)),C.preprocess(r=>$(r)?"":r,n)):n.or(C.literal("")).nullable()}function Js(e,t){let n=C.coerce.string().trim();return n=Wo(n,e,t),e.required?(n=Xo(n,e,t),C.preprocess(r=>$(r)?"":r,n)):n.nullable()}function Qs(e,t){let n=C.coerce.number().int();return n=Wo(n,e,t),e.required?(n=Xo(n,e,t),C.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function el(e,t){return e.required?C.preprocess(nl,C.coerce.number({message:pe(e,t)}).int()):C.coerce.number().int().nullable()}function tl(e,t){let n=pe(e,t),r=C.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function nl(e){return e===null||e===""?void 0:e}function Ho(e,t){let n=e.validation?.email?w(e.validation?.email,t):void 0;return C.email(n)}function Wo(e,t,n){return e=rl(e,t,n),e=ol(e,t,n),e}function Xo(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,pe(t,n)):e}var rl=(e,t,n)=>jo(e,t,ct,n),ol=(e,t,n)=>jo(e,t,ut,n);function jo(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?w(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function il(e,t=[],n){let r=sl(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:s}of r)if(!al(o,a,s)){let l=w(s.message,n);i.addIssue({code:"custom",message:l,path:[a]})}})}function al(e,t,n){let r=n.operator??"eq",o=Se[r];return o?o(Ot(e,t),Ot(e,n.field)):!1}function sl(e){let t=[];for(let n of e){let r=n.validation?.custom;if(!r)continue;let o=Array.isArray(r)?r:[r];for(let i of o)t.push({name:n.name,rule:i})}return t}function Jo(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let s=a.operator??"eq",l=Se[s];if(l&&!l(e,n(a.field))&&a.message){let u=w(a.message,r);o.push(u)}}return o}function pe(e,t){return e.validation?.required?w(e.validation?.required,t):void 0}function kn(e,t){let n=C.array(C.string());return e.required&&(n=n.min(1,pe(e,t))),C.preprocess(r=>$(r)?[]:Array.isArray(r)?r.map(String):[String(r)],n)}function ll(e,t=[],n){let r=t.filter(ul);return r.length===0?e:e.superRefine((o,i)=>{let a=m(o)?o:{};for(let s of r)for(let l of cl(a,s,n))i.addIssue({code:"custom",path:l.path,message:l.message})})}function ul(e){let t=e.validation;return t!==void 0&&(t.requiredWhen!==void 0||t.pattern!==void 0||t.rules!==void 0)}function cl(e,t,n){let r=[],o=Ot(e,t.name),i=t.validation?.requiredWhen;if(i){let l=(Array.isArray(i)?i:[i]).find(u=>Ke(e,u));l&&!Fn(o)&&r.push({path:[t.name],message:te(l.message??t.validation?.required,n)})}let a=t.validation?.pattern;a&&!Qo(a,o)&&r.push({path:[t.name],message:te(a.message,n)});for(let s of t.validation?.rules??[])dl(e,s.when)&&!fl(s,o)&&r.push({path:[t.name],message:te(s.message,n)});return r}function Ke(e,t){let n=Se[t.operator??"eq"];return n?n(Ot(e,t.field),t.value):!1}function Ot(e,t){return t in e?e[t]:z(e,t)??void 0}function dl(e,t){if(!t)return!0;if(Array.isArray(t))return t.every(o=>Ke(e,o));if("field"in t)return Ke(e,t);let n=t.all?t.all.every(o=>Ke(e,o)):!0,r=t.any?t.any.some(o=>Ke(e,o)):!0;return n&&r}function fl(e,t){switch(e.assert){case"required":return Fn(t);case"minItems":return Array.isArray(t)&&t.length>=Number(e.value);case"maxItems":return Array.isArray(t)&&t.length<=Number(e.value);case"min":return Yo(t)>=Number(e.value);case"max":return Yo(t)<=Number(e.value);case"oneOf":return Array.isArray(e.value)&&e.value.map(String).includes(String(t));case"pattern":return gl(e.value)?Qo(e.value,t):!0;default:return!0}}function Qo(e,t){return!Fn(t)||typeof t!="string"||e.allowInterpolation&&(ve(t)||ml(t))?!0:new RegExp(e.regex,e.flags).test(t)}function ml(e){return g(e)&&e.trimStart().startsWith("@")}function Fn(e){return g(e)?e.trim().length>0:Se.exists(e,void 0)}function Yo(e){return typeof e=="number"?e:g(e)||Array.isArray(e)?e.length:0}function gl(e){return m(e)&&"regex"in e}function ei(e,t){if(!t||!yl(e))return!0;if(t.length===0)return!1;try{let n=new URL(e),r=n.protocol.replace(":",""),o=n.hostname,i=n.port||pl(r);return t.some(a=>!(a.protocol&&a.protocol!==r||a.hostname&&a.hostname!==o||a.port!==void 0&&String(a.port)!==i))}catch{return!1}}function pl(e){return e==="https"?"443":"80"}function yl(e){return/^(https?:)?\/\//.test(e)}function ti(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,dt);new URL(t,dt).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(dt,""):o}catch{return t||e}}function ni(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=ti(t.url,n.url),o=bl(t,n),i=xl(t,n);return{...t,...n,url:r,body:o,headers:i}})}function bl(e,t){return m(t.body)&&m(e?.body)?{...e.body,...t.body}:t.body??e?.body}function xl(e,t){return m(t.headers)&&m(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function Mt(e,t){let n={...e};for(let r of Object.keys(t??{})){let o=t?.[r];o!==void 0&&(n[r]=o)}return n}var hl={uppercase:e=>e.toUpperCase(),lowercase:e=>e.toLowerCase(),"remove-space":e=>e.replace(/\s+/g,""),"remove-accent":e=>e.normalize("NFD").replace(/[\u0300-\u036f]/g,"")};function Ze(e,t){return!t||!g(e)||$(e)?e:(Array.isArray(t)?t:[t]).reduce((r,o)=>{let i=hl[o];return i?i(r):r},e)}import{jsx as Rl}from"react/jsx-runtime";function de(e){return Gr(e,(t,n,r)=>Rl("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}import{useCallback as vl,useState as Sl}from"react";import{jsx as We,jsxs as Nn}from"react/jsx-runtime";function ri(e){let{fields:t=[]}=e.section,[n,r]=Sl(!1),o=vl(()=>r(i=>!i),[]);return Nn("fieldset",{"data-slot":"field-set","data-advanced":"true","data-expanded":n,"data-empty":t.length===0,className:"flex flex-col",id:e.section.id?.toString(),children:[We("legend",{children:Nn("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-zinc-600 dark:text-zinc-400",onClick:o,type:"button",children:[We(Fe,{expanded:n}),We("span",{children:de(e.title)})]})}),We(_e,{visible:n,children:Nn("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-zinc-300 pl-4 dark:border-zinc-600","data-slot":"field-set-content",children:[e.description&&We("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:de(e.description)}),e.group]})})]})}import{jsx as zt,jsxs as oi}from"react/jsx-runtime";function ii(e){let t=oi("div",{className:"flex flex-col",children:[e.title&&zt("legend",{className:"mb-3 font-medium text-zinc-800 dark:text-zinc-200",children:de(e.title)}),e.description&&zt("p",{className:"-mt-2 text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:de(e.description)})]});return e.step?oi("div",{className:"flex flex-row items-start gap-4",children:[zt("div",{className:"bg-primary text-primary-foreground flex size-6 shrink-0 items-center justify-center rounded-full",children:zt("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}import{jsx as ai,jsxs as Tl}from"react/jsx-runtime";function _t(e){return Tl("fieldset",{className:"flex w-full min-w-0 flex-col data-[empty=false]:gap-6","data-empty":e.empty,"data-slot":"field-set",id:e.id,children:[ai(ii,{description:e.description,step:e.step,title:e.title}),ai("div",{className:"w-full min-w-0",children:e.children})]})}import{jsx as Al}from"react/jsx-runtime";function ye(e){return Al("div",{"data-slot":"field-group","data-compact":e.compact,className:"flex w-full flex-col gap-8 data-[compact=true]:gap-3",children:e.children})}import{jsx as In}from"react/jsx-runtime";function si(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=Mt(e.style,{compact:e.section.advanced?.compact}),o=In(ye,{compact:r,children:e.children});if(!e.section.title&&!e.section.description)return o;let i=te(e.section.title,e.translations),a=te(e.section.description,e.translations);return e.section.advanced?.collapsible?In(ri,{description:a,group:o,section:e.section,title:i}):In(_t,{description:a,empty:t.length===0,id:e.section.id?.toString(),step:n,title:i,children:o})}import{jsx as li}from"react/jsx-runtime";function ui(){return li("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:li("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-zinc-200 dark:bg-zinc-800"})})}import{useAtomValue as Nl}from"jotai";import{atom as Ae}from"jotai";import{atomFamily as ci}from"jotai-family";import{deepEqual as En}from"fast-equals";function Xe(e,t){let{[t]:n,...r}=e;return r}function wl(e){return ci(t=>Ae(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];En(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,Xe(i,t))}))}function Cl(e){return Ae(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function kl(e){return Ae(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let s of r)s in i&&(delete i[s],a=!0);a&&n(e,i)})}function Fl(e){return Ae(null,(t,n,r)=>{let o=t(e);En(o,r)||n(e,r)})}function di(e,t={}){let{merge:n,validateTarget:r}=t;return ci(o=>Ae(i=>{let a=i(e)[o];if(a&&n)return n(Object.values(a))},(i,a,s,l)=>{if(r&&!r(s))return;let u=i(e),c={...u[s]??{}};if(l!=null){let p=c[o];(!p||!En(p,l))&&(c[o]=l,a(e,{...u,[s]:c}))}else o in c&&(delete c[o],Object.keys(c).length===0?a(e,Xe(u,s)):a(e,{...u,[s]:c}))}))}function fi(e){return Ae(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let s of r)s in i&&(delete i[s],a=!0);for(let s in i){let l={...i[s]},u=!1;for(let c of r)c in l&&(delete l[c],u=!0,a=!0);u&&(Object.keys(l).length===0?delete i[s]:i[s]=l)}a&&n(e,i)})}function fe(e={}){let t=Ae(e);return{atom:t,clearAll:Cl(t),clear:kl(t),bulkReport:Fl(t),report:wl(t)}}var mi=fe(),Bt=mi.atom,$t=mi.report;function Il(e,t){return e.fields.every(n=>gi(n,t))}function gi(e,t){return t[e.name]?.hidden??e.hidden??!1}function El(e,t){return ue(e)?Il(e,t):gi(e,t)}function Gt(e){let t=Nl(Bt);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>El(r,t))?null:e.children}import{jsx as je,jsxs as pi}from"react/jsx-runtime";function yi(e){let t=Vt(e.sections,e.definition);return je("div",{className:"h-full w-full",children:je("form",{noValidate:e.noValidate,action:e.action,children:pi(ye,{children:[t.map((n,r)=>pi(Gt,{fields:n.fields??[],children:[je(si,{advanced:e.advanced,section:n,step:r+1,style:e.config.style,translations:e.translations,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.advanced?.separator&&je(ui,{})]},`key-${n.id}-${r}`)),e.control&&je(qn,{isPending:e.isPending,children:e.control})]})})})}import{jsx as Ll}from"react/jsx-runtime";function bi(e){return Ll("p",{className:"-mt-2 text-xs leading-normal font-normal text-zinc-600 dark:text-zinc-400 [[data-slot=column]_&]:md:line-clamp-2",title:e.title,children:e.children})}import{useState as Vl}from"react";import{jsx as xi,jsxs as hi}from"react/jsx-runtime";function Ut(e){let t={context:e.context,env:e.config?.env,value:e.value},r={locale:e.config?.env?.locale},[o,i]=Vl(()=>m(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),a=()=>i(c=>!c),s=m(e.text)&&g(e.text.title)?de(w(Ue(e.text.title,t,r),e.translations)):void 0,l=w(Ue(g(e.text)?e.text:e.text?.message,t,r),e.translations),u=de(l);return u?hi("div",{className:"flex flex-col gap-2",children:[s&&hi("button",{className:"flex items-center gap-1 text-left text-xs font-medium text-zinc-700 hover:text-zinc-900 dark:text-zinc-300 dark:hover:text-zinc-100",onClick:a,type:"button",children:[s,xi(Fe,{expanded:o})]}),o&&xi(bi,{title:l,children:u})]}):null}import{atom as Ri}from"jotai";var Ht=fe(),G=Ht.atom,vi=Ht.clearAll,Si=Ht.clear,be=Ht.report,Ln=Ri({}),Vn=Ri(null);import{useAtomValue as Ti}from"jotai";import{jsx as Pl}from"react/jsx-runtime";function Yt(e){let t=Ti(be(e.field.name)),r=Ti($t(e.field.name))?.description??e.field.description;return Pl(Ut,{config:e.config,context:e.context,text:r,translations:e.translations,value:t})}import{twMerge as Dl}from"tailwind-merge";import{jsx as Ai,jsxs as Ol}from"react/jsx-runtime";function wi(e){let t=e.style?.showOptionalLabel??!0,n=le(e.field)||U(e.field);return Ol("label",{"data-slot":"field-label","data-normal":n,className:Dl("flex w-fit items-center text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal [[data-slot=column]_&]:md:w-full","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,title:g(e.children)?e.children:void 0,children:[Ai("span",{className:"[[data-slot=column]_&]:md:truncate",children:e.children}),t&&!e.field.required&&Ai("span",{className:"ml-2 flex-shrink-0 text-sm text-zinc-600 dark:text-zinc-400",children:W("(Optional)",e.translations)})]})}import{jsx as Ci,jsxs as Ml}from"react/jsx-runtime";function ki(e){let t={context:e.context,env:e.config?.env},n=e.config?.env?.locale,r=Ue(e.field.label,t,{locale:n});return Ml("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[Ci(wi,{field:e.field,style:e.config?.style,translations:e.translations,children:w(r,e.translations)}),e.horizontal===!0&&Ci(Yt,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}import{Fragment as zl,jsx as Fi,jsxs as _l}from"react/jsx-runtime";function Ni(e){return _l(zl,{children:[e.field.name&&e.field.label&&Fi(ki,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&Fi(Yt,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}function qt(e,t){return e?t(e):null}var Je={found:!1,value:void 0};function Qe(e,t){if(!Array.isArray(t)&&e in t)return{found:!0,value:t[e]};if(!e.includes("."))return Je;let n=e.split("."),r=t;for(let o of n){if(r==null)return Je;if(Array.isArray(r)){let i=Number(o);if(!Number.isInteger(i)||!(i in r))return Je;r=r[i]}else if(m(r)){if(!(o in r))return Je;r=r[o]}else return Je}return{found:!0,value:r}}function Y(e,t){return Qe(e,t).value}import{useCallback as ou,useEffect as iu,useRef as au}from"react";import{createContext as Bl}from"react";var $l=e=>e,xe=Bl($l);var Pn=fe(),Ii=Pn.clear,Ei=Pn.bulkReport,Kt=Pn.report;var Li=fe(),Zt=Li.atom,Vi=Li.report,Pi=fe(),et=Pi.atom,Di=Pi.report;import{use as Zl,useCallback as _i,useRef as tt,useTransition as Wl}from"react";import{use as Gl,useEffect as Ul,useEffectEvent as Oi,useMemo as Hl}from"react";function Mi(e,t,n,r){let{name:o}=e,i=Hl(()=>Zo(e,r),[e,r]),s=Gl(Ne)||e.keepValue===!0,l=Oi(c=>{c&&t(c,i,e)}),u=Oi(c=>{c&&n(c,{keepValue:s})});return Ul(()=>(l(o),()=>{u(o)}),[o]),i}import{useSetAtom as Ve,useStore as Xl}from"jotai";import{useCallback as Yl,useEffect as ql,useRef as Kl}from"react";function zi(){let e=Kl(null);return ql(()=>()=>{e.current&&clearTimeout(e.current)},[]),Yl((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}function jl(e){return document.activeElement?.getAttribute("name")===e}function Bi(e,t){let n=Xl(),r=e.field.advanced?.entity,o=zi(),[,i]=Wl(),a=Zl(xe),{setValue:s,shouldSkipOnChange:l,value:u,setSource:c}=t,p=tt(u);p.current=u;let f=tt(e.translations);f.current=e.translations;let R=St(e.field),b=Ve(G),S=Ve(Bt),k=Ve(Kt(e.field.name)),L=Ve(Ln),V=Ve(Vn),X=Ve(Zt),F=Mi(e.field,e.onMount,e.onUnmount,e.translations),N=w(e.commonProps.placeholder,e.translations),E={...e.commonProps,placeholder:N};function ne(d){let[,y]=e.getSchema();return y.find(T=>T.name===d)}function re(d){return ne(d)??n.get(et)[d]}function oe(d){return re(d)?.hidden===!0}function we(d){return re(d)?.keepValue===!0}function Me(d){let y=ne(d);if(y&&ge(y)){let T=y.advanced?.transform;if(T)return T}}function Ce(d,y){if(b(T=>({...T,[d]:y})),L(T=>({...T,[d]:y})),e.onValueChange){let T=ne(d);T&&e.onValueChange({name:a(d),type:T.type,value:y})}}function ze(d){let y=n.get(G),T=Object.keys(y).filter(_=>d.some(O=>_===O||_.startsWith(`${O}.`)));if(T.length!==0&&(b(_=>T.reduce((O,M)=>Xe(O,M),_)),!!e.onValueChange))for(let _ of T){let O=ne(_);O&&e.onValueChange({name:a(_),type:O.type,value:void 0})}}let x=tt(null);x.current=d=>{if(e.field.advanced?.transient)return;let y=ge(e.field)?Ze(d,e.field.advanced?.transform):d;s(y),e.onValueChange&&e.onValueChange({name:a(e.field.name),type:e.field.type,value:y})};let h=tt(null);h.current=d=>{let y=e.field.event?.change;y&&Ur(y,({sources:T,states:_,values:O})=>{i(()=>{Hr(d,T,(M,B)=>{c(Dt(M,e.field.name),B)}),Kr(d,_,(M,B)=>{let ke=M.map(ie=>Dt(ie,e.field.name));S(ie=>B?ke.reduce((Re,at)=>({...Re,[at]:B}),ie):ke.reduce((Re,at)=>Xe(Re,at),ie));let q=(B?.hidden===!0?ke:B===void 0?ke.filter(oe):[]).filter(ie=>!we(ie));q.length>0&&ze(q)})}),Zr(d,O,(M,B,ke)=>{let q=Dt(M,e.field.name);if(n.get(et)[q]){ft(B)&&X(sn=>({...sn,[q]:B}));return}let ie=Me(q),Re=ie?Ze(B,ie):B,an=n.get(G)[q];if(ke.onlyIfTargetEmpty&&!$(an)){let sn=n.get(Ln)[q];if(!Object.is(sn,an))return}if(Re!==an){if(jl(q)){V({target:q,value:Re});return}Ce(q,Re)}})})};let v=_i(d=>{let T=F.safeParse(d).error?.issues.map(M=>M.message)??[],_=e.field.validation?.custom,O=_?Jo(d,_,M=>n.get(be(M)),f.current):[];k([...T,...O])},[e.field.validation?.custom,F,k,n]),P=tt(null);P.current=()=>{let d=n.get(Vn);d?.target===e.field.name&&(V(null),$(n.get(G)[d.target])&&Ce(d.target,d.value))};let D=_i(d=>{if(!R){let y=d.target.value;e.config.validation.blur&&v(y)}P.current?.()},[R,e.config.validation.blur,v]);return{applyChangeEventsRef:h,commonProps:E,entity:r,hasClickable:R,onBlur:D,onValueChangeRef:x,setTimeoutRef:o,shouldSkipOnChange:l,validated:v,valueRef:p}}import{deepEqual as Jl}from"fast-equals";import{useAtom as Ql}from"jotai";import{use as eu,useCallback as tu,useEffect as nu,useRef as ru,useEffectEvent as $i}from"react";function Gi(e,t){let{name:n}=e,r=ru(!1),[o,i]=Ql(be(n)),a=eu(xe),s=$i((c,p=!1)=>{let f=ge(e)?Ze(c,e.advanced?.transform):c;!p&&!Jl(o,f)&&(r.current=!0),i(f)}),l=$i(c=>{let{found:p,value:f}=Qe(a(n),c);if(A(f)){s(f);return}if(A(e.defaultValue)){s(e.defaultValue,!0);return}p&&s(f)});nu(()=>{if(t){l(t);return}A(e.defaultValue)&&s(e.defaultValue,!0)},[t,e.defaultValue]);let u=tu(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:u,value:o}}import{jsx as Ui}from"react/jsx-runtime";function Hi(e){let{useSource:t,useExtraProps:n,getValue:r,shouldSkipChange:o,dispatchChange:i,buildInitialSelected:a,isInitialReady:s}=e.strategies,{setValue:l,shouldSkipOnChange:u,value:c}=Gi(e.field,e.value),{data:p,setSource:f,isStaticSource:R}=t(e.field,e.config,c),{applyChangeEventsRef:b,commonProps:S,entity:k,hasClickable:L,onBlur:V,onValueChangeRef:X,setTimeoutRef:F,validated:N,valueRef:E}=Bi(e,{setValue:l,shouldSkipOnChange:u,value:c,setSource:f}),{getSchema:ne}=e,re=n?.(e.field),oe=au(!1),{commonPropsWithOptions:we,defaultValue:Me}=Ao(e.field,S,p,c,R?e.translations:void 0),Ce=wo(e.field,Me);iu(()=>{let x=!!e.value||A(e.field.defaultValue);if(oe.current||!x)return;if(!e.field.event?.change){oe.current=!0;return}let h=e.value?Y(e.field.name,e.value):void 0,v=A(h)?h:e.field.defaultValue;if(!A(v)||!s(e.field,v,p))return;oe.current=!0;let P=a(v,p,k);queueMicrotask(()=>{let[,D]=ne();D.some(d=>d.name===e.field.name)&&b.current?.(P)})},[b,a,p,k,ne,s,e.field,e.value]);let ze=ou(x=>{let h=r(x,e.field);o({field:e.field,shouldSkipOnChange:u,hasClickable:L,inputValue:h,valueRef:E})||(X.current?.(h),e.config.validation.change&&N(h),e.field.event?.change&&i({applyChangeEventsRef:b,data:p,entity:k,inputValue:h,setTimeoutRef:F}))},[b,p,i,k,r,L,X,e.config.validation.change,e.field,F,o,u,N,E]);return qt(e.config.inputs[e.field.type],x=>Ui(Ni,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:Ui(x,{...we,...e.ariaAttributes,...e.dataAttributes,...re,...Ce,onBlur:V,onChange:ze})}))}import{jsx as su}from"react/jsx-runtime";function Pe(e){return function(n){return su(Hi,{...n,strategies:e})}}function Yi(e){let t=Z(e)?ce(e):null,n=se(e)?Te(e):null;return{dateFormat:t,timeFormat:n}}import{atom as lu}from"jotai";var uu=e=>{let t=ni(e);if(t)return t},cu=e=>e.trim()!=="",qi=lu({}),Wt=di(qi,{merge:uu,validateTarget:cu}),Ki=fi(qi);import{useSetAtom as du}from"jotai";function Xt(e){return{data:null,setSource:du(Wt(e.name))}}var Zi=Pe({useSource:Xt,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=Yi(e);return Co(t,n)},getValue:(e,t)=>{let n=e.target.value;if(!g(n))return n;let r=se(t)?Te(t):null;if(r!==null)return fo(n,r);let o=Z(t)?ce(t):null;return o!==null&&It(n,o)||n},shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>A(t)});import{deepEqual as pu}from"fast-equals";import{useAtom as gu}from"jotai";import fu from"swr";function Wi(e=null,t,n=!1){let{data:r,error:o}=fu(mu(e,t,n),t.fetcher.provider);if(o&&He.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return Or(r,e.namespace)}return null}function mu(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!ve(e.url)){if(ei(e.url,t.fetcher.remotePatterns))return e;He.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function Xi(e,t,n){let r=To(e,n),[o,i]=gu(Wt(e.name)),a=o??r,s=Wi(a,t,e.disabled),l=Array.isArray(a);return[s,i,l]}function yu(e,t,n){let[r,o,i]=Xi(e,t,n);return{data:r,setSource:o,isStaticSource:i}}function bu(e,t){return Q(e)&&t===""}var ji=Pe({useSource:yu,getValue:e=>e.target.value,shouldSkipChange:({field:e,shouldSkipOnChange:t,hasClickable:n,inputValue:r,valueRef:o})=>bu(e,r)||!n&&t()&&(!r||pu(r,o.current)),dispatchChange:({applyChangeEventsRef:e,data:t,entity:n,inputValue:r})=>{e.current?.(gn(r,t,n))},buildInitialSelected:(e,t,n)=>gn(Ge(e)?e:String(e),t,n),isInitialReady:(e,t,n)=>(!Le(e)||!!n&&n.length>0)&&A(t)});var Ji=Pe({useSource:Xt,getValue:e=>e.target.value,shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>A(t)});import{jsx as Dn}from"react/jsx-runtime";function Qi(e){return Z(e.field)||se(e.field)?Dn(Zi,{...e}):Qr(e.field)?Dn(Ji,{...e}):Dn(ji,{...e})}import{jsx as ea}from"react/jsx-runtime";function ta(e){return!e.errors||e.errors.length===0?null:ea("ul",{className:"text-sm text-red-600 dark:text-red-500",id:e.name?`${e.name}-error`:void 0,children:e.errors?.map((t,n)=>ea("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}import{twMerge as xu}from"tailwind-merge";import{jsx as hu}from"react/jsx-runtime";function jt(e){let t=e.errors&&e.errors.length>0;return hu("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[xr]:"true"},...e.disabled&&{[hr]:"true"},"data-orientation":e.orientation,className:xu("group flex w-full flex-col items-center data-[invalid=true]:text-red-600 data-[invalid=true]:dark:text-red-500","data-[clickable=true]:items-start",e.isCheckbox&&(e.isReversed?"flex-row-reverse!":"flex-row!"),"data-[clickable=true]:has-[>[data-slot=field-content]]:[&>:first-child]:mt-px",e.className),children:e.children})}import{twMerge as Ru}from"tailwind-merge";import{jsx as vu}from"react/jsx-runtime";function na(e){return vu(jt,{...e,orientation:"vertical",className:Ru("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as Su}from"tailwind-merge";import{jsx as Tu}from"react/jsx-runtime";function ra(e){return Tu(jt,{...e,orientation:"horizontal",className:Su("gap-2 md:flex-row md:gap-4","[&>[data-slot=field-content]]:min-w-0 [&>[data-slot=field-content]]:flex-grow [&>[data-slot=field-content]]:self-start","[&_[role=checkbox]]:mt-[1.5px]",e.isClickable&&"md:flex-col",!e.isClickable&&["md:justify-between","[&>*:not([data-slot=field-content])]:w-full","[&>*:not([data-slot=field-content])]:md:w-1/2","[&>*:not([data-slot=field-content])]:xl:w-2/5"]),children:e.children})}import{jsx as oa}from"react/jsx-runtime";function ia(e){let t=St(e.field),n=U(e.field),r=no(e.field);return e.horizontal?oa(ra,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):oa(na,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function aa(e){if(!e.field.type)return null;let t=xo(e.field,e.disabled,{lang:e.lang,translations:e.translations}),n=Vo(e.field),r=Lo(e.field,e.errors),o={...e.field,disabled:t.disabled};return e.children({ariaAttributes:r,commonProps:t,dataAttributes:n,field:o,horizontal:e.horizontal})}import{twMerge as Au}from"tailwind-merge";import{jsx as On,jsxs as wu}from"react/jsx-runtime";function sa(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r=!1}=Mt(e.style,{horizontal:to(e.field)}),o=ro(e.field,e.disabled);return wu("div",{className:Au("flex flex-col gap-3",Mo(t)),children:[On(ia,{disabled:o,errors:n,field:e.field,horizontal:r,children:On(aa,{disabled:o,errors:n,field:e.field,horizontal:r,lang:e.lang,translations:e.translations,children:e.children})}),On(ta,{errors:n,name:e.field.name})]})}import{useAtomValue as Cu}from"jotai";import{jsx as Nu}from"react/jsx-runtime";function la(e){return(t,n)=>o=>{let i=Cu(e(o.field.name)),a=n(i,o);return a===null?null:Nu(t,{...o,...a})}}var ku=la(Kt);function ua(e){return ku(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var Fu=la($t);function ca(e){return Fu(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var da=ca(ua(sa));import{twMerge as Mn}from"tailwind-merge";import{useState as Iu}from"react";import{Fragment as Eu,jsx as H,jsxs as he}from"react/jsx-runtime";function fa(e){let t=e.isMultiField||e.collapsed!=null,[n,r]=Iu(t?!e.collapsed:!0);function o(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function i(){r(c=>!c)}let a=c=>ae(W(c,e.translations),{index:e.index+1,label:e.label}),s=e.canRemove&&e.onRemove!=null&&H("button",{"aria-label":a("Remove {label} item {index}"),className:Mn("flex size-6 items-center justify-center rounded text-xl leading-none text-zinc-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:outline-none","dark:text-zinc-500 dark:hover:text-red-400"),onClick:o,type:"button",children:H("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),l=he("div",{className:"flex min-w-0 flex-col font-medium text-zinc-700 dark:text-zinc-400",children:[H("span",{className:"text-base",children:e.previewLabel??he(Eu,{children:[e.label," ",e.index+1]})}),!n&&e.previewTags&&H("div",{className:"flex items-center gap-2 overflow-hidden text-xs font-normal text-ellipsis whitespace-nowrap text-zinc-500 dark:text-zinc-500",children:e.previewTags})]}),u=he("div",{className:Mn("flex items-center justify-between gap-2",e.isMultiField&&n&&"mb-3"),children:[t?he("div",{className:"flex min-w-0 grow items-center gap-2",children:[he("button",{"aria-expanded":n,"aria-label":a(n?"Collapse {label} {index}":"Expand {label} {index}"),className:Mn("group flex grow items-center gap-2 rounded p-1 text-left text-zinc-400","focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:outline-none","dark:text-zinc-500"),onClick:i,type:"button",children:[H(Fe,{expanded:n}),l]}),!n&&e.previewBadge&&H("div",{className:"ml-auto shrink-0",children:e.previewBadge})]}):l,s]});return e.isMultiField?he("div",{"data-slot":"list-item-card",className:"box-border w-full min-w-0 rounded-lg border border-zinc-100 p-4 dark:border-zinc-900",children:[u,H(_e,{visible:n,children:H(ye,{children:e.children})})]}):t?he("div",{className:"box-border flex w-full min-w-0 flex-col gap-2",children:[u,H(_e,{visible:n,children:H(ye,{children:e.children})})]}):he("div",{className:"box-border flex w-full min-w-0 items-start gap-2",children:[H("div",{className:"flex min-w-0 grow flex-col",children:H(ye,{children:e.children})}),s&&H("div",{className:"shrink-0",children:s})]})}import{Fragment as Vu}from"react";import{twMerge as ma}from"tailwind-merge";import{useAtomValue as Lu}from"jotai";function Jt(e,t){return Lu(be(e))??t}import{jsx as nt,jsxs as ga}from"react/jsx-runtime";function pa({className:e,initialValue:t,name:n,options:r,separator:o,staticLabel:i}){let a=Jt(n??"",t);if(i===void 0&&r){let u=(Array.isArray(a)?a:a==null||a===""?[]:[a]).filter(c=>c!=null&&c!=="").map(c=>Fo(c,r));return u.length===0?null:nt("div",{className:"flex items-center gap-1.5 overflow-hidden",children:u.map((c,p)=>ga(Vu,{children:[(o||p>0)&&nt("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),nt("span",{"aria-label":c,className:ma("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:c,children:c})]},`${p}:${c}`))})}if(i===void 0&&($(a)||m(a)||Array.isArray(a)))return null;let s=i??String(a);return ga("div",{className:"flex items-center gap-1.5 overflow-hidden",children:[o&&nt("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),nt("span",{"aria-label":s,className:ma("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:s,children:s})]})}import{useAtomValue as Pu}from"jotai";import{useMemo as Du}from"react";function Qt(e,t){let n=Pu(G);return Du(()=>{let r=`${e}.`,o={},i=!1;for(let s in n)s.startsWith(r)&&(o[s.slice(r.length)]=n[s],i=!0);let a=t?Y(e,t):void 0;return i?m(a)?{...a,...o}:o:a},[n,e,t])}import{useMemo as zn}from"react";import{jsx as ya}from"react/jsx-runtime";function Ou(e){return typeof e=="string"?{field:e}:e}function _n({className:e,fields:t,label:n="Preview",lang:r,name:o,previews:i,translations:a,value:s}){let l=zn(()=>(Array.isArray(i)?i:[i]).map(Ou),[i]),u=zn(()=>t?$o(t):void 0,[t]),c=Qt(o,s),p=zn(()=>{let f=[];for(let[R,b]of l.entries()){if(b.when!==void 0&&!Ee(c,b.when))continue;if(b.label!==void 0){f.push({key:b.field??`label:${b.label}:${R}`,staticLabel:w(b.label,a)});continue}if(b.field===void 0)continue;let S=`${o}.${b.field}`,k=s!=null?Y(S,s):void 0,L=u?.[b.field],V=L?ko(L,{lang:r,translations:a}):void 0;f.push({key:`${R}:${b.field}`,initialValue:k,options:V,previewName:S})}return f},[l,c,r,o,s,a,u]);return p.length===0?null:ya("div",{"aria-label":n,className:"flex items-center gap-1.5 overflow-hidden",children:p.map((f,R)=>ya(pa,{className:e,initialValue:"initialValue"in f?f.initialValue:void 0,name:"previewName"in f?f.previewName:void 0,options:"options"in f?f.options:void 0,separator:R>0,staticLabel:"staticLabel"in f?f.staticLabel:void 0},f.key))})}import{Fragment as Mu,jsx as zu}from"react/jsx-runtime";function ba({children:e,initialValue:t,name:n}){let r=Jt(n,t),i=$(r)||m(r)||Array.isArray(r)?"":String(r);return zu(Mu,{children:e(i)})}import{jsx as en}from"react/jsx-runtime";function xa({canRemove:e,children:t,field:n,index:r,isMultiField:o,itemKey:i,label:a,lang:s,onRemove:l,previewBadge:u,previewLabel:c,previewTags:p,translations:f,value:R}){let b=`${n.name}.${i}`,S=`${a} ${r+1}`,k=Qt(b,R);return en(fa,{canRemove:e,collapsed:n.advanced?.collapsed,index:r,isMultiField:o,label:a,onRemove:l,previewLabel:_u({fallbackLabel:S,liveItemValue:k,name:b,previewLabel:c,translations:f,value:R}),previewBadge:u?en(_n,{className:"bg-primary text-primary-foreground rounded-md px-1.5 py-0.5 leading-none font-bold uppercase",fields:n.fields,lang:s,name:b,previews:u,translations:f,value:R}):void 0,previewTags:p?en(_n,{fields:n.fields,lang:s,name:b,previews:p,translations:f,value:R}):void 0,translations:f,children:t})}function _u({fallbackLabel:e,liveItemValue:t,name:n,previewLabel:r,translations:o,value:i}){if(r===void 0)return;let a=g(r)?{field:r}:r;if(a.when!==void 0&&!Ee(t,a.when))return;if(a.label!==void 0)return w(a.label,o);if(a.field===void 0)return;let s=`${n}.${a.field}`;return en(ba,{initialValue:i?Y(s,i):void 0,name:s,children:l=>l||e})}import{twMerge as qu}from"tailwind-merge";import{deepEqual as $u}from"fast-equals";import{useAtom as Gu,useSetAtom as $n,useStore as Uu}from"jotai";import{use as Hu,useCallback as Oe,useEffect as tn,useEffectEvent as ha,useMemo as Ra,useRef as nn,useState as Yu}from"react";function De(e,t,n){return`${e}.${t}.${n}`}function Bu(e,t){let{initial:n,mounted:r,values:o}=t,i=r[e];if(i)return Bn(e,i,t);let a=o[e];if(a!==void 0)return a;if(n)return Y(e,n)}function Bn(e,{items:t,leafNames:n},r){return t.map(o=>{let i={};for(let a of n)i[a]=Bu(De(e,o,a),r);return i})}function va(e,t,n){let{min:r,max:o}=wn(e),[i,a]=Yu(()=>_o(e,t)),s=nn(i),l=nn(i.length);s.current=i;let u=Uu(),c=$n(G),p=$n(Zt),f=nn(n);f.current=n;let R=nn(t),b=Ra(()=>Pt(e.fields),[e.fields]),S=Ra(()=>b.map(x=>x.name),[b]),k=Oe((x,h)=>{let v=Number(x);return Number.isNaN(v)?!1:Number.isInteger(v)&&h>=0&&String(h)!==x},[]),L=Hu(xe),V=Oe(x=>{let h=`${e.name}.`;if(x.startsWith(h)){let v=x.slice(h.length),P=v.indexOf("."),D=P===-1?v:v.slice(0,P),d=Number(D),y=s.current.indexOf(d);k(D,y)&&(x=`${h}${y}${P===-1?"":v.slice(P)}`)}return L(x)},[e.name,k,L]),X=ha(()=>{let x=R.current;if(!x)return;let h={...u.get(G)},v=!1;for(let P of i)for(let D of S){let d=De(e.name,P,D);if(d in h)continue;let y=Y(d,x);A(y)&&(h[d]=y,v=!0)}v&&c(h)});tn(()=>{X()},[]);let F=Oe((x,h)=>Bn(e.name,{items:x,leafNames:S},{mounted:u.get(et),values:h,initial:R.current}),[e.name,S,u]),N=Oe((x,h)=>{f.current?.({name:V(e.name),value:F(x,h)})},[F,e.name,V]),E=Oe(()=>{if(s.current.length>=o)return;let x=l.current++,h=[...s.current,x];a(h),N(h,u.get(G))},[N,o,u]),ne=Oe(x=>{if(s.current.length<=r)return;let h=s.current[x],v=s.current.filter((d,y)=>y!==x),D={...u.get(G)};for(let d of S)delete D[De(e.name,h,d)];a(v),c(D),N(v,D)},[N,e.name,S,r,c,u]),re=$n(Di(e.name));tn(()=>{re({items:i,leafNames:S,hidden:e.hidden===!0,keepValue:e.keepValue===!0})},[e.hidden,e.keepValue,i,S,re]),tn(()=>()=>{let x=u.get(G);c({...x,[e.name]:F(s.current,x)}),re(void 0)},[F,e.name,re,c,u]);let[oe,we]=Gu(Vi(e.name)),Me=ha(x=>{let h=Cn(e,x),v=u.get(G);if($u(F(s.current,v),h))return;let P=[];for(let y=0;y<h.length;y++)P.push(s.current[y]??l.current++);let D={...v};for(let y of s.current)for(let T of S)delete D[De(e.name,y,T)];let d={};P.forEach((y,T)=>{let _=h[T];for(let O of b){let M=_[O.name];if(M===void 0)continue;let B=De(e.name,y,O.name);D[B]=M,ee(O)&&(d[B]=M)}}),c(D),a(P),Object.keys(d).length>0&&p(y=>({...y,...d})),f.current?.({name:V(e.name),value:h})});tn(()=>{oe&&(Me(oe),we(void 0))},[oe,we]);let Ce=i.length<o,ze=i.length>r;return[i,E,ne,Ce,ze,o,V]}import{jsx as Gn,jsxs as rn}from"react/jsx-runtime";var Ku="flex h-9 w-full items-center gap-2 rounded-md border border-dashed border-zinc-200 px-4 text-sm font-medium text-zinc-500 transition-none hover:border-zinc-300 hover:text-zinc-800 focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:ring-offset-2 focus-visible:outline-none dark:border-zinc-800 dark:text-zinc-400 dark:hover:border-zinc-700 dark:hover:text-zinc-200";function Sa(e){let{field:t,lang:n,onValueChange:r,translations:o,value:i,children:a}=e,[s,l,u,c,p,f,R]=va(t,i,r),b=w(Bo(t),o),S=t.advanced?.action?w(t.advanced.action,o):W("Add item",o),k=f!==1/0,L=zo(t),{label:V,tags:X,badge:F}=t.advanced?.preview??{};return Gn(xe.Provider,{value:R,children:rn("div",{className:"flex w-full flex-col gap-4",children:[s.map((N,E)=>Gn(xa,{canRemove:p,field:t,index:E,isMultiField:L,itemKey:N,label:b,lang:n,onRemove:u,previewBadge:F,previewLabel:V,previewTags:X,translations:o,value:i,children:a(N)},N)),rn("button",{"aria-disabled":!c,"aria-label":k?`${S}, ${s.length} of ${f}`:S,className:qu(Ku,k?"justify-between":"justify-center",!c&&"cursor-not-allowed opacity-50 hover:border-zinc-200 hover:text-zinc-500 dark:hover:border-zinc-800 dark:hover:text-zinc-400"),disabled:!c,onClick:l,type:"button",children:[rn("span",{className:"flex items-center gap-2",children:[Gn("span",{"aria-hidden":"true",className:"text-base leading-none",children:"+"}),S]}),k&&rn("span",{"aria-hidden":"true",className:"text-zinc-400 tabular-nums dark:text-zinc-500",children:[s.length," / ",f]})]})]})})}import{jsx as Zu}from"react/jsx-runtime";function Ta(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0,n=te(e.field.label,e.translations),r=te(e.field.description,e.translations);return Zu(_t,{description:r,empty:t,id:e.field.name,title:n,children:e.children})}import{jsx as on}from"react/jsx-runtime";function Aa({children:e,field:t,lang:n,onValueChange:r,translations:o,value:i}){let a=on(Ta,{field:t,translations:o,children:on(Sa,{field:t,lang:n,onValueChange:r,translations:o,value:i,children:e})});return on(Gt,{container:t,fields:t.fields,children:t.keepValue?on(Ne,{value:!0,children:a}):a})}import{twMerge as Wu}from"tailwind-merge";import{jsx as wa,jsxs as Xu}from"react/jsx-runtime";function Ca(e){let t=Oo(e.column?.advanced?.cols);return Xu("div",{className:"flex w-full flex-col gap-4",children:[wa("div",{"data-slot":"column",className:Wu("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&wa(Ut,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}import{Fragment as Ju}from"react";import{jsx as ju}from"react/jsx-runtime";function ka(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>Tt(n)||ee(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:ue(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return ju(rt,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:t,lang:e.lang,onValueChange:e.onValueChange,style:e.style,translations:e.translations,value:e.value,children:e.children})}import{jsx as ot,jsxs as Qu}from"react/jsx-runtime";function rt(e){let{field:t,list:n}=e.components;return Vt(e.fields).map((r,o)=>Qu(Ju,{children:[ue(r)&&ot(Ca,{column:r,config:e.config,context:e.context,translations:e.translations,children:ot(rt,{...e,fields:r.fields})}),Tt(r)&&ot(t,{disabled:e.disabled,field:r,lang:e.lang,style:e.style,translations:e.translations,children:e.children}),ee(r)&&ot(n,{field:r,lang:e.lang,onValueChange:e.onValueChange,translations:e.translations,value:e.value,children:i=>ot(ka,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:r,index:i,lang:e.lang,onValueChange:e.onValueChange,style:e.style,translations:e.translations,value:e.value,children:e.children})})]},o))}import{jsx as ec}from"react/jsx-runtime";function Fa(e){return n=>ec(rt,{...n,components:e})}var Na=Fa({field:da,list:Aa});import{useSetAtom as Ia}from"jotai";import{startTransition as Ea,useActionState as tc}from"react";function Va(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},s=Ia(Ei),l=Ia(vi),u={data:null,error:null,success:!1},[c,p,f]=tc(async(R,b)=>{let[S,k]=e(),L=qo(S,k,a);if(i===!1)return t?await t(b,L):R;let V=zr(b),X=rc(V,k),F=L.safeParse(X);if(!F.success){let E=Ko(F.error);return Ea(()=>{s(E)}),Un(V,{description:W("Please correct the errors and try again.",a),details:[],title:W("There were validation errors submitting the form.",a)})}let N=_r(F.data);if(t)try{let E=await t(N,L);return E.success?(r?.(E.data),o||Ea(()=>{l()}),La(N,o)):Un(N,E.error)}catch(E){return He.error("Error executing form action:",E),Un(N,{title:W("An unexpected error occurred submitting the form.",a),details:nc(E,a)})}return La(F.data,o)},u);return[p,c,f]}function nc(e,t){return e instanceof Error?[e.message]:[W("Unknown error",t)]}function La(e,t=!1){return{data:t?e:null,error:null,success:!0}}function Un(e,t){return{data:e,error:t,success:!1}}function rc(e,t){let n={...e};for(let r of t)if(Z(r)&&typeof n[r.name]=="string"&&n[r.name]){let o=Nt(n[r.name],ce(r));o&&(n[r.name]=o)}return n}import{useMemo as ic}from"react";import{useCallback as Yn,useRef as Da}from"react";import{useCallback as oc}from"react";import{useSetAtom as Hn}from"jotai";function Pa(){let e=Hn(Ii),t=Hn(Si),n=Hn(Ki);return oc((r,o)=>{let i=Array.isArray(r)?r:[r];e(i),n(i),o?.keepValue||t(i)},[e,n,t])}function Oa(){let e=Pa(),t=Da({}),n=Da([]),r=Yn((a,s,l)=>{a in t.current||(t.current[a]=s,n.current.push(l))},[]),o=Yn((a,s)=>{t.current[a]&&(delete t.current[a],n.current=n.current.filter(l=>l.name!==a),e([a],{keepValue:s?.keepValue}))},[e]);return[Yn(()=>[t.current,n.current],[]),r,o]}import{Fragment as ac,jsx as it,jsxs as sc}from"react/jsx-runtime";function Ma(e){let t=ic(()=>go(e.lang,e.translations),[e.lang,e.translations]),[n,r,o]=Oa(),[i,a,s]=Va(n,e.action,{onSuccess:e.onSuccess,validation:e.config.validation.submit,translations:t}),l=e.config.validation.showError&&!a.success&&a.error,u=a.data??e.value;return sc(ac,{children:[l&&qt(e.config.alert,c=>it("div",{className:"mb-4 w-full",children:it(c,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),it(yi,{action:i,advanced:e.advanced,config:e.config,control:e.children,definition:e.definition,isPending:s,noValidate:!0,readOnly:e.readOnly,sections:e.sections,translations:t,children:({disabled:c,fields:p})=>it(Na,{config:e.config,context:e.context,disabled:c,fields:p,lang:e.lang,onValueChange:e.onValueChange,style:e.config.style,translations:t,value:u,children:f=>it(Qi,{...f,config:e.config,context:e.context,getSchema:n,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:u})})})]})}import{Provider as lc}from"jotai";import{jsx as za}from"react/jsx-runtime";function uc(e){return za(lc,{children:za(Ma,{...e})})}function _a(e,t){for(let n of e){if("name"in n&&typeof n.name=="string"){t.push(n.name);continue}"fields"in n&&_a(n.fields??[],t)}}function cc(e,t){let n=[];for(let o of e)_a(o.fields??[],n);let r=t;for(let o of n)Qe(o,t).found||(r===t&&(r={...t}),r[o]=void 0);return r}export{uc as Form,cc as withDeclaredFields};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { core, z, ZodObject } from 'zod';
|
|
2
|
-
export type Schema = z.
|
|
2
|
+
export type Schema = z.ZodType;
|
|
3
3
|
export type Schemas = Record<string, Schema>;
|
|
4
4
|
export type ZodSchema = ZodObject<{
|
|
5
5
|
[x: string]: Schema;
|
|
@@ -31,6 +31,22 @@ type Orderable = {
|
|
|
31
31
|
};
|
|
32
32
|
type Hideable = {
|
|
33
33
|
hidden?: boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Whether hiding this field leaves its value behind instead of taking it.
|
|
36
|
+
*
|
|
37
|
+
* Hiding a field normally clears what it held, and says so, because on a
|
|
38
|
+
* controlled form a value the host still carries comes back the moment the
|
|
39
|
+
* field is shown again -- so a clear nobody was told about undoes itself.
|
|
40
|
+
* That is the right default: a field nobody can see is usually a field whose
|
|
41
|
+
* data no longer applies.
|
|
42
|
+
*
|
|
43
|
+
* It is the wrong default for a field that is put away rather than dropped --
|
|
44
|
+
* two views of the same thing, where hiding one is a change of scenery and
|
|
45
|
+
* not a change of mind. Declared on the FIELD and not on the rule that hides
|
|
46
|
+
* it: a field either survives being put away or it does not, and which of
|
|
47
|
+
* several rules happened to hide it this time says nothing about that.
|
|
48
|
+
*/
|
|
49
|
+
keepValue?: boolean;
|
|
34
50
|
};
|
|
35
51
|
export type Sections = Section[];
|
|
36
52
|
export type Multiple = readonly (string | number | boolean)[];
|
|
@@ -12,6 +12,23 @@ export declare const reportPendingListRowsAtom: import("jotai-family").AtomFamil
|
|
|
12
12
|
export type MountedList = {
|
|
13
13
|
items: readonly number[];
|
|
14
14
|
leafNames: readonly string[];
|
|
15
|
+
/**
|
|
16
|
+
* The list's own `hidden`, as its definition declares it.
|
|
17
|
+
*
|
|
18
|
+
* Here rather than looked up, because there is nowhere to look it up: the
|
|
19
|
+
* schema registry `getSchema` answers from is filled by `onMount` on the
|
|
20
|
+
* input path, and a container never goes through it. That gap is what let a
|
|
21
|
+
* list keep its values through a hide -- the branch that clears a target
|
|
22
|
+
* reverting to its static hidden asked only that registry, found nothing,
|
|
23
|
+
* and skipped the list, while an explicit `hidden: true` cleared it. Same
|
|
24
|
+
* declaration, two outcomes. See `tests/e2e/hidden-clear.spec.ts`.
|
|
25
|
+
*
|
|
26
|
+
* A list that is not on screen has no entry, and that is the right answer
|
|
27
|
+
* rather than a gap: the only target worth clearing is one that was showing.
|
|
28
|
+
*/
|
|
29
|
+
hidden?: boolean;
|
|
30
|
+
/** The list's own `keepValue`, published for the same reason as `hidden`. */
|
|
31
|
+
keepValue?: boolean;
|
|
15
32
|
};
|
|
16
33
|
export declare const mountedListsAtom: import("jotai").PrimitiveAtom<Record<string, MountedList>> & {
|
|
17
34
|
init: Record<string, MountedList>;
|
package/docs/events/change.md
CHANGED
|
@@ -232,6 +232,38 @@ A target that holds nothing is not announced — there is nothing to clear —
|
|
|
232
232
|
and a target that keeps its own values under compound names (a `group`, a
|
|
233
233
|
`list`) has each of those cleared and reported in its own right.
|
|
234
234
|
|
|
235
|
+
It does not matter how the form phrases the hiding. A rule whose state is
|
|
236
|
+
`hidden: true`, and a rule that reveals with `hidden: false` and stops matching
|
|
237
|
+
so the field falls back to its own `hidden`, are the same act and clear the
|
|
238
|
+
same values -- containers included.
|
|
239
|
+
|
|
240
|
+
#### Keeping a value through a hide
|
|
241
|
+
|
|
242
|
+
A field that declares `keepValue: true` is put away rather than dropped: hiding
|
|
243
|
+
it leaves what it held, showing it again gives it back, and the consumer is
|
|
244
|
+
told nothing because nothing was taken.
|
|
245
|
+
|
|
246
|
+
```json
|
|
247
|
+
{
|
|
248
|
+
"label": "Raw text",
|
|
249
|
+
"name": "raw",
|
|
250
|
+
"type": "textarea",
|
|
251
|
+
"hidden": true,
|
|
252
|
+
"keepValue": true
|
|
253
|
+
}
|
|
254
|
+
```
|
|
255
|
+
|
|
256
|
+
It is declared on the FIELD and not on the rule, for the same reason the clear
|
|
257
|
+
does not care how the hiding was phrased: a field either survives being put
|
|
258
|
+
away or it does not, and which of several rules happened to hide it this time
|
|
259
|
+
says nothing about that. A `list` may declare it too, and then it covers every
|
|
260
|
+
value its rows hold.
|
|
261
|
+
|
|
262
|
+
Reach for it where two fields are two views of the same thing and the form
|
|
263
|
+
swaps between them -- there, hiding one is a change of scenery, not a change of
|
|
264
|
+
mind. Leave it off everywhere else: a value the user cannot see and cannot
|
|
265
|
+
correct is one that still gets submitted.
|
|
266
|
+
|
|
235
267
|
#### What `when` compares against for a `chips` field
|
|
236
268
|
|
|
237
269
|
A `chips` field [holds an array](../fields/select.md#a-chips-value-is-always-an-array),
|
package/docs/fields/input.md
CHANGED
|
@@ -31,6 +31,7 @@ Luna Form's input fields inherit the standard logical properties available to al
|
|
|
31
31
|
- **`disabled`** _(boolean, optional)_: If `true`, the field is non-interactive and blocked from events.
|
|
32
32
|
- **`readonly`** _(boolean, optional)_: If `true`, the field's value is locked and cannot be modified by the user.
|
|
33
33
|
- **`hidden`** _(boolean, optional)_: If `true`, the field is hidden from the user interface.
|
|
34
|
+
- **`keepValue`** _(boolean, optional)_: If `true`, hiding the field leaves its value behind instead of taking it. See [What clearing a hidden target means](../events/change.md#what-clearing-a-hidden-target-means).
|
|
34
35
|
- **`order`** _(number, optional)_: A numeric order determining the field's position relative to adjacent fields.
|
|
35
36
|
|
|
36
37
|
---
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-luna-form",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.85",
|
|
4
4
|
"description": "A React library for building forms based on JSON",
|
|
5
5
|
"main": "./dist/client/cjs/index.js",
|
|
6
6
|
"module": "./dist/client/esm/index.js",
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
"eslint-plugin-react": "7.37.5",
|
|
36
36
|
"eslint-plugin-react-hooks": "7.1.1",
|
|
37
37
|
"eslint-plugin-react-refresh": "0.5.5",
|
|
38
|
-
"@luna-form/core": "0.0.
|
|
38
|
+
"@luna-form/core": "0.0.85"
|
|
39
39
|
},
|
|
40
40
|
"license": "Apache-2.0",
|
|
41
41
|
"repository": {
|