react-luna-form 0.0.19 → 0.0.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- "use strict";var to=Object.create;var ge=Object.defineProperty;var no=Object.getOwnPropertyDescriptor;var ro=Object.getOwnPropertyNames;var oo=Object.getPrototypeOf,io=Object.prototype.hasOwnProperty;var ao=(e,t)=>{for(var n in t)ge(e,n,{get:t[n],enumerable:!0})},ct=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of ro(t))!io.call(e,o)&&o!==n&&ge(e,o,{get:()=>t[o],enumerable:!(r=no(t,o))||r.enumerable});return e};var lo=(e,t,n)=>(n=e!=null?to(oo(e)):{},ct(t||!e||!e.__esModule?ge(n,"default",{value:e,enumerable:!0}):n,e)),so=e=>ct(ge({},"__esModule",{value:!0}),e);var pi={};ao(pi,{Form:()=>Kr});module.exports=so(pi);var Be=require("react/jsx-runtime");function ut(e){return!e.errors||e.errors.length===0?null:(0,Be.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,Be.jsx)("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var ye="input",dt="input/email",ft="input/number";var mt="textarea",pt="radio",gt="checkbox",yt="select",bt="select/month",xt="select/year";var Ge="column";var Tt="label",H="value",be="options",Ye="email",ht="number",Rt="password",St="tel",re="text",At="aria-errormessage",Ct="aria-invalid",Et="data-invalid",Ft="data-readonly",Nt="aria",kt="data",xe="min",Te="max",It="minLength",vt="maxLength",$="$ref";var wt="source",Pt="state",he="http://luna.internal",w="vertical",Z="horizontal";function c(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function Re(e){return e==null||e===""}function P(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"}function E(e){return typeof e=="string"}function Ot(e){return c(e)&&"url"in e}var co=/[^/]+$/;function Dt(e,t=[],n=H){if(Array.isArray(t))return t.find(r=>{let o=Xe(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}}function Xe(e,t=H){if(e!=null){if(P(e))return e;if(c(e)){let n=uo(e,t);if(P(n))return n}}}function uo(e,t){let n=h(e,t);if(P(n))return n}function Vt(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||!c(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(c(r)&&o in r)r=r[o];else return null;return r}function Lt(e,t={label:Tt,value:H}){return e.map(n=>{if(c(n)){let r=h(n,t.label),o=h(n,t.value);if(P(r)&&P(o))return{label:`${r}`,value:`${o}`}}return n})}function Mt(e=re){if(e){let t=e.match(co);if(t){let[n]=t;if(n!==ye)return n.trim().toLowerCase()}}return re}function _t(e){let t={};for(let n of e.keys()){let r=e.getAll(n);t[n]=r.length>1?r:r[0]}return t}var fo=/\[([^\]]+)\]\(([^)]+)\)/g;function R(e,t={}){if(E(e))return mo(e,t);if(Array.isArray(e))return e.map(n=>R(n,t));if(c(e)){let n={};for(let r in e)n[r]=R(e[r],t);return n}return e}function V(e){return E(e)?/{([^}]+)}/.test(e):Array.isArray(e)?e.some(t=>V(t)):c(e)?Object.values(e).some(t=>V(t)):!1}function mo(e,t={}){return e.replace(/{([^}]+)}/g,(n,r)=>{let o=r.includes(".")?h(t,r):t[r];return P(o)?String(o):n})}function Ut(e,t){if(!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=fo.exec(e))!==null;){let[a,l,s]=n,u=n.index;o=!0,u>r&&i.push(e.substring(r,u));let d=t?t(u,s,l):a;i.push(d),r=u+a.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var oe={error:(...e)=>{He()&&!$e()&&Se().error("[Luna Form]",...e)},warn:(...e)=>{He()&&!$e()&&Se().warn("[Luna Form]",...e)},info:(...e)=>{He()&&!$e()&&Se().info("[Luna Form]",...e)}},He=()=>typeof Se()<"u",$e=()=>!0,Se=()=>globalThis.console;function qt(e=[],t){let n=[],r=[],o=[];e.forEach(i=>{i.action===H&&n.push(i),i.action===wt&&r.push(i),i.action===Pt&&o.push(i)}),t({sources:r,states:o,values:n})}function Bt(e=null,t=[],n){t.forEach(r=>{let{target:o,source:i}=r;if(!e){n(o,void 0);return}if(Ot(i)){let a=R(i.url,e),l=i.body?R(i.body,e):i.body;n(o,{...i,url:a,body:l})}})}var ie={eq:xo,gt:So,gte:Ao,in:ho,lt:Co,lte:Eo,neq:To,nin:Ro},po=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,Gt=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function go(e){return typeof e=="string"&&po.test(e)}function yo(e){return typeof e=="string"&&Gt.test(e)}function bo(e){let t=e.match(Gt);if(t){let[,n,r,o,i,a,l]=t;return new Date(Number(o),Number(r)-1,Number(n),Number(i??0),Number(a??0),Number(l??0)).getTime()}return NaN}function O(e){return go(e)?new Date(e).getTime():yo(e)?bo(e):Number(e)}function xo(e,t){return e===t}function To(e,t){return e!==t}function ho(e,t){return Array.isArray(t)&&t.includes(String(e))}function Ro(e,t){return Array.isArray(t)&&!t.includes(String(e))}function So(e,t){return O(e)>O(t)}function Ao(e,t){return O(e)>=O(t)}function Co(e,t){return O(e)<O(t)}function Eo(e,t){return O(e)<=O(t)}function Yt(e=null,t=[],n){t.forEach(r=>{let{target:o,state:i,when:a}=r;if(!e){n(o);return}let l=Fo(e,a);n(o,l?i:void 0)})}function Fo(e,t){if(t===void 0)return!0;if(E(t))return Ze(e,"value")===t;if(Array.isArray(t)){let n=Ze(e,"value");return t.includes(String(n))}return No(e,t)}function No(e=null,t){let n=Ze(e,t.field??"value"),{operator:r="eq",value:o}=t,i=ie[r];return i?i(n,o):!1}function Ze(e,t){return c(e)?t.includes(".")?h(e,t):e[t]:e}function Xt(e=null,t=[],n){t.forEach(r=>{Object.entries(r.value).forEach(([o,i])=>{n(o,e?R(i,e):void 0)})})}var Ae=e=>S(bt)(e),Ce=e=>S(xt)(e),y=S(gt),We=S(ye),F=S(pt),b=S(yt),Ke=S(mt),Ht=S(re,Ye,Rt,St),$t=S(dt,Ye),Ee=S(ft,ht);function Fe(e){return F(e)||y(e)}function Zt(e){return e.type===Ge}function Wt(e){return e.type!==Ge}function Kt(e){return b(e)||F(e)}function zt(e){return We(e)||Ke(e)}function ae(e){return e!=null&&e!==""}function S(...e){return t=>{let n=E(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function jt(e,t={}){if(b(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&c(n))return[n]}}function Jt(e){return F(e)||y(e)?Z:e.advanced?.orientation??w}function Qt(e,t){let n=e.readonly??!1;return t||n}function en(e){if(F(e)||b(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||c(t)&&!($ in t))return t}}function tn(e,t){let n=en(e);return n||jt(e,t)}function ko(e,t){let n=c(t)&&e.name in t?t[e.name]:t;return Xe(n,e.advanced?.entity)}function Io(e,t,n){return Kt(e)&&Array.isArray(n)?{...t,[be]:n}:t}function vo(e,t,n){if(e.required&&!ae(n)&&b(e)&&e.advanced?.preselected!==!1&&be in t){let r=t[be];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function wo(e,t){return b(e)&&Array.isArray(t)?Lt(t,e.advanced?.options):t}function nn(e,t,n,r){let o=ko(e,r),i=Array.isArray(n)?wo(e,n):n,a=Io(e,t,i),l=vo(e,a,o);return{commonPropsWithOptions:a,defaultValue:l}}function rn(e,t){return y(e)?{checked:ae(t)?t:!1}:{value:t??""}}var Po=/^#\/definition\//;function ke(e=[],t){let n=Ne(e,t);return Array.isArray(n)?n.sort((r,o)=>on(r)-on(o)):[]}function Ne(e,t,n=new Map,r=new WeakSet){if(!Oo(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($ in e&&E(e[$])){let i=e[$].replace(Po,""),a=h(t,i);return a!==null?Ne(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=Ne(a,t,n,r);return r.delete(e),n.set(e,o),o}function an(e){return Object.entries(e??{})}function on(e){return e.order??Number.MAX_VALUE}function Oo(e){return e!==void 0&&c(e)&&Object.keys(e).length>0}function ln(e,t){let n={};for(let[r,o]of an(t))n[`${e}-${r}`]=o;return n}function sn(e){return ln(Nt,e)}function cn(e){return ln(kt,e)}var un={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},dn={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function fn(e,t=2){return un[e&&e in un?e:t]}function mn(e){if(e&&e in dn)return dn[e]}var Do=/^\d+$/;function pn(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function gn(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 ze(){return new Date().getFullYear()}function je(e,t){if(typeof e=="number")return e;let n=t??ze(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,a]=o,l=parseInt(a,10);if(!isNaN(l))return i==="+"?n+l:n-l}return n}return Do.test(r)?parseInt(r,10):n}var f=require("zod");function m(e,t){return e?t?t[e]??e:e:""}var Vo=[[Ee,qo],[$t,Lo],[Ce,Bo],[Ae,Go],[y,Mo],[F,_o]];function bn(e,t=[],n){let r=f.z.object(e);return t.length===0?r:$o(r,t,n)}function xn(e){let t={},n=f.z.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function Tn(e,t){for(let[n,r]of Vo)if(n(e))return r(e,t);return Uo(e,t)}function Lo(e,t){let n=f.z.string().trim();if(e.required){let r=n.min(1,e.validation?.required).pipe(yn(e,t));return f.z.preprocess(o=>Re(o)?"":o,r)}return n.pipe(yn(e,t)).or(f.z.literal("")).nullable()}function Mo(e,t){let n=f.z.coerce.boolean();if(e.required){let r=e.validation?.required?m(e.validation?.required,t):void 0;return n=n.refine(o=>o===!0,{message:r}),f.z.preprocess(o=>o===null?!1:o,n)}return n.nullable()}function _o(e,t){let n=f.z.coerce.string();if(e.required){let r=e.validation?.required?m(e.validation?.required,t):void 0;return n=n.min(1,r),f.z.preprocess(o=>Re(o)?"":o,n)}return n.or(f.z.literal("")).nullable()}function Uo(e,t){let n=f.z.coerce.string().trim();return n=hn(n,e,t),e.required?(n=Rn(n,e,t),f.z.preprocess(r=>Re(r)?"":r,n)):n.nullable()}function qo(e,t){let n=f.z.coerce.number().int();return n=hn(n,e,t),e.required?(n=Rn(n,e,t),f.z.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function Bo(e,t){if(e.required){let n=e.validation?.required?m(e.validation?.required,t):void 0;return f.z.preprocess(Yo,f.z.coerce.number({message:n}).int())}return f.z.coerce.number().int().nullable()}function Go(e,t){let n=e.validation?.required?m(e.validation?.required,t):void 0,r=f.z.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function Yo(e){return e===null||e===""?void 0:e}function yn(e,t){let n=e.validation?.email?m(e.validation?.email,t):void 0;return f.z.email(n)}function hn(e,t,n){return e=Xo(e,t,n),e=Ho(e,t,n),e}function Rn(e,t,n){let r=t.advanced?.length?.min;if(r===void 0||r<1){let o=t.validation?.required?m(t.validation?.required,n):void 0;return e.min(1,o)}return e}var Xo=(e,t,n)=>Sn(e,t,xe,n),Ho=(e,t,n)=>Sn(e,t,Te,n);function Sn(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?m(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function $o(e,t=[],n){let r=Wo(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:l}of r)Zo(o,a,l)||i.addIssue({code:"custom",message:m(l.message,n),path:[a]})})}function Zo(e,t,n){let r=n.operator??"eq",o=ie[r];return o?o(e[t],e[n.field]):!1}function Wo(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 An(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let l=a.operator??"eq",s=ie[l];s&&!s(e,n(a.field))&&a.message&&o.push(m(a.message,r))}return o}function Cn(e,t){if(!t||!zo(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||Ko(r);return t.some(a=>!(a.protocol&&a.protocol!==r||a.hostname&&a.hostname!==o||a.port!==void 0&&String(a.port)!==i))}catch{return!1}}function Ko(e){return e==="https"?"443":"80"}function zo(e){return/^(https?:)?\/\//.test(e)}function En(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,he);new URL(t,he).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(he,""):o}catch{return t||e}}function Fn(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=En(t.url,n.url),o=jo(t,n),i=Jo(t,n);return{...t,...n,url:r,body:o,headers:i}})}function jo(e,t){return c(t.body)&&c(e?.body)?{...e.body,...t.body}:t.body??e?.body}function Jo(e,t){return c(t.headers)&&c(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function Ie(e,t){return{...e,...t}}var Nn=require("tailwind-merge"),kn=require("react/jsx-runtime");function ve(e){let t=e.errors&&e.errors.length>0;return(0,kn.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Et]:"true"},...e.disabled&&{[Ft]:"true"},"data-orientation":e.orientation,className:(0,Nn.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&&"flex-row-reverse!","data-[clickable=true]:has-[>[data-slot=field-content]]:[&>:first-child]:mt-px",mn(e.cols),e.className),children:e.children})}var In=require("tailwind-merge"),wn=require("react/jsx-runtime");function vn(e){return(0,wn.jsx)(ve,{...e,orientation:w,className:(0,In.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var Pn=require("tailwind-merge"),Dn=require("react/jsx-runtime");function On(e){return(0,Dn.jsx)(ve,{...e,orientation:Z,className:(0,Pn.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 Je=require("react/jsx-runtime");function Vn(e){let t=Fe(e.field),n=y(e.field);return e.orientation===w?(0,Je.jsx)(vn,{cols:e.cols,disabled:e.disabled,errors:e.errors,isCheckbox:n,isClickable:t,children:e.children}):(0,Je.jsx)(On,{cols:e.cols,disabled:e.disabled,errors:e.errors,isCheckbox:n,isClickable:t,children:e.children})}var we=ze();function Ln(e){if(b(e))return Qo(e)}function Qo(e){if(Ae(e))return pn();if(Ce(e)){let t=e.advanced?.length?.min??we,n=e.advanced?.length?.max??we+5;return gn(je(t,we),je(n,we))}}function Mn(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return We(e)?{...n,...ei(e)}:b(e)?{...n,...ti(e)}:Ke(e)?{...n,...ni(e)}:n}function ei(e){let t=Mt(e.type),n={...e,type:t};return{..._n(e),...ri(n),...Ht(n)?Un(n):{},type:t}}function ti(e){let t=Ln(e);return t?{options:t}:{}}function ni(e){return{..._n(e),...Un(e)}}function _n(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function ri(e){return Ee(e)?oi(e):{}}function Un(e){return qn(e,{min:It,max:vt})}function oi(e){return qn(e,{min:xe,max:Te})}function qn(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=sn(e.advanced?.aria);return t&&t.length>0&&(n[Ct]="true",n[At]=`${e.name}-error`),n}function Gn(e){return cn(e.advanced?.data)}function Yn(e){if(!e.field.type)return null;let t=Mn(e.field,e.disabled),n=Gn(e.field),r=Bn(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 W=require("react/jsx-runtime");function Xn(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{orientation:r}=Ie(e.style,{orientation:Jt(e.field)}),o=Qt(e.field,e.disabled);return(0,W.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,W.jsx)(Vn,{cols:t,disabled:o,errors:n,field:e.field,orientation:r,children:(0,W.jsx)(Yn,{disabled:o,errors:n,field:e.field,orientation:r,children:e.children})}),(0,W.jsx)(ut,{errors:n,name:e.field.name})]})}var D=require("jotai"),Qe=require("jotai-family"),Pe=require("fast-equals");function ii(e){return(0,Qe.atomFamily)(t=>(0,D.atom)(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];(!a||!(0,Pe.deepEqual)(a,o))&&r(e,{...i,[t]:o})}else if(i[t]){let{[t]:a,...l}=i;r(e,l)}}))}function ai(e){return(0,D.atom)(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function li(e){return(0,D.atom)(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)i[l]&&(delete i[l],a=!0);a&&n(e,i)})}function si(e){return(0,D.atom)(null,(t,n,r)=>{let o=t(e);(0,Pe.deepEqual)(o,r)||n(e,r)})}function Hn(e,t={}){let{merge:n,validateTarget:r}=t;return(0,Qe.atomFamily)(o=>(0,D.atom)(i=>{let a=i(e)[o];if(a&&n)return n(Object.values(a))},(i,a,l,s)=>{if(r&&!r(l))return;let u=i(e),d={...u[l]??{}};if(s!=null){let x=d[o];(!x||!(0,Pe.deepEqual)(x,s))&&(d[o]=s,a(e,{...u,[l]:d}))}else if(d[o])if(delete d[o],Object.keys(d).length===0){let{[l]:x,...I}=u;a(e,I)}else a(e,{...u,[l]:d})}))}function $n(e){return(0,D.atom)(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)i[l]&&(delete i[l],a=!0);for(let l in i){let s={...i[l]},u=!1;for(let d of r)s[d]&&(delete s[d],u=!0,a=!0);u&&(Object.keys(s).length===0?delete i[l]:i[l]=s)}a&&n(e,i)})}function K(e={}){let t=(0,D.atom)(e);return{atom:t,clearAll:ai(t),clear:li(t),bulkReport:si(t),report:ii(t)}}var et=K(),Zn=et.clear,Wn=et.bulkReport,Oe=et.report;var Kn=require("jotai"),jn=require("react/jsx-runtime");function zn(e){return n=>{let r=(0,Kn.useAtomValue)(Oe(n.field.name));return(0,jn.jsx)(e,{...n,errors:r?{[n.field.name]:r}:void 0})}}var Jn=K(),Qn=Jn.atom,er=Jn.report;var tr=require("jotai"),rr=require("react/jsx-runtime");function nr(e){return n=>{let r=(0,tr.useAtomValue)(er(n.field.name));if(r?.hidden??n.field.hidden??!1)return null;let i=r?.disabled??n.disabled;return(0,rr.jsx)(e,{...n,disabled:i})}}var or=nr(zn(Xn));var ar=require("react/jsx-runtime");function ir(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,ar.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var lr=require("react/jsx-runtime");function le(e){return(0,lr.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 sr=require("react/jsx-runtime");function se(e){return Ut(e,(t,n,r)=>(0,sr.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}var L=require("react/jsx-runtime");function cr(e){return(0,L.jsxs)(L.Fragment,{children:[e.title&&(0,L.jsx)("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:se(e.title)}),e.description&&(0,L.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:se(e.description)})]})}var z=require("react/jsx-runtime");function ur(e){let t=e.section.fields||[],{compact:n}=Ie(e.style,{compact:e.section.compact});return!e.section.title&&!e.section.description?(0,z.jsx)(le,{compact:n,children:e.children}):(0,z.jsxs)("fieldset",{"data-slot":"field-set","data-empty":t.length===0,className:"flex flex-col data-[empty=false]:gap-6",id:e.section.id?.toString(),children:[(0,z.jsx)(cr,{description:e.section.description,title:e.section.title}),(0,z.jsx)(le,{compact:n,children:e.children})]})}var fr=require("react");var tt=require("react/jsx-runtime");function dr(){return(0,tt.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,tt.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}var N=require("react/jsx-runtime");function mr(e){let t=ke(e.sections,e.definition);return(0,N.jsx)("div",{className:"h-full w-full",children:(0,N.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,N.jsxs)(le,{children:[t.map((n,r)=>(0,N.jsxs)(fr.Fragment,{children:[(0,N.jsx)(ur,{section:n,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.separator&&(0,N.jsx)(dr,{})]},r)),e.control&&(0,N.jsx)(ir,{isPending:e.isPending,children:e.control})]})})})}var gr=require("react/jsx-runtime");function pr(e){return(0,gr.jsx)("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}var yr=require("react/jsx-runtime");function De(e){let t=se(e.text);return t?(0,yr.jsx)(pr,{children:t}):null}var br=require("tailwind-merge"),Ve=require("react/jsx-runtime");function xr(e){let t=F(e.field)||y(e.field);return(0,Ve.jsxs)("label",{"data-slot":"field-label","data-normal":t,className:(0,br.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,!e.field.required&&(0,Ve.jsx)("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:"(Optional)"})]})}var ce=require("react/jsx-runtime");function Tr(e){let t=V(e.field.label)?R(e.field.label,{context:e.context,env:e.config?.env}):e.field.label,n=V(e.field.description)?R(e.field.description,{context:e.context,env:e.config?.env}):e.field.description;return(0,ce.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,ce.jsx)(xr,{field:e.field,children:m(t,e.translations)}),e.orientation===Z&&(0,ce.jsx)(De,{text:m(n,e.translations)})]})}var M=require("react/jsx-runtime");function hr(e){return(0,M.jsxs)(M.Fragment,{children:[e.field.name&&e.field.label&&(0,M.jsx)(Tr,{config:e.config,context:e.context,field:e.field,orientation:e.orientation,translations:e.translations}),e.children,e.orientation===w&&e.field.description&&(0,M.jsx)(De,{text:m(e.field.description,e.translations)})]})}function Le(e,t){return e?t(e):null}var A=require("react");var Rr=require("jotai");var ci=e=>{let t=Fn(e);if(t)return t},ui=e=>e.trim()!=="",Sr=(0,Rr.atom)({}),Ar=Hn(Sr,{merge:ci,validateTarget:ui}),Cr=$n(Sr);var Nr=require("jotai");var Er=lo(require("swr"),1);function Fr(e=null,t,n=!1){let{data:r,error:o}=(0,Er.default)(di(e,t,n),t.fetcher.provider);if(o&&oe.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return Vt(r,e.namespace)}return null}function di(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!V(e.url)){if(Cn(e.url,t.fetcher.remotePatterns))return e;oe.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function kr(e,t,n){let r=tn(e,n),[o,i]=(0,Nr.useAtom)(Ar(e.name));return[Fr(o??r,t,e.disabled),i]}var _=require("react");function Ir(e,t,n,r){let{name:o}=e,i=(0,_.useMemo)(()=>Tn(e,r),[e,r]),a=(0,_.useEffectEvent)(s=>{s&&t(s,i,e)}),l=(0,_.useEffectEvent)(s=>{s&&n(s)});return(0,_.useEffect)(()=>(a(o),()=>{l(o)}),[o]),i}var Q=require("jotai");var j=require("react");function vr(){let e=(0,j.useRef)(null);(0,j.useEffect)(()=>()=>{e.current&&clearTimeout(e.current)},[]);function t(){e.current&&(clearTimeout(e.current),e.current=null)}return(0,j.useCallback)((r,o)=>{t(),e.current=setTimeout(r,o)},[])}var Me=K(),wr=Me.atom,Pr=Me.clearAll,Or=Me.clear,_e=Me.report;var Dr=require("jotai"),J=require("react");function Vr(e,t){let{name:n}=e,r=(0,J.useRef)(!1),[o,i]=(0,Dr.useAtom)(_e(n));(0,J.useEffect)(()=>{if(!t||!(n in t))return;let l=t[n];ae(l)&&(r.current=!0,i(l))},[n,t,i]);let a=(0,J.useCallback)(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:a,value:o}}var nt=require("react/jsx-runtime");function Lr(e){let t=e.field.advanced?.entity,n=(0,Q.useStore)(),r=vr(),[,o]=(0,A.useTransition)(),{setValue:i,shouldSkipOnChange:a,value:l}=Vr(e.field,e.value),s=zt(e.field),u=Fe(e.field),d=(0,Q.useSetAtom)(wr),x=(0,Q.useSetAtom)(Qn),I=(0,Q.useSetAtom)(Oe(e.field.name)),[U,de]=kr(e.field,e.config,l),fe=Ir(e.field,e.onMount,e.onUnmount,e.translations),{commonPropsWithOptions:te,defaultValue:v}=nn(e.field,{...e.commonProps,placeholder:m(e.commonProps.placeholder,e.translations)},U,l),q=(0,A.useRef)(l);q.current=l;let p=(0,A.useRef)(e.translations);p.current=e.translations;let zr=rn(e.field,v),me=(0,A.useCallback)(g=>{let B=fe.safeParse(g).error?.issues.map(ne=>ne.message)??[],G=e.field.validation?.custom,qe=G?An(g,G,ne=>n.get(_e(ne)),p.current):[];I([...B,...qe])},[e.field.validation?.custom,fe,I,n]),st=(0,A.useCallback)((g,T)=>{if(s){r(()=>{T({value:g})},500);return}let B=Dt(g,U,t);T(B)},[U,t,s,r]),jr=(0,A.useCallback)(g=>{let T=g.target.value;if(a()&&(!s||T===q.current))return;i(T),e.config.validation.change&&me(T);let B=e.field.event?.change;B&&st(T,G=>{qt(B,({sources:qe,states:ne,values:Qr})=>{o(()=>{Bt(G,qe,(Y,X)=>de(Y,X)),Yt(G,ne,(Y,X)=>{x(pe=>{if(X)return{...pe,[Y]:X};let{[Y]:gi,...eo}=pe;return eo})}),Xt(G,Qr,(Y,X)=>{d(pe=>({...pe,[Y]:X}))})})})})},[st,s,e.config.validation.change,e.field.event?.change,x,de,i,d,a,me]),Jr=(0,A.useCallback)(g=>{if(!u){let T=g.target.value;e.config.validation.blur&&me(T)}},[u,e.config.validation.blur,me]);return Le(e.config.inputs[e.field.type],g=>(0,nt.jsx)(hr,{config:e.config,context:e.context,field:e.field,orientation:e.orientation,translations:e.translations,children:(0,nt.jsx)(g,{...te,...e.ariaAttributes,...e.dataAttributes,...zr,onBlur:Jr,onChange:jr})}))}var Mr=require("tailwind-merge"),rt=require("react/jsx-runtime");function _r(e){let t=fn(e.column?.advanced?.cols);return(0,rt.jsx)("div",{className:"flex w-full flex-col gap-4",children:(0,rt.jsx)("div",{className:(0,Mr.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children})})}var Ur=require("react"),ee=require("react/jsx-runtime");function ot(e){let{column:t,field:n}=e.components;return ke(e.fields).map((r,o)=>(0,ee.jsxs)(Ur.Fragment,{children:[Zt(r)&&(0,ee.jsx)(t,{column:r,children:(0,ee.jsx)(ot,{...e,fields:r.fields})}),Wt(r)&&(0,ee.jsx)(n,{disabled:e.disabled,field:r,style:e.style,children:e.children})]},o))}var Br=require("react/jsx-runtime");function qr(e){return n=>(0,Br.jsx)(ot,{...n,components:{column:_r,field:e}})}var at=require("jotai");var ue=require("react");function Yr(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0}=n??{},a=(0,at.useSetAtom)(Wn),l=(0,at.useSetAtom)(Pr),s={data:null,error:null,success:!1},[u,d,x]=(0,ue.useActionState)(async(I,U)=>{let[de,fe]=e(),te=bn(de,fe,n?.translations);if(i===!1)return t?await t(U,te):I;let v=_t(U),q=te.safeParse(v);if(!q.success){let p=xn(q.error);return(0,ue.startTransition)(()=>{a(p)}),it(v,{description:"Please correct the errors and try again.",details:[],title:"There were validation errors submitting the form."})}if(t)try{let p=await t(v,te);return p.success?(r?.(p.data),o||(0,ue.startTransition)(()=>{l()}),Gr(v,o)):it(v,p.error)}catch(p){return oe.error("Error executing form action:",p),it(v,{title:"An unexpected error occurred submitting the form.",details:fi(p)})}return Gr(q.data,o)},s);return[d,u,x]}function fi(e){let t=e instanceof Error?e.message:["Unknown error"];return Array.isArray(t)?t:[t]}function Gr(e,t=!1){return{data:t?e:null,error:null,success:!0}}function it(e,t){return{data:e,error:t,success:!1}}var k=require("react");var Xr=require("react"),Ue=require("jotai");function Hr(){let e=(0,Ue.useSetAtom)(Zn),t=(0,Ue.useSetAtom)(Cr),n=(0,Ue.useSetAtom)(Or);return(0,Xr.useCallback)(r=>{let o=Array.isArray(r)?r:[r];e(o),t(o),n(o)},[e,t,n])}function $r(){let e=Hr(),t=(0,k.useRef)({}),n=(0,k.useRef)([]),r=(0,k.useRef)(new Set),o=(0,k.useCallback)((l,s,u)=>{l in t.current||(t.current[l]=s,n.current.push(u))},[]),i=(0,k.useCallback)(l=>{t.current[l]&&(delete t.current[l],n.current=n.current.filter(s=>s.name!==l),r.current.add(l),(0,k.startTransition)(()=>{r.current.size>0&&(e(Array.from(r.current)),r.current.clear())}))},[e]);function a(){return[t.current,n.current]}return[a,o,i]}var C=require("react/jsx-runtime"),mi=qr(or);function Zr(e){let t=e.translations?.[e.lang??""],[n,r,o]=$r(),[i,a,l]=Yr(n,e.action,{onSuccess:e.onSuccess,validation:e.config.validation.submit,translations:t}),s=e.config.validation.showError&&!a.success&&a.error,u=a.data??e.value;return(0,C.jsxs)(C.Fragment,{children:[s&&Le(e.config.alert,d=>(0,C.jsx)("div",{className:"mb-4 w-full",children:(0,C.jsx)(d,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),(0,C.jsx)(mr,{action:i,config:e.config,control:e.children,definition:e.definition,isPending:l,noValidate:!0,readOnly:e.readOnly,sections:e.sections,children:({disabled:d,fields:x})=>(0,C.jsx)(mi,{disabled:d,fields:x,style:e.config.style,children:I=>(0,C.jsx)(Lr,{...I,config:e.config,context:e.context,onMount:r,onUnmount:o,translations:t,value:u})})})]})}var Wr=require("jotai"),lt=require("react/jsx-runtime");function Kr(e){return(0,lt.jsx)(Wr.Provider,{children:(0,lt.jsx)(Zr,{...e})})}
1
+ "use strict";var no=Object.create;var ye=Object.defineProperty;var ro=Object.getOwnPropertyDescriptor;var oo=Object.getOwnPropertyNames;var io=Object.getPrototypeOf,ao=Object.prototype.hasOwnProperty;var lo=(e,t)=>{for(var n in t)ye(e,n,{get:t[n],enumerable:!0})},dt=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of oo(t))!ao.call(e,o)&&o!==n&&ye(e,o,{get:()=>t[o],enumerable:!(r=ro(t,o))||r.enumerable});return e};var so=(e,t,n)=>(n=e!=null?no(io(e)):{},dt(t||!e||!e.__esModule?ye(n,"default",{value:e,enumerable:!0}):n,e)),co=e=>dt(ye({},"__esModule",{value:!0}),e);var xi={};lo(xi,{Form:()=>Wr});module.exports=co(xi);var Ye=require("react/jsx-runtime");function ft(e){return!e.errors||e.errors.length===0?null:(0,Ye.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,Ye.jsx)("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var be="input",mt="input/email",pt="input/number";var gt="textarea",yt="radio",bt="checkbox",xt="select",ht="select/month",Tt="select/year";var Xe="column";var Rt="label",H="value",xe="options",He="email",St="number",At="password",Ct="tel",ie="text",Et="aria-errormessage",Ft="aria-invalid",Nt="data-invalid",kt="data-readonly",It="aria",vt="data",he="min",Te="max",wt="minLength",Pt="maxLength",q="$ref";var Ot="source",Vt="state",Re="http://luna.internal",w="vertical",$="horizontal";function d(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function Se(e){return e==null||e===""}function P(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"}function E(e){return typeof e=="string"}function Dt(e){return d(e)&&"url"in e}var uo=/[^/]+$/;function Lt(e,t=[],n=H){if(Array.isArray(t))return t.find(r=>{let o=qe(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}}function qe(e,t=H){if(e!=null){if(P(e))return e;if(d(e)){let n=fo(e,t);if(P(n))return n}}}function fo(e,t){let n=T(e,t);if(P(n))return n}function Mt(e,t){if(Array.isArray(e))return e;let n=T(e,t);return Array.isArray(n)?n:null}function T(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 _t(e,t={label:Rt,value:H}){return e.map(n=>{if(d(n)){let r=T(n,t.label),o=T(n,t.value);if(P(r)&&P(o))return{label:`${r}`,value:`${o}`}}return n})}function Ut(e=ie){if(e){let t=e.match(uo);if(t){let[n]=t;if(n!==be)return n.trim().toLowerCase()}}return ie}function Bt(e){let t={};for(let n of e.keys()){let r=e.getAll(n);t[n]=r.length>1?r:r[0]}return t}var mo=/\[([^\]]+)\]\(([^)]+)\)/g;function R(e,t={}){if(E(e))return po(e,t);if(Array.isArray(e))return e.map(n=>R(n,t));if(d(e)){let n={};for(let r in e)n[r]=R(e[r],t);return n}return e}function D(e){return E(e)?/{([^}]+)}/.test(e):Array.isArray(e)?e.some(t=>D(t)):d(e)?Object.values(e).some(t=>D(t)):!1}function po(e,t={}){return e.replace(/{([^}]+)}/g,(n,r)=>{let o=r.includes(".")?T(t,r):t[r];return P(o)?String(o):n})}function Gt(e,t){if(!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=mo.exec(e))!==null;){let[a,l,s]=n,c=n.index;o=!0,c>r&&i.push(e.substring(r,c));let u=t?t(c,s,l):a;i.push(u),r=c+a.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var ae={error:(...e)=>{$e()&&!Ze()&&Ae().error("[Luna Form]",...e)},warn:(...e)=>{$e()&&!Ze()&&Ae().warn("[Luna Form]",...e)},info:(...e)=>{$e()&&!Ze()&&Ae().info("[Luna Form]",...e)}},$e=()=>typeof Ae()<"u",Ze=()=>!0,Ae=()=>globalThis.console;function Yt(e=[],t){let n=[],r=[],o=[];e.forEach(i=>{i.action===H&&n.push(i),i.action===Ot&&r.push(i),i.action===Vt&&o.push(i)}),t({sources:r,states:o,values:n})}function Xt(e=null,t=[],n){t.forEach(r=>{let{target:o,source:i}=r;if(!e){n(o,void 0);return}if(Dt(i)){let a=R(i.url,e),l=i.body?R(i.body,e):i.body;n(o,{...i,url:a,body:l})}})}var le={eq:ho,gt:Ao,gte:Co,in:Ro,lt:Eo,lte:Fo,neq:To,nin:So},go=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,Ht=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function yo(e){return typeof e=="string"&&go.test(e)}function bo(e){return typeof e=="string"&&Ht.test(e)}function xo(e){let t=e.match(Ht);if(t){let[,n,r,o,i,a,l]=t;return new Date(Number(o),Number(r)-1,Number(n),Number(i??0),Number(a??0),Number(l??0)).getTime()}return NaN}function O(e){return yo(e)?new Date(e).getTime():bo(e)?xo(e):Number(e)}function ho(e,t){return e===t}function To(e,t){return e!==t}function Ro(e,t){return Array.isArray(t)&&t.includes(String(e))}function So(e,t){return Array.isArray(t)&&!t.includes(String(e))}function Ao(e,t){return O(e)>O(t)}function Co(e,t){return O(e)>=O(t)}function Eo(e,t){return O(e)<O(t)}function Fo(e,t){return O(e)<=O(t)}function qt(e=null,t=[],n){t.forEach(r=>{let{target:o,state:i,when:a}=r;if(!e){n(o);return}let l=No(e,a);n(o,l?i:void 0)})}function No(e,t){if(t===void 0)return!0;if(E(t))return We(e,"value")===t;if(Array.isArray(t)){let n=We(e,"value");return t.includes(String(n))}return ko(e,t)}function ko(e=null,t){let n=We(e,t.field??"value"),{operator:r="eq",value:o}=t,i=le[r];return i?i(n,o):!1}function We(e,t){return d(e)?t.includes(".")?T(e,t):e[t]:e}function $t(e=null,t=[],n){t.forEach(r=>{Object.entries(r.value).forEach(([o,i])=>{n(o,e?R(i,e):void 0)})})}var Ce=e=>S(ht)(e),Ee=e=>S(Tt)(e),g=S(bt),Ke=S(be),F=S(yt),N=S(xt),ze=S(gt),Zt=S(ie,He,At,Ct),Wt=S(mt,He),Fe=S(pt,St);function Ne(e){return F(e)||g(e)}function Kt(e){return e.type===Xe}function zt(e){return e.type!==Xe}function jt(e){return N(e)||F(e)}function Jt(e){return Ke(e)||ze(e)}function se(e){return e!=null&&e!==""}function S(...e){return t=>{let n=E(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Qt(e,t={}){if(N(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&d(n))return[n]}}function en(e){return F(e)||g(e)?$:e.advanced?.orientation??w}function tn(e,t){let n=e.readonly??!1;return t||n}function nn(e){if(F(e)||N(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||d(t)&&!(q in t))return t}}var Io=/^\d+$/;function rn(){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 je(){return new Date().getFullYear()}function Je(e,t){if(typeof e=="number")return e;let n=t??je(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,a]=o,l=parseInt(a,10);if(!isNaN(l))return i==="+"?n+l:n-l}return n}return Io.test(r)?parseInt(r,10):n}var ke=je();function vo(e){if(N(e))return wo(e)}function wo(e){if(Ce(e))return rn();if(Ee(e)){let t=e.advanced?.length?.min??ke,n=e.advanced?.length?.max??ke+5;return on(Je(t,ke),Je(n,ke))}}function an(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return Ke(e)?{...n,...Po(e)}:N(e)?{...n,...Oo(e)}:ze(e)?{...n,...Vo(e)}:n}function Po(e){let t=Ut(e.type),n={...e,type:t};return{...ln(e),...Do(n),...Zt(n)?sn(n):{},type:t}}function Oo(e){let t=vo(e);return t?{options:t}:{}}function Vo(e){return{...ln(e),...sn(e)}}function ln(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Do(e){return Fe(e)?Lo(e):{}}function sn(e){return cn(e,{min:wt,max:Pt})}function Lo(e){return cn(e,{min:he,max:Te})}function cn(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 un(e,t){let n=nn(e);return n||Qt(e,t)}function Mo(e,t){let n=d(t)&&e.name in t?t[e.name]:t;return qe(n,e.advanced?.entity)}function _o(e,t,n){return jt(e)&&Array.isArray(n)?{...t,[xe]:n}:t}function Uo(e,t,n){if(e.required&&!se(n)&&N(e)&&e.advanced?.preselected!==!1&&xe in t){let r=t[xe];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function Bo(e,t){return N(e)&&Array.isArray(t)?_t(t,e.advanced?.options):t}function dn(e,t,n,r){let o=Mo(e,r),i=Array.isArray(n)?Bo(e,n):n,a=_o(e,t,i),l=Uo(e,a,o);return{commonPropsWithOptions:a,defaultValue:l}}function fn(e,t){return g(e)?{checked:se(t)?t:!1}:{value:t??""}}var Go=/^#\/definition\//;function ve(e=[],t){let n=Ie(e,t);return Array.isArray(n)?n.sort((r,o)=>mn(r)-mn(o)):[]}function Ie(e,t,n=new Map,r=new WeakSet){if(!Yo(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=>Ie(i,t,n,r));if(q in e&&E(e[q])){let i=e[q].replace(Go,""),a=T(t,i);return a!==null?Ie(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=Ie(a,t,n,r);return r.delete(e),n.set(e,o),o}function pn(e){return Object.entries(e??{})}function mn(e){return e.order??Number.MAX_VALUE}function Yo(e){return e!==void 0&&d(e)&&Object.keys(e).length>0}function gn(e,t){let n={};for(let[r,o]of pn(t))n[`${e}-${r}`]=o;return n}function Xo(e){return gn(It,e)}function Ho(e){return gn(vt,e)}function yn(e,t){let n=Xo(e.advanced?.aria);return t&&t.length>0&&(n[Ft]="true",n[Et]=`${e.name}-error`),n}function bn(e){return Ho(e.advanced?.data)}var xn={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},hn={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function Tn(e,t=2){return xn[e&&e in xn?e:t]}function Rn(e){if(e&&e in hn)return hn[e]}var f=require("zod");function m(e,t){return e?t?t[e]??e:e:""}var qo=[[Fe,zo],[Wt,$o],[Ee,jo],[Ce,Jo],[g,Zo],[F,Wo]];function An(e,t=[],n){let r=f.z.object(e);return t.length===0?r:ni(r,t,n)}function Cn(e){let t={},n=f.z.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function En(e,t){for(let[n,r]of qo)if(n(e))return r(e,t);return Ko(e,t)}function $o(e,t){let n=f.z.string().trim();if(e.required){let r=Z(e,t),o=n.min(1,r).pipe(Sn(e,t));return f.z.preprocess(i=>Se(i)?"":i,o)}return n.pipe(Sn(e,t)).or(f.z.literal("")).nullable()}function Zo(e,t){let n=f.z.coerce.boolean();return e.required?(n=n.refine(r=>r===!0,{message:Z(e,t)}),f.z.preprocess(r=>r===null?!1:r,n)):n.nullable()}function Wo(e,t){let n=f.z.coerce.string();return e.required?(n=n.min(1,Z(e,t)),f.z.preprocess(r=>Se(r)?"":r,n)):n.or(f.z.literal("")).nullable()}function Ko(e,t){let n=f.z.coerce.string().trim();return n=Fn(n,e,t),e.required?(n=Nn(n,e,t),f.z.preprocess(r=>Se(r)?"":r,n)):n.nullable()}function zo(e,t){let n=f.z.coerce.number().int();return n=Fn(n,e,t),e.required?(n=Nn(n,e,t),f.z.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function jo(e,t){return e.required?f.z.preprocess(Qo,f.z.coerce.number({message:Z(e,t)}).int()):f.z.coerce.number().int().nullable()}function Jo(e,t){let n=Z(e,t),r=f.z.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function Qo(e){return e===null||e===""?void 0:e}function Sn(e,t){let n=e.validation?.email?m(e.validation?.email,t):void 0;return f.z.email(n)}function Fn(e,t,n){return e=ei(e,t,n),e=ti(e,t,n),e}function Nn(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,Z(t,n)):e}var ei=(e,t,n)=>kn(e,t,he,n),ti=(e,t,n)=>kn(e,t,Te,n);function kn(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?m(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function ni(e,t=[],n){let r=oi(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:l}of r)if(!ri(o,a,l)){let s=m(l.message,n);i.addIssue({code:"custom",message:s,path:[a]})}})}function ri(e,t,n){let r=n.operator??"eq",o=le[r];return o?o(e[t],e[n.field]):!1}function oi(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 In(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let l=a.operator??"eq",s=le[l];if(s&&!s(e,n(a.field))&&a.message){let c=m(a.message,r);o.push(c)}}return o}function Z(e,t){return e.validation?.required?m(e.validation?.required,t):void 0}function vn(e,t){if(!t||!ai(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||ii(r);return t.some(a=>!(a.protocol&&a.protocol!==r||a.hostname&&a.hostname!==o||a.port!==void 0&&String(a.port)!==i))}catch{return!1}}function ii(e){return e==="https"?"443":"80"}function ai(e){return/^(https?:)?\/\//.test(e)}function wn(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,Re);new URL(t,Re).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(Re,""):o}catch{return t||e}}function Pn(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=wn(t.url,n.url),o=li(t,n),i=si(t,n);return{...t,...n,url:r,body:o,headers:i}})}function li(e,t){return d(t.body)&&d(e?.body)?{...e.body,...t.body}:t.body??e?.body}function si(e,t){return d(t.headers)&&d(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function we(e,t){return{...e,...t}}var On=require("tailwind-merge"),Vn=require("react/jsx-runtime");function Pe(e){let t=e.errors&&e.errors.length>0;return(0,Vn.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Nt]:"true"},...e.disabled&&{[kt]:"true"},"data-orientation":e.orientation,className:(0,On.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&&"flex-row-reverse!","data-[clickable=true]:has-[>[data-slot=field-content]]:[&>:first-child]:mt-px",Rn(e.cols),e.className),children:e.children})}var Dn=require("tailwind-merge"),Mn=require("react/jsx-runtime");function Ln(e){return(0,Mn.jsx)(Pe,{...e,orientation:w,className:(0,Dn.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var _n=require("tailwind-merge"),Bn=require("react/jsx-runtime");function Un(e){return(0,Bn.jsx)(Pe,{...e,orientation:$,className:(0,_n.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 Qe=require("react/jsx-runtime");function Gn(e){let t=Ne(e.field),n=g(e.field);return e.orientation===w?(0,Qe.jsx)(Ln,{cols:e.cols,disabled:e.disabled,errors:e.errors,isCheckbox:n,isClickable:t,children:e.children}):(0,Qe.jsx)(Un,{cols:e.cols,disabled:e.disabled,errors:e.errors,isCheckbox:n,isClickable:t,children:e.children})}function Yn(e){if(!e.field.type)return null;let t=an(e.field,e.disabled),n=bn(e.field),r=yn(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 W=require("react/jsx-runtime");function Xn(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{orientation:r}=we(e.style,{orientation:en(e.field)}),o=tn(e.field,e.disabled);return(0,W.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,W.jsx)(Gn,{cols:t,disabled:o,errors:n,field:e.field,orientation:r,children:(0,W.jsx)(Yn,{disabled:o,errors:n,field:e.field,orientation:r,children:e.children})}),(0,W.jsx)(ft,{errors:n,name:e.field.name})]})}var V=require("jotai"),et=require("jotai-family"),Oe=require("fast-equals");function ci(e){return(0,et.atomFamily)(t=>(0,V.atom)(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];(!a||!(0,Oe.deepEqual)(a,o))&&r(e,{...i,[t]:o})}else if(i[t]){let{[t]:a,...l}=i;r(e,l)}}))}function ui(e){return(0,V.atom)(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function di(e){return(0,V.atom)(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)i[l]&&(delete i[l],a=!0);a&&n(e,i)})}function fi(e){return(0,V.atom)(null,(t,n,r)=>{let o=t(e);(0,Oe.deepEqual)(o,r)||n(e,r)})}function Hn(e,t={}){let{merge:n,validateTarget:r}=t;return(0,et.atomFamily)(o=>(0,V.atom)(i=>{let a=i(e)[o];if(a&&n)return n(Object.values(a))},(i,a,l,s)=>{if(r&&!r(l))return;let c=i(e),u={...c[l]??{}};if(s!=null){let b=u[o];(!b||!(0,Oe.deepEqual)(b,s))&&(u[o]=s,a(e,{...c,[l]:u}))}else if(u[o])if(delete u[o],Object.keys(u).length===0){let{[l]:b,...v}=c;a(e,v)}else a(e,{...c,[l]:u})}))}function qn(e){return(0,V.atom)(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)i[l]&&(delete i[l],a=!0);for(let l in i){let s={...i[l]},c=!1;for(let u of r)s[u]&&(delete s[u],c=!0,a=!0);c&&(Object.keys(s).length===0?delete i[l]:i[l]=s)}a&&n(e,i)})}function K(e={}){let t=(0,V.atom)(e);return{atom:t,clearAll:ui(t),clear:di(t),bulkReport:fi(t),report:ci(t)}}var tt=K(),$n=tt.clear,Zn=tt.bulkReport,Ve=tt.report;var Wn=require("jotai"),zn=require("react/jsx-runtime");function Kn(e){return n=>{let r=(0,Wn.useAtomValue)(Ve(n.field.name));return(0,zn.jsx)(e,{...n,errors:r?{[n.field.name]:r}:void 0})}}var jn=K(),Jn=jn.atom,Qn=jn.report;var er=require("jotai"),nr=require("react/jsx-runtime");function tr(e){return n=>{let r=(0,er.useAtomValue)(Qn(n.field.name));if(r?.hidden??n.field.hidden??!1)return null;let i=r?.disabled??n.disabled;return(0,nr.jsx)(e,{...n,disabled:i})}}var rr=tr(Kn(Xn));var ir=require("react/jsx-runtime");function or(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,ir.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var ar=require("react/jsx-runtime");function ce(e){return(0,ar.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 lr=require("react/jsx-runtime");function ue(e){return Gt(e,(t,n,r)=>(0,lr.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}var L=require("react/jsx-runtime");function sr(e){return(0,L.jsxs)(L.Fragment,{children:[e.title&&(0,L.jsx)("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:ue(e.title)}),e.description&&(0,L.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:ue(e.description)})]})}var z=require("react/jsx-runtime");function cr(e){let t=e.section.fields||[],{compact:n}=we(e.style,{compact:e.section.compact});return!e.section.title&&!e.section.description?(0,z.jsx)(ce,{compact:n,children:e.children}):(0,z.jsxs)("fieldset",{"data-slot":"field-set","data-empty":t.length===0,className:"flex flex-col data-[empty=false]:gap-6",id:e.section.id?.toString(),children:[(0,z.jsx)(sr,{description:e.section.description,title:e.section.title}),(0,z.jsx)(ce,{compact:n,children:e.children})]})}var dr=require("react");var nt=require("react/jsx-runtime");function ur(){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 k=require("react/jsx-runtime");function fr(e){let t=ve(e.sections,e.definition);return(0,k.jsx)("div",{className:"h-full w-full",children:(0,k.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,k.jsxs)(ce,{children:[t.map((n,r)=>(0,k.jsxs)(dr.Fragment,{children:[(0,k.jsx)(cr,{section:n,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.separator&&(0,k.jsx)(ur,{})]},r)),e.control&&(0,k.jsx)(or,{isPending:e.isPending,children:e.control})]})})})}var pr=require("react/jsx-runtime");function mr(e){return(0,pr.jsx)("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}var gr=require("react/jsx-runtime");function De(e){let t=ue(e.text);return t?(0,gr.jsx)(mr,{children:t}):null}var yr=require("tailwind-merge"),Le=require("react/jsx-runtime");function br(e){let t=F(e.field)||g(e.field);return(0,Le.jsxs)("label",{"data-slot":"field-label","data-normal":t,className:(0,yr.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,!e.field.required&&(0,Le.jsx)("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:m("(Optional)",e.translations)})]})}var de=require("react/jsx-runtime");function xr(e){let t=D(e.field.label)?R(e.field.label,{context:e.context,env:e.config?.env}):e.field.label,n=D(e.field.description)?R(e.field.description,{context:e.context,env:e.config?.env}):e.field.description;return(0,de.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,de.jsx)(br,{field:e.field,translations:e.translations,children:m(t,e.translations)}),e.orientation===$&&(0,de.jsx)(De,{text:m(n,e.translations)})]})}var M=require("react/jsx-runtime");function hr(e){return(0,M.jsxs)(M.Fragment,{children:[e.field.name&&e.field.label&&(0,M.jsx)(xr,{config:e.config,context:e.context,field:e.field,orientation:e.orientation,translations:e.translations}),e.children,e.orientation===w&&e.field.description&&(0,M.jsx)(De,{text:m(e.field.description,e.translations)})]})}function Me(e,t){return e?t(e):null}var y=require("react");var Tr=require("jotai");var mi=e=>{let t=Pn(e);if(t)return t},pi=e=>e.trim()!=="",Rr=(0,Tr.atom)({}),Sr=Hn(Rr,{merge:mi,validateTarget:pi}),Ar=qn(Rr);var Fr=require("jotai");var Cr=so(require("swr"),1);function Er(e=null,t,n=!1){let{data:r,error:o}=(0,Cr.default)(gi(e,t,n),t.fetcher.provider);if(o&&ae.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return Mt(r,e.namespace)}return null}function gi(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!D(e.url)){if(vn(e.url,t.fetcher.remotePatterns))return e;ae.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function Nr(e,t,n){let r=un(e,n),[o,i]=(0,Fr.useAtom)(Sr(e.name));return[Er(o??r,t,e.disabled),i]}var _=require("react");function kr(e,t,n,r){let{name:o}=e,i=(0,_.useMemo)(()=>En(e,r),[e,r]),a=(0,_.useEffectEvent)(s=>{s&&t(s,i,e)}),l=(0,_.useEffectEvent)(s=>{s&&n(s)});return(0,_.useEffect)(()=>(a(o),()=>{l(o)}),[o]),i}var Q=require("jotai");var j=require("react");function Ir(){let e=(0,j.useRef)(null);(0,j.useEffect)(()=>()=>{e.current&&clearTimeout(e.current)},[]);function t(){e.current&&(clearTimeout(e.current),e.current=null)}return(0,j.useCallback)((r,o)=>{t(),e.current=setTimeout(r,o)},[])}var _e=K(),vr=_e.atom,wr=_e.clearAll,Pr=_e.clear,Ue=_e.report;var Or=require("jotai"),J=require("react");function Vr(e,t){let{name:n}=e,r=(0,J.useRef)(!1),[o,i]=(0,Or.useAtom)(Ue(n));(0,J.useEffect)(()=>{if(!t||!(n in t))return;let l=t[n];se(l)&&(r.current=!0,i(l))},[n,t,i]);let a=(0,J.useCallback)(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:a,value:o}}var rt=require("react/jsx-runtime");function Dr(e){let t=e.field.advanced?.entity,n=(0,Q.useStore)(),r=Ir(),[,o]=(0,y.useTransition)(),{setValue:i,shouldSkipOnChange:a,value:l}=Vr(e.field,e.value),s=(0,y.useRef)(l);s.current=l;let c=(0,y.useRef)(e.translations);c.current=e.translations;let u=Jt(e.field),b=Ne(e.field),v=(0,Q.useSetAtom)(vr),te=(0,Q.useSetAtom)(Jn),me=(0,Q.useSetAtom)(Ve(e.field.name)),[ne,U]=Nr(e.field,e.config,l),C=kr(e.field,e.onMount,e.onUnmount,e.translations),re=m(e.commonProps.placeholder,e.translations),x={...e.commonProps,placeholder:re},{commonPropsWithOptions:Kr,defaultValue:zr}=dn(e.field,x,ne,l),ct=(0,y.useRef)(null);ct.current=p=>{i(p),e.onValueChange&&e.onValueChange({name:e.field.name,value:p})};let jr=fn(e.field,zr),pe=(0,y.useCallback)(p=>{let B=C.safeParse(p).error?.issues.map(oe=>oe.message)??[],G=e.field.validation?.custom,Ge=G?In(p,G,oe=>n.get(Ue(oe)),c.current):[];me([...B,...Ge])},[e.field.validation?.custom,C,me,n]),ut=(0,y.useCallback)((p,h)=>{if(u){r(()=>{h({value:p})},500);return}let B=Lt(p,ne,t);h(B)},[ne,t,u,r]),Jr=(0,y.useCallback)(p=>{let h=p.target.value;if(a()&&(!u||h===s.current))return;ct.current?.(h),e.config.validation.change&&pe(h);let B=e.field.event?.change;B&&ut(h,G=>{Yt(B,({sources:Ge,states:oe,values:eo})=>{o(()=>{Xt(G,Ge,(Y,X)=>U(Y,X)),qt(G,oe,(Y,X)=>{te(ge=>{if(X)return{...ge,[Y]:X};let{[Y]:hi,...to}=ge;return to})}),$t(G,eo,(Y,X)=>{v(ge=>({...ge,[Y]:X}))})})})})},[ut,u,e.config.validation.change,e.field.event?.change,te,U,v,a,pe]),Qr=(0,y.useCallback)(p=>{if(!b){let h=p.target.value;e.config.validation.blur&&pe(h)}},[b,e.config.validation.blur,pe]);return Me(e.config.inputs[e.field.type],p=>(0,rt.jsx)(hr,{config:e.config,context:e.context,field:e.field,orientation:e.orientation,translations:e.translations,children:(0,rt.jsx)(p,{...Kr,...e.ariaAttributes,...e.dataAttributes,...jr,onBlur:Qr,onChange:Jr})}))}var Lr=require("tailwind-merge"),ot=require("react/jsx-runtime");function Mr(e){let t=Tn(e.column?.advanced?.cols);return(0,ot.jsx)("div",{className:"flex w-full flex-col gap-4",children:(0,ot.jsx)("div",{className:(0,Lr.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children})})}var _r=require("react"),ee=require("react/jsx-runtime");function it(e){let{column:t,field:n}=e.components;return ve(e.fields).map((r,o)=>(0,ee.jsxs)(_r.Fragment,{children:[Kt(r)&&(0,ee.jsx)(t,{column:r,children:(0,ee.jsx)(it,{...e,fields:r.fields})}),zt(r)&&(0,ee.jsx)(n,{disabled:e.disabled,field:r,style:e.style,children:e.children})]},o))}var Br=require("react/jsx-runtime");function Ur(e){return n=>(0,Br.jsx)(it,{...n,components:{column:Mr,field:e}})}var lt=require("jotai");var fe=require("react");function Yr(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0}=n??{},a=(0,lt.useSetAtom)(Zn),l=(0,lt.useSetAtom)(wr),s={data:null,error:null,success:!1},[c,u,b]=(0,fe.useActionState)(async(v,te)=>{let[me,ne]=e(),U=An(me,ne,n?.translations);if(i===!1)return t?await t(te,U):v;let C=Bt(te),re=U.safeParse(C);if(!re.success){let x=Cn(re.error);return(0,fe.startTransition)(()=>{a(x)}),at(C,{description:"Please correct the errors and try again.",details:[],title:"There were validation errors submitting the form."})}if(t)try{let x=await t(C,U);return x.success?(r?.(x.data),o||(0,fe.startTransition)(()=>{l()}),Gr(C,o)):at(C,x.error)}catch(x){return ae.error("Error executing form action:",x),at(C,{title:"An unexpected error occurred submitting the form.",details:yi(x)})}return Gr(re.data,o)},s);return[u,c,b]}function yi(e){let t=e instanceof Error?e.message:["Unknown error"];return Array.isArray(t)?t:[t]}function Gr(e,t=!1){return{data:t?e:null,error:null,success:!0}}function at(e,t){return{data:e,error:t,success:!1}}var I=require("react");var Xr=require("react"),Be=require("jotai");function Hr(){let e=(0,Be.useSetAtom)($n),t=(0,Be.useSetAtom)(Ar),n=(0,Be.useSetAtom)(Pr);return(0,Xr.useCallback)(r=>{let o=Array.isArray(r)?r:[r];e(o),t(o),n(o)},[e,t,n])}function qr(){let e=Hr(),t=(0,I.useRef)({}),n=(0,I.useRef)([]),r=(0,I.useRef)(new Set),o=(0,I.useCallback)((l,s,c)=>{l in t.current||(t.current[l]=s,n.current.push(c))},[]),i=(0,I.useCallback)(l=>{t.current[l]&&(delete t.current[l],n.current=n.current.filter(s=>s.name!==l),r.current.add(l),(0,I.startTransition)(()=>{r.current.size>0&&(e(Array.from(r.current)),r.current.clear())}))},[e]);function a(){return[t.current,n.current]}return[a,o,i]}var A=require("react/jsx-runtime"),bi=Ur(rr);function $r(e){let t=e.translations?.[e.lang??""],[n,r,o]=qr(),[i,a,l]=Yr(n,e.action,{onSuccess:e.onSuccess,validation:e.config.validation.submit,translations:t}),s=e.config.validation.showError&&!a.success&&a.error,c=a.data??e.value;return(0,A.jsxs)(A.Fragment,{children:[s&&Me(e.config.alert,u=>(0,A.jsx)("div",{className:"mb-4 w-full",children:(0,A.jsx)(u,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),(0,A.jsx)(fr,{action:i,config:e.config,control:e.children,definition:e.definition,isPending:l,noValidate:!0,readOnly:e.readOnly,sections:e.sections,children:({disabled:u,fields:b})=>(0,A.jsx)(bi,{disabled:u,fields:b,style:e.config.style,children:v=>(0,A.jsx)(Dr,{...v,config:e.config,context:e.context,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:c})})})]})}var Zr=require("jotai"),st=require("react/jsx-runtime");function Wr(e){return(0,st.jsx)(Zr.Provider,{children:(0,st.jsx)($r,{...e})})}
@@ -1 +1 @@
1
- import{jsx as $e}from"react/jsx-runtime";function Ze(e){return!e.errors||e.errors.length===0?null:$e("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)=>$e("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var ne="input",We="input/email",Ke="input/number";var ze="textarea",je="radio",Je="checkbox",Qe="select",et="select/month",tt="select/year";var Ee="column";var nt="label",_="value",re="options",Fe="email",rt="number",ot="password",it="tel",X="text",at="aria-errormessage",lt="aria-invalid",st="data-invalid",ct="data-readonly",ut="aria",dt="data",oe="min",ie="max",ft="minLength",mt="maxLength",U="$ref";var pt="source",gt="state",ae="http://luna.internal",N="vertical",q="horizontal";function c(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function le(e){return e==null||e===""}function k(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"}function A(e){return typeof e=="string"}function yt(e){return c(e)&&"url"in e}var Fr=/[^/]+$/;function bt(e,t=[],n=_){if(Array.isArray(t))return t.find(r=>{let o=Ne(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}}function Ne(e,t=_){if(e!=null){if(k(e))return e;if(c(e)){let n=Nr(e,t);if(k(n))return n}}}function Nr(e,t){let n=h(e,t);if(k(n))return n}function xt(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||!c(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(c(r)&&o in r)r=r[o];else return null;return r}function Tt(e,t={label:nt,value:_}){return e.map(n=>{if(c(n)){let r=h(n,t.label),o=h(n,t.value);if(k(r)&&k(o))return{label:`${r}`,value:`${o}`}}return n})}function ht(e=X){if(e){let t=e.match(Fr);if(t){let[n]=t;if(n!==ne)return n.trim().toLowerCase()}}return X}function Rt(e){let t={};for(let n of e.keys()){let r=e.getAll(n);t[n]=r.length>1?r:r[0]}return t}var kr=/\[([^\]]+)\]\(([^)]+)\)/g;function R(e,t={}){if(A(e))return Ir(e,t);if(Array.isArray(e))return e.map(n=>R(n,t));if(c(e)){let n={};for(let r in e)n[r]=R(e[r],t);return n}return e}function v(e){return A(e)?/{([^}]+)}/.test(e):Array.isArray(e)?e.some(t=>v(t)):c(e)?Object.values(e).some(t=>v(t)):!1}function Ir(e,t={}){return e.replace(/{([^}]+)}/g,(n,r)=>{let o=r.includes(".")?h(t,r):t[r];return k(o)?String(o):n})}function St(e,t){if(!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=kr.exec(e))!==null;){let[a,l,s]=n,u=n.index;o=!0,u>r&&i.push(e.substring(r,u));let d=t?t(u,s,l):a;i.push(d),r=u+a.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var H={error:(...e)=>{ke()&&!Ie()&&se().error("[Luna Form]",...e)},warn:(...e)=>{ke()&&!Ie()&&se().warn("[Luna Form]",...e)},info:(...e)=>{ke()&&!Ie()&&se().info("[Luna Form]",...e)}},ke=()=>typeof se()<"u",Ie=()=>!0,se=()=>globalThis.console;function At(e=[],t){let n=[],r=[],o=[];e.forEach(i=>{i.action===_&&n.push(i),i.action===pt&&r.push(i),i.action===gt&&o.push(i)}),t({sources:r,states:o,values:n})}function Ct(e=null,t=[],n){t.forEach(r=>{let{target:o,source:i}=r;if(!e){n(o,void 0);return}if(yt(i)){let a=R(i.url,e),l=i.body?R(i.body,e):i.body;n(o,{...i,url:a,body:l})}})}var $={eq:Dr,gt:_r,gte:Ur,in:Lr,lt:qr,lte:Br,neq:Vr,nin:Mr},vr=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,Et=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function wr(e){return typeof e=="string"&&vr.test(e)}function Pr(e){return typeof e=="string"&&Et.test(e)}function Or(e){let t=e.match(Et);if(t){let[,n,r,o,i,a,l]=t;return new Date(Number(o),Number(r)-1,Number(n),Number(i??0),Number(a??0),Number(l??0)).getTime()}return NaN}function I(e){return wr(e)?new Date(e).getTime():Pr(e)?Or(e):Number(e)}function Dr(e,t){return e===t}function Vr(e,t){return e!==t}function Lr(e,t){return Array.isArray(t)&&t.includes(String(e))}function Mr(e,t){return Array.isArray(t)&&!t.includes(String(e))}function _r(e,t){return I(e)>I(t)}function Ur(e,t){return I(e)>=I(t)}function qr(e,t){return I(e)<I(t)}function Br(e,t){return I(e)<=I(t)}function Ft(e=null,t=[],n){t.forEach(r=>{let{target:o,state:i,when:a}=r;if(!e){n(o);return}let l=Gr(e,a);n(o,l?i:void 0)})}function Gr(e,t){if(t===void 0)return!0;if(A(t))return ve(e,"value")===t;if(Array.isArray(t)){let n=ve(e,"value");return t.includes(String(n))}return Yr(e,t)}function Yr(e=null,t){let n=ve(e,t.field??"value"),{operator:r="eq",value:o}=t,i=$[r];return i?i(n,o):!1}function ve(e,t){return c(e)?t.includes(".")?h(e,t):e[t]:e}function Nt(e=null,t=[],n){t.forEach(r=>{Object.entries(r.value).forEach(([o,i])=>{n(o,e?R(i,e):void 0)})})}var ce=e=>S(et)(e),ue=e=>S(tt)(e),y=S(Je),we=S(ne),C=S(je),b=S(Qe),Pe=S(ze),kt=S(X,Fe,ot,it),It=S(We,Fe),de=S(Ke,rt);function fe(e){return C(e)||y(e)}function vt(e){return e.type===Ee}function wt(e){return e.type!==Ee}function Pt(e){return b(e)||C(e)}function Ot(e){return we(e)||Pe(e)}function Z(e){return e!=null&&e!==""}function S(...e){return t=>{let n=A(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Dt(e,t={}){if(b(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&c(n))return[n]}}function Vt(e){return C(e)||y(e)?q:e.advanced?.orientation??N}function Lt(e,t){let n=e.readonly??!1;return t||n}function Mt(e){if(C(e)||b(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||c(t)&&!(U in t))return t}}function _t(e,t){let n=Mt(e);return n||Dt(e,t)}function Xr(e,t){let n=c(t)&&e.name in t?t[e.name]:t;return Ne(n,e.advanced?.entity)}function Hr(e,t,n){return Pt(e)&&Array.isArray(n)?{...t,[re]:n}:t}function $r(e,t,n){if(e.required&&!Z(n)&&b(e)&&e.advanced?.preselected!==!1&&re in t){let r=t[re];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function Zr(e,t){return b(e)&&Array.isArray(t)?Tt(t,e.advanced?.options):t}function Ut(e,t,n,r){let o=Xr(e,r),i=Array.isArray(n)?Zr(e,n):n,a=Hr(e,t,i),l=$r(e,a,o);return{commonPropsWithOptions:a,defaultValue:l}}function qt(e,t){return y(e)?{checked:Z(t)?t:!1}:{value:t??""}}var Wr=/^#\/definition\//;function pe(e=[],t){let n=me(e,t);return Array.isArray(n)?n.sort((r,o)=>Bt(r)-Bt(o)):[]}function me(e,t,n=new Map,r=new WeakSet){if(!Kr(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=>me(i,t,n,r));if(U in e&&A(e[U])){let i=e[U].replace(Wr,""),a=h(t,i);return a!==null?me(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=me(a,t,n,r);return r.delete(e),n.set(e,o),o}function Gt(e){return Object.entries(e??{})}function Bt(e){return e.order??Number.MAX_VALUE}function Kr(e){return e!==void 0&&c(e)&&Object.keys(e).length>0}function Yt(e,t){let n={};for(let[r,o]of Gt(t))n[`${e}-${r}`]=o;return n}function Xt(e){return Yt(ut,e)}function Ht(e){return Yt(dt,e)}var $t={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Zt={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function Wt(e,t=2){return $t[e&&e in $t?e:t]}function Kt(e){if(e&&e in Zt)return Zt[e]}var zr=/^\d+$/;function zt(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function jt(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 Oe(){return new Date().getFullYear()}function De(e,t){if(typeof e=="number")return e;let n=t??Oe(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,a]=o,l=parseInt(a,10);if(!isNaN(l))return i==="+"?n+l:n-l}return n}return zr.test(r)?parseInt(r,10):n}import{z as f}from"zod";function m(e,t){return e?t?t[e]??e:e:""}var jr=[[de,no],[It,Jr],[ue,ro],[ce,oo],[y,Qr],[C,eo]];function Qt(e,t=[],n){let r=f.object(e);return t.length===0?r:so(r,t,n)}function en(e){let t={},n=f.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function tn(e,t){for(let[n,r]of jr)if(n(e))return r(e,t);return to(e,t)}function Jr(e,t){let n=f.string().trim();if(e.required){let r=n.min(1,e.validation?.required).pipe(Jt(e,t));return f.preprocess(o=>le(o)?"":o,r)}return n.pipe(Jt(e,t)).or(f.literal("")).nullable()}function Qr(e,t){let n=f.coerce.boolean();if(e.required){let r=e.validation?.required?m(e.validation?.required,t):void 0;return n=n.refine(o=>o===!0,{message:r}),f.preprocess(o=>o===null?!1:o,n)}return n.nullable()}function eo(e,t){let n=f.coerce.string();if(e.required){let r=e.validation?.required?m(e.validation?.required,t):void 0;return n=n.min(1,r),f.preprocess(o=>le(o)?"":o,n)}return n.or(f.literal("")).nullable()}function to(e,t){let n=f.coerce.string().trim();return n=nn(n,e,t),e.required?(n=rn(n,e,t),f.preprocess(r=>le(r)?"":r,n)):n.nullable()}function no(e,t){let n=f.coerce.number().int();return n=nn(n,e,t),e.required?(n=rn(n,e,t),f.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function ro(e,t){if(e.required){let n=e.validation?.required?m(e.validation?.required,t):void 0;return f.preprocess(io,f.coerce.number({message:n}).int())}return f.coerce.number().int().nullable()}function oo(e,t){let n=e.validation?.required?m(e.validation?.required,t):void 0,r=f.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function io(e){return e===null||e===""?void 0:e}function Jt(e,t){let n=e.validation?.email?m(e.validation?.email,t):void 0;return f.email(n)}function nn(e,t,n){return e=ao(e,t,n),e=lo(e,t,n),e}function rn(e,t,n){let r=t.advanced?.length?.min;if(r===void 0||r<1){let o=t.validation?.required?m(t.validation?.required,n):void 0;return e.min(1,o)}return e}var ao=(e,t,n)=>on(e,t,oe,n),lo=(e,t,n)=>on(e,t,ie,n);function on(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?m(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function so(e,t=[],n){let r=uo(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:l}of r)co(o,a,l)||i.addIssue({code:"custom",message:m(l.message,n),path:[a]})})}function co(e,t,n){let r=n.operator??"eq",o=$[r];return o?o(e[t],e[n.field]):!1}function uo(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 an(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let l=a.operator??"eq",s=$[l];s&&!s(e,n(a.field))&&a.message&&o.push(m(a.message,r))}return o}function ln(e,t){if(!t||!mo(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||fo(r);return t.some(a=>!(a.protocol&&a.protocol!==r||a.hostname&&a.hostname!==o||a.port!==void 0&&String(a.port)!==i))}catch{return!1}}function fo(e){return e==="https"?"443":"80"}function mo(e){return/^(https?:)?\/\//.test(e)}function sn(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,ae);new URL(t,ae).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(ae,""):o}catch{return t||e}}function cn(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=sn(t.url,n.url),o=po(t,n),i=go(t,n);return{...t,...n,url:r,body:o,headers:i}})}function po(e,t){return c(t.body)&&c(e?.body)?{...e.body,...t.body}:t.body??e?.body}function go(e,t){return c(t.headers)&&c(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function ge(e,t){return{...e,...t}}import{twMerge as yo}from"tailwind-merge";import{jsx as bo}from"react/jsx-runtime";function ye(e){let t=e.errors&&e.errors.length>0;return bo("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[st]:"true"},...e.disabled&&{[ct]:"true"},"data-orientation":e.orientation,className:yo("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&&"flex-row-reverse!","data-[clickable=true]:has-[>[data-slot=field-content]]:[&>:first-child]:mt-px",Kt(e.cols),e.className),children:e.children})}import{twMerge as xo}from"tailwind-merge";import{jsx as To}from"react/jsx-runtime";function un(e){return To(ye,{...e,orientation:N,className:xo("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as ho}from"tailwind-merge";import{jsx as Ro}from"react/jsx-runtime";function dn(e){return Ro(ye,{...e,orientation:q,className:ho("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 fn}from"react/jsx-runtime";function mn(e){let t=fe(e.field),n=y(e.field);return e.orientation===N?fn(un,{cols:e.cols,disabled:e.disabled,errors:e.errors,isCheckbox:n,isClickable:t,children:e.children}):fn(dn,{cols:e.cols,disabled:e.disabled,errors:e.errors,isCheckbox:n,isClickable:t,children:e.children})}var be=Oe();function pn(e){if(b(e))return So(e)}function So(e){if(ce(e))return zt();if(ue(e)){let t=e.advanced?.length?.min??be,n=e.advanced?.length?.max??be+5;return jt(De(t,be),De(n,be))}}function gn(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return we(e)?{...n,...Ao(e)}:b(e)?{...n,...Co(e)}:Pe(e)?{...n,...Eo(e)}:n}function Ao(e){let t=ht(e.type),n={...e,type:t};return{...yn(e),...Fo(n),...kt(n)?bn(n):{},type:t}}function Co(e){let t=pn(e);return t?{options:t}:{}}function Eo(e){return{...yn(e),...bn(e)}}function yn(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Fo(e){return de(e)?No(e):{}}function bn(e){return xn(e,{min:ft,max:mt})}function No(e){return xn(e,{min:oe,max:ie})}function xn(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 Tn(e,t){let n=Xt(e.advanced?.aria);return t&&t.length>0&&(n[lt]="true",n[at]=`${e.name}-error`),n}function hn(e){return Ht(e.advanced?.data)}function Rn(e){if(!e.field.type)return null;let t=gn(e.field,e.disabled),n=hn(e.field),r=Tn(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{jsx as Ve,jsxs as ko}from"react/jsx-runtime";function Sn(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{orientation:r}=ge(e.style,{orientation:Vt(e.field)}),o=Lt(e.field,e.disabled);return ko("div",{className:"flex flex-col gap-3",children:[Ve(mn,{cols:t,disabled:o,errors:n,field:e.field,orientation:r,children:Ve(Rn,{disabled:o,errors:n,field:e.field,orientation:r,children:e.children})}),Ve(Ze,{errors:n,name:e.field.name})]})}import{atom as w}from"jotai";import{atomFamily as An}from"jotai-family";import{deepEqual as Le}from"fast-equals";function Io(e){return An(t=>w(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];(!a||!Le(a,o))&&r(e,{...i,[t]:o})}else if(i[t]){let{[t]:a,...l}=i;r(e,l)}}))}function vo(e){return w(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function wo(e){return w(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)i[l]&&(delete i[l],a=!0);a&&n(e,i)})}function Po(e){return w(null,(t,n,r)=>{let o=t(e);Le(o,r)||n(e,r)})}function Cn(e,t={}){let{merge:n,validateTarget:r}=t;return An(o=>w(i=>{let a=i(e)[o];if(a&&n)return n(Object.values(a))},(i,a,l,s)=>{if(r&&!r(l))return;let u=i(e),d={...u[l]??{}};if(s!=null){let x=d[o];(!x||!Le(x,s))&&(d[o]=s,a(e,{...u,[l]:d}))}else if(d[o])if(delete d[o],Object.keys(d).length===0){let{[l]:x,...E}=u;a(e,E)}else a(e,{...u,[l]:d})}))}function En(e){return w(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)i[l]&&(delete i[l],a=!0);for(let l in i){let s={...i[l]},u=!1;for(let d of r)s[d]&&(delete s[d],u=!0,a=!0);u&&(Object.keys(s).length===0?delete i[l]:i[l]=s)}a&&n(e,i)})}function B(e={}){let t=w(e);return{atom:t,clearAll:vo(t),clear:wo(t),bulkReport:Po(t),report:Io(t)}}var Me=B(),Fn=Me.clear,Nn=Me.bulkReport,xe=Me.report;import{useAtomValue as Oo}from"jotai";import{jsx as Do}from"react/jsx-runtime";function kn(e){return n=>{let r=Oo(xe(n.field.name));return Do(e,{...n,errors:r?{[n.field.name]:r}:void 0})}}var In=B(),vn=In.atom,wn=In.report;import{useAtomValue as Vo}from"jotai";import{jsx as Lo}from"react/jsx-runtime";function Pn(e){return n=>{let r=Vo(wn(n.field.name));if(r?.hidden??n.field.hidden??!1)return null;let i=r?.disabled??n.disabled;return Lo(e,{...n,disabled:i})}}var On=Pn(kn(Sn));import{jsx as Mo}from"react/jsx-runtime";function Dn(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return Mo("div",{"data-slot":"field-control",className:"w-full",children:t})}import{jsx as _o}from"react/jsx-runtime";function W(e){return _o("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 Uo}from"react/jsx-runtime";function K(e){return St(e,(t,n,r)=>Uo("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}import{Fragment as qo,jsx as Vn,jsxs as Bo}from"react/jsx-runtime";function Ln(e){return Bo(qo,{children:[e.title&&Vn("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:K(e.title)}),e.description&&Vn("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:K(e.description)})]})}import{jsx as _e,jsxs as Go}from"react/jsx-runtime";function Mn(e){let t=e.section.fields||[],{compact:n}=ge(e.style,{compact:e.section.compact});return!e.section.title&&!e.section.description?_e(W,{compact:n,children:e.children}):Go("fieldset",{"data-slot":"field-set","data-empty":t.length===0,className:"flex flex-col data-[empty=false]:gap-6",id:e.section.id?.toString(),children:[_e(Ln,{description:e.section.description,title:e.section.title}),_e(W,{compact:n,children:e.children})]})}import{Fragment as Yo}from"react";import{jsx as _n}from"react/jsx-runtime";function Un(){return _n("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:_n("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}import{jsx as z,jsxs as qn}from"react/jsx-runtime";function Bn(e){let t=pe(e.sections,e.definition);return z("div",{className:"h-full w-full",children:z("form",{noValidate:e.noValidate,action:e.action,children:qn(W,{children:[t.map((n,r)=>qn(Yo,{children:[z(Mn,{section:n,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.separator&&z(Un,{})]},r)),e.control&&z(Dn,{isPending:e.isPending,children:e.control})]})})})}import{jsx as Xo}from"react/jsx-runtime";function Gn(e){return Xo("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}import{jsx as Ho}from"react/jsx-runtime";function Te(e){let t=K(e.text);return t?Ho(Gn,{children:t}):null}import{twMerge as $o}from"tailwind-merge";import{jsx as Zo,jsxs as Wo}from"react/jsx-runtime";function Yn(e){let t=C(e.field)||y(e.field);return Wo("label",{"data-slot":"field-label","data-normal":t,className:$o("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,!e.field.required&&Zo("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:"(Optional)"})]})}import{jsx as Xn,jsxs as Ko}from"react/jsx-runtime";function Hn(e){let t=v(e.field.label)?R(e.field.label,{context:e.context,env:e.config?.env}):e.field.label,n=v(e.field.description)?R(e.field.description,{context:e.context,env:e.config?.env}):e.field.description;return Ko("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[Xn(Yn,{field:e.field,children:m(t,e.translations)}),e.orientation===q&&Xn(Te,{text:m(n,e.translations)})]})}import{Fragment as zo,jsx as $n,jsxs as jo}from"react/jsx-runtime";function Zn(e){return jo(zo,{children:[e.field.name&&e.field.label&&$n(Hn,{config:e.config,context:e.context,field:e.field,orientation:e.orientation,translations:e.translations}),e.children,e.orientation===N&&e.field.description&&$n(Te,{text:m(e.field.description,e.translations)})]})}function he(e,t){return e?t(e):null}import{useCallback as Ae,useRef as ar,useTransition as mi}from"react";import{atom as Jo}from"jotai";var Qo=e=>{let t=cn(e);if(t)return t},ei=e=>e.trim()!=="",Wn=Jo({}),Kn=Cn(Wn,{merge:Qo,validateTarget:ei}),zn=En(Wn);import{useAtom as ri}from"jotai";import ti from"swr";function jn(e=null,t,n=!1){let{data:r,error:o}=ti(ni(e,t,n),t.fetcher.provider);if(o&&H.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return xt(r,e.namespace)}return null}function ni(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!v(e.url)){if(ln(e.url,t.fetcher.remotePatterns))return e;H.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function Jn(e,t,n){let r=_t(e,n),[o,i]=ri(Kn(e.name));return[jn(o??r,t,e.disabled),i]}import{useEffect as oi,useEffectEvent as Qn,useMemo as ii}from"react";function er(e,t,n,r){let{name:o}=e,i=ii(()=>tn(e,r),[e,r]),a=Qn(s=>{s&&t(s,i,e)}),l=Qn(s=>{s&&n(s)});return oi(()=>(a(o),()=>{l(o)}),[o]),i}import{useSetAtom as Ue,useStore as pi}from"jotai";import{useCallback as ai,useEffect as li,useRef as si}from"react";function tr(){let e=si(null);li(()=>()=>{e.current&&clearTimeout(e.current)},[]);function t(){e.current&&(clearTimeout(e.current),e.current=null)}return ai((r,o)=>{t(),e.current=setTimeout(r,o)},[])}var Re=B(),nr=Re.atom,rr=Re.clearAll,or=Re.clear,Se=Re.report;import{useAtom as ci}from"jotai";import{useCallback as ui,useEffect as di,useRef as fi}from"react";function ir(e,t){let{name:n}=e,r=fi(!1),[o,i]=ci(Se(n));di(()=>{if(!t||!(n in t))return;let l=t[n];Z(l)&&(r.current=!0,i(l))},[n,t,i]);let a=ui(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:a,value:o}}import{jsx as lr}from"react/jsx-runtime";function sr(e){let t=e.field.advanced?.entity,n=pi(),r=tr(),[,o]=mi(),{setValue:i,shouldSkipOnChange:a,value:l}=ir(e.field,e.value),s=Ot(e.field),u=fe(e.field),d=Ue(nr),x=Ue(vn),E=Ue(xe(e.field.name)),[P,J]=Jn(e.field,e.config,l),Q=er(e.field,e.onMount,e.onUnmount,e.translations),{commonPropsWithOptions:G,defaultValue:F}=Ut(e.field,{...e.commonProps,placeholder:m(e.commonProps.placeholder,e.translations)},P,l),O=ar(l);O.current=l;let p=ar(e.translations);p.current=e.translations;let Rr=qt(e.field,F),ee=Ae(g=>{let D=Q.safeParse(g).error?.issues.map(Y=>Y.message)??[],V=e.field.validation?.custom,Ce=V?an(g,V,Y=>n.get(Se(Y)),p.current):[];E([...D,...Ce])},[e.field.validation?.custom,Q,E,n]),He=Ae((g,T)=>{if(s){r(()=>{T({value:g})},500);return}let D=bt(g,P,t);T(D)},[P,t,s,r]),Sr=Ae(g=>{let T=g.target.value;if(a()&&(!s||T===O.current))return;i(T),e.config.validation.change&&ee(T);let D=e.field.event?.change;D&&He(T,V=>{At(D,({sources:Ce,states:Y,values:Cr})=>{o(()=>{Ct(V,Ce,(L,M)=>J(L,M)),Ft(V,Y,(L,M)=>{x(te=>{if(M)return{...te,[L]:M};let{[L]:ki,...Er}=te;return Er})}),Nt(V,Cr,(L,M)=>{d(te=>({...te,[L]:M}))})})})})},[He,s,e.config.validation.change,e.field.event?.change,x,J,i,d,a,ee]),Ar=Ae(g=>{if(!u){let T=g.target.value;e.config.validation.blur&&ee(T)}},[u,e.config.validation.blur,ee]);return he(e.config.inputs[e.field.type],g=>lr(Zn,{config:e.config,context:e.context,field:e.field,orientation:e.orientation,translations:e.translations,children:lr(g,{...G,...e.ariaAttributes,...e.dataAttributes,...Rr,onBlur:Ar,onChange:Sr})}))}import{twMerge as gi}from"tailwind-merge";import{jsx as cr}from"react/jsx-runtime";function ur(e){let t=Wt(e.column?.advanced?.cols);return cr("div",{className:"flex w-full flex-col gap-4",children:cr("div",{className:gi("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children})})}import{Fragment as yi}from"react";import{jsx as qe,jsxs as bi}from"react/jsx-runtime";function Be(e){let{column:t,field:n}=e.components;return pe(e.fields).map((r,o)=>bi(yi,{children:[vt(r)&&qe(t,{column:r,children:qe(Be,{...e,fields:r.fields})}),wt(r)&&qe(n,{disabled:e.disabled,field:r,style:e.style,children:e.children})]},o))}import{jsx as xi}from"react/jsx-runtime";function dr(e){return n=>xi(Be,{...n,components:{column:ur,field:e}})}import{useSetAtom as fr}from"jotai";import{startTransition as mr,useActionState as Ti}from"react";function gr(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0}=n??{},a=fr(Nn),l=fr(rr),s={data:null,error:null,success:!1},[u,d,x]=Ti(async(E,P)=>{let[J,Q]=e(),G=Qt(J,Q,n?.translations);if(i===!1)return t?await t(P,G):E;let F=Rt(P),O=G.safeParse(F);if(!O.success){let p=en(O.error);return mr(()=>{a(p)}),Ge(F,{description:"Please correct the errors and try again.",details:[],title:"There were validation errors submitting the form."})}if(t)try{let p=await t(F,G);return p.success?(r?.(p.data),o||mr(()=>{l()}),pr(F,o)):Ge(F,p.error)}catch(p){return H.error("Error executing form action:",p),Ge(F,{title:"An unexpected error occurred submitting the form.",details:hi(p)})}return pr(O.data,o)},s);return[d,u,x]}function hi(e){let t=e instanceof Error?e.message:["Unknown error"];return Array.isArray(t)?t:[t]}function pr(e,t=!1){return{data:t?e:null,error:null,success:!0}}function Ge(e,t){return{data:e,error:t,success:!1}}import{startTransition as Si,useCallback as br,useRef as Xe}from"react";import{useCallback as Ri}from"react";import{useSetAtom as Ye}from"jotai";function yr(){let e=Ye(Fn),t=Ye(zn),n=Ye(or);return Ri(r=>{let o=Array.isArray(r)?r:[r];e(o),t(o),n(o)},[e,t,n])}function xr(){let e=yr(),t=Xe({}),n=Xe([]),r=Xe(new Set),o=br((l,s,u)=>{l in t.current||(t.current[l]=s,n.current.push(u))},[]),i=br(l=>{t.current[l]&&(delete t.current[l],n.current=n.current.filter(s=>s.name!==l),r.current.add(l),Si(()=>{r.current.size>0&&(e(Array.from(r.current)),r.current.clear())}))},[e]);function a(){return[t.current,n.current]}return[a,o,i]}import{Fragment as Ci,jsx as j,jsxs as Ei}from"react/jsx-runtime";var Ai=dr(On);function Tr(e){let t=e.translations?.[e.lang??""],[n,r,o]=xr(),[i,a,l]=gr(n,e.action,{onSuccess:e.onSuccess,validation:e.config.validation.submit,translations:t}),s=e.config.validation.showError&&!a.success&&a.error,u=a.data??e.value;return Ei(Ci,{children:[s&&he(e.config.alert,d=>j("div",{className:"mb-4 w-full",children:j(d,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),j(Bn,{action:i,config:e.config,control:e.children,definition:e.definition,isPending:l,noValidate:!0,readOnly:e.readOnly,sections:e.sections,children:({disabled:d,fields:x})=>j(Ai,{disabled:d,fields:x,style:e.config.style,children:E=>j(sr,{...E,config:e.config,context:e.context,onMount:r,onUnmount:o,translations:t,value:u})})})]})}import{Provider as Fi}from"jotai";import{jsx as hr}from"react/jsx-runtime";function Ni(e){return hr(Fi,{children:hr(Tr,{...e})})}export{Ni as Form};
1
+ import{jsx as Ke}from"react/jsx-runtime";function ze(e){return!e.errors||e.errors.length===0?null:Ke("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)=>Ke("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var re="input",je="input/email",Je="input/number";var Qe="textarea",et="radio",tt="checkbox",nt="select",rt="select/month",ot="select/year";var Fe="column";var it="label",M="value",oe="options",Ne="email",at="number",lt="password",st="tel",$="text",ct="aria-errormessage",ut="aria-invalid",dt="data-invalid",ft="data-readonly",mt="aria",pt="data",ie="min",ae="max",gt="minLength",yt="maxLength",_="$ref";var bt="source",xt="state",le="http://luna.internal",N="vertical",U="horizontal";function d(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function se(e){return e==null||e===""}function k(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"}function A(e){return typeof e=="string"}function ht(e){return d(e)&&"url"in e}var Nr=/[^/]+$/;function Tt(e,t=[],n=M){if(Array.isArray(t))return t.find(r=>{let o=ke(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}}function ke(e,t=M){if(e!=null){if(k(e))return e;if(d(e)){let n=kr(e,t);if(k(n))return n}}}function kr(e,t){let n=h(e,t);if(k(n))return n}function Rt(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 St(e,t={label:it,value:M}){return e.map(n=>{if(d(n)){let r=h(n,t.label),o=h(n,t.value);if(k(r)&&k(o))return{label:`${r}`,value:`${o}`}}return n})}function At(e=$){if(e){let t=e.match(Nr);if(t){let[n]=t;if(n!==re)return n.trim().toLowerCase()}}return $}function Ct(e){let t={};for(let n of e.keys()){let r=e.getAll(n);t[n]=r.length>1?r:r[0]}return t}var Ir=/\[([^\]]+)\]\(([^)]+)\)/g;function T(e,t={}){if(A(e))return vr(e,t);if(Array.isArray(e))return e.map(n=>T(n,t));if(d(e)){let n={};for(let r in e)n[r]=T(e[r],t);return n}return e}function v(e){return A(e)?/{([^}]+)}/.test(e):Array.isArray(e)?e.some(t=>v(t)):d(e)?Object.values(e).some(t=>v(t)):!1}function vr(e,t={}){return e.replace(/{([^}]+)}/g,(n,r)=>{let o=r.includes(".")?h(t,r):t[r];return k(o)?String(o):n})}function Et(e,t){if(!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Ir.exec(e))!==null;){let[a,l,s]=n,c=n.index;o=!0,c>r&&i.push(e.substring(r,c));let u=t?t(c,s,l):a;i.push(u),r=c+a.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var Z={error:(...e)=>{Ie()&&!ve()&&ce().error("[Luna Form]",...e)},warn:(...e)=>{Ie()&&!ve()&&ce().warn("[Luna Form]",...e)},info:(...e)=>{Ie()&&!ve()&&ce().info("[Luna Form]",...e)}},Ie=()=>typeof ce()<"u",ve=()=>!0,ce=()=>globalThis.console;function Ft(e=[],t){let n=[],r=[],o=[];e.forEach(i=>{i.action===M&&n.push(i),i.action===bt&&r.push(i),i.action===xt&&o.push(i)}),t({sources:r,states:o,values:n})}function Nt(e=null,t=[],n){t.forEach(r=>{let{target:o,source:i}=r;if(!e){n(o,void 0);return}if(ht(i)){let a=T(i.url,e),l=i.body?T(i.body,e):i.body;n(o,{...i,url:a,body:l})}})}var W={eq:Dr,gt:Ur,gte:Br,in:Mr,lt:Gr,lte:Yr,neq:Lr,nin:_r},wr=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,kt=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function Pr(e){return typeof e=="string"&&wr.test(e)}function Or(e){return typeof e=="string"&&kt.test(e)}function Vr(e){let t=e.match(kt);if(t){let[,n,r,o,i,a,l]=t;return new Date(Number(o),Number(r)-1,Number(n),Number(i??0),Number(a??0),Number(l??0)).getTime()}return NaN}function I(e){return Pr(e)?new Date(e).getTime():Or(e)?Vr(e):Number(e)}function Dr(e,t){return e===t}function Lr(e,t){return e!==t}function Mr(e,t){return Array.isArray(t)&&t.includes(String(e))}function _r(e,t){return Array.isArray(t)&&!t.includes(String(e))}function Ur(e,t){return I(e)>I(t)}function Br(e,t){return I(e)>=I(t)}function Gr(e,t){return I(e)<I(t)}function Yr(e,t){return I(e)<=I(t)}function It(e=null,t=[],n){t.forEach(r=>{let{target:o,state:i,when:a}=r;if(!e){n(o);return}let l=Xr(e,a);n(o,l?i:void 0)})}function Xr(e,t){if(t===void 0)return!0;if(A(t))return we(e,"value")===t;if(Array.isArray(t)){let n=we(e,"value");return t.includes(String(n))}return Hr(e,t)}function Hr(e=null,t){let n=we(e,t.field??"value"),{operator:r="eq",value:o}=t,i=W[r];return i?i(n,o):!1}function we(e,t){return d(e)?t.includes(".")?h(e,t):e[t]:e}function vt(e=null,t=[],n){t.forEach(r=>{Object.entries(r.value).forEach(([o,i])=>{n(o,e?T(i,e):void 0)})})}var ue=e=>R(rt)(e),de=e=>R(ot)(e),g=R(tt),Pe=R(re),C=R(et),E=R(nt),Oe=R(Qe),wt=R($,Ne,lt,st),Pt=R(je,Ne),fe=R(Je,at);function me(e){return C(e)||g(e)}function Ot(e){return e.type===Fe}function Vt(e){return e.type!==Fe}function Dt(e){return E(e)||C(e)}function Lt(e){return Pe(e)||Oe(e)}function K(e){return e!=null&&e!==""}function R(...e){return t=>{let n=A(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Mt(e,t={}){if(E(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&d(n))return[n]}}function _t(e){return C(e)||g(e)?U:e.advanced?.orientation??N}function Ut(e,t){let n=e.readonly??!1;return t||n}function Bt(e){if(C(e)||E(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||d(t)&&!(_ in t))return t}}var qr=/^\d+$/;function Gt(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function Yt(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 Ve(){return new Date().getFullYear()}function De(e,t){if(typeof e=="number")return e;let n=t??Ve(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,a]=o,l=parseInt(a,10);if(!isNaN(l))return i==="+"?n+l:n-l}return n}return qr.test(r)?parseInt(r,10):n}var pe=Ve();function $r(e){if(E(e))return Zr(e)}function Zr(e){if(ue(e))return Gt();if(de(e)){let t=e.advanced?.length?.min??pe,n=e.advanced?.length?.max??pe+5;return Yt(De(t,pe),De(n,pe))}}function Xt(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return Pe(e)?{...n,...Wr(e)}:E(e)?{...n,...Kr(e)}:Oe(e)?{...n,...zr(e)}:n}function Wr(e){let t=At(e.type),n={...e,type:t};return{...Ht(e),...jr(n),...wt(n)?qt(n):{},type:t}}function Kr(e){let t=$r(e);return t?{options:t}:{}}function zr(e){return{...Ht(e),...qt(e)}}function Ht(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function jr(e){return fe(e)?Jr(e):{}}function qt(e){return $t(e,{min:gt,max:yt})}function Jr(e){return $t(e,{min:ie,max:ae})}function $t(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 Zt(e,t){let n=Bt(e);return n||Mt(e,t)}function Qr(e,t){let n=d(t)&&e.name in t?t[e.name]:t;return ke(n,e.advanced?.entity)}function eo(e,t,n){return Dt(e)&&Array.isArray(n)?{...t,[oe]:n}:t}function to(e,t,n){if(e.required&&!K(n)&&E(e)&&e.advanced?.preselected!==!1&&oe in t){let r=t[oe];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function no(e,t){return E(e)&&Array.isArray(t)?St(t,e.advanced?.options):t}function Wt(e,t,n,r){let o=Qr(e,r),i=Array.isArray(n)?no(e,n):n,a=eo(e,t,i),l=to(e,a,o);return{commonPropsWithOptions:a,defaultValue:l}}function Kt(e,t){return g(e)?{checked:K(t)?t:!1}:{value:t??""}}var ro=/^#\/definition\//;function ye(e=[],t){let n=ge(e,t);return Array.isArray(n)?n.sort((r,o)=>zt(r)-zt(o)):[]}function ge(e,t,n=new Map,r=new WeakSet){if(!oo(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=>ge(i,t,n,r));if(_ in e&&A(e[_])){let i=e[_].replace(ro,""),a=h(t,i);return a!==null?ge(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=ge(a,t,n,r);return r.delete(e),n.set(e,o),o}function jt(e){return Object.entries(e??{})}function zt(e){return e.order??Number.MAX_VALUE}function oo(e){return e!==void 0&&d(e)&&Object.keys(e).length>0}function Jt(e,t){let n={};for(let[r,o]of jt(t))n[`${e}-${r}`]=o;return n}function io(e){return Jt(mt,e)}function ao(e){return Jt(pt,e)}function Qt(e,t){let n=io(e.advanced?.aria);return t&&t.length>0&&(n[ut]="true",n[ct]=`${e.name}-error`),n}function en(e){return ao(e.advanced?.data)}var tn={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},nn={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function rn(e,t=2){return tn[e&&e in tn?e:t]}function on(e){if(e&&e in nn)return nn[e]}import{z as f}from"zod";function m(e,t){return e?t?t[e]??e:e:""}var lo=[[fe,mo],[Pt,so],[de,po],[ue,go],[g,co],[C,uo]];function ln(e,t=[],n){let r=f.object(e);return t.length===0?r:ho(r,t,n)}function sn(e){let t={},n=f.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function cn(e,t){for(let[n,r]of lo)if(n(e))return r(e,t);return fo(e,t)}function so(e,t){let n=f.string().trim();if(e.required){let r=B(e,t),o=n.min(1,r).pipe(an(e,t));return f.preprocess(i=>se(i)?"":i,o)}return n.pipe(an(e,t)).or(f.literal("")).nullable()}function co(e,t){let n=f.coerce.boolean();return e.required?(n=n.refine(r=>r===!0,{message:B(e,t)}),f.preprocess(r=>r===null?!1:r,n)):n.nullable()}function uo(e,t){let n=f.coerce.string();return e.required?(n=n.min(1,B(e,t)),f.preprocess(r=>se(r)?"":r,n)):n.or(f.literal("")).nullable()}function fo(e,t){let n=f.coerce.string().trim();return n=un(n,e,t),e.required?(n=dn(n,e,t),f.preprocess(r=>se(r)?"":r,n)):n.nullable()}function mo(e,t){let n=f.coerce.number().int();return n=un(n,e,t),e.required?(n=dn(n,e,t),f.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function po(e,t){return e.required?f.preprocess(yo,f.coerce.number({message:B(e,t)}).int()):f.coerce.number().int().nullable()}function go(e,t){let n=B(e,t),r=f.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function yo(e){return e===null||e===""?void 0:e}function an(e,t){let n=e.validation?.email?m(e.validation?.email,t):void 0;return f.email(n)}function un(e,t,n){return e=bo(e,t,n),e=xo(e,t,n),e}function dn(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,B(t,n)):e}var bo=(e,t,n)=>fn(e,t,ie,n),xo=(e,t,n)=>fn(e,t,ae,n);function fn(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?m(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function ho(e,t=[],n){let r=Ro(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:l}of r)if(!To(o,a,l)){let s=m(l.message,n);i.addIssue({code:"custom",message:s,path:[a]})}})}function To(e,t,n){let r=n.operator??"eq",o=W[r];return o?o(e[t],e[n.field]):!1}function Ro(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 mn(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let l=a.operator??"eq",s=W[l];if(s&&!s(e,n(a.field))&&a.message){let c=m(a.message,r);o.push(c)}}return o}function B(e,t){return e.validation?.required?m(e.validation?.required,t):void 0}function pn(e,t){if(!t||!Ao(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||So(r);return t.some(a=>!(a.protocol&&a.protocol!==r||a.hostname&&a.hostname!==o||a.port!==void 0&&String(a.port)!==i))}catch{return!1}}function So(e){return e==="https"?"443":"80"}function Ao(e){return/^(https?:)?\/\//.test(e)}function gn(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,le);new URL(t,le).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(le,""):o}catch{return t||e}}function yn(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=gn(t.url,n.url),o=Co(t,n),i=Eo(t,n);return{...t,...n,url:r,body:o,headers:i}})}function Co(e,t){return d(t.body)&&d(e?.body)?{...e.body,...t.body}:t.body??e?.body}function Eo(e,t){return d(t.headers)&&d(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function be(e,t){return{...e,...t}}import{twMerge as Fo}from"tailwind-merge";import{jsx as No}from"react/jsx-runtime";function xe(e){let t=e.errors&&e.errors.length>0;return No("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[dt]:"true"},...e.disabled&&{[ft]:"true"},"data-orientation":e.orientation,className:Fo("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&&"flex-row-reverse!","data-[clickable=true]:has-[>[data-slot=field-content]]:[&>:first-child]:mt-px",on(e.cols),e.className),children:e.children})}import{twMerge as ko}from"tailwind-merge";import{jsx as Io}from"react/jsx-runtime";function bn(e){return Io(xe,{...e,orientation:N,className:ko("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as vo}from"tailwind-merge";import{jsx as wo}from"react/jsx-runtime";function xn(e){return wo(xe,{...e,orientation:U,className:vo("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 hn}from"react/jsx-runtime";function Tn(e){let t=me(e.field),n=g(e.field);return e.orientation===N?hn(bn,{cols:e.cols,disabled:e.disabled,errors:e.errors,isCheckbox:n,isClickable:t,children:e.children}):hn(xn,{cols:e.cols,disabled:e.disabled,errors:e.errors,isCheckbox:n,isClickable:t,children:e.children})}function Rn(e){if(!e.field.type)return null;let t=Xt(e.field,e.disabled),n=en(e.field),r=Qt(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{jsx as Le,jsxs as Po}from"react/jsx-runtime";function Sn(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{orientation:r}=be(e.style,{orientation:_t(e.field)}),o=Ut(e.field,e.disabled);return Po("div",{className:"flex flex-col gap-3",children:[Le(Tn,{cols:t,disabled:o,errors:n,field:e.field,orientation:r,children:Le(Rn,{disabled:o,errors:n,field:e.field,orientation:r,children:e.children})}),Le(ze,{errors:n,name:e.field.name})]})}import{atom as w}from"jotai";import{atomFamily as An}from"jotai-family";import{deepEqual as Me}from"fast-equals";function Oo(e){return An(t=>w(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];(!a||!Me(a,o))&&r(e,{...i,[t]:o})}else if(i[t]){let{[t]:a,...l}=i;r(e,l)}}))}function Vo(e){return w(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function Do(e){return w(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)i[l]&&(delete i[l],a=!0);a&&n(e,i)})}function Lo(e){return w(null,(t,n,r)=>{let o=t(e);Me(o,r)||n(e,r)})}function Cn(e,t={}){let{merge:n,validateTarget:r}=t;return An(o=>w(i=>{let a=i(e)[o];if(a&&n)return n(Object.values(a))},(i,a,l,s)=>{if(r&&!r(l))return;let c=i(e),u={...c[l]??{}};if(s!=null){let y=u[o];(!y||!Me(y,s))&&(u[o]=s,a(e,{...c,[l]:u}))}else if(u[o])if(delete u[o],Object.keys(u).length===0){let{[l]:y,...F}=c;a(e,F)}else a(e,{...c,[l]:u})}))}function En(e){return w(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)i[l]&&(delete i[l],a=!0);for(let l in i){let s={...i[l]},c=!1;for(let u of r)s[u]&&(delete s[u],c=!0,a=!0);c&&(Object.keys(s).length===0?delete i[l]:i[l]=s)}a&&n(e,i)})}function G(e={}){let t=w(e);return{atom:t,clearAll:Vo(t),clear:Do(t),bulkReport:Lo(t),report:Oo(t)}}var _e=G(),Fn=_e.clear,Nn=_e.bulkReport,he=_e.report;import{useAtomValue as Mo}from"jotai";import{jsx as _o}from"react/jsx-runtime";function kn(e){return n=>{let r=Mo(he(n.field.name));return _o(e,{...n,errors:r?{[n.field.name]:r}:void 0})}}var In=G(),vn=In.atom,wn=In.report;import{useAtomValue as Uo}from"jotai";import{jsx as Bo}from"react/jsx-runtime";function Pn(e){return n=>{let r=Uo(wn(n.field.name));if(r?.hidden??n.field.hidden??!1)return null;let i=r?.disabled??n.disabled;return Bo(e,{...n,disabled:i})}}var On=Pn(kn(Sn));import{jsx as Go}from"react/jsx-runtime";function Vn(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return Go("div",{"data-slot":"field-control",className:"w-full",children:t})}import{jsx as Yo}from"react/jsx-runtime";function z(e){return Yo("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 Xo}from"react/jsx-runtime";function j(e){return Et(e,(t,n,r)=>Xo("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}import{Fragment as Ho,jsx as Dn,jsxs as qo}from"react/jsx-runtime";function Ln(e){return qo(Ho,{children:[e.title&&Dn("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:j(e.title)}),e.description&&Dn("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:j(e.description)})]})}import{jsx as Ue,jsxs as $o}from"react/jsx-runtime";function Mn(e){let t=e.section.fields||[],{compact:n}=be(e.style,{compact:e.section.compact});return!e.section.title&&!e.section.description?Ue(z,{compact:n,children:e.children}):$o("fieldset",{"data-slot":"field-set","data-empty":t.length===0,className:"flex flex-col data-[empty=false]:gap-6",id:e.section.id?.toString(),children:[Ue(Ln,{description:e.section.description,title:e.section.title}),Ue(z,{compact:n,children:e.children})]})}import{Fragment as Zo}from"react";import{jsx as _n}from"react/jsx-runtime";function Un(){return _n("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:_n("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}import{jsx as J,jsxs as Bn}from"react/jsx-runtime";function Gn(e){let t=ye(e.sections,e.definition);return J("div",{className:"h-full w-full",children:J("form",{noValidate:e.noValidate,action:e.action,children:Bn(z,{children:[t.map((n,r)=>Bn(Zo,{children:[J(Mn,{section:n,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.separator&&J(Un,{})]},r)),e.control&&J(Vn,{isPending:e.isPending,children:e.control})]})})})}import{jsx as Wo}from"react/jsx-runtime";function Yn(e){return Wo("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}import{jsx as Ko}from"react/jsx-runtime";function Te(e){let t=j(e.text);return t?Ko(Yn,{children:t}):null}import{twMerge as zo}from"tailwind-merge";import{jsx as jo,jsxs as Jo}from"react/jsx-runtime";function Xn(e){let t=C(e.field)||g(e.field);return Jo("label",{"data-slot":"field-label","data-normal":t,className:zo("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,!e.field.required&&jo("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:m("(Optional)",e.translations)})]})}import{jsx as Hn,jsxs as Qo}from"react/jsx-runtime";function qn(e){let t=v(e.field.label)?T(e.field.label,{context:e.context,env:e.config?.env}):e.field.label,n=v(e.field.description)?T(e.field.description,{context:e.context,env:e.config?.env}):e.field.description;return Qo("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[Hn(Xn,{field:e.field,translations:e.translations,children:m(t,e.translations)}),e.orientation===U&&Hn(Te,{text:m(n,e.translations)})]})}import{Fragment as ei,jsx as $n,jsxs as ti}from"react/jsx-runtime";function Zn(e){return ti(ei,{children:[e.field.name&&e.field.label&&$n(qn,{config:e.config,context:e.context,field:e.field,orientation:e.orientation,translations:e.translations}),e.children,e.orientation===N&&e.field.description&&$n(Te,{text:m(e.field.description,e.translations)})]})}function Re(e,t){return e?t(e):null}import{useCallback as Ce,useRef as Be,useTransition as bi}from"react";import{atom as ni}from"jotai";var ri=e=>{let t=yn(e);if(t)return t},oi=e=>e.trim()!=="",Wn=ni({}),Kn=Cn(Wn,{merge:ri,validateTarget:oi}),zn=En(Wn);import{useAtom as li}from"jotai";import ii from"swr";function jn(e=null,t,n=!1){let{data:r,error:o}=ii(ai(e,t,n),t.fetcher.provider);if(o&&Z.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return Rt(r,e.namespace)}return null}function ai(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!v(e.url)){if(pn(e.url,t.fetcher.remotePatterns))return e;Z.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function Jn(e,t,n){let r=Zt(e,n),[o,i]=li(Kn(e.name));return[jn(o??r,t,e.disabled),i]}import{useEffect as si,useEffectEvent as Qn,useMemo as ci}from"react";function er(e,t,n,r){let{name:o}=e,i=ci(()=>cn(e,r),[e,r]),a=Qn(s=>{s&&t(s,i,e)}),l=Qn(s=>{s&&n(s)});return si(()=>(a(o),()=>{l(o)}),[o]),i}import{useSetAtom as Ge,useStore as xi}from"jotai";import{useCallback as ui,useEffect as di,useRef as fi}from"react";function tr(){let e=fi(null);di(()=>()=>{e.current&&clearTimeout(e.current)},[]);function t(){e.current&&(clearTimeout(e.current),e.current=null)}return ui((r,o)=>{t(),e.current=setTimeout(r,o)},[])}var Se=G(),nr=Se.atom,rr=Se.clearAll,or=Se.clear,Ae=Se.report;import{useAtom as mi}from"jotai";import{useCallback as pi,useEffect as gi,useRef as yi}from"react";function ir(e,t){let{name:n}=e,r=yi(!1),[o,i]=mi(Ae(n));gi(()=>{if(!t||!(n in t))return;let l=t[n];K(l)&&(r.current=!0,i(l))},[n,t,i]);let a=pi(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:a,value:o}}import{jsx as ar}from"react/jsx-runtime";function lr(e){let t=e.field.advanced?.entity,n=xi(),r=tr(),[,o]=bi(),{setValue:i,shouldSkipOnChange:a,value:l}=ir(e.field,e.value),s=Be(l);s.current=l;let c=Be(e.translations);c.current=e.translations;let u=Lt(e.field),y=me(e.field),F=Ge(nr),Y=Ge(vn),ee=Ge(he(e.field.name)),[X,P]=Jn(e.field,e.config,l),S=er(e.field,e.onMount,e.onUnmount,e.translations),H=m(e.commonProps.placeholder,e.translations),b={...e.commonProps,placeholder:H},{commonPropsWithOptions:Tr,defaultValue:Rr}=Wt(e.field,b,X,l),Ze=Be(null);Ze.current=p=>{i(p),e.onValueChange&&e.onValueChange({name:e.field.name,value:p})};let Sr=Kt(e.field,Rr),te=Ce(p=>{let O=S.safeParse(p).error?.issues.map(q=>q.message)??[],V=e.field.validation?.custom,Ee=V?mn(p,V,q=>n.get(Ae(q)),c.current):[];ee([...O,...Ee])},[e.field.validation?.custom,S,ee,n]),We=Ce((p,x)=>{if(u){r(()=>{x({value:p})},500);return}let O=Tt(p,X,t);x(O)},[X,t,u,r]),Ar=Ce(p=>{let x=p.target.value;if(a()&&(!u||x===s.current))return;Ze.current?.(x),e.config.validation.change&&te(x);let O=e.field.event?.change;O&&We(x,V=>{Ft(O,({sources:Ee,states:q,values:Er})=>{o(()=>{Nt(V,Ee,(D,L)=>P(D,L)),It(V,q,(D,L)=>{Y(ne=>{if(L)return{...ne,[D]:L};let{[D]:Pi,...Fr}=ne;return Fr})}),vt(V,Er,(D,L)=>{F(ne=>({...ne,[D]:L}))})})})})},[We,u,e.config.validation.change,e.field.event?.change,Y,P,F,a,te]),Cr=Ce(p=>{if(!y){let x=p.target.value;e.config.validation.blur&&te(x)}},[y,e.config.validation.blur,te]);return Re(e.config.inputs[e.field.type],p=>ar(Zn,{config:e.config,context:e.context,field:e.field,orientation:e.orientation,translations:e.translations,children:ar(p,{...Tr,...e.ariaAttributes,...e.dataAttributes,...Sr,onBlur:Cr,onChange:Ar})}))}import{twMerge as hi}from"tailwind-merge";import{jsx as sr}from"react/jsx-runtime";function cr(e){let t=rn(e.column?.advanced?.cols);return sr("div",{className:"flex w-full flex-col gap-4",children:sr("div",{className:hi("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children})})}import{Fragment as Ti}from"react";import{jsx as Ye,jsxs as Ri}from"react/jsx-runtime";function Xe(e){let{column:t,field:n}=e.components;return ye(e.fields).map((r,o)=>Ri(Ti,{children:[Ot(r)&&Ye(t,{column:r,children:Ye(Xe,{...e,fields:r.fields})}),Vt(r)&&Ye(n,{disabled:e.disabled,field:r,style:e.style,children:e.children})]},o))}import{jsx as Si}from"react/jsx-runtime";function ur(e){return n=>Si(Xe,{...n,components:{column:cr,field:e}})}import{useSetAtom as dr}from"jotai";import{startTransition as fr,useActionState as Ai}from"react";function pr(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0}=n??{},a=dr(Nn),l=dr(rr),s={data:null,error:null,success:!1},[c,u,y]=Ai(async(F,Y)=>{let[ee,X]=e(),P=ln(ee,X,n?.translations);if(i===!1)return t?await t(Y,P):F;let S=Ct(Y),H=P.safeParse(S);if(!H.success){let b=sn(H.error);return fr(()=>{a(b)}),He(S,{description:"Please correct the errors and try again.",details:[],title:"There were validation errors submitting the form."})}if(t)try{let b=await t(S,P);return b.success?(r?.(b.data),o||fr(()=>{l()}),mr(S,o)):He(S,b.error)}catch(b){return Z.error("Error executing form action:",b),He(S,{title:"An unexpected error occurred submitting the form.",details:Ci(b)})}return mr(H.data,o)},s);return[u,c,y]}function Ci(e){let t=e instanceof Error?e.message:["Unknown error"];return Array.isArray(t)?t:[t]}function mr(e,t=!1){return{data:t?e:null,error:null,success:!0}}function He(e,t){return{data:e,error:t,success:!1}}import{startTransition as Fi,useCallback as yr,useRef as $e}from"react";import{useCallback as Ei}from"react";import{useSetAtom as qe}from"jotai";function gr(){let e=qe(Fn),t=qe(zn),n=qe(or);return Ei(r=>{let o=Array.isArray(r)?r:[r];e(o),t(o),n(o)},[e,t,n])}function br(){let e=gr(),t=$e({}),n=$e([]),r=$e(new Set),o=yr((l,s,c)=>{l in t.current||(t.current[l]=s,n.current.push(c))},[]),i=yr(l=>{t.current[l]&&(delete t.current[l],n.current=n.current.filter(s=>s.name!==l),r.current.add(l),Fi(()=>{r.current.size>0&&(e(Array.from(r.current)),r.current.clear())}))},[e]);function a(){return[t.current,n.current]}return[a,o,i]}import{Fragment as ki,jsx as Q,jsxs as Ii}from"react/jsx-runtime";var Ni=ur(On);function xr(e){let t=e.translations?.[e.lang??""],[n,r,o]=br(),[i,a,l]=pr(n,e.action,{onSuccess:e.onSuccess,validation:e.config.validation.submit,translations:t}),s=e.config.validation.showError&&!a.success&&a.error,c=a.data??e.value;return Ii(ki,{children:[s&&Re(e.config.alert,u=>Q("div",{className:"mb-4 w-full",children:Q(u,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),Q(Gn,{action:i,config:e.config,control:e.children,definition:e.definition,isPending:l,noValidate:!0,readOnly:e.readOnly,sections:e.sections,children:({disabled:u,fields:y})=>Q(Ni,{disabled:u,fields:y,style:e.config.style,children:F=>Q(lr,{...F,config:e.config,context:e.context,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:c})})})]})}import{Provider as vi}from"jotai";import{jsx as hr}from"react/jsx-runtime";function wi(e){return hr(vi,{children:hr(xr,{...e})})}export{wi as Form};
@@ -1 +1 @@
1
- "use strict";var $=Object.defineProperty;var Je=Object.getOwnPropertyDescriptor;var Qe=Object.getOwnPropertyNames;var je=Object.prototype.hasOwnProperty;var tn=(t,e)=>{for(var n in e)$(t,n,{get:e[n],enumerable:!0})},en=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Qe(e))!je.call(t,o)&&o!==n&&$(t,o,{get:()=>e[o],enumerable:!(r=Je(e,o))||r.enumerable});return t};var nn=t=>en($({},"__esModule",{value:!0}),t);var An={};tn(An,{Fallback:()=>qe,Form:()=>B});module.exports=nn(An);var it=require("react/jsx-runtime");function ot(t){let e=typeof t.children=="function"?t.children({isPending:t.isPending}):t.children;return(0,it.jsx)("div",{"data-slot":"field-control",className:"w-full",children:e})}var lt=require("react/jsx-runtime");function N(t){return(0,lt.jsx)("div",{"data-slot":"field-group","data-compact":t.compact,className:"flex w-full flex-col gap-8 data-[compact=true]:gap-3",children:t.children})}var L="input",at="input/email",ct="input/number";var st="textarea",dt="radio",ut="checkbox",ft="select",mt="select/month",pt="select/year";var H="column";var gt="label",K="value",D="options",W="email",xt="number",bt="password",yt="tel",S="text",Rt="aria-errormessage",Tt="aria-invalid",At="data-invalid",Ct="data-readonly",ht="aria",Ft="data",Nt="min",St="max",Et="minLength",It="maxLength",T="$ref";var f="vertical",A="horizontal";function l(t){return t!==null&&Object.prototype.toString.call(t)==="[object Object]"}function m(t){return typeof t=="string"||typeof t=="number"||typeof t=="boolean"}function g(t){return typeof t=="string"}var rn=/[^/]+$/;function kt(t,e=K){if(t!=null){if(m(t))return t;if(l(t)){let n=on(t,e);if(m(n))return n}}}function on(t,e){let n=x(t,e);if(m(n))return n}function x(t,e){if(!e||!l(t))return null;let n=e.split(".").filter(o=>o!=="");if(n.length===0)return null;let r=t;for(let o of n)if(l(r)&&o in r)r=r[o];else return null;return r}function Ot(t,e={label:gt,value:K}){return t.map(n=>{if(l(n)){let r=x(n,e.label),o=x(n,e.value);if(m(r)&&m(o))return{label:`${r}`,value:`${o}`}}return n})}function Pt(t=S){if(t){let e=t.match(rn);if(e){let[n]=e;if(n!==L)return n.trim().toLowerCase()}}return S}var ln=/\[([^\]]+)\]\(([^)]+)\)/g;function E(t,e={}){if(g(t))return an(t,e);if(Array.isArray(t))return t.map(n=>E(n,e));if(l(t)){let n={};for(let r in t)n[r]=E(t[r],e);return n}return t}function I(t){return g(t)?/{([^}]+)}/.test(t):Array.isArray(t)?t.some(e=>I(e)):l(t)?Object.values(t).some(e=>I(e)):!1}function an(t,e={}){return t.replace(/{([^}]+)}/g,(n,r)=>{let o=r.includes(".")?x(e,r):e[r];return m(o)?String(o):n})}function wt(t,e){if(!t||t.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=ln.exec(t))!==null;){let[a,p,ze]=n,w=n.index;o=!0,w>r&&i.push(t.substring(r,w));let Ze=e?e(w,ze,p):a;i.push(Ze),r=w+a.length}return o?(r<t.length&&i.push(t.substring(r)),i):t}var Lt=t=>s(mt)(t),Dt=t=>s(pt)(t),d=s(ut),_t=s(L),b=s(dt),c=s(ft),Mt=s(st),Vt=s(S,W,bt,yt),_n=s(at,W),vt=s(ct,xt);function Gt(t){return b(t)||d(t)}function Xt(t){return t.type===H}function Yt(t){return t.type!==H}function Ut(t){return c(t)||b(t)}function q(t){return t!=null&&t!==""}function s(...t){return e=>{let n=g(e.type)?e.type:void 0;return n?t.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Bt(t,e={}){if(c(t)&&t.disabled){let n=t.name?e?.[t.name]:void 0;if(n&&l(n))return[n]}}function $t(t){return b(t)||d(t)?A:t.advanced?.orientation??f}function Ht(t,e){let n=t.readonly??!1;return e||n}function Kt(t){if(b(t)||c(t)&&!t.disabled){let e=t.source;if(Array.isArray(e)||l(e)&&!(T in e))return e}}function Wt(t,e){let n=Kt(t);return n||Bt(t,e)}function cn(t,e){let n=l(e)&&t.name in e?e[t.name]:e;return kt(n,t.advanced?.entity)}function sn(t,e,n){return Ut(t)&&Array.isArray(n)?{...e,[D]:n}:e}function dn(t,e,n){if(t.required&&!q(n)&&c(t)&&t.advanced?.preselected!==!1&&D in e){let r=e[D];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function un(t,e){return c(t)&&Array.isArray(e)?Ot(e,t.advanced?.options):e}function qt(t,e,n,r){let o=cn(t,r),i=Array.isArray(n)?un(t,n):n,a=sn(t,e,i),p=dn(t,a,o);return{commonPropsWithOptions:a,defaultValue:p}}function zt(t,e){return d(t)?{defaultChecked:q(e)}:{defaultValue:e}}var fn=/^#\/definition\//;function M(t=[],e){let n=_(t,e);return Array.isArray(n)?n.sort((r,o)=>Zt(r)-Zt(o)):[]}function _(t,e,n=new Map,r=new WeakSet){if(!mn(e)||!t||typeof t!="object")return t;if(n.has(t))return n.get(t);if(r.has(t))return t;if(r.add(t),Array.isArray(t))return t.map(i=>_(i,e,n,r));if(T in t&&g(t[T])){let i=t[T].replace(fn,""),a=x(e,i);return a!==null?_(a,e,n,r):t}let o={};for(let[i,a]of Object.entries(t))o[i]=_(a,e,n,r);return r.delete(t),n.set(t,o),o}function Jt(t){return Object.entries(t??{})}function Zt(t){return t.order??Number.MAX_VALUE}function mn(t){return t!==void 0&&l(t)&&Object.keys(t).length>0}function Qt(t,e){let n={};for(let[r,o]of Jt(e))n[`${t}-${r}`]=o;return n}function jt(t){return Qt(ht,t)}function te(t){return Qt(Ft,t)}var ee={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},ne={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function re(t,e=2){return ee[t&&t in ee?t:e]}function oe(t){if(t&&t in ne)return ne[t]}var pn=/^\d+$/;function ie(){return Array.from({length:12},(t,e)=>({value:(e+1).toString(),label:new Date(0,e).toLocaleString("default",{month:"long"})}))}function le(t,e){return e>=t?Array.from({length:e-t+1},(n,r)=>{let o=t+r;return{value:o.toString(),label:o.toString()}}):[]}function z(){return new Date().getFullYear()}function Z(t,e){if(typeof t=="number")return t;let n=e??z(),r=t.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,a]=o,p=parseInt(a,10);if(!isNaN(p))return i==="+"?n+p:n-p}return n}return pn.test(r)?parseInt(r,10):n}function k(t,e){return t?e?e[t]??t:t:""}function V(t,e){return{...t,...e}}var ae=require("react/jsx-runtime");function O(t){return wt(t,(e,n,r)=>(0,ae.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${e}`))}var y=require("react/jsx-runtime");function ce(t){return(0,y.jsxs)(y.Fragment,{children:[t.title&&(0,y.jsx)("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:O(t.title)}),t.description&&(0,y.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:O(t.description)})]})}var C=require("react/jsx-runtime");function se(t){let e=t.section.fields||[],{compact:n}=V(t.style,{compact:t.section.compact});return!t.section.title&&!t.section.description?(0,C.jsx)(N,{compact:n,children:t.children}):(0,C.jsxs)("fieldset",{"data-slot":"field-set","data-empty":e.length===0,className:"flex flex-col data-[empty=false]:gap-6",id:t.section.id?.toString(),children:[(0,C.jsx)(ce,{description:t.section.description,title:t.section.title}),(0,C.jsx)(N,{compact:n,children:t.children})]})}var ue=require("react");var J=require("react/jsx-runtime");function de(){return(0,J.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,J.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}var u=require("react/jsx-runtime");function fe(t){let e=M(t.sections,t.definition);return(0,u.jsx)("div",{className:"h-full w-full",children:(0,u.jsx)("form",{noValidate:t.noValidate,action:t.action,children:(0,u.jsxs)(N,{children:[e.map((n,r)=>(0,u.jsxs)(ue.Fragment,{children:[(0,u.jsx)(se,{section:n,style:t.config.style,children:t.children({disabled:t.readOnly,fields:n.fields})}),n.separator&&(0,u.jsx)(de,{})]},r)),t.control&&(0,u.jsx)(ot,{isPending:t.isPending,children:t.control})]})})})}var pe=require("react/jsx-runtime");function me(t){return(0,pe.jsx)("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:t.children})}var ge=require("react/jsx-runtime");function v(t){let e=O(t.text);return e?(0,ge.jsx)(me,{children:e}):null}var xe=require("tailwind-merge"),G=require("react/jsx-runtime");function be(t){let e=b(t.field)||d(t.field);return(0,G.jsxs)("label",{"data-slot":"field-label","data-normal":e,className:(0,xe.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:t.field.name,children:[t.children,!t.field.required&&(0,G.jsx)("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:"(Optional)"})]})}var P=require("react/jsx-runtime");function ye(t){let e=I(t.field.label)?E(t.field.label,{context:t.context,env:t.config?.env}):t.field.label,n=I(t.field.description)?E(t.field.description,{context:t.context,env:t.config?.env}):t.field.description;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)(be,{field:t.field,children:k(e,t.translations)}),t.orientation===A&&(0,P.jsx)(v,{text:k(n,t.translations)})]})}var R=require("react/jsx-runtime");function Re(t){return(0,R.jsxs)(R.Fragment,{children:[t.field.name&&t.field.label&&(0,R.jsx)(ye,{config:t.config,context:t.context,field:t.field,orientation:t.orientation,translations:t.translations}),t.children,t.orientation===f&&t.field.description&&(0,R.jsx)(v,{text:k(t.field.description,t.translations)})]})}function Te(t,e){return t?e(t):null}var Q=require("react/jsx-runtime");function Ae(t){let e=Wt(t.field,t.value),{commonPropsWithOptions:n,defaultValue:r}=qt(t.field,t.commonProps,e,t.value),o=zt(t.field,r);return Te(t.config.inputs[t.field.type],i=>(0,Q.jsx)(Re,{config:t.config,context:t.context,field:t.field,orientation:t.orientation,translations:t.translations,children:(0,Q.jsx)(i,{...t.ariaAttributes,...n,...t.dataAttributes,...o})}))}var j=require("react/jsx-runtime");function Ce(t){return!t.errors||t.errors.length===0?null:(0,j.jsx)("ul",{className:"text-sm text-red-600 dark:text-red-500",id:t.name?`${t.name}-error`:void 0,children:t.errors?.map((e,n)=>(0,j.jsx)("li",{children:e},t.name?`${t.name}-error-${n}`:n))})}var he=require("tailwind-merge"),Fe=require("react/jsx-runtime");function X(t){let e=t.errors&&t.errors.length>0;return(0,Fe.jsx)("div",{"data-slot":"field","data-clickable":t.isClickable?"true":"false",...e&&{[At]:"true"},...t.disabled&&{[Ct]:"true"},"data-orientation":t.orientation,className:(0,he.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",t.isCheckbox&&"flex-row-reverse!","data-[clickable=true]:has-[>[data-slot=field-content]]:[&>:first-child]:mt-px",oe(t.cols),t.className),children:t.children})}var Ne=require("tailwind-merge"),Ee=require("react/jsx-runtime");function Se(t){return(0,Ee.jsx)(X,{...t,orientation:f,className:(0,Ne.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!t.isClickable&&"[&>*]:w-full"),children:t.children})}var Ie=require("tailwind-merge"),Oe=require("react/jsx-runtime");function ke(t){return(0,Oe.jsx)(X,{...t,orientation:A,className:(0,Ie.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]",t.isClickable&&"md:flex-col",!t.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:t.children})}var tt=require("react/jsx-runtime");function Pe(t){let e=Gt(t.field),n=d(t.field);return t.orientation===f?(0,tt.jsx)(Se,{cols:t.cols,disabled:t.disabled,errors:t.errors,isCheckbox:n,isClickable:e,children:t.children}):(0,tt.jsx)(ke,{cols:t.cols,disabled:t.disabled,errors:t.errors,isCheckbox:n,isClickable:e,children:t.children})}var Y=z();function we(t){if(c(t))return gn(t)}function gn(t){if(Lt(t))return ie();if(Dt(t)){let e=t.advanced?.length?.min??Y,n=t.advanced?.length?.max??Y+5;return le(Z(e,Y),Z(n,Y))}}function Le(t,e=!1){let n={disabled:e,id:t.name,name:t.name,placeholder:t.placeholder,required:t.required};return _t(t)?{...n,...xn(t)}:c(t)?{...n,...bn(t)}:Mt(t)?{...n,...yn(t)}:n}function xn(t){let e=Pt(t.type),n={...t,type:e};return{...De(t),...Rn(n),...Vt(n)?_e(n):{},type:e}}function bn(t){let e=we(t);return e?{options:e}:{}}function yn(t){return{...De(t),..._e(t)}}function De(t){let e=t.advanced?.autocomplete;return e?{autoComplete:e}:{}}function Rn(t){return vt(t)?Tn(t):{}}function _e(t){return Me(t,{min:Et,max:It})}function Tn(t){return Me(t,{min:Nt,max:St})}function Me(t,e){let n={},r=t.advanced?.length;return r&&(r.min!==void 0&&(n[e.min]=r.min),r.max!==void 0&&(n[e.max]=r.max)),n}function Ve(t,e){let n=jt(t.advanced?.aria);return e&&e.length>0&&(n[Tt]="true",n[Rt]=`${t.name}-error`),n}function ve(t){return te(t.advanced?.data)}function Ge(t){if(!t.field.type)return null;let e=Le(t.field,t.disabled),n=ve(t.field),r=Ve(t.field,t.errors),o={...t.field,disabled:e.disabled};return t.children({ariaAttributes:r,commonProps:e,dataAttributes:n,field:o,orientation:t.orientation})}var h=require("react/jsx-runtime");function Xe(t){let e=t.field.advanced?.cols,n=t.field.name?t.errors?.[t.field.name]:void 0,{orientation:r}=V(t.style,{orientation:$t(t.field)}),o=Ht(t.field,t.disabled);return(0,h.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,h.jsx)(Pe,{cols:e,disabled:o,errors:n,field:t.field,orientation:r,children:(0,h.jsx)(Ge,{disabled:o,errors:n,field:t.field,orientation:r,children:t.children})}),(0,h.jsx)(Ce,{errors:n,name:t.field.name})]})}var Ye=require("tailwind-merge"),et=require("react/jsx-runtime");function Ue(t){let e=re(t.column?.advanced?.cols);return(0,et.jsx)("div",{className:"flex w-full flex-col gap-4",children:(0,et.jsx)("div",{className:(0,Ye.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",e),children:t.children})})}var Be=require("react"),F=require("react/jsx-runtime");function nt(t){let{column:e,field:n}=t.components;return M(t.fields).map((r,o)=>(0,F.jsxs)(Be.Fragment,{children:[Xt(r)&&(0,F.jsx)(e,{column:r,children:(0,F.jsx)(nt,{...t,fields:r.fields})}),Yt(r)&&(0,F.jsx)(n,{disabled:t.disabled,field:r,style:t.style,children:t.children})]},o))}var He=require("react/jsx-runtime");function $e(t){return n=>(0,He.jsx)(nt,{...n,components:{column:Ue,field:t}})}var Ke=$e(Xe);var U=require("react/jsx-runtime");function B(t){let e=t.translations?.[t.lang??""];return(0,U.jsx)(fe,{config:t.config,control:t.children,definition:t.definition,readOnly:t.readOnly,sections:t.sections,children:({disabled:n,fields:r})=>(0,U.jsx)(Ke,{disabled:n,fields:r,style:t.config.style,children:o=>(0,U.jsx)(Ae,{...o,config:t.config,context:t.context,translations:e,value:t.value})})})}var We=require("react");var rt=require("react/jsx-runtime");function qe(t){return(0,rt.jsx)(We.Suspense,{fallback:(0,rt.jsx)(B,{config:t.config,sections:t.sections,readOnly:!0}),children:t.children})}
1
+ "use strict";var $=Object.defineProperty;var qe=Object.getOwnPropertyDescriptor;var ze=Object.getOwnPropertyNames;var Ze=Object.prototype.hasOwnProperty;var Je=(t,e)=>{for(var n in e)$(t,n,{get:e[n],enumerable:!0})},Qe=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of ze(e))!Ze.call(t,o)&&o!==n&&$(t,o,{get:()=>e[o],enumerable:!(r=qe(e,o))||r.enumerable});return t};var je=t=>Qe($({},"__esModule",{value:!0}),t);var An={};Je(An,{Fallback:()=>He,Form:()=>B});module.exports=je(An);var it=require("react/jsx-runtime");function ot(t){let e=typeof t.children=="function"?t.children({isPending:t.isPending}):t.children;return(0,it.jsx)("div",{"data-slot":"field-control",className:"w-full",children:e})}var lt=require("react/jsx-runtime");function S(t){return(0,lt.jsx)("div",{"data-slot":"field-group","data-compact":t.compact,className:"flex w-full flex-col gap-8 data-[compact=true]:gap-3",children:t.children})}var L="input",at="input/email",ct="input/number";var st="textarea",dt="radio",ut="checkbox",ft="select",mt="select/month",pt="select/year";var H="column";var gt="label",K="value",D="options",W="email",xt="number",bt="password",yt="tel",E="text",Rt="aria-errormessage",Tt="aria-invalid",At="data-invalid",Ct="data-readonly",ht="aria",Nt="data",Ft="min",St="max",Et="minLength",It="maxLength",A="$ref";var f="vertical",C="horizontal";function l(t){return t!==null&&Object.prototype.toString.call(t)==="[object Object]"}function m(t){return typeof t=="string"||typeof t=="number"||typeof t=="boolean"}function g(t){return typeof t=="string"}var tn=/[^/]+$/;function kt(t,e=K){if(t!=null){if(m(t))return t;if(l(t)){let n=en(t,e);if(m(n))return n}}}function en(t,e){let n=x(t,e);if(m(n))return n}function x(t,e){if(!e||!l(t))return null;let n=e.split(".").filter(o=>o!=="");if(n.length===0)return null;let r=t;for(let o of n)if(l(r)&&o in r)r=r[o];else return null;return r}function Ot(t,e={label:gt,value:K}){return t.map(n=>{if(l(n)){let r=x(n,e.label),o=x(n,e.value);if(m(r)&&m(o))return{label:`${r}`,value:`${o}`}}return n})}function Pt(t=E){if(t){let e=t.match(tn);if(e){let[n]=e;if(n!==L)return n.trim().toLowerCase()}}return E}var nn=/\[([^\]]+)\]\(([^)]+)\)/g;function I(t,e={}){if(g(t))return rn(t,e);if(Array.isArray(t))return t.map(n=>I(n,e));if(l(t)){let n={};for(let r in t)n[r]=I(t[r],e);return n}return t}function k(t){return g(t)?/{([^}]+)}/.test(t):Array.isArray(t)?t.some(e=>k(e)):l(t)?Object.values(t).some(e=>k(e)):!1}function rn(t,e={}){return t.replace(/{([^}]+)}/g,(n,r)=>{let o=r.includes(".")?x(e,r):e[r];return m(o)?String(o):n})}function wt(t,e){if(!t||t.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=nn.exec(t))!==null;){let[a,p,Ke]=n,w=n.index;o=!0,w>r&&i.push(t.substring(r,w));let We=e?e(w,Ke,p):a;i.push(We),r=w+a.length}return o?(r<t.length&&i.push(t.substring(r)),i):t}var Lt=t=>c(mt)(t),Dt=t=>c(pt)(t),s=c(ut),_t=c(L),b=c(dt),d=c(ft),Mt=c(st),Vt=c(E,W,bt,yt),_n=c(at,W),vt=c(ct,xt);function Gt(t){return b(t)||s(t)}function Xt(t){return t.type===H}function Yt(t){return t.type!==H}function Ut(t){return d(t)||b(t)}function q(t){return t!=null&&t!==""}function c(...t){return e=>{let n=g(e.type)?e.type:void 0;return n?t.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Bt(t,e={}){if(d(t)&&t.disabled){let n=t.name?e?.[t.name]:void 0;if(n&&l(n))return[n]}}function $t(t){return b(t)||s(t)?C:t.advanced?.orientation??f}function Ht(t,e){let n=t.readonly??!1;return e||n}function Kt(t){if(b(t)||d(t)&&!t.disabled){let e=t.source;if(Array.isArray(e)||l(e)&&!(A in e))return e}}var on=/^\d+$/;function Wt(){return Array.from({length:12},(t,e)=>({value:(e+1).toString(),label:new Date(0,e).toLocaleString("default",{month:"long"})}))}function qt(t,e){return e>=t?Array.from({length:e-t+1},(n,r)=>{let o=t+r;return{value:o.toString(),label:o.toString()}}):[]}function z(){return new Date().getFullYear()}function Z(t,e){if(typeof t=="number")return t;let n=e??z(),r=t.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,a]=o,p=parseInt(a,10);if(!isNaN(p))return i==="+"?n+p:n-p}return n}return on.test(r)?parseInt(r,10):n}var _=z();function ln(t){if(d(t))return an(t)}function an(t){if(Lt(t))return Wt();if(Dt(t)){let e=t.advanced?.length?.min??_,n=t.advanced?.length?.max??_+5;return qt(Z(e,_),Z(n,_))}}function zt(t,e=!1){let n={disabled:e,id:t.name,name:t.name,placeholder:t.placeholder,required:t.required};return _t(t)?{...n,...cn(t)}:d(t)?{...n,...sn(t)}:Mt(t)?{...n,...dn(t)}:n}function cn(t){let e=Pt(t.type),n={...t,type:e};return{...Zt(t),...un(n),...Vt(n)?Jt(n):{},type:e}}function sn(t){let e=ln(t);return e?{options:e}:{}}function dn(t){return{...Zt(t),...Jt(t)}}function Zt(t){let e=t.advanced?.autocomplete;return e?{autoComplete:e}:{}}function un(t){return vt(t)?fn(t):{}}function Jt(t){return Qt(t,{min:Et,max:It})}function fn(t){return Qt(t,{min:Ft,max:St})}function Qt(t,e){let n={},r=t.advanced?.length;return r&&(r.min!==void 0&&(n[e.min]=r.min),r.max!==void 0&&(n[e.max]=r.max)),n}function jt(t,e){let n=Kt(t);return n||Bt(t,e)}function mn(t,e){let n=l(e)&&t.name in e?e[t.name]:e;return kt(n,t.advanced?.entity)}function pn(t,e,n){return Ut(t)&&Array.isArray(n)?{...e,[D]:n}:e}function gn(t,e,n){if(t.required&&!q(n)&&d(t)&&t.advanced?.preselected!==!1&&D in e){let r=e[D];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function xn(t,e){return d(t)&&Array.isArray(e)?Ot(e,t.advanced?.options):e}function te(t,e,n,r){let o=mn(t,r),i=Array.isArray(n)?xn(t,n):n,a=pn(t,e,i),p=gn(t,a,o);return{commonPropsWithOptions:a,defaultValue:p}}function ee(t,e){return s(t)?{defaultChecked:q(e)}:{defaultValue:e}}var bn=/^#\/definition\//;function V(t=[],e){let n=M(t,e);return Array.isArray(n)?n.sort((r,o)=>ne(r)-ne(o)):[]}function M(t,e,n=new Map,r=new WeakSet){if(!yn(e)||!t||typeof t!="object")return t;if(n.has(t))return n.get(t);if(r.has(t))return t;if(r.add(t),Array.isArray(t))return t.map(i=>M(i,e,n,r));if(A in t&&g(t[A])){let i=t[A].replace(bn,""),a=x(e,i);return a!==null?M(a,e,n,r):t}let o={};for(let[i,a]of Object.entries(t))o[i]=M(a,e,n,r);return r.delete(t),n.set(t,o),o}function re(t){return Object.entries(t??{})}function ne(t){return t.order??Number.MAX_VALUE}function yn(t){return t!==void 0&&l(t)&&Object.keys(t).length>0}function oe(t,e){let n={};for(let[r,o]of re(e))n[`${t}-${r}`]=o;return n}function Rn(t){return oe(ht,t)}function Tn(t){return oe(Nt,t)}function ie(t,e){let n=Rn(t.advanced?.aria);return e&&e.length>0&&(n[Tt]="true",n[Rt]=`${t.name}-error`),n}function le(t){return Tn(t.advanced?.data)}var ae={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},ce={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function se(t,e=2){return ae[t&&t in ae?t:e]}function de(t){if(t&&t in ce)return ce[t]}function y(t,e){return t?e?e[t]??t:t:""}function v(t,e){return{...t,...e}}var ue=require("react/jsx-runtime");function O(t){return wt(t,(e,n,r)=>(0,ue.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${e}`))}var R=require("react/jsx-runtime");function fe(t){return(0,R.jsxs)(R.Fragment,{children:[t.title&&(0,R.jsx)("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:O(t.title)}),t.description&&(0,R.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:O(t.description)})]})}var h=require("react/jsx-runtime");function me(t){let e=t.section.fields||[],{compact:n}=v(t.style,{compact:t.section.compact});return!t.section.title&&!t.section.description?(0,h.jsx)(S,{compact:n,children:t.children}):(0,h.jsxs)("fieldset",{"data-slot":"field-set","data-empty":e.length===0,className:"flex flex-col data-[empty=false]:gap-6",id:t.section.id?.toString(),children:[(0,h.jsx)(fe,{description:t.section.description,title:t.section.title}),(0,h.jsx)(S,{compact:n,children:t.children})]})}var ge=require("react");var J=require("react/jsx-runtime");function pe(){return(0,J.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,J.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}var u=require("react/jsx-runtime");function xe(t){let e=V(t.sections,t.definition);return(0,u.jsx)("div",{className:"h-full w-full",children:(0,u.jsx)("form",{noValidate:t.noValidate,action:t.action,children:(0,u.jsxs)(S,{children:[e.map((n,r)=>(0,u.jsxs)(ge.Fragment,{children:[(0,u.jsx)(me,{section:n,style:t.config.style,children:t.children({disabled:t.readOnly,fields:n.fields})}),n.separator&&(0,u.jsx)(pe,{})]},r)),t.control&&(0,u.jsx)(ot,{isPending:t.isPending,children:t.control})]})})})}var ye=require("react/jsx-runtime");function be(t){return(0,ye.jsx)("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:t.children})}var Re=require("react/jsx-runtime");function G(t){let e=O(t.text);return e?(0,Re.jsx)(be,{children:e}):null}var Te=require("tailwind-merge"),X=require("react/jsx-runtime");function Ae(t){let e=b(t.field)||s(t.field);return(0,X.jsxs)("label",{"data-slot":"field-label","data-normal":e,className:(0,Te.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:t.field.name,children:[t.children,!t.field.required&&(0,X.jsx)("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:y("(Optional)",t.translations)})]})}var P=require("react/jsx-runtime");function Ce(t){let e=k(t.field.label)?I(t.field.label,{context:t.context,env:t.config?.env}):t.field.label,n=k(t.field.description)?I(t.field.description,{context:t.context,env:t.config?.env}):t.field.description;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)(Ae,{field:t.field,translations:t.translations,children:y(e,t.translations)}),t.orientation===C&&(0,P.jsx)(G,{text:y(n,t.translations)})]})}var T=require("react/jsx-runtime");function he(t){return(0,T.jsxs)(T.Fragment,{children:[t.field.name&&t.field.label&&(0,T.jsx)(Ce,{config:t.config,context:t.context,field:t.field,orientation:t.orientation,translations:t.translations}),t.children,t.orientation===f&&t.field.description&&(0,T.jsx)(G,{text:y(t.field.description,t.translations)})]})}function Ne(t,e){return t?e(t):null}var Q=require("react/jsx-runtime");function Fe(t){let e=jt(t.field,t.value),{commonPropsWithOptions:n,defaultValue:r}=te(t.field,t.commonProps,e,t.value),o=ee(t.field,r);return Ne(t.config.inputs[t.field.type],i=>(0,Q.jsx)(he,{config:t.config,context:t.context,field:t.field,orientation:t.orientation,translations:t.translations,children:(0,Q.jsx)(i,{...t.ariaAttributes,...n,...t.dataAttributes,...o})}))}var j=require("react/jsx-runtime");function Se(t){return!t.errors||t.errors.length===0?null:(0,j.jsx)("ul",{className:"text-sm text-red-600 dark:text-red-500",id:t.name?`${t.name}-error`:void 0,children:t.errors?.map((e,n)=>(0,j.jsx)("li",{children:e},t.name?`${t.name}-error-${n}`:n))})}var Ee=require("tailwind-merge"),Ie=require("react/jsx-runtime");function Y(t){let e=t.errors&&t.errors.length>0;return(0,Ie.jsx)("div",{"data-slot":"field","data-clickable":t.isClickable?"true":"false",...e&&{[At]:"true"},...t.disabled&&{[Ct]:"true"},"data-orientation":t.orientation,className:(0,Ee.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",t.isCheckbox&&"flex-row-reverse!","data-[clickable=true]:has-[>[data-slot=field-content]]:[&>:first-child]:mt-px",de(t.cols),t.className),children:t.children})}var ke=require("tailwind-merge"),Pe=require("react/jsx-runtime");function Oe(t){return(0,Pe.jsx)(Y,{...t,orientation:f,className:(0,ke.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!t.isClickable&&"[&>*]:w-full"),children:t.children})}var we=require("tailwind-merge"),De=require("react/jsx-runtime");function Le(t){return(0,De.jsx)(Y,{...t,orientation:C,className:(0,we.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]",t.isClickable&&"md:flex-col",!t.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:t.children})}var tt=require("react/jsx-runtime");function _e(t){let e=Gt(t.field),n=s(t.field);return t.orientation===f?(0,tt.jsx)(Oe,{cols:t.cols,disabled:t.disabled,errors:t.errors,isCheckbox:n,isClickable:e,children:t.children}):(0,tt.jsx)(Le,{cols:t.cols,disabled:t.disabled,errors:t.errors,isCheckbox:n,isClickable:e,children:t.children})}function Me(t){if(!t.field.type)return null;let e=zt(t.field,t.disabled),n=le(t.field),r=ie(t.field,t.errors),o={...t.field,disabled:e.disabled};return t.children({ariaAttributes:r,commonProps:e,dataAttributes:n,field:o,orientation:t.orientation})}var N=require("react/jsx-runtime");function Ve(t){let e=t.field.advanced?.cols,n=t.field.name?t.errors?.[t.field.name]:void 0,{orientation:r}=v(t.style,{orientation:$t(t.field)}),o=Ht(t.field,t.disabled);return(0,N.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,N.jsx)(_e,{cols:e,disabled:o,errors:n,field:t.field,orientation:r,children:(0,N.jsx)(Me,{disabled:o,errors:n,field:t.field,orientation:r,children:t.children})}),(0,N.jsx)(Se,{errors:n,name:t.field.name})]})}var ve=require("tailwind-merge"),et=require("react/jsx-runtime");function Ge(t){let e=se(t.column?.advanced?.cols);return(0,et.jsx)("div",{className:"flex w-full flex-col gap-4",children:(0,et.jsx)("div",{className:(0,ve.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",e),children:t.children})})}var Xe=require("react"),F=require("react/jsx-runtime");function nt(t){let{column:e,field:n}=t.components;return V(t.fields).map((r,o)=>(0,F.jsxs)(Xe.Fragment,{children:[Xt(r)&&(0,F.jsx)(e,{column:r,children:(0,F.jsx)(nt,{...t,fields:r.fields})}),Yt(r)&&(0,F.jsx)(n,{disabled:t.disabled,field:r,style:t.style,children:t.children})]},o))}var Ue=require("react/jsx-runtime");function Ye(t){return n=>(0,Ue.jsx)(nt,{...n,components:{column:Ge,field:t}})}var Be=Ye(Ve);var U=require("react/jsx-runtime");function B(t){let e=t.translations?.[t.lang??""];return(0,U.jsx)(xe,{config:t.config,control:t.children,definition:t.definition,readOnly:t.readOnly,sections:t.sections,children:({disabled:n,fields:r})=>(0,U.jsx)(Be,{disabled:n,fields:r,style:t.config.style,children:o=>(0,U.jsx)(Fe,{...o,config:t.config,context:t.context,translations:e,value:t.value})})})}var $e=require("react");var rt=require("react/jsx-runtime");function He(t){return(0,rt.jsx)($e.Suspense,{fallback:(0,rt.jsx)(B,{config:t.config,sections:t.sections,readOnly:!0}),children:t.children})}
@@ -1 +1 @@
1
- import{jsx as we}from"react/jsx-runtime";function W(t){let e=typeof t.children=="function"?t.children({isPending:t.isPending}):t.children;return we("div",{"data-slot":"field-control",className:"w-full",children:e})}import{jsx as Le}from"react/jsx-runtime";function R(t){return Le("div",{"data-slot":"field-group","data-compact":t.compact,className:"flex w-full flex-col gap-8 data-[compact=true]:gap-3",children:t.children})}var E="input",q="input/email",z="input/number";var Z="textarea",J="radio",Q="checkbox",j="select",tt="select/month",et="select/year";var _="column";var nt="label",M="value",I="options",V="email",rt="number",ot="password",it="tel",T="text",lt="aria-errormessage",at="aria-invalid",ct="data-invalid",st="data-readonly",dt="aria",ut="data",ft="min",mt="max",pt="minLength",gt="maxLength",b="$ref";var u="vertical",y="horizontal";function l(t){return t!==null&&Object.prototype.toString.call(t)==="[object Object]"}function f(t){return typeof t=="string"||typeof t=="number"||typeof t=="boolean"}function p(t){return typeof t=="string"}var De=/[^/]+$/;function xt(t,e=M){if(t!=null){if(f(t))return t;if(l(t)){let n=_e(t,e);if(f(n))return n}}}function _e(t,e){let n=g(t,e);if(f(n))return n}function g(t,e){if(!e||!l(t))return null;let n=e.split(".").filter(o=>o!=="");if(n.length===0)return null;let r=t;for(let o of n)if(l(r)&&o in r)r=r[o];else return null;return r}function bt(t,e={label:nt,value:M}){return t.map(n=>{if(l(n)){let r=g(n,e.label),o=g(n,e.value);if(f(r)&&f(o))return{label:`${r}`,value:`${o}`}}return n})}function yt(t=T){if(t){let e=t.match(De);if(e){let[n]=e;if(n!==E)return n.trim().toLowerCase()}}return T}var Me=/\[([^\]]+)\]\(([^)]+)\)/g;function A(t,e={}){if(p(t))return Ve(t,e);if(Array.isArray(t))return t.map(n=>A(n,e));if(l(t)){let n={};for(let r in t)n[r]=A(t[r],e);return n}return t}function C(t){return p(t)?/{([^}]+)}/.test(t):Array.isArray(t)?t.some(e=>C(e)):l(t)?Object.values(t).some(e=>C(e)):!1}function Ve(t,e={}){return t.replace(/{([^}]+)}/g,(n,r)=>{let o=r.includes(".")?g(e,r):e[r];return f(o)?String(o):n})}function Rt(t,e){if(!t||t.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Me.exec(t))!==null;){let[a,m,Oe]=n,S=n.index;o=!0,S>r&&i.push(t.substring(r,S));let Pe=e?e(S,Oe,m):a;i.push(Pe),r=S+a.length}return o?(r<t.length&&i.push(t.substring(r)),i):t}var Tt=t=>s(tt)(t),At=t=>s(et)(t),d=s(Q),Ct=s(E),x=s(J),c=s(j),ht=s(Z),Ft=s(T,V,ot,it),vn=s(q,V),Nt=s(z,rt);function St(t){return x(t)||d(t)}function Et(t){return t.type===_}function It(t){return t.type!==_}function kt(t){return c(t)||x(t)}function v(t){return t!=null&&t!==""}function s(...t){return e=>{let n=p(e.type)?e.type:void 0;return n?t.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Ot(t,e={}){if(c(t)&&t.disabled){let n=t.name?e?.[t.name]:void 0;if(n&&l(n))return[n]}}function Pt(t){return x(t)||d(t)?y:t.advanced?.orientation??u}function wt(t,e){let n=t.readonly??!1;return e||n}function Lt(t){if(x(t)||c(t)&&!t.disabled){let e=t.source;if(Array.isArray(e)||l(e)&&!(b in e))return e}}function Dt(t,e){let n=Lt(t);return n||Ot(t,e)}function ve(t,e){let n=l(e)&&t.name in e?e[t.name]:e;return xt(n,t.advanced?.entity)}function Ge(t,e,n){return kt(t)&&Array.isArray(n)?{...e,[I]:n}:e}function Xe(t,e,n){if(t.required&&!v(n)&&c(t)&&t.advanced?.preselected!==!1&&I in e){let r=e[I];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function Ye(t,e){return c(t)&&Array.isArray(e)?bt(e,t.advanced?.options):e}function _t(t,e,n,r){let o=ve(t,r),i=Array.isArray(n)?Ye(t,n):n,a=Ge(t,e,i),m=Xe(t,a,o);return{commonPropsWithOptions:a,defaultValue:m}}function Mt(t,e){return d(t)?{defaultChecked:v(e)}:{defaultValue:e}}var Ue=/^#\/definition\//;function O(t=[],e){let n=k(t,e);return Array.isArray(n)?n.sort((r,o)=>Vt(r)-Vt(o)):[]}function k(t,e,n=new Map,r=new WeakSet){if(!Be(e)||!t||typeof t!="object")return t;if(n.has(t))return n.get(t);if(r.has(t))return t;if(r.add(t),Array.isArray(t))return t.map(i=>k(i,e,n,r));if(b in t&&p(t[b])){let i=t[b].replace(Ue,""),a=g(e,i);return a!==null?k(a,e,n,r):t}let o={};for(let[i,a]of Object.entries(t))o[i]=k(a,e,n,r);return r.delete(t),n.set(t,o),o}function vt(t){return Object.entries(t??{})}function Vt(t){return t.order??Number.MAX_VALUE}function Be(t){return t!==void 0&&l(t)&&Object.keys(t).length>0}function Gt(t,e){let n={};for(let[r,o]of vt(e))n[`${t}-${r}`]=o;return n}function Xt(t){return Gt(dt,t)}function Yt(t){return Gt(ut,t)}var Ut={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Bt={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function $t(t,e=2){return Ut[t&&t in Ut?t:e]}function Ht(t){if(t&&t in Bt)return Bt[t]}var $e=/^\d+$/;function Kt(){return Array.from({length:12},(t,e)=>({value:(e+1).toString(),label:new Date(0,e).toLocaleString("default",{month:"long"})}))}function Wt(t,e){return e>=t?Array.from({length:e-t+1},(n,r)=>{let o=t+r;return{value:o.toString(),label:o.toString()}}):[]}function G(){return new Date().getFullYear()}function X(t,e){if(typeof t=="number")return t;let n=e??G(),r=t.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,a]=o,m=parseInt(a,10);if(!isNaN(m))return i==="+"?n+m:n-m}return n}return $e.test(r)?parseInt(r,10):n}function h(t,e){return t?e?e[t]??t:t:""}function P(t,e){return{...t,...e}}import{jsx as He}from"react/jsx-runtime";function F(t){return Rt(t,(e,n,r)=>He("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${e}`))}import{Fragment as Ke,jsx as qt,jsxs as We}from"react/jsx-runtime";function zt(t){return We(Ke,{children:[t.title&&qt("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:F(t.title)}),t.description&&qt("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:F(t.description)})]})}import{jsx as Y,jsxs as qe}from"react/jsx-runtime";function Zt(t){let e=t.section.fields||[],{compact:n}=P(t.style,{compact:t.section.compact});return!t.section.title&&!t.section.description?Y(R,{compact:n,children:t.children}):qe("fieldset",{"data-slot":"field-set","data-empty":e.length===0,className:"flex flex-col data-[empty=false]:gap-6",id:t.section.id?.toString(),children:[Y(zt,{description:t.section.description,title:t.section.title}),Y(R,{compact:n,children:t.children})]})}import{Fragment as ze}from"react";import{jsx as Jt}from"react/jsx-runtime";function Qt(){return Jt("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:Jt("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}import{jsx as N,jsxs as jt}from"react/jsx-runtime";function te(t){let e=O(t.sections,t.definition);return N("div",{className:"h-full w-full",children:N("form",{noValidate:t.noValidate,action:t.action,children:jt(R,{children:[e.map((n,r)=>jt(ze,{children:[N(Zt,{section:n,style:t.config.style,children:t.children({disabled:t.readOnly,fields:n.fields})}),n.separator&&N(Qt,{})]},r)),t.control&&N(W,{isPending:t.isPending,children:t.control})]})})})}import{jsx as Ze}from"react/jsx-runtime";function ee(t){return Ze("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:t.children})}import{jsx as Je}from"react/jsx-runtime";function w(t){let e=F(t.text);return e?Je(ee,{children:e}):null}import{twMerge as Qe}from"tailwind-merge";import{jsx as je,jsxs as tn}from"react/jsx-runtime";function ne(t){let e=x(t.field)||d(t.field);return tn("label",{"data-slot":"field-label","data-normal":e,className:Qe("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:t.field.name,children:[t.children,!t.field.required&&je("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:"(Optional)"})]})}import{jsx as re,jsxs as en}from"react/jsx-runtime";function oe(t){let e=C(t.field.label)?A(t.field.label,{context:t.context,env:t.config?.env}):t.field.label,n=C(t.field.description)?A(t.field.description,{context:t.context,env:t.config?.env}):t.field.description;return en("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[re(ne,{field:t.field,children:h(e,t.translations)}),t.orientation===y&&re(w,{text:h(n,t.translations)})]})}import{Fragment as nn,jsx as ie,jsxs as rn}from"react/jsx-runtime";function le(t){return rn(nn,{children:[t.field.name&&t.field.label&&ie(oe,{config:t.config,context:t.context,field:t.field,orientation:t.orientation,translations:t.translations}),t.children,t.orientation===u&&t.field.description&&ie(w,{text:h(t.field.description,t.translations)})]})}function ae(t,e){return t?e(t):null}import{jsx as ce}from"react/jsx-runtime";function se(t){let e=Dt(t.field,t.value),{commonPropsWithOptions:n,defaultValue:r}=_t(t.field,t.commonProps,e,t.value),o=Mt(t.field,r);return ae(t.config.inputs[t.field.type],i=>ce(le,{config:t.config,context:t.context,field:t.field,orientation:t.orientation,translations:t.translations,children:ce(i,{...t.ariaAttributes,...n,...t.dataAttributes,...o})}))}import{jsx as de}from"react/jsx-runtime";function ue(t){return!t.errors||t.errors.length===0?null:de("ul",{className:"text-sm text-red-600 dark:text-red-500",id:t.name?`${t.name}-error`:void 0,children:t.errors?.map((e,n)=>de("li",{children:e},t.name?`${t.name}-error-${n}`:n))})}import{twMerge as on}from"tailwind-merge";import{jsx as ln}from"react/jsx-runtime";function L(t){let e=t.errors&&t.errors.length>0;return ln("div",{"data-slot":"field","data-clickable":t.isClickable?"true":"false",...e&&{[ct]:"true"},...t.disabled&&{[st]:"true"},"data-orientation":t.orientation,className:on("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",t.isCheckbox&&"flex-row-reverse!","data-[clickable=true]:has-[>[data-slot=field-content]]:[&>:first-child]:mt-px",Ht(t.cols),t.className),children:t.children})}import{twMerge as an}from"tailwind-merge";import{jsx as cn}from"react/jsx-runtime";function fe(t){return cn(L,{...t,orientation:u,className:an("gap-3 has-[>[data-slot=field-content]]:items-start",!t.isClickable&&"[&>*]:w-full"),children:t.children})}import{twMerge as sn}from"tailwind-merge";import{jsx as dn}from"react/jsx-runtime";function me(t){return dn(L,{...t,orientation:y,className:sn("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]",t.isClickable&&"md:flex-col",!t.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:t.children})}import{jsx as pe}from"react/jsx-runtime";function ge(t){let e=St(t.field),n=d(t.field);return t.orientation===u?pe(fe,{cols:t.cols,disabled:t.disabled,errors:t.errors,isCheckbox:n,isClickable:e,children:t.children}):pe(me,{cols:t.cols,disabled:t.disabled,errors:t.errors,isCheckbox:n,isClickable:e,children:t.children})}var D=G();function xe(t){if(c(t))return un(t)}function un(t){if(Tt(t))return Kt();if(At(t)){let e=t.advanced?.length?.min??D,n=t.advanced?.length?.max??D+5;return Wt(X(e,D),X(n,D))}}function be(t,e=!1){let n={disabled:e,id:t.name,name:t.name,placeholder:t.placeholder,required:t.required};return Ct(t)?{...n,...fn(t)}:c(t)?{...n,...mn(t)}:ht(t)?{...n,...pn(t)}:n}function fn(t){let e=yt(t.type),n={...t,type:e};return{...ye(t),...gn(n),...Ft(n)?Re(n):{},type:e}}function mn(t){let e=xe(t);return e?{options:e}:{}}function pn(t){return{...ye(t),...Re(t)}}function ye(t){let e=t.advanced?.autocomplete;return e?{autoComplete:e}:{}}function gn(t){return Nt(t)?xn(t):{}}function Re(t){return Te(t,{min:pt,max:gt})}function xn(t){return Te(t,{min:ft,max:mt})}function Te(t,e){let n={},r=t.advanced?.length;return r&&(r.min!==void 0&&(n[e.min]=r.min),r.max!==void 0&&(n[e.max]=r.max)),n}function Ae(t,e){let n=Xt(t.advanced?.aria);return e&&e.length>0&&(n[at]="true",n[lt]=`${t.name}-error`),n}function Ce(t){return Yt(t.advanced?.data)}function he(t){if(!t.field.type)return null;let e=be(t.field,t.disabled),n=Ce(t.field),r=Ae(t.field,t.errors),o={...t.field,disabled:e.disabled};return t.children({ariaAttributes:r,commonProps:e,dataAttributes:n,field:o,orientation:t.orientation})}import{jsx as U,jsxs as bn}from"react/jsx-runtime";function Fe(t){let e=t.field.advanced?.cols,n=t.field.name?t.errors?.[t.field.name]:void 0,{orientation:r}=P(t.style,{orientation:Pt(t.field)}),o=wt(t.field,t.disabled);return bn("div",{className:"flex flex-col gap-3",children:[U(ge,{cols:e,disabled:o,errors:n,field:t.field,orientation:r,children:U(he,{disabled:o,errors:n,field:t.field,orientation:r,children:t.children})}),U(ue,{errors:n,name:t.field.name})]})}import{twMerge as yn}from"tailwind-merge";import{jsx as Ne}from"react/jsx-runtime";function Se(t){let e=$t(t.column?.advanced?.cols);return Ne("div",{className:"flex w-full flex-col gap-4",children:Ne("div",{className:yn("grid grid-cols-1 gap-3 sm:gap-4",e),children:t.children})})}import{Fragment as Rn}from"react";import{jsx as B,jsxs as Tn}from"react/jsx-runtime";function $(t){let{column:e,field:n}=t.components;return O(t.fields).map((r,o)=>Tn(Rn,{children:[Et(r)&&B(e,{column:r,children:B($,{...t,fields:r.fields})}),It(r)&&B(n,{disabled:t.disabled,field:r,style:t.style,children:t.children})]},o))}import{jsx as An}from"react/jsx-runtime";function Ee(t){return n=>An($,{...n,components:{column:Se,field:t}})}var Ie=Ee(Fe);import{jsx as H}from"react/jsx-runtime";function K(t){let e=t.translations?.[t.lang??""];return H(te,{config:t.config,control:t.children,definition:t.definition,readOnly:t.readOnly,sections:t.sections,children:({disabled:n,fields:r})=>H(Ie,{disabled:n,fields:r,style:t.config.style,children:o=>H(se,{...o,config:t.config,context:t.context,translations:e,value:t.value})})})}import{Suspense as Cn}from"react";import{jsx as ke}from"react/jsx-runtime";function hn(t){return ke(Cn,{fallback:ke(K,{config:t.config,sections:t.sections,readOnly:!0}),children:t.children})}export{hn as Fallback,K as Form};
1
+ import{jsx as ke}from"react/jsx-runtime";function W(t){let e=typeof t.children=="function"?t.children({isPending:t.isPending}):t.children;return ke("div",{"data-slot":"field-control",className:"w-full",children:e})}import{jsx as Oe}from"react/jsx-runtime";function T(t){return Oe("div",{"data-slot":"field-group","data-compact":t.compact,className:"flex w-full flex-col gap-8 data-[compact=true]:gap-3",children:t.children})}var E="input",q="input/email",z="input/number";var Z="textarea",J="radio",Q="checkbox",j="select",tt="select/month",et="select/year";var _="column";var nt="label",M="value",I="options",V="email",rt="number",ot="password",it="tel",A="text",lt="aria-errormessage",at="aria-invalid",ct="data-invalid",st="data-readonly",dt="aria",ut="data",ft="min",mt="max",pt="minLength",gt="maxLength",y="$ref";var u="vertical",R="horizontal";function l(t){return t!==null&&Object.prototype.toString.call(t)==="[object Object]"}function f(t){return typeof t=="string"||typeof t=="number"||typeof t=="boolean"}function p(t){return typeof t=="string"}var Pe=/[^/]+$/;function xt(t,e=M){if(t!=null){if(f(t))return t;if(l(t)){let n=we(t,e);if(f(n))return n}}}function we(t,e){let n=g(t,e);if(f(n))return n}function g(t,e){if(!e||!l(t))return null;let n=e.split(".").filter(o=>o!=="");if(n.length===0)return null;let r=t;for(let o of n)if(l(r)&&o in r)r=r[o];else return null;return r}function bt(t,e={label:nt,value:M}){return t.map(n=>{if(l(n)){let r=g(n,e.label),o=g(n,e.value);if(f(r)&&f(o))return{label:`${r}`,value:`${o}`}}return n})}function yt(t=A){if(t){let e=t.match(Pe);if(e){let[n]=e;if(n!==E)return n.trim().toLowerCase()}}return A}var Le=/\[([^\]]+)\]\(([^)]+)\)/g;function C(t,e={}){if(p(t))return De(t,e);if(Array.isArray(t))return t.map(n=>C(n,e));if(l(t)){let n={};for(let r in t)n[r]=C(t[r],e);return n}return t}function h(t){return p(t)?/{([^}]+)}/.test(t):Array.isArray(t)?t.some(e=>h(e)):l(t)?Object.values(t).some(e=>h(e)):!1}function De(t,e={}){return t.replace(/{([^}]+)}/g,(n,r)=>{let o=r.includes(".")?g(e,r):e[r];return f(o)?String(o):n})}function Rt(t,e){if(!t||t.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Le.exec(t))!==null;){let[a,m,Ee]=n,S=n.index;o=!0,S>r&&i.push(t.substring(r,S));let Ie=e?e(S,Ee,m):a;i.push(Ie),r=S+a.length}return o?(r<t.length&&i.push(t.substring(r)),i):t}var Tt=t=>c(tt)(t),At=t=>c(et)(t),s=c(Q),Ct=c(E),x=c(J),d=c(j),ht=c(Z),Nt=c(A,V,ot,it),vn=c(q,V),Ft=c(z,rt);function St(t){return x(t)||s(t)}function Et(t){return t.type===_}function It(t){return t.type!==_}function kt(t){return d(t)||x(t)}function v(t){return t!=null&&t!==""}function c(...t){return e=>{let n=p(e.type)?e.type:void 0;return n?t.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Ot(t,e={}){if(d(t)&&t.disabled){let n=t.name?e?.[t.name]:void 0;if(n&&l(n))return[n]}}function Pt(t){return x(t)||s(t)?R:t.advanced?.orientation??u}function wt(t,e){let n=t.readonly??!1;return e||n}function Lt(t){if(x(t)||d(t)&&!t.disabled){let e=t.source;if(Array.isArray(e)||l(e)&&!(y in e))return e}}var _e=/^\d+$/;function Dt(){return Array.from({length:12},(t,e)=>({value:(e+1).toString(),label:new Date(0,e).toLocaleString("default",{month:"long"})}))}function _t(t,e){return e>=t?Array.from({length:e-t+1},(n,r)=>{let o=t+r;return{value:o.toString(),label:o.toString()}}):[]}function G(){return new Date().getFullYear()}function X(t,e){if(typeof t=="number")return t;let n=e??G(),r=t.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,a]=o,m=parseInt(a,10);if(!isNaN(m))return i==="+"?n+m:n-m}return n}return _e.test(r)?parseInt(r,10):n}var k=G();function Me(t){if(d(t))return Ve(t)}function Ve(t){if(Tt(t))return Dt();if(At(t)){let e=t.advanced?.length?.min??k,n=t.advanced?.length?.max??k+5;return _t(X(e,k),X(n,k))}}function Mt(t,e=!1){let n={disabled:e,id:t.name,name:t.name,placeholder:t.placeholder,required:t.required};return Ct(t)?{...n,...ve(t)}:d(t)?{...n,...Ge(t)}:ht(t)?{...n,...Xe(t)}:n}function ve(t){let e=yt(t.type),n={...t,type:e};return{...Vt(t),...Ye(n),...Nt(n)?vt(n):{},type:e}}function Ge(t){let e=Me(t);return e?{options:e}:{}}function Xe(t){return{...Vt(t),...vt(t)}}function Vt(t){let e=t.advanced?.autocomplete;return e?{autoComplete:e}:{}}function Ye(t){return Ft(t)?Ue(t):{}}function vt(t){return Gt(t,{min:pt,max:gt})}function Ue(t){return Gt(t,{min:ft,max:mt})}function Gt(t,e){let n={},r=t.advanced?.length;return r&&(r.min!==void 0&&(n[e.min]=r.min),r.max!==void 0&&(n[e.max]=r.max)),n}function Xt(t,e){let n=Lt(t);return n||Ot(t,e)}function Be(t,e){let n=l(e)&&t.name in e?e[t.name]:e;return xt(n,t.advanced?.entity)}function $e(t,e,n){return kt(t)&&Array.isArray(n)?{...e,[I]:n}:e}function He(t,e,n){if(t.required&&!v(n)&&d(t)&&t.advanced?.preselected!==!1&&I in e){let r=e[I];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function Ke(t,e){return d(t)&&Array.isArray(e)?bt(e,t.advanced?.options):e}function Yt(t,e,n,r){let o=Be(t,r),i=Array.isArray(n)?Ke(t,n):n,a=$e(t,e,i),m=He(t,a,o);return{commonPropsWithOptions:a,defaultValue:m}}function Ut(t,e){return s(t)?{defaultChecked:v(e)}:{defaultValue:e}}var We=/^#\/definition\//;function P(t=[],e){let n=O(t,e);return Array.isArray(n)?n.sort((r,o)=>Bt(r)-Bt(o)):[]}function O(t,e,n=new Map,r=new WeakSet){if(!qe(e)||!t||typeof t!="object")return t;if(n.has(t))return n.get(t);if(r.has(t))return t;if(r.add(t),Array.isArray(t))return t.map(i=>O(i,e,n,r));if(y in t&&p(t[y])){let i=t[y].replace(We,""),a=g(e,i);return a!==null?O(a,e,n,r):t}let o={};for(let[i,a]of Object.entries(t))o[i]=O(a,e,n,r);return r.delete(t),n.set(t,o),o}function $t(t){return Object.entries(t??{})}function Bt(t){return t.order??Number.MAX_VALUE}function qe(t){return t!==void 0&&l(t)&&Object.keys(t).length>0}function Ht(t,e){let n={};for(let[r,o]of $t(e))n[`${t}-${r}`]=o;return n}function ze(t){return Ht(dt,t)}function Ze(t){return Ht(ut,t)}function Kt(t,e){let n=ze(t.advanced?.aria);return e&&e.length>0&&(n[at]="true",n[lt]=`${t.name}-error`),n}function Wt(t){return Ze(t.advanced?.data)}var qt={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},zt={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function Zt(t,e=2){return qt[t&&t in qt?t:e]}function Jt(t){if(t&&t in zt)return zt[t]}function b(t,e){return t?e?e[t]??t:t:""}function w(t,e){return{...t,...e}}import{jsx as Je}from"react/jsx-runtime";function N(t){return Rt(t,(e,n,r)=>Je("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${e}`))}import{Fragment as Qe,jsx as Qt,jsxs as je}from"react/jsx-runtime";function jt(t){return je(Qe,{children:[t.title&&Qt("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:N(t.title)}),t.description&&Qt("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:N(t.description)})]})}import{jsx as Y,jsxs as tn}from"react/jsx-runtime";function te(t){let e=t.section.fields||[],{compact:n}=w(t.style,{compact:t.section.compact});return!t.section.title&&!t.section.description?Y(T,{compact:n,children:t.children}):tn("fieldset",{"data-slot":"field-set","data-empty":e.length===0,className:"flex flex-col data-[empty=false]:gap-6",id:t.section.id?.toString(),children:[Y(jt,{description:t.section.description,title:t.section.title}),Y(T,{compact:n,children:t.children})]})}import{Fragment as en}from"react";import{jsx as ee}from"react/jsx-runtime";function ne(){return ee("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:ee("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}import{jsx as F,jsxs as re}from"react/jsx-runtime";function oe(t){let e=P(t.sections,t.definition);return F("div",{className:"h-full w-full",children:F("form",{noValidate:t.noValidate,action:t.action,children:re(T,{children:[e.map((n,r)=>re(en,{children:[F(te,{section:n,style:t.config.style,children:t.children({disabled:t.readOnly,fields:n.fields})}),n.separator&&F(ne,{})]},r)),t.control&&F(W,{isPending:t.isPending,children:t.control})]})})})}import{jsx as nn}from"react/jsx-runtime";function ie(t){return nn("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:t.children})}import{jsx as rn}from"react/jsx-runtime";function L(t){let e=N(t.text);return e?rn(ie,{children:e}):null}import{twMerge as on}from"tailwind-merge";import{jsx as ln,jsxs as an}from"react/jsx-runtime";function le(t){let e=x(t.field)||s(t.field);return an("label",{"data-slot":"field-label","data-normal":e,className:on("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:t.field.name,children:[t.children,!t.field.required&&ln("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:b("(Optional)",t.translations)})]})}import{jsx as ae,jsxs as cn}from"react/jsx-runtime";function ce(t){let e=h(t.field.label)?C(t.field.label,{context:t.context,env:t.config?.env}):t.field.label,n=h(t.field.description)?C(t.field.description,{context:t.context,env:t.config?.env}):t.field.description;return cn("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[ae(le,{field:t.field,translations:t.translations,children:b(e,t.translations)}),t.orientation===R&&ae(L,{text:b(n,t.translations)})]})}import{Fragment as sn,jsx as se,jsxs as dn}from"react/jsx-runtime";function de(t){return dn(sn,{children:[t.field.name&&t.field.label&&se(ce,{config:t.config,context:t.context,field:t.field,orientation:t.orientation,translations:t.translations}),t.children,t.orientation===u&&t.field.description&&se(L,{text:b(t.field.description,t.translations)})]})}function ue(t,e){return t?e(t):null}import{jsx as fe}from"react/jsx-runtime";function me(t){let e=Xt(t.field,t.value),{commonPropsWithOptions:n,defaultValue:r}=Yt(t.field,t.commonProps,e,t.value),o=Ut(t.field,r);return ue(t.config.inputs[t.field.type],i=>fe(de,{config:t.config,context:t.context,field:t.field,orientation:t.orientation,translations:t.translations,children:fe(i,{...t.ariaAttributes,...n,...t.dataAttributes,...o})}))}import{jsx as pe}from"react/jsx-runtime";function ge(t){return!t.errors||t.errors.length===0?null:pe("ul",{className:"text-sm text-red-600 dark:text-red-500",id:t.name?`${t.name}-error`:void 0,children:t.errors?.map((e,n)=>pe("li",{children:e},t.name?`${t.name}-error-${n}`:n))})}import{twMerge as un}from"tailwind-merge";import{jsx as fn}from"react/jsx-runtime";function D(t){let e=t.errors&&t.errors.length>0;return fn("div",{"data-slot":"field","data-clickable":t.isClickable?"true":"false",...e&&{[ct]:"true"},...t.disabled&&{[st]:"true"},"data-orientation":t.orientation,className:un("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",t.isCheckbox&&"flex-row-reverse!","data-[clickable=true]:has-[>[data-slot=field-content]]:[&>:first-child]:mt-px",Jt(t.cols),t.className),children:t.children})}import{twMerge as mn}from"tailwind-merge";import{jsx as pn}from"react/jsx-runtime";function xe(t){return pn(D,{...t,orientation:u,className:mn("gap-3 has-[>[data-slot=field-content]]:items-start",!t.isClickable&&"[&>*]:w-full"),children:t.children})}import{twMerge as gn}from"tailwind-merge";import{jsx as xn}from"react/jsx-runtime";function be(t){return xn(D,{...t,orientation:R,className:gn("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]",t.isClickable&&"md:flex-col",!t.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:t.children})}import{jsx as ye}from"react/jsx-runtime";function Re(t){let e=St(t.field),n=s(t.field);return t.orientation===u?ye(xe,{cols:t.cols,disabled:t.disabled,errors:t.errors,isCheckbox:n,isClickable:e,children:t.children}):ye(be,{cols:t.cols,disabled:t.disabled,errors:t.errors,isCheckbox:n,isClickable:e,children:t.children})}function Te(t){if(!t.field.type)return null;let e=Mt(t.field,t.disabled),n=Wt(t.field),r=Kt(t.field,t.errors),o={...t.field,disabled:e.disabled};return t.children({ariaAttributes:r,commonProps:e,dataAttributes:n,field:o,orientation:t.orientation})}import{jsx as U,jsxs as bn}from"react/jsx-runtime";function Ae(t){let e=t.field.advanced?.cols,n=t.field.name?t.errors?.[t.field.name]:void 0,{orientation:r}=w(t.style,{orientation:Pt(t.field)}),o=wt(t.field,t.disabled);return bn("div",{className:"flex flex-col gap-3",children:[U(Re,{cols:e,disabled:o,errors:n,field:t.field,orientation:r,children:U(Te,{disabled:o,errors:n,field:t.field,orientation:r,children:t.children})}),U(ge,{errors:n,name:t.field.name})]})}import{twMerge as yn}from"tailwind-merge";import{jsx as Ce}from"react/jsx-runtime";function he(t){let e=Zt(t.column?.advanced?.cols);return Ce("div",{className:"flex w-full flex-col gap-4",children:Ce("div",{className:yn("grid grid-cols-1 gap-3 sm:gap-4",e),children:t.children})})}import{Fragment as Rn}from"react";import{jsx as B,jsxs as Tn}from"react/jsx-runtime";function $(t){let{column:e,field:n}=t.components;return P(t.fields).map((r,o)=>Tn(Rn,{children:[Et(r)&&B(e,{column:r,children:B($,{...t,fields:r.fields})}),It(r)&&B(n,{disabled:t.disabled,field:r,style:t.style,children:t.children})]},o))}import{jsx as An}from"react/jsx-runtime";function Ne(t){return n=>An($,{...n,components:{column:he,field:t}})}var Fe=Ne(Ae);import{jsx as H}from"react/jsx-runtime";function K(t){let e=t.translations?.[t.lang??""];return H(oe,{config:t.config,control:t.children,definition:t.definition,readOnly:t.readOnly,sections:t.sections,children:({disabled:n,fields:r})=>H(Fe,{disabled:n,fields:r,style:t.config.style,children:o=>H(me,{...o,config:t.config,context:t.context,translations:e,value:t.value})})})}import{Suspense as Cn}from"react";import{jsx as Se}from"react/jsx-runtime";function hn(t){return Se(Cn,{fallback:Se(K,{config:t.config,sections:t.sections,readOnly:!0}),children:t.children})}export{hn as Fallback,K as Form};
@@ -1,4 +1,9 @@
1
1
  import type { CommonProps, DataSource, Field, Nullable, Value } from '../type';
2
+ export declare function buildOptionSelect(field: Field): {
3
+ value: string;
4
+ label: string;
5
+ }[] | undefined;
6
+ export declare function buildCommon(field: Field, disabled?: boolean): CommonProps;
2
7
  export declare function resolveSource(field: Field, value?: Nullable<Record<string, unknown>>): DataSource | unknown[] | undefined;
3
8
  export declare function getInputValue<K>(field: Field, value?: Nullable<K>): Value | undefined;
4
9
  export declare function mergeOptionsProps(field: Field, commonProps: CommonProps, options?: Nullable<DataSource | unknown[]>): CommonProps | {
@@ -1,3 +1,6 @@
1
+ import type { Field } from '../type';
1
2
  export declare function getPrefixedAttributes(prefix: string, record?: Record<string, string | number | boolean>): Record<string, string | number | boolean>;
2
3
  export declare function getAriaAttributes(record?: Record<string, string | number | boolean>): Record<string, string | number | boolean>;
3
4
  export declare function getDataAttributes(record?: Record<string, string | number | boolean>): Record<string, string | number | boolean>;
5
+ export declare function buildAriaAttributes(field: Field, errors?: string[]): Record<string, string | number | boolean>;
6
+ export declare function buildDataAttributes(field: Field): Record<string, string | number | boolean>;
@@ -9,6 +9,10 @@ export declare function FormContent<T extends Record<string, unknown> = Record<s
9
9
  definition?: Definition;
10
10
  lang?: string;
11
11
  onSuccess?: (data: T) => void;
12
+ onValueChange?: (input: {
13
+ name: string;
14
+ value: unknown;
15
+ }) => void;
12
16
  readOnly?: boolean;
13
17
  sections: Sections;
14
18
  translations?: Record<string, Record<string, string>>;
@@ -9,6 +9,10 @@ export declare function Form<T extends Record<string, unknown> = Record<string,
9
9
  definition?: Definition;
10
10
  lang?: string;
11
11
  onSuccess?: (data: T) => void;
12
+ onValueChange?: (input: {
13
+ name: string;
14
+ value: unknown;
15
+ }) => void;
12
16
  readOnly?: boolean;
13
17
  sections: Sections;
14
18
  translations?: Record<string, Record<string, string>>;
@@ -9,6 +9,10 @@ export declare function Input(props: Readonly<{
9
9
  field: Field;
10
10
  onMount: (name: string, schema: Schema, field: Field) => void;
11
11
  onUnmount: (name: string) => void;
12
+ onValueChange?: (input: {
13
+ name: string;
14
+ value: unknown;
15
+ }) => void;
12
16
  orientation?: Orientation;
13
17
  translations?: Record<string, string>;
14
18
  value?: Nullable<Record<string, unknown>>;
@@ -1,5 +1,5 @@
1
+ import { type Field, type Orientation } from '@luna-form/core';
1
2
  import type { Children } from '../../type';
2
- import type { Field, Orientation } from '@luna-form/core';
3
3
  export declare function InputBase(props: Readonly<{
4
4
  children: Children;
5
5
  disabled?: boolean;
@@ -2,4 +2,5 @@ import { type Field } from '@luna-form/core';
2
2
  export declare function Label(props: Readonly<{
3
3
  children?: React.ReactNode;
4
4
  field: Field;
5
+ translations?: Record<string, string>;
5
6
  }>): import("react/jsx-runtime").JSX.Element;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-luna-form",
3
- "version": "0.0.19",
3
+ "version": "0.0.21",
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",
@@ -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.0",
36
- "@luna-form/core": "0.0.19"
36
+ "@luna-form/core": "0.0.21"
37
37
  },
38
38
  "license": "Apache-2.0",
39
39
  "repository": {