react-luna-form 0.0.62 → 0.0.63

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.
@@ -1 +1 @@
1
- "use strict";var Aa=Object.create;var lt=Object.defineProperty;var Na=Object.getOwnPropertyDescriptor;var ka=Object.getOwnPropertyNames;var Ia=Object.getPrototypeOf,Ea=Object.prototype.hasOwnProperty;var Pa=(e,t)=>{for(var n in t)lt(e,n,{get:t[n],enumerable:!0})},Mn=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of ka(t))!Ea.call(e,o)&&o!==n&&lt(e,o,{get:()=>t[o],enumerable:!(r=Na(t,o))||r.enumerable});return e};var Va=(e,t,n)=>(n=e!=null?Aa(Ia(e)):{},Mn(t||!e||!e.__esModule?lt(n,"default",{value:e,enumerable:!0}):n,e)),La=e=>Mn(lt({},"__esModule",{value:!0}),e);var ss={};Pa(ss,{Form:()=>wa});module.exports=La(ss);var _n=require("react/jsx-runtime");function zn(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,_n.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var on=require("react/jsx-runtime");function Ve(e){return(0,on.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,on.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 Bn=require("react");var $n=require("react"),st=(0,$n.createContext)(!1);var an=require("react/jsx-runtime");function Ye({children:e,visible:t}){return(0,an.jsx)(Bn.Activity,{mode:t?"visible":"hidden",children:(0,an.jsx)(st,{value:!0,children:e})})}var ct="input",Un="input/date",Gn="input/email",Hn="input/number";var Yn="input/time";var Xn="textarea",Zn="radio",qn="checkbox",ln="list";var Wn="select",Kn="select/active",Jn="select/day",Qn="select/month",jn="select/timezone",er="select/year";var tr="chips",nr="chips/day",rr="chips/month",Xe="column",or="description",sn="fields",ir="label",W="value",ut="options",cn="email",ar="number",lr="password",sr="tel",Ze="text",cr="aria-errormessage",ur="aria-invalid",dr="data-invalid",mr="data-readonly",fr="aria",pr="data",dt="max",gr="maxLength",mt="min",yr="minLength",Le="$ref";var xr="source",br="state",ft="http://luna.internal";var hr="type",vr={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"),Ne=require("date-fns/locale");function f(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function B(e){return e==null||e===""}function Q(e){return b(e)||typeof e=="number"||un(e)}function b(e){return typeof e=="string"}function Sr(e){return f(e)&&"url"in e}function un(e){return typeof e=="boolean"}var Tr={en:Ne.enUS,"en-US":Ne.enUS,es:Ne.es,"es-ES":Ne.es,"es-MX":Ne.es},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 Rr(e){if(e)return Tr[e]??Tr[e.split("-")[0]]}function pt(e){if(typeof e=="number"&&!Number.isNaN(e))return e;if(b(e)&&e.trim()!==""){let t=Number(e);return Number.isNaN(t)?null:t}return null}function Cr(e,t,n){let r=Oa[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 Fr(e){if(e instanceof Date)return(0,V.isValid)(e)?e:null;if(b(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 Ma={currency:(e,t,n)=>{let r=pt(e);if(r===null)return String(e);let o=t[0]??"USD";return new Intl.NumberFormat(n.locale,{style:"currency",currency:o}).format(r)},percent:(e,t,n)=>{let r=pt(e);return r===null?String(e):new Intl.NumberFormat(n.locale,{style:"percent"}).format(r)},number:(e,t,n)=>{let r=pt(e);return r===null?String(e):new Intl.NumberFormat(n.locale).format(r)},date:(e,t,n)=>{let r=Fr(e);if(!r)return String(e);let o=t[0]??"short",i=Rr(n.locale);if(o==="relative")return(0,V.formatDistanceToNow)(r,{addSuffix:!0,locale:i});let a=Da[o]??o;return(0,V.format)(r,a,{locale:i})},duration:(e,t,n)=>{let r=Rr(n.locale);if(typeof e=="number")return Cr(e,t[0]??"ms",r);if(b(e)){let i=pt(e);if(i!==null)return Cr(i,t[0]??"ms",r)}let o=Fr(e);return o?(0,V.formatDistanceToNow)(o,{addSuffix:!0,locale:r}):String(e)}};function wr(e,t,n){let r=t.split(":").map(l=>l.trim()).filter(l=>l.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 mn(e,t=[],n=W){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=W){if(e!=null){if(Array.isArray(e)&&e.every(Q)||Q(e))return e;if(f(e)){let n=_a(e,t);if(Q(n))return n}}}function _a(e,t){let n=U(e,t);if(Q(n))return n}function Ar(e,t){if(Array.isArray(e))return e;let n=U(e,t);return Array.isArray(n)?n:null}function U(e,t){if(!t||!f(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(f(r)&&o in r)r=r[o];else return null;return r}function pn(e,t={description:or,label:ir,value:W}){return e.map(n=>{if(f(n)){let r=U(n,t.label),o=U(n,t.value);if(Q(r)&&Q(o)){let i=U(n,t.description);return{label:`${r}`,value:`${o}`,...Q(i)&&{description:`${i}`}}}}return n})}function Nr(e=Ze){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==ct?n.trim().toLowerCase():Ze}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 Ir(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 l=r[a],c=r[a+1],s=za.test(c);l in o||(o[l]=s?[]:{}),o=o[l]}let i=r[r.length-1];o[i]=e[n]}return dn(t),t}function dn(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)f(o)&&dn(o);e[t]=r}else f(n)&&dn(n)}}var $a=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function ye(e,t={},n={}){if(b(e))return Ba(e,t,n);if(Array.isArray(e))return e.map(r=>ye(r,t,n));if(f(e)){let r={};for(let o in e)r[o]=ye(e[o],t,n);return r}return e}function We(e,t={},n={}){return qe(e)?ye(e,t,n):e}function qe(e){return b(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>qe(t)):f(e)?Object.values(e).some(t=>qe(t)):!1}function Ba(e,t={},n={}){return e.replace(/{([^}]{1,200})}/g,(r,o)=>{let i=String(o).split("|").map(u=>u.trim()),[a,...l]=i;if(!a)return r;let c=a.includes(".")?U(t,a):t[a];if(l.length===0)return Q(c)?String(c):r;if(c==null)return r;let s=c;for(let u of l){let d=wr(s,u,{locale:n.locale});if(d===void 0)return r;s=d}return String(s)})}function Er(e,t){if(!b(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=$a.exec(e))!==null;){let[a,l,c]=n,s=n.index;o=!0,s>r&&i.push(e.substring(r,s));let u=t?t(s,c,l):a;i.push(u),r=s+a.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var Ke={error:(...e)=>{gn()&&!yn()&&gt().error("[Luna Form]",...e)},warn:(...e)=>{gn()&&!yn()&&gt().warn("[Luna Form]",...e)},info:(...e)=>{gn()&&!yn()&&gt().info("[Luna Form]",...e)}},gn=()=>typeof gt()<"u",yn=()=>!0,gt=()=>globalThis.console;function Pr(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===W&&n.push(i),i.action===xr&&r.push(i),i.action===br&&o.push(i);t({sources:r,states:o,values:n})}function Vr(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(Sr(i)){let a=ye(i.url,e),l=i.body?ye(i.body,e):i.body;n(o,{...i,url:a,body:l})}}}var Je={eq:Xa,gt:Ka,gte:Ja,in:qa,lt:Qa,lte:ja,neq:Za,nin:Wa},Ua=/^\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 Ga(e){return typeof e=="string"&&Ua.test(e)}function Ha(e){return typeof e=="string"&&Lr.test(e)}function Ya(e){let t=e.match(Lr);if(t){let[,n,r,o,i,a,l]=t;return new Date(Number(o),Number(r)-1,Number(n),Number(i??0),Number(a??0),Number(l??0)).getTime()}return NaN}function xe(e){return Ga(e)?new Date(e).getTime():Ha(e)?Ya(e):Number(e)}function Xa(e,t){return e===t}function Za(e,t){return e!==t}function qa(e,t){return Array.isArray(t)&&t.includes(String(e))}function Wa(e,t){return Array.isArray(t)&&!t.includes(String(e))}function Ka(e,t){return xe(e)>xe(t)}function Ja(e,t){return xe(e)>=xe(t)}function Qa(e,t){return xe(e)<xe(t)}function ja(e,t){return xe(e)<=xe(t)}function De(e,t){if(t===void 0)return!0;if(b(t)){let n=yt(e,W);return Array.isArray(n)?n.length===1&&n[0]===t:n===t}if(un(t)){let n=yt(e,W);return(Array.isArray(n)?n.length>0:!!n)===t}if(Array.isArray(t)){let n=yt(e,W);return Array.isArray(n)?n.some(r=>t.includes(String(r))):t.includes(String(n))}return el(e,t)}function el(e=null,t){let n=yt(e,t.field??W),{operator:r="eq",value:o}=t,i=Je[r];return i?i(n,o):!1}function yt(e,t){return f(e)?U(e,t):e}function Dr(e=null,t=[],n){for(let r of t){let{target:o,state:i,when:a}=r,l=Array.isArray(o)?o:[o];if(!e){n(l);continue}let c=De(e,a);n(l,c?i:void 0)}}function Or(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?ye(i,e):void 0,{onlyIfTargetEmpty:r.onlyIfTargetEmpty??!1})}var Qe=e=>I(Kn)(e),Mr=e=>I(Jn)(e),xt=e=>I(Qn)(e),bt=e=>I(er)(e),zr=e=>I(jn)(e),ht=e=>I(nr)(e),vt=e=>I(rr)(e),K=I(Un),ae=I(Yn),G=I(qn),j=I(tr),le=I(Zn),be=I(ct),he=I(Wn),xn=I(Xn),_r=I(Ze,cn,lr,sr),$r=I(Gn,cn),St=I(Hn,ar);function Tt(e){return le(e)||G(e)}function Rt(e){return e.type===ln}function ee(e){return e.type===Xe}function Ct(e){return e.type!==Xe&&e.type!==ln}function Oe(e){return he(e)||le(e)||j(e)}function Br(e){return be(e)||xn(e)}function T(e){return e!=null&&e!==""}function I(...e){return t=>{let n=b(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Ur(e,t={}){if(he(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&f(n))return[n]}}function Gr(e){return le(e)||G(e)?!0:e.advanced?.horizontal??!1}function Hr(e){return G(e)?e.advanced?.reverse!==!1:!1}function Yr(e,t){let n=e.readonly??!1;return t||n}function bn(e){if(le(e)||j(e)||he(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||f(t)&&!(Le in t))return t}}var D=require("date-fns"),tl=/^\d+$/,Ft=new Date(2e3,0,1),nl=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[];function hn(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function vn(){return Array.from({length:7},(e,t)=>({value:t.toString(),label:new Date(2e3,0,2+t).toLocaleString("default",{weekday:"long"})}))}function qr(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 Sn(){return new Date().getFullYear()}function rl(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function ol(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return vr[n]??"Other"}function il(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function Xr(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(l=>l.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),a=il(r,e);return{offset:i,longName:a}}function Zr(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function Wr(){let e=new Date,t=rl(),n=new Map,r=Zr(t),{offset:o,longName:i}=Xr(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let c of nl()){if(c===t)continue;let s=Zr(c),{offset:u,longName:d}=Xr(c,e),h={value:c,label:`${s} - ${d} (${u})`},m=ol(c);if(m==="Other")continue;let F=n.get(m);F?F.push(h):n.set(m,[h])}for(let c of n.values())c.sort((s,u)=>s.label.localeCompare(u.label));let l=Array.from(n.entries()).sort(([c],[s])=>c.localeCompare(s)).map(([c,s])=>({label:c,items:s}));return[{label:"Suggested",items:[a]},...l]}function Tn(e,t){if(typeof e=="number")return e;let n=t??Sn(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,a]=o,l=parseInt(a,10);if(!isNaN(l))return i==="+"?n+l:n-l}return n}return tl.test(r)?parseInt(r,10):n}function wt(e,t){if(!e)return"";try{let n=(0,D.parse)(e,t,Ft);return(0,D.isValid)(n)?(0,D.format)(n,"yyyy-MM-dd"):""}catch{return""}}function Kr(e,t){if(!e)return"";try{let n=(0,D.parse)(e,t,Ft);return(0,D.isValid)(n)?(0,D.format)(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=(0,D.parse)(e,n,Ft);return(0,D.isValid)(r)?(0,D.format)(r,t):""}catch{return""}}function At(e,t="MMMM d, yyyy"){if(!e)return"";try{let n=(0,D.parse)(e,"yyyy-MM-dd",Ft);return(0,D.isValid)(n)?(0,D.format)(n,t):""}catch{return""}}function ke(e){return e.advanced?.format??"HH:mm"}function se(e){return e.advanced?.format??"MMMM d, yyyy"}var Nt=Sn();function jr(e){if(j(e))return al(e)}function al(e){if(ht(e))return vn();if(vt(e))return hn()}function eo(e){if(he(e))return ll(e)}function ll(e){if(Mr(e))return vn();if(xt(e))return hn();if(bt(e)){let t=e.advanced?.length?.min??Nt,n=e.advanced?.length?.max??Nt+5;return qr(Tn(t,Nt),Tn(n,Nt))}if(zr(e))return Wr();if(Qe(e))return[{value:"true",label:"Yes"},{value:"false",label:"No"}]}function to(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return be(e)?{...n,...sl(e)}:he(e)?{...n,...no(e,eo)}:xn(e)?{...n,...ul(e)}:j(e)?{...n,...cl(e)}:n}function sl(e){let t=Nr(e.type),n={...e,type:t};return{...ml(e),...ro(e),...dl(n),..._r(n)?oo(n):{},type:t}}function no(e,t){let n=t(e);return n?{options:n}:{}}function cl(e){let t=no(e,jr),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function ul(e){return{...ro(e),...oo(e)}}function ro(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function dl(e){return St(e)?fl(e):{}}function ml(e){if(ae(e)){let t=ke(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function oo(e){return io(e,{min:yr,max:gr})}function fl(e){return io(e,{min:mt,max:dt})}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 ao(e,t){let n=bn(e);return n||Ur(e,t)}function pl(e,t){let n=f(t)&&e.name in t?t[e.name]:t,r=fn(n,e.advanced?.entity),o=T(r)?r:e.defaultValue;return ae(e)&&T(o)?gl(e,o):K(e)&&T(o)?hl(e,o):o}function gl(e,t){let n=ke(e);return b(t)?Kr(t,n):t}function yl(e,t,n){return Oe(e)&&Array.isArray(n)?{...t,[ut]:n}:t}function xl(e,t,n){if(e.required&&!T(n)&&he(e)&&e.advanced?.preselected!==!1&&ut in t){let r=t[ut];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function bl(e,t){return Oe(e)&&Array.isArray(t)?pn(t,e.advanced?.options):t}function lo(e,t,n,r){let o=pl(e,r),i=Array.isArray(n)?bl(e,n):n,a=yl(e,t,i),l=xl(e,a,o);return{commonPropsWithOptions:a,defaultValue:l}}function so(e,t){return G(e)?{checked:T(t)?t:!1}:j(e)?{value:Array.isArray(t)?t:[]}:K(e)&&b(t)&&T(t)?{value:At(t,se(e))}:Qe(e)?{value:T(t)?String(t):""}:{value:t??""}}function hl(e,t){let n=se(e);return b(t)?wt(t,n):t}function co(e,t){let n=e??t;return n?{"data-format":n}:{}}function Qr(e){let t=[];for(let n of e){if(typeof n=="string"){t.push(n);continue}f(n)&&"value"in n&&"label"in n&&b(n.value)&&b(n.label)&&t.push({label:n.label,value:n.value})}return t}function uo(e){if(!Oe(e))return;let t=j(e)?jr(e):eo(e);if(Array.isArray(t)){let r=Qr(t);return r.length>0?r:void 0}let n=bn(e);if(Array.isArray(n)){let r=pn(n,e.advanced?.options),o=Qr(r);return o.length>0?o:void 0}}function mo(e,t){let n=String(e);for(let r of t)if(typeof r=="string"){if(r===n)return r}else if(r.value===n)return r.label;return n}var vl=/^#\/definition\//;function It(e=[],t){let n=kt(e,t);return Array.isArray(n)?n.filter(Tl).sort((r,o)=>fo(r)-fo(o)):[]}function kt(e,t,n=new Map,r=new WeakSet){if(!Sl(t)||!e||typeof e!="object")return e;if(n.has(e))return n.get(e);if(r.has(e))return e;if(r.add(e),Array.isArray(e))return e.map(i=>kt(i,t,n,r));if(Le in e&&b(e[Le])){let i=e[Le].replace(vl,""),a=U(t,i);return a!==null?kt(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=kt(a,t,n,r);return r.delete(e),n.set(e,o),o}function po(e){return Object.entries(e??{})}function fo(e){return e.order??Number.MAX_VALUE}function Sl(e){return e!==void 0&&f(e)&&Object.keys(e).length>0}function Tl(e){return hr in e?!0:Array.isArray(e[sn])?e[sn].length>0:!0}function go(e,t){let n={};for(let[r,o]of po(t))n[`${e}-${r}`]=o;return n}function Rl(e){return go(fr,e)}function Cl(e){return go(pr,e)}function yo(e,t){let n=Rl(e.advanced?.aria);return t&&t.length>0&&(n[ur]="true",n[cr]=`${e.name}-error`),n}function xo(e){return Cl(e.advanced?.data)}var bo={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},ho={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function vo(e,t=2){return bo[e&&e in bo?e:t]}function So(e){if(e&&e in ho)return ho[e]}function Fl(e,t){let n=e.advanced?.length?.min??1;if(t){let r=U(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function To(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===Xe}function Ro(e,t){let n=Fl(e,t);return Array.from({length:n},(r,o)=>o)}function Co(e){return e.label??e.name}function Fo(e){let t={};for(let n of e)if(ee(n))for(let r of n.fields)t[r.name]=r;else t[n.name]=n;return t}function Et(e,t){if(!e.includes("/"))return e;let[n,r]=e.split("/"),o=new RegExp(`(^|.*\\.)(${n}\\.\\d+\\.)`),i=t.match(o);return i?`${i[0]}${r}`:r}var C=require("zod");function R(e,t){return e?t?t[e]??e:e:""}var wl=[[G,wo],[$r,Al],[St,Il],[le,Nl],[Qe,wo],[xt,Pl],[bt,El],[j,Rn],[ht,Rn],[vt,Rn]];function No(e,t=[],n){let r=C.z.object(e);return t.length===0?r:Ol(r,t,n)}function ko(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 Io(e,t){for(let[n,r]of wl)if(n(e))return r(e,t);return kl(e,t)}function Al(e,t){let n=C.z.string().trim();if(e.required){let r=ve(e,t),o=n.min(1,r).pipe(Ao(e,t));return C.z.preprocess(i=>B(i)?"":i,o)}return n.pipe(Ao(e,t)).or(C.z.literal("")).nullable()}function wo(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?(G(e)?n=n.refine(r=>r===!0,{message:ve(e,t)}):n=n.refine(r=>typeof r=="boolean",{message:ve(e,t)}),C.z.preprocess(r=>r===null?!1:r,n)):n.nullable()}function Nl(e,t){let n=C.z.coerce.string();return e.required?(n=n.min(1,ve(e,t)),C.z.preprocess(r=>B(r)?"":r,n)):n.or(C.z.literal("")).nullable()}function kl(e,t){let n=C.z.coerce.string().trim();return n=Eo(n,e,t),e.required?(n=Po(n,e,t),C.z.preprocess(r=>B(r)?"":r,n)):n.nullable()}function Il(e,t){let n=C.z.coerce.number().int();return n=Eo(n,e,t),e.required?(n=Po(n,e,t),C.z.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function El(e,t){return e.required?C.z.preprocess(Vl,C.z.coerce.number({message:ve(e,t)}).int()):C.z.coerce.number().int().nullable()}function Pl(e,t){let n=ve(e,t),r=C.z.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function Vl(e){return e===null||e===""?void 0:e}function Ao(e,t){let n=e.validation?.email?R(e.validation?.email,t):void 0;return C.z.email(n)}function Eo(e,t,n){return e=Ll(e,t,n),e=Dl(e,t,n),e}function Po(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,ve(t,n)):e}var Ll=(e,t,n)=>Vo(e,t,mt,n),Dl=(e,t,n)=>Vo(e,t,dt,n);function Vo(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?R(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function Ol(e,t=[],n){let r=zl(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:l}of r)if(!Ml(o,a,l)){let c=R(l.message,n);i.addIssue({code:"custom",message:c,path:[a]})}})}function Ml(e,t,n){let r=n.operator??"eq",o=Je[r];return o?o(e[t],e[n.field]):!1}function zl(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 Lo(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let l=a.operator??"eq",c=Je[l];if(c&&!c(e,n(a.field))&&a.message){let s=R(a.message,r);o.push(s)}}return o}function ve(e,t){return e.validation?.required?R(e.validation?.required,t):void 0}function Rn(e,t){let n=C.z.array(C.z.string());return e.required&&(n=n.min(1,ve(e,t))),C.z.preprocess(r=>B(r)?[]:Array.isArray(r)?r.map(String):[String(r)],n)}function Do(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||_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 $l(e){return/^(https?:)?\/\//.test(e)}function Oo(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,ft);new URL(t,ft).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(ft,""):o}catch{return t||e}}function Mo(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=Oo(t.url,n.url),o=Bl(t,n),i=Ul(t,n);return{...t,...n,url:r,body:o,headers:i}})}function Bl(e,t){return f(t.body)&&f(e?.body)?{...e.body,...t.body}:t.body??e?.body}function Ul(e,t){return f(t.headers)&&f(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function Pt(e,t){return{...e,...t}}var Gl={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 je(e,t){return!t||!b(e)||B(e)?e:(Array.isArray(t)?t:[t]).reduce((r,o)=>{let i=Gl[o];return i?i(r):r},e)}var zo=require("react/jsx-runtime");function ce(e){return Er(e,(t,n,r)=>(0,zo.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}var Vt=require("react"),te=require("react/jsx-runtime");function _o(e){let{fields:t=[]}=e.section,[n,r]=(0,Vt.useState)(!1),o=(0,Vt.useCallback)(()=>r(i=>!i),[]);return(0,te.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,te.jsx)("legend",{children:(0,te.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,te.jsx)(Ve,{expanded:n}),(0,te.jsx)("span",{children:ce(e.section.title)})]})}),(0,te.jsx)(Ye,{visible:n,children:(0,te.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.section.description&&(0,te.jsx)("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:ce(e.section.description)}),e.group]})})]})}var Se=require("react/jsx-runtime");function $o(e){let t=(0,Se.jsxs)("div",{className:"flex flex-col",children:[e.title&&(0,Se.jsx)("legend",{className:"mb-3 font-medium text-zinc-800 dark:text-zinc-200",children:ce(e.title)}),e.description&&(0,Se.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:ce(e.description)})]});return e.step?(0,Se.jsxs)("div",{className:"flex flex-row items-start gap-4",children:[(0,Se.jsx)("div",{className:"bg-primary text-primary-foreground flex size-6 shrink-0 items-center justify-center rounded-full",children:(0,Se.jsx)("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}var et=require("react/jsx-runtime");function Lt(e){return(0,et.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,et.jsx)($o,{description:e.description,step:e.step,title:e.title}),(0,et.jsx)("div",{className:"w-full min-w-0",children:e.children})]})}var Bo=require("react/jsx-runtime");function Te(e){return(0,Bo.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 Dt=require("react/jsx-runtime");function Uo(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=Pt(e.style,{compact:e.section.advanced?.compact}),o=(0,Dt.jsx)(Te,{compact:r,children:e.children});return!e.section.title&&!e.section.description?o:e.section.advanced?.collapsible?(0,Dt.jsx)(_o,{section:e.section,group:o}):(0,Dt.jsx)(Lt,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),step:n,title:e.section.title,children:o})}var Cn=require("react/jsx-runtime");function Go(){return(0,Cn.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,Cn.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-zinc-200 dark:bg-zinc-800"})})}var Zo=require("jotai");var Re=require("jotai"),Fn=require("jotai-family"),Ot=require("fast-equals");function Mt(e,t){let{[t]:n,...r}=e;return r}function Hl(e){return(0,Fn.atomFamily)(t=>(0,Re.atom)(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];(0,Ot.deepEqual)(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,Mt(i,t))}))}function Yl(e){return(0,Re.atom)(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function Xl(e){return(0,Re.atom)(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)l in i&&(delete i[l],a=!0);a&&n(e,i)})}function Zl(e){return(0,Re.atom)(null,(t,n,r)=>{let o=t(e);(0,Ot.deepEqual)(o,r)||n(e,r)})}function Ho(e,t={}){let{merge:n,validateTarget:r}=t;return(0,Fn.atomFamily)(o=>(0,Re.atom)(i=>{let a=i(e)[o];if(a&&n)return n(Object.values(a))},(i,a,l,c)=>{if(r&&!r(l))return;let s=i(e),u={...s[l]??{}};if(c!=null){let d=u[o];(!d||!(0,Ot.deepEqual)(d,c))&&(u[o]=c,a(e,{...s,[l]:u}))}else o in u&&(delete u[o],Object.keys(u).length===0?a(e,Mt(s,l)):a(e,{...s,[l]:u}))}))}function Yo(e){return(0,Re.atom)(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)l in i&&(delete i[l],a=!0);for(let l in i){let c={...i[l]},s=!1;for(let u of r)u in c&&(delete c[u],s=!0,a=!0);s&&(Object.keys(c).length===0?delete i[l]:i[l]=c)}a&&n(e,i)})}function Me(e={}){let t=(0,Re.atom)(e);return{atom:t,clearAll:Yl(t),clear:Xl(t),bulkReport:Zl(t),report:Hl(t)}}var Xo=Me(),zt=Xo.atom,_t=Xo.report;function ql(e,t){return e.fields.every(n=>qo(n,t))}function qo(e,t){return t[e.name]?.hidden??e.hidden??!1}function Wl(e,t){return ee(e)?ql(e,t):qo(e,t)}function $t(e){let t=(0,Zo.useAtomValue)(zt);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>Wl(r,t))?null:e.children}var ue=require("react/jsx-runtime");function Wo(e){let t=It(e.sections,e.definition);return(0,ue.jsx)("div",{className:"h-full w-full",children:(0,ue.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,ue.jsxs)(Te,{children:[t.map((n,r)=>(0,ue.jsxs)($t,{fields:n.fields??[],children:[(0,ue.jsx)(Uo,{advanced:e.advanced,section:n,step:r+1,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.advanced?.separator&&(0,ue.jsx)(Go,{})]},`key-${n.id}-${r}`)),e.control&&(0,ue.jsx)(zn,{isPending:e.isPending,children:e.control})]})})})}var Jo=require("react/jsx-runtime");function Ko(e){return(0,Jo.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 Qo=require("react"),ze=require("react/jsx-runtime");function Bt(e){let t={context:e.context,env:e.config?.env,value:e.value},r={locale:e.config?.env?.locale},[o,i]=(0,Qo.useState)(()=>f(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),a=()=>i(u=>!u),l=f(e.text)&&b(e.text.title)?ce(R(We(e.text.title,t,r),e.translations)):void 0,c=R(We(b(e.text)?e.text:e.text?.message,t,r),e.translations),s=ce(c);return s?(0,ze.jsxs)("div",{className:"flex flex-col gap-2",children:[l&&(0,ze.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:[l,(0,ze.jsx)(Ve,{expanded:o})]}),o&&(0,ze.jsx)(Ko,{title:c,children:s})]}):null}var Ut=Me(),ne=Ut.atom,jo=Ut.clearAll,ei=Ut.clear,Ce=Ut.report;var wn=require("jotai"),ti=require("react/jsx-runtime");function Gt(e){let t=(0,wn.useAtomValue)(Ce(e.field.name)),r=(0,wn.useAtomValue)(_t(e.field.name))?.description??e.field.description;return(0,ti.jsx)(Bt,{config:e.config,context:e.context,text:r,translations:e.translations,value:t})}var ni=require("tailwind-merge"),tt=require("react/jsx-runtime");function ri(e){let t=e.style?.showOptionalLabel??!0,n=le(e.field)||G(e.field);return(0,tt.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,ni.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:b(e.children)?e.children:void 0,children:[(0,tt.jsx)("span",{className:"[[data-slot=column]_&]:md:truncate",children:e.children}),t&&!e.field.required&&(0,tt.jsx)("span",{className:"ml-2 flex-shrink-0 text-sm text-zinc-600 dark:text-zinc-400",children:R("(Optional)",e.translations)})]})}var nt=require("react/jsx-runtime");function oi(e){let t={context:e.context,env:e.config?.env},n=We(e.field.label,t);return(0,nt.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,nt.jsx)(ri,{field:e.field,style:e.config?.style,translations:e.translations,children:R(n,e.translations)}),e.horizontal===!0&&(0,nt.jsx)(Gt,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}var Ie=require("react/jsx-runtime");function ii(e){return(0,Ie.jsxs)(Ie.Fragment,{children:[e.field.name&&e.field.label&&(0,Ie.jsx)(oi,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&(0,Ie.jsx)(Gt,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}function Ht(e,t){return e?t(e):null}function H(e,t){if(!Array.isArray(t)&&e in t)return t[e];if(!e.includes("."))return;let n=e.split("."),r=t;for(let o of n){if(r==null)return;if(Array.isArray(r)){let i=Number(o);r=Number.isInteger(i)?r[i]:void 0}else if(f(r))r=r[o];else return}return r}var Ue=require("react");var ai=require("react"),Kl=e=>e,_e=(0,ai.createContext)(Kl);var An=Me(),li=An.clear,si=An.bulkReport,Yt=An.report;var Y=require("react");var de=require("react");function ci(e,t,n,r){let{name:o}=e,i=(0,de.useMemo)(()=>Io(e,r),[e,r]),a=(0,de.use)(st),l=(0,de.useEffectEvent)(s=>{s&&t(s,i,e)}),c=(0,de.useEffectEvent)(s=>{s&&n(s,{keepValue:a})});return(0,de.useEffect)(()=>(l(o),()=>{c(o)}),[o]),i}var Be=require("jotai");var $e=require("react");function ui(){let e=(0,$e.useRef)(null);return(0,$e.useEffect)(()=>()=>{e.current&&clearTimeout(e.current)},[]),(0,$e.useCallback)((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}function di(e,t){let n=(0,Be.useStore)(),r=e.field.advanced?.entity,o=ui(),[,i]=(0,Y.useTransition)(),a=(0,Y.use)(_e),{setValue:l,shouldSkipOnChange:c,value:s,setSource:u}=t,d=(0,Y.useRef)(s);d.current=s;let h=(0,Y.useRef)(e.translations);h.current=e.translations;let m=Tt(e.field),F=(0,Be.useSetAtom)(ne),N=(0,Be.useSetAtom)(zt),E=(0,Be.useSetAtom)(Yt(e.field.name)),O=ci(e.field,e.onMount,e.onUnmount,e.translations),X=R(e.commonProps.placeholder,e.translations),M={...e.commonProps,placeholder:X};function P(y){let[,p]=e.getSchema();return p.find(v=>v.name===y)}function z(y){let p=P(y);if(p&&be(p)){let v=p.advanced?.transform;if(v)return v}}let L=(0,Y.useRef)(new Map),ge=(0,Y.useRef)(null);ge.current=y=>{let p=be(e.field)?je(y,e.field.advanced?.transform):y;l(p),e.onValueChange&&e.onValueChange({name:a(e.field.name),type:e.field.type,value:p})};let x=(0,Y.useRef)(null);x.current=y=>{let p=e.field.event?.change;p&&Pr(p,({sources:v,states:k,values:_})=>{i(()=>{Vr(y,v,(Z,oe)=>{u(Et(Z,e.field.name),oe)}),Dr(y,k,(Z,oe)=>{let Pe=Z.map($=>Et($,e.field.name));N($=>oe?Pe.reduce((q,we)=>({...q,[we]:oe}),$):Pe.reduce((q,we)=>Mt(q,we),$));let J=oe?.hidden===!0?Pe:oe===void 0?Pe.filter($=>P($)?.hidden===!0):[];J.length>0&&F($=>{let q=!1,we={...$};for(let Ae of Object.keys($))J.some(ie=>Ae===ie||Ae.startsWith(`${ie}.`))&&(delete we[Ae],q=!0);return q?we:$})}),Or(y,_,(Z,oe,Pe)=>{let J=Et(Z,e.field.name),$=z(J),q=$?je(oe,$):oe,Ae=n.get(ne)[J];if(Pe.onlyIfTargetEmpty&&!B(Ae)){let ie=L.current.get(J);if(!Object.is(ie,Ae))return}if(q!==Ae&&(F(ie=>({...ie,[J]:q})),L.current.set(J,q),e.onValueChange)){let ie=P(J);ie&&e.onValueChange({name:a(J),type:ie.type,value:q})}})})})};let g=(0,Y.useCallback)(y=>{let v=O.safeParse(y).error?.issues.map(Z=>Z.message)??[],k=e.field.validation?.custom,_=k?Lo(y,k,Z=>n.get(Ce(Z)),h.current):[];E([...v,..._])},[e.field.validation?.custom,O,E,n]),w=(0,Y.useCallback)(y=>{if(!m){let p=y.target.value;e.config.validation.blur&&g(p)}},[m,e.config.validation.blur,g]);return{applyChangeEventsRef:x,commonProps:M,entity:r,hasClickable:m,onBlur:w,onValueChangeRef:ge,setTimeoutRef:o,shouldSkipOnChange:c,validated:g,valueRef:d}}var mi=require("fast-equals");var fi=require("jotai"),me=require("react");function pi(e,t){let{name:n}=e,r=(0,me.useRef)(!1),[o,i]=(0,fi.useAtom)(Ce(n)),a=(0,me.useEffectEvent)((s,u=!1)=>{let d=be(e)?je(s,e.advanced?.transform):s;!u&&!(0,mi.deepEqual)(o,d)&&(r.current=!0),i(d)}),l=(0,me.useEffectEvent)(s=>{let u=H(n,s);T(u)?a(u):T(e.defaultValue)&&a(e.defaultValue,!0)});(0,me.useEffect)(()=>{if(t){l(t);return}T(e.defaultValue)&&a(e.defaultValue,!0)},[t,e.defaultValue]);let c=(0,me.useCallback)(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:c,value:o}}var Nn=require("react/jsx-runtime");function gi(e){let{useSource:t,useExtraProps:n,getValue:r,shouldSkipChange:o,dispatchChange:i,buildInitialSelected:a,isInitialReady:l}=e.strategies,{setValue:c,shouldSkipOnChange:s,value:u}=pi(e.field,e.value),{data:d,setSource:h}=t(e.field,e.config,u),{applyChangeEventsRef:m,commonProps:F,entity:N,hasClickable:E,onBlur:O,onValueChangeRef:X,setTimeoutRef:M,validated:P,valueRef:z}=di(e,{setValue:c,shouldSkipOnChange:s,value:u,setSource:h}),L=n?.(e.field),ge=(0,Ue.useRef)(!1),{commonPropsWithOptions:x,defaultValue:g}=lo(e.field,F,d,u),w=so(e.field,g);(0,Ue.useEffect)(()=>{let p=!!e.value||T(e.field.defaultValue);if(ge.current||!p)return;if(!e.field.event?.change){ge.current=!0;return}let v=e.value?H(e.field.name,e.value):void 0,k=T(v)?v:e.field.defaultValue;if(!T(k)||!l(e.field,g,d))return;ge.current=!0;let _=a(g,d,N);m.current?.(_)},[m,a,d,g,N,l,e.field,e.value]);let y=(0,Ue.useCallback)(p=>{let v=r(p,e.field);o({shouldSkipOnChange:s,hasClickable:E,inputValue:v,valueRef:z})||(X.current?.(v),e.config.validation.change&&P(v),e.field.event?.change&&i({applyChangeEventsRef:m,data:d,entity:N,inputValue:v,setTimeoutRef:M}))},[m,d,i,N,r,E,X,e.config.validation.change,e.field,M,o,s,P,z]);return Ht(e.config.inputs[e.field.type],p=>(0,Nn.jsx)(ii,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:(0,Nn.jsx)(p,{...x,...e.ariaAttributes,...e.dataAttributes,...L,...w,onBlur:O,onChange:y})}))}var yi=require("react/jsx-runtime");function Ge(e){return function(n){return(0,yi.jsx)(gi,{...n,strategies:e})}}function xi(e){let t=K(e)?se(e):null,n=ae(e)?ke(e):null;return{dateFormat:t,timeFormat:n}}var bi=require("jotai");var Jl=e=>{let t=Mo(e);if(t)return t},Ql=e=>e.trim()!=="",hi=(0,bi.atom)({}),Xt=Ho(hi,{merge:Jl,validateTarget:Ql}),vi=Yo(hi);var Si=require("jotai");function Zt(e){return{data:null,setSource:(0,Si.useSetAtom)(Xt(e.name))}}var Ti=Ge({useSource:Zt,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=xi(e);return co(t,n)},getValue:(e,t)=>{let n=e.target.value,r=ae(t)?ke(t):null;if(r!==null)return Jr(n,r);let o=K(t)?se(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)});var Ai=require("fast-equals");var Fi=require("jotai");var Ri=Va(require("swr"),1);function Ci(e=null,t,n=!1){let{data:r,error:o}=(0,Ri.default)(jl(e,t,n),t.fetcher.provider);if(o&&Ke.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return Ar(r,e.namespace)}return null}function jl(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!qe(e.url)){if(Do(e.url,t.fetcher.remotePatterns))return e;Ke.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function wi(e,t,n){let r=ao(e,n),[o,i]=(0,Fi.useAtom)(Xt(e.name));return[Ci(o??r,t,e.disabled),i]}function es(e,t,n){let[r,o]=wi(e,t,n);return{data:r,setSource:o}}var Ni=Ge({useSource:es,getValue:e=>e.target.value,shouldSkipChange:({shouldSkipOnChange:e,hasClickable:t,inputValue:n,valueRef:r})=>!t&&e()&&(!n||(0,Ai.deepEqual)(n,r.current)),dispatchChange:({applyChangeEventsRef:e,data:t,entity:n,inputValue:r})=>{e.current?.(mn(r,t,n))},buildInitialSelected:(e,t,n)=>mn(String(e),t,n),isInitialReady:(e,t,n)=>(!Oe(e)||!!n&&n.length>0)&&T(t)});var ki=Ge({useSource:Zt,getValue:e=>e.target.value,shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>T(t)});var qt=require("react/jsx-runtime");function Ii(e){return K(e.field)||ae(e.field)?(0,qt.jsx)(Ti,{...e}):Br(e.field)?(0,qt.jsx)(ki,{...e}):(0,qt.jsx)(Ni,{...e})}var kn=require("react/jsx-runtime");function Ei(e){return!e.errors||e.errors.length===0?null:(0,kn.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,kn.jsx)("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var Pi=require("tailwind-merge"),Vi=require("react/jsx-runtime");function Wt(e){let t=e.errors&&e.errors.length>0;return(0,Vi.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[dr]:"true"},...e.disabled&&{[mr]:"true"},"data-orientation":e.orientation,className:(0,Pi.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 Li=require("tailwind-merge"),Oi=require("react/jsx-runtime");function Di(e){return(0,Oi.jsx)(Wt,{...e,orientation:"vertical",className:(0,Li.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var Mi=require("tailwind-merge"),_i=require("react/jsx-runtime");function zi(e){return(0,_i.jsx)(Wt,{...e,orientation:"horizontal",className:(0,Mi.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 In=require("react/jsx-runtime");function $i(e){let t=Tt(e.field),n=G(e.field),r=Hr(e.field);return e.horizontal?(0,In.jsx)(zi,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):(0,In.jsx)(Di,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function Bi(e){if(!e.field.type)return null;let t=to(e.field,e.disabled),n=xo(e.field),r=yo(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 Ui=require("tailwind-merge"),He=require("react/jsx-runtime");function Gi(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=Pt(e.style,{horizontal:Gr(e.field)}),o=Yr(e.field,e.disabled);return(0,He.jsxs)("div",{className:(0,Ui.twMerge)("flex flex-col gap-3",So(t)),children:[(0,He.jsx)($i,{disabled:o,errors:n,field:e.field,horizontal:r,children:(0,He.jsx)(Bi,{disabled:o,errors:n,field:e.field,horizontal:r,children:e.children})}),(0,He.jsx)(Ei,{errors:n,name:e.field.name})]})}var Hi=require("jotai"),qi=require("react/jsx-runtime");function Yi(e){return(t,n)=>o=>{let i=(0,Hi.useAtomValue)(e(o.field.name)),a=n(i,o);return a===null?null:(0,qi.jsx)(t,{...o,...a})}}var ts=Yi(Yt);function Xi(e){return ts(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var ns=Yi(_t);function Zi(e){return ns(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var Wi=Zi(Xi(Gi));var Kt=require("tailwind-merge"),Ki=require("react"),S=require("react/jsx-runtime");function Ji(e){let t=e.isMultiField||e.collapsed!=null,[n,r]=(0,Ki.useState)(t?!e.collapsed:!0);function o(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function i(){r(s=>!s)}let a=e.canRemove&&e.onRemove!=null&&(0,S.jsx)("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:(0,Kt.twMerge)("flex size-6 items-center justify-center rounded text-xl leading-none text-zinc-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:outline-none","dark:text-zinc-500 dark:hover:text-red-400"),onClick:o,type:"button",children:(0,S.jsx)("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),l=(0,S.jsxs)("div",{className:"flex min-w-0 flex-col font-medium text-zinc-700 dark:text-zinc-400",children:[(0,S.jsx)("span",{className:"text-base",children:e.previewLabel??(0,S.jsxs)(S.Fragment,{children:[e.label," ",e.index+1]})}),!n&&e.previewTags&&(0,S.jsx)("div",{className:"flex items-center gap-2 overflow-hidden text-xs font-normal text-ellipsis whitespace-nowrap text-zinc-500 dark:text-zinc-500",children:e.previewTags})]}),c=(0,S.jsxs)("div",{className:(0,Kt.twMerge)("flex items-center justify-between gap-2",e.isMultiField&&n&&"mb-3"),children:[t?(0,S.jsxs)("div",{className:"flex min-w-0 grow items-center gap-2",children:[(0,S.jsxs)("button",{"aria-expanded":n,"aria-label":`${n?"Collapse":"Expand"} ${e.label} ${e.index+1}`,className:(0,Kt.twMerge)("group flex grow items-center gap-2 rounded p-1 text-left text-zinc-400","focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:outline-none","dark:text-zinc-500"),onClick:i,type:"button",children:[(0,S.jsx)(Ve,{expanded:n}),l]}),!n&&e.previewBadge&&(0,S.jsx)("div",{className:"ml-auto shrink-0",children:e.previewBadge})]}):l,a]});return e.isMultiField?(0,S.jsxs)("div",{"data-slot":"list-item-card",className:"box-border w-full min-w-0 rounded-lg border border-zinc-100 p-4 dark:border-zinc-900",children:[c,(0,S.jsx)(Ye,{visible:n,children:(0,S.jsx)(Te,{children:e.children})})]}):t?(0,S.jsxs)("div",{className:"box-border flex w-full min-w-0 flex-col gap-2",children:[c,(0,S.jsx)(Ye,{visible:n,children:(0,S.jsx)(Te,{children:e.children})})]}):(0,S.jsxs)("div",{className:"box-border flex w-full min-w-0 items-start gap-2",children:[(0,S.jsx)("div",{className:"flex min-w-0 grow flex-col",children:(0,S.jsx)(Te,{children:e.children})}),a&&(0,S.jsx)("div",{className:"shrink-0",children:a})]})}var ji=require("react");var En=require("tailwind-merge");var Qi=require("jotai");function Jt(e,t){return(0,Qi.useAtomValue)(Ce(e))??t}var fe=require("react/jsx-runtime");function ea({className:e,initialValue:t,name:n,options:r,separator:o,staticLabel:i}){let a=Jt(n??"",t);if(i===void 0&&r){let s=(Array.isArray(a)?a:a==null||a===""?[]:[a]).filter(u=>u!=null&&u!=="").map(u=>mo(u,r));return s.length===0?null:(0,fe.jsx)("div",{className:"flex items-center gap-1.5 overflow-hidden",children:s.map((u,d)=>(0,fe.jsxs)(ji.Fragment,{children:[(o||d>0)&&(0,fe.jsx)("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),(0,fe.jsx)("span",{"aria-label":u,className:(0,En.twMerge)("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:u,children:u})]},`${d}:${u}`))})}if(i===void 0&&(B(a)||f(a)||Array.isArray(a)))return null;let l=i??String(a);return(0,fe.jsxs)("div",{className:"flex items-center gap-1.5 overflow-hidden",children:[o&&(0,fe.jsx)("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),(0,fe.jsx)("span",{"aria-label":l,className:(0,En.twMerge)("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:l,children:l})]})}var ta=require("jotai"),na=require("react");function Qt(e,t){let n=(0,ta.useAtomValue)(ne);return(0,na.useMemo)(()=>{let r=`${e}.`,o={},i=!1;for(let l in n)l.startsWith(r)&&(o[l.slice(r.length)]=n[l],i=!0);let a=t?H(e,t):void 0;return i?f(a)?{...a,...o}:o:a},[n,e,t])}var jt=require("react"),Pn=require("react/jsx-runtime");function rs(e){return typeof e=="string"?{field:e}:e}function Vn({className:e,fields:t,label:n="Preview",name:r,previews:o,translations:i,value:a}){let l=(0,jt.useMemo)(()=>(Array.isArray(o)?o:[o]).map(rs),[o]),c=(0,jt.useMemo)(()=>t?Fo(t):void 0,[t]),s=Qt(r,a),u=(0,jt.useMemo)(()=>{let d=[];for(let[h,m]of l.entries()){if(m.when!==void 0&&!De(s,m.when))continue;if(m.label!==void 0){d.push({key:m.field??`label:${m.label}:${h}`,staticLabel:R(m.label,i)});continue}if(m.field===void 0)continue;let F=`${r}.${m.field}`,N=a!=null?H(F,a):void 0,E=c?.[m.field],O=E?uo(E):void 0;d.push({key:`${h}:${m.field}`,initialValue:N,options:O,previewName:F})}return d},[l,s,r,a,i,c]);return u.length===0?null:(0,Pn.jsx)("div",{"aria-label":n,className:"flex items-center gap-1.5 overflow-hidden",children:u.map((d,h)=>(0,Pn.jsx)(ea,{className:e,initialValue:"initialValue"in d?d.initialValue:void 0,name:"previewName"in d?d.previewName:void 0,options:"options"in d?d.options:void 0,separator:h>0,staticLabel:"staticLabel"in d?d.staticLabel:void 0},d.key))})}var en=require("react/jsx-runtime");function ra({children:e,initialValue:t,name:n}){let r=Jt(n,t),i=B(r)||f(r)||Array.isArray(r)?"":String(r);return(0,en.jsx)(en.Fragment,{children:e(i)})}var rt=require("react/jsx-runtime");function oa({canRemove:e,children:t,field:n,index:r,isMultiField:o,itemKey:i,label:a,onRemove:l,previewBadge:c,previewLabel:s,previewTags:u,translations:d,value:h}){let m=`${n.name}.${i}`,F=`${a} ${r+1}`,N=Qt(m,h);return(0,rt.jsx)(Ji,{canRemove:e,collapsed:n.advanced?.collapsed,index:r,isMultiField:o,label:a,onRemove:l,previewLabel:os({fallbackLabel:F,liveItemValue:N,name:m,previewLabel:s,translations:d,value:h}),previewBadge:c?(0,rt.jsx)(Vn,{className:"bg-primary text-primary-foreground rounded-md px-1.5 py-0.5 leading-none font-bold uppercase",fields:n.fields,name:m,previews:c,translations:d,value:h}):void 0,previewTags:u?(0,rt.jsx)(Vn,{fields:n.fields,name:m,previews:u,translations:d,value:h}):void 0,children:t})}function os({fallbackLabel:e,liveItemValue:t,name:n,previewLabel:r,translations:o,value:i}){if(r===void 0)return;let a=typeof r=="string"?{field:r}:r;if(a.when!==void 0&&!De(t,a.when))return;if(a.label!==void 0)return R(a.label,o);if(a.field===void 0)return;let l=`${n}.${a.field}`;return(0,rt.jsx)(ra,{initialValue:i?H(l,i):void 0,name:l,children:c=>c||e})}var aa=require("tailwind-merge");var tn=require("jotai"),A=require("react");function ia(e,t,n){let r=e.advanced?.length?.min??1,o=e.advanced?.length?.max??1/0,[i,a]=(0,A.useState)(()=>Ro(e,t)),l=(0,A.useRef)(i),c=(0,A.useRef)(i.length);l.current=i;let s=(0,tn.useStore)(),u=(0,tn.useSetAtom)(ne),d=(0,A.useRef)(n);d.current=n;let h=(0,A.useRef)(t),m=(0,A.useMemo)(()=>{let x=[];for(let g of e.fields)if(ee(g))for(let w of g.fields)x.push(w.name);else x.push(g.name);return x},[e.fields]),F=(0,A.useCallback)((x,g)=>{let w=Number(x);return Number.isNaN(w)?!1:Number.isInteger(w)&&g>=0&&String(g)!==x},[]),N=(0,A.use)(_e),E=(0,A.useCallback)(x=>{let g=`${e.name}.`;if(x.startsWith(g)){let w=x.slice(g.length),y=w.indexOf("."),p=y===-1?w:w.slice(0,y),v=Number(p),k=l.current.indexOf(v);F(p,k)&&(x=`${g}${k}${y===-1?"":w.slice(y)}`)}return N(x)},[e.name,F,N]),O=(0,A.useEffectEvent)(()=>{let x=h.current;if(!x)return;let g=`${e.name}.`,w={...s.get(ne)},y=!1;for(let p of i)for(let v of m){let k=`${g}${p}.${v}`;if(k in w)continue;let _=H(k,x);T(_)&&(w[k]=_,y=!0)}y&&u(w)});(0,A.useEffect)(()=>{O()},[]);let X=(0,A.useCallback)((x,g)=>{let w=`${e.name}.`,y=h.current;return x.map(p=>{let v={};for(let k of m){let _=`${w}${p}.${k}`,Z=g[_];v[k]=Z!==void 0?Z:y?H(_,y):void 0}return v})},[e.name,m]),M=(0,A.useCallback)((x,g)=>{d.current?.({name:E(e.name),value:X(x,g)})},[X,e.name,E]),P=(0,A.useCallback)(()=>{if(l.current.length>=o)return;let x=c.current++,g=[...l.current,x];a(g),M(g,s.get(ne))},[M,o,s]),z=(0,A.useCallback)(x=>{if(l.current.length<=r)return;let g=l.current[x],w=l.current.filter((k,_)=>_!==x),p={...s.get(ne)},v=`${e.name}.`;for(let k of m)delete p[`${v}${g}.${k}`];a(w),u(p),M(w,p)},[M,e.name,m,r,u,s]),L=i.length<o,ge=i.length>r;return[i,P,z,L,ge,o,E]}var pe=require("react/jsx-runtime"),is="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 la(e){let{field:t,onValueChange:n,translations:r,value:o,children:i}=e,[a,l,c,s,u,d,h]=ia(t,o,n),m=Co(t),F=t.advanced?.action??"Add item",N=d!==1/0,E=To(t),{label:O,tags:X,badge:M}=t.advanced?.preview??{};return(0,pe.jsx)(_e.Provider,{value:h,children:(0,pe.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[a.map((P,z)=>(0,pe.jsx)(oa,{canRemove:u,field:t,index:z,isMultiField:E,itemKey:P,label:m,onRemove:c,previewBadge:M,previewLabel:O,previewTags:X,translations:r,value:o,children:i(P)},P)),(0,pe.jsxs)("button",{"aria-disabled":!s,"aria-label":N?`${F}, ${a.length} of ${d}`:F,className:(0,aa.twMerge)(is,N?"justify-between":"justify-center",!s&&"cursor-not-allowed opacity-50 hover:border-zinc-200 hover:text-zinc-500 dark:hover:border-zinc-800 dark:hover:text-zinc-400"),disabled:!s,onClick:l,type:"button",children:[(0,pe.jsxs)("span",{className:"flex items-center gap-2",children:[(0,pe.jsx)("span",{"aria-hidden":"true",className:"text-base leading-none",children:"+"}),F]}),N&&(0,pe.jsxs)("span",{"aria-hidden":"true",className:"text-zinc-400 tabular-nums dark:text-zinc-500",children:[a.length," / ",d]})]})]})})}var ca=require("react/jsx-runtime");function sa(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return(0,ca.jsx)(Lt,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}var nn=require("react/jsx-runtime");function ua({children:e,field:t,onValueChange:n,translations:r,value:o}){return(0,nn.jsx)($t,{container:t,fields:t.fields,children:(0,nn.jsx)(sa,{field:t,children:(0,nn.jsx)(la,{field:t,onValueChange:n,translations:r,value:o,children:e})})})}var da=require("tailwind-merge");var ot=require("react/jsx-runtime");function ma(e){let t=vo(e.column?.advanced?.cols);return(0,ot.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[(0,ot.jsx)("div",{"data-slot":"column",className:(0,da.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&(0,ot.jsx)(Bt,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}var ga=require("react");var pa=require("react/jsx-runtime");function fa(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>Ct(n)||Rt(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:ee(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return(0,pa.jsx)(it,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:t,style:e.style,translations:e.translations,value:e.value,children:e.children})}var Fe=require("react/jsx-runtime");function it(e){let{field:t,list:n}=e.components;return It(e.fields).map((r,o)=>(0,Fe.jsxs)(ga.Fragment,{children:[ee(r)&&(0,Fe.jsx)(ma,{column:r,config:e.config,context:e.context,translations:e.translations,children:(0,Fe.jsx)(it,{...e,fields:r.fields})}),Ct(r)&&(0,Fe.jsx)(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),Rt(r)&&(0,Fe.jsx)(n,{field:r,onValueChange:e.onValueChange,translations:e.translations,value:e.value,children:i=>(0,Fe.jsx)(fa,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:r,index:i,style:e.style,translations:e.translations,value:e.value,children:e.children})})]},o))}var xa=require("react/jsx-runtime");function ya(e){return n=>(0,xa.jsx)(it,{...n,components:e})}var ba=ya({field:Wi,list:ua});var Dn=require("jotai");var at=require("react");function va(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},l=(0,Dn.useSetAtom)(si),c=(0,Dn.useSetAtom)(jo),s={data:null,error:null,success:!1},[u,d,h]=(0,at.useActionState)(async(m,F)=>{let[N,E]=e(),O=No(N,E,a);if(i===!1)return t?await t(F,O):m;let X=kr(F),M=ls(X,E),P=O.safeParse(M);if(!P.success){let L=ko(P.error);return(0,at.startTransition)(()=>{l(L)}),Ln(X,{description:R("Please correct the errors and try again.",a),details:[],title:R("There were validation errors submitting the form.",a)})}let z=Ir(P.data);if(t)try{let L=await t(z,O);return L.success?(r?.(L.data),o||(0,at.startTransition)(()=>{c()}),ha(z,o)):Ln(z,L.error)}catch(L){return Ke.error("Error executing form action:",L),Ln(z,{title:R("An unexpected error occurred submitting the form.",a),details:as(L,a)})}return ha(P.data,o)},s);return[d,u,h]}function as(e,t){return e instanceof Error?[e.message]:[R("Unknown error",t)]}function ha(e,t=!1){return{data:t?e:null,error:null,success:!0}}function Ln(e,t){return{data:e,error:t,success:!1}}function ls(e,t){let n={...e};for(let r of t)if(K(r)&&typeof n[r.name]=="string"&&n[r.name]){let o=wt(n[r.name],se(r));o&&(n[r.name]=o)}return n}var Ee=require("react");var Sa=require("react"),rn=require("jotai");function Ta(){let e=(0,rn.useSetAtom)(li),t=(0,rn.useSetAtom)(ei),n=(0,rn.useSetAtom)(vi);return(0,Sa.useCallback)((r,o)=>{let i=Array.isArray(r)?r:[r];e(i),n(i),o?.keepValue||t(i)},[e,n,t])}function Ra(){let e=Ta(),t=(0,Ee.useRef)({}),n=(0,Ee.useRef)([]),r=(0,Ee.useCallback)((a,l,c)=>{a in t.current||(t.current[a]=l,n.current.push(c))},[]),o=(0,Ee.useCallback)((a,l)=>{t.current[a]&&(delete t.current[a],n.current=n.current.filter(c=>c.name!==a),e([a],{keepValue:l?.keepValue}))},[e]);return[(0,Ee.useCallback)(()=>[t.current,n.current],[]),r,o]}var re=require("react/jsx-runtime");function Ca(e){let t=e.translations?.[e.lang??""],[n,r,o]=Ra(),[i,a,l]=va(n,e.action,{onSuccess:e.onSuccess,validation:e.config.validation.submit,translations:t}),c=e.config.validation.showError&&!a.success&&a.error,s=a.data??e.value;return(0,re.jsxs)(re.Fragment,{children:[c&&Ht(e.config.alert,u=>(0,re.jsx)("div",{className:"mb-4 w-full",children:(0,re.jsx)(u,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),(0,re.jsx)(Wo,{action:i,advanced:e.advanced,config:e.config,control:e.children,definition:e.definition,isPending:l,noValidate:!0,readOnly:e.readOnly,sections:e.sections,children:({disabled:u,fields:d})=>(0,re.jsx)(ba,{config:e.config,context:e.context,disabled:u,fields:d,onValueChange:e.onValueChange,style:e.config.style,translations:t,value:s,children:h=>(0,re.jsx)(Ii,{...h,config:e.config,context:e.context,getSchema:n,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:s})})})]})}var Fa=require("jotai"),On=require("react/jsx-runtime");function wa(e){return(0,On.jsx)(Fa.Provider,{children:(0,On.jsx)(Ca,{...e})})}
1
+ "use strict";var Aa=Object.create;var lt=Object.defineProperty;var Na=Object.getOwnPropertyDescriptor;var ka=Object.getOwnPropertyNames;var Ia=Object.getPrototypeOf,Ea=Object.prototype.hasOwnProperty;var Pa=(e,t)=>{for(var n in t)lt(e,n,{get:t[n],enumerable:!0})},Mn=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of ka(t))!Ea.call(e,o)&&o!==n&&lt(e,o,{get:()=>t[o],enumerable:!(r=Na(t,o))||r.enumerable});return e};var Va=(e,t,n)=>(n=e!=null?Aa(Ia(e)):{},Mn(t||!e||!e.__esModule?lt(n,"default",{value:e,enumerable:!0}):n,e)),La=e=>Mn(lt({},"__esModule",{value:!0}),e);var ss={};Pa(ss,{Form:()=>wa});module.exports=La(ss);var _n=require("react/jsx-runtime");function zn(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,_n.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var on=require("react/jsx-runtime");function Le(e){return(0,on.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,on.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 Bn=require("react");var $n=require("react"),st=(0,$n.createContext)(!1);var an=require("react/jsx-runtime");function Ye({children:e,visible:t}){return(0,an.jsx)(Bn.Activity,{mode:t?"visible":"hidden",children:(0,an.jsx)(st,{value:!0,children:e})})}var ct="input",Un="input/date",Gn="input/email",Hn="input/number";var Yn="input/time";var Xn="textarea",Zn="radio",qn="checkbox",ln="list";var Wn="select",Kn="select/active",Jn="select/day",Qn="select/month",jn="select/timezone",er="select/year";var tr="chips",nr="chips/day",rr="chips/month",Xe="column",or="description",sn="fields",ir="label",W="value",ut="options",cn="email",ar="number",lr="password",sr="tel",Ze="text",cr="aria-errormessage",ur="aria-invalid",dr="data-invalid",mr="data-readonly",fr="aria",pr="data",dt="max",gr="maxLength",mt="min",yr="minLength",De="$ref";var xr="source",br="state",ft="http://luna.internal";var hr="type",vr={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"),ke=require("date-fns/locale");function f(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function B(e){return e==null||e===""}function j(e){return h(e)||typeof e=="number"||un(e)}function h(e){return typeof e=="string"}function Sr(e){return f(e)&&"url"in e}function un(e){return typeof e=="boolean"}var Tr={en:ke.enUS,"en-US":ke.enUS,es:ke.es,"es-ES":ke.es,"es-MX":ke.es},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 Rr(e){if(e)return Tr[e]??Tr[e.split("-")[0]]}function pt(e){if(typeof e=="number"&&!Number.isNaN(e))return e;if(h(e)&&e.trim()!==""){let t=Number(e);return Number.isNaN(t)?null:t}return null}function Cr(e,t,n){let r=Oa[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 Fr(e){if(e instanceof Date)return(0,V.isValid)(e)?e:null;if(h(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 Ma={currency:(e,t,n)=>{let r=pt(e);if(r===null)return String(e);let o=t[0]??"USD";return new Intl.NumberFormat(n.locale,{style:"currency",currency:o}).format(r)},percent:(e,t,n)=>{let r=pt(e);return r===null?String(e):new Intl.NumberFormat(n.locale,{style:"percent"}).format(r)},number:(e,t,n)=>{let r=pt(e);return r===null?String(e):new Intl.NumberFormat(n.locale).format(r)},date:(e,t,n)=>{let r=Fr(e);if(!r)return String(e);let o=t[0]??"short",i=Rr(n.locale);if(o==="relative")return(0,V.formatDistanceToNow)(r,{addSuffix:!0,locale:i});let a=Da[o]??o;return(0,V.format)(r,a,{locale:i})},duration:(e,t,n)=>{let r=Rr(n.locale);if(typeof e=="number")return Cr(e,t[0]??"ms",r);if(h(e)){let i=pt(e);if(i!==null)return Cr(i,t[0]??"ms",r)}let o=Fr(e);return o?(0,V.formatDistanceToNow)(o,{addSuffix:!0,locale:r}):String(e)}};function wr(e,t,n){let r=t.split(":").map(l=>l.trim()).filter(l=>l.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 mn(e,t=[],n=W){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=W){if(e!=null){if(Array.isArray(e)&&e.every(j)||j(e))return e;if(f(e)){let n=_a(e,t);if(j(n))return n}}}function _a(e,t){let n=U(e,t);if(j(n))return n}function Ar(e,t){if(Array.isArray(e))return e;let n=U(e,t);return Array.isArray(n)?n:null}function U(e,t){if(!t||!f(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(f(r)&&o in r)r=r[o];else return null;return r}function pn(e,t={description:or,label:ir,value:W}){return e.map(n=>{if(f(n)){let r=U(n,t.label),o=U(n,t.value);if(j(r)&&j(o)){let i=U(n,t.description);return{label:`${r}`,value:`${o}`,...j(i)&&{description:`${i}`}}}}return n})}function Nr(e=Ze){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==ct?n.trim().toLowerCase():Ze}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 Ir(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 l=r[a],s=r[a+1],c=za.test(s);l in o||(o[l]=c?[]:{}),o=o[l]}let i=r[r.length-1];o[i]=e[n]}return dn(t),t}function dn(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)f(o)&&dn(o);e[t]=r}else f(n)&&dn(n)}}var $a=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function ye(e,t={},n={}){if(h(e))return Ba(e,t,n);if(Array.isArray(e))return e.map(r=>ye(r,t,n));if(f(e)){let r={};for(let o in e)r[o]=ye(e[o],t,n);return r}return e}function We(e,t={},n={}){return qe(e)?ye(e,t,n):e}function qe(e){return h(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>qe(t)):f(e)?Object.values(e).some(t=>qe(t)):!1}function Ba(e,t={},n={}){return e.replace(/{([^}]{1,200})}/g,(r,o)=>{let i=String(o).split("|").map(u=>u.trim()),[a,...l]=i;if(!a)return r;let s=a.includes(".")?U(t,a):t[a];if(l.length===0)return j(s)?String(s):r;if(s==null)return r;let c=s;for(let u of l){let d=wr(c,u,{locale:n.locale});if(d===void 0)return r;c=d}return String(c)})}function Er(e,t){if(!h(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=$a.exec(e))!==null;){let[a,l,s]=n,c=n.index;o=!0,c>r&&i.push(e.substring(r,c));let u=t?t(c,s,l):a;i.push(u),r=c+a.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var Ke={error:(...e)=>{gn()&&!yn()&&gt().error("[Luna Form]",...e)},warn:(...e)=>{gn()&&!yn()&&gt().warn("[Luna Form]",...e)},info:(...e)=>{gn()&&!yn()&&gt().info("[Luna Form]",...e)}},gn=()=>typeof gt()<"u",yn=()=>!0,gt=()=>globalThis.console;function Pr(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===W&&n.push(i),i.action===xr&&r.push(i),i.action===br&&o.push(i);t({sources:r,states:o,values:n})}function Vr(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(Sr(i)){let a=ye(i.url,e),l=i.body?ye(i.body,e):i.body;n(o,{...i,url:a,body:l})}}}var Je={eq:Xa,gt:Ka,gte:Ja,in:qa,lt:Qa,lte:ja,neq:Za,nin:Wa},Ua=/^\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 Ga(e){return typeof e=="string"&&Ua.test(e)}function Ha(e){return typeof e=="string"&&Lr.test(e)}function Ya(e){let t=e.match(Lr);if(t){let[,n,r,o,i,a,l]=t;return new Date(Number(o),Number(r)-1,Number(n),Number(i??0),Number(a??0),Number(l??0)).getTime()}return NaN}function xe(e){return Ga(e)?new Date(e).getTime():Ha(e)?Ya(e):Number(e)}function Xa(e,t){return e===t}function Za(e,t){return e!==t}function qa(e,t){return Array.isArray(t)&&t.includes(String(e))}function Wa(e,t){return Array.isArray(t)&&!t.includes(String(e))}function Ka(e,t){return xe(e)>xe(t)}function Ja(e,t){return xe(e)>=xe(t)}function Qa(e,t){return xe(e)<xe(t)}function ja(e,t){return xe(e)<=xe(t)}function Oe(e,t){if(t===void 0)return!0;if(h(t)){let n=yt(e,W);return Array.isArray(n)?n.length===1&&n[0]===t:n===t}if(un(t)){let n=yt(e,W);return(Array.isArray(n)?n.length>0:!!n)===t}if(Array.isArray(t)){let n=yt(e,W);return Array.isArray(n)?n.some(r=>t.includes(String(r))):t.includes(String(n))}return el(e,t)}function el(e=null,t){let n=yt(e,t.field??W),{operator:r="eq",value:o}=t,i=Je[r];return i?i(n,o):!1}function yt(e,t){return f(e)?U(e,t):e}function Dr(e=null,t=[],n){for(let r of t){let{target:o,state:i,when:a}=r,l=Array.isArray(o)?o:[o];if(!e){n(l);continue}let s=Oe(e,a);n(l,s?i:void 0)}}function Or(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?ye(i,e):void 0,{onlyIfTargetEmpty:r.onlyIfTargetEmpty??!1})}var Qe=e=>I(Kn)(e),Mr=e=>I(Jn)(e),xt=e=>I(Qn)(e),bt=e=>I(er)(e),zr=e=>I(jn)(e),ht=e=>I(nr)(e),vt=e=>I(rr)(e),K=I(Un),le=I(Yn),G=I(qn),ee=I(tr),se=I(Zn),be=I(ct),he=I(Wn),xn=I(Xn),_r=I(Ze,cn,lr,sr),$r=I(Gn,cn),St=I(Hn,ar);function Tt(e){return se(e)||G(e)}function Rt(e){return e.type===ln}function te(e){return e.type===Xe}function Ct(e){return e.type!==Xe&&e.type!==ln}function Me(e){return he(e)||se(e)||ee(e)}function Br(e){return be(e)||xn(e)}function T(e){return e!=null&&e!==""}function I(...e){return t=>{let n=h(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Ur(e,t={}){if(he(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&f(n))return[n]}}function Gr(e){return se(e)||G(e)?!0:e.advanced?.horizontal??!1}function Hr(e){return G(e)?e.advanced?.reverse!==!1:!1}function Yr(e,t){let n=e.readonly??!1;return t||n}function bn(e){if(se(e)||ee(e)||he(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||f(t)&&!(De in t))return t}}var D=require("date-fns"),tl=/^\d+$/,Ft=new Date(2e3,0,1),nl=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[];function hn(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function vn(){return Array.from({length:7},(e,t)=>({value:t.toString(),label:new Date(2e3,0,2+t).toLocaleString("default",{weekday:"long"})}))}function qr(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 Sn(){return new Date().getFullYear()}function rl(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function ol(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return vr[n]??"Other"}function il(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function Xr(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(l=>l.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),a=il(r,e);return{offset:i,longName:a}}function Zr(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function Wr(){let e=new Date,t=rl(),n=new Map,r=Zr(t),{offset:o,longName:i}=Xr(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let s of nl()){if(s===t)continue;let c=Zr(s),{offset:u,longName:d}=Xr(s,e),y={value:s,label:`${c} - ${d} (${u})`},m=ol(s);if(m==="Other")continue;let F=n.get(m);F?F.push(y):n.set(m,[y])}for(let s of n.values())s.sort((c,u)=>c.label.localeCompare(u.label));let l=Array.from(n.entries()).sort(([s],[c])=>s.localeCompare(c)).map(([s,c])=>({label:s,items:c}));return[{label:"Suggested",items:[a]},...l]}function Tn(e,t){if(typeof e=="number")return e;let n=t??Sn(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,a]=o,l=parseInt(a,10);if(!isNaN(l))return i==="+"?n+l:n-l}return n}return tl.test(r)?parseInt(r,10):n}function wt(e,t){if(!e)return"";try{let n=(0,D.parse)(e,t,Ft);return(0,D.isValid)(n)?(0,D.format)(n,"yyyy-MM-dd"):""}catch{return""}}function Kr(e,t){if(!e)return"";try{let n=(0,D.parse)(e,t,Ft);return(0,D.isValid)(n)?(0,D.format)(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=(0,D.parse)(e,n,Ft);return(0,D.isValid)(r)?(0,D.format)(r,t):""}catch{return""}}function At(e,t="MMMM d, yyyy"){if(!e)return"";try{let n=(0,D.parse)(e,"yyyy-MM-dd",Ft);return(0,D.isValid)(n)?(0,D.format)(n,t):""}catch{return""}}function Ie(e){return e.advanced?.format??"HH:mm"}function ce(e){return e.advanced?.format??"MMMM d, yyyy"}var Nt=Sn();function jr(e){if(ee(e))return al(e)}function al(e){if(ht(e))return vn();if(vt(e))return hn()}function eo(e){if(he(e))return ll(e)}function ll(e){if(Mr(e))return vn();if(xt(e))return hn();if(bt(e)){let t=e.advanced?.length?.min??Nt,n=e.advanced?.length?.max??Nt+5;return qr(Tn(t,Nt),Tn(n,Nt))}if(zr(e))return Wr();if(Qe(e))return[{value:"true",label:"Yes"},{value:"false",label:"No"}]}function to(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return be(e)?{...n,...sl(e)}:he(e)?{...n,...no(e,eo)}:xn(e)?{...n,...ul(e)}:ee(e)?{...n,...cl(e)}:n}function sl(e){let t=Nr(e.type),n={...e,type:t};return{...ml(e),...ro(e),...dl(n),..._r(n)?oo(n):{},type:t}}function no(e,t){let n=t(e);return n?{options:n}:{}}function cl(e){let t=no(e,jr),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function ul(e){return{...ro(e),...oo(e)}}function ro(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function dl(e){return St(e)?fl(e):{}}function ml(e){if(le(e)){let t=Ie(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function oo(e){return io(e,{min:yr,max:gr})}function fl(e){return io(e,{min:mt,max:dt})}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 ao(e,t){let n=bn(e);return n||Ur(e,t)}function pl(e,t){let n=f(t)&&e.name in t?t[e.name]:t,r=fn(n,e.advanced?.entity),o=T(r)?r:e.defaultValue;return le(e)&&T(o)?gl(e,o):K(e)&&T(o)?hl(e,o):o}function gl(e,t){let n=Ie(e);return h(t)?Kr(t,n):t}function yl(e,t,n){return Me(e)&&Array.isArray(n)?{...t,[ut]:n}:t}function xl(e,t,n){if(e.required&&!T(n)&&he(e)&&e.advanced?.preselected!==!1&&ut in t){let r=t[ut];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function bl(e,t){return Me(e)&&Array.isArray(t)?pn(t,e.advanced?.options):t}function lo(e,t,n,r){let o=pl(e,r),i=Array.isArray(n)?bl(e,n):n,a=yl(e,t,i),l=xl(e,a,o);return{commonPropsWithOptions:a,defaultValue:l}}function so(e,t){return G(e)?{checked:T(t)?t:!1}:ee(e)?{value:Array.isArray(t)?t:[]}:K(e)&&h(t)&&T(t)?{value:At(t,ce(e))}:Qe(e)?{value:T(t)?String(t):""}:{value:t??""}}function hl(e,t){let n=ce(e);return h(t)?wt(t,n):t}function co(e,t){let n=e??t;return n?{"data-format":n}:{}}function Qr(e){let t=[];for(let n of e){if(typeof n=="string"){t.push(n);continue}f(n)&&"value"in n&&"label"in n&&h(n.value)&&h(n.label)&&t.push({label:n.label,value:n.value})}return t}function uo(e){if(!Me(e))return;let t=ee(e)?jr(e):eo(e);if(Array.isArray(t)){let r=Qr(t);return r.length>0?r:void 0}let n=bn(e);if(Array.isArray(n)){let r=pn(n,e.advanced?.options),o=Qr(r);return o.length>0?o:void 0}}function mo(e,t){let n=String(e);for(let r of t)if(typeof r=="string"){if(r===n)return r}else if(r.value===n)return r.label;return n}var vl=/^#\/definition\//;function It(e=[],t){let n=kt(e,t);return Array.isArray(n)?n.filter(Tl).sort((r,o)=>fo(r)-fo(o)):[]}function kt(e,t,n=new Map,r=new WeakSet){if(!Sl(t)||!e||typeof e!="object")return e;if(n.has(e))return n.get(e);if(r.has(e))return e;if(r.add(e),Array.isArray(e))return e.map(i=>kt(i,t,n,r));if(De in e&&h(e[De])){let i=e[De].replace(vl,""),a=U(t,i);return a!==null?kt(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=kt(a,t,n,r);return r.delete(e),n.set(e,o),o}function po(e){return Object.entries(e??{})}function fo(e){return e.order??Number.MAX_VALUE}function Sl(e){return e!==void 0&&f(e)&&Object.keys(e).length>0}function Tl(e){return hr in e?!0:Array.isArray(e[sn])?e[sn].length>0:!0}function go(e,t){let n={};for(let[r,o]of po(t))n[`${e}-${r}`]=o;return n}function Rl(e){return go(fr,e)}function Cl(e){return go(pr,e)}function yo(e,t){let n=Rl(e.advanced?.aria);return t&&t.length>0&&(n[ur]="true",n[cr]=`${e.name}-error`),n}function xo(e){return Cl(e.advanced?.data)}var bo={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},ho={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function vo(e,t=2){return bo[e&&e in bo?e:t]}function So(e){if(e&&e in ho)return ho[e]}function Fl(e,t){let n=e.advanced?.length?.min??1;if(t){let r=U(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function To(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===Xe}function Ro(e,t){let n=Fl(e,t);return Array.from({length:n},(r,o)=>o)}function Co(e){return e.label??e.name}function Fo(e){let t={};for(let n of e)if(te(n))for(let r of n.fields)t[r.name]=r;else t[n.name]=n;return t}function Et(e,t){if(!e.includes("/"))return e;let[n,r]=e.split("/"),o=new RegExp(`(^|.*\\.)(${n}\\.\\d+\\.)`),i=t.match(o);return i?`${i[0]}${r}`:r}var C=require("zod");function R(e,t){return e?t?t[e]??e:e:""}var wl=[[G,wo],[$r,Al],[St,Il],[se,Nl],[Qe,wo],[xt,Pl],[bt,El],[ee,Rn],[ht,Rn],[vt,Rn]];function No(e,t=[],n){let r=C.z.object(e);return t.length===0?r:Ol(r,t,n)}function ko(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 Io(e,t){for(let[n,r]of wl)if(n(e))return r(e,t);return kl(e,t)}function Al(e,t){let n=C.z.string().trim();if(e.required){let r=ve(e,t),o=n.min(1,r).pipe(Ao(e,t));return C.z.preprocess(i=>B(i)?"":i,o)}return n.pipe(Ao(e,t)).or(C.z.literal("")).nullable()}function wo(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?(G(e)?n=n.refine(r=>r===!0,{message:ve(e,t)}):n=n.refine(r=>typeof r=="boolean",{message:ve(e,t)}),C.z.preprocess(r=>r===null?!1:r,n)):n.nullable()}function Nl(e,t){let n=C.z.coerce.string();return e.required?(n=n.min(1,ve(e,t)),C.z.preprocess(r=>B(r)?"":r,n)):n.or(C.z.literal("")).nullable()}function kl(e,t){let n=C.z.coerce.string().trim();return n=Eo(n,e,t),e.required?(n=Po(n,e,t),C.z.preprocess(r=>B(r)?"":r,n)):n.nullable()}function Il(e,t){let n=C.z.coerce.number().int();return n=Eo(n,e,t),e.required?(n=Po(n,e,t),C.z.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function El(e,t){return e.required?C.z.preprocess(Vl,C.z.coerce.number({message:ve(e,t)}).int()):C.z.coerce.number().int().nullable()}function Pl(e,t){let n=ve(e,t),r=C.z.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function Vl(e){return e===null||e===""?void 0:e}function Ao(e,t){let n=e.validation?.email?R(e.validation?.email,t):void 0;return C.z.email(n)}function Eo(e,t,n){return e=Ll(e,t,n),e=Dl(e,t,n),e}function Po(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,ve(t,n)):e}var Ll=(e,t,n)=>Vo(e,t,mt,n),Dl=(e,t,n)=>Vo(e,t,dt,n);function Vo(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?R(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function Ol(e,t=[],n){let r=zl(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:l}of r)if(!Ml(o,a,l)){let s=R(l.message,n);i.addIssue({code:"custom",message:s,path:[a]})}})}function Ml(e,t,n){let r=n.operator??"eq",o=Je[r];return o?o(e[t],e[n.field]):!1}function zl(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 Lo(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let l=a.operator??"eq",s=Je[l];if(s&&!s(e,n(a.field))&&a.message){let c=R(a.message,r);o.push(c)}}return o}function ve(e,t){return e.validation?.required?R(e.validation?.required,t):void 0}function Rn(e,t){let n=C.z.array(C.z.string());return e.required&&(n=n.min(1,ve(e,t))),C.z.preprocess(r=>B(r)?[]:Array.isArray(r)?r.map(String):[String(r)],n)}function Do(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||_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 $l(e){return/^(https?:)?\/\//.test(e)}function Oo(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,ft);new URL(t,ft).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(ft,""):o}catch{return t||e}}function Mo(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=Oo(t.url,n.url),o=Bl(t,n),i=Ul(t,n);return{...t,...n,url:r,body:o,headers:i}})}function Bl(e,t){return f(t.body)&&f(e?.body)?{...e.body,...t.body}:t.body??e?.body}function Ul(e,t){return f(t.headers)&&f(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function Pt(e,t){return{...e,...t}}var Gl={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 je(e,t){return!t||!h(e)||B(e)?e:(Array.isArray(t)?t:[t]).reduce((r,o)=>{let i=Gl[o];return i?i(r):r},e)}var zo=require("react/jsx-runtime");function ue(e){return Er(e,(t,n,r)=>(0,zo.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}var Vt=require("react"),ne=require("react/jsx-runtime");function _o(e){let{fields:t=[]}=e.section,[n,r]=(0,Vt.useState)(!1),o=(0,Vt.useCallback)(()=>r(i=>!i),[]);return(0,ne.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,ne.jsx)("legend",{children:(0,ne.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,ne.jsx)(Le,{expanded:n}),(0,ne.jsx)("span",{children:ue(e.section.title)})]})}),(0,ne.jsx)(Ye,{visible:n,children:(0,ne.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.section.description&&(0,ne.jsx)("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:ue(e.section.description)}),e.group]})})]})}var Se=require("react/jsx-runtime");function $o(e){let t=(0,Se.jsxs)("div",{className:"flex flex-col",children:[e.title&&(0,Se.jsx)("legend",{className:"mb-3 font-medium text-zinc-800 dark:text-zinc-200",children:ue(e.title)}),e.description&&(0,Se.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:ue(e.description)})]});return e.step?(0,Se.jsxs)("div",{className:"flex flex-row items-start gap-4",children:[(0,Se.jsx)("div",{className:"bg-primary text-primary-foreground flex size-6 shrink-0 items-center justify-center rounded-full",children:(0,Se.jsx)("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}var et=require("react/jsx-runtime");function Lt(e){return(0,et.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,et.jsx)($o,{description:e.description,step:e.step,title:e.title}),(0,et.jsx)("div",{className:"w-full min-w-0",children:e.children})]})}var Bo=require("react/jsx-runtime");function Te(e){return(0,Bo.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 Dt=require("react/jsx-runtime");function Uo(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=Pt(e.style,{compact:e.section.advanced?.compact}),o=(0,Dt.jsx)(Te,{compact:r,children:e.children});return!e.section.title&&!e.section.description?o:e.section.advanced?.collapsible?(0,Dt.jsx)(_o,{section:e.section,group:o}):(0,Dt.jsx)(Lt,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),step:n,title:e.section.title,children:o})}var Cn=require("react/jsx-runtime");function Go(){return(0,Cn.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,Cn.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-zinc-200 dark:bg-zinc-800"})})}var Zo=require("jotai");var Re=require("jotai"),Fn=require("jotai-family"),Ot=require("fast-equals");function Mt(e,t){let{[t]:n,...r}=e;return r}function Hl(e){return(0,Fn.atomFamily)(t=>(0,Re.atom)(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];(0,Ot.deepEqual)(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,Mt(i,t))}))}function Yl(e){return(0,Re.atom)(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function Xl(e){return(0,Re.atom)(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)l in i&&(delete i[l],a=!0);a&&n(e,i)})}function Zl(e){return(0,Re.atom)(null,(t,n,r)=>{let o=t(e);(0,Ot.deepEqual)(o,r)||n(e,r)})}function Ho(e,t={}){let{merge:n,validateTarget:r}=t;return(0,Fn.atomFamily)(o=>(0,Re.atom)(i=>{let a=i(e)[o];if(a&&n)return n(Object.values(a))},(i,a,l,s)=>{if(r&&!r(l))return;let c=i(e),u={...c[l]??{}};if(s!=null){let d=u[o];(!d||!(0,Ot.deepEqual)(d,s))&&(u[o]=s,a(e,{...c,[l]:u}))}else o in u&&(delete u[o],Object.keys(u).length===0?a(e,Mt(c,l)):a(e,{...c,[l]:u}))}))}function Yo(e){return(0,Re.atom)(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)l in i&&(delete i[l],a=!0);for(let l in i){let s={...i[l]},c=!1;for(let u of r)u in s&&(delete s[u],c=!0,a=!0);c&&(Object.keys(s).length===0?delete i[l]:i[l]=s)}a&&n(e,i)})}function ze(e={}){let t=(0,Re.atom)(e);return{atom:t,clearAll:Yl(t),clear:Xl(t),bulkReport:Zl(t),report:Hl(t)}}var Xo=ze(),zt=Xo.atom,_t=Xo.report;function ql(e,t){return e.fields.every(n=>qo(n,t))}function qo(e,t){return t[e.name]?.hidden??e.hidden??!1}function Wl(e,t){return te(e)?ql(e,t):qo(e,t)}function $t(e){let t=(0,Zo.useAtomValue)(zt);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>Wl(r,t))?null:e.children}var de=require("react/jsx-runtime");function Wo(e){let t=It(e.sections,e.definition);return(0,de.jsx)("div",{className:"h-full w-full",children:(0,de.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,de.jsxs)(Te,{children:[t.map((n,r)=>(0,de.jsxs)($t,{fields:n.fields??[],children:[(0,de.jsx)(Uo,{advanced:e.advanced,section:n,step:r+1,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.advanced?.separator&&(0,de.jsx)(Go,{})]},`key-${n.id}-${r}`)),e.control&&(0,de.jsx)(zn,{isPending:e.isPending,children:e.control})]})})})}var Jo=require("react/jsx-runtime");function Ko(e){return(0,Jo.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 Qo=require("react"),_e=require("react/jsx-runtime");function Bt(e){let t={context:e.context,env:e.config?.env,value:e.value},r={locale:e.config?.env?.locale},[o,i]=(0,Qo.useState)(()=>f(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),a=()=>i(u=>!u),l=f(e.text)&&h(e.text.title)?ue(R(We(e.text.title,t,r),e.translations)):void 0,s=R(We(h(e.text)?e.text:e.text?.message,t,r),e.translations),c=ue(s);return c?(0,_e.jsxs)("div",{className:"flex flex-col gap-2",children:[l&&(0,_e.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:[l,(0,_e.jsx)(Le,{expanded:o})]}),o&&(0,_e.jsx)(Ko,{title:s,children:c})]}):null}var Ut=ze(),re=Ut.atom,jo=Ut.clearAll,ei=Ut.clear,Ce=Ut.report;var wn=require("jotai"),ti=require("react/jsx-runtime");function Gt(e){let t=(0,wn.useAtomValue)(Ce(e.field.name)),r=(0,wn.useAtomValue)(_t(e.field.name))?.description??e.field.description;return(0,ti.jsx)(Bt,{config:e.config,context:e.context,text:r,translations:e.translations,value:t})}var ni=require("tailwind-merge"),tt=require("react/jsx-runtime");function ri(e){let t=e.style?.showOptionalLabel??!0,n=se(e.field)||G(e.field);return(0,tt.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,ni.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:h(e.children)?e.children:void 0,children:[(0,tt.jsx)("span",{className:"[[data-slot=column]_&]:md:truncate",children:e.children}),t&&!e.field.required&&(0,tt.jsx)("span",{className:"ml-2 flex-shrink-0 text-sm text-zinc-600 dark:text-zinc-400",children:R("(Optional)",e.translations)})]})}var nt=require("react/jsx-runtime");function oi(e){let t={context:e.context,env:e.config?.env},n=We(e.field.label,t);return(0,nt.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,nt.jsx)(ri,{field:e.field,style:e.config?.style,translations:e.translations,children:R(n,e.translations)}),e.horizontal===!0&&(0,nt.jsx)(Gt,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}var Ee=require("react/jsx-runtime");function ii(e){return(0,Ee.jsxs)(Ee.Fragment,{children:[e.field.name&&e.field.label&&(0,Ee.jsx)(oi,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&(0,Ee.jsx)(Gt,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}function Ht(e,t){return e?t(e):null}function H(e,t){if(!Array.isArray(t)&&e in t)return t[e];if(!e.includes("."))return;let n=e.split("."),r=t;for(let o of n){if(r==null)return;if(Array.isArray(r)){let i=Number(o);r=Number.isInteger(i)?r[i]:void 0}else if(f(r))r=r[o];else return}return r}var Ue=require("react");var ai=require("react"),Kl=e=>e,Fe=(0,ai.createContext)(Kl);var An=ze(),li=An.clear,si=An.bulkReport,Yt=An.report;var Y=require("react");var me=require("react");function ci(e,t,n,r){let{name:o}=e,i=(0,me.useMemo)(()=>Io(e,r),[e,r]),a=(0,me.use)(st),l=(0,me.useEffectEvent)(c=>{c&&t(c,i,e)}),s=(0,me.useEffectEvent)(c=>{c&&n(c,{keepValue:a})});return(0,me.useEffect)(()=>(l(o),()=>{s(o)}),[o]),i}var Be=require("jotai");var $e=require("react");function ui(){let e=(0,$e.useRef)(null);return(0,$e.useEffect)(()=>()=>{e.current&&clearTimeout(e.current)},[]),(0,$e.useCallback)((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}function di(e,t){let n=(0,Be.useStore)(),r=e.field.advanced?.entity,o=ui(),[,i]=(0,Y.useTransition)(),a=(0,Y.use)(Fe),{setValue:l,shouldSkipOnChange:s,value:c,setSource:u}=t,d=(0,Y.useRef)(c);d.current=c;let y=(0,Y.useRef)(e.translations);y.current=e.translations;let m=Tt(e.field),F=(0,Be.useSetAtom)(re),N=(0,Be.useSetAtom)(zt),E=(0,Be.useSetAtom)(Yt(e.field.name)),O=ci(e.field,e.onMount,e.onUnmount,e.translations),X=R(e.commonProps.placeholder,e.translations),M={...e.commonProps,placeholder:X};function P(x){let[,p]=e.getSchema();return p.find(v=>v.name===x)}function z(x){let p=P(x);if(p&&be(p)){let v=p.advanced?.transform;if(v)return v}}let L=(0,Y.useRef)(new Map),ge=(0,Y.useRef)(null);ge.current=x=>{let p=be(e.field)?je(x,e.field.advanced?.transform):x;l(p),e.onValueChange&&e.onValueChange({name:a(e.field.name),type:e.field.type,value:p})};let b=(0,Y.useRef)(null);b.current=x=>{let p=e.field.event?.change;p&&Pr(p,({sources:v,states:k,values:_})=>{i(()=>{Vr(x,v,(Z,ie)=>{u(Et(Z,e.field.name),ie)}),Dr(x,k,(Z,ie)=>{let Ve=Z.map($=>Et($,e.field.name));N($=>ie?Ve.reduce((q,Ae)=>({...q,[Ae]:ie}),$):Ve.reduce((q,Ae)=>Mt(q,Ae),$));let Q=ie?.hidden===!0?Ve:ie===void 0?Ve.filter($=>P($)?.hidden===!0):[];Q.length>0&&F($=>{let q=!1,Ae={...$};for(let Ne of Object.keys($))Q.some(ae=>Ne===ae||Ne.startsWith(`${ae}.`))&&(delete Ae[Ne],q=!0);return q?Ae:$})}),Or(x,_,(Z,ie,Ve)=>{let Q=Et(Z,e.field.name),$=z(Q),q=$?je(ie,$):ie,Ne=n.get(re)[Q];if(Ve.onlyIfTargetEmpty&&!B(Ne)){let ae=L.current.get(Q);if(!Object.is(ae,Ne))return}if(q!==Ne&&(F(ae=>({...ae,[Q]:q})),L.current.set(Q,q),e.onValueChange)){let ae=P(Q);ae&&e.onValueChange({name:a(Q),type:ae.type,value:q})}})})})};let g=(0,Y.useCallback)(x=>{let v=O.safeParse(x).error?.issues.map(Z=>Z.message)??[],k=e.field.validation?.custom,_=k?Lo(x,k,Z=>n.get(Ce(Z)),y.current):[];E([...v,..._])},[e.field.validation?.custom,O,E,n]),w=(0,Y.useCallback)(x=>{if(!m){let p=x.target.value;e.config.validation.blur&&g(p)}},[m,e.config.validation.blur,g]);return{applyChangeEventsRef:b,commonProps:M,entity:r,hasClickable:m,onBlur:w,onValueChangeRef:ge,setTimeoutRef:o,shouldSkipOnChange:s,validated:g,valueRef:d}}var mi=require("fast-equals");var fi=require("jotai"),J=require("react");function pi(e,t){let{name:n}=e,r=(0,J.useRef)(!1),[o,i]=(0,fi.useAtom)(Ce(n)),a=(0,J.use)(Fe),l=(0,J.useEffectEvent)((u,d=!1)=>{let y=be(e)?je(u,e.advanced?.transform):u;!d&&!(0,mi.deepEqual)(o,y)&&(r.current=!0),i(y)}),s=(0,J.useEffectEvent)(u=>{let d=H(a(n),u);T(d)?l(d):T(e.defaultValue)&&l(e.defaultValue,!0)});(0,J.useEffect)(()=>{if(t){s(t);return}T(e.defaultValue)&&l(e.defaultValue,!0)},[t,e.defaultValue]);let c=(0,J.useCallback)(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:c,value:o}}var Nn=require("react/jsx-runtime");function gi(e){let{useSource:t,useExtraProps:n,getValue:r,shouldSkipChange:o,dispatchChange:i,buildInitialSelected:a,isInitialReady:l}=e.strategies,{setValue:s,shouldSkipOnChange:c,value:u}=pi(e.field,e.value),{data:d,setSource:y}=t(e.field,e.config,u),{applyChangeEventsRef:m,commonProps:F,entity:N,hasClickable:E,onBlur:O,onValueChangeRef:X,setTimeoutRef:M,validated:P,valueRef:z}=di(e,{setValue:s,shouldSkipOnChange:c,value:u,setSource:y}),L=n?.(e.field),ge=(0,Ue.useRef)(!1),{commonPropsWithOptions:b,defaultValue:g}=lo(e.field,F,d,u),w=so(e.field,g);(0,Ue.useEffect)(()=>{let p=!!e.value||T(e.field.defaultValue);if(ge.current||!p)return;if(!e.field.event?.change){ge.current=!0;return}let v=e.value?H(e.field.name,e.value):void 0,k=T(v)?v:e.field.defaultValue;if(!T(k)||!l(e.field,g,d))return;ge.current=!0;let _=a(g,d,N);m.current?.(_)},[m,a,d,g,N,l,e.field,e.value]);let x=(0,Ue.useCallback)(p=>{let v=r(p,e.field);o({shouldSkipOnChange:c,hasClickable:E,inputValue:v,valueRef:z})||(X.current?.(v),e.config.validation.change&&P(v),e.field.event?.change&&i({applyChangeEventsRef:m,data:d,entity:N,inputValue:v,setTimeoutRef:M}))},[m,d,i,N,r,E,X,e.config.validation.change,e.field,M,o,c,P,z]);return Ht(e.config.inputs[e.field.type],p=>(0,Nn.jsx)(ii,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:(0,Nn.jsx)(p,{...b,...e.ariaAttributes,...e.dataAttributes,...L,...w,onBlur:O,onChange:x})}))}var yi=require("react/jsx-runtime");function Ge(e){return function(n){return(0,yi.jsx)(gi,{...n,strategies:e})}}function xi(e){let t=K(e)?ce(e):null,n=le(e)?Ie(e):null;return{dateFormat:t,timeFormat:n}}var bi=require("jotai");var Jl=e=>{let t=Mo(e);if(t)return t},Ql=e=>e.trim()!=="",hi=(0,bi.atom)({}),Xt=Ho(hi,{merge:Jl,validateTarget:Ql}),vi=Yo(hi);var Si=require("jotai");function Zt(e){return{data:null,setSource:(0,Si.useSetAtom)(Xt(e.name))}}var Ti=Ge({useSource:Zt,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=xi(e);return co(t,n)},getValue:(e,t)=>{let n=e.target.value,r=le(t)?Ie(t):null;if(r!==null)return Jr(n,r);let o=K(t)?ce(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)});var Ai=require("fast-equals");var Fi=require("jotai");var Ri=Va(require("swr"),1);function Ci(e=null,t,n=!1){let{data:r,error:o}=(0,Ri.default)(jl(e,t,n),t.fetcher.provider);if(o&&Ke.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return Ar(r,e.namespace)}return null}function jl(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!qe(e.url)){if(Do(e.url,t.fetcher.remotePatterns))return e;Ke.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function wi(e,t,n){let r=ao(e,n),[o,i]=(0,Fi.useAtom)(Xt(e.name));return[Ci(o??r,t,e.disabled),i]}function es(e,t,n){let[r,o]=wi(e,t,n);return{data:r,setSource:o}}var Ni=Ge({useSource:es,getValue:e=>e.target.value,shouldSkipChange:({shouldSkipOnChange:e,hasClickable:t,inputValue:n,valueRef:r})=>!t&&e()&&(!n||(0,Ai.deepEqual)(n,r.current)),dispatchChange:({applyChangeEventsRef:e,data:t,entity:n,inputValue:r})=>{e.current?.(mn(r,t,n))},buildInitialSelected:(e,t,n)=>mn(String(e),t,n),isInitialReady:(e,t,n)=>(!Me(e)||!!n&&n.length>0)&&T(t)});var ki=Ge({useSource:Zt,getValue:e=>e.target.value,shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>T(t)});var qt=require("react/jsx-runtime");function Ii(e){return K(e.field)||le(e.field)?(0,qt.jsx)(Ti,{...e}):Br(e.field)?(0,qt.jsx)(ki,{...e}):(0,qt.jsx)(Ni,{...e})}var kn=require("react/jsx-runtime");function Ei(e){return!e.errors||e.errors.length===0?null:(0,kn.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,kn.jsx)("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var Pi=require("tailwind-merge"),Vi=require("react/jsx-runtime");function Wt(e){let t=e.errors&&e.errors.length>0;return(0,Vi.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[dr]:"true"},...e.disabled&&{[mr]:"true"},"data-orientation":e.orientation,className:(0,Pi.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 Li=require("tailwind-merge"),Oi=require("react/jsx-runtime");function Di(e){return(0,Oi.jsx)(Wt,{...e,orientation:"vertical",className:(0,Li.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var Mi=require("tailwind-merge"),_i=require("react/jsx-runtime");function zi(e){return(0,_i.jsx)(Wt,{...e,orientation:"horizontal",className:(0,Mi.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 In=require("react/jsx-runtime");function $i(e){let t=Tt(e.field),n=G(e.field),r=Hr(e.field);return e.horizontal?(0,In.jsx)(zi,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):(0,In.jsx)(Di,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function Bi(e){if(!e.field.type)return null;let t=to(e.field,e.disabled),n=xo(e.field),r=yo(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 Ui=require("tailwind-merge"),He=require("react/jsx-runtime");function Gi(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=Pt(e.style,{horizontal:Gr(e.field)}),o=Yr(e.field,e.disabled);return(0,He.jsxs)("div",{className:(0,Ui.twMerge)("flex flex-col gap-3",So(t)),children:[(0,He.jsx)($i,{disabled:o,errors:n,field:e.field,horizontal:r,children:(0,He.jsx)(Bi,{disabled:o,errors:n,field:e.field,horizontal:r,children:e.children})}),(0,He.jsx)(Ei,{errors:n,name:e.field.name})]})}var Hi=require("jotai"),qi=require("react/jsx-runtime");function Yi(e){return(t,n)=>o=>{let i=(0,Hi.useAtomValue)(e(o.field.name)),a=n(i,o);return a===null?null:(0,qi.jsx)(t,{...o,...a})}}var ts=Yi(Yt);function Xi(e){return ts(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var ns=Yi(_t);function Zi(e){return ns(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var Wi=Zi(Xi(Gi));var Kt=require("tailwind-merge"),Ki=require("react"),S=require("react/jsx-runtime");function Ji(e){let t=e.isMultiField||e.collapsed!=null,[n,r]=(0,Ki.useState)(t?!e.collapsed:!0);function o(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function i(){r(c=>!c)}let a=e.canRemove&&e.onRemove!=null&&(0,S.jsx)("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:(0,Kt.twMerge)("flex size-6 items-center justify-center rounded text-xl leading-none text-zinc-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:outline-none","dark:text-zinc-500 dark:hover:text-red-400"),onClick:o,type:"button",children:(0,S.jsx)("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),l=(0,S.jsxs)("div",{className:"flex min-w-0 flex-col font-medium text-zinc-700 dark:text-zinc-400",children:[(0,S.jsx)("span",{className:"text-base",children:e.previewLabel??(0,S.jsxs)(S.Fragment,{children:[e.label," ",e.index+1]})}),!n&&e.previewTags&&(0,S.jsx)("div",{className:"flex items-center gap-2 overflow-hidden text-xs font-normal text-ellipsis whitespace-nowrap text-zinc-500 dark:text-zinc-500",children:e.previewTags})]}),s=(0,S.jsxs)("div",{className:(0,Kt.twMerge)("flex items-center justify-between gap-2",e.isMultiField&&n&&"mb-3"),children:[t?(0,S.jsxs)("div",{className:"flex min-w-0 grow items-center gap-2",children:[(0,S.jsxs)("button",{"aria-expanded":n,"aria-label":`${n?"Collapse":"Expand"} ${e.label} ${e.index+1}`,className:(0,Kt.twMerge)("group flex grow items-center gap-2 rounded p-1 text-left text-zinc-400","focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:outline-none","dark:text-zinc-500"),onClick:i,type:"button",children:[(0,S.jsx)(Le,{expanded:n}),l]}),!n&&e.previewBadge&&(0,S.jsx)("div",{className:"ml-auto shrink-0",children:e.previewBadge})]}):l,a]});return e.isMultiField?(0,S.jsxs)("div",{"data-slot":"list-item-card",className:"box-border w-full min-w-0 rounded-lg border border-zinc-100 p-4 dark:border-zinc-900",children:[s,(0,S.jsx)(Ye,{visible:n,children:(0,S.jsx)(Te,{children:e.children})})]}):t?(0,S.jsxs)("div",{className:"box-border flex w-full min-w-0 flex-col gap-2",children:[s,(0,S.jsx)(Ye,{visible:n,children:(0,S.jsx)(Te,{children:e.children})})]}):(0,S.jsxs)("div",{className:"box-border flex w-full min-w-0 items-start gap-2",children:[(0,S.jsx)("div",{className:"flex min-w-0 grow flex-col",children:(0,S.jsx)(Te,{children:e.children})}),a&&(0,S.jsx)("div",{className:"shrink-0",children:a})]})}var ji=require("react");var En=require("tailwind-merge");var Qi=require("jotai");function Jt(e,t){return(0,Qi.useAtomValue)(Ce(e))??t}var fe=require("react/jsx-runtime");function ea({className:e,initialValue:t,name:n,options:r,separator:o,staticLabel:i}){let a=Jt(n??"",t);if(i===void 0&&r){let c=(Array.isArray(a)?a:a==null||a===""?[]:[a]).filter(u=>u!=null&&u!=="").map(u=>mo(u,r));return c.length===0?null:(0,fe.jsx)("div",{className:"flex items-center gap-1.5 overflow-hidden",children:c.map((u,d)=>(0,fe.jsxs)(ji.Fragment,{children:[(o||d>0)&&(0,fe.jsx)("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),(0,fe.jsx)("span",{"aria-label":u,className:(0,En.twMerge)("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:u,children:u})]},`${d}:${u}`))})}if(i===void 0&&(B(a)||f(a)||Array.isArray(a)))return null;let l=i??String(a);return(0,fe.jsxs)("div",{className:"flex items-center gap-1.5 overflow-hidden",children:[o&&(0,fe.jsx)("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),(0,fe.jsx)("span",{"aria-label":l,className:(0,En.twMerge)("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:l,children:l})]})}var ta=require("jotai"),na=require("react");function Qt(e,t){let n=(0,ta.useAtomValue)(re);return(0,na.useMemo)(()=>{let r=`${e}.`,o={},i=!1;for(let l in n)l.startsWith(r)&&(o[l.slice(r.length)]=n[l],i=!0);let a=t?H(e,t):void 0;return i?f(a)?{...a,...o}:o:a},[n,e,t])}var jt=require("react"),Pn=require("react/jsx-runtime");function rs(e){return typeof e=="string"?{field:e}:e}function Vn({className:e,fields:t,label:n="Preview",name:r,previews:o,translations:i,value:a}){let l=(0,jt.useMemo)(()=>(Array.isArray(o)?o:[o]).map(rs),[o]),s=(0,jt.useMemo)(()=>t?Fo(t):void 0,[t]),c=Qt(r,a),u=(0,jt.useMemo)(()=>{let d=[];for(let[y,m]of l.entries()){if(m.when!==void 0&&!Oe(c,m.when))continue;if(m.label!==void 0){d.push({key:m.field??`label:${m.label}:${y}`,staticLabel:R(m.label,i)});continue}if(m.field===void 0)continue;let F=`${r}.${m.field}`,N=a!=null?H(F,a):void 0,E=s?.[m.field],O=E?uo(E):void 0;d.push({key:`${y}:${m.field}`,initialValue:N,options:O,previewName:F})}return d},[l,c,r,a,i,s]);return u.length===0?null:(0,Pn.jsx)("div",{"aria-label":n,className:"flex items-center gap-1.5 overflow-hidden",children:u.map((d,y)=>(0,Pn.jsx)(ea,{className:e,initialValue:"initialValue"in d?d.initialValue:void 0,name:"previewName"in d?d.previewName:void 0,options:"options"in d?d.options:void 0,separator:y>0,staticLabel:"staticLabel"in d?d.staticLabel:void 0},d.key))})}var en=require("react/jsx-runtime");function ra({children:e,initialValue:t,name:n}){let r=Jt(n,t),i=B(r)||f(r)||Array.isArray(r)?"":String(r);return(0,en.jsx)(en.Fragment,{children:e(i)})}var rt=require("react/jsx-runtime");function oa({canRemove:e,children:t,field:n,index:r,isMultiField:o,itemKey:i,label:a,onRemove:l,previewBadge:s,previewLabel:c,previewTags:u,translations:d,value:y}){let m=`${n.name}.${i}`,F=`${a} ${r+1}`,N=Qt(m,y);return(0,rt.jsx)(Ji,{canRemove:e,collapsed:n.advanced?.collapsed,index:r,isMultiField:o,label:a,onRemove:l,previewLabel:os({fallbackLabel:F,liveItemValue:N,name:m,previewLabel:c,translations:d,value:y}),previewBadge:s?(0,rt.jsx)(Vn,{className:"bg-primary text-primary-foreground rounded-md px-1.5 py-0.5 leading-none font-bold uppercase",fields:n.fields,name:m,previews:s,translations:d,value:y}):void 0,previewTags:u?(0,rt.jsx)(Vn,{fields:n.fields,name:m,previews:u,translations:d,value:y}):void 0,children:t})}function os({fallbackLabel:e,liveItemValue:t,name:n,previewLabel:r,translations:o,value:i}){if(r===void 0)return;let a=typeof r=="string"?{field:r}:r;if(a.when!==void 0&&!Oe(t,a.when))return;if(a.label!==void 0)return R(a.label,o);if(a.field===void 0)return;let l=`${n}.${a.field}`;return(0,rt.jsx)(ra,{initialValue:i?H(l,i):void 0,name:l,children:s=>s||e})}var aa=require("tailwind-merge");var tn=require("jotai"),A=require("react");function ia(e,t,n){let r=e.advanced?.length?.min??1,o=e.advanced?.length?.max??1/0,[i,a]=(0,A.useState)(()=>Ro(e,t)),l=(0,A.useRef)(i),s=(0,A.useRef)(i.length);l.current=i;let c=(0,tn.useStore)(),u=(0,tn.useSetAtom)(re),d=(0,A.useRef)(n);d.current=n;let y=(0,A.useRef)(t),m=(0,A.useMemo)(()=>{let b=[];for(let g of e.fields)if(te(g))for(let w of g.fields)b.push(w.name);else b.push(g.name);return b},[e.fields]),F=(0,A.useCallback)((b,g)=>{let w=Number(b);return Number.isNaN(w)?!1:Number.isInteger(w)&&g>=0&&String(g)!==b},[]),N=(0,A.use)(Fe),E=(0,A.useCallback)(b=>{let g=`${e.name}.`;if(b.startsWith(g)){let w=b.slice(g.length),x=w.indexOf("."),p=x===-1?w:w.slice(0,x),v=Number(p),k=l.current.indexOf(v);F(p,k)&&(b=`${g}${k}${x===-1?"":w.slice(x)}`)}return N(b)},[e.name,F,N]),O=(0,A.useEffectEvent)(()=>{let b=y.current;if(!b)return;let g=`${e.name}.`,w={...c.get(re)},x=!1;for(let p of i)for(let v of m){let k=`${g}${p}.${v}`;if(k in w)continue;let _=H(k,b);T(_)&&(w[k]=_,x=!0)}x&&u(w)});(0,A.useEffect)(()=>{O()},[]);let X=(0,A.useCallback)((b,g)=>{let w=`${e.name}.`,x=y.current;return b.map(p=>{let v={};for(let k of m){let _=`${w}${p}.${k}`,Z=g[_];v[k]=Z!==void 0?Z:x?H(_,x):void 0}return v})},[e.name,m]),M=(0,A.useCallback)((b,g)=>{d.current?.({name:E(e.name),value:X(b,g)})},[X,e.name,E]),P=(0,A.useCallback)(()=>{if(l.current.length>=o)return;let b=s.current++,g=[...l.current,b];a(g),M(g,c.get(re))},[M,o,c]),z=(0,A.useCallback)(b=>{if(l.current.length<=r)return;let g=l.current[b],w=l.current.filter((k,_)=>_!==b),p={...c.get(re)},v=`${e.name}.`;for(let k of m)delete p[`${v}${g}.${k}`];a(w),u(p),M(w,p)},[M,e.name,m,r,u,c]),L=i.length<o,ge=i.length>r;return[i,P,z,L,ge,o,E]}var pe=require("react/jsx-runtime"),is="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 la(e){let{field:t,onValueChange:n,translations:r,value:o,children:i}=e,[a,l,s,c,u,d,y]=ia(t,o,n),m=Co(t),F=t.advanced?.action??"Add item",N=d!==1/0,E=To(t),{label:O,tags:X,badge:M}=t.advanced?.preview??{};return(0,pe.jsx)(Fe.Provider,{value:y,children:(0,pe.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[a.map((P,z)=>(0,pe.jsx)(oa,{canRemove:u,field:t,index:z,isMultiField:E,itemKey:P,label:m,onRemove:s,previewBadge:M,previewLabel:O,previewTags:X,translations:r,value:o,children:i(P)},P)),(0,pe.jsxs)("button",{"aria-disabled":!c,"aria-label":N?`${F}, ${a.length} of ${d}`:F,className:(0,aa.twMerge)(is,N?"justify-between":"justify-center",!c&&"cursor-not-allowed opacity-50 hover:border-zinc-200 hover:text-zinc-500 dark:hover:border-zinc-800 dark:hover:text-zinc-400"),disabled:!c,onClick:l,type:"button",children:[(0,pe.jsxs)("span",{className:"flex items-center gap-2",children:[(0,pe.jsx)("span",{"aria-hidden":"true",className:"text-base leading-none",children:"+"}),F]}),N&&(0,pe.jsxs)("span",{"aria-hidden":"true",className:"text-zinc-400 tabular-nums dark:text-zinc-500",children:[a.length," / ",d]})]})]})})}var ca=require("react/jsx-runtime");function sa(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return(0,ca.jsx)(Lt,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}var nn=require("react/jsx-runtime");function ua({children:e,field:t,onValueChange:n,translations:r,value:o}){return(0,nn.jsx)($t,{container:t,fields:t.fields,children:(0,nn.jsx)(sa,{field:t,children:(0,nn.jsx)(la,{field:t,onValueChange:n,translations:r,value:o,children:e})})})}var da=require("tailwind-merge");var ot=require("react/jsx-runtime");function ma(e){let t=vo(e.column?.advanced?.cols);return(0,ot.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[(0,ot.jsx)("div",{"data-slot":"column",className:(0,da.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&(0,ot.jsx)(Bt,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}var ga=require("react");var pa=require("react/jsx-runtime");function fa(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>Ct(n)||Rt(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:te(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return(0,pa.jsx)(it,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:t,style:e.style,translations:e.translations,value:e.value,children:e.children})}var we=require("react/jsx-runtime");function it(e){let{field:t,list:n}=e.components;return It(e.fields).map((r,o)=>(0,we.jsxs)(ga.Fragment,{children:[te(r)&&(0,we.jsx)(ma,{column:r,config:e.config,context:e.context,translations:e.translations,children:(0,we.jsx)(it,{...e,fields:r.fields})}),Ct(r)&&(0,we.jsx)(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),Rt(r)&&(0,we.jsx)(n,{field:r,onValueChange:e.onValueChange,translations:e.translations,value:e.value,children:i=>(0,we.jsx)(fa,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:r,index:i,style:e.style,translations:e.translations,value:e.value,children:e.children})})]},o))}var xa=require("react/jsx-runtime");function ya(e){return n=>(0,xa.jsx)(it,{...n,components:e})}var ba=ya({field:Wi,list:ua});var Dn=require("jotai");var at=require("react");function va(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},l=(0,Dn.useSetAtom)(si),s=(0,Dn.useSetAtom)(jo),c={data:null,error:null,success:!1},[u,d,y]=(0,at.useActionState)(async(m,F)=>{let[N,E]=e(),O=No(N,E,a);if(i===!1)return t?await t(F,O):m;let X=kr(F),M=ls(X,E),P=O.safeParse(M);if(!P.success){let L=ko(P.error);return(0,at.startTransition)(()=>{l(L)}),Ln(X,{description:R("Please correct the errors and try again.",a),details:[],title:R("There were validation errors submitting the form.",a)})}let z=Ir(P.data);if(t)try{let L=await t(z,O);return L.success?(r?.(L.data),o||(0,at.startTransition)(()=>{s()}),ha(z,o)):Ln(z,L.error)}catch(L){return Ke.error("Error executing form action:",L),Ln(z,{title:R("An unexpected error occurred submitting the form.",a),details:as(L,a)})}return ha(P.data,o)},c);return[d,u,y]}function as(e,t){return e instanceof Error?[e.message]:[R("Unknown error",t)]}function ha(e,t=!1){return{data:t?e:null,error:null,success:!0}}function Ln(e,t){return{data:e,error:t,success:!1}}function ls(e,t){let n={...e};for(let r of t)if(K(r)&&typeof n[r.name]=="string"&&n[r.name]){let o=wt(n[r.name],ce(r));o&&(n[r.name]=o)}return n}var Pe=require("react");var Sa=require("react"),rn=require("jotai");function Ta(){let e=(0,rn.useSetAtom)(li),t=(0,rn.useSetAtom)(ei),n=(0,rn.useSetAtom)(vi);return(0,Sa.useCallback)((r,o)=>{let i=Array.isArray(r)?r:[r];e(i),n(i),o?.keepValue||t(i)},[e,n,t])}function Ra(){let e=Ta(),t=(0,Pe.useRef)({}),n=(0,Pe.useRef)([]),r=(0,Pe.useCallback)((a,l,s)=>{a in t.current||(t.current[a]=l,n.current.push(s))},[]),o=(0,Pe.useCallback)((a,l)=>{t.current[a]&&(delete t.current[a],n.current=n.current.filter(s=>s.name!==a),e([a],{keepValue:l?.keepValue}))},[e]);return[(0,Pe.useCallback)(()=>[t.current,n.current],[]),r,o]}var oe=require("react/jsx-runtime");function Ca(e){let t=e.translations?.[e.lang??""],[n,r,o]=Ra(),[i,a,l]=va(n,e.action,{onSuccess:e.onSuccess,validation:e.config.validation.submit,translations:t}),s=e.config.validation.showError&&!a.success&&a.error,c=a.data??e.value;return(0,oe.jsxs)(oe.Fragment,{children:[s&&Ht(e.config.alert,u=>(0,oe.jsx)("div",{className:"mb-4 w-full",children:(0,oe.jsx)(u,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),(0,oe.jsx)(Wo,{action:i,advanced:e.advanced,config:e.config,control:e.children,definition:e.definition,isPending:l,noValidate:!0,readOnly:e.readOnly,sections:e.sections,children:({disabled:u,fields:d})=>(0,oe.jsx)(ba,{config:e.config,context:e.context,disabled:u,fields:d,onValueChange:e.onValueChange,style:e.config.style,translations:t,value:c,children:y=>(0,oe.jsx)(Ii,{...y,config:e.config,context:e.context,getSchema:n,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:c})})})]})}var Fa=require("jotai"),On=require("react/jsx-runtime");function wa(e){return(0,On.jsx)(Fa.Provider,{children:(0,On.jsx)(Ca,{...e})})}
@@ -1 +1 @@
1
- import{jsx as Xi}from"react/jsx-runtime";function yn(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return Xi("div",{"data-slot":"field-control",className:"w-full",children:t})}import{jsx as xn}from"react/jsx-runtime";function be(e){return xn("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:xn("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 qi}from"react";import{createContext as Zi}from"react";var Ue=Zi(!1);import{jsx as bn}from"react/jsx-runtime";function we({children:e,visible:t}){return bn(qi,{mode:t?"visible":"hidden",children:bn(Ue,{value:!0,children:e})})}var Ge="input",hn="input/date",vn="input/email",Sn="input/number";var Tn="input/time";var Rn="textarea",Cn="radio",Fn="checkbox",Ot="list";var wn="select",An="select/active",Nn="select/day",kn="select/month",In="select/timezone",En="select/year";var Pn="chips",Vn="chips/day",Ln="chips/month",Ae="column",Dn="description",Mt="fields",On="label",Y="value",He="options",zt="email",Mn="number",zn="password",_n="tel",Ne="text",$n="aria-errormessage",Bn="aria-invalid",Un="data-invalid",Gn="data-readonly",Hn="aria",Yn="data",Ye="max",Xn="maxLength",Xe="min",Zn="minLength",he="$ref";var qn="source",Wn="state",Ze="http://luna.internal";var Kn="type",Jn={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};import{format as Wi,formatDistanceToNow as jn,formatDuration as Ki,intervalToDuration as Ji,isValid as qe,parseISO as Qi}from"date-fns";import{enUS as er,es as $t}from"date-fns/locale";function f(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function M(e){return e==null||e===""}function q(e){return b(e)||typeof e=="number"||_t(e)}function b(e){return typeof e=="string"}function Qn(e){return f(e)&&"url"in e}function _t(e){return typeof e=="boolean"}var tr={en:er,"en-US":er,es:$t,"es-ES":$t,"es-MX":$t},ji={short:"M/d/yy",medium:"MMM d, yyyy",long:"MMMM d, yyyy",full:"EEEE, MMMM d, yyyy"},ea={ms:1,s:1e3,min:6e4,h:36e5,d:864e5};function nr(e){if(e)return tr[e]??tr[e.split("-")[0]]}function We(e){if(typeof e=="number"&&!Number.isNaN(e))return e;if(b(e)&&e.trim()!==""){let t=Number(e);return Number.isNaN(t)?null:t}return null}function rr(e,t,n){let r=ea[t];if(r===void 0)return String(e);let o=e*r,i=Ji({start:0,end:o});return Ki(i,{locale:n})}function or(e){if(e instanceof Date)return qe(e)?e:null;if(b(e)){let t=Qi(e);if(qe(t))return t;let n=new Date(e);return qe(n)?n:null}if(typeof e=="number"){let t=new Date(e);return qe(t)?t:null}return null}var ta={currency:(e,t,n)=>{let r=We(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=We(e);return r===null?String(e):new Intl.NumberFormat(n.locale,{style:"percent"}).format(r)},number:(e,t,n)=>{let r=We(e);return r===null?String(e):new Intl.NumberFormat(n.locale).format(r)},date:(e,t,n)=>{let r=or(e);if(!r)return String(e);let o=t[0]??"short",i=nr(n.locale);if(o==="relative")return jn(r,{addSuffix:!0,locale:i});let a=ji[o]??o;return Wi(r,a,{locale:i})},duration:(e,t,n)=>{let r=nr(n.locale);if(typeof e=="number")return rr(e,t[0]??"ms",r);if(b(e)){let i=We(e);if(i!==null)return rr(i,t[0]??"ms",r)}let o=or(e);return o?jn(o,{addSuffix:!0,locale:r}):String(e)}};function ir(e,t,n){let r=t.split(":").map(l=>l.trim()).filter(l=>l.length>0);if(r.length===0)return;let[o,...i]=r,a=ta[o];if(a)return a(e,i,n)}var na=/^\d+$/;function Ut(e,t=[],n=Y){return Array.isArray(t)?t.find(r=>{let o=Gt(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}:{value:e}}function Gt(e,t=Y){if(e!=null){if(Array.isArray(e)&&e.every(q)||q(e))return e;if(f(e)){let n=ra(e,t);if(q(n))return n}}}function ra(e,t){let n=z(e,t);if(q(n))return n}function ar(e,t){if(Array.isArray(e))return e;let n=z(e,t);return Array.isArray(n)?n:null}function z(e,t){if(!t||!f(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(f(r)&&o in r)r=r[o];else return null;return r}function Ht(e,t={description:Dn,label:On,value:Y}){return e.map(n=>{if(f(n)){let r=z(n,t.label),o=z(n,t.value);if(q(r)&&q(o)){let i=z(n,t.description);return{label:`${r}`,value:`${o}`,...q(i)&&{description:`${i}`}}}}return n})}function lr(e=Ne){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==Ge?n.trim().toLowerCase():Ne}function sr(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 l=r[a],c=r[a+1],s=na.test(c);l in o||(o[l]=s?[]:{}),o=o[l]}let i=r[r.length-1];o[i]=e[n]}return Bt(t),t}function Bt(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)f(o)&&Bt(o);e[t]=r}else f(n)&&Bt(n)}}var oa=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function ie(e,t={},n={}){if(b(e))return ia(e,t,n);if(Array.isArray(e))return e.map(r=>ie(r,t,n));if(f(e)){let r={};for(let o in e)r[o]=ie(e[o],t,n);return r}return e}function Ie(e,t={},n={}){return ke(e)?ie(e,t,n):e}function ke(e){return b(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>ke(t)):f(e)?Object.values(e).some(t=>ke(t)):!1}function ia(e,t={},n={}){return e.replace(/{([^}]{1,200})}/g,(r,o)=>{let i=String(o).split("|").map(u=>u.trim()),[a,...l]=i;if(!a)return r;let c=a.includes(".")?z(t,a):t[a];if(l.length===0)return q(c)?String(c):r;if(c==null)return r;let s=c;for(let u of l){let d=ir(s,u,{locale:n.locale});if(d===void 0)return r;s=d}return String(s)})}function ur(e,t){if(!b(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=oa.exec(e))!==null;){let[a,l,c]=n,s=n.index;o=!0,s>r&&i.push(e.substring(r,s));let u=t?t(s,c,l):a;i.push(u),r=s+a.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var Ee={error:(...e)=>{Yt()&&!Xt()&&Ke().error("[Luna Form]",...e)},warn:(...e)=>{Yt()&&!Xt()&&Ke().warn("[Luna Form]",...e)},info:(...e)=>{Yt()&&!Xt()&&Ke().info("[Luna Form]",...e)}},Yt=()=>typeof Ke()<"u",Xt=()=>!0,Ke=()=>globalThis.console;function dr(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===Y&&n.push(i),i.action===qn&&r.push(i),i.action===Wn&&o.push(i);t({sources:r,states:o,values:n})}function mr(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(Qn(i)){let a=ie(i.url,e),l=i.body?ie(i.body,e):i.body;n(o,{...i,url:a,body:l})}}}var Pe={eq:ua,gt:pa,gte:ga,in:ma,lt:ya,lte:xa,neq:da,nin:fa},aa=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,fr=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function la(e){return typeof e=="string"&&aa.test(e)}function sa(e){return typeof e=="string"&&fr.test(e)}function ca(e){let t=e.match(fr);if(t){let[,n,r,o,i,a,l]=t;return new Date(Number(o),Number(r)-1,Number(n),Number(i??0),Number(a??0),Number(l??0)).getTime()}return NaN}function ae(e){return la(e)?new Date(e).getTime():sa(e)?ca(e):Number(e)}function ua(e,t){return e===t}function da(e,t){return e!==t}function ma(e,t){return Array.isArray(t)&&t.includes(String(e))}function fa(e,t){return Array.isArray(t)&&!t.includes(String(e))}function pa(e,t){return ae(e)>ae(t)}function ga(e,t){return ae(e)>=ae(t)}function ya(e,t){return ae(e)<ae(t)}function xa(e,t){return ae(e)<=ae(t)}function ve(e,t){if(t===void 0)return!0;if(b(t)){let n=Je(e,Y);return Array.isArray(n)?n.length===1&&n[0]===t:n===t}if(_t(t)){let n=Je(e,Y);return(Array.isArray(n)?n.length>0:!!n)===t}if(Array.isArray(t)){let n=Je(e,Y);return Array.isArray(n)?n.some(r=>t.includes(String(r))):t.includes(String(n))}return ba(e,t)}function ba(e=null,t){let n=Je(e,t.field??Y),{operator:r="eq",value:o}=t,i=Pe[r];return i?i(n,o):!1}function Je(e,t){return f(e)?z(e,t):e}function pr(e=null,t=[],n){for(let r of t){let{target:o,state:i,when:a}=r,l=Array.isArray(o)?o:[o];if(!e){n(l);continue}let c=ve(e,a);n(l,c?i:void 0)}}function gr(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?ie(i,e):void 0,{onlyIfTargetEmpty:r.onlyIfTargetEmpty??!1})}var Ve=e=>N(An)(e),yr=e=>N(Nn)(e),Qe=e=>N(kn)(e),je=e=>N(En)(e),xr=e=>N(In)(e),et=e=>N(Vn)(e),tt=e=>N(Ln)(e),X=N(hn),ee=N(Tn),_=N(Fn),W=N(Pn),te=N(Cn),le=N(Ge),se=N(wn),Zt=N(Rn),br=N(Ne,zt,zn,_n),hr=N(vn,zt),nt=N(Sn,Mn);function rt(e){return te(e)||_(e)}function ot(e){return e.type===Ot}function K(e){return e.type===Ae}function it(e){return e.type!==Ae&&e.type!==Ot}function Se(e){return se(e)||te(e)||W(e)}function vr(e){return le(e)||Zt(e)}function S(e){return e!=null&&e!==""}function N(...e){return t=>{let n=b(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Sr(e,t={}){if(se(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&f(n))return[n]}}function Tr(e){return te(e)||_(e)?!0:e.advanced?.horizontal??!1}function Rr(e){return _(e)?e.advanced?.reverse!==!1:!1}function Cr(e,t){let n=e.readonly??!1;return t||n}function qt(e){if(te(e)||W(e)||se(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||f(t)&&!(he in t))return t}}import{isValid as at,parse as lt,format as st}from"date-fns";var ha=/^\d+$/,ct=new Date(2e3,0,1),va=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[];function Wt(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function Kt(){return Array.from({length:7},(e,t)=>({value:t.toString(),label:new Date(2e3,0,2+t).toLocaleString("default",{weekday:"long"})}))}function Ar(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 Jt(){return new Date().getFullYear()}function Sa(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function Ta(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return Jn[n]??"Other"}function Ra(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function Fr(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(l=>l.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),a=Ra(r,e);return{offset:i,longName:a}}function wr(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function Nr(){let e=new Date,t=Sa(),n=new Map,r=wr(t),{offset:o,longName:i}=Fr(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let c of va()){if(c===t)continue;let s=wr(c),{offset:u,longName:d}=Fr(c,e),h={value:c,label:`${s} - ${d} (${u})`},m=Ta(c);if(m==="Other")continue;let C=n.get(m);C?C.push(h):n.set(m,[h])}for(let c of n.values())c.sort((s,u)=>s.label.localeCompare(u.label));let l=Array.from(n.entries()).sort(([c],[s])=>c.localeCompare(s)).map(([c,s])=>({label:c,items:s}));return[{label:"Suggested",items:[a]},...l]}function Qt(e,t){if(typeof e=="number")return e;let n=t??Jt(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,a]=o,l=parseInt(a,10);if(!isNaN(l))return i==="+"?n+l:n-l}return n}return ha.test(r)?parseInt(r,10):n}function ut(e,t){if(!e)return"";try{let n=lt(e,t,ct);return at(n)?st(n,"yyyy-MM-dd"):""}catch{return""}}function kr(e,t){if(!e)return"";try{let n=lt(e,t,ct);return at(n)?st(n,"HH:mm:ss"):""}catch{return""}}function Ir(e,t="HH:mm"){if(!e)return"";try{let n=e.split(":").length===3?"HH:mm:ss":"HH:mm",r=lt(e,n,ct);return at(r)?st(r,t):""}catch{return""}}function dt(e,t="MMMM d, yyyy"){if(!e)return"";try{let n=lt(e,"yyyy-MM-dd",ct);return at(n)?st(n,t):""}catch{return""}}function ge(e){return e.advanced?.format??"HH:mm"}function ne(e){return e.advanced?.format??"MMMM d, yyyy"}var mt=Jt();function Pr(e){if(W(e))return Ca(e)}function Ca(e){if(et(e))return Kt();if(tt(e))return Wt()}function Vr(e){if(se(e))return Fa(e)}function Fa(e){if(yr(e))return Kt();if(Qe(e))return Wt();if(je(e)){let t=e.advanced?.length?.min??mt,n=e.advanced?.length?.max??mt+5;return Ar(Qt(t,mt),Qt(n,mt))}if(xr(e))return Nr();if(Ve(e))return[{value:"true",label:"Yes"},{value:"false",label:"No"}]}function Lr(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return le(e)?{...n,...wa(e)}:se(e)?{...n,...Dr(e,Vr)}:Zt(e)?{...n,...Na(e)}:W(e)?{...n,...Aa(e)}:n}function wa(e){let t=lr(e.type),n={...e,type:t};return{...Ia(e),...Or(e),...ka(n),...br(n)?Mr(n):{},type:t}}function Dr(e,t){let n=t(e);return n?{options:n}:{}}function Aa(e){let t=Dr(e,Pr),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function Na(e){return{...Or(e),...Mr(e)}}function Or(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function ka(e){return nt(e)?Ea(e):{}}function Ia(e){if(ee(e)){let t=ge(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function Mr(e){return zr(e,{min:Zn,max:Xn})}function Ea(e){return zr(e,{min:Xe,max:Ye})}function zr(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 _r(e,t){let n=qt(e);return n||Sr(e,t)}function Pa(e,t){let n=f(t)&&e.name in t?t[e.name]:t,r=Gt(n,e.advanced?.entity),o=S(r)?r:e.defaultValue;return ee(e)&&S(o)?Va(e,o):X(e)&&S(o)?Ma(e,o):o}function Va(e,t){let n=ge(e);return b(t)?kr(t,n):t}function La(e,t,n){return Se(e)&&Array.isArray(n)?{...t,[He]:n}:t}function Da(e,t,n){if(e.required&&!S(n)&&se(e)&&e.advanced?.preselected!==!1&&He in t){let r=t[He];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function Oa(e,t){return Se(e)&&Array.isArray(t)?Ht(t,e.advanced?.options):t}function $r(e,t,n,r){let o=Pa(e,r),i=Array.isArray(n)?Oa(e,n):n,a=La(e,t,i),l=Da(e,a,o);return{commonPropsWithOptions:a,defaultValue:l}}function Br(e,t){return _(e)?{checked:S(t)?t:!1}:W(e)?{value:Array.isArray(t)?t:[]}:X(e)&&b(t)&&S(t)?{value:dt(t,ne(e))}:Ve(e)?{value:S(t)?String(t):""}:{value:t??""}}function Ma(e,t){let n=ne(e);return b(t)?ut(t,n):t}function Ur(e,t){let n=e??t;return n?{"data-format":n}:{}}function Er(e){let t=[];for(let n of e){if(typeof n=="string"){t.push(n);continue}f(n)&&"value"in n&&"label"in n&&b(n.value)&&b(n.label)&&t.push({label:n.label,value:n.value})}return t}function Gr(e){if(!Se(e))return;let t=W(e)?Pr(e):Vr(e);if(Array.isArray(t)){let r=Er(t);return r.length>0?r:void 0}let n=qt(e);if(Array.isArray(n)){let r=Ht(n,e.advanced?.options),o=Er(r);return o.length>0?o:void 0}}function Hr(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 za=/^#\/definition\//;function pt(e=[],t){let n=ft(e,t);return Array.isArray(n)?n.filter($a).sort((r,o)=>Yr(r)-Yr(o)):[]}function ft(e,t,n=new Map,r=new WeakSet){if(!_a(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=>ft(i,t,n,r));if(he in e&&b(e[he])){let i=e[he].replace(za,""),a=z(t,i);return a!==null?ft(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=ft(a,t,n,r);return r.delete(e),n.set(e,o),o}function Xr(e){return Object.entries(e??{})}function Yr(e){return e.order??Number.MAX_VALUE}function _a(e){return e!==void 0&&f(e)&&Object.keys(e).length>0}function $a(e){return Kn in e?!0:Array.isArray(e[Mt])?e[Mt].length>0:!0}function Zr(e,t){let n={};for(let[r,o]of Xr(t))n[`${e}-${r}`]=o;return n}function Ba(e){return Zr(Hn,e)}function Ua(e){return Zr(Yn,e)}function qr(e,t){let n=Ba(e.advanced?.aria);return t&&t.length>0&&(n[Bn]="true",n[$n]=`${e.name}-error`),n}function Wr(e){return Ua(e.advanced?.data)}var Kr={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Jr={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function Qr(e,t=2){return Kr[e&&e in Kr?e:t]}function jr(e){if(e&&e in Jr)return Jr[e]}function Ga(e,t){let n=e.advanced?.length?.min??1;if(t){let r=z(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function eo(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===Ae}function to(e,t){let n=Ga(e,t);return Array.from({length:n},(r,o)=>o)}function no(e){return e.label??e.name}function ro(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 gt(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 R}from"zod";function T(e,t){return e?t?t[e]??e:e:""}var Ha=[[_,oo],[hr,Ya],[nt,qa],[te,Xa],[Ve,oo],[Qe,Ka],[je,Wa],[W,jt],[et,jt],[tt,jt]];function ao(e,t=[],n){let r=R.object(e);return t.length===0?r:el(r,t,n)}function lo(e){let t={},n=R.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function so(e,t){for(let[n,r]of Ha)if(n(e))return r(e,t);return Za(e,t)}function Ya(e,t){let n=R.string().trim();if(e.required){let r=ce(e,t),o=n.min(1,r).pipe(io(e,t));return R.preprocess(i=>M(i)?"":i,o)}return n.pipe(io(e,t)).or(R.literal("")).nullable()}function oo(e,t){let n=R.preprocess(r=>{if(typeof r=="string"){if(r==="true")return!0;if(r==="false")return!1}return r},R.coerce.boolean());return e.required?(_(e)?n=n.refine(r=>r===!0,{message:ce(e,t)}):n=n.refine(r=>typeof r=="boolean",{message:ce(e,t)}),R.preprocess(r=>r===null?!1:r,n)):n.nullable()}function Xa(e,t){let n=R.coerce.string();return e.required?(n=n.min(1,ce(e,t)),R.preprocess(r=>M(r)?"":r,n)):n.or(R.literal("")).nullable()}function Za(e,t){let n=R.coerce.string().trim();return n=co(n,e,t),e.required?(n=uo(n,e,t),R.preprocess(r=>M(r)?"":r,n)):n.nullable()}function qa(e,t){let n=R.coerce.number().int();return n=co(n,e,t),e.required?(n=uo(n,e,t),R.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function Wa(e,t){return e.required?R.preprocess(Ja,R.coerce.number({message:ce(e,t)}).int()):R.coerce.number().int().nullable()}function Ka(e,t){let n=ce(e,t),r=R.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function Ja(e){return e===null||e===""?void 0:e}function io(e,t){let n=e.validation?.email?T(e.validation?.email,t):void 0;return R.email(n)}function co(e,t,n){return e=Qa(e,t,n),e=ja(e,t,n),e}function uo(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,ce(t,n)):e}var Qa=(e,t,n)=>mo(e,t,Xe,n),ja=(e,t,n)=>mo(e,t,Ye,n);function mo(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?T(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function el(e,t=[],n){let r=nl(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:l}of r)if(!tl(o,a,l)){let c=T(l.message,n);i.addIssue({code:"custom",message:c,path:[a]})}})}function tl(e,t,n){let r=n.operator??"eq",o=Pe[r];return o?o(e[t],e[n.field]):!1}function nl(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 fo(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let l=a.operator??"eq",c=Pe[l];if(c&&!c(e,n(a.field))&&a.message){let s=T(a.message,r);o.push(s)}}return o}function ce(e,t){return e.validation?.required?T(e.validation?.required,t):void 0}function jt(e,t){let n=R.array(R.string());return e.required&&(n=n.min(1,ce(e,t))),R.preprocess(r=>M(r)?[]:Array.isArray(r)?r.map(String):[String(r)],n)}function po(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 go(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,Ze);new URL(t,Ze).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(Ze,""):o}catch{return t||e}}function yo(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=go(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 f(t.body)&&f(e?.body)?{...e.body,...t.body}:t.body??e?.body}function al(e,t){return f(t.headers)&&f(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function yt(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 Le(e,t){return!t||!b(e)||M(e)?e:(Array.isArray(t)?t:[t]).reduce((r,o)=>{let i=ll[o];return i?i(r):r},e)}import{jsx as sl}from"react/jsx-runtime";function re(e){return ur(e,(t,n,r)=>sl("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}import{useCallback as cl,useState as ul}from"react";import{jsx as De,jsxs as en}from"react/jsx-runtime";function xo(e){let{fields:t=[]}=e.section,[n,r]=ul(!1),o=cl(()=>r(i=>!i),[]);return en("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:[De("legend",{children:en("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:[De(be,{expanded:n}),De("span",{children:re(e.section.title)})]})}),De(we,{visible:n,children:en("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.section.description&&De("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:re(e.section.description)}),e.group]})})]})}import{jsx as xt,jsxs as bo}from"react/jsx-runtime";function ho(e){let t=bo("div",{className:"flex flex-col",children:[e.title&&xt("legend",{className:"mb-3 font-medium text-zinc-800 dark:text-zinc-200",children:re(e.title)}),e.description&&xt("p",{className:"-mt-2 text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:re(e.description)})]});return e.step?bo("div",{className:"flex flex-row items-start gap-4",children:[xt("div",{className:"bg-primary text-primary-foreground flex size-6 shrink-0 items-center justify-center rounded-full",children:xt("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}import{jsx as vo,jsxs as dl}from"react/jsx-runtime";function bt(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:[vo(ho,{description:e.description,step:e.step,title:e.title}),vo("div",{className:"w-full min-w-0",children:e.children})]})}import{jsx as ml}from"react/jsx-runtime";function ue(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 tn}from"react/jsx-runtime";function So(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=yt(e.style,{compact:e.section.advanced?.compact}),o=tn(ue,{compact:r,children:e.children});return!e.section.title&&!e.section.description?o:e.section.advanced?.collapsible?tn(xo,{section:e.section,group:o}):tn(bt,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),step:n,title:e.section.title,children:o})}import{jsx as To}from"react/jsx-runtime";function Ro(){return To("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:To("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 ye}from"jotai";import{atomFamily as Co}from"jotai-family";import{deepEqual as nn}from"fast-equals";function ht(e,t){let{[t]:n,...r}=e;return r}function fl(e){return Co(t=>ye(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];nn(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,ht(i,t))}))}function pl(e){return ye(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function gl(e){return ye(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)l in i&&(delete i[l],a=!0);a&&n(e,i)})}function yl(e){return ye(null,(t,n,r)=>{let o=t(e);nn(o,r)||n(e,r)})}function Fo(e,t={}){let{merge:n,validateTarget:r}=t;return Co(o=>ye(i=>{let a=i(e)[o];if(a&&n)return n(Object.values(a))},(i,a,l,c)=>{if(r&&!r(l))return;let s=i(e),u={...s[l]??{}};if(c!=null){let d=u[o];(!d||!nn(d,c))&&(u[o]=c,a(e,{...s,[l]:u}))}else o in u&&(delete u[o],Object.keys(u).length===0?a(e,ht(s,l)):a(e,{...s,[l]:u}))}))}function wo(e){return ye(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)l in i&&(delete i[l],a=!0);for(let l in i){let c={...i[l]},s=!1;for(let u of r)u in c&&(delete c[u],s=!0,a=!0);s&&(Object.keys(c).length===0?delete i[l]:i[l]=c)}a&&n(e,i)})}function Te(e={}){let t=ye(e);return{atom:t,clearAll:pl(t),clear:gl(t),bulkReport:yl(t),report:fl(t)}}var Ao=Te(),vt=Ao.atom,St=Ao.report;function bl(e,t){return e.fields.every(n=>No(n,t))}function No(e,t){return t[e.name]?.hidden??e.hidden??!1}function hl(e,t){return K(e)?bl(e,t):No(e,t)}function Tt(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 Oe,jsxs as ko}from"react/jsx-runtime";function Io(e){let t=pt(e.sections,e.definition);return Oe("div",{className:"h-full w-full",children:Oe("form",{noValidate:e.noValidate,action:e.action,children:ko(ue,{children:[t.map((n,r)=>ko(Tt,{fields:n.fields??[],children:[Oe(So,{advanced:e.advanced,section:n,step:r+1,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.advanced?.separator&&Oe(Ro,{})]},`key-${n.id}-${r}`)),e.control&&Oe(yn,{isPending:e.isPending,children:e.control})]})})})}import{jsx as vl}from"react/jsx-runtime";function Eo(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 Po,jsxs as Vo}from"react/jsx-runtime";function Rt(e){let t={context:e.context,env:e.config?.env,value:e.value},r={locale:e.config?.env?.locale},[o,i]=Sl(()=>f(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),a=()=>i(u=>!u),l=f(e.text)&&b(e.text.title)?re(T(Ie(e.text.title,t,r),e.translations)):void 0,c=T(Ie(b(e.text)?e.text:e.text?.message,t,r),e.translations),s=re(c);return s?Vo("div",{className:"flex flex-col gap-2",children:[l&&Vo("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:[l,Po(be,{expanded:o})]}),o&&Po(Eo,{title:c,children:s})]}):null}var Ct=Te(),J=Ct.atom,Lo=Ct.clearAll,Do=Ct.clear,de=Ct.report;import{useAtomValue as Oo}from"jotai";import{jsx as Tl}from"react/jsx-runtime";function Ft(e){let t=Oo(de(e.field.name)),r=Oo(St(e.field.name))?.description??e.field.description;return Tl(Rt,{config:e.config,context:e.context,text:r,translations:e.translations,value:t})}import{twMerge as Rl}from"tailwind-merge";import{jsx as Mo,jsxs as Cl}from"react/jsx-runtime";function zo(e){let t=e.style?.showOptionalLabel??!0,n=te(e.field)||_(e.field);return Cl("label",{"data-slot":"field-label","data-normal":n,className:Rl("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:b(e.children)?e.children:void 0,children:[Mo("span",{className:"[[data-slot=column]_&]:md:truncate",children:e.children}),t&&!e.field.required&&Mo("span",{className:"ml-2 flex-shrink-0 text-sm text-zinc-600 dark:text-zinc-400",children:T("(Optional)",e.translations)})]})}import{jsx as _o,jsxs as Fl}from"react/jsx-runtime";function $o(e){let t={context:e.context,env:e.config?.env},n=Ie(e.field.label,t);return Fl("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[_o(zo,{field:e.field,style:e.config?.style,translations:e.translations,children:T(n,e.translations)}),e.horizontal===!0&&_o(Ft,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}import{Fragment as wl,jsx as Bo,jsxs as Al}from"react/jsx-runtime";function Uo(e){return Al(wl,{children:[e.field.name&&e.field.label&&Bo($o,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&Bo(Ft,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}function wt(e,t){return e?t(e):null}function $(e,t){if(!Array.isArray(t)&&e in t)return t[e];if(!e.includes("."))return;let n=e.split("."),r=t;for(let o of n){if(r==null)return;if(Array.isArray(r)){let i=Number(o);r=Number.isInteger(i)?r[i]:void 0}else if(f(r))r=r[o];else return}return r}import{useCallback as Hl,useEffect as Yl,useRef as Xl}from"react";import{createContext as Nl}from"react";var kl=e=>e,Re=Nl(kl);var rn=Te(),Go=rn.clear,Ho=rn.bulkReport,At=rn.report;import{use as Ol,useCallback as qo,useRef as Me,useTransition as Ml}from"react";import{use as Il,useEffect as El,useEffectEvent as Yo,useMemo as Pl}from"react";function Xo(e,t,n,r){let{name:o}=e,i=Pl(()=>so(e,r),[e,r]),a=Il(Ue),l=Yo(s=>{s&&t(s,i,e)}),c=Yo(s=>{s&&n(s,{keepValue:a})});return El(()=>(l(o),()=>{c(o)}),[o]),i}import{useSetAtom as on,useStore as zl}from"jotai";import{useCallback as Vl,useEffect as Ll,useRef as Dl}from"react";function Zo(){let e=Dl(null);return Ll(()=>()=>{e.current&&clearTimeout(e.current)},[]),Vl((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}function Wo(e,t){let n=zl(),r=e.field.advanced?.entity,o=Zo(),[,i]=Ml(),a=Ol(Re),{setValue:l,shouldSkipOnChange:c,value:s,setSource:u}=t,d=Me(s);d.current=s;let h=Me(e.translations);h.current=e.translations;let m=rt(e.field),C=on(J),w=on(vt),k=on(At(e.field.name)),P=Xo(e.field,e.onMount,e.onUnmount,e.translations),U=T(e.commonProps.placeholder,e.translations),V={...e.commonProps,placeholder:U};function I(y){let[,p]=e.getSchema();return p.find(v=>v.name===y)}function L(y){let p=I(y);if(p&&le(p)){let v=p.advanced?.transform;if(v)return v}}let E=Me(new Map),oe=Me(null);oe.current=y=>{let p=le(e.field)?Le(y,e.field.advanced?.transform):y;l(p),e.onValueChange&&e.onValueChange({name:a(e.field.name),type:e.field.type,value:p})};let x=Me(null);x.current=y=>{let p=e.field.event?.change;p&&dr(p,({sources:v,states:A,values:D})=>{i(()=>{mr(y,v,(G,Q)=>{u(gt(G,e.field.name),Q)}),pr(y,A,(G,Q)=>{let xe=G.map(O=>gt(O,e.field.name));w(O=>Q?xe.reduce((H,fe)=>({...H,[fe]:Q}),O):xe.reduce((H,fe)=>ht(H,fe),O));let Z=Q?.hidden===!0?xe:Q===void 0?xe.filter(O=>I(O)?.hidden===!0):[];Z.length>0&&C(O=>{let H=!1,fe={...O};for(let pe of Object.keys(O))Z.some(j=>pe===j||pe.startsWith(`${j}.`))&&(delete fe[pe],H=!0);return H?fe:O})}),gr(y,D,(G,Q,xe)=>{let Z=gt(G,e.field.name),O=L(Z),H=O?Le(Q,O):Q,pe=n.get(J)[Z];if(xe.onlyIfTargetEmpty&&!M(pe)){let j=E.current.get(Z);if(!Object.is(j,pe))return}if(H!==pe&&(C(j=>({...j,[Z]:H})),E.current.set(Z,H),e.onValueChange)){let j=I(Z);j&&e.onValueChange({name:a(Z),type:j.type,value:H})}})})})};let g=qo(y=>{let v=P.safeParse(y).error?.issues.map(G=>G.message)??[],A=e.field.validation?.custom,D=A?fo(y,A,G=>n.get(de(G)),h.current):[];k([...v,...D])},[e.field.validation?.custom,P,k,n]),F=qo(y=>{if(!m){let p=y.target.value;e.config.validation.blur&&g(p)}},[m,e.config.validation.blur,g]);return{applyChangeEventsRef:x,commonProps:V,entity:r,hasClickable:m,onBlur:F,onValueChangeRef:oe,setTimeoutRef:o,shouldSkipOnChange:c,validated:g,valueRef:d}}import{deepEqual as _l}from"fast-equals";import{useAtom as $l}from"jotai";import{useCallback as Bl,useEffect as Ul,useRef as Gl,useEffectEvent as Ko}from"react";function Jo(e,t){let{name:n}=e,r=Gl(!1),[o,i]=$l(de(n)),a=Ko((s,u=!1)=>{let d=le(e)?Le(s,e.advanced?.transform):s;!u&&!_l(o,d)&&(r.current=!0),i(d)}),l=Ko(s=>{let u=$(n,s);S(u)?a(u):S(e.defaultValue)&&a(e.defaultValue,!0)});Ul(()=>{if(t){l(t);return}S(e.defaultValue)&&a(e.defaultValue,!0)},[t,e.defaultValue]);let c=Bl(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:c,value:o}}import{jsx as Qo}from"react/jsx-runtime";function jo(e){let{useSource:t,useExtraProps:n,getValue:r,shouldSkipChange:o,dispatchChange:i,buildInitialSelected:a,isInitialReady:l}=e.strategies,{setValue:c,shouldSkipOnChange:s,value:u}=Jo(e.field,e.value),{data:d,setSource:h}=t(e.field,e.config,u),{applyChangeEventsRef:m,commonProps:C,entity:w,hasClickable:k,onBlur:P,onValueChangeRef:U,setTimeoutRef:V,validated:I,valueRef:L}=Wo(e,{setValue:c,shouldSkipOnChange:s,value:u,setSource:h}),E=n?.(e.field),oe=Xl(!1),{commonPropsWithOptions:x,defaultValue:g}=$r(e.field,C,d,u),F=Br(e.field,g);Yl(()=>{let p=!!e.value||S(e.field.defaultValue);if(oe.current||!p)return;if(!e.field.event?.change){oe.current=!0;return}let v=e.value?$(e.field.name,e.value):void 0,A=S(v)?v:e.field.defaultValue;if(!S(A)||!l(e.field,g,d))return;oe.current=!0;let D=a(g,d,w);m.current?.(D)},[m,a,d,g,w,l,e.field,e.value]);let y=Hl(p=>{let v=r(p,e.field);o({shouldSkipOnChange:s,hasClickable:k,inputValue:v,valueRef:L})||(U.current?.(v),e.config.validation.change&&I(v),e.field.event?.change&&i({applyChangeEventsRef:m,data:d,entity:w,inputValue:v,setTimeoutRef:V}))},[m,d,i,w,r,k,U,e.config.validation.change,e.field,V,o,s,I,L]);return wt(e.config.inputs[e.field.type],p=>Qo(Uo,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:Qo(p,{...x,...e.ariaAttributes,...e.dataAttributes,...E,...F,onBlur:P,onChange:y})}))}import{jsx as Zl}from"react/jsx-runtime";function Ce(e){return function(n){return Zl(jo,{...n,strategies:e})}}function ei(e){let t=X(e)?ne(e):null,n=ee(e)?ge(e):null;return{dateFormat:t,timeFormat:n}}import{atom as ql}from"jotai";var Wl=e=>{let t=yo(e);if(t)return t},Kl=e=>e.trim()!=="",ti=ql({}),Nt=Fo(ti,{merge:Wl,validateTarget:Kl}),ni=wo(ti);import{useSetAtom as Jl}from"jotai";function kt(e){return{data:null,setSource:Jl(Nt(e.name))}}var ri=Ce({useSource:kt,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=ei(e);return Ur(t,n)},getValue:(e,t)=>{let n=e.target.value,r=ee(t)?ge(t):null;if(r!==null)return Ir(n,r);let o=X(t)?ne(t):null;return o!==null&&dt(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)=>S(t)});import{deepEqual as ts}from"fast-equals";import{useAtom as es}from"jotai";import Ql from"swr";function oi(e=null,t,n=!1){let{data:r,error:o}=Ql(jl(e,t,n),t.fetcher.provider);if(o&&Ee.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return ar(r,e.namespace)}return null}function jl(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!ke(e.url)){if(po(e.url,t.fetcher.remotePatterns))return e;Ee.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function ii(e,t,n){let r=_r(e,n),[o,i]=es(Nt(e.name));return[oi(o??r,t,e.disabled),i]}function ns(e,t,n){let[r,o]=ii(e,t,n);return{data:r,setSource:o}}var ai=Ce({useSource:ns,getValue:e=>e.target.value,shouldSkipChange:({shouldSkipOnChange:e,hasClickable:t,inputValue:n,valueRef:r})=>!t&&e()&&(!n||ts(n,r.current)),dispatchChange:({applyChangeEventsRef:e,data:t,entity:n,inputValue:r})=>{e.current?.(Ut(r,t,n))},buildInitialSelected:(e,t,n)=>Ut(String(e),t,n),isInitialReady:(e,t,n)=>(!Se(e)||!!n&&n.length>0)&&S(t)});var li=Ce({useSource:kt,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)=>S(t)});import{jsx as an}from"react/jsx-runtime";function si(e){return X(e.field)||ee(e.field)?an(ri,{...e}):vr(e.field)?an(li,{...e}):an(ai,{...e})}import{jsx as ci}from"react/jsx-runtime";function ui(e){return!e.errors||e.errors.length===0?null:ci("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)=>ci("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}import{twMerge as rs}from"tailwind-merge";import{jsx as os}from"react/jsx-runtime";function It(e){let t=e.errors&&e.errors.length>0;return os("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Un]:"true"},...e.disabled&&{[Gn]:"true"},"data-orientation":e.orientation,className:rs("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 is}from"tailwind-merge";import{jsx as as}from"react/jsx-runtime";function di(e){return as(It,{...e,orientation:"vertical",className:is("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as ls}from"tailwind-merge";import{jsx as ss}from"react/jsx-runtime";function mi(e){return ss(It,{...e,orientation:"horizontal",className:ls("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 fi}from"react/jsx-runtime";function pi(e){let t=rt(e.field),n=_(e.field),r=Rr(e.field);return e.horizontal?fi(mi,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):fi(di,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function gi(e){if(!e.field.type)return null;let t=Lr(e.field,e.disabled),n=Wr(e.field),r=qr(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 cs}from"tailwind-merge";import{jsx as ln,jsxs as us}from"react/jsx-runtime";function yi(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=yt(e.style,{horizontal:Tr(e.field)}),o=Cr(e.field,e.disabled);return us("div",{className:cs("flex flex-col gap-3",jr(t)),children:[ln(pi,{disabled:o,errors:n,field:e.field,horizontal:r,children:ln(gi,{disabled:o,errors:n,field:e.field,horizontal:r,children:e.children})}),ln(ui,{errors:n,name:e.field.name})]})}import{useAtomValue as ds}from"jotai";import{jsx as ps}from"react/jsx-runtime";function xi(e){return(t,n)=>o=>{let i=ds(e(o.field.name)),a=n(i,o);return a===null?null:ps(t,{...o,...a})}}var ms=xi(At);function bi(e){return ms(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var fs=xi(St);function hi(e){return fs(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var vi=hi(bi(yi));import{twMerge as sn}from"tailwind-merge";import{useState as gs}from"react";import{Fragment as ys,jsx as B,jsxs as me}from"react/jsx-runtime";function Si(e){let t=e.isMultiField||e.collapsed!=null,[n,r]=gs(t?!e.collapsed:!0);function o(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function i(){r(s=>!s)}let a=e.canRemove&&e.onRemove!=null&&B("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:sn("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:B("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),l=me("div",{className:"flex min-w-0 flex-col font-medium text-zinc-700 dark:text-zinc-400",children:[B("span",{className:"text-base",children:e.previewLabel??me(ys,{children:[e.label," ",e.index+1]})}),!n&&e.previewTags&&B("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})]}),c=me("div",{className:sn("flex items-center justify-between gap-2",e.isMultiField&&n&&"mb-3"),children:[t?me("div",{className:"flex min-w-0 grow items-center gap-2",children:[me("button",{"aria-expanded":n,"aria-label":`${n?"Collapse":"Expand"} ${e.label} ${e.index+1}`,className:sn("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:[B(be,{expanded:n}),l]}),!n&&e.previewBadge&&B("div",{className:"ml-auto shrink-0",children:e.previewBadge})]}):l,a]});return e.isMultiField?me("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:[c,B(we,{visible:n,children:B(ue,{children:e.children})})]}):t?me("div",{className:"box-border flex w-full min-w-0 flex-col gap-2",children:[c,B(we,{visible:n,children:B(ue,{children:e.children})})]}):me("div",{className:"box-border flex w-full min-w-0 items-start gap-2",children:[B("div",{className:"flex min-w-0 grow flex-col",children:B(ue,{children:e.children})}),a&&B("div",{className:"shrink-0",children:a})]})}import{Fragment as bs}from"react";import{twMerge as Ti}from"tailwind-merge";import{useAtomValue as xs}from"jotai";function Et(e,t){return xs(de(e))??t}import{jsx as ze,jsxs as Ri}from"react/jsx-runtime";function Ci({className:e,initialValue:t,name:n,options:r,separator:o,staticLabel:i}){let a=Et(n??"",t);if(i===void 0&&r){let s=(Array.isArray(a)?a:a==null||a===""?[]:[a]).filter(u=>u!=null&&u!=="").map(u=>Hr(u,r));return s.length===0?null:ze("div",{className:"flex items-center gap-1.5 overflow-hidden",children:s.map((u,d)=>Ri(bs,{children:[(o||d>0)&&ze("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),ze("span",{"aria-label":u,className:Ti("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:u,children:u})]},`${d}:${u}`))})}if(i===void 0&&(M(a)||f(a)||Array.isArray(a)))return null;let l=i??String(a);return Ri("div",{className:"flex items-center gap-1.5 overflow-hidden",children:[o&&ze("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),ze("span",{"aria-label":l,className:Ti("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:l,children:l})]})}import{useAtomValue as hs}from"jotai";import{useMemo as vs}from"react";function Pt(e,t){let n=hs(J);return vs(()=>{let r=`${e}.`,o={},i=!1;for(let l in n)l.startsWith(r)&&(o[l.slice(r.length)]=n[l],i=!0);let a=t?$(e,t):void 0;return i?f(a)?{...a,...o}:o:a},[n,e,t])}import{useMemo as cn}from"react";import{jsx as Fi}from"react/jsx-runtime";function Ss(e){return typeof e=="string"?{field:e}:e}function un({className:e,fields:t,label:n="Preview",name:r,previews:o,translations:i,value:a}){let l=cn(()=>(Array.isArray(o)?o:[o]).map(Ss),[o]),c=cn(()=>t?ro(t):void 0,[t]),s=Pt(r,a),u=cn(()=>{let d=[];for(let[h,m]of l.entries()){if(m.when!==void 0&&!ve(s,m.when))continue;if(m.label!==void 0){d.push({key:m.field??`label:${m.label}:${h}`,staticLabel:T(m.label,i)});continue}if(m.field===void 0)continue;let C=`${r}.${m.field}`,w=a!=null?$(C,a):void 0,k=c?.[m.field],P=k?Gr(k):void 0;d.push({key:`${h}:${m.field}`,initialValue:w,options:P,previewName:C})}return d},[l,s,r,a,i,c]);return u.length===0?null:Fi("div",{"aria-label":n,className:"flex items-center gap-1.5 overflow-hidden",children:u.map((d,h)=>Fi(Ci,{className:e,initialValue:"initialValue"in d?d.initialValue:void 0,name:"previewName"in d?d.previewName:void 0,options:"options"in d?d.options:void 0,separator:h>0,staticLabel:"staticLabel"in d?d.staticLabel:void 0},d.key))})}import{Fragment as Ts,jsx as Rs}from"react/jsx-runtime";function wi({children:e,initialValue:t,name:n}){let r=Et(n,t),i=M(r)||f(r)||Array.isArray(r)?"":String(r);return Rs(Ts,{children:e(i)})}import{jsx as Vt}from"react/jsx-runtime";function Ai({canRemove:e,children:t,field:n,index:r,isMultiField:o,itemKey:i,label:a,onRemove:l,previewBadge:c,previewLabel:s,previewTags:u,translations:d,value:h}){let m=`${n.name}.${i}`,C=`${a} ${r+1}`,w=Pt(m,h);return Vt(Si,{canRemove:e,collapsed:n.advanced?.collapsed,index:r,isMultiField:o,label:a,onRemove:l,previewLabel:Cs({fallbackLabel:C,liveItemValue:w,name:m,previewLabel:s,translations:d,value:h}),previewBadge:c?Vt(un,{className:"bg-primary text-primary-foreground rounded-md px-1.5 py-0.5 leading-none font-bold uppercase",fields:n.fields,name:m,previews:c,translations:d,value:h}):void 0,previewTags:u?Vt(un,{fields:n.fields,name:m,previews:u,translations:d,value:h}):void 0,children:t})}function Cs({fallbackLabel:e,liveItemValue:t,name:n,previewLabel:r,translations:o,value:i}){if(r===void 0)return;let a=typeof r=="string"?{field:r}:r;if(a.when!==void 0&&!ve(t,a.when))return;if(a.label!==void 0)return T(a.label,o);if(a.field===void 0)return;let l=`${n}.${a.field}`;return Vt(wi,{initialValue:i?$(l,i):void 0,name:l,children:c=>c||e})}import{twMerge as Ps}from"tailwind-merge";import{useSetAtom as Fs,useStore as ws}from"jotai";import{use as As,useCallback as Fe,useEffect as Ns,useEffectEvent as ks,useMemo as Is,useRef as Lt,useState as Es}from"react";function Ni(e,t,n){let r=e.advanced?.length?.min??1,o=e.advanced?.length?.max??1/0,[i,a]=Es(()=>to(e,t)),l=Lt(i),c=Lt(i.length);l.current=i;let s=ws(),u=Fs(J),d=Lt(n);d.current=n;let h=Lt(t),m=Is(()=>{let x=[];for(let g of e.fields)if(K(g))for(let F of g.fields)x.push(F.name);else x.push(g.name);return x},[e.fields]),C=Fe((x,g)=>{let F=Number(x);return Number.isNaN(F)?!1:Number.isInteger(F)&&g>=0&&String(g)!==x},[]),w=As(Re),k=Fe(x=>{let g=`${e.name}.`;if(x.startsWith(g)){let F=x.slice(g.length),y=F.indexOf("."),p=y===-1?F:F.slice(0,y),v=Number(p),A=l.current.indexOf(v);C(p,A)&&(x=`${g}${A}${y===-1?"":F.slice(y)}`)}return w(x)},[e.name,C,w]),P=ks(()=>{let x=h.current;if(!x)return;let g=`${e.name}.`,F={...s.get(J)},y=!1;for(let p of i)for(let v of m){let A=`${g}${p}.${v}`;if(A in F)continue;let D=$(A,x);S(D)&&(F[A]=D,y=!0)}y&&u(F)});Ns(()=>{P()},[]);let U=Fe((x,g)=>{let F=`${e.name}.`,y=h.current;return x.map(p=>{let v={};for(let A of m){let D=`${F}${p}.${A}`,G=g[D];v[A]=G!==void 0?G:y?$(D,y):void 0}return v})},[e.name,m]),V=Fe((x,g)=>{d.current?.({name:k(e.name),value:U(x,g)})},[U,e.name,k]),I=Fe(()=>{if(l.current.length>=o)return;let x=c.current++,g=[...l.current,x];a(g),V(g,s.get(J))},[V,o,s]),L=Fe(x=>{if(l.current.length<=r)return;let g=l.current[x],F=l.current.filter((A,D)=>D!==x),p={...s.get(J)},v=`${e.name}.`;for(let A of m)delete p[`${v}${g}.${A}`];a(F),u(p),V(F,p)},[V,e.name,m,r,u,s]),E=i.length<o,oe=i.length>r;return[i,I,L,E,oe,o,k]}import{jsx as dn,jsxs as Dt}from"react/jsx-runtime";var Vs="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 ki(e){let{field:t,onValueChange:n,translations:r,value:o,children:i}=e,[a,l,c,s,u,d,h]=Ni(t,o,n),m=no(t),C=t.advanced?.action??"Add item",w=d!==1/0,k=eo(t),{label:P,tags:U,badge:V}=t.advanced?.preview??{};return dn(Re.Provider,{value:h,children:Dt("div",{className:"flex w-full flex-col gap-4",children:[a.map((I,L)=>dn(Ai,{canRemove:u,field:t,index:L,isMultiField:k,itemKey:I,label:m,onRemove:c,previewBadge:V,previewLabel:P,previewTags:U,translations:r,value:o,children:i(I)},I)),Dt("button",{"aria-disabled":!s,"aria-label":w?`${C}, ${a.length} of ${d}`:C,className:Ps(Vs,w?"justify-between":"justify-center",!s&&"cursor-not-allowed opacity-50 hover:border-zinc-200 hover:text-zinc-500 dark:hover:border-zinc-800 dark:hover:text-zinc-400"),disabled:!s,onClick:l,type:"button",children:[Dt("span",{className:"flex items-center gap-2",children:[dn("span",{"aria-hidden":"true",className:"text-base leading-none",children:"+"}),C]}),w&&Dt("span",{"aria-hidden":"true",className:"text-zinc-400 tabular-nums dark:text-zinc-500",children:[a.length," / ",d]})]})]})})}import{jsx as Ls}from"react/jsx-runtime";function Ii(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return Ls(bt,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}import{jsx as mn}from"react/jsx-runtime";function Ei({children:e,field:t,onValueChange:n,translations:r,value:o}){return mn(Tt,{container:t,fields:t.fields,children:mn(Ii,{field:t,children:mn(ki,{field:t,onValueChange:n,translations:r,value:o,children:e})})})}import{twMerge as Ds}from"tailwind-merge";import{jsx as Pi,jsxs as Os}from"react/jsx-runtime";function Vi(e){let t=Qr(e.column?.advanced?.cols);return Os("div",{className:"flex w-full flex-col gap-4",children:[Pi("div",{"data-slot":"column",className:Ds("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&Pi(Rt,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}import{Fragment as zs}from"react";import{jsx as Ms}from"react/jsx-runtime";function Li(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>it(n)||ot(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 Ms(_e,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:t,style:e.style,translations:e.translations,value:e.value,children:e.children})}import{jsx as $e,jsxs as _s}from"react/jsx-runtime";function _e(e){let{field:t,list:n}=e.components;return pt(e.fields).map((r,o)=>_s(zs,{children:[K(r)&&$e(Vi,{column:r,config:e.config,context:e.context,translations:e.translations,children:$e(_e,{...e,fields:r.fields})}),it(r)&&$e(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),ot(r)&&$e(n,{field:r,onValueChange:e.onValueChange,translations:e.translations,value:e.value,children:i=>$e(Li,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:r,index:i,style:e.style,translations:e.translations,value:e.value,children:e.children})})]},o))}import{jsx as $s}from"react/jsx-runtime";function Di(e){return n=>$s(_e,{...n,components:e})}var Oi=Di({field:vi,list:Ei});import{useSetAtom as Mi}from"jotai";import{startTransition as zi,useActionState as Bs}from"react";function $i(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},l=Mi(Ho),c=Mi(Lo),s={data:null,error:null,success:!1},[u,d,h]=Bs(async(m,C)=>{let[w,k]=e(),P=ao(w,k,a);if(i===!1)return t?await t(C,P):m;let U=sr(C),V=Gs(U,k),I=P.safeParse(V);if(!I.success){let E=lo(I.error);return zi(()=>{l(E)}),fn(U,{description:T("Please correct the errors and try again.",a),details:[],title:T("There were validation errors submitting the form.",a)})}let L=cr(I.data);if(t)try{let E=await t(L,P);return E.success?(r?.(E.data),o||zi(()=>{c()}),_i(L,o)):fn(L,E.error)}catch(E){return Ee.error("Error executing form action:",E),fn(L,{title:T("An unexpected error occurred submitting the form.",a),details:Us(E,a)})}return _i(I.data,o)},s);return[d,u,h]}function Us(e,t){return e instanceof Error?[e.message]:[T("Unknown error",t)]}function _i(e,t=!1){return{data:t?e:null,error:null,success:!0}}function fn(e,t){return{data:e,error:t,success:!1}}function Gs(e,t){let n={...e};for(let r of t)if(X(r)&&typeof n[r.name]=="string"&&n[r.name]){let o=ut(n[r.name],ne(r));o&&(n[r.name]=o)}return n}import{useCallback as gn,useRef as Ui}from"react";import{useCallback as Hs}from"react";import{useSetAtom as pn}from"jotai";function Bi(){let e=pn(Go),t=pn(Do),n=pn(ni);return Hs((r,o)=>{let i=Array.isArray(r)?r:[r];e(i),n(i),o?.keepValue||t(i)},[e,n,t])}function Gi(){let e=Bi(),t=Ui({}),n=Ui([]),r=gn((a,l,c)=>{a in t.current||(t.current[a]=l,n.current.push(c))},[]),o=gn((a,l)=>{t.current[a]&&(delete t.current[a],n.current=n.current.filter(c=>c.name!==a),e([a],{keepValue:l?.keepValue}))},[e]);return[gn(()=>[t.current,n.current],[]),r,o]}import{Fragment as Ys,jsx as Be,jsxs as Xs}from"react/jsx-runtime";function Hi(e){let t=e.translations?.[e.lang??""],[n,r,o]=Gi(),[i,a,l]=$i(n,e.action,{onSuccess:e.onSuccess,validation:e.config.validation.submit,translations:t}),c=e.config.validation.showError&&!a.success&&a.error,s=a.data??e.value;return Xs(Ys,{children:[c&&wt(e.config.alert,u=>Be("div",{className:"mb-4 w-full",children:Be(u,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),Be(Io,{action:i,advanced:e.advanced,config:e.config,control:e.children,definition:e.definition,isPending:l,noValidate:!0,readOnly:e.readOnly,sections:e.sections,children:({disabled:u,fields:d})=>Be(Oi,{config:e.config,context:e.context,disabled:u,fields:d,onValueChange:e.onValueChange,style:e.config.style,translations:t,value:s,children:h=>Be(si,{...h,config:e.config,context:e.context,getSchema:n,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:s})})})]})}import{Provider as Zs}from"jotai";import{jsx as Yi}from"react/jsx-runtime";function qs(e){return Yi(Zs,{children:Yi(Hi,{...e})})}export{qs as Form};
1
+ import{jsx as Xi}from"react/jsx-runtime";function yn(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return Xi("div",{"data-slot":"field-control",className:"w-full",children:t})}import{jsx as xn}from"react/jsx-runtime";function he(e){return xn("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:xn("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 qi}from"react";import{createContext as Zi}from"react";var Ue=Zi(!1);import{jsx as bn}from"react/jsx-runtime";function we({children:e,visible:t}){return bn(qi,{mode:t?"visible":"hidden",children:bn(Ue,{value:!0,children:e})})}var Ge="input",hn="input/date",vn="input/email",Sn="input/number";var Tn="input/time";var Rn="textarea",Cn="radio",Fn="checkbox",Ot="list";var wn="select",An="select/active",Nn="select/day",kn="select/month",In="select/timezone",En="select/year";var Pn="chips",Vn="chips/day",Ln="chips/month",Ae="column",Dn="description",Mt="fields",On="label",Y="value",He="options",zt="email",Mn="number",zn="password",_n="tel",Ne="text",$n="aria-errormessage",Bn="aria-invalid",Un="data-invalid",Gn="data-readonly",Hn="aria",Yn="data",Ye="max",Xn="maxLength",Xe="min",Zn="minLength",ve="$ref";var qn="source",Wn="state",Ze="http://luna.internal";var Kn="type",Jn={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};import{format as Wi,formatDistanceToNow as jn,formatDuration as Ki,intervalToDuration as Ji,isValid as qe,parseISO as Qi}from"date-fns";import{enUS as er,es as $t}from"date-fns/locale";function f(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function M(e){return e==null||e===""}function q(e){return h(e)||typeof e=="number"||_t(e)}function h(e){return typeof e=="string"}function Qn(e){return f(e)&&"url"in e}function _t(e){return typeof e=="boolean"}var tr={en:er,"en-US":er,es:$t,"es-ES":$t,"es-MX":$t},ji={short:"M/d/yy",medium:"MMM d, yyyy",long:"MMMM d, yyyy",full:"EEEE, MMMM d, yyyy"},ea={ms:1,s:1e3,min:6e4,h:36e5,d:864e5};function nr(e){if(e)return tr[e]??tr[e.split("-")[0]]}function We(e){if(typeof e=="number"&&!Number.isNaN(e))return e;if(h(e)&&e.trim()!==""){let t=Number(e);return Number.isNaN(t)?null:t}return null}function rr(e,t,n){let r=ea[t];if(r===void 0)return String(e);let o=e*r,i=Ji({start:0,end:o});return Ki(i,{locale:n})}function or(e){if(e instanceof Date)return qe(e)?e:null;if(h(e)){let t=Qi(e);if(qe(t))return t;let n=new Date(e);return qe(n)?n:null}if(typeof e=="number"){let t=new Date(e);return qe(t)?t:null}return null}var ta={currency:(e,t,n)=>{let r=We(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=We(e);return r===null?String(e):new Intl.NumberFormat(n.locale,{style:"percent"}).format(r)},number:(e,t,n)=>{let r=We(e);return r===null?String(e):new Intl.NumberFormat(n.locale).format(r)},date:(e,t,n)=>{let r=or(e);if(!r)return String(e);let o=t[0]??"short",i=nr(n.locale);if(o==="relative")return jn(r,{addSuffix:!0,locale:i});let a=ji[o]??o;return Wi(r,a,{locale:i})},duration:(e,t,n)=>{let r=nr(n.locale);if(typeof e=="number")return rr(e,t[0]??"ms",r);if(h(e)){let i=We(e);if(i!==null)return rr(i,t[0]??"ms",r)}let o=or(e);return o?jn(o,{addSuffix:!0,locale:r}):String(e)}};function ir(e,t,n){let r=t.split(":").map(l=>l.trim()).filter(l=>l.length>0);if(r.length===0)return;let[o,...i]=r,a=ta[o];if(a)return a(e,i,n)}var na=/^\d+$/;function Ut(e,t=[],n=Y){return Array.isArray(t)?t.find(r=>{let o=Gt(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}:{value:e}}function Gt(e,t=Y){if(e!=null){if(Array.isArray(e)&&e.every(q)||q(e))return e;if(f(e)){let n=ra(e,t);if(q(n))return n}}}function ra(e,t){let n=z(e,t);if(q(n))return n}function ar(e,t){if(Array.isArray(e))return e;let n=z(e,t);return Array.isArray(n)?n:null}function z(e,t){if(!t||!f(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(f(r)&&o in r)r=r[o];else return null;return r}function Ht(e,t={description:Dn,label:On,value:Y}){return e.map(n=>{if(f(n)){let r=z(n,t.label),o=z(n,t.value);if(q(r)&&q(o)){let i=z(n,t.description);return{label:`${r}`,value:`${o}`,...q(i)&&{description:`${i}`}}}}return n})}function lr(e=Ne){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==Ge?n.trim().toLowerCase():Ne}function sr(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 l=r[a],s=r[a+1],c=na.test(s);l in o||(o[l]=c?[]:{}),o=o[l]}let i=r[r.length-1];o[i]=e[n]}return Bt(t),t}function Bt(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)f(o)&&Bt(o);e[t]=r}else f(n)&&Bt(n)}}var oa=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function ie(e,t={},n={}){if(h(e))return ia(e,t,n);if(Array.isArray(e))return e.map(r=>ie(r,t,n));if(f(e)){let r={};for(let o in e)r[o]=ie(e[o],t,n);return r}return e}function Ie(e,t={},n={}){return ke(e)?ie(e,t,n):e}function ke(e){return h(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>ke(t)):f(e)?Object.values(e).some(t=>ke(t)):!1}function ia(e,t={},n={}){return e.replace(/{([^}]{1,200})}/g,(r,o)=>{let i=String(o).split("|").map(u=>u.trim()),[a,...l]=i;if(!a)return r;let s=a.includes(".")?z(t,a):t[a];if(l.length===0)return q(s)?String(s):r;if(s==null)return r;let c=s;for(let u of l){let d=ir(c,u,{locale:n.locale});if(d===void 0)return r;c=d}return String(c)})}function ur(e,t){if(!h(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=oa.exec(e))!==null;){let[a,l,s]=n,c=n.index;o=!0,c>r&&i.push(e.substring(r,c));let u=t?t(c,s,l):a;i.push(u),r=c+a.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var Ee={error:(...e)=>{Yt()&&!Xt()&&Ke().error("[Luna Form]",...e)},warn:(...e)=>{Yt()&&!Xt()&&Ke().warn("[Luna Form]",...e)},info:(...e)=>{Yt()&&!Xt()&&Ke().info("[Luna Form]",...e)}},Yt=()=>typeof Ke()<"u",Xt=()=>!0,Ke=()=>globalThis.console;function dr(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===Y&&n.push(i),i.action===qn&&r.push(i),i.action===Wn&&o.push(i);t({sources:r,states:o,values:n})}function mr(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(Qn(i)){let a=ie(i.url,e),l=i.body?ie(i.body,e):i.body;n(o,{...i,url:a,body:l})}}}var Pe={eq:ua,gt:pa,gte:ga,in:ma,lt:ya,lte:xa,neq:da,nin:fa},aa=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,fr=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function la(e){return typeof e=="string"&&aa.test(e)}function sa(e){return typeof e=="string"&&fr.test(e)}function ca(e){let t=e.match(fr);if(t){let[,n,r,o,i,a,l]=t;return new Date(Number(o),Number(r)-1,Number(n),Number(i??0),Number(a??0),Number(l??0)).getTime()}return NaN}function ae(e){return la(e)?new Date(e).getTime():sa(e)?ca(e):Number(e)}function ua(e,t){return e===t}function da(e,t){return e!==t}function ma(e,t){return Array.isArray(t)&&t.includes(String(e))}function fa(e,t){return Array.isArray(t)&&!t.includes(String(e))}function pa(e,t){return ae(e)>ae(t)}function ga(e,t){return ae(e)>=ae(t)}function ya(e,t){return ae(e)<ae(t)}function xa(e,t){return ae(e)<=ae(t)}function Se(e,t){if(t===void 0)return!0;if(h(t)){let n=Je(e,Y);return Array.isArray(n)?n.length===1&&n[0]===t:n===t}if(_t(t)){let n=Je(e,Y);return(Array.isArray(n)?n.length>0:!!n)===t}if(Array.isArray(t)){let n=Je(e,Y);return Array.isArray(n)?n.some(r=>t.includes(String(r))):t.includes(String(n))}return ba(e,t)}function ba(e=null,t){let n=Je(e,t.field??Y),{operator:r="eq",value:o}=t,i=Pe[r];return i?i(n,o):!1}function Je(e,t){return f(e)?z(e,t):e}function pr(e=null,t=[],n){for(let r of t){let{target:o,state:i,when:a}=r,l=Array.isArray(o)?o:[o];if(!e){n(l);continue}let s=Se(e,a);n(l,s?i:void 0)}}function gr(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?ie(i,e):void 0,{onlyIfTargetEmpty:r.onlyIfTargetEmpty??!1})}var Ve=e=>N(An)(e),yr=e=>N(Nn)(e),Qe=e=>N(kn)(e),je=e=>N(En)(e),xr=e=>N(In)(e),et=e=>N(Vn)(e),tt=e=>N(Ln)(e),X=N(hn),ee=N(Tn),_=N(Fn),W=N(Pn),te=N(Cn),le=N(Ge),se=N(wn),Zt=N(Rn),br=N(Ne,zt,zn,_n),hr=N(vn,zt),nt=N(Sn,Mn);function rt(e){return te(e)||_(e)}function ot(e){return e.type===Ot}function K(e){return e.type===Ae}function it(e){return e.type!==Ae&&e.type!==Ot}function Te(e){return se(e)||te(e)||W(e)}function vr(e){return le(e)||Zt(e)}function S(e){return e!=null&&e!==""}function N(...e){return t=>{let n=h(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Sr(e,t={}){if(se(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&f(n))return[n]}}function Tr(e){return te(e)||_(e)?!0:e.advanced?.horizontal??!1}function Rr(e){return _(e)?e.advanced?.reverse!==!1:!1}function Cr(e,t){let n=e.readonly??!1;return t||n}function qt(e){if(te(e)||W(e)||se(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||f(t)&&!(ve in t))return t}}import{isValid as at,parse as lt,format as st}from"date-fns";var ha=/^\d+$/,ct=new Date(2e3,0,1),va=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[];function Wt(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function Kt(){return Array.from({length:7},(e,t)=>({value:t.toString(),label:new Date(2e3,0,2+t).toLocaleString("default",{weekday:"long"})}))}function Ar(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 Jt(){return new Date().getFullYear()}function Sa(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function Ta(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return Jn[n]??"Other"}function Ra(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function Fr(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(l=>l.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),a=Ra(r,e);return{offset:i,longName:a}}function wr(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function Nr(){let e=new Date,t=Sa(),n=new Map,r=wr(t),{offset:o,longName:i}=Fr(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let s of va()){if(s===t)continue;let c=wr(s),{offset:u,longName:d}=Fr(s,e),y={value:s,label:`${c} - ${d} (${u})`},m=Ta(s);if(m==="Other")continue;let C=n.get(m);C?C.push(y):n.set(m,[y])}for(let s of n.values())s.sort((c,u)=>c.label.localeCompare(u.label));let l=Array.from(n.entries()).sort(([s],[c])=>s.localeCompare(c)).map(([s,c])=>({label:s,items:c}));return[{label:"Suggested",items:[a]},...l]}function Qt(e,t){if(typeof e=="number")return e;let n=t??Jt(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,a]=o,l=parseInt(a,10);if(!isNaN(l))return i==="+"?n+l:n-l}return n}return ha.test(r)?parseInt(r,10):n}function ut(e,t){if(!e)return"";try{let n=lt(e,t,ct);return at(n)?st(n,"yyyy-MM-dd"):""}catch{return""}}function kr(e,t){if(!e)return"";try{let n=lt(e,t,ct);return at(n)?st(n,"HH:mm:ss"):""}catch{return""}}function Ir(e,t="HH:mm"){if(!e)return"";try{let n=e.split(":").length===3?"HH:mm:ss":"HH:mm",r=lt(e,n,ct);return at(r)?st(r,t):""}catch{return""}}function dt(e,t="MMMM d, yyyy"){if(!e)return"";try{let n=lt(e,"yyyy-MM-dd",ct);return at(n)?st(n,t):""}catch{return""}}function ye(e){return e.advanced?.format??"HH:mm"}function ne(e){return e.advanced?.format??"MMMM d, yyyy"}var mt=Jt();function Pr(e){if(W(e))return Ca(e)}function Ca(e){if(et(e))return Kt();if(tt(e))return Wt()}function Vr(e){if(se(e))return Fa(e)}function Fa(e){if(yr(e))return Kt();if(Qe(e))return Wt();if(je(e)){let t=e.advanced?.length?.min??mt,n=e.advanced?.length?.max??mt+5;return Ar(Qt(t,mt),Qt(n,mt))}if(xr(e))return Nr();if(Ve(e))return[{value:"true",label:"Yes"},{value:"false",label:"No"}]}function Lr(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return le(e)?{...n,...wa(e)}:se(e)?{...n,...Dr(e,Vr)}:Zt(e)?{...n,...Na(e)}:W(e)?{...n,...Aa(e)}:n}function wa(e){let t=lr(e.type),n={...e,type:t};return{...Ia(e),...Or(e),...ka(n),...br(n)?Mr(n):{},type:t}}function Dr(e,t){let n=t(e);return n?{options:n}:{}}function Aa(e){let t=Dr(e,Pr),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function Na(e){return{...Or(e),...Mr(e)}}function Or(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function ka(e){return nt(e)?Ea(e):{}}function Ia(e){if(ee(e)){let t=ye(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function Mr(e){return zr(e,{min:Zn,max:Xn})}function Ea(e){return zr(e,{min:Xe,max:Ye})}function zr(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 _r(e,t){let n=qt(e);return n||Sr(e,t)}function Pa(e,t){let n=f(t)&&e.name in t?t[e.name]:t,r=Gt(n,e.advanced?.entity),o=S(r)?r:e.defaultValue;return ee(e)&&S(o)?Va(e,o):X(e)&&S(o)?Ma(e,o):o}function Va(e,t){let n=ye(e);return h(t)?kr(t,n):t}function La(e,t,n){return Te(e)&&Array.isArray(n)?{...t,[He]:n}:t}function Da(e,t,n){if(e.required&&!S(n)&&se(e)&&e.advanced?.preselected!==!1&&He in t){let r=t[He];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function Oa(e,t){return Te(e)&&Array.isArray(t)?Ht(t,e.advanced?.options):t}function $r(e,t,n,r){let o=Pa(e,r),i=Array.isArray(n)?Oa(e,n):n,a=La(e,t,i),l=Da(e,a,o);return{commonPropsWithOptions:a,defaultValue:l}}function Br(e,t){return _(e)?{checked:S(t)?t:!1}:W(e)?{value:Array.isArray(t)?t:[]}:X(e)&&h(t)&&S(t)?{value:dt(t,ne(e))}:Ve(e)?{value:S(t)?String(t):""}:{value:t??""}}function Ma(e,t){let n=ne(e);return h(t)?ut(t,n):t}function Ur(e,t){let n=e??t;return n?{"data-format":n}:{}}function Er(e){let t=[];for(let n of e){if(typeof n=="string"){t.push(n);continue}f(n)&&"value"in n&&"label"in n&&h(n.value)&&h(n.label)&&t.push({label:n.label,value:n.value})}return t}function Gr(e){if(!Te(e))return;let t=W(e)?Pr(e):Vr(e);if(Array.isArray(t)){let r=Er(t);return r.length>0?r:void 0}let n=qt(e);if(Array.isArray(n)){let r=Ht(n,e.advanced?.options),o=Er(r);return o.length>0?o:void 0}}function Hr(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 za=/^#\/definition\//;function pt(e=[],t){let n=ft(e,t);return Array.isArray(n)?n.filter($a).sort((r,o)=>Yr(r)-Yr(o)):[]}function ft(e,t,n=new Map,r=new WeakSet){if(!_a(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=>ft(i,t,n,r));if(ve in e&&h(e[ve])){let i=e[ve].replace(za,""),a=z(t,i);return a!==null?ft(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=ft(a,t,n,r);return r.delete(e),n.set(e,o),o}function Xr(e){return Object.entries(e??{})}function Yr(e){return e.order??Number.MAX_VALUE}function _a(e){return e!==void 0&&f(e)&&Object.keys(e).length>0}function $a(e){return Kn in e?!0:Array.isArray(e[Mt])?e[Mt].length>0:!0}function Zr(e,t){let n={};for(let[r,o]of Xr(t))n[`${e}-${r}`]=o;return n}function Ba(e){return Zr(Hn,e)}function Ua(e){return Zr(Yn,e)}function qr(e,t){let n=Ba(e.advanced?.aria);return t&&t.length>0&&(n[Bn]="true",n[$n]=`${e.name}-error`),n}function Wr(e){return Ua(e.advanced?.data)}var Kr={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Jr={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function Qr(e,t=2){return Kr[e&&e in Kr?e:t]}function jr(e){if(e&&e in Jr)return Jr[e]}function Ga(e,t){let n=e.advanced?.length?.min??1;if(t){let r=z(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function eo(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===Ae}function to(e,t){let n=Ga(e,t);return Array.from({length:n},(r,o)=>o)}function no(e){return e.label??e.name}function ro(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 gt(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 R}from"zod";function T(e,t){return e?t?t[e]??e:e:""}var Ha=[[_,oo],[hr,Ya],[nt,qa],[te,Xa],[Ve,oo],[Qe,Ka],[je,Wa],[W,jt],[et,jt],[tt,jt]];function ao(e,t=[],n){let r=R.object(e);return t.length===0?r:el(r,t,n)}function lo(e){let t={},n=R.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function so(e,t){for(let[n,r]of Ha)if(n(e))return r(e,t);return Za(e,t)}function Ya(e,t){let n=R.string().trim();if(e.required){let r=ce(e,t),o=n.min(1,r).pipe(io(e,t));return R.preprocess(i=>M(i)?"":i,o)}return n.pipe(io(e,t)).or(R.literal("")).nullable()}function oo(e,t){let n=R.preprocess(r=>{if(typeof r=="string"){if(r==="true")return!0;if(r==="false")return!1}return r},R.coerce.boolean());return e.required?(_(e)?n=n.refine(r=>r===!0,{message:ce(e,t)}):n=n.refine(r=>typeof r=="boolean",{message:ce(e,t)}),R.preprocess(r=>r===null?!1:r,n)):n.nullable()}function Xa(e,t){let n=R.coerce.string();return e.required?(n=n.min(1,ce(e,t)),R.preprocess(r=>M(r)?"":r,n)):n.or(R.literal("")).nullable()}function Za(e,t){let n=R.coerce.string().trim();return n=co(n,e,t),e.required?(n=uo(n,e,t),R.preprocess(r=>M(r)?"":r,n)):n.nullable()}function qa(e,t){let n=R.coerce.number().int();return n=co(n,e,t),e.required?(n=uo(n,e,t),R.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function Wa(e,t){return e.required?R.preprocess(Ja,R.coerce.number({message:ce(e,t)}).int()):R.coerce.number().int().nullable()}function Ka(e,t){let n=ce(e,t),r=R.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function Ja(e){return e===null||e===""?void 0:e}function io(e,t){let n=e.validation?.email?T(e.validation?.email,t):void 0;return R.email(n)}function co(e,t,n){return e=Qa(e,t,n),e=ja(e,t,n),e}function uo(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,ce(t,n)):e}var Qa=(e,t,n)=>mo(e,t,Xe,n),ja=(e,t,n)=>mo(e,t,Ye,n);function mo(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?T(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function el(e,t=[],n){let r=nl(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:l}of r)if(!tl(o,a,l)){let s=T(l.message,n);i.addIssue({code:"custom",message:s,path:[a]})}})}function tl(e,t,n){let r=n.operator??"eq",o=Pe[r];return o?o(e[t],e[n.field]):!1}function nl(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 fo(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let l=a.operator??"eq",s=Pe[l];if(s&&!s(e,n(a.field))&&a.message){let c=T(a.message,r);o.push(c)}}return o}function ce(e,t){return e.validation?.required?T(e.validation?.required,t):void 0}function jt(e,t){let n=R.array(R.string());return e.required&&(n=n.min(1,ce(e,t))),R.preprocess(r=>M(r)?[]:Array.isArray(r)?r.map(String):[String(r)],n)}function po(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 go(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,Ze);new URL(t,Ze).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(Ze,""):o}catch{return t||e}}function yo(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=go(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 f(t.body)&&f(e?.body)?{...e.body,...t.body}:t.body??e?.body}function al(e,t){return f(t.headers)&&f(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function yt(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 Le(e,t){return!t||!h(e)||M(e)?e:(Array.isArray(t)?t:[t]).reduce((r,o)=>{let i=ll[o];return i?i(r):r},e)}import{jsx as sl}from"react/jsx-runtime";function re(e){return ur(e,(t,n,r)=>sl("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}import{useCallback as cl,useState as ul}from"react";import{jsx as De,jsxs as en}from"react/jsx-runtime";function xo(e){let{fields:t=[]}=e.section,[n,r]=ul(!1),o=cl(()=>r(i=>!i),[]);return en("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:[De("legend",{children:en("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:[De(he,{expanded:n}),De("span",{children:re(e.section.title)})]})}),De(we,{visible:n,children:en("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.section.description&&De("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:re(e.section.description)}),e.group]})})]})}import{jsx as xt,jsxs as bo}from"react/jsx-runtime";function ho(e){let t=bo("div",{className:"flex flex-col",children:[e.title&&xt("legend",{className:"mb-3 font-medium text-zinc-800 dark:text-zinc-200",children:re(e.title)}),e.description&&xt("p",{className:"-mt-2 text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:re(e.description)})]});return e.step?bo("div",{className:"flex flex-row items-start gap-4",children:[xt("div",{className:"bg-primary text-primary-foreground flex size-6 shrink-0 items-center justify-center rounded-full",children:xt("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}import{jsx as vo,jsxs as dl}from"react/jsx-runtime";function bt(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:[vo(ho,{description:e.description,step:e.step,title:e.title}),vo("div",{className:"w-full min-w-0",children:e.children})]})}import{jsx as ml}from"react/jsx-runtime";function ue(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 tn}from"react/jsx-runtime";function So(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=yt(e.style,{compact:e.section.advanced?.compact}),o=tn(ue,{compact:r,children:e.children});return!e.section.title&&!e.section.description?o:e.section.advanced?.collapsible?tn(xo,{section:e.section,group:o}):tn(bt,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),step:n,title:e.section.title,children:o})}import{jsx as To}from"react/jsx-runtime";function Ro(){return To("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:To("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 xe}from"jotai";import{atomFamily as Co}from"jotai-family";import{deepEqual as nn}from"fast-equals";function ht(e,t){let{[t]:n,...r}=e;return r}function fl(e){return Co(t=>xe(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];nn(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,ht(i,t))}))}function pl(e){return xe(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function gl(e){return xe(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)l in i&&(delete i[l],a=!0);a&&n(e,i)})}function yl(e){return xe(null,(t,n,r)=>{let o=t(e);nn(o,r)||n(e,r)})}function Fo(e,t={}){let{merge:n,validateTarget:r}=t;return Co(o=>xe(i=>{let a=i(e)[o];if(a&&n)return n(Object.values(a))},(i,a,l,s)=>{if(r&&!r(l))return;let c=i(e),u={...c[l]??{}};if(s!=null){let d=u[o];(!d||!nn(d,s))&&(u[o]=s,a(e,{...c,[l]:u}))}else o in u&&(delete u[o],Object.keys(u).length===0?a(e,ht(c,l)):a(e,{...c,[l]:u}))}))}function wo(e){return xe(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)l in i&&(delete i[l],a=!0);for(let l in i){let s={...i[l]},c=!1;for(let u of r)u in s&&(delete s[u],c=!0,a=!0);c&&(Object.keys(s).length===0?delete i[l]:i[l]=s)}a&&n(e,i)})}function Re(e={}){let t=xe(e);return{atom:t,clearAll:pl(t),clear:gl(t),bulkReport:yl(t),report:fl(t)}}var Ao=Re(),vt=Ao.atom,St=Ao.report;function bl(e,t){return e.fields.every(n=>No(n,t))}function No(e,t){return t[e.name]?.hidden??e.hidden??!1}function hl(e,t){return K(e)?bl(e,t):No(e,t)}function Tt(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 Oe,jsxs as ko}from"react/jsx-runtime";function Io(e){let t=pt(e.sections,e.definition);return Oe("div",{className:"h-full w-full",children:Oe("form",{noValidate:e.noValidate,action:e.action,children:ko(ue,{children:[t.map((n,r)=>ko(Tt,{fields:n.fields??[],children:[Oe(So,{advanced:e.advanced,section:n,step:r+1,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.advanced?.separator&&Oe(Ro,{})]},`key-${n.id}-${r}`)),e.control&&Oe(yn,{isPending:e.isPending,children:e.control})]})})})}import{jsx as vl}from"react/jsx-runtime";function Eo(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 Po,jsxs as Vo}from"react/jsx-runtime";function Rt(e){let t={context:e.context,env:e.config?.env,value:e.value},r={locale:e.config?.env?.locale},[o,i]=Sl(()=>f(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),a=()=>i(u=>!u),l=f(e.text)&&h(e.text.title)?re(T(Ie(e.text.title,t,r),e.translations)):void 0,s=T(Ie(h(e.text)?e.text:e.text?.message,t,r),e.translations),c=re(s);return c?Vo("div",{className:"flex flex-col gap-2",children:[l&&Vo("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:[l,Po(he,{expanded:o})]}),o&&Po(Eo,{title:s,children:c})]}):null}var Ct=Re(),J=Ct.atom,Lo=Ct.clearAll,Do=Ct.clear,de=Ct.report;import{useAtomValue as Oo}from"jotai";import{jsx as Tl}from"react/jsx-runtime";function Ft(e){let t=Oo(de(e.field.name)),r=Oo(St(e.field.name))?.description??e.field.description;return Tl(Rt,{config:e.config,context:e.context,text:r,translations:e.translations,value:t})}import{twMerge as Rl}from"tailwind-merge";import{jsx as Mo,jsxs as Cl}from"react/jsx-runtime";function zo(e){let t=e.style?.showOptionalLabel??!0,n=te(e.field)||_(e.field);return Cl("label",{"data-slot":"field-label","data-normal":n,className:Rl("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:h(e.children)?e.children:void 0,children:[Mo("span",{className:"[[data-slot=column]_&]:md:truncate",children:e.children}),t&&!e.field.required&&Mo("span",{className:"ml-2 flex-shrink-0 text-sm text-zinc-600 dark:text-zinc-400",children:T("(Optional)",e.translations)})]})}import{jsx as _o,jsxs as Fl}from"react/jsx-runtime";function $o(e){let t={context:e.context,env:e.config?.env},n=Ie(e.field.label,t);return Fl("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[_o(zo,{field:e.field,style:e.config?.style,translations:e.translations,children:T(n,e.translations)}),e.horizontal===!0&&_o(Ft,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}import{Fragment as wl,jsx as Bo,jsxs as Al}from"react/jsx-runtime";function Uo(e){return Al(wl,{children:[e.field.name&&e.field.label&&Bo($o,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&Bo(Ft,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}function wt(e,t){return e?t(e):null}function $(e,t){if(!Array.isArray(t)&&e in t)return t[e];if(!e.includes("."))return;let n=e.split("."),r=t;for(let o of n){if(r==null)return;if(Array.isArray(r)){let i=Number(o);r=Number.isInteger(i)?r[i]:void 0}else if(f(r))r=r[o];else return}return r}import{useCallback as Yl,useEffect as Xl,useRef as Zl}from"react";import{createContext as Nl}from"react";var kl=e=>e,me=Nl(kl);var rn=Re(),Go=rn.clear,Ho=rn.bulkReport,At=rn.report;import{use as Ol,useCallback as qo,useRef as Me,useTransition as Ml}from"react";import{use as Il,useEffect as El,useEffectEvent as Yo,useMemo as Pl}from"react";function Xo(e,t,n,r){let{name:o}=e,i=Pl(()=>so(e,r),[e,r]),a=Il(Ue),l=Yo(c=>{c&&t(c,i,e)}),s=Yo(c=>{c&&n(c,{keepValue:a})});return El(()=>(l(o),()=>{s(o)}),[o]),i}import{useSetAtom as on,useStore as zl}from"jotai";import{useCallback as Vl,useEffect as Ll,useRef as Dl}from"react";function Zo(){let e=Dl(null);return Ll(()=>()=>{e.current&&clearTimeout(e.current)},[]),Vl((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}function Wo(e,t){let n=zl(),r=e.field.advanced?.entity,o=Zo(),[,i]=Ml(),a=Ol(me),{setValue:l,shouldSkipOnChange:s,value:c,setSource:u}=t,d=Me(c);d.current=c;let y=Me(e.translations);y.current=e.translations;let m=rt(e.field),C=on(J),w=on(vt),k=on(At(e.field.name)),P=Xo(e.field,e.onMount,e.onUnmount,e.translations),U=T(e.commonProps.placeholder,e.translations),V={...e.commonProps,placeholder:U};function I(x){let[,p]=e.getSchema();return p.find(v=>v.name===x)}function L(x){let p=I(x);if(p&&le(p)){let v=p.advanced?.transform;if(v)return v}}let E=Me(new Map),oe=Me(null);oe.current=x=>{let p=le(e.field)?Le(x,e.field.advanced?.transform):x;l(p),e.onValueChange&&e.onValueChange({name:a(e.field.name),type:e.field.type,value:p})};let b=Me(null);b.current=x=>{let p=e.field.event?.change;p&&dr(p,({sources:v,states:A,values:D})=>{i(()=>{mr(x,v,(G,Q)=>{u(gt(G,e.field.name),Q)}),pr(x,A,(G,Q)=>{let be=G.map(O=>gt(O,e.field.name));w(O=>Q?be.reduce((H,pe)=>({...H,[pe]:Q}),O):be.reduce((H,pe)=>ht(H,pe),O));let Z=Q?.hidden===!0?be:Q===void 0?be.filter(O=>I(O)?.hidden===!0):[];Z.length>0&&C(O=>{let H=!1,pe={...O};for(let ge of Object.keys(O))Z.some(j=>ge===j||ge.startsWith(`${j}.`))&&(delete pe[ge],H=!0);return H?pe:O})}),gr(x,D,(G,Q,be)=>{let Z=gt(G,e.field.name),O=L(Z),H=O?Le(Q,O):Q,ge=n.get(J)[Z];if(be.onlyIfTargetEmpty&&!M(ge)){let j=E.current.get(Z);if(!Object.is(j,ge))return}if(H!==ge&&(C(j=>({...j,[Z]:H})),E.current.set(Z,H),e.onValueChange)){let j=I(Z);j&&e.onValueChange({name:a(Z),type:j.type,value:H})}})})})};let g=qo(x=>{let v=P.safeParse(x).error?.issues.map(G=>G.message)??[],A=e.field.validation?.custom,D=A?fo(x,A,G=>n.get(de(G)),y.current):[];k([...v,...D])},[e.field.validation?.custom,P,k,n]),F=qo(x=>{if(!m){let p=x.target.value;e.config.validation.blur&&g(p)}},[m,e.config.validation.blur,g]);return{applyChangeEventsRef:b,commonProps:V,entity:r,hasClickable:m,onBlur:F,onValueChangeRef:oe,setTimeoutRef:o,shouldSkipOnChange:s,validated:g,valueRef:d}}import{deepEqual as _l}from"fast-equals";import{useAtom as $l}from"jotai";import{use as Bl,useCallback as Ul,useEffect as Gl,useRef as Hl,useEffectEvent as Ko}from"react";function Jo(e,t){let{name:n}=e,r=Hl(!1),[o,i]=$l(de(n)),a=Bl(me),l=Ko((u,d=!1)=>{let y=le(e)?Le(u,e.advanced?.transform):u;!d&&!_l(o,y)&&(r.current=!0),i(y)}),s=Ko(u=>{let d=$(a(n),u);S(d)?l(d):S(e.defaultValue)&&l(e.defaultValue,!0)});Gl(()=>{if(t){s(t);return}S(e.defaultValue)&&l(e.defaultValue,!0)},[t,e.defaultValue]);let c=Ul(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:c,value:o}}import{jsx as Qo}from"react/jsx-runtime";function jo(e){let{useSource:t,useExtraProps:n,getValue:r,shouldSkipChange:o,dispatchChange:i,buildInitialSelected:a,isInitialReady:l}=e.strategies,{setValue:s,shouldSkipOnChange:c,value:u}=Jo(e.field,e.value),{data:d,setSource:y}=t(e.field,e.config,u),{applyChangeEventsRef:m,commonProps:C,entity:w,hasClickable:k,onBlur:P,onValueChangeRef:U,setTimeoutRef:V,validated:I,valueRef:L}=Wo(e,{setValue:s,shouldSkipOnChange:c,value:u,setSource:y}),E=n?.(e.field),oe=Zl(!1),{commonPropsWithOptions:b,defaultValue:g}=$r(e.field,C,d,u),F=Br(e.field,g);Xl(()=>{let p=!!e.value||S(e.field.defaultValue);if(oe.current||!p)return;if(!e.field.event?.change){oe.current=!0;return}let v=e.value?$(e.field.name,e.value):void 0,A=S(v)?v:e.field.defaultValue;if(!S(A)||!l(e.field,g,d))return;oe.current=!0;let D=a(g,d,w);m.current?.(D)},[m,a,d,g,w,l,e.field,e.value]);let x=Yl(p=>{let v=r(p,e.field);o({shouldSkipOnChange:c,hasClickable:k,inputValue:v,valueRef:L})||(U.current?.(v),e.config.validation.change&&I(v),e.field.event?.change&&i({applyChangeEventsRef:m,data:d,entity:w,inputValue:v,setTimeoutRef:V}))},[m,d,i,w,r,k,U,e.config.validation.change,e.field,V,o,c,I,L]);return wt(e.config.inputs[e.field.type],p=>Qo(Uo,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:Qo(p,{...b,...e.ariaAttributes,...e.dataAttributes,...E,...F,onBlur:P,onChange:x})}))}import{jsx as ql}from"react/jsx-runtime";function Ce(e){return function(n){return ql(jo,{...n,strategies:e})}}function ei(e){let t=X(e)?ne(e):null,n=ee(e)?ye(e):null;return{dateFormat:t,timeFormat:n}}import{atom as Wl}from"jotai";var Kl=e=>{let t=yo(e);if(t)return t},Jl=e=>e.trim()!=="",ti=Wl({}),Nt=Fo(ti,{merge:Kl,validateTarget:Jl}),ni=wo(ti);import{useSetAtom as Ql}from"jotai";function kt(e){return{data:null,setSource:Ql(Nt(e.name))}}var ri=Ce({useSource:kt,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=ei(e);return Ur(t,n)},getValue:(e,t)=>{let n=e.target.value,r=ee(t)?ye(t):null;if(r!==null)return Ir(n,r);let o=X(t)?ne(t):null;return o!==null&&dt(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)=>S(t)});import{deepEqual as ns}from"fast-equals";import{useAtom as ts}from"jotai";import jl from"swr";function oi(e=null,t,n=!1){let{data:r,error:o}=jl(es(e,t,n),t.fetcher.provider);if(o&&Ee.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return ar(r,e.namespace)}return null}function es(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!ke(e.url)){if(po(e.url,t.fetcher.remotePatterns))return e;Ee.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function ii(e,t,n){let r=_r(e,n),[o,i]=ts(Nt(e.name));return[oi(o??r,t,e.disabled),i]}function rs(e,t,n){let[r,o]=ii(e,t,n);return{data:r,setSource:o}}var ai=Ce({useSource:rs,getValue:e=>e.target.value,shouldSkipChange:({shouldSkipOnChange:e,hasClickable:t,inputValue:n,valueRef:r})=>!t&&e()&&(!n||ns(n,r.current)),dispatchChange:({applyChangeEventsRef:e,data:t,entity:n,inputValue:r})=>{e.current?.(Ut(r,t,n))},buildInitialSelected:(e,t,n)=>Ut(String(e),t,n),isInitialReady:(e,t,n)=>(!Te(e)||!!n&&n.length>0)&&S(t)});var li=Ce({useSource:kt,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)=>S(t)});import{jsx as an}from"react/jsx-runtime";function si(e){return X(e.field)||ee(e.field)?an(ri,{...e}):vr(e.field)?an(li,{...e}):an(ai,{...e})}import{jsx as ci}from"react/jsx-runtime";function ui(e){return!e.errors||e.errors.length===0?null:ci("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)=>ci("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}import{twMerge as os}from"tailwind-merge";import{jsx as is}from"react/jsx-runtime";function It(e){let t=e.errors&&e.errors.length>0;return is("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Un]:"true"},...e.disabled&&{[Gn]:"true"},"data-orientation":e.orientation,className:os("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 as}from"tailwind-merge";import{jsx as ls}from"react/jsx-runtime";function di(e){return ls(It,{...e,orientation:"vertical",className:as("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as ss}from"tailwind-merge";import{jsx as cs}from"react/jsx-runtime";function mi(e){return cs(It,{...e,orientation:"horizontal",className:ss("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 fi}from"react/jsx-runtime";function pi(e){let t=rt(e.field),n=_(e.field),r=Rr(e.field);return e.horizontal?fi(mi,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):fi(di,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function gi(e){if(!e.field.type)return null;let t=Lr(e.field,e.disabled),n=Wr(e.field),r=qr(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 us}from"tailwind-merge";import{jsx as ln,jsxs as ds}from"react/jsx-runtime";function yi(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=yt(e.style,{horizontal:Tr(e.field)}),o=Cr(e.field,e.disabled);return ds("div",{className:us("flex flex-col gap-3",jr(t)),children:[ln(pi,{disabled:o,errors:n,field:e.field,horizontal:r,children:ln(gi,{disabled:o,errors:n,field:e.field,horizontal:r,children:e.children})}),ln(ui,{errors:n,name:e.field.name})]})}import{useAtomValue as ms}from"jotai";import{jsx as gs}from"react/jsx-runtime";function xi(e){return(t,n)=>o=>{let i=ms(e(o.field.name)),a=n(i,o);return a===null?null:gs(t,{...o,...a})}}var fs=xi(At);function bi(e){return fs(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var ps=xi(St);function hi(e){return ps(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var vi=hi(bi(yi));import{twMerge as sn}from"tailwind-merge";import{useState as ys}from"react";import{Fragment as xs,jsx as B,jsxs as fe}from"react/jsx-runtime";function Si(e){let t=e.isMultiField||e.collapsed!=null,[n,r]=ys(t?!e.collapsed:!0);function o(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function i(){r(c=>!c)}let a=e.canRemove&&e.onRemove!=null&&B("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:sn("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:B("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),l=fe("div",{className:"flex min-w-0 flex-col font-medium text-zinc-700 dark:text-zinc-400",children:[B("span",{className:"text-base",children:e.previewLabel??fe(xs,{children:[e.label," ",e.index+1]})}),!n&&e.previewTags&&B("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})]}),s=fe("div",{className:sn("flex items-center justify-between gap-2",e.isMultiField&&n&&"mb-3"),children:[t?fe("div",{className:"flex min-w-0 grow items-center gap-2",children:[fe("button",{"aria-expanded":n,"aria-label":`${n?"Collapse":"Expand"} ${e.label} ${e.index+1}`,className:sn("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:[B(he,{expanded:n}),l]}),!n&&e.previewBadge&&B("div",{className:"ml-auto shrink-0",children:e.previewBadge})]}):l,a]});return e.isMultiField?fe("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:[s,B(we,{visible:n,children:B(ue,{children:e.children})})]}):t?fe("div",{className:"box-border flex w-full min-w-0 flex-col gap-2",children:[s,B(we,{visible:n,children:B(ue,{children:e.children})})]}):fe("div",{className:"box-border flex w-full min-w-0 items-start gap-2",children:[B("div",{className:"flex min-w-0 grow flex-col",children:B(ue,{children:e.children})}),a&&B("div",{className:"shrink-0",children:a})]})}import{Fragment as hs}from"react";import{twMerge as Ti}from"tailwind-merge";import{useAtomValue as bs}from"jotai";function Et(e,t){return bs(de(e))??t}import{jsx as ze,jsxs as Ri}from"react/jsx-runtime";function Ci({className:e,initialValue:t,name:n,options:r,separator:o,staticLabel:i}){let a=Et(n??"",t);if(i===void 0&&r){let c=(Array.isArray(a)?a:a==null||a===""?[]:[a]).filter(u=>u!=null&&u!=="").map(u=>Hr(u,r));return c.length===0?null:ze("div",{className:"flex items-center gap-1.5 overflow-hidden",children:c.map((u,d)=>Ri(hs,{children:[(o||d>0)&&ze("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),ze("span",{"aria-label":u,className:Ti("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:u,children:u})]},`${d}:${u}`))})}if(i===void 0&&(M(a)||f(a)||Array.isArray(a)))return null;let l=i??String(a);return Ri("div",{className:"flex items-center gap-1.5 overflow-hidden",children:[o&&ze("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),ze("span",{"aria-label":l,className:Ti("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:l,children:l})]})}import{useAtomValue as vs}from"jotai";import{useMemo as Ss}from"react";function Pt(e,t){let n=vs(J);return Ss(()=>{let r=`${e}.`,o={},i=!1;for(let l in n)l.startsWith(r)&&(o[l.slice(r.length)]=n[l],i=!0);let a=t?$(e,t):void 0;return i?f(a)?{...a,...o}:o:a},[n,e,t])}import{useMemo as cn}from"react";import{jsx as Fi}from"react/jsx-runtime";function Ts(e){return typeof e=="string"?{field:e}:e}function un({className:e,fields:t,label:n="Preview",name:r,previews:o,translations:i,value:a}){let l=cn(()=>(Array.isArray(o)?o:[o]).map(Ts),[o]),s=cn(()=>t?ro(t):void 0,[t]),c=Pt(r,a),u=cn(()=>{let d=[];for(let[y,m]of l.entries()){if(m.when!==void 0&&!Se(c,m.when))continue;if(m.label!==void 0){d.push({key:m.field??`label:${m.label}:${y}`,staticLabel:T(m.label,i)});continue}if(m.field===void 0)continue;let C=`${r}.${m.field}`,w=a!=null?$(C,a):void 0,k=s?.[m.field],P=k?Gr(k):void 0;d.push({key:`${y}:${m.field}`,initialValue:w,options:P,previewName:C})}return d},[l,c,r,a,i,s]);return u.length===0?null:Fi("div",{"aria-label":n,className:"flex items-center gap-1.5 overflow-hidden",children:u.map((d,y)=>Fi(Ci,{className:e,initialValue:"initialValue"in d?d.initialValue:void 0,name:"previewName"in d?d.previewName:void 0,options:"options"in d?d.options:void 0,separator:y>0,staticLabel:"staticLabel"in d?d.staticLabel:void 0},d.key))})}import{Fragment as Rs,jsx as Cs}from"react/jsx-runtime";function wi({children:e,initialValue:t,name:n}){let r=Et(n,t),i=M(r)||f(r)||Array.isArray(r)?"":String(r);return Cs(Rs,{children:e(i)})}import{jsx as Vt}from"react/jsx-runtime";function Ai({canRemove:e,children:t,field:n,index:r,isMultiField:o,itemKey:i,label:a,onRemove:l,previewBadge:s,previewLabel:c,previewTags:u,translations:d,value:y}){let m=`${n.name}.${i}`,C=`${a} ${r+1}`,w=Pt(m,y);return Vt(Si,{canRemove:e,collapsed:n.advanced?.collapsed,index:r,isMultiField:o,label:a,onRemove:l,previewLabel:Fs({fallbackLabel:C,liveItemValue:w,name:m,previewLabel:c,translations:d,value:y}),previewBadge:s?Vt(un,{className:"bg-primary text-primary-foreground rounded-md px-1.5 py-0.5 leading-none font-bold uppercase",fields:n.fields,name:m,previews:s,translations:d,value:y}):void 0,previewTags:u?Vt(un,{fields:n.fields,name:m,previews:u,translations:d,value:y}):void 0,children:t})}function Fs({fallbackLabel:e,liveItemValue:t,name:n,previewLabel:r,translations:o,value:i}){if(r===void 0)return;let a=typeof r=="string"?{field:r}:r;if(a.when!==void 0&&!Se(t,a.when))return;if(a.label!==void 0)return T(a.label,o);if(a.field===void 0)return;let l=`${n}.${a.field}`;return Vt(wi,{initialValue:i?$(l,i):void 0,name:l,children:s=>s||e})}import{twMerge as Vs}from"tailwind-merge";import{useSetAtom as ws,useStore as As}from"jotai";import{use as Ns,useCallback as Fe,useEffect as ks,useEffectEvent as Is,useMemo as Es,useRef as Lt,useState as Ps}from"react";function Ni(e,t,n){let r=e.advanced?.length?.min??1,o=e.advanced?.length?.max??1/0,[i,a]=Ps(()=>to(e,t)),l=Lt(i),s=Lt(i.length);l.current=i;let c=As(),u=ws(J),d=Lt(n);d.current=n;let y=Lt(t),m=Es(()=>{let b=[];for(let g of e.fields)if(K(g))for(let F of g.fields)b.push(F.name);else b.push(g.name);return b},[e.fields]),C=Fe((b,g)=>{let F=Number(b);return Number.isNaN(F)?!1:Number.isInteger(F)&&g>=0&&String(g)!==b},[]),w=Ns(me),k=Fe(b=>{let g=`${e.name}.`;if(b.startsWith(g)){let F=b.slice(g.length),x=F.indexOf("."),p=x===-1?F:F.slice(0,x),v=Number(p),A=l.current.indexOf(v);C(p,A)&&(b=`${g}${A}${x===-1?"":F.slice(x)}`)}return w(b)},[e.name,C,w]),P=Is(()=>{let b=y.current;if(!b)return;let g=`${e.name}.`,F={...c.get(J)},x=!1;for(let p of i)for(let v of m){let A=`${g}${p}.${v}`;if(A in F)continue;let D=$(A,b);S(D)&&(F[A]=D,x=!0)}x&&u(F)});ks(()=>{P()},[]);let U=Fe((b,g)=>{let F=`${e.name}.`,x=y.current;return b.map(p=>{let v={};for(let A of m){let D=`${F}${p}.${A}`,G=g[D];v[A]=G!==void 0?G:x?$(D,x):void 0}return v})},[e.name,m]),V=Fe((b,g)=>{d.current?.({name:k(e.name),value:U(b,g)})},[U,e.name,k]),I=Fe(()=>{if(l.current.length>=o)return;let b=s.current++,g=[...l.current,b];a(g),V(g,c.get(J))},[V,o,c]),L=Fe(b=>{if(l.current.length<=r)return;let g=l.current[b],F=l.current.filter((A,D)=>D!==b),p={...c.get(J)},v=`${e.name}.`;for(let A of m)delete p[`${v}${g}.${A}`];a(F),u(p),V(F,p)},[V,e.name,m,r,u,c]),E=i.length<o,oe=i.length>r;return[i,I,L,E,oe,o,k]}import{jsx as dn,jsxs as Dt}from"react/jsx-runtime";var Ls="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 ki(e){let{field:t,onValueChange:n,translations:r,value:o,children:i}=e,[a,l,s,c,u,d,y]=Ni(t,o,n),m=no(t),C=t.advanced?.action??"Add item",w=d!==1/0,k=eo(t),{label:P,tags:U,badge:V}=t.advanced?.preview??{};return dn(me.Provider,{value:y,children:Dt("div",{className:"flex w-full flex-col gap-4",children:[a.map((I,L)=>dn(Ai,{canRemove:u,field:t,index:L,isMultiField:k,itemKey:I,label:m,onRemove:s,previewBadge:V,previewLabel:P,previewTags:U,translations:r,value:o,children:i(I)},I)),Dt("button",{"aria-disabled":!c,"aria-label":w?`${C}, ${a.length} of ${d}`:C,className:Vs(Ls,w?"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:[Dt("span",{className:"flex items-center gap-2",children:[dn("span",{"aria-hidden":"true",className:"text-base leading-none",children:"+"}),C]}),w&&Dt("span",{"aria-hidden":"true",className:"text-zinc-400 tabular-nums dark:text-zinc-500",children:[a.length," / ",d]})]})]})})}import{jsx as Ds}from"react/jsx-runtime";function Ii(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return Ds(bt,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}import{jsx as mn}from"react/jsx-runtime";function Ei({children:e,field:t,onValueChange:n,translations:r,value:o}){return mn(Tt,{container:t,fields:t.fields,children:mn(Ii,{field:t,children:mn(ki,{field:t,onValueChange:n,translations:r,value:o,children:e})})})}import{twMerge as Os}from"tailwind-merge";import{jsx as Pi,jsxs as Ms}from"react/jsx-runtime";function Vi(e){let t=Qr(e.column?.advanced?.cols);return Ms("div",{className:"flex w-full flex-col gap-4",children:[Pi("div",{"data-slot":"column",className:Os("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&Pi(Rt,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}import{Fragment as _s}from"react";import{jsx as zs}from"react/jsx-runtime";function Li(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>it(n)||ot(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 zs(_e,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:t,style:e.style,translations:e.translations,value:e.value,children:e.children})}import{jsx as $e,jsxs as $s}from"react/jsx-runtime";function _e(e){let{field:t,list:n}=e.components;return pt(e.fields).map((r,o)=>$s(_s,{children:[K(r)&&$e(Vi,{column:r,config:e.config,context:e.context,translations:e.translations,children:$e(_e,{...e,fields:r.fields})}),it(r)&&$e(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),ot(r)&&$e(n,{field:r,onValueChange:e.onValueChange,translations:e.translations,value:e.value,children:i=>$e(Li,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:r,index:i,style:e.style,translations:e.translations,value:e.value,children:e.children})})]},o))}import{jsx as Bs}from"react/jsx-runtime";function Di(e){return n=>Bs(_e,{...n,components:e})}var Oi=Di({field:vi,list:Ei});import{useSetAtom as Mi}from"jotai";import{startTransition as zi,useActionState as Us}from"react";function $i(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},l=Mi(Ho),s=Mi(Lo),c={data:null,error:null,success:!1},[u,d,y]=Us(async(m,C)=>{let[w,k]=e(),P=ao(w,k,a);if(i===!1)return t?await t(C,P):m;let U=sr(C),V=Hs(U,k),I=P.safeParse(V);if(!I.success){let E=lo(I.error);return zi(()=>{l(E)}),fn(U,{description:T("Please correct the errors and try again.",a),details:[],title:T("There were validation errors submitting the form.",a)})}let L=cr(I.data);if(t)try{let E=await t(L,P);return E.success?(r?.(E.data),o||zi(()=>{s()}),_i(L,o)):fn(L,E.error)}catch(E){return Ee.error("Error executing form action:",E),fn(L,{title:T("An unexpected error occurred submitting the form.",a),details:Gs(E,a)})}return _i(I.data,o)},c);return[d,u,y]}function Gs(e,t){return e instanceof Error?[e.message]:[T("Unknown error",t)]}function _i(e,t=!1){return{data:t?e:null,error:null,success:!0}}function fn(e,t){return{data:e,error:t,success:!1}}function Hs(e,t){let n={...e};for(let r of t)if(X(r)&&typeof n[r.name]=="string"&&n[r.name]){let o=ut(n[r.name],ne(r));o&&(n[r.name]=o)}return n}import{useCallback as gn,useRef as Ui}from"react";import{useCallback as Ys}from"react";import{useSetAtom as pn}from"jotai";function Bi(){let e=pn(Go),t=pn(Do),n=pn(ni);return Ys((r,o)=>{let i=Array.isArray(r)?r:[r];e(i),n(i),o?.keepValue||t(i)},[e,n,t])}function Gi(){let e=Bi(),t=Ui({}),n=Ui([]),r=gn((a,l,s)=>{a in t.current||(t.current[a]=l,n.current.push(s))},[]),o=gn((a,l)=>{t.current[a]&&(delete t.current[a],n.current=n.current.filter(s=>s.name!==a),e([a],{keepValue:l?.keepValue}))},[e]);return[gn(()=>[t.current,n.current],[]),r,o]}import{Fragment as Xs,jsx as Be,jsxs as Zs}from"react/jsx-runtime";function Hi(e){let t=e.translations?.[e.lang??""],[n,r,o]=Gi(),[i,a,l]=$i(n,e.action,{onSuccess:e.onSuccess,validation:e.config.validation.submit,translations:t}),s=e.config.validation.showError&&!a.success&&a.error,c=a.data??e.value;return Zs(Xs,{children:[s&&wt(e.config.alert,u=>Be("div",{className:"mb-4 w-full",children:Be(u,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),Be(Io,{action:i,advanced:e.advanced,config:e.config,control:e.children,definition:e.definition,isPending:l,noValidate:!0,readOnly:e.readOnly,sections:e.sections,children:({disabled:u,fields:d})=>Be(Oi,{config:e.config,context:e.context,disabled:u,fields:d,onValueChange:e.onValueChange,style:e.config.style,translations:t,value:c,children:y=>Be(si,{...y,config:e.config,context:e.context,getSchema:n,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:c})})})]})}import{Provider as qs}from"jotai";import{jsx as Yi}from"react/jsx-runtime";function Ws(e){return Yi(qs,{children:Yi(Hi,{...e})})}export{Ws as Form};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-luna-form",
3
- "version": "0.0.62",
3
+ "version": "0.0.63",
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.2",
37
- "@luna-form/core": "0.0.62"
37
+ "@luna-form/core": "0.0.63"
38
38
  },
39
39
  "license": "Apache-2.0",
40
40
  "repository": {