react-luna-form 0.0.68 → 0.0.69
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/client/cjs/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var 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&<(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 us={};Pa(us,{Form:()=>wa});module.exports=La(us);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 De(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 Xe({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",Ze="column",or="description",sn="fields",ir="label",W="value",ut="options",cn="email",ar="number",lr="password",sr="tel",qe="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",Oe="$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 g(e)||typeof e=="number"||un(e)}function g(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(g(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(g(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(g(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 if(Array.isArray(r)){let i=Number(o);if(!Number.isInteger(i)||i<0||i>=r.length)return null;r=r[i]}else return null;return r}function pn(e,t={description: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=qe){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==ct?n.trim().toLowerCase():qe}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 xe(e,t={},n={}){if(g(e))return Ba(e,t,n);if(Array.isArray(e))return e.map(r=>xe(r,t,n));if(f(e)){let r={};for(let o in e)r[o]=xe(e[o],t,n);return r}return e}function Ke(e,t={},n={}){return We(e)?xe(e,t,n):e}function We(e){return g(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>We(t)):f(e)?Object.values(e).some(t=>We(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(!g(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 Ie={error:(...e)=>{gn()&&!yn()&>().error("[Luna Form]",...e)},warn:(...e)=>{gn()&&!yn()&>().warn("[Luna Form]",...e)},info:(...e)=>{gn()&&!yn()&>().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=xe(i.url,e),l=i.body?xe(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 be(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 be(e)>be(t)}function Ja(e,t){return be(e)>=be(t)}function Qa(e,t){return be(e)<be(t)}function ja(e,t){return be(e)<=be(t)}function Me(e,t){if(t===void 0)return!0;if(g(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=Me(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?xe(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),se=I(Yn),G=I(qn),ee=I(tr),ce=I(Zn),he=I(ct),te=I(Wn),xn=I(Xn),_r=I(qe,cn,lr,sr),$r=I(Gn,cn),St=I(Hn,ar);function Tt(e){return ce(e)||G(e)}function Rt(e){return e.type===ln}function ne(e){return e.type===Ze}function Ct(e){return e.type!==Ze&&e.type!==ln}function ze(e){return te(e)||ce(e)||ee(e)}function Br(e){return he(e)||xn(e)}function T(e){return e!=null&&e!==""}function I(...e){return t=>{let n=g(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Ur(e,t={}){if(te(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&f(n))return[n]}}function Gr(e){return ce(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(tl(e)){let t=e.source;if(Array.isArray(t)||f(t)&&!(Oe in t))return t}}function tl(e){return ce(e)||ee(e)||te(e)&&!e.disabled}var D=require("date-fns"),nl=/^\d+$/,Ft=new Date(2e3,0,1),rl=()=>"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 ol(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function il(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return vr[n]??"Other"}function al(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function 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=al(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=ol(),n=new Map,r=Zr(t),{offset:o,longName:i}=Xr(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let s of rl()){if(s===t)continue;let c=Zr(s),{offset:u,longName:d}=Xr(s,e),y={value:s,label:`${c} - ${d} (${u})`},m=il(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 nl.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 Ee(e){return e.advanced?.format??"HH:mm"}function ue(e){return e.advanced?.format??"MMMM d, yyyy"}var Nt=Sn();function jr(e){if(ee(e))return ll(e)}function ll(e){if(ht(e))return vn();if(vt(e))return hn()}function eo(e){if(te(e))return sl(e)}function sl(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 he(e)?{...n,...cl(e)}:te(e)?{...n,...no(e,eo)}:xn(e)?{...n,...dl(e)}:ee(e)?{...n,...ul(e)}:n}function cl(e){let t=Nr(e.type),n={...e,type:t};return{...fl(e),...ro(e),...ml(n),..._r(n)?oo(n):{},type:t}}function no(e,t){let n=t(e);return n?{options:n}:{}}function ul(e){let t=no(e,jr),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function dl(e){return{...ro(e),...oo(e)}}function ro(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function ml(e){return St(e)?pl(e):{}}function fl(e){if(se(e)){let t=Ee(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 pl(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 gl(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 se(e)&&T(o)?yl(e,o):K(e)&&T(o)?vl(e,o):o}function yl(e,t){let n=Ee(e);return g(t)?Kr(t,n):t}function xl(e,t,n){return ze(e)&&Array.isArray(n)?{...t,[ut]:n}:t}function bl(e,t,n){if(e.required&&!T(n)&&te(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 hl(e,t){return ze(e)&&Array.isArray(t)?pn(t,e.advanced?.options):t}function lo(e,t,n,r){let o=gl(e,r),i=Array.isArray(n)?hl(e,n):n,a=xl(e,t,i),l=bl(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)&&g(t)&&T(t)?{value:At(t,ue(e))}:Qe(e)?{value:T(t)?String(t):""}:{value:t??""}}function vl(e,t){let n=ue(e);return g(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&&g(n.value)&&g(n.label)&&t.push({label:n.label,value:n.value})}return t}function uo(e){if(!ze(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 Sl=/^#\/definition\//;function It(e=[],t){let n=kt(e,t);return Array.isArray(n)?n.filter(Rl).sort((r,o)=>fo(r)-fo(o)):[]}function kt(e,t,n=new Map,r=new WeakSet){if(!Tl(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(Oe in e&&g(e[Oe])){let i=e[Oe].replace(Sl,""),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 Tl(e){return e!==void 0&&f(e)&&Object.keys(e).length>0}function Rl(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 Cl(e){return go(fr,e)}function Fl(e){return go(pr,e)}function yo(e,t){let n=Cl(e.advanced?.aria);return t&&t.length>0&&(n[ur]="true",n[cr]=`${e.name}-error`),n}function xo(e){return Fl(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 wl(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===Ze}function Ro(e,t){let n=wl(e,t);return Array.from({length:n},(r,o)=>o)}function Co(e){return e.advanced?.title??e.label??e.name}function Fo(e){let t={};for(let n of e)if(ne(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 Al=[[G,wo],[$r,Nl],[St,El],[ce,kl],[Qe,wo],[xt,Vl],[bt,Pl],[ee,Rn],[ht,Rn],[vt,Rn]];function No(e,t=[],n){let r=C.z.object(e);return t.length===0?r:Ml(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 Al)if(n(e))return r(e,t);return Il(e,t)}function Nl(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 kl(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 Il(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 El(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 Pl(e,t){return e.required?C.z.preprocess(Ll,C.z.coerce.number({message:ve(e,t)}).int()):C.z.coerce.number().int().nullable()}function Vl(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 Ll(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=Dl(e,t,n),e=Ol(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 Dl=(e,t,n)=>Vo(e,t,mt,n),Ol=(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 Ml(e,t=[],n){let r=_l(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:l}of r)if(!zl(o,a,l)){let s=R(l.message,n);i.addIssue({code:"custom",message:s,path:[a]})}})}function zl(e,t,n){let r=n.operator??"eq",o=Je[r];return o?o(e[t],e[n.field]):!1}function _l(e){let t=[];for(let n of e){let r=n.validation?.custom;if(!r)continue;let o=Array.isArray(r)?r:[r];for(let i of o)t.push({name:n.name,rule:i})}return t}function 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||!Bl(e))return!0;if(t.length===0)return!1;try{let n=new URL(e),r=n.protocol.replace(":",""),o=n.hostname,i=n.port||$l(r);return t.some(a=>!(a.protocol&&a.protocol!==r||a.hostname&&a.hostname!==o||a.port!==void 0&&String(a.port)!==i))}catch{return!1}}function $l(e){return e==="https"?"443":"80"}function Bl(e){return/^(https?:)?\/\//.test(e)}function 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=Ul(t,n),i=Gl(t,n);return{...t,...n,url:r,body:o,headers:i}})}function Ul(e,t){return f(t.body)&&f(e?.body)?{...e.body,...t.body}:t.body??e?.body}function Gl(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 Hl={uppercase:e=>e.toUpperCase(),lowercase:e=>e.toLowerCase(),"remove-space":e=>e.replace(/\s+/g,""),"remove-accent":e=>e.normalize("NFD").replace(/[\u0300-\u036f]/g,"")};function je(e,t){return!t||!g(e)||B(e)?e:(Array.isArray(t)?t:[t]).reduce((r,o)=>{let i=Hl[o];return i?i(r):r},e)}var zo=require("react/jsx-runtime");function de(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"),re=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,re.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,re.jsx)("legend",{children:(0,re.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,re.jsx)(De,{expanded:n}),(0,re.jsx)("span",{children:de(e.section.title)})]})}),(0,re.jsx)(Xe,{visible:n,children:(0,re.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,re.jsx)("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:de(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:de(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:de(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 Yl(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 Xl(e){return(0,Re.atom)(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function Zl(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 ql(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 _e(e={}){let t=(0,Re.atom)(e);return{atom:t,clearAll:Xl(t),clear:Zl(t),bulkReport:ql(t),report:Yl(t)}}var Xo=_e(),zt=Xo.atom,_t=Xo.report;function Wl(e,t){return e.fields.every(n=>qo(n,t))}function qo(e,t){return t[e.name]?.hidden??e.hidden??!1}function Kl(e,t){return ne(e)?Wl(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=>Kl(r,t))?null:e.children}var me=require("react/jsx-runtime");function Wo(e){let t=It(e.sections,e.definition);return(0,me.jsx)("div",{className:"h-full w-full",children:(0,me.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,me.jsxs)(Te,{children:[t.map((n,r)=>(0,me.jsxs)($t,{fields:n.fields??[],children:[(0,me.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,me.jsx)(Go,{})]},`key-${n.id}-${r}`)),e.control&&(0,me.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)&&g(e.text.title)?de(R(Ke(e.text.title,t,r),e.translations)):void 0,s=R(Ke(g(e.text)?e.text:e.text?.message,t,r),e.translations),c=de(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)(De,{expanded:o})]}),o&&(0,$e.jsx)(Ko,{title:s,children:c})]}):null}var Ut=_e(),oe=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=ce(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:g(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=Ke(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 Pe=require("react/jsx-runtime");function ii(e){return(0,Pe.jsxs)(Pe.Fragment,{children:[e.field.name&&e.field.label&&(0,Pe.jsx)(oi,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&(0,Pe.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 Ge=require("react");var ai=require("react"),Jl=e=>e,Fe=(0,ai.createContext)(Jl);var An=_e(),li=An.clear,si=An.bulkReport,Yt=An.report;var Y=require("react");var fe=require("react");function ci(e,t,n,r){let{name:o}=e,i=(0,fe.useMemo)(()=>Io(e,r),[e,r]),a=(0,fe.use)(st),l=(0,fe.useEffectEvent)(c=>{c&&t(c,i,e)}),s=(0,fe.useEffectEvent)(c=>{c&&n(c,{keepValue:a})});return(0,fe.useEffect)(()=>(l(o),()=>{s(o)}),[o]),i}var Ue=require("jotai");var Be=require("react");function ui(){let e=(0,Be.useRef)(null);return(0,Be.useEffect)(()=>()=>{e.current&&clearTimeout(e.current)},[]),(0,Be.useCallback)((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}function di(e,t){let n=(0,Ue.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,Ue.useSetAtom)(oe),k=(0,Ue.useSetAtom)(zt),E=(0,Ue.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&&he(p)){let v=p.advanced?.transform;if(v)return v}}let L=(0,Y.useRef)(new Map),ye=(0,Y.useRef)(null);ye.current=x=>{let p=he(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:N,values:_})=>{i(()=>{Vr(x,v,(Z,ae)=>{u(Et(Z,e.field.name),ae)}),Dr(x,N,(Z,ae)=>{let Le=Z.map($=>Et($,e.field.name));k($=>ae?Le.reduce((q,Ae)=>({...q,[Ae]:ae}),$):Le.reduce((q,Ae)=>Mt(q,Ae),$));let Q=ae?.hidden===!0?Le:ae===void 0?Le.filter($=>P($)?.hidden===!0):[];Q.length>0&&F($=>{let q=!1,Ae={...$};for(let Ne of Object.keys($))Q.some(le=>Ne===le||Ne.startsWith(`${le}.`))&&(delete Ae[Ne],q=!0);return q?Ae:$})}),Or(x,_,(Z,ae,Le)=>{let Q=Et(Z,e.field.name),$=z(Q),q=$?je(ae,$):ae,Ne=n.get(oe)[Q];if(Le.onlyIfTargetEmpty&&!B(Ne)){let le=L.current.get(Q);if(!Object.is(le,Ne))return}if(q!==Ne&&(F(le=>({...le,[Q]:q})),L.current.set(Q,q),e.onValueChange)){let le=P(Q);le&&e.onValueChange({name:a(Q),type:le.type,value:q})}})})})};let h=(0,Y.useCallback)(x=>{let v=O.safeParse(x).error?.issues.map(Z=>Z.message)??[],N=e.field.validation?.custom,_=N?Lo(x,N,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&&h(p)}},[m,e.config.validation.blur,h]);return{applyChangeEventsRef:b,commonProps:M,entity:r,hasClickable:m,onBlur:w,onValueChangeRef:ye,setTimeoutRef:o,shouldSkipOnChange:s,validated:h,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=he(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:k,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),ye=(0,Ge.useRef)(!1),{commonPropsWithOptions:b,defaultValue:h}=lo(e.field,F,d,u),w=so(e.field,h);(0,Ge.useEffect)(()=>{let p=!!e.value||T(e.field.defaultValue);if(ye.current||!p)return;if(!e.field.event?.change){ye.current=!0;return}let v=e.value?H(e.field.name,e.value):void 0,N=T(v)?v:e.field.defaultValue;if(!T(N)||!l(e.field,N,d))return;ye.current=!0;let _=a(N,d,k);m.current?.(_)},[m,a,d,k,l,e.field,e.value]);let x=(0,Ge.useCallback)(p=>{let v=r(p,e.field);o({field:e.field,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:k,inputValue:v,setTimeoutRef:M}))},[m,d,i,k,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 He(e){return function(n){return(0,yi.jsx)(gi,{...n,strategies:e})}}function xi(e){let t=K(e)?ue(e):null,n=se(e)?Ee(e):null;return{dateFormat:t,timeFormat:n}}var bi=require("jotai");var Ql=e=>{let t=Mo(e);if(t)return t},jl=e=>e.trim()!=="",hi=(0,bi.atom)({}),Xt=Ho(hi,{merge:Ql,validateTarget:jl}),vi=Yo(hi);var Si=require("jotai");function Zt(e){return{data:null,setSource:(0,Si.useSetAtom)(Xt(e.name))}}var Ti=He({useSource:Zt,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=xi(e);return co(t,n)},getValue:(e,t)=>{let n=e.target.value,r=se(t)?Ee(t):null;if(r!==null)return Jr(n,r);let o=K(t)?ue(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)(es(e,t,n),t.fetcher.provider);if(o&&Ie.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&&!We(e.url)){if(Do(e.url,t.fetcher.remotePatterns))return e;Ie.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 ts(e,t,n){let[r,o]=wi(e,t,n);return{data:r,setSource:o}}function ns(e,t){return te(e)&&t===""}var Ni=He({useSource:ts,getValue:e=>e.target.value,shouldSkipChange:({field:e,shouldSkipOnChange:t,hasClickable:n,inputValue:r,valueRef:o})=>ns(e,r)||!n&&t()&&(!r||(0,Ai.deepEqual)(r,o.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)=>(!ze(e)||!!n&&n.length>0)&&T(t)});var ki=He({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)||se(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"),Ye=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,Ye.jsxs)("div",{className:(0,Ui.twMerge)("flex flex-col gap-3",So(t)),children:[(0,Ye.jsx)($i,{disabled:o,errors:n,field:e.field,horizontal:r,children:(0,Ye.jsx)(Bi,{disabled:o,errors:n,field:e.field,horizontal:r,children:e.children})}),(0,Ye.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 rs=Yi(Yt);function Xi(e){return rs(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var os=Yi(_t);function Zi(e){return os(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)(De,{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)(Xe,{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)(Xe,{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 pe=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,pe.jsx)("div",{className:"flex items-center gap-1.5 overflow-hidden",children:c.map((u,d)=>(0,pe.jsxs)(ji.Fragment,{children:[(o||d>0)&&(0,pe.jsx)("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),(0,pe.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,pe.jsxs)("div",{className:"flex items-center gap-1.5 overflow-hidden",children:[o&&(0,pe.jsx)("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),(0,pe.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)(oe);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 is(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(is),[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&&!Me(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}`,k=a!=null?H(F,a):void 0,E=s?.[m.field],O=E?uo(E):void 0;d.push({key:`${y}:${m.field}`,initialValue:k,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}`,k=Qt(m,y);return(0,rt.jsx)(Ji,{canRemove:e,collapsed:n.advanced?.collapsed,index:r,isMultiField:o,label:a,onRemove:l,previewLabel:as({fallbackLabel:F,liveItemValue:k,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 as({fallbackLabel:e,liveItemValue:t,name:n,previewLabel:r,translations:o,value:i}){if(r===void 0)return;let a=g(r)?{field:r}:r;if(a.when!==void 0&&!Me(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)(oe),d=(0,A.useRef)(n);d.current=n;let y=(0,A.useRef)(t),m=(0,A.useMemo)(()=>{let b=[];for(let h of e.fields)if(ne(h))for(let w of h.fields)b.push(w.name);else b.push(h.name);return b},[e.fields]),F=(0,A.useCallback)((b,h)=>{let w=Number(b);return Number.isNaN(w)?!1:Number.isInteger(w)&&h>=0&&String(h)!==b},[]),k=(0,A.use)(Fe),E=(0,A.useCallback)(b=>{let h=`${e.name}.`;if(b.startsWith(h)){let w=b.slice(h.length),x=w.indexOf("."),p=x===-1?w:w.slice(0,x),v=Number(p),N=l.current.indexOf(v);F(p,N)&&(b=`${h}${N}${x===-1?"":w.slice(x)}`)}return k(b)},[e.name,F,k]),O=(0,A.useEffectEvent)(()=>{let b=y.current;if(!b)return;let h=`${e.name}.`,w={...c.get(oe)},x=!1;for(let p of i)for(let v of m){let N=`${h}${p}.${v}`;if(N in w)continue;let _=H(N,b);T(_)&&(w[N]=_,x=!0)}x&&u(w)});(0,A.useEffect)(()=>{O()},[]);let X=(0,A.useCallback)((b,h)=>{let w=`${e.name}.`,x=y.current;return b.map(p=>{let v={};for(let N of m){let _=`${w}${p}.${N}`,Z=h[_];v[N]=Z!==void 0?Z:x?H(_,x):void 0}return v})},[e.name,m]),M=(0,A.useCallback)((b,h)=>{d.current?.({name:E(e.name),value:X(b,h)})},[X,e.name,E]),P=(0,A.useCallback)(()=>{if(l.current.length>=o)return;let b=s.current++,h=[...l.current,b];a(h),M(h,c.get(oe))},[M,o,c]),z=(0,A.useCallback)(b=>{if(l.current.length<=r)return;let h=l.current[b],w=l.current.filter((N,_)=>_!==b),p={...c.get(oe)},v=`${e.name}.`;for(let N of m)delete p[`${v}${h}.${N}`];a(w),u(p),M(w,p)},[M,e.name,m,r,u,c]),L=i.length<o,ye=i.length>r;return[i,P,z,L,ye,o,E]}var ge=require("react/jsx-runtime"),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 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",k=d!==1/0,E=To(t);Ie.info("Label: ",m);let{label:O,tags:X,badge:M}=t.advanced?.preview??{};return(0,ge.jsx)(Fe.Provider,{value:y,children:(0,ge.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[a.map((P,z)=>(0,ge.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,ge.jsxs)("button",{"aria-disabled":!c,"aria-label":k?`${F}, ${a.length} of ${d}`:F,className:(0,aa.twMerge)(ls,k?"justify-between":"justify-center",!c&&"cursor-not-allowed opacity-50 hover:border-zinc-200 hover:text-zinc-500 dark:hover:border-zinc-800 dark:hover:text-zinc-400"),disabled:!c,onClick:l,type:"button",children:[(0,ge.jsxs)("span",{className:"flex items-center gap-2",children:[(0,ge.jsx)("span",{"aria-hidden":"true",className:"text-base leading-none",children:"+"}),F]}),k&&(0,ge.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}`}:ne(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,onValueChange:e.onValueChange,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:[ne(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,onValueChange:e.onValueChange,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[k,E]=e(),O=No(k,E,a);if(i===!1)return t?await t(F,O):m;let X=kr(F),M=cs(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 Ie.error("Error executing form action:",L),Ln(z,{title:R("An unexpected error occurred submitting the form.",a),details:ss(L,a)})}return ha(P.data,o)},c);return[d,u,y]}function ss(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 cs(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],ue(r));o&&(n[r.name]=o)}return n}var Ve=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,Ve.useRef)({}),n=(0,Ve.useRef)([]),r=(0,Ve.useCallback)((a,l,s)=>{a in t.current||(t.current[a]=l,n.current.push(s))},[]),o=(0,Ve.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,Ve.useCallback)(()=>[t.current,n.current],[]),r,o]}var ie=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,ie.jsxs)(ie.Fragment,{children:[s&&Ht(e.config.alert,u=>(0,ie.jsx)("div",{className:"mb-4 w-full",children:(0,ie.jsx)(u,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),(0,ie.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,ie.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,ie.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
|
+
"use strict";var Pa=Object.create;var ut=Object.defineProperty;var Va=Object.getOwnPropertyDescriptor;var La=Object.getOwnPropertyNames;var Da=Object.getPrototypeOf,Oa=Object.prototype.hasOwnProperty;var Ma=(e,t)=>{for(var n in t)ut(e,n,{get:t[n],enumerable:!0})},$n=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of La(t))!Oa.call(e,o)&&o!==n&&ut(e,o,{get:()=>t[o],enumerable:!(r=Va(t,o))||r.enumerable});return e};var za=(e,t,n)=>(n=e!=null?Pa(Da(e)):{},$n(t||!e||!e.__esModule?ut(n,"default",{value:e,enumerable:!0}):n,e)),_a=e=>$n(ut({},"__esModule",{value:!0}),e);var Cl={};Ma(Cl,{Form:()=>Ea});module.exports=_a(Cl);var Hn=require("react/jsx-runtime");function Bn(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,Hn.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var an=require("react/jsx-runtime");function Me(e){return(0,an.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",className:`size-4 transition-transform duration-200 ${e.expanded?"rotate-90":""}`,children:(0,an.jsx)("path",{fillRule:"evenodd",d:"M8.22 5.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.75.75 0 0 1-1.06-1.06L11.94 10 8.22 6.28a.75.75 0 0 1 0-1.06Z",clipRule:"evenodd"})})}var Gn=require("react");var Un=require("react"),ct=(0,Un.createContext)(!1);var sn=require("react/jsx-runtime");function We({children:e,visible:t}){return(0,sn.jsx)(Gn.Activity,{mode:t?"visible":"hidden",children:(0,sn.jsx)(ct,{value:!0,children:e})})}var dt="input",Yn="input/date",Zn="input/email",qn="input/number";var Wn="input/time";var Xn="textarea",Kn="radio",jn="checkbox",ln="list";var Jn="select",Qn="select/active",er="select/day",tr="select/month",nr="select/timezone",rr="select/year";var or="chips",ir="chips/day",ar="chips/month",Xe="column",sr="description",un="fields",lr="label",X="value",ft="options",cn="email",ur="number",cr="password",dr="tel",Ke="text",fr="aria-errormessage",mr="aria-invalid",pr="data-invalid",gr="data-readonly",yr="aria",br="data",mt="max",xr="maxLength",pt="min",hr="minLength",ze="$ref";var vr="source",Sr="state",gt="http://luna.internal";var Rr="type",Tr={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 H(e){return e==null||e===""}function ee(e){return p(e)||typeof e=="number"||dn(e)}function p(e){return typeof e=="string"}function Cr(e){return f(e)&&"url"in e}function dn(e){return typeof e=="boolean"}var Ar={en:ke.enUS,"en-US":ke.enUS,es:ke.es,"es-ES":ke.es,"es-MX":ke.es},$a={short:"M/d/yy",medium:"MMM d, yyyy",long:"MMMM d, yyyy",full:"EEEE, MMMM d, yyyy"},Ba={ms:1,s:1e3,min:6e4,h:36e5,d:864e5};function Fr(e){if(e)return Ar[e]??Ar[e.split("-")[0]]}function yt(e){if(typeof e=="number"&&!Number.isNaN(e))return e;if(p(e)&&e.trim()!==""){let t=Number(e);return Number.isNaN(t)?null:t}return null}function wr(e,t,n){let r=Ba[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 Nr(e){if(e instanceof Date)return(0,V.isValid)(e)?e:null;if(p(e)){let t=(0,V.parseISO)(e);if((0,V.isValid)(t))return t;let n=new Date(e);return(0,V.isValid)(n)?n:null}if(typeof e=="number"){let t=new Date(e);return(0,V.isValid)(t)?t:null}return null}var Ha={currency:(e,t,n)=>{let r=yt(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=yt(e);return r===null?String(e):new Intl.NumberFormat(n.locale,{style:"percent"}).format(r)},number:(e,t,n)=>{let r=yt(e);return r===null?String(e):new Intl.NumberFormat(n.locale).format(r)},date:(e,t,n)=>{let r=Nr(e);if(!r)return String(e);let o=t[0]??"short",i=Fr(n.locale);if(o==="relative")return(0,V.formatDistanceToNow)(r,{addSuffix:!0,locale:i});let a=$a[o]??o;return(0,V.format)(r,a,{locale:i})},duration:(e,t,n)=>{let r=Fr(n.locale);if(typeof e=="number")return wr(e,t[0]??"ms",r);if(p(e)){let i=yt(e);if(i!==null)return wr(i,t[0]??"ms",r)}let o=Nr(e);return o?(0,V.formatDistanceToNow)(o,{addSuffix:!0,locale:r}):String(e)}};function kr(e,t,n){let r=t.split(":").map(s=>s.trim()).filter(s=>s.length>0);if(r.length===0)return;let[o,...i]=r,a=Ha[o];if(a)return a(e,i,n)}var Ua=/^\d+$/;function mn(e,t=[],n=X){return Array.isArray(t)?t.find(r=>{let o=pn(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}:{value:e}}function pn(e,t=X){if(e!=null){if(Array.isArray(e)&&e.every(ee)||ee(e))return e;if(f(e)){let n=Ga(e,t);if(ee(n))return n}}}function Ga(e,t){let n=D(e,t);if(ee(n))return n}function Ir(e,t){if(Array.isArray(e))return e;let n=D(e,t);return Array.isArray(n)?n:null}function D(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 if(Array.isArray(r)){let i=Number(o);if(!Number.isInteger(i)||i<0||i>=r.length)return null;r=r[i]}else return null;return r}function gn(e,t={description:sr,label:lr,value:X}){return e.map(n=>{if(f(n)){let r=D(n,t.label),o=D(n,t.value);if(ee(r)&&ee(o)){let i=D(n,t.description);return{label:`${r}`,value:`${o}`,...ee(i)&&{description:`${i}`}}}}return n})}function Er(e=Ke){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==dt?n.trim().toLowerCase():Ke}function Pr(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 Vr(e){let t={};for(let n of Object.keys(e)){let r=n.split(".");if(r.length===1){t[n]=e[n];continue}let o=t;for(let a=0;a<r.length-1;a++){let s=r[a],l=r[a+1],u=Ua.test(l);s in o||(o[s]=u?[]:{}),o=o[s]}let i=r[r.length-1];o[i]=e[n]}return fn(t),t}function fn(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)&&fn(o);e[t]=r}else f(n)&&fn(n)}}var Ya=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function be(e,t={},n={}){if(p(e))return Za(e,t,n);if(Array.isArray(e))return e.map(r=>be(r,t,n));if(f(e)){let r={};for(let o in e)r[o]=be(e[o],t,n);return r}return e}function je(e,t={},n={}){return Ie(e)?be(e,t,n):e}function Ie(e){return p(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>Ie(t)):f(e)?Object.values(e).some(t=>Ie(t)):!1}function Za(e,t={},n={}){return e.replace(/{([^}]{1,200})}/g,(r,o)=>{let i=String(o).split("|").map(c=>c.trim()),[a,...s]=i;if(!a)return r;let l=a.includes(".")?D(t,a):t[a];if(s.length===0)return ee(l)?String(l):r;if(l==null)return r;let u=l;for(let c of s){let d=kr(u,c,{locale:n.locale});if(d===void 0)return r;u=d}return String(u)})}function Lr(e,t){if(!p(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Ya.exec(e))!==null;){let[a,s,l]=n,u=n.index;o=!0,u>r&&i.push(e.substring(r,u));let c=t?t(u,l,s):a;i.push(c),r=u+a.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var Ee={error:(...e)=>{yn()&&!bn()&&bt().error("[Luna Form]",...e)},warn:(...e)=>{yn()&&!bn()&&bt().warn("[Luna Form]",...e)},info:(...e)=>{yn()&&!bn()&&bt().info("[Luna Form]",...e)}},yn=()=>typeof bt()<"u",bn=()=>!0,bt=()=>globalThis.console;function Dr(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===X&&n.push(i),i.action===vr&&r.push(i),i.action===Sr&&o.push(i);t({sources:r,states:o,values:n})}function Or(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(Cr(i)){let a=be(i.url,e),s=i.body?be(i.body,e):i.body;n(o,{...i,url:a,body:s})}}}var Pe={eq:ja,gt:ts,gte:ns,in:Qa,lt:rs,lte:os,neq:Ja,nin:es,contains:is,exists:as,truthy:ss},qa=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,Mr=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function Wa(e){return typeof e=="string"&&qa.test(e)}function Xa(e){return typeof e=="string"&&Mr.test(e)}function Ka(e){let t=e.match(Mr);if(t){let[,n,r,o,i,a,s]=t;return new Date(Number(o),Number(r)-1,Number(n),Number(i??0),Number(a??0),Number(s??0)).getTime()}return NaN}function xe(e){return Wa(e)?new Date(e).getTime():Xa(e)?Ka(e):Number(e)}function ja(e,t){return e===t}function Ja(e,t){return e!==t}function Qa(e,t){return Array.isArray(t)&&t.includes(String(e))}function es(e,t){return Array.isArray(t)&&!t.includes(String(e))}function ts(e,t){return xe(e)>xe(t)}function ns(e,t){return xe(e)>=xe(t)}function rs(e,t){return xe(e)<xe(t)}function os(e,t){return xe(e)<=xe(t)}function is(e,t){return typeof e=="string"?e.includes(String(t)):Array.isArray(e)?e.map(String).includes(String(t)):!1}function as(e){return Array.isArray(e)?e.length>0:e!=null&&e!==""}function ss(e){return Array.isArray(e)?e.length>0:!!e}function _e(e,t){if(t===void 0)return!0;if(p(t)){let n=xt(e,X);return Array.isArray(n)?n.length===1&&n[0]===t:n===t}if(dn(t)){let n=xt(e,X);return(Array.isArray(n)?n.length>0:!!n)===t}if(Array.isArray(t)){let n=xt(e,X);return Array.isArray(n)?n.some(r=>t.includes(String(r))):t.includes(String(n))}return ls(e,t)}function ls(e=null,t){let n=xt(e,t.field??X),{operator:r="eq",value:o}=t,i=Pe[r];return i?i(n,o):!1}function xt(e,t){return f(e)?D(e,t):e}function zr(e=null,t=[],n){for(let r of t){let{target:o,state:i,when:a}=r,s=Array.isArray(o)?o:[o];if(!e){n(s);continue}let l=_e(e,a);n(s,l?i:void 0)}}function _r(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?be(i,e):void 0,{onlyIfTargetEmpty:r.onlyIfTargetEmpty??!1})}var Je=e=>I(Qn)(e),$r=e=>I(er)(e),ht=e=>I(tr)(e),vt=e=>I(rr)(e),Br=e=>I(nr)(e),St=e=>I(ir)(e),Rt=e=>I(ar)(e),K=I(Yn),le=I(Wn),U=I(jn),te=I(or),ue=I(Kn),he=I(dt),ne=I(Jn),xn=I(Xn),Hr=I(Ke,cn,cr,dr),Ur=I(Zn,cn),Tt=I(qn,ur);function Ct(e){return ue(e)||U(e)}function Qe(e){return e.type===ln}function j(e){return e.type===Xe}function At(e){return e.type!==Xe&&e.type!==ln}function $e(e){return ne(e)||ue(e)||te(e)}function Gr(e){return he(e)||xn(e)}function T(e){return e!=null&&e!==""}function I(...e){return t=>{let n=p(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Yr(e,t={}){if(ne(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&f(n))return[n]}}function Zr(e){return ue(e)||U(e)?!0:e.advanced?.horizontal??!1}function qr(e){return U(e)?e.advanced?.reverse!==!1:!1}function Wr(e,t){let n=e.readonly??!1;return t||n}function hn(e){if(us(e)){let t=e.source;if(Array.isArray(t)||f(t)&&!(ze in t))return t}}function us(e){return ue(e)||te(e)||ne(e)&&!e.disabled}var O=require("date-fns"),cs=/^\d+$/,Ft=new Date(2e3,0,1),ds=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[];function vn(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function Sn(){return Array.from({length:7},(e,t)=>({value:t.toString(),label:new Date(2e3,0,2+t).toLocaleString("default",{weekday:"long"})}))}function jr(e,t){return t>=e?Array.from({length:t-e+1},(n,r)=>{let o=e+r;return{value:o.toString(),label:o.toString()}}):[]}function Rn(){return new Date().getFullYear()}function fs(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function ms(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return Tr[n]??"Other"}function ps(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(s=>s.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),a=ps(r,e);return{offset:i,longName:a}}function Kr(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function Jr(){let e=new Date,t=fs(),n=new Map,r=Kr(t),{offset:o,longName:i}=Xr(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let l of ds()){if(l===t)continue;let u=Kr(l),{offset:c,longName:d}=Xr(l,e),y={value:l,label:`${u} - ${d} (${c})`},m=ms(l);if(m==="Other")continue;let A=n.get(m);A?A.push(y):n.set(m,[y])}for(let l of n.values())l.sort((u,c)=>u.label.localeCompare(c.label));let s=Array.from(n.entries()).sort(([l],[u])=>l.localeCompare(u)).map(([l,u])=>({label:l,items:u}));return[{label:"Suggested",items:[a]},...s]}function Tn(e,t){if(typeof e=="number")return e;let n=t??Rn(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,a]=o,s=parseInt(a,10);if(!isNaN(s))return i==="+"?n+s:n-s}return n}return cs.test(r)?parseInt(r,10):n}function wt(e,t){if(!e)return"";try{let n=(0,O.parse)(e,t,Ft);return(0,O.isValid)(n)?(0,O.format)(n,"yyyy-MM-dd"):""}catch{return""}}function Qr(e,t){if(!e)return"";try{let n=(0,O.parse)(e,t,Ft);return(0,O.isValid)(n)?(0,O.format)(n,"HH:mm:ss"):""}catch{return""}}function eo(e,t="HH:mm"){if(!e)return"";try{let n=e.split(":").length===3?"HH:mm:ss":"HH:mm",r=(0,O.parse)(e,n,Ft);return(0,O.isValid)(r)?(0,O.format)(r,t):""}catch{return""}}function Nt(e,t="MMMM d, yyyy"){if(!e)return"";try{let n=(0,O.parse)(e,"yyyy-MM-dd",Ft);return(0,O.isValid)(n)?(0,O.format)(n,t):""}catch{return""}}function Ve(e){return e.advanced?.format??"HH:mm"}function ce(e){return e.advanced?.format??"MMMM d, yyyy"}var kt=Rn();function no(e){if(te(e))return gs(e)}function gs(e){if(St(e))return Sn();if(Rt(e))return vn()}function ro(e){if(ne(e))return ys(e)}function ys(e){if($r(e))return Sn();if(ht(e))return vn();if(vt(e)){let t=e.advanced?.length?.min??kt,n=e.advanced?.length?.max??kt+5;return jr(Tn(t,kt),Tn(n,kt))}if(Br(e))return Jr();if(Je(e))return[{value:"true",label:"Yes"},{value:"false",label:"No"}]}function oo(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return he(e)?{...n,...bs(e)}:ne(e)?{...n,...io(e,ro)}:xn(e)?{...n,...hs(e)}:te(e)?{...n,...xs(e)}:n}function bs(e){let t=Er(e.type),n={...e,type:t};return{...Ss(e),...ao(e),...vs(n),...Hr(n)?so(n):{},type:t}}function io(e,t){let n=t(e);return n?{options:n}:{}}function xs(e){let t=io(e,no),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function hs(e){return{...ao(e),...so(e)}}function ao(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function vs(e){return Tt(e)?Rs(e):{}}function Ss(e){if(le(e)){let t=Ve(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function so(e){return lo(e,{min:hr,max:xr})}function Rs(e){return lo(e,{min:pt,max:mt})}function lo(e,t){let n={},r=e.advanced?.length;return r&&(r.min!==void 0&&(n[t.min]=r.min),r.max!==void 0&&(n[t.max]=r.max)),n}function uo(e,t){let n=hn(e);return n||Yr(e,t)}function Ts(e,t){let n=f(t)&&e.name in t?t[e.name]:t,r=pn(n,e.advanced?.entity),o=T(r)?r:e.defaultValue;return le(e)&&T(o)?Cs(e,o):K(e)&&T(o)?Ns(e,o):o}function Cs(e,t){let n=Ve(e);return p(t)?Qr(t,n):t}function As(e,t,n){return $e(e)&&Array.isArray(n)?{...t,[ft]:n}:t}function Fs(e,t,n){if(e.required&&!T(n)&&ne(e)&&e.advanced?.preselected!==!1&&ft in t){let r=t[ft];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function ws(e,t){return $e(e)&&Array.isArray(t)?gn(t,e.advanced?.options):t}function co(e,t,n,r){let o=Ts(e,r),i=Array.isArray(n)?ws(e,n):n,a=As(e,t,i),s=Fs(e,a,o);return{commonPropsWithOptions:a,defaultValue:s}}function fo(e,t){return U(e)?{checked:T(t)?t:!1}:te(e)?{value:Array.isArray(t)?t:[]}:K(e)&&p(t)&&T(t)?{value:Nt(t,ce(e))}:Je(e)?{value:T(t)?String(t):""}:{value:t??""}}function Ns(e,t){let n=ce(e);return p(t)?wt(t,n):t}function mo(e,t){let n=e??t;return n?{"data-format":n}:{}}function to(e){let t=[];for(let n of e){if(typeof n=="string"){t.push(n);continue}f(n)&&"value"in n&&"label"in n&&p(n.value)&&p(n.label)&&t.push({label:n.label,value:n.value})}return t}function po(e){if(!$e(e))return;let t=te(e)?no(e):ro(e);if(Array.isArray(t)){let r=to(t);return r.length>0?r:void 0}let n=hn(e);if(Array.isArray(n)){let r=gn(n,e.advanced?.options),o=to(r);return o.length>0?o:void 0}}function go(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 ks=/^#\/definition\//;function Et(e=[],t){let n=It(e,t);return Array.isArray(n)?n.filter(Es).sort((r,o)=>yo(r)-yo(o)):[]}function It(e,t,n=new Map,r=new WeakSet){if(!Is(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=>It(i,t,n,r));if(ze in e&&p(e[ze])){let i=e[ze].replace(ks,""),a=D(t,i);return a!==null?It(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=It(a,t,n,r);return r.delete(e),n.set(e,o),o}function bo(e){return Object.entries(e??{})}function yo(e){return e.order??Number.MAX_VALUE}function Is(e){return e!==void 0&&f(e)&&Object.keys(e).length>0}function Es(e){return Rr in e?!0:Array.isArray(e[un])?e[un].length>0:!0}function xo(e,t){let n={};for(let[r,o]of bo(t))n[`${e}-${r}`]=o;return n}function Ps(e){return xo(yr,e)}function Vs(e){return xo(br,e)}function ho(e,t){let n=Ps(e.advanced?.aria);return t&&t.length>0&&(n[mr]="true",n[fr]=`${e.name}-error`),n}function vo(e){return Vs(e.advanced?.data)}var So={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Ro={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function To(e,t=2){return So[e&&e in So?e:t]}function Co(e){if(e&&e in Ro)return Ro[e]}function Ls(e,t){let n=e.advanced?.length?.min??1;if(t){let r=D(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function Ao(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===Xe}function Fo(e,t){let n=Ls(e,t);return Array.from({length:n},(r,o)=>o)}function wo(e){return e.advanced?.title??e.label??e.name}function No(e){let t={};for(let n of e)if(j(n))for(let r of n.fields)t[r.name]=r;else t[n.name]=n;return t}function Pt(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 S(e,t){return e?t?t[e]??e:e:""}var Ds=[[U,ko],[Ur,Os],[Tt,_s],[ue,Ms],[Je,ko],[ht,Bs],[vt,$s],[te,Cn],[St,Cn],[Rt,Cn]];function Po(e,t=[],n){let r=C.z.object(e);if(t.length===0)return r;let o=Ys(r,t,n);return Ws(o,t,n)}function Vo(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 Lo(e,t){for(let[n,r]of Ds)if(n(e))return r(e,t);return zs(e,t)}function Os(e,t){let n=C.z.string().trim();if(e.required){let r=ve(e,t),o=n.min(1,r).pipe(Io(e,t));return C.z.preprocess(i=>H(i)?"":i,o)}return n.pipe(Io(e,t)).or(C.z.literal("")).nullable()}function ko(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?(U(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 Ms(e,t){let n=C.z.coerce.string();return e.required?(n=n.min(1,ve(e,t)),C.z.preprocess(r=>H(r)?"":r,n)):n.or(C.z.literal("")).nullable()}function zs(e,t){let n=C.z.coerce.string().trim();return n=Do(n,e,t),e.required?(n=Oo(n,e,t),C.z.preprocess(r=>H(r)?"":r,n)):n.nullable()}function _s(e,t){let n=C.z.coerce.number().int();return n=Do(n,e,t),e.required?(n=Oo(n,e,t),C.z.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function $s(e,t){return e.required?C.z.preprocess(Hs,C.z.coerce.number({message:ve(e,t)}).int()):C.z.coerce.number().int().nullable()}function Bs(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 Hs(e){return e===null||e===""?void 0:e}function Io(e,t){let n=e.validation?.email?S(e.validation?.email,t):void 0;return C.z.email(n)}function Do(e,t,n){return e=Us(e,t,n),e=Gs(e,t,n),e}function Oo(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,ve(t,n)):e}var Us=(e,t,n)=>Mo(e,t,pt,n),Gs=(e,t,n)=>Mo(e,t,mt,n);function Mo(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?S(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function Ys(e,t=[],n){let r=qs(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:s}of r)if(!Zs(o,a,s)){let l=S(s.message,n);i.addIssue({code:"custom",message:l,path:[a]})}})}function Zs(e,t,n){let r=n.operator??"eq",o=Pe[r];return o?o(e[t],e[n.field]):!1}function qs(e){let t=[];for(let n of e){let r=n.validation?.custom;if(!r)continue;let o=Array.isArray(r)?r:[r];for(let i of o)t.push({name:n.name,rule:i})}return t}function zo(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let s=a.operator??"eq",l=Pe[s];if(l&&!l(e,n(a.field))&&a.message){let u=S(a.message,r);o.push(u)}}return o}function ve(e,t){return e.validation?.required?S(e.validation?.required,t):void 0}function Cn(e,t){let n=C.z.array(C.z.string());return e.required&&(n=n.min(1,ve(e,t))),C.z.preprocess(r=>H(r)?[]:Array.isArray(r)?r.map(String):[String(r)],n)}function Ws(e,t=[],n){let r=t.filter(Xs);return r.length===0?e:e.superRefine((o,i)=>{let a=f(o)?o:{};for(let s of r)for(let l of Ks(a,s,n))i.addIssue({code:"custom",path:l.path,message:l.message})})}function Xs(e){let t=e.validation;return t!==void 0&&(t.requiredWhen!==void 0||t.pattern!==void 0||t.rules!==void 0)}function Ks(e,t,n){let r=[],o=e[t.name],i=t.validation?.requiredWhen;if(i){let l=(Array.isArray(i)?i:[i]).find(u=>et(e,u));l&&!Fn(o)&&r.push({path:[t.name],message:An(l.message??t.validation?.required,n)})}let a=t.validation?.pattern;a&&!_o(a,o)&&r.push({path:[t.name],message:An(a.message,n)});for(let s of t.validation?.rules??[])js(e,s.when)&&!Js(s,o)&&r.push({path:[t.name],message:An(s.message,n)});return r}function et(e,t){let n=Pe[t.operator??"eq"];return n?n(D(e,t.field),t.value):!1}function js(e,t){if(!t)return!0;if(Array.isArray(t))return t.every(o=>et(e,o));if("field"in t)return et(e,t);let n=t.all?t.all.every(o=>et(e,o)):!0,r=t.any?t.any.some(o=>et(e,o)):!0;return n&&r}function Js(e,t){switch(e.assert){case"required":return Fn(t);case"minItems":return Array.isArray(t)&&t.length>=Number(e.value);case"maxItems":return Array.isArray(t)&&t.length<=Number(e.value);case"min":return Eo(t)>=Number(e.value);case"max":return Eo(t)<=Number(e.value);case"oneOf":return Array.isArray(e.value)&&e.value.map(String).includes(String(t));case"pattern":return Qs(e.value)?_o(e.value,t):!0;default:return!0}}function _o(e,t){return!Fn(t)||typeof t!="string"||e.allowInterpolation&&Ie(t)?!0:new RegExp(e.regex,e.flags).test(t)}function Fn(e){return p(e)?e.trim().length>0:Pe.exists(e,void 0)}function Eo(e){return typeof e=="number"?e:p(e)||Array.isArray(e)?e.length:0}function Qs(e){return f(e)&&"regex"in e}function An(e,t){return e?S(e,t):void 0}function $o(e,t){if(!t||!tl(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||el(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 el(e){return e==="https"?"443":"80"}function tl(e){return/^(https?:)?\/\//.test(e)}function Bo(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,gt);new URL(t,gt).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(gt,""):o}catch{return t||e}}function Ho(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=Bo(t.url,n.url),o=nl(t,n),i=rl(t,n);return{...t,...n,url:r,body:o,headers:i}})}function nl(e,t){return f(t.body)&&f(e?.body)?{...e.body,...t.body}:t.body??e?.body}function rl(e,t){return f(t.headers)&&f(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function Vt(e,t){return{...e,...t}}var ol={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 tt(e,t){return!t||!p(e)||H(e)?e:(Array.isArray(t)?t:[t]).reduce((r,o)=>{let i=ol[o];return i?i(r):r},e)}var Uo=require("react/jsx-runtime");function de(e){return Lr(e,(t,n,r)=>(0,Uo.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}var Lt=require("react"),re=require("react/jsx-runtime");function Go(e){let{fields:t=[]}=e.section,[n,r]=(0,Lt.useState)(!1),o=(0,Lt.useCallback)(()=>r(i=>!i),[]);return(0,re.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,re.jsx)("legend",{children:(0,re.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,re.jsx)(Me,{expanded:n}),(0,re.jsx)("span",{children:de(e.section.title)})]})}),(0,re.jsx)(We,{visible:n,children:(0,re.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,re.jsx)("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:de(e.section.description)}),e.group]})})]})}var Se=require("react/jsx-runtime");function Yo(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:de(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:de(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 nt=require("react/jsx-runtime");function Dt(e){return(0,nt.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,nt.jsx)(Yo,{description:e.description,step:e.step,title:e.title}),(0,nt.jsx)("div",{className:"w-full min-w-0",children:e.children})]})}var Zo=require("react/jsx-runtime");function Re(e){return(0,Zo.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 Ot=require("react/jsx-runtime");function qo(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=Vt(e.style,{compact:e.section.advanced?.compact}),o=(0,Ot.jsx)(Re,{compact:r,children:e.children});return!e.section.title&&!e.section.description?o:e.section.advanced?.collapsible?(0,Ot.jsx)(Go,{section:e.section,group:o}):(0,Ot.jsx)(Dt,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),step:n,title:e.section.title,children:o})}var wn=require("react/jsx-runtime");function Wo(){return(0,wn.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,wn.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-zinc-200 dark:bg-zinc-800"})})}var Jo=require("jotai");var Te=require("jotai"),Nn=require("jotai-family"),Mt=require("fast-equals");function zt(e,t){let{[t]:n,...r}=e;return r}function il(e){return(0,Nn.atomFamily)(t=>(0,Te.atom)(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];(0,Mt.deepEqual)(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,zt(i,t))}))}function al(e){return(0,Te.atom)(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function sl(e){return(0,Te.atom)(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let s of r)s in i&&(delete i[s],a=!0);a&&n(e,i)})}function ll(e){return(0,Te.atom)(null,(t,n,r)=>{let o=t(e);(0,Mt.deepEqual)(o,r)||n(e,r)})}function Xo(e,t={}){let{merge:n,validateTarget:r}=t;return(0,Nn.atomFamily)(o=>(0,Te.atom)(i=>{let a=i(e)[o];if(a&&n)return n(Object.values(a))},(i,a,s,l)=>{if(r&&!r(s))return;let u=i(e),c={...u[s]??{}};if(l!=null){let d=c[o];(!d||!(0,Mt.deepEqual)(d,l))&&(c[o]=l,a(e,{...u,[s]:c}))}else o in c&&(delete c[o],Object.keys(c).length===0?a(e,zt(u,s)):a(e,{...u,[s]:c}))}))}function Ko(e){return(0,Te.atom)(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let s of r)s in i&&(delete i[s],a=!0);for(let s in i){let l={...i[s]},u=!1;for(let c of r)c in l&&(delete l[c],u=!0,a=!0);u&&(Object.keys(l).length===0?delete i[s]:i[s]=l)}a&&n(e,i)})}function Be(e={}){let t=(0,Te.atom)(e);return{atom:t,clearAll:al(t),clear:sl(t),bulkReport:ll(t),report:il(t)}}var jo=Be(),_t=jo.atom,$t=jo.report;function ul(e,t){return e.fields.every(n=>Qo(n,t))}function Qo(e,t){return t[e.name]?.hidden??e.hidden??!1}function cl(e,t){return j(e)?ul(e,t):Qo(e,t)}function Bt(e){let t=(0,Jo.useAtomValue)(_t);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>cl(r,t))?null:e.children}var fe=require("react/jsx-runtime");function ei(e){let t=Et(e.sections,e.definition);return(0,fe.jsx)("div",{className:"h-full w-full",children:(0,fe.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,fe.jsxs)(Re,{children:[t.map((n,r)=>(0,fe.jsxs)(Bt,{fields:n.fields??[],children:[(0,fe.jsx)(qo,{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,fe.jsx)(Wo,{})]},`key-${n.id}-${r}`)),e.control&&(0,fe.jsx)(Bn,{isPending:e.isPending,children:e.control})]})})})}var ni=require("react/jsx-runtime");function ti(e){return(0,ni.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 ri=require("react"),He=require("react/jsx-runtime");function Ht(e){let t={context:e.context,env:e.config?.env,value:e.value},r={locale:e.config?.env?.locale},[o,i]=(0,ri.useState)(()=>f(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),a=()=>i(c=>!c),s=f(e.text)&&p(e.text.title)?de(S(je(e.text.title,t,r),e.translations)):void 0,l=S(je(p(e.text)?e.text:e.text?.message,t,r),e.translations),u=de(l);return u?(0,He.jsxs)("div",{className:"flex flex-col gap-2",children:[s&&(0,He.jsxs)("button",{className:"flex items-center gap-1 text-left text-xs font-medium text-zinc-700 hover:text-zinc-900 dark:text-zinc-300 dark:hover:text-zinc-100",onClick:a,type:"button",children:[s,(0,He.jsx)(Me,{expanded:o})]}),o&&(0,He.jsx)(ti,{title:l,children:u})]}):null}var Ut=Be(),oe=Ut.atom,oi=Ut.clearAll,ii=Ut.clear,Ce=Ut.report;var kn=require("jotai"),ai=require("react/jsx-runtime");function Gt(e){let t=(0,kn.useAtomValue)(Ce(e.field.name)),r=(0,kn.useAtomValue)($t(e.field.name))?.description??e.field.description;return(0,ai.jsx)(Ht,{config:e.config,context:e.context,text:r,translations:e.translations,value:t})}var si=require("tailwind-merge"),rt=require("react/jsx-runtime");function li(e){let t=e.style?.showOptionalLabel??!0,n=ue(e.field)||U(e.field);return(0,rt.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,si.twMerge)("flex w-fit items-center text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal [[data-slot=column]_&]:md:w-full","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,title:p(e.children)?e.children:void 0,children:[(0,rt.jsx)("span",{className:"[[data-slot=column]_&]:md:truncate",children:e.children}),t&&!e.field.required&&(0,rt.jsx)("span",{className:"ml-2 flex-shrink-0 text-sm text-zinc-600 dark:text-zinc-400",children:S("(Optional)",e.translations)})]})}var ot=require("react/jsx-runtime");function ui(e){let t={context:e.context,env:e.config?.env},n=je(e.field.label,t);return(0,ot.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,ot.jsx)(li,{field:e.field,style:e.config?.style,translations:e.translations,children:S(n,e.translations)}),e.horizontal===!0&&(0,ot.jsx)(Gt,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}var Le=require("react/jsx-runtime");function ci(e){return(0,Le.jsxs)(Le.Fragment,{children:[e.field.name&&e.field.label&&(0,Le.jsx)(ui,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&(0,Le.jsx)(Gt,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}function Yt(e,t){return e?t(e):null}function G(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 Ye=require("react");var di=require("react"),dl=e=>e,Ae=(0,di.createContext)(dl);var In=Be(),fi=In.clear,mi=In.bulkReport,Zt=In.report;var Y=require("react");var me=require("react");function pi(e,t,n,r){let{name:o}=e,i=(0,me.useMemo)(()=>Lo(e,r),[e,r]),a=(0,me.use)(ct),s=(0,me.useEffectEvent)(u=>{u&&t(u,i,e)}),l=(0,me.useEffectEvent)(u=>{u&&n(u,{keepValue:a})});return(0,me.useEffect)(()=>(s(o),()=>{l(o)}),[o]),i}var Ge=require("jotai");var Ue=require("react");function gi(){let e=(0,Ue.useRef)(null);return(0,Ue.useEffect)(()=>()=>{e.current&&clearTimeout(e.current)},[]),(0,Ue.useCallback)((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}function yi(e,t){let n=(0,Ge.useStore)(),r=e.field.advanced?.entity,o=gi(),[,i]=(0,Y.useTransition)(),a=(0,Y.use)(Ae),{setValue:s,shouldSkipOnChange:l,value:u,setSource:c}=t,d=(0,Y.useRef)(u);d.current=u;let y=(0,Y.useRef)(e.translations);y.current=e.translations;let m=Ct(e.field),A=(0,Ge.useSetAtom)(oe),k=(0,Ge.useSetAtom)(_t),E=(0,Ge.useSetAtom)(Zt(e.field.name)),M=pi(e.field,e.onMount,e.onUnmount,e.translations),Z=S(e.commonProps.placeholder,e.translations),z={...e.commonProps,placeholder:Z};function P(b){let[,g]=e.getSchema();return g.find(v=>v.name===b)}function _(b){let g=P(b);if(g&&he(g)){let v=g.advanced?.transform;if(v)return v}}let L=(0,Y.useRef)(new Map),ye=(0,Y.useRef)(null);ye.current=b=>{let g=he(e.field)?tt(b,e.field.advanced?.transform):b;s(g),e.onValueChange&&e.onValueChange({name:a(e.field.name),type:e.field.type,value:g})};let x=(0,Y.useRef)(null);x.current=b=>{let g=e.field.event?.change;g&&Dr(g,({sources:v,states:N,values:$})=>{i(()=>{Or(b,v,(q,ae)=>{c(Pt(q,e.field.name),ae)}),zr(b,N,(q,ae)=>{let Oe=q.map(B=>Pt(B,e.field.name));k(B=>ae?Oe.reduce((W,we)=>({...W,[we]:ae}),B):Oe.reduce((W,we)=>zt(W,we),B));let Q=ae?.hidden===!0?Oe:ae===void 0?Oe.filter(B=>P(B)?.hidden===!0):[];Q.length>0&&A(B=>{let W=!1,we={...B};for(let Ne of Object.keys(B))Q.some(se=>Ne===se||Ne.startsWith(`${se}.`))&&(delete we[Ne],W=!0);return W?we:B})}),_r(b,$,(q,ae,Oe)=>{let Q=Pt(q,e.field.name),B=_(Q),W=B?tt(ae,B):ae,Ne=n.get(oe)[Q];if(Oe.onlyIfTargetEmpty&&!H(Ne)){let se=L.current.get(Q);if(!Object.is(se,Ne))return}if(W!==Ne&&(A(se=>({...se,[Q]:W})),L.current.set(Q,W),e.onValueChange)){let se=P(Q);se&&e.onValueChange({name:a(Q),type:se.type,value:W})}})})})};let h=(0,Y.useCallback)(b=>{let v=M.safeParse(b).error?.issues.map(q=>q.message)??[],N=e.field.validation?.custom,$=N?zo(b,N,q=>n.get(Ce(q)),y.current):[];E([...v,...$])},[e.field.validation?.custom,M,E,n]),F=(0,Y.useCallback)(b=>{if(!m){let g=b.target.value;e.config.validation.blur&&h(g)}},[m,e.config.validation.blur,h]);return{applyChangeEventsRef:x,commonProps:z,entity:r,hasClickable:m,onBlur:F,onValueChangeRef:ye,setTimeoutRef:o,shouldSkipOnChange:l,validated:h,valueRef:d}}var bi=require("fast-equals");var xi=require("jotai"),J=require("react");function hi(e,t){let{name:n}=e,r=(0,J.useRef)(!1),[o,i]=(0,xi.useAtom)(Ce(n)),a=(0,J.use)(Ae),s=(0,J.useEffectEvent)((c,d=!1)=>{let y=he(e)?tt(c,e.advanced?.transform):c;!d&&!(0,bi.deepEqual)(o,y)&&(r.current=!0),i(y)}),l=(0,J.useEffectEvent)(c=>{let d=G(a(n),c);T(d)?s(d):T(e.defaultValue)&&s(e.defaultValue,!0)});(0,J.useEffect)(()=>{if(t){l(t);return}T(e.defaultValue)&&s(e.defaultValue,!0)},[t,e.defaultValue]);let u=(0,J.useCallback)(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:u,value:o}}var En=require("react/jsx-runtime");function vi(e){let{useSource:t,useExtraProps:n,getValue:r,shouldSkipChange:o,dispatchChange:i,buildInitialSelected:a,isInitialReady:s}=e.strategies,{setValue:l,shouldSkipOnChange:u,value:c}=hi(e.field,e.value),{data:d,setSource:y}=t(e.field,e.config,c),{applyChangeEventsRef:m,commonProps:A,entity:k,hasClickable:E,onBlur:M,onValueChangeRef:Z,setTimeoutRef:z,validated:P,valueRef:_}=yi(e,{setValue:l,shouldSkipOnChange:u,value:c,setSource:y}),L=n?.(e.field),ye=(0,Ye.useRef)(!1),{commonPropsWithOptions:x,defaultValue:h}=co(e.field,A,d,c),F=fo(e.field,h);(0,Ye.useEffect)(()=>{let g=!!e.value||T(e.field.defaultValue);if(ye.current||!g)return;if(!e.field.event?.change){ye.current=!0;return}let v=e.value?G(e.field.name,e.value):void 0,N=T(v)?v:e.field.defaultValue;if(!T(N)||!s(e.field,N,d))return;ye.current=!0;let $=a(N,d,k);m.current?.($)},[m,a,d,k,s,e.field,e.value]);let b=(0,Ye.useCallback)(g=>{let v=r(g,e.field);o({field:e.field,shouldSkipOnChange:u,hasClickable:E,inputValue:v,valueRef:_})||(Z.current?.(v),e.config.validation.change&&P(v),e.field.event?.change&&i({applyChangeEventsRef:m,data:d,entity:k,inputValue:v,setTimeoutRef:z}))},[m,d,i,k,r,E,Z,e.config.validation.change,e.field,z,o,u,P,_]);return Yt(e.config.inputs[e.field.type],g=>(0,En.jsx)(ci,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:(0,En.jsx)(g,{...x,...e.ariaAttributes,...e.dataAttributes,...L,...F,onBlur:M,onChange:b})}))}var Si=require("react/jsx-runtime");function Ze(e){return function(n){return(0,Si.jsx)(vi,{...n,strategies:e})}}function Ri(e){let t=K(e)?ce(e):null,n=le(e)?Ve(e):null;return{dateFormat:t,timeFormat:n}}var Ti=require("jotai");var fl=e=>{let t=Ho(e);if(t)return t},ml=e=>e.trim()!=="",Ci=(0,Ti.atom)({}),qt=Xo(Ci,{merge:fl,validateTarget:ml}),Ai=Ko(Ci);var Fi=require("jotai");function Wt(e){return{data:null,setSource:(0,Fi.useSetAtom)(qt(e.name))}}var wi=Ze({useSource:Wt,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=Ri(e);return mo(t,n)},getValue:(e,t)=>{let n=e.target.value,r=le(t)?Ve(t):null;if(r!==null)return eo(n,r);let o=K(t)?ce(t):null;return o!==null&&Nt(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 Pi=require("fast-equals");var Ii=require("jotai");var Ni=za(require("swr"),1);function ki(e=null,t,n=!1){let{data:r,error:o}=(0,Ni.default)(pl(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 Ir(r,e.namespace)}return null}function pl(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!Ie(e.url)){if($o(e.url,t.fetcher.remotePatterns))return e;Ee.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function Ei(e,t,n){let r=uo(e,n),[o,i]=(0,Ii.useAtom)(qt(e.name));return[ki(o??r,t,e.disabled),i]}function gl(e,t,n){let[r,o]=Ei(e,t,n);return{data:r,setSource:o}}function yl(e,t){return ne(e)&&t===""}var Vi=Ze({useSource:gl,getValue:e=>e.target.value,shouldSkipChange:({field:e,shouldSkipOnChange:t,hasClickable:n,inputValue:r,valueRef:o})=>yl(e,r)||!n&&t()&&(!r||(0,Pi.deepEqual)(r,o.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)=>(!$e(e)||!!n&&n.length>0)&&T(t)});var Li=Ze({useSource:Wt,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 Xt=require("react/jsx-runtime");function Di(e){return K(e.field)||le(e.field)?(0,Xt.jsx)(wi,{...e}):Gr(e.field)?(0,Xt.jsx)(Li,{...e}):(0,Xt.jsx)(Vi,{...e})}var Pn=require("react/jsx-runtime");function Oi(e){return!e.errors||e.errors.length===0?null:(0,Pn.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,Pn.jsx)("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var Mi=require("tailwind-merge"),zi=require("react/jsx-runtime");function Kt(e){let t=e.errors&&e.errors.length>0;return(0,zi.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[pr]:"true"},...e.disabled&&{[gr]:"true"},"data-orientation":e.orientation,className:(0,Mi.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 _i=require("tailwind-merge"),Bi=require("react/jsx-runtime");function $i(e){return(0,Bi.jsx)(Kt,{...e,orientation:"vertical",className:(0,_i.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var Hi=require("tailwind-merge"),Gi=require("react/jsx-runtime");function Ui(e){return(0,Gi.jsx)(Kt,{...e,orientation:"horizontal",className:(0,Hi.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 Vn=require("react/jsx-runtime");function Yi(e){let t=Ct(e.field),n=U(e.field),r=qr(e.field);return e.horizontal?(0,Vn.jsx)(Ui,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):(0,Vn.jsx)($i,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function Zi(e){if(!e.field.type)return null;let t=oo(e.field,e.disabled),n=vo(e.field),r=ho(e.field,e.errors),o={...e.field,disabled:t.disabled};return e.children({ariaAttributes:r,commonProps:t,dataAttributes:n,field:o,horizontal:e.horizontal})}var qi=require("tailwind-merge"),qe=require("react/jsx-runtime");function Wi(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=Vt(e.style,{horizontal:Zr(e.field)}),o=Wr(e.field,e.disabled);return(0,qe.jsxs)("div",{className:(0,qi.twMerge)("flex flex-col gap-3",Co(t)),children:[(0,qe.jsx)(Yi,{disabled:o,errors:n,field:e.field,horizontal:r,children:(0,qe.jsx)(Zi,{disabled:o,errors:n,field:e.field,horizontal:r,children:e.children})}),(0,qe.jsx)(Oi,{errors:n,name:e.field.name})]})}var Xi=require("jotai"),Qi=require("react/jsx-runtime");function Ki(e){return(t,n)=>o=>{let i=(0,Xi.useAtomValue)(e(o.field.name)),a=n(i,o);return a===null?null:(0,Qi.jsx)(t,{...o,...a})}}var bl=Ki(Zt);function ji(e){return bl(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var xl=Ki($t);function Ji(e){return xl(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var ea=Ji(ji(Wi));var jt=require("tailwind-merge"),ta=require("react"),R=require("react/jsx-runtime");function na(e){let t=e.isMultiField||e.collapsed!=null,[n,r]=(0,ta.useState)(t?!e.collapsed:!0);function o(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function i(){r(u=>!u)}let a=e.canRemove&&e.onRemove!=null&&(0,R.jsx)("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:(0,jt.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,R.jsx)("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),s=(0,R.jsxs)("div",{className:"flex min-w-0 flex-col font-medium text-zinc-700 dark:text-zinc-400",children:[(0,R.jsx)("span",{className:"text-base",children:e.previewLabel??(0,R.jsxs)(R.Fragment,{children:[e.label," ",e.index+1]})}),!n&&e.previewTags&&(0,R.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})]}),l=(0,R.jsxs)("div",{className:(0,jt.twMerge)("flex items-center justify-between gap-2",e.isMultiField&&n&&"mb-3"),children:[t?(0,R.jsxs)("div",{className:"flex min-w-0 grow items-center gap-2",children:[(0,R.jsxs)("button",{"aria-expanded":n,"aria-label":`${n?"Collapse":"Expand"} ${e.label} ${e.index+1}`,className:(0,jt.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,R.jsx)(Me,{expanded:n}),s]}),!n&&e.previewBadge&&(0,R.jsx)("div",{className:"ml-auto shrink-0",children:e.previewBadge})]}):s,a]});return e.isMultiField?(0,R.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:[l,(0,R.jsx)(We,{visible:n,children:(0,R.jsx)(Re,{children:e.children})})]}):t?(0,R.jsxs)("div",{className:"box-border flex w-full min-w-0 flex-col gap-2",children:[l,(0,R.jsx)(We,{visible:n,children:(0,R.jsx)(Re,{children:e.children})})]}):(0,R.jsxs)("div",{className:"box-border flex w-full min-w-0 items-start gap-2",children:[(0,R.jsx)("div",{className:"flex min-w-0 grow flex-col",children:(0,R.jsx)(Re,{children:e.children})}),a&&(0,R.jsx)("div",{className:"shrink-0",children:a})]})}var oa=require("react");var Ln=require("tailwind-merge");var ra=require("jotai");function Jt(e,t){return(0,ra.useAtomValue)(Ce(e))??t}var pe=require("react/jsx-runtime");function ia({className:e,initialValue:t,name:n,options:r,separator:o,staticLabel:i}){let a=Jt(n??"",t);if(i===void 0&&r){let u=(Array.isArray(a)?a:a==null||a===""?[]:[a]).filter(c=>c!=null&&c!=="").map(c=>go(c,r));return u.length===0?null:(0,pe.jsx)("div",{className:"flex items-center gap-1.5 overflow-hidden",children:u.map((c,d)=>(0,pe.jsxs)(oa.Fragment,{children:[(o||d>0)&&(0,pe.jsx)("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),(0,pe.jsx)("span",{"aria-label":c,className:(0,Ln.twMerge)("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:c,children:c})]},`${d}:${c}`))})}if(i===void 0&&(H(a)||f(a)||Array.isArray(a)))return null;let s=i??String(a);return(0,pe.jsxs)("div",{className:"flex items-center gap-1.5 overflow-hidden",children:[o&&(0,pe.jsx)("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),(0,pe.jsx)("span",{"aria-label":s,className:(0,Ln.twMerge)("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:s,children:s})]})}var aa=require("jotai"),sa=require("react");function Qt(e,t){let n=(0,aa.useAtomValue)(oe);return(0,sa.useMemo)(()=>{let r=`${e}.`,o={},i=!1;for(let s in n)s.startsWith(r)&&(o[s.slice(r.length)]=n[s],i=!0);let a=t?G(e,t):void 0;return i?f(a)?{...a,...o}:o:a},[n,e,t])}var en=require("react"),Dn=require("react/jsx-runtime");function hl(e){return typeof e=="string"?{field:e}:e}function On({className:e,fields:t,label:n="Preview",name:r,previews:o,translations:i,value:a}){let s=(0,en.useMemo)(()=>(Array.isArray(o)?o:[o]).map(hl),[o]),l=(0,en.useMemo)(()=>t?No(t):void 0,[t]),u=Qt(r,a),c=(0,en.useMemo)(()=>{let d=[];for(let[y,m]of s.entries()){if(m.when!==void 0&&!_e(u,m.when))continue;if(m.label!==void 0){d.push({key:m.field??`label:${m.label}:${y}`,staticLabel:S(m.label,i)});continue}if(m.field===void 0)continue;let A=`${r}.${m.field}`,k=a!=null?G(A,a):void 0,E=l?.[m.field],M=E?po(E):void 0;d.push({key:`${y}:${m.field}`,initialValue:k,options:M,previewName:A})}return d},[s,u,r,a,i,l]);return c.length===0?null:(0,Dn.jsx)("div",{"aria-label":n,className:"flex items-center gap-1.5 overflow-hidden",children:c.map((d,y)=>(0,Dn.jsx)(ia,{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 tn=require("react/jsx-runtime");function la({children:e,initialValue:t,name:n}){let r=Jt(n,t),i=H(r)||f(r)||Array.isArray(r)?"":String(r);return(0,tn.jsx)(tn.Fragment,{children:e(i)})}var it=require("react/jsx-runtime");function ua({canRemove:e,children:t,field:n,index:r,isMultiField:o,itemKey:i,label:a,onRemove:s,previewBadge:l,previewLabel:u,previewTags:c,translations:d,value:y}){let m=`${n.name}.${i}`,A=`${a} ${r+1}`,k=Qt(m,y);return(0,it.jsx)(na,{canRemove:e,collapsed:n.advanced?.collapsed,index:r,isMultiField:o,label:a,onRemove:s,previewLabel:vl({fallbackLabel:A,liveItemValue:k,name:m,previewLabel:u,translations:d,value:y}),previewBadge:l?(0,it.jsx)(On,{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:l,translations:d,value:y}):void 0,previewTags:c?(0,it.jsx)(On,{fields:n.fields,name:m,previews:c,translations:d,value:y}):void 0,children:t})}function vl({fallbackLabel:e,liveItemValue:t,name:n,previewLabel:r,translations:o,value:i}){if(r===void 0)return;let a=p(r)?{field:r}:r;if(a.when!==void 0&&!_e(t,a.when))return;if(a.label!==void 0)return S(a.label,o);if(a.field===void 0)return;let s=`${n}.${a.field}`;return(0,it.jsx)(la,{initialValue:i?G(s,i):void 0,name:s,children:l=>l||e})}var da=require("tailwind-merge");var nn=require("jotai"),w=require("react");function ca(e,t,n){let r=e.advanced?.length?.min??1,o=e.advanced?.length?.max??1/0,[i,a]=(0,w.useState)(()=>Fo(e,t)),s=(0,w.useRef)(i),l=(0,w.useRef)(i.length);s.current=i;let u=(0,nn.useStore)(),c=(0,nn.useSetAtom)(oe),d=(0,w.useRef)(n);d.current=n;let y=(0,w.useRef)(t),m=(0,w.useMemo)(()=>{let x=[];for(let h of e.fields)if(j(h))for(let F of h.fields)x.push(F.name);else x.push(h.name);return x},[e.fields]),A=(0,w.useCallback)((x,h)=>{let F=Number(x);return Number.isNaN(F)?!1:Number.isInteger(F)&&h>=0&&String(h)!==x},[]),k=(0,w.use)(Ae),E=(0,w.useCallback)(x=>{let h=`${e.name}.`;if(x.startsWith(h)){let F=x.slice(h.length),b=F.indexOf("."),g=b===-1?F:F.slice(0,b),v=Number(g),N=s.current.indexOf(v);A(g,N)&&(x=`${h}${N}${b===-1?"":F.slice(b)}`)}return k(x)},[e.name,A,k]),M=(0,w.useEffectEvent)(()=>{let x=y.current;if(!x)return;let h=`${e.name}.`,F={...u.get(oe)},b=!1;for(let g of i)for(let v of m){let N=`${h}${g}.${v}`;if(N in F)continue;let $=G(N,x);T($)&&(F[N]=$,b=!0)}b&&c(F)});(0,w.useEffect)(()=>{M()},[]);let Z=(0,w.useCallback)((x,h)=>{let F=`${e.name}.`,b=y.current;return x.map(g=>{let v={};for(let N of m){let $=`${F}${g}.${N}`,q=h[$];v[N]=q!==void 0?q:b?G($,b):void 0}return v})},[e.name,m]),z=(0,w.useCallback)((x,h)=>{d.current?.({name:E(e.name),value:Z(x,h)})},[Z,e.name,E]),P=(0,w.useCallback)(()=>{if(s.current.length>=o)return;let x=l.current++,h=[...s.current,x];a(h),z(h,u.get(oe))},[z,o,u]),_=(0,w.useCallback)(x=>{if(s.current.length<=r)return;let h=s.current[x],F=s.current.filter((N,$)=>$!==x),g={...u.get(oe)},v=`${e.name}.`;for(let N of m)delete g[`${v}${h}.${N}`];a(F),c(g),z(F,g)},[z,e.name,m,r,c,u]),L=i.length<o,ye=i.length>r;return[i,P,_,L,ye,o,E]}var ge=require("react/jsx-runtime"),Sl="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 fa(e){let{field:t,onValueChange:n,translations:r,value:o,children:i}=e,[a,s,l,u,c,d,y]=ca(t,o,n),m=wo(t),A=t.advanced?.action??"Add item",k=d!==1/0,E=Ao(t);Ee.info("Label: ",m);let{label:M,tags:Z,badge:z}=t.advanced?.preview??{};return(0,ge.jsx)(Ae.Provider,{value:y,children:(0,ge.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[a.map((P,_)=>(0,ge.jsx)(ua,{canRemove:c,field:t,index:_,isMultiField:E,itemKey:P,label:m,onRemove:l,previewBadge:z,previewLabel:M,previewTags:Z,translations:r,value:o,children:i(P)},P)),(0,ge.jsxs)("button",{"aria-disabled":!u,"aria-label":k?`${A}, ${a.length} of ${d}`:A,className:(0,da.twMerge)(Sl,k?"justify-between":"justify-center",!u&&"cursor-not-allowed opacity-50 hover:border-zinc-200 hover:text-zinc-500 dark:hover:border-zinc-800 dark:hover:text-zinc-400"),disabled:!u,onClick:s,type:"button",children:[(0,ge.jsxs)("span",{className:"flex items-center gap-2",children:[(0,ge.jsx)("span",{"aria-hidden":"true",className:"text-base leading-none",children:"+"}),A]}),k&&(0,ge.jsxs)("span",{"aria-hidden":"true",className:"text-zinc-400 tabular-nums dark:text-zinc-500",children:[a.length," / ",d]})]})]})})}var pa=require("react/jsx-runtime");function ma(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return(0,pa.jsx)(Dt,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}var rn=require("react/jsx-runtime");function ga({children:e,field:t,onValueChange:n,translations:r,value:o}){return(0,rn.jsx)(Bt,{container:t,fields:t.fields,children:(0,rn.jsx)(ma,{field:t,children:(0,rn.jsx)(fa,{field:t,onValueChange:n,translations:r,value:o,children:e})})})}var ya=require("tailwind-merge");var at=require("react/jsx-runtime");function ba(e){let t=To(e.column?.advanced?.cols);return(0,at.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[(0,at.jsx)("div",{"data-slot":"column",className:(0,ya.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&(0,at.jsx)(Ht,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}var va=require("react");var ha=require("react/jsx-runtime");function xa(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>At(n)||Qe(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:j(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return(0,ha.jsx)(st,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:t,onValueChange:e.onValueChange,style:e.style,translations:e.translations,value:e.value,children:e.children})}var Fe=require("react/jsx-runtime");function st(e){let{field:t,list:n}=e.components;return Et(e.fields).map((r,o)=>(0,Fe.jsxs)(va.Fragment,{children:[j(r)&&(0,Fe.jsx)(ba,{column:r,config:e.config,context:e.context,translations:e.translations,children:(0,Fe.jsx)(st,{...e,fields:r.fields})}),At(r)&&(0,Fe.jsx)(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),Qe(r)&&(0,Fe.jsx)(n,{field:r,onValueChange:e.onValueChange,translations:e.translations,value:e.value,children:i=>(0,Fe.jsx)(xa,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:r,index:i,onValueChange:e.onValueChange,style:e.style,translations:e.translations,value:e.value,children:e.children})})]},o))}var Ra=require("react/jsx-runtime");function Sa(e){return n=>(0,Ra.jsx)(st,{...n,components:e})}var Ta=Sa({field:ea,list:ga});var zn=require("jotai");var lt=require("react");function Aa(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},s=(0,zn.useSetAtom)(mi),l=(0,zn.useSetAtom)(oi),u={data:null,error:null,success:!1},[c,d,y]=(0,lt.useActionState)(async(m,A)=>{let[k,E]=e(),M=Po(k,E,a);if(i===!1)return t?await t(A,M):m;let Z=Pr(A),z=Tl(Z,E),P=M.safeParse(z);if(!P.success){let L=Vo(P.error);return(0,lt.startTransition)(()=>{s(L)}),Mn(Z,{description:S("Please correct the errors and try again.",a),details:[],title:S("There were validation errors submitting the form.",a)})}let _=Vr(P.data);if(t)try{let L=await t(_,M);return L.success?(r?.(L.data),o||(0,lt.startTransition)(()=>{l()}),Ca(_,o)):Mn(_,L.error)}catch(L){return Ee.error("Error executing form action:",L),Mn(_,{title:S("An unexpected error occurred submitting the form.",a),details:Rl(L,a)})}return Ca(P.data,o)},u);return[d,c,y]}function Rl(e,t){return e instanceof Error?[e.message]:[S("Unknown error",t)]}function Ca(e,t=!1){return{data:t?e:null,error:null,success:!0}}function Mn(e,t){return{data:e,error:t,success:!1}}function Tl(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 De=require("react");var Fa=require("react"),on=require("jotai");function wa(){let e=(0,on.useSetAtom)(fi),t=(0,on.useSetAtom)(ii),n=(0,on.useSetAtom)(Ai);return(0,Fa.useCallback)((r,o)=>{let i=Array.isArray(r)?r:[r];e(i),n(i),o?.keepValue||t(i)},[e,n,t])}function Na(){let e=wa(),t=(0,De.useRef)({}),n=(0,De.useRef)([]),r=(0,De.useCallback)((a,s,l)=>{a in t.current||(t.current[a]=s,n.current.push(l))},[]),o=(0,De.useCallback)((a,s)=>{t.current[a]&&(delete t.current[a],n.current=n.current.filter(l=>l.name!==a),e([a],{keepValue:s?.keepValue}))},[e]);return[(0,De.useCallback)(()=>[t.current,n.current],[]),r,o]}var ie=require("react/jsx-runtime");function ka(e){let t=e.translations?.[e.lang??""],[n,r,o]=Na(),[i,a,s]=Aa(n,e.action,{onSuccess:e.onSuccess,validation:e.config.validation.submit,translations:t}),l=e.config.validation.showError&&!a.success&&a.error,u=a.data??e.value;return(0,ie.jsxs)(ie.Fragment,{children:[l&&Yt(e.config.alert,c=>(0,ie.jsx)("div",{className:"mb-4 w-full",children:(0,ie.jsx)(c,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),(0,ie.jsx)(ei,{action:i,advanced:e.advanced,config:e.config,control:e.children,definition:e.definition,isPending:s,noValidate:!0,readOnly:e.readOnly,sections:e.sections,children:({disabled:c,fields:d})=>(0,ie.jsx)(Ta,{config:e.config,context:e.context,disabled:c,fields:d,onValueChange:e.onValueChange,style:e.config.style,translations:t,value:u,children:y=>(0,ie.jsx)(Di,{...y,config:e.config,context:e.context,getSchema:n,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:u})})})]})}var Ia=require("jotai"),_n=require("react/jsx-runtime");function Ea(e){return(0,_n.jsx)(Ia.Provider,{children:(0,_n.jsx)(ka,{...e})})}
|
package/dist/client/esm/index.js
CHANGED
|
@@ -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 ve(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 Ae({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",Ne="column",Dn="description",Mt="fields",On="label",Y="value",He="options",zt="email",Mn="number",zn="password",_n="tel",ke="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",Se="$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 g(e)||typeof e=="number"||_t(e)}function g(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(g(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(g(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(g(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 if(Array.isArray(r)){let i=Number(o);if(!Number.isInteger(i)||i<0||i>=r.length)return null;r=r[i]}else return null;return r}function 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=ke){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==Ge?n.trim().toLowerCase():ke}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 ae(e,t={},n={}){if(g(e))return ia(e,t,n);if(Array.isArray(e))return e.map(r=>ae(r,t,n));if(f(e)){let r={};for(let o in e)r[o]=ae(e[o],t,n);return r}return e}function Ee(e,t={},n={}){return Ie(e)?ae(e,t,n):e}function Ie(e){return g(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>Ie(t)):f(e)?Object.values(e).some(t=>Ie(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(!g(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 ye={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=ae(i.url,e),l=i.body?ae(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 le(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 le(e)>le(t)}function ga(e,t){return le(e)>=le(t)}function ya(e,t){return le(e)<le(t)}function xa(e,t){return le(e)<=le(t)}function Te(e,t){if(t===void 0)return!0;if(g(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=Te(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?ae(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),te=N(Tn),_=N(Fn),W=N(Pn),ne=N(Cn),se=N(Ge),K=N(wn),Zt=N(Rn),br=N(ke,zt,zn,_n),hr=N(vn,zt),nt=N(Sn,Mn);function rt(e){return ne(e)||_(e)}function ot(e){return e.type===Ot}function J(e){return e.type===Ne}function it(e){return e.type!==Ne&&e.type!==Ot}function Re(e){return K(e)||ne(e)||W(e)}function vr(e){return se(e)||Zt(e)}function S(e){return e!=null&&e!==""}function N(...e){return t=>{let n=g(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Sr(e,t={}){if(K(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&f(n))return[n]}}function Tr(e){return ne(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(ha(e)){let t=e.source;if(Array.isArray(t)||f(t)&&!(Se in t))return t}}function ha(e){return ne(e)||W(e)||K(e)&&!e.disabled}import{isValid as at,parse as lt,format as st}from"date-fns";var va=/^\d+$/,ct=new Date(2e3,0,1),Sa=()=>"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 Ta(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function Ra(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return Jn[n]??"Other"}function Ca(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=Ca(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=Ta(),n=new Map,r=wr(t),{offset:o,longName:i}=Fr(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let s of Sa()){if(s===t)continue;let c=wr(s),{offset:u,longName:d}=Fr(s,e),y={value:s,label:`${c} - ${d} (${u})`},m=Ra(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 va.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 xe(e){return e.advanced?.format??"HH:mm"}function re(e){return e.advanced?.format??"MMMM d, yyyy"}var mt=Jt();function Pr(e){if(W(e))return Fa(e)}function Fa(e){if(et(e))return Kt();if(tt(e))return Wt()}function Vr(e){if(K(e))return wa(e)}function wa(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 se(e)?{...n,...Aa(e)}:K(e)?{...n,...Dr(e,Vr)}:Zt(e)?{...n,...ka(e)}:W(e)?{...n,...Na(e)}:n}function Aa(e){let t=lr(e.type),n={...e,type:t};return{...Ea(e),...Or(e),...Ia(n),...br(n)?Mr(n):{},type:t}}function Dr(e,t){let n=t(e);return n?{options:n}:{}}function Na(e){let t=Dr(e,Pr),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function ka(e){return{...Or(e),...Mr(e)}}function Or(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Ia(e){return nt(e)?Pa(e):{}}function Ea(e){if(te(e)){let t=xe(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 Pa(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 Va(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 te(e)&&S(o)?La(e,o):X(e)&&S(o)?za(e,o):o}function La(e,t){let n=xe(e);return g(t)?kr(t,n):t}function Da(e,t,n){return Re(e)&&Array.isArray(n)?{...t,[He]:n}:t}function Oa(e,t,n){if(e.required&&!S(n)&&K(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 Ma(e,t){return Re(e)&&Array.isArray(t)?Ht(t,e.advanced?.options):t}function $r(e,t,n,r){let o=Va(e,r),i=Array.isArray(n)?Ma(e,n):n,a=Da(e,t,i),l=Oa(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)&&g(t)&&S(t)?{value:dt(t,re(e))}:Ve(e)?{value:S(t)?String(t):""}:{value:t??""}}function za(e,t){let n=re(e);return g(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&&g(n.value)&&g(n.label)&&t.push({label:n.label,value:n.value})}return t}function Gr(e){if(!Re(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 _a=/^#\/definition\//;function pt(e=[],t){let n=ft(e,t);return Array.isArray(n)?n.filter(Ba).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(Se in e&&g(e[Se])){let i=e[Se].replace(_a,""),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 Ba(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 Ua(e){return Zr(Hn,e)}function Ga(e){return Zr(Yn,e)}function qr(e,t){let n=Ua(e.advanced?.aria);return t&&t.length>0&&(n[Bn]="true",n[$n]=`${e.name}-error`),n}function Wr(e){return Ga(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 Ha(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===Ne}function to(e,t){let n=Ha(e,t);return Array.from({length:n},(r,o)=>o)}function no(e){return e.advanced?.title??e.label??e.name}function ro(e){let t={};for(let n of e)if(J(n))for(let r of n.fields)t[r.name]=r;else t[n.name]=n;return t}function 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 Ya=[[_,oo],[hr,Xa],[nt,Wa],[ne,Za],[Ve,oo],[Qe,Ja],[je,Ka],[W,jt],[et,jt],[tt,jt]];function ao(e,t=[],n){let r=R.object(e);return t.length===0?r:tl(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 Ya)if(n(e))return r(e,t);return qa(e,t)}function Xa(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 Za(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 qa(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 Wa(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 Ka(e,t){return e.required?R.preprocess(Qa,R.coerce.number({message:ce(e,t)}).int()):R.coerce.number().int().nullable()}function Ja(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 Qa(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=ja(e,t,n),e=el(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 ja=(e,t,n)=>mo(e,t,Xe,n),el=(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 tl(e,t=[],n){let r=rl(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:l}of r)if(!nl(o,a,l)){let s=T(l.message,n);i.addIssue({code:"custom",message:s,path:[a]})}})}function nl(e,t,n){let r=n.operator??"eq",o=Pe[r];return o?o(e[t],e[n.field]):!1}function rl(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||!il(e))return!0;if(t.length===0)return!1;try{let n=new URL(e),r=n.protocol.replace(":",""),o=n.hostname,i=n.port||ol(r);return t.some(a=>!(a.protocol&&a.protocol!==r||a.hostname&&a.hostname!==o||a.port!==void 0&&String(a.port)!==i))}catch{return!1}}function ol(e){return e==="https"?"443":"80"}function il(e){return/^(https?:)?\/\//.test(e)}function 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=al(t,n),i=ll(t,n);return{...t,...n,url:r,body:o,headers:i}})}function al(e,t){return f(t.body)&&f(e?.body)?{...e.body,...t.body}:t.body??e?.body}function ll(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 sl={uppercase:e=>e.toUpperCase(),lowercase:e=>e.toLowerCase(),"remove-space":e=>e.replace(/\s+/g,""),"remove-accent":e=>e.normalize("NFD").replace(/[\u0300-\u036f]/g,"")};function Le(e,t){return!t||!g(e)||M(e)?e:(Array.isArray(t)?t:[t]).reduce((r,o)=>{let i=sl[o];return i?i(r):r},e)}import{jsx as cl}from"react/jsx-runtime";function oe(e){return ur(e,(t,n,r)=>cl("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}import{useCallback as ul,useState as dl}from"react";import{jsx as De,jsxs as en}from"react/jsx-runtime";function xo(e){let{fields:t=[]}=e.section,[n,r]=dl(!1),o=ul(()=>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(ve,{expanded:n}),De("span",{children:oe(e.section.title)})]})}),De(Ae,{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:oe(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:oe(e.title)}),e.description&&xt("p",{className:"-mt-2 text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:oe(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 ml}from"react/jsx-runtime";function bt(e){return ml("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 fl}from"react/jsx-runtime";function ue(e){return fl("div",{"data-slot":"field-group","data-compact":e.compact,className:"flex w-full flex-col gap-8 data-[compact=true]:gap-3",children:e.children})}import{jsx as 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 bl}from"jotai";import{atom as be}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 pl(e){return Co(t=>be(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 gl(e){return be(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function yl(e){return be(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 xl(e){return be(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=>be(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 be(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 Ce(e={}){let t=be(e);return{atom:t,clearAll:gl(t),clear:yl(t),bulkReport:xl(t),report:pl(t)}}var Ao=Ce(),vt=Ao.atom,St=Ao.report;function hl(e,t){return e.fields.every(n=>No(n,t))}function No(e,t){return t[e.name]?.hidden??e.hidden??!1}function vl(e,t){return J(e)?hl(e,t):No(e,t)}function Tt(e){let t=bl(vt);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>vl(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 Sl}from"react/jsx-runtime";function Eo(e){return Sl("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 Tl}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]=Tl(()=>f(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),a=()=>i(u=>!u),l=f(e.text)&&g(e.text.title)?oe(T(Ee(e.text.title,t,r),e.translations)):void 0,s=T(Ee(g(e.text)?e.text:e.text?.message,t,r),e.translations),c=oe(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(ve,{expanded:o})]}),o&&Po(Eo,{title:s,children:c})]}):null}var Ct=Ce(),Q=Ct.atom,Lo=Ct.clearAll,Do=Ct.clear,de=Ct.report;import{useAtomValue as Oo}from"jotai";import{jsx as Rl}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 Rl(Rt,{config:e.config,context:e.context,text:r,translations:e.translations,value:t})}import{twMerge as Cl}from"tailwind-merge";import{jsx as Mo,jsxs as Fl}from"react/jsx-runtime";function zo(e){let t=e.style?.showOptionalLabel??!0,n=ne(e.field)||_(e.field);return Fl("label",{"data-slot":"field-label","data-normal":n,className:Cl("flex w-fit items-center text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal [[data-slot=column]_&]:md:w-full","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,title:g(e.children)?e.children:void 0,children:[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 wl}from"react/jsx-runtime";function $o(e){let t={context:e.context,env:e.config?.env},n=Ee(e.field.label,t);return wl("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[_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 Al,jsx as Bo,jsxs as Nl}from"react/jsx-runtime";function Uo(e){return Nl(Al,{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 Xl,useEffect as Zl,useRef as ql}from"react";import{createContext as kl}from"react";var Il=e=>e,me=kl(Il);var rn=Ce(),Go=rn.clear,Ho=rn.bulkReport,At=rn.report;import{use as Ml,useCallback as qo,useRef as Me,useTransition as zl}from"react";import{use as El,useEffect as Pl,useEffectEvent as Yo,useMemo as Vl}from"react";function Xo(e,t,n,r){let{name:o}=e,i=Vl(()=>so(e,r),[e,r]),a=El(Ue),l=Yo(c=>{c&&t(c,i,e)}),s=Yo(c=>{c&&n(c,{keepValue:a})});return Pl(()=>(l(o),()=>{s(o)}),[o]),i}import{useSetAtom as on,useStore as _l}from"jotai";import{useCallback as Ll,useEffect as Dl,useRef as Ol}from"react";function Zo(){let e=Ol(null);return Dl(()=>()=>{e.current&&clearTimeout(e.current)},[]),Ll((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}function Wo(e,t){let n=_l(),r=e.field.advanced?.entity,o=Zo(),[,i]=zl(),a=Ml(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(Q),A=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&&se(p)){let v=p.advanced?.transform;if(v)return v}}let E=Me(new Map),ie=Me(null);ie.current=x=>{let p=se(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:w,values:D})=>{i(()=>{mr(x,v,(G,j)=>{u(gt(G,e.field.name),j)}),pr(x,w,(G,j)=>{let he=G.map(O=>gt(O,e.field.name));A(O=>j?he.reduce((H,pe)=>({...H,[pe]:j}),O):he.reduce((H,pe)=>ht(H,pe),O));let Z=j?.hidden===!0?he:j===void 0?he.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(ee=>ge===ee||ge.startsWith(`${ee}.`))&&(delete pe[ge],H=!0);return H?pe:O})}),gr(x,D,(G,j,he)=>{let Z=gt(G,e.field.name),O=L(Z),H=O?Le(j,O):j,ge=n.get(Q)[Z];if(he.onlyIfTargetEmpty&&!M(ge)){let ee=E.current.get(Z);if(!Object.is(ee,ge))return}if(H!==ge&&(C(ee=>({...ee,[Z]:H})),E.current.set(Z,H),e.onValueChange)){let ee=I(Z);ee&&e.onValueChange({name:a(Z),type:ee.type,value:H})}})})})};let h=qo(x=>{let v=P.safeParse(x).error?.issues.map(G=>G.message)??[],w=e.field.validation?.custom,D=w?fo(x,w,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&&h(p)}},[m,e.config.validation.blur,h]);return{applyChangeEventsRef:b,commonProps:V,entity:r,hasClickable:m,onBlur:F,onValueChangeRef:ie,setTimeoutRef:o,shouldSkipOnChange:s,validated:h,valueRef:d}}import{deepEqual as $l}from"fast-equals";import{useAtom as Bl}from"jotai";import{use as Ul,useCallback as Gl,useEffect as Hl,useRef as Yl,useEffectEvent as Ko}from"react";function Jo(e,t){let{name:n}=e,r=Yl(!1),[o,i]=Bl(de(n)),a=Ul(me),l=Ko((u,d=!1)=>{let y=se(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)});Hl(()=>{if(t){s(t);return}S(e.defaultValue)&&l(e.defaultValue,!0)},[t,e.defaultValue]);let c=Gl(()=>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:A,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),ie=ql(!1),{commonPropsWithOptions:b,defaultValue:h}=$r(e.field,C,d,u),F=Br(e.field,h);Zl(()=>{let p=!!e.value||S(e.field.defaultValue);if(ie.current||!p)return;if(!e.field.event?.change){ie.current=!0;return}let v=e.value?$(e.field.name,e.value):void 0,w=S(v)?v:e.field.defaultValue;if(!S(w)||!l(e.field,w,d))return;ie.current=!0;let D=a(w,d,A);m.current?.(D)},[m,a,d,A,l,e.field,e.value]);let x=Xl(p=>{let v=r(p,e.field);o({field:e.field,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:A,inputValue:v,setTimeoutRef:V}))},[m,d,i,A,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 Wl}from"react/jsx-runtime";function Fe(e){return function(n){return Wl(jo,{...n,strategies:e})}}function ei(e){let t=X(e)?re(e):null,n=te(e)?xe(e):null;return{dateFormat:t,timeFormat:n}}import{atom as Kl}from"jotai";var Jl=e=>{let t=yo(e);if(t)return t},Ql=e=>e.trim()!=="",ti=Kl({}),Nt=Fo(ti,{merge:Jl,validateTarget:Ql}),ni=wo(ti);import{useSetAtom as jl}from"jotai";function kt(e){return{data:null,setSource:jl(Nt(e.name))}}var ri=Fe({useSource:kt,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=ei(e);return Ur(t,n)},getValue:(e,t)=>{let n=e.target.value,r=te(t)?xe(t):null;if(r!==null)return Ir(n,r);let o=X(t)?re(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 rs}from"fast-equals";import{useAtom as ns}from"jotai";import es from"swr";function oi(e=null,t,n=!1){let{data:r,error:o}=es(ts(e,t,n),t.fetcher.provider);if(o&&ye.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return ar(r,e.namespace)}return null}function ts(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!Ie(e.url)){if(po(e.url,t.fetcher.remotePatterns))return e;ye.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]=ns(Nt(e.name));return[oi(o??r,t,e.disabled),i]}function os(e,t,n){let[r,o]=ii(e,t,n);return{data:r,setSource:o}}function is(e,t){return K(e)&&t===""}var ai=Fe({useSource:os,getValue:e=>e.target.value,shouldSkipChange:({field:e,shouldSkipOnChange:t,hasClickable:n,inputValue:r,valueRef:o})=>is(e,r)||!n&&t()&&(!r||rs(r,o.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)=>(!Re(e)||!!n&&n.length>0)&&S(t)});var li=Fe({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)||te(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 as}from"tailwind-merge";import{jsx as ls}from"react/jsx-runtime";function It(e){let t=e.errors&&e.errors.length>0;return ls("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Un]:"true"},...e.disabled&&{[Gn]:"true"},"data-orientation":e.orientation,className:as("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 ss}from"tailwind-merge";import{jsx as cs}from"react/jsx-runtime";function di(e){return cs(It,{...e,orientation:"vertical",className:ss("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as us}from"tailwind-merge";import{jsx as ds}from"react/jsx-runtime";function mi(e){return ds(It,{...e,orientation:"horizontal",className:us("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 ms}from"tailwind-merge";import{jsx as ln,jsxs as fs}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 fs("div",{className:ms("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 ps}from"jotai";import{jsx as xs}from"react/jsx-runtime";function xi(e){return(t,n)=>o=>{let i=ps(e(o.field.name)),a=n(i,o);return a===null?null:xs(t,{...o,...a})}}var gs=xi(At);function bi(e){return gs(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var ys=xi(St);function hi(e){return ys(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 bs}from"react";import{Fragment as hs,jsx as B,jsxs as fe}from"react/jsx-runtime";function Si(e){let t=e.isMultiField||e.collapsed!=null,[n,r]=bs(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(hs,{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(ve,{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(Ae,{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(Ae,{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 Ss}from"react";import{twMerge as Ti}from"tailwind-merge";import{useAtomValue as vs}from"jotai";function Et(e,t){return vs(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(Ss,{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 Ts}from"jotai";import{useMemo as Rs}from"react";function Pt(e,t){let n=Ts(Q);return Rs(()=>{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 Cs(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(Cs),[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&&!Te(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}`,A=a!=null?$(C,a):void 0,k=s?.[m.field],P=k?Gr(k):void 0;d.push({key:`${y}:${m.field}`,initialValue:A,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 Fs,jsx as ws}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 ws(Fs,{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}`,A=Pt(m,y);return Vt(Si,{canRemove:e,collapsed:n.advanced?.collapsed,index:r,isMultiField:o,label:a,onRemove:l,previewLabel:As({fallbackLabel:C,liveItemValue:A,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 As({fallbackLabel:e,liveItemValue:t,name:n,previewLabel:r,translations:o,value:i}){if(r===void 0)return;let a=g(r)?{field:r}:r;if(a.when!==void 0&&!Te(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 Ds}from"tailwind-merge";import{useSetAtom as Ns,useStore as ks}from"jotai";import{use as Is,useCallback as we,useEffect as Es,useEffectEvent as Ps,useMemo as Vs,useRef as Lt,useState as Ls}from"react";function Ni(e,t,n){let r=e.advanced?.length?.min??1,o=e.advanced?.length?.max??1/0,[i,a]=Ls(()=>to(e,t)),l=Lt(i),s=Lt(i.length);l.current=i;let c=ks(),u=Ns(Q),d=Lt(n);d.current=n;let y=Lt(t),m=Vs(()=>{let b=[];for(let h of e.fields)if(J(h))for(let F of h.fields)b.push(F.name);else b.push(h.name);return b},[e.fields]),C=we((b,h)=>{let F=Number(b);return Number.isNaN(F)?!1:Number.isInteger(F)&&h>=0&&String(h)!==b},[]),A=Is(me),k=we(b=>{let h=`${e.name}.`;if(b.startsWith(h)){let F=b.slice(h.length),x=F.indexOf("."),p=x===-1?F:F.slice(0,x),v=Number(p),w=l.current.indexOf(v);C(p,w)&&(b=`${h}${w}${x===-1?"":F.slice(x)}`)}return A(b)},[e.name,C,A]),P=Ps(()=>{let b=y.current;if(!b)return;let h=`${e.name}.`,F={...c.get(Q)},x=!1;for(let p of i)for(let v of m){let w=`${h}${p}.${v}`;if(w in F)continue;let D=$(w,b);S(D)&&(F[w]=D,x=!0)}x&&u(F)});Es(()=>{P()},[]);let U=we((b,h)=>{let F=`${e.name}.`,x=y.current;return b.map(p=>{let v={};for(let w of m){let D=`${F}${p}.${w}`,G=h[D];v[w]=G!==void 0?G:x?$(D,x):void 0}return v})},[e.name,m]),V=we((b,h)=>{d.current?.({name:k(e.name),value:U(b,h)})},[U,e.name,k]),I=we(()=>{if(l.current.length>=o)return;let b=s.current++,h=[...l.current,b];a(h),V(h,c.get(Q))},[V,o,c]),L=we(b=>{if(l.current.length<=r)return;let h=l.current[b],F=l.current.filter((w,D)=>D!==b),p={...c.get(Q)},v=`${e.name}.`;for(let w of m)delete p[`${v}${h}.${w}`];a(F),u(p),V(F,p)},[V,e.name,m,r,u,c]),E=i.length<o,ie=i.length>r;return[i,I,L,E,ie,o,k]}import{jsx as dn,jsxs as Dt}from"react/jsx-runtime";var Os="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",A=d!==1/0,k=eo(t);ye.info("Label: ",m);let{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":A?`${C}, ${a.length} of ${d}`:C,className:Ds(Os,A?"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]}),A&&Dt("span",{"aria-hidden":"true",className:"text-zinc-400 tabular-nums dark:text-zinc-500",children:[a.length," / ",d]})]})]})})}import{jsx as Ms}from"react/jsx-runtime";function Ii(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return Ms(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 zs}from"tailwind-merge";import{jsx as Pi,jsxs as _s}from"react/jsx-runtime";function Vi(e){let t=Qr(e.column?.advanced?.cols);return _s("div",{className:"flex w-full flex-col gap-4",children:[Pi("div",{"data-slot":"column",className:zs("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 Bs}from"react";import{jsx as $s}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}`}:J(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return $s(_e,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:t,onValueChange:e.onValueChange,style:e.style,translations:e.translations,value:e.value,children:e.children})}import{jsx as $e,jsxs as Us}from"react/jsx-runtime";function _e(e){let{field:t,list:n}=e.components;return pt(e.fields).map((r,o)=>Us(Bs,{children:[J(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,onValueChange:e.onValueChange,style:e.style,translations:e.translations,value:e.value,children:e.children})})]},o))}import{jsx as Gs}from"react/jsx-runtime";function Di(e){return n=>Gs(_e,{...n,components:e})}var Oi=Di({field:vi,list:Ei});import{useSetAtom as Mi}from"jotai";import{startTransition as zi,useActionState as Hs}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]=Hs(async(m,C)=>{let[A,k]=e(),P=ao(A,k,a);if(i===!1)return t?await t(C,P):m;let U=sr(C),V=Xs(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 ye.error("Error executing form action:",E),fn(L,{title:T("An unexpected error occurred submitting the form.",a),details:Ys(E,a)})}return _i(I.data,o)},c);return[d,u,y]}function Ys(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 Xs(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],re(r));o&&(n[r.name]=o)}return n}import{useCallback as gn,useRef as Ui}from"react";import{useCallback as Zs}from"react";import{useSetAtom as pn}from"jotai";function Bi(){let e=pn(Go),t=pn(Do),n=pn(ni);return Zs((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 qs,jsx as Be,jsxs as Ws}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 Ws(qs,{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 Ks}from"jotai";import{jsx as Yi}from"react/jsx-runtime";function Js(e){return Yi(Ks,{children:Yi(Hi,{...e})})}export{Js as Form};
|
|
1
|
+
import{jsx as ji}from"react/jsx-runtime";function hn(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return ji("div",{"data-slot":"field-control",className:"w-full",children:t})}import{jsx as vn}from"react/jsx-runtime";function Re(e){return vn("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",className:`size-4 transition-transform duration-200 ${e.expanded?"rotate-90":""}`,children:vn("path",{fillRule:"evenodd",d:"M8.22 5.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.75.75 0 0 1-1.06-1.06L11.94 10 8.22 6.28a.75.75 0 0 1 0-1.06Z",clipRule:"evenodd"})})}import{Activity as Qi}from"react";import{createContext as Ji}from"react";var Ge=Ji(!1);import{jsx as Sn}from"react/jsx-runtime";function ke({children:e,visible:t}){return Sn(Qi,{mode:t?"visible":"hidden",children:Sn(Ge,{value:!0,children:e})})}var Ye="input",Rn="input/date",Tn="input/email",Cn="input/number";var An="input/time";var Fn="textarea",wn="radio",Nn="checkbox",Mt="list";var kn="select",In="select/active",En="select/day",Pn="select/month",Vn="select/timezone",Ln="select/year";var Dn="chips",On="chips/day",Mn="chips/month",Ie="column",zn="description",zt="fields",_n="label",Y="value",Ze="options",_t="email",$n="number",Bn="password",Hn="tel",Ee="text",Un="aria-errormessage",Gn="aria-invalid",Yn="data-invalid",Zn="data-readonly",qn="aria",Wn="data",qe="max",Xn="maxLength",We="min",Kn="minLength",Te="$ref";var jn="source",Jn="state",Xe="http://luna.internal";var Qn="type",er={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};import{format as ea,formatDistanceToNow as nr,formatDuration as ta,intervalToDuration as na,isValid as Ke,parseISO as ra}from"date-fns";import{enUS as rr,es as Bt}from"date-fns/locale";function f(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function z(e){return e==null||e===""}function X(e){return p(e)||typeof e=="number"||$t(e)}function p(e){return typeof e=="string"}function tr(e){return f(e)&&"url"in e}function $t(e){return typeof e=="boolean"}var or={en:rr,"en-US":rr,es:Bt,"es-ES":Bt,"es-MX":Bt},oa={short:"M/d/yy",medium:"MMM d, yyyy",long:"MMMM d, yyyy",full:"EEEE, MMMM d, yyyy"},ia={ms:1,s:1e3,min:6e4,h:36e5,d:864e5};function ir(e){if(e)return or[e]??or[e.split("-")[0]]}function je(e){if(typeof e=="number"&&!Number.isNaN(e))return e;if(p(e)&&e.trim()!==""){let t=Number(e);return Number.isNaN(t)?null:t}return null}function ar(e,t,n){let r=ia[t];if(r===void 0)return String(e);let o=e*r,i=na({start:0,end:o});return ta(i,{locale:n})}function sr(e){if(e instanceof Date)return Ke(e)?e:null;if(p(e)){let t=ra(e);if(Ke(t))return t;let n=new Date(e);return Ke(n)?n:null}if(typeof e=="number"){let t=new Date(e);return Ke(t)?t:null}return null}var aa={currency:(e,t,n)=>{let r=je(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=je(e);return r===null?String(e):new Intl.NumberFormat(n.locale,{style:"percent"}).format(r)},number:(e,t,n)=>{let r=je(e);return r===null?String(e):new Intl.NumberFormat(n.locale).format(r)},date:(e,t,n)=>{let r=sr(e);if(!r)return String(e);let o=t[0]??"short",i=ir(n.locale);if(o==="relative")return nr(r,{addSuffix:!0,locale:i});let a=oa[o]??o;return ea(r,a,{locale:i})},duration:(e,t,n)=>{let r=ir(n.locale);if(typeof e=="number")return ar(e,t[0]??"ms",r);if(p(e)){let i=je(e);if(i!==null)return ar(i,t[0]??"ms",r)}let o=sr(e);return o?nr(o,{addSuffix:!0,locale:r}):String(e)}};function lr(e,t,n){let r=t.split(":").map(s=>s.trim()).filter(s=>s.length>0);if(r.length===0)return;let[o,...i]=r,a=aa[o];if(a)return a(e,i,n)}var sa=/^\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(X)||X(e))return e;if(f(e)){let n=la(e,t);if(X(n))return n}}}function la(e,t){let n=P(e,t);if(X(n))return n}function ur(e,t){if(Array.isArray(e))return e;let n=P(e,t);return Array.isArray(n)?n:null}function P(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 if(Array.isArray(r)){let i=Number(o);if(!Number.isInteger(i)||i<0||i>=r.length)return null;r=r[i]}else return null;return r}function Yt(e,t={description:zn,label:_n,value:Y}){return e.map(n=>{if(f(n)){let r=P(n,t.label),o=P(n,t.value);if(X(r)&&X(o)){let i=P(n,t.description);return{label:`${r}`,value:`${o}`,...X(i)&&{description:`${i}`}}}}return n})}function cr(e=Ee){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==Ye?n.trim().toLowerCase():Ee}function dr(e){let t={};for(let n of e.keys()){let r=e.getAll(n);t[n]=r.length>1?r:r[0]}return t}function fr(e){let t={};for(let n of Object.keys(e)){let r=n.split(".");if(r.length===1){t[n]=e[n];continue}let o=t;for(let a=0;a<r.length-1;a++){let s=r[a],l=r[a+1],u=sa.test(l);s in o||(o[s]=u?[]:{}),o=o[s]}let i=r[r.length-1];o[i]=e[n]}return Ht(t),t}function Ht(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)&&Ht(o);e[t]=r}else f(n)&&Ht(n)}}var ua=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function ae(e,t={},n={}){if(p(e))return ca(e,t,n);if(Array.isArray(e))return e.map(r=>ae(r,t,n));if(f(e)){let r={};for(let o in e)r[o]=ae(e[o],t,n);return r}return e}function Pe(e,t={},n={}){return ye(e)?ae(e,t,n):e}function ye(e){return p(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>ye(t)):f(e)?Object.values(e).some(t=>ye(t)):!1}function ca(e,t={},n={}){return e.replace(/{([^}]{1,200})}/g,(r,o)=>{let i=String(o).split("|").map(c=>c.trim()),[a,...s]=i;if(!a)return r;let l=a.includes(".")?P(t,a):t[a];if(s.length===0)return X(l)?String(l):r;if(l==null)return r;let u=l;for(let c of s){let d=lr(u,c,{locale:n.locale});if(d===void 0)return r;u=d}return String(u)})}function mr(e,t){if(!p(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=ua.exec(e))!==null;){let[a,s,l]=n,u=n.index;o=!0,u>r&&i.push(e.substring(r,u));let c=t?t(u,l,s):a;i.push(c),r=u+a.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var be={error:(...e)=>{Zt()&&!qt()&&Je().error("[Luna Form]",...e)},warn:(...e)=>{Zt()&&!qt()&&Je().warn("[Luna Form]",...e)},info:(...e)=>{Zt()&&!qt()&&Je().info("[Luna Form]",...e)}},Zt=()=>typeof Je()<"u",qt=()=>!0,Je=()=>globalThis.console;function pr(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===Y&&n.push(i),i.action===jn&&r.push(i),i.action===Jn&&o.push(i);t({sources:r,states:o,values:n})}function gr(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(tr(i)){let a=ae(i.url,e),s=i.body?ae(i.body,e):i.body;n(o,{...i,url:a,body:s})}}}var xe={eq:ga,gt:ha,gte:va,in:ba,lt:Sa,lte:Ra,neq:ya,nin:xa,contains:Ta,exists:Ca,truthy:Aa},da=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,yr=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function fa(e){return typeof e=="string"&&da.test(e)}function ma(e){return typeof e=="string"&&yr.test(e)}function pa(e){let t=e.match(yr);if(t){let[,n,r,o,i,a,s]=t;return new Date(Number(o),Number(r)-1,Number(n),Number(i??0),Number(a??0),Number(s??0)).getTime()}return NaN}function se(e){return fa(e)?new Date(e).getTime():ma(e)?pa(e):Number(e)}function ga(e,t){return e===t}function ya(e,t){return e!==t}function ba(e,t){return Array.isArray(t)&&t.includes(String(e))}function xa(e,t){return Array.isArray(t)&&!t.includes(String(e))}function ha(e,t){return se(e)>se(t)}function va(e,t){return se(e)>=se(t)}function Sa(e,t){return se(e)<se(t)}function Ra(e,t){return se(e)<=se(t)}function Ta(e,t){return typeof e=="string"?e.includes(String(t)):Array.isArray(e)?e.map(String).includes(String(t)):!1}function Ca(e){return Array.isArray(e)?e.length>0:e!=null&&e!==""}function Aa(e){return Array.isArray(e)?e.length>0:!!e}function Ce(e,t){if(t===void 0)return!0;if(p(t)){let n=Qe(e,Y);return Array.isArray(n)?n.length===1&&n[0]===t:n===t}if($t(t)){let n=Qe(e,Y);return(Array.isArray(n)?n.length>0:!!n)===t}if(Array.isArray(t)){let n=Qe(e,Y);return Array.isArray(n)?n.some(r=>t.includes(String(r))):t.includes(String(n))}return Fa(e,t)}function Fa(e=null,t){let n=Qe(e,t.field??Y),{operator:r="eq",value:o}=t,i=xe[r];return i?i(n,o):!1}function Qe(e,t){return f(e)?P(e,t):e}function br(e=null,t=[],n){for(let r of t){let{target:o,state:i,when:a}=r,s=Array.isArray(o)?o:[o];if(!e){n(s);continue}let l=Ce(e,a);n(s,l?i:void 0)}}function xr(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?ae(i,e):void 0,{onlyIfTargetEmpty:r.onlyIfTargetEmpty??!1})}var Ve=e=>N(In)(e),hr=e=>N(En)(e),et=e=>N(Pn)(e),tt=e=>N(Ln)(e),vr=e=>N(Vn)(e),nt=e=>N(On)(e),rt=e=>N(Mn)(e),Z=N(Rn),te=N(An),_=N(Nn),K=N(Dn),ne=N(wn),le=N(Ye),j=N(kn),Wt=N(Fn),Sr=N(Ee,_t,Bn,Hn),Rr=N(Tn,_t),ot=N(Cn,$n);function it(e){return ne(e)||_(e)}function Le(e){return e.type===Mt}function q(e){return e.type===Ie}function at(e){return e.type!==Ie&&e.type!==Mt}function Ae(e){return j(e)||ne(e)||K(e)}function Tr(e){return le(e)||Wt(e)}function R(e){return e!=null&&e!==""}function N(...e){return t=>{let n=p(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Cr(e,t={}){if(j(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&f(n))return[n]}}function Ar(e){return ne(e)||_(e)?!0:e.advanced?.horizontal??!1}function Fr(e){return _(e)?e.advanced?.reverse!==!1:!1}function wr(e,t){let n=e.readonly??!1;return t||n}function Xt(e){if(wa(e)){let t=e.source;if(Array.isArray(t)||f(t)&&!(Te in t))return t}}function wa(e){return ne(e)||K(e)||j(e)&&!e.disabled}import{isValid as st,parse as lt,format as ut}from"date-fns";var Na=/^\d+$/,ct=new Date(2e3,0,1),ka=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[];function Kt(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function jt(){return Array.from({length:7},(e,t)=>({value:t.toString(),label:new Date(2e3,0,2+t).toLocaleString("default",{weekday:"long"})}))}function Ir(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 Ia(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function Ea(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return er[n]??"Other"}function Pa(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function Nr(e,t){let n=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"longOffset"}).formatToParts(t),r=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"long"}).formatToParts(t),i=(n.find(s=>s.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),a=Pa(r,e);return{offset:i,longName:a}}function kr(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function Er(){let e=new Date,t=Ia(),n=new Map,r=kr(t),{offset:o,longName:i}=Nr(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let l of ka()){if(l===t)continue;let u=kr(l),{offset:c,longName:d}=Nr(l,e),y={value:l,label:`${u} - ${d} (${c})`},m=Ea(l);if(m==="Other")continue;let C=n.get(m);C?C.push(y):n.set(m,[y])}for(let l of n.values())l.sort((u,c)=>u.label.localeCompare(c.label));let s=Array.from(n.entries()).sort(([l],[u])=>l.localeCompare(u)).map(([l,u])=>({label:l,items:u}));return[{label:"Suggested",items:[a]},...s]}function 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,s=parseInt(a,10);if(!isNaN(s))return i==="+"?n+s:n-s}return n}return Na.test(r)?parseInt(r,10):n}function dt(e,t){if(!e)return"";try{let n=lt(e,t,ct);return st(n)?ut(n,"yyyy-MM-dd"):""}catch{return""}}function Pr(e,t){if(!e)return"";try{let n=lt(e,t,ct);return st(n)?ut(n,"HH:mm:ss"):""}catch{return""}}function Vr(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 st(r)?ut(r,t):""}catch{return""}}function ft(e,t="MMMM d, yyyy"){if(!e)return"";try{let n=lt(e,"yyyy-MM-dd",ct);return st(n)?ut(n,t):""}catch{return""}}function he(e){return e.advanced?.format??"HH:mm"}function re(e){return e.advanced?.format??"MMMM d, yyyy"}var mt=Jt();function Dr(e){if(K(e))return Va(e)}function Va(e){if(nt(e))return jt();if(rt(e))return Kt()}function Or(e){if(j(e))return La(e)}function La(e){if(hr(e))return jt();if(et(e))return Kt();if(tt(e)){let t=e.advanced?.length?.min??mt,n=e.advanced?.length?.max??mt+5;return Ir(Qt(t,mt),Qt(n,mt))}if(vr(e))return Er();if(Ve(e))return[{value:"true",label:"Yes"},{value:"false",label:"No"}]}function Mr(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return le(e)?{...n,...Da(e)}:j(e)?{...n,...zr(e,Or)}:Wt(e)?{...n,...Ma(e)}:K(e)?{...n,...Oa(e)}:n}function Da(e){let t=cr(e.type),n={...e,type:t};return{..._a(e),..._r(e),...za(n),...Sr(n)?$r(n):{},type:t}}function zr(e,t){let n=t(e);return n?{options:n}:{}}function Oa(e){let t=zr(e,Dr),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function Ma(e){return{..._r(e),...$r(e)}}function _r(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function za(e){return ot(e)?$a(e):{}}function _a(e){if(te(e)){let t=he(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function $r(e){return Br(e,{min:Kn,max:Xn})}function $a(e){return Br(e,{min:We,max:qe})}function Br(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 Hr(e,t){let n=Xt(e);return n||Cr(e,t)}function Ba(e,t){let n=f(t)&&e.name in t?t[e.name]:t,r=Gt(n,e.advanced?.entity),o=R(r)?r:e.defaultValue;return te(e)&&R(o)?Ha(e,o):Z(e)&&R(o)?Za(e,o):o}function Ha(e,t){let n=he(e);return p(t)?Pr(t,n):t}function Ua(e,t,n){return Ae(e)&&Array.isArray(n)?{...t,[Ze]:n}:t}function Ga(e,t,n){if(e.required&&!R(n)&&j(e)&&e.advanced?.preselected!==!1&&Ze in t){let r=t[Ze];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function Ya(e,t){return Ae(e)&&Array.isArray(t)?Yt(t,e.advanced?.options):t}function Ur(e,t,n,r){let o=Ba(e,r),i=Array.isArray(n)?Ya(e,n):n,a=Ua(e,t,i),s=Ga(e,a,o);return{commonPropsWithOptions:a,defaultValue:s}}function Gr(e,t){return _(e)?{checked:R(t)?t:!1}:K(e)?{value:Array.isArray(t)?t:[]}:Z(e)&&p(t)&&R(t)?{value:ft(t,re(e))}:Ve(e)?{value:R(t)?String(t):""}:{value:t??""}}function Za(e,t){let n=re(e);return p(t)?dt(t,n):t}function Yr(e,t){let n=e??t;return n?{"data-format":n}:{}}function Lr(e){let t=[];for(let n of e){if(typeof n=="string"){t.push(n);continue}f(n)&&"value"in n&&"label"in n&&p(n.value)&&p(n.label)&&t.push({label:n.label,value:n.value})}return t}function Zr(e){if(!Ae(e))return;let t=K(e)?Dr(e):Or(e);if(Array.isArray(t)){let r=Lr(t);return r.length>0?r:void 0}let n=Xt(e);if(Array.isArray(n)){let r=Yt(n,e.advanced?.options),o=Lr(r);return o.length>0?o:void 0}}function qr(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 qa=/^#\/definition\//;function gt(e=[],t){let n=pt(e,t);return Array.isArray(n)?n.filter(Xa).sort((r,o)=>Wr(r)-Wr(o)):[]}function pt(e,t,n=new Map,r=new WeakSet){if(!Wa(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=>pt(i,t,n,r));if(Te in e&&p(e[Te])){let i=e[Te].replace(qa,""),a=P(t,i);return a!==null?pt(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=pt(a,t,n,r);return r.delete(e),n.set(e,o),o}function Xr(e){return Object.entries(e??{})}function Wr(e){return e.order??Number.MAX_VALUE}function Wa(e){return e!==void 0&&f(e)&&Object.keys(e).length>0}function Xa(e){return Qn in e?!0:Array.isArray(e[zt])?e[zt].length>0:!0}function Kr(e,t){let n={};for(let[r,o]of Xr(t))n[`${e}-${r}`]=o;return n}function Ka(e){return Kr(qn,e)}function ja(e){return Kr(Wn,e)}function jr(e,t){let n=Ka(e.advanced?.aria);return t&&t.length>0&&(n[Gn]="true",n[Un]=`${e.name}-error`),n}function Jr(e){return ja(e.advanced?.data)}var Qr={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},eo={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function to(e,t=2){return Qr[e&&e in Qr?e:t]}function no(e){if(e&&e in eo)return eo[e]}function Ja(e,t){let n=e.advanced?.length?.min??1;if(t){let r=P(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function ro(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===Ie}function oo(e,t){let n=Ja(e,t);return Array.from({length:n},(r,o)=>o)}function io(e){return e.advanced?.title??e.label??e.name}function ao(e){let t={};for(let n of e)if(q(n))for(let r of n.fields)t[r.name]=r;else t[n.name]=n;return t}function yt(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 T}from"zod";function S(e,t){return e?t?t[e]??e:e:""}var Qa=[[_,so],[Rr,es],[ot,rs],[ne,ts],[Ve,so],[et,is],[tt,os],[K,en],[nt,en],[rt,en]];function co(e,t=[],n){let r=T.object(e);if(t.length===0)return r;let o=us(r,t,n);return fs(o,t,n)}function fo(e){let t={},n=T.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function mo(e,t){for(let[n,r]of Qa)if(n(e))return r(e,t);return ns(e,t)}function es(e,t){let n=T.string().trim();if(e.required){let r=ue(e,t),o=n.min(1,r).pipe(lo(e,t));return T.preprocess(i=>z(i)?"":i,o)}return n.pipe(lo(e,t)).or(T.literal("")).nullable()}function so(e,t){let n=T.preprocess(r=>{if(typeof r=="string"){if(r==="true")return!0;if(r==="false")return!1}return r},T.coerce.boolean());return e.required?(_(e)?n=n.refine(r=>r===!0,{message:ue(e,t)}):n=n.refine(r=>typeof r=="boolean",{message:ue(e,t)}),T.preprocess(r=>r===null?!1:r,n)):n.nullable()}function ts(e,t){let n=T.coerce.string();return e.required?(n=n.min(1,ue(e,t)),T.preprocess(r=>z(r)?"":r,n)):n.or(T.literal("")).nullable()}function ns(e,t){let n=T.coerce.string().trim();return n=po(n,e,t),e.required?(n=go(n,e,t),T.preprocess(r=>z(r)?"":r,n)):n.nullable()}function rs(e,t){let n=T.coerce.number().int();return n=po(n,e,t),e.required?(n=go(n,e,t),T.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function os(e,t){return e.required?T.preprocess(as,T.coerce.number({message:ue(e,t)}).int()):T.coerce.number().int().nullable()}function is(e,t){let n=ue(e,t),r=T.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function as(e){return e===null||e===""?void 0:e}function lo(e,t){let n=e.validation?.email?S(e.validation?.email,t):void 0;return T.email(n)}function po(e,t,n){return e=ss(e,t,n),e=ls(e,t,n),e}function go(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,ue(t,n)):e}var ss=(e,t,n)=>yo(e,t,We,n),ls=(e,t,n)=>yo(e,t,qe,n);function yo(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?S(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function us(e,t=[],n){let r=ds(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:s}of r)if(!cs(o,a,s)){let l=S(s.message,n);i.addIssue({code:"custom",message:l,path:[a]})}})}function cs(e,t,n){let r=n.operator??"eq",o=xe[r];return o?o(e[t],e[n.field]):!1}function ds(e){let t=[];for(let n of e){let r=n.validation?.custom;if(!r)continue;let o=Array.isArray(r)?r:[r];for(let i of o)t.push({name:n.name,rule:i})}return t}function bo(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let s=a.operator??"eq",l=xe[s];if(l&&!l(e,n(a.field))&&a.message){let u=S(a.message,r);o.push(u)}}return o}function ue(e,t){return e.validation?.required?S(e.validation?.required,t):void 0}function en(e,t){let n=T.array(T.string());return e.required&&(n=n.min(1,ue(e,t))),T.preprocess(r=>z(r)?[]:Array.isArray(r)?r.map(String):[String(r)],n)}function fs(e,t=[],n){let r=t.filter(ms);return r.length===0?e:e.superRefine((o,i)=>{let a=f(o)?o:{};for(let s of r)for(let l of ps(a,s,n))i.addIssue({code:"custom",path:l.path,message:l.message})})}function ms(e){let t=e.validation;return t!==void 0&&(t.requiredWhen!==void 0||t.pattern!==void 0||t.rules!==void 0)}function ps(e,t,n){let r=[],o=e[t.name],i=t.validation?.requiredWhen;if(i){let l=(Array.isArray(i)?i:[i]).find(u=>De(e,u));l&&!nn(o)&&r.push({path:[t.name],message:tn(l.message??t.validation?.required,n)})}let a=t.validation?.pattern;a&&!xo(a,o)&&r.push({path:[t.name],message:tn(a.message,n)});for(let s of t.validation?.rules??[])gs(e,s.when)&&!ys(s,o)&&r.push({path:[t.name],message:tn(s.message,n)});return r}function De(e,t){let n=xe[t.operator??"eq"];return n?n(P(e,t.field),t.value):!1}function gs(e,t){if(!t)return!0;if(Array.isArray(t))return t.every(o=>De(e,o));if("field"in t)return De(e,t);let n=t.all?t.all.every(o=>De(e,o)):!0,r=t.any?t.any.some(o=>De(e,o)):!0;return n&&r}function ys(e,t){switch(e.assert){case"required":return nn(t);case"minItems":return Array.isArray(t)&&t.length>=Number(e.value);case"maxItems":return Array.isArray(t)&&t.length<=Number(e.value);case"min":return uo(t)>=Number(e.value);case"max":return uo(t)<=Number(e.value);case"oneOf":return Array.isArray(e.value)&&e.value.map(String).includes(String(t));case"pattern":return bs(e.value)?xo(e.value,t):!0;default:return!0}}function xo(e,t){return!nn(t)||typeof t!="string"||e.allowInterpolation&&ye(t)?!0:new RegExp(e.regex,e.flags).test(t)}function nn(e){return p(e)?e.trim().length>0:xe.exists(e,void 0)}function uo(e){return typeof e=="number"?e:p(e)||Array.isArray(e)?e.length:0}function bs(e){return f(e)&&"regex"in e}function tn(e,t){return e?S(e,t):void 0}function ho(e,t){if(!t||!hs(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||xs(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 xs(e){return e==="https"?"443":"80"}function hs(e){return/^(https?:)?\/\//.test(e)}function vo(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,Xe);new URL(t,Xe).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(Xe,""):o}catch{return t||e}}function So(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=vo(t.url,n.url),o=vs(t,n),i=Ss(t,n);return{...t,...n,url:r,body:o,headers:i}})}function vs(e,t){return f(t.body)&&f(e?.body)?{...e.body,...t.body}:t.body??e?.body}function Ss(e,t){return f(t.headers)&&f(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function bt(e,t){return{...e,...t}}var Rs={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 Oe(e,t){return!t||!p(e)||z(e)?e:(Array.isArray(t)?t:[t]).reduce((r,o)=>{let i=Rs[o];return i?i(r):r},e)}import{jsx as Ts}from"react/jsx-runtime";function oe(e){return mr(e,(t,n,r)=>Ts("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}import{useCallback as Cs,useState as As}from"react";import{jsx as Me,jsxs as rn}from"react/jsx-runtime";function Ro(e){let{fields:t=[]}=e.section,[n,r]=As(!1),o=Cs(()=>r(i=>!i),[]);return rn("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:[Me("legend",{children:rn("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:[Me(Re,{expanded:n}),Me("span",{children:oe(e.section.title)})]})}),Me(ke,{visible:n,children:rn("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&&Me("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:oe(e.section.description)}),e.group]})})]})}import{jsx as xt,jsxs as To}from"react/jsx-runtime";function Co(e){let t=To("div",{className:"flex flex-col",children:[e.title&&xt("legend",{className:"mb-3 font-medium text-zinc-800 dark:text-zinc-200",children:oe(e.title)}),e.description&&xt("p",{className:"-mt-2 text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:oe(e.description)})]});return e.step?To("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 Ao,jsxs as Fs}from"react/jsx-runtime";function ht(e){return Fs("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:[Ao(Co,{description:e.description,step:e.step,title:e.title}),Ao("div",{className:"w-full min-w-0",children:e.children})]})}import{jsx as ws}from"react/jsx-runtime";function ce(e){return ws("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 on}from"react/jsx-runtime";function Fo(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=bt(e.style,{compact:e.section.advanced?.compact}),o=on(ce,{compact:r,children:e.children});return!e.section.title&&!e.section.description?o:e.section.advanced?.collapsible?on(Ro,{section:e.section,group:o}):on(ht,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),step:n,title:e.section.title,children:o})}import{jsx as wo}from"react/jsx-runtime";function No(){return wo("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:wo("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-zinc-200 dark:bg-zinc-800"})})}import{useAtomValue as Ps}from"jotai";import{atom as ve}from"jotai";import{atomFamily as ko}from"jotai-family";import{deepEqual as an}from"fast-equals";function vt(e,t){let{[t]:n,...r}=e;return r}function Ns(e){return ko(t=>ve(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];an(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,vt(i,t))}))}function ks(e){return ve(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function Is(e){return ve(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let s of r)s in i&&(delete i[s],a=!0);a&&n(e,i)})}function Es(e){return ve(null,(t,n,r)=>{let o=t(e);an(o,r)||n(e,r)})}function Io(e,t={}){let{merge:n,validateTarget:r}=t;return ko(o=>ve(i=>{let a=i(e)[o];if(a&&n)return n(Object.values(a))},(i,a,s,l)=>{if(r&&!r(s))return;let u=i(e),c={...u[s]??{}};if(l!=null){let d=c[o];(!d||!an(d,l))&&(c[o]=l,a(e,{...u,[s]:c}))}else o in c&&(delete c[o],Object.keys(c).length===0?a(e,vt(u,s)):a(e,{...u,[s]:c}))}))}function Eo(e){return ve(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let s of r)s in i&&(delete i[s],a=!0);for(let s in i){let l={...i[s]},u=!1;for(let c of r)c in l&&(delete l[c],u=!0,a=!0);u&&(Object.keys(l).length===0?delete i[s]:i[s]=l)}a&&n(e,i)})}function Fe(e={}){let t=ve(e);return{atom:t,clearAll:ks(t),clear:Is(t),bulkReport:Es(t),report:Ns(t)}}var Po=Fe(),St=Po.atom,Rt=Po.report;function Vs(e,t){return e.fields.every(n=>Vo(n,t))}function Vo(e,t){return t[e.name]?.hidden??e.hidden??!1}function Ls(e,t){return q(e)?Vs(e,t):Vo(e,t)}function Tt(e){let t=Ps(St);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>Ls(r,t))?null:e.children}import{jsx as ze,jsxs as Lo}from"react/jsx-runtime";function Do(e){let t=gt(e.sections,e.definition);return ze("div",{className:"h-full w-full",children:ze("form",{noValidate:e.noValidate,action:e.action,children:Lo(ce,{children:[t.map((n,r)=>Lo(Tt,{fields:n.fields??[],children:[ze(Fo,{advanced:e.advanced,section:n,step:r+1,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.advanced?.separator&&ze(No,{})]},`key-${n.id}-${r}`)),e.control&&ze(hn,{isPending:e.isPending,children:e.control})]})})})}import{jsx as Ds}from"react/jsx-runtime";function Oo(e){return Ds("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 Os}from"react";import{jsx as Mo,jsxs as zo}from"react/jsx-runtime";function Ct(e){let t={context:e.context,env:e.config?.env,value:e.value},r={locale:e.config?.env?.locale},[o,i]=Os(()=>f(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),a=()=>i(c=>!c),s=f(e.text)&&p(e.text.title)?oe(S(Pe(e.text.title,t,r),e.translations)):void 0,l=S(Pe(p(e.text)?e.text:e.text?.message,t,r),e.translations),u=oe(l);return u?zo("div",{className:"flex flex-col gap-2",children:[s&&zo("button",{className:"flex items-center gap-1 text-left text-xs font-medium text-zinc-700 hover:text-zinc-900 dark:text-zinc-300 dark:hover:text-zinc-100",onClick:a,type:"button",children:[s,Mo(Re,{expanded:o})]}),o&&Mo(Oo,{title:l,children:u})]}):null}var At=Fe(),J=At.atom,_o=At.clearAll,$o=At.clear,de=At.report;import{useAtomValue as Bo}from"jotai";import{jsx as Ms}from"react/jsx-runtime";function Ft(e){let t=Bo(de(e.field.name)),r=Bo(Rt(e.field.name))?.description??e.field.description;return Ms(Ct,{config:e.config,context:e.context,text:r,translations:e.translations,value:t})}import{twMerge as zs}from"tailwind-merge";import{jsx as Ho,jsxs as _s}from"react/jsx-runtime";function Uo(e){let t=e.style?.showOptionalLabel??!0,n=ne(e.field)||_(e.field);return _s("label",{"data-slot":"field-label","data-normal":n,className:zs("flex w-fit items-center text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal [[data-slot=column]_&]:md:w-full","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,title:p(e.children)?e.children:void 0,children:[Ho("span",{className:"[[data-slot=column]_&]:md:truncate",children:e.children}),t&&!e.field.required&&Ho("span",{className:"ml-2 flex-shrink-0 text-sm text-zinc-600 dark:text-zinc-400",children:S("(Optional)",e.translations)})]})}import{jsx as Go,jsxs as $s}from"react/jsx-runtime";function Yo(e){let t={context:e.context,env:e.config?.env},n=Pe(e.field.label,t);return $s("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[Go(Uo,{field:e.field,style:e.config?.style,translations:e.translations,children:S(n,e.translations)}),e.horizontal===!0&&Go(Ft,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}import{Fragment as Bs,jsx as Zo,jsxs as Hs}from"react/jsx-runtime";function qo(e){return Hs(Bs,{children:[e.field.name&&e.field.label&&Zo(Yo,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&Zo(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 al,useEffect as sl,useRef as ll}from"react";import{createContext as Us}from"react";var Gs=e=>e,fe=Us(Gs);var sn=Fe(),Wo=sn.clear,Xo=sn.bulkReport,Nt=sn.report;import{use as js,useCallback as Qo,useRef as _e,useTransition as Js}from"react";import{use as Ys,useEffect as Zs,useEffectEvent as Ko,useMemo as qs}from"react";function jo(e,t,n,r){let{name:o}=e,i=qs(()=>mo(e,r),[e,r]),a=Ys(Ge),s=Ko(u=>{u&&t(u,i,e)}),l=Ko(u=>{u&&n(u,{keepValue:a})});return Zs(()=>(s(o),()=>{l(o)}),[o]),i}import{useSetAtom as ln,useStore as Qs}from"jotai";import{useCallback as Ws,useEffect as Xs,useRef as Ks}from"react";function Jo(){let e=Ks(null);return Xs(()=>()=>{e.current&&clearTimeout(e.current)},[]),Ws((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}function ei(e,t){let n=Qs(),r=e.field.advanced?.entity,o=Jo(),[,i]=Js(),a=js(fe),{setValue:s,shouldSkipOnChange:l,value:u,setSource:c}=t,d=_e(u);d.current=u;let y=_e(e.translations);y.current=e.translations;let m=it(e.field),C=ln(J),w=ln(St),k=ln(Nt(e.field.name)),V=jo(e.field,e.onMount,e.onUnmount,e.translations),H=S(e.commonProps.placeholder,e.translations),L={...e.commonProps,placeholder:H};function I(b){let[,g]=e.getSchema();return g.find(v=>v.name===b)}function D(b){let g=I(b);if(g&&le(g)){let v=g.advanced?.transform;if(v)return v}}let E=_e(new Map),ie=_e(null);ie.current=b=>{let g=le(e.field)?Oe(b,e.field.advanced?.transform):b;s(g),e.onValueChange&&e.onValueChange({name:a(e.field.name),type:e.field.type,value:g})};let x=_e(null);x.current=b=>{let g=e.field.event?.change;g&&pr(g,({sources:v,states:F,values:O})=>{i(()=>{gr(b,v,(U,Q)=>{c(yt(U,e.field.name),Q)}),br(b,F,(U,Q)=>{let Se=U.map(M=>yt(M,e.field.name));w(M=>Q?Se.reduce((G,pe)=>({...G,[pe]:Q}),M):Se.reduce((G,pe)=>vt(G,pe),M));let W=Q?.hidden===!0?Se:Q===void 0?Se.filter(M=>I(M)?.hidden===!0):[];W.length>0&&C(M=>{let G=!1,pe={...M};for(let ge of Object.keys(M))W.some(ee=>ge===ee||ge.startsWith(`${ee}.`))&&(delete pe[ge],G=!0);return G?pe:M})}),xr(b,O,(U,Q,Se)=>{let W=yt(U,e.field.name),M=D(W),G=M?Oe(Q,M):Q,ge=n.get(J)[W];if(Se.onlyIfTargetEmpty&&!z(ge)){let ee=E.current.get(W);if(!Object.is(ee,ge))return}if(G!==ge&&(C(ee=>({...ee,[W]:G})),E.current.set(W,G),e.onValueChange)){let ee=I(W);ee&&e.onValueChange({name:a(W),type:ee.type,value:G})}})})})};let h=Qo(b=>{let v=V.safeParse(b).error?.issues.map(U=>U.message)??[],F=e.field.validation?.custom,O=F?bo(b,F,U=>n.get(de(U)),y.current):[];k([...v,...O])},[e.field.validation?.custom,V,k,n]),A=Qo(b=>{if(!m){let g=b.target.value;e.config.validation.blur&&h(g)}},[m,e.config.validation.blur,h]);return{applyChangeEventsRef:x,commonProps:L,entity:r,hasClickable:m,onBlur:A,onValueChangeRef:ie,setTimeoutRef:o,shouldSkipOnChange:l,validated:h,valueRef:d}}import{deepEqual as el}from"fast-equals";import{useAtom as tl}from"jotai";import{use as nl,useCallback as rl,useEffect as ol,useRef as il,useEffectEvent as ti}from"react";function ni(e,t){let{name:n}=e,r=il(!1),[o,i]=tl(de(n)),a=nl(fe),s=ti((c,d=!1)=>{let y=le(e)?Oe(c,e.advanced?.transform):c;!d&&!el(o,y)&&(r.current=!0),i(y)}),l=ti(c=>{let d=$(a(n),c);R(d)?s(d):R(e.defaultValue)&&s(e.defaultValue,!0)});ol(()=>{if(t){l(t);return}R(e.defaultValue)&&s(e.defaultValue,!0)},[t,e.defaultValue]);let u=rl(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:u,value:o}}import{jsx as ri}from"react/jsx-runtime";function oi(e){let{useSource:t,useExtraProps:n,getValue:r,shouldSkipChange:o,dispatchChange:i,buildInitialSelected:a,isInitialReady:s}=e.strategies,{setValue:l,shouldSkipOnChange:u,value:c}=ni(e.field,e.value),{data:d,setSource:y}=t(e.field,e.config,c),{applyChangeEventsRef:m,commonProps:C,entity:w,hasClickable:k,onBlur:V,onValueChangeRef:H,setTimeoutRef:L,validated:I,valueRef:D}=ei(e,{setValue:l,shouldSkipOnChange:u,value:c,setSource:y}),E=n?.(e.field),ie=ll(!1),{commonPropsWithOptions:x,defaultValue:h}=Ur(e.field,C,d,c),A=Gr(e.field,h);sl(()=>{let g=!!e.value||R(e.field.defaultValue);if(ie.current||!g)return;if(!e.field.event?.change){ie.current=!0;return}let v=e.value?$(e.field.name,e.value):void 0,F=R(v)?v:e.field.defaultValue;if(!R(F)||!s(e.field,F,d))return;ie.current=!0;let O=a(F,d,w);m.current?.(O)},[m,a,d,w,s,e.field,e.value]);let b=al(g=>{let v=r(g,e.field);o({field:e.field,shouldSkipOnChange:u,hasClickable:k,inputValue:v,valueRef:D})||(H.current?.(v),e.config.validation.change&&I(v),e.field.event?.change&&i({applyChangeEventsRef:m,data:d,entity:w,inputValue:v,setTimeoutRef:L}))},[m,d,i,w,r,k,H,e.config.validation.change,e.field,L,o,u,I,D]);return wt(e.config.inputs[e.field.type],g=>ri(qo,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:ri(g,{...x,...e.ariaAttributes,...e.dataAttributes,...E,...A,onBlur:V,onChange:b})}))}import{jsx as ul}from"react/jsx-runtime";function we(e){return function(n){return ul(oi,{...n,strategies:e})}}function ii(e){let t=Z(e)?re(e):null,n=te(e)?he(e):null;return{dateFormat:t,timeFormat:n}}import{atom as cl}from"jotai";var dl=e=>{let t=So(e);if(t)return t},fl=e=>e.trim()!=="",ai=cl({}),kt=Io(ai,{merge:dl,validateTarget:fl}),si=Eo(ai);import{useSetAtom as ml}from"jotai";function It(e){return{data:null,setSource:ml(kt(e.name))}}var li=we({useSource:It,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=ii(e);return Yr(t,n)},getValue:(e,t)=>{let n=e.target.value,r=te(t)?he(t):null;if(r!==null)return Vr(n,r);let o=Z(t)?re(t):null;return o!==null&&ft(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)=>R(t)});import{deepEqual as bl}from"fast-equals";import{useAtom as yl}from"jotai";import pl from"swr";function ui(e=null,t,n=!1){let{data:r,error:o}=pl(gl(e,t,n),t.fetcher.provider);if(o&&be.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return ur(r,e.namespace)}return null}function gl(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!ye(e.url)){if(ho(e.url,t.fetcher.remotePatterns))return e;be.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function ci(e,t,n){let r=Hr(e,n),[o,i]=yl(kt(e.name));return[ui(o??r,t,e.disabled),i]}function xl(e,t,n){let[r,o]=ci(e,t,n);return{data:r,setSource:o}}function hl(e,t){return j(e)&&t===""}var di=we({useSource:xl,getValue:e=>e.target.value,shouldSkipChange:({field:e,shouldSkipOnChange:t,hasClickable:n,inputValue:r,valueRef:o})=>hl(e,r)||!n&&t()&&(!r||bl(r,o.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)=>(!Ae(e)||!!n&&n.length>0)&&R(t)});var fi=we({useSource:It,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)=>R(t)});import{jsx as un}from"react/jsx-runtime";function mi(e){return Z(e.field)||te(e.field)?un(li,{...e}):Tr(e.field)?un(fi,{...e}):un(di,{...e})}import{jsx as pi}from"react/jsx-runtime";function gi(e){return!e.errors||e.errors.length===0?null:pi("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)=>pi("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}import{twMerge as vl}from"tailwind-merge";import{jsx as Sl}from"react/jsx-runtime";function Et(e){let t=e.errors&&e.errors.length>0;return Sl("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Yn]:"true"},...e.disabled&&{[Zn]:"true"},"data-orientation":e.orientation,className:vl("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 Rl}from"tailwind-merge";import{jsx as Tl}from"react/jsx-runtime";function yi(e){return Tl(Et,{...e,orientation:"vertical",className:Rl("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as Cl}from"tailwind-merge";import{jsx as Al}from"react/jsx-runtime";function bi(e){return Al(Et,{...e,orientation:"horizontal",className:Cl("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 xi}from"react/jsx-runtime";function hi(e){let t=it(e.field),n=_(e.field),r=Fr(e.field);return e.horizontal?xi(bi,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):xi(yi,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function vi(e){if(!e.field.type)return null;let t=Mr(e.field,e.disabled),n=Jr(e.field),r=jr(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 Fl}from"tailwind-merge";import{jsx as cn,jsxs as wl}from"react/jsx-runtime";function Si(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=bt(e.style,{horizontal:Ar(e.field)}),o=wr(e.field,e.disabled);return wl("div",{className:Fl("flex flex-col gap-3",no(t)),children:[cn(hi,{disabled:o,errors:n,field:e.field,horizontal:r,children:cn(vi,{disabled:o,errors:n,field:e.field,horizontal:r,children:e.children})}),cn(gi,{errors:n,name:e.field.name})]})}import{useAtomValue as Nl}from"jotai";import{jsx as El}from"react/jsx-runtime";function Ri(e){return(t,n)=>o=>{let i=Nl(e(o.field.name)),a=n(i,o);return a===null?null:El(t,{...o,...a})}}var kl=Ri(Nt);function Ti(e){return kl(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var Il=Ri(Rt);function Ci(e){return Il(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var Ai=Ci(Ti(Si));import{twMerge as dn}from"tailwind-merge";import{useState as Pl}from"react";import{Fragment as Vl,jsx as B,jsxs as me}from"react/jsx-runtime";function Fi(e){let t=e.isMultiField||e.collapsed!=null,[n,r]=Pl(t?!e.collapsed:!0);function o(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function i(){r(u=>!u)}let a=e.canRemove&&e.onRemove!=null&&B("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:dn("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"})}),s=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(Vl,{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})]}),l=me("div",{className:dn("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:dn("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(Re,{expanded:n}),s]}),!n&&e.previewBadge&&B("div",{className:"ml-auto shrink-0",children:e.previewBadge})]}):s,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:[l,B(ke,{visible:n,children:B(ce,{children:e.children})})]}):t?me("div",{className:"box-border flex w-full min-w-0 flex-col gap-2",children:[l,B(ke,{visible:n,children:B(ce,{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(ce,{children:e.children})}),a&&B("div",{className:"shrink-0",children:a})]})}import{Fragment as Dl}from"react";import{twMerge as wi}from"tailwind-merge";import{useAtomValue as Ll}from"jotai";function Pt(e,t){return Ll(de(e))??t}import{jsx as $e,jsxs as Ni}from"react/jsx-runtime";function ki({className:e,initialValue:t,name:n,options:r,separator:o,staticLabel:i}){let a=Pt(n??"",t);if(i===void 0&&r){let u=(Array.isArray(a)?a:a==null||a===""?[]:[a]).filter(c=>c!=null&&c!=="").map(c=>qr(c,r));return u.length===0?null:$e("div",{className:"flex items-center gap-1.5 overflow-hidden",children:u.map((c,d)=>Ni(Dl,{children:[(o||d>0)&&$e("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),$e("span",{"aria-label":c,className:wi("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:c,children:c})]},`${d}:${c}`))})}if(i===void 0&&(z(a)||f(a)||Array.isArray(a)))return null;let s=i??String(a);return Ni("div",{className:"flex items-center gap-1.5 overflow-hidden",children:[o&&$e("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),$e("span",{"aria-label":s,className:wi("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:s,children:s})]})}import{useAtomValue as Ol}from"jotai";import{useMemo as Ml}from"react";function Vt(e,t){let n=Ol(J);return Ml(()=>{let r=`${e}.`,o={},i=!1;for(let s in n)s.startsWith(r)&&(o[s.slice(r.length)]=n[s],i=!0);let a=t?$(e,t):void 0;return i?f(a)?{...a,...o}:o:a},[n,e,t])}import{useMemo as fn}from"react";import{jsx as Ii}from"react/jsx-runtime";function zl(e){return typeof e=="string"?{field:e}:e}function mn({className:e,fields:t,label:n="Preview",name:r,previews:o,translations:i,value:a}){let s=fn(()=>(Array.isArray(o)?o:[o]).map(zl),[o]),l=fn(()=>t?ao(t):void 0,[t]),u=Vt(r,a),c=fn(()=>{let d=[];for(let[y,m]of s.entries()){if(m.when!==void 0&&!Ce(u,m.when))continue;if(m.label!==void 0){d.push({key:m.field??`label:${m.label}:${y}`,staticLabel:S(m.label,i)});continue}if(m.field===void 0)continue;let C=`${r}.${m.field}`,w=a!=null?$(C,a):void 0,k=l?.[m.field],V=k?Zr(k):void 0;d.push({key:`${y}:${m.field}`,initialValue:w,options:V,previewName:C})}return d},[s,u,r,a,i,l]);return c.length===0?null:Ii("div",{"aria-label":n,className:"flex items-center gap-1.5 overflow-hidden",children:c.map((d,y)=>Ii(ki,{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 _l,jsx as $l}from"react/jsx-runtime";function Ei({children:e,initialValue:t,name:n}){let r=Pt(n,t),i=z(r)||f(r)||Array.isArray(r)?"":String(r);return $l(_l,{children:e(i)})}import{jsx as Lt}from"react/jsx-runtime";function Pi({canRemove:e,children:t,field:n,index:r,isMultiField:o,itemKey:i,label:a,onRemove:s,previewBadge:l,previewLabel:u,previewTags:c,translations:d,value:y}){let m=`${n.name}.${i}`,C=`${a} ${r+1}`,w=Vt(m,y);return Lt(Fi,{canRemove:e,collapsed:n.advanced?.collapsed,index:r,isMultiField:o,label:a,onRemove:s,previewLabel:Bl({fallbackLabel:C,liveItemValue:w,name:m,previewLabel:u,translations:d,value:y}),previewBadge:l?Lt(mn,{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:l,translations:d,value:y}):void 0,previewTags:c?Lt(mn,{fields:n.fields,name:m,previews:c,translations:d,value:y}):void 0,children:t})}function Bl({fallbackLabel:e,liveItemValue:t,name:n,previewLabel:r,translations:o,value:i}){if(r===void 0)return;let a=p(r)?{field:r}:r;if(a.when!==void 0&&!Ce(t,a.when))return;if(a.label!==void 0)return S(a.label,o);if(a.field===void 0)return;let s=`${n}.${a.field}`;return Lt(Ei,{initialValue:i?$(s,i):void 0,name:s,children:l=>l||e})}import{twMerge as Xl}from"tailwind-merge";import{useSetAtom as Hl,useStore as Ul}from"jotai";import{use as Gl,useCallback as Ne,useEffect as Yl,useEffectEvent as Zl,useMemo as ql,useRef as Dt,useState as Wl}from"react";function Vi(e,t,n){let r=e.advanced?.length?.min??1,o=e.advanced?.length?.max??1/0,[i,a]=Wl(()=>oo(e,t)),s=Dt(i),l=Dt(i.length);s.current=i;let u=Ul(),c=Hl(J),d=Dt(n);d.current=n;let y=Dt(t),m=ql(()=>{let x=[];for(let h of e.fields)if(q(h))for(let A of h.fields)x.push(A.name);else x.push(h.name);return x},[e.fields]),C=Ne((x,h)=>{let A=Number(x);return Number.isNaN(A)?!1:Number.isInteger(A)&&h>=0&&String(h)!==x},[]),w=Gl(fe),k=Ne(x=>{let h=`${e.name}.`;if(x.startsWith(h)){let A=x.slice(h.length),b=A.indexOf("."),g=b===-1?A:A.slice(0,b),v=Number(g),F=s.current.indexOf(v);C(g,F)&&(x=`${h}${F}${b===-1?"":A.slice(b)}`)}return w(x)},[e.name,C,w]),V=Zl(()=>{let x=y.current;if(!x)return;let h=`${e.name}.`,A={...u.get(J)},b=!1;for(let g of i)for(let v of m){let F=`${h}${g}.${v}`;if(F in A)continue;let O=$(F,x);R(O)&&(A[F]=O,b=!0)}b&&c(A)});Yl(()=>{V()},[]);let H=Ne((x,h)=>{let A=`${e.name}.`,b=y.current;return x.map(g=>{let v={};for(let F of m){let O=`${A}${g}.${F}`,U=h[O];v[F]=U!==void 0?U:b?$(O,b):void 0}return v})},[e.name,m]),L=Ne((x,h)=>{d.current?.({name:k(e.name),value:H(x,h)})},[H,e.name,k]),I=Ne(()=>{if(s.current.length>=o)return;let x=l.current++,h=[...s.current,x];a(h),L(h,u.get(J))},[L,o,u]),D=Ne(x=>{if(s.current.length<=r)return;let h=s.current[x],A=s.current.filter((F,O)=>O!==x),g={...u.get(J)},v=`${e.name}.`;for(let F of m)delete g[`${v}${h}.${F}`];a(A),c(g),L(A,g)},[L,e.name,m,r,c,u]),E=i.length<o,ie=i.length>r;return[i,I,D,E,ie,o,k]}import{jsx as pn,jsxs as Ot}from"react/jsx-runtime";var Kl="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 Li(e){let{field:t,onValueChange:n,translations:r,value:o,children:i}=e,[a,s,l,u,c,d,y]=Vi(t,o,n),m=io(t),C=t.advanced?.action??"Add item",w=d!==1/0,k=ro(t);be.info("Label: ",m);let{label:V,tags:H,badge:L}=t.advanced?.preview??{};return pn(fe.Provider,{value:y,children:Ot("div",{className:"flex w-full flex-col gap-4",children:[a.map((I,D)=>pn(Pi,{canRemove:c,field:t,index:D,isMultiField:k,itemKey:I,label:m,onRemove:l,previewBadge:L,previewLabel:V,previewTags:H,translations:r,value:o,children:i(I)},I)),Ot("button",{"aria-disabled":!u,"aria-label":w?`${C}, ${a.length} of ${d}`:C,className:Xl(Kl,w?"justify-between":"justify-center",!u&&"cursor-not-allowed opacity-50 hover:border-zinc-200 hover:text-zinc-500 dark:hover:border-zinc-800 dark:hover:text-zinc-400"),disabled:!u,onClick:s,type:"button",children:[Ot("span",{className:"flex items-center gap-2",children:[pn("span",{"aria-hidden":"true",className:"text-base leading-none",children:"+"}),C]}),w&&Ot("span",{"aria-hidden":"true",className:"text-zinc-400 tabular-nums dark:text-zinc-500",children:[a.length," / ",d]})]})]})})}import{jsx as jl}from"react/jsx-runtime";function Di(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return jl(ht,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}import{jsx as gn}from"react/jsx-runtime";function Oi({children:e,field:t,onValueChange:n,translations:r,value:o}){return gn(Tt,{container:t,fields:t.fields,children:gn(Di,{field:t,children:gn(Li,{field:t,onValueChange:n,translations:r,value:o,children:e})})})}import{twMerge as Jl}from"tailwind-merge";import{jsx as Mi,jsxs as Ql}from"react/jsx-runtime";function zi(e){let t=to(e.column?.advanced?.cols);return Ql("div",{className:"flex w-full flex-col gap-4",children:[Mi("div",{"data-slot":"column",className:Jl("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&Mi(Ct,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}import{Fragment as tu}from"react";import{jsx as eu}from"react/jsx-runtime";function _i(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>at(n)||Le(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:q(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return eu(Be,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:t,onValueChange:e.onValueChange,style:e.style,translations:e.translations,value:e.value,children:e.children})}import{jsx as He,jsxs as nu}from"react/jsx-runtime";function Be(e){let{field:t,list:n}=e.components;return gt(e.fields).map((r,o)=>nu(tu,{children:[q(r)&&He(zi,{column:r,config:e.config,context:e.context,translations:e.translations,children:He(Be,{...e,fields:r.fields})}),at(r)&&He(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),Le(r)&&He(n,{field:r,onValueChange:e.onValueChange,translations:e.translations,value:e.value,children:i=>He(_i,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:r,index:i,onValueChange:e.onValueChange,style:e.style,translations:e.translations,value:e.value,children:e.children})})]},o))}import{jsx as ru}from"react/jsx-runtime";function $i(e){return n=>ru(Be,{...n,components:e})}var Bi=$i({field:Ai,list:Oi});import{useSetAtom as Hi}from"jotai";import{startTransition as Ui,useActionState as ou}from"react";function Yi(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},s=Hi(Xo),l=Hi(_o),u={data:null,error:null,success:!1},[c,d,y]=ou(async(m,C)=>{let[w,k]=e(),V=co(w,k,a);if(i===!1)return t?await t(C,V):m;let H=dr(C),L=au(H,k),I=V.safeParse(L);if(!I.success){let E=fo(I.error);return Ui(()=>{s(E)}),yn(H,{description:S("Please correct the errors and try again.",a),details:[],title:S("There were validation errors submitting the form.",a)})}let D=fr(I.data);if(t)try{let E=await t(D,V);return E.success?(r?.(E.data),o||Ui(()=>{l()}),Gi(D,o)):yn(D,E.error)}catch(E){return be.error("Error executing form action:",E),yn(D,{title:S("An unexpected error occurred submitting the form.",a),details:iu(E,a)})}return Gi(I.data,o)},u);return[d,c,y]}function iu(e,t){return e instanceof Error?[e.message]:[S("Unknown error",t)]}function Gi(e,t=!1){return{data:t?e:null,error:null,success:!0}}function yn(e,t){return{data:e,error:t,success:!1}}function au(e,t){let n={...e};for(let r of t)if(Z(r)&&typeof n[r.name]=="string"&&n[r.name]){let o=dt(n[r.name],re(r));o&&(n[r.name]=o)}return n}import{useCallback as xn,useRef as qi}from"react";import{useCallback as su}from"react";import{useSetAtom as bn}from"jotai";function Zi(){let e=bn(Wo),t=bn($o),n=bn(si);return su((r,o)=>{let i=Array.isArray(r)?r:[r];e(i),n(i),o?.keepValue||t(i)},[e,n,t])}function Wi(){let e=Zi(),t=qi({}),n=qi([]),r=xn((a,s,l)=>{a in t.current||(t.current[a]=s,n.current.push(l))},[]),o=xn((a,s)=>{t.current[a]&&(delete t.current[a],n.current=n.current.filter(l=>l.name!==a),e([a],{keepValue:s?.keepValue}))},[e]);return[xn(()=>[t.current,n.current],[]),r,o]}import{Fragment as lu,jsx as Ue,jsxs as uu}from"react/jsx-runtime";function Xi(e){let t=e.translations?.[e.lang??""],[n,r,o]=Wi(),[i,a,s]=Yi(n,e.action,{onSuccess:e.onSuccess,validation:e.config.validation.submit,translations:t}),l=e.config.validation.showError&&!a.success&&a.error,u=a.data??e.value;return uu(lu,{children:[l&&wt(e.config.alert,c=>Ue("div",{className:"mb-4 w-full",children:Ue(c,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),Ue(Do,{action:i,advanced:e.advanced,config:e.config,control:e.children,definition:e.definition,isPending:s,noValidate:!0,readOnly:e.readOnly,sections:e.sections,children:({disabled:c,fields:d})=>Ue(Bi,{config:e.config,context:e.context,disabled:c,fields:d,onValueChange:e.onValueChange,style:e.config.style,translations:t,value:u,children:y=>Ue(mi,{...y,config:e.config,context:e.context,getSchema:n,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:u})})})]})}import{Provider as cu}from"jotai";import{jsx as Ki}from"react/jsx-runtime";function du(e){return Ki(cu,{children:Ki(Xi,{...e})})}export{du as Form};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var I=Object.defineProperty;var hn=Object.getOwnPropertyDescriptor;var Sn=Object.getOwnPropertyNames;var In=Object.prototype.hasOwnProperty;var bn=(n,e)=>{for(var t in e)I(n,t,{get:e[t],enumerable:!0})},kn=(n,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Sn(e))!In.call(n,o)&&o!==t&&I(n,o,{get:()=>e[o],enumerable:!(r=hn(e,o))||r.enumerable});return n};var Cn=n=>kn(I({},"__esModule",{value:!0}),n);var me={};bn(me,{buildFormSchema:()=>xn,collectIssues:()=>An});module.exports=Cn(me);var w="input",O="input/date",_="input/email",L="input/number";var P="input/time";var D="textarea",F="radio",M="checkbox",U="list";var V="select",Y="select/active";var q="select/month";var j="select/year";var X="chips",H="chips/day",Z="chips/month",z="column";var b="email",W="number",B="password",G="tel",$="text";var K="max";var v="min";var E="$ref";function f(n){return n!==null&&Object.prototype.toString.call(n)==="[object Object]"}function T(n){return n==null||n===""}function p(n){return typeof n=="string"}function R(n,e){if(!e||!f(n))return null;let t=e.split(".").filter(o=>o!=="");if(t.length===0)return null;let r=n;for(let o of t)if(f(r)&&o in r)r=r[o];else if(Array.isArray(r)){let i=Number(o);if(!Number.isInteger(i)||i<0||i>=r.length)return null;r=r[i]}else return null;return r}function h(n){return p(n)?/{([^}]{1,200})}/.test(n):Array.isArray(n)?n.some(e=>h(e)):f(n)?Object.values(n).some(e=>h(e)):!1}var S={eq:Pn,gt:Un,gte:Vn,in:Fn,lt:Yn,lte:qn,neq:Dn,nin:Mn,contains:jn,exists:Xn,truthy:Hn},wn=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,J=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function On(n){return typeof n=="string"&&wn.test(n)}function _n(n){return typeof n=="string"&&J.test(n)}function Ln(n){let e=n.match(J);if(e){let[,t,r,o,i,s,c]=e;return new Date(Number(o),Number(r)-1,Number(t),Number(i??0),Number(s??0),Number(c??0)).getTime()}return NaN}function d(n){return On(n)?new Date(n).getTime():_n(n)?Ln(n):Number(n)}function Pn(n,e){return n===e}function Dn(n,e){return n!==e}function Fn(n,e){return Array.isArray(e)&&e.includes(String(n))}function Mn(n,e){return Array.isArray(e)&&!e.includes(String(n))}function Un(n,e){return d(n)>d(e)}function Vn(n,e){return d(n)>=d(e)}function Yn(n,e){return d(n)<d(e)}function qn(n,e){return d(n)<=d(e)}function jn(n,e){return typeof n=="string"?n.includes(String(e)):Array.isArray(n)?n.map(String).includes(String(e)):!1}function Xn(n){return Array.isArray(n)?n.length>0:n!=null&&n!==""}function Hn(n){return Array.isArray(n)?n.length>0:!!n}var Q=n=>a(Y)(n);var nn=n=>a(q)(n),en=n=>a(j)(n);var tn=n=>a(H)(n),rn=n=>a(Z)(n),Ne=a(O),we=a(P),k=a(M),on=a(X),sn=a(F),Oe=a(w),_e=a(V),Le=a(D),Pe=a($,b,B,G),un=a(_,b),cn=a(L,W);function an(n){return n.type===U}function ln(n){return n.type===z}function a(...n){return e=>{let t=p(e.type)?e.type:void 0;return t?n.some(r=>t===r||t?.startsWith(`${r}/`)):!1}}var Zn=/^#\/definition\//;function x(n,e,t=new Map,r=new WeakSet){if(!zn(e)||!n||typeof n!="object")return n;if(t.has(n))return t.get(n);if(r.has(n))return n;if(r.add(n),Array.isArray(n))return n.map(i=>x(i,e,t,r));if(E in n&&p(n[E])){let i=n[E].replace(Zn,""),s=R(e,i);return s!==null?x(s,e,t,r):n}let o={};for(let[i,s]of Object.entries(n))o[i]=x(s,e,t,r);return r.delete(n),t.set(n,o),o}function zn(n){return n!==void 0&&f(n)&&Object.keys(n).length>0}var u=require("zod");function m(n,e){return n?e?e[n]??n:n:""}var Wn=[[k,fn],[un,$n],[cn,Jn],[sn,Kn],[Q,fn],[nn,ne],[en,Qn],[on,C],[tn,C],[rn,C]];function Bn(n,e=[],t){let r=u.z.object(n);if(e.length===0)return r;let o=oe(r,e,t);return ce(o,e,t)}function Gn(n,e){for(let[t,r]of Wn)if(t(n))return r(n,e);return vn(n,e)}function $n(n,e){let t=u.z.string().trim();if(n.required){let r=g(n,e),o=t.min(1,r).pipe(pn(n,e));return u.z.preprocess(i=>T(i)?"":i,o)}return t.pipe(pn(n,e)).or(u.z.literal("")).nullable()}function fn(n,e){let t=u.z.preprocess(r=>{if(typeof r=="string"){if(r==="true")return!0;if(r==="false")return!1}return r},u.z.coerce.boolean());return n.required?(k(n)?t=t.refine(r=>r===!0,{message:g(n,e)}):t=t.refine(r=>typeof r=="boolean",{message:g(n,e)}),u.z.preprocess(r=>r===null?!1:r,t)):t.nullable()}function Kn(n,e){let t=u.z.coerce.string();return n.required?(t=t.min(1,g(n,e)),u.z.preprocess(r=>T(r)?"":r,t)):t.or(u.z.literal("")).nullable()}function vn(n,e){let t=u.z.coerce.string().trim();return t=gn(t,n,e),n.required?(t=mn(t,n,e),u.z.preprocess(r=>T(r)?"":r,t)):t.nullable()}function Jn(n,e){let t=u.z.coerce.number().int();return t=gn(t,n,e),n.required?(t=mn(t,n,e),u.z.preprocess(r=>r===null?void 0:r,t)):t.nullable()}function Qn(n,e){return n.required?u.z.preprocess(ee,u.z.coerce.number({message:g(n,e)}).int()):u.z.coerce.number().int().nullable()}function ne(n,e){let t=g(n,e),r=u.z.coerce.number().int().min(1,t).max(12,t);return n.required?r:r.nullable()}function ee(n){return n===null||n===""?void 0:n}function pn(n,e){let t=n.validation?.email?m(n.validation?.email,e):void 0;return u.z.email(t)}function gn(n,e,t){return n=te(n,e,t),n=re(n,e,t),n}function mn(n,e,t){let r=e.advanced?.length?.min;return r===void 0||r<1?n.min(1,g(e,t)):n}var te=(n,e,t)=>Tn(n,e,v,t),re=(n,e,t)=>Tn(n,e,K,t);function Tn(n,e,t,r){let o=e.advanced?.length?.[t];if(o!==void 0){let i=e.validation?.length?.[t]?m(e.validation?.length?.[t],r):void 0;return n[t](o,i)}return n}function oe(n,e=[],t){let r=se(e);return r.length===0?n:n.superRefine((o,i)=>{for(let{name:s,rule:c}of r)if(!ie(o,s,c)){let l=m(c.message,t);i.addIssue({code:"custom",message:l,path:[s]})}})}function ie(n,e,t){let r=t.operator??"eq",o=S[r];return o?o(n[e],n[t.field]):!1}function se(n){let e=[];for(let t of n){let r=t.validation?.custom;if(!r)continue;let o=Array.isArray(r)?r:[r];for(let i of o)e.push({name:t.name,rule:i})}return e}function g(n,e){return n.validation?.required?m(n.validation?.required,e):void 0}function C(n,e){let t=u.z.array(u.z.string());return n.required&&(t=t.min(1,g(n,e))),u.z.preprocess(r=>T(r)?[]:Array.isArray(r)?r.map(String):[String(r)],t)}function xn(n,e,t){let r=t?x(n,t):n;return yn(ue(r),e)}function ue(n){let e=[];for(let t of n)for(let r of t.fields??[])e.push(r);return e}function yn(n,e){let t={},r=[],o=i=>{for(let s of i)if(ln(s))o(s.fields);else if(an(s)){let c=ge(u.z.array(yn(s.fields,e)),s,e);t[s.name]=u.z.preprocess(l=>l===void 0?[]:l,c)}else{let c=Gn(s,e);t[s.name]=s.required?c:c.optional(),r.push(s)}};return o(n),Bn(t,r,e)}function An(n){return n.issues.map(e=>({path:e.path.map(String).join("."),message:e.message}))}function ce(n,e=[],t){let r=e.filter(ae);return r.length===0?n:n.superRefine((o,i)=>{let s=f(o)?o:{};for(let c of r)for(let l of le(s,c,t))i.addIssue({code:"custom",path:l.path,message:l.message})})}function ae(n){let e=n.validation;return e!==void 0&&(e.requiredWhen!==void 0||e.pattern!==void 0||e.rules!==void 0)}function le(n,e,t){let r=[],o=n[e.name],i=e.validation?.requiredWhen;if(i){let l=(Array.isArray(i)?i:[i]).find(Rn=>y(n,Rn));l&&!N(o)&&r.push({path:[e.name],message:A(l.message??e.validation?.required,t)})}let s=e.validation?.pattern;s&&!En(s,o)&&r.push({path:[e.name],message:A(s.message,t)});for(let c of e.validation?.rules??[])fe(n,c.when)&&!pe(c,o)&&r.push({path:[e.name],message:A(c.message,t)});return r}function y(n,e){let t=S[e.operator??"eq"];return t?t(R(n,e.field),e.value):!1}function fe(n,e){if(!e)return!0;if(Array.isArray(e))return e.every(o=>y(n,o));if("field"in e)return y(n,e);let t=e.all?e.all.every(o=>y(n,o)):!0,r=e.any?e.any.some(o=>y(n,o)):!0;return t&&r}function pe(n,e){switch(n.assert){case"required":return N(e);case"minItems":return Array.isArray(e)&&e.length>=Number(n.value);case"maxItems":return Array.isArray(e)&&e.length<=Number(n.value);case"min":return dn(e)>=Number(n.value);case"max":return dn(e)<=Number(n.value);case"oneOf":return Array.isArray(n.value)&&n.value.map(String).includes(String(e));case"pattern":return de(n.value)?En(n.value,e):!0;default:return!0}}function En(n,e){return!N(e)||typeof e!="string"||n.allowInterpolation&&h(e)?!0:new RegExp(n.regex,n.flags).test(e)}function N(n){return p(n)?n.trim().length>0:S.exists(n,void 0)}function dn(n){return typeof n=="number"?n:p(n)||Array.isArray(n)?n.length:0}function de(n){return f(n)&&"regex"in n}function A(n,e){return n?m(n,e):void 0}function ge(n,e,t){let r=n,o=e.advanced?.length?.min;o!==void 0&&(r=r.min(o,A(e.validation?.length?.min,t)));let i=e.advanced?.length?.max;return i!==void 0&&(r=r.max(i,A(e.validation?.length?.max,t))),r}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var N="input",w="input/date",O="input/email",_="input/number";var L="input/time";var P="textarea",D="radio",F="checkbox",M="list";var U="select",V="select/active";var Y="select/month";var q="select/year";var j="chips",X="chips/day",H="chips/month",Z="column";var I="email",z="number",W="password",B="tel",G="text";var $="max";var K="min";var E="$ref";function f(n){return n!==null&&Object.prototype.toString.call(n)==="[object Object]"}function T(n){return n==null||n===""}function p(n){return typeof n=="string"}function R(n,e){if(!e||!f(n))return null;let t=e.split(".").filter(o=>o!=="");if(t.length===0)return null;let r=n;for(let o of t)if(f(r)&&o in r)r=r[o];else if(Array.isArray(r)){let i=Number(o);if(!Number.isInteger(i)||i<0||i>=r.length)return null;r=r[i]}else return null;return r}function h(n){return p(n)?/{([^}]{1,200})}/.test(n):Array.isArray(n)?n.some(e=>h(e)):f(n)?Object.values(n).some(e=>h(e)):!1}var S={eq:In,gt:Nn,gte:wn,in:kn,lt:On,lte:_n,neq:bn,nin:Cn,contains:Ln,exists:Pn,truthy:Dn},En=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,v=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function Rn(n){return typeof n=="string"&&En.test(n)}function hn(n){return typeof n=="string"&&v.test(n)}function Sn(n){let e=n.match(v);if(e){let[,t,r,o,i,s,c]=e;return new Date(Number(o),Number(r)-1,Number(t),Number(i??0),Number(s??0),Number(c??0)).getTime()}return NaN}function d(n){return Rn(n)?new Date(n).getTime():hn(n)?Sn(n):Number(n)}function In(n,e){return n===e}function bn(n,e){return n!==e}function kn(n,e){return Array.isArray(e)&&e.includes(String(n))}function Cn(n,e){return Array.isArray(e)&&!e.includes(String(n))}function Nn(n,e){return d(n)>d(e)}function wn(n,e){return d(n)>=d(e)}function On(n,e){return d(n)<d(e)}function _n(n,e){return d(n)<=d(e)}function Ln(n,e){return typeof n=="string"?n.includes(String(e)):Array.isArray(n)?n.map(String).includes(String(e)):!1}function Pn(n){return Array.isArray(n)?n.length>0:n!=null&&n!==""}function Dn(n){return Array.isArray(n)?n.length>0:!!n}var J=n=>a(V)(n);var Q=n=>a(Y)(n),nn=n=>a(q)(n);var en=n=>a(X)(n),tn=n=>a(H)(n),Ae=a(w),Ee=a(L),b=a(F),rn=a(j),on=a(D),Re=a(N),he=a(U),Se=a(P),Ie=a(G,I,W,B),sn=a(O,I),un=a(_,z);function cn(n){return n.type===M}function an(n){return n.type===Z}function a(...n){return e=>{let t=p(e.type)?e.type:void 0;return t?n.some(r=>t===r||t?.startsWith(`${r}/`)):!1}}var Fn=/^#\/definition\//;function x(n,e,t=new Map,r=new WeakSet){if(!Mn(e)||!n||typeof n!="object")return n;if(t.has(n))return t.get(n);if(r.has(n))return n;if(r.add(n),Array.isArray(n))return n.map(i=>x(i,e,t,r));if(E in n&&p(n[E])){let i=n[E].replace(Fn,""),s=R(e,i);return s!==null?x(s,e,t,r):n}let o={};for(let[i,s]of Object.entries(n))o[i]=x(s,e,t,r);return r.delete(n),t.set(n,o),o}function Mn(n){return n!==void 0&&f(n)&&Object.keys(n).length>0}import{z as u}from"zod";function m(n,e){return n?e?e[n]??n:n:""}var Un=[[b,ln],[sn,qn],[un,Hn],[on,jn],[J,ln],[Q,zn],[nn,Zn],[rn,k],[en,k],[tn,k]];function Vn(n,e=[],t){let r=u.object(n);if(e.length===0)return r;let o=$n(r,e,t);return ee(o,e,t)}function Yn(n,e){for(let[t,r]of Un)if(t(n))return r(n,e);return Xn(n,e)}function qn(n,e){let t=u.string().trim();if(n.required){let r=g(n,e),o=t.min(1,r).pipe(fn(n,e));return u.preprocess(i=>T(i)?"":i,o)}return t.pipe(fn(n,e)).or(u.literal("")).nullable()}function ln(n,e){let t=u.preprocess(r=>{if(typeof r=="string"){if(r==="true")return!0;if(r==="false")return!1}return r},u.coerce.boolean());return n.required?(b(n)?t=t.refine(r=>r===!0,{message:g(n,e)}):t=t.refine(r=>typeof r=="boolean",{message:g(n,e)}),u.preprocess(r=>r===null?!1:r,t)):t.nullable()}function jn(n,e){let t=u.coerce.string();return n.required?(t=t.min(1,g(n,e)),u.preprocess(r=>T(r)?"":r,t)):t.or(u.literal("")).nullable()}function Xn(n,e){let t=u.coerce.string().trim();return t=dn(t,n,e),n.required?(t=gn(t,n,e),u.preprocess(r=>T(r)?"":r,t)):t.nullable()}function Hn(n,e){let t=u.coerce.number().int();return t=dn(t,n,e),n.required?(t=gn(t,n,e),u.preprocess(r=>r===null?void 0:r,t)):t.nullable()}function Zn(n,e){return n.required?u.preprocess(Wn,u.coerce.number({message:g(n,e)}).int()):u.coerce.number().int().nullable()}function zn(n,e){let t=g(n,e),r=u.coerce.number().int().min(1,t).max(12,t);return n.required?r:r.nullable()}function Wn(n){return n===null||n===""?void 0:n}function fn(n,e){let t=n.validation?.email?m(n.validation?.email,e):void 0;return u.email(t)}function dn(n,e,t){return n=Bn(n,e,t),n=Gn(n,e,t),n}function gn(n,e,t){let r=e.advanced?.length?.min;return r===void 0||r<1?n.min(1,g(e,t)):n}var Bn=(n,e,t)=>mn(n,e,K,t),Gn=(n,e,t)=>mn(n,e,$,t);function mn(n,e,t,r){let o=e.advanced?.length?.[t];if(o!==void 0){let i=e.validation?.length?.[t]?m(e.validation?.length?.[t],r):void 0;return n[t](o,i)}return n}function $n(n,e=[],t){let r=vn(e);return r.length===0?n:n.superRefine((o,i)=>{for(let{name:s,rule:c}of r)if(!Kn(o,s,c)){let l=m(c.message,t);i.addIssue({code:"custom",message:l,path:[s]})}})}function Kn(n,e,t){let r=t.operator??"eq",o=S[r];return o?o(n[e],n[t.field]):!1}function vn(n){let e=[];for(let t of n){let r=t.validation?.custom;if(!r)continue;let o=Array.isArray(r)?r:[r];for(let i of o)e.push({name:t.name,rule:i})}return e}function g(n,e){return n.validation?.required?m(n.validation?.required,e):void 0}function k(n,e){let t=u.array(u.string());return n.required&&(t=t.min(1,g(n,e))),u.preprocess(r=>T(r)?[]:Array.isArray(r)?r.map(String):[String(r)],t)}function Jn(n,e,t){let r=t?x(n,t):n;return Tn(Qn(r),e)}function Qn(n){let e=[];for(let t of n)for(let r of t.fields??[])e.push(r);return e}function Tn(n,e){let t={},r=[],o=i=>{for(let s of i)if(an(s))o(s.fields);else if(cn(s)){let c=ue(u.array(Tn(s.fields,e)),s,e);t[s.name]=u.preprocess(l=>l===void 0?[]:l,c)}else{let c=Yn(s,e);t[s.name]=s.required?c:c.optional(),r.push(s)}};return o(n),Vn(t,r,e)}function ne(n){return n.issues.map(e=>({path:e.path.map(String).join("."),message:e.message}))}function ee(n,e=[],t){let r=e.filter(te);return r.length===0?n:n.superRefine((o,i)=>{let s=f(o)?o:{};for(let c of r)for(let l of re(s,c,t))i.addIssue({code:"custom",path:l.path,message:l.message})})}function te(n){let e=n.validation;return e!==void 0&&(e.requiredWhen!==void 0||e.pattern!==void 0||e.rules!==void 0)}function re(n,e,t){let r=[],o=n[e.name],i=e.validation?.requiredWhen;if(i){let l=(Array.isArray(i)?i:[i]).find(yn=>y(n,yn));l&&!C(o)&&r.push({path:[e.name],message:A(l.message??e.validation?.required,t)})}let s=e.validation?.pattern;s&&!xn(s,o)&&r.push({path:[e.name],message:A(s.message,t)});for(let c of e.validation?.rules??[])oe(n,c.when)&&!ie(c,o)&&r.push({path:[e.name],message:A(c.message,t)});return r}function y(n,e){let t=S[e.operator??"eq"];return t?t(R(n,e.field),e.value):!1}function oe(n,e){if(!e)return!0;if(Array.isArray(e))return e.every(o=>y(n,o));if("field"in e)return y(n,e);let t=e.all?e.all.every(o=>y(n,o)):!0,r=e.any?e.any.some(o=>y(n,o)):!0;return t&&r}function ie(n,e){switch(n.assert){case"required":return C(e);case"minItems":return Array.isArray(e)&&e.length>=Number(n.value);case"maxItems":return Array.isArray(e)&&e.length<=Number(n.value);case"min":return pn(e)>=Number(n.value);case"max":return pn(e)<=Number(n.value);case"oneOf":return Array.isArray(n.value)&&n.value.map(String).includes(String(e));case"pattern":return se(n.value)?xn(n.value,e):!0;default:return!0}}function xn(n,e){return!C(e)||typeof e!="string"||n.allowInterpolation&&h(e)?!0:new RegExp(n.regex,n.flags).test(e)}function C(n){return p(n)?n.trim().length>0:S.exists(n,void 0)}function pn(n){return typeof n=="number"?n:p(n)||Array.isArray(n)?n.length:0}function se(n){return f(n)&&"regex"in n}function A(n,e){return n?m(n,e):void 0}function ue(n,e,t){let r=n,o=e.advanced?.length?.min;o!==void 0&&(r=r.min(o,A(e.validation?.length?.min,t)));let i=e.advanced?.length?.max;return i!==void 0&&(r=r.max(i,A(e.validation?.length?.max,t))),r}export{Jn as buildFormSchema,ne as collectIssues};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-luna-form",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.69",
|
|
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.3",
|
|
37
|
-
"@luna-form/core": "0.0.
|
|
37
|
+
"@luna-form/core": "0.0.69"
|
|
38
38
|
},
|
|
39
39
|
"license": "Apache-2.0",
|
|
40
40
|
"repository": {
|
|
@@ -61,6 +61,12 @@
|
|
|
61
61
|
"import": "./dist/config/esm/index.js",
|
|
62
62
|
"require": "./dist/config/cjs/index.js",
|
|
63
63
|
"default": "./dist/config/cjs/index.js"
|
|
64
|
+
},
|
|
65
|
+
"./schema": {
|
|
66
|
+
"types": "./dist/types/luna-react/src/schema/index.d.ts",
|
|
67
|
+
"import": "./dist/schema/esm/index.js",
|
|
68
|
+
"require": "./dist/schema/cjs/index.js",
|
|
69
|
+
"default": "./dist/schema/cjs/index.js"
|
|
64
70
|
}
|
|
65
71
|
},
|
|
66
72
|
"scripts": {
|