react-luna-form 0.0.72 → 0.0.74

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.
Files changed (30) hide show
  1. package/dist/client/cjs/index.js +1 -1
  2. package/dist/client/esm/index.js +1 -1
  3. package/dist/schema/cjs/index.js +1 -1
  4. package/dist/schema/esm/index.js +1 -1
  5. package/dist/server/cjs/index.js +1 -1
  6. package/dist/server/esm/index.js +1 -1
  7. package/dist/types/luna-core/helper/input.d.ts +6 -6
  8. package/dist/types/luna-core/type.d.ts +6 -9
  9. package/dist/types/luna-core/util/build.d.ts +1 -0
  10. package/dist/types/luna-core/util/date.d.ts +2 -2
  11. package/dist/types/luna-core/util/translate.d.ts +1 -0
  12. package/dist/types/luna-react/src/client/component/field/field-list-preview-item.d.ts +2 -1
  13. package/dist/types/luna-react/src/client/component/field/field-preview.d.ts +2 -1
  14. package/dist/types/luna-react/src/client/component/field/field.d.ts +1 -0
  15. package/dist/types/luna-react/src/client/component/guard/list-guard.d.ts +1 -1
  16. package/dist/types/luna-react/src/client/component/input-strategies.d.ts +1 -0
  17. package/dist/types/luna-react/src/client/component/slot/slot.d.ts +1 -0
  18. package/dist/types/luna-react/src/client/hook/use-data-source.d.ts +1 -1
  19. package/dist/types/luna-react/src/component/field/field-list.d.ts +1 -0
  20. package/dist/types/luna-react/src/component/field/field-set-advanced.d.ts +3 -1
  21. package/dist/types/luna-react/src/component/field/field-set.d.ts +1 -0
  22. package/dist/types/luna-react/src/component/field/field.d.ts +1 -0
  23. package/dist/types/luna-react/src/component/form.d.ts +1 -0
  24. package/dist/types/luna-react/src/component/input/input-base.d.ts +1 -0
  25. package/dist/types/luna-react/src/component/slot/list-slot.d.ts +1 -1
  26. package/dist/types/luna-react/src/component/slot/slot-base.d.ts +1 -0
  27. package/dist/types/luna-react/src/component/slot/slot-create.d.ts +1 -0
  28. package/dist/types/luna-react/src/component/slot/slot-list.d.ts +1 -0
  29. package/dist/types/luna-react/src/component/slot/slot.d.ts +1 -0
  30. package/package.json +4 -4
@@ -1 +1 @@
1
- import{jsx as cr}from"react/jsx-runtime";function Se(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return cr("div",{"data-slot":"field-control",className:"w-full",children:t})}import{jsx as Ae}from"react/jsx-runtime";function N(e){return Ae("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",className:`size-4 transition-transform duration-200 ${e.expanded?"rotate-90":""}`,children:Ae("path",{fillRule:"evenodd",d:"M8.22 5.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.75.75 0 0 1-1.06-1.06L11.94 10 8.22 6.28a.75.75 0 0 1 0-1.06Z",clipRule:"evenodd"})})}import{Activity as ur}from"react";import{createContext as dr}from"react";var ve=dr(!1);import{jsx as Ie}from"react/jsx-runtime";function w({children:e,visible:t}){return Ie(ur,{mode:t?"visible":"hidden",children:Ie(ve,{value:!0,children:e})})}var z="input",we="input/date",ke="input/email",Ee="input/number";var Le="input/time";var De="textarea",Oe="radio",Pe="checkbox",re="list";var Me="select",_e="select/active",Ve="select/day",ze="select/month",$e="select/timezone",He="select/year";var Ge="chips",Be="chips/day",Ue="chips/month",k="column",Ye="description",oe="fields",Xe="label",ie="value",$="options",le="email",Ke="number",Ze="password",We="tel",E="text",qe="aria-errormessage",Je="aria-invalid",Qe="data-invalid",je="data-readonly",et="aria",tt="data",nt="max",rt="maxLength",ot="min",it="minLength",S="$ref";var lt="type",at={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};import{format as mr,formatDistanceToNow as st,formatDuration as gr,intervalToDuration as pr,isValid as H,parseISO as xr}from"date-fns";import{enUS as ct,es as ae}from"date-fns/locale";function u(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function p(e){return d(e)||typeof e=="number"||fr(e)}function d(e){return typeof e=="string"}function fr(e){return typeof e=="boolean"}var dt={en:ct,"en-US":ct,es:ae,"es-ES":ae,"es-MX":ae},yr={short:"M/d/yy",medium:"MMM d, yyyy",long:"MMMM d, yyyy",full:"EEEE, MMMM d, yyyy"},br={ms:1,s:1e3,min:6e4,h:36e5,d:864e5};function ut(e){if(e)return dt[e]??dt[e.split("-")[0]]}function G(e){if(typeof e=="number"&&!Number.isNaN(e))return e;if(d(e)&&e.trim()!==""){let t=Number(e);return Number.isNaN(t)?null:t}return null}function ft(e,t,n){let r=br[t];if(r===void 0)return String(e);let o=e*r,i=pr({start:0,end:o});return gr(i,{locale:n})}function mt(e){if(e instanceof Date)return H(e)?e:null;if(d(e)){let t=xr(e);if(H(t))return t;let n=new Date(e);return H(n)?n:null}if(typeof e=="number"){let t=new Date(e);return H(t)?t:null}return null}var hr={currency:(e,t,n)=>{let r=G(e);if(r===null)return String(e);let o=t[0]??"USD";return new Intl.NumberFormat(n.locale,{style:"currency",currency:o}).format(r)},percent:(e,t,n)=>{let r=G(e);return r===null?String(e):new Intl.NumberFormat(n.locale,{style:"percent"}).format(r)},number:(e,t,n)=>{let r=G(e);return r===null?String(e):new Intl.NumberFormat(n.locale).format(r)},date:(e,t,n)=>{let r=mt(e);if(!r)return String(e);let o=t[0]??"short",i=ut(n.locale);if(o==="relative")return st(r,{addSuffix:!0,locale:i});let l=yr[o]??o;return mr(r,l,{locale:i})},duration:(e,t,n)=>{let r=ut(n.locale);if(typeof e=="number")return ft(e,t[0]??"ms",r);if(d(e)){let i=G(e);if(i!==null)return ft(i,t[0]??"ms",r)}let o=mt(e);return o?st(o,{addSuffix:!0,locale:r}):String(e)}};function gt(e,t,n){let r=t.split(":").map(a=>a.trim()).filter(a=>a.length>0);if(r.length===0)return;let[o,...i]=r,l=hr[o];if(l)return l(e,i,n)}function pt(e,t=ie){if(e!=null){if(Array.isArray(e)&&e.every(p)||p(e))return e;if(u(e)){let n=Tr(e,t);if(p(n))return n}}}function Tr(e,t){let n=x(e,t);if(p(n))return n}function x(e,t){if(!t||!u(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(u(r)&&o in r)r=r[o];else if(Array.isArray(r)){let i=Number(o);if(!Number.isInteger(i)||i<0||i>=r.length)return null;r=r[i]}else return null;return r}function xt(e,t={description:Ye,label:Xe,value:ie}){return e.map(n=>{if(u(n)){let r=x(n,t.label),o=x(n,t.value);if(p(r)&&p(o)){let i=x(n,t.description);return{label:`${r}`,value:`${o}`,...p(i)&&{description:`${i}`}}}}return n})}function yt(e=E){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==z?n.trim().toLowerCase():E}var Rr=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function se(e,t={},n={}){if(d(e))return Fr(e,t,n);if(Array.isArray(e))return e.map(r=>se(r,t,n));if(u(e)){let r={};for(let o in e)r[o]=se(e[o],t,n);return r}return e}function L(e,t={},n={}){return ce(e)?se(e,t,n):e}function ce(e){return d(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>ce(t)):u(e)?Object.values(e).some(t=>ce(t)):!1}function Fr(e,t={},n={}){return e.replace(/{([^}]{1,200})}/g,(r,o)=>{let i=String(o).split("|").map(g=>g.trim()),[l,...a]=i;if(!l)return r;let s=l.includes(".")?x(t,l):t[l];if(a.length===0)return p(s)?String(s):r;if(s==null)return r;let c=s;for(let g of a){let V=gt(c,g,{locale:n.locale});if(V===void 0)return r;c=V}return String(c)})}function bt(e,t){if(!d(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Rr.exec(e))!==null;){let[l,a,s]=n,c=n.index;o=!0,c>r&&i.push(e.substring(r,c));let g=t?t(c,s,a):l;i.push(g),r=c+l.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var ht=e=>f(_e)(e),Tt=e=>f(Ve)(e),Rt=e=>f(ze)(e),Ft=e=>f(He)(e),Ct=e=>f($e)(e),Nt=e=>f(Be)(e),St=e=>f(Ue)(e),At=f(we),de=f(Le),y=f(Pe),A=f(Ge),F=f(Oe),vt=f(z),h=f(Me),It=f(De),wt=f(E,le,Ze,We),ui=f(ke,le),kt=f(Ee,Ke);function Et(e){return F(e)||y(e)}function B(e){return e.type===re}function v(e){return e.type===k}function U(e){return e.type!==k&&e.type!==re}function ue(e){return h(e)||F(e)||A(e)}function I(e){return e!=null&&e!==""}function f(...e){return t=>{let n=d(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Lt(e,t={}){if(h(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&u(n))return[n]}}function Dt(e){return F(e)||y(e)?!0:e.advanced?.horizontal??!1}function Ot(e){return y(e)?e.advanced?.reverse!==!1:!1}function Pt(e,t){let n=e.readonly??!1;return t||n}function Mt(e){if(Cr(e)){let t=e.source;if(Array.isArray(t)||u(t)&&!(S in t))return t}}function Cr(e){return F(e)||A(e)||h(e)&&!e.disabled}import{isValid as zt,parse as $t,format as Ht}from"date-fns";var Nr=/^\d+$/,Gt=new Date(2e3,0,1),Sr=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[];function fe(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function me(){return Array.from({length:7},(e,t)=>({value:t.toString(),label:new Date(2e3,0,2+t).toLocaleString("default",{weekday:"long"})}))}function Bt(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 ge(){return new Date().getFullYear()}function Ar(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function vr(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return at[n]??"Other"}function Ir(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function _t(e,t){let n=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"longOffset"}).formatToParts(t),r=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"long"}).formatToParts(t),i=(n.find(a=>a.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),l=Ir(r,e);return{offset:i,longName:l}}function Vt(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function Ut(){let e=new Date,t=Ar(),n=new Map,r=Vt(t),{offset:o,longName:i}=_t(t,e),l={value:t,label:`${r} - ${i} (${o})`};for(let s of Sr()){if(s===t)continue;let c=Vt(s),{offset:g,longName:V}=_t(s,e),Ce={value:s,label:`${c} - ${V} (${g})`},ne=vr(s);if(ne==="Other")continue;let Ne=n.get(ne);Ne?Ne.push(Ce):n.set(ne,[Ce])}for(let s of n.values())s.sort((c,g)=>c.label.localeCompare(g.label));let a=Array.from(n.entries()).sort(([s],[c])=>s.localeCompare(c)).map(([s,c])=>({label:s,items:c}));return[{label:"Suggested",items:[l]},...a]}function pe(e,t){if(typeof e=="number")return e;let n=t??ge(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,l]=o,a=parseInt(l,10);if(!isNaN(a))return i==="+"?n+a:n-a}return n}return Nr.test(r)?parseInt(r,10):n}function Yt(e,t){if(!e)return"";try{let n=$t(e,t,Gt);return zt(n)?Ht(n,"yyyy-MM-dd"):""}catch{return""}}function Xt(e,t){if(!e)return"";try{let n=$t(e,t,Gt);return zt(n)?Ht(n,"HH:mm:ss"):""}catch{return""}}function xe(e){return e.advanced?.format??"HH:mm"}function Kt(e){return e.advanced?.format??"MMMM d, yyyy"}var Y=ge();function wr(e){if(A(e))return kr(e)}function kr(e){if(Nt(e))return me();if(St(e))return fe()}function Er(e){if(h(e))return Lr(e)}function Lr(e){if(Tt(e))return me();if(Rt(e))return fe();if(Ft(e)){let t=e.advanced?.length?.min??Y,n=e.advanced?.length?.max??Y+5;return Bt(pe(t,Y),pe(n,Y))}if(Ct(e))return Ut();if(ht(e))return[{value:"true",label:"Yes"},{value:"false",label:"No"}]}function Zt(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return vt(e)?{...n,...Dr(e)}:h(e)?{...n,...Wt(e,Er)}:It(e)?{...n,...Pr(e)}:A(e)?{...n,...Or(e)}:n}function Dr(e){let t=yt(e.type),n={...e,type:t};return{..._r(e),...qt(e),...Mr(n),...wt(n)?Jt(n):{},type:t}}function Wt(e,t){let n=t(e);return n?{options:n}:{}}function Or(e){let t=Wt(e,wr),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function Pr(e){return{...qt(e),...Jt(e)}}function qt(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Mr(e){return kt(e)?Vr(e):{}}function _r(e){if(de(e)){let t=xe(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function Jt(e){return Qt(e,{min:it,max:rt})}function Vr(e){return Qt(e,{min:ot,max:nt})}function Qt(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 jt(e,t){let n=Mt(e);return n||Lt(e,t)}function zr(e,t){let n=u(t)&&e.name in t?t[e.name]:t,r=pt(n,e.advanced?.entity),o=I(r)?r:e.defaultValue;return de(e)&&I(o)?$r(e,o):At(e)&&I(o)?Ur(e,o):o}function $r(e,t){let n=xe(e);return d(t)?Xt(t,n):t}function Hr(e,t,n){return ue(e)&&Array.isArray(n)?{...t,[$]:n}:t}function Gr(e,t,n){if(e.required&&!I(n)&&h(e)&&e.advanced?.preselected!==!1&&$ in t){let r=t[$];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function Br(e,t){return ue(e)&&Array.isArray(t)?xt(t,e.advanced?.options):t}function en(e,t,n,r){let o=zr(e,r),i=Array.isArray(n)?Br(e,n):n,l=Hr(e,t,i),a=Gr(e,l,o);return{commonPropsWithOptions:l,defaultValue:a}}function tn(e,t){return y(e)?{defaultChecked:I(t)}:{defaultValue:t}}function Ur(e,t){let n=Kt(e);return d(t)?Yt(t,n):t}var Yr=/^#\/definition\//;function K(e=[],t){let n=X(e,t);return Array.isArray(n)?n.filter(Kr).sort((r,o)=>nn(r)-nn(o)):[]}function X(e,t,n=new Map,r=new WeakSet){if(!Xr(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=>X(i,t,n,r));if(S in e&&d(e[S])){let i=e[S].replace(Yr,""),l=x(t,i);return l!==null?X(l,t,n,r):e}let o={};for(let[i,l]of Object.entries(e))o[i]=X(l,t,n,r);return r.delete(e),n.set(e,o),o}function rn(e){return Object.entries(e??{})}function nn(e){return e.order??Number.MAX_VALUE}function Xr(e){return e!==void 0&&u(e)&&Object.keys(e).length>0}function Kr(e){return lt in e?!0:Array.isArray(e[oe])?e[oe].length>0:!0}function on(e,t){let n={};for(let[r,o]of rn(t))n[`${e}-${r}`]=o;return n}function Zr(e){return on(et,e)}function Wr(e){return on(tt,e)}function ln(e,t){let n=Zr(e.advanced?.aria);return t&&t.length>0&&(n[Je]="true",n[qe]=`${e.name}-error`),n}function an(e){return Wr(e.advanced?.data)}var sn={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},cn={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function dn(e,t=2){return sn[e&&e in sn?e:t]}function un(e){if(e&&e in cn)return cn[e]}function qr(e,t){let n=e.advanced?.length?.min??1;if(t){let r=x(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function fn(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===k}function mn(e,t){let n=qr(e,t);return Array.from({length:n},(r,o)=>o)}function gn(e){return e.advanced?.title??e.label??e.name}function C(e,t){return e?t?t[e]??e:e:""}function Z(e,t){return{...e,...t}}import{jsx as Jr}from"react/jsx-runtime";function b(e){return bt(e,(t,n,r)=>Jr("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}import{useCallback as Qr,useState as jr}from"react";import{jsx as D,jsxs as ye}from"react/jsx-runtime";function pn(e){let{fields:t=[]}=e.section,[n,r]=jr(!1),o=Qr(()=>r(i=>!i),[]);return ye("fieldset",{"data-slot":"field-set","data-advanced":"true","data-expanded":n,"data-empty":t.length===0,className:"flex flex-col",id:e.section.id?.toString(),children:[D("legend",{children:ye("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-zinc-600 dark:text-zinc-400",onClick:o,type:"button",children:[D(N,{expanded:n}),D("span",{children:b(e.section.title)})]})}),D(w,{visible:n,children:ye("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-zinc-300 pl-4 dark:border-zinc-600","data-slot":"field-set-content",children:[e.section.description&&D("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:b(e.section.description)}),e.group]})})]})}import{jsx as W,jsxs as xn}from"react/jsx-runtime";function yn(e){let t=xn("div",{className:"flex flex-col",children:[e.title&&W("legend",{className:"mb-3 font-medium text-zinc-800 dark:text-zinc-200",children:b(e.title)}),e.description&&W("p",{className:"-mt-2 text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:b(e.description)})]});return e.step?xn("div",{className:"flex flex-row items-start gap-4",children:[W("div",{className:"bg-primary text-primary-foreground flex size-6 shrink-0 items-center justify-center rounded-full",children:W("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}import{jsx as bn,jsxs as eo}from"react/jsx-runtime";function q(e){return eo("fieldset",{className:"flex w-full min-w-0 flex-col data-[empty=false]:gap-6","data-empty":e.empty,"data-slot":"field-set",id:e.id,children:[bn(yn,{description:e.description,step:e.step,title:e.title}),bn("div",{className:"w-full min-w-0",children:e.children})]})}import{jsx as to}from"react/jsx-runtime";function T(e){return to("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 be}from"react/jsx-runtime";function hn(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=Z(e.style,{compact:e.section.advanced?.compact}),o=be(T,{compact:r,children:e.children});return!e.section.title&&!e.section.description?o:e.section.advanced?.collapsible?be(pn,{section:e.section,group:o}):be(q,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),step:n,title:e.section.title,children:o})}import{jsx as Tn}from"react/jsx-runtime";function Rn(){return Tn("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:Tn("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-zinc-200 dark:bg-zinc-800"})})}import{useAtomValue as so}from"jotai";import{atom as O}from"jotai";import{atomFamily as no}from"jotai-family";import{deepEqual as Fn}from"fast-equals";function ro(e,t){let{[t]:n,...r}=e;return r}function oo(e){return no(t=>O(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let l=i[t];Fn(l,o)||r(e,{...i,[t]:o})}else t in i&&r(e,ro(i,t))}))}function io(e){return O(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function lo(e){return O(null,(t,n,r)=>{let i={...t(e)},l=!1;for(let a of r)a in i&&(delete i[a],l=!0);l&&n(e,i)})}function ao(e){return O(null,(t,n,r)=>{let o=t(e);Fn(o,r)||n(e,r)})}function J(e={}){let t=O(e);return{atom:t,clearAll:io(t),clear:lo(t),bulkReport:ao(t),report:oo(t)}}var Cn=J(),Nn=Cn.atom,Sn=Cn.report;function co(e,t){return e.fields.every(n=>An(n,t))}function An(e,t){return t[e.name]?.hidden??e.hidden??!1}function uo(e,t){return v(e)?co(e,t):An(e,t)}function vn(e){let t=so(Nn);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>uo(r,t))?null:e.children}import{jsx as P,jsxs as In}from"react/jsx-runtime";function wn(e){let t=K(e.sections,e.definition);return P("div",{className:"h-full w-full",children:P("form",{noValidate:e.noValidate,action:e.action,children:In(T,{children:[t.map((n,r)=>In(vn,{fields:n.fields??[],children:[P(hn,{advanced:e.advanced,section:n,step:r+1,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.advanced?.separator&&P(Rn,{})]},`key-${n.id}-${r}`)),e.control&&P(Se,{isPending:e.isPending,children:e.control})]})})})}import{jsx as fo}from"react/jsx-runtime";function kn(e){return fo("p",{className:"-mt-2 text-xs leading-normal font-normal text-zinc-600 dark:text-zinc-400 [[data-slot=column]_&]:md:line-clamp-2",title:e.title,children:e.children})}import{useState as mo}from"react";import{jsx as En,jsxs as Ln}from"react/jsx-runtime";function Q(e){let t={context:e.context,env:e.config?.env,value:e.value},r={locale:e.config?.env?.locale},[o,i]=mo(()=>u(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),l=()=>i(g=>!g),a=u(e.text)&&d(e.text.title)?b(C(L(e.text.title,t,r),e.translations)):void 0,s=C(L(d(e.text)?e.text:e.text?.message,t,r),e.translations),c=b(s);return c?Ln("div",{className:"flex flex-col gap-2",children:[a&&Ln("button",{className:"flex items-center gap-1 text-left text-xs font-medium text-zinc-700 hover:text-zinc-900 dark:text-zinc-300 dark:hover:text-zinc-100",onClick:l,type:"button",children:[a,En(N,{expanded:o})]}),o&&En(kn,{title:s,children:c})]}):null}var j=J(),$l=j.atom,Hl=j.clearAll,Gl=j.clear,Dn=j.report;import{useAtomValue as On}from"jotai";import{jsx as go}from"react/jsx-runtime";function ee(e){let t=On(Dn(e.field.name)),r=On(Sn(e.field.name))?.description??e.field.description;return go(Q,{config:e.config,context:e.context,text:r,translations:e.translations,value:t})}import{twMerge as po}from"tailwind-merge";import{jsx as Pn,jsxs as xo}from"react/jsx-runtime";function Mn(e){let t=e.style?.showOptionalLabel??!0,n=F(e.field)||y(e.field);return xo("label",{"data-slot":"field-label","data-normal":n,className:po("flex w-fit items-center text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal [[data-slot=column]_&]:md:w-full","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,title:d(e.children)?e.children:void 0,children:[Pn("span",{className:"[[data-slot=column]_&]:md:truncate",children:e.children}),t&&!e.field.required&&Pn("span",{className:"ml-2 flex-shrink-0 text-sm text-zinc-600 dark:text-zinc-400",children:C("(Optional)",e.translations)})]})}import{jsx as _n,jsxs as yo}from"react/jsx-runtime";function Vn(e){let t={context:e.context,env:e.config?.env},n=L(e.field.label,t);return yo("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[_n(Mn,{field:e.field,style:e.config?.style,translations:e.translations,children:C(n,e.translations)}),e.horizontal===!0&&_n(ee,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}import{Fragment as bo,jsx as zn,jsxs as ho}from"react/jsx-runtime";function $n(e){return ho(bo,{children:[e.field.name&&e.field.label&&zn(Vn,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&zn(ee,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}function Hn(e,t){return e?t(e):null}import{jsx as Gn}from"react/jsx-runtime";function Bn(e){let t=jt(e.field,e.value),{commonPropsWithOptions:n,defaultValue:r}=en(e.field,e.commonProps,t,e.value),o=tn(e.field,r);return Hn(e.config.inputs[e.field.type],i=>Gn($n,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:Gn(i,{...e.ariaAttributes,...n,...e.dataAttributes,...o})}))}import{jsx as Un}from"react/jsx-runtime";function Yn(e){return!e.errors||e.errors.length===0?null:Un("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)=>Un("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}import{twMerge as To}from"tailwind-merge";import{jsx as Ro}from"react/jsx-runtime";function te(e){let t=e.errors&&e.errors.length>0;return Ro("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Qe]:"true"},...e.disabled&&{[je]:"true"},"data-orientation":e.orientation,className:To("group flex w-full flex-col items-center data-[invalid=true]:text-red-600 data-[invalid=true]:dark:text-red-500","data-[clickable=true]:items-start",e.isCheckbox&&(e.isReversed?"flex-row-reverse!":"flex-row!"),"data-[clickable=true]:has-[>[data-slot=field-content]]:[&>:first-child]:mt-px",e.className),children:e.children})}import{twMerge as Fo}from"tailwind-merge";import{jsx as Co}from"react/jsx-runtime";function Xn(e){return Co(te,{...e,orientation:"vertical",className:Fo("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as No}from"tailwind-merge";import{jsx as So}from"react/jsx-runtime";function Kn(e){return So(te,{...e,orientation:"horizontal",className:No("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 Zn}from"react/jsx-runtime";function Wn(e){let t=Et(e.field),n=y(e.field),r=Ot(e.field);return e.horizontal?Zn(Kn,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):Zn(Xn,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function qn(e){if(!e.field.type)return null;let t=Zt(e.field,e.disabled),n=an(e.field),r=ln(e.field,e.errors),o={...e.field,disabled:t.disabled};return e.children({ariaAttributes:r,commonProps:t,dataAttributes:n,field:o,horizontal:e.horizontal})}import{twMerge as Ao}from"tailwind-merge";import{jsx as he,jsxs as vo}from"react/jsx-runtime";function Jn(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=Z(e.style,{horizontal:Dt(e.field)}),o=Pt(e.field,e.disabled);return vo("div",{className:Ao("flex flex-col gap-3",un(t)),children:[he(Wn,{disabled:o,errors:n,field:e.field,horizontal:r,children:he(qn,{disabled:o,errors:n,field:e.field,horizontal:r,children:e.children})}),he(Yn,{errors:n,name:e.field.name})]})}import{twMerge as Te}from"tailwind-merge";import{useState as Io}from"react";import{Fragment as wo,jsx as m,jsxs as R}from"react/jsx-runtime";function Qn(e){let t=e.isMultiField||e.collapsed!=null,[n,r]=Io(t?!e.collapsed:!0);function o(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function i(){r(c=>!c)}let l=e.canRemove&&e.onRemove!=null&&m("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:Te("flex size-6 items-center justify-center rounded text-xl leading-none text-zinc-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:outline-none","dark:text-zinc-500 dark:hover:text-red-400"),onClick:o,type:"button",children:m("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),a=R("div",{className:"flex min-w-0 flex-col font-medium text-zinc-700 dark:text-zinc-400",children:[m("span",{className:"text-base",children:e.previewLabel??R(wo,{children:[e.label," ",e.index+1]})}),!n&&e.previewTags&&m("div",{className:"flex items-center gap-2 overflow-hidden text-xs font-normal text-ellipsis whitespace-nowrap text-zinc-500 dark:text-zinc-500",children:e.previewTags})]}),s=R("div",{className:Te("flex items-center justify-between gap-2",e.isMultiField&&n&&"mb-3"),children:[t?R("div",{className:"flex min-w-0 grow items-center gap-2",children:[R("button",{"aria-expanded":n,"aria-label":`${n?"Collapse":"Expand"} ${e.label} ${e.index+1}`,className:Te("group flex grow items-center gap-2 rounded p-1 text-left text-zinc-400","focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:outline-none","dark:text-zinc-500"),onClick:i,type:"button",children:[m(N,{expanded:n}),a]}),!n&&e.previewBadge&&m("div",{className:"ml-auto shrink-0",children:e.previewBadge})]}):a,l]});return e.isMultiField?R("div",{"data-slot":"list-item-card",className:"box-border w-full min-w-0 rounded-lg border border-zinc-100 p-4 dark:border-zinc-900",children:[s,m(w,{visible:n,children:m(T,{children:e.children})})]}):t?R("div",{className:"box-border flex w-full min-w-0 flex-col gap-2",children:[s,m(w,{visible:n,children:m(T,{children:e.children})})]}):R("div",{className:"box-border flex w-full min-w-0 items-start gap-2",children:[m("div",{className:"flex min-w-0 grow flex-col",children:m(T,{children:e.children})}),l&&m("div",{className:"shrink-0",children:l})]})}import{jsx as ko}from"react/jsx-runtime";function jn(e){let t=gn(e.field),n=fn(e.field);return mn(e.field,e.value).map(r=>ko(Qn,{collapsed:e.field.advanced?.collapsed,index:r,isMultiField:n,label:t,children:e.children(r)},r))}import{jsx as Eo}from"react/jsx-runtime";function er(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return Eo(q,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}import{jsx as tr}from"react/jsx-runtime";function nr({children:e,field:t,translations:n,value:r}){return tr(er,{field:t,children:tr(jn,{field:t,translations:n,value:r,children:e})})}import{twMerge as Lo}from"tailwind-merge";import{jsx as rr,jsxs as Do}from"react/jsx-runtime";function or(e){let t=dn(e.column?.advanced?.cols);return Do("div",{className:"flex w-full flex-col gap-4",children:[rr("div",{"data-slot":"column",className:Lo("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&rr(Q,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}import{Fragment as Po}from"react";import{jsx as Oo}from"react/jsx-runtime";function ir(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>U(n)||B(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:v(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return Oo(M,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:t,onValueChange:e.onValueChange,style:e.style,translations:e.translations,value:e.value,children:e.children})}import{jsx as _,jsxs as Mo}from"react/jsx-runtime";function M(e){let{field:t,list:n}=e.components;return K(e.fields).map((r,o)=>Mo(Po,{children:[v(r)&&_(or,{column:r,config:e.config,context:e.context,translations:e.translations,children:_(M,{...e,fields:r.fields})}),U(r)&&_(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),B(r)&&_(n,{field:r,onValueChange:e.onValueChange,translations:e.translations,value:e.value,children:i=>_(ir,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:r,index:i,onValueChange:e.onValueChange,style:e.style,translations:e.translations,value:e.value,children:e.children})})]},o))}import{jsx as _o}from"react/jsx-runtime";function lr(e){return n=>_o(M,{...n,components:e})}var ar=lr({field:Jn,list:nr});import{jsx as Re}from"react/jsx-runtime";function Fe(e){let t=e.translations?.[e.lang??""];return Re(wn,{advanced:e.advanced,config:e.config,control:e.children,definition:e.definition,readOnly:e.readOnly,sections:e.sections,children:({disabled:n,fields:r})=>Re(ar,{config:e.config,context:e.context,disabled:n,fields:r,style:e.config.style,translations:t,value:e.value,children:o=>Re(Bn,{...o,config:e.config,context:e.context,translations:t,value:e.value})})})}import{Suspense as Vo}from"react";import{jsx as sr}from"react/jsx-runtime";function zo(e){return sr(Vo,{fallback:sr(Fe,{config:e.config,sections:e.sections,readOnly:!0}),children:e.children})}export{zo as Fallback,Fe as Form};
1
+ import{jsx as gr}from"react/jsx-runtime";function Ie(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return gr("div",{"data-slot":"field-control",className:"w-full",children:t})}import{jsx as we}from"react/jsx-runtime";function S(e){return we("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",className:`size-4 transition-transform duration-200 ${e.expanded?"rotate-90":""}`,children:we("path",{fillRule:"evenodd",d:"M8.22 5.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.75.75 0 0 1-1.06-1.06L11.94 10 8.22 6.28a.75.75 0 0 1 0-1.06Z",clipRule:"evenodd"})})}import{Activity as xr}from"react";import{createContext as pr}from"react";var ke=pr(!1);import{jsx as Ee}from"react/jsx-runtime";function w({children:e,visible:t}){return Ee(xr,{mode:t?"visible":"hidden",children:Ee(ke,{value:!0,children:e})})}var z="input",Le="input/date",Oe="input/email",De="input/number";var Pe="input/time";var Me="textarea",_e="radio",Ve="checkbox",re="list";var ze="select",$e="select/active",He="select/day",Ge="select/month",Be="select/timezone",Ue="select/year";var Ye="chips",Xe="chips/day",Ke="chips/month",k="column",Ze="description",oe="fields",We="label",ie="value",$="options",le="email",qe="number",Je="password",Qe="tel",E="text",je="aria-errormessage",et="aria-invalid",tt="data-invalid",nt="data-readonly",rt="aria",ot="data",it="max",lt="maxLength",at="min",st="minLength",A="$ref";var ct="type",dt={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};import{format as br,formatDistanceToNow as ut,formatDuration as Tr,intervalToDuration as hr,isValid as H,parseISO as Rr}from"date-fns";import{enUS as ft,es as ae}from"date-fns/locale";function u(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function x(e){return c(e)||typeof e=="number"||yr(e)}function c(e){return typeof e=="string"}function yr(e){return typeof e=="boolean"}var mt={en:ft,"en-US":ft,es:ae,"es-ES":ae,"es-MX":ae},Fr={short:"M/d/yy",medium:"MMM d, yyyy",long:"MMMM d, yyyy",full:"EEEE, MMMM d, yyyy"},Cr={ms:1,s:1e3,min:6e4,h:36e5,d:864e5};function gt(e){if(e)return mt[e]??mt[e.split("-")[0]]}function G(e){if(typeof e=="number"&&!Number.isNaN(e))return e;if(c(e)&&e.trim()!==""){let t=Number(e);return Number.isNaN(t)?null:t}return null}function pt(e,t,n){let r=Cr[t];if(r===void 0)return String(e);let o=e*r,i=hr({start:0,end:o});return Tr(i,{locale:n})}function xt(e){if(e instanceof Date)return H(e)?e:null;if(c(e)){let t=Rr(e);if(H(t))return t;let n=new Date(e);return H(n)?n:null}if(typeof e=="number"){let t=new Date(e);return H(t)?t:null}return null}var Sr={currency:(e,t,n)=>{let r=G(e);if(r===null)return String(e);let o=t[0]??"USD";return new Intl.NumberFormat(n.locale,{style:"currency",currency:o}).format(r)},percent:(e,t,n)=>{let r=G(e);return r===null?String(e):new Intl.NumberFormat(n.locale,{style:"percent"}).format(r)},number:(e,t,n)=>{let r=G(e);return r===null?String(e):new Intl.NumberFormat(n.locale).format(r)},date:(e,t,n)=>{let r=xt(e);if(!r)return String(e);let o=t[0]??"short",i=gt(n.locale);if(o==="relative")return ut(r,{addSuffix:!0,locale:i});let l=Fr[o]??o;return br(r,l,{locale:i})},duration:(e,t,n)=>{let r=gt(n.locale);if(typeof e=="number")return pt(e,t[0]??"ms",r);if(c(e)){let i=G(e);if(i!==null)return pt(i,t[0]??"ms",r)}let o=xt(e);return o?ut(o,{addSuffix:!0,locale:r}):String(e)}};function yt(e,t,n){let r=t.split(":").map(a=>a.trim()).filter(a=>a.length>0);if(r.length===0)return;let[o,...i]=r,l=Sr[o];if(l)return l(e,i,n)}function bt(e,t=ie){if(e!=null){if(Array.isArray(e)&&e.every(x)||x(e))return e;if(u(e)){let n=Ar(e,t);if(x(n))return n}}}function Ar(e,t){let n=y(e,t);if(x(n))return n}function y(e,t){if(!t||!u(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(u(r)&&o in r)r=r[o];else if(Array.isArray(r)){let i=Number(o);if(!Number.isInteger(i)||i<0||i>=r.length)return null;r=r[i]}else return null;return r}function Tt(e,t={description:Ze,label:We,value:ie}){return e.map(n=>{if(u(n)){let r=y(n,t.label),o=y(n,t.value);if(x(r)&&x(o)){let i=y(n,t.description);return{label:`${r}`,value:`${o}`,...x(i)&&{description:`${i}`}}}}return n})}function ht(e=E){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==z?n.trim().toLowerCase():E}var Nr=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function se(e,t={},n={}){if(c(e))return vr(e,t,n);if(Array.isArray(e))return e.map(r=>se(r,t,n));if(u(e)){let r={};for(let o in e)r[o]=se(e[o],t,n);return r}return e}function L(e,t={},n={}){return ce(e)?se(e,t,n):e}function ce(e){return c(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>ce(t)):u(e)?Object.values(e).some(t=>ce(t)):!1}function vr(e,t={},n={}){return e.replace(/{([^}]{1,200})}/g,(r,o)=>{let i=String(o).split("|").map(g=>g.trim()),[l,...a]=i;if(!l)return r;let s=l.includes(".")?y(t,l):t[l];if(a.length===0)return x(s)?String(s):r;if(s==null)return r;let d=s;for(let g of a){let V=yt(d,g,{locale:n.locale});if(V===void 0)return r;d=V}return String(d)})}function Rt(e,t){if(!c(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Nr.exec(e))!==null;){let[l,a,s]=n,d=n.index;o=!0,d>r&&i.push(e.substring(r,d));let g=t?t(d,s,a):l;i.push(g),r=d+l.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var Ft=e=>f($e)(e),Ct=e=>f(He)(e),St=e=>f(Ge)(e),At=e=>f(Ue)(e),Nt=e=>f(Be)(e),vt=e=>f(Xe)(e),It=e=>f(Ke)(e),wt=f(Le),de=f(Pe),b=f(Ve),N=f(Ye),C=f(_e),kt=f(z),h=f(ze),Et=f(Me),Lt=f(E,le,Je,Qe),yi=f(Oe,le),Ot=f(De,qe);function Dt(e){return C(e)||b(e)}function B(e){return e.type===re}function v(e){return e.type===k}function U(e){return e.type!==k&&e.type!==re}function ue(e){return h(e)||C(e)||N(e)}function I(e){return e!=null&&e!==""}function f(...e){return t=>{let n=c(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Pt(e,t={}){if(h(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&u(n))return[n]}}function Mt(e){return C(e)||b(e)?!0:e.advanced?.horizontal??!1}function _t(e){return b(e)?e.advanced?.reverse!==!1:!1}function Vt(e,t){let n=e.readonly??!1;return t||n}function fe(e){if(Ir(e)){let t=e.source;if(Array.isArray(t)||u(t)&&!(A in t))return t}}function zt(e){return Array.isArray(fe(e))}function Ir(e){return C(e)||N(e)||h(e)&&!e.disabled}import{isValid as Gt,parse as Bt,format as Ut}from"date-fns";var wr=/^\d+$/,Yt=new Date(2e3,0,1),kr=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[],me="default";function Xt(e){if(!e)return me;try{return Intl.getCanonicalLocales(e)[0]??me}catch{return me}}function ge(e){let t=Xt(e);return Array.from({length:12},(n,r)=>({value:(r+1).toString(),label:new Date(0,r).toLocaleString(t,{month:"long"})}))}function pe(e){let t=Xt(e);return Array.from({length:7},(n,r)=>({value:r.toString(),label:new Date(2e3,0,2+r).toLocaleString(t,{weekday:"long"})}))}function Kt(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 xe(){return new Date().getFullYear()}function Er(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function Lr(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return dt[n]??"Other"}function Or(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function $t(e,t){let n=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"longOffset"}).formatToParts(t),r=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"long"}).formatToParts(t),i=(n.find(a=>a.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),l=Or(r,e);return{offset:i,longName:l}}function Ht(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function Zt(){let e=new Date,t=Er(),n=new Map,r=Ht(t),{offset:o,longName:i}=$t(t,e),l={value:t,label:`${r} - ${i} (${o})`};for(let s of kr()){if(s===t)continue;let d=Ht(s),{offset:g,longName:V}=$t(s,e),Ne={value:s,label:`${d} - ${V} (${g})`},ne=Lr(s);if(ne==="Other")continue;let ve=n.get(ne);ve?ve.push(Ne):n.set(ne,[Ne])}for(let s of n.values())s.sort((d,g)=>d.label.localeCompare(g.label));let a=Array.from(n.entries()).sort(([s],[d])=>s.localeCompare(d)).map(([s,d])=>({label:s,items:d}));return[{label:"Suggested",items:[l]},...a]}function ye(e,t){if(typeof e=="number")return e;let n=t??xe(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,l]=o,a=parseInt(l,10);if(!isNaN(a))return i==="+"?n+a:n-a}return n}return wr.test(r)?parseInt(r,10):n}function Wt(e,t){if(!e)return"";try{let n=Bt(e,t,Yt);return Gt(n)?Ut(n,"yyyy-MM-dd"):""}catch{return""}}function qt(e,t){if(!e)return"";try{let n=Bt(e,t,Yt);return Gt(n)?Ut(n,"HH:mm:ss"):""}catch{return""}}function be(e){return e.advanced?.format??"HH:mm"}function Jt(e){return e.advanced?.format??"MMMM d, yyyy"}function p(e,t){return e?t?t[e]??e:e:""}function Te(e,t){if(!t)return e;let n=!1,r=e.map(o=>{let i=Dr(o,t);return i!==o&&(n=!0),i});return n?r:e}function Dr(e,t){if(!u(e))return e;let n=Qt(e.label,t),r=e.items;if(Array.isArray(r)){let i=Te(r,t);return i===r&&n===e.label?e:{...e,...n!==void 0&&{label:n},items:i}}let o=Qt(e.description,t);return n===e.label&&o===e.description?e:{...e,...n!==void 0&&{label:n},...o!==void 0&&{description:o}}}function Qt(e,t){return c(e)?p(e,t):e}var Y=xe();function Pr(e,t){if(N(e))return Mr(e,t)}function Mr(e,t){if(vt(e))return pe(t);if(It(e))return ge(t)}function _r(e,t){if(h(e))return Vr(e,t)}function Vr(e,t){if(Ct(e))return pe(t);if(St(e))return ge(t);if(At(e)){let n=e.advanced?.length?.min??Y,r=e.advanced?.length?.max??Y+5;return Kt(ye(n,Y),ye(r,Y))}if(Nt(e))return Zt();if(Ft(e))return[{value:"true",label:"Yes"},{value:"false",label:"No"}]}function jt(e,t=!1,n){let r={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return kt(e)?{...r,...zr(e)}:h(e)?{...r,...en(e,n,_r)}:Et(e)?{...r,...Hr(e)}:N(e)?{...r,...$r(e,n)}:r}function zr(e){let t=ht(e.type),n={...e,type:t};return{...Br(e),...tn(e),...Gr(n),...Lt(n)?nn(n):{},type:t}}function en(e,t,n){let r=n(e,t);return r?{options:r}:{}}function $r(e,t){let n=en(e,t,Pr),r=e.advanced?.multiple??!0;return{...n,multiple:r}}function Hr(e){return{...tn(e),...nn(e)}}function tn(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Gr(e){return Ot(e)?Ur(e):{}}function Br(e){if(de(e)){let t=be(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function nn(e){return rn(e,{min:st,max:lt})}function Ur(e){return rn(e,{min:at,max:it})}function rn(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 on(e,t){let n=fe(e);return n||Pt(e,t)}function Yr(e,t){let n=u(t)&&e.name in t?t[e.name]:t,r=bt(n,e.advanced?.entity),o=I(r)?r:e.defaultValue;return de(e)&&I(o)?Xr(e,o):wt(e)&&I(o)?qr(e,o):o}function Xr(e,t){let n=be(e);return c(t)?qt(t,n):t}function Kr(e,t,n){return ue(e)&&Array.isArray(n)?{...t,[$]:n}:t}function Zr(e,t,n){if(e.required&&!I(n)&&h(e)&&e.advanced?.preselected!==!1&&$ in t){let r=t[$];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function Wr(e,t,n){if(ue(e)&&Array.isArray(t)){let r=Tt(t,e.advanced?.options);return zt(e)?Te(r,n):r}return t}function ln(e,t,n,r,o){let i=Yr(e,r),l=Array.isArray(n)?Wr(e,n,o):n,a=Kr(e,t,l),s=Zr(e,a,i);return{commonPropsWithOptions:a,defaultValue:s}}function an(e,t){return b(e)?{defaultChecked:I(t)}:{defaultValue:t}}function qr(e,t){let n=Jt(e);return c(t)?Wt(t,n):t}var Jr=/^#\/definition\//;function K(e=[],t){let n=X(e,t);return Array.isArray(n)?n.filter(jr).sort((r,o)=>sn(r)-sn(o)):[]}function X(e,t,n=new Map,r=new WeakSet){if(!Qr(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=>X(i,t,n,r));if(A in e&&c(e[A])){let i=e[A].replace(Jr,""),l=y(t,i);return l!==null?X(l,t,n,r):e}let o={};for(let[i,l]of Object.entries(e))o[i]=X(l,t,n,r);return r.delete(e),n.set(e,o),o}function cn(e){return Object.entries(e??{})}function sn(e){return e.order??Number.MAX_VALUE}function Qr(e){return e!==void 0&&u(e)&&Object.keys(e).length>0}function jr(e){return ct in e?!0:Array.isArray(e[oe])?e[oe].length>0:!0}function dn(e,t){let n={};for(let[r,o]of cn(t))n[`${e}-${r}`]=o;return n}function eo(e){return dn(rt,e)}function to(e){return dn(ot,e)}function un(e,t){let n=eo(e.advanced?.aria);return t&&t.length>0&&(n[et]="true",n[je]=`${e.name}-error`),n}function fn(e){return to(e.advanced?.data)}var mn={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},gn={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function pn(e,t=2){return mn[e&&e in mn?e:t]}function xn(e){if(e&&e in gn)return gn[e]}function no(e,t){let n=e.advanced?.length?.min??1;if(t){let r=y(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function yn(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===k}function bn(e,t){let n=no(e,t);return Array.from({length:n},(r,o)=>o)}function Tn(e){return e.advanced?.title??e.label??e.name}function Z(e,t){return{...e,...t}}import{jsx as ro}from"react/jsx-runtime";function T(e){return Rt(e,(t,n,r)=>ro("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}import{useCallback as oo,useState as io}from"react";import{jsx as O,jsxs as he}from"react/jsx-runtime";function hn(e){let{fields:t=[]}=e.section,[n,r]=io(!1),o=oo(()=>r(i=>!i),[]);return he("fieldset",{"data-slot":"field-set","data-advanced":"true","data-expanded":n,"data-empty":t.length===0,className:"flex flex-col",id:e.section.id?.toString(),children:[O("legend",{children:he("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-zinc-600 dark:text-zinc-400",onClick:o,type:"button",children:[O(S,{expanded:n}),O("span",{children:T(e.title)})]})}),O(w,{visible:n,children:he("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-zinc-300 pl-4 dark:border-zinc-600","data-slot":"field-set-content",children:[e.description&&O("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:T(e.description)}),e.group]})})]})}import{jsx as W,jsxs as Rn}from"react/jsx-runtime";function Fn(e){let t=Rn("div",{className:"flex flex-col",children:[e.title&&W("legend",{className:"mb-3 font-medium text-zinc-800 dark:text-zinc-200",children:T(e.title)}),e.description&&W("p",{className:"-mt-2 text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:T(e.description)})]});return e.step?Rn("div",{className:"flex flex-row items-start gap-4",children:[W("div",{className:"bg-primary text-primary-foreground flex size-6 shrink-0 items-center justify-center rounded-full",children:W("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}import{jsx as Cn,jsxs as lo}from"react/jsx-runtime";function q(e){return lo("fieldset",{className:"flex w-full min-w-0 flex-col data-[empty=false]:gap-6","data-empty":e.empty,"data-slot":"field-set",id:e.id,children:[Cn(Fn,{description:e.description,step:e.step,title:e.title}),Cn("div",{className:"w-full min-w-0",children:e.children})]})}import{jsx as ao}from"react/jsx-runtime";function R(e){return ao("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 Re}from"react/jsx-runtime";function Sn(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=Z(e.style,{compact:e.section.advanced?.compact}),o=Re(R,{compact:r,children:e.children});if(!e.section.title&&!e.section.description)return o;let i=e.section.title?p(e.section.title,e.translations):void 0,l=e.section.description?p(e.section.description,e.translations):void 0;return e.section.advanced?.collapsible?Re(hn,{description:l,group:o,section:e.section,title:i}):Re(q,{description:l,empty:t.length===0,id:e.section.id?.toString(),step:n,title:i,children:o})}import{jsx as An}from"react/jsx-runtime";function Nn(){return An("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:An("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-zinc-200 dark:bg-zinc-800"})})}import{useAtomValue as po}from"jotai";import{atom as D}from"jotai";import{atomFamily as so}from"jotai-family";import{deepEqual as vn}from"fast-equals";function co(e,t){let{[t]:n,...r}=e;return r}function uo(e){return so(t=>D(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let l=i[t];vn(l,o)||r(e,{...i,[t]:o})}else t in i&&r(e,co(i,t))}))}function fo(e){return D(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function mo(e){return D(null,(t,n,r)=>{let i={...t(e)},l=!1;for(let a of r)a in i&&(delete i[a],l=!0);l&&n(e,i)})}function go(e){return D(null,(t,n,r)=>{let o=t(e);vn(o,r)||n(e,r)})}function J(e={}){let t=D(e);return{atom:t,clearAll:fo(t),clear:mo(t),bulkReport:go(t),report:uo(t)}}var In=J(),wn=In.atom,kn=In.report;function xo(e,t){return e.fields.every(n=>En(n,t))}function En(e,t){return t[e.name]?.hidden??e.hidden??!1}function yo(e,t){return v(e)?xo(e,t):En(e,t)}function Ln(e){let t=po(wn);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>yo(r,t))?null:e.children}import{jsx as P,jsxs as On}from"react/jsx-runtime";function Dn(e){let t=K(e.sections,e.definition);return P("div",{className:"h-full w-full",children:P("form",{noValidate:e.noValidate,action:e.action,children:On(R,{children:[t.map((n,r)=>On(Ln,{fields:n.fields??[],children:[P(Sn,{advanced:e.advanced,section:n,step:r+1,style:e.config.style,translations:e.translations,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.advanced?.separator&&P(Nn,{})]},`key-${n.id}-${r}`)),e.control&&P(Ie,{isPending:e.isPending,children:e.control})]})})})}import{jsx as bo}from"react/jsx-runtime";function Pn(e){return bo("p",{className:"-mt-2 text-xs leading-normal font-normal text-zinc-600 dark:text-zinc-400 [[data-slot=column]_&]:md:line-clamp-2",title:e.title,children:e.children})}import{useState as To}from"react";import{jsx as Mn,jsxs as _n}from"react/jsx-runtime";function Q(e){let t={context:e.context,env:e.config?.env,value:e.value},r={locale:e.config?.env?.locale},[o,i]=To(()=>u(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),l=()=>i(g=>!g),a=u(e.text)&&c(e.text.title)?T(p(L(e.text.title,t,r),e.translations)):void 0,s=p(L(c(e.text)?e.text:e.text?.message,t,r),e.translations),d=T(s);return d?_n("div",{className:"flex flex-col gap-2",children:[a&&_n("button",{className:"flex items-center gap-1 text-left text-xs font-medium text-zinc-700 hover:text-zinc-900 dark:text-zinc-300 dark:hover:text-zinc-100",onClick:l,type:"button",children:[a,Mn(S,{expanded:o})]}),o&&Mn(Pn,{title:s,children:d})]}):null}var j=J(),Zl=j.atom,Wl=j.clearAll,ql=j.clear,Vn=j.report;import{useAtomValue as zn}from"jotai";import{jsx as ho}from"react/jsx-runtime";function ee(e){let t=zn(Vn(e.field.name)),r=zn(kn(e.field.name))?.description??e.field.description;return ho(Q,{config:e.config,context:e.context,text:r,translations:e.translations,value:t})}import{twMerge as Ro}from"tailwind-merge";import{jsx as $n,jsxs as Fo}from"react/jsx-runtime";function Hn(e){let t=e.style?.showOptionalLabel??!0,n=C(e.field)||b(e.field);return Fo("label",{"data-slot":"field-label","data-normal":n,className:Ro("flex w-fit items-center text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal [[data-slot=column]_&]:md:w-full","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,title:c(e.children)?e.children:void 0,children:[$n("span",{className:"[[data-slot=column]_&]:md:truncate",children:e.children}),t&&!e.field.required&&$n("span",{className:"ml-2 flex-shrink-0 text-sm text-zinc-600 dark:text-zinc-400",children:p("(Optional)",e.translations)})]})}import{jsx as Gn,jsxs as Co}from"react/jsx-runtime";function Bn(e){let t={context:e.context,env:e.config?.env},n=L(e.field.label,t);return Co("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[Gn(Hn,{field:e.field,style:e.config?.style,translations:e.translations,children:p(n,e.translations)}),e.horizontal===!0&&Gn(ee,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}import{Fragment as So,jsx as Un,jsxs as Ao}from"react/jsx-runtime";function Yn(e){return Ao(So,{children:[e.field.name&&e.field.label&&Un(Bn,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&Un(ee,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}function Xn(e,t){return e?t(e):null}import{jsx as Kn}from"react/jsx-runtime";function Zn(e){let t=on(e.field,e.value),{commonPropsWithOptions:n,defaultValue:r}=ln(e.field,e.commonProps,t,e.value,e.translations),o=an(e.field,r);return Xn(e.config.inputs[e.field.type],i=>Kn(Yn,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:Kn(i,{...e.ariaAttributes,...n,...e.dataAttributes,...o})}))}import{jsx as Wn}from"react/jsx-runtime";function qn(e){return!e.errors||e.errors.length===0?null:Wn("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)=>Wn("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}import{twMerge as No}from"tailwind-merge";import{jsx as vo}from"react/jsx-runtime";function te(e){let t=e.errors&&e.errors.length>0;return vo("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[tt]:"true"},...e.disabled&&{[nt]:"true"},"data-orientation":e.orientation,className:No("group flex w-full flex-col items-center data-[invalid=true]:text-red-600 data-[invalid=true]:dark:text-red-500","data-[clickable=true]:items-start",e.isCheckbox&&(e.isReversed?"flex-row-reverse!":"flex-row!"),"data-[clickable=true]:has-[>[data-slot=field-content]]:[&>:first-child]:mt-px",e.className),children:e.children})}import{twMerge as Io}from"tailwind-merge";import{jsx as wo}from"react/jsx-runtime";function Jn(e){return wo(te,{...e,orientation:"vertical",className:Io("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as ko}from"tailwind-merge";import{jsx as Eo}from"react/jsx-runtime";function Qn(e){return Eo(te,{...e,orientation:"horizontal",className:ko("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 jn}from"react/jsx-runtime";function er(e){let t=Dt(e.field),n=b(e.field),r=_t(e.field);return e.horizontal?jn(Qn,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):jn(Jn,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function tr(e){if(!e.field.type)return null;let t=jt(e.field,e.disabled,e.lang),n=fn(e.field),r=un(e.field,e.errors),o={...e.field,disabled:t.disabled};return e.children({ariaAttributes:r,commonProps:t,dataAttributes:n,field:o,horizontal:e.horizontal})}import{twMerge as Lo}from"tailwind-merge";import{jsx as Fe,jsxs as Oo}from"react/jsx-runtime";function nr(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=Z(e.style,{horizontal:Mt(e.field)}),o=Vt(e.field,e.disabled);return Oo("div",{className:Lo("flex flex-col gap-3",xn(t)),children:[Fe(er,{disabled:o,errors:n,field:e.field,horizontal:r,children:Fe(tr,{disabled:o,errors:n,field:e.field,horizontal:r,lang:e.lang,children:e.children})}),Fe(qn,{errors:n,name:e.field.name})]})}import{twMerge as Ce}from"tailwind-merge";import{useState as Do}from"react";import{Fragment as Po,jsx as m,jsxs as F}from"react/jsx-runtime";function rr(e){let t=e.isMultiField||e.collapsed!=null,[n,r]=Do(t?!e.collapsed:!0);function o(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function i(){r(d=>!d)}let l=e.canRemove&&e.onRemove!=null&&m("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:Ce("flex size-6 items-center justify-center rounded text-xl leading-none text-zinc-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:outline-none","dark:text-zinc-500 dark:hover:text-red-400"),onClick:o,type:"button",children:m("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),a=F("div",{className:"flex min-w-0 flex-col font-medium text-zinc-700 dark:text-zinc-400",children:[m("span",{className:"text-base",children:e.previewLabel??F(Po,{children:[e.label," ",e.index+1]})}),!n&&e.previewTags&&m("div",{className:"flex items-center gap-2 overflow-hidden text-xs font-normal text-ellipsis whitespace-nowrap text-zinc-500 dark:text-zinc-500",children:e.previewTags})]}),s=F("div",{className:Ce("flex items-center justify-between gap-2",e.isMultiField&&n&&"mb-3"),children:[t?F("div",{className:"flex min-w-0 grow items-center gap-2",children:[F("button",{"aria-expanded":n,"aria-label":`${n?"Collapse":"Expand"} ${e.label} ${e.index+1}`,className:Ce("group flex grow items-center gap-2 rounded p-1 text-left text-zinc-400","focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:outline-none","dark:text-zinc-500"),onClick:i,type:"button",children:[m(S,{expanded:n}),a]}),!n&&e.previewBadge&&m("div",{className:"ml-auto shrink-0",children:e.previewBadge})]}):a,l]});return e.isMultiField?F("div",{"data-slot":"list-item-card",className:"box-border w-full min-w-0 rounded-lg border border-zinc-100 p-4 dark:border-zinc-900",children:[s,m(w,{visible:n,children:m(R,{children:e.children})})]}):t?F("div",{className:"box-border flex w-full min-w-0 flex-col gap-2",children:[s,m(w,{visible:n,children:m(R,{children:e.children})})]}):F("div",{className:"box-border flex w-full min-w-0 items-start gap-2",children:[m("div",{className:"flex min-w-0 grow flex-col",children:m(R,{children:e.children})}),l&&m("div",{className:"shrink-0",children:l})]})}import{jsx as Mo}from"react/jsx-runtime";function or(e){let t=Tn(e.field),n=yn(e.field);return bn(e.field,e.value).map(r=>Mo(rr,{collapsed:e.field.advanced?.collapsed,index:r,isMultiField:n,label:t,children:e.children(r)},r))}import{jsx as _o}from"react/jsx-runtime";function ir(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return _o(q,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}import{jsx as lr}from"react/jsx-runtime";function ar({children:e,field:t,lang:n,translations:r,value:o}){return lr(ir,{field:t,children:lr(or,{field:t,lang:n,translations:r,value:o,children:e})})}import{twMerge as Vo}from"tailwind-merge";import{jsx as sr,jsxs as zo}from"react/jsx-runtime";function cr(e){let t=pn(e.column?.advanced?.cols);return zo("div",{className:"flex w-full flex-col gap-4",children:[sr("div",{"data-slot":"column",className:Vo("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&sr(Q,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}import{Fragment as Ho}from"react";import{jsx as $o}from"react/jsx-runtime";function dr(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>U(n)||B(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:v(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return $o(M,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:t,lang:e.lang,onValueChange:e.onValueChange,style:e.style,translations:e.translations,value:e.value,children:e.children})}import{jsx as _,jsxs as Go}from"react/jsx-runtime";function M(e){let{field:t,list:n}=e.components;return K(e.fields).map((r,o)=>Go(Ho,{children:[v(r)&&_(cr,{column:r,config:e.config,context:e.context,translations:e.translations,children:_(M,{...e,fields:r.fields})}),U(r)&&_(t,{disabled:e.disabled,field:r,lang:e.lang,style:e.style,children:e.children}),B(r)&&_(n,{field:r,lang:e.lang,onValueChange:e.onValueChange,translations:e.translations,value:e.value,children:i=>_(dr,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:r,index:i,lang:e.lang,onValueChange:e.onValueChange,style:e.style,translations:e.translations,value:e.value,children:e.children})})]},o))}import{jsx as Bo}from"react/jsx-runtime";function ur(e){return n=>Bo(M,{...n,components:e})}var fr=ur({field:nr,list:ar});import{jsx as Se}from"react/jsx-runtime";function Ae(e){let t=e.translations?.[e.lang??""];return Se(Dn,{advanced:e.advanced,config:e.config,control:e.children,definition:e.definition,readOnly:e.readOnly,sections:e.sections,translations:t,children:({disabled:n,fields:r})=>Se(fr,{config:e.config,context:e.context,disabled:n,fields:r,lang:e.lang,style:e.config.style,translations:t,value:e.value,children:o=>Se(Zn,{...o,config:e.config,context:e.context,translations:t,value:e.value})})})}import{Suspense as Uo}from"react";import{jsx as mr}from"react/jsx-runtime";function Yo(e){return mr(Uo,{fallback:mr(Ae,{config:e.config,sections:e.sections,readOnly:!0}),children:e.children})}export{Yo as Fallback,Ae as Form};
@@ -1,13 +1,13 @@
1
1
  import type { CommonProps, DataSource, Field, Nullable, Option, Value, TimeFormat, DateFormat } from '../type';
2
- export declare function buildOptionChips(field: Field): {
2
+ export declare function buildOptionChips(field: Field, lang?: string): {
3
3
  value: string;
4
4
  label: string;
5
5
  }[] | undefined;
6
- export declare function buildOptionSelect(field: Field): {
6
+ export declare function buildOptionSelect(field: Field, lang?: string): {
7
7
  value: string;
8
8
  label: string;
9
9
  }[] | import("..").TimezoneGroup[] | undefined;
10
- export declare function buildCommon(field: Field, disabled?: boolean): CommonProps;
10
+ export declare function buildCommon(field: Field, disabled?: boolean, lang?: string): CommonProps;
11
11
  export declare function resolveSource(field: Field, value?: Nullable<Record<string, unknown>>): DataSource | unknown[] | undefined;
12
12
  export declare function getInputValue<K>(field: Field, value?: Nullable<K>): Value | undefined;
13
13
  export declare function mergeOptionsProps(field: Field, commonProps: CommonProps, options?: Nullable<DataSource | unknown[]>): CommonProps | {
@@ -19,12 +19,12 @@ export declare function mergeOptionsProps(field: Field, commonProps: CommonProps
19
19
  required?: boolean;
20
20
  };
21
21
  export declare function getPreselectedValue(field: Field, commonProps: CommonProps, value?: Value): any;
22
- export declare function getOptions<T>(field: Field, data?: Nullable<T[]>): (T | {
22
+ export declare function getOptions<T>(field: Field, data?: Nullable<T[]>, translations?: Record<string, string>): (T | {
23
23
  description?: string | undefined;
24
24
  label: string;
25
25
  value: string;
26
26
  })[] | null | undefined;
27
- export declare function prepareInputProps<T, K>(field: Field, commonProps: CommonProps, data?: Nullable<DataSource | T[]>, value?: Nullable<K>): {
27
+ export declare function prepareInputProps<T, K>(field: Field, commonProps: CommonProps, data?: Nullable<DataSource | T[]>, value?: Nullable<K>, translations?: Record<string, string>): {
28
28
  commonPropsWithOptions: CommonProps | {
29
29
  options: unknown[];
30
30
  disabled?: boolean;
@@ -57,5 +57,5 @@ export declare function getFormatProps(dateFormat: Nullable<DateFormat>, timeFor
57
57
  } | {
58
58
  'data-format'?: undefined;
59
59
  };
60
- export declare function getPreviewOptions(field: Field): Array<Option | string> | undefined;
60
+ export declare function getPreviewOptions(field: Field, translations?: Record<string, string>, lang?: string): Array<Option | string> | undefined;
61
61
  export declare function resolveOptionLabel(value: unknown, options: Array<Option | string>): string;
@@ -5,12 +5,8 @@ export type ZodSchema = ZodObject<{
5
5
  [x: string]: Schema;
6
6
  }, core.$strip>;
7
7
  export type Nullable<T> = T | null;
8
- export type DataAttributes = {
9
- [key: `data-${string}`]: string | number | boolean;
10
- };
11
- export type AriaAttributes = {
12
- [key: `aria-${string}`]: string | number | boolean;
13
- };
8
+ export type DataAttributes = Record<string, string | number | boolean>;
9
+ export type AriaAttributes = Record<string, string | number | boolean>;
14
10
  export type Description = string | {
15
11
  collapsed?: boolean;
16
12
  message: string;
@@ -66,7 +62,7 @@ export type List = {
66
62
  };
67
63
  };
68
64
  description?: string;
69
- fields: Array<Field | Column>;
65
+ fields: Array<AnyField | Column>;
70
66
  label?: string;
71
67
  name: string;
72
68
  type: 'list' | (string & {});
@@ -74,7 +70,8 @@ export type List = {
74
70
  length?: Length<string>;
75
71
  };
76
72
  } & Base;
77
- export type Fields = Array<Field | Column | List>;
73
+ export type AnyField = Field | Input | Select | Chips | Date | Time;
74
+ export type Fields = Array<AnyField | Column | List>;
78
75
  export type Base = Orderable & Hideable;
79
76
  export type CommonProps = {
80
77
  disabled?: boolean;
@@ -99,7 +96,7 @@ export type Column = {
99
96
  cols?: number;
100
97
  };
101
98
  description?: Description;
102
- fields: Array<Field>;
99
+ fields: Array<AnyField>;
103
100
  type: 'column' | (string & {});
104
101
  } & Base;
105
102
  export type Operator = 'eq' | 'neq' | 'in' | 'nin' | 'gt' | 'gte' | 'lt' | 'lte' | 'contains' | 'exists' | 'empty' | 'truthy';
@@ -4,3 +4,4 @@ export declare function buildOrientation(field: Field): boolean;
4
4
  export declare function buildReverse(field: Field): boolean;
5
5
  export declare function buildDisabled(field: Field, disabled?: boolean): boolean;
6
6
  export declare function buildSource(field: Field): import("..").DataSource | unknown[] | undefined;
7
+ export declare function isArraySource(field: Field): boolean;
@@ -1,9 +1,9 @@
1
1
  import type { Date as DateField, DateFormat, Time, TimeFormat, TimezoneGroup } from '../type';
2
- export declare function getMonth(): {
2
+ export declare function getMonth(locale?: string): {
3
3
  value: string;
4
4
  label: string;
5
5
  }[];
6
- export declare function getWeekDays(): {
6
+ export declare function getWeekDays(locale?: string): {
7
7
  value: string;
8
8
  label: string;
9
9
  }[];
@@ -1 +1,2 @@
1
1
  export declare function translate(key?: string, dictionary?: Record<string, string>): string;
2
+ export declare function translateOptions<T>(options: T[], dictionary?: Record<string, string>): T[];
@@ -1,6 +1,6 @@
1
1
  import type { List, Nullable, PreviewItem } from '../../../../../luna-core/index';
2
2
  import type { ReactNode } from 'react';
3
- export declare function FieldListPreviewItem({ canRemove, children, field, index, isMultiField, itemKey, label, onRemove, previewBadge, previewLabel, previewTags, translations, value, }: {
3
+ export declare function FieldListPreviewItem({ canRemove, children, field, index, isMultiField, itemKey, label, lang, onRemove, previewBadge, previewLabel, previewTags, translations, value, }: {
4
4
  canRemove: boolean;
5
5
  children: ReactNode;
6
6
  field: List;
@@ -8,6 +8,7 @@ export declare function FieldListPreviewItem({ canRemove, children, field, index
8
8
  isMultiField: boolean;
9
9
  itemKey: string | number;
10
10
  label: string;
11
+ lang?: string;
11
12
  onRemove: (index: number) => void;
12
13
  previewBadge?: PreviewItem;
13
14
  previewLabel?: PreviewItem;
@@ -1,8 +1,9 @@
1
1
  import type { Column, Field, PreviewItem } from '../../../../../luna-core/index';
2
- export declare function FieldPreview({ className, fields, label, name, previews, translations, value, }: Readonly<{
2
+ export declare function FieldPreview({ className, fields, label, lang, name, previews, translations, value, }: Readonly<{
3
3
  className?: string;
4
4
  fields?: Array<Field | Column>;
5
5
  label?: string;
6
+ lang?: string;
6
7
  name: string;
7
8
  previews: PreviewItem | PreviewItem[];
8
9
  translations?: Record<string, string>;
@@ -3,5 +3,6 @@ export declare const Field: (props: Readonly<Readonly<Readonly<{
3
3
  disabled?: boolean;
4
4
  errors?: Record<string, string[]>;
5
5
  field: import('../../../../../luna-core/index').Field;
6
+ lang?: string;
6
7
  style?: import('../../../../../luna-core/index').Style;
7
8
  }>>>) => import("react").JSX.Element | null;
@@ -1,2 +1,2 @@
1
1
  import type { ListProps } from '../../../component/field/field-list';
2
- export declare function ListGuard({ children, field, onValueChange, translations, value, }: ListProps): import("react").JSX.Element;
2
+ export declare function ListGuard({ children, field, lang, onValueChange, translations, value, }: ListProps): import("react").JSX.Element;
@@ -3,6 +3,7 @@ import type { DataSource, Field, Nullable } from '../../../../luna-core/index';
3
3
  export type InputStrategies = Readonly<{
4
4
  useSource: (field: Field, config: Config, value?: Nullable<Record<string, unknown>>) => {
5
5
  data: Nullable<unknown[]>;
6
+ isStaticSource?: boolean;
6
7
  setSource: (target: string, source?: DataSource) => void;
7
8
  };
8
9
  getValue: (event: React.ChangeEvent<HTMLInputElement>, field: Field) => string;
@@ -4,6 +4,7 @@ export declare const Slot: (props: Readonly<{
4
4
  context?: Record<string, unknown>;
5
5
  disabled?: boolean;
6
6
  fields?: import('../../../../../luna-core/index').Fields;
7
+ lang?: string;
7
8
  onValueChange?: (input: {
8
9
  name: string;
9
10
  value: unknown;
@@ -1,3 +1,3 @@
1
1
  import { type Field, type Nullable } from '../../../../luna-core/index';
2
2
  import type { Config } from '../../type';
3
- export declare function useDataSource(field: Field, config: Config, value?: Nullable<Record<string, unknown>>): readonly [Nullable<unknown[]>, (target: string, value: import('../../../../luna-core/index').DataSource | undefined) => void];
3
+ export declare function useDataSource(field: Field, config: Config, value?: Nullable<Record<string, unknown>>): readonly [Nullable<unknown[]>, (target: string, value: import('../../../../luna-core/index').DataSource | undefined) => void, boolean];
@@ -2,6 +2,7 @@ import { type List, type Nullable } from '../../../../luna-core/index';
2
2
  export type ListProps = Readonly<{
3
3
  children: (index: number) => React.ReactNode;
4
4
  field: List;
5
+ lang?: string;
5
6
  onValueChange?: (input: {
6
7
  name: string;
7
8
  value: unknown;
@@ -1,5 +1,7 @@
1
1
  import type { Section } from '../../../../luna-core/index';
2
2
  export declare function FieldSetAdvanced(props: Readonly<{
3
- section: Section;
3
+ description?: string;
4
4
  group: React.ReactNode;
5
+ section: Section;
6
+ title?: string;
5
7
  }>): import("react").JSX.Element;
@@ -7,4 +7,5 @@ export declare function FieldSet(props: Readonly<{
7
7
  section: Section;
8
8
  step?: number;
9
9
  style?: Style;
10
+ translations?: Record<string, string>;
10
11
  }>): import("react").JSX.Element;
@@ -5,6 +5,7 @@ export type FieldProps = Readonly<{
5
5
  disabled?: boolean;
6
6
  errors?: Record<string, string[]>;
7
7
  field: Field;
8
+ lang?: string;
8
9
  style?: Style;
9
10
  }>;
10
11
  export declare function Field(props: FieldProps): import("react").JSX.Element;
@@ -13,4 +13,5 @@ export declare function Form(props: Readonly<{
13
13
  noValidate?: boolean;
14
14
  readOnly?: boolean;
15
15
  sections: Sections;
16
+ translations?: Record<string, string>;
16
17
  }>): import("react").JSX.Element;
@@ -6,4 +6,5 @@ export declare function InputBase(props: Readonly<{
6
6
  errors?: string[];
7
7
  field: Field;
8
8
  horizontal?: boolean;
9
+ lang?: string;
9
10
  }>): import("react").ReactNode;
@@ -1,2 +1,2 @@
1
1
  import type { ListProps } from '../field/field-list';
2
- export declare function ListSlot({ children, field, translations, value }: ListProps): import("react").JSX.Element;
2
+ export declare function ListSlot({ children, field, lang, translations, value, }: ListProps): import("react").JSX.Element;
@@ -13,6 +13,7 @@ export declare function SlotBase(props: Readonly<{
13
13
  context?: Record<string, unknown>;
14
14
  disabled?: boolean;
15
15
  fields?: Fields;
16
+ lang?: string;
16
17
  onValueChange?: (input: {
17
18
  name: string;
18
19
  value: unknown;
@@ -7,6 +7,7 @@ export declare function createSlot(components: SlotComponents): (props: Readonly
7
7
  context?: Record<string, unknown>;
8
8
  disabled?: boolean;
9
9
  fields?: Fields;
10
+ lang?: string;
10
11
  onValueChange?: (input: {
11
12
  name: string;
12
13
  value: unknown;
@@ -9,6 +9,7 @@ export declare function SlotList(props: Readonly<{
9
9
  disabled?: boolean;
10
10
  field: List;
11
11
  index: number;
12
+ lang?: string;
12
13
  onValueChange?: (input: {
13
14
  name: string;
14
15
  value: unknown;
@@ -4,6 +4,7 @@ export declare const Slot: (props: Readonly<{
4
4
  context?: Record<string, unknown>;
5
5
  disabled?: boolean;
6
6
  fields?: import('../../../../luna-core/index').Fields;
7
+ lang?: string;
7
8
  onValueChange?: (input: {
8
9
  name: string;
9
10
  value: unknown;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-luna-form",
3
- "version": "0.0.72",
3
+ "version": "0.0.74",
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",
@@ -29,12 +29,12 @@
29
29
  "zod": "^4.0.0"
30
30
  },
31
31
  "devDependencies": {
32
- "@types/react": "19.2.17",
33
- "@types/react-dom": "19.2.3",
32
+ "@types/react": "19.2.18",
33
+ "@types/react-dom": "19.2.4",
34
34
  "eslint-plugin-react": "7.37.5",
35
35
  "eslint-plugin-react-hooks": "7.1.1",
36
36
  "eslint-plugin-react-refresh": "0.5.3",
37
- "@luna-form/core": "0.0.72"
37
+ "@luna-form/core": "0.0.74"
38
38
  },
39
39
  "license": "Apache-2.0",
40
40
  "repository": {