react-luna-form 0.0.29 → 0.0.30
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 Uo=Object.create;var Fe=Object.defineProperty;var Ho=Object.getOwnPropertyDescriptor;var Yo=Object.getOwnPropertyNames;var Xo=Object.getPrototypeOf,qo=Object.prototype.hasOwnProperty;var Zo=(e,t)=>{for(var n in t)Fe(e,n,{get:t[n],enumerable:!0})},_t=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Yo(t))!qo.call(e,o)&&o!==n&&Fe(e,o,{get:()=>t[o],enumerable:!(r=Ho(t,o))||r.enumerable});return e};var Ko=(e,t,n)=>(n=e!=null?Uo(Xo(e)):{},_t(t||!e||!e.__esModule?Fe(n,"default",{value:e,enumerable:!0}):n,e)),Wo=e=>_t(Fe({},"__esModule",{value:!0}),e);var cl={};Zo(cl,{Form:()=>_o});module.exports=Wo(cl);var Gt=require("react/jsx-runtime");function Bt(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,Gt.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var se=require("react");var dt=require("react/jsx-runtime");function $t(e){return(0,dt.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,dt.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 Ce="input",Ut="input/email",Ht="input/number";var Yt="textarea",Xt="radio",qt="checkbox",ft="list";var Zt="select",Kt="select/month",Wt="select/year";var me="column",mt="fields",zt="label",A="value",Ne="options",gt="email",Jt="number",Qt="password",jt="tel",ge="text",en="aria-errormessage",tn="aria-invalid",nn="data-invalid",rn="data-readonly",on="aria",ln="data",Ee="min",ke="max",an="minLength",sn="maxLength",ie="$ref";var cn="source",un="state",Ie="http://luna.internal",U="vertical",le="horizontal";var dn="type";function d(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function we(e){return e==null||e===""}function H(e){return I(e)||typeof e=="number"||pt(e)}function I(e){return typeof e=="string"}function fn(e){return d(e)&&"url"in e}function pt(e){return typeof e=="boolean"}var zo=/^\d+$/;function bt(e,t=[],n=A){return Array.isArray(t)?t.find(r=>{let o=xt(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}:{value:e}}function xt(e,t=A){if(e!=null){if(H(e))return e;if(d(e)){let n=Jo(e,t);if(H(n))return n}}}function Jo(e,t){let n=R(e,t);if(H(n))return n}function mn(e,t){if(Array.isArray(e))return e;let n=R(e,t);return Array.isArray(n)?n:null}function R(e,t){if(!t||!d(e))return null;let n=t.split(".").filter(o=>o!=="");if(n.length===0)return null;let r=e;for(let o of n)if(d(r)&&o in r)r=r[o];else return null;return r}function gn(e,t={label:zt,value:A}){return e.map(n=>{if(d(n)){let r=R(n,t.label),o=R(n,t.value);if(H(r)&&H(o))return{label:`${r}`,value:`${o}`}}return n})}function pn(e=ge){if(e){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);if(n&&n!==Ce)return n.trim().toLowerCase()}return ge}function yn(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 bn(e){let t={};for(let n in e){let r=n.split(".");if(r.length===1){t[n]=e[n];continue}let o=t;for(let l=0;l<r.length-1;l++){let a=r[l],s=r[l+1],c=zo.test(s);a in o||(o[a]=c?[]:{}),o=o[a]}let i=r[r.length-1];o[i]=e[n]}return yt(t),t}function yt(e){for(let t in e){let n=e[t];if(Array.isArray(n)){let r=n.filter(o=>o!==void 0);r.forEach(o=>{o!==null&&typeof o=="object"&&!Array.isArray(o)&&yt(o)}),e[t]=r}else n!==null&&typeof n=="object"&&yt(n)}}var Qo=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function Y(e,t={}){if(I(e))return jo(e,t);if(Array.isArray(e))return e.map(n=>Y(n,t));if(d(e)){let n={};for(let r in e)n[r]=Y(e[r],t);return n}return e}function ht(e,t={}){return pe(e)?Y(e,t):e}function pe(e){return I(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>pe(t)):d(e)?Object.values(e).some(t=>pe(t)):!1}function jo(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,r)=>{let o=r.includes(".")?R(t,r):t[r];return H(o)?String(o):n})}function xn(e,t){if(!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Qo.exec(e))!==null;){let[l,a,s]=n,c=n.index;o=!0,c>r&&i.push(e.substring(r,c));let u=t?t(c,s,a):l;i.push(u),r=c+l.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var ye={error:(...e)=>{Rt()&&!Tt()&&Le().error("[Luna Form]",...e)},warn:(...e)=>{Rt()&&!Tt()&&Le().warn("[Luna Form]",...e)},info:(...e)=>{Rt()&&!Tt()&&Le().info("[Luna Form]",...e)}},Rt=()=>typeof Le()<"u",Tt=()=>!0,Le=()=>globalThis.console;function hn(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===A&&n.push(i),i.action===cn&&r.push(i),i.action===un&&o.push(i);t({sources:r,states:o,values:n})}function Rn(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(fn(i)){let l=Y(i.url,e),a=i.body?Y(i.body,e):i.body;n(o,{...i,url:l,body:a})}}}var be={eq:oi,gt:si,gte:ci,in:li,lt:ui,lte:di,neq:ii,nin:ai},ei=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,Tn=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function ti(e){return typeof e=="string"&&ei.test(e)}function ni(e){return typeof e=="string"&&Tn.test(e)}function ri(e){let t=e.match(Tn);if(t){let[,n,r,o,i,l,a]=t;return new Date(Number(o),Number(r)-1,Number(n),Number(i??0),Number(l??0),Number(a??0)).getTime()}return NaN}function X(e){return ti(e)?new Date(e).getTime():ni(e)?ri(e):Number(e)}function oi(e,t){return e===t}function ii(e,t){return e!==t}function li(e,t){return Array.isArray(t)&&t.includes(String(e))}function ai(e,t){return Array.isArray(t)&&!t.includes(String(e))}function si(e,t){return X(e)>X(t)}function ci(e,t){return X(e)>=X(t)}function ui(e,t){return X(e)<X(t)}function di(e,t){return X(e)<=X(t)}function Sn(e=null,t=[],n){for(let r of t){let{target:o,state:i,when:l}=r,a=Array.isArray(o)?o:[o];if(!e){n(a);continue}let s=fi(e,l);n(a,s?i:void 0)}}function fi(e,t){return t===void 0?!0:I(t)?Pe(e,A)===t:pt(t)?!!Pe(e,A)===t:Array.isArray(t)?t.includes(String(Pe(e,A))):mi(e,t)}function mi(e=null,t){let n=Pe(e,t.field??A),{operator:r="eq",value:o}=t,i=be[r];return i?i(n,o):!1}function Pe(e,t){return d(e)?R(e,t):e}function An(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?Y(i,e):void 0)}var Oe=e=>w(Kt)(e),Ve=e=>w(Wt)(e),T=w(qt),St=w(Ce),D=w(Xt),M=w(Zt),At=w(Yt),vn=w(ge,gt,Qt,jt),Fn=w(Ut,gt),De=w(Ht,Jt);function Me(e){return D(e)||T(e)}function Cn(e){return e.type===ft}function q(e){return e.type===me}function _e(e){return e.type!==me&&e.type!==ft}function Be(e){return M(e)||D(e)}function Nn(e){return St(e)||At(e)}function Q(e){return e!=null&&e!==""}function w(...e){return t=>{let n=I(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function En(e,t={}){if(M(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&d(n))return[n]}}function kn(e){return D(e)||T(e)?le:e.advanced?.orientation??U}function In(e){return T(e)?e.advanced?.reverse!==!1:!1}function wn(e,t){let n=e.readonly??!1;return t||n}function Ln(e){if(D(e)||M(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||d(t)&&!(ie in t))return t}}var gi=/^\d+$/;function Pn(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function On(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 vt(){return new Date().getFullYear()}function Ft(e,t){if(typeof e=="number")return e;let n=t??vt(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,l]=o,a=parseInt(l,10);if(!isNaN(a))return i==="+"?n+a:n-a}return n}return gi.test(r)?parseInt(r,10):n}var Ge=vt();function pi(e){if(M(e))return yi(e)}function yi(e){if(Oe(e))return Pn();if(Ve(e)){let t=e.advanced?.length?.min??Ge,n=e.advanced?.length?.max??Ge+5;return On(Ft(t,Ge),Ft(n,Ge))}}function Vn(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return St(e)?{...n,...bi(e)}:M(e)?{...n,...xi(e)}:At(e)?{...n,...hi(e)}:n}function bi(e){let t=pn(e.type),n={...e,type:t};return{...Dn(e),...Ri(n),...vn(n)?Mn(n):{},type:t}}function xi(e){let t=pi(e);return t?{options:t}:{}}function hi(e){return{...Dn(e),...Mn(e)}}function Dn(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Ri(e){return De(e)?Ti(e):{}}function Mn(e){return _n(e,{min:an,max:sn})}function Ti(e){return _n(e,{min:Ee,max:ke})}function _n(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 Bn(e,t){let n=Ln(e);return n||En(e,t)}function Si(e,t){let n=d(t)&&e.name in t?t[e.name]:t;return xt(n,e.advanced?.entity)}function Ai(e,t,n){return Be(e)&&Array.isArray(n)?{...t,[Ne]:n}:t}function vi(e,t,n){if(e.required&&!Q(n)&&M(e)&&e.advanced?.preselected!==!1&&Ne in t){let r=t[Ne];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function Fi(e,t){return M(e)&&Array.isArray(t)?gn(t,e.advanced?.options):t}function Gn(e,t,n,r){let o=Si(e,r),i=Array.isArray(n)?Fi(e,n):n,l=Ai(e,t,i),a=vi(e,l,o);return{commonPropsWithOptions:l,defaultValue:a}}function $n(e,t){return T(e)?{checked:Q(t)?t:!1}:{value:t??""}}var Ci=/^#\/definition\//;function Ue(e=[],t){let n=$e(e,t);return Array.isArray(n)?n.filter(Ei).sort((r,o)=>Un(r)-Un(o)):[]}function $e(e,t,n=new Map,r=new WeakSet){if(!Ni(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=>$e(i,t,n,r));if(ie in e&&I(e[ie])){let i=e[ie].replace(Ci,""),l=R(t,i);return l!==null?$e(l,t,n,r):e}let o={};for(let[i,l]of Object.entries(e))o[i]=$e(l,t,n,r);return r.delete(e),n.set(e,o),o}function Hn(e){return Object.entries(e??{})}function Un(e){return e.order??Number.MAX_VALUE}function Ni(e){return e!==void 0&&d(e)&&Object.keys(e).length>0}function Ei(e){return dn in e?!0:Array.isArray(e[mt])?e[mt].length>0:!0}function Yn(e,t){let n={};for(let[r,o]of Hn(t))n[`${e}-${r}`]=o;return n}function ki(e){return Yn(on,e)}function Ii(e){return Yn(ln,e)}function Xn(e,t){let n=ki(e.advanced?.aria);return t&&t.length>0&&(n[tn]="true",n[en]=`${e.name}-error`),n}function qn(e){return Ii(e.advanced?.data)}var Zn={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Kn={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function Wn(e,t=2){return Zn[e&&e in Zn?e:t]}function zn(e){if(e&&e in Kn)return Kn[e]}function wi(e,t){let n=e.advanced?.length?.min??1;if(t){let r=R(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function Jn(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===me}function Qn(e,t){let n=wi(e,t);return Array.from({length:n},(r,o)=>o)}function jn(e){return e.label??e.name}var m=require("zod");function f(e,t){return e?t?t[e]??e:e:""}var Li=[[De,Mi],[Fn,Pi],[Ve,_i],[Oe,Bi],[T,Oi],[D,Vi]];function tr(e,t=[],n){let r=m.z.object(e);return t.length===0?r:Hi(r,t,n)}function nr(e){let t={},n=m.z.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function rr(e,t){for(let[n,r]of Li)if(n(e))return r(e,t);return Di(e,t)}function Pi(e,t){let n=m.z.string().trim();if(e.required){let r=ae(e,t),o=n.min(1,r).pipe(er(e,t));return m.z.preprocess(i=>we(i)?"":i,o)}return n.pipe(er(e,t)).or(m.z.literal("")).nullable()}function Oi(e,t){let n=m.z.coerce.boolean();return e.required?(n=n.refine(r=>r===!0,{message:ae(e,t)}),m.z.preprocess(r=>r===null?!1:r,n)):n.nullable()}function Vi(e,t){let n=m.z.coerce.string();return e.required?(n=n.min(1,ae(e,t)),m.z.preprocess(r=>we(r)?"":r,n)):n.or(m.z.literal("")).nullable()}function Di(e,t){let n=m.z.coerce.string().trim();return n=or(n,e,t),e.required?(n=ir(n,e,t),m.z.preprocess(r=>we(r)?"":r,n)):n.nullable()}function Mi(e,t){let n=m.z.coerce.number().int();return n=or(n,e,t),e.required?(n=ir(n,e,t),m.z.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function _i(e,t){return e.required?m.z.preprocess(Gi,m.z.coerce.number({message:ae(e,t)}).int()):m.z.coerce.number().int().nullable()}function Bi(e,t){let n=ae(e,t),r=m.z.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function Gi(e){return e===null||e===""?void 0:e}function er(e,t){let n=e.validation?.email?f(e.validation?.email,t):void 0;return m.z.email(n)}function or(e,t,n){return e=$i(e,t,n),e=Ui(e,t,n),e}function ir(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,ae(t,n)):e}var $i=(e,t,n)=>lr(e,t,Ee,n),Ui=(e,t,n)=>lr(e,t,ke,n);function lr(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?f(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function Hi(e,t=[],n){let r=Xi(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:l,rule:a}of r)if(!Yi(o,l,a)){let s=f(a.message,n);i.addIssue({code:"custom",message:s,path:[l]})}})}function Yi(e,t,n){let r=n.operator??"eq",o=be[r];return o?o(e[t],e[n.field]):!1}function Xi(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 ar(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let l of i){let a=l.operator??"eq",s=be[a];if(s&&!s(e,n(l.field))&&l.message){let c=f(l.message,r);o.push(c)}}return o}function ae(e,t){return e.validation?.required?f(e.validation?.required,t):void 0}function sr(e,t){if(!t||!Zi(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||qi(r);return t.some(l=>!(l.protocol&&l.protocol!==r||l.hostname&&l.hostname!==o||l.port!==void 0&&String(l.port)!==i))}catch{return!1}}function qi(e){return e==="https"?"443":"80"}function Zi(e){return/^(https?:)?\/\//.test(e)}function cr(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,Ie);new URL(t,Ie).searchParams.forEach((i,l)=>{n.searchParams.set(l,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(Ie,""):o}catch{return t||e}}function ur(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=cr(t.url,n.url),o=Ki(t,n),i=Wi(t,n);return{...t,...n,url:r,body:o,headers:i}})}function Ki(e,t){return d(t.body)&&d(e?.body)?{...e.body,...t.body}:t.body??e?.body}function Wi(e,t){return d(t.headers)&&d(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function He(e,t){return{...e,...t}}var dr=require("react/jsx-runtime");function Z(e){return xn(e,(t,n,r)=>(0,dr.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}var L=require("react/jsx-runtime");function fr(e){let{fields:t=[]}=e.section,[n,r]=(0,se.useState)(!1),o=(0,se.useCallback)(()=>r(i=>!i),[]);return(0,L.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,L.jsx)("legend",{children:(0,L.jsxs)("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-slate-600 dark:text-slate-400",onClick:o,type:"button",children:[(0,L.jsx)($t,{expanded:n}),(0,L.jsx)("span",{children:Z(e.section.title)})]})}),(0,L.jsx)(se.Activity,{mode:n?"visible":"hidden",children:(0,L.jsxs)("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-slate-300 pl-4 dark:border-slate-600","data-slot":"field-set-content",children:[e.section.description&&(0,L.jsx)("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:Z(e.section.description)}),e.group]})})]})}var j=require("react/jsx-runtime");function mr(e){return(0,j.jsxs)(j.Fragment,{children:[e.title&&(0,j.jsx)("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:Z(e.title)}),e.description&&(0,j.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:Z(e.description)})]})}var Xe=require("react/jsx-runtime");function Ye(e){return(0,Xe.jsxs)("fieldset",{"data-slot":"field-set","data-empty":e.empty,className:"flex flex-col data-[empty=false]:gap-6",id:e.id,children:[(0,Xe.jsx)(mr,{description:e.description,title:e.title}),e.children]})}var gr=require("react/jsx-runtime");function ee(e){return(0,gr.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 qe=require("react/jsx-runtime");function pr(e){let{fields:t=[]}=e.section,{compact:n}=He(e.style,{compact:e.section.compact}),r=(0,qe.jsx)(ee,{compact:n,children:e.children});return!e.section.title&&!e.section.description?r:e.section.advanced?(0,qe.jsx)(fr,{section:e.section,group:r}):(0,qe.jsx)(Ye,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),title:e.section.title,children:r})}var Rr=require("jotai");var K=require("jotai"),Ct=require("jotai-family"),Ze=require("fast-equals");function Ke(e,t){let{[t]:n,...r}=e;return r}function zi(e){return(0,Ct.atomFamily)(t=>(0,K.atom)(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let l=i[t];(!l||!(0,Ze.deepEqual)(l,o))&&r(e,{...i,[t]:o})}else i[t]&&r(e,Ke(i,t))}))}function Ji(e){return(0,K.atom)(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function Qi(e){return(0,K.atom)(null,(t,n,r)=>{let i={...t(e)},l=!1;for(let a of r)i[a]&&(delete i[a],l=!0);l&&n(e,i)})}function ji(e){return(0,K.atom)(null,(t,n,r)=>{let o=t(e);(0,Ze.deepEqual)(o,r)||n(e,r)})}function yr(e,t={}){let{merge:n,validateTarget:r}=t;return(0,Ct.atomFamily)(o=>(0,K.atom)(i=>{let l=i(e)[o];if(l&&n)return n(Object.values(l))},(i,l,a,s)=>{if(r&&!r(a))return;let c=i(e),u={...c[a]??{}};if(s!=null){let p=u[o];(!p||!(0,Ze.deepEqual)(p,s))&&(u[o]=s,l(e,{...c,[a]:u}))}else u[o]&&(delete u[o],Object.keys(u).length===0?l(e,Ke(c,a)):l(e,{...c,[a]:u}))}))}function br(e){return(0,K.atom)(null,(t,n,r)=>{let i={...t(e)},l=!1;for(let a of r)i[a]&&(delete i[a],l=!0);for(let a in i){let s={...i[a]},c=!1;for(let u of r)s[u]&&(delete s[u],c=!0,l=!0);c&&(Object.keys(s).length===0?delete i[a]:i[a]=s)}l&&n(e,i)})}function ce(e={}){let t=(0,K.atom)(e);return{atom:t,clearAll:Ji(t),clear:Qi(t),bulkReport:ji(t),report:zi(t)}}var xr=ce(),We=xr.atom,hr=xr.report;function el(e,t){return e.fields.every(n=>Tr(n,t))}function Tr(e,t){return t[e.name]?.hidden??e.hidden??!1}function tl(e,t){return q(e)?el(e,t):Tr(e,t)}function ze(e){let t=(0,Rr.useAtomValue)(We);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>tl(r,t))?null:e.children}var Nt=require("react/jsx-runtime");function Sr(){return(0,Nt.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,Nt.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}var _=require("react/jsx-runtime");function Ar(e){let t=Ue(e.sections,e.definition);return(0,_.jsx)("div",{className:"h-full w-full",children:(0,_.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,_.jsxs)(ee,{children:[t.map((n,r)=>(0,_.jsxs)(ze,{fields:n.fields??[],children:[(0,_.jsx)(pr,{section:n,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.separator&&(0,_.jsx)(Sr,{})]},r)),e.control&&(0,_.jsx)(Bt,{isPending:e.isPending,children:e.control})]})})})}var Fr=require("react/jsx-runtime");function vr(e){return(0,Fr.jsx)("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}var Cr=require("react/jsx-runtime");function Je(e){let t=Z(e.text);return t?(0,Cr.jsx)(vr,{children:t}):null}var Nr=require("tailwind-merge"),Qe=require("react/jsx-runtime");function Er(e){let t=e.style?.showOptionalLabel??!0,n=D(e.field)||T(e.field);return(0,Qe.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,Nr.twMerge)("flex w-fit items-center gap-2 text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,children:[e.children,t&&!e.field.required&&(0,Qe.jsx)("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:f("(Optional)",e.translations)})]})}var xe=require("react/jsx-runtime");function kr(e){let t={context:e.context,env:e.config?.env},n=ht(e.field.label,t),r=ht(e.field.description,t);return(0,xe.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,xe.jsx)(Er,{field:e.field,style:e.config?.style,translations:e.translations,children:f(n,e.translations)}),e.orientation===le&&(0,xe.jsx)(Je,{text:f(r,e.translations)})]})}var te=require("react/jsx-runtime");function Ir(e){return(0,te.jsxs)(te.Fragment,{children:[e.field.name&&e.field.label&&(0,te.jsx)(kr,{config:e.config,context:e.context,field:e.field,orientation:e.orientation,translations:e.translations}),e.children,e.orientation===U&&e.field.description&&(0,te.jsx)(Je,{text:f(e.field.description,e.translations)})]})}function je(e,t){return e?t(e):null}var Et=ce(),wr=Et.clear,Lr=Et.bulkReport,et=Et.report;var tt=ce(),nt=tt.atom,Pr=tt.clearAll,Or=tt.clear,rt=tt.report;var b=require("react");var Vr=require("jotai");var nl=e=>{let t=ur(e);if(t)return t},rl=e=>e.trim()!=="",Dr=(0,Vr.atom)({}),Mr=yr(Dr,{merge:nl,validateTarget:rl}),_r=br(Dr);var $r=require("jotai");var Br=Ko(require("swr"),1);function Gr(e=null,t,n=!1){let{data:r,error:o}=(0,Br.default)(ol(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 mn(r,e.namespace)}return null}function ol(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!pe(e.url)){if(sr(e.url,t.fetcher.remotePatterns))return e;ye.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function Ur(e,t,n){let r=Bn(e,n),[o,i]=(0,$r.useAtom)(Mr(e.name));return[Gr(o??r,t,e.disabled),i]}var ne=require("react");function Hr(e,t,n,r){let{name:o}=e,i=(0,ne.useMemo)(()=>rr(e,r),[e,r]),l=(0,ne.useEffectEvent)(s=>{s&&t(s,i,e)}),a=(0,ne.useEffectEvent)(s=>{s&&n(s)});return(0,ne.useEffect)(()=>(l(o),()=>{a(o)}),[o]),i}var de=require("jotai");var ue=require("react");function Yr(){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)},[])}var Xr=require("jotai"),W=require("react");function qr(e,t){let{name:n}=e,r=(0,W.useRef)(!1),[o,i]=(0,Xr.useAtom)(rt(n)),l=(0,W.useEffectEvent)(s=>{let c=il(n,s);Q(c)&&(r.current=!0,i(c))});(0,W.useEffect)(()=>{t&&l(t)},[t]);let a=(0,W.useCallback)(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:a,value:o}}function il(e,t){if(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(typeof r=="object")r=r[o];else return}return r}var kt=require("react/jsx-runtime");function Zr(e){let t=e.field.advanced?.entity,n=(0,de.useStore)(),r=Yr(),[,o]=(0,b.useTransition)(),{setValue:i,shouldSkipOnChange:l,value:a}=qr(e.field,e.value),s=(0,b.useRef)(!1),c=(0,b.useRef)(a);c.current=a;let u=(0,b.useRef)(e.translations);u.current=e.translations;let p=Nn(e.field),h=Me(e.field),F=(0,de.useSetAtom)(nt),G=(0,de.useSetAtom)(We),C=(0,de.useSetAtom)(et(e.field.name)),[x,V]=Ur(e.field,e.config,a),N=Hr(e.field,e.onMount,e.onUnmount,e.translations),S=f(e.commonProps.placeholder,e.translations),$={...e.commonProps,placeholder:S},{commonPropsWithOptions:E,defaultValue:Te}=Gn(e.field,$,x,a),Dt=(0,b.useRef)(null);Dt.current=g=>{i(g),e.onValueChange&&e.onValueChange({name:e.field.name,value:g})};let at=(0,b.useRef)(null);at.current=g=>{let y=e.field.event?.change;y&&hn(y,({sources:J,states:Ae,values:st})=>{o(()=>{Rn(g,J,(k,oe)=>V(k,oe)),Sn(g,Ae,(k,oe)=>{G(ve=>oe?k.reduce((ct,ut)=>({...ct,[ut]:oe}),ve):k.reduce((ct,ut)=>Ke(ct,ut),ve))}),An(g,st,(k,oe)=>{F(ve=>({...ve,[k]:oe}))})})})};let Bo=$n(e.field,Te),Se=(0,b.useCallback)(g=>{let J=N.safeParse(g).error?.issues.map(k=>k.message)??[],Ae=e.field.validation?.custom,st=Ae?ar(g,Ae,k=>n.get(rt(k)),u.current):[];C([...J,...st])},[e.field.validation?.custom,N,C,n]),Mt=(0,b.useCallback)((g,y)=>{if(p){r(()=>{y({value:g})},500);return}y(bt(g,x,t))},[x,t,p,r]);(0,b.useEffect)(()=>{if(s.current||!e.value)return;if(!e.field.event?.change){s.current=!0;return}if(!((!Be(e.field)||!!x&&x.length>0)&&Q(Te)))return;s.current=!0;let y=String(Te),J=p?{value:y}:bt(y,x,t);at.current?.(J)},[x,Te,t,p,e.field,e.value]);let Go=(0,b.useCallback)(g=>{let y=g.target.value;!h&&l()&&(!p||y===c.current)||(Dt.current?.(y),e.config.validation.change&&Se(y),e.field.event?.change&&Mt(y,J=>{at.current?.(J)}))},[Mt,h,p,e.config.validation.change,e.field.event?.change,l,Se]),$o=(0,b.useCallback)(g=>{if(!h){let y=g.target.value;e.config.validation.blur&&Se(y)}},[h,e.config.validation.blur,Se]);return je(e.config.inputs[e.field.type],g=>(0,kt.jsx)(Ir,{config:e.config,context:e.context,field:e.field,orientation:e.orientation,translations:e.translations,children:(0,kt.jsx)(g,{...E,...e.ariaAttributes,...e.dataAttributes,...Bo,onBlur:$o,onChange:Go})}))}var It=require("react/jsx-runtime");function Kr(e){return!e.errors||e.errors.length===0?null:(0,It.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,It.jsx)("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var Wr=require("tailwind-merge"),zr=require("react/jsx-runtime");function ot(e){let t=e.errors&&e.errors.length>0;return(0,zr.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[nn]:"true"},...e.disabled&&{[rn]:"true"},"data-orientation":e.orientation,className:(0,Wr.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 Jr=require("tailwind-merge"),jr=require("react/jsx-runtime");function Qr(e){return(0,jr.jsx)(ot,{...e,orientation:U,className:(0,Jr.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var eo=require("tailwind-merge"),no=require("react/jsx-runtime");function to(e){return(0,no.jsx)(ot,{...e,orientation:le,className:(0,eo.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 wt=require("react/jsx-runtime");function ro(e){let t=Me(e.field),n=T(e.field),r=In(e.field);return e.orientation===U?(0,wt.jsx)(Qr,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):(0,wt.jsx)(to,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function oo(e){if(!e.field.type)return null;let t=Vn(e.field,e.disabled),n=qn(e.field),r=Xn(e.field,e.errors),o={...e.field,disabled:t.disabled};return e.children({ariaAttributes:r,commonProps:t,dataAttributes:n,field:o,orientation:e.orientation})}var io=require("tailwind-merge"),fe=require("react/jsx-runtime");function lo(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{orientation:r}=He(e.style,{orientation:kn(e.field)}),o=wn(e.field,e.disabled);return(0,fe.jsxs)("div",{className:(0,io.twMerge)("flex flex-col gap-3",zn(t)),children:[(0,fe.jsx)(ro,{disabled:o,errors:n,field:e.field,orientation:r,children:(0,fe.jsx)(oo,{disabled:o,errors:n,field:e.field,orientation:r,children:e.children})}),(0,fe.jsx)(Kr,{errors:n,name:e.field.name})]})}var ao=require("jotai"),fo=require("react/jsx-runtime");function so(e){return(t,n)=>o=>{let i=(0,ao.useAtomValue)(e(o.field.name)),l=n(i,o);return l===null?null:(0,fo.jsx)(t,{...o,...l})}}var ll=so(et);function co(e){return ll(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var al=so(hr);function uo(e){return al(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var mo=uo(co(lo));var go=require("tailwind-merge");var v=require("react/jsx-runtime");function po(e){function t(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}let n=e.canRemove&&e.onRemove!=null&&(0,v.jsx)("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:(0,go.twMerge)("rounded p-1 text-xl text-slate-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500 dark:hover:text-red-400"),onClick:t,type:"button",children:(0,v.jsx)("span",{"aria-hidden":"true",children:"\xD7"})});return e.isMultiField?(0,v.jsxs)("div",{className:"rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[(0,v.jsxs)("div",{className:"mb-3 flex items-center justify-between",children:[(0,v.jsxs)("span",{className:"text-sm font-medium text-slate-400 dark:text-slate-500",children:[e.label," ",e.index+1]}),n]}),(0,v.jsx)(ee,{children:e.children})]}):(0,v.jsxs)("div",{className:"flex items-start gap-2",children:[(0,v.jsx)(ee,{children:e.children}),n&&(0,v.jsx)("div",{className:"shrink-0",children:n})]})}var xo=require("tailwind-merge");var yo=require("jotai"),P=require("react");function bo(e,t){let n=e.advanced?.length?.min??1,r=e.advanced?.length?.max??1/0,[o,i]=(0,P.useState)(()=>Qn(e,t)),l=(0,P.useRef)(o.length),a=(0,P.useRef)(o);(0,P.useLayoutEffect)(()=>{a.current=o});let s=(0,yo.useSetAtom)(nt),c=(0,P.useCallback)(()=>{i(F=>{if(F.length>=r)return F;let G=l.current++;return[...F,G]})},[r]),u=(0,P.useCallback)(F=>{if(a.current.length<=n)return;let G=a.current[F];i(C=>C.length<=n?C:C.filter((x,V)=>V!==F)),s(C=>{let x={...C},V=`${e.name}.`,N=[];for(let S of e.fields)if(q(S))for(let $ of S.fields)N.push($.name);else N.push(S.name);for(let S of N)delete x[`${V}${G}.${S}`];return x})},[e.name,e.fields,n,s]),p=o.length<r,h=o.length>n;return[o,c,u,p,h,r]}var B=require("react/jsx-runtime");function ho(e){let[t,n,r,o,i,l]=bo(e.field,e.value),a=jn(e.field),s=e.field.advanced?.action??"Add item",c=l!==1/0,u=Jn(e.field);return(0,B.jsxs)(B.Fragment,{children:[t.map((p,h)=>(0,B.jsx)(po,{canRemove:i,index:h,isMultiField:u,label:a,onRemove:r,children:e.children(p)},p)),(0,B.jsxs)("button",{"aria-disabled":!o,"aria-label":c?`${s}, ${t.length} of ${l}`:s,className:(0,xo.twMerge)("flex w-full items-center gap-1.5 rounded py-1","text-sm font-medium text-slate-500","transition-colors duration-150","hover:text-slate-800","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:ring-offset-2 focus-visible:outline-none","dark:text-slate-400 dark:hover:text-slate-200",!o&&"cursor-not-allowed opacity-50 hover:text-slate-500 dark:hover:text-slate-400"),disabled:!o,onClick:n,type:"button",children:[(0,B.jsx)("span",{"aria-hidden":"true",children:"+"}),s,c&&(0,B.jsxs)("span",{"aria-hidden":"true",className:"ml-auto text-slate-400 tabular-nums dark:text-slate-500",children:[t.length," / ",l]})]})]})}var To=require("react/jsx-runtime");function Ro(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return(0,To.jsx)(Ye,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}var it=require("react/jsx-runtime");function So({children:e,field:t,value:n}){return(0,it.jsx)(ze,{container:t,fields:t.fields,children:(0,it.jsx)(Ro,{field:t,children:(0,it.jsx)(ho,{field:t,value:n,children:e})})})}var Ao=require("tailwind-merge"),Lt=require("react/jsx-runtime");function vo(e){let t=Wn(e.column?.advanced?.cols);return(0,Lt.jsx)("div",{className:"flex w-full flex-col gap-4",children:(0,Lt.jsx)("div",{className:(0,Ao.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children})})}var No=require("react");var Co=require("react/jsx-runtime");function Fo(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>_e(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(0,Co.jsx)(he,{children:e.children,components:e.components,disabled:e.disabled,fields:t,style:e.style,value:e.value})}var z=require("react/jsx-runtime");function he(e){let{field:t,list:n}=e.components;return Ue(e.fields).map((r,o)=>(0,z.jsxs)(No.Fragment,{children:[q(r)&&(0,z.jsx)(vo,{column:r,children:(0,z.jsx)(he,{...e,fields:r.fields})}),_e(r)&&(0,z.jsx)(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),Cn(r)&&(0,z.jsx)(n,{field:r,value:e.value,children:i=>(0,z.jsx)(Fo,{children:e.children,components:e.components,disabled:e.disabled,field:r,index:i,style:e.style,value:e.value})})]},o))}var ko=require("react/jsx-runtime");function Eo(e){return n=>(0,ko.jsx)(he,{...n,components:e})}var Io=Eo({field:mo,list:So});var Ot=require("jotai");var Re=require("react");function Lo(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:l}=n??{},a=(0,Ot.useSetAtom)(Lr),s=(0,Ot.useSetAtom)(Pr),c={data:null,error:null,success:!1},[u,p,h]=(0,Re.useActionState)(async(F,G)=>{let[C,x]=e(),V=tr(C,x,l);if(i===!1)return t?await t(G,V):F;let N=yn(G),S=V.safeParse(N);if(!S.success){let E=nr(S.error);return(0,Re.startTransition)(()=>{a(E)}),Pt(N,{description:f("Please correct the errors and try again.",l),details:[],title:f("There were validation errors submitting the form.",l)})}let $=bn(N);if(t)try{let E=await t($,V);return E.success?(r?.(E.data),o||(0,Re.startTransition)(()=>{s()}),wo($,o)):Pt($,E.error)}catch(E){return ye.error("Error executing form action:",E),Pt($,{title:f("An unexpected error occurred submitting the form.",l),details:sl(E,l)})}return wo(S.data,o)},c);return[p,u,h]}function sl(e,t){return e instanceof Error?[e.message]:[f("Unknown error",t)]}function wo(e,t=!1){return{data:t?e:null,error:null,success:!0}}function Pt(e,t){return{data:e,error:t,success:!1}}var re=require("react");var Po=require("react"),lt=require("jotai");function Oo(){let e=(0,lt.useSetAtom)(wr),t=(0,lt.useSetAtom)(Or),n=(0,lt.useSetAtom)(_r);return(0,Po.useCallback)(r=>{let o=Array.isArray(r)?r:[r];e(o),n(o),t(o)},[e,n,t])}function Vo(){let e=Oo(),t=(0,re.useRef)({}),n=(0,re.useRef)([]),r=(0,re.useCallback)((l,a,s)=>{l in t.current||(t.current[l]=a,n.current.push(s))},[]),o=(0,re.useCallback)(l=>{t.current[l]&&(delete t.current[l],n.current=n.current.filter(a=>a.name!==l),e([l]))},[e]);return[(0,re.useCallback)(()=>[t.current,n.current],[]),r,o]}var O=require("react/jsx-runtime");function Do(e){let t=e.translations?.[e.lang??""],[n,r,o]=Vo(),[i,l,a]=Lo(n,e.action,{onSuccess:e.onSuccess,validation:e.config.validation.submit,translations:t}),s=e.config.validation.showError&&!l.success&&l.error,c=l.data??e.value;return(0,O.jsxs)(O.Fragment,{children:[s&&je(e.config.alert,u=>(0,O.jsx)("div",{className:"mb-4 w-full",children:(0,O.jsx)(u,{description:l.error?.description,details:l.error?.details,title:l.error.title})})),(0,O.jsx)(Ar,{action:i,config:e.config,control:e.children,definition:e.definition,isPending:a,noValidate:!0,readOnly:e.readOnly,sections:e.sections,children:({disabled:u,fields:p})=>(0,O.jsx)(Io,{disabled:u,fields:p,style:e.config.style,value:c,children:h=>(0,O.jsx)(Zr,{...h,config:e.config,context:e.context,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:c})})})]})}var Mo=require("jotai"),Vt=require("react/jsx-runtime");function _o(e){return(0,Vt.jsx)(Mo.Provider,{children:(0,Vt.jsx)(Do,{...e})})}
|
|
1
|
+
"use strict";var Uo=Object.create;var Fe=Object.defineProperty;var Ho=Object.getOwnPropertyDescriptor;var Yo=Object.getOwnPropertyNames;var Xo=Object.getPrototypeOf,qo=Object.prototype.hasOwnProperty;var Zo=(e,t)=>{for(var n in t)Fe(e,n,{get:t[n],enumerable:!0})},_t=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Yo(t))!qo.call(e,o)&&o!==n&&Fe(e,o,{get:()=>t[o],enumerable:!(r=Ho(t,o))||r.enumerable});return e};var Ko=(e,t,n)=>(n=e!=null?Uo(Xo(e)):{},_t(t||!e||!e.__esModule?Fe(n,"default",{value:e,enumerable:!0}):n,e)),Wo=e=>_t(Fe({},"__esModule",{value:!0}),e);var cl={};Zo(cl,{Form:()=>_o});module.exports=Wo(cl);var Gt=require("react/jsx-runtime");function Bt(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,Gt.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var se=require("react");var dt=require("react/jsx-runtime");function $t(e){return(0,dt.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,dt.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 Ce="input",Ut="input/email",Ht="input/number";var Yt="textarea",Xt="radio",qt="checkbox",ft="list";var Zt="select",Kt="select/month",Wt="select/year";var me="column",mt="fields",zt="label",A="value",Ne="options",gt="email",Jt="number",Qt="password",jt="tel",ge="text",en="aria-errormessage",tn="aria-invalid",nn="data-invalid",rn="data-readonly",on="aria",ln="data",Ee="min",ke="max",an="minLength",sn="maxLength",ie="$ref";var cn="source",un="state",Ie="http://luna.internal",U="vertical",le="horizontal";var dn="type";function d(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function we(e){return e==null||e===""}function H(e){return v(e)||typeof e=="number"||pt(e)}function v(e){return typeof e=="string"}function fn(e){return d(e)&&"url"in e}function pt(e){return typeof e=="boolean"}var zo=/^\d+$/;function bt(e,t=[],n=A){return Array.isArray(t)?t.find(r=>{let o=xt(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}:{value:e}}function xt(e,t=A){if(e!=null){if(H(e))return e;if(d(e)){let n=Jo(e,t);if(H(n))return n}}}function Jo(e,t){let n=R(e,t);if(H(n))return n}function mn(e,t){if(Array.isArray(e))return e;let n=R(e,t);return Array.isArray(n)?n:null}function R(e,t){if(!t||!d(e))return null;let n=t.split(".").filter(o=>o!=="");if(n.length===0)return null;let r=e;for(let o of n)if(d(r)&&o in r)r=r[o];else return null;return r}function gn(e,t={label:zt,value:A}){return e.map(n=>{if(d(n)){let r=R(n,t.label),o=R(n,t.value);if(H(r)&&H(o))return{label:`${r}`,value:`${o}`}}return n})}function pn(e=ge){if(e){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);if(n&&n!==Ce)return n.trim().toLowerCase()}return ge}function yn(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 bn(e){let t={};for(let n in e){let r=n.split(".");if(r.length===1){t[n]=e[n];continue}let o=t;for(let l=0;l<r.length-1;l++){let a=r[l],s=r[l+1],c=zo.test(s);a in o||(o[a]=c?[]:{}),o=o[a]}let i=r[r.length-1];o[i]=e[n]}return yt(t),t}function yt(e){for(let t in e){let n=e[t];if(Array.isArray(n)){let r=n.filter(o=>o!==void 0);r.forEach(o=>{o!==null&&typeof o=="object"&&!Array.isArray(o)&&yt(o)}),e[t]=r}else n!==null&&typeof n=="object"&&yt(n)}}var Qo=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function Y(e,t={}){if(v(e))return jo(e,t);if(Array.isArray(e))return e.map(n=>Y(n,t));if(d(e)){let n={};for(let r in e)n[r]=Y(e[r],t);return n}return e}function ht(e,t={}){return pe(e)?Y(e,t):e}function pe(e){return v(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>pe(t)):d(e)?Object.values(e).some(t=>pe(t)):!1}function jo(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,r)=>{let o=r.includes(".")?R(t,r):t[r];return H(o)?String(o):n})}function xn(e,t){if(!v(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Qo.exec(e))!==null;){let[l,a,s]=n,c=n.index;o=!0,c>r&&i.push(e.substring(r,c));let u=t?t(c,s,a):l;i.push(u),r=c+l.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var ye={error:(...e)=>{Rt()&&!Tt()&&Le().error("[Luna Form]",...e)},warn:(...e)=>{Rt()&&!Tt()&&Le().warn("[Luna Form]",...e)},info:(...e)=>{Rt()&&!Tt()&&Le().info("[Luna Form]",...e)}},Rt=()=>typeof Le()<"u",Tt=()=>!0,Le=()=>globalThis.console;function hn(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===A&&n.push(i),i.action===cn&&r.push(i),i.action===un&&o.push(i);t({sources:r,states:o,values:n})}function Rn(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(fn(i)){let l=Y(i.url,e),a=i.body?Y(i.body,e):i.body;n(o,{...i,url:l,body:a})}}}var be={eq:oi,gt:si,gte:ci,in:li,lt:ui,lte:di,neq:ii,nin:ai},ei=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,Tn=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function ti(e){return typeof e=="string"&&ei.test(e)}function ni(e){return typeof e=="string"&&Tn.test(e)}function ri(e){let t=e.match(Tn);if(t){let[,n,r,o,i,l,a]=t;return new Date(Number(o),Number(r)-1,Number(n),Number(i??0),Number(l??0),Number(a??0)).getTime()}return NaN}function X(e){return ti(e)?new Date(e).getTime():ni(e)?ri(e):Number(e)}function oi(e,t){return e===t}function ii(e,t){return e!==t}function li(e,t){return Array.isArray(t)&&t.includes(String(e))}function ai(e,t){return Array.isArray(t)&&!t.includes(String(e))}function si(e,t){return X(e)>X(t)}function ci(e,t){return X(e)>=X(t)}function ui(e,t){return X(e)<X(t)}function di(e,t){return X(e)<=X(t)}function Sn(e=null,t=[],n){for(let r of t){let{target:o,state:i,when:l}=r,a=Array.isArray(o)?o:[o];if(!e){n(a);continue}let s=fi(e,l);n(a,s?i:void 0)}}function fi(e,t){return t===void 0?!0:v(t)?Pe(e,A)===t:pt(t)?!!Pe(e,A)===t:Array.isArray(t)?t.includes(String(Pe(e,A))):mi(e,t)}function mi(e=null,t){let n=Pe(e,t.field??A),{operator:r="eq",value:o}=t,i=be[r];return i?i(n,o):!1}function Pe(e,t){return d(e)?R(e,t):e}function An(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?Y(i,e):void 0)}var Oe=e=>w(Kt)(e),Ve=e=>w(Wt)(e),T=w(qt),St=w(Ce),D=w(Xt),M=w(Zt),At=w(Yt),vn=w(ge,gt,Qt,jt),Fn=w(Ut,gt),De=w(Ht,Jt);function Me(e){return D(e)||T(e)}function Cn(e){return e.type===ft}function q(e){return e.type===me}function _e(e){return e.type!==me&&e.type!==ft}function Be(e){return M(e)||D(e)}function Nn(e){return St(e)||At(e)}function Q(e){return e!=null&&e!==""}function w(...e){return t=>{let n=v(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function En(e,t={}){if(M(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&d(n))return[n]}}function kn(e){return D(e)||T(e)?le:e.advanced?.orientation??U}function In(e){return T(e)?e.advanced?.reverse!==!1:!1}function wn(e,t){let n=e.readonly??!1;return t||n}function Ln(e){if(D(e)||M(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||d(t)&&!(ie in t))return t}}var gi=/^\d+$/;function Pn(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function On(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 vt(){return new Date().getFullYear()}function Ft(e,t){if(typeof e=="number")return e;let n=t??vt(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,l]=o,a=parseInt(l,10);if(!isNaN(a))return i==="+"?n+a:n-a}return n}return gi.test(r)?parseInt(r,10):n}var Ge=vt();function pi(e){if(M(e))return yi(e)}function yi(e){if(Oe(e))return Pn();if(Ve(e)){let t=e.advanced?.length?.min??Ge,n=e.advanced?.length?.max??Ge+5;return On(Ft(t,Ge),Ft(n,Ge))}}function Vn(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return St(e)?{...n,...bi(e)}:M(e)?{...n,...xi(e)}:At(e)?{...n,...hi(e)}:n}function bi(e){let t=pn(e.type),n={...e,type:t};return{...Dn(e),...Ri(n),...vn(n)?Mn(n):{},type:t}}function xi(e){let t=pi(e);return t?{options:t}:{}}function hi(e){return{...Dn(e),...Mn(e)}}function Dn(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Ri(e){return De(e)?Ti(e):{}}function Mn(e){return _n(e,{min:an,max:sn})}function Ti(e){return _n(e,{min:Ee,max:ke})}function _n(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 Bn(e,t){let n=Ln(e);return n||En(e,t)}function Si(e,t){let n=d(t)&&e.name in t?t[e.name]:t;return xt(n,e.advanced?.entity)}function Ai(e,t,n){return Be(e)&&Array.isArray(n)?{...t,[Ne]:n}:t}function vi(e,t,n){if(e.required&&!Q(n)&&M(e)&&e.advanced?.preselected!==!1&&Ne in t){let r=t[Ne];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function Fi(e,t){return M(e)&&Array.isArray(t)?gn(t,e.advanced?.options):t}function Gn(e,t,n,r){let o=Si(e,r),i=Array.isArray(n)?Fi(e,n):n,l=Ai(e,t,i),a=vi(e,l,o);return{commonPropsWithOptions:l,defaultValue:a}}function $n(e,t){return T(e)?{checked:Q(t)?t:!1}:{value:t??""}}var Ci=/^#\/definition\//;function Ue(e=[],t){let n=$e(e,t);return Array.isArray(n)?n.filter(Ei).sort((r,o)=>Un(r)-Un(o)):[]}function $e(e,t,n=new Map,r=new WeakSet){if(!Ni(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=>$e(i,t,n,r));if(ie in e&&v(e[ie])){let i=e[ie].replace(Ci,""),l=R(t,i);return l!==null?$e(l,t,n,r):e}let o={};for(let[i,l]of Object.entries(e))o[i]=$e(l,t,n,r);return r.delete(e),n.set(e,o),o}function Hn(e){return Object.entries(e??{})}function Un(e){return e.order??Number.MAX_VALUE}function Ni(e){return e!==void 0&&d(e)&&Object.keys(e).length>0}function Ei(e){return dn in e?!0:Array.isArray(e[mt])?e[mt].length>0:!0}function Yn(e,t){let n={};for(let[r,o]of Hn(t))n[`${e}-${r}`]=o;return n}function ki(e){return Yn(on,e)}function Ii(e){return Yn(ln,e)}function Xn(e,t){let n=ki(e.advanced?.aria);return t&&t.length>0&&(n[tn]="true",n[en]=`${e.name}-error`),n}function qn(e){return Ii(e.advanced?.data)}var Zn={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Kn={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function Wn(e,t=2){return Zn[e&&e in Zn?e:t]}function zn(e){if(e&&e in Kn)return Kn[e]}function wi(e,t){let n=e.advanced?.length?.min??1;if(t){let r=R(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function Jn(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===me}function Qn(e,t){let n=wi(e,t);return Array.from({length:n},(r,o)=>o)}function jn(e){return e.label??e.name}var m=require("zod");function f(e,t){return e?t?t[e]??e:e:""}var Li=[[De,Mi],[Fn,Pi],[Ve,_i],[Oe,Bi],[T,Oi],[D,Vi]];function tr(e,t=[],n){let r=m.z.object(e);return t.length===0?r:Hi(r,t,n)}function nr(e){let t={},n=m.z.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function rr(e,t){for(let[n,r]of Li)if(n(e))return r(e,t);return Di(e,t)}function Pi(e,t){let n=m.z.string().trim();if(e.required){let r=ae(e,t),o=n.min(1,r).pipe(er(e,t));return m.z.preprocess(i=>we(i)?"":i,o)}return n.pipe(er(e,t)).or(m.z.literal("")).nullable()}function Oi(e,t){let n=m.z.coerce.boolean();return e.required?(n=n.refine(r=>r===!0,{message:ae(e,t)}),m.z.preprocess(r=>r===null?!1:r,n)):n.nullable()}function Vi(e,t){let n=m.z.coerce.string();return e.required?(n=n.min(1,ae(e,t)),m.z.preprocess(r=>we(r)?"":r,n)):n.or(m.z.literal("")).nullable()}function Di(e,t){let n=m.z.coerce.string().trim();return n=or(n,e,t),e.required?(n=ir(n,e,t),m.z.preprocess(r=>we(r)?"":r,n)):n.nullable()}function Mi(e,t){let n=m.z.coerce.number().int();return n=or(n,e,t),e.required?(n=ir(n,e,t),m.z.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function _i(e,t){return e.required?m.z.preprocess(Gi,m.z.coerce.number({message:ae(e,t)}).int()):m.z.coerce.number().int().nullable()}function Bi(e,t){let n=ae(e,t),r=m.z.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function Gi(e){return e===null||e===""?void 0:e}function er(e,t){let n=e.validation?.email?f(e.validation?.email,t):void 0;return m.z.email(n)}function or(e,t,n){return e=$i(e,t,n),e=Ui(e,t,n),e}function ir(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,ae(t,n)):e}var $i=(e,t,n)=>lr(e,t,Ee,n),Ui=(e,t,n)=>lr(e,t,ke,n);function lr(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?f(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function Hi(e,t=[],n){let r=Xi(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:l,rule:a}of r)if(!Yi(o,l,a)){let s=f(a.message,n);i.addIssue({code:"custom",message:s,path:[l]})}})}function Yi(e,t,n){let r=n.operator??"eq",o=be[r];return o?o(e[t],e[n.field]):!1}function Xi(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 ar(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let l of i){let a=l.operator??"eq",s=be[a];if(s&&!s(e,n(l.field))&&l.message){let c=f(l.message,r);o.push(c)}}return o}function ae(e,t){return e.validation?.required?f(e.validation?.required,t):void 0}function sr(e,t){if(!t||!Zi(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||qi(r);return t.some(l=>!(l.protocol&&l.protocol!==r||l.hostname&&l.hostname!==o||l.port!==void 0&&String(l.port)!==i))}catch{return!1}}function qi(e){return e==="https"?"443":"80"}function Zi(e){return/^(https?:)?\/\//.test(e)}function cr(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,Ie);new URL(t,Ie).searchParams.forEach((i,l)=>{n.searchParams.set(l,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(Ie,""):o}catch{return t||e}}function ur(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=cr(t.url,n.url),o=Ki(t,n),i=Wi(t,n);return{...t,...n,url:r,body:o,headers:i}})}function Ki(e,t){return d(t.body)&&d(e?.body)?{...e.body,...t.body}:t.body??e?.body}function Wi(e,t){return d(t.headers)&&d(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function He(e,t){return{...e,...t}}var dr=require("react/jsx-runtime");function Z(e){return xn(e,(t,n,r)=>(0,dr.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}var L=require("react/jsx-runtime");function fr(e){let{fields:t=[]}=e.section,[n,r]=(0,se.useState)(!1),o=(0,se.useCallback)(()=>r(i=>!i),[]);return(0,L.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,L.jsx)("legend",{children:(0,L.jsxs)("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-slate-600 dark:text-slate-400",onClick:o,type:"button",children:[(0,L.jsx)($t,{expanded:n}),(0,L.jsx)("span",{children:Z(e.section.title)})]})}),(0,L.jsx)(se.Activity,{mode:n?"visible":"hidden",children:(0,L.jsxs)("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-slate-300 pl-4 dark:border-slate-600","data-slot":"field-set-content",children:[e.section.description&&(0,L.jsx)("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:Z(e.section.description)}),e.group]})})]})}var j=require("react/jsx-runtime");function mr(e){return(0,j.jsxs)(j.Fragment,{children:[e.title&&(0,j.jsx)("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:Z(e.title)}),e.description&&(0,j.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:Z(e.description)})]})}var Xe=require("react/jsx-runtime");function Ye(e){return(0,Xe.jsxs)("fieldset",{"data-slot":"field-set","data-empty":e.empty,className:"flex flex-col data-[empty=false]:gap-6",id:e.id,children:[(0,Xe.jsx)(mr,{description:e.description,title:e.title}),e.children]})}var gr=require("react/jsx-runtime");function ee(e){return(0,gr.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 qe=require("react/jsx-runtime");function pr(e){let{fields:t=[]}=e.section,{compact:n}=He(e.style,{compact:e.section.compact}),r=(0,qe.jsx)(ee,{compact:n,children:e.children});return!e.section.title&&!e.section.description?r:e.section.advanced?(0,qe.jsx)(fr,{section:e.section,group:r}):(0,qe.jsx)(Ye,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),title:e.section.title,children:r})}var Rr=require("jotai");var K=require("jotai"),Ct=require("jotai-family"),Ze=require("fast-equals");function Ke(e,t){let{[t]:n,...r}=e;return r}function zi(e){return(0,Ct.atomFamily)(t=>(0,K.atom)(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let l=i[t];(!l||!(0,Ze.deepEqual)(l,o))&&r(e,{...i,[t]:o})}else i[t]&&r(e,Ke(i,t))}))}function Ji(e){return(0,K.atom)(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function Qi(e){return(0,K.atom)(null,(t,n,r)=>{let i={...t(e)},l=!1;for(let a of r)i[a]&&(delete i[a],l=!0);l&&n(e,i)})}function ji(e){return(0,K.atom)(null,(t,n,r)=>{let o=t(e);(0,Ze.deepEqual)(o,r)||n(e,r)})}function yr(e,t={}){let{merge:n,validateTarget:r}=t;return(0,Ct.atomFamily)(o=>(0,K.atom)(i=>{let l=i(e)[o];if(l&&n)return n(Object.values(l))},(i,l,a,s)=>{if(r&&!r(a))return;let c=i(e),u={...c[a]??{}};if(s!=null){let p=u[o];(!p||!(0,Ze.deepEqual)(p,s))&&(u[o]=s,l(e,{...c,[a]:u}))}else u[o]&&(delete u[o],Object.keys(u).length===0?l(e,Ke(c,a)):l(e,{...c,[a]:u}))}))}function br(e){return(0,K.atom)(null,(t,n,r)=>{let i={...t(e)},l=!1;for(let a of r)i[a]&&(delete i[a],l=!0);for(let a in i){let s={...i[a]},c=!1;for(let u of r)s[u]&&(delete s[u],c=!0,l=!0);c&&(Object.keys(s).length===0?delete i[a]:i[a]=s)}l&&n(e,i)})}function ce(e={}){let t=(0,K.atom)(e);return{atom:t,clearAll:Ji(t),clear:Qi(t),bulkReport:ji(t),report:zi(t)}}var xr=ce(),We=xr.atom,hr=xr.report;function el(e,t){return e.fields.every(n=>Tr(n,t))}function Tr(e,t){return t[e.name]?.hidden??e.hidden??!1}function tl(e,t){return q(e)?el(e,t):Tr(e,t)}function ze(e){let t=(0,Rr.useAtomValue)(We);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>tl(r,t))?null:e.children}var Nt=require("react/jsx-runtime");function Sr(){return(0,Nt.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,Nt.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}var _=require("react/jsx-runtime");function Ar(e){let t=Ue(e.sections,e.definition);return(0,_.jsx)("div",{className:"h-full w-full",children:(0,_.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,_.jsxs)(ee,{children:[t.map((n,r)=>(0,_.jsxs)(ze,{fields:n.fields??[],children:[(0,_.jsx)(pr,{section:n,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.separator&&(0,_.jsx)(Sr,{})]},r)),e.control&&(0,_.jsx)(Bt,{isPending:e.isPending,children:e.control})]})})})}var Fr=require("react/jsx-runtime");function vr(e){return(0,Fr.jsx)("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}var Cr=require("react/jsx-runtime");function Je(e){let t=Z(e.text);return t?(0,Cr.jsx)(vr,{children:t}):null}var Nr=require("tailwind-merge"),Qe=require("react/jsx-runtime");function Er(e){let t=e.style?.showOptionalLabel??!0,n=D(e.field)||T(e.field);return(0,Qe.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,Nr.twMerge)("flex w-fit items-center gap-2 text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,children:[e.children,t&&!e.field.required&&(0,Qe.jsx)("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:f("(Optional)",e.translations)})]})}var xe=require("react/jsx-runtime");function kr(e){let t={context:e.context,env:e.config?.env},n=ht(e.field.label,t),r=ht(e.field.description,t);return(0,xe.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,xe.jsx)(Er,{field:e.field,style:e.config?.style,translations:e.translations,children:f(n,e.translations)}),e.orientation===le&&(0,xe.jsx)(Je,{text:f(r,e.translations)})]})}var te=require("react/jsx-runtime");function Ir(e){return(0,te.jsxs)(te.Fragment,{children:[e.field.name&&e.field.label&&(0,te.jsx)(kr,{config:e.config,context:e.context,field:e.field,orientation:e.orientation,translations:e.translations}),e.children,e.orientation===U&&e.field.description&&(0,te.jsx)(Je,{text:f(e.field.description,e.translations)})]})}function je(e,t){return e?t(e):null}var Et=ce(),wr=Et.clear,Lr=Et.bulkReport,et=Et.report;var tt=ce(),nt=tt.atom,Pr=tt.clearAll,Or=tt.clear,rt=tt.report;var b=require("react");var Vr=require("jotai");var nl=e=>{let t=ur(e);if(t)return t},rl=e=>e.trim()!=="",Dr=(0,Vr.atom)({}),Mr=yr(Dr,{merge:nl,validateTarget:rl}),_r=br(Dr);var $r=require("jotai");var Br=Ko(require("swr"),1);function Gr(e=null,t,n=!1){let{data:r,error:o}=(0,Br.default)(ol(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 mn(r,e.namespace)}return null}function ol(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!pe(e.url)){if(sr(e.url,t.fetcher.remotePatterns))return e;ye.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function Ur(e,t,n){let r=Bn(e,n),[o,i]=(0,$r.useAtom)(Mr(e.name));return[Gr(o??r,t,e.disabled),i]}var ne=require("react");function Hr(e,t,n,r){let{name:o}=e,i=(0,ne.useMemo)(()=>rr(e,r),[e,r]),l=(0,ne.useEffectEvent)(s=>{s&&t(s,i,e)}),a=(0,ne.useEffectEvent)(s=>{s&&n(s)});return(0,ne.useEffect)(()=>(l(o),()=>{a(o)}),[o]),i}var de=require("jotai");var ue=require("react");function Yr(){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)},[])}var Xr=require("jotai"),W=require("react");function qr(e,t){let{name:n}=e,r=(0,W.useRef)(!1),[o,i]=(0,Xr.useAtom)(rt(n)),l=(0,W.useEffectEvent)(s=>{let c=il(n,s);Q(c)&&(r.current=!0,i(c))});(0,W.useEffect)(()=>{t&&l(t)},[t]);let a=(0,W.useCallback)(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:a,value:o}}function il(e,t){if(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(typeof r=="object")r=r[o];else return}return r}var kt=require("react/jsx-runtime");function Zr(e){let t=e.field.advanced?.entity,n=(0,de.useStore)(),r=Yr(),[,o]=(0,b.useTransition)(),{setValue:i,shouldSkipOnChange:l,value:a}=qr(e.field,e.value),s=(0,b.useRef)(!1),c=(0,b.useRef)(a);c.current=a;let u=(0,b.useRef)(e.translations);u.current=e.translations;let p=Nn(e.field),h=Me(e.field),C=(0,de.useSetAtom)(nt),G=(0,de.useSetAtom)(We),N=(0,de.useSetAtom)(et(e.field.name)),[x,V]=Ur(e.field,e.config,a),E=Hr(e.field,e.onMount,e.onUnmount,e.translations),S=f(e.commonProps.placeholder,e.translations),$={...e.commonProps,placeholder:S},{commonPropsWithOptions:k,defaultValue:Te}=Gn(e.field,$,x,a),Dt=(0,b.useRef)(null);Dt.current=g=>{i(g),e.onValueChange&&e.onValueChange({name:e.field.name,value:g})};let at=(0,b.useRef)(null);at.current=g=>{let y=e.field.event?.change;y&&hn(y,({sources:J,states:Ae,values:st})=>{o(()=>{Rn(g,J,(I,oe)=>V(I,oe)),Sn(g,Ae,(I,oe)=>{G(ve=>oe?I.reduce((ct,ut)=>({...ct,[ut]:oe}),ve):I.reduce((ct,ut)=>Ke(ct,ut),ve))}),An(g,st,(I,oe)=>{C(ve=>({...ve,[I]:oe}))})})})};let Bo=$n(e.field,Te),Se=(0,b.useCallback)(g=>{let J=E.safeParse(g).error?.issues.map(I=>I.message)??[],Ae=e.field.validation?.custom,st=Ae?ar(g,Ae,I=>n.get(rt(I)),u.current):[];N([...J,...st])},[e.field.validation?.custom,E,N,n]),Mt=(0,b.useCallback)((g,y)=>{if(p){r(()=>{y({value:g})},500);return}y(bt(g,x,t))},[x,t,p,r]);(0,b.useEffect)(()=>{if(s.current||!e.value)return;if(!e.field.event?.change){s.current=!0;return}if(!((!Be(e.field)||!!x&&x.length>0)&&Q(Te)))return;s.current=!0;let y=String(Te),J=p?{value:y}:bt(y,x,t);at.current?.(J)},[x,Te,t,p,e.field,e.value]);let Go=(0,b.useCallback)(g=>{let y=g.target.value;!h&&l()&&(!p||y===c.current)||(Dt.current?.(y),e.config.validation.change&&Se(y),e.field.event?.change&&Mt(y,J=>{at.current?.(J)}))},[Mt,h,p,e.config.validation.change,e.field.event?.change,l,Se]),$o=(0,b.useCallback)(g=>{if(!h){let y=g.target.value;e.config.validation.blur&&Se(y)}},[h,e.config.validation.blur,Se]);return je(e.config.inputs[e.field.type],g=>(0,kt.jsx)(Ir,{config:e.config,context:e.context,field:e.field,orientation:e.orientation,translations:e.translations,children:(0,kt.jsx)(g,{...k,...e.ariaAttributes,...e.dataAttributes,...Bo,onBlur:$o,onChange:Go})}))}var It=require("react/jsx-runtime");function Kr(e){return!e.errors||e.errors.length===0?null:(0,It.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,It.jsx)("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var Wr=require("tailwind-merge"),zr=require("react/jsx-runtime");function ot(e){let t=e.errors&&e.errors.length>0;return(0,zr.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[nn]:"true"},...e.disabled&&{[rn]:"true"},"data-orientation":e.orientation,className:(0,Wr.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 Jr=require("tailwind-merge"),jr=require("react/jsx-runtime");function Qr(e){return(0,jr.jsx)(ot,{...e,orientation:U,className:(0,Jr.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var eo=require("tailwind-merge"),no=require("react/jsx-runtime");function to(e){return(0,no.jsx)(ot,{...e,orientation:le,className:(0,eo.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 wt=require("react/jsx-runtime");function ro(e){let t=Me(e.field),n=T(e.field),r=In(e.field);return e.orientation===U?(0,wt.jsx)(Qr,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):(0,wt.jsx)(to,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function oo(e){if(!e.field.type)return null;let t=Vn(e.field,e.disabled),n=qn(e.field),r=Xn(e.field,e.errors),o={...e.field,disabled:t.disabled};return e.children({ariaAttributes:r,commonProps:t,dataAttributes:n,field:o,orientation:e.orientation})}var io=require("tailwind-merge"),fe=require("react/jsx-runtime");function lo(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{orientation:r}=He(e.style,{orientation:kn(e.field)}),o=wn(e.field,e.disabled);return(0,fe.jsxs)("div",{className:(0,io.twMerge)("flex flex-col gap-3",zn(t)),children:[(0,fe.jsx)(ro,{disabled:o,errors:n,field:e.field,orientation:r,children:(0,fe.jsx)(oo,{disabled:o,errors:n,field:e.field,orientation:r,children:e.children})}),(0,fe.jsx)(Kr,{errors:n,name:e.field.name})]})}var ao=require("jotai"),fo=require("react/jsx-runtime");function so(e){return(t,n)=>o=>{let i=(0,ao.useAtomValue)(e(o.field.name)),l=n(i,o);return l===null?null:(0,fo.jsx)(t,{...o,...l})}}var ll=so(et);function co(e){return ll(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var al=so(hr);function uo(e){return al(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var mo=uo(co(lo));var go=require("tailwind-merge");var F=require("react/jsx-runtime");function po(e){function t(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}let n=e.canRemove&&e.onRemove!=null&&(0,F.jsx)("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:(0,go.twMerge)("rounded p-1 text-xl text-slate-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500 dark:hover:text-red-400"),onClick:t,type:"button",children:(0,F.jsx)("span",{"aria-hidden":"true",children:"\xD7"})});return e.isMultiField?(0,F.jsxs)("div",{className:"rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[(0,F.jsxs)("div",{className:"mb-3 flex items-center justify-between",children:[(0,F.jsxs)("span",{className:"text-sm font-medium text-slate-400 dark:text-slate-500",children:[e.label," ",e.index+1]}),n]}),(0,F.jsx)(ee,{children:e.children})]}):(0,F.jsxs)("div",{className:"flex items-start gap-2",children:[(0,F.jsx)(ee,{children:e.children}),n&&(0,F.jsx)("div",{className:"shrink-0",children:n})]})}var xo=require("tailwind-merge");var yo=require("jotai"),P=require("react");function bo(e,t){let n=e.advanced?.length?.min??1,r=e.advanced?.length?.max??1/0,[o,i]=(0,P.useState)(()=>Qn(e,t)),l=(0,P.useRef)(o.length),a=(0,P.useRef)(o);(0,P.useLayoutEffect)(()=>{a.current=o});let s=(0,yo.useSetAtom)(nt),c=(0,P.useCallback)(()=>{i(C=>{if(C.length>=r)return C;let G=l.current++;return[...C,G]})},[r]),u=(0,P.useCallback)(C=>{if(a.current.length<=n)return;let G=a.current[C];i(N=>N.length<=n?N:N.filter((x,V)=>V!==C)),s(N=>{let x={...N},V=`${e.name}.`,E=[];for(let S of e.fields)if(q(S))for(let $ of S.fields)E.push($.name);else E.push(S.name);for(let S of E)delete x[`${V}${G}.${S}`];return x})},[e.name,e.fields,n,s]),p=o.length<r,h=o.length>n;return[o,c,u,p,h,r]}var B=require("react/jsx-runtime");function ho(e){let[t,n,r,o,i,l]=bo(e.field,e.value),a=jn(e.field),s=e.field.advanced?.action??"Add item",c=l!==1/0,u=Jn(e.field);return(0,B.jsxs)(B.Fragment,{children:[t.map((p,h)=>(0,B.jsx)(po,{canRemove:i,index:h,isMultiField:u,label:a,onRemove:r,children:e.children(p)},p)),(0,B.jsxs)("button",{"aria-disabled":!o,"aria-label":c?`${s}, ${t.length} of ${l}`:s,className:(0,xo.twMerge)("flex w-full items-center gap-1.5 rounded py-1","text-sm font-medium text-slate-500","transition-colors duration-150","hover:text-slate-800","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:ring-offset-2 focus-visible:outline-none","dark:text-slate-400 dark:hover:text-slate-200",!o&&"cursor-not-allowed opacity-50 hover:text-slate-500 dark:hover:text-slate-400"),disabled:!o,onClick:n,type:"button",children:[(0,B.jsx)("span",{"aria-hidden":"true",children:"+"}),s,c&&(0,B.jsxs)("span",{"aria-hidden":"true",className:"ml-auto text-slate-400 tabular-nums dark:text-slate-500",children:[t.length," / ",l]})]})]})}var To=require("react/jsx-runtime");function Ro(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return(0,To.jsx)(Ye,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}var it=require("react/jsx-runtime");function So({children:e,field:t,value:n}){return(0,it.jsx)(ze,{container:t,fields:t.fields,children:(0,it.jsx)(Ro,{field:t,children:(0,it.jsx)(ho,{field:t,value:n,children:e})})})}var Ao=require("tailwind-merge"),Lt=require("react/jsx-runtime");function vo(e){let t=Wn(e.column?.advanced?.cols);return(0,Lt.jsx)("div",{className:"flex w-full flex-col gap-4",children:(0,Lt.jsx)("div",{className:(0,Ao.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children})})}var No=require("react");var Co=require("react/jsx-runtime");function Fo(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>_e(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(0,Co.jsx)(he,{children:e.children,components:e.components,disabled:e.disabled,fields:t,style:e.style,value:e.value})}var z=require("react/jsx-runtime");function he(e){let{field:t,list:n}=e.components;return Ue(e.fields).map((r,o)=>(0,z.jsxs)(No.Fragment,{children:[q(r)&&(0,z.jsx)(vo,{column:r,children:(0,z.jsx)(he,{...e,fields:r.fields})}),_e(r)&&(0,z.jsx)(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),Cn(r)&&(0,z.jsx)(n,{field:r,value:e.value,children:i=>(0,z.jsx)(Fo,{children:e.children,components:e.components,disabled:e.disabled,field:r,index:i,style:e.style,value:e.value})})]},o))}var ko=require("react/jsx-runtime");function Eo(e){return n=>(0,ko.jsx)(he,{...n,components:e})}var Io=Eo({field:mo,list:So});var Ot=require("jotai");var Re=require("react");function Lo(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:l}=n??{},a=(0,Ot.useSetAtom)(Lr),s=(0,Ot.useSetAtom)(Pr),c={data:null,error:null,success:!1},[u,p,h]=(0,Re.useActionState)(async(C,G)=>{let[N,x]=e(),V=tr(N,x,l);if(i===!1)return t?await t(G,V):C;let E=yn(G),S=V.safeParse(E);if(!S.success){let k=nr(S.error);return(0,Re.startTransition)(()=>{a(k)}),Pt(E,{description:f("Please correct the errors and try again.",l),details:[],title:f("There were validation errors submitting the form.",l)})}let $=bn(E);if(t)try{let k=await t($,V);return k.success?(r?.(k.data),o||(0,Re.startTransition)(()=>{s()}),wo($,o)):Pt($,k.error)}catch(k){return ye.error("Error executing form action:",k),Pt($,{title:f("An unexpected error occurred submitting the form.",l),details:sl(k,l)})}return wo(S.data,o)},c);return[p,u,h]}function sl(e,t){return e instanceof Error?[e.message]:[f("Unknown error",t)]}function wo(e,t=!1){return{data:t?e:null,error:null,success:!0}}function Pt(e,t){return{data:e,error:t,success:!1}}var re=require("react");var Po=require("react"),lt=require("jotai");function Oo(){let e=(0,lt.useSetAtom)(wr),t=(0,lt.useSetAtom)(Or),n=(0,lt.useSetAtom)(_r);return(0,Po.useCallback)(r=>{let o=Array.isArray(r)?r:[r];e(o),n(o),t(o)},[e,n,t])}function Vo(){let e=Oo(),t=(0,re.useRef)({}),n=(0,re.useRef)([]),r=(0,re.useCallback)((l,a,s)=>{l in t.current||(t.current[l]=a,n.current.push(s))},[]),o=(0,re.useCallback)(l=>{t.current[l]&&(delete t.current[l],n.current=n.current.filter(a=>a.name!==l),e([l]))},[e]);return[(0,re.useCallback)(()=>[t.current,n.current],[]),r,o]}var O=require("react/jsx-runtime");function Do(e){let t=e.translations?.[e.lang??""],[n,r,o]=Vo(),[i,l,a]=Lo(n,e.action,{onSuccess:e.onSuccess,validation:e.config.validation.submit,translations:t}),s=e.config.validation.showError&&!l.success&&l.error,c=l.data??e.value;return(0,O.jsxs)(O.Fragment,{children:[s&&je(e.config.alert,u=>(0,O.jsx)("div",{className:"mb-4 w-full",children:(0,O.jsx)(u,{description:l.error?.description,details:l.error?.details,title:l.error.title})})),(0,O.jsx)(Ar,{action:i,config:e.config,control:e.children,definition:e.definition,isPending:a,noValidate:!0,readOnly:e.readOnly,sections:e.sections,children:({disabled:u,fields:p})=>(0,O.jsx)(Io,{disabled:u,fields:p,style:e.config.style,value:c,children:h=>(0,O.jsx)(Zr,{...h,config:e.config,context:e.context,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:c})})})]})}var Mo=require("jotai"),Vt=require("react/jsx-runtime");function _o(e){return(0,Vt.jsx)(Mo.Provider,{children:(0,Vt.jsx)(Do,{...e})})}
|
package/dist/client/esm/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as uo}from"react/jsx-runtime";function Rt(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return uo("div",{"data-slot":"field-control",className:"w-full",children:t})}import{Activity as mi,useCallback as gi,useState as pi}from"react";import{jsx as Tt}from"react/jsx-runtime";function St(e){return Tt("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:Tt("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 fe="input",At="input/email",vt="input/number";var Ft="textarea",Ct="radio",Nt="checkbox",Ze="list";var Et="select",kt="select/month",It="select/year";var z="column",Ke="fields",wt="label",S="value",me="options",We="email",Lt="number",Pt="password",Ot="tel",J="text",Vt="aria-errormessage",Dt="aria-invalid",Mt="data-invalid",_t="data-readonly",Bt="aria",Gt="data",ge="min",pe="max",$t="minLength",Ut="maxLength",q="$ref";var Ht="source",Yt="state",ye="http://luna.internal",V="vertical",Z="horizontal";var Xt="type";function d(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function be(e){return e==null||e===""}function D(e){return E(e)||typeof e=="number"||ze(e)}function E(e){return typeof e=="string"}function qt(e){return d(e)&&"url"in e}function ze(e){return typeof e=="boolean"}var fo=/^\d+$/;function Qe(e,t=[],n=S){return Array.isArray(t)?t.find(r=>{let o=je(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}:{value:e}}function je(e,t=S){if(e!=null){if(D(e))return e;if(d(e)){let n=mo(e,t);if(D(n))return n}}}function mo(e,t){let n=h(e,t);if(D(n))return n}function Zt(e,t){if(Array.isArray(e))return e;let n=h(e,t);return Array.isArray(n)?n:null}function h(e,t){if(!t||!d(e))return null;let n=t.split(".").filter(o=>o!=="");if(n.length===0)return null;let r=e;for(let o of n)if(d(r)&&o in r)r=r[o];else return null;return r}function Kt(e,t={label:wt,value:S}){return e.map(n=>{if(d(n)){let r=h(n,t.label),o=h(n,t.value);if(D(r)&&D(o))return{label:`${r}`,value:`${o}`}}return n})}function Wt(e=J){if(e){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);if(n&&n!==fe)return n.trim().toLowerCase()}return J}function zt(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 Jt(e){let t={};for(let n in e){let r=n.split(".");if(r.length===1){t[n]=e[n];continue}let o=t;for(let l=0;l<r.length-1;l++){let a=r[l],s=r[l+1],c=fo.test(s);a in o||(o[a]=c?[]:{}),o=o[a]}let i=r[r.length-1];o[i]=e[n]}return Je(t),t}function Je(e){for(let t in e){let n=e[t];if(Array.isArray(n)){let r=n.filter(o=>o!==void 0);r.forEach(o=>{o!==null&&typeof o=="object"&&!Array.isArray(o)&&Je(o)}),e[t]=r}else n!==null&&typeof n=="object"&&Je(n)}}var go=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function M(e,t={}){if(E(e))return po(e,t);if(Array.isArray(e))return e.map(n=>M(n,t));if(d(e)){let n={};for(let r in e)n[r]=M(e[r],t);return n}return e}function et(e,t={}){return Q(e)?M(e,t):e}function Q(e){return E(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>Q(t)):d(e)?Object.values(e).some(t=>Q(t)):!1}function po(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,r)=>{let o=r.includes(".")?h(t,r):t[r];return D(o)?String(o):n})}function Qt(e,t){if(!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=go.exec(e))!==null;){let[l,a,s]=n,c=n.index;o=!0,c>r&&i.push(e.substring(r,c));let u=t?t(c,s,a):l;i.push(u),r=c+l.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var j={error:(...e)=>{tt()&&!nt()&&xe().error("[Luna Form]",...e)},warn:(...e)=>{tt()&&!nt()&&xe().warn("[Luna Form]",...e)},info:(...e)=>{tt()&&!nt()&&xe().info("[Luna Form]",...e)}},tt=()=>typeof xe()<"u",nt=()=>!0,xe=()=>globalThis.console;function jt(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===S&&n.push(i),i.action===Ht&&r.push(i),i.action===Yt&&o.push(i);t({sources:r,states:o,values:n})}function en(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(qt(i)){let l=M(i.url,e),a=i.body?M(i.body,e):i.body;n(o,{...i,url:l,body:a})}}}var ee={eq:Ro,gt:vo,gte:Fo,in:So,lt:Co,lte:No,neq:To,nin:Ao},yo=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,tn=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function bo(e){return typeof e=="string"&&yo.test(e)}function xo(e){return typeof e=="string"&&tn.test(e)}function ho(e){let t=e.match(tn);if(t){let[,n,r,o,i,l,a]=t;return new Date(Number(o),Number(r)-1,Number(n),Number(i??0),Number(l??0),Number(a??0)).getTime()}return NaN}function _(e){return bo(e)?new Date(e).getTime():xo(e)?ho(e):Number(e)}function Ro(e,t){return e===t}function To(e,t){return e!==t}function So(e,t){return Array.isArray(t)&&t.includes(String(e))}function Ao(e,t){return Array.isArray(t)&&!t.includes(String(e))}function vo(e,t){return _(e)>_(t)}function Fo(e,t){return _(e)>=_(t)}function Co(e,t){return _(e)<_(t)}function No(e,t){return _(e)<=_(t)}function nn(e=null,t=[],n){for(let r of t){let{target:o,state:i,when:l}=r,a=Array.isArray(o)?o:[o];if(!e){n(a);continue}let s=Eo(e,l);n(a,s?i:void 0)}}function Eo(e,t){return t===void 0?!0:E(t)?he(e,S)===t:ze(t)?!!he(e,S)===t:Array.isArray(t)?t.includes(String(he(e,S))):ko(e,t)}function ko(e=null,t){let n=he(e,t.field??S),{operator:r="eq",value:o}=t,i=ee[r];return i?i(n,o):!1}function he(e,t){return d(e)?h(e,t):e}function rn(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?M(i,e):void 0)}var Re=e=>k(kt)(e),Te=e=>k(It)(e),R=k(Nt),rt=k(fe),w=k(Ct),L=k(Et),ot=k(Ft),on=k(J,We,Pt,Ot),ln=k(At,We),Se=k(vt,Lt);function Ae(e){return w(e)||R(e)}function an(e){return e.type===Ze}function B(e){return e.type===z}function ve(e){return e.type!==z&&e.type!==Ze}function Fe(e){return L(e)||w(e)}function sn(e){return rt(e)||ot(e)}function U(e){return e!=null&&e!==""}function k(...e){return t=>{let n=E(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function cn(e,t={}){if(L(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&d(n))return[n]}}function un(e){return w(e)||R(e)?Z:e.advanced?.orientation??V}function dn(e){return R(e)?e.advanced?.reverse!==!1:!1}function fn(e,t){let n=e.readonly??!1;return t||n}function mn(e){if(w(e)||L(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||d(t)&&!(q in t))return t}}var Io=/^\d+$/;function gn(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function pn(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 it(){return new Date().getFullYear()}function lt(e,t){if(typeof e=="number")return e;let n=t??it(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,l]=o,a=parseInt(l,10);if(!isNaN(a))return i==="+"?n+a:n-a}return n}return Io.test(r)?parseInt(r,10):n}var Ce=it();function wo(e){if(L(e))return Lo(e)}function Lo(e){if(Re(e))return gn();if(Te(e)){let t=e.advanced?.length?.min??Ce,n=e.advanced?.length?.max??Ce+5;return pn(lt(t,Ce),lt(n,Ce))}}function yn(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return rt(e)?{...n,...Po(e)}:L(e)?{...n,...Oo(e)}:ot(e)?{...n,...Vo(e)}:n}function Po(e){let t=Wt(e.type),n={...e,type:t};return{...bn(e),...Do(n),...on(n)?xn(n):{},type:t}}function Oo(e){let t=wo(e);return t?{options:t}:{}}function Vo(e){return{...bn(e),...xn(e)}}function bn(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Do(e){return Se(e)?Mo(e):{}}function xn(e){return hn(e,{min:$t,max:Ut})}function Mo(e){return hn(e,{min:ge,max:pe})}function hn(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 Rn(e,t){let n=mn(e);return n||cn(e,t)}function _o(e,t){let n=d(t)&&e.name in t?t[e.name]:t;return je(n,e.advanced?.entity)}function Bo(e,t,n){return Fe(e)&&Array.isArray(n)?{...t,[me]:n}:t}function Go(e,t,n){if(e.required&&!U(n)&&L(e)&&e.advanced?.preselected!==!1&&me in t){let r=t[me];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function $o(e,t){return L(e)&&Array.isArray(t)?Kt(t,e.advanced?.options):t}function Tn(e,t,n,r){let o=_o(e,r),i=Array.isArray(n)?$o(e,n):n,l=Bo(e,t,i),a=Go(e,l,o);return{commonPropsWithOptions:l,defaultValue:a}}function Sn(e,t){return R(e)?{checked:U(t)?t:!1}:{value:t??""}}var Uo=/^#\/definition\//;function Ee(e=[],t){let n=Ne(e,t);return Array.isArray(n)?n.filter(Yo).sort((r,o)=>An(r)-An(o)):[]}function Ne(e,t,n=new Map,r=new WeakSet){if(!Ho(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=>Ne(i,t,n,r));if(q in e&&E(e[q])){let i=e[q].replace(Uo,""),l=h(t,i);return l!==null?Ne(l,t,n,r):e}let o={};for(let[i,l]of Object.entries(e))o[i]=Ne(l,t,n,r);return r.delete(e),n.set(e,o),o}function vn(e){return Object.entries(e??{})}function An(e){return e.order??Number.MAX_VALUE}function Ho(e){return e!==void 0&&d(e)&&Object.keys(e).length>0}function Yo(e){return Xt in e?!0:Array.isArray(e[Ke])?e[Ke].length>0:!0}function Fn(e,t){let n={};for(let[r,o]of vn(t))n[`${e}-${r}`]=o;return n}function Xo(e){return Fn(Bt,e)}function qo(e){return Fn(Gt,e)}function Cn(e,t){let n=Xo(e.advanced?.aria);return t&&t.length>0&&(n[Dt]="true",n[Vt]=`${e.name}-error`),n}function Nn(e){return qo(e.advanced?.data)}var En={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},kn={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function In(e,t=2){return En[e&&e in En?e:t]}function wn(e){if(e&&e in kn)return kn[e]}function Zo(e,t){let n=e.advanced?.length?.min??1;if(t){let r=h(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function Ln(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===z}function Pn(e,t){let n=Zo(e,t);return Array.from({length:n},(r,o)=>o)}function On(e){return e.label??e.name}import{z as g}from"zod";function f(e,t){return e?t?t[e]??e:e:""}var Ko=[[Se,jo],[ln,Wo],[Te,ei],[Re,ti],[R,zo],[w,Jo]];function Dn(e,t=[],n){let r=g.object(e);return t.length===0?r:ii(r,t,n)}function Mn(e){let t={},n=g.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function _n(e,t){for(let[n,r]of Ko)if(n(e))return r(e,t);return Qo(e,t)}function Wo(e,t){let n=g.string().trim();if(e.required){let r=K(e,t),o=n.min(1,r).pipe(Vn(e,t));return g.preprocess(i=>be(i)?"":i,o)}return n.pipe(Vn(e,t)).or(g.literal("")).nullable()}function zo(e,t){let n=g.coerce.boolean();return e.required?(n=n.refine(r=>r===!0,{message:K(e,t)}),g.preprocess(r=>r===null?!1:r,n)):n.nullable()}function Jo(e,t){let n=g.coerce.string();return e.required?(n=n.min(1,K(e,t)),g.preprocess(r=>be(r)?"":r,n)):n.or(g.literal("")).nullable()}function Qo(e,t){let n=g.coerce.string().trim();return n=Bn(n,e,t),e.required?(n=Gn(n,e,t),g.preprocess(r=>be(r)?"":r,n)):n.nullable()}function jo(e,t){let n=g.coerce.number().int();return n=Bn(n,e,t),e.required?(n=Gn(n,e,t),g.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function ei(e,t){return e.required?g.preprocess(ni,g.coerce.number({message:K(e,t)}).int()):g.coerce.number().int().nullable()}function ti(e,t){let n=K(e,t),r=g.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function ni(e){return e===null||e===""?void 0:e}function Vn(e,t){let n=e.validation?.email?f(e.validation?.email,t):void 0;return g.email(n)}function Bn(e,t,n){return e=ri(e,t,n),e=oi(e,t,n),e}function Gn(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,K(t,n)):e}var ri=(e,t,n)=>$n(e,t,ge,n),oi=(e,t,n)=>$n(e,t,pe,n);function $n(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?f(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function ii(e,t=[],n){let r=ai(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:l,rule:a}of r)if(!li(o,l,a)){let s=f(a.message,n);i.addIssue({code:"custom",message:s,path:[l]})}})}function li(e,t,n){let r=n.operator??"eq",o=ee[r];return o?o(e[t],e[n.field]):!1}function ai(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 Un(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let l of i){let a=l.operator??"eq",s=ee[a];if(s&&!s(e,n(l.field))&&l.message){let c=f(l.message,r);o.push(c)}}return o}function K(e,t){return e.validation?.required?f(e.validation?.required,t):void 0}function Hn(e,t){if(!t||!ci(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||si(r);return t.some(l=>!(l.protocol&&l.protocol!==r||l.hostname&&l.hostname!==o||l.port!==void 0&&String(l.port)!==i))}catch{return!1}}function si(e){return e==="https"?"443":"80"}function ci(e){return/^(https?:)?\/\//.test(e)}function Yn(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,ye);new URL(t,ye).searchParams.forEach((i,l)=>{n.searchParams.set(l,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(ye,""):o}catch{return t||e}}function Xn(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=Yn(t.url,n.url),o=ui(t,n),i=di(t,n);return{...t,...n,url:r,body:o,headers:i}})}function ui(e,t){return d(t.body)&&d(e?.body)?{...e.body,...t.body}:t.body??e?.body}function di(e,t){return d(t.headers)&&d(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function ke(e,t){return{...e,...t}}import{jsx as fi}from"react/jsx-runtime";function G(e){return Qt(e,(t,n,r)=>fi("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}import{jsx as te,jsxs as at}from"react/jsx-runtime";function qn(e){let{fields:t=[]}=e.section,[n,r]=pi(!1),o=gi(()=>r(i=>!i),[]);return at("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:[te("legend",{children:at("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-slate-600 dark:text-slate-400",onClick:o,type:"button",children:[te(St,{expanded:n}),te("span",{children:G(e.section.title)})]})}),te(mi,{mode:n?"visible":"hidden",children:at("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-slate-300 pl-4 dark:border-slate-600","data-slot":"field-set-content",children:[e.section.description&&te("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:G(e.section.description)}),e.group]})})]})}import{Fragment as yi,jsx as Zn,jsxs as bi}from"react/jsx-runtime";function Kn(e){return bi(yi,{children:[e.title&&Zn("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:G(e.title)}),e.description&&Zn("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:G(e.description)})]})}import{jsx as xi,jsxs as hi}from"react/jsx-runtime";function Ie(e){return hi("fieldset",{"data-slot":"field-set","data-empty":e.empty,className:"flex flex-col data-[empty=false]:gap-6",id:e.id,children:[xi(Kn,{description:e.description,title:e.title}),e.children]})}import{jsx as Ri}from"react/jsx-runtime";function H(e){return Ri("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 st}from"react/jsx-runtime";function Wn(e){let{fields:t=[]}=e.section,{compact:n}=ke(e.style,{compact:e.section.compact}),r=st(H,{compact:n,children:e.children});return!e.section.title&&!e.section.description?r:e.section.advanced?st(qn,{section:e.section,group:r}):st(Ie,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),title:e.section.title,children:r})}import{useAtomValue as Fi}from"jotai";import{atom as Y}from"jotai";import{atomFamily as zn}from"jotai-family";import{deepEqual as ct}from"fast-equals";function we(e,t){let{[t]:n,...r}=e;return r}function Ti(e){return zn(t=>Y(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let l=i[t];(!l||!ct(l,o))&&r(e,{...i,[t]:o})}else i[t]&&r(e,we(i,t))}))}function Si(e){return Y(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function Ai(e){return Y(null,(t,n,r)=>{let i={...t(e)},l=!1;for(let a of r)i[a]&&(delete i[a],l=!0);l&&n(e,i)})}function vi(e){return Y(null,(t,n,r)=>{let o=t(e);ct(o,r)||n(e,r)})}function Jn(e,t={}){let{merge:n,validateTarget:r}=t;return zn(o=>Y(i=>{let l=i(e)[o];if(l&&n)return n(Object.values(l))},(i,l,a,s)=>{if(r&&!r(a))return;let c=i(e),u={...c[a]??{}};if(s!=null){let p=u[o];(!p||!ct(p,s))&&(u[o]=s,l(e,{...c,[a]:u}))}else u[o]&&(delete u[o],Object.keys(u).length===0?l(e,we(c,a)):l(e,{...c,[a]:u}))}))}function Qn(e){return Y(null,(t,n,r)=>{let i={...t(e)},l=!1;for(let a of r)i[a]&&(delete i[a],l=!0);for(let a in i){let s={...i[a]},c=!1;for(let u of r)s[u]&&(delete s[u],c=!0,l=!0);c&&(Object.keys(s).length===0?delete i[a]:i[a]=s)}l&&n(e,i)})}function W(e={}){let t=Y(e);return{atom:t,clearAll:Si(t),clear:Ai(t),bulkReport:vi(t),report:Ti(t)}}var jn=W(),Le=jn.atom,er=jn.report;function Ci(e,t){return e.fields.every(n=>tr(n,t))}function tr(e,t){return t[e.name]?.hidden??e.hidden??!1}function Ni(e,t){return B(e)?Ci(e,t):tr(e,t)}function Pe(e){let t=Fi(Le);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>Ni(r,t))?null:e.children}import{jsx as nr}from"react/jsx-runtime";function rr(){return nr("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:nr("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}import{jsx as ne,jsxs as or}from"react/jsx-runtime";function ir(e){let t=Ee(e.sections,e.definition);return ne("div",{className:"h-full w-full",children:ne("form",{noValidate:e.noValidate,action:e.action,children:or(H,{children:[t.map((n,r)=>or(Pe,{fields:n.fields??[],children:[ne(Wn,{section:n,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.separator&&ne(rr,{})]},r)),e.control&&ne(Rt,{isPending:e.isPending,children:e.control})]})})})}import{jsx as Ei}from"react/jsx-runtime";function lr(e){return Ei("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}import{jsx as ki}from"react/jsx-runtime";function Oe(e){let t=G(e.text);return t?ki(lr,{children:t}):null}import{twMerge as Ii}from"tailwind-merge";import{jsx as wi,jsxs as Li}from"react/jsx-runtime";function ar(e){let t=e.style?.showOptionalLabel??!0,n=w(e.field)||R(e.field);return Li("label",{"data-slot":"field-label","data-normal":n,className:Ii("flex w-fit items-center gap-2 text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,children:[e.children,t&&!e.field.required&&wi("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:f("(Optional)",e.translations)})]})}import{jsx as sr,jsxs as Pi}from"react/jsx-runtime";function cr(e){let t={context:e.context,env:e.config?.env},n=et(e.field.label,t),r=et(e.field.description,t);return Pi("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[sr(ar,{field:e.field,style:e.config?.style,translations:e.translations,children:f(n,e.translations)}),e.orientation===Z&&sr(Oe,{text:f(r,e.translations)})]})}import{Fragment as Oi,jsx as ur,jsxs as Vi}from"react/jsx-runtime";function dr(e){return Vi(Oi,{children:[e.field.name&&e.field.label&&ur(cr,{config:e.config,context:e.context,field:e.field,orientation:e.orientation,translations:e.translations}),e.children,e.orientation===V&&e.field.description&&ur(Oe,{text:f(e.field.description,e.translations)})]})}function Ve(e,t){return e?t(e):null}var ut=W(),fr=ut.clear,mr=ut.bulkReport,De=ut.report;var Me=W(),_e=Me.atom,gr=Me.clearAll,pr=Me.clear,Be=Me.report;import{useCallback as Ge,useEffect as ji,useRef as re,useTransition as el}from"react";import{atom as Di}from"jotai";var Mi=e=>{let t=Xn(e);if(t)return t},_i=e=>e.trim()!=="",yr=Di({}),br=Jn(yr,{merge:Mi,validateTarget:_i}),xr=Qn(yr);import{useAtom as $i}from"jotai";import Bi from"swr";function hr(e=null,t,n=!1){let{data:r,error:o}=Bi(Gi(e,t,n),t.fetcher.provider);if(o&&j.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return Zt(r,e.namespace)}return null}function Gi(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!Q(e.url)){if(Hn(e.url,t.fetcher.remotePatterns))return e;j.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function Rr(e,t,n){let r=Rn(e,n),[o,i]=$i(br(e.name));return[hr(o??r,t,e.disabled),i]}import{useEffect as Ui,useEffectEvent as Tr,useMemo as Hi}from"react";function Sr(e,t,n,r){let{name:o}=e,i=Hi(()=>_n(e,r),[e,r]),l=Tr(s=>{s&&t(s,i,e)}),a=Tr(s=>{s&&n(s)});return Ui(()=>(l(o),()=>{a(o)}),[o]),i}import{useSetAtom as dt,useStore as tl}from"jotai";import{useCallback as Yi,useEffect as Xi,useRef as qi}from"react";function Ar(){let e=qi(null);return Xi(()=>()=>{e.current&&clearTimeout(e.current)},[]),Yi((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}import{useAtom as Zi}from"jotai";import{useCallback as Ki,useEffect as Wi,useRef as zi,useEffectEvent as Ji}from"react";function vr(e,t){let{name:n}=e,r=zi(!1),[o,i]=Zi(Be(n)),l=Ji(s=>{let c=Qi(n,s);U(c)&&(r.current=!0,i(c))});Wi(()=>{t&&l(t)},[t]);let a=Ki(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:a,value:o}}function Qi(e,t){if(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(typeof r=="object")r=r[o];else return}return r}import{jsx as Fr}from"react/jsx-runtime";function Cr(e){let t=e.field.advanced?.entity,n=tl(),r=Ar(),[,o]=el(),{setValue:i,shouldSkipOnChange:l,value:a}=vr(e.field,e.value),s=re(!1),c=re(a);c.current=a;let u=re(e.translations);u.current=e.translations;let p=sn(e.field),x=Ae(e.field),A=dt(_e),P=dt(Le),v=dt(De(e.field.name)),[b,I]=Rr(e.field,e.config,a),F=Sr(e.field,e.onMount,e.onUnmount,e.translations),T=f(e.commonProps.placeholder,e.translations),O={...e.commonProps,placeholder:T},{commonPropsWithOptions:C,defaultValue:se}=Tn(e.field,O,b,a),xt=re(null);xt.current=m=>{i(m),e.onValueChange&&e.onValueChange({name:e.field.name,value:m})};let He=re(null);He.current=m=>{let y=e.field.event?.change;y&&jt(y,({sources:$,states:ue,values:Ye})=>{o(()=>{en(m,$,(N,X)=>I(N,X)),nn(m,ue,(N,X)=>{P(de=>X?N.reduce((Xe,qe)=>({...Xe,[qe]:X}),de):N.reduce((Xe,qe)=>we(Xe,qe),de))}),rn(m,Ye,(N,X)=>{A(de=>({...de,[N]:X}))})})})};let ao=Sn(e.field,se),ce=Ge(m=>{let $=F.safeParse(m).error?.issues.map(N=>N.message)??[],ue=e.field.validation?.custom,Ye=ue?Un(m,ue,N=>n.get(Be(N)),u.current):[];v([...$,...Ye])},[e.field.validation?.custom,F,v,n]),ht=Ge((m,y)=>{if(p){r(()=>{y({value:m})},500);return}y(Qe(m,b,t))},[b,t,p,r]);ji(()=>{if(s.current||!e.value)return;if(!e.field.event?.change){s.current=!0;return}if(!((!Fe(e.field)||!!b&&b.length>0)&&U(se)))return;s.current=!0;let y=String(se),$=p?{value:y}:Qe(y,b,t);He.current?.($)},[b,se,t,p,e.field,e.value]);let so=Ge(m=>{let y=m.target.value;!x&&l()&&(!p||y===c.current)||(xt.current?.(y),e.config.validation.change&&ce(y),e.field.event?.change&&ht(y,$=>{He.current?.($)}))},[ht,x,p,e.config.validation.change,e.field.event?.change,l,ce]),co=Ge(m=>{if(!x){let y=m.target.value;e.config.validation.blur&&ce(y)}},[x,e.config.validation.blur,ce]);return Ve(e.config.inputs[e.field.type],m=>Fr(dr,{config:e.config,context:e.context,field:e.field,orientation:e.orientation,translations:e.translations,children:Fr(m,{...C,...e.ariaAttributes,...e.dataAttributes,...ao,onBlur:co,onChange:so})}))}import{jsx as Nr}from"react/jsx-runtime";function Er(e){return!e.errors||e.errors.length===0?null:Nr("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)=>Nr("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}import{twMerge as nl}from"tailwind-merge";import{jsx as rl}from"react/jsx-runtime";function $e(e){let t=e.errors&&e.errors.length>0;return rl("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Mt]:"true"},...e.disabled&&{[_t]:"true"},"data-orientation":e.orientation,className:nl("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 ol}from"tailwind-merge";import{jsx as il}from"react/jsx-runtime";function kr(e){return il($e,{...e,orientation:V,className:ol("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as ll}from"tailwind-merge";import{jsx as al}from"react/jsx-runtime";function Ir(e){return al($e,{...e,orientation:Z,className:ll("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 wr}from"react/jsx-runtime";function Lr(e){let t=Ae(e.field),n=R(e.field),r=dn(e.field);return e.orientation===V?wr(kr,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):wr(Ir,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function Pr(e){if(!e.field.type)return null;let t=yn(e.field,e.disabled),n=Nn(e.field),r=Cn(e.field,e.errors),o={...e.field,disabled:t.disabled};return e.children({ariaAttributes:r,commonProps:t,dataAttributes:n,field:o,orientation:e.orientation})}import{twMerge as sl}from"tailwind-merge";import{jsx as ft,jsxs as cl}from"react/jsx-runtime";function Or(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{orientation:r}=ke(e.style,{orientation:un(e.field)}),o=fn(e.field,e.disabled);return cl("div",{className:sl("flex flex-col gap-3",wn(t)),children:[ft(Lr,{disabled:o,errors:n,field:e.field,orientation:r,children:ft(Pr,{disabled:o,errors:n,field:e.field,orientation:r,children:e.children})}),ft(Er,{errors:n,name:e.field.name})]})}import{useAtomValue as ul}from"jotai";import{jsx as ml}from"react/jsx-runtime";function Vr(e){return(t,n)=>o=>{let i=ul(e(o.field.name)),l=n(i,o);return l===null?null:ml(t,{...o,...l})}}var dl=Vr(De);function Dr(e){return dl(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var fl=Vr(er);function Mr(e){return fl(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var _r=Mr(Dr(Or));import{twMerge as gl}from"tailwind-merge";import{jsx as oe,jsxs as Ue}from"react/jsx-runtime";function Br(e){function t(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}let n=e.canRemove&&e.onRemove!=null&&oe("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:gl("rounded p-1 text-xl text-slate-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500 dark:hover:text-red-400"),onClick:t,type:"button",children:oe("span",{"aria-hidden":"true",children:"\xD7"})});return e.isMultiField?Ue("div",{className:"rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[Ue("div",{className:"mb-3 flex items-center justify-between",children:[Ue("span",{className:"text-sm font-medium text-slate-400 dark:text-slate-500",children:[e.label," ",e.index+1]}),n]}),oe(H,{children:e.children})]}):Ue("div",{className:"flex items-start gap-2",children:[oe(H,{children:e.children}),n&&oe("div",{className:"shrink-0",children:n})]})}import{twMerge as xl}from"tailwind-merge";import{useSetAtom as pl}from"jotai";import{useCallback as Gr,useLayoutEffect as yl,useRef as $r,useState as bl}from"react";function Ur(e,t){let n=e.advanced?.length?.min??1,r=e.advanced?.length?.max??1/0,[o,i]=bl(()=>Pn(e,t)),l=$r(o.length),a=$r(o);yl(()=>{a.current=o});let s=pl(_e),c=Gr(()=>{i(A=>{if(A.length>=r)return A;let P=l.current++;return[...A,P]})},[r]),u=Gr(A=>{if(a.current.length<=n)return;let P=a.current[A];i(v=>v.length<=n?v:v.filter((b,I)=>I!==A)),s(v=>{let b={...v},I=`${e.name}.`,F=[];for(let T of e.fields)if(B(T))for(let O of T.fields)F.push(O.name);else F.push(T.name);for(let T of F)delete b[`${I}${P}.${T}`];return b})},[e.name,e.fields,n,s]),p=o.length<r,x=o.length>n;return[o,c,u,p,x,r]}import{Fragment as hl,jsx as Hr,jsxs as mt}from"react/jsx-runtime";function Yr(e){let[t,n,r,o,i,l]=Ur(e.field,e.value),a=On(e.field),s=e.field.advanced?.action??"Add item",c=l!==1/0,u=Ln(e.field);return mt(hl,{children:[t.map((p,x)=>Hr(Br,{canRemove:i,index:x,isMultiField:u,label:a,onRemove:r,children:e.children(p)},p)),mt("button",{"aria-disabled":!o,"aria-label":c?`${s}, ${t.length} of ${l}`:s,className:xl("flex w-full items-center gap-1.5 rounded py-1","text-sm font-medium text-slate-500","transition-colors duration-150","hover:text-slate-800","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:ring-offset-2 focus-visible:outline-none","dark:text-slate-400 dark:hover:text-slate-200",!o&&"cursor-not-allowed opacity-50 hover:text-slate-500 dark:hover:text-slate-400"),disabled:!o,onClick:n,type:"button",children:[Hr("span",{"aria-hidden":"true",children:"+"}),s,c&&mt("span",{"aria-hidden":"true",className:"ml-auto text-slate-400 tabular-nums dark:text-slate-500",children:[t.length," / ",l]})]})]})}import{jsx as Rl}from"react/jsx-runtime";function Xr(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return Rl(Ie,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}import{jsx as gt}from"react/jsx-runtime";function qr({children:e,field:t,value:n}){return gt(Pe,{container:t,fields:t.fields,children:gt(Xr,{field:t,children:gt(Yr,{field:t,value:n,children:e})})})}import{twMerge as Tl}from"tailwind-merge";import{jsx as Zr}from"react/jsx-runtime";function Kr(e){let t=In(e.column?.advanced?.cols);return Zr("div",{className:"flex w-full flex-col gap-4",children:Zr("div",{className:Tl("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children})})}import{Fragment as Al}from"react";import{jsx as Sl}from"react/jsx-runtime";function Wr(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>ve(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:B(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return Sl(ie,{children:e.children,components:e.components,disabled:e.disabled,fields:t,style:e.style,value:e.value})}import{jsx as le,jsxs as vl}from"react/jsx-runtime";function ie(e){let{field:t,list:n}=e.components;return Ee(e.fields).map((r,o)=>vl(Al,{children:[B(r)&&le(Kr,{column:r,children:le(ie,{...e,fields:r.fields})}),ve(r)&&le(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),an(r)&&le(n,{field:r,value:e.value,children:i=>le(Wr,{children:e.children,components:e.components,disabled:e.disabled,field:r,index:i,style:e.style,value:e.value})})]},o))}import{jsx as Fl}from"react/jsx-runtime";function zr(e){return n=>Fl(ie,{...n,components:e})}var Jr=zr({field:_r,list:qr});import{useSetAtom as Qr}from"jotai";import{startTransition as jr,useActionState as Cl}from"react";function to(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:l}=n??{},a=Qr(mr),s=Qr(gr),c={data:null,error:null,success:!1},[u,p,x]=Cl(async(A,P)=>{let[v,b]=e(),I=Dn(v,b,l);if(i===!1)return t?await t(P,I):A;let F=zt(P),T=I.safeParse(F);if(!T.success){let C=Mn(T.error);return jr(()=>{a(C)}),pt(F,{description:f("Please correct the errors and try again.",l),details:[],title:f("There were validation errors submitting the form.",l)})}let O=Jt(F);if(t)try{let C=await t(O,I);return C.success?(r?.(C.data),o||jr(()=>{s()}),eo(O,o)):pt(O,C.error)}catch(C){return j.error("Error executing form action:",C),pt(O,{title:f("An unexpected error occurred submitting the form.",l),details:Nl(C,l)})}return eo(T.data,o)},c);return[p,u,x]}function Nl(e,t){return e instanceof Error?[e.message]:[f("Unknown error",t)]}function eo(e,t=!1){return{data:t?e:null,error:null,success:!0}}function pt(e,t){return{data:e,error:t,success:!1}}import{useCallback as bt,useRef as ro}from"react";import{useCallback as El}from"react";import{useSetAtom as yt}from"jotai";function no(){let e=yt(fr),t=yt(pr),n=yt(xr);return El(r=>{let o=Array.isArray(r)?r:[r];e(o),n(o),t(o)},[e,n,t])}function oo(){let e=no(),t=ro({}),n=ro([]),r=bt((l,a,s)=>{l in t.current||(t.current[l]=a,n.current.push(s))},[]),o=bt(l=>{t.current[l]&&(delete t.current[l],n.current=n.current.filter(a=>a.name!==l),e([l]))},[e]);return[bt(()=>[t.current,n.current],[]),r,o]}import{Fragment as kl,jsx as ae,jsxs as Il}from"react/jsx-runtime";function io(e){let t=e.translations?.[e.lang??""],[n,r,o]=oo(),[i,l,a]=to(n,e.action,{onSuccess:e.onSuccess,validation:e.config.validation.submit,translations:t}),s=e.config.validation.showError&&!l.success&&l.error,c=l.data??e.value;return Il(kl,{children:[s&&Ve(e.config.alert,u=>ae("div",{className:"mb-4 w-full",children:ae(u,{description:l.error?.description,details:l.error?.details,title:l.error.title})})),ae(ir,{action:i,config:e.config,control:e.children,definition:e.definition,isPending:a,noValidate:!0,readOnly:e.readOnly,sections:e.sections,children:({disabled:u,fields:p})=>ae(Jr,{disabled:u,fields:p,style:e.config.style,value:c,children:x=>ae(Cr,{...x,config:e.config,context:e.context,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:c})})})]})}import{Provider as wl}from"jotai";import{jsx as lo}from"react/jsx-runtime";function Ll(e){return lo(wl,{children:lo(io,{...e})})}export{Ll as Form};
|
|
1
|
+
import{jsx as uo}from"react/jsx-runtime";function Rt(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return uo("div",{"data-slot":"field-control",className:"w-full",children:t})}import{Activity as mi,useCallback as gi,useState as pi}from"react";import{jsx as Tt}from"react/jsx-runtime";function St(e){return Tt("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:Tt("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 fe="input",At="input/email",vt="input/number";var Ft="textarea",Ct="radio",Nt="checkbox",Ze="list";var Et="select",kt="select/month",It="select/year";var z="column",Ke="fields",wt="label",S="value",me="options",We="email",Lt="number",Pt="password",Ot="tel",J="text",Vt="aria-errormessage",Dt="aria-invalid",Mt="data-invalid",_t="data-readonly",Bt="aria",Gt="data",ge="min",pe="max",$t="minLength",Ut="maxLength",q="$ref";var Ht="source",Yt="state",ye="http://luna.internal",V="vertical",Z="horizontal";var Xt="type";function d(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function be(e){return e==null||e===""}function D(e){return A(e)||typeof e=="number"||ze(e)}function A(e){return typeof e=="string"}function qt(e){return d(e)&&"url"in e}function ze(e){return typeof e=="boolean"}var fo=/^\d+$/;function Qe(e,t=[],n=S){return Array.isArray(t)?t.find(r=>{let o=je(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}:{value:e}}function je(e,t=S){if(e!=null){if(D(e))return e;if(d(e)){let n=mo(e,t);if(D(n))return n}}}function mo(e,t){let n=h(e,t);if(D(n))return n}function Zt(e,t){if(Array.isArray(e))return e;let n=h(e,t);return Array.isArray(n)?n:null}function h(e,t){if(!t||!d(e))return null;let n=t.split(".").filter(o=>o!=="");if(n.length===0)return null;let r=e;for(let o of n)if(d(r)&&o in r)r=r[o];else return null;return r}function Kt(e,t={label:wt,value:S}){return e.map(n=>{if(d(n)){let r=h(n,t.label),o=h(n,t.value);if(D(r)&&D(o))return{label:`${r}`,value:`${o}`}}return n})}function Wt(e=J){if(e){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);if(n&&n!==fe)return n.trim().toLowerCase()}return J}function zt(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 Jt(e){let t={};for(let n in e){let r=n.split(".");if(r.length===1){t[n]=e[n];continue}let o=t;for(let l=0;l<r.length-1;l++){let a=r[l],s=r[l+1],c=fo.test(s);a in o||(o[a]=c?[]:{}),o=o[a]}let i=r[r.length-1];o[i]=e[n]}return Je(t),t}function Je(e){for(let t in e){let n=e[t];if(Array.isArray(n)){let r=n.filter(o=>o!==void 0);r.forEach(o=>{o!==null&&typeof o=="object"&&!Array.isArray(o)&&Je(o)}),e[t]=r}else n!==null&&typeof n=="object"&&Je(n)}}var go=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function M(e,t={}){if(A(e))return po(e,t);if(Array.isArray(e))return e.map(n=>M(n,t));if(d(e)){let n={};for(let r in e)n[r]=M(e[r],t);return n}return e}function et(e,t={}){return Q(e)?M(e,t):e}function Q(e){return A(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>Q(t)):d(e)?Object.values(e).some(t=>Q(t)):!1}function po(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,r)=>{let o=r.includes(".")?h(t,r):t[r];return D(o)?String(o):n})}function Qt(e,t){if(!A(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=go.exec(e))!==null;){let[l,a,s]=n,c=n.index;o=!0,c>r&&i.push(e.substring(r,c));let u=t?t(c,s,a):l;i.push(u),r=c+l.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var j={error:(...e)=>{tt()&&!nt()&&xe().error("[Luna Form]",...e)},warn:(...e)=>{tt()&&!nt()&&xe().warn("[Luna Form]",...e)},info:(...e)=>{tt()&&!nt()&&xe().info("[Luna Form]",...e)}},tt=()=>typeof xe()<"u",nt=()=>!0,xe=()=>globalThis.console;function jt(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===S&&n.push(i),i.action===Ht&&r.push(i),i.action===Yt&&o.push(i);t({sources:r,states:o,values:n})}function en(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(qt(i)){let l=M(i.url,e),a=i.body?M(i.body,e):i.body;n(o,{...i,url:l,body:a})}}}var ee={eq:Ro,gt:vo,gte:Fo,in:So,lt:Co,lte:No,neq:To,nin:Ao},yo=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,tn=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function bo(e){return typeof e=="string"&&yo.test(e)}function xo(e){return typeof e=="string"&&tn.test(e)}function ho(e){let t=e.match(tn);if(t){let[,n,r,o,i,l,a]=t;return new Date(Number(o),Number(r)-1,Number(n),Number(i??0),Number(l??0),Number(a??0)).getTime()}return NaN}function _(e){return bo(e)?new Date(e).getTime():xo(e)?ho(e):Number(e)}function Ro(e,t){return e===t}function To(e,t){return e!==t}function So(e,t){return Array.isArray(t)&&t.includes(String(e))}function Ao(e,t){return Array.isArray(t)&&!t.includes(String(e))}function vo(e,t){return _(e)>_(t)}function Fo(e,t){return _(e)>=_(t)}function Co(e,t){return _(e)<_(t)}function No(e,t){return _(e)<=_(t)}function nn(e=null,t=[],n){for(let r of t){let{target:o,state:i,when:l}=r,a=Array.isArray(o)?o:[o];if(!e){n(a);continue}let s=Eo(e,l);n(a,s?i:void 0)}}function Eo(e,t){return t===void 0?!0:A(t)?he(e,S)===t:ze(t)?!!he(e,S)===t:Array.isArray(t)?t.includes(String(he(e,S))):ko(e,t)}function ko(e=null,t){let n=he(e,t.field??S),{operator:r="eq",value:o}=t,i=ee[r];return i?i(n,o):!1}function he(e,t){return d(e)?h(e,t):e}function rn(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?M(i,e):void 0)}var Re=e=>k(kt)(e),Te=e=>k(It)(e),R=k(Nt),rt=k(fe),w=k(Ct),L=k(Et),ot=k(Ft),on=k(J,We,Pt,Ot),ln=k(At,We),Se=k(vt,Lt);function Ae(e){return w(e)||R(e)}function an(e){return e.type===Ze}function B(e){return e.type===z}function ve(e){return e.type!==z&&e.type!==Ze}function Fe(e){return L(e)||w(e)}function sn(e){return rt(e)||ot(e)}function U(e){return e!=null&&e!==""}function k(...e){return t=>{let n=A(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function cn(e,t={}){if(L(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&d(n))return[n]}}function un(e){return w(e)||R(e)?Z:e.advanced?.orientation??V}function dn(e){return R(e)?e.advanced?.reverse!==!1:!1}function fn(e,t){let n=e.readonly??!1;return t||n}function mn(e){if(w(e)||L(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||d(t)&&!(q in t))return t}}var Io=/^\d+$/;function gn(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function pn(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 it(){return new Date().getFullYear()}function lt(e,t){if(typeof e=="number")return e;let n=t??it(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,l]=o,a=parseInt(l,10);if(!isNaN(a))return i==="+"?n+a:n-a}return n}return Io.test(r)?parseInt(r,10):n}var Ce=it();function wo(e){if(L(e))return Lo(e)}function Lo(e){if(Re(e))return gn();if(Te(e)){let t=e.advanced?.length?.min??Ce,n=e.advanced?.length?.max??Ce+5;return pn(lt(t,Ce),lt(n,Ce))}}function yn(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return rt(e)?{...n,...Po(e)}:L(e)?{...n,...Oo(e)}:ot(e)?{...n,...Vo(e)}:n}function Po(e){let t=Wt(e.type),n={...e,type:t};return{...bn(e),...Do(n),...on(n)?xn(n):{},type:t}}function Oo(e){let t=wo(e);return t?{options:t}:{}}function Vo(e){return{...bn(e),...xn(e)}}function bn(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Do(e){return Se(e)?Mo(e):{}}function xn(e){return hn(e,{min:$t,max:Ut})}function Mo(e){return hn(e,{min:ge,max:pe})}function hn(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 Rn(e,t){let n=mn(e);return n||cn(e,t)}function _o(e,t){let n=d(t)&&e.name in t?t[e.name]:t;return je(n,e.advanced?.entity)}function Bo(e,t,n){return Fe(e)&&Array.isArray(n)?{...t,[me]:n}:t}function Go(e,t,n){if(e.required&&!U(n)&&L(e)&&e.advanced?.preselected!==!1&&me in t){let r=t[me];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function $o(e,t){return L(e)&&Array.isArray(t)?Kt(t,e.advanced?.options):t}function Tn(e,t,n,r){let o=_o(e,r),i=Array.isArray(n)?$o(e,n):n,l=Bo(e,t,i),a=Go(e,l,o);return{commonPropsWithOptions:l,defaultValue:a}}function Sn(e,t){return R(e)?{checked:U(t)?t:!1}:{value:t??""}}var Uo=/^#\/definition\//;function Ee(e=[],t){let n=Ne(e,t);return Array.isArray(n)?n.filter(Yo).sort((r,o)=>An(r)-An(o)):[]}function Ne(e,t,n=new Map,r=new WeakSet){if(!Ho(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=>Ne(i,t,n,r));if(q in e&&A(e[q])){let i=e[q].replace(Uo,""),l=h(t,i);return l!==null?Ne(l,t,n,r):e}let o={};for(let[i,l]of Object.entries(e))o[i]=Ne(l,t,n,r);return r.delete(e),n.set(e,o),o}function vn(e){return Object.entries(e??{})}function An(e){return e.order??Number.MAX_VALUE}function Ho(e){return e!==void 0&&d(e)&&Object.keys(e).length>0}function Yo(e){return Xt in e?!0:Array.isArray(e[Ke])?e[Ke].length>0:!0}function Fn(e,t){let n={};for(let[r,o]of vn(t))n[`${e}-${r}`]=o;return n}function Xo(e){return Fn(Bt,e)}function qo(e){return Fn(Gt,e)}function Cn(e,t){let n=Xo(e.advanced?.aria);return t&&t.length>0&&(n[Dt]="true",n[Vt]=`${e.name}-error`),n}function Nn(e){return qo(e.advanced?.data)}var En={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},kn={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function In(e,t=2){return En[e&&e in En?e:t]}function wn(e){if(e&&e in kn)return kn[e]}function Zo(e,t){let n=e.advanced?.length?.min??1;if(t){let r=h(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function Ln(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===z}function Pn(e,t){let n=Zo(e,t);return Array.from({length:n},(r,o)=>o)}function On(e){return e.label??e.name}import{z as g}from"zod";function f(e,t){return e?t?t[e]??e:e:""}var Ko=[[Se,jo],[ln,Wo],[Te,ei],[Re,ti],[R,zo],[w,Jo]];function Dn(e,t=[],n){let r=g.object(e);return t.length===0?r:ii(r,t,n)}function Mn(e){let t={},n=g.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function _n(e,t){for(let[n,r]of Ko)if(n(e))return r(e,t);return Qo(e,t)}function Wo(e,t){let n=g.string().trim();if(e.required){let r=K(e,t),o=n.min(1,r).pipe(Vn(e,t));return g.preprocess(i=>be(i)?"":i,o)}return n.pipe(Vn(e,t)).or(g.literal("")).nullable()}function zo(e,t){let n=g.coerce.boolean();return e.required?(n=n.refine(r=>r===!0,{message:K(e,t)}),g.preprocess(r=>r===null?!1:r,n)):n.nullable()}function Jo(e,t){let n=g.coerce.string();return e.required?(n=n.min(1,K(e,t)),g.preprocess(r=>be(r)?"":r,n)):n.or(g.literal("")).nullable()}function Qo(e,t){let n=g.coerce.string().trim();return n=Bn(n,e,t),e.required?(n=Gn(n,e,t),g.preprocess(r=>be(r)?"":r,n)):n.nullable()}function jo(e,t){let n=g.coerce.number().int();return n=Bn(n,e,t),e.required?(n=Gn(n,e,t),g.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function ei(e,t){return e.required?g.preprocess(ni,g.coerce.number({message:K(e,t)}).int()):g.coerce.number().int().nullable()}function ti(e,t){let n=K(e,t),r=g.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function ni(e){return e===null||e===""?void 0:e}function Vn(e,t){let n=e.validation?.email?f(e.validation?.email,t):void 0;return g.email(n)}function Bn(e,t,n){return e=ri(e,t,n),e=oi(e,t,n),e}function Gn(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,K(t,n)):e}var ri=(e,t,n)=>$n(e,t,ge,n),oi=(e,t,n)=>$n(e,t,pe,n);function $n(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?f(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function ii(e,t=[],n){let r=ai(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:l,rule:a}of r)if(!li(o,l,a)){let s=f(a.message,n);i.addIssue({code:"custom",message:s,path:[l]})}})}function li(e,t,n){let r=n.operator??"eq",o=ee[r];return o?o(e[t],e[n.field]):!1}function ai(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 Un(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let l of i){let a=l.operator??"eq",s=ee[a];if(s&&!s(e,n(l.field))&&l.message){let c=f(l.message,r);o.push(c)}}return o}function K(e,t){return e.validation?.required?f(e.validation?.required,t):void 0}function Hn(e,t){if(!t||!ci(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||si(r);return t.some(l=>!(l.protocol&&l.protocol!==r||l.hostname&&l.hostname!==o||l.port!==void 0&&String(l.port)!==i))}catch{return!1}}function si(e){return e==="https"?"443":"80"}function ci(e){return/^(https?:)?\/\//.test(e)}function Yn(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,ye);new URL(t,ye).searchParams.forEach((i,l)=>{n.searchParams.set(l,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(ye,""):o}catch{return t||e}}function Xn(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=Yn(t.url,n.url),o=ui(t,n),i=di(t,n);return{...t,...n,url:r,body:o,headers:i}})}function ui(e,t){return d(t.body)&&d(e?.body)?{...e.body,...t.body}:t.body??e?.body}function di(e,t){return d(t.headers)&&d(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function ke(e,t){return{...e,...t}}import{jsx as fi}from"react/jsx-runtime";function G(e){return Qt(e,(t,n,r)=>fi("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}import{jsx as te,jsxs as at}from"react/jsx-runtime";function qn(e){let{fields:t=[]}=e.section,[n,r]=pi(!1),o=gi(()=>r(i=>!i),[]);return at("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:[te("legend",{children:at("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-slate-600 dark:text-slate-400",onClick:o,type:"button",children:[te(St,{expanded:n}),te("span",{children:G(e.section.title)})]})}),te(mi,{mode:n?"visible":"hidden",children:at("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-slate-300 pl-4 dark:border-slate-600","data-slot":"field-set-content",children:[e.section.description&&te("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:G(e.section.description)}),e.group]})})]})}import{Fragment as yi,jsx as Zn,jsxs as bi}from"react/jsx-runtime";function Kn(e){return bi(yi,{children:[e.title&&Zn("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:G(e.title)}),e.description&&Zn("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:G(e.description)})]})}import{jsx as xi,jsxs as hi}from"react/jsx-runtime";function Ie(e){return hi("fieldset",{"data-slot":"field-set","data-empty":e.empty,className:"flex flex-col data-[empty=false]:gap-6",id:e.id,children:[xi(Kn,{description:e.description,title:e.title}),e.children]})}import{jsx as Ri}from"react/jsx-runtime";function H(e){return Ri("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 st}from"react/jsx-runtime";function Wn(e){let{fields:t=[]}=e.section,{compact:n}=ke(e.style,{compact:e.section.compact}),r=st(H,{compact:n,children:e.children});return!e.section.title&&!e.section.description?r:e.section.advanced?st(qn,{section:e.section,group:r}):st(Ie,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),title:e.section.title,children:r})}import{useAtomValue as Fi}from"jotai";import{atom as Y}from"jotai";import{atomFamily as zn}from"jotai-family";import{deepEqual as ct}from"fast-equals";function we(e,t){let{[t]:n,...r}=e;return r}function Ti(e){return zn(t=>Y(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let l=i[t];(!l||!ct(l,o))&&r(e,{...i,[t]:o})}else i[t]&&r(e,we(i,t))}))}function Si(e){return Y(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function Ai(e){return Y(null,(t,n,r)=>{let i={...t(e)},l=!1;for(let a of r)i[a]&&(delete i[a],l=!0);l&&n(e,i)})}function vi(e){return Y(null,(t,n,r)=>{let o=t(e);ct(o,r)||n(e,r)})}function Jn(e,t={}){let{merge:n,validateTarget:r}=t;return zn(o=>Y(i=>{let l=i(e)[o];if(l&&n)return n(Object.values(l))},(i,l,a,s)=>{if(r&&!r(a))return;let c=i(e),u={...c[a]??{}};if(s!=null){let p=u[o];(!p||!ct(p,s))&&(u[o]=s,l(e,{...c,[a]:u}))}else u[o]&&(delete u[o],Object.keys(u).length===0?l(e,we(c,a)):l(e,{...c,[a]:u}))}))}function Qn(e){return Y(null,(t,n,r)=>{let i={...t(e)},l=!1;for(let a of r)i[a]&&(delete i[a],l=!0);for(let a in i){let s={...i[a]},c=!1;for(let u of r)s[u]&&(delete s[u],c=!0,l=!0);c&&(Object.keys(s).length===0?delete i[a]:i[a]=s)}l&&n(e,i)})}function W(e={}){let t=Y(e);return{atom:t,clearAll:Si(t),clear:Ai(t),bulkReport:vi(t),report:Ti(t)}}var jn=W(),Le=jn.atom,er=jn.report;function Ci(e,t){return e.fields.every(n=>tr(n,t))}function tr(e,t){return t[e.name]?.hidden??e.hidden??!1}function Ni(e,t){return B(e)?Ci(e,t):tr(e,t)}function Pe(e){let t=Fi(Le);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>Ni(r,t))?null:e.children}import{jsx as nr}from"react/jsx-runtime";function rr(){return nr("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:nr("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}import{jsx as ne,jsxs as or}from"react/jsx-runtime";function ir(e){let t=Ee(e.sections,e.definition);return ne("div",{className:"h-full w-full",children:ne("form",{noValidate:e.noValidate,action:e.action,children:or(H,{children:[t.map((n,r)=>or(Pe,{fields:n.fields??[],children:[ne(Wn,{section:n,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.separator&&ne(rr,{})]},r)),e.control&&ne(Rt,{isPending:e.isPending,children:e.control})]})})})}import{jsx as Ei}from"react/jsx-runtime";function lr(e){return Ei("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}import{jsx as ki}from"react/jsx-runtime";function Oe(e){let t=G(e.text);return t?ki(lr,{children:t}):null}import{twMerge as Ii}from"tailwind-merge";import{jsx as wi,jsxs as Li}from"react/jsx-runtime";function ar(e){let t=e.style?.showOptionalLabel??!0,n=w(e.field)||R(e.field);return Li("label",{"data-slot":"field-label","data-normal":n,className:Ii("flex w-fit items-center gap-2 text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,children:[e.children,t&&!e.field.required&&wi("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:f("(Optional)",e.translations)})]})}import{jsx as sr,jsxs as Pi}from"react/jsx-runtime";function cr(e){let t={context:e.context,env:e.config?.env},n=et(e.field.label,t),r=et(e.field.description,t);return Pi("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[sr(ar,{field:e.field,style:e.config?.style,translations:e.translations,children:f(n,e.translations)}),e.orientation===Z&&sr(Oe,{text:f(r,e.translations)})]})}import{Fragment as Oi,jsx as ur,jsxs as Vi}from"react/jsx-runtime";function dr(e){return Vi(Oi,{children:[e.field.name&&e.field.label&&ur(cr,{config:e.config,context:e.context,field:e.field,orientation:e.orientation,translations:e.translations}),e.children,e.orientation===V&&e.field.description&&ur(Oe,{text:f(e.field.description,e.translations)})]})}function Ve(e,t){return e?t(e):null}var ut=W(),fr=ut.clear,mr=ut.bulkReport,De=ut.report;var Me=W(),_e=Me.atom,gr=Me.clearAll,pr=Me.clear,Be=Me.report;import{useCallback as Ge,useEffect as ji,useRef as re,useTransition as el}from"react";import{atom as Di}from"jotai";var Mi=e=>{let t=Xn(e);if(t)return t},_i=e=>e.trim()!=="",yr=Di({}),br=Jn(yr,{merge:Mi,validateTarget:_i}),xr=Qn(yr);import{useAtom as $i}from"jotai";import Bi from"swr";function hr(e=null,t,n=!1){let{data:r,error:o}=Bi(Gi(e,t,n),t.fetcher.provider);if(o&&j.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return Zt(r,e.namespace)}return null}function Gi(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!Q(e.url)){if(Hn(e.url,t.fetcher.remotePatterns))return e;j.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function Rr(e,t,n){let r=Rn(e,n),[o,i]=$i(br(e.name));return[hr(o??r,t,e.disabled),i]}import{useEffect as Ui,useEffectEvent as Tr,useMemo as Hi}from"react";function Sr(e,t,n,r){let{name:o}=e,i=Hi(()=>_n(e,r),[e,r]),l=Tr(s=>{s&&t(s,i,e)}),a=Tr(s=>{s&&n(s)});return Ui(()=>(l(o),()=>{a(o)}),[o]),i}import{useSetAtom as dt,useStore as tl}from"jotai";import{useCallback as Yi,useEffect as Xi,useRef as qi}from"react";function Ar(){let e=qi(null);return Xi(()=>()=>{e.current&&clearTimeout(e.current)},[]),Yi((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}import{useAtom as Zi}from"jotai";import{useCallback as Ki,useEffect as Wi,useRef as zi,useEffectEvent as Ji}from"react";function vr(e,t){let{name:n}=e,r=zi(!1),[o,i]=Zi(Be(n)),l=Ji(s=>{let c=Qi(n,s);U(c)&&(r.current=!0,i(c))});Wi(()=>{t&&l(t)},[t]);let a=Ki(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:a,value:o}}function Qi(e,t){if(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(typeof r=="object")r=r[o];else return}return r}import{jsx as Fr}from"react/jsx-runtime";function Cr(e){let t=e.field.advanced?.entity,n=tl(),r=Ar(),[,o]=el(),{setValue:i,shouldSkipOnChange:l,value:a}=vr(e.field,e.value),s=re(!1),c=re(a);c.current=a;let u=re(e.translations);u.current=e.translations;let p=sn(e.field),x=Ae(e.field),v=dt(_e),P=dt(Le),F=dt(De(e.field.name)),[b,I]=Rr(e.field,e.config,a),C=Sr(e.field,e.onMount,e.onUnmount,e.translations),T=f(e.commonProps.placeholder,e.translations),O={...e.commonProps,placeholder:T},{commonPropsWithOptions:N,defaultValue:se}=Tn(e.field,O,b,a),xt=re(null);xt.current=m=>{i(m),e.onValueChange&&e.onValueChange({name:e.field.name,value:m})};let He=re(null);He.current=m=>{let y=e.field.event?.change;y&&jt(y,({sources:$,states:ue,values:Ye})=>{o(()=>{en(m,$,(E,X)=>I(E,X)),nn(m,ue,(E,X)=>{P(de=>X?E.reduce((Xe,qe)=>({...Xe,[qe]:X}),de):E.reduce((Xe,qe)=>we(Xe,qe),de))}),rn(m,Ye,(E,X)=>{v(de=>({...de,[E]:X}))})})})};let ao=Sn(e.field,se),ce=Ge(m=>{let $=C.safeParse(m).error?.issues.map(E=>E.message)??[],ue=e.field.validation?.custom,Ye=ue?Un(m,ue,E=>n.get(Be(E)),u.current):[];F([...$,...Ye])},[e.field.validation?.custom,C,F,n]),ht=Ge((m,y)=>{if(p){r(()=>{y({value:m})},500);return}y(Qe(m,b,t))},[b,t,p,r]);ji(()=>{if(s.current||!e.value)return;if(!e.field.event?.change){s.current=!0;return}if(!((!Fe(e.field)||!!b&&b.length>0)&&U(se)))return;s.current=!0;let y=String(se),$=p?{value:y}:Qe(y,b,t);He.current?.($)},[b,se,t,p,e.field,e.value]);let so=Ge(m=>{let y=m.target.value;!x&&l()&&(!p||y===c.current)||(xt.current?.(y),e.config.validation.change&&ce(y),e.field.event?.change&&ht(y,$=>{He.current?.($)}))},[ht,x,p,e.config.validation.change,e.field.event?.change,l,ce]),co=Ge(m=>{if(!x){let y=m.target.value;e.config.validation.blur&&ce(y)}},[x,e.config.validation.blur,ce]);return Ve(e.config.inputs[e.field.type],m=>Fr(dr,{config:e.config,context:e.context,field:e.field,orientation:e.orientation,translations:e.translations,children:Fr(m,{...N,...e.ariaAttributes,...e.dataAttributes,...ao,onBlur:co,onChange:so})}))}import{jsx as Nr}from"react/jsx-runtime";function Er(e){return!e.errors||e.errors.length===0?null:Nr("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)=>Nr("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}import{twMerge as nl}from"tailwind-merge";import{jsx as rl}from"react/jsx-runtime";function $e(e){let t=e.errors&&e.errors.length>0;return rl("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Mt]:"true"},...e.disabled&&{[_t]:"true"},"data-orientation":e.orientation,className:nl("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 ol}from"tailwind-merge";import{jsx as il}from"react/jsx-runtime";function kr(e){return il($e,{...e,orientation:V,className:ol("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as ll}from"tailwind-merge";import{jsx as al}from"react/jsx-runtime";function Ir(e){return al($e,{...e,orientation:Z,className:ll("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 wr}from"react/jsx-runtime";function Lr(e){let t=Ae(e.field),n=R(e.field),r=dn(e.field);return e.orientation===V?wr(kr,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):wr(Ir,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function Pr(e){if(!e.field.type)return null;let t=yn(e.field,e.disabled),n=Nn(e.field),r=Cn(e.field,e.errors),o={...e.field,disabled:t.disabled};return e.children({ariaAttributes:r,commonProps:t,dataAttributes:n,field:o,orientation:e.orientation})}import{twMerge as sl}from"tailwind-merge";import{jsx as ft,jsxs as cl}from"react/jsx-runtime";function Or(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{orientation:r}=ke(e.style,{orientation:un(e.field)}),o=fn(e.field,e.disabled);return cl("div",{className:sl("flex flex-col gap-3",wn(t)),children:[ft(Lr,{disabled:o,errors:n,field:e.field,orientation:r,children:ft(Pr,{disabled:o,errors:n,field:e.field,orientation:r,children:e.children})}),ft(Er,{errors:n,name:e.field.name})]})}import{useAtomValue as ul}from"jotai";import{jsx as ml}from"react/jsx-runtime";function Vr(e){return(t,n)=>o=>{let i=ul(e(o.field.name)),l=n(i,o);return l===null?null:ml(t,{...o,...l})}}var dl=Vr(De);function Dr(e){return dl(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var fl=Vr(er);function Mr(e){return fl(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var _r=Mr(Dr(Or));import{twMerge as gl}from"tailwind-merge";import{jsx as oe,jsxs as Ue}from"react/jsx-runtime";function Br(e){function t(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}let n=e.canRemove&&e.onRemove!=null&&oe("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:gl("rounded p-1 text-xl text-slate-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500 dark:hover:text-red-400"),onClick:t,type:"button",children:oe("span",{"aria-hidden":"true",children:"\xD7"})});return e.isMultiField?Ue("div",{className:"rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[Ue("div",{className:"mb-3 flex items-center justify-between",children:[Ue("span",{className:"text-sm font-medium text-slate-400 dark:text-slate-500",children:[e.label," ",e.index+1]}),n]}),oe(H,{children:e.children})]}):Ue("div",{className:"flex items-start gap-2",children:[oe(H,{children:e.children}),n&&oe("div",{className:"shrink-0",children:n})]})}import{twMerge as xl}from"tailwind-merge";import{useSetAtom as pl}from"jotai";import{useCallback as Gr,useLayoutEffect as yl,useRef as $r,useState as bl}from"react";function Ur(e,t){let n=e.advanced?.length?.min??1,r=e.advanced?.length?.max??1/0,[o,i]=bl(()=>Pn(e,t)),l=$r(o.length),a=$r(o);yl(()=>{a.current=o});let s=pl(_e),c=Gr(()=>{i(v=>{if(v.length>=r)return v;let P=l.current++;return[...v,P]})},[r]),u=Gr(v=>{if(a.current.length<=n)return;let P=a.current[v];i(F=>F.length<=n?F:F.filter((b,I)=>I!==v)),s(F=>{let b={...F},I=`${e.name}.`,C=[];for(let T of e.fields)if(B(T))for(let O of T.fields)C.push(O.name);else C.push(T.name);for(let T of C)delete b[`${I}${P}.${T}`];return b})},[e.name,e.fields,n,s]),p=o.length<r,x=o.length>n;return[o,c,u,p,x,r]}import{Fragment as hl,jsx as Hr,jsxs as mt}from"react/jsx-runtime";function Yr(e){let[t,n,r,o,i,l]=Ur(e.field,e.value),a=On(e.field),s=e.field.advanced?.action??"Add item",c=l!==1/0,u=Ln(e.field);return mt(hl,{children:[t.map((p,x)=>Hr(Br,{canRemove:i,index:x,isMultiField:u,label:a,onRemove:r,children:e.children(p)},p)),mt("button",{"aria-disabled":!o,"aria-label":c?`${s}, ${t.length} of ${l}`:s,className:xl("flex w-full items-center gap-1.5 rounded py-1","text-sm font-medium text-slate-500","transition-colors duration-150","hover:text-slate-800","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:ring-offset-2 focus-visible:outline-none","dark:text-slate-400 dark:hover:text-slate-200",!o&&"cursor-not-allowed opacity-50 hover:text-slate-500 dark:hover:text-slate-400"),disabled:!o,onClick:n,type:"button",children:[Hr("span",{"aria-hidden":"true",children:"+"}),s,c&&mt("span",{"aria-hidden":"true",className:"ml-auto text-slate-400 tabular-nums dark:text-slate-500",children:[t.length," / ",l]})]})]})}import{jsx as Rl}from"react/jsx-runtime";function Xr(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return Rl(Ie,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}import{jsx as gt}from"react/jsx-runtime";function qr({children:e,field:t,value:n}){return gt(Pe,{container:t,fields:t.fields,children:gt(Xr,{field:t,children:gt(Yr,{field:t,value:n,children:e})})})}import{twMerge as Tl}from"tailwind-merge";import{jsx as Zr}from"react/jsx-runtime";function Kr(e){let t=In(e.column?.advanced?.cols);return Zr("div",{className:"flex w-full flex-col gap-4",children:Zr("div",{className:Tl("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children})})}import{Fragment as Al}from"react";import{jsx as Sl}from"react/jsx-runtime";function Wr(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>ve(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:B(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return Sl(ie,{children:e.children,components:e.components,disabled:e.disabled,fields:t,style:e.style,value:e.value})}import{jsx as le,jsxs as vl}from"react/jsx-runtime";function ie(e){let{field:t,list:n}=e.components;return Ee(e.fields).map((r,o)=>vl(Al,{children:[B(r)&&le(Kr,{column:r,children:le(ie,{...e,fields:r.fields})}),ve(r)&&le(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),an(r)&&le(n,{field:r,value:e.value,children:i=>le(Wr,{children:e.children,components:e.components,disabled:e.disabled,field:r,index:i,style:e.style,value:e.value})})]},o))}import{jsx as Fl}from"react/jsx-runtime";function zr(e){return n=>Fl(ie,{...n,components:e})}var Jr=zr({field:_r,list:qr});import{useSetAtom as Qr}from"jotai";import{startTransition as jr,useActionState as Cl}from"react";function to(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:l}=n??{},a=Qr(mr),s=Qr(gr),c={data:null,error:null,success:!1},[u,p,x]=Cl(async(v,P)=>{let[F,b]=e(),I=Dn(F,b,l);if(i===!1)return t?await t(P,I):v;let C=zt(P),T=I.safeParse(C);if(!T.success){let N=Mn(T.error);return jr(()=>{a(N)}),pt(C,{description:f("Please correct the errors and try again.",l),details:[],title:f("There were validation errors submitting the form.",l)})}let O=Jt(C);if(t)try{let N=await t(O,I);return N.success?(r?.(N.data),o||jr(()=>{s()}),eo(O,o)):pt(O,N.error)}catch(N){return j.error("Error executing form action:",N),pt(O,{title:f("An unexpected error occurred submitting the form.",l),details:Nl(N,l)})}return eo(T.data,o)},c);return[p,u,x]}function Nl(e,t){return e instanceof Error?[e.message]:[f("Unknown error",t)]}function eo(e,t=!1){return{data:t?e:null,error:null,success:!0}}function pt(e,t){return{data:e,error:t,success:!1}}import{useCallback as bt,useRef as ro}from"react";import{useCallback as El}from"react";import{useSetAtom as yt}from"jotai";function no(){let e=yt(fr),t=yt(pr),n=yt(xr);return El(r=>{let o=Array.isArray(r)?r:[r];e(o),n(o),t(o)},[e,n,t])}function oo(){let e=no(),t=ro({}),n=ro([]),r=bt((l,a,s)=>{l in t.current||(t.current[l]=a,n.current.push(s))},[]),o=bt(l=>{t.current[l]&&(delete t.current[l],n.current=n.current.filter(a=>a.name!==l),e([l]))},[e]);return[bt(()=>[t.current,n.current],[]),r,o]}import{Fragment as kl,jsx as ae,jsxs as Il}from"react/jsx-runtime";function io(e){let t=e.translations?.[e.lang??""],[n,r,o]=oo(),[i,l,a]=to(n,e.action,{onSuccess:e.onSuccess,validation:e.config.validation.submit,translations:t}),s=e.config.validation.showError&&!l.success&&l.error,c=l.data??e.value;return Il(kl,{children:[s&&Ve(e.config.alert,u=>ae("div",{className:"mb-4 w-full",children:ae(u,{description:l.error?.description,details:l.error?.details,title:l.error.title})})),ae(ir,{action:i,config:e.config,control:e.children,definition:e.definition,isPending:a,noValidate:!0,readOnly:e.readOnly,sections:e.sections,children:({disabled:u,fields:p})=>ae(Jr,{disabled:u,fields:p,style:e.config.style,value:c,children:x=>ae(Cr,{...x,config:e.config,context:e.context,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:c})})})]})}import{Provider as wl}from"jotai";import{jsx as lo}from"react/jsx-runtime";function Ll(e){return lo(wl,{children:lo(io,{...e})})}export{Ll as Form};
|
package/dist/config/cjs/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var l=Object.defineProperty;var N=Object.getOwnPropertyDescriptor;var C=Object.getOwnPropertyNames;var O=Object.prototype.hasOwnProperty;var P=(t,n)=>{for(var r in n)l(t,r,{get:n[r],enumerable:!0})},w=(t,n,r,e)=>{if(n&&typeof n=="object"||typeof n=="function")for(let o of C(n))!O.call(t,o)&&o!==r&&l(t,o,{get:()=>n[o],enumerable:!(e=N(n,o))||e.enumerable});return t};var _=t=>w(l({},"__esModule",{value:!0}),t);var rt={};P(rt,{defineCheckbox:()=>J,defineConfig:()=>q,defineCustomInput:()=>nt,defineInput:()=>z,defineRadio:()=>Z,defineSelect:()=>Q,defineTextArea:()=>tt});module.exports=_(rt);var D="input",M="input/email",U="input/number",k="input/password",v="input/tel",X="input/text",m=[D,M,U,k,v,X],A="textarea",h="radio",y="checkbox";var V="select",j="select/month",B="select/year",I=[V,j,B];var u="http://luna.internal";function R(t){return t!==null&&Object.prototype.toString.call(t)==="[object Object]"}function i(t){return typeof t=="string"}function a(t){return i(t)?/{([^}]{1,200})}/.test(t):Array.isArray(t)?t.some(n=>a(n)):R(t)?Object.values(t).some(n=>a(n)):!1}var b={error:(...t)=>{f()&&!
|
|
1
|
+
"use strict";var l=Object.defineProperty;var N=Object.getOwnPropertyDescriptor;var C=Object.getOwnPropertyNames;var O=Object.prototype.hasOwnProperty;var P=(t,n)=>{for(var r in n)l(t,r,{get:n[r],enumerable:!0})},w=(t,n,r,e)=>{if(n&&typeof n=="object"||typeof n=="function")for(let o of C(n))!O.call(t,o)&&o!==r&&l(t,o,{get:()=>n[o],enumerable:!(e=N(n,o))||e.enumerable});return t};var _=t=>w(l({},"__esModule",{value:!0}),t);var rt={};P(rt,{defineCheckbox:()=>J,defineConfig:()=>q,defineCustomInput:()=>nt,defineInput:()=>z,defineRadio:()=>Z,defineSelect:()=>Q,defineTextArea:()=>tt});module.exports=_(rt);var D="input",M="input/email",U="input/number",k="input/password",v="input/tel",X="input/text",m=[D,M,U,k,v,X],A="textarea",h="radio",y="checkbox";var V="select",j="select/month",B="select/year",I=[V,j,B];var u="http://luna.internal";function R(t){return t!==null&&Object.prototype.toString.call(t)==="[object Object]"}function i(t){return typeof t=="string"}function a(t){return i(t)?/{([^}]{1,200})}/.test(t):Array.isArray(t)?t.some(n=>a(n)):R(t)?Object.values(t).some(n=>a(n)):!1}var b={error:(...t)=>{f()&&!d()&&p().error("[Luna Form]",...t)},warn:(...t)=>{f()&&!d()&&p().warn("[Luna Form]",...t)},info:(...t)=>{f()&&!d()&&p().info("[Luna Form]",...t)}},f=()=>typeof p()<"u",d=()=>!0,p=()=>globalThis.console;function L(t){try{return t instanceof FormData?null:i(t)?t:JSON.stringify(t)}catch{return b.error("Failed to stringify body:",t),null}}var F=/(^|[\/?=&])(null|undefined)([\/?=&]|$)/;async function S(t){let[n,r]=H(t),e=t.body,o=$(t);if(e&&!x(r)){let g=L(e);g!==null&&(e=g,o=G(o))}let c=n.origin===u?n.toString().replace(u,""):n.toString(),T=await fetch(c,{body:W(r,e),cache:t.cache,headers:o,method:r}),E=await T.json();if(T.ok)return E;throw E}function H(t){let n=t.url?.trim();if(!n||!K(n))throw new Error(`Invalid URL: ${t.url}`);let r=new URL(n,u),e=Y(t);return t.body&&x(e)&&Object.entries(t.body).filter(([,o])=>o!==void 0&&o!=="undefined").forEach(([o,c])=>{r.searchParams.append(o,String(c))}),[r,e]}function G(t){return{...t,"Content-Type":"application/json"}}function K(t){return!i(t)||a(t)?!1:!F.test(t)}function Y(t){return t.method??"GET"}function $(t){return{Accept:"application/json",...t.headers??{}}}function x(t){return t.toUpperCase()==="GET"}function W(t,n){if(!x(t))return n}function q(t){let n={alert:t.alert,env:t.env,fetcher:{provider:S,remotePatterns:t.fetcher?.remotePatterns},inputs:{},style:t.style};return n.validation=t.validation??{blur:!0,change:!0,showError:!0,submit:!0},t.inputs.forEach(({types:r,input:e})=>{(Array.isArray(r)?r:[r]).forEach(c=>{n.inputs[c]=e})}),n}var J=s([y]),z=s(m),Z=s([h]),Q=s(I),tt=s([A]);function nt(t,n){return s(t)(n)}function s(t){return n=>({types:t,input:n})}
|
package/dist/config/esm/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var S="input",N="input/email",C="input/number",O="input/password",P="input/tel",w="input/text",g=[S,N,C,O,P,w],m="textarea",A="radio",h="checkbox";var _="select",D="select/month",M="select/year",y=[_,D,M];var u="http://luna.internal";function I(t){return t!==null&&Object.prototype.toString.call(t)==="[object Object]"}function i(t){return typeof t=="string"}function a(t){return i(t)?/{([^}]{1,200})}/.test(t):Array.isArray(t)?t.some(n=>a(n)):I(t)?Object.values(t).some(n=>a(n)):!1}var R={error:(...t)=>{l()&&!f()&&p().error("[Luna Form]",...t)},warn:(...t)=>{l()&&!f()&&p().warn("[Luna Form]",...t)},info:(...t)=>{l()&&!f()&&p().info("[Luna Form]",...t)}},l=()=>typeof p()<"u",f=()=>!0,p=()=>globalThis.console;function b(t){try{return t instanceof FormData?null:i(t)?t:JSON.stringify(t)}catch{return R.error("Failed to stringify body:",t),null}}var U=/(^|[\/?=&])(null|undefined)([\/?=&]|$)/;async function L(t){let[n,r]=k(t),o=t.body,e=j(t);if(o&&!
|
|
1
|
+
var S="input",N="input/email",C="input/number",O="input/password",P="input/tel",w="input/text",g=[S,N,C,O,P,w],m="textarea",A="radio",h="checkbox";var _="select",D="select/month",M="select/year",y=[_,D,M];var u="http://luna.internal";function I(t){return t!==null&&Object.prototype.toString.call(t)==="[object Object]"}function i(t){return typeof t=="string"}function a(t){return i(t)?/{([^}]{1,200})}/.test(t):Array.isArray(t)?t.some(n=>a(n)):I(t)?Object.values(t).some(n=>a(n)):!1}var R={error:(...t)=>{l()&&!f()&&p().error("[Luna Form]",...t)},warn:(...t)=>{l()&&!f()&&p().warn("[Luna Form]",...t)},info:(...t)=>{l()&&!f()&&p().info("[Luna Form]",...t)}},l=()=>typeof p()<"u",f=()=>!0,p=()=>globalThis.console;function b(t){try{return t instanceof FormData?null:i(t)?t:JSON.stringify(t)}catch{return R.error("Failed to stringify body:",t),null}}var U=/(^|[\/?=&])(null|undefined)([\/?=&]|$)/;async function L(t){let[n,r]=k(t),o=t.body,e=j(t);if(o&&!d(r)){let E=b(o);E!==null&&(o=E,e=v(e))}let c=n.origin===u?n.toString().replace(u,""):n.toString(),x=await fetch(c,{body:B(r,o),cache:t.cache,headers:e,method:r}),T=await x.json();if(x.ok)return T;throw T}function k(t){let n=t.url?.trim();if(!n||!X(n))throw new Error(`Invalid URL: ${t.url}`);let r=new URL(n,u),o=V(t);return t.body&&d(o)&&Object.entries(t.body).filter(([,e])=>e!==void 0&&e!=="undefined").forEach(([e,c])=>{r.searchParams.append(e,String(c))}),[r,o]}function v(t){return{...t,"Content-Type":"application/json"}}function X(t){return!i(t)||a(t)?!1:!U.test(t)}function V(t){return t.method??"GET"}function j(t){return{Accept:"application/json",...t.headers??{}}}function d(t){return t.toUpperCase()==="GET"}function B(t,n){if(!d(t))return n}function ot(t){let n={alert:t.alert,env:t.env,fetcher:{provider:L,remotePatterns:t.fetcher?.remotePatterns},inputs:{},style:t.style};return n.validation=t.validation??{blur:!0,change:!0,showError:!0,submit:!0},t.inputs.forEach(({types:r,input:o})=>{(Array.isArray(r)?r:[r]).forEach(c=>{n.inputs[c]=o})}),n}var et=s([h]),it=s(g),st=s([A]),ct=s(y),ut=s([m]);function at(t,n){return s(t)(n)}function s(t){return n=>({types:t,input:n})}export{et as defineCheckbox,ot as defineConfig,at as defineCustomInput,it as defineInput,st as defineRadio,ct as defineSelect,ut as defineTextArea};
|
package/dist/server/cjs/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var Q=Object.defineProperty;var En=Object.getOwnPropertyDescriptor;var On=Object.getOwnPropertyNames;var wn=Object.prototype.hasOwnProperty;var Pn=(e,t)=>{for(var n in t)Q(e,n,{get:t[n],enumerable:!0})},Mn=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of On(t))!wn.call(e,o)&&o!==n&&Q(e,o,{get:()=>t[o],enumerable:!(r=En(t,o))||r.enumerable});return e};var Dn=e=>Mn(Q({},"__esModule",{value:!0}),e);var fr={};Pn(fr,{Fallback:()=>Ln,Form:()=>J});module.exports=Dn(fr);var Re=require("react/jsx-runtime");function be(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,Re.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var k=require("react");var j=require("react/jsx-runtime");function Te(e){return(0,j.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,j.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 _="input",he="input/email",Ae="input/number";var Fe="textarea",Se="radio",Ne="checkbox",ee="list";var Ce="select",Ie="select/month",Le="select/year";var O="column",te="fields",ke="label",ne="value",V="options",re="email",ve="number",Ee="password",Oe="tel",w="text",we="aria-errormessage",Pe="aria-invalid",Me="data-invalid",De="data-readonly",_e="aria",Ve="data",Be="min",Ge="max",$e="minLength",Ue="maxLength",C="$ref";var y="vertical",I="horizontal";var Ye="type";function a(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function x(e){return b(e)||typeof e=="number"||_n(e)}function b(e){return typeof e=="string"}function _n(e){return typeof e=="boolean"}function He(e,t=ne){if(e!=null){if(x(e))return e;if(a(e)){let n=Vn(e,t);if(x(n))return n}}}function Vn(e,t){let n=m(e,t);if(x(n))return n}function m(e,t){if(!t||!a(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(a(r)&&o in r)r=r[o];else return null;return r}function Xe(e,t={label:ke,value:ne}){return e.map(n=>{if(a(n)){let r=m(n,t.label),o=m(n,t.value);if(x(r)&&x(o))return{label:`${r}`,value:`${o}`}}return n})}function Ke(e=w){if(e){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);if(n&&n!==_)return n.trim().toLowerCase()}return w}var Bn=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function oe(e,t={}){if(b(e))return Gn(e,t);if(Array.isArray(e))return e.map(n=>oe(n,t));if(a(e)){let n={};for(let r in e)n[r]=oe(e[r],t);return n}return e}function le(e,t={}){return ie(e)?oe(e,t):e}function ie(e){return b(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>ie(t)):a(e)?Object.values(e).some(t=>ie(t)):!1}function Gn(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,r)=>{let o=r.includes(".")?m(t,r):t[r];return x(o)?String(o):n})}function We(e,t){if(!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Bn.exec(e))!==null;){let[l,d,kn]=n,D=n.index;o=!0,D>r&&i.push(e.substring(r,D));let vn=t?t(D,kn,d):l;i.push(vn),r=D+l.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var qe=e=>u(Ie)(e),ze=e=>u(Le)(e),c=u(Ne),Ze=u(_),h=u(Se),p=u(Ce),Je=u(Fe),Qe=u(w,re,Ee,Oe),Cr=u(he,re),je=u(Ae,ve);function et(e){return h(e)||c(e)}function tt(e){return e.type===ee}function L(e){return e.type===O}function B(e){return e.type!==O&&e.type!==ee}function nt(e){return p(e)||h(e)}function ae(e){return e!=null&&e!==""}function u(...e){return t=>{let n=b(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function rt(e,t={}){if(p(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&a(n))return[n]}}function ot(e){return h(e)||c(e)?I:e.advanced?.orientation??y}function it(e){return c(e)?e.advanced?.reverse!==!1:!1}function lt(e,t){let n=e.readonly??!1;return t||n}function at(e){if(h(e)||p(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||a(t)&&!(C in t))return t}}var $n=/^\d+$/;function st(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function dt(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 se(){return new Date().getFullYear()}function de(e,t){if(typeof e=="number")return e;let n=t??se(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,l]=o,d=parseInt(l,10);if(!isNaN(d))return i==="+"?n+d:n-d}return n}return $n.test(r)?parseInt(r,10):n}var G=se();function Un(e){if(p(e))return Yn(e)}function Yn(e){if(qe(e))return st();if(ze(e)){let t=e.advanced?.length?.min??G,n=e.advanced?.length?.max??G+5;return dt(de(t,G),de(n,G))}}function ct(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return Ze(e)?{...n,...Hn(e)}:p(e)?{...n,...Xn(e)}:Je(e)?{...n,...Kn(e)}:n}function Hn(e){let t=Ke(e.type),n={...e,type:t};return{...ut(e),...Wn(n),...Qe(n)?ft(n):{},type:t}}function Xn(e){let t=Un(e);return t?{options:t}:{}}function Kn(e){return{...ut(e),...ft(e)}}function ut(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Wn(e){return je(e)?qn(e):{}}function ft(e){return mt(e,{min:$e,max:Ue})}function qn(e){return mt(e,{min:Be,max:Ge})}function mt(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 pt(e,t){let n=at(e);return n||rt(e,t)}function zn(e,t){let n=a(t)&&e.name in t?t[e.name]:t;return He(n,e.advanced?.entity)}function Zn(e,t,n){return nt(e)&&Array.isArray(n)?{...t,[V]:n}:t}function Jn(e,t,n){if(e.required&&!ae(n)&&p(e)&&e.advanced?.preselected!==!1&&V in t){let r=t[V];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function Qn(e,t){return p(e)&&Array.isArray(t)?Xe(t,e.advanced?.options):t}function gt(e,t,n,r){let o=zn(e,r),i=Array.isArray(n)?Qn(e,n):n,l=Zn(e,t,i),d=Jn(e,l,o);return{commonPropsWithOptions:l,defaultValue:d}}function yt(e,t){return c(e)?{defaultChecked:ae(t)}:{defaultValue:t}}var jn=/^#\/definition\//;function U(e=[],t){let n=$(e,t);return Array.isArray(n)?n.filter(tr).sort((r,o)=>xt(r)-xt(o)):[]}function $(e,t,n=new Map,r=new WeakSet){if(!er(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=>$(i,t,n,r));if(C in e&&b(e[C])){let i=e[C].replace(jn,""),l=m(t,i);return l!==null?$(l,t,n,r):e}let o={};for(let[i,l]of Object.entries(e))o[i]=$(l,t,n,r);return r.delete(e),n.set(e,o),o}function bt(e){return Object.entries(e??{})}function xt(e){return e.order??Number.MAX_VALUE}function er(e){return e!==void 0&&a(e)&&Object.keys(e).length>0}function tr(e){return Ye in e?!0:Array.isArray(e[te])?e[te].length>0:!0}function Rt(e,t){let n={};for(let[r,o]of bt(t))n[`${e}-${r}`]=o;return n}function nr(e){return Rt(_e,e)}function rr(e){return Rt(Ve,e)}function Tt(e,t){let n=nr(e.advanced?.aria);return t&&t.length>0&&(n[Pe]="true",n[we]=`${e.name}-error`),n}function ht(e){return rr(e.advanced?.data)}var At={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Ft={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function St(e,t=2){return At[e&&e in At?e:t]}function Nt(e){if(e&&e in Ft)return Ft[e]}function or(e,t){let n=e.advanced?.length?.min??1;if(t){let r=m(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function Ct(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===O}function It(e,t){let n=or(e,t);return Array.from({length:n},(r,o)=>o)}function Lt(e){return e.label??e.name}function A(e,t){return e?t?t[e]??e:e:""}function Y(e,t){return{...e,...t}}var kt=require("react/jsx-runtime");function R(e){return We(e,(t,n,r)=>(0,kt.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}var f=require("react/jsx-runtime");function vt(e){let{fields:t=[]}=e.section,[n,r]=(0,k.useState)(!1),o=(0,k.useCallback)(()=>r(i=>!i),[]);return(0,f.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,f.jsx)("legend",{children:(0,f.jsxs)("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-slate-600 dark:text-slate-400",onClick:o,type:"button",children:[(0,f.jsx)(Te,{expanded:n}),(0,f.jsx)("span",{children:R(e.section.title)})]})}),(0,f.jsx)(k.Activity,{mode:n?"visible":"hidden",children:(0,f.jsxs)("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-slate-300 pl-4 dark:border-slate-600","data-slot":"field-set-content",children:[e.section.description&&(0,f.jsx)("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:R(e.section.description)}),e.group]})})]})}var F=require("react/jsx-runtime");function Et(e){return(0,F.jsxs)(F.Fragment,{children:[e.title&&(0,F.jsx)("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:R(e.title)}),e.description&&(0,F.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:R(e.description)})]})}var X=require("react/jsx-runtime");function H(e){return(0,X.jsxs)("fieldset",{"data-slot":"field-set","data-empty":e.empty,className:"flex flex-col data-[empty=false]:gap-6",id:e.id,children:[(0,X.jsx)(Et,{description:e.description,title:e.title}),e.children]})}var Ot=require("react/jsx-runtime");function S(e){return(0,Ot.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 K=require("react/jsx-runtime");function wt(e){let{fields:t=[]}=e.section,{compact:n}=Y(e.style,{compact:e.section.compact}),r=(0,K.jsx)(S,{compact:n,children:e.children});return!e.section.title&&!e.section.description?r:e.section.advanced?(0,K.jsx)(vt,{section:e.section,group:r}):(0,K.jsx)(H,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),title:e.section.title,children:r})}var Vt=require("jotai");var v=require("jotai"),Pt=require("jotai-family"),ce=require("fast-equals");function ir(e,t){let{[t]:n,...r}=e;return r}function lr(e){return(0,Pt.atomFamily)(t=>(0,v.atom)(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let l=i[t];(!l||!(0,ce.deepEqual)(l,o))&&r(e,{...i,[t]:o})}else i[t]&&r(e,ir(i,t))}))}function ar(e){return(0,v.atom)(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function sr(e){return(0,v.atom)(null,(t,n,r)=>{let i={...t(e)},l=!1;for(let d of r)i[d]&&(delete i[d],l=!0);l&&n(e,i)})}function dr(e){return(0,v.atom)(null,(t,n,r)=>{let o=t(e);(0,ce.deepEqual)(o,r)||n(e,r)})}function Mt(e={}){let t=(0,v.atom)(e);return{atom:t,clearAll:ar(t),clear:sr(t),bulkReport:dr(t),report:lr(t)}}var Dt=Mt(),_t=Dt.atom,xo=Dt.report;function cr(e,t){return e.fields.every(n=>Bt(n,t))}function Bt(e,t){return t[e.name]?.hidden??e.hidden??!1}function ur(e,t){return L(e)?cr(e,t):Bt(e,t)}function Gt(e){let t=(0,Vt.useAtomValue)(_t);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>ur(r,t))?null:e.children}var ue=require("react/jsx-runtime");function $t(){return(0,ue.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,ue.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}var g=require("react/jsx-runtime");function Ut(e){let t=U(e.sections,e.definition);return(0,g.jsx)("div",{className:"h-full w-full",children:(0,g.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,g.jsxs)(S,{children:[t.map((n,r)=>(0,g.jsxs)(Gt,{fields:n.fields??[],children:[(0,g.jsx)(wt,{section:n,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.separator&&(0,g.jsx)($t,{})]},r)),e.control&&(0,g.jsx)(be,{isPending:e.isPending,children:e.control})]})})})}var Ht=require("react/jsx-runtime");function Yt(e){return(0,Ht.jsx)("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}var Xt=require("react/jsx-runtime");function W(e){let t=R(e.text);return t?(0,Xt.jsx)(Yt,{children:t}):null}var Kt=require("tailwind-merge"),q=require("react/jsx-runtime");function Wt(e){let t=e.style?.showOptionalLabel??!0,n=h(e.field)||c(e.field);return(0,q.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,Kt.twMerge)("flex w-fit items-center gap-2 text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,children:[e.children,t&&!e.field.required&&(0,q.jsx)("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:A("(Optional)",e.translations)})]})}var P=require("react/jsx-runtime");function qt(e){let t={context:e.context,env:e.config?.env},n=le(e.field.label,t),r=le(e.field.description,t);return(0,P.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,P.jsx)(Wt,{field:e.field,style:e.config?.style,translations:e.translations,children:A(n,e.translations)}),e.orientation===I&&(0,P.jsx)(W,{text:A(r,e.translations)})]})}var N=require("react/jsx-runtime");function zt(e){return(0,N.jsxs)(N.Fragment,{children:[e.field.name&&e.field.label&&(0,N.jsx)(qt,{config:e.config,context:e.context,field:e.field,orientation:e.orientation,translations:e.translations}),e.children,e.orientation===y&&e.field.description&&(0,N.jsx)(W,{text:A(e.field.description,e.translations)})]})}function Zt(e,t){return e?t(e):null}var fe=require("react/jsx-runtime");function Jt(e){let t=pt(e.field,e.value),{commonPropsWithOptions:n,defaultValue:r}=gt(e.field,e.commonProps,t,e.value),o=yt(e.field,r);return Zt(e.config.inputs[e.field.type],i=>(0,fe.jsx)(zt,{config:e.config,context:e.context,field:e.field,orientation:e.orientation,translations:e.translations,children:(0,fe.jsx)(i,{...e.ariaAttributes,...n,...e.dataAttributes,...o})}))}var me=require("react/jsx-runtime");function Qt(e){return!e.errors||e.errors.length===0?null:(0,me.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,me.jsx)("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var jt=require("tailwind-merge"),en=require("react/jsx-runtime");function z(e){let t=e.errors&&e.errors.length>0;return(0,en.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Me]:"true"},...e.disabled&&{[De]:"true"},"data-orientation":e.orientation,className:(0,jt.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 tn=require("tailwind-merge"),rn=require("react/jsx-runtime");function nn(e){return(0,rn.jsx)(z,{...e,orientation:y,className:(0,tn.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var on=require("tailwind-merge"),an=require("react/jsx-runtime");function ln(e){return(0,an.jsx)(z,{...e,orientation:I,className:(0,on.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 pe=require("react/jsx-runtime");function sn(e){let t=et(e.field),n=c(e.field),r=it(e.field);return e.orientation===y?(0,pe.jsx)(nn,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):(0,pe.jsx)(ln,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function dn(e){if(!e.field.type)return null;let t=ct(e.field,e.disabled),n=ht(e.field),r=Tt(e.field,e.errors),o={...e.field,disabled:t.disabled};return e.children({ariaAttributes:r,commonProps:t,dataAttributes:n,field:o,orientation:e.orientation})}var cn=require("tailwind-merge"),E=require("react/jsx-runtime");function un(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{orientation:r}=Y(e.style,{orientation:ot(e.field)}),o=lt(e.field,e.disabled);return(0,E.jsxs)("div",{className:(0,cn.twMerge)("flex flex-col gap-3",Nt(t)),children:[(0,E.jsx)(sn,{disabled:o,errors:n,field:e.field,orientation:r,children:(0,E.jsx)(dn,{disabled:o,errors:n,field:e.field,orientation:r,children:e.children})}),(0,E.jsx)(Qt,{errors:n,name:e.field.name})]})}var fn=require("tailwind-merge");var s=require("react/jsx-runtime");function mn(e){function t(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}let n=e.canRemove&&e.onRemove!=null&&(0,s.jsx)("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:(0,fn.twMerge)("rounded p-1 text-xl text-slate-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500 dark:hover:text-red-400"),onClick:t,type:"button",children:(0,s.jsx)("span",{"aria-hidden":"true",children:"\xD7"})});return e.isMultiField?(0,s.jsxs)("div",{className:"rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[(0,s.jsxs)("div",{className:"mb-3 flex items-center justify-between",children:[(0,s.jsxs)("span",{className:"text-sm font-medium text-slate-400 dark:text-slate-500",children:[e.label," ",e.index+1]}),n]}),(0,s.jsx)(S,{children:e.children})]}):(0,s.jsxs)("div",{className:"flex items-start gap-2",children:[(0,s.jsx)(S,{children:e.children}),n&&(0,s.jsx)("div",{className:"shrink-0",children:n})]})}var gn=require("react/jsx-runtime");function pn(e){let t=Lt(e.field),n=Ct(e.field);return It(e.field,e.value).map(r=>(0,gn.jsx)(mn,{index:r,isMultiField:n,label:t,children:e.children(r)},r))}var xn=require("react/jsx-runtime");function yn(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return(0,xn.jsx)(H,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}var ge=require("react/jsx-runtime");function bn({children:e,field:t,value:n}){return(0,ge.jsx)(yn,{field:t,children:(0,ge.jsx)(pn,{field:t,value:n,children:e})})}var Rn=require("tailwind-merge"),ye=require("react/jsx-runtime");function Tn(e){let t=St(e.column?.advanced?.cols);return(0,ye.jsx)("div",{className:"flex w-full flex-col gap-4",children:(0,ye.jsx)("div",{className:(0,Rn.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children})})}var Fn=require("react");var An=require("react/jsx-runtime");function hn(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>B(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:L(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return(0,An.jsx)(M,{children:e.children,components:e.components,disabled:e.disabled,fields:t,style:e.style,value:e.value})}var T=require("react/jsx-runtime");function M(e){let{field:t,list:n}=e.components;return U(e.fields).map((r,o)=>(0,T.jsxs)(Fn.Fragment,{children:[L(r)&&(0,T.jsx)(Tn,{column:r,children:(0,T.jsx)(M,{...e,fields:r.fields})}),B(r)&&(0,T.jsx)(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),tt(r)&&(0,T.jsx)(n,{field:r,value:e.value,children:i=>(0,T.jsx)(hn,{children:e.children,components:e.components,disabled:e.disabled,field:r,index:i,style:e.style,value:e.value})})]},o))}var Nn=require("react/jsx-runtime");function Sn(e){return n=>(0,Nn.jsx)(M,{...n,components:e})}var Cn=Sn({field:un,list:bn});var Z=require("react/jsx-runtime");function J(e){let t=e.translations?.[e.lang??""];return(0,Z.jsx)(Ut,{config:e.config,control:e.children,definition:e.definition,readOnly:e.readOnly,sections:e.sections,children:({disabled:n,fields:r})=>(0,Z.jsx)(Cn,{disabled:n,fields:r,style:e.config.style,children:o=>(0,Z.jsx)(Jt,{...o,config:e.config,context:e.context,translations:t,value:e.value})})})}var In=require("react");var xe=require("react/jsx-runtime");function Ln(e){return(0,xe.jsx)(In.Suspense,{fallback:(0,xe.jsx)(J,{config:e.config,sections:e.sections,readOnly:!0}),children:e.children})}
|
|
1
|
+
"use strict";var Q=Object.defineProperty;var En=Object.getOwnPropertyDescriptor;var On=Object.getOwnPropertyNames;var wn=Object.prototype.hasOwnProperty;var Pn=(e,t)=>{for(var n in t)Q(e,n,{get:t[n],enumerable:!0})},Mn=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of On(t))!wn.call(e,o)&&o!==n&&Q(e,o,{get:()=>t[o],enumerable:!(r=En(t,o))||r.enumerable});return e};var Dn=e=>Mn(Q({},"__esModule",{value:!0}),e);var fr={};Pn(fr,{Fallback:()=>Ln,Form:()=>J});module.exports=Dn(fr);var Re=require("react/jsx-runtime");function be(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,Re.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var k=require("react");var j=require("react/jsx-runtime");function Te(e){return(0,j.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,j.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 _="input",he="input/email",Ae="input/number";var Fe="textarea",Se="radio",Ne="checkbox",ee="list";var Ce="select",Ie="select/month",Le="select/year";var O="column",te="fields",ke="label",ne="value",V="options",re="email",ve="number",Ee="password",Oe="tel",w="text",we="aria-errormessage",Pe="aria-invalid",Me="data-invalid",De="data-readonly",_e="aria",Ve="data",Be="min",Ge="max",$e="minLength",Ue="maxLength",C="$ref";var x="vertical",I="horizontal";var Ye="type";function a(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function b(e){return m(e)||typeof e=="number"||_n(e)}function m(e){return typeof e=="string"}function _n(e){return typeof e=="boolean"}function He(e,t=ne){if(e!=null){if(b(e))return e;if(a(e)){let n=Vn(e,t);if(b(n))return n}}}function Vn(e,t){let n=p(e,t);if(b(n))return n}function p(e,t){if(!t||!a(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(a(r)&&o in r)r=r[o];else return null;return r}function Xe(e,t={label:ke,value:ne}){return e.map(n=>{if(a(n)){let r=p(n,t.label),o=p(n,t.value);if(b(r)&&b(o))return{label:`${r}`,value:`${o}`}}return n})}function Ke(e=w){if(e){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);if(n&&n!==_)return n.trim().toLowerCase()}return w}var Bn=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function oe(e,t={}){if(m(e))return Gn(e,t);if(Array.isArray(e))return e.map(n=>oe(n,t));if(a(e)){let n={};for(let r in e)n[r]=oe(e[r],t);return n}return e}function le(e,t={}){return ie(e)?oe(e,t):e}function ie(e){return m(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>ie(t)):a(e)?Object.values(e).some(t=>ie(t)):!1}function Gn(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,r)=>{let o=r.includes(".")?p(t,r):t[r];return b(o)?String(o):n})}function We(e,t){if(!m(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Bn.exec(e))!==null;){let[l,d,kn]=n,D=n.index;o=!0,D>r&&i.push(e.substring(r,D));let vn=t?t(D,kn,d):l;i.push(vn),r=D+l.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var qe=e=>u(Ie)(e),ze=e=>u(Le)(e),c=u(Ne),Ze=u(_),h=u(Se),g=u(Ce),Je=u(Fe),Qe=u(w,re,Ee,Oe),Cr=u(he,re),je=u(Ae,ve);function et(e){return h(e)||c(e)}function tt(e){return e.type===ee}function L(e){return e.type===O}function B(e){return e.type!==O&&e.type!==ee}function nt(e){return g(e)||h(e)}function ae(e){return e!=null&&e!==""}function u(...e){return t=>{let n=m(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function rt(e,t={}){if(g(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&a(n))return[n]}}function ot(e){return h(e)||c(e)?I:e.advanced?.orientation??x}function it(e){return c(e)?e.advanced?.reverse!==!1:!1}function lt(e,t){let n=e.readonly??!1;return t||n}function at(e){if(h(e)||g(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||a(t)&&!(C in t))return t}}var $n=/^\d+$/;function st(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function dt(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 se(){return new Date().getFullYear()}function de(e,t){if(typeof e=="number")return e;let n=t??se(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,l]=o,d=parseInt(l,10);if(!isNaN(d))return i==="+"?n+d:n-d}return n}return $n.test(r)?parseInt(r,10):n}var G=se();function Un(e){if(g(e))return Yn(e)}function Yn(e){if(qe(e))return st();if(ze(e)){let t=e.advanced?.length?.min??G,n=e.advanced?.length?.max??G+5;return dt(de(t,G),de(n,G))}}function ct(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return Ze(e)?{...n,...Hn(e)}:g(e)?{...n,...Xn(e)}:Je(e)?{...n,...Kn(e)}:n}function Hn(e){let t=Ke(e.type),n={...e,type:t};return{...ut(e),...Wn(n),...Qe(n)?ft(n):{},type:t}}function Xn(e){let t=Un(e);return t?{options:t}:{}}function Kn(e){return{...ut(e),...ft(e)}}function ut(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Wn(e){return je(e)?qn(e):{}}function ft(e){return mt(e,{min:$e,max:Ue})}function qn(e){return mt(e,{min:Be,max:Ge})}function mt(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 pt(e,t){let n=at(e);return n||rt(e,t)}function zn(e,t){let n=a(t)&&e.name in t?t[e.name]:t;return He(n,e.advanced?.entity)}function Zn(e,t,n){return nt(e)&&Array.isArray(n)?{...t,[V]:n}:t}function Jn(e,t,n){if(e.required&&!ae(n)&&g(e)&&e.advanced?.preselected!==!1&&V in t){let r=t[V];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function Qn(e,t){return g(e)&&Array.isArray(t)?Xe(t,e.advanced?.options):t}function gt(e,t,n,r){let o=zn(e,r),i=Array.isArray(n)?Qn(e,n):n,l=Zn(e,t,i),d=Jn(e,l,o);return{commonPropsWithOptions:l,defaultValue:d}}function yt(e,t){return c(e)?{defaultChecked:ae(t)}:{defaultValue:t}}var jn=/^#\/definition\//;function U(e=[],t){let n=$(e,t);return Array.isArray(n)?n.filter(tr).sort((r,o)=>xt(r)-xt(o)):[]}function $(e,t,n=new Map,r=new WeakSet){if(!er(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=>$(i,t,n,r));if(C in e&&m(e[C])){let i=e[C].replace(jn,""),l=p(t,i);return l!==null?$(l,t,n,r):e}let o={};for(let[i,l]of Object.entries(e))o[i]=$(l,t,n,r);return r.delete(e),n.set(e,o),o}function bt(e){return Object.entries(e??{})}function xt(e){return e.order??Number.MAX_VALUE}function er(e){return e!==void 0&&a(e)&&Object.keys(e).length>0}function tr(e){return Ye in e?!0:Array.isArray(e[te])?e[te].length>0:!0}function Rt(e,t){let n={};for(let[r,o]of bt(t))n[`${e}-${r}`]=o;return n}function nr(e){return Rt(_e,e)}function rr(e){return Rt(Ve,e)}function Tt(e,t){let n=nr(e.advanced?.aria);return t&&t.length>0&&(n[Pe]="true",n[we]=`${e.name}-error`),n}function ht(e){return rr(e.advanced?.data)}var At={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Ft={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function St(e,t=2){return At[e&&e in At?e:t]}function Nt(e){if(e&&e in Ft)return Ft[e]}function or(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 Ct(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===O}function It(e,t){let n=or(e,t);return Array.from({length:n},(r,o)=>o)}function Lt(e){return e.label??e.name}function A(e,t){return e?t?t[e]??e:e:""}function Y(e,t){return{...e,...t}}var kt=require("react/jsx-runtime");function R(e){return We(e,(t,n,r)=>(0,kt.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}var f=require("react/jsx-runtime");function vt(e){let{fields:t=[]}=e.section,[n,r]=(0,k.useState)(!1),o=(0,k.useCallback)(()=>r(i=>!i),[]);return(0,f.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,f.jsx)("legend",{children:(0,f.jsxs)("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-slate-600 dark:text-slate-400",onClick:o,type:"button",children:[(0,f.jsx)(Te,{expanded:n}),(0,f.jsx)("span",{children:R(e.section.title)})]})}),(0,f.jsx)(k.Activity,{mode:n?"visible":"hidden",children:(0,f.jsxs)("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-slate-300 pl-4 dark:border-slate-600","data-slot":"field-set-content",children:[e.section.description&&(0,f.jsx)("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:R(e.section.description)}),e.group]})})]})}var F=require("react/jsx-runtime");function Et(e){return(0,F.jsxs)(F.Fragment,{children:[e.title&&(0,F.jsx)("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:R(e.title)}),e.description&&(0,F.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:R(e.description)})]})}var X=require("react/jsx-runtime");function H(e){return(0,X.jsxs)("fieldset",{"data-slot":"field-set","data-empty":e.empty,className:"flex flex-col data-[empty=false]:gap-6",id:e.id,children:[(0,X.jsx)(Et,{description:e.description,title:e.title}),e.children]})}var Ot=require("react/jsx-runtime");function S(e){return(0,Ot.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 K=require("react/jsx-runtime");function wt(e){let{fields:t=[]}=e.section,{compact:n}=Y(e.style,{compact:e.section.compact}),r=(0,K.jsx)(S,{compact:n,children:e.children});return!e.section.title&&!e.section.description?r:e.section.advanced?(0,K.jsx)(vt,{section:e.section,group:r}):(0,K.jsx)(H,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),title:e.section.title,children:r})}var Vt=require("jotai");var v=require("jotai"),Pt=require("jotai-family"),ce=require("fast-equals");function ir(e,t){let{[t]:n,...r}=e;return r}function lr(e){return(0,Pt.atomFamily)(t=>(0,v.atom)(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let l=i[t];(!l||!(0,ce.deepEqual)(l,o))&&r(e,{...i,[t]:o})}else i[t]&&r(e,ir(i,t))}))}function ar(e){return(0,v.atom)(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function sr(e){return(0,v.atom)(null,(t,n,r)=>{let i={...t(e)},l=!1;for(let d of r)i[d]&&(delete i[d],l=!0);l&&n(e,i)})}function dr(e){return(0,v.atom)(null,(t,n,r)=>{let o=t(e);(0,ce.deepEqual)(o,r)||n(e,r)})}function Mt(e={}){let t=(0,v.atom)(e);return{atom:t,clearAll:ar(t),clear:sr(t),bulkReport:dr(t),report:lr(t)}}var Dt=Mt(),_t=Dt.atom,xo=Dt.report;function cr(e,t){return e.fields.every(n=>Bt(n,t))}function Bt(e,t){return t[e.name]?.hidden??e.hidden??!1}function ur(e,t){return L(e)?cr(e,t):Bt(e,t)}function Gt(e){let t=(0,Vt.useAtomValue)(_t);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>ur(r,t))?null:e.children}var ue=require("react/jsx-runtime");function $t(){return(0,ue.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,ue.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}var y=require("react/jsx-runtime");function Ut(e){let t=U(e.sections,e.definition);return(0,y.jsx)("div",{className:"h-full w-full",children:(0,y.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,y.jsxs)(S,{children:[t.map((n,r)=>(0,y.jsxs)(Gt,{fields:n.fields??[],children:[(0,y.jsx)(wt,{section:n,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.separator&&(0,y.jsx)($t,{})]},r)),e.control&&(0,y.jsx)(be,{isPending:e.isPending,children:e.control})]})})})}var Ht=require("react/jsx-runtime");function Yt(e){return(0,Ht.jsx)("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}var Xt=require("react/jsx-runtime");function W(e){let t=R(e.text);return t?(0,Xt.jsx)(Yt,{children:t}):null}var Kt=require("tailwind-merge"),q=require("react/jsx-runtime");function Wt(e){let t=e.style?.showOptionalLabel??!0,n=h(e.field)||c(e.field);return(0,q.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,Kt.twMerge)("flex w-fit items-center gap-2 text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,children:[e.children,t&&!e.field.required&&(0,q.jsx)("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:A("(Optional)",e.translations)})]})}var P=require("react/jsx-runtime");function qt(e){let t={context:e.context,env:e.config?.env},n=le(e.field.label,t),r=le(e.field.description,t);return(0,P.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,P.jsx)(Wt,{field:e.field,style:e.config?.style,translations:e.translations,children:A(n,e.translations)}),e.orientation===I&&(0,P.jsx)(W,{text:A(r,e.translations)})]})}var N=require("react/jsx-runtime");function zt(e){return(0,N.jsxs)(N.Fragment,{children:[e.field.name&&e.field.label&&(0,N.jsx)(qt,{config:e.config,context:e.context,field:e.field,orientation:e.orientation,translations:e.translations}),e.children,e.orientation===x&&e.field.description&&(0,N.jsx)(W,{text:A(e.field.description,e.translations)})]})}function Zt(e,t){return e?t(e):null}var fe=require("react/jsx-runtime");function Jt(e){let t=pt(e.field,e.value),{commonPropsWithOptions:n,defaultValue:r}=gt(e.field,e.commonProps,t,e.value),o=yt(e.field,r);return Zt(e.config.inputs[e.field.type],i=>(0,fe.jsx)(zt,{config:e.config,context:e.context,field:e.field,orientation:e.orientation,translations:e.translations,children:(0,fe.jsx)(i,{...e.ariaAttributes,...n,...e.dataAttributes,...o})}))}var me=require("react/jsx-runtime");function Qt(e){return!e.errors||e.errors.length===0?null:(0,me.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,me.jsx)("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var jt=require("tailwind-merge"),en=require("react/jsx-runtime");function z(e){let t=e.errors&&e.errors.length>0;return(0,en.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Me]:"true"},...e.disabled&&{[De]:"true"},"data-orientation":e.orientation,className:(0,jt.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 tn=require("tailwind-merge"),rn=require("react/jsx-runtime");function nn(e){return(0,rn.jsx)(z,{...e,orientation:x,className:(0,tn.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var on=require("tailwind-merge"),an=require("react/jsx-runtime");function ln(e){return(0,an.jsx)(z,{...e,orientation:I,className:(0,on.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 pe=require("react/jsx-runtime");function sn(e){let t=et(e.field),n=c(e.field),r=it(e.field);return e.orientation===x?(0,pe.jsx)(nn,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):(0,pe.jsx)(ln,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function dn(e){if(!e.field.type)return null;let t=ct(e.field,e.disabled),n=ht(e.field),r=Tt(e.field,e.errors),o={...e.field,disabled:t.disabled};return e.children({ariaAttributes:r,commonProps:t,dataAttributes:n,field:o,orientation:e.orientation})}var cn=require("tailwind-merge"),E=require("react/jsx-runtime");function un(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{orientation:r}=Y(e.style,{orientation:ot(e.field)}),o=lt(e.field,e.disabled);return(0,E.jsxs)("div",{className:(0,cn.twMerge)("flex flex-col gap-3",Nt(t)),children:[(0,E.jsx)(sn,{disabled:o,errors:n,field:e.field,orientation:r,children:(0,E.jsx)(dn,{disabled:o,errors:n,field:e.field,orientation:r,children:e.children})}),(0,E.jsx)(Qt,{errors:n,name:e.field.name})]})}var fn=require("tailwind-merge");var s=require("react/jsx-runtime");function mn(e){function t(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}let n=e.canRemove&&e.onRemove!=null&&(0,s.jsx)("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:(0,fn.twMerge)("rounded p-1 text-xl text-slate-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500 dark:hover:text-red-400"),onClick:t,type:"button",children:(0,s.jsx)("span",{"aria-hidden":"true",children:"\xD7"})});return e.isMultiField?(0,s.jsxs)("div",{className:"rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[(0,s.jsxs)("div",{className:"mb-3 flex items-center justify-between",children:[(0,s.jsxs)("span",{className:"text-sm font-medium text-slate-400 dark:text-slate-500",children:[e.label," ",e.index+1]}),n]}),(0,s.jsx)(S,{children:e.children})]}):(0,s.jsxs)("div",{className:"flex items-start gap-2",children:[(0,s.jsx)(S,{children:e.children}),n&&(0,s.jsx)("div",{className:"shrink-0",children:n})]})}var gn=require("react/jsx-runtime");function pn(e){let t=Lt(e.field),n=Ct(e.field);return It(e.field,e.value).map(r=>(0,gn.jsx)(mn,{index:r,isMultiField:n,label:t,children:e.children(r)},r))}var xn=require("react/jsx-runtime");function yn(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return(0,xn.jsx)(H,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}var ge=require("react/jsx-runtime");function bn({children:e,field:t,value:n}){return(0,ge.jsx)(yn,{field:t,children:(0,ge.jsx)(pn,{field:t,value:n,children:e})})}var Rn=require("tailwind-merge"),ye=require("react/jsx-runtime");function Tn(e){let t=St(e.column?.advanced?.cols);return(0,ye.jsx)("div",{className:"flex w-full flex-col gap-4",children:(0,ye.jsx)("div",{className:(0,Rn.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children})})}var Fn=require("react");var An=require("react/jsx-runtime");function hn(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>B(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:L(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return(0,An.jsx)(M,{children:e.children,components:e.components,disabled:e.disabled,fields:t,style:e.style,value:e.value})}var T=require("react/jsx-runtime");function M(e){let{field:t,list:n}=e.components;return U(e.fields).map((r,o)=>(0,T.jsxs)(Fn.Fragment,{children:[L(r)&&(0,T.jsx)(Tn,{column:r,children:(0,T.jsx)(M,{...e,fields:r.fields})}),B(r)&&(0,T.jsx)(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),tt(r)&&(0,T.jsx)(n,{field:r,value:e.value,children:i=>(0,T.jsx)(hn,{children:e.children,components:e.components,disabled:e.disabled,field:r,index:i,style:e.style,value:e.value})})]},o))}var Nn=require("react/jsx-runtime");function Sn(e){return n=>(0,Nn.jsx)(M,{...n,components:e})}var Cn=Sn({field:un,list:bn});var Z=require("react/jsx-runtime");function J(e){let t=e.translations?.[e.lang??""];return(0,Z.jsx)(Ut,{config:e.config,control:e.children,definition:e.definition,readOnly:e.readOnly,sections:e.sections,children:({disabled:n,fields:r})=>(0,Z.jsx)(Cn,{disabled:n,fields:r,style:e.config.style,children:o=>(0,Z.jsx)(Jt,{...o,config:e.config,context:e.context,translations:t,value:e.value})})})}var In=require("react");var xe=require("react/jsx-runtime");function Ln(e){return(0,xe.jsx)(In.Suspense,{fallback:(0,xe.jsx)(J,{config:e.config,sections:e.sections,readOnly:!0}),children:e.children})}
|
package/dist/server/esm/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as ln}from"react/jsx-runtime";function oe(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return ln("div",{"data-slot":"field-control",className:"w-full",children:t})}import{Activity as vn,useCallback as En,useState as On}from"react";import{jsx as ie}from"react/jsx-runtime";function le(e){return ie("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:ie("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 O="input",ae="input/email",se="input/number";var de="textarea",ce="radio",ue="checkbox",Y="list";var fe="select",me="select/month",pe="select/year";var F="column",H="fields",ge="label",X="value",w="options",K="email",ye="number",xe="password",be="tel",S="text",Re="aria-errormessage",Te="aria-invalid",he="data-invalid",Ae="data-readonly",Fe="aria",Se="data",Ne="min",Ce="max",Ie="minLength",Le="maxLength",T="$ref";var m="vertical",h="horizontal";var ke="type";function a(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function p(e){return g(e)||typeof e=="number"||an(e)}function g(e){return typeof e=="string"}function an(e){return typeof e=="boolean"}function ve(e,t=X){if(e!=null){if(p(e))return e;if(a(e)){let n=sn(e,t);if(p(n))return n}}}function sn(e,t){let n=u(e,t);if(p(n))return n}function u(e,t){if(!t||!a(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(a(r)&&o in r)r=r[o];else return null;return r}function Ee(e,t={label:ge,value:X}){return e.map(n=>{if(a(n)){let r=u(n,t.label),o=u(n,t.value);if(p(r)&&p(o))return{label:`${r}`,value:`${o}`}}return n})}function Oe(e=S){if(e){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);if(n&&n!==O)return n.trim().toLowerCase()}return S}var dn=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function W(e,t={}){if(g(e))return cn(e,t);if(Array.isArray(e))return e.map(n=>W(n,t));if(a(e)){let n={};for(let r in e)n[r]=W(e[r],t);return n}return e}function z(e,t={}){return q(e)?W(e,t):e}function q(e){return g(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>q(t)):a(e)?Object.values(e).some(t=>q(t)):!1}function cn(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,r)=>{let o=r.includes(".")?u(t,r):t[r];return p(o)?String(o):n})}function we(e,t){if(!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=dn.exec(e))!==null;){let[l,s,rn]=n,E=n.index;o=!0,E>r&&i.push(e.substring(r,E));let on=t?t(E,rn,s):l;i.push(on),r=E+l.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var Pe=e=>c(me)(e),Me=e=>c(pe)(e),d=c(ue),De=c(O),x=c(ce),f=c(fe),_e=c(de),Ve=c(S,K,xe,be),wr=c(ae,K),Be=c(se,ye);function Ge(e){return x(e)||d(e)}function $e(e){return e.type===Y}function A(e){return e.type===F}function P(e){return e.type!==F&&e.type!==Y}function Ue(e){return f(e)||x(e)}function Z(e){return e!=null&&e!==""}function c(...e){return t=>{let n=g(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Ye(e,t={}){if(f(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&a(n))return[n]}}function He(e){return x(e)||d(e)?h:e.advanced?.orientation??m}function Xe(e){return d(e)?e.advanced?.reverse!==!1:!1}function Ke(e,t){let n=e.readonly??!1;return t||n}function We(e){if(x(e)||f(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||a(t)&&!(T in t))return t}}var un=/^\d+$/;function qe(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function ze(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 J(){return new Date().getFullYear()}function Q(e,t){if(typeof e=="number")return e;let n=t??J(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,l]=o,s=parseInt(l,10);if(!isNaN(s))return i==="+"?n+s:n-s}return n}return un.test(r)?parseInt(r,10):n}var M=J();function fn(e){if(f(e))return mn(e)}function mn(e){if(Pe(e))return qe();if(Me(e)){let t=e.advanced?.length?.min??M,n=e.advanced?.length?.max??M+5;return ze(Q(t,M),Q(n,M))}}function Ze(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return De(e)?{...n,...pn(e)}:f(e)?{...n,...gn(e)}:_e(e)?{...n,...yn(e)}:n}function pn(e){let t=Oe(e.type),n={...e,type:t};return{...Je(e),...xn(n),...Ve(n)?Qe(n):{},type:t}}function gn(e){let t=fn(e);return t?{options:t}:{}}function yn(e){return{...Je(e),...Qe(e)}}function Je(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function xn(e){return Be(e)?bn(e):{}}function Qe(e){return je(e,{min:Ie,max:Le})}function bn(e){return je(e,{min:Ne,max:Ce})}function je(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 et(e,t){let n=We(e);return n||Ye(e,t)}function Rn(e,t){let n=a(t)&&e.name in t?t[e.name]:t;return ve(n,e.advanced?.entity)}function Tn(e,t,n){return Ue(e)&&Array.isArray(n)?{...t,[w]:n}:t}function hn(e,t,n){if(e.required&&!Z(n)&&f(e)&&e.advanced?.preselected!==!1&&w in t){let r=t[w];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function An(e,t){return f(e)&&Array.isArray(t)?Ee(t,e.advanced?.options):t}function tt(e,t,n,r){let o=Rn(e,r),i=Array.isArray(n)?An(e,n):n,l=Tn(e,t,i),s=hn(e,l,o);return{commonPropsWithOptions:l,defaultValue:s}}function nt(e,t){return d(e)?{defaultChecked:Z(t)}:{defaultValue:t}}var Fn=/^#\/definition\//;function _(e=[],t){let n=D(e,t);return Array.isArray(n)?n.filter(Nn).sort((r,o)=>rt(r)-rt(o)):[]}function D(e,t,n=new Map,r=new WeakSet){if(!Sn(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=>D(i,t,n,r));if(T in e&&g(e[T])){let i=e[T].replace(Fn,""),l=u(t,i);return l!==null?D(l,t,n,r):e}let o={};for(let[i,l]of Object.entries(e))o[i]=D(l,t,n,r);return r.delete(e),n.set(e,o),o}function ot(e){return Object.entries(e??{})}function rt(e){return e.order??Number.MAX_VALUE}function Sn(e){return e!==void 0&&a(e)&&Object.keys(e).length>0}function Nn(e){return ke in e?!0:Array.isArray(e[H])?e[H].length>0:!0}function it(e,t){let n={};for(let[r,o]of ot(t))n[`${e}-${r}`]=o;return n}function Cn(e){return it(Fe,e)}function In(e){return it(Se,e)}function lt(e,t){let n=Cn(e.advanced?.aria);return t&&t.length>0&&(n[Te]="true",n[Re]=`${e.name}-error`),n}function at(e){return In(e.advanced?.data)}var st={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},dt={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function ct(e,t=2){return st[e&&e in st?e:t]}function ut(e){if(e&&e in dt)return dt[e]}function Ln(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 ft(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===F}function mt(e,t){let n=Ln(e,t);return Array.from({length:n},(r,o)=>o)}function pt(e){return e.label??e.name}function b(e,t){return e?t?t[e]??e:e:""}function V(e,t){return{...e,...t}}import{jsx as kn}from"react/jsx-runtime";function y(e){return we(e,(t,n,r)=>kn("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}import{jsx as N,jsxs as j}from"react/jsx-runtime";function gt(e){let{fields:t=[]}=e.section,[n,r]=On(!1),o=En(()=>r(i=>!i),[]);return j("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:[N("legend",{children:j("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-slate-600 dark:text-slate-400",onClick:o,type:"button",children:[N(le,{expanded:n}),N("span",{children:y(e.section.title)})]})}),N(vn,{mode:n?"visible":"hidden",children:j("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-slate-300 pl-4 dark:border-slate-600","data-slot":"field-set-content",children:[e.section.description&&N("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:y(e.section.description)}),e.group]})})]})}import{Fragment as wn,jsx as yt,jsxs as Pn}from"react/jsx-runtime";function xt(e){return Pn(wn,{children:[e.title&&yt("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:y(e.title)}),e.description&&yt("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:y(e.description)})]})}import{jsx as Mn,jsxs as Dn}from"react/jsx-runtime";function B(e){return Dn("fieldset",{"data-slot":"field-set","data-empty":e.empty,className:"flex flex-col data-[empty=false]:gap-6",id:e.id,children:[Mn(xt,{description:e.description,title:e.title}),e.children]})}import{jsx as _n}from"react/jsx-runtime";function R(e){return _n("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 ee}from"react/jsx-runtime";function bt(e){let{fields:t=[]}=e.section,{compact:n}=V(e.style,{compact:e.section.compact}),r=ee(R,{compact:n,children:e.children});return!e.section.title&&!e.section.description?r:e.section.advanced?ee(gt,{section:e.section,group:r}):ee(B,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),title:e.section.title,children:r})}import{useAtomValue as Hn}from"jotai";import{atom as C}from"jotai";import{atomFamily as Vn}from"jotai-family";import{deepEqual as Rt}from"fast-equals";function Bn(e,t){let{[t]:n,...r}=e;return r}function Gn(e){return Vn(t=>C(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let l=i[t];(!l||!Rt(l,o))&&r(e,{...i,[t]:o})}else i[t]&&r(e,Bn(i,t))}))}function $n(e){return C(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function Un(e){return C(null,(t,n,r)=>{let i={...t(e)},l=!1;for(let s of r)i[s]&&(delete i[s],l=!0);l&&n(e,i)})}function Yn(e){return C(null,(t,n,r)=>{let o=t(e);Rt(o,r)||n(e,r)})}function Tt(e={}){let t=C(e);return{atom:t,clearAll:$n(t),clear:Un(t),bulkReport:Yn(t),report:Gn(t)}}var ht=Tt(),At=ht.atom,Po=ht.report;function Xn(e,t){return e.fields.every(n=>Ft(n,t))}function Ft(e,t){return t[e.name]?.hidden??e.hidden??!1}function Kn(e,t){return A(e)?Xn(e,t):Ft(e,t)}function St(e){let t=Hn(At);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>Kn(r,t))?null:e.children}import{jsx as Nt}from"react/jsx-runtime";function Ct(){return Nt("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:Nt("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}import{jsx as I,jsxs as It}from"react/jsx-runtime";function Lt(e){let t=_(e.sections,e.definition);return I("div",{className:"h-full w-full",children:I("form",{noValidate:e.noValidate,action:e.action,children:It(R,{children:[t.map((n,r)=>It(St,{fields:n.fields??[],children:[I(bt,{section:n,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.separator&&I(Ct,{})]},r)),e.control&&I(oe,{isPending:e.isPending,children:e.control})]})})})}import{jsx as Wn}from"react/jsx-runtime";function kt(e){return Wn("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}import{jsx as qn}from"react/jsx-runtime";function G(e){let t=y(e.text);return t?qn(kt,{children:t}):null}import{twMerge as zn}from"tailwind-merge";import{jsx as Zn,jsxs as Jn}from"react/jsx-runtime";function vt(e){let t=e.style?.showOptionalLabel??!0,n=x(e.field)||d(e.field);return Jn("label",{"data-slot":"field-label","data-normal":n,className:zn("flex w-fit items-center gap-2 text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,children:[e.children,t&&!e.field.required&&Zn("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:b("(Optional)",e.translations)})]})}import{jsx as Et,jsxs as Qn}from"react/jsx-runtime";function Ot(e){let t={context:e.context,env:e.config?.env},n=z(e.field.label,t),r=z(e.field.description,t);return Qn("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[Et(vt,{field:e.field,style:e.config?.style,translations:e.translations,children:b(n,e.translations)}),e.orientation===h&&Et(G,{text:b(r,e.translations)})]})}import{Fragment as jn,jsx as wt,jsxs as er}from"react/jsx-runtime";function Pt(e){return er(jn,{children:[e.field.name&&e.field.label&&wt(Ot,{config:e.config,context:e.context,field:e.field,orientation:e.orientation,translations:e.translations}),e.children,e.orientation===m&&e.field.description&&wt(G,{text:b(e.field.description,e.translations)})]})}function Mt(e,t){return e?t(e):null}import{jsx as Dt}from"react/jsx-runtime";function _t(e){let t=et(e.field,e.value),{commonPropsWithOptions:n,defaultValue:r}=tt(e.field,e.commonProps,t,e.value),o=nt(e.field,r);return Mt(e.config.inputs[e.field.type],i=>Dt(Pt,{config:e.config,context:e.context,field:e.field,orientation:e.orientation,translations:e.translations,children:Dt(i,{...e.ariaAttributes,...n,...e.dataAttributes,...o})}))}import{jsx as Vt}from"react/jsx-runtime";function Bt(e){return!e.errors||e.errors.length===0?null:Vt("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)=>Vt("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}import{twMerge as tr}from"tailwind-merge";import{jsx as nr}from"react/jsx-runtime";function $(e){let t=e.errors&&e.errors.length>0;return nr("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[he]:"true"},...e.disabled&&{[Ae]:"true"},"data-orientation":e.orientation,className:tr("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 rr}from"tailwind-merge";import{jsx as or}from"react/jsx-runtime";function Gt(e){return or($,{...e,orientation:m,className:rr("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as ir}from"tailwind-merge";import{jsx as lr}from"react/jsx-runtime";function $t(e){return lr($,{...e,orientation:h,className:ir("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 Ut}from"react/jsx-runtime";function Yt(e){let t=Ge(e.field),n=d(e.field),r=Xe(e.field);return e.orientation===m?Ut(Gt,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):Ut($t,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function Ht(e){if(!e.field.type)return null;let t=Ze(e.field,e.disabled),n=at(e.field),r=lt(e.field,e.errors),o={...e.field,disabled:t.disabled};return e.children({ariaAttributes:r,commonProps:t,dataAttributes:n,field:o,orientation:e.orientation})}import{twMerge as ar}from"tailwind-merge";import{jsx as te,jsxs as sr}from"react/jsx-runtime";function Xt(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{orientation:r}=V(e.style,{orientation:He(e.field)}),o=Ke(e.field,e.disabled);return sr("div",{className:ar("flex flex-col gap-3",ut(t)),children:[te(Yt,{disabled:o,errors:n,field:e.field,orientation:r,children:te(Ht,{disabled:o,errors:n,field:e.field,orientation:r,children:e.children})}),te(Bt,{errors:n,name:e.field.name})]})}import{twMerge as dr}from"tailwind-merge";import{jsx as L,jsxs as U}from"react/jsx-runtime";function Kt(e){function t(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}let n=e.canRemove&&e.onRemove!=null&&L("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:dr("rounded p-1 text-xl text-slate-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500 dark:hover:text-red-400"),onClick:t,type:"button",children:L("span",{"aria-hidden":"true",children:"\xD7"})});return e.isMultiField?U("div",{className:"rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[U("div",{className:"mb-3 flex items-center justify-between",children:[U("span",{className:"text-sm font-medium text-slate-400 dark:text-slate-500",children:[e.label," ",e.index+1]}),n]}),L(R,{children:e.children})]}):U("div",{className:"flex items-start gap-2",children:[L(R,{children:e.children}),n&&L("div",{className:"shrink-0",children:n})]})}import{jsx as cr}from"react/jsx-runtime";function Wt(e){let t=pt(e.field),n=ft(e.field);return mt(e.field,e.value).map(r=>cr(Kt,{index:r,isMultiField:n,label:t,children:e.children(r)},r))}import{jsx as ur}from"react/jsx-runtime";function qt(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return ur(B,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}import{jsx as zt}from"react/jsx-runtime";function Zt({children:e,field:t,value:n}){return zt(qt,{field:t,children:zt(Wt,{field:t,value:n,children:e})})}import{twMerge as fr}from"tailwind-merge";import{jsx as Jt}from"react/jsx-runtime";function Qt(e){let t=ct(e.column?.advanced?.cols);return Jt("div",{className:"flex w-full flex-col gap-4",children:Jt("div",{className:fr("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children})})}import{Fragment as pr}from"react";import{jsx as mr}from"react/jsx-runtime";function jt(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>P(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:A(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return mr(k,{children:e.children,components:e.components,disabled:e.disabled,fields:t,style:e.style,value:e.value})}import{jsx as v,jsxs as gr}from"react/jsx-runtime";function k(e){let{field:t,list:n}=e.components;return _(e.fields).map((r,o)=>gr(pr,{children:[A(r)&&v(Qt,{column:r,children:v(k,{...e,fields:r.fields})}),P(r)&&v(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),$e(r)&&v(n,{field:r,value:e.value,children:i=>v(jt,{children:e.children,components:e.components,disabled:e.disabled,field:r,index:i,style:e.style,value:e.value})})]},o))}import{jsx as yr}from"react/jsx-runtime";function en(e){return n=>yr(k,{...n,components:e})}var tn=en({field:Xt,list:Zt});import{jsx as ne}from"react/jsx-runtime";function re(e){let t=e.translations?.[e.lang??""];return ne(Lt,{config:e.config,control:e.children,definition:e.definition,readOnly:e.readOnly,sections:e.sections,children:({disabled:n,fields:r})=>ne(tn,{disabled:n,fields:r,style:e.config.style,children:o=>ne(_t,{...o,config:e.config,context:e.context,translations:t,value:e.value})})})}import{Suspense as xr}from"react";import{jsx as nn}from"react/jsx-runtime";function br(e){return nn(xr,{fallback:nn(re,{config:e.config,sections:e.sections,readOnly:!0}),children:e.children})}export{br as Fallback,re as Form};
|
|
1
|
+
import{jsx as ln}from"react/jsx-runtime";function oe(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return ln("div",{"data-slot":"field-control",className:"w-full",children:t})}import{Activity as vn,useCallback as En,useState as On}from"react";import{jsx as ie}from"react/jsx-runtime";function le(e){return ie("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:ie("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 O="input",ae="input/email",se="input/number";var de="textarea",ce="radio",ue="checkbox",Y="list";var fe="select",me="select/month",pe="select/year";var F="column",H="fields",ge="label",X="value",w="options",K="email",ye="number",xe="password",be="tel",S="text",Re="aria-errormessage",Te="aria-invalid",he="data-invalid",Ae="data-readonly",Fe="aria",Se="data",Ne="min",Ce="max",Ie="minLength",Le="maxLength",T="$ref";var p="vertical",h="horizontal";var ke="type";function a(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function g(e){return u(e)||typeof e=="number"||an(e)}function u(e){return typeof e=="string"}function an(e){return typeof e=="boolean"}function ve(e,t=X){if(e!=null){if(g(e))return e;if(a(e)){let n=sn(e,t);if(g(n))return n}}}function sn(e,t){let n=f(e,t);if(g(n))return n}function f(e,t){if(!t||!a(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(a(r)&&o in r)r=r[o];else return null;return r}function Ee(e,t={label:ge,value:X}){return e.map(n=>{if(a(n)){let r=f(n,t.label),o=f(n,t.value);if(g(r)&&g(o))return{label:`${r}`,value:`${o}`}}return n})}function Oe(e=S){if(e){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);if(n&&n!==O)return n.trim().toLowerCase()}return S}var dn=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function W(e,t={}){if(u(e))return cn(e,t);if(Array.isArray(e))return e.map(n=>W(n,t));if(a(e)){let n={};for(let r in e)n[r]=W(e[r],t);return n}return e}function z(e,t={}){return q(e)?W(e,t):e}function q(e){return u(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>q(t)):a(e)?Object.values(e).some(t=>q(t)):!1}function cn(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,r)=>{let o=r.includes(".")?f(t,r):t[r];return g(o)?String(o):n})}function we(e,t){if(!u(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=dn.exec(e))!==null;){let[l,s,rn]=n,E=n.index;o=!0,E>r&&i.push(e.substring(r,E));let on=t?t(E,rn,s):l;i.push(on),r=E+l.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var Pe=e=>c(me)(e),Me=e=>c(pe)(e),d=c(ue),De=c(O),x=c(ce),m=c(fe),_e=c(de),Ve=c(S,K,xe,be),wr=c(ae,K),Be=c(se,ye);function Ge(e){return x(e)||d(e)}function $e(e){return e.type===Y}function A(e){return e.type===F}function P(e){return e.type!==F&&e.type!==Y}function Ue(e){return m(e)||x(e)}function Z(e){return e!=null&&e!==""}function c(...e){return t=>{let n=u(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Ye(e,t={}){if(m(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&a(n))return[n]}}function He(e){return x(e)||d(e)?h:e.advanced?.orientation??p}function Xe(e){return d(e)?e.advanced?.reverse!==!1:!1}function Ke(e,t){let n=e.readonly??!1;return t||n}function We(e){if(x(e)||m(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||a(t)&&!(T in t))return t}}var un=/^\d+$/;function qe(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function ze(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 J(){return new Date().getFullYear()}function Q(e,t){if(typeof e=="number")return e;let n=t??J(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,l]=o,s=parseInt(l,10);if(!isNaN(s))return i==="+"?n+s:n-s}return n}return un.test(r)?parseInt(r,10):n}var M=J();function fn(e){if(m(e))return mn(e)}function mn(e){if(Pe(e))return qe();if(Me(e)){let t=e.advanced?.length?.min??M,n=e.advanced?.length?.max??M+5;return ze(Q(t,M),Q(n,M))}}function Ze(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return De(e)?{...n,...pn(e)}:m(e)?{...n,...gn(e)}:_e(e)?{...n,...yn(e)}:n}function pn(e){let t=Oe(e.type),n={...e,type:t};return{...Je(e),...xn(n),...Ve(n)?Qe(n):{},type:t}}function gn(e){let t=fn(e);return t?{options:t}:{}}function yn(e){return{...Je(e),...Qe(e)}}function Je(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function xn(e){return Be(e)?bn(e):{}}function Qe(e){return je(e,{min:Ie,max:Le})}function bn(e){return je(e,{min:Ne,max:Ce})}function je(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 et(e,t){let n=We(e);return n||Ye(e,t)}function Rn(e,t){let n=a(t)&&e.name in t?t[e.name]:t;return ve(n,e.advanced?.entity)}function Tn(e,t,n){return Ue(e)&&Array.isArray(n)?{...t,[w]:n}:t}function hn(e,t,n){if(e.required&&!Z(n)&&m(e)&&e.advanced?.preselected!==!1&&w in t){let r=t[w];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function An(e,t){return m(e)&&Array.isArray(t)?Ee(t,e.advanced?.options):t}function tt(e,t,n,r){let o=Rn(e,r),i=Array.isArray(n)?An(e,n):n,l=Tn(e,t,i),s=hn(e,l,o);return{commonPropsWithOptions:l,defaultValue:s}}function nt(e,t){return d(e)?{defaultChecked:Z(t)}:{defaultValue:t}}var Fn=/^#\/definition\//;function _(e=[],t){let n=D(e,t);return Array.isArray(n)?n.filter(Nn).sort((r,o)=>rt(r)-rt(o)):[]}function D(e,t,n=new Map,r=new WeakSet){if(!Sn(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=>D(i,t,n,r));if(T in e&&u(e[T])){let i=e[T].replace(Fn,""),l=f(t,i);return l!==null?D(l,t,n,r):e}let o={};for(let[i,l]of Object.entries(e))o[i]=D(l,t,n,r);return r.delete(e),n.set(e,o),o}function ot(e){return Object.entries(e??{})}function rt(e){return e.order??Number.MAX_VALUE}function Sn(e){return e!==void 0&&a(e)&&Object.keys(e).length>0}function Nn(e){return ke in e?!0:Array.isArray(e[H])?e[H].length>0:!0}function it(e,t){let n={};for(let[r,o]of ot(t))n[`${e}-${r}`]=o;return n}function Cn(e){return it(Fe,e)}function In(e){return it(Se,e)}function lt(e,t){let n=Cn(e.advanced?.aria);return t&&t.length>0&&(n[Te]="true",n[Re]=`${e.name}-error`),n}function at(e){return In(e.advanced?.data)}var st={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},dt={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function ct(e,t=2){return st[e&&e in st?e:t]}function ut(e){if(e&&e in dt)return dt[e]}function Ln(e,t){let n=e.advanced?.length?.min??1;if(t){let r=f(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function ft(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===F}function mt(e,t){let n=Ln(e,t);return Array.from({length:n},(r,o)=>o)}function pt(e){return e.label??e.name}function b(e,t){return e?t?t[e]??e:e:""}function V(e,t){return{...e,...t}}import{jsx as kn}from"react/jsx-runtime";function y(e){return we(e,(t,n,r)=>kn("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}import{jsx as N,jsxs as j}from"react/jsx-runtime";function gt(e){let{fields:t=[]}=e.section,[n,r]=On(!1),o=En(()=>r(i=>!i),[]);return j("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:[N("legend",{children:j("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-slate-600 dark:text-slate-400",onClick:o,type:"button",children:[N(le,{expanded:n}),N("span",{children:y(e.section.title)})]})}),N(vn,{mode:n?"visible":"hidden",children:j("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-slate-300 pl-4 dark:border-slate-600","data-slot":"field-set-content",children:[e.section.description&&N("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:y(e.section.description)}),e.group]})})]})}import{Fragment as wn,jsx as yt,jsxs as Pn}from"react/jsx-runtime";function xt(e){return Pn(wn,{children:[e.title&&yt("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:y(e.title)}),e.description&&yt("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:y(e.description)})]})}import{jsx as Mn,jsxs as Dn}from"react/jsx-runtime";function B(e){return Dn("fieldset",{"data-slot":"field-set","data-empty":e.empty,className:"flex flex-col data-[empty=false]:gap-6",id:e.id,children:[Mn(xt,{description:e.description,title:e.title}),e.children]})}import{jsx as _n}from"react/jsx-runtime";function R(e){return _n("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 ee}from"react/jsx-runtime";function bt(e){let{fields:t=[]}=e.section,{compact:n}=V(e.style,{compact:e.section.compact}),r=ee(R,{compact:n,children:e.children});return!e.section.title&&!e.section.description?r:e.section.advanced?ee(gt,{section:e.section,group:r}):ee(B,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),title:e.section.title,children:r})}import{useAtomValue as Hn}from"jotai";import{atom as C}from"jotai";import{atomFamily as Vn}from"jotai-family";import{deepEqual as Rt}from"fast-equals";function Bn(e,t){let{[t]:n,...r}=e;return r}function Gn(e){return Vn(t=>C(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let l=i[t];(!l||!Rt(l,o))&&r(e,{...i,[t]:o})}else i[t]&&r(e,Bn(i,t))}))}function $n(e){return C(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function Un(e){return C(null,(t,n,r)=>{let i={...t(e)},l=!1;for(let s of r)i[s]&&(delete i[s],l=!0);l&&n(e,i)})}function Yn(e){return C(null,(t,n,r)=>{let o=t(e);Rt(o,r)||n(e,r)})}function Tt(e={}){let t=C(e);return{atom:t,clearAll:$n(t),clear:Un(t),bulkReport:Yn(t),report:Gn(t)}}var ht=Tt(),At=ht.atom,Po=ht.report;function Xn(e,t){return e.fields.every(n=>Ft(n,t))}function Ft(e,t){return t[e.name]?.hidden??e.hidden??!1}function Kn(e,t){return A(e)?Xn(e,t):Ft(e,t)}function St(e){let t=Hn(At);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>Kn(r,t))?null:e.children}import{jsx as Nt}from"react/jsx-runtime";function Ct(){return Nt("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:Nt("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}import{jsx as I,jsxs as It}from"react/jsx-runtime";function Lt(e){let t=_(e.sections,e.definition);return I("div",{className:"h-full w-full",children:I("form",{noValidate:e.noValidate,action:e.action,children:It(R,{children:[t.map((n,r)=>It(St,{fields:n.fields??[],children:[I(bt,{section:n,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.separator&&I(Ct,{})]},r)),e.control&&I(oe,{isPending:e.isPending,children:e.control})]})})})}import{jsx as Wn}from"react/jsx-runtime";function kt(e){return Wn("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}import{jsx as qn}from"react/jsx-runtime";function G(e){let t=y(e.text);return t?qn(kt,{children:t}):null}import{twMerge as zn}from"tailwind-merge";import{jsx as Zn,jsxs as Jn}from"react/jsx-runtime";function vt(e){let t=e.style?.showOptionalLabel??!0,n=x(e.field)||d(e.field);return Jn("label",{"data-slot":"field-label","data-normal":n,className:zn("flex w-fit items-center gap-2 text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,children:[e.children,t&&!e.field.required&&Zn("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:b("(Optional)",e.translations)})]})}import{jsx as Et,jsxs as Qn}from"react/jsx-runtime";function Ot(e){let t={context:e.context,env:e.config?.env},n=z(e.field.label,t),r=z(e.field.description,t);return Qn("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[Et(vt,{field:e.field,style:e.config?.style,translations:e.translations,children:b(n,e.translations)}),e.orientation===h&&Et(G,{text:b(r,e.translations)})]})}import{Fragment as jn,jsx as wt,jsxs as er}from"react/jsx-runtime";function Pt(e){return er(jn,{children:[e.field.name&&e.field.label&&wt(Ot,{config:e.config,context:e.context,field:e.field,orientation:e.orientation,translations:e.translations}),e.children,e.orientation===p&&e.field.description&&wt(G,{text:b(e.field.description,e.translations)})]})}function Mt(e,t){return e?t(e):null}import{jsx as Dt}from"react/jsx-runtime";function _t(e){let t=et(e.field,e.value),{commonPropsWithOptions:n,defaultValue:r}=tt(e.field,e.commonProps,t,e.value),o=nt(e.field,r);return Mt(e.config.inputs[e.field.type],i=>Dt(Pt,{config:e.config,context:e.context,field:e.field,orientation:e.orientation,translations:e.translations,children:Dt(i,{...e.ariaAttributes,...n,...e.dataAttributes,...o})}))}import{jsx as Vt}from"react/jsx-runtime";function Bt(e){return!e.errors||e.errors.length===0?null:Vt("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)=>Vt("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}import{twMerge as tr}from"tailwind-merge";import{jsx as nr}from"react/jsx-runtime";function $(e){let t=e.errors&&e.errors.length>0;return nr("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[he]:"true"},...e.disabled&&{[Ae]:"true"},"data-orientation":e.orientation,className:tr("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 rr}from"tailwind-merge";import{jsx as or}from"react/jsx-runtime";function Gt(e){return or($,{...e,orientation:p,className:rr("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as ir}from"tailwind-merge";import{jsx as lr}from"react/jsx-runtime";function $t(e){return lr($,{...e,orientation:h,className:ir("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 Ut}from"react/jsx-runtime";function Yt(e){let t=Ge(e.field),n=d(e.field),r=Xe(e.field);return e.orientation===p?Ut(Gt,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):Ut($t,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function Ht(e){if(!e.field.type)return null;let t=Ze(e.field,e.disabled),n=at(e.field),r=lt(e.field,e.errors),o={...e.field,disabled:t.disabled};return e.children({ariaAttributes:r,commonProps:t,dataAttributes:n,field:o,orientation:e.orientation})}import{twMerge as ar}from"tailwind-merge";import{jsx as te,jsxs as sr}from"react/jsx-runtime";function Xt(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{orientation:r}=V(e.style,{orientation:He(e.field)}),o=Ke(e.field,e.disabled);return sr("div",{className:ar("flex flex-col gap-3",ut(t)),children:[te(Yt,{disabled:o,errors:n,field:e.field,orientation:r,children:te(Ht,{disabled:o,errors:n,field:e.field,orientation:r,children:e.children})}),te(Bt,{errors:n,name:e.field.name})]})}import{twMerge as dr}from"tailwind-merge";import{jsx as L,jsxs as U}from"react/jsx-runtime";function Kt(e){function t(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}let n=e.canRemove&&e.onRemove!=null&&L("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:dr("rounded p-1 text-xl text-slate-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500 dark:hover:text-red-400"),onClick:t,type:"button",children:L("span",{"aria-hidden":"true",children:"\xD7"})});return e.isMultiField?U("div",{className:"rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[U("div",{className:"mb-3 flex items-center justify-between",children:[U("span",{className:"text-sm font-medium text-slate-400 dark:text-slate-500",children:[e.label," ",e.index+1]}),n]}),L(R,{children:e.children})]}):U("div",{className:"flex items-start gap-2",children:[L(R,{children:e.children}),n&&L("div",{className:"shrink-0",children:n})]})}import{jsx as cr}from"react/jsx-runtime";function Wt(e){let t=pt(e.field),n=ft(e.field);return mt(e.field,e.value).map(r=>cr(Kt,{index:r,isMultiField:n,label:t,children:e.children(r)},r))}import{jsx as ur}from"react/jsx-runtime";function qt(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return ur(B,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}import{jsx as zt}from"react/jsx-runtime";function Zt({children:e,field:t,value:n}){return zt(qt,{field:t,children:zt(Wt,{field:t,value:n,children:e})})}import{twMerge as fr}from"tailwind-merge";import{jsx as Jt}from"react/jsx-runtime";function Qt(e){let t=ct(e.column?.advanced?.cols);return Jt("div",{className:"flex w-full flex-col gap-4",children:Jt("div",{className:fr("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children})})}import{Fragment as pr}from"react";import{jsx as mr}from"react/jsx-runtime";function jt(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>P(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:A(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return mr(k,{children:e.children,components:e.components,disabled:e.disabled,fields:t,style:e.style,value:e.value})}import{jsx as v,jsxs as gr}from"react/jsx-runtime";function k(e){let{field:t,list:n}=e.components;return _(e.fields).map((r,o)=>gr(pr,{children:[A(r)&&v(Qt,{column:r,children:v(k,{...e,fields:r.fields})}),P(r)&&v(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),$e(r)&&v(n,{field:r,value:e.value,children:i=>v(jt,{children:e.children,components:e.components,disabled:e.disabled,field:r,index:i,style:e.style,value:e.value})})]},o))}import{jsx as yr}from"react/jsx-runtime";function en(e){return n=>yr(k,{...n,components:e})}var tn=en({field:Xt,list:Zt});import{jsx as ne}from"react/jsx-runtime";function re(e){let t=e.translations?.[e.lang??""];return ne(Lt,{config:e.config,control:e.children,definition:e.definition,readOnly:e.readOnly,sections:e.sections,children:({disabled:n,fields:r})=>ne(tn,{disabled:n,fields:r,style:e.config.style,children:o=>ne(_t,{...o,config:e.config,context:e.context,translations:t,value:e.value})})})}import{Suspense as xr}from"react";import{jsx as nn}from"react/jsx-runtime";function br(e){return nn(xr,{fallback:nn(re,{config:e.config,sections:e.sections,readOnly:!0}),children:e.children})}export{br as Fallback,re as Form};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-luna-form",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.30",
|
|
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",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"react": "^19.0.0",
|
|
25
25
|
"react-dom": "^19.0.0",
|
|
26
26
|
"swr": "^2.0.0",
|
|
27
|
-
"tailwind-merge": "^3.
|
|
27
|
+
"tailwind-merge": "^3.5.0",
|
|
28
28
|
"zod": "^4.0.0"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"eslint-plugin-react": "7.37.5",
|
|
34
34
|
"eslint-plugin-react-hooks": "7.0.1",
|
|
35
35
|
"eslint-plugin-react-refresh": "0.5.2",
|
|
36
|
-
"@luna-form/core": "0.0.
|
|
36
|
+
"@luna-form/core": "0.0.30"
|
|
37
37
|
},
|
|
38
38
|
"license": "Apache-2.0",
|
|
39
39
|
"repository": {
|