react-luna-form 0.0.79 → 0.0.80
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 us=Object.create;var Rt=Object.defineProperty;var cs=Object.getOwnPropertyDescriptor;var ds=Object.getOwnPropertyNames;var fs=Object.getPrototypeOf,ms=Object.prototype.hasOwnProperty;var gs=(e,t)=>{for(var n in t)Rt(e,n,{get:t[n],enumerable:!0})},er=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of ds(t))!ms.call(e,o)&&o!==n&&Rt(e,o,{get:()=>t[o],enumerable:!(r=cs(t,o))||r.enumerable});return e};var ps=(e,t,n)=>(n=e!=null?us(fs(e)):{},er(t||!e||!e.__esModule?Rt(n,"default",{value:e,enumerable:!0}):n,e)),ys=e=>er(Rt({},"__esModule",{value:!0}),e);var fu={};gs(fu,{Form:()=>as,withDeclaredFields:()=>ls});module.exports=ys(fu);var nr=require("react/jsx-runtime");function tr(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,nr.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var bn=require("react/jsx-runtime");function Ye(e){return(0,bn.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,bn.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 or=require("react");var rr=require("react"),vt=(0,rr.createContext)(!1);var hn=require("react/jsx-runtime");function et({children:e,visible:t}){return(0,hn.jsx)(or.Activity,{mode:t?"visible":"hidden",children:(0,hn.jsx)(vt,{value:!0,children:e})})}var St="input",ir="input/date",ar="input/email",sr="input/number";var lr="input/time";var ur="textarea",cr="radio",dr="checkbox",Rn="list";var fr="select",mr="select/active",gr="select/day",pr="select/month",yr="select/timezone",xr="select/year";var br="chips",hr="chips/day",Rr="chips/month",tt="column",vr="description",vn="fields",Sr="label",K="value",Tt="options",Sn="email",Tr="number",Ar="password",wr="tel",nt="text",Cr="aria-errormessage",Fr="aria-invalid",kr="data-invalid",Nr="data-readonly",Ir="aria",Er="data",At="max",Lr="maxLength",wt="min",Pr="minLength",qe="$ref";var Vr="source",Dr="state",Ct="http://luna.internal";var Or="type",Mr={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};var P=require("date-fns"),Pe=require("date-fns/locale");function d(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function G(e){return e==null||e===""}function ne(e){return y(e)||typeof e=="number"||Tn(e)}function y(e){return typeof e=="string"}function zr(e){return d(e)&&"url"in e}function Tn(e){return typeof e=="boolean"}var _r={en:Pe.enUS,"en-US":Pe.enUS,es:Pe.es,"es-ES":Pe.es,"es-MX":Pe.es},xs={short:"M/d/yy",medium:"MMM d, yyyy",long:"MMMM d, yyyy",full:"EEEE, MMMM d, yyyy"},bs={ms:1,s:1e3,min:6e4,h:36e5,d:864e5};function Br(e){if(e)return _r[e]??_r[e.split("-")[0]]}function Ft(e){if(typeof e=="number"&&!Number.isNaN(e))return e;if(y(e)&&e.trim()!==""){let t=Number(e);return Number.isNaN(t)?null:t}return null}function $r(e,t,n){let r=bs[t];if(r===void 0)return String(e);let o=e*r,i=(0,P.intervalToDuration)({start:0,end:o});return(0,P.formatDuration)(i,{locale:n})}function Gr(e){if(e instanceof Date)return(0,P.isValid)(e)?e:null;if(y(e)){let t=(0,P.parseISO)(e);if((0,P.isValid)(t))return t;let n=new Date(e);return(0,P.isValid)(n)?n:null}if(typeof e=="number"){let t=new Date(e);return(0,P.isValid)(t)?t:null}return null}var hs={currency:(e,t,n)=>{let r=Ft(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=Ft(e);return r===null?String(e):new Intl.NumberFormat(n.locale,{style:"percent"}).format(r)},number:(e,t,n)=>{let r=Ft(e);return r===null?String(e):new Intl.NumberFormat(n.locale).format(r)},date:(e,t,n)=>{let r=Gr(e);if(!r)return String(e);let o=t[0]??"short",i=Br(n.locale);if(o==="relative")return(0,P.formatDistanceToNow)(r,{addSuffix:!0,locale:i});let a=xs[o]??o;return(0,P.format)(r,a,{locale:i})},duration:(e,t,n)=>{let r=Br(n.locale);if(typeof e=="number")return $r(e,t[0]??"ms",r);if(y(e)){let i=Ft(e);if(i!==null)return $r(i,t[0]??"ms",r)}let o=Gr(e);return o?(0,P.formatDistanceToNow)(o,{addSuffix:!0,locale:r}):String(e)}};function Ur(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=hs[o];if(a)return a(e,i,n)}var Rs=/^\d+$/;function wn(e,t=[],n=K){return Array.isArray(t)?t.find(r=>{let o=Cn(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}:{value:e}}function Cn(e,t=K){if(e!=null){if(Array.isArray(e)&&e.every(ne)||ne(e))return e;if(d(e)){let n=vs(e,t);if(ne(n))return n}}}function vs(e,t){let n=M(e,t);if(ne(n))return n}function Hr(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||!d(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(d(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:vr,label:Sr,value:K}){return e.map(n=>{if(d(n)){let r=M(n,t.label),o=M(n,t.value);if(ne(r)&&ne(o)){let i=M(n,t.description);return{label:`${r}`,value:`${o}`,...ne(i)&&{description:`${i}`}}}}return n})}function Yr(e=nt){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==St?n.trim().toLowerCase():nt}function qr(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 Zr(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=Rs.test(l);s in o||(o[s]=u?[]:{}),o=o[s]}let i=r[r.length-1];o[i]=e[n]}return An(t),t}function An(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)d(o)&&An(o);e[t]=r}else d(n)&&An(n)}}var Ss=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g,Ts=/{([^}]{1,200})}/,As=/{([^}]{1,200})}/g,ws=/^{([^}|]{1,200})}$/;function ce(e,t={},n={}){if(y(e))return Fs(e,t,n);if(Array.isArray(e))return e.map(r=>ce(r,t,n));if(d(e)){let r={};for(let o in e)r[o]=ce(e[o],t,n);return r}return e}function Wr(e,t={},n={}){if(y(e)){let r=Cs(e,t);if(r!==void 0)return r}return ce(e,t,n)}function rt(e,t={},n={}){return Ve(e)?ce(e,t,n):e}function Ve(e){return y(e)?Ts.test(e):Array.isArray(e)?e.some(t=>Ve(t)):d(e)?Object.values(e).some(t=>Ve(t)):!1}function Kr(e,t){return t.includes(".")?M(e,t):e[t]}function Cs(e,t){let n=ws.exec(e);if(!n)return;let r=n[1].trim();if(!r)return;let o=Kr(t,r);if(d(o)||Array.isArray(o))return o}function Fs(e,t={},n={}){return e.replace(As,(r,o)=>{let i=String(o).split("|").map(c=>c.trim()),[a,...s]=i;if(!a)return r;let l=Kr(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 g=Ur(u,c,{locale:n.locale});if(g===void 0)return r;u=g}return String(u)})}function Xr(e,t){if(!y(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Ss.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 ot={error:(...e)=>{kn()&&!Nn()&&kt().error("[Luna Form]",...e)},warn:(...e)=>{kn()&&!Nn()&&kt().warn("[Luna Form]",...e)},info:(...e)=>{kn()&&!Nn()&&kt().info("[Luna Form]",...e)}},kn=()=>typeof kt()<"u",Nn=()=>!0,kt=()=>globalThis.console;function jr(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===K&&n.push(i),i.action===Vr&&r.push(i),i.action===Dr&&o.push(i);t({sources:r,states:o,values:n})}function Jr(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 De={eq:Ls,gt:Os,gte:Ms,in:Vs,lt:zs,lte:_s,neq:Ps,nin:Ds,contains:Bs,exists:eo,empty:$s,truthy:Gs},ks=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,Qr=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function Ns(e){return typeof e=="string"&&ks.test(e)}function Is(e){return typeof e=="string"&&Qr.test(e)}function Es(e){let t=e.match(Qr);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 Se(e){return Ns(e)?new Date(e).getTime():Is(e)?Es(e):Number(e)}function Ls(e,t){return e===t}function Ps(e,t){return e!==t}function Vs(e,t){return Array.isArray(t)&&t.includes(String(e))}function Ds(e,t){return Array.isArray(t)&&!t.includes(String(e))}function Os(e,t){return Se(e)>Se(t)}function Ms(e,t){return Se(e)>=Se(t)}function zs(e,t){return Se(e)<Se(t)}function _s(e,t){return Se(e)<=Se(t)}function Bs(e,t){return typeof e=="string"?e.includes(String(t)):Array.isArray(e)?e.map(String).includes(String(t)):!1}function eo(e){return Array.isArray(e)?e.length>0:e!=null&&e!==""}function $s(e){return!eo(e)}function Gs(e){return Array.isArray(e)?e.length>0:!!e}function Ze(e,t){if(t===void 0)return!0;if(y(t)){let n=Nt(e,K);return Array.isArray(n)?n.length===1&&n[0]===t:n===t}if(Tn(t)){let n=Nt(e,K);return(Array.isArray(n)?n.length>0:!!n)===t}if(Array.isArray(t)){let n=Nt(e,K);return Array.isArray(n)?n.some(r=>t.includes(String(r))):t.includes(String(n))}return Us(e,t)}function Us(e=null,t){let n=Nt(e,t.field??K),{operator:r="eq",value:o}=t,i=De[r];return i?i(n,o):!1}function Nt(e,t){return d(e)?M(e,t):e}function to(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 no(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?Wr(i,e):void 0,{onlyIfTargetEmpty:r.onlyIfTargetEmpty??!1})}var it=e=>E(mr)(e),ro=e=>E(gr)(e),It=e=>E(pr)(e),Et=e=>E(xr)(e),oo=e=>E(yr)(e),Lt=e=>E(hr)(e),Pt=e=>E(Rr)(e),X=E(ir),de=E(lr),H=E(dr),re=E(br),fe=E(cr),Te=E(St),oe=E(fr),In=E(ur),io=E(nt,Sn,Ar,wr),ao=E(ar,Sn),Vt=E(sr,Tr);function Dt(e){return fe(e)||H(e)}function at(e){return e.type===Rn}function j(e){return e.type===tt}function Ot(e){return e.type!==tt&&e.type!==Rn}function We(e){return oe(e)||fe(e)||re(e)}function so(e){return Te(e)||In(e)}function w(e){return e!=null&&e!==""}function E(...e){return t=>{let n=y(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function lo(e,t={}){if(oe(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&d(n))return[n]}}function uo(e){return fe(e)||H(e)?!0:e.advanced?.horizontal??!1}function co(e){return H(e)?e.advanced?.reverse!==!1:!1}function fo(e,t){let n=e.readonly??!1;return t||n}function Mt(e){if(Hs(e)){let t=e.source;if(Array.isArray(t)||d(t)&&!(qe in t))return t}}function mo(e){return Array.isArray(Mt(e))}function Hs(e){return fe(e)||re(e)||oe(e)&&!e.disabled}var z=require("date-fns"),Ys=/^\d+$/,zt=new Date(2e3,0,1),qs=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[],En="default";function yo(e){if(!e)return En;try{return Intl.getCanonicalLocales(e)[0]??En}catch{return En}}function Ln(e){let t=yo(e);return Array.from({length:12},(n,r)=>({value:(r+1).toString(),label:new Date(0,r).toLocaleString(t,{month:"long"})}))}function Pn(e){let t=yo(e);return Array.from({length:7},(n,r)=>({value:r.toString(),label:new Date(2e3,0,2+r).toLocaleString(t,{weekday:"long"})}))}function xo(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 Vn(){return new Date().getFullYear()}function Zs(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function Ws(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return Mr[n]??"Other"}function Ks(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function go(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=Ks(r,e);return{offset:i,longName:a}}function po(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function bo(){let e=new Date,t=Zs(),n=new Map,r=po(t),{offset:o,longName:i}=go(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let l of qs()){if(l===t)continue;let u=po(l),{offset:c,longName:g}=go(l,e),f={value:l,label:`${u} - ${g} (${c})`},v=Ws(l);if(v==="Other")continue;let h=n.get(v);h?h.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 Dn(e,t){if(typeof e=="number")return e;let n=t??Vn(),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 Ys.test(r)?parseInt(r,10):n}function _t(e,t){if(!e)return"";try{let n=(0,z.parse)(e,t,zt);return(0,z.isValid)(n)?(0,z.format)(n,"yyyy-MM-dd"):""}catch{return""}}function ho(e,t){if(!e)return"";try{let n=(0,z.parse)(e,t,zt);return(0,z.isValid)(n)?(0,z.format)(n,"HH:mm:ss"):""}catch{return""}}function Ro(e,t="HH:mm"){if(!e)return"";try{let n=e.split(":").length===3?"HH:mm:ss":"HH:mm",r=(0,z.parse)(e,n,zt);return(0,z.isValid)(r)?(0,z.format)(r,t):""}catch{return""}}function Bt(e,t="MMMM d, yyyy"){if(!e)return"";try{let n=(0,z.parse)(e,"yyyy-MM-dd",zt);return(0,z.isValid)(n)?(0,z.format)(n,t):""}catch{return""}}function Oe(e){return e.advanced?.format??"HH:mm"}function me(e){return e.advanced?.format??"MMMM d, yyyy"}var Xs={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 F(e,t)}function So(e,t){let n=t?.[e??""],r=e?Xs[js(e)]:void 0;return r?n?{...r,...n}:r:n}function js(e){return e.toLowerCase().split(/[-_]/)[0]}function F(e,t){return e?t?t[e]??e:e:""}function ie(e,t){return e?F(e,t):void 0}function st(e,t){if(!t)return e;let n=!1,r=e.map(o=>{let i=Js(o,t);return i!==o&&(n=!0),i});return n?r:e}function Js(e,t){if(!d(e))return e;let n=vo(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=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 y(e)?F(e,t):e}var $t=Vn();function Ao(e,t){if(re(e))return Qs(e,t?.lang)}function Qs(e,t){if(Lt(e))return Pn(t);if(Pt(e))return Ln(t)}function wo(e,t){if(oe(e))return el(e,t)}function el(e,t){let{lang:n,translations:r}=t??{};if(ro(e))return Pn(n);if(It(e))return Ln(n);if(Et(e)){let o=e.advanced?.length?.min??$t,i=e.advanced?.length?.max??$t+5;return xo(Dn(o,$t),Dn(i,$t))}if(oo(e))return bo();if(it(e))return st([{value:"true",label:"Yes"},{value:"false",label:"No"}],r)}function Co(e,t=!1,n){let r={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return Te(e)?{...r,...tl(e)}:oe(e)?{...r,...Fo(wo(e,n))}:In(e)?{...r,...rl(e)}:re(e)?{...r,...nl(e,n)}:r}function tl(e){let t=Yr(e.type),n={...e,type:t};return{...il(e),...ko(e),...ol(n),...io(n)?No(n):{},type:t}}function Fo(e){return e?{options:e}:{}}function nl(e,t){let n=Fo(Ao(e,t)),r=e.advanced?.multiple??!0;return{...n,multiple:r}}function rl(e){return{...ko(e),...No(e)}}function ko(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function ol(e){return Vt(e)?al(e):{}}function il(e){if(de(e)){let t=Oe(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function No(e){return Io(e,{min:Pr,max:Lr})}function al(e){return Io(e,{min:wt,max:At})}function Io(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 Eo(e,t){let n=Mt(e);return n||lo(e,t)}function sl(e,t){let n=d(t)&&e.name in t?t[e.name]:t,r=Cn(n,e.advanced?.entity),o=w(r)?r:e.defaultValue;return de(e)&&w(o)?ll(e,o):X(e)&&w(o)?fl(e,o):o}function ll(e,t){let n=Oe(e);return y(t)?ho(t,n):t}function ul(e,t,n){return We(e)&&Array.isArray(n)?{...t,[Tt]:n}:t}function cl(e,t,n){if(e.required&&!w(n)&&oe(e)&&e.advanced?.preselected!==!1&&Tt in t){let r=t[Tt];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function dl(e,t,n){if(We(e)&&Array.isArray(t)){let r=Fn(t,e.advanced?.options);return mo(e)?st(r,n):r}return t}function Lo(e,t,n,r,o){let i=sl(e,r),a=Array.isArray(n)?dl(e,n,o):n,s=ul(e,t,a),l=cl(e,s,i);return{commonPropsWithOptions:s,defaultValue:l}}function Po(e,t){return H(e)?{checked:w(t)?t:!1}:re(e)?{value:Array.isArray(t)?t:[]}:X(e)&&y(t)&&w(t)?{value:Bt(t,me(e))}:it(e)?{value:w(t)?String(t):""}:{value:t??""}}function fl(e,t){let n=me(e);return y(t)?_t(t,n):t}function Vo(e,t){let n=e??t;return n?{"data-format":n}:{}}function To(e){let t=[];for(let n of e){if(typeof n=="string"){t.push(n);continue}d(n)&&"value"in n&&"label"in n&&y(n.value)&&y(n.label)&&t.push({label:n.label,value:n.value})}return t}function Do(e,t){if(!We(e))return;let n=re(e)?Ao(e,t):wo(e,t);if(Array.isArray(n)){let o=To(n);return o.length>0?o:void 0}let r=Mt(e);if(Array.isArray(r)){let o=Fn(r,e.advanced?.options),i=To(st(o,t?.translations));return i.length>0?i:void 0}}function Oo(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 ml=/^#\/definition\//;function Ut(e=[],t){let n=Gt(e,t);return Array.isArray(n)?n.filter(pl).sort((r,o)=>Mo(r)-Mo(o)):[]}function Gt(e,t,n=new Map,r=new WeakSet){if(!gl(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=>Gt(i,t,n,r));if(qe in e&&y(e[qe])){let i=e[qe].replace(ml,""),a=M(t,i);return a!==null?Gt(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=Gt(a,t,n,r);return r.delete(e),n.set(e,o),o}function zo(e){return Object.entries(e??{})}function Mo(e){return e.order??Number.MAX_VALUE}function gl(e){return e!==void 0&&d(e)&&Object.keys(e).length>0}function pl(e){return Or in e?!0:Array.isArray(e[vn])?e[vn].length>0:!0}function _o(e,t){let n={};for(let[r,o]of zo(t))n[`${e}-${r}`]=o;return n}function yl(e){return _o(Ir,e)}function xl(e){return _o(Er,e)}function Bo(e,t){let n=yl(e.advanced?.aria);return t&&t.length>0&&(n[Fr]="true",n[Cr]=`${e.name}-error`),n}function $o(e){return xl(e.advanced?.data)}var Go={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Uo={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function Ho(e,t=2){return Go[e&&e in Go?e:t]}function Yo(e){if(e&&e in Uo)return Uo[e]}function bl(e,t){let n=e.advanced?.length?.min??1;if(t){let r=M(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function qo(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===tt}function Zo(e,t){let n=bl(e,t);return Array.from({length:n},(r,o)=>o)}function Wo(e){return e.advanced?.title??e.label??e.name}function Ko(e){let t={};for(let n of e)if(j(n))for(let r of n.fields)t[r.name]=r;else t[n.name]=n;return t}function Ht(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 hl=[[H,Xo],[ao,Rl],[Vt,Tl],[fe,vl],[it,Xo],[It,wl],[Et,Al],[re,On],[Lt,On],[Pt,On]];function Qo(e,t=[],n){let r=C.z.object(e);if(t.length===0)return r;let o=Nl(r,t,n);return Ll(o,t,n)}function ei(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 ti(e,t){for(let[n,r]of hl)if(n(e))return r(e,t);return Sl(e,t)}function Rl(e,t){let n=C.z.string().trim();if(e.required){let r=Ae(e,t),o=n.min(1,r).pipe(jo(e,t));return C.z.preprocess(i=>G(i)?"":i,o)}return n.pipe(jo(e,t)).or(C.z.literal("")).nullable()}function Xo(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?(H(e)?n=n.refine(r=>r===!0,{message:Ae(e,t)}):n=n.refine(r=>typeof r=="boolean",{message:Ae(e,t)}),C.z.preprocess(r=>r===null?!1:r,n)):n.nullable()}function vl(e,t){let n=C.z.coerce.string();return e.required?(n=n.min(1,Ae(e,t)),C.z.preprocess(r=>G(r)?"":r,n)):n.or(C.z.literal("")).nullable()}function Sl(e,t){let n=C.z.coerce.string().trim();return n=ni(n,e,t),e.required?(n=ri(n,e,t),C.z.preprocess(r=>G(r)?"":r,n)):n.nullable()}function Tl(e,t){let n=C.z.coerce.number().int();return n=ni(n,e,t),e.required?(n=ri(n,e,t),C.z.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function Al(e,t){return e.required?C.z.preprocess(Cl,C.z.coerce.number({message:Ae(e,t)}).int()):C.z.coerce.number().int().nullable()}function wl(e,t){let n=Ae(e,t),r=C.z.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function Cl(e){return e===null||e===""?void 0:e}function jo(e,t){let n=e.validation?.email?F(e.validation?.email,t):void 0;return C.z.email(n)}function ni(e,t,n){return e=Fl(e,t,n),e=kl(e,t,n),e}function ri(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,Ae(t,n)):e}var Fl=(e,t,n)=>oi(e,t,wt,n),kl=(e,t,n)=>oi(e,t,At,n);function oi(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 Nl(e,t=[],n){let r=El(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:s}of r)if(!Il(o,a,s)){let l=F(s.message,n);i.addIssue({code:"custom",message:l,path:[a]})}})}function Il(e,t,n){let r=n.operator??"eq",o=De[r];return o?o(Yt(e,t),Yt(e,n.field)):!1}function El(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 ii(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let s=a.operator??"eq",l=De[s];if(l&&!l(e,n(a.field))&&a.message){let u=F(a.message,r);o.push(u)}}return o}function Ae(e,t){return e.validation?.required?F(e.validation?.required,t):void 0}function On(e,t){let n=C.z.array(C.z.string());return e.required&&(n=n.min(1,Ae(e,t))),C.z.preprocess(r=>G(r)?[]:Array.isArray(r)?r.map(String):[String(r)],n)}function Ll(e,t=[],n){let r=t.filter(Pl);return r.length===0?e:e.superRefine((o,i)=>{let a=d(o)?o:{};for(let s of r)for(let l of Vl(a,s,n))i.addIssue({code:"custom",path:l.path,message:l.message})})}function Pl(e){let t=e.validation;return t!==void 0&&(t.requiredWhen!==void 0||t.pattern!==void 0||t.rules!==void 0)}function Vl(e,t,n){let r=[],o=Yt(e,t.name),i=t.validation?.requiredWhen;if(i){let l=(Array.isArray(i)?i:[i]).find(u=>lt(e,u));l&&!Mn(o)&&r.push({path:[t.name],message:ie(l.message??t.validation?.required,n)})}let a=t.validation?.pattern;a&&!ai(a,o)&&r.push({path:[t.name],message:ie(a.message,n)});for(let s of t.validation?.rules??[])Dl(e,s.when)&&!Ol(s,o)&&r.push({path:[t.name],message:ie(s.message,n)});return r}function lt(e,t){let n=De[t.operator??"eq"];return n?n(Yt(e,t.field),t.value):!1}function Yt(e,t){return t in e?e[t]:M(e,t)??void 0}function Dl(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 Ol(e,t){switch(e.assert){case"required":return Mn(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 Jo(t)>=Number(e.value);case"max":return Jo(t)<=Number(e.value);case"oneOf":return Array.isArray(e.value)&&e.value.map(String).includes(String(t));case"pattern":return zl(e.value)?ai(e.value,t):!0;default:return!0}}function ai(e,t){return!Mn(t)||typeof t!="string"||e.allowInterpolation&&(Ve(t)||Ml(t))?!0:new RegExp(e.regex,e.flags).test(t)}function Ml(e){return y(e)&&e.trimStart().startsWith("@")}function Mn(e){return y(e)?e.trim().length>0:De.exists(e,void 0)}function Jo(e){return typeof e=="number"?e:y(e)||Array.isArray(e)?e.length:0}function zl(e){return d(e)&&"regex"in e}function si(e,t){if(!t||!Bl(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||_l(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 _l(e){return e==="https"?"443":"80"}function Bl(e){return/^(https?:)?\/\//.test(e)}function li(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,Ct);new URL(t,Ct).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(Ct,""):o}catch{return t||e}}function ui(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=li(t.url,n.url),o=$l(t,n),i=Gl(t,n);return{...t,...n,url:r,body:o,headers:i}})}function $l(e,t){return d(t.body)&&d(e?.body)?{...e.body,...t.body}:t.body??e?.body}function Gl(e,t){return d(t.headers)&&d(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function qt(e,t){return{...e,...t}}var Ul={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||!y(e)||G(e)?e:(Array.isArray(t)?t:[t]).reduce((r,o)=>{let i=Ul[o];return i?i(r):r},e)}var ci=require("react/jsx-runtime");function ge(e){return Xr(e,(t,n,r)=>(0,ci.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}var Zt=require("react"),ae=require("react/jsx-runtime");function di(e){let{fields:t=[]}=e.section,[n,r]=(0,Zt.useState)(!1),o=(0,Zt.useCallback)(()=>r(i=>!i),[]);return(0,ae.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,ae.jsx)("legend",{children:(0,ae.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,ae.jsx)(Ye,{expanded:n}),(0,ae.jsx)("span",{children:ge(e.title)})]})}),(0,ae.jsx)(et,{visible:n,children:(0,ae.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,ae.jsx)("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:ge(e.description)}),e.group]})})]})}var we=require("react/jsx-runtime");function fi(e){let t=(0,we.jsxs)("div",{className:"flex flex-col",children:[e.title&&(0,we.jsx)("legend",{className:"mb-3 font-medium text-zinc-800 dark:text-zinc-200",children:ge(e.title)}),e.description&&(0,we.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:ge(e.description)})]});return e.step?(0,we.jsxs)("div",{className:"flex flex-row items-start gap-4",children:[(0,we.jsx)("div",{className:"bg-primary text-primary-foreground flex size-6 shrink-0 items-center justify-center rounded-full",children:(0,we.jsx)("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}var ct=require("react/jsx-runtime");function Wt(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)(fi,{description:e.description,step:e.step,title:e.title}),(0,ct.jsx)("div",{className:"w-full min-w-0",children:e.children})]})}var mi=require("react/jsx-runtime");function Ce(e){return(0,mi.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 Kt=require("react/jsx-runtime");function gi(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=qt(e.style,{compact:e.section.advanced?.compact}),o=(0,Kt.jsx)(Ce,{compact:r,children:e.children});if(!e.section.title&&!e.section.description)return o;let i=ie(e.section.title,e.translations),a=ie(e.section.description,e.translations);return e.section.advanced?.collapsible?(0,Kt.jsx)(di,{description:a,group:o,section:e.section,title:i}):(0,Kt.jsx)(Wt,{description:a,empty:t.length===0,id:e.section.id?.toString(),step:n,title:i,children:o})}var zn=require("react/jsx-runtime");function pi(){return(0,zn.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,zn.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-zinc-200 dark:bg-zinc-800"})})}var hi=require("jotai");var Fe=require("jotai"),_n=require("jotai-family"),Xt=require("fast-equals");function jt(e,t){let{[t]:n,...r}=e;return r}function Hl(e){return(0,_n.atomFamily)(t=>(0,Fe.atom)(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];(0,Xt.deepEqual)(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,jt(i,t))}))}function Yl(e){return(0,Fe.atom)(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function ql(e){return(0,Fe.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 Zl(e){return(0,Fe.atom)(null,(t,n,r)=>{let o=t(e);(0,Xt.deepEqual)(o,r)||n(e,r)})}function yi(e,t={}){let{merge:n,validateTarget:r}=t;return(0,_n.atomFamily)(o=>(0,Fe.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 g=c[o];(!g||!(0,Xt.deepEqual)(g,l))&&(c[o]=l,a(e,{...u,[s]:c}))}else o in c&&(delete c[o],Object.keys(c).length===0?a(e,jt(u,s)):a(e,{...u,[s]:c}))}))}function xi(e){return(0,Fe.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 pe(e={}){let t=(0,Fe.atom)(e);return{atom:t,clearAll:Yl(t),clear:ql(t),bulkReport:Zl(t),report:Hl(t)}}var bi=pe(),Jt=bi.atom,Qt=bi.report;function Wl(e,t){return e.fields.every(n=>Ri(n,t))}function Ri(e,t){return t[e.name]?.hidden??e.hidden??!1}function Kl(e,t){return j(e)?Wl(e,t):Ri(e,t)}function en(e){let t=(0,hi.useAtomValue)(Jt);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}var ye=require("react/jsx-runtime");function vi(e){let t=Ut(e.sections,e.definition);return(0,ye.jsx)("div",{className:"h-full w-full",children:(0,ye.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,ye.jsxs)(Ce,{children:[t.map((n,r)=>(0,ye.jsxs)(en,{fields:n.fields??[],children:[(0,ye.jsx)(gi,{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,ye.jsx)(pi,{})]},`key-${n.id}-${r}`)),e.control&&(0,ye.jsx)(tr,{isPending:e.isPending,children:e.control})]})})})}var Ti=require("react/jsx-runtime");function Si(e){return(0,Ti.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 Ai=require("react"),Ke=require("react/jsx-runtime");function tn(e){let t={context:e.context,env:e.config?.env,value:e.value},r={locale:e.config?.env?.locale},[o,i]=(0,Ai.useState)(()=>d(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),a=()=>i(c=>!c),s=d(e.text)&&y(e.text.title)?ge(F(rt(e.text.title,t,r),e.translations)):void 0,l=F(rt(y(e.text)?e.text:e.text?.message,t,r),e.translations),u=ge(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)(Ye,{expanded:o})]}),o&&(0,Ke.jsx)(Si,{title:l,children:u})]}):null}var Bn=require("jotai");var nn=pe(),Z=nn.atom,wi=nn.clearAll,Ci=nn.clear,ke=nn.report,$n=(0,Bn.atom)({}),Gn=(0,Bn.atom)(null);var Un=require("jotai"),Fi=require("react/jsx-runtime");function rn(e){let t=(0,Un.useAtomValue)(ke(e.field.name)),r=(0,Un.useAtomValue)(Qt(e.field.name))?.description??e.field.description;return(0,Fi.jsx)(tn,{config:e.config,context:e.context,text:r,translations:e.translations,value:t})}var ki=require("tailwind-merge"),dt=require("react/jsx-runtime");function Ni(e){let t=e.style?.showOptionalLabel??!0,n=fe(e.field)||H(e.field);return(0,dt.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,ki.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:y(e.children)?e.children:void 0,children:[(0,dt.jsx)("span",{className:"[[data-slot=column]_&]:md:truncate",children:e.children}),t&&!e.field.required&&(0,dt.jsx)("span",{className:"ml-2 flex-shrink-0 text-sm text-zinc-600 dark:text-zinc-400",children:J("(Optional)",e.translations)})]})}var ft=require("react/jsx-runtime");function Ii(e){let t={context:e.context,env:e.config?.env},n=rt(e.field.label,t);return(0,ft.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,ft.jsx)(Ni,{field:e.field,style:e.config?.style,translations:e.translations,children:F(n,e.translations)}),e.horizontal===!0&&(0,ft.jsx)(rn,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}var Me=require("react/jsx-runtime");function Ei(e){return(0,Me.jsxs)(Me.Fragment,{children:[e.field.name&&e.field.label&&(0,Me.jsx)(Ii,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&(0,Me.jsx)(rn,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}function on(e,t){return e?t(e):null}var mt={found:!1,value:void 0};function gt(e,t){if(!Array.isArray(t)&&e in t)return{found:!0,value:t[e]};if(!e.includes("."))return mt;let n=e.split("."),r=t;for(let o of n){if(r==null)return mt;if(Array.isArray(r)){let i=Number(o);if(!Number.isInteger(i)||!(i in r))return mt;r=r[i]}else if(d(r)){if(!(o in r))return mt;r=r[o]}else return mt}return{found:!0,value:r}}function Q(e,t){return gt(e,t).value}var je=require("react");var Li=require("react"),Xl=e=>e,Ne=(0,Li.createContext)(Xl);var Hn=pe(),Pi=Hn.clear,Vi=Hn.bulkReport,an=Hn.report;var Di=pe(),Oi=Di.atom,Mi=Di.report,zi=pe(),_i=zi.atom,Bi=zi.report;var Y=require("react");var xe=require("react");function $i(e,t,n,r){let{name:o}=e,i=(0,xe.useMemo)(()=>ti(e,r),[e,r]),a=(0,xe.use)(vt),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 be=require("jotai");var Xe=require("react");function Gi(){let e=(0,Xe.useRef)(null);return(0,Xe.useEffect)(()=>()=>{e.current&&clearTimeout(e.current)},[]),(0,Xe.useCallback)((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 Jl(e){return Array.isArray(e)&&e.every(d)}function Ui(e,t){let n=(0,be.useStore)(),r=e.field.advanced?.entity,o=Gi(),[,i]=(0,Y.useTransition)(),a=(0,Y.use)(Ne),{setValue:s,shouldSkipOnChange:l,value:u,setSource:c}=t,g=(0,Y.useRef)(u);g.current=u;let f=(0,Y.useRef)(e.translations);f.current=e.translations;let v=Dt(e.field),h=(0,be.useSetAtom)(Z),L=(0,be.useSetAtom)(Jt),k=(0,be.useSetAtom)(an(e.field.name)),V=(0,be.useSetAtom)($n),D=(0,be.useSetAtom)(Gn),_=(0,be.useSetAtom)(Oi),B=$i(e.field,e.onMount,e.onUnmount,e.translations),O=F(e.commonProps.placeholder,e.translations),N={...e.commonProps,placeholder:O};function le(m){let[,p]=e.getSchema();return p.find(b=>b.name===m)}function ve(m){let p=le(m);if(p&&Te(p)){let b=p.advanced?.transform;if(b)return b}}function Be(m,p){if(h(b=>({...b,[m]:p})),V(b=>({...b,[m]:p})),e.onValueChange){let b=le(m);b&&e.onValueChange({name:a(m),type:b.type,value:p})}}let $e=(0,Y.useRef)(null);$e.current=m=>{if(e.field.advanced?.transient)return;let p=Te(e.field)?ut(m,e.field.advanced?.transform):m;s(p),e.onValueChange&&e.onValueChange({name:a(e.field.name),type:e.field.type,value:p})};let Ge=(0,Y.useRef)(null);Ge.current=m=>{let p=e.field.event?.change;p&&jr(p,({sources:b,states:I,values:ue})=>{i(()=>{Jr(m,b,(q,$)=>{c(Ht(q,e.field.name),$)}),to(m,I,(q,$)=>{let Ue=q.map(U=>Ht(U,e.field.name));L(U=>$?Ue.reduce((te,Ee)=>({...te,[Ee]:$}),U):Ue.reduce((te,Ee)=>jt(te,Ee),U));let W=$?.hidden===!0?Ue:$===void 0?Ue.filter(U=>le(U)?.hidden===!0):[];W.length>0&&h(U=>{let te=!1,Ee={...U};for(let Le of Object.keys(U))W.some(He=>Le===He||Le.startsWith(`${He}.`))&&(delete Ee[Le],te=!0);return te?Ee:U})})}),no(m,ue,(q,$,Ue)=>{let W=Ht(q,e.field.name);if(n.get(_i)[W]){Jl($)&&_(He=>({...He,[W]:$}));return}let U=ve(W),te=U?ut($,U):$,Le=n.get(Z)[W];if(Ue.onlyIfTargetEmpty&&!G(Le)){let He=n.get($n)[W];if(!Object.is(He,Le))return}if(te!==Le){if(jl(W)){D({target:W,value:te});return}Be(W,te)}})})};let R=(0,Y.useCallback)(m=>{let b=B.safeParse(m).error?.issues.map(q=>q.message)??[],I=e.field.validation?.custom,ue=I?ii(m,I,q=>n.get(ke(q)),f.current):[];k([...b,...ue])},[e.field.validation?.custom,B,k,n]),x=(0,Y.useRef)(null);x.current=()=>{let m=n.get(Gn);m?.target===e.field.name&&(D(null),G(n.get(Z)[m.target])&&Be(m.target,m.value))};let S=(0,Y.useCallback)(m=>{if(!v){let p=m.target.value;e.config.validation.blur&&R(p)}x.current?.()},[v,e.config.validation.blur,R]);return{applyChangeEventsRef:Ge,commonProps:N,entity:r,hasClickable:v,onBlur:S,onValueChangeRef:$e,setTimeoutRef:o,shouldSkipOnChange:l,validated:R,valueRef:g}}var Hi=require("fast-equals");var Yi=require("jotai"),ee=require("react");function qi(e,t){let{name:n}=e,r=(0,ee.useRef)(!1),[o,i]=(0,Yi.useAtom)(ke(n)),a=(0,ee.use)(Ne),s=(0,ee.useEffectEvent)((c,g=!1)=>{let f=Te(e)?ut(c,e.advanced?.transform):c;!g&&!(0,Hi.deepEqual)(o,f)&&(r.current=!0),i(f)}),l=(0,ee.useEffectEvent)(c=>{let{found:g,value:f}=gt(a(n),c);if(w(f)){s(f);return}if(w(e.defaultValue)){s(e.defaultValue,!0);return}g&&s(f)});(0,ee.useEffect)(()=>{if(t){l(t);return}w(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 Yn=require("react/jsx-runtime");function Zi(e){let{useSource:t,useExtraProps:n,getValue:r,shouldSkipChange:o,dispatchChange:i,buildInitialSelected:a,isInitialReady:s}=e.strategies,{setValue:l,shouldSkipOnChange:u,value:c}=qi(e.field,e.value),{data:g,setSource:f,isStaticSource:v}=t(e.field,e.config,c),{applyChangeEventsRef:h,commonProps:L,entity:k,hasClickable:V,onBlur:D,onValueChangeRef:_,setTimeoutRef:B,validated:O,valueRef:N}=Ui(e,{setValue:l,shouldSkipOnChange:u,value:c,setSource:f}),le=n?.(e.field),ve=(0,je.useRef)(!1),{commonPropsWithOptions:Be,defaultValue:$e}=Lo(e.field,L,g,c,v?e.translations:void 0),Ge=Po(e.field,$e);(0,je.useEffect)(()=>{let x=!!e.value||w(e.field.defaultValue);if(ve.current||!x)return;if(!e.field.event?.change){ve.current=!0;return}let S=e.value?Q(e.field.name,e.value):void 0,m=w(S)?S:e.field.defaultValue;if(!w(m)||!s(e.field,m,g))return;ve.current=!0;let p=a(m,g,k);h.current?.(p)},[h,a,g,k,s,e.field,e.value]);let R=(0,je.useCallback)(x=>{let S=r(x,e.field);o({field:e.field,shouldSkipOnChange:u,hasClickable:V,inputValue:S,valueRef:N})||(_.current?.(S),e.config.validation.change&&O(S),e.field.event?.change&&i({applyChangeEventsRef:h,data:g,entity:k,inputValue:S,setTimeoutRef:B}))},[h,g,i,k,r,V,_,e.config.validation.change,e.field,B,o,u,O,N]);return on(e.config.inputs[e.field.type],x=>(0,Yn.jsx)(Ei,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:(0,Yn.jsx)(x,{...Be,...e.ariaAttributes,...e.dataAttributes,...le,...Ge,onBlur:D,onChange:R})}))}var Wi=require("react/jsx-runtime");function Je(e){return function(n){return(0,Wi.jsx)(Zi,{...n,strategies:e})}}function Ki(e){let t=X(e)?me(e):null,n=de(e)?Oe(e):null;return{dateFormat:t,timeFormat:n}}var Xi=require("jotai");var Ql=e=>{let t=ui(e);if(t)return t},eu=e=>e.trim()!=="",ji=(0,Xi.atom)({}),sn=yi(ji,{merge:Ql,validateTarget:eu}),Ji=xi(ji);var Qi=require("jotai");function ln(e){return{data:null,setSource:(0,Qi.useSetAtom)(sn(e.name))}}var ea=Je({useSource:ln,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=Ki(e);return Vo(t,n)},getValue:(e,t)=>{let n=e.target.value,r=de(t)?Oe(t):null;if(r!==null)return Ro(n,r);let o=X(t)?me(t):null;return o!==null&&Bt(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)});var ia=require("fast-equals");var ra=require("jotai");var ta=ps(require("swr"),1);function na(e=null,t,n=!1){let{data:r,error:o}=(0,ta.default)(tu(e,t,n),t.fetcher.provider);if(o&&ot.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return Hr(r,e.namespace)}return null}function tu(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!Ve(e.url)){if(si(e.url,t.fetcher.remotePatterns))return e;ot.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function oa(e,t,n){let r=Eo(e,n),[o,i]=(0,ra.useAtom)(sn(e.name)),a=o??r,s=na(a,t,e.disabled),l=Array.isArray(a);return[s,i,l]}function nu(e,t,n){let[r,o,i]=oa(e,t,n);return{data:r,setSource:o,isStaticSource:i}}function ru(e,t){return oe(e)&&t===""}var aa=Je({useSource:nu,getValue:e=>e.target.value,shouldSkipChange:({field:e,shouldSkipOnChange:t,hasClickable:n,inputValue:r,valueRef:o})=>ru(e,r)||!n&&t()&&(!r||(0,ia.deepEqual)(r,o.current)),dispatchChange:({applyChangeEventsRef:e,data:t,entity:n,inputValue:r})=>{e.current?.(wn(r,t,n))},buildInitialSelected:(e,t,n)=>wn(String(e),t,n),isInitialReady:(e,t,n)=>(!We(e)||!!n&&n.length>0)&&w(t)});var sa=Je({useSource:ln,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)});var un=require("react/jsx-runtime");function la(e){return X(e.field)||de(e.field)?(0,un.jsx)(ea,{...e}):so(e.field)?(0,un.jsx)(sa,{...e}):(0,un.jsx)(aa,{...e})}var qn=require("react/jsx-runtime");function ua(e){return!e.errors||e.errors.length===0?null:(0,qn.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,qn.jsx)("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var ca=require("tailwind-merge"),da=require("react/jsx-runtime");function cn(e){let t=e.errors&&e.errors.length>0;return(0,da.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[kr]:"true"},...e.disabled&&{[Nr]:"true"},"data-orientation":e.orientation,className:(0,ca.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 fa=require("tailwind-merge"),ga=require("react/jsx-runtime");function ma(e){return(0,ga.jsx)(cn,{...e,orientation:"vertical",className:(0,fa.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var pa=require("tailwind-merge"),xa=require("react/jsx-runtime");function ya(e){return(0,xa.jsx)(cn,{...e,orientation:"horizontal",className:(0,pa.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 Zn=require("react/jsx-runtime");function ba(e){let t=Dt(e.field),n=H(e.field),r=co(e.field);return e.horizontal?(0,Zn.jsx)(ya,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):(0,Zn.jsx)(ma,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function ha(e){if(!e.field.type)return null;let t=Co(e.field,e.disabled,{lang:e.lang,translations:e.translations}),n=$o(e.field),r=Bo(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 Ra=require("tailwind-merge"),Qe=require("react/jsx-runtime");function va(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=qt(e.style,{horizontal:uo(e.field)}),o=fo(e.field,e.disabled);return(0,Qe.jsxs)("div",{className:(0,Ra.twMerge)("flex flex-col gap-3",Yo(t)),children:[(0,Qe.jsx)(ba,{disabled:o,errors:n,field:e.field,horizontal:r,children:(0,Qe.jsx)(ha,{disabled:o,errors:n,field:e.field,horizontal:r,lang:e.lang,translations:e.translations,children:e.children})}),(0,Qe.jsx)(ua,{errors:n,name:e.field.name})]})}var Sa=require("jotai"),Ca=require("react/jsx-runtime");function Ta(e){return(t,n)=>o=>{let i=(0,Sa.useAtomValue)(e(o.field.name)),a=n(i,o);return a===null?null:(0,Ca.jsx)(t,{...o,...a})}}var ou=Ta(an);function Aa(e){return ou(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var iu=Ta(Qt);function wa(e){return iu(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var Fa=wa(Aa(va));var dn=require("tailwind-merge"),ka=require("react"),T=require("react/jsx-runtime");function Na(e){let t=e.isMultiField||e.collapsed!=null,[n,r]=(0,ka.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,T.jsx)("button",{"aria-label":a("Remove {label} item {index}"),className:(0,dn.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,T.jsx)("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),l=(0,T.jsxs)("div",{className:"flex min-w-0 flex-col font-medium text-zinc-700 dark:text-zinc-400",children:[(0,T.jsx)("span",{className:"text-base",children:e.previewLabel??(0,T.jsxs)(T.Fragment,{children:[e.label," ",e.index+1]})}),!n&&e.previewTags&&(0,T.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,T.jsxs)("div",{className:(0,dn.twMerge)("flex items-center justify-between gap-2",e.isMultiField&&n&&"mb-3"),children:[t?(0,T.jsxs)("div",{className:"flex min-w-0 grow items-center gap-2",children:[(0,T.jsxs)("button",{"aria-expanded":n,"aria-label":a(n?"Collapse {label} {index}":"Expand {label} {index}"),className:(0,dn.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,T.jsx)(Ye,{expanded:n}),l]}),!n&&e.previewBadge&&(0,T.jsx)("div",{className:"ml-auto shrink-0",children:e.previewBadge})]}):l,s]});return e.isMultiField?(0,T.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,T.jsx)(et,{visible:n,children:(0,T.jsx)(Ce,{children:e.children})})]}):t?(0,T.jsxs)("div",{className:"box-border flex w-full min-w-0 flex-col gap-2",children:[u,(0,T.jsx)(et,{visible:n,children:(0,T.jsx)(Ce,{children:e.children})})]}):(0,T.jsxs)("div",{className:"box-border flex w-full min-w-0 items-start gap-2",children:[(0,T.jsx)("div",{className:"flex min-w-0 grow flex-col",children:(0,T.jsx)(Ce,{children:e.children})}),s&&(0,T.jsx)("div",{className:"shrink-0",children:s})]})}var Ea=require("react");var Wn=require("tailwind-merge");var Ia=require("jotai");function fn(e,t){return(0,Ia.useAtomValue)(ke(e))??t}var he=require("react/jsx-runtime");function La({className:e,initialValue:t,name:n,options:r,separator:o,staticLabel:i}){let a=fn(n??"",t);if(i===void 0&&r){let u=(Array.isArray(a)?a:a==null||a===""?[]:[a]).filter(c=>c!=null&&c!=="").map(c=>Oo(c,r));return u.length===0?null:(0,he.jsx)("div",{className:"flex items-center gap-1.5 overflow-hidden",children:u.map((c,g)=>(0,he.jsxs)(Ea.Fragment,{children:[(o||g>0)&&(0,he.jsx)("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),(0,he.jsx)("span",{"aria-label":c,className:(0,Wn.twMerge)("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:c,children:c})]},`${g}:${c}`))})}if(i===void 0&&(G(a)||d(a)||Array.isArray(a)))return null;let s=i??String(a);return(0,he.jsxs)("div",{className:"flex items-center gap-1.5 overflow-hidden",children:[o&&(0,he.jsx)("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),(0,he.jsx)("span",{"aria-label":s,className:(0,Wn.twMerge)("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:s,children:s})]})}var Pa=require("jotai"),Va=require("react");function mn(e,t){let n=(0,Pa.useAtomValue)(Z);return(0,Va.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?Q(e,t):void 0;return i?d(a)?{...a,...o}:o:a},[n,e,t])}var gn=require("react"),Kn=require("react/jsx-runtime");function au(e){return typeof e=="string"?{field:e}:e}function Xn({className:e,fields:t,label:n="Preview",lang:r,name:o,previews:i,translations:a,value:s}){let l=(0,gn.useMemo)(()=>(Array.isArray(i)?i:[i]).map(au),[i]),u=(0,gn.useMemo)(()=>t?Ko(t):void 0,[t]),c=mn(o,s),g=(0,gn.useMemo)(()=>{let f=[];for(let[v,h]of l.entries()){if(h.when!==void 0&&!Ze(c,h.when))continue;if(h.label!==void 0){f.push({key:h.field??`label:${h.label}:${v}`,staticLabel:F(h.label,a)});continue}if(h.field===void 0)continue;let L=`${o}.${h.field}`,k=s!=null?Q(L,s):void 0,V=u?.[h.field],D=V?Do(V,{lang:r,translations:a}):void 0;f.push({key:`${v}:${h.field}`,initialValue:k,options:D,previewName:L})}return f},[l,c,r,o,s,a,u]);return g.length===0?null:(0,Kn.jsx)("div",{"aria-label":n,className:"flex items-center gap-1.5 overflow-hidden",children:g.map((f,v)=>(0,Kn.jsx)(La,{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 pn=require("react/jsx-runtime");function Da({children:e,initialValue:t,name:n}){let r=fn(n,t),i=G(r)||d(r)||Array.isArray(r)?"":String(r);return(0,pn.jsx)(pn.Fragment,{children:e(i)})}var pt=require("react/jsx-runtime");function Oa({canRemove:e,children:t,field:n,index:r,isMultiField:o,itemKey:i,label:a,lang:s,onRemove:l,previewBadge:u,previewLabel:c,previewTags:g,translations:f,value:v}){let h=`${n.name}.${i}`,L=`${a} ${r+1}`,k=mn(h,v);return(0,pt.jsx)(Na,{canRemove:e,collapsed:n.advanced?.collapsed,index:r,isMultiField:o,label:a,onRemove:l,previewLabel:su({fallbackLabel:L,liveItemValue:k,name:h,previewLabel:c,translations:f,value:v}),previewBadge:u?(0,pt.jsx)(Xn,{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:h,previews:u,translations:f,value:v}):void 0,previewTags:g?(0,pt.jsx)(Xn,{fields:n.fields,lang:s,name:h,previews:g,translations:f,value:v}):void 0,translations:f,children:t})}function su({fallbackLabel:e,liveItemValue:t,name:n,previewLabel:r,translations:o,value:i}){if(r===void 0)return;let a=y(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,pt.jsx)(Da,{initialValue:i?Q(s,i):void 0,name:s,children:l=>l||e})}var _a=require("tailwind-merge");var Ma=require("fast-equals");var ze=require("jotai"),A=require("react");function yt(e,t,n){return`${e}.${t}.${n}`}function lu(e,t,n){let r=[];for(let o=0;o<t;o++){let i=e[o],a={};for(let s of n)a[s]=i?.[s];r.push(a)}return r}function za(e,t,n){let r=e.advanced?.length?.min??1,o=e.advanced?.length?.max??1/0,[i,a]=(0,A.useState)(()=>Zo(e,t)),s=(0,A.useRef)(i),l=(0,A.useRef)(i.length);s.current=i;let u=(0,ze.useStore)(),c=(0,ze.useSetAtom)(Z),g=(0,A.useRef)(n);g.current=n;let f=(0,A.useRef)(t),v=(0,A.useMemo)(()=>{let R=[];for(let x of e.fields)if(j(x))for(let S of x.fields)R.push(S.name);else R.push(x.name);return R},[e.fields]),h=(0,A.useCallback)((R,x)=>{let S=Number(R);return Number.isNaN(S)?!1:Number.isInteger(S)&&x>=0&&String(x)!==R},[]),L=(0,A.use)(Ne),k=(0,A.useCallback)(R=>{let x=`${e.name}.`;if(R.startsWith(x)){let S=R.slice(x.length),m=S.indexOf("."),p=m===-1?S:S.slice(0,m),b=Number(p),I=s.current.indexOf(b);h(p,I)&&(R=`${x}${I}${m===-1?"":S.slice(m)}`)}return L(R)},[e.name,h,L]),V=(0,A.useEffectEvent)(()=>{let R=f.current;if(!R)return;let x={...u.get(Z)},S=!1;for(let m of i)for(let p of v){let b=yt(e.name,m,p);if(b in x)continue;let I=Q(b,R);w(I)&&(x[b]=I,S=!0)}S&&c(x)});(0,A.useEffect)(()=>{V()},[]);let D=(0,A.useCallback)((R,x)=>{let S=f.current;return R.map(m=>{let p={};for(let b of v){let I=yt(e.name,m,b),ue=x[I];p[b]=ue!==void 0?ue:S?Q(I,S):void 0}return p})},[e.name,v]),_=(0,A.useCallback)((R,x)=>{g.current?.({name:k(e.name),value:D(R,x)})},[D,e.name,k]),B=(0,A.useCallback)(()=>{if(s.current.length>=o)return;let R=l.current++,x=[...s.current,R];a(x),_(x,u.get(Z))},[_,o,u]),O=(0,A.useCallback)(R=>{if(s.current.length<=r)return;let x=s.current[R],S=s.current.filter((b,I)=>I!==R),p={...u.get(Z)};for(let b of v)delete p[yt(e.name,x,b)];a(S),c(p),_(S,p)},[_,e.name,v,r,c,u]),N=(0,ze.useSetAtom)(Bi(e.name));(0,A.useEffect)(()=>(N(!0),()=>N(void 0)),[N]);let[le,ve]=(0,ze.useAtom)(Mi(e.name)),Be=(0,A.useEffectEvent)(R=>{let x=Math.min(Math.max(R.length,r),o),S=u.get(Z);if((0,Ma.deepEqual)(D(s.current,S),lu(R,x,v)))return;let m=[];for(let b=0;b<x;b++)m.push(s.current[b]??l.current++);let p={...S};for(let b of s.current)for(let I of v)delete p[yt(e.name,b,I)];m.forEach((b,I)=>{let ue=R[I];if(ue)for(let q of v){let $=ue[q];$!==void 0&&(p[yt(e.name,b,q)]=$)}}),c(p),a(m),_(m,p)});(0,A.useEffect)(()=>{le&&(Be(le),ve(void 0))},[le,ve]);let $e=i.length<o,Ge=i.length>r;return[i,B,O,$e,Ge,o,k]}var Re=require("react/jsx-runtime"),uu="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 Ba(e){let{field:t,lang:n,onValueChange:r,translations:o,value:i,children:a}=e,[s,l,u,c,g,f,v]=za(t,i,r),h=F(Wo(t),o),L=t.advanced?.action?F(t.advanced.action,o):J("Add item",o),k=f!==1/0,V=qo(t),{label:D,tags:_,badge:B}=t.advanced?.preview??{};return(0,Re.jsx)(Ne.Provider,{value:v,children:(0,Re.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[s.map((O,N)=>(0,Re.jsx)(Oa,{canRemove:g,field:t,index:N,isMultiField:V,itemKey:O,label:h,lang:n,onRemove:u,previewBadge:B,previewLabel:D,previewTags:_,translations:o,value:i,children:a(O)},O)),(0,Re.jsxs)("button",{"aria-disabled":!c,"aria-label":k?`${L}, ${s.length} of ${f}`:L,className:(0,_a.twMerge)(uu,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:[(0,Re.jsxs)("span",{className:"flex items-center gap-2",children:[(0,Re.jsx)("span",{"aria-hidden":"true",className:"text-base leading-none",children:"+"}),L]}),k&&(0,Re.jsxs)("span",{"aria-hidden":"true",className:"text-zinc-400 tabular-nums dark:text-zinc-500",children:[s.length," / ",f]})]})]})})}var Ga=require("react/jsx-runtime");function $a(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0,n=ie(e.field.label,e.translations),r=ie(e.field.description,e.translations);return(0,Ga.jsx)(Wt,{description:r,empty:t,id:e.field.name,title:n,children:e.children})}var yn=require("react/jsx-runtime");function Ua({children:e,field:t,lang:n,onValueChange:r,translations:o,value:i}){return(0,yn.jsx)(en,{container:t,fields:t.fields,children:(0,yn.jsx)($a,{field:t,translations:o,children:(0,yn.jsx)(Ba,{field:t,lang:n,onValueChange:r,translations:o,value:i,children:e})})})}var Ha=require("tailwind-merge");var xt=require("react/jsx-runtime");function Ya(e){let t=Ho(e.column?.advanced?.cols);return(0,xt.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[(0,xt.jsx)("div",{"data-slot":"column",className:(0,Ha.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&(0,xt.jsx)(tn,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}var Wa=require("react");var Za=require("react/jsx-runtime");function qa(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>Ot(n)||at(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:j(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return(0,Za.jsx)(bt,{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 Ie=require("react/jsx-runtime");function bt(e){let{field:t,list:n}=e.components;return Ut(e.fields).map((r,o)=>(0,Ie.jsxs)(Wa.Fragment,{children:[j(r)&&(0,Ie.jsx)(Ya,{column:r,config:e.config,context:e.context,translations:e.translations,children:(0,Ie.jsx)(bt,{...e,fields:r.fields})}),Ot(r)&&(0,Ie.jsx)(t,{disabled:e.disabled,field:r,lang:e.lang,style:e.style,translations:e.translations,children:e.children}),at(r)&&(0,Ie.jsx)(n,{field:r,lang:e.lang,onValueChange:e.onValueChange,translations:e.translations,value:e.value,children:i=>(0,Ie.jsx)(qa,{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 Xa=require("react/jsx-runtime");function Ka(e){return n=>(0,Xa.jsx)(bt,{...n,components:e})}var ja=Ka({field:Fa,list:Ua});var Jn=require("jotai");var ht=require("react");function Qa(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},s=(0,Jn.useSetAtom)(Vi),l=(0,Jn.useSetAtom)(wi),u={data:null,error:null,success:!1},[c,g,f]=(0,ht.useActionState)(async(v,h)=>{let[L,k]=e(),V=Qo(L,k,a);if(i===!1)return t?await t(h,V):v;let D=qr(h),_=du(D,k),B=V.safeParse(_);if(!B.success){let N=ei(B.error);return(0,ht.startTransition)(()=>{s(N)}),jn(D,{description:J("Please correct the errors and try again.",a),details:[],title:J("There were validation errors submitting the form.",a)})}let O=Zr(B.data);if(t)try{let N=await t(O,V);return N.success?(r?.(N.data),o||(0,ht.startTransition)(()=>{l()}),Ja(O,o)):jn(O,N.error)}catch(N){return ot.error("Error executing form action:",N),jn(O,{title:J("An unexpected error occurred submitting the form.",a),details:cu(N,a)})}return Ja(B.data,o)},u);return[g,c,f]}function cu(e,t){return e instanceof Error?[e.message]:[J("Unknown error",t)]}function Ja(e,t=!1){return{data:t?e:null,error:null,success:!0}}function jn(e,t){return{data:e,error:t,success:!1}}function du(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],me(r));o&&(n[r.name]=o)}return n}var rs=require("react");var _e=require("react");var es=require("react"),xn=require("jotai");function ts(){let e=(0,xn.useSetAtom)(Pi),t=(0,xn.useSetAtom)(Ci),n=(0,xn.useSetAtom)(Ji);return(0,es.useCallback)((r,o)=>{let i=Array.isArray(r)?r:[r];e(i),n(i),o?.keepValue||t(i)},[e,n,t])}function ns(){let e=ts(),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 se=require("react/jsx-runtime");function os(e){let t=(0,rs.useMemo)(()=>So(e.lang,e.translations),[e.lang,e.translations]),[n,r,o]=ns(),[i,a,s]=Qa(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,se.jsxs)(se.Fragment,{children:[l&&on(e.config.alert,c=>(0,se.jsx)("div",{className:"mb-4 w-full",children:(0,se.jsx)(c,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),(0,se.jsx)(vi,{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:g})=>(0,se.jsx)(ja,{config:e.config,context:e.context,disabled:c,fields:g,lang:e.lang,onValueChange:e.onValueChange,style:e.config.style,translations:t,value:u,children:f=>(0,se.jsx)(la,{...f,config:e.config,context:e.context,getSchema:n,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:u})})})]})}var is=require("jotai"),Qn=require("react/jsx-runtime");function as(e){return(0,Qn.jsx)(is.Provider,{children:(0,Qn.jsx)(os,{...e})})}function ss(e,t){for(let n of e){if("name"in n&&typeof n.name=="string"){t.push(n.name);continue}"fields"in n&&ss(n.fields??[],t)}}function ls(e,t){let n=[];for(let o of e)ss(o.fields??[],n);let r=t;for(let o of n)gt(o,t).found||(r===t&&(r={...t}),r[o]=void 0);return r}
|
|
1
|
+
"use strict";var cs=Object.create;var Rt=Object.defineProperty;var ds=Object.getOwnPropertyDescriptor;var fs=Object.getOwnPropertyNames;var ms=Object.getPrototypeOf,gs=Object.prototype.hasOwnProperty;var ps=(e,t)=>{for(var n in t)Rt(e,n,{get:t[n],enumerable:!0})},nr=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of fs(t))!gs.call(e,o)&&o!==n&&Rt(e,o,{get:()=>t[o],enumerable:!(r=ds(t,o))||r.enumerable});return e};var ys=(e,t,n)=>(n=e!=null?cs(ms(e)):{},nr(t||!e||!e.__esModule?Rt(n,"default",{value:e,enumerable:!0}):n,e)),xs=e=>nr(Rt({},"__esModule",{value:!0}),e);var gu={};ps(gu,{Form:()=>ss,withDeclaredFields:()=>us});module.exports=xs(gu);var or=require("react/jsx-runtime");function rr(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,or.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var hn=require("react/jsx-runtime");function Ye(e){return(0,hn.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,hn.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 ar=require("react");var ir=require("react"),vt=(0,ir.createContext)(!1);var Rn=require("react/jsx-runtime");function tt({children:e,visible:t}){return(0,Rn.jsx)(ar.Activity,{mode:t?"visible":"hidden",children:(0,Rn.jsx)(vt,{value:!0,children:e})})}var St="input",sr="input/date",lr="input/email",ur="input/number";var cr="input/time";var dr="textarea",fr="radio",mr="checkbox",vn="list";var gr="select",pr="select/active",yr="select/day",xr="select/month",br="select/timezone",hr="select/year";var Rr="chips",vr="chips/day",Sr="chips/month",nt="column",Tr="description",Sn="fields",Ar="label",X="value",Tt="options",Tn="email",wr="number",Cr="password",Fr="tel",rt="text",kr="aria-errormessage",Nr="aria-invalid",Ir="data-invalid",Er="data-readonly",Lr="aria",Pr="data",At="max",Vr="maxLength",wt="min",Dr="minLength",qe="$ref";var Or="source",Mr="state",Ct="http://luna.internal";var zr="type",_r={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};var V=require("date-fns"),Le=require("date-fns/locale");function d(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function G(e){return e==null||e===""}function ne(e){return p(e)||typeof e=="number"||An(e)}function p(e){return typeof e=="string"}function Br(e){return d(e)&&"url"in e}function An(e){return typeof e=="boolean"}var $r={en:Le.enUS,"en-US":Le.enUS,es:Le.es,"es-ES":Le.es,"es-MX":Le.es},bs={short:"M/d/yy",medium:"MMM d, yyyy",long:"MMMM d, yyyy",full:"EEEE, MMMM d, yyyy"},hs={ms:1,s:1e3,min:6e4,h:36e5,d:864e5};function Gr(e){if(e)return $r[e]??$r[e.split("-")[0]]}function Ft(e){if(typeof e=="number"&&!Number.isNaN(e))return e;if(p(e)&&e.trim()!==""){let t=Number(e);return Number.isNaN(t)?null:t}return null}function Ur(e,t,n){let r=hs[t];if(r===void 0)return String(e);let o=e*r,i=(0,V.intervalToDuration)({start:0,end:o});return(0,V.formatDuration)(i,{locale:n})}function Hr(e){if(e instanceof Date)return(0,V.isValid)(e)?e:null;if(p(e)){let t=(0,V.parseISO)(e);if((0,V.isValid)(t))return t;let n=new Date(e);return(0,V.isValid)(n)?n:null}if(typeof e=="number"){let t=new Date(e);return(0,V.isValid)(t)?t:null}return null}var Rs={currency:(e,t,n)=>{let r=Ft(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=Ft(e);return r===null?String(e):new Intl.NumberFormat(n.locale,{style:"percent"}).format(r)},number:(e,t,n)=>{let r=Ft(e);return r===null?String(e):new Intl.NumberFormat(n.locale).format(r)},date:(e,t,n)=>{let r=Hr(e);if(!r)return String(e);let o=t[0]??"short",i=Gr(n.locale);if(o==="relative")return(0,V.formatDistanceToNow)(r,{addSuffix:!0,locale:i});let a=bs[o]??o;return(0,V.format)(r,a,{locale:i})},duration:(e,t,n)=>{let r=Gr(n.locale);if(typeof e=="number")return Ur(e,t[0]??"ms",r);if(p(e)){let i=Ft(e);if(i!==null)return Ur(i,t[0]??"ms",r)}let o=Hr(e);return o?(0,V.formatDistanceToNow)(o,{addSuffix:!0,locale:r}):String(e)}};function Yr(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=Rs[o];if(a)return a(e,i,n)}var vs=/^\d+$/;function Cn(e,t=[],n=X){return Array.isArray(t)?t.find(r=>{let o=Fn(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}:{value:e}}function Fn(e,t=X){if(e!=null){if(Array.isArray(e)&&e.every(ne)||ne(e))return e;if(d(e)){let n=Ss(e,t);if(ne(n))return n}}}function Ss(e,t){let n=M(e,t);if(ne(n))return n}function qr(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||!d(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(d(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 kn(e,t={description:Tr,label:Ar,value:X}){return e.map(n=>{if(d(n)){let r=M(n,t.label),o=M(n,t.value);if(ne(r)&&ne(o)){let i=M(n,t.description);return{label:`${r}`,value:`${o}`,...ne(i)&&{description:`${i}`}}}}return n})}function Zr(e=rt){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==St?n.trim().toLowerCase():rt}function Kr(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 Wr(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=vs.test(l);s in o||(o[s]=u?[]:{}),o=o[s]}let i=r[r.length-1];o[i]=e[n]}return wn(t),t}function wn(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)d(o)&&wn(o);e[t]=r}else d(n)&&wn(n)}}var Ts=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g,As=/{([^}]{1,200})}/,ws=/{([^}]{1,200})}/g,Cs=/^{([^}|]{1,200})}$/;function ue(e,t={},n={}){if(p(e))return ks(e,t,n);if(Array.isArray(e))return e.map(r=>ue(r,t,n));if(d(e)){let r={};for(let o in e)r[o]=ue(e[o],t,n);return r}return e}function Xr(e,t={},n={}){if(p(e)){let r=Fs(e,t);if(r!==void 0)return r}return ue(e,t,n)}function ot(e,t={},n={}){return Pe(e)?ue(e,t,n):e}function Pe(e){return p(e)?As.test(e):Array.isArray(e)?e.some(t=>Pe(t)):d(e)?Object.values(e).some(t=>Pe(t)):!1}function jr(e,t){return t.includes(".")?M(e,t):e[t]}function Fs(e,t){let n=Cs.exec(e);if(!n)return;let r=n[1].trim();if(!r)return;let o=jr(t,r);if(d(o)||Array.isArray(o))return o}function ks(e,t={},n={}){return e.replace(ws,(r,o)=>{let i=String(o).split("|").map(c=>c.trim()),[a,...s]=i;if(!a)return r;let l=jr(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 g=Yr(u,c,{locale:n.locale});if(g===void 0)return r;u=g}return String(u)})}function Jr(e,t){if(!p(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Ts.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)=>{Nn()&&!In()&&kt().error("[Luna Form]",...e)},warn:(...e)=>{Nn()&&!In()&&kt().warn("[Luna Form]",...e)},info:(...e)=>{Nn()&&!In()&&kt().info("[Luna Form]",...e)}},Nn=()=>typeof kt()<"u",In=()=>!0,kt=()=>globalThis.console;function Qr(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===X&&n.push(i),i.action===Or&&r.push(i),i.action===Mr&&o.push(i);t({sources:r,states:o,values:n})}function eo(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(Br(i)){let a=ue(i.url,e),s=i.body?ue(i.body,e):i.body;n(o,{...i,url:a,body:s})}}}var Ve={eq:Ps,gt:Ms,gte:zs,in:Ds,lt:_s,lte:Bs,neq:Vs,nin:Os,contains:$s,exists:no,empty:Gs,truthy:Us},Ns=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,to=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function Is(e){return typeof e=="string"&&Ns.test(e)}function Es(e){return typeof e=="string"&&to.test(e)}function Ls(e){let t=e.match(to);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 ve(e){return Is(e)?new Date(e).getTime():Es(e)?Ls(e):Number(e)}function Ps(e,t){return e===t}function Vs(e,t){return e!==t}function Ds(e,t){return Array.isArray(t)&&t.includes(String(e))}function Os(e,t){return Array.isArray(t)&&!t.includes(String(e))}function Ms(e,t){return ve(e)>ve(t)}function zs(e,t){return ve(e)>=ve(t)}function _s(e,t){return ve(e)<ve(t)}function Bs(e,t){return ve(e)<=ve(t)}function $s(e,t){return typeof e=="string"?e.includes(String(t)):Array.isArray(e)?e.map(String).includes(String(t)):!1}function no(e){return Array.isArray(e)?e.length>0:e!=null&&e!==""}function Gs(e){return!no(e)}function Us(e){return Array.isArray(e)?e.length>0:!!e}function Ze(e,t){if(t===void 0)return!0;if(p(t)){let n=Nt(e,X);return Array.isArray(n)?n.length===1&&n[0]===t:n===t}if(An(t)){let n=Nt(e,X);return(Array.isArray(n)?n.length>0:!!n)===t}if(Array.isArray(t)){let n=Nt(e,X);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=Nt(e,t.field??X),{operator:r="eq",value:o}=t,i=Ve[r];return i?i(n,o):!1}function Nt(e,t){return d(e)?M(e,t):e}function ro(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 oo(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?Xr(i,e):void 0,{onlyIfTargetEmpty:r.onlyIfTargetEmpty??!1})}var at=e=>I(pr)(e),io=e=>I(yr)(e),It=e=>I(xr)(e),Et=e=>I(hr)(e),ao=e=>I(br)(e),Lt=e=>I(vr)(e),Pt=e=>I(Sr)(e),j=I(sr),ce=I(cr),H=I(mr),re=I(Rr),de=I(fr),Se=I(St),oe=I(gr),En=I(dr),so=I(rt,Tn,Cr,Fr),lo=I(lr,Tn),Vt=I(ur,wr);function Dt(e){return de(e)||H(e)}function st(e){return e.type===vn}function J(e){return e.type===nt}function Ot(e){return e.type!==nt&&e.type!==vn}function Ke(e){return oe(e)||de(e)||re(e)}function uo(e){return Se(e)||En(e)}function w(e){return e!=null&&e!==""}function I(...e){return t=>{let n=p(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function co(e,t={}){if(oe(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&d(n))return[n]}}function fo(e){return de(e)||H(e)?!0:e.advanced?.horizontal??!1}function mo(e){return H(e)?e.advanced?.reverse!==!1:!1}function go(e,t){let n=e.readonly??!1;return t||n}function Mt(e){if(Ys(e)){let t=e.source;if(Array.isArray(t)||d(t)&&!(qe in t))return t}}function po(e){return Array.isArray(Mt(e))}function Ys(e){return de(e)||re(e)||oe(e)&&!e.disabled}var z=require("date-fns"),qs=/^\d+$/,zt=new Date(2e3,0,1),Zs=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[],Ln="default";function bo(e){if(!e)return Ln;try{return Intl.getCanonicalLocales(e)[0]??Ln}catch{return Ln}}function Pn(e){let t=bo(e);return Array.from({length:12},(n,r)=>({value:(r+1).toString(),label:new Date(0,r).toLocaleString(t,{month:"long"})}))}function Vn(e){let t=bo(e);return Array.from({length:7},(n,r)=>({value:r.toString(),label:new Date(2e3,0,2+r).toLocaleString(t,{weekday:"long"})}))}function ho(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 Dn(){return new Date().getFullYear()}function Ks(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function Ws(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return _r[n]??"Other"}function Xs(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function yo(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=Xs(r,e);return{offset:i,longName:a}}function xo(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function Ro(){let e=new Date,t=Ks(),n=new Map,r=xo(t),{offset:o,longName:i}=yo(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let l of Zs()){if(l===t)continue;let u=xo(l),{offset:c,longName:g}=yo(l,e),f={value:l,label:`${u} - ${g} (${c})`},b=Ws(l);if(b==="Other")continue;let h=n.get(b);h?h.push(f):n.set(b,[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 On(e,t){if(typeof e=="number")return e;let n=t??Dn(),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,z.parse)(e,t,zt);return(0,z.isValid)(n)?(0,z.format)(n,"yyyy-MM-dd"):""}catch{return""}}function vo(e,t){if(!e)return"";try{let n=(0,z.parse)(e,t,zt);return(0,z.isValid)(n)?(0,z.format)(n,"HH:mm:ss"):""}catch{return""}}function So(e,t="HH:mm"){if(!e)return"";try{let n=e.split(":").length===3?"HH:mm:ss":"HH:mm",r=(0,z.parse)(e,n,zt);return(0,z.isValid)(r)?(0,z.format)(r,t):""}catch{return""}}function Bt(e,t="MMMM d, yyyy"){if(!e)return"";try{let n=(0,z.parse)(e,"yyyy-MM-dd",zt);return(0,z.isValid)(n)?(0,z.format)(n,t):""}catch{return""}}function De(e){return e.advanced?.format??"HH:mm"}function fe(e){return e.advanced?.format??"MMMM d, yyyy"}var js={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 Ao(e,t){let n=t?.[e??""],r=e?js[Js(e)]:void 0;return r?n?{...r,...n}:r:n}function Js(e){return e.toLowerCase().split(/[-_]/)[0]}function F(e,t){return e?t?t[e]??e:e:""}function ie(e,t){return e?F(e,t):void 0}function lt(e,t){if(!t)return e;let n=!1,r=e.map(o=>{let i=Qs(o,t);return i!==o&&(n=!0),i});return n?r:e}function Qs(e,t){if(!d(e))return e;let n=To(e.label,t),r=e.items;if(Array.isArray(r)){let i=lt(r,t);return i===r&&n===e.label?e:{...e,...n!==void 0&&{label:n},items:i}}let o=To(e.description,t);return n===e.label&&o===e.description?e:{...e,...n!==void 0&&{label:n},...o!==void 0&&{description:o}}}function To(e,t){return p(e)?F(e,t):e}var $t=Dn();function Co(e,t){if(re(e))return el(e,t?.lang)}function el(e,t){if(Lt(e))return Vn(t);if(Pt(e))return Pn(t)}function Fo(e,t){if(oe(e))return tl(e,t)}function tl(e,t){let{lang:n,translations:r}=t??{};if(io(e))return Vn(n);if(It(e))return Pn(n);if(Et(e)){let o=e.advanced?.length?.min??$t,i=e.advanced?.length?.max??$t+5;return ho(On(o,$t),On(i,$t))}if(ao(e))return Ro();if(at(e))return lt([{value:"true",label:"Yes"},{value:"false",label:"No"}],r)}function ko(e,t=!1,n){let r={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return Se(e)?{...r,...nl(e)}:oe(e)?{...r,...No(Fo(e,n))}:En(e)?{...r,...ol(e)}:re(e)?{...r,...rl(e,n)}:r}function nl(e){let t=Zr(e.type),n={...e,type:t};return{...al(e),...Io(e),...il(n),...so(n)?Eo(n):{},type:t}}function No(e){return e?{options:e}:{}}function rl(e,t){let n=No(Co(e,t)),r=e.advanced?.multiple??!0;return{...n,multiple:r}}function ol(e){return{...Io(e),...Eo(e)}}function Io(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function il(e){return Vt(e)?sl(e):{}}function al(e){if(ce(e)){let t=De(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function Eo(e){return Lo(e,{min:Dr,max:Vr})}function sl(e){return Lo(e,{min:wt,max:At})}function Lo(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 Po(e,t){let n=Mt(e);return n||co(e,t)}function ll(e,t){let n=d(t)&&e.name in t?t[e.name]:t,r=Fn(n,e.advanced?.entity),o=w(r)?r:e.defaultValue;return ce(e)&&w(o)?ul(e,o):j(e)&&w(o)?ml(e,o):o}function ul(e,t){let n=De(e);return p(t)?vo(t,n):t}function cl(e,t,n){return Ke(e)&&Array.isArray(n)?{...t,[Tt]:n}:t}function dl(e,t,n){if(e.required&&!w(n)&&oe(e)&&e.advanced?.preselected!==!1&&Tt in t){let r=t[Tt];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function fl(e,t,n){if(Ke(e)&&Array.isArray(t)){let r=kn(t,e.advanced?.options);return po(e)?lt(r,n):r}return t}function Vo(e,t,n,r,o){let i=ll(e,r),a=Array.isArray(n)?fl(e,n,o):n,s=cl(e,t,a),l=dl(e,s,i);return{commonPropsWithOptions:s,defaultValue:l}}function Do(e,t){return H(e)?{checked:w(t)?t:!1}:re(e)?{value:Array.isArray(t)?t:[]}:j(e)&&p(t)&&w(t)?{value:Bt(t,fe(e))}:at(e)?{value:w(t)?String(t):""}:{value:t??""}}function ml(e,t){let n=fe(e);return p(t)?_t(t,n):t}function Oo(e,t){let n=e??t;return n?{"data-format":n}:{}}function wo(e){let t=[];for(let n of e){if(typeof n=="string"){t.push(n);continue}d(n)&&"value"in n&&"label"in n&&p(n.value)&&p(n.label)&&t.push({label:n.label,value:n.value})}return t}function Mo(e,t){if(!Ke(e))return;let n=re(e)?Co(e,t):Fo(e,t);if(Array.isArray(n)){let o=wo(n);return o.length>0?o:void 0}let r=Mt(e);if(Array.isArray(r)){let o=kn(r,e.advanced?.options),i=wo(lt(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 gl=/^#\/definition\//;function Ut(e=[],t){let n=Gt(e,t);return Array.isArray(n)?n.filter(yl).sort((r,o)=>_o(r)-_o(o)):[]}function Gt(e,t,n=new Map,r=new WeakSet){if(!pl(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=>Gt(i,t,n,r));if(qe in e&&p(e[qe])){let i=e[qe].replace(gl,""),a=M(t,i);return a!==null?Gt(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=Gt(a,t,n,r);return r.delete(e),n.set(e,o),o}function Bo(e){return Object.entries(e??{})}function _o(e){return e.order??Number.MAX_VALUE}function pl(e){return e!==void 0&&d(e)&&Object.keys(e).length>0}function yl(e){return zr in e?!0:Array.isArray(e[Sn])?e[Sn].length>0:!0}function $o(e,t){let n={};for(let[r,o]of Bo(t))n[`${e}-${r}`]=o;return n}function xl(e){return $o(Lr,e)}function bl(e){return $o(Pr,e)}function Go(e,t){let n=xl(e.advanced?.aria);return t&&t.length>0&&(n[Nr]="true",n[kr]=`${e.name}-error`),n}function Uo(e){return bl(e.advanced?.data)}var Ho={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Yo={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function qo(e,t=2){return Ho[e&&e in Ho?e:t]}function Zo(e){if(e&&e in Yo)return Yo[e]}function hl(e,t){let n=e.advanced?.length?.min??1;if(t){let r=M(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function Ko(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===nt}function Wo(e,t){let n=hl(e,t);return Array.from({length:n},(r,o)=>o)}function Xo(e){return e.advanced?.title??e.label??e.name}function jo(e){let t={};for(let n of e)if(J(n))for(let r of n.fields)t[r.name]=r;else t[n.name]=n;return t}function Ht(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 Rl=[[H,Jo],[lo,vl],[Vt,Al],[de,Sl],[at,Jo],[It,Cl],[Et,wl],[re,Mn],[Lt,Mn],[Pt,Mn]];function ti(e,t=[],n){let r=C.z.object(e);if(t.length===0)return r;let o=Il(r,t,n);return Pl(o,t,n)}function ni(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 ri(e,t){for(let[n,r]of Rl)if(n(e))return r(e,t);return Tl(e,t)}function vl(e,t){let n=C.z.string().trim();if(e.required){let r=Te(e,t),o=n.min(1,r).pipe(Qo(e,t));return C.z.preprocess(i=>G(i)?"":i,o)}return n.pipe(Qo(e,t)).or(C.z.literal("")).nullable()}function Jo(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?(H(e)?n=n.refine(r=>r===!0,{message:Te(e,t)}):n=n.refine(r=>typeof r=="boolean",{message:Te(e,t)}),C.z.preprocess(r=>r===null?!1:r,n)):n.nullable()}function Sl(e,t){let n=C.z.coerce.string();return e.required?(n=n.min(1,Te(e,t)),C.z.preprocess(r=>G(r)?"":r,n)):n.or(C.z.literal("")).nullable()}function Tl(e,t){let n=C.z.coerce.string().trim();return n=oi(n,e,t),e.required?(n=ii(n,e,t),C.z.preprocess(r=>G(r)?"":r,n)):n.nullable()}function Al(e,t){let n=C.z.coerce.number().int();return n=oi(n,e,t),e.required?(n=ii(n,e,t),C.z.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function wl(e,t){return e.required?C.z.preprocess(Fl,C.z.coerce.number({message:Te(e,t)}).int()):C.z.coerce.number().int().nullable()}function Cl(e,t){let n=Te(e,t),r=C.z.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function Fl(e){return e===null||e===""?void 0:e}function Qo(e,t){let n=e.validation?.email?F(e.validation?.email,t):void 0;return C.z.email(n)}function oi(e,t,n){return e=kl(e,t,n),e=Nl(e,t,n),e}function ii(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,Te(t,n)):e}var kl=(e,t,n)=>ai(e,t,wt,n),Nl=(e,t,n)=>ai(e,t,At,n);function ai(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 Il(e,t=[],n){let r=Ll(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:s}of r)if(!El(o,a,s)){let l=F(s.message,n);i.addIssue({code:"custom",message:l,path:[a]})}})}function El(e,t,n){let r=n.operator??"eq",o=Ve[r];return o?o(Yt(e,t),Yt(e,n.field)):!1}function Ll(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 si(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=F(a.message,r);o.push(u)}}return o}function Te(e,t){return e.validation?.required?F(e.validation?.required,t):void 0}function Mn(e,t){let n=C.z.array(C.z.string());return e.required&&(n=n.min(1,Te(e,t))),C.z.preprocess(r=>G(r)?[]:Array.isArray(r)?r.map(String):[String(r)],n)}function Pl(e,t=[],n){let r=t.filter(Vl);return r.length===0?e:e.superRefine((o,i)=>{let a=d(o)?o:{};for(let s of r)for(let l of Dl(a,s,n))i.addIssue({code:"custom",path:l.path,message:l.message})})}function Vl(e){let t=e.validation;return t!==void 0&&(t.requiredWhen!==void 0||t.pattern!==void 0||t.rules!==void 0)}function Dl(e,t,n){let r=[],o=Yt(e,t.name),i=t.validation?.requiredWhen;if(i){let l=(Array.isArray(i)?i:[i]).find(u=>ut(e,u));l&&!zn(o)&&r.push({path:[t.name],message:ie(l.message??t.validation?.required,n)})}let a=t.validation?.pattern;a&&!li(a,o)&&r.push({path:[t.name],message:ie(a.message,n)});for(let s of t.validation?.rules??[])Ol(e,s.when)&&!Ml(s,o)&&r.push({path:[t.name],message:ie(s.message,n)});return r}function ut(e,t){let n=Ve[t.operator??"eq"];return n?n(Yt(e,t.field),t.value):!1}function Yt(e,t){return t in e?e[t]:M(e,t)??void 0}function Ol(e,t){if(!t)return!0;if(Array.isArray(t))return t.every(o=>ut(e,o));if("field"in t)return ut(e,t);let n=t.all?t.all.every(o=>ut(e,o)):!0,r=t.any?t.any.some(o=>ut(e,o)):!0;return n&&r}function Ml(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 ei(t)>=Number(e.value);case"max":return ei(t)<=Number(e.value);case"oneOf":return Array.isArray(e.value)&&e.value.map(String).includes(String(t));case"pattern":return _l(e.value)?li(e.value,t):!0;default:return!0}}function li(e,t){return!zn(t)||typeof t!="string"||e.allowInterpolation&&(Pe(t)||zl(t))?!0:new RegExp(e.regex,e.flags).test(t)}function zl(e){return p(e)&&e.trimStart().startsWith("@")}function zn(e){return p(e)?e.trim().length>0:Ve.exists(e,void 0)}function ei(e){return typeof e=="number"?e:p(e)||Array.isArray(e)?e.length:0}function _l(e){return d(e)&&"regex"in e}function ui(e,t){if(!t||!$l(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||Bl(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 Bl(e){return e==="https"?"443":"80"}function $l(e){return/^(https?:)?\/\//.test(e)}function ci(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,Ct);new URL(t,Ct).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(Ct,""):o}catch{return t||e}}function di(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=ci(t.url,n.url),o=Gl(t,n),i=Ul(t,n);return{...t,...n,url:r,body:o,headers:i}})}function Gl(e,t){return d(t.body)&&d(e?.body)?{...e.body,...t.body}:t.body??e?.body}function Ul(e,t){return d(t.headers)&&d(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function qt(e,t){return{...e,...t}}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 ct(e,t){return!t||!p(e)||G(e)?e:(Array.isArray(t)?t:[t]).reduce((r,o)=>{let i=Hl[o];return i?i(r):r},e)}var fi=require("react/jsx-runtime");function me(e){return Jr(e,(t,n,r)=>(0,fi.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}var Zt=require("react"),ae=require("react/jsx-runtime");function mi(e){let{fields:t=[]}=e.section,[n,r]=(0,Zt.useState)(!1),o=(0,Zt.useCallback)(()=>r(i=>!i),[]);return(0,ae.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,ae.jsx)("legend",{children:(0,ae.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,ae.jsx)(Ye,{expanded:n}),(0,ae.jsx)("span",{children:me(e.title)})]})}),(0,ae.jsx)(tt,{visible:n,children:(0,ae.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,ae.jsx)("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:me(e.description)}),e.group]})})]})}var Ae=require("react/jsx-runtime");function gi(e){let t=(0,Ae.jsxs)("div",{className:"flex flex-col",children:[e.title&&(0,Ae.jsx)("legend",{className:"mb-3 font-medium text-zinc-800 dark:text-zinc-200",children:me(e.title)}),e.description&&(0,Ae.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:me(e.description)})]});return e.step?(0,Ae.jsxs)("div",{className:"flex flex-row items-start gap-4",children:[(0,Ae.jsx)("div",{className:"bg-primary text-primary-foreground flex size-6 shrink-0 items-center justify-center rounded-full",children:(0,Ae.jsx)("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}var dt=require("react/jsx-runtime");function Kt(e){return(0,dt.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,dt.jsx)(gi,{description:e.description,step:e.step,title:e.title}),(0,dt.jsx)("div",{className:"w-full min-w-0",children:e.children})]})}var pi=require("react/jsx-runtime");function we(e){return(0,pi.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 Wt=require("react/jsx-runtime");function yi(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=qt(e.style,{compact:e.section.advanced?.compact}),o=(0,Wt.jsx)(we,{compact:r,children:e.children});if(!e.section.title&&!e.section.description)return o;let i=ie(e.section.title,e.translations),a=ie(e.section.description,e.translations);return e.section.advanced?.collapsible?(0,Wt.jsx)(mi,{description:a,group:o,section:e.section,title:i}):(0,Wt.jsx)(Kt,{description:a,empty:t.length===0,id:e.section.id?.toString(),step:n,title:i,children:o})}var _n=require("react/jsx-runtime");function xi(){return(0,_n.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,_n.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-zinc-200 dark:bg-zinc-800"})})}var vi=require("jotai");var Ce=require("jotai"),Bn=require("jotai-family"),Xt=require("fast-equals");function jt(e,t){let{[t]:n,...r}=e;return r}function Yl(e){return(0,Bn.atomFamily)(t=>(0,Ce.atom)(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];(0,Xt.deepEqual)(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,jt(i,t))}))}function ql(e){return(0,Ce.atom)(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function Zl(e){return(0,Ce.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 Kl(e){return(0,Ce.atom)(null,(t,n,r)=>{let o=t(e);(0,Xt.deepEqual)(o,r)||n(e,r)})}function bi(e,t={}){let{merge:n,validateTarget:r}=t;return(0,Bn.atomFamily)(o=>(0,Ce.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 g=c[o];(!g||!(0,Xt.deepEqual)(g,l))&&(c[o]=l,a(e,{...u,[s]:c}))}else o in c&&(delete c[o],Object.keys(c).length===0?a(e,jt(u,s)):a(e,{...u,[s]:c}))}))}function hi(e){return(0,Ce.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 ge(e={}){let t=(0,Ce.atom)(e);return{atom:t,clearAll:ql(t),clear:Zl(t),bulkReport:Kl(t),report:Yl(t)}}var Ri=ge(),Jt=Ri.atom,Qt=Ri.report;function Wl(e,t){return e.fields.every(n=>Si(n,t))}function Si(e,t){return t[e.name]?.hidden??e.hidden??!1}function Xl(e,t){return J(e)?Wl(e,t):Si(e,t)}function en(e){let t=(0,vi.useAtomValue)(Jt);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>Xl(r,t))?null:e.children}var pe=require("react/jsx-runtime");function Ti(e){let t=Ut(e.sections,e.definition);return(0,pe.jsx)("div",{className:"h-full w-full",children:(0,pe.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,pe.jsxs)(we,{children:[t.map((n,r)=>(0,pe.jsxs)(en,{fields:n.fields??[],children:[(0,pe.jsx)(yi,{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,pe.jsx)(xi,{})]},`key-${n.id}-${r}`)),e.control&&(0,pe.jsx)(rr,{isPending:e.isPending,children:e.control})]})})})}var wi=require("react/jsx-runtime");function Ai(e){return(0,wi.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 Ci=require("react"),We=require("react/jsx-runtime");function tn(e){let t={context:e.context,env:e.config?.env,value:e.value},r={locale:e.config?.env?.locale},[o,i]=(0,Ci.useState)(()=>d(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),a=()=>i(c=>!c),s=d(e.text)&&p(e.text.title)?me(F(ot(e.text.title,t,r),e.translations)):void 0,l=F(ot(p(e.text)?e.text:e.text?.message,t,r),e.translations),u=me(l);return u?(0,We.jsxs)("div",{className:"flex flex-col gap-2",children:[s&&(0,We.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,We.jsx)(Ye,{expanded:o})]}),o&&(0,We.jsx)(Ai,{title:l,children:u})]}):null}var $n=require("jotai");var nn=ge(),Y=nn.atom,Fi=nn.clearAll,ki=nn.clear,Fe=nn.report,Gn=(0,$n.atom)({}),Un=(0,$n.atom)(null);var Hn=require("jotai"),Ni=require("react/jsx-runtime");function rn(e){let t=(0,Hn.useAtomValue)(Fe(e.field.name)),r=(0,Hn.useAtomValue)(Qt(e.field.name))?.description??e.field.description;return(0,Ni.jsx)(tn,{config:e.config,context:e.context,text:r,translations:e.translations,value:t})}var Ii=require("tailwind-merge"),ft=require("react/jsx-runtime");function Ei(e){let t=e.style?.showOptionalLabel??!0,n=de(e.field)||H(e.field);return(0,ft.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,Ii.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:p(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:Q("(Optional)",e.translations)})]})}var mt=require("react/jsx-runtime");function Li(e){let t={context:e.context,env:e.config?.env},n=ot(e.field.label,t);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)(Ei,{field:e.field,style:e.config?.style,translations:e.translations,children:F(n,e.translations)}),e.horizontal===!0&&(0,mt.jsx)(rn,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}var Oe=require("react/jsx-runtime");function Pi(e){return(0,Oe.jsxs)(Oe.Fragment,{children:[e.field.name&&e.field.label&&(0,Oe.jsx)(Li,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&(0,Oe.jsx)(rn,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}function on(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(d(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 je=require("react");var Vi=require("react"),jl=e=>e,ke=(0,Vi.createContext)(jl);var Yn=ge(),Di=Yn.clear,Oi=Yn.bulkReport,an=Yn.report;var Mi=ge(),zi=Mi.atom,_i=Mi.report,Bi=ge(),sn=Bi.atom,$i=Bi.report;var q=require("react");var ye=require("react");function Gi(e,t,n,r){let{name:o}=e,i=(0,ye.useMemo)(()=>ri(e,r),[e,r]),a=(0,ye.use)(vt),s=(0,ye.useEffectEvent)(u=>{u&&t(u,i,e)}),l=(0,ye.useEffectEvent)(u=>{u&&n(u,{keepValue:a})});return(0,ye.useEffect)(()=>(s(o),()=>{l(o)}),[o]),i}var xe=require("jotai");var Xe=require("react");function Ui(){let e=(0,Xe.useRef)(null);return(0,Xe.useEffect)(()=>()=>{e.current&&clearTimeout(e.current)},[]),(0,Xe.useCallback)((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 Ql(e){return Array.isArray(e)&&e.every(d)}function Hi(e,t){let n=(0,xe.useStore)(),r=e.field.advanced?.entity,o=Ui(),[,i]=(0,q.useTransition)(),a=(0,q.use)(ke),{setValue:s,shouldSkipOnChange:l,value:u,setSource:c}=t,g=(0,q.useRef)(u);g.current=u;let f=(0,q.useRef)(e.translations);f.current=e.translations;let b=Dt(e.field),h=(0,xe.useSetAtom)(Y),E=(0,xe.useSetAtom)(Jt),k=(0,xe.useSetAtom)(an(e.field.name)),D=(0,xe.useSetAtom)(Gn),L=(0,xe.useSetAtom)(Un),_=(0,xe.useSetAtom)(zi),B=Gi(e.field,e.onMount,e.onUnmount,e.translations),O=F(e.commonProps.placeholder,e.translations),N={...e.commonProps,placeholder:O};function le(m){let[,R]=e.getSchema();return R.find(v=>v.name===m)}function Re(m){let R=le(m);if(R&&Se(R)){let v=R.advanced?.transform;if(v)return v}}function _e(m,R){if(h(v=>({...v,[m]:R})),D(v=>({...v,[m]:R})),e.onValueChange){let v=le(m);v&&e.onValueChange({name:a(m),type:v.type,value:R})}}let Be=(0,q.useRef)(null);Be.current=m=>{if(e.field.advanced?.transient)return;let R=Se(e.field)?ct(m,e.field.advanced?.transform):m;s(R),e.onValueChange&&e.onValueChange({name:a(e.field.name),type:e.field.type,value:R})};let $e=(0,q.useRef)(null);$e.current=m=>{let R=e.field.event?.change;R&&Qr(R,({sources:v,states:P,values:Ge})=>{i(()=>{eo(m,v,(Z,$)=>{c(Ht(Z,e.field.name),$)}),ro(m,P,(Z,$)=>{let Ue=Z.map(U=>Ht(U,e.field.name));E(U=>$?Ue.reduce((te,Ie)=>({...te,[Ie]:$}),U):Ue.reduce((te,Ie)=>jt(te,Ie),U));let W=$?.hidden===!0?Ue:$===void 0?Ue.filter(U=>le(U)?.hidden===!0):[];W.length>0&&h(U=>{let te=!1,Ie={...U};for(let Ee of Object.keys(U))W.some(He=>Ee===He||Ee.startsWith(`${He}.`))&&(delete Ie[Ee],te=!0);return te?Ie:U})})}),oo(m,Ge,(Z,$,Ue)=>{let W=Ht(Z,e.field.name);if(n.get(sn)[W]){Ql($)&&_(He=>({...He,[W]:$}));return}let U=Re(W),te=U?ct($,U):$,Ee=n.get(Y)[W];if(Ue.onlyIfTargetEmpty&&!G(Ee)){let He=n.get(Gn)[W];if(!Object.is(He,Ee))return}if(te!==Ee){if(Jl(W)){L({target:W,value:te});return}_e(W,te)}})})};let y=(0,q.useCallback)(m=>{let v=B.safeParse(m).error?.issues.map(Z=>Z.message)??[],P=e.field.validation?.custom,Ge=P?si(m,P,Z=>n.get(Fe(Z)),f.current):[];k([...v,...Ge])},[e.field.validation?.custom,B,k,n]),x=(0,q.useRef)(null);x.current=()=>{let m=n.get(Un);m?.target===e.field.name&&(L(null),G(n.get(Y)[m.target])&&_e(m.target,m.value))};let S=(0,q.useCallback)(m=>{if(!b){let R=m.target.value;e.config.validation.blur&&y(R)}x.current?.()},[b,e.config.validation.blur,y]);return{applyChangeEventsRef:$e,commonProps:N,entity:r,hasClickable:b,onBlur:S,onValueChangeRef:Be,setTimeoutRef:o,shouldSkipOnChange:l,validated:y,valueRef:g}}var Yi=require("fast-equals");var qi=require("jotai"),ee=require("react");function Zi(e,t){let{name:n}=e,r=(0,ee.useRef)(!1),[o,i]=(0,qi.useAtom)(Fe(n)),a=(0,ee.use)(ke),s=(0,ee.useEffectEvent)((c,g=!1)=>{let f=Se(e)?ct(c,e.advanced?.transform):c;!g&&!(0,Yi.deepEqual)(o,f)&&(r.current=!0),i(f)}),l=(0,ee.useEffectEvent)(c=>{let{found:g,value:f}=pt(a(n),c);if(w(f)){s(f);return}if(w(e.defaultValue)){s(e.defaultValue,!0);return}g&&s(f)});(0,ee.useEffect)(()=>{if(t){l(t);return}w(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 qn=require("react/jsx-runtime");function Ki(e){let{useSource:t,useExtraProps:n,getValue:r,shouldSkipChange:o,dispatchChange:i,buildInitialSelected:a,isInitialReady:s}=e.strategies,{setValue:l,shouldSkipOnChange:u,value:c}=Zi(e.field,e.value),{data:g,setSource:f,isStaticSource:b}=t(e.field,e.config,c),{applyChangeEventsRef:h,commonProps:E,entity:k,hasClickable:D,onBlur:L,onValueChangeRef:_,setTimeoutRef:B,validated:O,valueRef:N}=Hi(e,{setValue:l,shouldSkipOnChange:u,value:c,setSource:f}),le=n?.(e.field),Re=(0,je.useRef)(!1),{commonPropsWithOptions:_e,defaultValue:Be}=Vo(e.field,E,g,c,b?e.translations:void 0),$e=Do(e.field,Be);(0,je.useEffect)(()=>{let x=!!e.value||w(e.field.defaultValue);if(Re.current||!x)return;if(!e.field.event?.change){Re.current=!0;return}let S=e.value?K(e.field.name,e.value):void 0,m=w(S)?S:e.field.defaultValue;if(!w(m)||!s(e.field,m,g))return;Re.current=!0;let R=a(m,g,k);h.current?.(R)},[h,a,g,k,s,e.field,e.value]);let y=(0,je.useCallback)(x=>{let S=r(x,e.field);o({field:e.field,shouldSkipOnChange:u,hasClickable:D,inputValue:S,valueRef:N})||(_.current?.(S),e.config.validation.change&&O(S),e.field.event?.change&&i({applyChangeEventsRef:h,data:g,entity:k,inputValue:S,setTimeoutRef:B}))},[h,g,i,k,r,D,_,e.config.validation.change,e.field,B,o,u,O,N]);return on(e.config.inputs[e.field.type],x=>(0,qn.jsx)(Pi,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:(0,qn.jsx)(x,{..._e,...e.ariaAttributes,...e.dataAttributes,...le,...$e,onBlur:L,onChange:y})}))}var Wi=require("react/jsx-runtime");function Je(e){return function(n){return(0,Wi.jsx)(Ki,{...n,strategies:e})}}function Xi(e){let t=j(e)?fe(e):null,n=ce(e)?De(e):null;return{dateFormat:t,timeFormat:n}}var ji=require("jotai");var eu=e=>{let t=di(e);if(t)return t},tu=e=>e.trim()!=="",Ji=(0,ji.atom)({}),ln=bi(Ji,{merge:eu,validateTarget:tu}),Qi=hi(Ji);var ea=require("jotai");function un(e){return{data:null,setSource:(0,ea.useSetAtom)(ln(e.name))}}var ta=Je({useSource:un,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=Xi(e);return Oo(t,n)},getValue:(e,t)=>{let n=e.target.value,r=ce(t)?De(t):null;if(r!==null)return So(n,r);let o=j(t)?fe(t):null;return o!==null&&Bt(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)});var aa=require("fast-equals");var oa=require("jotai");var na=ys(require("swr"),1);function ra(e=null,t,n=!1){let{data:r,error:o}=(0,na.default)(nu(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 nu(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!Pe(e.url)){if(ui(e.url,t.fetcher.remotePatterns))return e;it.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function ia(e,t,n){let r=Po(e,n),[o,i]=(0,oa.useAtom)(ln(e.name)),a=o??r,s=ra(a,t,e.disabled),l=Array.isArray(a);return[s,i,l]}function ru(e,t,n){let[r,o,i]=ia(e,t,n);return{data:r,setSource:o,isStaticSource:i}}function ou(e,t){return oe(e)&&t===""}var sa=Je({useSource:ru,getValue:e=>e.target.value,shouldSkipChange:({field:e,shouldSkipOnChange:t,hasClickable:n,inputValue:r,valueRef:o})=>ou(e,r)||!n&&t()&&(!r||(0,aa.deepEqual)(r,o.current)),dispatchChange:({applyChangeEventsRef:e,data:t,entity:n,inputValue:r})=>{e.current?.(Cn(r,t,n))},buildInitialSelected:(e,t,n)=>Cn(String(e),t,n),isInitialReady:(e,t,n)=>(!Ke(e)||!!n&&n.length>0)&&w(t)});var la=Je({useSource:un,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)});var cn=require("react/jsx-runtime");function ua(e){return j(e.field)||ce(e.field)?(0,cn.jsx)(ta,{...e}):uo(e.field)?(0,cn.jsx)(la,{...e}):(0,cn.jsx)(sa,{...e})}var Zn=require("react/jsx-runtime");function ca(e){return!e.errors||e.errors.length===0?null:(0,Zn.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,Zn.jsx)("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var da=require("tailwind-merge"),fa=require("react/jsx-runtime");function dn(e){let t=e.errors&&e.errors.length>0;return(0,fa.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Ir]:"true"},...e.disabled&&{[Er]:"true"},"data-orientation":e.orientation,className:(0,da.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 ma=require("tailwind-merge"),pa=require("react/jsx-runtime");function ga(e){return(0,pa.jsx)(dn,{...e,orientation:"vertical",className:(0,ma.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var ya=require("tailwind-merge"),ba=require("react/jsx-runtime");function xa(e){return(0,ba.jsx)(dn,{...e,orientation:"horizontal",className:(0,ya.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 Kn=require("react/jsx-runtime");function ha(e){let t=Dt(e.field),n=H(e.field),r=mo(e.field);return e.horizontal?(0,Kn.jsx)(xa,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):(0,Kn.jsx)(ga,{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=ko(e.field,e.disabled,{lang:e.lang,translations:e.translations}),n=Uo(e.field),r=Go(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 va=require("tailwind-merge"),Qe=require("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}=qt(e.style,{horizontal:fo(e.field)}),o=go(e.field,e.disabled);return(0,Qe.jsxs)("div",{className:(0,va.twMerge)("flex flex-col gap-3",Zo(t)),children:[(0,Qe.jsx)(ha,{disabled:o,errors:n,field:e.field,horizontal:r,children:(0,Qe.jsx)(Ra,{disabled:o,errors:n,field:e.field,horizontal:r,lang:e.lang,translations:e.translations,children:e.children})}),(0,Qe.jsx)(ca,{errors:n,name:e.field.name})]})}var Ta=require("jotai"),Fa=require("react/jsx-runtime");function Aa(e){return(t,n)=>o=>{let i=(0,Ta.useAtomValue)(e(o.field.name)),a=n(i,o);return a===null?null:(0,Fa.jsx)(t,{...o,...a})}}var iu=Aa(an);function wa(e){return iu(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var au=Aa(Qt);function Ca(e){return au(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var ka=Ca(wa(Sa));var fn=require("tailwind-merge"),Na=require("react"),A=require("react/jsx-runtime");function Ia(e){let t=e.isMultiField||e.collapsed!=null,[n,r]=(0,Na.useState)(t?!e.collapsed:!0);function o(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function i(){r(c=>!c)}let a=c=>ue(Q(c,e.translations),{index:e.index+1,label:e.label}),s=e.canRemove&&e.onRemove!=null&&(0,A.jsx)("button",{"aria-label":a("Remove {label} item {index}"),className:(0,fn.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,A.jsx)("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),l=(0,A.jsxs)("div",{className:"flex min-w-0 flex-col font-medium text-zinc-700 dark:text-zinc-400",children:[(0,A.jsx)("span",{className:"text-base",children:e.previewLabel??(0,A.jsxs)(A.Fragment,{children:[e.label," ",e.index+1]})}),!n&&e.previewTags&&(0,A.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,A.jsxs)("div",{className:(0,fn.twMerge)("flex items-center justify-between gap-2",e.isMultiField&&n&&"mb-3"),children:[t?(0,A.jsxs)("div",{className:"flex min-w-0 grow items-center gap-2",children:[(0,A.jsxs)("button",{"aria-expanded":n,"aria-label":a(n?"Collapse {label} {index}":"Expand {label} {index}"),className:(0,fn.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,A.jsx)(Ye,{expanded:n}),l]}),!n&&e.previewBadge&&(0,A.jsx)("div",{className:"ml-auto shrink-0",children:e.previewBadge})]}):l,s]});return e.isMultiField?(0,A.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,A.jsx)(tt,{visible:n,children:(0,A.jsx)(we,{children:e.children})})]}):t?(0,A.jsxs)("div",{className:"box-border flex w-full min-w-0 flex-col gap-2",children:[u,(0,A.jsx)(tt,{visible:n,children:(0,A.jsx)(we,{children:e.children})})]}):(0,A.jsxs)("div",{className:"box-border flex w-full min-w-0 items-start gap-2",children:[(0,A.jsx)("div",{className:"flex min-w-0 grow flex-col",children:(0,A.jsx)(we,{children:e.children})}),s&&(0,A.jsx)("div",{className:"shrink-0",children:s})]})}var La=require("react");var Wn=require("tailwind-merge");var Ea=require("jotai");function mn(e,t){return(0,Ea.useAtomValue)(Fe(e))??t}var be=require("react/jsx-runtime");function Pa({className:e,initialValue:t,name:n,options:r,separator:o,staticLabel:i}){let a=mn(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,be.jsx)("div",{className:"flex items-center gap-1.5 overflow-hidden",children:u.map((c,g)=>(0,be.jsxs)(La.Fragment,{children:[(o||g>0)&&(0,be.jsx)("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),(0,be.jsx)("span",{"aria-label":c,className:(0,Wn.twMerge)("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:c,children:c})]},`${g}:${c}`))})}if(i===void 0&&(G(a)||d(a)||Array.isArray(a)))return null;let s=i??String(a);return(0,be.jsxs)("div",{className:"flex items-center gap-1.5 overflow-hidden",children:[o&&(0,be.jsx)("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),(0,be.jsx)("span",{"aria-label":s,className:(0,Wn.twMerge)("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:s,children:s})]})}var Va=require("jotai"),Da=require("react");function gn(e,t){let n=(0,Va.useAtomValue)(Y);return(0,Da.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?d(a)?{...a,...o}:o:a},[n,e,t])}var pn=require("react"),Xn=require("react/jsx-runtime");function su(e){return typeof e=="string"?{field:e}:e}function jn({className:e,fields:t,label:n="Preview",lang:r,name:o,previews:i,translations:a,value:s}){let l=(0,pn.useMemo)(()=>(Array.isArray(i)?i:[i]).map(su),[i]),u=(0,pn.useMemo)(()=>t?jo(t):void 0,[t]),c=gn(o,s),g=(0,pn.useMemo)(()=>{let f=[];for(let[b,h]of l.entries()){if(h.when!==void 0&&!Ze(c,h.when))continue;if(h.label!==void 0){f.push({key:h.field??`label:${h.label}:${b}`,staticLabel:F(h.label,a)});continue}if(h.field===void 0)continue;let E=`${o}.${h.field}`,k=s!=null?K(E,s):void 0,D=u?.[h.field],L=D?Mo(D,{lang:r,translations:a}):void 0;f.push({key:`${b}:${h.field}`,initialValue:k,options:L,previewName:E})}return f},[l,c,r,o,s,a,u]);return g.length===0?null:(0,Xn.jsx)("div",{"aria-label":n,className:"flex items-center gap-1.5 overflow-hidden",children:g.map((f,b)=>(0,Xn.jsx)(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:b>0,staticLabel:"staticLabel"in f?f.staticLabel:void 0},f.key))})}var yn=require("react/jsx-runtime");function Oa({children:e,initialValue:t,name:n}){let r=mn(n,t),i=G(r)||d(r)||Array.isArray(r)?"":String(r);return(0,yn.jsx)(yn.Fragment,{children:e(i)})}var yt=require("react/jsx-runtime");function Ma({canRemove:e,children:t,field:n,index:r,isMultiField:o,itemKey:i,label:a,lang:s,onRemove:l,previewBadge:u,previewLabel:c,previewTags:g,translations:f,value:b}){let h=`${n.name}.${i}`,E=`${a} ${r+1}`,k=gn(h,b);return(0,yt.jsx)(Ia,{canRemove:e,collapsed:n.advanced?.collapsed,index:r,isMultiField:o,label:a,onRemove:l,previewLabel:lu({fallbackLabel:E,liveItemValue:k,name:h,previewLabel:c,translations:f,value:b}),previewBadge:u?(0,yt.jsx)(jn,{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:h,previews:u,translations:f,value:b}):void 0,previewTags:g?(0,yt.jsx)(jn,{fields:n.fields,lang:s,name:h,previews:g,translations:f,value:b}):void 0,translations:f,children:t})}function lu({fallbackLabel:e,liveItemValue:t,name:n,previewLabel:r,translations:o,value:i}){if(r===void 0)return;let a=p(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,yt.jsx)(Oa,{initialValue:i?K(s,i):void 0,name:s,children:l=>l||e})}var Ba=require("tailwind-merge");var za=require("fast-equals");var Me=require("jotai"),T=require("react");function et(e,t,n){return`${e}.${t}.${n}`}function uu(e,t){let{initial:n,mounted:r,values:o}=t,i=r[e];if(i)return Jn(e,i,t);let a=o[e];if(a!==void 0)return a;if(n)return K(e,n)}function Jn(e,{items:t,leafNames:n},r){return t.map(o=>{let i={};for(let a of n)i[a]=uu(et(e,o,a),r);return i})}function cu(e,t,n){let r=[];for(let o=0;o<t;o++){let i=e[o],a={};for(let s of n)a[s]=i?.[s];r.push(a)}return r}function _a(e,t,n){let r=e.advanced?.length?.min??1,o=e.advanced?.length?.max??1/0,[i,a]=(0,T.useState)(()=>Wo(e,t)),s=(0,T.useRef)(i),l=(0,T.useRef)(i.length);s.current=i;let u=(0,Me.useStore)(),c=(0,Me.useSetAtom)(Y),g=(0,T.useRef)(n);g.current=n;let f=(0,T.useRef)(t),b=(0,T.useMemo)(()=>{let y=[];for(let x of e.fields)if(J(x))for(let S of x.fields)y.push(S.name);else y.push(x.name);return y},[e.fields]),h=(0,T.useCallback)((y,x)=>{let S=Number(y);return Number.isNaN(S)?!1:Number.isInteger(S)&&x>=0&&String(x)!==y},[]),E=(0,T.use)(ke),k=(0,T.useCallback)(y=>{let x=`${e.name}.`;if(y.startsWith(x)){let S=y.slice(x.length),m=S.indexOf("."),R=m===-1?S:S.slice(0,m),v=Number(R),P=s.current.indexOf(v);h(R,P)&&(y=`${x}${P}${m===-1?"":S.slice(m)}`)}return E(y)},[e.name,h,E]),D=(0,T.useEffectEvent)(()=>{let y=f.current;if(!y)return;let x={...u.get(Y)},S=!1;for(let m of i)for(let R of b){let v=et(e.name,m,R);if(v in x)continue;let P=K(v,y);w(P)&&(x[v]=P,S=!0)}S&&c(x)});(0,T.useEffect)(()=>{D()},[]);let L=(0,T.useCallback)((y,x)=>Jn(e.name,{items:y,leafNames:b},{mounted:u.get(sn),values:x,initial:f.current}),[e.name,b,u]),_=(0,T.useCallback)((y,x)=>{g.current?.({name:k(e.name),value:L(y,x)})},[L,e.name,k]),B=(0,T.useCallback)(()=>{if(s.current.length>=o)return;let y=l.current++,x=[...s.current,y];a(x),_(x,u.get(Y))},[_,o,u]),O=(0,T.useCallback)(y=>{if(s.current.length<=r)return;let x=s.current[y],S=s.current.filter((v,P)=>P!==y),R={...u.get(Y)};for(let v of b)delete R[et(e.name,x,v)];a(S),c(R),_(S,R)},[_,e.name,b,r,c,u]),N=(0,Me.useSetAtom)($i(e.name));(0,T.useEffect)(()=>{N({items:i,leafNames:b})},[i,b,N]),(0,T.useEffect)(()=>()=>{let y=u.get(Y);c({...y,[e.name]:L(s.current,y)}),N(void 0)},[L,e.name,N,c,u]);let[le,Re]=(0,Me.useAtom)(_i(e.name)),_e=(0,T.useEffectEvent)(y=>{let x=Math.min(Math.max(y.length,r),o),S=u.get(Y);if((0,za.deepEqual)(L(s.current,S),cu(y,x,b)))return;let m=[];for(let v=0;v<x;v++)m.push(s.current[v]??l.current++);let R={...S};for(let v of s.current)for(let P of b)delete R[et(e.name,v,P)];m.forEach((v,P)=>{let Ge=y[P];if(Ge)for(let Z of b){let $=Ge[Z];$!==void 0&&(R[et(e.name,v,Z)]=$)}}),c(R),a(m),_(m,R)});(0,T.useEffect)(()=>{le&&(_e(le),Re(void 0))},[le,Re]);let Be=i.length<o,$e=i.length>r;return[i,B,O,Be,$e,o,k]}var he=require("react/jsx-runtime"),du="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 $a(e){let{field:t,lang:n,onValueChange:r,translations:o,value:i,children:a}=e,[s,l,u,c,g,f,b]=_a(t,i,r),h=F(Xo(t),o),E=t.advanced?.action?F(t.advanced.action,o):Q("Add item",o),k=f!==1/0,D=Ko(t),{label:L,tags:_,badge:B}=t.advanced?.preview??{};return(0,he.jsx)(ke.Provider,{value:b,children:(0,he.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[s.map((O,N)=>(0,he.jsx)(Ma,{canRemove:g,field:t,index:N,isMultiField:D,itemKey:O,label:h,lang:n,onRemove:u,previewBadge:B,previewLabel:L,previewTags:_,translations:o,value:i,children:a(O)},O)),(0,he.jsxs)("button",{"aria-disabled":!c,"aria-label":k?`${E}, ${s.length} of ${f}`:E,className:(0,Ba.twMerge)(du,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:[(0,he.jsxs)("span",{className:"flex items-center gap-2",children:[(0,he.jsx)("span",{"aria-hidden":"true",className:"text-base leading-none",children:"+"}),E]}),k&&(0,he.jsxs)("span",{"aria-hidden":"true",className:"text-zinc-400 tabular-nums dark:text-zinc-500",children:[s.length," / ",f]})]})]})})}var Ua=require("react/jsx-runtime");function Ga(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0,n=ie(e.field.label,e.translations),r=ie(e.field.description,e.translations);return(0,Ua.jsx)(Kt,{description:r,empty:t,id:e.field.name,title:n,children:e.children})}var xn=require("react/jsx-runtime");function Ha({children:e,field:t,lang:n,onValueChange:r,translations:o,value:i}){return(0,xn.jsx)(en,{container:t,fields:t.fields,children:(0,xn.jsx)(Ga,{field:t,translations:o,children:(0,xn.jsx)($a,{field:t,lang:n,onValueChange:r,translations:o,value:i,children:e})})})}var Ya=require("tailwind-merge");var xt=require("react/jsx-runtime");function qa(e){let t=qo(e.column?.advanced?.cols);return(0,xt.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[(0,xt.jsx)("div",{"data-slot":"column",className:(0,Ya.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&(0,xt.jsx)(tn,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}var Wa=require("react");var Ka=require("react/jsx-runtime");function Za(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>Ot(n)||st(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:J(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return(0,Ka.jsx)(bt,{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 Ne=require("react/jsx-runtime");function bt(e){let{field:t,list:n}=e.components;return Ut(e.fields).map((r,o)=>(0,Ne.jsxs)(Wa.Fragment,{children:[J(r)&&(0,Ne.jsx)(qa,{column:r,config:e.config,context:e.context,translations:e.translations,children:(0,Ne.jsx)(bt,{...e,fields:r.fields})}),Ot(r)&&(0,Ne.jsx)(t,{disabled:e.disabled,field:r,lang:e.lang,style:e.style,translations:e.translations,children:e.children}),st(r)&&(0,Ne.jsx)(n,{field:r,lang:e.lang,onValueChange:e.onValueChange,translations:e.translations,value:e.value,children:i=>(0,Ne.jsx)(Za,{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 ja=require("react/jsx-runtime");function Xa(e){return n=>(0,ja.jsx)(bt,{...n,components:e})}var Ja=Xa({field:ka,list:Ha});var er=require("jotai");var ht=require("react");function es(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},s=(0,er.useSetAtom)(Oi),l=(0,er.useSetAtom)(Fi),u={data:null,error:null,success:!1},[c,g,f]=(0,ht.useActionState)(async(b,h)=>{let[E,k]=e(),D=ti(E,k,a);if(i===!1)return t?await t(h,D):b;let L=Kr(h),_=mu(L,k),B=D.safeParse(_);if(!B.success){let N=ni(B.error);return(0,ht.startTransition)(()=>{s(N)}),Qn(L,{description:Q("Please correct the errors and try again.",a),details:[],title:Q("There were validation errors submitting the form.",a)})}let O=Wr(B.data);if(t)try{let N=await t(O,D);return N.success?(r?.(N.data),o||(0,ht.startTransition)(()=>{l()}),Qa(O,o)):Qn(O,N.error)}catch(N){return it.error("Error executing form action:",N),Qn(O,{title:Q("An unexpected error occurred submitting the form.",a),details:fu(N,a)})}return Qa(B.data,o)},u);return[g,c,f]}function fu(e,t){return e instanceof Error?[e.message]:[Q("Unknown error",t)]}function Qa(e,t=!1){return{data:t?e:null,error:null,success:!0}}function Qn(e,t){return{data:e,error:t,success:!1}}function mu(e,t){let n={...e};for(let r of t)if(j(r)&&typeof n[r.name]=="string"&&n[r.name]){let o=_t(n[r.name],fe(r));o&&(n[r.name]=o)}return n}var os=require("react");var ze=require("react");var ts=require("react"),bn=require("jotai");function ns(){let e=(0,bn.useSetAtom)(Di),t=(0,bn.useSetAtom)(ki),n=(0,bn.useSetAtom)(Qi);return(0,ts.useCallback)((r,o)=>{let i=Array.isArray(r)?r:[r];e(i),n(i),o?.keepValue||t(i)},[e,n,t])}function rs(){let e=ns(),t=(0,ze.useRef)({}),n=(0,ze.useRef)([]),r=(0,ze.useCallback)((a,s,l)=>{a in t.current||(t.current[a]=s,n.current.push(l))},[]),o=(0,ze.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,ze.useCallback)(()=>[t.current,n.current],[]),r,o]}var se=require("react/jsx-runtime");function is(e){let t=(0,os.useMemo)(()=>Ao(e.lang,e.translations),[e.lang,e.translations]),[n,r,o]=rs(),[i,a,s]=es(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,se.jsxs)(se.Fragment,{children:[l&&on(e.config.alert,c=>(0,se.jsx)("div",{className:"mb-4 w-full",children:(0,se.jsx)(c,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),(0,se.jsx)(Ti,{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:g})=>(0,se.jsx)(Ja,{config:e.config,context:e.context,disabled:c,fields:g,lang:e.lang,onValueChange:e.onValueChange,style:e.config.style,translations:t,value:u,children:f=>(0,se.jsx)(ua,{...f,config:e.config,context:e.context,getSchema:n,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:u})})})]})}var as=require("jotai"),tr=require("react/jsx-runtime");function ss(e){return(0,tr.jsx)(as.Provider,{children:(0,tr.jsx)(is,{...e})})}function ls(e,t){for(let n of e){if("name"in n&&typeof n.name=="string"){t.push(n.name);continue}"fields"in n&&ls(n.fields??[],t)}}function us(e,t){let n=[];for(let o of e)ls(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}
|
package/dist/client/esm/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as ka}from"react/jsx-runtime";function Pn(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return ka("div",{"data-slot":"field-control",className:"w-full",children:t})}import{jsx as Vn}from"react/jsx-runtime";function ke(e){return Vn("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:Vn("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 Ia}from"react";import{createContext as Na}from"react";var tt=Na(!1);import{jsx as Dn}from"react/jsx-runtime";function De({children:e,visible:t}){return Dn(Ia,{mode:t?"visible":"hidden",children:Dn(tt,{value:!0,children:e})})}var nt="input",On="input/date",Mn="input/email",zn="input/number";var _n="input/time";var Bn="textarea",$n="radio",Gn="checkbox",Xt="list";var Un="select",Hn="select/active",Yn="select/day",qn="select/month",Zn="select/timezone",Wn="select/year";var Kn="chips",Xn="chips/day",jn="chips/month",Oe="column",Jn="description",jt="fields",Qn="label",Y="value",rt="options",Jt="email",er="number",tr="password",nr="tel",Me="text",rr="aria-errormessage",or="aria-invalid",ir="data-invalid",ar="data-readonly",sr="aria",lr="data",ot="max",ur="maxLength",it="min",cr="minLength",Ne="$ref";var dr="source",fr="state",at="http://luna.internal";var mr="type",gr={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};import{format as Ea,formatDistanceToNow as yr,formatDuration as La,intervalToDuration as Pa,isValid as st,parseISO as Va}from"date-fns";import{enUS as xr,es as en}from"date-fns/locale";function d(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function z(e){return e==null||e===""}function j(e){return y(e)||typeof e=="number"||Qt(e)}function y(e){return typeof e=="string"}function pr(e){return d(e)&&"url"in e}function Qt(e){return typeof e=="boolean"}var br={en:xr,"en-US":xr,es:en,"es-ES":en,"es-MX":en},Da={short:"M/d/yy",medium:"MMM d, yyyy",long:"MMMM d, yyyy",full:"EEEE, MMMM d, yyyy"},Oa={ms:1,s:1e3,min:6e4,h:36e5,d:864e5};function hr(e){if(e)return br[e]??br[e.split("-")[0]]}function lt(e){if(typeof e=="number"&&!Number.isNaN(e))return e;if(y(e)&&e.trim()!==""){let t=Number(e);return Number.isNaN(t)?null:t}return null}function Rr(e,t,n){let r=Oa[t];if(r===void 0)return String(e);let o=e*r,i=Pa({start:0,end:o});return La(i,{locale:n})}function vr(e){if(e instanceof Date)return st(e)?e:null;if(y(e)){let t=Va(e);if(st(t))return t;let n=new Date(e);return st(n)?n:null}if(typeof e=="number"){let t=new Date(e);return st(t)?t:null}return null}var Ma={currency:(e,t,n)=>{let r=lt(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=lt(e);return r===null?String(e):new Intl.NumberFormat(n.locale,{style:"percent"}).format(r)},number:(e,t,n)=>{let r=lt(e);return r===null?String(e):new Intl.NumberFormat(n.locale).format(r)},date:(e,t,n)=>{let r=vr(e);if(!r)return String(e);let o=t[0]??"short",i=hr(n.locale);if(o==="relative")return yr(r,{addSuffix:!0,locale:i});let a=Da[o]??o;return Ea(r,a,{locale:i})},duration:(e,t,n)=>{let r=hr(n.locale);if(typeof e=="number")return Rr(e,t[0]??"ms",r);if(y(e)){let i=lt(e);if(i!==null)return Rr(i,t[0]??"ms",r)}let o=vr(e);return o?yr(o,{addSuffix:!0,locale:r}):String(e)}};function Sr(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=Ma[o];if(a)return a(e,i,n)}var za=/^\d+$/;function nn(e,t=[],n=Y){return Array.isArray(t)?t.find(r=>{let o=rn(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}:{value:e}}function rn(e,t=Y){if(e!=null){if(Array.isArray(e)&&e.every(j)||j(e))return e;if(d(e)){let n=_a(e,t);if(j(n))return n}}}function _a(e,t){let n=V(e,t);if(j(n))return n}function Tr(e,t){if(Array.isArray(e))return e;let n=V(e,t);return Array.isArray(n)?n:null}function V(e,t){if(!t||!d(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(d(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:Jn,label:Qn,value:Y}){return e.map(n=>{if(d(n)){let r=V(n,t.label),o=V(n,t.value);if(j(r)&&j(o)){let i=V(n,t.description);return{label:`${r}`,value:`${o}`,...j(i)&&{description:`${i}`}}}}return n})}function Ar(e=Me){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==nt?n.trim().toLowerCase():Me}function wr(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 Cr(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 tn(t),t}function tn(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)d(o)&&tn(o);e[t]=r}else d(n)&&tn(n)}}var Ba=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g,$a=/{([^}]{1,200})}/,Ga=/{([^}]{1,200})}/g,Ua=/^{([^}|]{1,200})}$/;function re(e,t={},n={}){if(y(e))return Ya(e,t,n);if(Array.isArray(e))return e.map(r=>re(r,t,n));if(d(e)){let r={};for(let o in e)r[o]=re(e[o],t,n);return r}return e}function Fr(e,t={},n={}){if(y(e)){let r=Ha(e,t);if(r!==void 0)return r}return re(e,t,n)}function ze(e,t={},n={}){return he(e)?re(e,t,n):e}function he(e){return y(e)?$a.test(e):Array.isArray(e)?e.some(t=>he(t)):d(e)?Object.values(e).some(t=>he(t)):!1}function kr(e,t){return t.includes(".")?V(e,t):e[t]}function Ha(e,t){let n=Ua.exec(e);if(!n)return;let r=n[1].trim();if(!r)return;let o=kr(t,r);if(d(o)||Array.isArray(o))return o}function Ya(e,t={},n={}){return e.replace(Ga,(r,o)=>{let i=String(o).split("|").map(c=>c.trim()),[a,...s]=i;if(!a)return r;let l=kr(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 g=Sr(u,c,{locale:n.locale});if(g===void 0)return r;u=g}return String(u)})}function Nr(e,t){if(!y(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Ba.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 _e={error:(...e)=>{an()&&!sn()&&ut().error("[Luna Form]",...e)},warn:(...e)=>{an()&&!sn()&&ut().warn("[Luna Form]",...e)},info:(...e)=>{an()&&!sn()&&ut().info("[Luna Form]",...e)}},an=()=>typeof ut()<"u",sn=()=>!0,ut=()=>globalThis.console;function Ir(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===Y&&n.push(i),i.action===dr&&r.push(i),i.action===fr&&o.push(i);t({sources:r,states:o,values:n})}function Er(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(pr(i)){let a=re(i.url,e),s=i.body?re(i.body,e):i.body;n(o,{...i,url:a,body:s})}}}var Re={eq:Xa,gt:es,gte:ts,in:Ja,lt:ns,lte:rs,neq:ja,nin:Qa,contains:os,exists:Pr,empty:is,truthy:as},qa=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,Lr=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function Za(e){return typeof e=="string"&&qa.test(e)}function Wa(e){return typeof e=="string"&&Lr.test(e)}function Ka(e){let t=e.match(Lr);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 ce(e){return Za(e)?new Date(e).getTime():Wa(e)?Ka(e):Number(e)}function Xa(e,t){return e===t}function ja(e,t){return e!==t}function Ja(e,t){return Array.isArray(t)&&t.includes(String(e))}function Qa(e,t){return Array.isArray(t)&&!t.includes(String(e))}function es(e,t){return ce(e)>ce(t)}function ts(e,t){return ce(e)>=ce(t)}function ns(e,t){return ce(e)<ce(t)}function rs(e,t){return ce(e)<=ce(t)}function os(e,t){return typeof e=="string"?e.includes(String(t)):Array.isArray(e)?e.map(String).includes(String(t)):!1}function Pr(e){return Array.isArray(e)?e.length>0:e!=null&&e!==""}function is(e){return!Pr(e)}function as(e){return Array.isArray(e)?e.length>0:!!e}function Ie(e,t){if(t===void 0)return!0;if(y(t)){let n=ct(e,Y);return Array.isArray(n)?n.length===1&&n[0]===t:n===t}if(Qt(t)){let n=ct(e,Y);return(Array.isArray(n)?n.length>0:!!n)===t}if(Array.isArray(t)){let n=ct(e,Y);return Array.isArray(n)?n.some(r=>t.includes(String(r))):t.includes(String(n))}return ss(e,t)}function ss(e=null,t){let n=ct(e,t.field??Y),{operator:r="eq",value:o}=t,i=Re[r];return i?i(n,o):!1}function ct(e,t){return d(e)?V(e,t):e}function Vr(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=Ie(e,a);n(s,l?i:void 0)}}function Dr(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?Fr(i,e):void 0,{onlyIfTargetEmpty:r.onlyIfTargetEmpty??!1})}var Be=e=>N(Hn)(e),Or=e=>N(Yn)(e),dt=e=>N(qn)(e),ft=e=>N(Wn)(e),Mr=e=>N(Zn)(e),mt=e=>N(Xn)(e),gt=e=>N(jn)(e),q=N(On),oe=N(_n),B=N(Gn),J=N(Kn),ie=N($n),de=N(nt),Q=N(Un),ln=N(Bn),zr=N(Me,Jt,tr,nr),_r=N(Mn,Jt),pt=N(zn,er);function yt(e){return ie(e)||B(e)}function $e(e){return e.type===Xt}function Z(e){return e.type===Oe}function xt(e){return e.type!==Oe&&e.type!==Xt}function Ee(e){return Q(e)||ie(e)||J(e)}function Br(e){return de(e)||ln(e)}function T(e){return e!=null&&e!==""}function N(...e){return t=>{let n=y(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function $r(e,t={}){if(Q(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&d(n))return[n]}}function Gr(e){return ie(e)||B(e)?!0:e.advanced?.horizontal??!1}function Ur(e){return B(e)?e.advanced?.reverse!==!1:!1}function Hr(e,t){let n=e.readonly??!1;return t||n}function bt(e){if(ls(e)){let t=e.source;if(Array.isArray(t)||d(t)&&!(Ne in t))return t}}function Yr(e){return Array.isArray(bt(e))}function ls(e){return ie(e)||J(e)||Q(e)&&!e.disabled}import{isValid as ht,parse as Rt,format as vt}from"date-fns";var us=/^\d+$/,St=new Date(2e3,0,1),cs=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[],un="default";function Wr(e){if(!e)return un;try{return Intl.getCanonicalLocales(e)[0]??un}catch{return un}}function cn(e){let t=Wr(e);return Array.from({length:12},(n,r)=>({value:(r+1).toString(),label:new Date(0,r).toLocaleString(t,{month:"long"})}))}function dn(e){let t=Wr(e);return Array.from({length:7},(n,r)=>({value:r.toString(),label:new Date(2e3,0,2+r).toLocaleString(t,{weekday:"long"})}))}function Kr(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 fn(){return new Date().getFullYear()}function ds(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function fs(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return gr[n]??"Other"}function ms(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function qr(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=ms(r,e);return{offset:i,longName:a}}function Zr(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function Xr(){let e=new Date,t=ds(),n=new Map,r=Zr(t),{offset:o,longName:i}=qr(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let l of cs()){if(l===t)continue;let u=Zr(l),{offset:c,longName:g}=qr(l,e),f={value:l,label:`${u} - ${g} (${c})`},v=fs(l);if(v==="Other")continue;let h=n.get(v);h?h.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 mn(e,t){if(typeof e=="number")return e;let n=t??fn(),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 us.test(r)?parseInt(r,10):n}function Tt(e,t){if(!e)return"";try{let n=Rt(e,t,St);return ht(n)?vt(n,"yyyy-MM-dd"):""}catch{return""}}function jr(e,t){if(!e)return"";try{let n=Rt(e,t,St);return ht(n)?vt(n,"HH:mm:ss"):""}catch{return""}}function Jr(e,t="HH:mm"){if(!e)return"";try{let n=e.split(":").length===3?"HH:mm:ss":"HH:mm",r=Rt(e,n,St);return ht(r)?vt(r,t):""}catch{return""}}function At(e,t="MMMM d, yyyy"){if(!e)return"";try{let n=Rt(e,"yyyy-MM-dd",St);return ht(n)?vt(n,t):""}catch{return""}}function ve(e){return e.advanced?.format??"HH:mm"}function ae(e){return e.advanced?.format??"MMMM d, yyyy"}var gs={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 A(e,t)}function eo(e,t){let n=t?.[e??""],r=e?gs[ps(e)]:void 0;return r?n?{...r,...n}:r:n}function ps(e){return e.toLowerCase().split(/[-_]/)[0]}function A(e,t){return e?t?t[e]??e:e:""}function ee(e,t){return e?A(e,t):void 0}function Ge(e,t){if(!t)return e;let n=!1,r=e.map(o=>{let i=ys(o,t);return i!==o&&(n=!0),i});return n?r:e}function ys(e,t){if(!d(e))return e;let n=Qr(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=Qr(e.description,t);return n===e.label&&o===e.description?e:{...e,...n!==void 0&&{label:n},...o!==void 0&&{description:o}}}function Qr(e,t){return y(e)?A(e,t):e}var wt=fn();function no(e,t){if(J(e))return xs(e,t?.lang)}function xs(e,t){if(mt(e))return dn(t);if(gt(e))return cn(t)}function ro(e,t){if(Q(e))return bs(e,t)}function bs(e,t){let{lang:n,translations:r}=t??{};if(Or(e))return dn(n);if(dt(e))return cn(n);if(ft(e)){let o=e.advanced?.length?.min??wt,i=e.advanced?.length?.max??wt+5;return Kr(mn(o,wt),mn(i,wt))}if(Mr(e))return Xr();if(Be(e))return Ge([{value:"true",label:"Yes"},{value:"false",label:"No"}],r)}function oo(e,t=!1,n){let r={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return de(e)?{...r,...hs(e)}:Q(e)?{...r,...io(ro(e,n))}:ln(e)?{...r,...vs(e)}:J(e)?{...r,...Rs(e,n)}:r}function hs(e){let t=Ar(e.type),n={...e,type:t};return{...Ts(e),...ao(e),...Ss(n),...zr(n)?so(n):{},type:t}}function io(e){return e?{options:e}:{}}function Rs(e,t){let n=io(no(e,t)),r=e.advanced?.multiple??!0;return{...n,multiple:r}}function vs(e){return{...ao(e),...so(e)}}function ao(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Ss(e){return pt(e)?As(e):{}}function Ts(e){if(oe(e)){let t=ve(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function so(e){return lo(e,{min:cr,max:ur})}function As(e){return lo(e,{min:it,max:ot})}function lo(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=bt(e);return n||$r(e,t)}function ws(e,t){let n=d(t)&&e.name in t?t[e.name]:t,r=rn(n,e.advanced?.entity),o=T(r)?r:e.defaultValue;return oe(e)&&T(o)?Cs(e,o):q(e)&&T(o)?Is(e,o):o}function Cs(e,t){let n=ve(e);return y(t)?jr(t,n):t}function Fs(e,t,n){return Ee(e)&&Array.isArray(n)?{...t,[rt]:n}:t}function ks(e,t,n){if(e.required&&!T(n)&&Q(e)&&e.advanced?.preselected!==!1&&rt in t){let r=t[rt];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function Ns(e,t,n){if(Ee(e)&&Array.isArray(t)){let r=on(t,e.advanced?.options);return Yr(e)?Ge(r,n):r}return t}function co(e,t,n,r,o){let i=ws(e,r),a=Array.isArray(n)?Ns(e,n,o):n,s=Fs(e,t,a),l=ks(e,s,i);return{commonPropsWithOptions:s,defaultValue:l}}function fo(e,t){return B(e)?{checked:T(t)?t:!1}:J(e)?{value:Array.isArray(t)?t:[]}:q(e)&&y(t)&&T(t)?{value:At(t,ae(e))}:Be(e)?{value:T(t)?String(t):""}:{value:t??""}}function Is(e,t){let n=ae(e);return y(t)?Tt(t,n):t}function mo(e,t){let n=e??t;return n?{"data-format":n}:{}}function to(e){let t=[];for(let n of e){if(typeof n=="string"){t.push(n);continue}d(n)&&"value"in n&&"label"in n&&y(n.value)&&y(n.label)&&t.push({label:n.label,value:n.value})}return t}function go(e,t){if(!Ee(e))return;let n=J(e)?no(e,t):ro(e,t);if(Array.isArray(n)){let o=to(n);return o.length>0?o:void 0}let r=bt(e);if(Array.isArray(r)){let o=on(r,e.advanced?.options),i=to(Ge(o,t?.translations));return i.length>0?i:void 0}}function po(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 Es=/^#\/definition\//;function Ft(e=[],t){let n=Ct(e,t);return Array.isArray(n)?n.filter(Ps).sort((r,o)=>yo(r)-yo(o)):[]}function Ct(e,t,n=new Map,r=new WeakSet){if(!Ls(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=>Ct(i,t,n,r));if(Ne in e&&y(e[Ne])){let i=e[Ne].replace(Es,""),a=V(t,i);return a!==null?Ct(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=Ct(a,t,n,r);return r.delete(e),n.set(e,o),o}function xo(e){return Object.entries(e??{})}function yo(e){return e.order??Number.MAX_VALUE}function Ls(e){return e!==void 0&&d(e)&&Object.keys(e).length>0}function Ps(e){return mr in e?!0:Array.isArray(e[jt])?e[jt].length>0:!0}function bo(e,t){let n={};for(let[r,o]of xo(t))n[`${e}-${r}`]=o;return n}function Vs(e){return bo(sr,e)}function Ds(e){return bo(lr,e)}function ho(e,t){let n=Vs(e.advanced?.aria);return t&&t.length>0&&(n[or]="true",n[rr]=`${e.name}-error`),n}function Ro(e){return Ds(e.advanced?.data)}var vo={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},So={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function To(e,t=2){return vo[e&&e in vo?e:t]}function Ao(e){if(e&&e in So)return So[e]}function Os(e,t){let n=e.advanced?.length?.min??1;if(t){let r=V(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function wo(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===Oe}function Co(e,t){let n=Os(e,t);return Array.from({length:n},(r,o)=>o)}function Fo(e){return e.advanced?.title??e.label??e.name}function ko(e){let t={};for(let n of e)if(Z(n))for(let r of n.fields)t[r.name]=r;else t[n.name]=n;return t}function kt(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 w}from"zod";var Ms=[[B,No],[_r,zs],[pt,$s],[ie,_s],[Be,No],[dt,Us],[ft,Gs],[J,gn],[mt,gn],[gt,gn]];function Lo(e,t=[],n){let r=w.object(e);if(t.length===0)return r;let o=Zs(r,t,n);return Xs(o,t,n)}function Po(e){let t={},n=w.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function Vo(e,t){for(let[n,r]of Ms)if(n(e))return r(e,t);return Bs(e,t)}function zs(e,t){let n=w.string().trim();if(e.required){let r=fe(e,t),o=n.min(1,r).pipe(Io(e,t));return w.preprocess(i=>z(i)?"":i,o)}return n.pipe(Io(e,t)).or(w.literal("")).nullable()}function No(e,t){let n=w.preprocess(r=>{if(typeof r=="string"){if(r==="true")return!0;if(r==="false")return!1}return r},w.coerce.boolean());return e.required?(B(e)?n=n.refine(r=>r===!0,{message:fe(e,t)}):n=n.refine(r=>typeof r=="boolean",{message:fe(e,t)}),w.preprocess(r=>r===null?!1:r,n)):n.nullable()}function _s(e,t){let n=w.coerce.string();return e.required?(n=n.min(1,fe(e,t)),w.preprocess(r=>z(r)?"":r,n)):n.or(w.literal("")).nullable()}function Bs(e,t){let n=w.coerce.string().trim();return n=Do(n,e,t),e.required?(n=Oo(n,e,t),w.preprocess(r=>z(r)?"":r,n)):n.nullable()}function $s(e,t){let n=w.coerce.number().int();return n=Do(n,e,t),e.required?(n=Oo(n,e,t),w.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function Gs(e,t){return e.required?w.preprocess(Hs,w.coerce.number({message:fe(e,t)}).int()):w.coerce.number().int().nullable()}function Us(e,t){let n=fe(e,t),r=w.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function Hs(e){return e===null||e===""?void 0:e}function Io(e,t){let n=e.validation?.email?A(e.validation?.email,t):void 0;return w.email(n)}function Do(e,t,n){return e=Ys(e,t,n),e=qs(e,t,n),e}function Oo(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,fe(t,n)):e}var Ys=(e,t,n)=>Mo(e,t,it,n),qs=(e,t,n)=>Mo(e,t,ot,n);function Mo(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?A(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function Zs(e,t=[],n){let r=Ks(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:s}of r)if(!Ws(o,a,s)){let l=A(s.message,n);i.addIssue({code:"custom",message:l,path:[a]})}})}function Ws(e,t,n){let r=n.operator??"eq",o=Re[r];return o?o(Nt(e,t),Nt(e,n.field)):!1}function Ks(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 zo(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let s=a.operator??"eq",l=Re[s];if(l&&!l(e,n(a.field))&&a.message){let u=A(a.message,r);o.push(u)}}return o}function fe(e,t){return e.validation?.required?A(e.validation?.required,t):void 0}function gn(e,t){let n=w.array(w.string());return e.required&&(n=n.min(1,fe(e,t))),w.preprocess(r=>z(r)?[]:Array.isArray(r)?r.map(String):[String(r)],n)}function Xs(e,t=[],n){let r=t.filter(js);return r.length===0?e:e.superRefine((o,i)=>{let a=d(o)?o:{};for(let s of r)for(let l of Js(a,s,n))i.addIssue({code:"custom",path:l.path,message:l.message})})}function js(e){let t=e.validation;return t!==void 0&&(t.requiredWhen!==void 0||t.pattern!==void 0||t.rules!==void 0)}function Js(e,t,n){let r=[],o=Nt(e,t.name),i=t.validation?.requiredWhen;if(i){let l=(Array.isArray(i)?i:[i]).find(u=>Ue(e,u));l&&!pn(o)&&r.push({path:[t.name],message:ee(l.message??t.validation?.required,n)})}let a=t.validation?.pattern;a&&!_o(a,o)&&r.push({path:[t.name],message:ee(a.message,n)});for(let s of t.validation?.rules??[])Qs(e,s.when)&&!el(s,o)&&r.push({path:[t.name],message:ee(s.message,n)});return r}function Ue(e,t){let n=Re[t.operator??"eq"];return n?n(Nt(e,t.field),t.value):!1}function Nt(e,t){return t in e?e[t]:V(e,t)??void 0}function Qs(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 el(e,t){switch(e.assert){case"required":return pn(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 Eo(t)>=Number(e.value);case"max":return Eo(t)<=Number(e.value);case"oneOf":return Array.isArray(e.value)&&e.value.map(String).includes(String(t));case"pattern":return nl(e.value)?_o(e.value,t):!0;default:return!0}}function _o(e,t){return!pn(t)||typeof t!="string"||e.allowInterpolation&&(he(t)||tl(t))?!0:new RegExp(e.regex,e.flags).test(t)}function tl(e){return y(e)&&e.trimStart().startsWith("@")}function pn(e){return y(e)?e.trim().length>0:Re.exists(e,void 0)}function Eo(e){return typeof e=="number"?e:y(e)||Array.isArray(e)?e.length:0}function nl(e){return d(e)&&"regex"in e}function Bo(e,t){if(!t||!ol(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||rl(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 rl(e){return e==="https"?"443":"80"}function ol(e){return/^(https?:)?\/\//.test(e)}function $o(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,at);new URL(t,at).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(at,""):o}catch{return t||e}}function Go(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=$o(t.url,n.url),o=il(t,n),i=al(t,n);return{...t,...n,url:r,body:o,headers:i}})}function il(e,t){return d(t.body)&&d(e?.body)?{...e.body,...t.body}:t.body??e?.body}function al(e,t){return d(t.headers)&&d(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function It(e,t){return{...e,...t}}var sl={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||!y(e)||z(e)?e:(Array.isArray(t)?t:[t]).reduce((r,o)=>{let i=sl[o];return i?i(r):r},e)}import{jsx as ll}from"react/jsx-runtime";function se(e){return Nr(e,(t,n,r)=>ll("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}import{useCallback as ul,useState as cl}from"react";import{jsx as Ye,jsxs as yn}from"react/jsx-runtime";function Uo(e){let{fields:t=[]}=e.section,[n,r]=cl(!1),o=ul(()=>r(i=>!i),[]);return yn("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:yn("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(ke,{expanded:n}),Ye("span",{children:se(e.title)})]})}),Ye(De,{visible:n,children:yn("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:se(e.description)}),e.group]})})]})}import{jsx as Et,jsxs as Ho}from"react/jsx-runtime";function Yo(e){let t=Ho("div",{className:"flex flex-col",children:[e.title&&Et("legend",{className:"mb-3 font-medium text-zinc-800 dark:text-zinc-200",children:se(e.title)}),e.description&&Et("p",{className:"-mt-2 text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:se(e.description)})]});return e.step?Ho("div",{className:"flex flex-row items-start gap-4",children:[Et("div",{className:"bg-primary text-primary-foreground flex size-6 shrink-0 items-center justify-center rounded-full",children:Et("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}import{jsx as qo,jsxs as dl}from"react/jsx-runtime";function Lt(e){return dl("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:[qo(Yo,{description:e.description,step:e.step,title:e.title}),qo("div",{className:"w-full min-w-0",children:e.children})]})}import{jsx as fl}from"react/jsx-runtime";function me(e){return fl("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 xn}from"react/jsx-runtime";function Zo(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=It(e.style,{compact:e.section.advanced?.compact}),o=xn(me,{compact:r,children:e.children});if(!e.section.title&&!e.section.description)return o;let i=ee(e.section.title,e.translations),a=ee(e.section.description,e.translations);return e.section.advanced?.collapsible?xn(Uo,{description:a,group:o,section:e.section,title:i}):xn(Lt,{description:a,empty:t.length===0,id:e.section.id?.toString(),step:n,title:i,children:o})}import{jsx as Wo}from"react/jsx-runtime";function Ko(){return Wo("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:Wo("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-zinc-200 dark:bg-zinc-800"})})}import{useAtomValue as xl}from"jotai";import{atom as Se}from"jotai";import{atomFamily as Xo}from"jotai-family";import{deepEqual as bn}from"fast-equals";function Pt(e,t){let{[t]:n,...r}=e;return r}function ml(e){return Xo(t=>Se(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];bn(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,Pt(i,t))}))}function gl(e){return Se(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function pl(e){return Se(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 yl(e){return Se(null,(t,n,r)=>{let o=t(e);bn(o,r)||n(e,r)})}function jo(e,t={}){let{merge:n,validateTarget:r}=t;return Xo(o=>Se(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 g=c[o];(!g||!bn(g,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 Jo(e){return Se(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 le(e={}){let t=Se(e);return{atom:t,clearAll:gl(t),clear:pl(t),bulkReport:yl(t),report:ml(t)}}var Qo=le(),Vt=Qo.atom,Dt=Qo.report;function bl(e,t){return e.fields.every(n=>ei(n,t))}function ei(e,t){return t[e.name]?.hidden??e.hidden??!1}function hl(e,t){return Z(e)?bl(e,t):ei(e,t)}function Ot(e){let t=xl(Vt);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>hl(r,t))?null:e.children}import{jsx as qe,jsxs as ti}from"react/jsx-runtime";function ni(e){let t=Ft(e.sections,e.definition);return qe("div",{className:"h-full w-full",children:qe("form",{noValidate:e.noValidate,action:e.action,children:ti(me,{children:[t.map((n,r)=>ti(Ot,{fields:n.fields??[],children:[qe(Zo,{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&&qe(Ko,{})]},`key-${n.id}-${r}`)),e.control&&qe(Pn,{isPending:e.isPending,children:e.control})]})})})}import{jsx as Rl}from"react/jsx-runtime";function ri(e){return Rl("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 oi,jsxs as ii}from"react/jsx-runtime";function Mt(e){let t={context:e.context,env:e.config?.env,value:e.value},r={locale:e.config?.env?.locale},[o,i]=vl(()=>d(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),a=()=>i(c=>!c),s=d(e.text)&&y(e.text.title)?se(A(ze(e.text.title,t,r),e.translations)):void 0,l=A(ze(y(e.text)?e.text:e.text?.message,t,r),e.translations),u=se(l);return u?ii("div",{className:"flex flex-col gap-2",children:[s&&ii("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,oi(ke,{expanded:o})]}),o&&oi(ri,{title:l,children:u})]}):null}import{atom as ai}from"jotai";var zt=le(),U=zt.atom,si=zt.clearAll,li=zt.clear,ge=zt.report,hn=ai({}),Rn=ai(null);import{useAtomValue as ui}from"jotai";import{jsx as Sl}from"react/jsx-runtime";function _t(e){let t=ui(ge(e.field.name)),r=ui(Dt(e.field.name))?.description??e.field.description;return Sl(Mt,{config:e.config,context:e.context,text:r,translations:e.translations,value:t})}import{twMerge as Tl}from"tailwind-merge";import{jsx as ci,jsxs as Al}from"react/jsx-runtime";function di(e){let t=e.style?.showOptionalLabel??!0,n=ie(e.field)||B(e.field);return Al("label",{"data-slot":"field-label","data-normal":n,className:Tl("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:y(e.children)?e.children:void 0,children:[ci("span",{className:"[[data-slot=column]_&]:md:truncate",children:e.children}),t&&!e.field.required&&ci("span",{className:"ml-2 flex-shrink-0 text-sm text-zinc-600 dark:text-zinc-400",children:W("(Optional)",e.translations)})]})}import{jsx as fi,jsxs as wl}from"react/jsx-runtime";function mi(e){let t={context:e.context,env:e.config?.env},n=ze(e.field.label,t);return wl("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[fi(di,{field:e.field,style:e.config?.style,translations:e.translations,children:A(n,e.translations)}),e.horizontal===!0&&fi(_t,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}import{Fragment as Cl,jsx as gi,jsxs as Fl}from"react/jsx-runtime";function pi(e){return Fl(Cl,{children:[e.field.name&&e.field.label&&gi(mi,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&gi(_t,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}function Bt(e,t){return e?t(e):null}var Ze={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 Ze;let n=e.split("."),r=t;for(let o of n){if(r==null)return Ze;if(Array.isArray(r)){let i=Number(o);if(!Number.isInteger(i)||!(i in r))return Ze;r=r[i]}else if(d(r)){if(!(o in r))return Ze;r=r[o]}else return Ze}return{found:!0,value:r}}function K(e,t){return We(e,t).value}import{useCallback as Zl,useEffect as Wl,useRef as Kl}from"react";import{createContext as kl}from"react";var Nl=e=>e,pe=kl(Nl);var vn=le(),yi=vn.clear,xi=vn.bulkReport,$t=vn.report;var bi=le(),hi=bi.atom,Ri=bi.report,vi=le(),Si=vi.atom,Ti=vi.report;import{use as Ol,useCallback as Fi,useRef as Ke,useTransition as Ml}from"react";import{use as Il,useEffect as El,useEffectEvent as Ai,useMemo as Ll}from"react";function wi(e,t,n,r){let{name:o}=e,i=Ll(()=>Vo(e,r),[e,r]),a=Il(tt),s=Ai(u=>{u&&t(u,i,e)}),l=Ai(u=>{u&&n(u,{keepValue:a})});return El(()=>(s(o),()=>{l(o)}),[o]),i}import{useSetAtom as Le,useStore as zl}from"jotai";import{useCallback as Pl,useEffect as Vl,useRef as Dl}from"react";function Ci(){let e=Dl(null);return Vl(()=>()=>{e.current&&clearTimeout(e.current)},[]),Pl((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}function _l(e){return document.activeElement?.getAttribute("name")===e}function Bl(e){return Array.isArray(e)&&e.every(d)}function ki(e,t){let n=zl(),r=e.field.advanced?.entity,o=Ci(),[,i]=Ml(),a=Ol(pe),{setValue:s,shouldSkipOnChange:l,value:u,setSource:c}=t,g=Ke(u);g.current=u;let f=Ke(e.translations);f.current=e.translations;let v=yt(e.field),h=Le(U),I=Le(Vt),C=Le($t(e.field.name)),E=Le(hn),L=Le(Rn),D=Le(hi),O=wi(e.field,e.onMount,e.onUnmount,e.translations),P=A(e.commonProps.placeholder,e.translations),F={...e.commonProps,placeholder:P};function te(m){let[,p]=e.getSchema();return p.find(b=>b.name===m)}function ue(m){let p=te(m);if(p&&de(p)){let b=p.advanced?.transform;if(b)return b}}function Te(m,p){if(h(b=>({...b,[m]:p})),E(b=>({...b,[m]:p})),e.onValueChange){let b=te(m);b&&e.onValueChange({name:a(m),type:b.type,value:p})}}let Ae=Ke(null);Ae.current=m=>{if(e.field.advanced?.transient)return;let p=de(e.field)?He(m,e.field.advanced?.transform):m;s(p),e.onValueChange&&e.onValueChange({name:a(e.field.name),type:e.field.type,value:p})};let we=Ke(null);we.current=m=>{let p=e.field.event?.change;p&&Ir(p,({sources:b,states:k,values:ne})=>{i(()=>{Er(m,b,(G,M)=>{c(kt(G,e.field.name),M)}),Vr(m,k,(G,M)=>{let Ce=G.map(_=>kt(_,e.field.name));I(_=>M?Ce.reduce((X,xe)=>({...X,[xe]:M}),_):Ce.reduce((X,xe)=>Pt(X,xe),_));let H=M?.hidden===!0?Ce:M===void 0?Ce.filter(_=>te(_)?.hidden===!0):[];H.length>0&&h(_=>{let X=!1,xe={..._};for(let be of Object.keys(_))H.some(Fe=>be===Fe||be.startsWith(`${Fe}.`))&&(delete xe[be],X=!0);return X?xe:_})})}),Dr(m,ne,(G,M,Ce)=>{let H=kt(G,e.field.name);if(n.get(Si)[H]){Bl(M)&&D(Fe=>({...Fe,[H]:M}));return}let _=ue(H),X=_?He(M,_):M,be=n.get(U)[H];if(Ce.onlyIfTargetEmpty&&!z(be)){let Fe=n.get(hn)[H];if(!Object.is(Fe,be))return}if(X!==be){if(_l(H)){L({target:H,value:X});return}Te(H,X)}})})};let R=Fi(m=>{let b=O.safeParse(m).error?.issues.map(G=>G.message)??[],k=e.field.validation?.custom,ne=k?zo(m,k,G=>n.get(ge(G)),f.current):[];C([...b,...ne])},[e.field.validation?.custom,O,C,n]),x=Ke(null);x.current=()=>{let m=n.get(Rn);m?.target===e.field.name&&(L(null),z(n.get(U)[m.target])&&Te(m.target,m.value))};let S=Fi(m=>{if(!v){let p=m.target.value;e.config.validation.blur&&R(p)}x.current?.()},[v,e.config.validation.blur,R]);return{applyChangeEventsRef:we,commonProps:F,entity:r,hasClickable:v,onBlur:S,onValueChangeRef:Ae,setTimeoutRef:o,shouldSkipOnChange:l,validated:R,valueRef:g}}import{deepEqual as $l}from"fast-equals";import{useAtom as Gl}from"jotai";import{use as Ul,useCallback as Hl,useEffect as Yl,useRef as ql,useEffectEvent as Ni}from"react";function Ii(e,t){let{name:n}=e,r=ql(!1),[o,i]=Gl(ge(n)),a=Ul(pe),s=Ni((c,g=!1)=>{let f=de(e)?He(c,e.advanced?.transform):c;!g&&!$l(o,f)&&(r.current=!0),i(f)}),l=Ni(c=>{let{found:g,value:f}=We(a(n),c);if(T(f)){s(f);return}if(T(e.defaultValue)){s(e.defaultValue,!0);return}g&&s(f)});Yl(()=>{if(t){l(t);return}T(e.defaultValue)&&s(e.defaultValue,!0)},[t,e.defaultValue]);let u=Hl(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:u,value:o}}import{jsx as Ei}from"react/jsx-runtime";function Li(e){let{useSource:t,useExtraProps:n,getValue:r,shouldSkipChange:o,dispatchChange:i,buildInitialSelected:a,isInitialReady:s}=e.strategies,{setValue:l,shouldSkipOnChange:u,value:c}=Ii(e.field,e.value),{data:g,setSource:f,isStaticSource:v}=t(e.field,e.config,c),{applyChangeEventsRef:h,commonProps:I,entity:C,hasClickable:E,onBlur:L,onValueChangeRef:D,setTimeoutRef:O,validated:P,valueRef:F}=ki(e,{setValue:l,shouldSkipOnChange:u,value:c,setSource:f}),te=n?.(e.field),ue=Kl(!1),{commonPropsWithOptions:Te,defaultValue:Ae}=co(e.field,I,g,c,v?e.translations:void 0),we=fo(e.field,Ae);Wl(()=>{let x=!!e.value||T(e.field.defaultValue);if(ue.current||!x)return;if(!e.field.event?.change){ue.current=!0;return}let S=e.value?K(e.field.name,e.value):void 0,m=T(S)?S:e.field.defaultValue;if(!T(m)||!s(e.field,m,g))return;ue.current=!0;let p=a(m,g,C);h.current?.(p)},[h,a,g,C,s,e.field,e.value]);let R=Zl(x=>{let S=r(x,e.field);o({field:e.field,shouldSkipOnChange:u,hasClickable:E,inputValue:S,valueRef:F})||(D.current?.(S),e.config.validation.change&&P(S),e.field.event?.change&&i({applyChangeEventsRef:h,data:g,entity:C,inputValue:S,setTimeoutRef:O}))},[h,g,i,C,r,E,D,e.config.validation.change,e.field,O,o,u,P,F]);return Bt(e.config.inputs[e.field.type],x=>Ei(pi,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:Ei(x,{...Te,...e.ariaAttributes,...e.dataAttributes,...te,...we,onBlur:L,onChange:R})}))}import{jsx as Xl}from"react/jsx-runtime";function Pe(e){return function(n){return Xl(Li,{...n,strategies:e})}}function Pi(e){let t=q(e)?ae(e):null,n=oe(e)?ve(e):null;return{dateFormat:t,timeFormat:n}}import{atom as jl}from"jotai";var Jl=e=>{let t=Go(e);if(t)return t},Ql=e=>e.trim()!=="",Vi=jl({}),Gt=jo(Vi,{merge:Jl,validateTarget:Ql}),Di=Jo(Vi);import{useSetAtom as eu}from"jotai";function Ut(e){return{data:null,setSource:eu(Gt(e.name))}}var Oi=Pe({useSource:Ut,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=Pi(e);return mo(t,n)},getValue:(e,t)=>{let n=e.target.value,r=oe(t)?ve(t):null;if(r!==null)return Jr(n,r);let o=q(t)?ae(t):null;return o!==null&&At(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)=>T(t)});import{deepEqual as ou}from"fast-equals";import{useAtom as ru}from"jotai";import tu from"swr";function Mi(e=null,t,n=!1){let{data:r,error:o}=tu(nu(e,t,n),t.fetcher.provider);if(o&&_e.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return Tr(r,e.namespace)}return null}function nu(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!he(e.url)){if(Bo(e.url,t.fetcher.remotePatterns))return e;_e.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function zi(e,t,n){let r=uo(e,n),[o,i]=ru(Gt(e.name)),a=o??r,s=Mi(a,t,e.disabled),l=Array.isArray(a);return[s,i,l]}function iu(e,t,n){let[r,o,i]=zi(e,t,n);return{data:r,setSource:o,isStaticSource:i}}function au(e,t){return Q(e)&&t===""}var _i=Pe({useSource:iu,getValue:e=>e.target.value,shouldSkipChange:({field:e,shouldSkipOnChange:t,hasClickable:n,inputValue:r,valueRef:o})=>au(e,r)||!n&&t()&&(!r||ou(r,o.current)),dispatchChange:({applyChangeEventsRef:e,data:t,entity:n,inputValue:r})=>{e.current?.(nn(r,t,n))},buildInitialSelected:(e,t,n)=>nn(String(e),t,n),isInitialReady:(e,t,n)=>(!Ee(e)||!!n&&n.length>0)&&T(t)});var Bi=Pe({useSource:Ut,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)=>T(t)});import{jsx as Sn}from"react/jsx-runtime";function $i(e){return q(e.field)||oe(e.field)?Sn(Oi,{...e}):Br(e.field)?Sn(Bi,{...e}):Sn(_i,{...e})}import{jsx as Gi}from"react/jsx-runtime";function Ui(e){return!e.errors||e.errors.length===0?null:Gi("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)=>Gi("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}import{twMerge as su}from"tailwind-merge";import{jsx as lu}from"react/jsx-runtime";function Ht(e){let t=e.errors&&e.errors.length>0;return lu("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[ir]:"true"},...e.disabled&&{[ar]:"true"},"data-orientation":e.orientation,className:su("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 uu}from"tailwind-merge";import{jsx as cu}from"react/jsx-runtime";function Hi(e){return cu(Ht,{...e,orientation:"vertical",className:uu("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as du}from"tailwind-merge";import{jsx as fu}from"react/jsx-runtime";function Yi(e){return fu(Ht,{...e,orientation:"horizontal",className:du("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 qi}from"react/jsx-runtime";function Zi(e){let t=yt(e.field),n=B(e.field),r=Ur(e.field);return e.horizontal?qi(Yi,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):qi(Hi,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function Wi(e){if(!e.field.type)return null;let t=oo(e.field,e.disabled,{lang:e.lang,translations:e.translations}),n=Ro(e.field),r=ho(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 mu}from"tailwind-merge";import{jsx as Tn,jsxs as gu}from"react/jsx-runtime";function Ki(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=It(e.style,{horizontal:Gr(e.field)}),o=Hr(e.field,e.disabled);return gu("div",{className:mu("flex flex-col gap-3",Ao(t)),children:[Tn(Zi,{disabled:o,errors:n,field:e.field,horizontal:r,children:Tn(Wi,{disabled:o,errors:n,field:e.field,horizontal:r,lang:e.lang,translations:e.translations,children:e.children})}),Tn(Ui,{errors:n,name:e.field.name})]})}import{useAtomValue as pu}from"jotai";import{jsx as bu}from"react/jsx-runtime";function Xi(e){return(t,n)=>o=>{let i=pu(e(o.field.name)),a=n(i,o);return a===null?null:bu(t,{...o,...a})}}var yu=Xi($t);function ji(e){return yu(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var xu=Xi(Dt);function Ji(e){return xu(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var Qi=Ji(ji(Ki));import{twMerge as An}from"tailwind-merge";import{useState as hu}from"react";import{Fragment as Ru,jsx as $,jsxs as ye}from"react/jsx-runtime";function ea(e){let t=e.isMultiField||e.collapsed!=null,[n,r]=hu(t?!e.collapsed:!0);function o(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function i(){r(c=>!c)}let a=c=>re(W(c,e.translations),{index:e.index+1,label:e.label}),s=e.canRemove&&e.onRemove!=null&&$("button",{"aria-label":a("Remove {label} item {index}"),className:An("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:$("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),l=ye("div",{className:"flex min-w-0 flex-col font-medium text-zinc-700 dark:text-zinc-400",children:[$("span",{className:"text-base",children:e.previewLabel??ye(Ru,{children:[e.label," ",e.index+1]})}),!n&&e.previewTags&&$("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=ye("div",{className:An("flex items-center justify-between gap-2",e.isMultiField&&n&&"mb-3"),children:[t?ye("div",{className:"flex min-w-0 grow items-center gap-2",children:[ye("button",{"aria-expanded":n,"aria-label":a(n?"Collapse {label} {index}":"Expand {label} {index}"),className:An("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:[$(ke,{expanded:n}),l]}),!n&&e.previewBadge&&$("div",{className:"ml-auto shrink-0",children:e.previewBadge})]}):l,s]});return e.isMultiField?ye("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,$(De,{visible:n,children:$(me,{children:e.children})})]}):t?ye("div",{className:"box-border flex w-full min-w-0 flex-col gap-2",children:[u,$(De,{visible:n,children:$(me,{children:e.children})})]}):ye("div",{className:"box-border flex w-full min-w-0 items-start gap-2",children:[$("div",{className:"flex min-w-0 grow flex-col",children:$(me,{children:e.children})}),s&&$("div",{className:"shrink-0",children:s})]})}import{Fragment as Su}from"react";import{twMerge as ta}from"tailwind-merge";import{useAtomValue as vu}from"jotai";function Yt(e,t){return vu(ge(e))??t}import{jsx as Xe,jsxs as na}from"react/jsx-runtime";function ra({className:e,initialValue:t,name:n,options:r,separator:o,staticLabel:i}){let a=Yt(n??"",t);if(i===void 0&&r){let u=(Array.isArray(a)?a:a==null||a===""?[]:[a]).filter(c=>c!=null&&c!=="").map(c=>po(c,r));return u.length===0?null:Xe("div",{className:"flex items-center gap-1.5 overflow-hidden",children:u.map((c,g)=>na(Su,{children:[(o||g>0)&&Xe("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),Xe("span",{"aria-label":c,className:ta("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:c,children:c})]},`${g}:${c}`))})}if(i===void 0&&(z(a)||d(a)||Array.isArray(a)))return null;let s=i??String(a);return na("div",{className:"flex items-center gap-1.5 overflow-hidden",children:[o&&Xe("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),Xe("span",{"aria-label":s,className:ta("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:s,children:s})]})}import{useAtomValue as Tu}from"jotai";import{useMemo as Au}from"react";function qt(e,t){let n=Tu(U);return Au(()=>{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?d(a)?{...a,...o}:o:a},[n,e,t])}import{useMemo as wn}from"react";import{jsx as oa}from"react/jsx-runtime";function wu(e){return typeof e=="string"?{field:e}:e}function Cn({className:e,fields:t,label:n="Preview",lang:r,name:o,previews:i,translations:a,value:s}){let l=wn(()=>(Array.isArray(i)?i:[i]).map(wu),[i]),u=wn(()=>t?ko(t):void 0,[t]),c=qt(o,s),g=wn(()=>{let f=[];for(let[v,h]of l.entries()){if(h.when!==void 0&&!Ie(c,h.when))continue;if(h.label!==void 0){f.push({key:h.field??`label:${h.label}:${v}`,staticLabel:A(h.label,a)});continue}if(h.field===void 0)continue;let I=`${o}.${h.field}`,C=s!=null?K(I,s):void 0,E=u?.[h.field],L=E?go(E,{lang:r,translations:a}):void 0;f.push({key:`${v}:${h.field}`,initialValue:C,options:L,previewName:I})}return f},[l,c,r,o,s,a,u]);return g.length===0?null:oa("div",{"aria-label":n,className:"flex items-center gap-1.5 overflow-hidden",children:g.map((f,v)=>oa(ra,{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))})}import{Fragment as Cu,jsx as Fu}from"react/jsx-runtime";function ia({children:e,initialValue:t,name:n}){let r=Yt(n,t),i=z(r)||d(r)||Array.isArray(r)?"":String(r);return Fu(Cu,{children:e(i)})}import{jsx as Zt}from"react/jsx-runtime";function aa({canRemove:e,children:t,field:n,index:r,isMultiField:o,itemKey:i,label:a,lang:s,onRemove:l,previewBadge:u,previewLabel:c,previewTags:g,translations:f,value:v}){let h=`${n.name}.${i}`,I=`${a} ${r+1}`,C=qt(h,v);return Zt(ea,{canRemove:e,collapsed:n.advanced?.collapsed,index:r,isMultiField:o,label:a,onRemove:l,previewLabel:ku({fallbackLabel:I,liveItemValue:C,name:h,previewLabel:c,translations:f,value:v}),previewBadge:u?Zt(Cn,{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:h,previews:u,translations:f,value:v}):void 0,previewTags:g?Zt(Cn,{fields:n.fields,lang:s,name:h,previews:g,translations:f,value:v}):void 0,translations:f,children:t})}function ku({fallbackLabel:e,liveItemValue:t,name:n,previewLabel:r,translations:o,value:i}){if(r===void 0)return;let a=y(r)?{field:r}:r;if(a.when!==void 0&&!Ie(t,a.when))return;if(a.label!==void 0)return A(a.label,o);if(a.field===void 0)return;let s=`${n}.${a.field}`;return Zt(ia,{initialValue:i?K(s,i):void 0,name:s,children:l=>l||e})}import{twMerge as Ou}from"tailwind-merge";import{deepEqual as Nu}from"fast-equals";import{useAtom as Iu,useSetAtom as sa,useStore as Eu}from"jotai";import{use as Lu,useCallback as Ve,useEffect as Fn,useEffectEvent as la,useMemo as Pu,useRef as Wt,useState as Vu}from"react";function je(e,t,n){return`${e}.${t}.${n}`}function Du(e,t,n){let r=[];for(let o=0;o<t;o++){let i=e[o],a={};for(let s of n)a[s]=i?.[s];r.push(a)}return r}function ua(e,t,n){let r=e.advanced?.length?.min??1,o=e.advanced?.length?.max??1/0,[i,a]=Vu(()=>Co(e,t)),s=Wt(i),l=Wt(i.length);s.current=i;let u=Eu(),c=sa(U),g=Wt(n);g.current=n;let f=Wt(t),v=Pu(()=>{let R=[];for(let x of e.fields)if(Z(x))for(let S of x.fields)R.push(S.name);else R.push(x.name);return R},[e.fields]),h=Ve((R,x)=>{let S=Number(R);return Number.isNaN(S)?!1:Number.isInteger(S)&&x>=0&&String(x)!==R},[]),I=Lu(pe),C=Ve(R=>{let x=`${e.name}.`;if(R.startsWith(x)){let S=R.slice(x.length),m=S.indexOf("."),p=m===-1?S:S.slice(0,m),b=Number(p),k=s.current.indexOf(b);h(p,k)&&(R=`${x}${k}${m===-1?"":S.slice(m)}`)}return I(R)},[e.name,h,I]),E=la(()=>{let R=f.current;if(!R)return;let x={...u.get(U)},S=!1;for(let m of i)for(let p of v){let b=je(e.name,m,p);if(b in x)continue;let k=K(b,R);T(k)&&(x[b]=k,S=!0)}S&&c(x)});Fn(()=>{E()},[]);let L=Ve((R,x)=>{let S=f.current;return R.map(m=>{let p={};for(let b of v){let k=je(e.name,m,b),ne=x[k];p[b]=ne!==void 0?ne:S?K(k,S):void 0}return p})},[e.name,v]),D=Ve((R,x)=>{g.current?.({name:C(e.name),value:L(R,x)})},[L,e.name,C]),O=Ve(()=>{if(s.current.length>=o)return;let R=l.current++,x=[...s.current,R];a(x),D(x,u.get(U))},[D,o,u]),P=Ve(R=>{if(s.current.length<=r)return;let x=s.current[R],S=s.current.filter((b,k)=>k!==R),p={...u.get(U)};for(let b of v)delete p[je(e.name,x,b)];a(S),c(p),D(S,p)},[D,e.name,v,r,c,u]),F=sa(Ti(e.name));Fn(()=>(F(!0),()=>F(void 0)),[F]);let[te,ue]=Iu(Ri(e.name)),Te=la(R=>{let x=Math.min(Math.max(R.length,r),o),S=u.get(U);if(Nu(L(s.current,S),Du(R,x,v)))return;let m=[];for(let b=0;b<x;b++)m.push(s.current[b]??l.current++);let p={...S};for(let b of s.current)for(let k of v)delete p[je(e.name,b,k)];m.forEach((b,k)=>{let ne=R[k];if(ne)for(let G of v){let M=ne[G];M!==void 0&&(p[je(e.name,b,G)]=M)}}),c(p),a(m),D(m,p)});Fn(()=>{te&&(Te(te),ue(void 0))},[te,ue]);let Ae=i.length<o,we=i.length>r;return[i,O,P,Ae,we,o,C]}import{jsx as kn,jsxs as Kt}from"react/jsx-runtime";var Mu="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 ca(e){let{field:t,lang:n,onValueChange:r,translations:o,value:i,children:a}=e,[s,l,u,c,g,f,v]=ua(t,i,r),h=A(Fo(t),o),I=t.advanced?.action?A(t.advanced.action,o):W("Add item",o),C=f!==1/0,E=wo(t),{label:L,tags:D,badge:O}=t.advanced?.preview??{};return kn(pe.Provider,{value:v,children:Kt("div",{className:"flex w-full flex-col gap-4",children:[s.map((P,F)=>kn(aa,{canRemove:g,field:t,index:F,isMultiField:E,itemKey:P,label:h,lang:n,onRemove:u,previewBadge:O,previewLabel:L,previewTags:D,translations:o,value:i,children:a(P)},P)),Kt("button",{"aria-disabled":!c,"aria-label":C?`${I}, ${s.length} of ${f}`:I,className:Ou(Mu,C?"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:[Kt("span",{className:"flex items-center gap-2",children:[kn("span",{"aria-hidden":"true",className:"text-base leading-none",children:"+"}),I]}),C&&Kt("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 da(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0,n=ee(e.field.label,e.translations),r=ee(e.field.description,e.translations);return zu(Lt,{description:r,empty:t,id:e.field.name,title:n,children:e.children})}import{jsx as Nn}from"react/jsx-runtime";function fa({children:e,field:t,lang:n,onValueChange:r,translations:o,value:i}){return Nn(Ot,{container:t,fields:t.fields,children:Nn(da,{field:t,translations:o,children:Nn(ca,{field:t,lang:n,onValueChange:r,translations:o,value:i,children:e})})})}import{twMerge as _u}from"tailwind-merge";import{jsx as ma,jsxs as Bu}from"react/jsx-runtime";function ga(e){let t=To(e.column?.advanced?.cols);return Bu("div",{className:"flex w-full flex-col gap-4",children:[ma("div",{"data-slot":"column",className:_u("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&ma(Mt,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}import{Fragment as Gu}from"react";import{jsx as $u}from"react/jsx-runtime";function pa(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>xt(n)||$e(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:Z(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return $u(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 Uu}from"react/jsx-runtime";function Je(e){let{field:t,list:n}=e.components;return Ft(e.fields).map((r,o)=>Uu(Gu,{children:[Z(r)&&Qe(ga,{column:r,config:e.config,context:e.context,translations:e.translations,children:Qe(Je,{...e,fields:r.fields})}),xt(r)&&Qe(t,{disabled:e.disabled,field:r,lang:e.lang,style:e.style,translations:e.translations,children:e.children}),$e(r)&&Qe(n,{field:r,lang:e.lang,onValueChange:e.onValueChange,translations:e.translations,value:e.value,children:i=>Qe(pa,{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 Hu}from"react/jsx-runtime";function ya(e){return n=>Hu(Je,{...n,components:e})}var xa=ya({field:Qi,list:fa});import{useSetAtom as ba}from"jotai";import{startTransition as ha,useActionState as Yu}from"react";function va(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},s=ba(xi),l=ba(si),u={data:null,error:null,success:!1},[c,g,f]=Yu(async(v,h)=>{let[I,C]=e(),E=Lo(I,C,a);if(i===!1)return t?await t(h,E):v;let L=wr(h),D=Zu(L,C),O=E.safeParse(D);if(!O.success){let F=Po(O.error);return ha(()=>{s(F)}),In(L,{description:W("Please correct the errors and try again.",a),details:[],title:W("There were validation errors submitting the form.",a)})}let P=Cr(O.data);if(t)try{let F=await t(P,E);return F.success?(r?.(F.data),o||ha(()=>{l()}),Ra(P,o)):In(P,F.error)}catch(F){return _e.error("Error executing form action:",F),In(P,{title:W("An unexpected error occurred submitting the form.",a),details:qu(F,a)})}return Ra(O.data,o)},u);return[g,c,f]}function qu(e,t){return e instanceof Error?[e.message]:[W("Unknown error",t)]}function Ra(e,t=!1){return{data:t?e:null,error:null,success:!0}}function In(e,t){return{data:e,error:t,success:!1}}function Zu(e,t){let n={...e};for(let r of t)if(q(r)&&typeof n[r.name]=="string"&&n[r.name]){let o=Tt(n[r.name],ae(r));o&&(n[r.name]=o)}return n}import{useMemo as Ku}from"react";import{useCallback as Ln,useRef as Ta}from"react";import{useCallback as Wu}from"react";import{useSetAtom as En}from"jotai";function Sa(){let e=En(yi),t=En(li),n=En(Di);return Wu((r,o)=>{let i=Array.isArray(r)?r:[r];e(i),n(i),o?.keepValue||t(i)},[e,n,t])}function Aa(){let e=Sa(),t=Ta({}),n=Ta([]),r=Ln((a,s,l)=>{a in t.current||(t.current[a]=s,n.current.push(l))},[]),o=Ln((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[Ln(()=>[t.current,n.current],[]),r,o]}import{Fragment as Xu,jsx as et,jsxs as ju}from"react/jsx-runtime";function wa(e){let t=Ku(()=>eo(e.lang,e.translations),[e.lang,e.translations]),[n,r,o]=Aa(),[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 ju(Xu,{children:[l&&Bt(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(ni,{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:g})=>et(xa,{config:e.config,context:e.context,disabled:c,fields:g,lang:e.lang,onValueChange:e.onValueChange,style:e.config.style,translations:t,value:u,children:f=>et($i,{...f,config:e.config,context:e.context,getSchema:n,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:u})})})]})}import{Provider as Ju}from"jotai";import{jsx as Ca}from"react/jsx-runtime";function Qu(e){return Ca(Ju,{children:Ca(wa,{...e})})}function Fa(e,t){for(let n of e){if("name"in n&&typeof n.name=="string"){t.push(n.name);continue}"fields"in n&&Fa(n.fields??[],t)}}function ec(e,t){let n=[];for(let o of e)Fa(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{Qu as Form,ec as withDeclaredFields};
|
|
1
|
+
import{jsx as Na}from"react/jsx-runtime";function Dn(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return Na("div",{"data-slot":"field-control",className:"w-full",children:t})}import{jsx as On}from"react/jsx-runtime";function ke(e){return On("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:On("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 Ea}from"react";import{createContext as Ia}from"react";var tt=Ia(!1);import{jsx as Mn}from"react/jsx-runtime";function Oe({children:e,visible:t}){return Mn(Ea,{mode:t?"visible":"hidden",children:Mn(tt,{value:!0,children:e})})}var nt="input",zn="input/date",_n="input/email",Bn="input/number";var $n="input/time";var Gn="textarea",Un="radio",Hn="checkbox",Jt="list";var Yn="select",qn="select/active",Zn="select/day",Kn="select/month",Wn="select/timezone",Xn="select/year";var jn="chips",Jn="chips/day",Qn="chips/month",Me="column",er="description",Qt="fields",tr="label",q="value",rt="options",en="email",nr="number",rr="password",or="tel",ze="text",ir="aria-errormessage",ar="aria-invalid",sr="data-invalid",lr="data-readonly",ur="aria",cr="data",ot="max",dr="maxLength",it="min",fr="minLength",Ne="$ref";var mr="source",gr="state",at="http://luna.internal";var pr="type",yr={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};import{format as La,formatDistanceToNow as br,formatDuration as Pa,intervalToDuration as Va,isValid as st,parseISO as Da}from"date-fns";import{enUS as hr,es as nn}from"date-fns/locale";function d(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function z(e){return e==null||e===""}function j(e){return p(e)||typeof e=="number"||tn(e)}function p(e){return typeof e=="string"}function xr(e){return d(e)&&"url"in e}function tn(e){return typeof e=="boolean"}var Rr={en:hr,"en-US":hr,es:nn,"es-ES":nn,"es-MX":nn},Oa={short:"M/d/yy",medium:"MMM d, yyyy",long:"MMMM d, yyyy",full:"EEEE, MMMM d, yyyy"},Ma={ms:1,s:1e3,min:6e4,h:36e5,d:864e5};function vr(e){if(e)return Rr[e]??Rr[e.split("-")[0]]}function lt(e){if(typeof e=="number"&&!Number.isNaN(e))return e;if(p(e)&&e.trim()!==""){let t=Number(e);return Number.isNaN(t)?null:t}return null}function Sr(e,t,n){let r=Ma[t];if(r===void 0)return String(e);let o=e*r,i=Va({start:0,end:o});return Pa(i,{locale:n})}function Tr(e){if(e instanceof Date)return st(e)?e:null;if(p(e)){let t=Da(e);if(st(t))return t;let n=new Date(e);return st(n)?n:null}if(typeof e=="number"){let t=new Date(e);return st(t)?t:null}return null}var za={currency:(e,t,n)=>{let r=lt(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=lt(e);return r===null?String(e):new Intl.NumberFormat(n.locale,{style:"percent"}).format(r)},number:(e,t,n)=>{let r=lt(e);return r===null?String(e):new Intl.NumberFormat(n.locale).format(r)},date:(e,t,n)=>{let r=Tr(e);if(!r)return String(e);let o=t[0]??"short",i=vr(n.locale);if(o==="relative")return br(r,{addSuffix:!0,locale:i});let a=Oa[o]??o;return La(r,a,{locale:i})},duration:(e,t,n)=>{let r=vr(n.locale);if(typeof e=="number")return Sr(e,t[0]??"ms",r);if(p(e)){let i=lt(e);if(i!==null)return Sr(i,t[0]??"ms",r)}let o=Tr(e);return o?br(o,{addSuffix:!0,locale:r}):String(e)}};function Ar(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=za[o];if(a)return a(e,i,n)}var _a=/^\d+$/;function on(e,t=[],n=q){return Array.isArray(t)?t.find(r=>{let o=an(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}:{value:e}}function an(e,t=q){if(e!=null){if(Array.isArray(e)&&e.every(j)||j(e))return e;if(d(e)){let n=Ba(e,t);if(j(n))return n}}}function Ba(e,t){let n=V(e,t);if(j(n))return n}function wr(e,t){if(Array.isArray(e))return e;let n=V(e,t);return Array.isArray(n)?n:null}function V(e,t){if(!t||!d(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(d(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 sn(e,t={description:er,label:tr,value:q}){return e.map(n=>{if(d(n)){let r=V(n,t.label),o=V(n,t.value);if(j(r)&&j(o)){let i=V(n,t.description);return{label:`${r}`,value:`${o}`,...j(i)&&{description:`${i}`}}}}return n})}function Cr(e=ze){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==nt?n.trim().toLowerCase():ze}function Fr(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 kr(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=_a.test(l);s in o||(o[s]=u?[]:{}),o=o[s]}let i=r[r.length-1];o[i]=e[n]}return rn(t),t}function rn(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)d(o)&&rn(o);e[t]=r}else d(n)&&rn(n)}}var $a=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g,Ga=/{([^}]{1,200})}/,Ua=/{([^}]{1,200})}/g,Ha=/^{([^}|]{1,200})}$/;function ne(e,t={},n={}){if(p(e))return qa(e,t,n);if(Array.isArray(e))return e.map(r=>ne(r,t,n));if(d(e)){let r={};for(let o in e)r[o]=ne(e[o],t,n);return r}return e}function Nr(e,t={},n={}){if(p(e)){let r=Ya(e,t);if(r!==void 0)return r}return ne(e,t,n)}function _e(e,t={},n={}){return be(e)?ne(e,t,n):e}function be(e){return p(e)?Ga.test(e):Array.isArray(e)?e.some(t=>be(t)):d(e)?Object.values(e).some(t=>be(t)):!1}function Ir(e,t){return t.includes(".")?V(e,t):e[t]}function Ya(e,t){let n=Ha.exec(e);if(!n)return;let r=n[1].trim();if(!r)return;let o=Ir(t,r);if(d(o)||Array.isArray(o))return o}function qa(e,t={},n={}){return e.replace(Ua,(r,o)=>{let i=String(o).split("|").map(c=>c.trim()),[a,...s]=i;if(!a)return r;let l=Ir(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 g=Ar(u,c,{locale:n.locale});if(g===void 0)return r;u=g}return String(u)})}function Er(e,t){if(!p(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=$a.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)=>{ln()&&!un()&&ut().error("[Luna Form]",...e)},warn:(...e)=>{ln()&&!un()&&ut().warn("[Luna Form]",...e)},info:(...e)=>{ln()&&!un()&&ut().info("[Luna Form]",...e)}},ln=()=>typeof ut()<"u",un=()=>!0,ut=()=>globalThis.console;function Lr(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===q&&n.push(i),i.action===mr&&r.push(i),i.action===gr&&o.push(i);t({sources:r,states:o,values:n})}function Pr(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=ne(i.url,e),s=i.body?ne(i.body,e):i.body;n(o,{...i,url:a,body:s})}}}var he={eq:ja,gt:ts,gte:ns,in:Qa,lt:rs,lte:os,neq:Ja,nin:es,contains:is,exists:Dr,empty:as,truthy:ss},Za=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,Vr=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function Ka(e){return typeof e=="string"&&Za.test(e)}function Wa(e){return typeof e=="string"&&Vr.test(e)}function Xa(e){let t=e.match(Vr);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 ue(e){return Ka(e)?new Date(e).getTime():Wa(e)?Xa(e):Number(e)}function ja(e,t){return e===t}function Ja(e,t){return e!==t}function Qa(e,t){return Array.isArray(t)&&t.includes(String(e))}function es(e,t){return Array.isArray(t)&&!t.includes(String(e))}function ts(e,t){return ue(e)>ue(t)}function ns(e,t){return ue(e)>=ue(t)}function rs(e,t){return ue(e)<ue(t)}function os(e,t){return ue(e)<=ue(t)}function is(e,t){return typeof e=="string"?e.includes(String(t)):Array.isArray(e)?e.map(String).includes(String(t)):!1}function Dr(e){return Array.isArray(e)?e.length>0:e!=null&&e!==""}function as(e){return!Dr(e)}function ss(e){return Array.isArray(e)?e.length>0:!!e}function Ie(e,t){if(t===void 0)return!0;if(p(t)){let n=ct(e,q);return Array.isArray(n)?n.length===1&&n[0]===t:n===t}if(tn(t)){let n=ct(e,q);return(Array.isArray(n)?n.length>0:!!n)===t}if(Array.isArray(t)){let n=ct(e,q);return Array.isArray(n)?n.some(r=>t.includes(String(r))):t.includes(String(n))}return ls(e,t)}function ls(e=null,t){let n=ct(e,t.field??q),{operator:r="eq",value:o}=t,i=he[r];return i?i(n,o):!1}function ct(e,t){return d(e)?V(e,t):e}function Or(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=Ie(e,a);n(s,l?i:void 0)}}function Mr(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?Nr(i,e):void 0,{onlyIfTargetEmpty:r.onlyIfTargetEmpty??!1})}var $e=e=>k(qn)(e),zr=e=>k(Zn)(e),dt=e=>k(Kn)(e),ft=e=>k(Xn)(e),_r=e=>k(Wn)(e),mt=e=>k(Jn)(e),gt=e=>k(Qn)(e),Z=k(zn),re=k($n),B=k(Hn),J=k(jn),oe=k(Un),ce=k(nt),Q=k(Yn),cn=k(Gn),Br=k(ze,en,rr,or),$r=k(_n,en),pt=k(Bn,nr);function yt(e){return oe(e)||B(e)}function Ge(e){return e.type===Jt}function K(e){return e.type===Me}function xt(e){return e.type!==Me&&e.type!==Jt}function Ee(e){return Q(e)||oe(e)||J(e)}function Gr(e){return ce(e)||cn(e)}function T(e){return e!=null&&e!==""}function k(...e){return t=>{let n=p(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Ur(e,t={}){if(Q(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&d(n))return[n]}}function Hr(e){return oe(e)||B(e)?!0:e.advanced?.horizontal??!1}function Yr(e){return B(e)?e.advanced?.reverse!==!1:!1}function qr(e,t){let n=e.readonly??!1;return t||n}function bt(e){if(us(e)){let t=e.source;if(Array.isArray(t)||d(t)&&!(Ne in t))return t}}function Zr(e){return Array.isArray(bt(e))}function us(e){return oe(e)||J(e)||Q(e)&&!e.disabled}import{isValid as ht,parse as Rt,format as vt}from"date-fns";var cs=/^\d+$/,St=new Date(2e3,0,1),ds=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[],dn="default";function Xr(e){if(!e)return dn;try{return Intl.getCanonicalLocales(e)[0]??dn}catch{return dn}}function fn(e){let t=Xr(e);return Array.from({length:12},(n,r)=>({value:(r+1).toString(),label:new Date(0,r).toLocaleString(t,{month:"long"})}))}function mn(e){let t=Xr(e);return Array.from({length:7},(n,r)=>({value:r.toString(),label:new Date(2e3,0,2+r).toLocaleString(t,{weekday:"long"})}))}function jr(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 gn(){return new Date().getFullYear()}function fs(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function ms(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return yr[n]??"Other"}function gs(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function Kr(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=gs(r,e);return{offset:i,longName:a}}function Wr(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function Jr(){let e=new Date,t=fs(),n=new Map,r=Wr(t),{offset:o,longName:i}=Kr(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let l of ds()){if(l===t)continue;let u=Wr(l),{offset:c,longName:g}=Kr(l,e),f={value:l,label:`${u} - ${g} (${c})`},b=ms(l);if(b==="Other")continue;let h=n.get(b);h?h.push(f):n.set(b,[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 pn(e,t){if(typeof e=="number")return e;let n=t??gn(),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 cs.test(r)?parseInt(r,10):n}function Tt(e,t){if(!e)return"";try{let n=Rt(e,t,St);return ht(n)?vt(n,"yyyy-MM-dd"):""}catch{return""}}function Qr(e,t){if(!e)return"";try{let n=Rt(e,t,St);return ht(n)?vt(n,"HH:mm:ss"):""}catch{return""}}function eo(e,t="HH:mm"){if(!e)return"";try{let n=e.split(":").length===3?"HH:mm:ss":"HH:mm",r=Rt(e,n,St);return ht(r)?vt(r,t):""}catch{return""}}function At(e,t="MMMM d, yyyy"){if(!e)return"";try{let n=Rt(e,"yyyy-MM-dd",St);return ht(n)?vt(n,t):""}catch{return""}}function Re(e){return e.advanced?.format??"HH:mm"}function ie(e){return e.advanced?.format??"MMMM d, yyyy"}var ps={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 A(e,t)}function no(e,t){let n=t?.[e??""],r=e?ps[ys(e)]:void 0;return r?n?{...r,...n}:r:n}function ys(e){return e.toLowerCase().split(/[-_]/)[0]}function A(e,t){return e?t?t[e]??e:e:""}function ee(e,t){return e?A(e,t):void 0}function Ue(e,t){if(!t)return e;let n=!1,r=e.map(o=>{let i=xs(o,t);return i!==o&&(n=!0),i});return n?r:e}function xs(e,t){if(!d(e))return e;let n=to(e.label,t),r=e.items;if(Array.isArray(r)){let i=Ue(r,t);return i===r&&n===e.label?e:{...e,...n!==void 0&&{label:n},items:i}}let o=to(e.description,t);return n===e.label&&o===e.description?e:{...e,...n!==void 0&&{label:n},...o!==void 0&&{description:o}}}function to(e,t){return p(e)?A(e,t):e}var wt=gn();function oo(e,t){if(J(e))return bs(e,t?.lang)}function bs(e,t){if(mt(e))return mn(t);if(gt(e))return fn(t)}function io(e,t){if(Q(e))return hs(e,t)}function hs(e,t){let{lang:n,translations:r}=t??{};if(zr(e))return mn(n);if(dt(e))return fn(n);if(ft(e)){let o=e.advanced?.length?.min??wt,i=e.advanced?.length?.max??wt+5;return jr(pn(o,wt),pn(i,wt))}if(_r(e))return Jr();if($e(e))return Ue([{value:"true",label:"Yes"},{value:"false",label:"No"}],r)}function ao(e,t=!1,n){let r={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return ce(e)?{...r,...Rs(e)}:Q(e)?{...r,...so(io(e,n))}:cn(e)?{...r,...Ss(e)}:J(e)?{...r,...vs(e,n)}:r}function Rs(e){let t=Cr(e.type),n={...e,type:t};return{...As(e),...lo(e),...Ts(n),...Br(n)?uo(n):{},type:t}}function so(e){return e?{options:e}:{}}function vs(e,t){let n=so(oo(e,t)),r=e.advanced?.multiple??!0;return{...n,multiple:r}}function Ss(e){return{...lo(e),...uo(e)}}function lo(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Ts(e){return pt(e)?ws(e):{}}function As(e){if(re(e)){let t=Re(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function uo(e){return co(e,{min:fr,max:dr})}function ws(e){return co(e,{min:it,max:ot})}function co(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 fo(e,t){let n=bt(e);return n||Ur(e,t)}function Cs(e,t){let n=d(t)&&e.name in t?t[e.name]:t,r=an(n,e.advanced?.entity),o=T(r)?r:e.defaultValue;return re(e)&&T(o)?Fs(e,o):Z(e)&&T(o)?Es(e,o):o}function Fs(e,t){let n=Re(e);return p(t)?Qr(t,n):t}function ks(e,t,n){return Ee(e)&&Array.isArray(n)?{...t,[rt]:n}:t}function Ns(e,t,n){if(e.required&&!T(n)&&Q(e)&&e.advanced?.preselected!==!1&&rt in t){let r=t[rt];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function Is(e,t,n){if(Ee(e)&&Array.isArray(t)){let r=sn(t,e.advanced?.options);return Zr(e)?Ue(r,n):r}return t}function mo(e,t,n,r,o){let i=Cs(e,r),a=Array.isArray(n)?Is(e,n,o):n,s=ks(e,t,a),l=Ns(e,s,i);return{commonPropsWithOptions:s,defaultValue:l}}function go(e,t){return B(e)?{checked:T(t)?t:!1}:J(e)?{value:Array.isArray(t)?t:[]}:Z(e)&&p(t)&&T(t)?{value:At(t,ie(e))}:$e(e)?{value:T(t)?String(t):""}:{value:t??""}}function Es(e,t){let n=ie(e);return p(t)?Tt(t,n):t}function po(e,t){let n=e??t;return n?{"data-format":n}:{}}function ro(e){let t=[];for(let n of e){if(typeof n=="string"){t.push(n);continue}d(n)&&"value"in n&&"label"in n&&p(n.value)&&p(n.label)&&t.push({label:n.label,value:n.value})}return t}function yo(e,t){if(!Ee(e))return;let n=J(e)?oo(e,t):io(e,t);if(Array.isArray(n)){let o=ro(n);return o.length>0?o:void 0}let r=bt(e);if(Array.isArray(r)){let o=sn(r,e.advanced?.options),i=ro(Ue(o,t?.translations));return i.length>0?i:void 0}}function xo(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 Ls=/^#\/definition\//;function Ft(e=[],t){let n=Ct(e,t);return Array.isArray(n)?n.filter(Vs).sort((r,o)=>bo(r)-bo(o)):[]}function Ct(e,t,n=new Map,r=new WeakSet){if(!Ps(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=>Ct(i,t,n,r));if(Ne in e&&p(e[Ne])){let i=e[Ne].replace(Ls,""),a=V(t,i);return a!==null?Ct(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=Ct(a,t,n,r);return r.delete(e),n.set(e,o),o}function ho(e){return Object.entries(e??{})}function bo(e){return e.order??Number.MAX_VALUE}function Ps(e){return e!==void 0&&d(e)&&Object.keys(e).length>0}function Vs(e){return pr in e?!0:Array.isArray(e[Qt])?e[Qt].length>0:!0}function Ro(e,t){let n={};for(let[r,o]of ho(t))n[`${e}-${r}`]=o;return n}function Ds(e){return Ro(ur,e)}function Os(e){return Ro(cr,e)}function vo(e,t){let n=Ds(e.advanced?.aria);return t&&t.length>0&&(n[ar]="true",n[ir]=`${e.name}-error`),n}function So(e){return Os(e.advanced?.data)}var To={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Ao={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function wo(e,t=2){return To[e&&e in To?e:t]}function Co(e){if(e&&e in Ao)return Ao[e]}function Ms(e,t){let n=e.advanced?.length?.min??1;if(t){let r=V(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function Fo(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===Me}function ko(e,t){let n=Ms(e,t);return Array.from({length:n},(r,o)=>o)}function No(e){return e.advanced?.title??e.label??e.name}function Io(e){let t={};for(let n of e)if(K(n))for(let r of n.fields)t[r.name]=r;else t[n.name]=n;return t}function kt(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 w}from"zod";var zs=[[B,Eo],[$r,_s],[pt,Gs],[oe,Bs],[$e,Eo],[dt,Hs],[ft,Us],[J,yn],[mt,yn],[gt,yn]];function Vo(e,t=[],n){let r=w.object(e);if(t.length===0)return r;let o=Ks(r,t,n);return js(o,t,n)}function Do(e){let t={},n=w.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function Oo(e,t){for(let[n,r]of zs)if(n(e))return r(e,t);return $s(e,t)}function _s(e,t){let n=w.string().trim();if(e.required){let r=de(e,t),o=n.min(1,r).pipe(Lo(e,t));return w.preprocess(i=>z(i)?"":i,o)}return n.pipe(Lo(e,t)).or(w.literal("")).nullable()}function Eo(e,t){let n=w.preprocess(r=>{if(typeof r=="string"){if(r==="true")return!0;if(r==="false")return!1}return r},w.coerce.boolean());return e.required?(B(e)?n=n.refine(r=>r===!0,{message:de(e,t)}):n=n.refine(r=>typeof r=="boolean",{message:de(e,t)}),w.preprocess(r=>r===null?!1:r,n)):n.nullable()}function Bs(e,t){let n=w.coerce.string();return e.required?(n=n.min(1,de(e,t)),w.preprocess(r=>z(r)?"":r,n)):n.or(w.literal("")).nullable()}function $s(e,t){let n=w.coerce.string().trim();return n=Mo(n,e,t),e.required?(n=zo(n,e,t),w.preprocess(r=>z(r)?"":r,n)):n.nullable()}function Gs(e,t){let n=w.coerce.number().int();return n=Mo(n,e,t),e.required?(n=zo(n,e,t),w.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function Us(e,t){return e.required?w.preprocess(Ys,w.coerce.number({message:de(e,t)}).int()):w.coerce.number().int().nullable()}function Hs(e,t){let n=de(e,t),r=w.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function Ys(e){return e===null||e===""?void 0:e}function Lo(e,t){let n=e.validation?.email?A(e.validation?.email,t):void 0;return w.email(n)}function Mo(e,t,n){return e=qs(e,t,n),e=Zs(e,t,n),e}function zo(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,de(t,n)):e}var qs=(e,t,n)=>_o(e,t,it,n),Zs=(e,t,n)=>_o(e,t,ot,n);function _o(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?A(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function Ks(e,t=[],n){let r=Xs(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:s}of r)if(!Ws(o,a,s)){let l=A(s.message,n);i.addIssue({code:"custom",message:l,path:[a]})}})}function Ws(e,t,n){let r=n.operator??"eq",o=he[r];return o?o(Nt(e,t),Nt(e,n.field)):!1}function Xs(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 Bo(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let s=a.operator??"eq",l=he[s];if(l&&!l(e,n(a.field))&&a.message){let u=A(a.message,r);o.push(u)}}return o}function de(e,t){return e.validation?.required?A(e.validation?.required,t):void 0}function yn(e,t){let n=w.array(w.string());return e.required&&(n=n.min(1,de(e,t))),w.preprocess(r=>z(r)?[]:Array.isArray(r)?r.map(String):[String(r)],n)}function js(e,t=[],n){let r=t.filter(Js);return r.length===0?e:e.superRefine((o,i)=>{let a=d(o)?o:{};for(let s of r)for(let l of Qs(a,s,n))i.addIssue({code:"custom",path:l.path,message:l.message})})}function Js(e){let t=e.validation;return t!==void 0&&(t.requiredWhen!==void 0||t.pattern!==void 0||t.rules!==void 0)}function Qs(e,t,n){let r=[],o=Nt(e,t.name),i=t.validation?.requiredWhen;if(i){let l=(Array.isArray(i)?i:[i]).find(u=>He(e,u));l&&!xn(o)&&r.push({path:[t.name],message:ee(l.message??t.validation?.required,n)})}let a=t.validation?.pattern;a&&!$o(a,o)&&r.push({path:[t.name],message:ee(a.message,n)});for(let s of t.validation?.rules??[])el(e,s.when)&&!tl(s,o)&&r.push({path:[t.name],message:ee(s.message,n)});return r}function He(e,t){let n=he[t.operator??"eq"];return n?n(Nt(e,t.field),t.value):!1}function Nt(e,t){return t in e?e[t]:V(e,t)??void 0}function el(e,t){if(!t)return!0;if(Array.isArray(t))return t.every(o=>He(e,o));if("field"in t)return He(e,t);let n=t.all?t.all.every(o=>He(e,o)):!0,r=t.any?t.any.some(o=>He(e,o)):!0;return n&&r}function tl(e,t){switch(e.assert){case"required":return xn(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 Po(t)>=Number(e.value);case"max":return Po(t)<=Number(e.value);case"oneOf":return Array.isArray(e.value)&&e.value.map(String).includes(String(t));case"pattern":return rl(e.value)?$o(e.value,t):!0;default:return!0}}function $o(e,t){return!xn(t)||typeof t!="string"||e.allowInterpolation&&(be(t)||nl(t))?!0:new RegExp(e.regex,e.flags).test(t)}function nl(e){return p(e)&&e.trimStart().startsWith("@")}function xn(e){return p(e)?e.trim().length>0:he.exists(e,void 0)}function Po(e){return typeof e=="number"?e:p(e)||Array.isArray(e)?e.length:0}function rl(e){return d(e)&&"regex"in e}function Go(e,t){if(!t||!il(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||ol(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 ol(e){return e==="https"?"443":"80"}function il(e){return/^(https?:)?\/\//.test(e)}function Uo(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,at);new URL(t,at).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(at,""):o}catch{return t||e}}function Ho(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=Uo(t.url,n.url),o=al(t,n),i=sl(t,n);return{...t,...n,url:r,body:o,headers:i}})}function al(e,t){return d(t.body)&&d(e?.body)?{...e.body,...t.body}:t.body??e?.body}function sl(e,t){return d(t.headers)&&d(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function It(e,t){return{...e,...t}}var ll={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 Ye(e,t){return!t||!p(e)||z(e)?e:(Array.isArray(t)?t:[t]).reduce((r,o)=>{let i=ll[o];return i?i(r):r},e)}import{jsx as ul}from"react/jsx-runtime";function ae(e){return Er(e,(t,n,r)=>ul("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}import{useCallback as cl,useState as dl}from"react";import{jsx as qe,jsxs as bn}from"react/jsx-runtime";function Yo(e){let{fields:t=[]}=e.section,[n,r]=dl(!1),o=cl(()=>r(i=>!i),[]);return bn("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:[qe("legend",{children:bn("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:[qe(ke,{expanded:n}),qe("span",{children:ae(e.title)})]})}),qe(Oe,{visible:n,children:bn("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&&qe("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:ae(e.description)}),e.group]})})]})}import{jsx as Et,jsxs as qo}from"react/jsx-runtime";function Zo(e){let t=qo("div",{className:"flex flex-col",children:[e.title&&Et("legend",{className:"mb-3 font-medium text-zinc-800 dark:text-zinc-200",children:ae(e.title)}),e.description&&Et("p",{className:"-mt-2 text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:ae(e.description)})]});return e.step?qo("div",{className:"flex flex-row items-start gap-4",children:[Et("div",{className:"bg-primary text-primary-foreground flex size-6 shrink-0 items-center justify-center rounded-full",children:Et("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}import{jsx as Ko,jsxs as fl}from"react/jsx-runtime";function Lt(e){return fl("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:[Ko(Zo,{description:e.description,step:e.step,title:e.title}),Ko("div",{className:"w-full min-w-0",children:e.children})]})}import{jsx as ml}from"react/jsx-runtime";function fe(e){return ml("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 hn}from"react/jsx-runtime";function Wo(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=It(e.style,{compact:e.section.advanced?.compact}),o=hn(fe,{compact:r,children:e.children});if(!e.section.title&&!e.section.description)return o;let i=ee(e.section.title,e.translations),a=ee(e.section.description,e.translations);return e.section.advanced?.collapsible?hn(Yo,{description:a,group:o,section:e.section,title:i}):hn(Lt,{description:a,empty:t.length===0,id:e.section.id?.toString(),step:n,title:i,children:o})}import{jsx as Xo}from"react/jsx-runtime";function jo(){return Xo("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:Xo("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-zinc-200 dark:bg-zinc-800"})})}import{useAtomValue as bl}from"jotai";import{atom as ve}from"jotai";import{atomFamily as Jo}from"jotai-family";import{deepEqual as Rn}from"fast-equals";function Pt(e,t){let{[t]:n,...r}=e;return r}function gl(e){return Jo(t=>ve(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];Rn(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,Pt(i,t))}))}function pl(e){return ve(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function yl(e){return ve(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 xl(e){return ve(null,(t,n,r)=>{let o=t(e);Rn(o,r)||n(e,r)})}function Qo(e,t={}){let{merge:n,validateTarget:r}=t;return Jo(o=>ve(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 g=c[o];(!g||!Rn(g,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 ei(e){return ve(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 se(e={}){let t=ve(e);return{atom:t,clearAll:pl(t),clear:yl(t),bulkReport:xl(t),report:gl(t)}}var ti=se(),Vt=ti.atom,Dt=ti.report;function hl(e,t){return e.fields.every(n=>ni(n,t))}function ni(e,t){return t[e.name]?.hidden??e.hidden??!1}function Rl(e,t){return K(e)?hl(e,t):ni(e,t)}function Ot(e){let t=bl(Vt);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>Rl(r,t))?null:e.children}import{jsx as Ze,jsxs as ri}from"react/jsx-runtime";function oi(e){let t=Ft(e.sections,e.definition);return Ze("div",{className:"h-full w-full",children:Ze("form",{noValidate:e.noValidate,action:e.action,children:ri(fe,{children:[t.map((n,r)=>ri(Ot,{fields:n.fields??[],children:[Ze(Wo,{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(jo,{})]},`key-${n.id}-${r}`)),e.control&&Ze(Dn,{isPending:e.isPending,children:e.control})]})})})}import{jsx as vl}from"react/jsx-runtime";function ii(e){return vl("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 Sl}from"react";import{jsx as ai,jsxs as si}from"react/jsx-runtime";function Mt(e){let t={context:e.context,env:e.config?.env,value:e.value},r={locale:e.config?.env?.locale},[o,i]=Sl(()=>d(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),a=()=>i(c=>!c),s=d(e.text)&&p(e.text.title)?ae(A(_e(e.text.title,t,r),e.translations)):void 0,l=A(_e(p(e.text)?e.text:e.text?.message,t,r),e.translations),u=ae(l);return u?si("div",{className:"flex flex-col gap-2",children:[s&&si("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,ai(ke,{expanded:o})]}),o&&ai(ii,{title:l,children:u})]}):null}import{atom as li}from"jotai";var zt=se(),$=zt.atom,ui=zt.clearAll,ci=zt.clear,me=zt.report,vn=li({}),Sn=li(null);import{useAtomValue as di}from"jotai";import{jsx as Tl}from"react/jsx-runtime";function _t(e){let t=di(me(e.field.name)),r=di(Dt(e.field.name))?.description??e.field.description;return Tl(Mt,{config:e.config,context:e.context,text:r,translations:e.translations,value:t})}import{twMerge as Al}from"tailwind-merge";import{jsx as fi,jsxs as wl}from"react/jsx-runtime";function mi(e){let t=e.style?.showOptionalLabel??!0,n=oe(e.field)||B(e.field);return wl("label",{"data-slot":"field-label","data-normal":n,className:Al("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:p(e.children)?e.children:void 0,children:[fi("span",{className:"[[data-slot=column]_&]:md:truncate",children:e.children}),t&&!e.field.required&&fi("span",{className:"ml-2 flex-shrink-0 text-sm text-zinc-600 dark:text-zinc-400",children:W("(Optional)",e.translations)})]})}import{jsx as gi,jsxs as Cl}from"react/jsx-runtime";function pi(e){let t={context:e.context,env:e.config?.env},n=_e(e.field.label,t);return Cl("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[gi(mi,{field:e.field,style:e.config?.style,translations:e.translations,children:A(n,e.translations)}),e.horizontal===!0&&gi(_t,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}import{Fragment as Fl,jsx as yi,jsxs as kl}from"react/jsx-runtime";function xi(e){return kl(Fl,{children:[e.field.name&&e.field.label&&yi(pi,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&yi(_t,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}function Bt(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(d(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 Kl,useEffect as Wl,useRef as Xl}from"react";import{createContext as Nl}from"react";var Il=e=>e,ge=Nl(Il);var Tn=se(),bi=Tn.clear,hi=Tn.bulkReport,$t=Tn.report;var Ri=se(),vi=Ri.atom,Si=Ri.report,Ti=se(),Gt=Ti.atom,Ai=Ti.report;import{use as Ml,useCallback as ki,useRef as Xe,useTransition as zl}from"react";import{use as El,useEffect as Ll,useEffectEvent as wi,useMemo as Pl}from"react";function Ci(e,t,n,r){let{name:o}=e,i=Pl(()=>Oo(e,r),[e,r]),a=El(tt),s=wi(u=>{u&&t(u,i,e)}),l=wi(u=>{u&&n(u,{keepValue:a})});return Ll(()=>(s(o),()=>{l(o)}),[o]),i}import{useSetAtom as Le,useStore as _l}from"jotai";import{useCallback as Vl,useEffect as Dl,useRef as Ol}from"react";function Fi(){let e=Ol(null);return Dl(()=>()=>{e.current&&clearTimeout(e.current)},[]),Vl((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}function Bl(e){return document.activeElement?.getAttribute("name")===e}function $l(e){return Array.isArray(e)&&e.every(d)}function Ni(e,t){let n=_l(),r=e.field.advanced?.entity,o=Fi(),[,i]=zl(),a=Ml(ge),{setValue:s,shouldSkipOnChange:l,value:u,setSource:c}=t,g=Xe(u);g.current=u;let f=Xe(e.translations);f.current=e.translations;let b=yt(e.field),h=Le($),N=Le(Vt),C=Le($t(e.field.name)),L=Le(vn),I=Le(Sn),D=Le(vi),O=Ci(e.field,e.onMount,e.onUnmount,e.translations),P=A(e.commonProps.placeholder,e.translations),F={...e.commonProps,placeholder:P};function te(m){let[,R]=e.getSchema();return R.find(v=>v.name===m)}function le(m){let R=te(m);if(R&&ce(R)){let v=R.advanced?.transform;if(v)return v}}function Se(m,R){if(h(v=>({...v,[m]:R})),L(v=>({...v,[m]:R})),e.onValueChange){let v=te(m);v&&e.onValueChange({name:a(m),type:v.type,value:R})}}let Te=Xe(null);Te.current=m=>{if(e.field.advanced?.transient)return;let R=ce(e.field)?Ye(m,e.field.advanced?.transform):m;s(R),e.onValueChange&&e.onValueChange({name:a(e.field.name),type:e.field.type,value:R})};let Ae=Xe(null);Ae.current=m=>{let R=e.field.event?.change;R&&Lr(R,({sources:v,states:E,values:we})=>{i(()=>{Pr(m,v,(U,M)=>{c(kt(U,e.field.name),M)}),Or(m,E,(U,M)=>{let Ce=U.map(_=>kt(_,e.field.name));N(_=>M?Ce.reduce((X,ye)=>({...X,[ye]:M}),_):Ce.reduce((X,ye)=>Pt(X,ye),_));let Y=M?.hidden===!0?Ce:M===void 0?Ce.filter(_=>te(_)?.hidden===!0):[];Y.length>0&&h(_=>{let X=!1,ye={..._};for(let xe of Object.keys(_))Y.some(Fe=>xe===Fe||xe.startsWith(`${Fe}.`))&&(delete ye[xe],X=!0);return X?ye:_})})}),Mr(m,we,(U,M,Ce)=>{let Y=kt(U,e.field.name);if(n.get(Gt)[Y]){$l(M)&&D(Fe=>({...Fe,[Y]:M}));return}let _=le(Y),X=_?Ye(M,_):M,xe=n.get($)[Y];if(Ce.onlyIfTargetEmpty&&!z(xe)){let Fe=n.get(vn)[Y];if(!Object.is(Fe,xe))return}if(X!==xe){if(Bl(Y)){I({target:Y,value:X});return}Se(Y,X)}})})};let y=ki(m=>{let v=O.safeParse(m).error?.issues.map(U=>U.message)??[],E=e.field.validation?.custom,we=E?Bo(m,E,U=>n.get(me(U)),f.current):[];C([...v,...we])},[e.field.validation?.custom,O,C,n]),x=Xe(null);x.current=()=>{let m=n.get(Sn);m?.target===e.field.name&&(I(null),z(n.get($)[m.target])&&Se(m.target,m.value))};let S=ki(m=>{if(!b){let R=m.target.value;e.config.validation.blur&&y(R)}x.current?.()},[b,e.config.validation.blur,y]);return{applyChangeEventsRef:Ae,commonProps:F,entity:r,hasClickable:b,onBlur:S,onValueChangeRef:Te,setTimeoutRef:o,shouldSkipOnChange:l,validated:y,valueRef:g}}import{deepEqual as Gl}from"fast-equals";import{useAtom as Ul}from"jotai";import{use as Hl,useCallback as Yl,useEffect as ql,useRef as Zl,useEffectEvent as Ii}from"react";function Ei(e,t){let{name:n}=e,r=Zl(!1),[o,i]=Ul(me(n)),a=Hl(ge),s=Ii((c,g=!1)=>{let f=ce(e)?Ye(c,e.advanced?.transform):c;!g&&!Gl(o,f)&&(r.current=!0),i(f)}),l=Ii(c=>{let{found:g,value:f}=We(a(n),c);if(T(f)){s(f);return}if(T(e.defaultValue)){s(e.defaultValue,!0);return}g&&s(f)});ql(()=>{if(t){l(t);return}T(e.defaultValue)&&s(e.defaultValue,!0)},[t,e.defaultValue]);let u=Yl(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:u,value:o}}import{jsx as Li}from"react/jsx-runtime";function Pi(e){let{useSource:t,useExtraProps:n,getValue:r,shouldSkipChange:o,dispatchChange:i,buildInitialSelected:a,isInitialReady:s}=e.strategies,{setValue:l,shouldSkipOnChange:u,value:c}=Ei(e.field,e.value),{data:g,setSource:f,isStaticSource:b}=t(e.field,e.config,c),{applyChangeEventsRef:h,commonProps:N,entity:C,hasClickable:L,onBlur:I,onValueChangeRef:D,setTimeoutRef:O,validated:P,valueRef:F}=Ni(e,{setValue:l,shouldSkipOnChange:u,value:c,setSource:f}),te=n?.(e.field),le=Xl(!1),{commonPropsWithOptions:Se,defaultValue:Te}=mo(e.field,N,g,c,b?e.translations:void 0),Ae=go(e.field,Te);Wl(()=>{let x=!!e.value||T(e.field.defaultValue);if(le.current||!x)return;if(!e.field.event?.change){le.current=!0;return}let S=e.value?H(e.field.name,e.value):void 0,m=T(S)?S:e.field.defaultValue;if(!T(m)||!s(e.field,m,g))return;le.current=!0;let R=a(m,g,C);h.current?.(R)},[h,a,g,C,s,e.field,e.value]);let y=Kl(x=>{let S=r(x,e.field);o({field:e.field,shouldSkipOnChange:u,hasClickable:L,inputValue:S,valueRef:F})||(D.current?.(S),e.config.validation.change&&P(S),e.field.event?.change&&i({applyChangeEventsRef:h,data:g,entity:C,inputValue:S,setTimeoutRef:O}))},[h,g,i,C,r,L,D,e.config.validation.change,e.field,O,o,u,P,F]);return Bt(e.config.inputs[e.field.type],x=>Li(xi,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:Li(x,{...Se,...e.ariaAttributes,...e.dataAttributes,...te,...Ae,onBlur:I,onChange:y})}))}import{jsx as jl}from"react/jsx-runtime";function Pe(e){return function(n){return jl(Pi,{...n,strategies:e})}}function Vi(e){let t=Z(e)?ie(e):null,n=re(e)?Re(e):null;return{dateFormat:t,timeFormat:n}}import{atom as Jl}from"jotai";var Ql=e=>{let t=Ho(e);if(t)return t},eu=e=>e.trim()!=="",Di=Jl({}),Ut=Qo(Di,{merge:Ql,validateTarget:eu}),Oi=ei(Di);import{useSetAtom as tu}from"jotai";function Ht(e){return{data:null,setSource:tu(Ut(e.name))}}var Mi=Pe({useSource:Ht,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=Vi(e);return po(t,n)},getValue:(e,t)=>{let n=e.target.value,r=re(t)?Re(t):null;if(r!==null)return eo(n,r);let o=Z(t)?ie(t):null;return o!==null&&At(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)=>T(t)});import{deepEqual as iu}from"fast-equals";import{useAtom as ou}from"jotai";import nu from"swr";function zi(e=null,t,n=!1){let{data:r,error:o}=nu(ru(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 wr(r,e.namespace)}return null}function ru(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!be(e.url)){if(Go(e.url,t.fetcher.remotePatterns))return e;Be.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function _i(e,t,n){let r=fo(e,n),[o,i]=ou(Ut(e.name)),a=o??r,s=zi(a,t,e.disabled),l=Array.isArray(a);return[s,i,l]}function au(e,t,n){let[r,o,i]=_i(e,t,n);return{data:r,setSource:o,isStaticSource:i}}function su(e,t){return Q(e)&&t===""}var Bi=Pe({useSource:au,getValue:e=>e.target.value,shouldSkipChange:({field:e,shouldSkipOnChange:t,hasClickable:n,inputValue:r,valueRef:o})=>su(e,r)||!n&&t()&&(!r||iu(r,o.current)),dispatchChange:({applyChangeEventsRef:e,data:t,entity:n,inputValue:r})=>{e.current?.(on(r,t,n))},buildInitialSelected:(e,t,n)=>on(String(e),t,n),isInitialReady:(e,t,n)=>(!Ee(e)||!!n&&n.length>0)&&T(t)});var $i=Pe({useSource:Ht,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)=>T(t)});import{jsx as An}from"react/jsx-runtime";function Gi(e){return Z(e.field)||re(e.field)?An(Mi,{...e}):Gr(e.field)?An($i,{...e}):An(Bi,{...e})}import{jsx as Ui}from"react/jsx-runtime";function Hi(e){return!e.errors||e.errors.length===0?null:Ui("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)=>Ui("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}import{twMerge as lu}from"tailwind-merge";import{jsx as uu}from"react/jsx-runtime";function Yt(e){let t=e.errors&&e.errors.length>0;return uu("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[sr]:"true"},...e.disabled&&{[lr]:"true"},"data-orientation":e.orientation,className:lu("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 cu}from"tailwind-merge";import{jsx as du}from"react/jsx-runtime";function Yi(e){return du(Yt,{...e,orientation:"vertical",className:cu("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as fu}from"tailwind-merge";import{jsx as mu}from"react/jsx-runtime";function qi(e){return mu(Yt,{...e,orientation:"horizontal",className:fu("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 Zi}from"react/jsx-runtime";function Ki(e){let t=yt(e.field),n=B(e.field),r=Yr(e.field);return e.horizontal?Zi(qi,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):Zi(Yi,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function Wi(e){if(!e.field.type)return null;let t=ao(e.field,e.disabled,{lang:e.lang,translations:e.translations}),n=So(e.field),r=vo(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 gu}from"tailwind-merge";import{jsx as wn,jsxs as pu}from"react/jsx-runtime";function Xi(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=It(e.style,{horizontal:Hr(e.field)}),o=qr(e.field,e.disabled);return pu("div",{className:gu("flex flex-col gap-3",Co(t)),children:[wn(Ki,{disabled:o,errors:n,field:e.field,horizontal:r,children:wn(Wi,{disabled:o,errors:n,field:e.field,horizontal:r,lang:e.lang,translations:e.translations,children:e.children})}),wn(Hi,{errors:n,name:e.field.name})]})}import{useAtomValue as yu}from"jotai";import{jsx as hu}from"react/jsx-runtime";function ji(e){return(t,n)=>o=>{let i=yu(e(o.field.name)),a=n(i,o);return a===null?null:hu(t,{...o,...a})}}var xu=ji($t);function Ji(e){return xu(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var bu=ji(Dt);function Qi(e){return bu(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var ea=Qi(Ji(Xi));import{twMerge as Cn}from"tailwind-merge";import{useState as Ru}from"react";import{Fragment as vu,jsx as G,jsxs as pe}from"react/jsx-runtime";function ta(e){let t=e.isMultiField||e.collapsed!=null,[n,r]=Ru(t?!e.collapsed:!0);function o(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function i(){r(c=>!c)}let a=c=>ne(W(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:Cn("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=pe("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??pe(vu,{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=pe("div",{className:Cn("flex items-center justify-between gap-2",e.isMultiField&&n&&"mb-3"),children:[t?pe("div",{className:"flex min-w-0 grow items-center gap-2",children:[pe("button",{"aria-expanded":n,"aria-label":a(n?"Collapse {label} {index}":"Expand {label} {index}"),className:Cn("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(ke,{expanded:n}),l]}),!n&&e.previewBadge&&G("div",{className:"ml-auto shrink-0",children:e.previewBadge})]}):l,s]});return e.isMultiField?pe("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(Oe,{visible:n,children:G(fe,{children:e.children})})]}):t?pe("div",{className:"box-border flex w-full min-w-0 flex-col gap-2",children:[u,G(Oe,{visible:n,children:G(fe,{children:e.children})})]}):pe("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(fe,{children:e.children})}),s&&G("div",{className:"shrink-0",children:s})]})}import{Fragment as Tu}from"react";import{twMerge as na}from"tailwind-merge";import{useAtomValue as Su}from"jotai";function qt(e,t){return Su(me(e))??t}import{jsx as je,jsxs as ra}from"react/jsx-runtime";function oa({className:e,initialValue:t,name:n,options:r,separator:o,staticLabel:i}){let a=qt(n??"",t);if(i===void 0&&r){let u=(Array.isArray(a)?a:a==null||a===""?[]:[a]).filter(c=>c!=null&&c!=="").map(c=>xo(c,r));return u.length===0?null:je("div",{className:"flex items-center gap-1.5 overflow-hidden",children:u.map((c,g)=>ra(Tu,{children:[(o||g>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:na("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:c,children:c})]},`${g}:${c}`))})}if(i===void 0&&(z(a)||d(a)||Array.isArray(a)))return null;let s=i??String(a);return ra("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:na("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:s,children:s})]})}import{useAtomValue as Au}from"jotai";import{useMemo as wu}from"react";function Zt(e,t){let n=Au($);return wu(()=>{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?d(a)?{...a,...o}:o:a},[n,e,t])}import{useMemo as Fn}from"react";import{jsx as ia}from"react/jsx-runtime";function Cu(e){return typeof e=="string"?{field:e}:e}function kn({className:e,fields:t,label:n="Preview",lang:r,name:o,previews:i,translations:a,value:s}){let l=Fn(()=>(Array.isArray(i)?i:[i]).map(Cu),[i]),u=Fn(()=>t?Io(t):void 0,[t]),c=Zt(o,s),g=Fn(()=>{let f=[];for(let[b,h]of l.entries()){if(h.when!==void 0&&!Ie(c,h.when))continue;if(h.label!==void 0){f.push({key:h.field??`label:${h.label}:${b}`,staticLabel:A(h.label,a)});continue}if(h.field===void 0)continue;let N=`${o}.${h.field}`,C=s!=null?H(N,s):void 0,L=u?.[h.field],I=L?yo(L,{lang:r,translations:a}):void 0;f.push({key:`${b}:${h.field}`,initialValue:C,options:I,previewName:N})}return f},[l,c,r,o,s,a,u]);return g.length===0?null:ia("div",{"aria-label":n,className:"flex items-center gap-1.5 overflow-hidden",children:g.map((f,b)=>ia(oa,{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:b>0,staticLabel:"staticLabel"in f?f.staticLabel:void 0},f.key))})}import{Fragment as Fu,jsx as ku}from"react/jsx-runtime";function aa({children:e,initialValue:t,name:n}){let r=qt(n,t),i=z(r)||d(r)||Array.isArray(r)?"":String(r);return ku(Fu,{children:e(i)})}import{jsx as Kt}from"react/jsx-runtime";function sa({canRemove:e,children:t,field:n,index:r,isMultiField:o,itemKey:i,label:a,lang:s,onRemove:l,previewBadge:u,previewLabel:c,previewTags:g,translations:f,value:b}){let h=`${n.name}.${i}`,N=`${a} ${r+1}`,C=Zt(h,b);return Kt(ta,{canRemove:e,collapsed:n.advanced?.collapsed,index:r,isMultiField:o,label:a,onRemove:l,previewLabel:Nu({fallbackLabel:N,liveItemValue:C,name:h,previewLabel:c,translations:f,value:b}),previewBadge:u?Kt(kn,{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:h,previews:u,translations:f,value:b}):void 0,previewTags:g?Kt(kn,{fields:n.fields,lang:s,name:h,previews:g,translations:f,value:b}):void 0,translations:f,children:t})}function Nu({fallbackLabel:e,liveItemValue:t,name:n,previewLabel:r,translations:o,value:i}){if(r===void 0)return;let a=p(r)?{field:r}:r;if(a.when!==void 0&&!Ie(t,a.when))return;if(a.label!==void 0)return A(a.label,o);if(a.field===void 0)return;let s=`${n}.${a.field}`;return Kt(aa,{initialValue:i?H(s,i):void 0,name:s,children:l=>l||e})}import{twMerge as zu}from"tailwind-merge";import{deepEqual as Eu}from"fast-equals";import{useAtom as Lu,useSetAtom as la,useStore as Pu}from"jotai";import{use as Vu,useCallback as De,useEffect as Wt,useEffectEvent as ua,useMemo as Du,useRef as Xt,useState as Ou}from"react";function Ve(e,t,n){return`${e}.${t}.${n}`}function Iu(e,t){let{initial:n,mounted:r,values:o}=t,i=r[e];if(i)return Nn(e,i,t);let a=o[e];if(a!==void 0)return a;if(n)return H(e,n)}function Nn(e,{items:t,leafNames:n},r){return t.map(o=>{let i={};for(let a of n)i[a]=Iu(Ve(e,o,a),r);return i})}function Mu(e,t,n){let r=[];for(let o=0;o<t;o++){let i=e[o],a={};for(let s of n)a[s]=i?.[s];r.push(a)}return r}function ca(e,t,n){let r=e.advanced?.length?.min??1,o=e.advanced?.length?.max??1/0,[i,a]=Ou(()=>ko(e,t)),s=Xt(i),l=Xt(i.length);s.current=i;let u=Pu(),c=la($),g=Xt(n);g.current=n;let f=Xt(t),b=Du(()=>{let y=[];for(let x of e.fields)if(K(x))for(let S of x.fields)y.push(S.name);else y.push(x.name);return y},[e.fields]),h=De((y,x)=>{let S=Number(y);return Number.isNaN(S)?!1:Number.isInteger(S)&&x>=0&&String(x)!==y},[]),N=Vu(ge),C=De(y=>{let x=`${e.name}.`;if(y.startsWith(x)){let S=y.slice(x.length),m=S.indexOf("."),R=m===-1?S:S.slice(0,m),v=Number(R),E=s.current.indexOf(v);h(R,E)&&(y=`${x}${E}${m===-1?"":S.slice(m)}`)}return N(y)},[e.name,h,N]),L=ua(()=>{let y=f.current;if(!y)return;let x={...u.get($)},S=!1;for(let m of i)for(let R of b){let v=Ve(e.name,m,R);if(v in x)continue;let E=H(v,y);T(E)&&(x[v]=E,S=!0)}S&&c(x)});Wt(()=>{L()},[]);let I=De((y,x)=>Nn(e.name,{items:y,leafNames:b},{mounted:u.get(Gt),values:x,initial:f.current}),[e.name,b,u]),D=De((y,x)=>{g.current?.({name:C(e.name),value:I(y,x)})},[I,e.name,C]),O=De(()=>{if(s.current.length>=o)return;let y=l.current++,x=[...s.current,y];a(x),D(x,u.get($))},[D,o,u]),P=De(y=>{if(s.current.length<=r)return;let x=s.current[y],S=s.current.filter((v,E)=>E!==y),R={...u.get($)};for(let v of b)delete R[Ve(e.name,x,v)];a(S),c(R),D(S,R)},[D,e.name,b,r,c,u]),F=la(Ai(e.name));Wt(()=>{F({items:i,leafNames:b})},[i,b,F]),Wt(()=>()=>{let y=u.get($);c({...y,[e.name]:I(s.current,y)}),F(void 0)},[I,e.name,F,c,u]);let[te,le]=Lu(Si(e.name)),Se=ua(y=>{let x=Math.min(Math.max(y.length,r),o),S=u.get($);if(Eu(I(s.current,S),Mu(y,x,b)))return;let m=[];for(let v=0;v<x;v++)m.push(s.current[v]??l.current++);let R={...S};for(let v of s.current)for(let E of b)delete R[Ve(e.name,v,E)];m.forEach((v,E)=>{let we=y[E];if(we)for(let U of b){let M=we[U];M!==void 0&&(R[Ve(e.name,v,U)]=M)}}),c(R),a(m),D(m,R)});Wt(()=>{te&&(Se(te),le(void 0))},[te,le]);let Te=i.length<o,Ae=i.length>r;return[i,O,P,Te,Ae,o,C]}import{jsx as In,jsxs as jt}from"react/jsx-runtime";var _u="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 da(e){let{field:t,lang:n,onValueChange:r,translations:o,value:i,children:a}=e,[s,l,u,c,g,f,b]=ca(t,i,r),h=A(No(t),o),N=t.advanced?.action?A(t.advanced.action,o):W("Add item",o),C=f!==1/0,L=Fo(t),{label:I,tags:D,badge:O}=t.advanced?.preview??{};return In(ge.Provider,{value:b,children:jt("div",{className:"flex w-full flex-col gap-4",children:[s.map((P,F)=>In(sa,{canRemove:g,field:t,index:F,isMultiField:L,itemKey:P,label:h,lang:n,onRemove:u,previewBadge:O,previewLabel:I,previewTags:D,translations:o,value:i,children:a(P)},P)),jt("button",{"aria-disabled":!c,"aria-label":C?`${N}, ${s.length} of ${f}`:N,className:zu(_u,C?"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:[jt("span",{className:"flex items-center gap-2",children:[In("span",{"aria-hidden":"true",className:"text-base leading-none",children:"+"}),N]}),C&&jt("span",{"aria-hidden":"true",className:"text-zinc-400 tabular-nums dark:text-zinc-500",children:[s.length," / ",f]})]})]})})}import{jsx as Bu}from"react/jsx-runtime";function fa(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0,n=ee(e.field.label,e.translations),r=ee(e.field.description,e.translations);return Bu(Lt,{description:r,empty:t,id:e.field.name,title:n,children:e.children})}import{jsx as En}from"react/jsx-runtime";function ma({children:e,field:t,lang:n,onValueChange:r,translations:o,value:i}){return En(Ot,{container:t,fields:t.fields,children:En(fa,{field:t,translations:o,children:En(da,{field:t,lang:n,onValueChange:r,translations:o,value:i,children:e})})})}import{twMerge as $u}from"tailwind-merge";import{jsx as ga,jsxs as Gu}from"react/jsx-runtime";function pa(e){let t=wo(e.column?.advanced?.cols);return Gu("div",{className:"flex w-full flex-col gap-4",children:[ga("div",{"data-slot":"column",className:$u("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&ga(Mt,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}import{Fragment as Hu}from"react";import{jsx as Uu}from"react/jsx-runtime";function ya(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>xt(n)||Ge(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:K(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return Uu(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 Yu}from"react/jsx-runtime";function Je(e){let{field:t,list:n}=e.components;return Ft(e.fields).map((r,o)=>Yu(Hu,{children:[K(r)&&Qe(pa,{column:r,config:e.config,context:e.context,translations:e.translations,children:Qe(Je,{...e,fields:r.fields})}),xt(r)&&Qe(t,{disabled:e.disabled,field:r,lang:e.lang,style:e.style,translations:e.translations,children:e.children}),Ge(r)&&Qe(n,{field:r,lang:e.lang,onValueChange:e.onValueChange,translations:e.translations,value:e.value,children:i=>Qe(ya,{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 qu}from"react/jsx-runtime";function xa(e){return n=>qu(Je,{...n,components:e})}var ba=xa({field:ea,list:ma});import{useSetAtom as ha}from"jotai";import{startTransition as Ra,useActionState as Zu}from"react";function Sa(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},s=ha(hi),l=ha(ui),u={data:null,error:null,success:!1},[c,g,f]=Zu(async(b,h)=>{let[N,C]=e(),L=Vo(N,C,a);if(i===!1)return t?await t(h,L):b;let I=Fr(h),D=Wu(I,C),O=L.safeParse(D);if(!O.success){let F=Do(O.error);return Ra(()=>{s(F)}),Ln(I,{description:W("Please correct the errors and try again.",a),details:[],title:W("There were validation errors submitting the form.",a)})}let P=kr(O.data);if(t)try{let F=await t(P,L);return F.success?(r?.(F.data),o||Ra(()=>{l()}),va(P,o)):Ln(P,F.error)}catch(F){return Be.error("Error executing form action:",F),Ln(P,{title:W("An unexpected error occurred submitting the form.",a),details:Ku(F,a)})}return va(O.data,o)},u);return[g,c,f]}function Ku(e,t){return e instanceof Error?[e.message]:[W("Unknown error",t)]}function va(e,t=!1){return{data:t?e:null,error:null,success:!0}}function Ln(e,t){return{data:e,error:t,success:!1}}function Wu(e,t){let n={...e};for(let r of t)if(Z(r)&&typeof n[r.name]=="string"&&n[r.name]){let o=Tt(n[r.name],ie(r));o&&(n[r.name]=o)}return n}import{useMemo as ju}from"react";import{useCallback as Vn,useRef as Aa}from"react";import{useCallback as Xu}from"react";import{useSetAtom as Pn}from"jotai";function Ta(){let e=Pn(bi),t=Pn(ci),n=Pn(Oi);return Xu((r,o)=>{let i=Array.isArray(r)?r:[r];e(i),n(i),o?.keepValue||t(i)},[e,n,t])}function wa(){let e=Ta(),t=Aa({}),n=Aa([]),r=Vn((a,s,l)=>{a in t.current||(t.current[a]=s,n.current.push(l))},[]),o=Vn((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[Vn(()=>[t.current,n.current],[]),r,o]}import{Fragment as Ju,jsx as et,jsxs as Qu}from"react/jsx-runtime";function Ca(e){let t=ju(()=>no(e.lang,e.translations),[e.lang,e.translations]),[n,r,o]=wa(),[i,a,s]=Sa(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 Qu(Ju,{children:[l&&Bt(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(oi,{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:g})=>et(ba,{config:e.config,context:e.context,disabled:c,fields:g,lang:e.lang,onValueChange:e.onValueChange,style:e.config.style,translations:t,value:u,children:f=>et(Gi,{...f,config:e.config,context:e.context,getSchema:n,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:u})})})]})}import{Provider as ec}from"jotai";import{jsx as Fa}from"react/jsx-runtime";function tc(e){return Fa(ec,{children:Fa(Ca,{...e})})}function ka(e,t){for(let n of e){if("name"in n&&typeof n.name=="string"){t.push(n.name);continue}"fields"in n&&ka(n.fields??[],t)}}function nc(e,t){let n=[];for(let o of e)ka(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{tc as Form,nc as withDeclaredFields};
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import type { MountedList } from './list-store';
|
|
2
|
+
import type { Nullable } from '../../../../luna-core/index';
|
|
3
|
+
export declare function itemKey(listName: string, stableId: number, leafName: string): string;
|
|
4
|
+
/**
|
|
5
|
+
* The three places a leaf can be found, declared in the order they are tried.
|
|
6
|
+
*
|
|
7
|
+
* They travel together because they are one thing -- where values come from --
|
|
8
|
+
* and because none of them changes as `composeListValue` descends: only the
|
|
9
|
+
* list being read does. Passing them as one argument is what keeps the
|
|
10
|
+
* recursion from carrying the same three the whole way down.
|
|
11
|
+
*/
|
|
12
|
+
export type ValueSources = {
|
|
13
|
+
/**
|
|
14
|
+
* The lists on screen, by name, already read out of the store.
|
|
15
|
+
*
|
|
16
|
+
* The record rather than a lookup function, on purpose: reading the atom per
|
|
17
|
+
* leaf instead of once per call cost more than everything else here put
|
|
18
|
+
* together (46.59us against 13.80us for ten groups of five rules). Reading
|
|
19
|
+
* it once is also no less correct -- this traversal is synchronous, so there
|
|
20
|
+
* is no point at which the registry could change underneath it.
|
|
21
|
+
*/
|
|
22
|
+
mounted: Record<string, MountedList>;
|
|
23
|
+
/** The flat value atom, keyed by stable id. */
|
|
24
|
+
values: Record<string, unknown>;
|
|
25
|
+
/** The value the list was mounted with, if it had one. */
|
|
26
|
+
initial?: Nullable<Record<string, unknown>>;
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* Reads a list back out of the flat value atom, as the rows a consumer is
|
|
30
|
+
* given. Where each leaf comes from is `readLeaf`; the two recurse into each
|
|
31
|
+
* other, so a list nested two deep reads back the same way.
|
|
32
|
+
*
|
|
33
|
+
* Every leaf is written down, including the ones worth `undefined`. That is
|
|
34
|
+
* the shape `toListValue` normalises an incoming assignment to before
|
|
35
|
+
* comparing, and a row that spelled out only the leaves it had would compare
|
|
36
|
+
* unequal to an identical row already stored.
|
|
37
|
+
*
|
|
38
|
+
* @param listName - The list's name, already carrying its ancestors' stable
|
|
39
|
+
* ids (`rules.0.rule`), which is what makes the keys unambiguous.
|
|
40
|
+
*/
|
|
41
|
+
export declare function composeListValue(listName: string, { items, leafNames }: MountedList, sources: ValueSources): Array<Record<string, unknown>>;
|
|
@@ -2,7 +2,18 @@ export declare const pendingListRowsAtom: import("jotai").PrimitiveAtom<Record<s
|
|
|
2
2
|
init: Record<string, Record<string, unknown>[]>;
|
|
3
3
|
};
|
|
4
4
|
export declare const reportPendingListRowsAtom: import("jotai-family").AtomFamily<string, import("jotai").WritableAtom<Record<string, unknown>[] | undefined, [newValue: Record<string, unknown>[] | undefined], void>>;
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
/**
|
|
6
|
+
* What a list on screen is holding: the stable ids of its live rows, in the
|
|
7
|
+
* order they are shown, and the name of every leaf a row owns.
|
|
8
|
+
*
|
|
9
|
+
* Enough to read the list back out of the flat value atom, which is the whole
|
|
10
|
+
* reason it is published. See `composeListValue`.
|
|
11
|
+
*/
|
|
12
|
+
export type MountedList = {
|
|
13
|
+
items: readonly number[];
|
|
14
|
+
leafNames: readonly string[];
|
|
7
15
|
};
|
|
8
|
-
export declare const
|
|
16
|
+
export declare const mountedListsAtom: import("jotai").PrimitiveAtom<Record<string, MountedList>> & {
|
|
17
|
+
init: Record<string, MountedList>;
|
|
18
|
+
};
|
|
19
|
+
export declare const reportMountedListAtom: import("jotai-family").AtomFamily<string, import("jotai").WritableAtom<MountedList | undefined, [newValue: MountedList | undefined], void>>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-luna-form",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.80",
|
|
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",
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"eslint-plugin-react": "7.37.5",
|
|
35
35
|
"eslint-plugin-react-hooks": "7.1.1",
|
|
36
36
|
"eslint-plugin-react-refresh": "0.5.4",
|
|
37
|
-
"@luna-form/core": "0.0.
|
|
37
|
+
"@luna-form/core": "0.0.80"
|
|
38
38
|
},
|
|
39
39
|
"license": "Apache-2.0",
|
|
40
40
|
"repository": {
|