react-luna-form 0.0.47 → 0.0.48
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/cjs/index.js +1 -1
- package/dist/client/esm/index.js +1 -1
- package/dist/config/cjs/index.js +1 -1
- package/dist/config/esm/index.js +1 -1
- package/dist/server/cjs/index.js +1 -1
- package/dist/server/esm/index.js +1 -1
- package/dist/types/luna-react/src/client/component/field/field-list-preview-item.d.ts +16 -0
- package/dist/types/luna-react/src/client/component/field/field-preview-item.d.ts +2 -1
- package/dist/types/luna-react/src/client/component/field/field-preview-value.d.ts +5 -0
- package/dist/types/luna-react/src/client/component/field/field-preview.d.ts +5 -4
- package/dist/types/luna-react/src/client/hook/use-input-core.d.ts +3 -2
- package/dist/types/luna-react/src/client/hook/use-resolved-value.d.ts +5 -0
- package/dist/types/luna-react/src/client/lib/resolve-value.d.ts +1 -1
- package/dist/types/luna-react/src/component/field/field-list-item.d.ts +3 -2
- package/package.json +2 -2
package/dist/client/cjs/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var Mi=Object.create;var Ge=Object.defineProperty;var _i=Object.getOwnPropertyDescriptor;var $i=Object.getOwnPropertyNames;var zi=Object.getPrototypeOf,Gi=Object.prototype.hasOwnProperty;var Hi=(e,t)=>{for(var n in t)Ge(e,n,{get:t[n],enumerable:!0})},an=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of $i(t))!Gi.call(e,o)&&o!==n&&Ge(e,o,{get:()=>t[o],enumerable:!(r=_i(t,o))||r.enumerable});return e};var Bi=(e,t,n)=>(n=e!=null?Mi(zi(e)):{},an(t||!e||!e.__esModule?Ge(n,"default",{value:e,enumerable:!0}):n,e)),Ui=e=>an(Ge({},"__esModule",{value:!0}),e);var pl={};Hi(pl,{Form:()=>Oi});module.exports=Ui(pl);var sn=require("react/jsx-runtime");function ln(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,sn.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var wt=require("react/jsx-runtime");function ye(e){return(0,wt.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",className:`size-4 transition-transform duration-200 ${e.expanded?"rotate-90":""}`,children:(0,wt.jsx)("path",{fillRule:"evenodd",d:"M8.22 5.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.75.75 0 0 1-1.06-1.06L11.94 10 8.22 6.28a.75.75 0 0 1 0-1.06Z",clipRule:"evenodd"})})}var un=require("react");var cn=require("react"),He=(0,cn.createContext)(!1);var Pt=require("react/jsx-runtime");function Ie({children:e,visible:t}){return(0,Pt.jsx)(un.Activity,{mode:t?"visible":"hidden",children:(0,Pt.jsx)(He,{value:!0,children:e})})}var Be="input",dn="input/date",mn="input/email",fn="input/number";var pn="input/time";var gn="textarea",yn="radio",xn="checkbox",Dt="list";var bn="select",hn="select/day",Tn="select/month",Sn="select/timezone",Rn="select/year";var vn="chips",Cn="chips/day",Fn="chips/month",Ee="column",An="description",Vt="fields",Nn="label",O="value",Ue="options",Lt="email",kn="number",In="password",En="tel",we="text",wn="aria-errormessage",Pn="aria-invalid",Dn="data-invalid",Vn="data-readonly",Ln="aria",On="data",Ye="max",Mn="maxLength",Xe="min",_n="minLength",xe="$ref";var $n="source",zn="state",Ze="http://luna.internal";var Gn="type",Hn={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};function d(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function qe(e){return e==null||e===""}function z(e){return b(e)||typeof e=="number"||Ot(e)}function b(e){return typeof e=="string"}function Bn(e){return d(e)&&"url"in e}function Ot(e){return typeof e=="boolean"}var Yi=/^\d+$/;function _t(e,t=[],n=O){return Array.isArray(t)?t.find(r=>{let o=$t(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}:{value:e}}function $t(e,t=O){if(e!=null){if(Array.isArray(e)&&e.every(z)||z(e))return e;if(d(e)){let n=Xi(e,t);if(z(n))return n}}}function Xi(e,t){let n=N(e,t);if(z(n))return n}function Un(e,t){if(Array.isArray(e))return e;let n=N(e,t);return Array.isArray(n)?n:null}function N(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 Yn(e,t={description:An,label:Nn,value:O}){return e.map(n=>{if(d(n)){let r=N(n,t.label),o=N(n,t.value);if(z(r)&&z(o)){let i=N(n,t.description);return{label:`${r}`,value:`${o}`,...z(i)&&{description:`${i}`}}}}return n})}function Xn(e=we){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==Be?n.trim().toLowerCase():we}function Zn(e){let t={};for(let n of e.keys()){let r=e.getAll(n);t[n]=r.length>1?r:r[0]}return t}function qn(e){let t={};for(let n of Object.keys(e)){let r=n.split(".");if(r.length===1){t[n]=e[n];continue}let o=t;for(let a=0;a<r.length-1;a++){let l=r[a],s=r[a+1],c=Yi.test(s);l in o||(o[l]=c?[]:{}),o=o[l]}let i=r[r.length-1];o[i]=e[n]}return Mt(t),t}function Mt(e){for(let t of Object.keys(e)){let n=e[t];if(Array.isArray(n)){let r=n.filter(o=>o!==void 0);for(let o of r)d(o)&&Mt(o);e[t]=r}else d(n)&&Mt(n)}}var Zi=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function Q(e,t={}){if(b(e))return qi(e,t);if(Array.isArray(e))return e.map(n=>Q(n,t));if(d(e)){let n={};for(let r in e)n[r]=Q(e[r],t);return n}return e}function De(e,t={}){return Pe(e)?Q(e,t):e}function Pe(e){return b(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>Pe(t)):d(e)?Object.values(e).some(t=>Pe(t)):!1}function qi(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,r)=>{let o=r.includes(".")?N(t,r):t[r];return z(o)?String(o):n})}function Wn(e,t){if(!b(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Zi.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 Ve={error:(...e)=>{zt()&&!Gt()&&We().error("[Luna Form]",...e)},warn:(...e)=>{zt()&&!Gt()&&We().warn("[Luna Form]",...e)},info:(...e)=>{zt()&&!Gt()&&We().info("[Luna Form]",...e)}},zt=()=>typeof We()<"u",Gt=()=>!0,We=()=>globalThis.console;function Kn(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===O&&n.push(i),i.action===$n&&r.push(i),i.action===zn&&o.push(i);t({sources:r,states:o,values:n})}function Jn(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(Bn(i)){let a=Q(i.url,e),l=i.body?Q(i.body,e):i.body;n(o,{...i,url:a,body:l})}}}var Le={eq:Qi,gt:ra,gte:oa,in:ta,lt:ia,lte:aa,neq:ea,nin:na},Wi=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,jn=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function Ki(e){return typeof e=="string"&&Wi.test(e)}function Ji(e){return typeof e=="string"&&jn.test(e)}function ji(e){let t=e.match(jn);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 ee(e){return Ki(e)?new Date(e).getTime():Ji(e)?ji(e):Number(e)}function Qi(e,t){return e===t}function ea(e,t){return e!==t}function ta(e,t){return Array.isArray(t)&&t.includes(String(e))}function na(e,t){return Array.isArray(t)&&!t.includes(String(e))}function ra(e,t){return ee(e)>ee(t)}function oa(e,t){return ee(e)>=ee(t)}function ia(e,t){return ee(e)<ee(t)}function aa(e,t){return ee(e)<=ee(t)}function Qn(e=null,t=[],n){for(let r of t){let{target:o,state:i,when:a}=r,l=Array.isArray(o)?o:[o];if(!e){n(l);continue}let s=la(e,a);n(l,s?i:void 0)}}function la(e,t){return t===void 0?!0:b(t)?Ke(e,O)===t:Ot(t)?!!Ke(e,O)===t:Array.isArray(t)?t.includes(String(Ke(e,O))):sa(e,t)}function sa(e=null,t){let n=Ke(e,t.field??O),{operator:r="eq",value:o}=t,i=Le[r];return i?i(n,o):!1}function Ke(e,t){return d(e)?N(e,t):e}function er(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?Q(i,e):void 0)}var tr=e=>T(hn)(e),Je=e=>T(Tn)(e),je=e=>T(Rn)(e),nr=e=>T(Sn)(e),rr=e=>T(Cn)(e),or=e=>T(Fn)(e),M=T(dn),X=T(pn),w=T(xn),se=T(vn),Z=T(yn),Ht=T(Be),te=T(bn),Bt=T(gn),ir=T(we,Lt,In,En),ar=T(mn,Lt),Qe=T(fn,kn);function et(e){return Z(e)||w(e)}function lr(e){return e.type===Dt}function ne(e){return e.type===Ee}function tt(e){return e.type!==Ee&&e.type!==Dt}function Oe(e){return te(e)||Z(e)||se(e)}function sr(e){return Ht(e)||Bt(e)}function S(e){return e!=null&&e!==""}function T(...e){return t=>{let n=b(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function cr(e,t={}){if(te(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&d(n))return[n]}}function ur(e){return Z(e)||w(e)?!0:e.advanced?.horizontal??!1}function dr(e){return w(e)?e.advanced?.reverse!==!1:!1}function mr(e,t){let n=e.readonly??!1;return t||n}function fr(e){if(Z(e)||se(e)||te(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||d(t)&&!(xe in t))return t}}var C=require("date-fns"),ca=/^\d+$/,nt=new Date(2e3,0,1),ua=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[];function Ut(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function Yt(){return Array.from({length:7},(e,t)=>({value:t.toString(),label:new Date(2e3,0,2+t).toLocaleString("default",{weekday:"long"})}))}function yr(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 Xt(){return new Date().getFullYear()}function da(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function ma(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return Hn[n]??"Other"}function fa(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function pr(e,t){let n=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"longOffset"}).formatToParts(t),r=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"long"}).formatToParts(t),i=(n.find(l=>l.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),a=fa(r,e);return{offset:i,longName:a}}function gr(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function xr(){let e=new Date,t=da(),n=new Map,r=gr(t),{offset:o,longName:i}=pr(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let s of ua()){if(s===t)continue;let c=gr(s),{offset:u,longName:m}=pr(s,e),x={value:s,label:`${c} - ${m} (${u})`},f=ma(s);if(f==="Other")continue;let A=n.get(f);A?A.push(x):n.set(f,[x])}for(let s of n.values())s.sort((c,u)=>c.label.localeCompare(u.label));let l=Array.from(n.entries()).sort(([s],[c])=>s.localeCompare(c)).map(([s,c])=>({label:s,items:c}));return[{label:"Suggested",items:[a]},...l]}function Zt(e,t){if(typeof e=="number")return e;let n=t??Xt(),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 ca.test(r)?parseInt(r,10):n}function rt(e,t){if(!e)return"";try{let n=(0,C.parse)(e,t,nt);return(0,C.isValid)(n)?(0,C.format)(n,"yyyy-MM-dd"):""}catch{return""}}function br(e,t){if(!e)return"";try{let n=(0,C.parse)(e,t,nt);return(0,C.isValid)(n)?(0,C.format)(n,"HH:mm:ss"):""}catch{return""}}function hr(e,t="HH:mm"){if(!e)return"";try{let n=e.split(":").length===3?"HH:mm:ss":"HH:mm",r=(0,C.parse)(e,n,nt);return(0,C.isValid)(r)?(0,C.format)(r,t):""}catch{return""}}function ot(e,t="MMMM d, yyyy"){if(!e)return"";try{let n=(0,C.parse)(e,"yyyy-MM-dd",nt);return(0,C.isValid)(n)?(0,C.format)(n,t):""}catch{return""}}function ce(e){return e.advanced?.format??"HH:mm"}function q(e){return e.advanced?.format??"MMMM d, yyyy"}var it=Xt();function pa(e){if(se(e))return ga(e)}function ga(e){if(rr(e))return Yt();if(or(e))return Ut()}function ya(e){if(te(e))return xa(e)}function xa(e){if(tr(e))return Yt();if(Je(e))return Ut();if(je(e)){let t=e.advanced?.length?.min??it,n=e.advanced?.length?.max??it+5;return yr(Zt(t,it),Zt(n,it))}if(nr(e))return xr()}function Tr(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return Ht(e)?{...n,...ba(e)}:te(e)?{...n,...Sr(e,ya)}:Bt(e)?{...n,...Ta(e)}:se(e)?{...n,...ha(e)}:n}function ba(e){let t=Xn(e.type),n={...e,type:t};return{...Ra(e),...Rr(e),...Sa(n),...ir(n)?vr(n):{},type:t}}function Sr(e,t){let n=t(e);return n?{options:n}:{}}function ha(e){let t=Sr(e,pa),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function Ta(e){return{...Rr(e),...vr(e)}}function Rr(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Sa(e){return Qe(e)?va(e):{}}function Ra(e){if(X(e)){let t=ce(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function vr(e){return Cr(e,{min:_n,max:Mn})}function va(e){return Cr(e,{min:Xe,max:Ye})}function Cr(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 Fr(e,t){let n=fr(e);return n||cr(e,t)}function Ca(e,t){let n=d(t)&&e.name in t?t[e.name]:t,r=$t(n,e.advanced?.entity);return X(e)&&S(r)?Fa(e,r):M(e)&&S(r)?Ia(e,r):r}function Fa(e,t){let n=ce(e);return b(t)?br(t,n):t}function Aa(e,t,n){return Oe(e)&&Array.isArray(n)?{...t,[Ue]:n}:t}function Na(e,t,n){if(e.required&&!S(n)&&te(e)&&e.advanced?.preselected!==!1&&Ue in t){let r=t[Ue];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function ka(e,t){return Oe(e)&&Array.isArray(t)?Yn(t,e.advanced?.options):t}function Ar(e,t,n,r){let o=Ca(e,r),i=Array.isArray(n)?ka(e,n):n,a=Aa(e,t,i),l=Na(e,a,o);return{commonPropsWithOptions:a,defaultValue:l}}function Nr(e,t){return w(e)?{checked:S(t)?t:!1}:se(e)?{value:Array.isArray(t)?t:[]}:M(e)&&b(t)&&S(t)?{value:ot(t,q(e))}:{value:t??""}}function Ia(e,t){let n=q(e);return b(t)?rt(t,n):t}function kr(e,t){let n=e??t;return n?{"data-format":n}:{}}var Ea=/^#\/definition\//;function lt(e=[],t){let n=at(e,t);return Array.isArray(n)?n.filter(Pa).sort((r,o)=>Ir(r)-Ir(o)):[]}function at(e,t,n=new Map,r=new WeakSet){if(!wa(t)||!e||typeof e!="object")return e;if(n.has(e))return n.get(e);if(r.has(e))return e;if(r.add(e),Array.isArray(e))return e.map(i=>at(i,t,n,r));if(xe in e&&b(e[xe])){let i=e[xe].replace(Ea,""),a=N(t,i);return a!==null?at(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=at(a,t,n,r);return r.delete(e),n.set(e,o),o}function Er(e){return Object.entries(e??{})}function Ir(e){return e.order??Number.MAX_VALUE}function wa(e){return e!==void 0&&d(e)&&Object.keys(e).length>0}function Pa(e){return Gn in e?!0:Array.isArray(e[Vt])?e[Vt].length>0:!0}function wr(e,t){let n={};for(let[r,o]of Er(t))n[`${e}-${r}`]=o;return n}function Da(e){return wr(Ln,e)}function Va(e){return wr(On,e)}function Pr(e,t){let n=Da(e.advanced?.aria);return t&&t.length>0&&(n[Pn]="true",n[wn]=`${e.name}-error`),n}function Dr(e){return Va(e.advanced?.data)}var Vr={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Lr={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function Or(e,t=2){return Vr[e&&e in Vr?e:t]}function Mr(e){if(e&&e in Lr)return Lr[e]}function La(e,t){let n=e.advanced?.length?.min??1;if(t){let r=N(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function _r(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===Ee}function $r(e,t){let n=La(e,t);return Array.from({length:n},(r,o)=>o)}function zr(e){return e.label??e.name}var g=require("zod");function p(e,t){return e?t?t[e]??e:e:""}var Oa=[[Qe,Ga],[ar,Ma],[je,Ha],[Je,Ba],[w,_a],[Z,$a]];function Hr(e,t=[],n){let r=g.z.object(e);return t.length===0?r:Za(r,t,n)}function Br(e){let t={},n=g.z.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function Ur(e,t){for(let[n,r]of Oa)if(n(e))return r(e,t);return za(e,t)}function Ma(e,t){let n=g.z.string().trim();if(e.required){let r=be(e,t),o=n.min(1,r).pipe(Gr(e,t));return g.z.preprocess(i=>qe(i)?"":i,o)}return n.pipe(Gr(e,t)).or(g.z.literal("")).nullable()}function _a(e,t){let n=g.z.coerce.boolean();return e.required?(n=n.refine(r=>r===!0,{message:be(e,t)}),g.z.preprocess(r=>r===null?!1:r,n)):n.nullable()}function $a(e,t){let n=g.z.coerce.string();return e.required?(n=n.min(1,be(e,t)),g.z.preprocess(r=>qe(r)?"":r,n)):n.or(g.z.literal("")).nullable()}function za(e,t){let n=g.z.coerce.string().trim();return n=Yr(n,e,t),e.required?(n=Xr(n,e,t),g.z.preprocess(r=>qe(r)?"":r,n)):n.nullable()}function Ga(e,t){let n=g.z.coerce.number().int();return n=Yr(n,e,t),e.required?(n=Xr(n,e,t),g.z.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function Ha(e,t){return e.required?g.z.preprocess(Ua,g.z.coerce.number({message:be(e,t)}).int()):g.z.coerce.number().int().nullable()}function Ba(e,t){let n=be(e,t),r=g.z.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function Ua(e){return e===null||e===""?void 0:e}function Gr(e,t){let n=e.validation?.email?p(e.validation?.email,t):void 0;return g.z.email(n)}function Yr(e,t,n){return e=Ya(e,t,n),e=Xa(e,t,n),e}function Xr(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,be(t,n)):e}var Ya=(e,t,n)=>Zr(e,t,Xe,n),Xa=(e,t,n)=>Zr(e,t,Ye,n);function Zr(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?p(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function Za(e,t=[],n){let r=Wa(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:l}of r)if(!qa(o,a,l)){let s=p(l.message,n);i.addIssue({code:"custom",message:s,path:[a]})}})}function qa(e,t,n){let r=n.operator??"eq",o=Le[r];return o?o(e[t],e[n.field]):!1}function Wa(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 qr(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=p(a.message,r);o.push(c)}}return o}function be(e,t){return e.validation?.required?p(e.validation?.required,t):void 0}function Wr(e,t){if(!t||!Ja(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||Ka(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 Ka(e){return e==="https"?"443":"80"}function Ja(e){return/^(https?:)?\/\//.test(e)}function Kr(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,Ze);new URL(t,Ze).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(Ze,""):o}catch{return t||e}}function Jr(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=Kr(t.url,n.url),o=ja(t,n),i=Qa(t,n);return{...t,...n,url:r,body:o,headers:i}})}function ja(e,t){return d(t.body)&&d(e?.body)?{...e.body,...t.body}:t.body??e?.body}function Qa(e,t){return d(t.headers)&&d(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function st(e,t){return{...e,...t}}var jr=require("react/jsx-runtime");function W(e){return Wn(e,(t,n,r)=>(0,jr.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}var ct=require("react"),G=require("react/jsx-runtime");function Qr(e){let{fields:t=[]}=e.section,[n,r]=(0,ct.useState)(!1),o=(0,ct.useCallback)(()=>r(i=>!i),[]);return(0,G.jsxs)("fieldset",{"data-slot":"field-set","data-advanced":"true","data-expanded":n,"data-empty":t.length===0,className:"flex flex-col",id:e.section.id?.toString(),children:[(0,G.jsx)("legend",{children:(0,G.jsxs)("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-slate-600 dark:text-slate-400",onClick:o,type:"button",children:[(0,G.jsx)(ye,{expanded:n}),(0,G.jsx)("span",{children:W(e.section.title)})]})}),(0,G.jsx)(Ie,{visible:n,children:(0,G.jsxs)("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-slate-300 pl-4 dark:border-slate-600","data-slot":"field-set-content",children:[e.section.description&&(0,G.jsx)("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:W(e.section.description)}),e.group]})})]})}var re=require("react/jsx-runtime");function eo(e){let t=(0,re.jsxs)("div",{className:"flex flex-col",children:[e.title&&(0,re.jsx)("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:W(e.title)}),e.description&&(0,re.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:W(e.description)})]});return e.step?(0,re.jsxs)("div",{className:"flex flex-row items-start gap-4",children:[(0,re.jsx)("div",{className:"bg-primary text-primary-foreground flex h-6 w-6 shrink-0 items-center justify-center rounded-full",children:(0,re.jsx)("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}var dt=require("react/jsx-runtime");function ut(e){return(0,dt.jsxs)("fieldset",{className:"flex flex-col data-[empty=false]:gap-6","data-empty":e.empty,"data-slot":"field-set",id:e.id,children:[(0,dt.jsx)(eo,{description:e.description,step:e.step,title:e.title}),e.children]})}var to=require("react/jsx-runtime");function oe(e){return(0,to.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 mt=require("react/jsx-runtime");function no(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=st(e.style,{compact:e.section.advanced?.compact}),o=(0,mt.jsx)(oe,{compact:r,children:e.children});return!e.section.title&&!e.section.description?o:e.section.advanced?.collapsible?(0,mt.jsx)(Qr,{section:e.section,group:o}):(0,mt.jsx)(ut,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),step:n,title:e.section.title,children:o})}var qt=require("react/jsx-runtime");function ro(){return(0,qt.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,qt.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}var so=require("jotai");var ie=require("jotai"),Wt=require("jotai-family"),ft=require("fast-equals");function pt(e,t){let{[t]:n,...r}=e;return r}function el(e){return(0,Wt.atomFamily)(t=>(0,ie.atom)(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];(0,ft.deepEqual)(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,pt(i,t))}))}function tl(e){return(0,ie.atom)(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function nl(e){return(0,ie.atom)(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)l in i&&(delete i[l],a=!0);a&&n(e,i)})}function rl(e){return(0,ie.atom)(null,(t,n,r)=>{let o=t(e);(0,ft.deepEqual)(o,r)||n(e,r)})}function oo(e,t={}){let{merge:n,validateTarget:r}=t;return(0,Wt.atomFamily)(o=>(0,ie.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 m=u[o];(!m||!(0,ft.deepEqual)(m,s))&&(u[o]=s,a(e,{...c,[l]:u}))}else o in u&&(delete u[o],Object.keys(u).length===0?a(e,pt(c,l)):a(e,{...c,[l]:u}))}))}function io(e){return(0,ie.atom)(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)l in i&&(delete i[l],a=!0);for(let l in i){let s={...i[l]},c=!1;for(let u of r)u in s&&(delete s[u],c=!0,a=!0);c&&(Object.keys(s).length===0?delete i[l]:i[l]=s)}a&&n(e,i)})}function he(e={}){let t=(0,ie.atom)(e);return{atom:t,clearAll:tl(t),clear:nl(t),bulkReport:rl(t),report:el(t)}}var ao=he(),gt=ao.atom,lo=ao.report;function ol(e,t){return e.fields.every(n=>co(n,t))}function co(e,t){return t[e.name]?.hidden??e.hidden??!1}function il(e,t){return ne(e)?ol(e,t):co(e,t)}function yt(e){let t=(0,so.useAtomValue)(gt);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>il(r,t))?null:e.children}var K=require("react/jsx-runtime");function uo(e){let t=lt(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)(oe,{children:[t.map((n,r)=>(0,K.jsxs)(yt,{fields:n.fields??[],children:[(0,K.jsx)(no,{advanced:e.advanced,section:n,step:r+1,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.advanced?.separator&&(0,K.jsx)(ro,{})]},`key-${n.id}-${r}`)),e.control&&(0,K.jsx)(ln,{isPending:e.isPending,children:e.control})]})})})}var fo=require("react/jsx-runtime");function mo(e){return(0,fo.jsx)("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}var po=require("react"),Te=require("react/jsx-runtime");function Se(e){let t={context:e.context,env:e.config?.env},[n,r]=(0,po.useState)(()=>d(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),o=()=>r(l=>!l),i=d(e.text)&&b(e.text.title)?W(p(De(e.text.title,t),e.translations)):void 0,a=W(p(De(b(e.text)?e.text:e.text?.message,t),e.translations));return a?(0,Te.jsxs)("div",{className:"flex flex-col gap-2",children:[i&&(0,Te.jsxs)("button",{className:"flex items-center gap-1 text-left text-xs font-medium text-slate-700 hover:text-slate-900 dark:text-slate-300 dark:hover:text-slate-100",onClick:o,type:"button",children:[i,(0,Te.jsx)(ye,{expanded:n})]}),n&&(0,Te.jsx)(mo,{children:a})]}):null}var go=require("tailwind-merge"),xt=require("react/jsx-runtime");function yo(e){let t=e.style?.showOptionalLabel??!0,n=Z(e.field)||w(e.field);return(0,xt.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,go.twMerge)("flex w-fit items-center gap-2 text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,children:[e.children,t&&!e.field.required&&(0,xt.jsx)("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:p("(Optional)",e.translations)})]})}var Me=require("react/jsx-runtime");function xo(e){let t={context:e.context,env:e.config?.env},n=De(e.field.label,t);return(0,Me.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,Me.jsx)(yo,{field:e.field,style:e.config?.style,translations:e.translations,children:p(n,e.translations)}),e.horizontal===!0&&(0,Me.jsx)(Se,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}var ue=require("react/jsx-runtime");function bo(e){return(0,ue.jsxs)(ue.Fragment,{children:[e.field.name&&e.field.label&&(0,ue.jsx)(xo,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&(0,ue.jsx)(Se,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}function bt(e,t){return e?t(e):null}var Fe=require("react");var Kt=he(),ho=Kt.clear,To=Kt.bulkReport,ht=Kt.report;var Tt=he(),St=Tt.atom,So=Tt.clearAll,Ro=Tt.clear,Re=Tt.report;var H=require("react");var J=require("react");function vo(e,t,n,r){let{name:o}=e,i=(0,J.useMemo)(()=>Ur(e,r),[e,r]),a=(0,J.useContext)(He),l=(0,J.useEffectEvent)(c=>{c&&t(c,i,e)}),s=(0,J.useEffectEvent)(c=>{c&&n(c,{keepValue:a})});return(0,J.useEffect)(()=>(l(o),()=>{s(o)}),[o]),i}var Ce=require("jotai");var ve=require("react");function Co(){let e=(0,ve.useRef)(null);return(0,ve.useEffect)(()=>()=>{e.current&&clearTimeout(e.current)},[]),(0,ve.useCallback)((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}function Fo(e,t){let n=(0,Ce.useStore)(),r=e.field.advanced?.entity,o=Co(),[,i]=(0,H.useTransition)(),{setValue:a,shouldSkipOnChange:l,value:s,setSource:c}=t,u=(0,H.useRef)(s);u.current=s;let m=(0,H.useRef)(e.translations);m.current=e.translations;let x=et(e.field),f=(0,Ce.useSetAtom)(St),A=(0,Ce.useSetAtom)(gt),R=(0,Ce.useSetAtom)(ht(e.field.name)),k=vo(e.field,e.onMount,e.onUnmount,e.translations),P=p(e.commonProps.placeholder,e.translations),D={...e.commonProps,placeholder:P},F=(0,H.useRef)(null);F.current=v=>{if(a(v),e.onValueChange){let $=e.dataAttributes??{};e.onValueChange({data:Object.keys($).length>0?$:void 0,name:e.field.name,type:e.field.type,value:v})}};let V=(0,H.useRef)(null);V.current=v=>{let $=e.field.event?.change;$&&Kn($,({sources:Y,states:fe,values:ke})=>{i(()=>{Jn(v,Y,(h,E)=>c(h,E)),Qn(v,fe,(h,E)=>{A(j=>E?h.reduce((pe,ge)=>({...pe,[ge]:E}),j):h.reduce((pe,ge)=>pt(pe,ge),j)),E?.hidden===!0&&f(j=>{let pe=!1,ge={...j};for(let Et of Object.keys(j))h.some(on=>Et===on||Et.startsWith(`${on}.`))&&(delete ge[Et],pe=!0);return pe?ge:j})}),er(v,ke,(h,E)=>{f(j=>({...j,[h]:E}))})})})};let L=(0,H.useCallback)(v=>{let Y=k.safeParse(v).error?.issues.map(h=>h.message)??[],fe=e.field.validation?.custom,ke=fe?qr(v,fe,h=>n.get(Re(h)),m.current):[];R([...Y,...ke])},[e.field.validation?.custom,k,R,n]),I=(0,H.useCallback)(v=>{if(!x){let $=v.target.value;e.config.validation.blur&&L($)}},[x,e.config.validation.blur,L]);return{applyChangeEventsRef:V,commonProps:D,entity:r,hasClickable:x,onBlur:I,onValueChangeRef:F,setTimeoutRef:o,shouldSkipOnChange:l,validated:L,valueRef:u}}var Ao=require("fast-equals");function Rt(e,t){if(e in t)return t[e];if(!e.includes("."))return;let n=e.split("."),r=t;for(let o of n){if(r==null)return;if(Array.isArray(r)){let i=Number(o);r=Number.isInteger(i)?r[i]:void 0}else if(typeof r=="object")r=r[o];else return}return r}var No=require("jotai"),ae=require("react");function ko(e,t){let{name:n}=e,r=(0,ae.useRef)(!1),[o,i]=(0,No.useAtom)(Re(n)),a=(0,ae.useEffectEvent)(s=>{let c=Rt(n,s);S(c)&&((0,Ao.deepEqual)(o,c)||(r.current=!0),i(c))});(0,ae.useEffect)(()=>{t&&a(t)},[t]);let l=(0,ae.useCallback)(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:l,value:o}}var Jt=require("react/jsx-runtime");function Io(e){let{useSource:t,useExtraProps:n,getValue:r,shouldSkipChange:o,dispatchChange:i,buildInitialSelected:a,isInitialReady:l}=e.strategies,{setValue:s,shouldSkipOnChange:c,value:u}=ko(e.field,e.value),{data:m,setSource:x}=t(e.field,e.config,u),{applyChangeEventsRef:f,commonProps:A,entity:R,hasClickable:k,onBlur:P,onValueChangeRef:D,setTimeoutRef:F,validated:V,valueRef:L}=Fo(e,{setValue:s,shouldSkipOnChange:c,value:u,setSource:x}),I=n?.(e.field),v=(0,Fe.useRef)(!1),{commonPropsWithOptions:$,defaultValue:Y}=Ar(e.field,A,m,u),fe=Nr(e.field,Y);(0,Fe.useEffect)(()=>{if(v.current||!e.value)return;if(!e.field.event?.change){v.current=!0;return}if(!S(Y)||!l(e.field,Y,m))return;v.current=!0;let h=a(Y,m,R);f.current?.(h)},[f,a,m,Y,R,l,e.field,e.value]);let ke=(0,Fe.useCallback)(h=>{let E=r(h,e.field);o({shouldSkipOnChange:c,hasClickable:k,inputValue:E,valueRef:L})||(D.current?.(E),e.config.validation.change&&V(E),e.field.event?.change&&i({applyChangeEventsRef:f,data:m,entity:R,inputValue:E,setTimeoutRef:F}))},[f,m,i,R,r,k,D,e.config.validation.change,e.field,F,o,c,V,L]);return bt(e.config.inputs[e.field.type],h=>(0,Jt.jsx)(bo,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:(0,Jt.jsx)(h,{...$,...e.ariaAttributes,...e.dataAttributes,...I,...fe,onBlur:P,onChange:ke})}))}var Eo=require("react/jsx-runtime");function Ae(e){return function(n){return(0,Eo.jsx)(Io,{...n,strategies:e})}}function wo(e){let t=M(e)?q(e):null,n=X(e)?ce(e):null;return{dateFormat:t,timeFormat:n}}var Po=require("jotai");var al=e=>{let t=Jr(e);if(t)return t},ll=e=>e.trim()!=="",Do=(0,Po.atom)({}),vt=oo(Do,{merge:al,validateTarget:ll}),Vo=io(Do);var Lo=require("jotai");function Ct(e){return{data:null,setSource:(0,Lo.useSetAtom)(vt(e.name))}}var Oo=Ae({useSource:Ct,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=wo(e);return kr(t,n)},getValue:(e,t)=>{let n=e.target.value,r=X(t)?ce(t):null;if(r!==null)return hr(n,r);let o=M(t)?q(t):null;return o!==null&&ot(n,o)||n},shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>S(t)});var $o=require("jotai");var Mo=Bi(require("swr"),1);function _o(e=null,t,n=!1){let{data:r,error:o}=(0,Mo.default)(sl(e,t,n),t.fetcher.provider);if(o&&Ve.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return Un(r,e.namespace)}return null}function sl(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!Pe(e.url)){if(Wr(e.url,t.fetcher.remotePatterns))return e;Ve.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function zo(e,t,n){let r=Fr(e,n),[o,i]=(0,$o.useAtom)(vt(e.name));return[_o(o??r,t,e.disabled),i]}function cl(e,t,n){let[r,o]=zo(e,t,n);return{data:r,setSource:o}}var Go=Ae({useSource:cl,getValue:e=>e.target.value,shouldSkipChange:({shouldSkipOnChange:e,hasClickable:t})=>!t&&e(),dispatchChange:({applyChangeEventsRef:e,data:t,entity:n,inputValue:r})=>{e.current?.(_t(r,t,n))},buildInitialSelected:(e,t,n)=>_t(String(e),t,n),isInitialReady:(e,t,n)=>(!Oe(e)||!!n&&n.length>0)&&S(t)});var Ho=Ae({useSource:Ct,getValue:e=>e.target.value,shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>S(t)});var Ft=require("react/jsx-runtime");function Bo(e){return M(e.field)||X(e.field)?(0,Ft.jsx)(Oo,{...e}):sr(e.field)?(0,Ft.jsx)(Ho,{...e}):(0,Ft.jsx)(Go,{...e})}var jt=require("react/jsx-runtime");function Uo(e){return!e.errors||e.errors.length===0?null:(0,jt.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,jt.jsx)("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var Yo=require("tailwind-merge"),Xo=require("react/jsx-runtime");function At(e){let t=e.errors&&e.errors.length>0;return(0,Xo.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Dn]:"true"},...e.disabled&&{[Vn]:"true"},"data-orientation":e.orientation,className:(0,Yo.twMerge)("group flex w-full flex-col items-center data-[invalid=true]:text-red-600 data-[invalid=true]:dark:text-red-500","data-[clickable=true]:items-start",e.isCheckbox&&(e.isReversed?"flex-row-reverse!":"flex-row!"),"data-[clickable=true]:has-[>[data-slot=field-content]]:[&>:first-child]:mt-px",e.className),children:e.children})}var Zo=require("tailwind-merge"),Wo=require("react/jsx-runtime");function qo(e){return(0,Wo.jsx)(At,{...e,orientation:"vertical",className:(0,Zo.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var Ko=require("tailwind-merge"),jo=require("react/jsx-runtime");function Jo(e){return(0,jo.jsx)(At,{...e,orientation:"horizontal",className:(0,Ko.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 Qt=require("react/jsx-runtime");function Qo(e){let t=et(e.field),n=w(e.field),r=dr(e.field);return e.horizontal?(0,Qt.jsx)(Jo,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):(0,Qt.jsx)(qo,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function ei(e){if(!e.field.type)return null;let t=Tr(e.field,e.disabled),n=Dr(e.field),r=Pr(e.field,e.errors),o={...e.field,disabled:t.disabled};return e.children({ariaAttributes:r,commonProps:t,dataAttributes:n,field:o,horizontal:e.horizontal})}var ti=require("tailwind-merge"),Ne=require("react/jsx-runtime");function ni(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=st(e.style,{horizontal:ur(e.field)}),o=mr(e.field,e.disabled);return(0,Ne.jsxs)("div",{className:(0,ti.twMerge)("flex flex-col gap-3",Mr(t)),children:[(0,Ne.jsx)(Qo,{disabled:o,errors:n,field:e.field,horizontal:r,children:(0,Ne.jsx)(ei,{disabled:o,errors:n,field:e.field,horizontal:r,children:e.children})}),(0,Ne.jsx)(Uo,{errors:n,name:e.field.name})]})}var ri=require("jotai"),li=require("react/jsx-runtime");function oi(e){return(t,n)=>o=>{let i=(0,ri.useAtomValue)(e(o.field.name)),a=n(i,o);return a===null?null:(0,li.jsx)(t,{...o,...a})}}var ul=oi(ht);function ii(e){return ul(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var dl=oi(lo);function ai(e){return dl(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var si=ai(ii(ni));var Nt=require("tailwind-merge"),ci=require("react"),y=require("react/jsx-runtime");function ui(e){let[t,n]=(0,ci.useState)(e.collapsible?!e.collapsed:!0);function r(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function o(){n(s=>!s)}let i=e.canRemove&&e.onRemove!=null&&(0,y.jsx)("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:(0,Nt.twMerge)("flex size-6 items-center justify-center rounded text-xl leading-none text-slate-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500 dark:hover:text-red-400"),onClick:r,type:"button",children:(0,y.jsx)("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),a=(0,y.jsxs)("span",{className:"text-sm font-medium text-slate-300 group-hover:underline dark:text-slate-400",children:[e.label," ",e.index+1,!t&&e.preview&&(0,y.jsx)("div",{className:"flex items-center gap-2 overflow-hidden text-ellipsis whitespace-nowrap text-slate-400 dark:text-slate-500",children:e.preview})]}),l=(e.isMultiField||e.collapsible)&&(0,y.jsxs)("div",{className:(0,Nt.twMerge)("flex items-center justify-between gap-2",e.isMultiField&&"mb-3"),children:[e.collapsible?(0,y.jsxs)("button",{"aria-expanded":t,"aria-label":`${t?"Collapse":"Expand"} ${e.label} ${e.index+1}`,className:(0,Nt.twMerge)("group flex grow items-center gap-2 rounded p-1 text-left text-slate-400","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500"),onClick:o,type:"button",children:[(0,y.jsx)(ye,{expanded:t}),a]}):a,i]});return e.isMultiField?(0,y.jsxs)("div",{"data-slot":"list-item-card",className:"rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[l,(0,y.jsx)(Ie,{visible:t,children:(0,y.jsx)(oe,{children:e.children})})]}):e.collapsible?(0,y.jsxs)("div",{className:"flex flex-col gap-2",children:[l,(0,y.jsx)(Ie,{visible:t,children:(0,y.jsx)(oe,{children:e.children})})]}):(0,y.jsxs)("div",{className:"flex items-start gap-2",children:[(0,y.jsx)("div",{className:"flex grow flex-col",children:(0,y.jsx)(oe,{children:e.children})}),i&&(0,y.jsx)("div",{className:"shrink-0",children:i})]})}var di=require("jotai"),de=require("react/jsx-runtime");function mi({initialValue:e,name:t,separator:n}){let o=(0,di.useAtomValue)(Re(t))??e;return o==null||o===""||d(o)||Array.isArray(o)?null:(0,de.jsxs)(de.Fragment,{children:[n&&(0,de.jsx)("span",{className:"text-xs text-slate-300 dark:text-slate-600",children:"\xB7"}),(0,de.jsx)("span",{className:"max-w-[150px] overflow-hidden text-xs text-ellipsis",children:`${o}`})]})}var en=require("react/jsx-runtime");function fi({name:e,previews:t,value:n}){return(0,en.jsx)("div",{className:"flex items-center gap-1.5 overflow-hidden text-ellipsis whitespace-nowrap",children:t.map((r,o)=>{let i=`${e}.${r}`;return(0,en.jsx)(mi,{initialValue:n?Rt(i,n):void 0,name:i,separator:o>0},r)})})}var yi=require("tailwind-merge");var pi=require("jotai"),B=require("react");function gi(e,t){let n=e.advanced?.length?.min??1,r=e.advanced?.length?.max??1/0,[o,i]=(0,B.useState)(()=>$r(e,t)),a=(0,B.useRef)(o.length),l=(0,B.useRef)(o);(0,B.useLayoutEffect)(()=>{l.current=o});let s=(0,pi.useSetAtom)(St),c=(0,B.useCallback)(()=>{i(f=>{if(f.length>=r)return f;let A=a.current++;return[...f,A]})},[r]),u=(0,B.useCallback)(f=>{if(l.current.length<=n)return;let A=l.current[f];i(R=>R.length<=n?R:R.filter((k,P)=>P!==f)),s(R=>{let k={...R},P=`${e.name}.`,D=[];for(let F of e.fields)if(ne(F))for(let V of F.fields)D.push(V.name);else D.push(F.name);for(let F of D)delete k[`${P}${A}.${F}`];return k})},[e.name,e.fields,n,s]),m=o.length<r,x=o.length>n;return[o,c,u,m,x,r]}var _=require("react/jsx-runtime");function xi(e){let[t,n,r,o,i,a]=gi(e.field,e.value),l=zr(e.field),s=e.field.advanced?.action??"Add item",c=a!==1/0,u=_r(e.field),m=e.field.advanced?.preview;return(0,_.jsxs)(_.Fragment,{children:[t.map((x,f)=>(0,_.jsx)(ui,{canRemove:i,collapsible:e.field.advanced?.collapsible,collapsed:e.field.advanced?.collapsed,index:f,isMultiField:u,label:l,onRemove:r,preview:m&&(0,_.jsx)(fi,{name:`${e.field.name}.${x}`,previews:m,value:e.value}),children:e.children(x)},x)),(0,_.jsxs)("button",{"aria-disabled":!o,"aria-label":c?`${s}, ${t.length} of ${a}`:s,className:(0,yi.twMerge)("flex h-9 w-full items-center gap-2 rounded-md border border-dashed border-slate-200 px-4","text-sm font-medium text-slate-500","transition-colors duration-150","hover:border-slate-300 hover:text-slate-800","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:ring-offset-2 focus-visible:outline-none","dark:border-slate-800 dark:text-slate-400","dark:hover:border-slate-700 dark:hover:text-slate-200",c?"justify-between":"justify-center",!o&&"cursor-not-allowed opacity-50 hover:border-slate-200 hover:text-slate-500 dark:hover:border-slate-800 dark:hover:text-slate-400"),disabled:!o,onClick:n,type:"button",children:[(0,_.jsxs)("span",{className:"flex items-center gap-2",children:[(0,_.jsx)("span",{"aria-hidden":"true",className:"text-base leading-none",children:"+"}),s]}),c&&(0,_.jsxs)("span",{"aria-hidden":"true",className:"text-slate-400 tabular-nums dark:text-slate-500",children:[t.length," / ",a]})]})]})}var hi=require("react/jsx-runtime");function bi(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return(0,hi.jsx)(ut,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}var kt=require("react/jsx-runtime");function Ti({children:e,field:t,value:n}){return(0,kt.jsx)(yt,{container:t,fields:t.fields,children:(0,kt.jsx)(bi,{field:t,children:(0,kt.jsx)(xi,{field:t,value:n,children:e})})})}var Si=require("tailwind-merge");var _e=require("react/jsx-runtime");function Ri(e){let t=Or(e.column?.advanced?.cols);return(0,_e.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[(0,_e.jsx)("div",{className:(0,Si.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&(0,_e.jsx)(Se,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}var Fi=require("react");var Ci=require("react/jsx-runtime");function vi(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>tt(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:ne(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return(0,Ci.jsx)($e,{children:e.children,components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:t,style:e.style,translations:e.translations,value:e.value})}var le=require("react/jsx-runtime");function $e(e){let{field:t,list:n}=e.components;return lt(e.fields).map((r,o)=>(0,le.jsxs)(Fi.Fragment,{children:[ne(r)&&(0,le.jsx)(Ri,{column:r,config:e.config,context:e.context,translations:e.translations,children:(0,le.jsx)($e,{...e,fields:r.fields})}),tt(r)&&(0,le.jsx)(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),lr(r)&&(0,le.jsx)(n,{field:r,value:e.value,children:i=>(0,le.jsx)(vi,{children:e.children,components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:r,index:i,style:e.style,translations:e.translations,value:e.value})})]},o))}var Ni=require("react/jsx-runtime");function Ai(e){return n=>(0,Ni.jsx)($e,{...n,components:e})}var ki=Ai({field:si,list:Ti});var nn=require("jotai");var ze=require("react");function Ei(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},l=(0,nn.useSetAtom)(To),s=(0,nn.useSetAtom)(So),c={data:null,error:null,success:!1},[u,m,x]=(0,ze.useActionState)(async(f,A)=>{let[R,k]=e(),P=Hr(R,k,a);if(i===!1)return t?await t(A,P):f;let D=Zn(A),F=fl(D,k),V=P.safeParse(F);if(!V.success){let I=Br(V.error);return(0,ze.startTransition)(()=>{l(I)}),tn(D,{description:p("Please correct the errors and try again.",a),details:[],title:p("There were validation errors submitting the form.",a)})}let L=qn(F);if(t)try{let I=await t(L,P);return I.success?(r?.(I.data),o||(0,ze.startTransition)(()=>{s()}),Ii(L,o)):tn(L,I.error)}catch(I){return Ve.error("Error executing form action:",I),tn(L,{title:p("An unexpected error occurred submitting the form.",a),details:ml(I,a)})}return Ii(V.data,o)},c);return[m,u,x]}function ml(e,t){return e instanceof Error?[e.message]:[p("Unknown error",t)]}function Ii(e,t=!1){return{data:t?e:null,error:null,success:!0}}function tn(e,t){return{data:e,error:t,success:!1}}function fl(e,t){let n={...e};for(let r of t)if(M(r)&&typeof n[r.name]=="string"&&n[r.name]){let o=rt(n[r.name],q(r));o&&(n[r.name]=o)}return n}var me=require("react");var wi=require("react"),It=require("jotai");function Pi(){let e=(0,It.useSetAtom)(ho),t=(0,It.useSetAtom)(Ro),n=(0,It.useSetAtom)(Vo);return(0,wi.useCallback)((r,o)=>{let i=Array.isArray(r)?r:[r];e(i),n(i),o?.keepValue||t(i)},[e,n,t])}function Di(){let e=Pi(),t=(0,me.useRef)({}),n=(0,me.useRef)([]),r=(0,me.useCallback)((a,l,s)=>{a in t.current||(t.current[a]=l,n.current.push(s))},[]),o=(0,me.useCallback)((a,l)=>{t.current[a]&&(delete t.current[a],n.current=n.current.filter(s=>s.name!==a),e([a],{keepValue:l?.keepValue}))},[e]);return[(0,me.useCallback)(()=>[t.current,n.current],[]),r,o]}var U=require("react/jsx-runtime");function Vi(e){let t=e.translations?.[e.lang??""],[n,r,o]=Di(),[i,a,l]=Ei(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,U.jsxs)(U.Fragment,{children:[s&&bt(e.config.alert,u=>(0,U.jsx)("div",{className:"mb-4 w-full",children:(0,U.jsx)(u,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),(0,U.jsx)(uo,{action:i,advanced:e.advanced,config:e.config,control:e.children,definition:e.definition,isPending:l,noValidate:!0,readOnly:e.readOnly,sections:e.sections,children:({disabled:u,fields:m})=>(0,U.jsx)(ki,{config:e.config,context:e.context,disabled:u,fields:m,style:e.config.style,translations:t,value:c,children:x=>(0,U.jsx)(Bo,{...x,config:e.config,context:e.context,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:c})})})]})}var Li=require("jotai"),rn=require("react/jsx-runtime");function Oi(e){return(0,rn.jsx)(Li.Provider,{children:(0,rn.jsx)(Vi,{...e})})}
|
|
1
|
+
"use strict";var Ki=Object.create;var Ke=Object.defineProperty;var Ji=Object.getOwnPropertyDescriptor;var Qi=Object.getOwnPropertyNames;var ji=Object.getPrototypeOf,ea=Object.prototype.hasOwnProperty;var ta=(e,t)=>{for(var n in t)Ke(e,n,{get:t[n],enumerable:!0})},bn=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Qi(t))!ea.call(e,o)&&o!==n&&Ke(e,o,{get:()=>t[o],enumerable:!(r=Ji(t,o))||r.enumerable});return e};var na=(e,t,n)=>(n=e!=null?Ki(ji(e)):{},bn(t||!e||!e.__esModule?Ke(n,"default",{value:e,enumerable:!0}):n,e)),ra=e=>bn(Ke({},"__esModule",{value:!0}),e);var wl={};ta(wl,{Form:()=>Wi});module.exports=ra(wl);var hn=require("react/jsx-runtime");function xn(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,hn.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var zt=require("react/jsx-runtime");function Te(e){return(0,zt.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",className:`size-4 transition-transform duration-200 ${e.expanded?"rotate-90":""}`,children:(0,zt.jsx)("path",{fillRule:"evenodd",d:"M8.22 5.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.75.75 0 0 1-1.06-1.06L11.94 10 8.22 6.28a.75.75 0 0 1 0-1.06Z",clipRule:"evenodd"})})}var Sn=require("react");var Tn=require("react"),Je=(0,Tn.createContext)(!1);var Gt=require("react/jsx-runtime");function Ve({children:e,visible:t}){return(0,Gt.jsx)(Sn.Activity,{mode:t?"visible":"hidden",children:(0,Gt.jsx)(Je,{value:!0,children:e})})}var Qe="input",Rn="input/date",vn="input/email",Cn="input/number";var Fn="input/time";var An="textarea",Nn="radio",wn="checkbox",Ht="list";var kn="select",In="select/active",En="select/day",Pn="select/month",Dn="select/timezone",Vn="select/year";var Ln="chips",On="chips/day",Mn="chips/month",Le="column",_n="description",Ut="fields",$n="label",M="value",je="options",Yt="email",Bn="number",zn="password",Gn="tel",Oe="text",Hn="aria-errormessage",Un="aria-invalid",Yn="data-invalid",Xn="data-readonly",Zn="aria",qn="data",et="max",Wn="maxLength",tt="min",Kn="minLength",Se="$ref";var Jn="source",Qn="state",nt="http://luna.internal";var jn="type",er={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};function d(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function E(e){return e==null||e===""}function z(e){return b(e)||typeof e=="number"||Xt(e)}function b(e){return typeof e=="string"}function tr(e){return d(e)&&"url"in e}function Xt(e){return typeof e=="boolean"}var oa=/^\d+$/;function qt(e,t=[],n=M){return Array.isArray(t)?t.find(r=>{let o=Wt(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}:{value:e}}function Wt(e,t=M){if(e!=null){if(Array.isArray(e)&&e.every(z)||z(e))return e;if(d(e)){let n=ia(e,t);if(z(n))return n}}}function ia(e,t){let n=P(e,t);if(z(n))return n}function nr(e,t){if(Array.isArray(e))return e;let n=P(e,t);return Array.isArray(n)?n:null}function P(e,t){if(!t||!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 rr(e,t={description:_n,label:$n,value:M}){return e.map(n=>{if(d(n)){let r=P(n,t.label),o=P(n,t.value);if(z(r)&&z(o)){let i=P(n,t.description);return{label:`${r}`,value:`${o}`,...z(i)&&{description:`${i}`}}}}return n})}function or(e=Oe){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==Qe?n.trim().toLowerCase():Oe}function ir(e){let t={};for(let n of e.keys()){let r=e.getAll(n);t[n]=r.length>1?r:r[0]}return t}function ar(e){let t={};for(let n of Object.keys(e)){let r=n.split(".");if(r.length===1){t[n]=e[n];continue}let o=t;for(let a=0;a<r.length-1;a++){let l=r[a],s=r[a+1],c=oa.test(s);l in o||(o[l]=c?[]:{}),o=o[l]}let i=r[r.length-1];o[i]=e[n]}return Zt(t),t}function Zt(e){for(let t of Object.keys(e)){let n=e[t];if(Array.isArray(n)){let r=n.filter(o=>o!==void 0);for(let o of r)d(o)&&Zt(o);e[t]=r}else d(n)&&Zt(n)}}var aa=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function re(e,t={}){if(b(e))return la(e,t);if(Array.isArray(e))return e.map(n=>re(n,t));if(d(e)){let n={};for(let r in e)n[r]=re(e[r],t);return n}return e}function _e(e,t={}){return Me(e)?re(e,t):e}function Me(e){return b(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>Me(t)):d(e)?Object.values(e).some(t=>Me(t)):!1}function la(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,r)=>{let o=r.includes(".")?P(t,r):t[r];return z(o)?String(o):n})}function lr(e,t){if(!b(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=aa.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 $e={error:(...e)=>{Kt()&&!Jt()&&rt().error("[Luna Form]",...e)},warn:(...e)=>{Kt()&&!Jt()&&rt().warn("[Luna Form]",...e)},info:(...e)=>{Kt()&&!Jt()&&rt().info("[Luna Form]",...e)}},Kt=()=>typeof rt()<"u",Jt=()=>!0,rt=()=>globalThis.console;function sr(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===M&&n.push(i),i.action===Jn&&r.push(i),i.action===Qn&&o.push(i);t({sources:r,states:o,values:n})}function cr(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(tr(i)){let a=re(i.url,e),l=i.body?re(i.body,e):i.body;n(o,{...i,url:a,body:l})}}}var Be={eq:ma,gt:ya,gte:ba,in:pa,lt:xa,lte:ha,neq:fa,nin:ga},sa=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,ur=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function ca(e){return typeof e=="string"&&sa.test(e)}function ua(e){return typeof e=="string"&&ur.test(e)}function da(e){let t=e.match(ur);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 oe(e){return ca(e)?new Date(e).getTime():ua(e)?da(e):Number(e)}function ma(e,t){return e===t}function fa(e,t){return e!==t}function pa(e,t){return Array.isArray(t)&&t.includes(String(e))}function ga(e,t){return Array.isArray(t)&&!t.includes(String(e))}function ya(e,t){return oe(e)>oe(t)}function ba(e,t){return oe(e)>=oe(t)}function xa(e,t){return oe(e)<oe(t)}function ha(e,t){return oe(e)<=oe(t)}function dr(e=null,t=[],n){for(let r of t){let{target:o,state:i,when:a}=r,l=Array.isArray(o)?o:[o];if(!e){n(l);continue}let s=Ta(e,a);n(l,s?i:void 0)}}function Ta(e,t){return t===void 0?!0:b(t)?ot(e,M)===t:Xt(t)?!!ot(e,M)===t:Array.isArray(t)?t.includes(String(ot(e,M))):Sa(e,t)}function Sa(e=null,t){let n=ot(e,t.field??M),{operator:r="eq",value:o}=t,i=Be[r];return i?i(n,o):!1}function ot(e,t){return d(e)?P(e,t):e}function mr(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,a=>r.onlyIfTargetEmpty&&!E(a)?a:e?re(i,e):void 0)}var it=e=>T(In)(e),fr=e=>T(En)(e),at=e=>T(Pn)(e),lt=e=>T(Vn)(e),pr=e=>T(Dn)(e),st=e=>T(On)(e),ct=e=>T(Mn)(e),_=T(Rn),K=T(Fn),D=T(wn),J=T(Ln),Q=T(Nn),ie=T(Qe),ae=T(kn),Qt=T(An),gr=T(Oe,Yt,zn,Gn),yr=T(vn,Yt),ut=T(Cn,Bn);function dt(e){return Q(e)||D(e)}function br(e){return e.type===Ht}function le(e){return e.type===Le}function mt(e){return e.type!==Le&&e.type!==Ht}function ze(e){return ae(e)||Q(e)||J(e)}function xr(e){return ie(e)||Qt(e)}function v(e){return e!=null&&e!==""}function T(...e){return t=>{let n=b(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function hr(e,t={}){if(ae(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&d(n))return[n]}}function Tr(e){return Q(e)||D(e)?!0:e.advanced?.horizontal??!1}function Sr(e){return D(e)?e.advanced?.reverse!==!1:!1}function Rr(e,t){let n=e.readonly??!1;return t||n}function vr(e){if(Q(e)||J(e)||ae(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||d(t)&&!(Se in t))return t}}var N=require("date-fns"),Ra=/^\d+$/,ft=new Date(2e3,0,1),va=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[];function jt(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function en(){return Array.from({length:7},(e,t)=>({value:t.toString(),label:new Date(2e3,0,2+t).toLocaleString("default",{weekday:"long"})}))}function Ar(e,t){return t>=e?Array.from({length:t-e+1},(n,r)=>{let o=e+r;return{value:o.toString(),label:o.toString()}}):[]}function tn(){return new Date().getFullYear()}function Ca(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function Fa(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return er[n]??"Other"}function Aa(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function Cr(e,t){let n=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"longOffset"}).formatToParts(t),r=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"long"}).formatToParts(t),i=(n.find(l=>l.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),a=Aa(r,e);return{offset:i,longName:a}}function Fr(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function Nr(){let e=new Date,t=Ca(),n=new Map,r=Fr(t),{offset:o,longName:i}=Cr(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let s of va()){if(s===t)continue;let c=Fr(s),{offset:u,longName:m}=Cr(s,e),y={value:s,label:`${c} - ${m} (${u})`},p=Fa(s);if(p==="Other")continue;let C=n.get(p);C?C.push(y):n.set(p,[y])}for(let s of n.values())s.sort((c,u)=>c.label.localeCompare(u.label));let l=Array.from(n.entries()).sort(([s],[c])=>s.localeCompare(c)).map(([s,c])=>({label:s,items:c}));return[{label:"Suggested",items:[a]},...l]}function nn(e,t){if(typeof e=="number")return e;let n=t??tn(),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 Ra.test(r)?parseInt(r,10):n}function pt(e,t){if(!e)return"";try{let n=(0,N.parse)(e,t,ft);return(0,N.isValid)(n)?(0,N.format)(n,"yyyy-MM-dd"):""}catch{return""}}function wr(e,t){if(!e)return"";try{let n=(0,N.parse)(e,t,ft);return(0,N.isValid)(n)?(0,N.format)(n,"HH:mm:ss"):""}catch{return""}}function kr(e,t="HH:mm"){if(!e)return"";try{let n=e.split(":").length===3?"HH:mm:ss":"HH:mm",r=(0,N.parse)(e,n,ft);return(0,N.isValid)(r)?(0,N.format)(r,t):""}catch{return""}}function gt(e,t="MMMM d, yyyy"){if(!e)return"";try{let n=(0,N.parse)(e,"yyyy-MM-dd",ft);return(0,N.isValid)(n)?(0,N.format)(n,t):""}catch{return""}}function ye(e){return e.advanced?.format??"HH:mm"}function j(e){return e.advanced?.format??"MMMM d, yyyy"}var yt=tn();function Na(e){if(J(e))return wa(e)}function wa(e){if(st(e))return en();if(ct(e))return jt()}function ka(e){if(ae(e))return Ia(e)}function Ia(e){if(fr(e))return en();if(at(e))return jt();if(lt(e)){let t=e.advanced?.length?.min??yt,n=e.advanced?.length?.max??yt+5;return Ar(nn(t,yt),nn(n,yt))}if(pr(e))return Nr();if(it(e))return[{value:"true",label:"Yes"},{value:"false",label:"No"}]}function Ir(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return ie(e)?{...n,...Ea(e)}:ae(e)?{...n,...Er(e,ka)}:Qt(e)?{...n,...Da(e)}:J(e)?{...n,...Pa(e)}:n}function Ea(e){let t=or(e.type),n={...e,type:t};return{...La(e),...Pr(e),...Va(n),...gr(n)?Dr(n):{},type:t}}function Er(e,t){let n=t(e);return n?{options:n}:{}}function Pa(e){let t=Er(e,Na),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function Da(e){return{...Pr(e),...Dr(e)}}function Pr(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Va(e){return ut(e)?Oa(e):{}}function La(e){if(K(e)){let t=ye(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function Dr(e){return Vr(e,{min:Kn,max:Wn})}function Oa(e){return Vr(e,{min:tt,max:et})}function Vr(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 Lr(e,t){let n=vr(e);return n||hr(e,t)}function Ma(e,t){let n=d(t)&&e.name in t?t[e.name]:t,r=Wt(n,e.advanced?.entity);return K(e)&&v(r)?_a(e,r):_(e)&&v(r)?Ga(e,r):r}function _a(e,t){let n=ye(e);return b(t)?wr(t,n):t}function $a(e,t,n){return ze(e)&&Array.isArray(n)?{...t,[je]:n}:t}function Ba(e,t,n){if(e.required&&!v(n)&&ae(e)&&e.advanced?.preselected!==!1&&je in t){let r=t[je];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function za(e,t){return ze(e)&&Array.isArray(t)?rr(t,e.advanced?.options):t}function Or(e,t,n,r){let o=Ma(e,r),i=Array.isArray(n)?za(e,n):n,a=$a(e,t,i),l=Ba(e,a,o);return{commonPropsWithOptions:a,defaultValue:l}}function Mr(e,t){return D(e)?{checked:v(t)?t:!1}:J(e)?{value:Array.isArray(t)?t:[]}:_(e)&&b(t)&&v(t)?{value:gt(t,j(e))}:{value:t??""}}function Ga(e,t){let n=j(e);return b(t)?pt(t,n):t}function _r(e,t){let n=e??t;return n?{"data-format":n}:{}}var Ha=/^#\/definition\//;function xt(e=[],t){let n=bt(e,t);return Array.isArray(n)?n.filter(Ya).sort((r,o)=>$r(r)-$r(o)):[]}function bt(e,t,n=new Map,r=new WeakSet){if(!Ua(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=>bt(i,t,n,r));if(Se in e&&b(e[Se])){let i=e[Se].replace(Ha,""),a=P(t,i);return a!==null?bt(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=bt(a,t,n,r);return r.delete(e),n.set(e,o),o}function Br(e){return Object.entries(e??{})}function $r(e){return e.order??Number.MAX_VALUE}function Ua(e){return e!==void 0&&d(e)&&Object.keys(e).length>0}function Ya(e){return jn in e?!0:Array.isArray(e[Ut])?e[Ut].length>0:!0}function zr(e,t){let n={};for(let[r,o]of Br(t))n[`${e}-${r}`]=o;return n}function Xa(e){return zr(Zn,e)}function Za(e){return zr(qn,e)}function Gr(e,t){let n=Xa(e.advanced?.aria);return t&&t.length>0&&(n[Un]="true",n[Hn]=`${e.name}-error`),n}function Hr(e){return Za(e.advanced?.data)}var Ur={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Yr={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function Xr(e,t=2){return Ur[e&&e in Ur?e:t]}function Zr(e){if(e&&e in Yr)return Yr[e]}function qa(e,t){let n=e.advanced?.length?.min??1;if(t){let r=P(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function qr(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===Le}function Wr(e,t){let n=qa(e,t);return Array.from({length:n},(r,o)=>o)}function Kr(e){return e.label??e.name}var g=require("zod");function x(e,t){return e?t?t[e]??e:e:""}var Wa=[[D,Jr],[yr,Ka],[ut,ja],[Q,Ja],[it,Jr],[at,tl],[lt,el],[J,rn],[st,rn],[ct,rn]];function jr(e,t=[],n){let r=g.z.object(e);return t.length===0?r:il(r,t,n)}function eo(e){let t={},n=g.z.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function to(e,t){for(let[n,r]of Wa)if(n(e))return r(e,t);return Qa(e,t)}function Ka(e,t){let n=g.z.string().trim();if(e.required){let r=se(e,t),o=n.min(1,r).pipe(Qr(e,t));return g.z.preprocess(i=>E(i)?"":i,o)}return n.pipe(Qr(e,t)).or(g.z.literal("")).nullable()}function Jr(e,t){let n=g.z.preprocess(r=>{if(typeof r=="string"){if(r==="true")return!0;if(r==="false")return!1}return r},g.z.coerce.boolean());return e.required?(D(e)?n=n.refine(r=>r===!0,{message:se(e,t)}):n=n.refine(r=>typeof r=="boolean",{message:se(e,t)}),g.z.preprocess(r=>r===null?!1:r,n)):n.nullable()}function Ja(e,t){let n=g.z.coerce.string();return e.required?(n=n.min(1,se(e,t)),g.z.preprocess(r=>E(r)?"":r,n)):n.or(g.z.literal("")).nullable()}function Qa(e,t){let n=g.z.coerce.string().trim();return n=no(n,e,t),e.required?(n=ro(n,e,t),g.z.preprocess(r=>E(r)?"":r,n)):n.nullable()}function ja(e,t){let n=g.z.coerce.number().int();return n=no(n,e,t),e.required?(n=ro(n,e,t),g.z.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function el(e,t){return e.required?g.z.preprocess(nl,g.z.coerce.number({message:se(e,t)}).int()):g.z.coerce.number().int().nullable()}function tl(e,t){let n=se(e,t),r=g.z.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function nl(e){return e===null||e===""?void 0:e}function Qr(e,t){let n=e.validation?.email?x(e.validation?.email,t):void 0;return g.z.email(n)}function no(e,t,n){return e=rl(e,t,n),e=ol(e,t,n),e}function ro(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,se(t,n)):e}var rl=(e,t,n)=>oo(e,t,tt,n),ol=(e,t,n)=>oo(e,t,et,n);function oo(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?x(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function il(e,t=[],n){let r=ll(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:l}of r)if(!al(o,a,l)){let s=x(l.message,n);i.addIssue({code:"custom",message:s,path:[a]})}})}function al(e,t,n){let r=n.operator??"eq",o=Be[r];return o?o(e[t],e[n.field]):!1}function ll(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 io(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let l=a.operator??"eq",s=Be[l];if(s&&!s(e,n(a.field))&&a.message){let c=x(a.message,r);o.push(c)}}return o}function se(e,t){return e.validation?.required?x(e.validation?.required,t):void 0}function rn(e,t){let n=g.z.array(g.z.string());return e.required&&(n=n.min(1,se(e,t))),g.z.preprocess(r=>E(r)?[]:Array.isArray(r)?r.map(String):[String(r)],n)}function ao(e,t){if(!t||!cl(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||sl(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 sl(e){return e==="https"?"443":"80"}function cl(e){return/^(https?:)?\/\//.test(e)}function lo(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,nt);new URL(t,nt).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(nt,""):o}catch{return t||e}}function so(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=lo(t.url,n.url),o=ul(t,n),i=dl(t,n);return{...t,...n,url:r,body:o,headers:i}})}function ul(e,t){return d(t.body)&&d(e?.body)?{...e.body,...t.body}:t.body??e?.body}function dl(e,t){return d(t.headers)&&d(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function ht(e,t){return{...e,...t}}var ml={uppercase:e=>e.toUpperCase(),lowercase:e=>e.toLowerCase(),"remove-space":e=>e.replace(/\s+/g,""),"remove-accent":e=>e.normalize("NFD").replace(/[\u0300-\u036f]/g,"")};function Ge(e,t){return!t||!b(e)||E(e)?e:(Array.isArray(t)?t:[t]).reduce((r,o)=>{let i=ml[o];return i?i(r):r},e)}var co=require("react/jsx-runtime");function ee(e){return lr(e,(t,n,r)=>(0,co.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}var Tt=require("react"),G=require("react/jsx-runtime");function uo(e){let{fields:t=[]}=e.section,[n,r]=(0,Tt.useState)(!1),o=(0,Tt.useCallback)(()=>r(i=>!i),[]);return(0,G.jsxs)("fieldset",{"data-slot":"field-set","data-advanced":"true","data-expanded":n,"data-empty":t.length===0,className:"flex flex-col",id:e.section.id?.toString(),children:[(0,G.jsx)("legend",{children:(0,G.jsxs)("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-slate-600 dark:text-slate-400",onClick:o,type:"button",children:[(0,G.jsx)(Te,{expanded:n}),(0,G.jsx)("span",{children:ee(e.section.title)})]})}),(0,G.jsx)(Ve,{visible:n,children:(0,G.jsxs)("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-slate-300 pl-4 dark:border-slate-600","data-slot":"field-set-content",children:[e.section.description&&(0,G.jsx)("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:ee(e.section.description)}),e.group]})})]})}var ce=require("react/jsx-runtime");function mo(e){let t=(0,ce.jsxs)("div",{className:"flex flex-col",children:[e.title&&(0,ce.jsx)("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:ee(e.title)}),e.description&&(0,ce.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:ee(e.description)})]});return e.step?(0,ce.jsxs)("div",{className:"flex flex-row items-start gap-4",children:[(0,ce.jsx)("div",{className:"bg-primary text-primary-foreground flex h-6 w-6 shrink-0 items-center justify-center rounded-full",children:(0,ce.jsx)("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}var He=require("react/jsx-runtime");function St(e){return(0,He.jsxs)("fieldset",{className:"flex w-full min-w-0 flex-col data-[empty=false]:gap-6","data-empty":e.empty,"data-slot":"field-set",id:e.id,children:[(0,He.jsx)(mo,{description:e.description,step:e.step,title:e.title}),(0,He.jsx)("div",{className:"w-full min-w-0",children:e.children})]})}var fo=require("react/jsx-runtime");function ue(e){return(0,fo.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 Rt=require("react/jsx-runtime");function po(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=ht(e.style,{compact:e.section.advanced?.compact}),o=(0,Rt.jsx)(ue,{compact:r,children:e.children});return!e.section.title&&!e.section.description?o:e.section.advanced?.collapsible?(0,Rt.jsx)(uo,{section:e.section,group:o}):(0,Rt.jsx)(St,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),step:n,title:e.section.title,children:o})}var on=require("react/jsx-runtime");function go(){return(0,on.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,on.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}var To=require("jotai");var de=require("jotai"),an=require("jotai-family"),vt=require("fast-equals");function Ct(e,t){let{[t]:n,...r}=e;return r}function fl(e){return(0,an.atomFamily)(t=>(0,de.atom)(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];(0,vt.deepEqual)(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,Ct(i,t))}))}function pl(e){return(0,de.atom)(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function gl(e){return(0,de.atom)(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)l in i&&(delete i[l],a=!0);a&&n(e,i)})}function yl(e){return(0,de.atom)(null,(t,n,r)=>{let o=t(e);(0,vt.deepEqual)(o,r)||n(e,r)})}function yo(e,t={}){let{merge:n,validateTarget:r}=t;return(0,an.atomFamily)(o=>(0,de.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 m=u[o];(!m||!(0,vt.deepEqual)(m,s))&&(u[o]=s,a(e,{...c,[l]:u}))}else o in u&&(delete u[o],Object.keys(u).length===0?a(e,Ct(c,l)):a(e,{...c,[l]:u}))}))}function bo(e){return(0,de.atom)(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)l in i&&(delete i[l],a=!0);for(let l in i){let s={...i[l]},c=!1;for(let u of r)u in s&&(delete s[u],c=!0,a=!0);c&&(Object.keys(s).length===0?delete i[l]:i[l]=s)}a&&n(e,i)})}function Re(e={}){let t=(0,de.atom)(e);return{atom:t,clearAll:pl(t),clear:gl(t),bulkReport:yl(t),report:fl(t)}}var xo=Re(),Ft=xo.atom,ho=xo.report;function bl(e,t){return e.fields.every(n=>So(n,t))}function So(e,t){return t[e.name]?.hidden??e.hidden??!1}function xl(e,t){return le(e)?bl(e,t):So(e,t)}function At(e){let t=(0,To.useAtomValue)(Ft);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>xl(r,t))?null:e.children}var te=require("react/jsx-runtime");function Ro(e){let t=xt(e.sections,e.definition);return(0,te.jsx)("div",{className:"h-full w-full",children:(0,te.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,te.jsxs)(ue,{children:[t.map((n,r)=>(0,te.jsxs)(At,{fields:n.fields??[],children:[(0,te.jsx)(po,{advanced:e.advanced,section:n,step:r+1,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.advanced?.separator&&(0,te.jsx)(go,{})]},`key-${n.id}-${r}`)),e.control&&(0,te.jsx)(xn,{isPending:e.isPending,children:e.control})]})})})}var Co=require("react/jsx-runtime");function vo(e){return(0,Co.jsx)("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}var Fo=require("react"),ve=require("react/jsx-runtime");function Ce(e){let t={context:e.context,env:e.config?.env},[n,r]=(0,Fo.useState)(()=>d(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),o=()=>r(l=>!l),i=d(e.text)&&b(e.text.title)?ee(x(_e(e.text.title,t),e.translations)):void 0,a=ee(x(_e(b(e.text)?e.text:e.text?.message,t),e.translations));return a?(0,ve.jsxs)("div",{className:"flex flex-col gap-2",children:[i&&(0,ve.jsxs)("button",{className:"flex items-center gap-1 text-left text-xs font-medium text-slate-700 hover:text-slate-900 dark:text-slate-300 dark:hover:text-slate-100",onClick:o,type:"button",children:[i,(0,ve.jsx)(Te,{expanded:n})]}),n&&(0,ve.jsx)(vo,{children:a})]}):null}var Ao=require("tailwind-merge"),Nt=require("react/jsx-runtime");function No(e){let t=e.style?.showOptionalLabel??!0,n=Q(e.field)||D(e.field);return(0,Nt.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,Ao.twMerge)("flex w-fit items-center gap-2 text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,children:[e.children,t&&!e.field.required&&(0,Nt.jsx)("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:x("(Optional)",e.translations)})]})}var Ue=require("react/jsx-runtime");function wo(e){let t={context:e.context,env:e.config?.env},n=_e(e.field.label,t);return(0,Ue.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,Ue.jsx)(No,{field:e.field,style:e.config?.style,translations:e.translations,children:x(n,e.translations)}),e.horizontal===!0&&(0,Ue.jsx)(Ce,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}var be=require("react/jsx-runtime");function ko(e){return(0,be.jsxs)(be.Fragment,{children:[e.field.name&&e.field.label&&(0,be.jsx)(wo,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&(0,be.jsx)(Ce,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}function wt(e,t){return e?t(e):null}var ke=require("react");var ln=Re(),Io=ln.clear,Eo=ln.bulkReport,kt=ln.report;var It=Re(),Et=It.atom,Po=It.clearAll,Do=It.clear,Fe=It.report;var H=require("react");var ne=require("react");function Vo(e,t,n,r){let{name:o}=e,i=(0,ne.useMemo)(()=>to(e,r),[e,r]),a=(0,ne.useContext)(Je),l=(0,ne.useEffectEvent)(c=>{c&&t(c,i,e)}),s=(0,ne.useEffectEvent)(c=>{c&&n(c,{keepValue:a})});return(0,ne.useEffect)(()=>(l(o),()=>{s(o)}),[o]),i}var Ne=require("jotai");var Ae=require("react");function Lo(){let e=(0,Ae.useRef)(null);return(0,Ae.useEffect)(()=>()=>{e.current&&clearTimeout(e.current)},[]),(0,Ae.useCallback)((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}function Oo(e,t){let n=(0,Ne.useStore)(),r=e.field.advanced?.entity,o=Lo(),[,i]=(0,H.useTransition)(),{setValue:a,shouldSkipOnChange:l,value:s,setSource:c}=t,u=(0,H.useRef)(s);u.current=s;let m=(0,H.useRef)(e.translations);m.current=e.translations;let y=dt(e.field),p=(0,Ne.useSetAtom)(Et),C=(0,Ne.useSetAtom)(Ft),S=(0,Ne.useSetAtom)(kt(e.field.name)),w=Vo(e.field,e.onMount,e.onUnmount,e.translations),F=x(e.commonProps.placeholder,e.translations),I={...e.commonProps,placeholder:F};function V(A){let[,R]=e.getSchema(),X=R.find(O=>O.name===A);if(X&&ie(X)){let O=X.advanced?.transform;if(O)return O}}let L=(0,H.useRef)(null);L.current=A=>{let R=ie(e.field)?Ge(A,e.field.advanced?.transform):A;a(R),e.onValueChange&&e.onValueChange({name:e.field.name,type:e.field.type,value:R})};let $=(0,H.useRef)(null);$.current=A=>{let R=e.field.event?.change;R&&sr(R,({sources:X,states:O,values:Z})=>{i(()=>{cr(A,X,(h,ge)=>c(h,ge)),dr(A,O,(h,ge)=>{C(B=>ge?h.reduce((q,W)=>({...q,[W]:ge}),B):h.reduce((q,W)=>Ct(q,W),B)),ge?.hidden===!0&&p(B=>{let q=!1,W={...B};for(let he of Object.keys(B))h.some(De=>he===De||he.startsWith(`${De}.`))&&(delete W[he],q=!0);return q?W:B})}),mr(A,Z,(h,ge)=>{p(B=>{let q=B[h],W=ge(q),he=V(h),De=he?Ge(W,he):W;return De===q?B:{...B,[h]:De}})})})})};let k=(0,H.useCallback)(A=>{let X=w.safeParse(A).error?.issues.map(h=>h.message)??[],O=e.field.validation?.custom,Z=O?io(A,O,h=>n.get(Fe(h)),m.current):[];S([...X,...Z])},[e.field.validation?.custom,w,S,n]),Pe=(0,H.useCallback)(A=>{if(!y){let R=A.target.value;e.config.validation.blur&&k(R)}},[y,e.config.validation.blur,k]);return{applyChangeEventsRef:$,commonProps:I,entity:r,hasClickable:y,onBlur:Pe,onValueChangeRef:L,setTimeoutRef:o,shouldSkipOnChange:l,validated:k,valueRef:u}}var Mo=require("fast-equals");function we(e,t){if(!Array.isArray(t)&&e in t)return t[e];if(!e.includes("."))return;let n=e.split("."),r=t;for(let o of n){if(r==null)return;if(Array.isArray(r)){let i=Number(o);r=Number.isInteger(i)?r[i]:void 0}else if(d(r))r=r[o];else return}return r}var _o=require("jotai"),me=require("react");function $o(e,t){let{name:n}=e,r=(0,me.useRef)(!1),[o,i]=(0,_o.useAtom)(Fe(n)),a=(0,me.useEffectEvent)(s=>{let c=we(n,s);if(v(c)){let u=ie(e)?Ge(c,e.advanced?.transform):c;(0,Mo.deepEqual)(o,u)||(r.current=!0),i(u)}});(0,me.useEffect)(()=>{t&&a(t)},[t]);let l=(0,me.useCallback)(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:l,value:o}}var sn=require("react/jsx-runtime");function Bo(e){let{useSource:t,useExtraProps:n,getValue:r,shouldSkipChange:o,dispatchChange:i,buildInitialSelected:a,isInitialReady:l}=e.strategies,{setValue:s,shouldSkipOnChange:c,value:u}=$o(e.field,e.value),{data:m,setSource:y}=t(e.field,e.config,u),{applyChangeEventsRef:p,commonProps:C,entity:S,hasClickable:w,onBlur:F,onValueChangeRef:I,setTimeoutRef:V,validated:L,valueRef:$}=Oo(e,{setValue:s,shouldSkipOnChange:c,value:u,setSource:y}),k=n?.(e.field),Pe=(0,ke.useRef)(!1),{commonPropsWithOptions:A,defaultValue:R}=Or(e.field,C,m,u),X=Mr(e.field,R);(0,ke.useEffect)(()=>{if(Pe.current||!e.value)return;if(!e.field.event?.change){Pe.current=!0;return}if(!v(R)||!l(e.field,R,m))return;Pe.current=!0;let Z=a(R,m,S);p.current?.(Z)},[p,a,m,R,S,l,e.field,e.value]);let O=(0,ke.useCallback)(Z=>{let h=r(Z,e.field);o({shouldSkipOnChange:c,hasClickable:w,inputValue:h,valueRef:$})||(I.current?.(h),e.config.validation.change&&L(h),e.field.event?.change&&i({applyChangeEventsRef:p,data:m,entity:S,inputValue:h,setTimeoutRef:V}))},[p,m,i,S,r,w,I,e.config.validation.change,e.field,V,o,c,L,$]);return wt(e.config.inputs[e.field.type],Z=>(0,sn.jsx)(ko,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:(0,sn.jsx)(Z,{...A,...e.ariaAttributes,...e.dataAttributes,...k,...X,onBlur:F,onChange:O})}))}var zo=require("react/jsx-runtime");function Ie(e){return function(n){return(0,zo.jsx)(Bo,{...n,strategies:e})}}function Go(e){let t=_(e)?j(e):null,n=K(e)?ye(e):null;return{dateFormat:t,timeFormat:n}}var Ho=require("jotai");var hl=e=>{let t=so(e);if(t)return t},Tl=e=>e.trim()!=="",Uo=(0,Ho.atom)({}),Pt=yo(Uo,{merge:hl,validateTarget:Tl}),Yo=bo(Uo);var Xo=require("jotai");function Dt(e){return{data:null,setSource:(0,Xo.useSetAtom)(Pt(e.name))}}var Zo=Ie({useSource:Dt,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=Go(e);return _r(t,n)},getValue:(e,t)=>{let n=e.target.value,r=K(t)?ye(t):null;if(r!==null)return kr(n,r);let o=_(t)?j(t):null;return o!==null&>(n,o)||n},shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>v(t)});var Ko=require("jotai");var qo=na(require("swr"),1);function Wo(e=null,t,n=!1){let{data:r,error:o}=(0,qo.default)(Sl(e,t,n),t.fetcher.provider);if(o&&$e.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return nr(r,e.namespace)}return null}function Sl(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!Me(e.url)){if(ao(e.url,t.fetcher.remotePatterns))return e;$e.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function Jo(e,t,n){let r=Lr(e,n),[o,i]=(0,Ko.useAtom)(Pt(e.name));return[Wo(o??r,t,e.disabled),i]}function Rl(e,t,n){let[r,o]=Jo(e,t,n);return{data:r,setSource:o}}var Qo=Ie({useSource:Rl,getValue:e=>e.target.value,shouldSkipChange:({shouldSkipOnChange:e,hasClickable:t})=>!t&&e(),dispatchChange:({applyChangeEventsRef:e,data:t,entity:n,inputValue:r})=>{e.current?.(qt(r,t,n))},buildInitialSelected:(e,t,n)=>qt(String(e),t,n),isInitialReady:(e,t,n)=>(!ze(e)||!!n&&n.length>0)&&v(t)});var jo=Ie({useSource:Dt,getValue:e=>e.target.value,shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>v(t)});var Vt=require("react/jsx-runtime");function ei(e){return _(e.field)||K(e.field)?(0,Vt.jsx)(Zo,{...e}):xr(e.field)?(0,Vt.jsx)(jo,{...e}):(0,Vt.jsx)(Qo,{...e})}var cn=require("react/jsx-runtime");function ti(e){return!e.errors||e.errors.length===0?null:(0,cn.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,cn.jsx)("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var ni=require("tailwind-merge"),ri=require("react/jsx-runtime");function Lt(e){let t=e.errors&&e.errors.length>0;return(0,ri.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Yn]:"true"},...e.disabled&&{[Xn]:"true"},"data-orientation":e.orientation,className:(0,ni.twMerge)("group flex w-full flex-col items-center data-[invalid=true]:text-red-600 data-[invalid=true]:dark:text-red-500","data-[clickable=true]:items-start",e.isCheckbox&&(e.isReversed?"flex-row-reverse!":"flex-row!"),"data-[clickable=true]:has-[>[data-slot=field-content]]:[&>:first-child]:mt-px",e.className),children:e.children})}var oi=require("tailwind-merge"),ai=require("react/jsx-runtime");function ii(e){return(0,ai.jsx)(Lt,{...e,orientation:"vertical",className:(0,oi.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var li=require("tailwind-merge"),ci=require("react/jsx-runtime");function si(e){return(0,ci.jsx)(Lt,{...e,orientation:"horizontal",className:(0,li.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 un=require("react/jsx-runtime");function ui(e){let t=dt(e.field),n=D(e.field),r=Sr(e.field);return e.horizontal?(0,un.jsx)(si,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):(0,un.jsx)(ii,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function di(e){if(!e.field.type)return null;let t=Ir(e.field,e.disabled),n=Hr(e.field),r=Gr(e.field,e.errors),o={...e.field,disabled:t.disabled};return e.children({ariaAttributes:r,commonProps:t,dataAttributes:n,field:o,horizontal:e.horizontal})}var mi=require("tailwind-merge"),Ee=require("react/jsx-runtime");function fi(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=ht(e.style,{horizontal:Tr(e.field)}),o=Rr(e.field,e.disabled);return(0,Ee.jsxs)("div",{className:(0,mi.twMerge)("flex flex-col gap-3",Zr(t)),children:[(0,Ee.jsx)(ui,{disabled:o,errors:n,field:e.field,horizontal:r,children:(0,Ee.jsx)(di,{disabled:o,errors:n,field:e.field,horizontal:r,children:e.children})}),(0,Ee.jsx)(ti,{errors:n,name:e.field.name})]})}var pi=require("jotai"),xi=require("react/jsx-runtime");function gi(e){return(t,n)=>o=>{let i=(0,pi.useAtomValue)(e(o.field.name)),a=n(i,o);return a===null?null:(0,xi.jsx)(t,{...o,...a})}}var vl=gi(kt);function yi(e){return vl(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var Cl=gi(ho);function bi(e){return Cl(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var hi=bi(yi(fi));var Ot=require("tailwind-merge"),Ti=require("react"),f=require("react/jsx-runtime");function Si(e){let t=e.isMultiField||e.collapsed!=null,[n,r]=(0,Ti.useState)(t?!e.collapsed:!0);function o(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function i(){r(c=>!c)}let a=e.canRemove&&e.onRemove!=null&&(0,f.jsx)("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:(0,Ot.twMerge)("flex size-6 items-center justify-center rounded text-xl leading-none text-slate-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500 dark:hover:text-red-400"),onClick:o,type:"button",children:(0,f.jsx)("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),l=(0,f.jsxs)("div",{className:"flex min-w-0 flex-col font-medium text-slate-700 dark:text-slate-400",children:[(0,f.jsx)("span",{className:"text-base",children:e.previewLabel??(0,f.jsxs)(f.Fragment,{children:[e.label," ",e.index+1]})}),!n&&e.previewTags&&(0,f.jsx)("div",{className:"flex items-center gap-2 overflow-hidden text-xs font-normal text-ellipsis whitespace-nowrap text-slate-500 dark:text-slate-500",children:e.previewTags})]}),s=(0,f.jsxs)("div",{className:(0,Ot.twMerge)("flex items-center justify-between gap-2",e.isMultiField&&n&&"mb-3"),children:[t?(0,f.jsxs)("div",{className:"flex min-w-0 grow items-center gap-2",children:[(0,f.jsxs)("button",{"aria-expanded":n,"aria-label":`${n?"Collapse":"Expand"} ${e.label} ${e.index+1}`,className:(0,Ot.twMerge)("group flex grow items-center gap-2 rounded p-1 text-left text-slate-400","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500"),onClick:i,type:"button",children:[(0,f.jsx)(Te,{expanded:n}),l]}),!n&&e.previewBadge&&(0,f.jsx)("div",{className:"ml-auto shrink-0",children:e.previewBadge})]}):l,a]});return e.isMultiField?(0,f.jsxs)("div",{"data-slot":"list-item-card",className:"box-border w-full min-w-0 rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[s,(0,f.jsx)(Ve,{visible:n,children:(0,f.jsx)(ue,{children:e.children})})]}):t?(0,f.jsxs)("div",{className:"box-border flex w-full min-w-0 flex-col gap-2",children:[s,(0,f.jsx)(Ve,{visible:n,children:(0,f.jsx)(ue,{children:e.children})})]}):(0,f.jsxs)("div",{className:"box-border flex w-full min-w-0 items-start gap-2",children:[(0,f.jsx)("div",{className:"flex min-w-0 grow flex-col",children:(0,f.jsx)(ue,{children:e.children})}),a&&(0,f.jsx)("div",{className:"shrink-0",children:a})]})}var vi=require("tailwind-merge");var Ri=require("jotai");function Mt(e,t){return(0,Ri.useAtomValue)(Fe(e))??t}var Ye=require("react/jsx-runtime");function Ci({className:e,initialValue:t,name:n,separator:r}){let o=Mt(n,t);if(E(o)||d(o)||Array.isArray(o))return null;let i=String(o);return(0,Ye.jsxs)("div",{className:"flex items-center gap-1.5 overflow-hidden",children:[r&&(0,Ye.jsx)("span",{"aria-hidden":"true",className:"text-xs text-slate-300 select-none dark:text-slate-600",children:"\xB7"}),(0,Ye.jsx)("span",{"aria-label":i,className:(0,vi.twMerge)("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:i,children:i})]})}var dn=require("react"),mn=require("react/jsx-runtime");function fn({className:e,label:t="Preview",name:n,previews:r,value:o}){let i=(0,dn.useMemo)(()=>Array.isArray(r)?r:[r],[r]),a=(0,dn.useMemo)(()=>o==null?{}:Object.fromEntries(i.map(l=>[l,we(`${n}.${l}`,o)])),[i,o,n]);return(0,mn.jsx)("div",{"aria-label":t,className:"flex items-center gap-1.5 overflow-hidden",children:i.map((l,s)=>(0,mn.jsx)(Ci,{className:e,initialValue:a[l],name:`${n}.${l}`,separator:s>0},l))})}var _t=require("react/jsx-runtime");function Fi({children:e,initialValue:t,name:n}){let r=Mt(n,t),i=E(r)||d(r)||Array.isArray(r)?"":String(r);return(0,_t.jsx)(_t.Fragment,{children:e(i)})}var Xe=require("react/jsx-runtime");function Ai({canRemove:e,children:t,field:n,index:r,isMultiField:o,itemKey:i,label:a,onRemove:l,previewBadge:s,previewLabel:c,previewTags:u,value:m}){let y=`${n.name}.${i}`;return(0,Xe.jsx)(Si,{canRemove:e,collapsed:n.advanced?.collapsed,index:r,isMultiField:o,label:a,onRemove:l,previewLabel:c?(0,Xe.jsx)(Fi,{initialValue:m?we(`${y}.${c}`,m):void 0,name:`${y}.${c}`,children:p=>p||`${a} ${r+1}`}):void 0,previewBadge:s?(0,Xe.jsx)(fn,{className:"bg-primary text-primary-foreground rounded-md px-1.5 py-0.5 leading-none font-bold uppercase",name:y,previews:s,value:m}):void 0,previewTags:u?(0,Xe.jsx)(fn,{name:y,previews:u,value:m}):void 0,children:t})}var ki=require("tailwind-merge");var Ni=require("jotai"),U=require("react");function wi(e,t){let n=e.advanced?.length?.min??1,r=e.advanced?.length?.max??1/0,[o,i]=(0,U.useState)(()=>Wr(e,t)),a=(0,U.useRef)(o.length),l=(0,U.useRef)(o);(0,U.useLayoutEffect)(()=>{l.current=o});let s=(0,Ni.useSetAtom)(Et),c=(0,U.useCallback)(()=>{i(p=>{if(p.length>=r)return p;let C=a.current++;return[...p,C]})},[r]),u=(0,U.useCallback)(p=>{if(l.current.length<=n)return;let C=l.current[p];i(S=>S.length<=n?S:S.filter((w,F)=>F!==p)),s(S=>{let w={...S},F=`${e.name}.`,I=[];for(let V of e.fields)if(le(V))for(let L of V.fields)I.push(L.name);else I.push(V.name);for(let V of I)delete w[`${F}${C}.${V}`];return w})},[e.name,e.fields,n,s]),m=o.length<r,y=o.length>n;return[o,c,u,m,y,r]}var fe=require("react/jsx-runtime"),Fl="flex h-9 w-full items-center gap-2 rounded-md border border-dashed border-slate-200 px-4 text-sm font-medium text-slate-500 transition-none hover:border-slate-300 hover:text-slate-800 focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:ring-offset-2 focus-visible:outline-none dark:border-slate-800 dark:text-slate-400 dark:hover:border-slate-700 dark:hover:text-slate-200";function Ii(e){let{field:t,value:n,children:r}=e,[o,i,a,l,s,c]=wi(t,n),u=Kr(t),m=t.advanced?.action??"Add item",y=c!==1/0,p=qr(t),{label:C,tags:S,badge:w}=t.advanced?.preview??{};return(0,fe.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[o.map((F,I)=>(0,fe.jsx)(Ai,{canRemove:s,field:t,index:I,isMultiField:p,itemKey:F,label:u,onRemove:a,previewBadge:w,previewLabel:C,previewTags:S,value:n,children:r(F)},F)),(0,fe.jsxs)("button",{"aria-disabled":!l,"aria-label":y?`${m}, ${o.length} of ${c}`:m,className:(0,ki.twMerge)(Fl,y?"justify-between":"justify-center",!l&&"cursor-not-allowed opacity-50 hover:border-slate-200 hover:text-slate-500 dark:hover:border-slate-800 dark:hover:text-slate-400"),disabled:!l,onClick:i,type:"button",children:[(0,fe.jsxs)("span",{className:"flex items-center gap-2",children:[(0,fe.jsx)("span",{"aria-hidden":"true",className:"text-base leading-none",children:"+"}),m]}),y&&(0,fe.jsxs)("span",{"aria-hidden":"true",className:"text-slate-400 tabular-nums dark:text-slate-500",children:[o.length," / ",c]})]})]})}var Pi=require("react/jsx-runtime");function Ei(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return(0,Pi.jsx)(St,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}var $t=require("react/jsx-runtime");function Di({children:e,field:t,value:n}){return(0,$t.jsx)(At,{container:t,fields:t.fields,children:(0,$t.jsx)(Ei,{field:t,children:(0,$t.jsx)(Ii,{field:t,value:n,children:e})})})}var Vi=require("tailwind-merge");var Ze=require("react/jsx-runtime");function Li(e){let t=Xr(e.column?.advanced?.cols);return(0,Ze.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[(0,Ze.jsx)("div",{className:(0,Vi.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&(0,Ze.jsx)(Ce,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}var _i=require("react");var Mi=require("react/jsx-runtime");function Oi(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>mt(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:le(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return(0,Mi.jsx)(qe,{children:e.children,components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:t,style:e.style,translations:e.translations,value:e.value})}var pe=require("react/jsx-runtime");function qe(e){let{field:t,list:n}=e.components;return xt(e.fields).map((r,o)=>(0,pe.jsxs)(_i.Fragment,{children:[le(r)&&(0,pe.jsx)(Li,{column:r,config:e.config,context:e.context,translations:e.translations,children:(0,pe.jsx)(qe,{...e,fields:r.fields})}),mt(r)&&(0,pe.jsx)(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),br(r)&&(0,pe.jsx)(n,{field:r,value:e.value,children:i=>(0,pe.jsx)(Oi,{children:e.children,components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:r,index:i,style:e.style,translations:e.translations,value:e.value})})]},o))}var Bi=require("react/jsx-runtime");function $i(e){return n=>(0,Bi.jsx)(qe,{...n,components:e})}var zi=$i({field:hi,list:Di});var gn=require("jotai");var We=require("react");function Hi(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},l=(0,gn.useSetAtom)(Eo),s=(0,gn.useSetAtom)(Po),c={data:null,error:null,success:!1},[u,m,y]=(0,We.useActionState)(async(p,C)=>{let[S,w]=e(),F=jr(S,w,a);if(i===!1)return t?await t(C,F):p;let I=ir(C),V=Nl(I,w),L=F.safeParse(V);if(!L.success){let k=eo(L.error);return(0,We.startTransition)(()=>{l(k)}),pn(I,{description:x("Please correct the errors and try again.",a),details:[],title:x("There were validation errors submitting the form.",a)})}let $=ar(L.data);if(t)try{let k=await t($,F);return k.success?(r?.(k.data),o||(0,We.startTransition)(()=>{s()}),Gi($,o)):pn($,k.error)}catch(k){return $e.error("Error executing form action:",k),pn($,{title:x("An unexpected error occurred submitting the form.",a),details:Al(k,a)})}return Gi(L.data,o)},c);return[m,u,y]}function Al(e,t){return e instanceof Error?[e.message]:[x("Unknown error",t)]}function Gi(e,t=!1){return{data:t?e:null,error:null,success:!0}}function pn(e,t){return{data:e,error:t,success:!1}}function Nl(e,t){let n={...e};for(let r of t)if(_(r)&&typeof n[r.name]=="string"&&n[r.name]){let o=pt(n[r.name],j(r));o&&(n[r.name]=o)}return n}var xe=require("react");var Ui=require("react"),Bt=require("jotai");function Yi(){let e=(0,Bt.useSetAtom)(Io),t=(0,Bt.useSetAtom)(Do),n=(0,Bt.useSetAtom)(Yo);return(0,Ui.useCallback)((r,o)=>{let i=Array.isArray(r)?r:[r];e(i),n(i),o?.keepValue||t(i)},[e,n,t])}function Xi(){let e=Yi(),t=(0,xe.useRef)({}),n=(0,xe.useRef)([]),r=(0,xe.useCallback)((a,l,s)=>{a in t.current||(t.current[a]=l,n.current.push(s))},[]),o=(0,xe.useCallback)((a,l)=>{t.current[a]&&(delete t.current[a],n.current=n.current.filter(s=>s.name!==a),e([a],{keepValue:l?.keepValue}))},[e]);return[(0,xe.useCallback)(()=>[t.current,n.current],[]),r,o]}var Y=require("react/jsx-runtime");function Zi(e){let t=e.translations?.[e.lang??""],[n,r,o]=Xi(),[i,a,l]=Hi(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,Y.jsxs)(Y.Fragment,{children:[s&&wt(e.config.alert,u=>(0,Y.jsx)("div",{className:"mb-4 w-full",children:(0,Y.jsx)(u,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),(0,Y.jsx)(Ro,{action:i,advanced:e.advanced,config:e.config,control:e.children,definition:e.definition,isPending:l,noValidate:!0,readOnly:e.readOnly,sections:e.sections,children:({disabled:u,fields:m})=>(0,Y.jsx)(zi,{config:e.config,context:e.context,disabled:u,fields:m,style:e.config.style,translations:t,value:c,children:y=>(0,Y.jsx)(ei,{...y,config:e.config,context:e.context,getSchema:n,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:c})})})]})}var qi=require("jotai"),yn=require("react/jsx-runtime");function Wi(e){return(0,yn.jsx)(qi.Provider,{children:(0,yn.jsx)(Zi,{...e})})}
|
package/dist/client/esm/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as ri}from"react/jsx-runtime";function $t(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return ri("div",{"data-slot":"field-control",className:"w-full",children:t})}import{jsx as zt}from"react/jsx-runtime";function ne(e){return zt("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:zt("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 ii}from"react";import{createContext as oi}from"react";var Ce=oi(!1);import{jsx as Gt}from"react/jsx-runtime";function de({children:e,visible:t}){return Gt(ii,{mode:t?"visible":"hidden",children:Gt(Ce,{value:!0,children:e})})}var Fe="input",Ht="input/date",Bt="input/email",Ut="input/number";var Yt="input/time";var Xt="textarea",Zt="radio",qt="checkbox",ut="list";var Wt="select",Kt="select/day",Jt="select/month",jt="select/timezone",Qt="select/year";var en="chips",tn="chips/day",nn="chips/month",me="column",rn="description",dt="fields",on="label",V="value",Ae="options",mt="email",an="number",ln="password",sn="tel",fe="text",cn="aria-errormessage",un="aria-invalid",dn="data-invalid",mn="data-readonly",fn="aria",pn="data",Ne="max",gn="maxLength",ke="min",yn="minLength",re="$ref";var xn="source",bn="state",Ie="http://luna.internal";var hn="type",Tn={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};function d(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function Ee(e){return e==null||e===""}function _(e){return x(e)||typeof e=="number"||ft(e)}function x(e){return typeof e=="string"}function Sn(e){return d(e)&&"url"in e}function ft(e){return typeof e=="boolean"}var ai=/^\d+$/;function gt(e,t=[],n=V){return Array.isArray(t)?t.find(r=>{let o=yt(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}:{value:e}}function yt(e,t=V){if(e!=null){if(Array.isArray(e)&&e.every(_)||_(e))return e;if(d(e)){let n=li(e,t);if(_(n))return n}}}function li(e,t){let n=F(e,t);if(_(n))return n}function Rn(e,t){if(Array.isArray(e))return e;let n=F(e,t);return Array.isArray(n)?n:null}function F(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 vn(e,t={description:rn,label:on,value:V}){return e.map(n=>{if(d(n)){let r=F(n,t.label),o=F(n,t.value);if(_(r)&&_(o)){let i=F(n,t.description);return{label:`${r}`,value:`${o}`,..._(i)&&{description:`${i}`}}}}return n})}function Cn(e=fe){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==Fe?n.trim().toLowerCase():fe}function Fn(e){let t={};for(let n of e.keys()){let r=e.getAll(n);t[n]=r.length>1?r:r[0]}return t}function An(e){let t={};for(let n of Object.keys(e)){let r=n.split(".");if(r.length===1){t[n]=e[n];continue}let o=t;for(let a=0;a<r.length-1;a++){let l=r[a],s=r[a+1],c=ai.test(s);l in o||(o[l]=c?[]:{}),o=o[l]}let i=r[r.length-1];o[i]=e[n]}return pt(t),t}function pt(e){for(let t of Object.keys(e)){let n=e[t];if(Array.isArray(n)){let r=n.filter(o=>o!==void 0);for(let o of r)d(o)&&pt(o);e[t]=r}else d(n)&&pt(n)}}var si=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function Y(e,t={}){if(x(e))return ci(e,t);if(Array.isArray(e))return e.map(n=>Y(n,t));if(d(e)){let n={};for(let r in e)n[r]=Y(e[r],t);return n}return e}function ge(e,t={}){return pe(e)?Y(e,t):e}function pe(e){return x(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>pe(t)):d(e)?Object.values(e).some(t=>pe(t)):!1}function ci(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,r)=>{let o=r.includes(".")?F(t,r):t[r];return _(o)?String(o):n})}function Nn(e,t){if(!x(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=si.exec(e))!==null;){let[a,l,s]=n,c=n.index;o=!0,c>r&&i.push(e.substring(r,c));let u=t?t(c,s,l):a;i.push(u),r=c+a.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var ye={error:(...e)=>{xt()&&!bt()&&we().error("[Luna Form]",...e)},warn:(...e)=>{xt()&&!bt()&&we().warn("[Luna Form]",...e)},info:(...e)=>{xt()&&!bt()&&we().info("[Luna Form]",...e)}},xt=()=>typeof we()<"u",bt=()=>!0,we=()=>globalThis.console;function kn(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===V&&n.push(i),i.action===xn&&r.push(i),i.action===bn&&o.push(i);t({sources:r,states:o,values:n})}function In(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(Sn(i)){let a=Y(i.url,e),l=i.body?Y(i.body,e):i.body;n(o,{...i,url:a,body:l})}}}var xe={eq:pi,gt:bi,gte:hi,in:yi,lt:Ti,lte:Si,neq:gi,nin:xi},ui=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,En=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function di(e){return typeof e=="string"&&ui.test(e)}function mi(e){return typeof e=="string"&&En.test(e)}function fi(e){let t=e.match(En);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 X(e){return di(e)?new Date(e).getTime():mi(e)?fi(e):Number(e)}function pi(e,t){return e===t}function gi(e,t){return e!==t}function yi(e,t){return Array.isArray(t)&&t.includes(String(e))}function xi(e,t){return Array.isArray(t)&&!t.includes(String(e))}function bi(e,t){return X(e)>X(t)}function hi(e,t){return X(e)>=X(t)}function Ti(e,t){return X(e)<X(t)}function Si(e,t){return X(e)<=X(t)}function wn(e=null,t=[],n){for(let r of t){let{target:o,state:i,when:a}=r,l=Array.isArray(o)?o:[o];if(!e){n(l);continue}let s=Ri(e,a);n(l,s?i:void 0)}}function Ri(e,t){return t===void 0?!0:x(t)?Pe(e,V)===t:ft(t)?!!Pe(e,V)===t:Array.isArray(t)?t.includes(String(Pe(e,V))):vi(e,t)}function vi(e=null,t){let n=Pe(e,t.field??V),{operator:r="eq",value:o}=t,i=xe[r];return i?i(n,o):!1}function Pe(e,t){return d(e)?F(e,t):e}function Pn(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?Y(i,e):void 0)}var Dn=e=>h(Kt)(e),De=e=>h(Jt)(e),Ve=e=>h(Qt)(e),Vn=e=>h(jt)(e),Ln=e=>h(tn)(e),On=e=>h(nn)(e),L=h(Ht),z=h(Yt),I=h(qt),K=h(en),G=h(Zt),ht=h(Fe),Z=h(Wt),Tt=h(Xt),Mn=h(fe,mt,ln,sn),_n=h(Bt,mt),Le=h(Ut,an);function Oe(e){return G(e)||I(e)}function $n(e){return e.type===ut}function q(e){return e.type===me}function Me(e){return e.type!==me&&e.type!==ut}function be(e){return Z(e)||G(e)||K(e)}function zn(e){return ht(e)||Tt(e)}function T(e){return e!=null&&e!==""}function h(...e){return t=>{let n=x(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Gn(e,t={}){if(Z(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&d(n))return[n]}}function Hn(e){return G(e)||I(e)?!0:e.advanced?.horizontal??!1}function Bn(e){return I(e)?e.advanced?.reverse!==!1:!1}function Un(e,t){let n=e.readonly??!1;return t||n}function Yn(e){if(G(e)||K(e)||Z(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||d(t)&&!(re in t))return t}}import{isValid as _e,parse as $e,format as ze}from"date-fns";var Ci=/^\d+$/,Ge=new Date(2e3,0,1),Fi=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[];function St(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function Rt(){return Array.from({length:7},(e,t)=>({value:t.toString(),label:new Date(2e3,0,2+t).toLocaleString("default",{weekday:"long"})}))}function qn(e,t){return t>=e?Array.from({length:t-e+1},(n,r)=>{let o=e+r;return{value:o.toString(),label:o.toString()}}):[]}function vt(){return new Date().getFullYear()}function Ai(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function Ni(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return Tn[n]??"Other"}function ki(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function Xn(e,t){let n=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"longOffset"}).formatToParts(t),r=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"long"}).formatToParts(t),i=(n.find(l=>l.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),a=ki(r,e);return{offset:i,longName:a}}function Zn(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function Wn(){let e=new Date,t=Ai(),n=new Map,r=Zn(t),{offset:o,longName:i}=Xn(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let s of Fi()){if(s===t)continue;let c=Zn(s),{offset:u,longName:m}=Xn(s,e),y={value:s,label:`${c} - ${m} (${u})`},f=Ni(s);if(f==="Other")continue;let C=n.get(f);C?C.push(y):n.set(f,[y])}for(let s of n.values())s.sort((c,u)=>c.label.localeCompare(u.label));let l=Array.from(n.entries()).sort(([s],[c])=>s.localeCompare(c)).map(([s,c])=>({label:s,items:c}));return[{label:"Suggested",items:[a]},...l]}function Ct(e,t){if(typeof e=="number")return e;let n=t??vt(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,a]=o,l=parseInt(a,10);if(!isNaN(l))return i==="+"?n+l:n-l}return n}return Ci.test(r)?parseInt(r,10):n}function He(e,t){if(!e)return"";try{let n=$e(e,t,Ge);return _e(n)?ze(n,"yyyy-MM-dd"):""}catch{return""}}function Kn(e,t){if(!e)return"";try{let n=$e(e,t,Ge);return _e(n)?ze(n,"HH:mm:ss"):""}catch{return""}}function Jn(e,t="HH:mm"){if(!e)return"";try{let n=e.split(":").length===3?"HH:mm:ss":"HH:mm",r=$e(e,n,Ge);return _e(r)?ze(r,t):""}catch{return""}}function Be(e,t="MMMM d, yyyy"){if(!e)return"";try{let n=$e(e,"yyyy-MM-dd",Ge);return _e(n)?ze(n,t):""}catch{return""}}function J(e){return e.advanced?.format??"HH:mm"}function H(e){return e.advanced?.format??"MMMM d, yyyy"}var Ue=vt();function Ii(e){if(K(e))return Ei(e)}function Ei(e){if(Ln(e))return Rt();if(On(e))return St()}function wi(e){if(Z(e))return Pi(e)}function Pi(e){if(Dn(e))return Rt();if(De(e))return St();if(Ve(e)){let t=e.advanced?.length?.min??Ue,n=e.advanced?.length?.max??Ue+5;return qn(Ct(t,Ue),Ct(n,Ue))}if(Vn(e))return Wn()}function jn(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return ht(e)?{...n,...Di(e)}:Z(e)?{...n,...Qn(e,wi)}:Tt(e)?{...n,...Li(e)}:K(e)?{...n,...Vi(e)}:n}function Di(e){let t=Cn(e.type),n={...e,type:t};return{...Mi(e),...er(e),...Oi(n),...Mn(n)?tr(n):{},type:t}}function Qn(e,t){let n=t(e);return n?{options:n}:{}}function Vi(e){let t=Qn(e,Ii),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function Li(e){return{...er(e),...tr(e)}}function er(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Oi(e){return Le(e)?_i(e):{}}function Mi(e){if(z(e)){let t=J(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function tr(e){return nr(e,{min:yn,max:gn})}function _i(e){return nr(e,{min:ke,max:Ne})}function nr(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 rr(e,t){let n=Yn(e);return n||Gn(e,t)}function $i(e,t){let n=d(t)&&e.name in t?t[e.name]:t,r=yt(n,e.advanced?.entity);return z(e)&&T(r)?zi(e,r):L(e)&&T(r)?Ui(e,r):r}function zi(e,t){let n=J(e);return x(t)?Kn(t,n):t}function Gi(e,t,n){return be(e)&&Array.isArray(n)?{...t,[Ae]:n}:t}function Hi(e,t,n){if(e.required&&!T(n)&&Z(e)&&e.advanced?.preselected!==!1&&Ae in t){let r=t[Ae];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function Bi(e,t){return be(e)&&Array.isArray(t)?vn(t,e.advanced?.options):t}function or(e,t,n,r){let o=$i(e,r),i=Array.isArray(n)?Bi(e,n):n,a=Gi(e,t,i),l=Hi(e,a,o);return{commonPropsWithOptions:a,defaultValue:l}}function ir(e,t){return I(e)?{checked:T(t)?t:!1}:K(e)?{value:Array.isArray(t)?t:[]}:L(e)&&x(t)&&T(t)?{value:Be(t,H(e))}:{value:t??""}}function Ui(e,t){let n=H(e);return x(t)?He(t,n):t}function ar(e,t){let n=e??t;return n?{"data-format":n}:{}}var Yi=/^#\/definition\//;function Xe(e=[],t){let n=Ye(e,t);return Array.isArray(n)?n.filter(Zi).sort((r,o)=>lr(r)-lr(o)):[]}function Ye(e,t,n=new Map,r=new WeakSet){if(!Xi(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=>Ye(i,t,n,r));if(re in e&&x(e[re])){let i=e[re].replace(Yi,""),a=F(t,i);return a!==null?Ye(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=Ye(a,t,n,r);return r.delete(e),n.set(e,o),o}function sr(e){return Object.entries(e??{})}function lr(e){return e.order??Number.MAX_VALUE}function Xi(e){return e!==void 0&&d(e)&&Object.keys(e).length>0}function Zi(e){return hn in e?!0:Array.isArray(e[dt])?e[dt].length>0:!0}function cr(e,t){let n={};for(let[r,o]of sr(t))n[`${e}-${r}`]=o;return n}function qi(e){return cr(fn,e)}function Wi(e){return cr(pn,e)}function ur(e,t){let n=qi(e.advanced?.aria);return t&&t.length>0&&(n[un]="true",n[cn]=`${e.name}-error`),n}function dr(e){return Wi(e.advanced?.data)}var mr={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},fr={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function pr(e,t=2){return mr[e&&e in mr?e:t]}function gr(e){if(e&&e in fr)return fr[e]}function Ki(e,t){let n=e.advanced?.length?.min??1;if(t){let r=F(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function yr(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===me}function xr(e,t){let n=Ki(e,t);return Array.from({length:n},(r,o)=>o)}function br(e){return e.label??e.name}import{z as g}from"zod";function p(e,t){return e?t?t[e]??e:e:""}var Ji=[[Le,na],[_n,ji],[Ve,ra],[De,oa],[I,Qi],[G,ea]];function Tr(e,t=[],n){let r=g.object(e);return t.length===0?r:sa(r,t,n)}function Sr(e){let t={},n=g.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function Rr(e,t){for(let[n,r]of Ji)if(n(e))return r(e,t);return ta(e,t)}function ji(e,t){let n=g.string().trim();if(e.required){let r=oe(e,t),o=n.min(1,r).pipe(hr(e,t));return g.preprocess(i=>Ee(i)?"":i,o)}return n.pipe(hr(e,t)).or(g.literal("")).nullable()}function Qi(e,t){let n=g.coerce.boolean();return e.required?(n=n.refine(r=>r===!0,{message:oe(e,t)}),g.preprocess(r=>r===null?!1:r,n)):n.nullable()}function ea(e,t){let n=g.coerce.string();return e.required?(n=n.min(1,oe(e,t)),g.preprocess(r=>Ee(r)?"":r,n)):n.or(g.literal("")).nullable()}function ta(e,t){let n=g.coerce.string().trim();return n=vr(n,e,t),e.required?(n=Cr(n,e,t),g.preprocess(r=>Ee(r)?"":r,n)):n.nullable()}function na(e,t){let n=g.coerce.number().int();return n=vr(n,e,t),e.required?(n=Cr(n,e,t),g.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function ra(e,t){return e.required?g.preprocess(ia,g.coerce.number({message:oe(e,t)}).int()):g.coerce.number().int().nullable()}function oa(e,t){let n=oe(e,t),r=g.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function ia(e){return e===null||e===""?void 0:e}function hr(e,t){let n=e.validation?.email?p(e.validation?.email,t):void 0;return g.email(n)}function vr(e,t,n){return e=aa(e,t,n),e=la(e,t,n),e}function Cr(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,oe(t,n)):e}var aa=(e,t,n)=>Fr(e,t,ke,n),la=(e,t,n)=>Fr(e,t,Ne,n);function Fr(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?p(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function sa(e,t=[],n){let r=ua(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:l}of r)if(!ca(o,a,l)){let s=p(l.message,n);i.addIssue({code:"custom",message:s,path:[a]})}})}function ca(e,t,n){let r=n.operator??"eq",o=xe[r];return o?o(e[t],e[n.field]):!1}function ua(e){let t=[];for(let n of e){let r=n.validation?.custom;if(!r)continue;let o=Array.isArray(r)?r:[r];for(let i of o)t.push({name:n.name,rule:i})}return t}function Ar(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let l=a.operator??"eq",s=xe[l];if(s&&!s(e,n(a.field))&&a.message){let c=p(a.message,r);o.push(c)}}return o}function oe(e,t){return e.validation?.required?p(e.validation?.required,t):void 0}function Nr(e,t){if(!t||!ma(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||da(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 da(e){return e==="https"?"443":"80"}function ma(e){return/^(https?:)?\/\//.test(e)}function kr(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,Ie);new URL(t,Ie).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(Ie,""):o}catch{return t||e}}function Ir(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=kr(t.url,n.url),o=fa(t,n),i=pa(t,n);return{...t,...n,url:r,body:o,headers:i}})}function fa(e,t){return d(t.body)&&d(e?.body)?{...e.body,...t.body}:t.body??e?.body}function pa(e,t){return d(t.headers)&&d(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function Ze(e,t){return{...e,...t}}import{jsx as ga}from"react/jsx-runtime";function B(e){return Nn(e,(t,n,r)=>ga("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}import{useCallback as ya,useState as xa}from"react";import{jsx as he,jsxs as Ft}from"react/jsx-runtime";function Er(e){let{fields:t=[]}=e.section,[n,r]=xa(!1),o=ya(()=>r(i=>!i),[]);return Ft("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:[he("legend",{children:Ft("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-slate-600 dark:text-slate-400",onClick:o,type:"button",children:[he(ne,{expanded:n}),he("span",{children:B(e.section.title)})]})}),he(de,{visible:n,children:Ft("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-slate-300 pl-4 dark:border-slate-600","data-slot":"field-set-content",children:[e.section.description&&he("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:B(e.section.description)}),e.group]})})]})}import{jsx as qe,jsxs as wr}from"react/jsx-runtime";function Pr(e){let t=wr("div",{className:"flex flex-col",children:[e.title&&qe("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:B(e.title)}),e.description&&qe("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:B(e.description)})]});return e.step?wr("div",{className:"flex flex-row items-start gap-4",children:[qe("div",{className:"bg-primary text-primary-foreground flex h-6 w-6 shrink-0 items-center justify-center rounded-full",children:qe("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}import{jsx as ba,jsxs as ha}from"react/jsx-runtime";function We(e){return ha("fieldset",{className:"flex flex-col data-[empty=false]:gap-6","data-empty":e.empty,"data-slot":"field-set",id:e.id,children:[ba(Pr,{description:e.description,step:e.step,title:e.title}),e.children]})}import{jsx as Ta}from"react/jsx-runtime";function W(e){return Ta("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 At}from"react/jsx-runtime";function Dr(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=Ze(e.style,{compact:e.section.advanced?.compact}),o=At(W,{compact:r,children:e.children});return!e.section.title&&!e.section.description?o:e.section.advanced?.collapsible?At(Er,{section:e.section,group:o}):At(We,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),step:n,title:e.section.title,children:o})}import{jsx as Vr}from"react/jsx-runtime";function Lr(){return Vr("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:Vr("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}import{useAtomValue as Fa}from"jotai";import{atom as j}from"jotai";import{atomFamily as Or}from"jotai-family";import{deepEqual as Nt}from"fast-equals";function Ke(e,t){let{[t]:n,...r}=e;return r}function Sa(e){return Or(t=>j(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];Nt(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,Ke(i,t))}))}function Ra(e){return j(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function va(e){return j(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)l in i&&(delete i[l],a=!0);a&&n(e,i)})}function Ca(e){return j(null,(t,n,r)=>{let o=t(e);Nt(o,r)||n(e,r)})}function Mr(e,t={}){let{merge:n,validateTarget:r}=t;return Or(o=>j(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 m=u[o];(!m||!Nt(m,s))&&(u[o]=s,a(e,{...c,[l]:u}))}else o in u&&(delete u[o],Object.keys(u).length===0?a(e,Ke(c,l)):a(e,{...c,[l]:u}))}))}function _r(e){return j(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)l in i&&(delete i[l],a=!0);for(let l in i){let s={...i[l]},c=!1;for(let u of r)u in s&&(delete s[u],c=!0,a=!0);c&&(Object.keys(s).length===0?delete i[l]:i[l]=s)}a&&n(e,i)})}function ie(e={}){let t=j(e);return{atom:t,clearAll:Ra(t),clear:va(t),bulkReport:Ca(t),report:Sa(t)}}var $r=ie(),Je=$r.atom,zr=$r.report;function Aa(e,t){return e.fields.every(n=>Gr(n,t))}function Gr(e,t){return t[e.name]?.hidden??e.hidden??!1}function Na(e,t){return q(e)?Aa(e,t):Gr(e,t)}function je(e){let t=Fa(Je);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>Na(r,t))?null:e.children}import{jsx as Te,jsxs as Hr}from"react/jsx-runtime";function Br(e){let t=Xe(e.sections,e.definition);return Te("div",{className:"h-full w-full",children:Te("form",{noValidate:e.noValidate,action:e.action,children:Hr(W,{children:[t.map((n,r)=>Hr(je,{fields:n.fields??[],children:[Te(Dr,{advanced:e.advanced,section:n,step:r+1,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.advanced?.separator&&Te(Lr,{})]},`key-${n.id}-${r}`)),e.control&&Te($t,{isPending:e.isPending,children:e.control})]})})})}import{jsx as ka}from"react/jsx-runtime";function Ur(e){return ka("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}import{useState as Ia}from"react";import{jsx as Yr,jsxs as Xr}from"react/jsx-runtime";function ae(e){let t={context:e.context,env:e.config?.env},[n,r]=Ia(()=>d(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),o=()=>r(l=>!l),i=d(e.text)&&x(e.text.title)?B(p(ge(e.text.title,t),e.translations)):void 0,a=B(p(ge(x(e.text)?e.text:e.text?.message,t),e.translations));return a?Xr("div",{className:"flex flex-col gap-2",children:[i&&Xr("button",{className:"flex items-center gap-1 text-left text-xs font-medium text-slate-700 hover:text-slate-900 dark:text-slate-300 dark:hover:text-slate-100",onClick:o,type:"button",children:[i,Yr(ne,{expanded:n})]}),n&&Yr(Ur,{children:a})]}):null}import{twMerge as Ea}from"tailwind-merge";import{jsx as wa,jsxs as Pa}from"react/jsx-runtime";function Zr(e){let t=e.style?.showOptionalLabel??!0,n=G(e.field)||I(e.field);return Pa("label",{"data-slot":"field-label","data-normal":n,className:Ea("flex w-fit items-center gap-2 text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,children:[e.children,t&&!e.field.required&&wa("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:p("(Optional)",e.translations)})]})}import{jsx as qr,jsxs as Da}from"react/jsx-runtime";function Wr(e){let t={context:e.context,env:e.config?.env},n=ge(e.field.label,t);return Da("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[qr(Zr,{field:e.field,style:e.config?.style,translations:e.translations,children:p(n,e.translations)}),e.horizontal===!0&&qr(ae,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}import{Fragment as Va,jsx as Kr,jsxs as La}from"react/jsx-runtime";function Jr(e){return La(Va,{children:[e.field.name&&e.field.label&&Kr(Wr,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&Kr(ae,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}function Qe(e,t){return e?t(e):null}import{useCallback as Ka,useEffect as Ja,useRef as ja}from"react";var kt=ie(),jr=kt.clear,Qr=kt.bulkReport,et=kt.report;var tt=ie(),nt=tt.atom,eo=tt.clearAll,to=tt.clear,le=tt.report;import{useCallback as io,useRef as rt,useTransition as Ha}from"react";import{useContext as Oa,useEffect as Ma,useEffectEvent as no,useMemo as _a}from"react";function ro(e,t,n,r){let{name:o}=e,i=_a(()=>Rr(e,r),[e,r]),a=Oa(Ce),l=no(c=>{c&&t(c,i,e)}),s=no(c=>{c&&n(c,{keepValue:a})});return Ma(()=>(l(o),()=>{s(o)}),[o]),i}import{useSetAtom as It,useStore as Ba}from"jotai";import{useCallback as $a,useEffect as za,useRef as Ga}from"react";function oo(){let e=Ga(null);return za(()=>()=>{e.current&&clearTimeout(e.current)},[]),$a((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}function ao(e,t){let n=Ba(),r=e.field.advanced?.entity,o=oo(),[,i]=Ha(),{setValue:a,shouldSkipOnChange:l,value:s,setSource:c}=t,u=rt(s);u.current=s;let m=rt(e.translations);m.current=e.translations;let y=Oe(e.field),f=It(nt),C=It(Je),S=It(et(e.field.name)),A=ro(e.field,e.onMount,e.onUnmount,e.translations),E=p(e.commonProps.placeholder,e.translations),w={...e.commonProps,placeholder:E},v=rt(null);v.current=R=>{if(a(R),e.onValueChange){let M=e.dataAttributes??{};e.onValueChange({data:Object.keys(M).length>0?M:void 0,name:e.field.name,type:e.field.type,value:R})}};let P=rt(null);P.current=R=>{let M=e.field.event?.change;M&&kn(M,({sources:$,states:Q,values:ue})=>{i(()=>{In(R,$,(b,k)=>c(b,k)),wn(R,Q,(b,k)=>{C(U=>k?b.reduce((ee,te)=>({...ee,[te]:k}),U):b.reduce((ee,te)=>Ke(ee,te),U)),k?.hidden===!0&&f(U=>{let ee=!1,te={...U};for(let ct of Object.keys(U))b.some(_t=>ct===_t||ct.startsWith(`${_t}.`))&&(delete te[ct],ee=!0);return ee?te:U})}),Pn(R,ue,(b,k)=>{f(U=>({...U,[b]:k}))})})})};let D=io(R=>{let $=A.safeParse(R).error?.issues.map(b=>b.message)??[],Q=e.field.validation?.custom,ue=Q?Ar(R,Q,b=>n.get(le(b)),m.current):[];S([...$,...ue])},[e.field.validation?.custom,A,S,n]),N=io(R=>{if(!y){let M=R.target.value;e.config.validation.blur&&D(M)}},[y,e.config.validation.blur,D]);return{applyChangeEventsRef:P,commonProps:w,entity:r,hasClickable:y,onBlur:N,onValueChangeRef:v,setTimeoutRef:o,shouldSkipOnChange:l,validated:D,valueRef:u}}import{deepEqual as Ua}from"fast-equals";function ot(e,t){if(e in t)return t[e];if(!e.includes("."))return;let n=e.split("."),r=t;for(let o of n){if(r==null)return;if(Array.isArray(r)){let i=Number(o);r=Number.isInteger(i)?r[i]:void 0}else if(typeof r=="object")r=r[o];else return}return r}import{useAtom as Ya}from"jotai";import{useCallback as Xa,useEffect as Za,useRef as qa,useEffectEvent as Wa}from"react";function lo(e,t){let{name:n}=e,r=qa(!1),[o,i]=Ya(le(n)),a=Wa(s=>{let c=ot(n,s);T(c)&&(Ua(o,c)||(r.current=!0),i(c))});Za(()=>{t&&a(t)},[t]);let l=Xa(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:l,value:o}}import{jsx as so}from"react/jsx-runtime";function co(e){let{useSource:t,useExtraProps:n,getValue:r,shouldSkipChange:o,dispatchChange:i,buildInitialSelected:a,isInitialReady:l}=e.strategies,{setValue:s,shouldSkipOnChange:c,value:u}=lo(e.field,e.value),{data:m,setSource:y}=t(e.field,e.config,u),{applyChangeEventsRef:f,commonProps:C,entity:S,hasClickable:A,onBlur:E,onValueChangeRef:w,setTimeoutRef:v,validated:P,valueRef:D}=ao(e,{setValue:s,shouldSkipOnChange:c,value:u,setSource:y}),N=n?.(e.field),R=ja(!1),{commonPropsWithOptions:M,defaultValue:$}=or(e.field,C,m,u),Q=ir(e.field,$);Ja(()=>{if(R.current||!e.value)return;if(!e.field.event?.change){R.current=!0;return}if(!T($)||!l(e.field,$,m))return;R.current=!0;let b=a($,m,S);f.current?.(b)},[f,a,m,$,S,l,e.field,e.value]);let ue=Ka(b=>{let k=r(b,e.field);o({shouldSkipOnChange:c,hasClickable:A,inputValue:k,valueRef:D})||(w.current?.(k),e.config.validation.change&&P(k),e.field.event?.change&&i({applyChangeEventsRef:f,data:m,entity:S,inputValue:k,setTimeoutRef:v}))},[f,m,i,S,r,A,w,e.config.validation.change,e.field,v,o,c,P,D]);return Qe(e.config.inputs[e.field.type],b=>so(Jr,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:so(b,{...M,...e.ariaAttributes,...e.dataAttributes,...N,...Q,onBlur:E,onChange:ue})}))}import{jsx as Qa}from"react/jsx-runtime";function se(e){return function(n){return Qa(co,{...n,strategies:e})}}function uo(e){let t=L(e)?H(e):null,n=z(e)?J(e):null;return{dateFormat:t,timeFormat:n}}import{atom as el}from"jotai";var tl=e=>{let t=Ir(e);if(t)return t},nl=e=>e.trim()!=="",mo=el({}),it=Mr(mo,{merge:tl,validateTarget:nl}),fo=_r(mo);import{useSetAtom as rl}from"jotai";function at(e){return{data:null,setSource:rl(it(e.name))}}var po=se({useSource:at,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=uo(e);return ar(t,n)},getValue:(e,t)=>{let n=e.target.value,r=z(t)?J(t):null;if(r!==null)return Jn(n,r);let o=L(t)?H(t):null;return o!==null&&Be(n,o)||n},shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>T(t)});import{useAtom as al}from"jotai";import ol from"swr";function go(e=null,t,n=!1){let{data:r,error:o}=ol(il(e,t,n),t.fetcher.provider);if(o&&ye.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return Rn(r,e.namespace)}return null}function il(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!pe(e.url)){if(Nr(e.url,t.fetcher.remotePatterns))return e;ye.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function yo(e,t,n){let r=rr(e,n),[o,i]=al(it(e.name));return[go(o??r,t,e.disabled),i]}function ll(e,t,n){let[r,o]=yo(e,t,n);return{data:r,setSource:o}}var xo=se({useSource:ll,getValue:e=>e.target.value,shouldSkipChange:({shouldSkipOnChange:e,hasClickable:t})=>!t&&e(),dispatchChange:({applyChangeEventsRef:e,data:t,entity:n,inputValue:r})=>{e.current?.(gt(r,t,n))},buildInitialSelected:(e,t,n)=>gt(String(e),t,n),isInitialReady:(e,t,n)=>(!be(e)||!!n&&n.length>0)&&T(t)});var bo=se({useSource:at,getValue:e=>e.target.value,shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>T(t)});import{jsx as Et}from"react/jsx-runtime";function ho(e){return L(e.field)||z(e.field)?Et(po,{...e}):zn(e.field)?Et(bo,{...e}):Et(xo,{...e})}import{jsx as To}from"react/jsx-runtime";function So(e){return!e.errors||e.errors.length===0?null:To("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)=>To("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}import{twMerge as sl}from"tailwind-merge";import{jsx as cl}from"react/jsx-runtime";function lt(e){let t=e.errors&&e.errors.length>0;return cl("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[dn]:"true"},...e.disabled&&{[mn]:"true"},"data-orientation":e.orientation,className:sl("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 ul}from"tailwind-merge";import{jsx as dl}from"react/jsx-runtime";function Ro(e){return dl(lt,{...e,orientation:"vertical",className:ul("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as ml}from"tailwind-merge";import{jsx as fl}from"react/jsx-runtime";function vo(e){return fl(lt,{...e,orientation:"horizontal",className:ml("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 Co}from"react/jsx-runtime";function Fo(e){let t=Oe(e.field),n=I(e.field),r=Bn(e.field);return e.horizontal?Co(vo,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):Co(Ro,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function Ao(e){if(!e.field.type)return null;let t=jn(e.field,e.disabled),n=dr(e.field),r=ur(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 pl}from"tailwind-merge";import{jsx as wt,jsxs as gl}from"react/jsx-runtime";function No(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=Ze(e.style,{horizontal:Hn(e.field)}),o=Un(e.field,e.disabled);return gl("div",{className:pl("flex flex-col gap-3",gr(t)),children:[wt(Fo,{disabled:o,errors:n,field:e.field,horizontal:r,children:wt(Ao,{disabled:o,errors:n,field:e.field,horizontal:r,children:e.children})}),wt(So,{errors:n,name:e.field.name})]})}import{useAtomValue as yl}from"jotai";import{jsx as hl}from"react/jsx-runtime";function ko(e){return(t,n)=>o=>{let i=yl(e(o.field.name)),a=n(i,o);return a===null?null:hl(t,{...o,...a})}}var xl=ko(et);function Io(e){return xl(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var bl=ko(zr);function Eo(e){return bl(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var wo=Eo(Io(No));import{twMerge as Pt}from"tailwind-merge";import{useState as Tl}from"react";import{jsx as O,jsxs as ce}from"react/jsx-runtime";function Po(e){let[t,n]=Tl(e.collapsible?!e.collapsed:!0);function r(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function o(){n(s=>!s)}let i=e.canRemove&&e.onRemove!=null&&O("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:Pt("flex size-6 items-center justify-center rounded text-xl leading-none text-slate-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500 dark:hover:text-red-400"),onClick:r,type:"button",children:O("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),a=ce("span",{className:"text-sm font-medium text-slate-300 group-hover:underline dark:text-slate-400",children:[e.label," ",e.index+1,!t&&e.preview&&O("div",{className:"flex items-center gap-2 overflow-hidden text-ellipsis whitespace-nowrap text-slate-400 dark:text-slate-500",children:e.preview})]}),l=(e.isMultiField||e.collapsible)&&ce("div",{className:Pt("flex items-center justify-between gap-2",e.isMultiField&&"mb-3"),children:[e.collapsible?ce("button",{"aria-expanded":t,"aria-label":`${t?"Collapse":"Expand"} ${e.label} ${e.index+1}`,className:Pt("group flex grow items-center gap-2 rounded p-1 text-left text-slate-400","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500"),onClick:o,type:"button",children:[O(ne,{expanded:t}),a]}):a,i]});return e.isMultiField?ce("div",{"data-slot":"list-item-card",className:"rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[l,O(de,{visible:t,children:O(W,{children:e.children})})]}):e.collapsible?ce("div",{className:"flex flex-col gap-2",children:[l,O(de,{visible:t,children:O(W,{children:e.children})})]}):ce("div",{className:"flex items-start gap-2",children:[O("div",{className:"flex grow flex-col",children:O(W,{children:e.children})}),i&&O("div",{className:"shrink-0",children:i})]})}import{useAtomValue as Sl}from"jotai";import{Fragment as Rl,jsx as Do,jsxs as vl}from"react/jsx-runtime";function Vo({initialValue:e,name:t,separator:n}){let o=Sl(le(t))??e;return o==null||o===""||d(o)||Array.isArray(o)?null:vl(Rl,{children:[n&&Do("span",{className:"text-xs text-slate-300 dark:text-slate-600",children:"\xB7"}),Do("span",{className:"max-w-[150px] overflow-hidden text-xs text-ellipsis",children:`${o}`})]})}import{jsx as Lo}from"react/jsx-runtime";function Oo({name:e,previews:t,value:n}){return Lo("div",{className:"flex items-center gap-1.5 overflow-hidden text-ellipsis whitespace-nowrap",children:t.map((r,o)=>{let i=`${e}.${r}`;return Lo(Vo,{initialValue:n?ot(i,n):void 0,name:i,separator:o>0},r)})})}import{twMerge as Nl}from"tailwind-merge";import{useSetAtom as Cl}from"jotai";import{useCallback as Mo,useLayoutEffect as Fl,useRef as _o,useState as Al}from"react";function $o(e,t){let n=e.advanced?.length?.min??1,r=e.advanced?.length?.max??1/0,[o,i]=Al(()=>xr(e,t)),a=_o(o.length),l=_o(o);Fl(()=>{l.current=o});let s=Cl(nt),c=Mo(()=>{i(f=>{if(f.length>=r)return f;let C=a.current++;return[...f,C]})},[r]),u=Mo(f=>{if(l.current.length<=n)return;let C=l.current[f];i(S=>S.length<=n?S:S.filter((A,E)=>E!==f)),s(S=>{let A={...S},E=`${e.name}.`,w=[];for(let v of e.fields)if(q(v))for(let P of v.fields)w.push(P.name);else w.push(v.name);for(let v of w)delete A[`${E}${C}.${v}`];return A})},[e.name,e.fields,n,s]),m=o.length<r,y=o.length>n;return[o,c,u,m,y,r]}import{Fragment as kl,jsx as Dt,jsxs as st}from"react/jsx-runtime";function zo(e){let[t,n,r,o,i,a]=$o(e.field,e.value),l=br(e.field),s=e.field.advanced?.action??"Add item",c=a!==1/0,u=yr(e.field),m=e.field.advanced?.preview;return st(kl,{children:[t.map((y,f)=>Dt(Po,{canRemove:i,collapsible:e.field.advanced?.collapsible,collapsed:e.field.advanced?.collapsed,index:f,isMultiField:u,label:l,onRemove:r,preview:m&&Dt(Oo,{name:`${e.field.name}.${y}`,previews:m,value:e.value}),children:e.children(y)},y)),st("button",{"aria-disabled":!o,"aria-label":c?`${s}, ${t.length} of ${a}`:s,className:Nl("flex h-9 w-full items-center gap-2 rounded-md border border-dashed border-slate-200 px-4","text-sm font-medium text-slate-500","transition-colors duration-150","hover:border-slate-300 hover:text-slate-800","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:ring-offset-2 focus-visible:outline-none","dark:border-slate-800 dark:text-slate-400","dark:hover:border-slate-700 dark:hover:text-slate-200",c?"justify-between":"justify-center",!o&&"cursor-not-allowed opacity-50 hover:border-slate-200 hover:text-slate-500 dark:hover:border-slate-800 dark:hover:text-slate-400"),disabled:!o,onClick:n,type:"button",children:[st("span",{className:"flex items-center gap-2",children:[Dt("span",{"aria-hidden":"true",className:"text-base leading-none",children:"+"}),s]}),c&&st("span",{"aria-hidden":"true",className:"text-slate-400 tabular-nums dark:text-slate-500",children:[t.length," / ",a]})]})]})}import{jsx as Il}from"react/jsx-runtime";function Go(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return Il(We,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}import{jsx as Vt}from"react/jsx-runtime";function Ho({children:e,field:t,value:n}){return Vt(je,{container:t,fields:t.fields,children:Vt(Go,{field:t,children:Vt(zo,{field:t,value:n,children:e})})})}import{twMerge as El}from"tailwind-merge";import{jsx as Bo,jsxs as wl}from"react/jsx-runtime";function Uo(e){let t=pr(e.column?.advanced?.cols);return wl("div",{className:"flex w-full flex-col gap-4",children:[Bo("div",{className:El("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&Bo(ae,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}import{Fragment as Dl}from"react";import{jsx as Pl}from"react/jsx-runtime";function Yo(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>Me(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:q(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return Pl(Se,{children:e.children,components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:t,style:e.style,translations:e.translations,value:e.value})}import{jsx as Re,jsxs as Vl}from"react/jsx-runtime";function Se(e){let{field:t,list:n}=e.components;return Xe(e.fields).map((r,o)=>Vl(Dl,{children:[q(r)&&Re(Uo,{column:r,config:e.config,context:e.context,translations:e.translations,children:Re(Se,{...e,fields:r.fields})}),Me(r)&&Re(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),$n(r)&&Re(n,{field:r,value:e.value,children:i=>Re(Yo,{children:e.children,components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:r,index:i,style:e.style,translations:e.translations,value:e.value})})]},o))}import{jsx as Ll}from"react/jsx-runtime";function Xo(e){return n=>Ll(Se,{...n,components:e})}var Zo=Xo({field:wo,list:Ho});import{useSetAtom as qo}from"jotai";import{startTransition as Wo,useActionState as Ol}from"react";function Jo(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},l=qo(Qr),s=qo(eo),c={data:null,error:null,success:!1},[u,m,y]=Ol(async(f,C)=>{let[S,A]=e(),E=Tr(S,A,a);if(i===!1)return t?await t(C,E):f;let w=Fn(C),v=_l(w,A),P=E.safeParse(v);if(!P.success){let N=Sr(P.error);return Wo(()=>{l(N)}),Lt(w,{description:p("Please correct the errors and try again.",a),details:[],title:p("There were validation errors submitting the form.",a)})}let D=An(v);if(t)try{let N=await t(D,E);return N.success?(r?.(N.data),o||Wo(()=>{s()}),Ko(D,o)):Lt(D,N.error)}catch(N){return ye.error("Error executing form action:",N),Lt(D,{title:p("An unexpected error occurred submitting the form.",a),details:Ml(N,a)})}return Ko(P.data,o)},c);return[m,u,y]}function Ml(e,t){return e instanceof Error?[e.message]:[p("Unknown error",t)]}function Ko(e,t=!1){return{data:t?e:null,error:null,success:!0}}function Lt(e,t){return{data:e,error:t,success:!1}}function _l(e,t){let n={...e};for(let r of t)if(L(r)&&typeof n[r.name]=="string"&&n[r.name]){let o=He(n[r.name],H(r));o&&(n[r.name]=o)}return n}import{useCallback as Mt,useRef as Qo}from"react";import{useCallback as $l}from"react";import{useSetAtom as Ot}from"jotai";function jo(){let e=Ot(jr),t=Ot(to),n=Ot(fo);return $l((r,o)=>{let i=Array.isArray(r)?r:[r];e(i),n(i),o?.keepValue||t(i)},[e,n,t])}function ei(){let e=jo(),t=Qo({}),n=Qo([]),r=Mt((a,l,s)=>{a in t.current||(t.current[a]=l,n.current.push(s))},[]),o=Mt((a,l)=>{t.current[a]&&(delete t.current[a],n.current=n.current.filter(s=>s.name!==a),e([a],{keepValue:l?.keepValue}))},[e]);return[Mt(()=>[t.current,n.current],[]),r,o]}import{Fragment as zl,jsx as ve,jsxs as Gl}from"react/jsx-runtime";function ti(e){let t=e.translations?.[e.lang??""],[n,r,o]=ei(),[i,a,l]=Jo(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 Gl(zl,{children:[s&&Qe(e.config.alert,u=>ve("div",{className:"mb-4 w-full",children:ve(u,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),ve(Br,{action:i,advanced:e.advanced,config:e.config,control:e.children,definition:e.definition,isPending:l,noValidate:!0,readOnly:e.readOnly,sections:e.sections,children:({disabled:u,fields:m})=>ve(Zo,{config:e.config,context:e.context,disabled:u,fields:m,style:e.config.style,translations:t,value:c,children:y=>ve(ho,{...y,config:e.config,context:e.context,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:c})})})]})}import{Provider as Hl}from"jotai";import{jsx as ni}from"react/jsx-runtime";function Bl(e){return ni(Hl,{children:ni(ti,{...e})})}export{Bl as Form};
|
|
1
|
+
import{jsx as gi}from"react/jsx-runtime";function Zt(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return gi("div",{"data-slot":"field-control",className:"w-full",children:t})}import{jsx as qt}from"react/jsx-runtime";function se(e){return qt("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:qt("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 bi}from"react";import{createContext as yi}from"react";var Ee=yi(!1);import{jsx as Wt}from"react/jsx-runtime";function be({children:e,visible:t}){return Wt(bi,{mode:t?"visible":"hidden",children:Wt(Ee,{value:!0,children:e})})}var Pe="input",Kt="input/date",Jt="input/email",Qt="input/number";var jt="input/time";var en="textarea",tn="radio",nn="checkbox",ht="list";var rn="select",on="select/active",an="select/day",ln="select/month",sn="select/timezone",cn="select/year";var un="chips",dn="chips/day",mn="chips/month",xe="column",fn="description",Tt="fields",pn="label",O="value",De="options",St="email",gn="number",yn="password",bn="tel",he="text",xn="aria-errormessage",hn="aria-invalid",Tn="data-invalid",Sn="data-readonly",Rn="aria",vn="data",Ve="max",Cn="maxLength",Le="min",Fn="minLength",ce="$ref";var An="source",Nn="state",Oe="http://luna.internal";var wn="type",kn={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};function d(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function k(e){return e==null||e===""}function B(e){return y(e)||typeof e=="number"||Rt(e)}function y(e){return typeof e=="string"}function In(e){return d(e)&&"url"in e}function Rt(e){return typeof e=="boolean"}var xi=/^\d+$/;function Ct(e,t=[],n=O){return Array.isArray(t)?t.find(r=>{let o=Ft(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}:{value:e}}function Ft(e,t=O){if(e!=null){if(Array.isArray(e)&&e.every(B)||B(e))return e;if(d(e)){let n=hi(e,t);if(B(n))return n}}}function hi(e,t){let n=I(e,t);if(B(n))return n}function En(e,t){if(Array.isArray(e))return e;let n=I(e,t);return Array.isArray(n)?n:null}function I(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 Pn(e,t={description:fn,label:pn,value:O}){return e.map(n=>{if(d(n)){let r=I(n,t.label),o=I(n,t.value);if(B(r)&&B(o)){let i=I(n,t.description);return{label:`${r}`,value:`${o}`,...B(i)&&{description:`${i}`}}}}return n})}function Dn(e=he){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==Pe?n.trim().toLowerCase():he}function Vn(e){let t={};for(let n of e.keys()){let r=e.getAll(n);t[n]=r.length>1?r:r[0]}return t}function Ln(e){let t={};for(let n of Object.keys(e)){let r=n.split(".");if(r.length===1){t[n]=e[n];continue}let o=t;for(let a=0;a<r.length-1;a++){let l=r[a],s=r[a+1],c=xi.test(s);l in o||(o[l]=c?[]:{}),o=o[l]}let i=r[r.length-1];o[i]=e[n]}return vt(t),t}function vt(e){for(let t of Object.keys(e)){let n=e[t];if(Array.isArray(n)){let r=n.filter(o=>o!==void 0);for(let o of r)d(o)&&vt(o);e[t]=r}else d(n)&&vt(n)}}var Ti=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function K(e,t={}){if(y(e))return Si(e,t);if(Array.isArray(e))return e.map(n=>K(n,t));if(d(e)){let n={};for(let r in e)n[r]=K(e[r],t);return n}return e}function Se(e,t={}){return Te(e)?K(e,t):e}function Te(e){return y(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>Te(t)):d(e)?Object.values(e).some(t=>Te(t)):!1}function Si(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,r)=>{let o=r.includes(".")?I(t,r):t[r];return B(o)?String(o):n})}function On(e,t){if(!y(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Ti.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 Re={error:(...e)=>{At()&&!Nt()&&Me().error("[Luna Form]",...e)},warn:(...e)=>{At()&&!Nt()&&Me().warn("[Luna Form]",...e)},info:(...e)=>{At()&&!Nt()&&Me().info("[Luna Form]",...e)}},At=()=>typeof Me()<"u",Nt=()=>!0,Me=()=>globalThis.console;function Mn(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===O&&n.push(i),i.action===An&&r.push(i),i.action===Nn&&o.push(i);t({sources:r,states:o,values:n})}function _n(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(In(i)){let a=K(i.url,e),l=i.body?K(i.body,e):i.body;n(o,{...i,url:a,body:l})}}}var ve={eq:Ai,gt:Ii,gte:Ei,in:wi,lt:Pi,lte:Di,neq:Ni,nin:ki},Ri=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,$n=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function vi(e){return typeof e=="string"&&Ri.test(e)}function Ci(e){return typeof e=="string"&&$n.test(e)}function Fi(e){let t=e.match($n);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 J(e){return vi(e)?new Date(e).getTime():Ci(e)?Fi(e):Number(e)}function Ai(e,t){return e===t}function Ni(e,t){return e!==t}function wi(e,t){return Array.isArray(t)&&t.includes(String(e))}function ki(e,t){return Array.isArray(t)&&!t.includes(String(e))}function Ii(e,t){return J(e)>J(t)}function Ei(e,t){return J(e)>=J(t)}function Pi(e,t){return J(e)<J(t)}function Di(e,t){return J(e)<=J(t)}function Bn(e=null,t=[],n){for(let r of t){let{target:o,state:i,when:a}=r,l=Array.isArray(o)?o:[o];if(!e){n(l);continue}let s=Vi(e,a);n(l,s?i:void 0)}}function Vi(e,t){return t===void 0?!0:y(t)?_e(e,O)===t:Rt(t)?!!_e(e,O)===t:Array.isArray(t)?t.includes(String(_e(e,O))):Li(e,t)}function Li(e=null,t){let n=_e(e,t.field??O),{operator:r="eq",value:o}=t,i=ve[r];return i?i(n,o):!1}function _e(e,t){return d(e)?I(e,t):e}function zn(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,a=>r.onlyIfTargetEmpty&&!k(a)?a:e?K(i,e):void 0)}var $e=e=>h(on)(e),Gn=e=>h(an)(e),Be=e=>h(ln)(e),ze=e=>h(cn)(e),Hn=e=>h(sn)(e),Ge=e=>h(dn)(e),He=e=>h(mn)(e),M=h(Kt),Y=h(jt),E=h(nn),X=h(un),Z=h(tn),Q=h(Pe),j=h(rn),wt=h(en),Un=h(he,St,yn,bn),Yn=h(Jt,St),Ue=h(Qt,gn);function Ye(e){return Z(e)||E(e)}function Xn(e){return e.type===ht}function ee(e){return e.type===xe}function Xe(e){return e.type!==xe&&e.type!==ht}function Ce(e){return j(e)||Z(e)||X(e)}function Zn(e){return Q(e)||wt(e)}function R(e){return e!=null&&e!==""}function h(...e){return t=>{let n=y(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function qn(e,t={}){if(j(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&d(n))return[n]}}function Wn(e){return Z(e)||E(e)?!0:e.advanced?.horizontal??!1}function Kn(e){return E(e)?e.advanced?.reverse!==!1:!1}function Jn(e,t){let n=e.readonly??!1;return t||n}function Qn(e){if(Z(e)||X(e)||j(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||d(t)&&!(ce in t))return t}}import{isValid as Ze,parse as qe,format as We}from"date-fns";var Oi=/^\d+$/,Ke=new Date(2e3,0,1),Mi=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[];function kt(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function It(){return Array.from({length:7},(e,t)=>({value:t.toString(),label:new Date(2e3,0,2+t).toLocaleString("default",{weekday:"long"})}))}function tr(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 Et(){return new Date().getFullYear()}function _i(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function $i(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return kn[n]??"Other"}function Bi(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function jn(e,t){let n=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"longOffset"}).formatToParts(t),r=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"long"}).formatToParts(t),i=(n.find(l=>l.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),a=Bi(r,e);return{offset:i,longName:a}}function er(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function nr(){let e=new Date,t=_i(),n=new Map,r=er(t),{offset:o,longName:i}=jn(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let s of Mi()){if(s===t)continue;let c=er(s),{offset:u,longName:m}=jn(s,e),p={value:s,label:`${c} - ${m} (${u})`},f=$i(s);if(f==="Other")continue;let v=n.get(f);v?v.push(p):n.set(f,[p])}for(let s of n.values())s.sort((c,u)=>c.label.localeCompare(u.label));let l=Array.from(n.entries()).sort(([s],[c])=>s.localeCompare(c)).map(([s,c])=>({label:s,items:c}));return[{label:"Suggested",items:[a]},...l]}function Pt(e,t){if(typeof e=="number")return e;let n=t??Et(),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 Oi.test(r)?parseInt(r,10):n}function Je(e,t){if(!e)return"";try{let n=qe(e,t,Ke);return Ze(n)?We(n,"yyyy-MM-dd"):""}catch{return""}}function rr(e,t){if(!e)return"";try{let n=qe(e,t,Ke);return Ze(n)?We(n,"HH:mm:ss"):""}catch{return""}}function or(e,t="HH:mm"){if(!e)return"";try{let n=e.split(":").length===3?"HH:mm:ss":"HH:mm",r=qe(e,n,Ke);return Ze(r)?We(r,t):""}catch{return""}}function Qe(e,t="MMMM d, yyyy"){if(!e)return"";try{let n=qe(e,"yyyy-MM-dd",Ke);return Ze(n)?We(n,t):""}catch{return""}}function ie(e){return e.advanced?.format??"HH:mm"}function q(e){return e.advanced?.format??"MMMM d, yyyy"}var je=Et();function zi(e){if(X(e))return Gi(e)}function Gi(e){if(Ge(e))return It();if(He(e))return kt()}function Hi(e){if(j(e))return Ui(e)}function Ui(e){if(Gn(e))return It();if(Be(e))return kt();if(ze(e)){let t=e.advanced?.length?.min??je,n=e.advanced?.length?.max??je+5;return tr(Pt(t,je),Pt(n,je))}if(Hn(e))return nr();if($e(e))return[{value:"true",label:"Yes"},{value:"false",label:"No"}]}function ir(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return Q(e)?{...n,...Yi(e)}:j(e)?{...n,...ar(e,Hi)}:wt(e)?{...n,...Zi(e)}:X(e)?{...n,...Xi(e)}:n}function Yi(e){let t=Dn(e.type),n={...e,type:t};return{...Wi(e),...lr(e),...qi(n),...Un(n)?sr(n):{},type:t}}function ar(e,t){let n=t(e);return n?{options:n}:{}}function Xi(e){let t=ar(e,zi),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function Zi(e){return{...lr(e),...sr(e)}}function lr(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function qi(e){return Ue(e)?Ki(e):{}}function Wi(e){if(Y(e)){let t=ie(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function sr(e){return cr(e,{min:Fn,max:Cn})}function Ki(e){return cr(e,{min:Le,max:Ve})}function cr(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 ur(e,t){let n=Qn(e);return n||qn(e,t)}function Ji(e,t){let n=d(t)&&e.name in t?t[e.name]:t,r=Ft(n,e.advanced?.entity);return Y(e)&&R(r)?Qi(e,r):M(e)&&R(r)?na(e,r):r}function Qi(e,t){let n=ie(e);return y(t)?rr(t,n):t}function ji(e,t,n){return Ce(e)&&Array.isArray(n)?{...t,[De]:n}:t}function ea(e,t,n){if(e.required&&!R(n)&&j(e)&&e.advanced?.preselected!==!1&&De in t){let r=t[De];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function ta(e,t){return Ce(e)&&Array.isArray(t)?Pn(t,e.advanced?.options):t}function dr(e,t,n,r){let o=Ji(e,r),i=Array.isArray(n)?ta(e,n):n,a=ji(e,t,i),l=ea(e,a,o);return{commonPropsWithOptions:a,defaultValue:l}}function mr(e,t){return E(e)?{checked:R(t)?t:!1}:X(e)?{value:Array.isArray(t)?t:[]}:M(e)&&y(t)&&R(t)?{value:Qe(t,q(e))}:{value:t??""}}function na(e,t){let n=q(e);return y(t)?Je(t,n):t}function fr(e,t){let n=e??t;return n?{"data-format":n}:{}}var ra=/^#\/definition\//;function tt(e=[],t){let n=et(e,t);return Array.isArray(n)?n.filter(ia).sort((r,o)=>pr(r)-pr(o)):[]}function et(e,t,n=new Map,r=new WeakSet){if(!oa(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=>et(i,t,n,r));if(ce in e&&y(e[ce])){let i=e[ce].replace(ra,""),a=I(t,i);return a!==null?et(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=et(a,t,n,r);return r.delete(e),n.set(e,o),o}function gr(e){return Object.entries(e??{})}function pr(e){return e.order??Number.MAX_VALUE}function oa(e){return e!==void 0&&d(e)&&Object.keys(e).length>0}function ia(e){return wn in e?!0:Array.isArray(e[Tt])?e[Tt].length>0:!0}function yr(e,t){let n={};for(let[r,o]of gr(t))n[`${e}-${r}`]=o;return n}function aa(e){return yr(Rn,e)}function la(e){return yr(vn,e)}function br(e,t){let n=aa(e.advanced?.aria);return t&&t.length>0&&(n[hn]="true",n[xn]=`${e.name}-error`),n}function xr(e){return la(e.advanced?.data)}var hr={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Tr={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function Sr(e,t=2){return hr[e&&e in hr?e:t]}function Rr(e){if(e&&e in Tr)return Tr[e]}function sa(e,t){let n=e.advanced?.length?.min??1;if(t){let r=I(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function vr(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===xe}function Cr(e,t){let n=sa(e,t);return Array.from({length:n},(r,o)=>o)}function Fr(e){return e.label??e.name}import{z as g}from"zod";function b(e,t){return e?t?t[e]??e:e:""}var ca=[[E,Ar],[Yn,ua],[Ue,fa],[Z,da],[$e,Ar],[Be,ga],[ze,pa],[X,Dt],[Ge,Dt],[He,Dt]];function wr(e,t=[],n){let r=g.object(e);return t.length===0?r:ha(r,t,n)}function kr(e){let t={},n=g.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function Ir(e,t){for(let[n,r]of ca)if(n(e))return r(e,t);return ma(e,t)}function ua(e,t){let n=g.string().trim();if(e.required){let r=te(e,t),o=n.min(1,r).pipe(Nr(e,t));return g.preprocess(i=>k(i)?"":i,o)}return n.pipe(Nr(e,t)).or(g.literal("")).nullable()}function Ar(e,t){let n=g.preprocess(r=>{if(typeof r=="string"){if(r==="true")return!0;if(r==="false")return!1}return r},g.coerce.boolean());return e.required?(E(e)?n=n.refine(r=>r===!0,{message:te(e,t)}):n=n.refine(r=>typeof r=="boolean",{message:te(e,t)}),g.preprocess(r=>r===null?!1:r,n)):n.nullable()}function da(e,t){let n=g.coerce.string();return e.required?(n=n.min(1,te(e,t)),g.preprocess(r=>k(r)?"":r,n)):n.or(g.literal("")).nullable()}function ma(e,t){let n=g.coerce.string().trim();return n=Er(n,e,t),e.required?(n=Pr(n,e,t),g.preprocess(r=>k(r)?"":r,n)):n.nullable()}function fa(e,t){let n=g.coerce.number().int();return n=Er(n,e,t),e.required?(n=Pr(n,e,t),g.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function pa(e,t){return e.required?g.preprocess(ya,g.coerce.number({message:te(e,t)}).int()):g.coerce.number().int().nullable()}function ga(e,t){let n=te(e,t),r=g.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function ya(e){return e===null||e===""?void 0:e}function Nr(e,t){let n=e.validation?.email?b(e.validation?.email,t):void 0;return g.email(n)}function Er(e,t,n){return e=ba(e,t,n),e=xa(e,t,n),e}function Pr(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,te(t,n)):e}var ba=(e,t,n)=>Dr(e,t,Le,n),xa=(e,t,n)=>Dr(e,t,Ve,n);function Dr(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?b(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function ha(e,t=[],n){let r=Sa(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:l}of r)if(!Ta(o,a,l)){let s=b(l.message,n);i.addIssue({code:"custom",message:s,path:[a]})}})}function Ta(e,t,n){let r=n.operator??"eq",o=ve[r];return o?o(e[t],e[n.field]):!1}function Sa(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 Vr(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let l=a.operator??"eq",s=ve[l];if(s&&!s(e,n(a.field))&&a.message){let c=b(a.message,r);o.push(c)}}return o}function te(e,t){return e.validation?.required?b(e.validation?.required,t):void 0}function Dt(e,t){let n=g.array(g.string());return e.required&&(n=n.min(1,te(e,t))),g.preprocess(r=>k(r)?[]:Array.isArray(r)?r.map(String):[String(r)],n)}function Lr(e,t){if(!t||!va(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||Ra(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 Ra(e){return e==="https"?"443":"80"}function va(e){return/^(https?:)?\/\//.test(e)}function Or(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,Oe);new URL(t,Oe).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(Oe,""):o}catch{return t||e}}function Mr(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=Or(t.url,n.url),o=Ca(t,n),i=Fa(t,n);return{...t,...n,url:r,body:o,headers:i}})}function Ca(e,t){return d(t.body)&&d(e?.body)?{...e.body,...t.body}:t.body??e?.body}function Fa(e,t){return d(t.headers)&&d(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function nt(e,t){return{...e,...t}}var Aa={uppercase:e=>e.toUpperCase(),lowercase:e=>e.toLowerCase(),"remove-space":e=>e.replace(/\s+/g,""),"remove-accent":e=>e.normalize("NFD").replace(/[\u0300-\u036f]/g,"")};function Fe(e,t){return!t||!y(e)||k(e)?e:(Array.isArray(t)?t:[t]).reduce((r,o)=>{let i=Aa[o];return i?i(r):r},e)}import{jsx as Na}from"react/jsx-runtime";function W(e){return On(e,(t,n,r)=>Na("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}import{useCallback as wa,useState as ka}from"react";import{jsx as Ae,jsxs as Vt}from"react/jsx-runtime";function _r(e){let{fields:t=[]}=e.section,[n,r]=ka(!1),o=wa(()=>r(i=>!i),[]);return Vt("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:[Ae("legend",{children:Vt("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-slate-600 dark:text-slate-400",onClick:o,type:"button",children:[Ae(se,{expanded:n}),Ae("span",{children:W(e.section.title)})]})}),Ae(be,{visible:n,children:Vt("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-slate-300 pl-4 dark:border-slate-600","data-slot":"field-set-content",children:[e.section.description&&Ae("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:W(e.section.description)}),e.group]})})]})}import{jsx as rt,jsxs as $r}from"react/jsx-runtime";function Br(e){let t=$r("div",{className:"flex flex-col",children:[e.title&&rt("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:W(e.title)}),e.description&&rt("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:W(e.description)})]});return e.step?$r("div",{className:"flex flex-row items-start gap-4",children:[rt("div",{className:"bg-primary text-primary-foreground flex h-6 w-6 shrink-0 items-center justify-center rounded-full",children:rt("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}import{jsx as zr,jsxs as Ia}from"react/jsx-runtime";function ot(e){return Ia("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:[zr(Br,{description:e.description,step:e.step,title:e.title}),zr("div",{className:"w-full min-w-0",children:e.children})]})}import{jsx as Ea}from"react/jsx-runtime";function ne(e){return Ea("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 Lt}from"react/jsx-runtime";function Gr(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=nt(e.style,{compact:e.section.advanced?.compact}),o=Lt(ne,{compact:r,children:e.children});return!e.section.title&&!e.section.description?o:e.section.advanced?.collapsible?Lt(_r,{section:e.section,group:o}):Lt(ot,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),step:n,title:e.section.title,children:o})}import{jsx as Hr}from"react/jsx-runtime";function Ur(){return Hr("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:Hr("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}import{useAtomValue as Oa}from"jotai";import{atom as ae}from"jotai";import{atomFamily as Yr}from"jotai-family";import{deepEqual as Ot}from"fast-equals";function it(e,t){let{[t]:n,...r}=e;return r}function Pa(e){return Yr(t=>ae(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];Ot(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,it(i,t))}))}function Da(e){return ae(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function Va(e){return ae(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)l in i&&(delete i[l],a=!0);a&&n(e,i)})}function La(e){return ae(null,(t,n,r)=>{let o=t(e);Ot(o,r)||n(e,r)})}function Xr(e,t={}){let{merge:n,validateTarget:r}=t;return Yr(o=>ae(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 m=u[o];(!m||!Ot(m,s))&&(u[o]=s,a(e,{...c,[l]:u}))}else o in u&&(delete u[o],Object.keys(u).length===0?a(e,it(c,l)):a(e,{...c,[l]:u}))}))}function Zr(e){return ae(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)l in i&&(delete i[l],a=!0);for(let l in i){let s={...i[l]},c=!1;for(let u of r)u in s&&(delete s[u],c=!0,a=!0);c&&(Object.keys(s).length===0?delete i[l]:i[l]=s)}a&&n(e,i)})}function ue(e={}){let t=ae(e);return{atom:t,clearAll:Da(t),clear:Va(t),bulkReport:La(t),report:Pa(t)}}var qr=ue(),at=qr.atom,Wr=qr.report;function Ma(e,t){return e.fields.every(n=>Kr(n,t))}function Kr(e,t){return t[e.name]?.hidden??e.hidden??!1}function _a(e,t){return ee(e)?Ma(e,t):Kr(e,t)}function lt(e){let t=Oa(at);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>_a(r,t))?null:e.children}import{jsx as Ne,jsxs as Jr}from"react/jsx-runtime";function Qr(e){let t=tt(e.sections,e.definition);return Ne("div",{className:"h-full w-full",children:Ne("form",{noValidate:e.noValidate,action:e.action,children:Jr(ne,{children:[t.map((n,r)=>Jr(lt,{fields:n.fields??[],children:[Ne(Gr,{advanced:e.advanced,section:n,step:r+1,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.advanced?.separator&&Ne(Ur,{})]},`key-${n.id}-${r}`)),e.control&&Ne(Zt,{isPending:e.isPending,children:e.control})]})})})}import{jsx as $a}from"react/jsx-runtime";function jr(e){return $a("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}import{useState as Ba}from"react";import{jsx as eo,jsxs as to}from"react/jsx-runtime";function de(e){let t={context:e.context,env:e.config?.env},[n,r]=Ba(()=>d(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),o=()=>r(l=>!l),i=d(e.text)&&y(e.text.title)?W(b(Se(e.text.title,t),e.translations)):void 0,a=W(b(Se(y(e.text)?e.text:e.text?.message,t),e.translations));return a?to("div",{className:"flex flex-col gap-2",children:[i&&to("button",{className:"flex items-center gap-1 text-left text-xs font-medium text-slate-700 hover:text-slate-900 dark:text-slate-300 dark:hover:text-slate-100",onClick:o,type:"button",children:[i,eo(se,{expanded:n})]}),n&&eo(jr,{children:a})]}):null}import{twMerge as za}from"tailwind-merge";import{jsx as Ga,jsxs as Ha}from"react/jsx-runtime";function no(e){let t=e.style?.showOptionalLabel??!0,n=Z(e.field)||E(e.field);return Ha("label",{"data-slot":"field-label","data-normal":n,className:za("flex w-fit items-center gap-2 text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,children:[e.children,t&&!e.field.required&&Ga("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:b("(Optional)",e.translations)})]})}import{jsx as ro,jsxs as Ua}from"react/jsx-runtime";function oo(e){let t={context:e.context,env:e.config?.env},n=Se(e.field.label,t);return Ua("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[ro(no,{field:e.field,style:e.config?.style,translations:e.translations,children:b(n,e.translations)}),e.horizontal===!0&&ro(de,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}import{Fragment as Ya,jsx as io,jsxs as Xa}from"react/jsx-runtime";function ao(e){return Xa(Ya,{children:[e.field.name&&e.field.label&&io(oo,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&io(de,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}function st(e,t){return e?t(e):null}import{useCallback as ll,useEffect as sl,useRef as cl}from"react";var Mt=ue(),lo=Mt.clear,so=Mt.bulkReport,ct=Mt.report;var ut=ue(),dt=ut.atom,co=ut.clearAll,uo=ut.clear,me=ut.report;import{useCallback as go,useRef as mt,useTransition as ja}from"react";import{useContext as Za,useEffect as qa,useEffectEvent as mo,useMemo as Wa}from"react";function fo(e,t,n,r){let{name:o}=e,i=Wa(()=>Ir(e,r),[e,r]),a=Za(Ee),l=mo(c=>{c&&t(c,i,e)}),s=mo(c=>{c&&n(c,{keepValue:a})});return qa(()=>(l(o),()=>{s(o)}),[o]),i}import{useSetAtom as _t,useStore as el}from"jotai";import{useCallback as Ka,useEffect as Ja,useRef as Qa}from"react";function po(){let e=Qa(null);return Ja(()=>()=>{e.current&&clearTimeout(e.current)},[]),Ka((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}function yo(e,t){let n=el(),r=e.field.advanced?.entity,o=po(),[,i]=ja(),{setValue:a,shouldSkipOnChange:l,value:s,setSource:c}=t,u=mt(s);u.current=s;let m=mt(e.translations);m.current=e.translations;let p=Ye(e.field),f=_t(dt),v=_t(at),T=_t(ct(e.field.name)),A=fo(e.field,e.onMount,e.onUnmount,e.translations),C=b(e.commonProps.placeholder,e.translations),w={...e.commonProps,placeholder:C};function D(F){let[,S]=e.getSchema(),z=S.find(L=>L.name===F);if(z&&Q(z)){let L=z.advanced?.transform;if(L)return L}}let V=mt(null);V.current=F=>{let S=Q(e.field)?Fe(F,e.field.advanced?.transform):F;a(S),e.onValueChange&&e.onValueChange({name:e.field.name,type:e.field.type,value:S})};let _=mt(null);_.current=F=>{let S=e.field.event?.change;S&&Mn(S,({sources:z,states:L,values:G})=>{i(()=>{_n(F,z,(x,oe)=>c(x,oe)),Bn(F,L,(x,oe)=>{v($=>oe?x.reduce((H,U)=>({...H,[U]:oe}),$):x.reduce((H,U)=>it(H,U),$)),oe?.hidden===!0&&f($=>{let H=!1,U={...$};for(let le of Object.keys($))x.some(ye=>le===ye||le.startsWith(`${ye}.`))&&(delete U[le],H=!0);return H?U:$})}),zn(F,G,(x,oe)=>{f($=>{let H=$[x],U=oe(H),le=D(x),ye=le?Fe(U,le):U;return ye===H?$:{...$,[x]:ye}})})})})};let N=go(F=>{let z=A.safeParse(F).error?.issues.map(x=>x.message)??[],L=e.field.validation?.custom,G=L?Vr(F,L,x=>n.get(me(x)),m.current):[];T([...z,...G])},[e.field.validation?.custom,A,T,n]),ge=go(F=>{if(!p){let S=F.target.value;e.config.validation.blur&&N(S)}},[p,e.config.validation.blur,N]);return{applyChangeEventsRef:_,commonProps:w,entity:r,hasClickable:p,onBlur:ge,onValueChangeRef:V,setTimeoutRef:o,shouldSkipOnChange:l,validated:N,valueRef:u}}import{deepEqual as tl}from"fast-equals";function fe(e,t){if(!Array.isArray(t)&&e in t)return t[e];if(!e.includes("."))return;let n=e.split("."),r=t;for(let o of n){if(r==null)return;if(Array.isArray(r)){let i=Number(o);r=Number.isInteger(i)?r[i]:void 0}else if(d(r))r=r[o];else return}return r}import{useAtom as nl}from"jotai";import{useCallback as rl,useEffect as ol,useRef as il,useEffectEvent as al}from"react";function bo(e,t){let{name:n}=e,r=il(!1),[o,i]=nl(me(n)),a=al(s=>{let c=fe(n,s);if(R(c)){let u=Q(e)?Fe(c,e.advanced?.transform):c;tl(o,u)||(r.current=!0),i(u)}});ol(()=>{t&&a(t)},[t]);let l=rl(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:l,value:o}}import{jsx as xo}from"react/jsx-runtime";function ho(e){let{useSource:t,useExtraProps:n,getValue:r,shouldSkipChange:o,dispatchChange:i,buildInitialSelected:a,isInitialReady:l}=e.strategies,{setValue:s,shouldSkipOnChange:c,value:u}=bo(e.field,e.value),{data:m,setSource:p}=t(e.field,e.config,u),{applyChangeEventsRef:f,commonProps:v,entity:T,hasClickable:A,onBlur:C,onValueChangeRef:w,setTimeoutRef:D,validated:V,valueRef:_}=yo(e,{setValue:s,shouldSkipOnChange:c,value:u,setSource:p}),N=n?.(e.field),ge=cl(!1),{commonPropsWithOptions:F,defaultValue:S}=dr(e.field,v,m,u),z=mr(e.field,S);sl(()=>{if(ge.current||!e.value)return;if(!e.field.event?.change){ge.current=!0;return}if(!R(S)||!l(e.field,S,m))return;ge.current=!0;let G=a(S,m,T);f.current?.(G)},[f,a,m,S,T,l,e.field,e.value]);let L=ll(G=>{let x=r(G,e.field);o({shouldSkipOnChange:c,hasClickable:A,inputValue:x,valueRef:_})||(w.current?.(x),e.config.validation.change&&V(x),e.field.event?.change&&i({applyChangeEventsRef:f,data:m,entity:T,inputValue:x,setTimeoutRef:D}))},[f,m,i,T,r,A,w,e.config.validation.change,e.field,D,o,c,V,_]);return st(e.config.inputs[e.field.type],G=>xo(ao,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:xo(G,{...F,...e.ariaAttributes,...e.dataAttributes,...N,...z,onBlur:C,onChange:L})}))}import{jsx as ul}from"react/jsx-runtime";function pe(e){return function(n){return ul(ho,{...n,strategies:e})}}function To(e){let t=M(e)?q(e):null,n=Y(e)?ie(e):null;return{dateFormat:t,timeFormat:n}}import{atom as dl}from"jotai";var ml=e=>{let t=Mr(e);if(t)return t},fl=e=>e.trim()!=="",So=dl({}),ft=Xr(So,{merge:ml,validateTarget:fl}),Ro=Zr(So);import{useSetAtom as pl}from"jotai";function pt(e){return{data:null,setSource:pl(ft(e.name))}}var vo=pe({useSource:pt,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=To(e);return fr(t,n)},getValue:(e,t)=>{let n=e.target.value,r=Y(t)?ie(t):null;if(r!==null)return or(n,r);let o=M(t)?q(t):null;return o!==null&&Qe(n,o)||n},shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>R(t)});import{useAtom as bl}from"jotai";import gl from"swr";function Co(e=null,t,n=!1){let{data:r,error:o}=gl(yl(e,t,n),t.fetcher.provider);if(o&&Re.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return En(r,e.namespace)}return null}function yl(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!Te(e.url)){if(Lr(e.url,t.fetcher.remotePatterns))return e;Re.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function Fo(e,t,n){let r=ur(e,n),[o,i]=bl(ft(e.name));return[Co(o??r,t,e.disabled),i]}function xl(e,t,n){let[r,o]=Fo(e,t,n);return{data:r,setSource:o}}var Ao=pe({useSource:xl,getValue:e=>e.target.value,shouldSkipChange:({shouldSkipOnChange:e,hasClickable:t})=>!t&&e(),dispatchChange:({applyChangeEventsRef:e,data:t,entity:n,inputValue:r})=>{e.current?.(Ct(r,t,n))},buildInitialSelected:(e,t,n)=>Ct(String(e),t,n),isInitialReady:(e,t,n)=>(!Ce(e)||!!n&&n.length>0)&&R(t)});var No=pe({useSource:pt,getValue:e=>e.target.value,shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>R(t)});import{jsx as $t}from"react/jsx-runtime";function wo(e){return M(e.field)||Y(e.field)?$t(vo,{...e}):Zn(e.field)?$t(No,{...e}):$t(Ao,{...e})}import{jsx as ko}from"react/jsx-runtime";function Io(e){return!e.errors||e.errors.length===0?null:ko("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)=>ko("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}import{twMerge as hl}from"tailwind-merge";import{jsx as Tl}from"react/jsx-runtime";function gt(e){let t=e.errors&&e.errors.length>0;return Tl("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Tn]:"true"},...e.disabled&&{[Sn]:"true"},"data-orientation":e.orientation,className:hl("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 Sl}from"tailwind-merge";import{jsx as Rl}from"react/jsx-runtime";function Eo(e){return Rl(gt,{...e,orientation:"vertical",className:Sl("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as vl}from"tailwind-merge";import{jsx as Cl}from"react/jsx-runtime";function Po(e){return Cl(gt,{...e,orientation:"horizontal",className:vl("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 Do}from"react/jsx-runtime";function Vo(e){let t=Ye(e.field),n=E(e.field),r=Kn(e.field);return e.horizontal?Do(Po,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):Do(Eo,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function Lo(e){if(!e.field.type)return null;let t=ir(e.field,e.disabled),n=xr(e.field),r=br(e.field,e.errors),o={...e.field,disabled:t.disabled};return e.children({ariaAttributes:r,commonProps:t,dataAttributes:n,field:o,horizontal:e.horizontal})}import{twMerge as Fl}from"tailwind-merge";import{jsx as Bt,jsxs as Al}from"react/jsx-runtime";function Oo(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=nt(e.style,{horizontal:Wn(e.field)}),o=Jn(e.field,e.disabled);return Al("div",{className:Fl("flex flex-col gap-3",Rr(t)),children:[Bt(Vo,{disabled:o,errors:n,field:e.field,horizontal:r,children:Bt(Lo,{disabled:o,errors:n,field:e.field,horizontal:r,children:e.children})}),Bt(Io,{errors:n,name:e.field.name})]})}import{useAtomValue as Nl}from"jotai";import{jsx as Il}from"react/jsx-runtime";function Mo(e){return(t,n)=>o=>{let i=Nl(e(o.field.name)),a=n(i,o);return a===null?null:Il(t,{...o,...a})}}var wl=Mo(ct);function _o(e){return wl(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var kl=Mo(Wr);function $o(e){return kl(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var Bo=$o(_o(Oo));import{twMerge as zt}from"tailwind-merge";import{useState as El}from"react";import{Fragment as Pl,jsx as P,jsxs as re}from"react/jsx-runtime";function zo(e){let t=e.isMultiField||e.collapsed!=null,[n,r]=El(t?!e.collapsed:!0);function o(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function i(){r(c=>!c)}let a=e.canRemove&&e.onRemove!=null&&P("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:zt("flex size-6 items-center justify-center rounded text-xl leading-none text-slate-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500 dark:hover:text-red-400"),onClick:o,type:"button",children:P("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),l=re("div",{className:"flex min-w-0 flex-col font-medium text-slate-700 dark:text-slate-400",children:[P("span",{className:"text-base",children:e.previewLabel??re(Pl,{children:[e.label," ",e.index+1]})}),!n&&e.previewTags&&P("div",{className:"flex items-center gap-2 overflow-hidden text-xs font-normal text-ellipsis whitespace-nowrap text-slate-500 dark:text-slate-500",children:e.previewTags})]}),s=re("div",{className:zt("flex items-center justify-between gap-2",e.isMultiField&&n&&"mb-3"),children:[t?re("div",{className:"flex min-w-0 grow items-center gap-2",children:[re("button",{"aria-expanded":n,"aria-label":`${n?"Collapse":"Expand"} ${e.label} ${e.index+1}`,className:zt("group flex grow items-center gap-2 rounded p-1 text-left text-slate-400","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500"),onClick:i,type:"button",children:[P(se,{expanded:n}),l]}),!n&&e.previewBadge&&P("div",{className:"ml-auto shrink-0",children:e.previewBadge})]}):l,a]});return e.isMultiField?re("div",{"data-slot":"list-item-card",className:"box-border w-full min-w-0 rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[s,P(be,{visible:n,children:P(ne,{children:e.children})})]}):t?re("div",{className:"box-border flex w-full min-w-0 flex-col gap-2",children:[s,P(be,{visible:n,children:P(ne,{children:e.children})})]}):re("div",{className:"box-border flex w-full min-w-0 items-start gap-2",children:[P("div",{className:"flex min-w-0 grow flex-col",children:P(ne,{children:e.children})}),a&&P("div",{className:"shrink-0",children:a})]})}import{twMerge as Vl}from"tailwind-merge";import{useAtomValue as Dl}from"jotai";function yt(e,t){return Dl(me(e))??t}import{jsx as Go,jsxs as Ll}from"react/jsx-runtime";function Ho({className:e,initialValue:t,name:n,separator:r}){let o=yt(n,t);if(k(o)||d(o)||Array.isArray(o))return null;let i=String(o);return Ll("div",{className:"flex items-center gap-1.5 overflow-hidden",children:[r&&Go("span",{"aria-hidden":"true",className:"text-xs text-slate-300 select-none dark:text-slate-600",children:"\xB7"}),Go("span",{"aria-label":i,className:Vl("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:i,children:i})]})}import{useMemo as Uo}from"react";import{jsx as Yo}from"react/jsx-runtime";function Gt({className:e,label:t="Preview",name:n,previews:r,value:o}){let i=Uo(()=>Array.isArray(r)?r:[r],[r]),a=Uo(()=>o==null?{}:Object.fromEntries(i.map(l=>[l,fe(`${n}.${l}`,o)])),[i,o,n]);return Yo("div",{"aria-label":t,className:"flex items-center gap-1.5 overflow-hidden",children:i.map((l,s)=>Yo(Ho,{className:e,initialValue:a[l],name:`${n}.${l}`,separator:s>0},l))})}import{Fragment as Ol,jsx as Ml}from"react/jsx-runtime";function Xo({children:e,initialValue:t,name:n}){let r=yt(n,t),i=k(r)||d(r)||Array.isArray(r)?"":String(r);return Ml(Ol,{children:e(i)})}import{jsx as bt}from"react/jsx-runtime";function Zo({canRemove:e,children:t,field:n,index:r,isMultiField:o,itemKey:i,label:a,onRemove:l,previewBadge:s,previewLabel:c,previewTags:u,value:m}){let p=`${n.name}.${i}`;return bt(zo,{canRemove:e,collapsed:n.advanced?.collapsed,index:r,isMultiField:o,label:a,onRemove:l,previewLabel:c?bt(Xo,{initialValue:m?fe(`${p}.${c}`,m):void 0,name:`${p}.${c}`,children:f=>f||`${a} ${r+1}`}):void 0,previewBadge:s?bt(Gt,{className:"bg-primary text-primary-foreground rounded-md px-1.5 py-0.5 leading-none font-bold uppercase",name:p,previews:s,value:m}):void 0,previewTags:u?bt(Gt,{name:p,previews:u,value:m}):void 0,children:t})}import{twMerge as zl}from"tailwind-merge";import{useSetAtom as _l}from"jotai";import{useCallback as qo,useLayoutEffect as $l,useRef as Wo,useState as Bl}from"react";function Ko(e,t){let n=e.advanced?.length?.min??1,r=e.advanced?.length?.max??1/0,[o,i]=Bl(()=>Cr(e,t)),a=Wo(o.length),l=Wo(o);$l(()=>{l.current=o});let s=_l(dt),c=qo(()=>{i(f=>{if(f.length>=r)return f;let v=a.current++;return[...f,v]})},[r]),u=qo(f=>{if(l.current.length<=n)return;let v=l.current[f];i(T=>T.length<=n?T:T.filter((A,C)=>C!==f)),s(T=>{let A={...T},C=`${e.name}.`,w=[];for(let D of e.fields)if(ee(D))for(let V of D.fields)w.push(V.name);else w.push(D.name);for(let D of w)delete A[`${C}${v}.${D}`];return A})},[e.name,e.fields,n,s]),m=o.length<r,p=o.length>n;return[o,c,u,m,p,r]}import{jsx as Jo,jsxs as xt}from"react/jsx-runtime";var Gl="flex h-9 w-full items-center gap-2 rounded-md border border-dashed border-slate-200 px-4 text-sm font-medium text-slate-500 transition-none hover:border-slate-300 hover:text-slate-800 focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:ring-offset-2 focus-visible:outline-none dark:border-slate-800 dark:text-slate-400 dark:hover:border-slate-700 dark:hover:text-slate-200";function Qo(e){let{field:t,value:n,children:r}=e,[o,i,a,l,s,c]=Ko(t,n),u=Fr(t),m=t.advanced?.action??"Add item",p=c!==1/0,f=vr(t),{label:v,tags:T,badge:A}=t.advanced?.preview??{};return xt("div",{className:"flex w-full flex-col gap-4",children:[o.map((C,w)=>Jo(Zo,{canRemove:s,field:t,index:w,isMultiField:f,itemKey:C,label:u,onRemove:a,previewBadge:A,previewLabel:v,previewTags:T,value:n,children:r(C)},C)),xt("button",{"aria-disabled":!l,"aria-label":p?`${m}, ${o.length} of ${c}`:m,className:zl(Gl,p?"justify-between":"justify-center",!l&&"cursor-not-allowed opacity-50 hover:border-slate-200 hover:text-slate-500 dark:hover:border-slate-800 dark:hover:text-slate-400"),disabled:!l,onClick:i,type:"button",children:[xt("span",{className:"flex items-center gap-2",children:[Jo("span",{"aria-hidden":"true",className:"text-base leading-none",children:"+"}),m]}),p&&xt("span",{"aria-hidden":"true",className:"text-slate-400 tabular-nums dark:text-slate-500",children:[o.length," / ",c]})]})]})}import{jsx as Hl}from"react/jsx-runtime";function jo(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return Hl(ot,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}import{jsx as Ht}from"react/jsx-runtime";function ei({children:e,field:t,value:n}){return Ht(lt,{container:t,fields:t.fields,children:Ht(jo,{field:t,children:Ht(Qo,{field:t,value:n,children:e})})})}import{twMerge as Ul}from"tailwind-merge";import{jsx as ti,jsxs as Yl}from"react/jsx-runtime";function ni(e){let t=Sr(e.column?.advanced?.cols);return Yl("div",{className:"flex w-full flex-col gap-4",children:[ti("div",{className:Ul("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&ti(de,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}import{Fragment as Zl}from"react";import{jsx as Xl}from"react/jsx-runtime";function ri(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>Xe(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:ee(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return Xl(we,{children:e.children,components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:t,style:e.style,translations:e.translations,value:e.value})}import{jsx as ke,jsxs as ql}from"react/jsx-runtime";function we(e){let{field:t,list:n}=e.components;return tt(e.fields).map((r,o)=>ql(Zl,{children:[ee(r)&&ke(ni,{column:r,config:e.config,context:e.context,translations:e.translations,children:ke(we,{...e,fields:r.fields})}),Xe(r)&&ke(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),Xn(r)&&ke(n,{field:r,value:e.value,children:i=>ke(ri,{children:e.children,components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:r,index:i,style:e.style,translations:e.translations,value:e.value})})]},o))}import{jsx as Wl}from"react/jsx-runtime";function oi(e){return n=>Wl(we,{...n,components:e})}var ii=oi({field:Bo,list:ei});import{useSetAtom as ai}from"jotai";import{startTransition as li,useActionState as Kl}from"react";function ci(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},l=ai(so),s=ai(co),c={data:null,error:null,success:!1},[u,m,p]=Kl(async(f,v)=>{let[T,A]=e(),C=wr(T,A,a);if(i===!1)return t?await t(v,C):f;let w=Vn(v),D=Ql(w,A),V=C.safeParse(D);if(!V.success){let N=kr(V.error);return li(()=>{l(N)}),Ut(w,{description:b("Please correct the errors and try again.",a),details:[],title:b("There were validation errors submitting the form.",a)})}let _=Ln(V.data);if(t)try{let N=await t(_,C);return N.success?(r?.(N.data),o||li(()=>{s()}),si(_,o)):Ut(_,N.error)}catch(N){return Re.error("Error executing form action:",N),Ut(_,{title:b("An unexpected error occurred submitting the form.",a),details:Jl(N,a)})}return si(V.data,o)},c);return[m,u,p]}function Jl(e,t){return e instanceof Error?[e.message]:[b("Unknown error",t)]}function si(e,t=!1){return{data:t?e:null,error:null,success:!0}}function Ut(e,t){return{data:e,error:t,success:!1}}function Ql(e,t){let n={...e};for(let r of t)if(M(r)&&typeof n[r.name]=="string"&&n[r.name]){let o=Je(n[r.name],q(r));o&&(n[r.name]=o)}return n}import{useCallback as Xt,useRef as di}from"react";import{useCallback as jl}from"react";import{useSetAtom as Yt}from"jotai";function ui(){let e=Yt(lo),t=Yt(uo),n=Yt(Ro);return jl((r,o)=>{let i=Array.isArray(r)?r:[r];e(i),n(i),o?.keepValue||t(i)},[e,n,t])}function mi(){let e=ui(),t=di({}),n=di([]),r=Xt((a,l,s)=>{a in t.current||(t.current[a]=l,n.current.push(s))},[]),o=Xt((a,l)=>{t.current[a]&&(delete t.current[a],n.current=n.current.filter(s=>s.name!==a),e([a],{keepValue:l?.keepValue}))},[e]);return[Xt(()=>[t.current,n.current],[]),r,o]}import{Fragment as es,jsx as Ie,jsxs as ts}from"react/jsx-runtime";function fi(e){let t=e.translations?.[e.lang??""],[n,r,o]=mi(),[i,a,l]=ci(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 ts(es,{children:[s&&st(e.config.alert,u=>Ie("div",{className:"mb-4 w-full",children:Ie(u,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),Ie(Qr,{action:i,advanced:e.advanced,config:e.config,control:e.children,definition:e.definition,isPending:l,noValidate:!0,readOnly:e.readOnly,sections:e.sections,children:({disabled:u,fields:m})=>Ie(ii,{config:e.config,context:e.context,disabled:u,fields:m,style:e.config.style,translations:t,value:c,children:p=>Ie(wo,{...p,config:e.config,context:e.context,getSchema:n,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:c})})})]})}import{Provider as ns}from"jotai";import{jsx as pi}from"react/jsx-runtime";function rs(e){return pi(ns,{children:pi(fi,{...e})})}export{rs as Form};
|
package/dist/config/cjs/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var f=Object.defineProperty;var L=Object.getOwnPropertyDescriptor;var O=Object.getOwnPropertyNames;var D=Object.prototype.hasOwnProperty;var w=(t,n)=>{for(var r in n)f(t,r,{get:n[r],enumerable:!0})},M=(t,n,r,e)=>{if(n&&typeof n=="object"||typeof n=="function")for(let o of O(n))!D.call(t,o)&&o!==r&&f(t,o,{get:()=>n[o],enumerable:!(e=L(n,o))||e.enumerable});return t};var U=t=>M(f({},"__esModule",{value:!0}),t);var
|
|
1
|
+
"use strict";var f=Object.defineProperty;var L=Object.getOwnPropertyDescriptor;var O=Object.getOwnPropertyNames;var D=Object.prototype.hasOwnProperty;var w=(t,n)=>{for(var r in n)f(t,r,{get:n[r],enumerable:!0})},M=(t,n,r,e)=>{if(n&&typeof n=="object"||typeof n=="function")for(let o of O(n))!D.call(t,o)&&o!==r&&f(t,o,{get:()=>n[o],enumerable:!(e=L(n,o))||e.enumerable});return t};var U=t=>M(f({},"__esModule",{value:!0}),t);var ft={};w(ft,{defineCheckbox:()=>et,defineChips:()=>it,defineConfig:()=>ot,defineCustomInput:()=>pt,defineInput:()=>st,defineRadio:()=>ct,defineSelect:()=>at,defineTextArea:()=>ut});module.exports=U(ft);var k="input",H="input/date",v="input/email",X="input/number",V="input/password",Y="input/tel",j="input/text",B="input/time",A=[k,H,v,X,V,Y,j,B],m="textarea",I="radio",h="checkbox";var F="select",G="select/active",K="select/day",$="select/month",W="select/timezone",q="select/year",S=[F,G,K,$,W,q],y="chips",R="chips/day",P="chips/month";var a="http://luna.internal";function b(t){return t!==null&&Object.prototype.toString.call(t)==="[object Object]"}function s(t){return typeof t=="string"}function u(t){return s(t)?/{([^}]{1,200})}/.test(t):Array.isArray(t)?t.some(n=>u(n)):b(t)?Object.values(t).some(n=>u(n)):!1}var C={error:(...t)=>{l()&&!T()&&p().error("[Luna Form]",...t)},warn:(...t)=>{l()&&!T()&&p().warn("[Luna Form]",...t)},info:(...t)=>{l()&&!T()&&p().info("[Luna Form]",...t)}},l=()=>typeof p()<"u",T=()=>!0,p=()=>globalThis.console;function _(t){try{return t instanceof FormData?null:s(t)?t:JSON.stringify(t)}catch{return C.error("Failed to stringify body:",t),null}}var z=/(^|[\/?=&])(null|undefined)([\/?=&]|$)/;async function N(t){let[n,r]=J(t),e=t.body,o=nt(t);if(e&&!E(r)){let g=_(e);g!==null&&(e=g,o=Z(o))}let c=n.origin===a?n.toString().replace(a,""):n.toString(),x=await fetch(c,{body:rt(r,e),cache:t.cache,headers:o,method:r}),d=await x.json();if(x.ok)return d;throw d}function J(t){let n=t.url?.trim();if(!n||!Q(n))throw new Error(`Invalid URL: ${t.url}`);let r=new URL(n,a),e=tt(t);return t.body&&E(e)&&Object.entries(t.body).filter(([,o])=>o!==void 0&&o!=="undefined").forEach(([o,c])=>{r.searchParams.append(o,String(c))}),[r,e]}function Z(t){return{...t,"Content-Type":"application/json"}}function Q(t){return!s(t)||u(t)?!1:!z.test(t)}function tt(t){return t.method??"GET"}function nt(t){return{Accept:"application/json",...t.headers??{}}}function E(t){return t.toUpperCase()==="GET"}function rt(t,n){if(!E(t))return n}function ot(t){let n={alert:t.alert,env:t.env,fetcher:{provider:N,remotePatterns:t.fetcher?.remotePatterns},inputs:{},style:t.style};return n.validation=t.validation??{blur:!0,change:!0,showError:!0,submit:!0},t.inputs.forEach(({types:r,input:e})=>{(Array.isArray(r)?r:[r]).forEach(c=>{n.inputs[c]=e})}),n}var et=i([h]),it=i([y,R,P]),st=i(A),ct=i([I]),at=i(S),ut=i([m]);function pt(t,n){return i(t)(n)}function i(t){return n=>({types:t,input:n})}
|
package/dist/config/esm/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var
|
|
1
|
+
var N="input",L="input/date",O="input/email",D="input/number",w="input/password",M="input/tel",U="input/text",k="input/time",g=[N,L,O,D,w,M,U,k],A="textarea",m="radio",I="checkbox";var H="select",v="select/active",X="select/day",V="select/month",Y="select/timezone",j="select/year",h=[H,v,X,V,Y,j],S="chips",y="chips/day",R="chips/month";var a="http://luna.internal";function P(t){return t!==null&&Object.prototype.toString.call(t)==="[object Object]"}function s(t){return typeof t=="string"}function u(t){return s(t)?/{([^}]{1,200})}/.test(t):Array.isArray(t)?t.some(n=>u(n)):P(t)?Object.values(t).some(n=>u(n)):!1}var b={error:(...t)=>{f()&&!l()&&p().error("[Luna Form]",...t)},warn:(...t)=>{f()&&!l()&&p().warn("[Luna Form]",...t)},info:(...t)=>{f()&&!l()&&p().info("[Luna Form]",...t)}},f=()=>typeof p()<"u",l=()=>!0,p=()=>globalThis.console;function C(t){try{return t instanceof FormData?null:s(t)?t:JSON.stringify(t)}catch{return b.error("Failed to stringify body:",t),null}}var B=/(^|[\/?=&])(null|undefined)([\/?=&]|$)/;async function _(t){let[n,r]=F(t),o=t.body,e=W(t);if(o&&!T(r)){let d=C(o);d!==null&&(o=d,e=G(e))}let c=n.origin===a?n.toString().replace(a,""):n.toString(),E=await fetch(c,{body:q(r,o),cache:t.cache,headers:e,method:r}),x=await E.json();if(E.ok)return x;throw x}function F(t){let n=t.url?.trim();if(!n||!K(n))throw new Error(`Invalid URL: ${t.url}`);let r=new URL(n,a),o=$(t);return t.body&&T(o)&&Object.entries(t.body).filter(([,e])=>e!==void 0&&e!=="undefined").forEach(([e,c])=>{r.searchParams.append(e,String(c))}),[r,o]}function G(t){return{...t,"Content-Type":"application/json"}}function K(t){return!s(t)||u(t)?!1:!B.test(t)}function $(t){return t.method??"GET"}function W(t){return{Accept:"application/json",...t.headers??{}}}function T(t){return t.toUpperCase()==="GET"}function q(t,n){if(!T(t))return n}function ft(t){let n={alert:t.alert,env:t.env,fetcher:{provider:_,remotePatterns:t.fetcher?.remotePatterns},inputs:{},style:t.style};return n.validation=t.validation??{blur:!0,change:!0,showError:!0,submit:!0},t.inputs.forEach(({types:r,input:o})=>{(Array.isArray(r)?r:[r]).forEach(c=>{n.inputs[c]=o})}),n}var lt=i([I]),Tt=i([S,y,R]),Et=i(g),xt=i([m]),dt=i(h),gt=i([A]);function At(t,n){return i(t)(n)}function i(t){return n=>({types:t,input:n})}export{lt as defineCheckbox,Tt as defineChips,ft as defineConfig,At as defineCustomInput,Et as defineInput,xt as defineRadio,dt as defineSelect,gt as defineTextArea};
|
package/dist/server/cjs/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var se=Object.defineProperty;var go=Object.getOwnPropertyDescriptor;var po=Object.getOwnPropertyNames;var xo=Object.prototype.hasOwnProperty;var yo=(e,t)=>{for(var n in t)se(e,n,{get:t[n],enumerable:!0})},bo=(e,t,n,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of po(t))!xo.call(e,r)&&r!==n&&se(e,r,{get:()=>t[r],enumerable:!(o=go(t,r))||o.enumerable});return e};var To=e=>bo(se({},"__esModule",{value:!0}),e);var rr={};yo(rr,{Fallback:()=>fo,Form:()=>le});module.exports=To(rr);var De=require("react/jsx-runtime");function Pe(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,De.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var ce=require("react/jsx-runtime");function I(e){return(0,ce.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",className:`size-4 transition-transform duration-200 ${e.expanded?"rotate-90":""}`,children:(0,ce.jsx)("path",{fillRule:"evenodd",d:"M8.22 5.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.75.75 0 0 1-1.06-1.06L11.94 10 8.22 6.28a.75.75 0 0 1 0-1.06Z",clipRule:"evenodd"})})}var _e=require("react");var Oe=require("react"),Me=(0,Oe.createContext)(!1);var de=require("react/jsx-runtime");function _({children:e,visible:t}){return(0,de.jsx)(_e.Activity,{mode:t?"visible":"hidden",children:(0,de.jsx)(Me,{value:!0,children:e})})}var Y="input",Ve="input/date",$e="input/email",ze="input/number";var He="input/time";var Ge="textarea",Be="radio",Ue="checkbox",ue="list";var Ye="select",Xe="select/day",Ke="select/month",Ze="select/timezone",We="select/year";var qe="chips",Je="chips/day",Qe="chips/month",V="column",je="description",fe="fields",et="label",me="value",X="options",ge="email",tt="number",nt="password",ot="tel",$="text",rt="aria-errormessage",it="aria-invalid",lt="data-invalid",at="data-readonly",st="aria",ct="data",dt="max",ut="maxLength",ft="min",mt="minLength",E="$ref";var gt="type",pt={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};function c(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function g(e){return f(e)||typeof e=="number"||ho(e)}function f(e){return typeof e=="string"}function ho(e){return typeof e=="boolean"}function xt(e,t=me){if(e!=null){if(Array.isArray(e)&&e.every(g)||g(e))return e;if(c(e)){let n=Ro(e,t);if(g(n))return n}}}function Ro(e,t){let n=p(e,t);if(g(n))return n}function p(e,t){if(!t||!c(e))return null;let n=t.split(".").filter(r=>r!=="");if(n.length===0)return null;let o=e;for(let r of n)if(c(o)&&r in o)o=o[r];else return null;return o}function yt(e,t={description:je,label:et,value:me}){return e.map(n=>{if(c(n)){let o=p(n,t.label),r=p(n,t.value);if(g(o)&&g(r)){let i=p(n,t.description);return{label:`${o}`,value:`${r}`,...g(i)&&{description:`${i}`}}}}return n})}function bt(e=$){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==Y?n.trim().toLowerCase():$}var Co=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function pe(e,t={}){if(f(e))return Fo(e,t);if(Array.isArray(e))return e.map(n=>pe(n,t));if(c(e)){let n={};for(let o in e)n[o]=pe(e[o],t);return n}return e}function z(e,t={}){return xe(e)?pe(e,t):e}function xe(e){return f(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>xe(t)):c(e)?Object.values(e).some(t=>xe(t)):!1}function Fo(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,o)=>{let r=o.includes(".")?p(t,o):t[o];return g(r)?String(r):n})}function Tt(e,t){if(!f(e)||!e||e.trim().length===0)return null;let n,o=0,r=!1,i=[];for(;(n=Co.exec(e))!==null;){let[l,a,u]=n,m=n.index;r=!0,m>o&&i.push(e.substring(o,m));let M=t?t(m,u,a):l;i.push(M),o=m+l.length}return r?(o<e.length&&i.push(e.substring(o)),i):e}var ht=e=>d(Xe)(e),Rt=e=>d(Ke)(e),Ct=e=>d(We)(e),Ft=e=>d(Ze)(e),Nt=e=>d(Je)(e),St=e=>d(Qe)(e),At=d(Ve),ye=d(He),x=d(Ue),k=d(qe),S=d(Be),vt=d(Y),R=d(Ye),It=d(Ge),Et=d($,ge,nt,ot),Rr=d($e,ge),kt=d(ze,tt);function Lt(e){return S(e)||x(e)}function wt(e){return e.type===ue}function L(e){return e.type===V}function K(e){return e.type!==V&&e.type!==ue}function be(e){return R(e)||S(e)||k(e)}function H(e){return e!=null&&e!==""}function d(...e){return t=>{let n=f(t.type)?t.type:void 0;return n?e.some(o=>n===o||n?.startsWith(`${o}/`)):!1}}function Pt(e,t={}){if(R(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&c(n))return[n]}}function Dt(e){return S(e)||x(e)?!0:e.advanced?.horizontal??!1}function Ot(e){return x(e)?e.advanced?.reverse!==!1:!1}function Mt(e,t){let n=e.readonly??!1;return t||n}function _t(e){if(S(e)||k(e)||R(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||c(t)&&!(E in t))return t}}var b=require("date-fns"),No=/^\d+$/,zt=new Date(2e3,0,1),So=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[];function Te(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function he(){return Array.from({length:7},(e,t)=>({value:t.toString(),label:new Date(2e3,0,2+t).toLocaleString("default",{weekday:"long"})}))}function Ht(e,t){return t>=e?Array.from({length:t-e+1},(n,o)=>{let r=e+o;return{value:r.toString(),label:r.toString()}}):[]}function Re(){return new Date().getFullYear()}function Ao(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function vo(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return pt[n]??"Other"}function Io(e,t){return(e.find(o=>o.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function Vt(e,t){let n=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"longOffset"}).formatToParts(t),o=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=Io(o,e);return{offset:i,longName:l}}function $t(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function Gt(){let e=new Date,t=Ao(),n=new Map,o=$t(t),{offset:r,longName:i}=Vt(t,e),l={value:t,label:`${o} - ${i} (${r})`};for(let u of So()){if(u===t)continue;let m=$t(u),{offset:M,longName:mo}=Vt(u,e),Le={value:u,label:`${m} - ${mo} (${M})`},ae=vo(u);if(ae==="Other")continue;let we=n.get(ae);we?we.push(Le):n.set(ae,[Le])}for(let u of n.values())u.sort((m,M)=>m.label.localeCompare(M.label));let a=Array.from(n.entries()).sort(([u],[m])=>u.localeCompare(m)).map(([u,m])=>({label:u,items:m}));return[{label:"Suggested",items:[l]},...a]}function Ce(e,t){if(typeof e=="number")return e;let n=t??Re(),o=e.trim().toLowerCase();if(o.startsWith("current")){let r=o.match(/^current([+-])(\d+)$/);if(r){let[,i,l]=r,a=parseInt(l,10);if(!isNaN(a))return i==="+"?n+a:n-a}return n}return No.test(o)?parseInt(o,10):n}function Bt(e,t){if(!e)return"";try{let n=(0,b.parse)(e,t,zt);return(0,b.isValid)(n)?(0,b.format)(n,"yyyy-MM-dd"):""}catch{return""}}function Ut(e,t){if(!e)return"";try{let n=(0,b.parse)(e,t,zt);return(0,b.isValid)(n)?(0,b.format)(n,"HH:mm:ss"):""}catch{return""}}function Fe(e){return e.advanced?.format??"HH:mm"}function Yt(e){return e.advanced?.format??"MMMM d, yyyy"}var Z=Re();function Eo(e){if(k(e))return ko(e)}function ko(e){if(Nt(e))return he();if(St(e))return Te()}function Lo(e){if(R(e))return wo(e)}function wo(e){if(ht(e))return he();if(Rt(e))return Te();if(Ct(e)){let t=e.advanced?.length?.min??Z,n=e.advanced?.length?.max??Z+5;return Ht(Ce(t,Z),Ce(n,Z))}if(Ft(e))return Gt()}function Xt(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return vt(e)?{...n,...Po(e)}:R(e)?{...n,...Kt(e,Lo)}:It(e)?{...n,...Oo(e)}:k(e)?{...n,...Do(e)}:n}function Po(e){let t=bt(e.type),n={...e,type:t};return{..._o(e),...Zt(e),...Mo(n),...Et(n)?Wt(n):{},type:t}}function Kt(e,t){let n=t(e);return n?{options:n}:{}}function Do(e){let t=Kt(e,Eo),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function Oo(e){return{...Zt(e),...Wt(e)}}function Zt(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Mo(e){return kt(e)?Vo(e):{}}function _o(e){if(ye(e)){let t=Fe(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function Wt(e){return qt(e,{min:mt,max:ut})}function Vo(e){return qt(e,{min:ft,max:dt})}function qt(e,t){let n={},o=e.advanced?.length;return o&&(o.min!==void 0&&(n[t.min]=o.min),o.max!==void 0&&(n[t.max]=o.max)),n}function Jt(e,t){let n=_t(e);return n||Pt(e,t)}function $o(e,t){let n=c(t)&&e.name in t?t[e.name]:t,o=xt(n,e.advanced?.entity);return ye(e)&&H(o)?zo(e,o):At(e)&&H(o)?Uo(e,o):o}function zo(e,t){let n=Fe(e);return f(t)?Ut(t,n):t}function Ho(e,t,n){return be(e)&&Array.isArray(n)?{...t,[X]:n}:t}function Go(e,t,n){if(e.required&&!H(n)&&R(e)&&e.advanced?.preselected!==!1&&X in t){let o=t[X];if(Array.isArray(o)&&o.length===1)return o[0]}return n}function Bo(e,t){return be(e)&&Array.isArray(t)?yt(t,e.advanced?.options):t}function Qt(e,t,n,o){let r=$o(e,o),i=Array.isArray(n)?Bo(e,n):n,l=Ho(e,t,i),a=Go(e,l,r);return{commonPropsWithOptions:l,defaultValue:a}}function jt(e,t){return x(e)?{defaultChecked:H(t)}:{defaultValue:t}}function Uo(e,t){let n=Yt(e);return f(t)?Bt(t,n):t}var Yo=/^#\/definition\//;function q(e=[],t){let n=W(e,t);return Array.isArray(n)?n.filter(Ko).sort((o,r)=>en(o)-en(r)):[]}function W(e,t,n=new Map,o=new WeakSet){if(!Xo(t)||!e||typeof e!="object")return e;if(n.has(e))return n.get(e);if(o.has(e))return e;if(o.add(e),Array.isArray(e))return e.map(i=>W(i,t,n,o));if(E in e&&f(e[E])){let i=e[E].replace(Yo,""),l=p(t,i);return l!==null?W(l,t,n,o):e}let r={};for(let[i,l]of Object.entries(e))r[i]=W(l,t,n,o);return o.delete(e),n.set(e,r),r}function tn(e){return Object.entries(e??{})}function en(e){return e.order??Number.MAX_VALUE}function Xo(e){return e!==void 0&&c(e)&&Object.keys(e).length>0}function Ko(e){return gt in e?!0:Array.isArray(e[fe])?e[fe].length>0:!0}function nn(e,t){let n={};for(let[o,r]of tn(t))n[`${e}-${o}`]=r;return n}function Zo(e){return nn(st,e)}function Wo(e){return nn(ct,e)}function on(e,t){let n=Zo(e.advanced?.aria);return t&&t.length>0&&(n[it]="true",n[rt]=`${e.name}-error`),n}function rn(e){return Wo(e.advanced?.data)}var ln={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},an={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function sn(e,t=2){return ln[e&&e in ln?e:t]}function cn(e){if(e&&e in an)return an[e]}function qo(e,t){let n=e.advanced?.length?.min??1;if(t){let o=p(t,e.name);if(Array.isArray(o))return Math.max(o.length,n)}return Math.max(n,0)}function dn(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===V}function un(e,t){let n=qo(e,t);return Array.from({length:n},(o,r)=>r)}function fn(e){return e.label??e.name}function A(e,t){return e?t?t[e]??e:e:""}function J(e,t){return{...e,...t}}var mn=require("react/jsx-runtime");function T(e){return Tt(e,(t,n,o)=>(0,mn.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:o},`${n}-${t}`))}var Q=require("react"),y=require("react/jsx-runtime");function gn(e){let{fields:t=[]}=e.section,[n,o]=(0,Q.useState)(!1),r=(0,Q.useCallback)(()=>o(i=>!i),[]);return(0,y.jsxs)("fieldset",{"data-slot":"field-set","data-advanced":"true","data-expanded":n,"data-empty":t.length===0,className:"flex flex-col",id:e.section.id?.toString(),children:[(0,y.jsx)("legend",{children:(0,y.jsxs)("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-slate-600 dark:text-slate-400",onClick:r,type:"button",children:[(0,y.jsx)(I,{expanded:n}),(0,y.jsx)("span",{children:T(e.section.title)})]})}),(0,y.jsx)(_,{visible:n,children:(0,y.jsxs)("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-slate-300 pl-4 dark:border-slate-600","data-slot":"field-set-content",children:[e.section.description&&(0,y.jsx)("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:T(e.section.description)}),e.group]})})]})}var C=require("react/jsx-runtime");function pn(e){let t=(0,C.jsxs)("div",{className:"flex flex-col",children:[e.title&&(0,C.jsx)("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:T(e.title)}),e.description&&(0,C.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:T(e.description)})]});return e.step?(0,C.jsxs)("div",{className:"flex flex-row items-start gap-4",children:[(0,C.jsx)("div",{className:"bg-primary text-primary-foreground flex h-6 w-6 shrink-0 items-center justify-center rounded-full",children:(0,C.jsx)("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}var ee=require("react/jsx-runtime");function j(e){return(0,ee.jsxs)("fieldset",{className:"flex flex-col data-[empty=false]:gap-6","data-empty":e.empty,"data-slot":"field-set",id:e.id,children:[(0,ee.jsx)(pn,{description:e.description,step:e.step,title:e.title}),e.children]})}var xn=require("react/jsx-runtime");function F(e){return(0,xn.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 te=require("react/jsx-runtime");function yn(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:o}=J(e.style,{compact:e.section.advanced?.compact}),r=(0,te.jsx)(F,{compact:o,children:e.children});return!e.section.title&&!e.section.description?r:e.section.advanced?.collapsible?(0,te.jsx)(gn,{section:e.section,group:r}):(0,te.jsx)(j,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),step:n,title:e.section.title,children:r})}var Ne=require("react/jsx-runtime");function bn(){return(0,Ne.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,Ne.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}var Fn=require("jotai");var w=require("jotai"),Tn=require("jotai-family"),Se=require("fast-equals");function Jo(e,t){let{[t]:n,...o}=e;return o}function Qo(e){return(0,Tn.atomFamily)(t=>(0,w.atom)(n=>n(e)[t]??void 0,(n,o,r)=>{let i=n(e);if(r!=null){let l=i[t];(0,Se.deepEqual)(l,r)||o(e,{...i,[t]:r})}else t in i&&o(e,Jo(i,t))}))}function jo(e){return(0,w.atom)(null,(t,n)=>{let o=t(e);o&&Object.keys(o).length>0&&n(e,{})})}function er(e){return(0,w.atom)(null,(t,n,o)=>{let i={...t(e)},l=!1;for(let a of o)a in i&&(delete i[a],l=!0);l&&n(e,i)})}function tr(e){return(0,w.atom)(null,(t,n,o)=>{let r=t(e);(0,Se.deepEqual)(r,o)||n(e,o)})}function hn(e={}){let t=(0,w.atom)(e);return{atom:t,clearAll:jo(t),clear:er(t),bulkReport:tr(t),report:Qo(t)}}var Rn=hn(),Cn=Rn.atom,pi=Rn.report;function nr(e,t){return e.fields.every(n=>Nn(n,t))}function Nn(e,t){return t[e.name]?.hidden??e.hidden??!1}function or(e,t){return L(e)?nr(e,t):Nn(e,t)}function Sn(e){let t=(0,Fn.useAtomValue)(Cn);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(o=>or(o,t))?null:e.children}var h=require("react/jsx-runtime");function An(e){let t=q(e.sections,e.definition);return(0,h.jsx)("div",{className:"h-full w-full",children:(0,h.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,h.jsxs)(F,{children:[t.map((n,o)=>(0,h.jsxs)(Sn,{fields:n.fields??[],children:[(0,h.jsx)(yn,{advanced:e.advanced,section:n,step:o+1,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.advanced?.separator&&(0,h.jsx)(bn,{})]},`key-${n.id}-${o}`)),e.control&&(0,h.jsx)(Pe,{isPending:e.isPending,children:e.control})]})})})}var In=require("react/jsx-runtime");function vn(e){return(0,In.jsx)("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}var En=require("react"),P=require("react/jsx-runtime");function D(e){let t={context:e.context,env:e.config?.env},[n,o]=(0,En.useState)(()=>c(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),r=()=>o(a=>!a),i=c(e.text)&&f(e.text.title)?T(A(z(e.text.title,t),e.translations)):void 0,l=T(A(z(f(e.text)?e.text:e.text?.message,t),e.translations));return l?(0,P.jsxs)("div",{className:"flex flex-col gap-2",children:[i&&(0,P.jsxs)("button",{className:"flex items-center gap-1 text-left text-xs font-medium text-slate-700 hover:text-slate-900 dark:text-slate-300 dark:hover:text-slate-100",onClick:r,type:"button",children:[i,(0,P.jsx)(I,{expanded:n})]}),n&&(0,P.jsx)(vn,{children:l})]}):null}var kn=require("tailwind-merge"),ne=require("react/jsx-runtime");function Ln(e){let t=e.style?.showOptionalLabel??!0,n=S(e.field)||x(e.field);return(0,ne.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,kn.twMerge)("flex w-fit items-center gap-2 text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,children:[e.children,t&&!e.field.required&&(0,ne.jsx)("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:A("(Optional)",e.translations)})]})}var G=require("react/jsx-runtime");function wn(e){let t={context:e.context,env:e.config?.env},n=z(e.field.label,t);return(0,G.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,G.jsx)(Ln,{field:e.field,style:e.config?.style,translations:e.translations,children:A(n,e.translations)}),e.horizontal===!0&&(0,G.jsx)(D,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}var v=require("react/jsx-runtime");function Pn(e){return(0,v.jsxs)(v.Fragment,{children:[e.field.name&&e.field.label&&(0,v.jsx)(wn,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&(0,v.jsx)(D,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}function Dn(e,t){return e?t(e):null}var Ae=require("react/jsx-runtime");function On(e){let t=Jt(e.field,e.value),{commonPropsWithOptions:n,defaultValue:o}=Qt(e.field,e.commonProps,t,e.value),r=jt(e.field,o);return Dn(e.config.inputs[e.field.type],i=>(0,Ae.jsx)(Pn,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:(0,Ae.jsx)(i,{...e.ariaAttributes,...n,...e.dataAttributes,...r})}))}var ve=require("react/jsx-runtime");function Mn(e){return!e.errors||e.errors.length===0?null:(0,ve.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,ve.jsx)("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var _n=require("tailwind-merge"),Vn=require("react/jsx-runtime");function oe(e){let t=e.errors&&e.errors.length>0;return(0,Vn.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[lt]:"true"},...e.disabled&&{[at]:"true"},"data-orientation":e.orientation,className:(0,_n.twMerge)("group flex w-full flex-col items-center data-[invalid=true]:text-red-600 data-[invalid=true]:dark:text-red-500","data-[clickable=true]:items-start",e.isCheckbox&&(e.isReversed?"flex-row-reverse!":"flex-row!"),"data-[clickable=true]:has-[>[data-slot=field-content]]:[&>:first-child]:mt-px",e.className),children:e.children})}var $n=require("tailwind-merge"),Hn=require("react/jsx-runtime");function zn(e){return(0,Hn.jsx)(oe,{...e,orientation:"vertical",className:(0,$n.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var Gn=require("tailwind-merge"),Un=require("react/jsx-runtime");function Bn(e){return(0,Un.jsx)(oe,{...e,orientation:"horizontal",className:(0,Gn.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 Ie=require("react/jsx-runtime");function Yn(e){let t=Lt(e.field),n=x(e.field),o=Ot(e.field);return e.horizontal?(0,Ie.jsx)(Bn,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:o,isClickable:t,children:e.children}):(0,Ie.jsx)(zn,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:o,isClickable:t,children:e.children})}function Xn(e){if(!e.field.type)return null;let t=Xt(e.field,e.disabled),n=rn(e.field),o=on(e.field,e.errors),r={...e.field,disabled:t.disabled};return e.children({ariaAttributes:o,commonProps:t,dataAttributes:n,field:r,horizontal:e.horizontal})}var Kn=require("tailwind-merge"),O=require("react/jsx-runtime");function Zn(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:o}=J(e.style,{horizontal:Dt(e.field)}),r=Mt(e.field,e.disabled);return(0,O.jsxs)("div",{className:(0,Kn.twMerge)("flex flex-col gap-3",cn(t)),children:[(0,O.jsx)(Yn,{disabled:r,errors:n,field:e.field,horizontal:o,children:(0,O.jsx)(Xn,{disabled:r,errors:n,field:e.field,horizontal:o,children:e.children})}),(0,O.jsx)(Mn,{errors:n,name:e.field.name})]})}var re=require("tailwind-merge"),Wn=require("react"),s=require("react/jsx-runtime");function qn(e){let[t,n]=(0,Wn.useState)(e.collapsible?!e.collapsed:!0);function o(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function r(){n(u=>!u)}let i=e.canRemove&&e.onRemove!=null&&(0,s.jsx)("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:(0,re.twMerge)("flex size-6 items-center justify-center rounded text-xl leading-none text-slate-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500 dark:hover:text-red-400"),onClick:o,type:"button",children:(0,s.jsx)("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),l=(0,s.jsxs)("span",{className:"text-sm font-medium text-slate-300 group-hover:underline dark:text-slate-400",children:[e.label," ",e.index+1,!t&&e.preview&&(0,s.jsx)("div",{className:"flex items-center gap-2 overflow-hidden text-ellipsis whitespace-nowrap text-slate-400 dark:text-slate-500",children:e.preview})]}),a=(e.isMultiField||e.collapsible)&&(0,s.jsxs)("div",{className:(0,re.twMerge)("flex items-center justify-between gap-2",e.isMultiField&&"mb-3"),children:[e.collapsible?(0,s.jsxs)("button",{"aria-expanded":t,"aria-label":`${t?"Collapse":"Expand"} ${e.label} ${e.index+1}`,className:(0,re.twMerge)("group flex grow items-center gap-2 rounded p-1 text-left text-slate-400","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500"),onClick:r,type:"button",children:[(0,s.jsx)(I,{expanded:t}),l]}):l,i]});return e.isMultiField?(0,s.jsxs)("div",{"data-slot":"list-item-card",className:"rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[a,(0,s.jsx)(_,{visible:t,children:(0,s.jsx)(F,{children:e.children})})]}):e.collapsible?(0,s.jsxs)("div",{className:"flex flex-col gap-2",children:[a,(0,s.jsx)(_,{visible:t,children:(0,s.jsx)(F,{children:e.children})})]}):(0,s.jsxs)("div",{className:"flex items-start gap-2",children:[(0,s.jsx)("div",{className:"flex grow flex-col",children:(0,s.jsx)(F,{children:e.children})}),i&&(0,s.jsx)("div",{className:"shrink-0",children:i})]})}var Qn=require("react/jsx-runtime");function Jn(e){let t=fn(e.field),n=dn(e.field);return un(e.field,e.value).map(o=>(0,Qn.jsx)(qn,{collapsed:e.field.advanced?.collapsed,collapsible:e.field.advanced?.collapsible,index:o,isMultiField:n,label:t,children:e.children(o)},o))}var eo=require("react/jsx-runtime");function jn(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return(0,eo.jsx)(j,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}var Ee=require("react/jsx-runtime");function to({children:e,field:t,value:n}){return(0,Ee.jsx)(jn,{field:t,children:(0,Ee.jsx)(Jn,{field:t,value:n,children:e})})}var no=require("tailwind-merge");var B=require("react/jsx-runtime");function oo(e){let t=sn(e.column?.advanced?.cols);return(0,B.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[(0,B.jsx)("div",{className:(0,no.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&(0,B.jsx)(D,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}var lo=require("react");var io=require("react/jsx-runtime");function ro(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>K(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:L(n)?{...n,fields:n.fields.map(o=>({...o,name:`${e.field.name}.${e.index}.${o.name}`}))}:n):[];return(0,io.jsx)(U,{children:e.children,components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:t,style:e.style,translations:e.translations,value:e.value})}var N=require("react/jsx-runtime");function U(e){let{field:t,list:n}=e.components;return q(e.fields).map((o,r)=>(0,N.jsxs)(lo.Fragment,{children:[L(o)&&(0,N.jsx)(oo,{column:o,config:e.config,context:e.context,translations:e.translations,children:(0,N.jsx)(U,{...e,fields:o.fields})}),K(o)&&(0,N.jsx)(t,{disabled:e.disabled,field:o,style:e.style,children:e.children}),wt(o)&&(0,N.jsx)(n,{field:o,value:e.value,children:i=>(0,N.jsx)(ro,{children:e.children,components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:o,index:i,style:e.style,translations:e.translations,value:e.value})})]},r))}var so=require("react/jsx-runtime");function ao(e){return n=>(0,so.jsx)(U,{...n,components:e})}var co=ao({field:Zn,list:to});var ie=require("react/jsx-runtime");function le(e){let t=e.translations?.[e.lang??""];return(0,ie.jsx)(An,{advanced:e.advanced,config:e.config,control:e.children,definition:e.definition,readOnly:e.readOnly,sections:e.sections,children:({disabled:n,fields:o})=>(0,ie.jsx)(co,{config:e.config,context:e.context,disabled:n,fields:o,style:e.config.style,translations:t,value:e.value,children:r=>(0,ie.jsx)(On,{...r,config:e.config,context:e.context,translations:t,value:e.value})})})}var uo=require("react");var ke=require("react/jsx-runtime");function fo(e){return(0,ke.jsx)(uo.Suspense,{fallback:(0,ke.jsx)(le,{config:e.config,sections:e.sections,readOnly:!0}),children:e.children})}
|
|
1
|
+
"use strict";var se=Object.defineProperty;var xo=Object.getOwnPropertyDescriptor;var yo=Object.getOwnPropertyNames;var bo=Object.prototype.hasOwnProperty;var To=(e,t)=>{for(var n in t)se(e,n,{get:t[n],enumerable:!0})},ho=(e,t,n,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of yo(t))!bo.call(e,r)&&r!==n&&se(e,r,{get:()=>t[r],enumerable:!(o=xo(t,r))||o.enumerable});return e};var Ro=e=>ho(se({},"__esModule",{value:!0}),e);var lr={};To(lr,{Fallback:()=>go,Form:()=>le});module.exports=Ro(lr);var De=require("react/jsx-runtime");function Pe(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,De.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var ce=require("react/jsx-runtime");function I(e){return(0,ce.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",className:`size-4 transition-transform duration-200 ${e.expanded?"rotate-90":""}`,children:(0,ce.jsx)("path",{fillRule:"evenodd",d:"M8.22 5.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.75.75 0 0 1-1.06-1.06L11.94 10 8.22 6.28a.75.75 0 0 1 0-1.06Z",clipRule:"evenodd"})})}var _e=require("react");var Oe=require("react"),Me=(0,Oe.createContext)(!1);var de=require("react/jsx-runtime");function _({children:e,visible:t}){return(0,de.jsx)(_e.Activity,{mode:t?"visible":"hidden",children:(0,de.jsx)(Me,{value:!0,children:e})})}var X="input",Ve="input/date",$e="input/email",ze="input/number";var He="input/time";var Ge="textarea",Be="radio",Ue="checkbox",ue="list";var Ye="select",Xe="select/active",Ke="select/day",Ze="select/month",We="select/timezone",qe="select/year";var Je="chips",Qe="chips/day",je="chips/month",V="column",et="description",fe="fields",tt="label",me="value",K="options",ge="email",nt="number",ot="password",rt="tel",$="text",it="aria-errormessage",lt="aria-invalid",at="data-invalid",st="data-readonly",ct="aria",dt="data",ut="max",ft="maxLength",mt="min",gt="minLength",E="$ref";var pt="type",xt={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};function c(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function g(e){return f(e)||typeof e=="number"||Co(e)}function f(e){return typeof e=="string"}function Co(e){return typeof e=="boolean"}function yt(e,t=me){if(e!=null){if(Array.isArray(e)&&e.every(g)||g(e))return e;if(c(e)){let n=No(e,t);if(g(n))return n}}}function No(e,t){let n=p(e,t);if(g(n))return n}function p(e,t){if(!t||!c(e))return null;let n=t.split(".").filter(r=>r!=="");if(n.length===0)return null;let o=e;for(let r of n)if(c(o)&&r in o)o=o[r];else return null;return o}function bt(e,t={description:et,label:tt,value:me}){return e.map(n=>{if(c(n)){let o=p(n,t.label),r=p(n,t.value);if(g(o)&&g(r)){let i=p(n,t.description);return{label:`${o}`,value:`${r}`,...g(i)&&{description:`${i}`}}}}return n})}function Tt(e=$){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==X?n.trim().toLowerCase():$}var Fo=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function pe(e,t={}){if(f(e))return So(e,t);if(Array.isArray(e))return e.map(n=>pe(n,t));if(c(e)){let n={};for(let o in e)n[o]=pe(e[o],t);return n}return e}function z(e,t={}){return xe(e)?pe(e,t):e}function xe(e){return f(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>xe(t)):c(e)?Object.values(e).some(t=>xe(t)):!1}function So(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,o)=>{let r=o.includes(".")?p(t,o):t[o];return g(r)?String(r):n})}function ht(e,t){if(!f(e)||!e||e.trim().length===0)return null;let n,o=0,r=!1,i=[];for(;(n=Fo.exec(e))!==null;){let[l,s,u]=n,m=n.index;r=!0,m>o&&i.push(e.substring(o,m));let M=t?t(m,u,s):l;i.push(M),o=m+l.length}return r?(o<e.length&&i.push(e.substring(o)),i):e}var Rt=e=>d(Xe)(e),Ct=e=>d(Ke)(e),Nt=e=>d(Ze)(e),Ft=e=>d(qe)(e),St=e=>d(We)(e),vt=e=>d(Qe)(e),At=e=>d(je)(e),It=d(Ve),ye=d(He),x=d(Ue),w=d(Je),S=d(Be),Et=d(X),R=d(Ye),wt=d(Ge),kt=d($,ge,ot,rt),Nr=d($e,ge),Lt=d(ze,nt);function Pt(e){return S(e)||x(e)}function Dt(e){return e.type===ue}function k(e){return e.type===V}function Z(e){return e.type!==V&&e.type!==ue}function be(e){return R(e)||S(e)||w(e)}function H(e){return e!=null&&e!==""}function d(...e){return t=>{let n=f(t.type)?t.type:void 0;return n?e.some(o=>n===o||n?.startsWith(`${o}/`)):!1}}function Ot(e,t={}){if(R(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&c(n))return[n]}}function Mt(e){return S(e)||x(e)?!0:e.advanced?.horizontal??!1}function _t(e){return x(e)?e.advanced?.reverse!==!1:!1}function Vt(e,t){let n=e.readonly??!1;return t||n}function $t(e){if(S(e)||w(e)||R(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||c(t)&&!(E in t))return t}}var b=require("date-fns"),vo=/^\d+$/,Gt=new Date(2e3,0,1),Ao=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[];function Te(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function he(){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,o)=>{let r=e+o;return{value:r.toString(),label:r.toString()}}):[]}function Re(){return new Date().getFullYear()}function Io(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function Eo(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return xt[n]??"Other"}function wo(e,t){return(e.find(o=>o.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function zt(e,t){let n=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"longOffset"}).formatToParts(t),o=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"long"}).formatToParts(t),i=(n.find(s=>s.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),l=wo(o,e);return{offset:i,longName:l}}function Ht(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function Ut(){let e=new Date,t=Io(),n=new Map,o=Ht(t),{offset:r,longName:i}=zt(t,e),l={value:t,label:`${o} - ${i} (${r})`};for(let u of Ao()){if(u===t)continue;let m=Ht(u),{offset:M,longName:po}=zt(u,e),ke={value:u,label:`${m} - ${po} (${M})`},ae=Eo(u);if(ae==="Other")continue;let Le=n.get(ae);Le?Le.push(ke):n.set(ae,[ke])}for(let u of n.values())u.sort((m,M)=>m.label.localeCompare(M.label));let s=Array.from(n.entries()).sort(([u],[m])=>u.localeCompare(m)).map(([u,m])=>({label:u,items:m}));return[{label:"Suggested",items:[l]},...s]}function Ce(e,t){if(typeof e=="number")return e;let n=t??Re(),o=e.trim().toLowerCase();if(o.startsWith("current")){let r=o.match(/^current([+-])(\d+)$/);if(r){let[,i,l]=r,s=parseInt(l,10);if(!isNaN(s))return i==="+"?n+s:n-s}return n}return vo.test(o)?parseInt(o,10):n}function Yt(e,t){if(!e)return"";try{let n=(0,b.parse)(e,t,Gt);return(0,b.isValid)(n)?(0,b.format)(n,"yyyy-MM-dd"):""}catch{return""}}function Xt(e,t){if(!e)return"";try{let n=(0,b.parse)(e,t,Gt);return(0,b.isValid)(n)?(0,b.format)(n,"HH:mm:ss"):""}catch{return""}}function Ne(e){return e.advanced?.format??"HH:mm"}function Kt(e){return e.advanced?.format??"MMMM d, yyyy"}var W=Re();function ko(e){if(w(e))return Lo(e)}function Lo(e){if(vt(e))return he();if(At(e))return Te()}function Po(e){if(R(e))return Do(e)}function Do(e){if(Ct(e))return he();if(Nt(e))return Te();if(Ft(e)){let t=e.advanced?.length?.min??W,n=e.advanced?.length?.max??W+5;return Bt(Ce(t,W),Ce(n,W))}if(St(e))return Ut();if(Rt(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 Et(e)?{...n,...Oo(e)}:R(e)?{...n,...Wt(e,Po)}:wt(e)?{...n,..._o(e)}:w(e)?{...n,...Mo(e)}:n}function Oo(e){let t=Tt(e.type),n={...e,type:t};return{...$o(e),...qt(e),...Vo(n),...kt(n)?Jt(n):{},type:t}}function Wt(e,t){let n=t(e);return n?{options:n}:{}}function Mo(e){let t=Wt(e,ko),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function _o(e){return{...qt(e),...Jt(e)}}function qt(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Vo(e){return Lt(e)?zo(e):{}}function $o(e){if(ye(e)){let t=Ne(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function Jt(e){return Qt(e,{min:gt,max:ft})}function zo(e){return Qt(e,{min:mt,max:ut})}function Qt(e,t){let n={},o=e.advanced?.length;return o&&(o.min!==void 0&&(n[t.min]=o.min),o.max!==void 0&&(n[t.max]=o.max)),n}function jt(e,t){let n=$t(e);return n||Ot(e,t)}function Ho(e,t){let n=c(t)&&e.name in t?t[e.name]:t,o=yt(n,e.advanced?.entity);return ye(e)&&H(o)?Go(e,o):It(e)&&H(o)?Xo(e,o):o}function Go(e,t){let n=Ne(e);return f(t)?Xt(t,n):t}function Bo(e,t,n){return be(e)&&Array.isArray(n)?{...t,[K]:n}:t}function Uo(e,t,n){if(e.required&&!H(n)&&R(e)&&e.advanced?.preselected!==!1&&K in t){let o=t[K];if(Array.isArray(o)&&o.length===1)return o[0]}return n}function Yo(e,t){return be(e)&&Array.isArray(t)?bt(t,e.advanced?.options):t}function en(e,t,n,o){let r=Ho(e,o),i=Array.isArray(n)?Yo(e,n):n,l=Bo(e,t,i),s=Uo(e,l,r);return{commonPropsWithOptions:l,defaultValue:s}}function tn(e,t){return x(e)?{defaultChecked:H(t)}:{defaultValue:t}}function Xo(e,t){let n=Kt(e);return f(t)?Yt(t,n):t}var Ko=/^#\/definition\//;function J(e=[],t){let n=q(e,t);return Array.isArray(n)?n.filter(Wo).sort((o,r)=>nn(o)-nn(r)):[]}function q(e,t,n=new Map,o=new WeakSet){if(!Zo(t)||!e||typeof e!="object")return e;if(n.has(e))return n.get(e);if(o.has(e))return e;if(o.add(e),Array.isArray(e))return e.map(i=>q(i,t,n,o));if(E in e&&f(e[E])){let i=e[E].replace(Ko,""),l=p(t,i);return l!==null?q(l,t,n,o):e}let r={};for(let[i,l]of Object.entries(e))r[i]=q(l,t,n,o);return o.delete(e),n.set(e,r),r}function on(e){return Object.entries(e??{})}function nn(e){return e.order??Number.MAX_VALUE}function Zo(e){return e!==void 0&&c(e)&&Object.keys(e).length>0}function Wo(e){return pt in e?!0:Array.isArray(e[fe])?e[fe].length>0:!0}function rn(e,t){let n={};for(let[o,r]of on(t))n[`${e}-${o}`]=r;return n}function qo(e){return rn(ct,e)}function Jo(e){return rn(dt,e)}function ln(e,t){let n=qo(e.advanced?.aria);return t&&t.length>0&&(n[lt]="true",n[it]=`${e.name}-error`),n}function an(e){return Jo(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 Qo(e,t){let n=e.advanced?.length?.min??1;if(t){let o=p(t,e.name);if(Array.isArray(o))return Math.max(o.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===V}function mn(e,t){let n=Qo(e,t);return Array.from({length:n},(o,r)=>r)}function gn(e){return e.label??e.name}function v(e,t){return e?t?t[e]??e:e:""}function Q(e,t){return{...e,...t}}var pn=require("react/jsx-runtime");function T(e){return ht(e,(t,n,o)=>(0,pn.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:o},`${n}-${t}`))}var j=require("react"),y=require("react/jsx-runtime");function xn(e){let{fields:t=[]}=e.section,[n,o]=(0,j.useState)(!1),r=(0,j.useCallback)(()=>o(i=>!i),[]);return(0,y.jsxs)("fieldset",{"data-slot":"field-set","data-advanced":"true","data-expanded":n,"data-empty":t.length===0,className:"flex flex-col",id:e.section.id?.toString(),children:[(0,y.jsx)("legend",{children:(0,y.jsxs)("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-slate-600 dark:text-slate-400",onClick:r,type:"button",children:[(0,y.jsx)(I,{expanded:n}),(0,y.jsx)("span",{children:T(e.section.title)})]})}),(0,y.jsx)(_,{visible:n,children:(0,y.jsxs)("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-slate-300 pl-4 dark:border-slate-600","data-slot":"field-set-content",children:[e.section.description&&(0,y.jsx)("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:T(e.section.description)}),e.group]})})]})}var C=require("react/jsx-runtime");function yn(e){let t=(0,C.jsxs)("div",{className:"flex flex-col",children:[e.title&&(0,C.jsx)("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:T(e.title)}),e.description&&(0,C.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:T(e.description)})]});return e.step?(0,C.jsxs)("div",{className:"flex flex-row items-start gap-4",children:[(0,C.jsx)("div",{className:"bg-primary text-primary-foreground flex h-6 w-6 shrink-0 items-center justify-center rounded-full",children:(0,C.jsx)("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}var G=require("react/jsx-runtime");function ee(e){return(0,G.jsxs)("fieldset",{className:"flex w-full min-w-0 flex-col data-[empty=false]:gap-6","data-empty":e.empty,"data-slot":"field-set",id:e.id,children:[(0,G.jsx)(yn,{description:e.description,step:e.step,title:e.title}),(0,G.jsx)("div",{className:"w-full min-w-0",children:e.children})]})}var bn=require("react/jsx-runtime");function N(e){return(0,bn.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 te=require("react/jsx-runtime");function Tn(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:o}=Q(e.style,{compact:e.section.advanced?.compact}),r=(0,te.jsx)(N,{compact:o,children:e.children});return!e.section.title&&!e.section.description?r:e.section.advanced?.collapsible?(0,te.jsx)(xn,{section:e.section,group:r}):(0,te.jsx)(ee,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),step:n,title:e.section.title,children:r})}var Fe=require("react/jsx-runtime");function hn(){return(0,Fe.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,Fe.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}var Sn=require("jotai");var L=require("jotai"),Rn=require("jotai-family"),Se=require("fast-equals");function jo(e,t){let{[t]:n,...o}=e;return o}function er(e){return(0,Rn.atomFamily)(t=>(0,L.atom)(n=>n(e)[t]??void 0,(n,o,r)=>{let i=n(e);if(r!=null){let l=i[t];(0,Se.deepEqual)(l,r)||o(e,{...i,[t]:r})}else t in i&&o(e,jo(i,t))}))}function tr(e){return(0,L.atom)(null,(t,n)=>{let o=t(e);o&&Object.keys(o).length>0&&n(e,{})})}function nr(e){return(0,L.atom)(null,(t,n,o)=>{let i={...t(e)},l=!1;for(let s of o)s in i&&(delete i[s],l=!0);l&&n(e,i)})}function or(e){return(0,L.atom)(null,(t,n,o)=>{let r=t(e);(0,Se.deepEqual)(r,o)||n(e,o)})}function Cn(e={}){let t=(0,L.atom)(e);return{atom:t,clearAll:tr(t),clear:nr(t),bulkReport:or(t),report:er(t)}}var Nn=Cn(),Fn=Nn.atom,yi=Nn.report;function rr(e,t){return e.fields.every(n=>vn(n,t))}function vn(e,t){return t[e.name]?.hidden??e.hidden??!1}function ir(e,t){return k(e)?rr(e,t):vn(e,t)}function An(e){let t=(0,Sn.useAtomValue)(Fn);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(o=>ir(o,t))?null:e.children}var h=require("react/jsx-runtime");function In(e){let t=J(e.sections,e.definition);return(0,h.jsx)("div",{className:"h-full w-full",children:(0,h.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,h.jsxs)(N,{children:[t.map((n,o)=>(0,h.jsxs)(An,{fields:n.fields??[],children:[(0,h.jsx)(Tn,{advanced:e.advanced,section:n,step:o+1,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.advanced?.separator&&(0,h.jsx)(hn,{})]},`key-${n.id}-${o}`)),e.control&&(0,h.jsx)(Pe,{isPending:e.isPending,children:e.control})]})})})}var wn=require("react/jsx-runtime");function En(e){return(0,wn.jsx)("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}var kn=require("react"),P=require("react/jsx-runtime");function D(e){let t={context:e.context,env:e.config?.env},[n,o]=(0,kn.useState)(()=>c(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),r=()=>o(s=>!s),i=c(e.text)&&f(e.text.title)?T(v(z(e.text.title,t),e.translations)):void 0,l=T(v(z(f(e.text)?e.text:e.text?.message,t),e.translations));return l?(0,P.jsxs)("div",{className:"flex flex-col gap-2",children:[i&&(0,P.jsxs)("button",{className:"flex items-center gap-1 text-left text-xs font-medium text-slate-700 hover:text-slate-900 dark:text-slate-300 dark:hover:text-slate-100",onClick:r,type:"button",children:[i,(0,P.jsx)(I,{expanded:n})]}),n&&(0,P.jsx)(En,{children:l})]}):null}var Ln=require("tailwind-merge"),ne=require("react/jsx-runtime");function Pn(e){let t=e.style?.showOptionalLabel??!0,n=S(e.field)||x(e.field);return(0,ne.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,Ln.twMerge)("flex w-fit items-center gap-2 text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,children:[e.children,t&&!e.field.required&&(0,ne.jsx)("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:v("(Optional)",e.translations)})]})}var B=require("react/jsx-runtime");function Dn(e){let t={context:e.context,env:e.config?.env},n=z(e.field.label,t);return(0,B.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,B.jsx)(Pn,{field:e.field,style:e.config?.style,translations:e.translations,children:v(n,e.translations)}),e.horizontal===!0&&(0,B.jsx)(D,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}var A=require("react/jsx-runtime");function On(e){return(0,A.jsxs)(A.Fragment,{children:[e.field.name&&e.field.label&&(0,A.jsx)(Dn,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&(0,A.jsx)(D,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}function Mn(e,t){return e?t(e):null}var ve=require("react/jsx-runtime");function _n(e){let t=jt(e.field,e.value),{commonPropsWithOptions:n,defaultValue:o}=en(e.field,e.commonProps,t,e.value),r=tn(e.field,o);return Mn(e.config.inputs[e.field.type],i=>(0,ve.jsx)(On,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:(0,ve.jsx)(i,{...e.ariaAttributes,...n,...e.dataAttributes,...r})}))}var Ae=require("react/jsx-runtime");function Vn(e){return!e.errors||e.errors.length===0?null:(0,Ae.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,Ae.jsx)("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var $n=require("tailwind-merge"),zn=require("react/jsx-runtime");function oe(e){let t=e.errors&&e.errors.length>0;return(0,zn.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[at]:"true"},...e.disabled&&{[st]:"true"},"data-orientation":e.orientation,className:(0,$n.twMerge)("group flex w-full flex-col items-center data-[invalid=true]:text-red-600 data-[invalid=true]:dark:text-red-500","data-[clickable=true]:items-start",e.isCheckbox&&(e.isReversed?"flex-row-reverse!":"flex-row!"),"data-[clickable=true]:has-[>[data-slot=field-content]]:[&>:first-child]:mt-px",e.className),children:e.children})}var Hn=require("tailwind-merge"),Bn=require("react/jsx-runtime");function Gn(e){return(0,Bn.jsx)(oe,{...e,orientation:"vertical",className:(0,Hn.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var Un=require("tailwind-merge"),Xn=require("react/jsx-runtime");function Yn(e){return(0,Xn.jsx)(oe,{...e,orientation:"horizontal",className:(0,Un.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 Ie=require("react/jsx-runtime");function Kn(e){let t=Pt(e.field),n=x(e.field),o=_t(e.field);return e.horizontal?(0,Ie.jsx)(Yn,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:o,isClickable:t,children:e.children}):(0,Ie.jsx)(Gn,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:o,isClickable:t,children:e.children})}function Zn(e){if(!e.field.type)return null;let t=Zt(e.field,e.disabled),n=an(e.field),o=ln(e.field,e.errors),r={...e.field,disabled:t.disabled};return e.children({ariaAttributes:o,commonProps:t,dataAttributes:n,field:r,horizontal:e.horizontal})}var Wn=require("tailwind-merge"),O=require("react/jsx-runtime");function qn(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:o}=Q(e.style,{horizontal:Mt(e.field)}),r=Vt(e.field,e.disabled);return(0,O.jsxs)("div",{className:(0,Wn.twMerge)("flex flex-col gap-3",un(t)),children:[(0,O.jsx)(Kn,{disabled:r,errors:n,field:e.field,horizontal:o,children:(0,O.jsx)(Zn,{disabled:r,errors:n,field:e.field,horizontal:o,children:e.children})}),(0,O.jsx)(Vn,{errors:n,name:e.field.name})]})}var re=require("tailwind-merge"),Jn=require("react"),a=require("react/jsx-runtime");function Qn(e){let t=e.isMultiField||e.collapsed!=null,[n,o]=(0,Jn.useState)(t?!e.collapsed:!0);function r(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function i(){o(m=>!m)}let l=e.canRemove&&e.onRemove!=null&&(0,a.jsx)("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:(0,re.twMerge)("flex size-6 items-center justify-center rounded text-xl leading-none text-slate-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500 dark:hover:text-red-400"),onClick:r,type:"button",children:(0,a.jsx)("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),s=(0,a.jsxs)("div",{className:"flex min-w-0 flex-col font-medium text-slate-700 dark:text-slate-400",children:[(0,a.jsx)("span",{className:"text-base",children:e.previewLabel??(0,a.jsxs)(a.Fragment,{children:[e.label," ",e.index+1]})}),!n&&e.previewTags&&(0,a.jsx)("div",{className:"flex items-center gap-2 overflow-hidden text-xs font-normal text-ellipsis whitespace-nowrap text-slate-500 dark:text-slate-500",children:e.previewTags})]}),u=(0,a.jsxs)("div",{className:(0,re.twMerge)("flex items-center justify-between gap-2",e.isMultiField&&n&&"mb-3"),children:[t?(0,a.jsxs)("div",{className:"flex min-w-0 grow items-center gap-2",children:[(0,a.jsxs)("button",{"aria-expanded":n,"aria-label":`${n?"Collapse":"Expand"} ${e.label} ${e.index+1}`,className:(0,re.twMerge)("group flex grow items-center gap-2 rounded p-1 text-left text-slate-400","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500"),onClick:i,type:"button",children:[(0,a.jsx)(I,{expanded:n}),s]}),!n&&e.previewBadge&&(0,a.jsx)("div",{className:"ml-auto shrink-0",children:e.previewBadge})]}):s,l]});return e.isMultiField?(0,a.jsxs)("div",{"data-slot":"list-item-card",className:"box-border w-full min-w-0 rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[u,(0,a.jsx)(_,{visible:n,children:(0,a.jsx)(N,{children:e.children})})]}):t?(0,a.jsxs)("div",{className:"box-border flex w-full min-w-0 flex-col gap-2",children:[u,(0,a.jsx)(_,{visible:n,children:(0,a.jsx)(N,{children:e.children})})]}):(0,a.jsxs)("div",{className:"box-border flex w-full min-w-0 items-start gap-2",children:[(0,a.jsx)("div",{className:"flex min-w-0 grow flex-col",children:(0,a.jsx)(N,{children:e.children})}),l&&(0,a.jsx)("div",{className:"shrink-0",children:l})]})}var eo=require("react/jsx-runtime");function jn(e){let t=gn(e.field),n=fn(e.field);return mn(e.field,e.value).map(o=>(0,eo.jsx)(Qn,{collapsed:e.field.advanced?.collapsed,index:o,isMultiField:n,label:t,children:e.children(o)},o))}var no=require("react/jsx-runtime");function to(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return(0,no.jsx)(ee,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}var Ee=require("react/jsx-runtime");function oo({children:e,field:t,value:n}){return(0,Ee.jsx)(to,{field:t,children:(0,Ee.jsx)(jn,{field:t,value:n,children:e})})}var ro=require("tailwind-merge");var U=require("react/jsx-runtime");function io(e){let t=dn(e.column?.advanced?.cols);return(0,U.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[(0,U.jsx)("div",{className:(0,ro.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&(0,U.jsx)(D,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}var so=require("react");var ao=require("react/jsx-runtime");function lo(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>Z(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:k(n)?{...n,fields:n.fields.map(o=>({...o,name:`${e.field.name}.${e.index}.${o.name}`}))}:n):[];return(0,ao.jsx)(Y,{children:e.children,components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:t,style:e.style,translations:e.translations,value:e.value})}var F=require("react/jsx-runtime");function Y(e){let{field:t,list:n}=e.components;return J(e.fields).map((o,r)=>(0,F.jsxs)(so.Fragment,{children:[k(o)&&(0,F.jsx)(io,{column:o,config:e.config,context:e.context,translations:e.translations,children:(0,F.jsx)(Y,{...e,fields:o.fields})}),Z(o)&&(0,F.jsx)(t,{disabled:e.disabled,field:o,style:e.style,children:e.children}),Dt(o)&&(0,F.jsx)(n,{field:o,value:e.value,children:i=>(0,F.jsx)(lo,{children:e.children,components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:o,index:i,style:e.style,translations:e.translations,value:e.value})})]},r))}var uo=require("react/jsx-runtime");function co(e){return n=>(0,uo.jsx)(Y,{...n,components:e})}var fo=co({field:qn,list:oo});var ie=require("react/jsx-runtime");function le(e){let t=e.translations?.[e.lang??""];return(0,ie.jsx)(In,{advanced:e.advanced,config:e.config,control:e.children,definition:e.definition,readOnly:e.readOnly,sections:e.sections,children:({disabled:n,fields:o})=>(0,ie.jsx)(fo,{config:e.config,context:e.context,disabled:n,fields:o,style:e.config.style,translations:t,value:e.value,children:r=>(0,ie.jsx)(_n,{...r,config:e.config,context:e.context,translations:t,value:e.value})})})}var mo=require("react");var we=require("react/jsx-runtime");function go(e){return(0,we.jsx)(mo.Suspense,{fallback:(0,we.jsx)(le,{config:e.config,sections:e.sections,readOnly:!0}),children:e.children})}
|
package/dist/server/esm/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as Un}from"react/jsx-runtime";function ye(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return Un("div",{"data-slot":"field-control",className:"w-full",children:t})}import{jsx as be}from"react/jsx-runtime";function C(e){return be("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:be("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 Xn}from"react";import{createContext as Yn}from"react";var Te=Yn(!1);import{jsx as he}from"react/jsx-runtime";function E({children:e,visible:t}){return he(Xn,{mode:t?"visible":"hidden",children:he(Te,{value:!0,children:e})})}var $="input",Re="input/date",Ce="input/email",Fe="input/number";var Ne="input/time";var Se="textarea",Ae="radio",ve="checkbox",q="list";var Ie="select",Ee="select/day",ke="select/month",Le="select/timezone",we="select/year";var Pe="chips",De="chips/day",Oe="chips/month",k="column",Me="description",J="fields",_e="label",Q="value",z="options",j="email",Ve="number",$e="password",ze="tel",L="text",He="aria-errormessage",Ge="aria-invalid",Be="data-invalid",Ue="data-readonly",Ye="aria",Xe="data",Ke="max",Ze="maxLength",We="min",qe="minLength",F="$ref";var Je="type",Qe={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};function s(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function g(e){return u(e)||typeof e=="number"||Kn(e)}function u(e){return typeof e=="string"}function Kn(e){return typeof e=="boolean"}function je(e,t=Q){if(e!=null){if(Array.isArray(e)&&e.every(g)||g(e))return e;if(s(e)){let n=Zn(e,t);if(g(n))return n}}}function Zn(e,t){let n=p(e,t);if(g(n))return n}function p(e,t){if(!t||!s(e))return null;let n=t.split(".").filter(r=>r!=="");if(n.length===0)return null;let o=e;for(let r of n)if(s(o)&&r in o)o=o[r];else return null;return o}function et(e,t={description:Me,label:_e,value:Q}){return e.map(n=>{if(s(n)){let o=p(n,t.label),r=p(n,t.value);if(g(o)&&g(r)){let i=p(n,t.description);return{label:`${o}`,value:`${r}`,...g(i)&&{description:`${i}`}}}}return n})}function tt(e=L){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==$?n.trim().toLowerCase():L}var Wn=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function ee(e,t={}){if(u(e))return qn(e,t);if(Array.isArray(e))return e.map(n=>ee(n,t));if(s(e)){let n={};for(let o in e)n[o]=ee(e[o],t);return n}return e}function w(e,t={}){return te(e)?ee(e,t):e}function te(e){return u(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>te(t)):s(e)?Object.values(e).some(t=>te(t)):!1}function qn(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,o)=>{let r=o.includes(".")?p(t,o):t[o];return g(r)?String(r):n})}function nt(e,t){if(!u(e)||!e||e.trim().length===0)return null;let n,o=0,r=!1,i=[];for(;(n=Wn.exec(e))!==null;){let[l,a,d]=n,f=n.index;r=!0,f>o&&i.push(e.substring(o,f));let I=t?t(f,d,a):l;i.push(I),o=f+l.length}return r?(o<e.length&&i.push(e.substring(o)),i):e}var ot=e=>c(Ee)(e),rt=e=>c(ke)(e),it=e=>c(we)(e),lt=e=>c(Le)(e),at=e=>c(De)(e),st=e=>c(Oe)(e),ct=c(Re),ne=c(Ne),x=c(ve),N=c(Pe),h=c(Ae),dt=c($),b=c(Ie),ut=c(Se),ft=c(L,j,$e,ze),Pr=c(Ce,j),mt=c(Fe,Ve);function gt(e){return h(e)||x(e)}function pt(e){return e.type===q}function S(e){return e.type===k}function H(e){return e.type!==k&&e.type!==q}function oe(e){return b(e)||h(e)||N(e)}function P(e){return e!=null&&e!==""}function c(...e){return t=>{let n=u(t.type)?t.type:void 0;return n?e.some(o=>n===o||n?.startsWith(`${o}/`)):!1}}function xt(e,t={}){if(b(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&s(n))return[n]}}function yt(e){return h(e)||x(e)?!0:e.advanced?.horizontal??!1}function bt(e){return x(e)?e.advanced?.reverse!==!1:!1}function Tt(e,t){let n=e.readonly??!1;return t||n}function ht(e){if(h(e)||N(e)||b(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||s(t)&&!(F in t))return t}}import{isValid as Ft,parse as Nt,format as St}from"date-fns";var Jn=/^\d+$/,At=new Date(2e3,0,1),Qn=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[];function re(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function ie(){return Array.from({length:7},(e,t)=>({value:t.toString(),label:new Date(2e3,0,2+t).toLocaleString("default",{weekday:"long"})}))}function vt(e,t){return t>=e?Array.from({length:t-e+1},(n,o)=>{let r=e+o;return{value:r.toString(),label:r.toString()}}):[]}function le(){return new Date().getFullYear()}function jn(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function eo(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return Qe[n]??"Other"}function to(e,t){return(e.find(o=>o.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function Rt(e,t){let n=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"longOffset"}).formatToParts(t),o=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=to(o,e);return{offset:i,longName:l}}function Ct(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function It(){let e=new Date,t=jn(),n=new Map,o=Ct(t),{offset:r,longName:i}=Rt(t,e),l={value:t,label:`${o} - ${i} (${r})`};for(let d of Qn()){if(d===t)continue;let f=Ct(d),{offset:I,longName:Bn}=Rt(d,e),pe={value:d,label:`${f} - ${Bn} (${I})`},W=eo(d);if(W==="Other")continue;let xe=n.get(W);xe?xe.push(pe):n.set(W,[pe])}for(let d of n.values())d.sort((f,I)=>f.label.localeCompare(I.label));let a=Array.from(n.entries()).sort(([d],[f])=>d.localeCompare(f)).map(([d,f])=>({label:d,items:f}));return[{label:"Suggested",items:[l]},...a]}function ae(e,t){if(typeof e=="number")return e;let n=t??le(),o=e.trim().toLowerCase();if(o.startsWith("current")){let r=o.match(/^current([+-])(\d+)$/);if(r){let[,i,l]=r,a=parseInt(l,10);if(!isNaN(a))return i==="+"?n+a:n-a}return n}return Jn.test(o)?parseInt(o,10):n}function Et(e,t){if(!e)return"";try{let n=Nt(e,t,At);return Ft(n)?St(n,"yyyy-MM-dd"):""}catch{return""}}function kt(e,t){if(!e)return"";try{let n=Nt(e,t,At);return Ft(n)?St(n,"HH:mm:ss"):""}catch{return""}}function se(e){return e.advanced?.format??"HH:mm"}function Lt(e){return e.advanced?.format??"MMMM d, yyyy"}var G=le();function no(e){if(N(e))return oo(e)}function oo(e){if(at(e))return ie();if(st(e))return re()}function ro(e){if(b(e))return io(e)}function io(e){if(ot(e))return ie();if(rt(e))return re();if(it(e)){let t=e.advanced?.length?.min??G,n=e.advanced?.length?.max??G+5;return vt(ae(t,G),ae(n,G))}if(lt(e))return It()}function wt(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return dt(e)?{...n,...lo(e)}:b(e)?{...n,...Pt(e,ro)}:ut(e)?{...n,...so(e)}:N(e)?{...n,...ao(e)}:n}function lo(e){let t=tt(e.type),n={...e,type:t};return{...uo(e),...Dt(e),...co(n),...ft(n)?Ot(n):{},type:t}}function Pt(e,t){let n=t(e);return n?{options:n}:{}}function ao(e){let t=Pt(e,no),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function so(e){return{...Dt(e),...Ot(e)}}function Dt(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function co(e){return mt(e)?fo(e):{}}function uo(e){if(ne(e)){let t=se(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function Ot(e){return Mt(e,{min:qe,max:Ze})}function fo(e){return Mt(e,{min:We,max:Ke})}function Mt(e,t){let n={},o=e.advanced?.length;return o&&(o.min!==void 0&&(n[t.min]=o.min),o.max!==void 0&&(n[t.max]=o.max)),n}function _t(e,t){let n=ht(e);return n||xt(e,t)}function mo(e,t){let n=s(t)&&e.name in t?t[e.name]:t,o=je(n,e.advanced?.entity);return ne(e)&&P(o)?go(e,o):ct(e)&&P(o)?bo(e,o):o}function go(e,t){let n=se(e);return u(t)?kt(t,n):t}function po(e,t,n){return oe(e)&&Array.isArray(n)?{...t,[z]:n}:t}function xo(e,t,n){if(e.required&&!P(n)&&b(e)&&e.advanced?.preselected!==!1&&z in t){let o=t[z];if(Array.isArray(o)&&o.length===1)return o[0]}return n}function yo(e,t){return oe(e)&&Array.isArray(t)?et(t,e.advanced?.options):t}function Vt(e,t,n,o){let r=mo(e,o),i=Array.isArray(n)?yo(e,n):n,l=po(e,t,i),a=xo(e,l,r);return{commonPropsWithOptions:l,defaultValue:a}}function $t(e,t){return x(e)?{defaultChecked:P(t)}:{defaultValue:t}}function bo(e,t){let n=Lt(e);return u(t)?Et(t,n):t}var To=/^#\/definition\//;function U(e=[],t){let n=B(e,t);return Array.isArray(n)?n.filter(Ro).sort((o,r)=>zt(o)-zt(r)):[]}function B(e,t,n=new Map,o=new WeakSet){if(!ho(t)||!e||typeof e!="object")return e;if(n.has(e))return n.get(e);if(o.has(e))return e;if(o.add(e),Array.isArray(e))return e.map(i=>B(i,t,n,o));if(F in e&&u(e[F])){let i=e[F].replace(To,""),l=p(t,i);return l!==null?B(l,t,n,o):e}let r={};for(let[i,l]of Object.entries(e))r[i]=B(l,t,n,o);return o.delete(e),n.set(e,r),r}function Ht(e){return Object.entries(e??{})}function zt(e){return e.order??Number.MAX_VALUE}function ho(e){return e!==void 0&&s(e)&&Object.keys(e).length>0}function Ro(e){return Je in e?!0:Array.isArray(e[J])?e[J].length>0:!0}function Gt(e,t){let n={};for(let[o,r]of Ht(t))n[`${e}-${o}`]=r;return n}function Co(e){return Gt(Ye,e)}function Fo(e){return Gt(Xe,e)}function Bt(e,t){let n=Co(e.advanced?.aria);return t&&t.length>0&&(n[Ge]="true",n[He]=`${e.name}-error`),n}function Ut(e){return Fo(e.advanced?.data)}var Yt={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Xt={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function Kt(e,t=2){return Yt[e&&e in Yt?e:t]}function Zt(e){if(e&&e in Xt)return Xt[e]}function No(e,t){let n=e.advanced?.length?.min??1;if(t){let o=p(t,e.name);if(Array.isArray(o))return Math.max(o.length,n)}return Math.max(n,0)}function Wt(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===k}function qt(e,t){let n=No(e,t);return Array.from({length:n},(o,r)=>r)}function Jt(e){return e.label??e.name}function R(e,t){return e?t?t[e]??e:e:""}function Y(e,t){return{...e,...t}}import{jsx as So}from"react/jsx-runtime";function y(e){return nt(e,(t,n,o)=>So("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:o},`${n}-${t}`))}import{useCallback as Ao,useState as vo}from"react";import{jsx as D,jsxs as ce}from"react/jsx-runtime";function Qt(e){let{fields:t=[]}=e.section,[n,o]=vo(!1),r=Ao(()=>o(i=>!i),[]);return ce("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:ce("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-slate-600 dark:text-slate-400",onClick:r,type:"button",children:[D(C,{expanded:n}),D("span",{children:y(e.section.title)})]})}),D(E,{visible:n,children:ce("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-slate-300 pl-4 dark:border-slate-600","data-slot":"field-set-content",children:[e.section.description&&D("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:y(e.section.description)}),e.group]})})]})}import{jsx as X,jsxs as jt}from"react/jsx-runtime";function en(e){let t=jt("div",{className:"flex flex-col",children:[e.title&&X("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:y(e.title)}),e.description&&X("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:y(e.description)})]});return e.step?jt("div",{className:"flex flex-row items-start gap-4",children:[X("div",{className:"bg-primary text-primary-foreground flex h-6 w-6 shrink-0 items-center justify-center rounded-full",children:X("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}import{jsx as Io,jsxs as Eo}from"react/jsx-runtime";function K(e){return Eo("fieldset",{className:"flex flex-col data-[empty=false]:gap-6","data-empty":e.empty,"data-slot":"field-set",id:e.id,children:[Io(en,{description:e.description,step:e.step,title:e.title}),e.children]})}import{jsx as ko}from"react/jsx-runtime";function T(e){return ko("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 de}from"react/jsx-runtime";function tn(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:o}=Y(e.style,{compact:e.section.advanced?.compact}),r=de(T,{compact:o,children:e.children});return!e.section.title&&!e.section.description?r:e.section.advanced?.collapsible?de(Qt,{section:e.section,group:r}):de(K,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),step:n,title:e.section.title,children:r})}import{jsx as nn}from"react/jsx-runtime";function on(){return nn("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:nn("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}import{useAtomValue as _o}from"jotai";import{atom as O}from"jotai";import{atomFamily as Lo}from"jotai-family";import{deepEqual as rn}from"fast-equals";function wo(e,t){let{[t]:n,...o}=e;return o}function Po(e){return Lo(t=>O(n=>n(e)[t]??void 0,(n,o,r)=>{let i=n(e);if(r!=null){let l=i[t];rn(l,r)||o(e,{...i,[t]:r})}else t in i&&o(e,wo(i,t))}))}function Do(e){return O(null,(t,n)=>{let o=t(e);o&&Object.keys(o).length>0&&n(e,{})})}function Oo(e){return O(null,(t,n,o)=>{let i={...t(e)},l=!1;for(let a of o)a in i&&(delete i[a],l=!0);l&&n(e,i)})}function Mo(e){return O(null,(t,n,o)=>{let r=t(e);rn(r,o)||n(e,o)})}function ln(e={}){let t=O(e);return{atom:t,clearAll:Do(t),clear:Oo(t),bulkReport:Mo(t),report:Po(t)}}var an=ln(),sn=an.atom,$i=an.report;function Vo(e,t){return e.fields.every(n=>cn(n,t))}function cn(e,t){return t[e.name]?.hidden??e.hidden??!1}function $o(e,t){return S(e)?Vo(e,t):cn(e,t)}function dn(e){let t=_o(sn);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(o=>$o(o,t))?null:e.children}import{jsx as M,jsxs as un}from"react/jsx-runtime";function fn(e){let t=U(e.sections,e.definition);return M("div",{className:"h-full w-full",children:M("form",{noValidate:e.noValidate,action:e.action,children:un(T,{children:[t.map((n,o)=>un(dn,{fields:n.fields??[],children:[M(tn,{advanced:e.advanced,section:n,step:o+1,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.advanced?.separator&&M(on,{})]},`key-${n.id}-${o}`)),e.control&&M(ye,{isPending:e.isPending,children:e.control})]})})})}import{jsx as zo}from"react/jsx-runtime";function mn(e){return zo("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}import{useState as Ho}from"react";import{jsx as gn,jsxs as pn}from"react/jsx-runtime";function A(e){let t={context:e.context,env:e.config?.env},[n,o]=Ho(()=>s(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),r=()=>o(a=>!a),i=s(e.text)&&u(e.text.title)?y(R(w(e.text.title,t),e.translations)):void 0,l=y(R(w(u(e.text)?e.text:e.text?.message,t),e.translations));return l?pn("div",{className:"flex flex-col gap-2",children:[i&&pn("button",{className:"flex items-center gap-1 text-left text-xs font-medium text-slate-700 hover:text-slate-900 dark:text-slate-300 dark:hover:text-slate-100",onClick:r,type:"button",children:[i,gn(C,{expanded:n})]}),n&&gn(mn,{children:l})]}):null}import{twMerge as Go}from"tailwind-merge";import{jsx as Bo,jsxs as Uo}from"react/jsx-runtime";function xn(e){let t=e.style?.showOptionalLabel??!0,n=h(e.field)||x(e.field);return Uo("label",{"data-slot":"field-label","data-normal":n,className:Go("flex w-fit items-center gap-2 text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,children:[e.children,t&&!e.field.required&&Bo("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:R("(Optional)",e.translations)})]})}import{jsx as yn,jsxs as Yo}from"react/jsx-runtime";function bn(e){let t={context:e.context,env:e.config?.env},n=w(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:[yn(xn,{field:e.field,style:e.config?.style,translations:e.translations,children:R(n,e.translations)}),e.horizontal===!0&&yn(A,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}import{Fragment as Xo,jsx as Tn,jsxs as Ko}from"react/jsx-runtime";function hn(e){return Ko(Xo,{children:[e.field.name&&e.field.label&&Tn(bn,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&Tn(A,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}function Rn(e,t){return e?t(e):null}import{jsx as Cn}from"react/jsx-runtime";function Fn(e){let t=_t(e.field,e.value),{commonPropsWithOptions:n,defaultValue:o}=Vt(e.field,e.commonProps,t,e.value),r=$t(e.field,o);return Rn(e.config.inputs[e.field.type],i=>Cn(hn,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:Cn(i,{...e.ariaAttributes,...n,...e.dataAttributes,...r})}))}import{jsx as Nn}from"react/jsx-runtime";function Sn(e){return!e.errors||e.errors.length===0?null:Nn("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)=>Nn("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}import{twMerge as Zo}from"tailwind-merge";import{jsx as Wo}from"react/jsx-runtime";function Z(e){let t=e.errors&&e.errors.length>0;return Wo("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Be]:"true"},...e.disabled&&{[Ue]:"true"},"data-orientation":e.orientation,className:Zo("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 qo}from"tailwind-merge";import{jsx as Jo}from"react/jsx-runtime";function An(e){return Jo(Z,{...e,orientation:"vertical",className:qo("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as Qo}from"tailwind-merge";import{jsx as jo}from"react/jsx-runtime";function vn(e){return jo(Z,{...e,orientation:"horizontal",className:Qo("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 In}from"react/jsx-runtime";function En(e){let t=gt(e.field),n=x(e.field),o=bt(e.field);return e.horizontal?In(vn,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:o,isClickable:t,children:e.children}):In(An,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:o,isClickable:t,children:e.children})}function kn(e){if(!e.field.type)return null;let t=wt(e.field,e.disabled),n=Ut(e.field),o=Bt(e.field,e.errors),r={...e.field,disabled:t.disabled};return e.children({ariaAttributes:o,commonProps:t,dataAttributes:n,field:r,horizontal:e.horizontal})}import{twMerge as er}from"tailwind-merge";import{jsx as ue,jsxs as tr}from"react/jsx-runtime";function Ln(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:o}=Y(e.style,{horizontal:yt(e.field)}),r=Tt(e.field,e.disabled);return tr("div",{className:er("flex flex-col gap-3",Zt(t)),children:[ue(En,{disabled:r,errors:n,field:e.field,horizontal:o,children:ue(kn,{disabled:r,errors:n,field:e.field,horizontal:o,children:e.children})}),ue(Sn,{errors:n,name:e.field.name})]})}import{twMerge as fe}from"tailwind-merge";import{useState as nr}from"react";import{jsx as m,jsxs as v}from"react/jsx-runtime";function wn(e){let[t,n]=nr(e.collapsible?!e.collapsed:!0);function o(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function r(){n(d=>!d)}let i=e.canRemove&&e.onRemove!=null&&m("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:fe("flex size-6 items-center justify-center rounded text-xl leading-none text-slate-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500 dark:hover:text-red-400"),onClick:o,type:"button",children:m("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),l=v("span",{className:"text-sm font-medium text-slate-300 group-hover:underline dark:text-slate-400",children:[e.label," ",e.index+1,!t&&e.preview&&m("div",{className:"flex items-center gap-2 overflow-hidden text-ellipsis whitespace-nowrap text-slate-400 dark:text-slate-500",children:e.preview})]}),a=(e.isMultiField||e.collapsible)&&v("div",{className:fe("flex items-center justify-between gap-2",e.isMultiField&&"mb-3"),children:[e.collapsible?v("button",{"aria-expanded":t,"aria-label":`${t?"Collapse":"Expand"} ${e.label} ${e.index+1}`,className:fe("group flex grow items-center gap-2 rounded p-1 text-left text-slate-400","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500"),onClick:r,type:"button",children:[m(C,{expanded:t}),l]}):l,i]});return e.isMultiField?v("div",{"data-slot":"list-item-card",className:"rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[a,m(E,{visible:t,children:m(T,{children:e.children})})]}):e.collapsible?v("div",{className:"flex flex-col gap-2",children:[a,m(E,{visible:t,children:m(T,{children:e.children})})]}):v("div",{className:"flex items-start gap-2",children:[m("div",{className:"flex grow flex-col",children:m(T,{children:e.children})}),i&&m("div",{className:"shrink-0",children:i})]})}import{jsx as or}from"react/jsx-runtime";function Pn(e){let t=Jt(e.field),n=Wt(e.field);return qt(e.field,e.value).map(o=>or(wn,{collapsed:e.field.advanced?.collapsed,collapsible:e.field.advanced?.collapsible,index:o,isMultiField:n,label:t,children:e.children(o)},o))}import{jsx as rr}from"react/jsx-runtime";function Dn(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return rr(K,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}import{jsx as On}from"react/jsx-runtime";function Mn({children:e,field:t,value:n}){return On(Dn,{field:t,children:On(Pn,{field:t,value:n,children:e})})}import{twMerge as ir}from"tailwind-merge";import{jsx as _n,jsxs as lr}from"react/jsx-runtime";function Vn(e){let t=Kt(e.column?.advanced?.cols);return lr("div",{className:"flex w-full flex-col gap-4",children:[_n("div",{className:ir("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&_n(A,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}import{Fragment as sr}from"react";import{jsx as ar}from"react/jsx-runtime";function $n(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>H(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:S(n)?{...n,fields:n.fields.map(o=>({...o,name:`${e.field.name}.${e.index}.${o.name}`}))}:n):[];return ar(_,{children:e.children,components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:t,style:e.style,translations:e.translations,value:e.value})}import{jsx as V,jsxs as cr}from"react/jsx-runtime";function _(e){let{field:t,list:n}=e.components;return U(e.fields).map((o,r)=>cr(sr,{children:[S(o)&&V(Vn,{column:o,config:e.config,context:e.context,translations:e.translations,children:V(_,{...e,fields:o.fields})}),H(o)&&V(t,{disabled:e.disabled,field:o,style:e.style,children:e.children}),pt(o)&&V(n,{field:o,value:e.value,children:i=>V($n,{children:e.children,components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:o,index:i,style:e.style,translations:e.translations,value:e.value})})]},r))}import{jsx as dr}from"react/jsx-runtime";function zn(e){return n=>dr(_,{...n,components:e})}var Hn=zn({field:Ln,list:Mn});import{jsx as me}from"react/jsx-runtime";function ge(e){let t=e.translations?.[e.lang??""];return me(fn,{advanced:e.advanced,config:e.config,control:e.children,definition:e.definition,readOnly:e.readOnly,sections:e.sections,children:({disabled:n,fields:o})=>me(Hn,{config:e.config,context:e.context,disabled:n,fields:o,style:e.config.style,translations:t,value:e.value,children:r=>me(Fn,{...r,config:e.config,context:e.context,translations:t,value:e.value})})})}import{Suspense as ur}from"react";import{jsx as Gn}from"react/jsx-runtime";function fr(e){return Gn(ur,{fallback:Gn(ge,{config:e.config,sections:e.sections,readOnly:!0}),children:e.children})}export{fr as Fallback,ge as Form};
|
|
1
|
+
import{jsx as Kn}from"react/jsx-runtime";function ye(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return Kn("div",{"data-slot":"field-control",className:"w-full",children:t})}import{jsx as be}from"react/jsx-runtime";function N(e){return be("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:be("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 Wn}from"react";import{createContext as Zn}from"react";var Te=Zn(!1);import{jsx as he}from"react/jsx-runtime";function E({children:e,visible:t}){return he(Wn,{mode:t?"visible":"hidden",children:he(Te,{value:!0,children:e})})}var $="input",Re="input/date",Ce="input/email",Ne="input/number";var Fe="input/time";var Se="textarea",ve="radio",Ae="checkbox",q="list";var Ie="select",Ee="select/active",we="select/day",ke="select/month",Le="select/timezone",Pe="select/year";var De="chips",Oe="chips/day",Me="chips/month",w="column",_e="description",J="fields",Ve="label",Q="value",z="options",j="email",$e="number",ze="password",He="tel",k="text",Ge="aria-errormessage",Be="aria-invalid",Ue="data-invalid",Ye="data-readonly",Xe="aria",Ke="data",Ze="max",We="maxLength",qe="min",Je="minLength",F="$ref";var Qe="type",je={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};function s(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function g(e){return u(e)||typeof e=="number"||qn(e)}function u(e){return typeof e=="string"}function qn(e){return typeof e=="boolean"}function et(e,t=Q){if(e!=null){if(Array.isArray(e)&&e.every(g)||g(e))return e;if(s(e)){let n=Jn(e,t);if(g(n))return n}}}function Jn(e,t){let n=p(e,t);if(g(n))return n}function p(e,t){if(!t||!s(e))return null;let n=t.split(".").filter(r=>r!=="");if(n.length===0)return null;let o=e;for(let r of n)if(s(o)&&r in o)o=o[r];else return null;return o}function tt(e,t={description:_e,label:Ve,value:Q}){return e.map(n=>{if(s(n)){let o=p(n,t.label),r=p(n,t.value);if(g(o)&&g(r)){let i=p(n,t.description);return{label:`${o}`,value:`${r}`,...g(i)&&{description:`${i}`}}}}return n})}function nt(e=k){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==$?n.trim().toLowerCase():k}var Qn=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function ee(e,t={}){if(u(e))return jn(e,t);if(Array.isArray(e))return e.map(n=>ee(n,t));if(s(e)){let n={};for(let o in e)n[o]=ee(e[o],t);return n}return e}function L(e,t={}){return te(e)?ee(e,t):e}function te(e){return u(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>te(t)):s(e)?Object.values(e).some(t=>te(t)):!1}function jn(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,o)=>{let r=o.includes(".")?p(t,o):t[o];return g(r)?String(r):n})}function ot(e,t){if(!u(e)||!e||e.trim().length===0)return null;let n,o=0,r=!1,i=[];for(;(n=Qn.exec(e))!==null;){let[l,a,d]=n,f=n.index;r=!0,f>o&&i.push(e.substring(o,f));let I=t?t(f,d,a):l;i.push(I),o=f+l.length}return r?(o<e.length&&i.push(e.substring(o)),i):e}var rt=e=>c(Ee)(e),it=e=>c(we)(e),lt=e=>c(ke)(e),at=e=>c(Pe)(e),st=e=>c(Le)(e),ct=e=>c(Oe)(e),dt=e=>c(Me)(e),ut=c(Re),ne=c(Fe),x=c(Ae),S=c(De),R=c(ve),ft=c($),b=c(Ie),mt=c(Se),gt=c(k,j,ze,He),Mr=c(Ce,j),pt=c(Ne,$e);function xt(e){return R(e)||x(e)}function yt(e){return e.type===q}function v(e){return e.type===w}function H(e){return e.type!==w&&e.type!==q}function oe(e){return b(e)||R(e)||S(e)}function P(e){return e!=null&&e!==""}function c(...e){return t=>{let n=u(t.type)?t.type:void 0;return n?e.some(o=>n===o||n?.startsWith(`${o}/`)):!1}}function bt(e,t={}){if(b(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&s(n))return[n]}}function Tt(e){return R(e)||x(e)?!0:e.advanced?.horizontal??!1}function ht(e){return x(e)?e.advanced?.reverse!==!1:!1}function Rt(e,t){let n=e.readonly??!1;return t||n}function Ct(e){if(R(e)||S(e)||b(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||s(t)&&!(F in t))return t}}import{isValid as St,parse as vt,format as At}from"date-fns";var eo=/^\d+$/,It=new Date(2e3,0,1),to=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[];function re(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function ie(){return Array.from({length:7},(e,t)=>({value:t.toString(),label:new Date(2e3,0,2+t).toLocaleString("default",{weekday:"long"})}))}function Et(e,t){return t>=e?Array.from({length:t-e+1},(n,o)=>{let r=e+o;return{value:r.toString(),label:r.toString()}}):[]}function le(){return new Date().getFullYear()}function no(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function oo(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return je[n]??"Other"}function ro(e,t){return(e.find(o=>o.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function Nt(e,t){let n=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"longOffset"}).formatToParts(t),o=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=ro(o,e);return{offset:i,longName:l}}function Ft(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function wt(){let e=new Date,t=no(),n=new Map,o=Ft(t),{offset:r,longName:i}=Nt(t,e),l={value:t,label:`${o} - ${i} (${r})`};for(let d of to()){if(d===t)continue;let f=Ft(d),{offset:I,longName:Xn}=Nt(d,e),pe={value:d,label:`${f} - ${Xn} (${I})`},W=oo(d);if(W==="Other")continue;let xe=n.get(W);xe?xe.push(pe):n.set(W,[pe])}for(let d of n.values())d.sort((f,I)=>f.label.localeCompare(I.label));let a=Array.from(n.entries()).sort(([d],[f])=>d.localeCompare(f)).map(([d,f])=>({label:d,items:f}));return[{label:"Suggested",items:[l]},...a]}function ae(e,t){if(typeof e=="number")return e;let n=t??le(),o=e.trim().toLowerCase();if(o.startsWith("current")){let r=o.match(/^current([+-])(\d+)$/);if(r){let[,i,l]=r,a=parseInt(l,10);if(!isNaN(a))return i==="+"?n+a:n-a}return n}return eo.test(o)?parseInt(o,10):n}function kt(e,t){if(!e)return"";try{let n=vt(e,t,It);return St(n)?At(n,"yyyy-MM-dd"):""}catch{return""}}function Lt(e,t){if(!e)return"";try{let n=vt(e,t,It);return St(n)?At(n,"HH:mm:ss"):""}catch{return""}}function se(e){return e.advanced?.format??"HH:mm"}function Pt(e){return e.advanced?.format??"MMMM d, yyyy"}var G=le();function io(e){if(S(e))return lo(e)}function lo(e){if(ct(e))return ie();if(dt(e))return re()}function ao(e){if(b(e))return so(e)}function so(e){if(it(e))return ie();if(lt(e))return re();if(at(e)){let t=e.advanced?.length?.min??G,n=e.advanced?.length?.max??G+5;return Et(ae(t,G),ae(n,G))}if(st(e))return wt();if(rt(e))return[{value:"true",label:"Yes"},{value:"false",label:"No"}]}function Dt(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return ft(e)?{...n,...co(e)}:b(e)?{...n,...Ot(e,ao)}:mt(e)?{...n,...fo(e)}:S(e)?{...n,...uo(e)}:n}function co(e){let t=nt(e.type),n={...e,type:t};return{...go(e),...Mt(e),...mo(n),...gt(n)?_t(n):{},type:t}}function Ot(e,t){let n=t(e);return n?{options:n}:{}}function uo(e){let t=Ot(e,io),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function fo(e){return{...Mt(e),..._t(e)}}function Mt(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function mo(e){return pt(e)?po(e):{}}function go(e){if(ne(e)){let t=se(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function _t(e){return Vt(e,{min:Je,max:We})}function po(e){return Vt(e,{min:qe,max:Ze})}function Vt(e,t){let n={},o=e.advanced?.length;return o&&(o.min!==void 0&&(n[t.min]=o.min),o.max!==void 0&&(n[t.max]=o.max)),n}function $t(e,t){let n=Ct(e);return n||bt(e,t)}function xo(e,t){let n=s(t)&&e.name in t?t[e.name]:t,o=et(n,e.advanced?.entity);return ne(e)&&P(o)?yo(e,o):ut(e)&&P(o)?Ro(e,o):o}function yo(e,t){let n=se(e);return u(t)?Lt(t,n):t}function bo(e,t,n){return oe(e)&&Array.isArray(n)?{...t,[z]:n}:t}function To(e,t,n){if(e.required&&!P(n)&&b(e)&&e.advanced?.preselected!==!1&&z in t){let o=t[z];if(Array.isArray(o)&&o.length===1)return o[0]}return n}function ho(e,t){return oe(e)&&Array.isArray(t)?tt(t,e.advanced?.options):t}function zt(e,t,n,o){let r=xo(e,o),i=Array.isArray(n)?ho(e,n):n,l=bo(e,t,i),a=To(e,l,r);return{commonPropsWithOptions:l,defaultValue:a}}function Ht(e,t){return x(e)?{defaultChecked:P(t)}:{defaultValue:t}}function Ro(e,t){let n=Pt(e);return u(t)?kt(t,n):t}var Co=/^#\/definition\//;function U(e=[],t){let n=B(e,t);return Array.isArray(n)?n.filter(Fo).sort((o,r)=>Gt(o)-Gt(r)):[]}function B(e,t,n=new Map,o=new WeakSet){if(!No(t)||!e||typeof e!="object")return e;if(n.has(e))return n.get(e);if(o.has(e))return e;if(o.add(e),Array.isArray(e))return e.map(i=>B(i,t,n,o));if(F in e&&u(e[F])){let i=e[F].replace(Co,""),l=p(t,i);return l!==null?B(l,t,n,o):e}let r={};for(let[i,l]of Object.entries(e))r[i]=B(l,t,n,o);return o.delete(e),n.set(e,r),r}function Bt(e){return Object.entries(e??{})}function Gt(e){return e.order??Number.MAX_VALUE}function No(e){return e!==void 0&&s(e)&&Object.keys(e).length>0}function Fo(e){return Qe in e?!0:Array.isArray(e[J])?e[J].length>0:!0}function Ut(e,t){let n={};for(let[o,r]of Bt(t))n[`${e}-${o}`]=r;return n}function So(e){return Ut(Xe,e)}function vo(e){return Ut(Ke,e)}function Yt(e,t){let n=So(e.advanced?.aria);return t&&t.length>0&&(n[Be]="true",n[Ge]=`${e.name}-error`),n}function Xt(e){return vo(e.advanced?.data)}var Kt={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 Kt[e&&e in Kt?e:t]}function qt(e){if(e&&e in Zt)return Zt[e]}function Ao(e,t){let n=e.advanced?.length?.min??1;if(t){let o=p(t,e.name);if(Array.isArray(o))return Math.max(o.length,n)}return Math.max(n,0)}function Jt(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===w}function Qt(e,t){let n=Ao(e,t);return Array.from({length:n},(o,r)=>r)}function jt(e){return e.label??e.name}function C(e,t){return e?t?t[e]??e:e:""}function Y(e,t){return{...e,...t}}import{jsx as Io}from"react/jsx-runtime";function y(e){return ot(e,(t,n,o)=>Io("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:o},`${n}-${t}`))}import{useCallback as Eo,useState as wo}from"react";import{jsx as D,jsxs as ce}from"react/jsx-runtime";function en(e){let{fields:t=[]}=e.section,[n,o]=wo(!1),r=Eo(()=>o(i=>!i),[]);return ce("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:ce("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-slate-600 dark:text-slate-400",onClick:r,type:"button",children:[D(N,{expanded:n}),D("span",{children:y(e.section.title)})]})}),D(E,{visible:n,children:ce("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-slate-300 pl-4 dark:border-slate-600","data-slot":"field-set-content",children:[e.section.description&&D("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:y(e.section.description)}),e.group]})})]})}import{jsx as X,jsxs as tn}from"react/jsx-runtime";function nn(e){let t=tn("div",{className:"flex flex-col",children:[e.title&&X("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:y(e.title)}),e.description&&X("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:y(e.description)})]});return e.step?tn("div",{className:"flex flex-row items-start gap-4",children:[X("div",{className:"bg-primary text-primary-foreground flex h-6 w-6 shrink-0 items-center justify-center rounded-full",children:X("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}import{jsx as on,jsxs as ko}from"react/jsx-runtime";function K(e){return ko("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:[on(nn,{description:e.description,step:e.step,title:e.title}),on("div",{className:"w-full min-w-0",children:e.children})]})}import{jsx as Lo}from"react/jsx-runtime";function T(e){return Lo("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 de}from"react/jsx-runtime";function rn(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:o}=Y(e.style,{compact:e.section.advanced?.compact}),r=de(T,{compact:o,children:e.children});return!e.section.title&&!e.section.description?r:e.section.advanced?.collapsible?de(en,{section:e.section,group:r}):de(K,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),step:n,title:e.section.title,children:r})}import{jsx as ln}from"react/jsx-runtime";function an(){return ln("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:ln("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}import{useAtomValue as $o}from"jotai";import{atom as O}from"jotai";import{atomFamily as Po}from"jotai-family";import{deepEqual as sn}from"fast-equals";function Do(e,t){let{[t]:n,...o}=e;return o}function Oo(e){return Po(t=>O(n=>n(e)[t]??void 0,(n,o,r)=>{let i=n(e);if(r!=null){let l=i[t];sn(l,r)||o(e,{...i,[t]:r})}else t in i&&o(e,Do(i,t))}))}function Mo(e){return O(null,(t,n)=>{let o=t(e);o&&Object.keys(o).length>0&&n(e,{})})}function _o(e){return O(null,(t,n,o)=>{let i={...t(e)},l=!1;for(let a of o)a in i&&(delete i[a],l=!0);l&&n(e,i)})}function Vo(e){return O(null,(t,n,o)=>{let r=t(e);sn(r,o)||n(e,o)})}function cn(e={}){let t=O(e);return{atom:t,clearAll:Mo(t),clear:_o(t),bulkReport:Vo(t),report:Oo(t)}}var dn=cn(),un=dn.atom,Gi=dn.report;function zo(e,t){return e.fields.every(n=>fn(n,t))}function fn(e,t){return t[e.name]?.hidden??e.hidden??!1}function Ho(e,t){return v(e)?zo(e,t):fn(e,t)}function mn(e){let t=$o(un);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(o=>Ho(o,t))?null:e.children}import{jsx as M,jsxs as gn}from"react/jsx-runtime";function pn(e){let t=U(e.sections,e.definition);return M("div",{className:"h-full w-full",children:M("form",{noValidate:e.noValidate,action:e.action,children:gn(T,{children:[t.map((n,o)=>gn(mn,{fields:n.fields??[],children:[M(rn,{advanced:e.advanced,section:n,step:o+1,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.advanced?.separator&&M(an,{})]},`key-${n.id}-${o}`)),e.control&&M(ye,{isPending:e.isPending,children:e.control})]})})})}import{jsx as Go}from"react/jsx-runtime";function xn(e){return Go("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}import{useState as Bo}from"react";import{jsx as yn,jsxs as bn}from"react/jsx-runtime";function A(e){let t={context:e.context,env:e.config?.env},[n,o]=Bo(()=>s(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),r=()=>o(a=>!a),i=s(e.text)&&u(e.text.title)?y(C(L(e.text.title,t),e.translations)):void 0,l=y(C(L(u(e.text)?e.text:e.text?.message,t),e.translations));return l?bn("div",{className:"flex flex-col gap-2",children:[i&&bn("button",{className:"flex items-center gap-1 text-left text-xs font-medium text-slate-700 hover:text-slate-900 dark:text-slate-300 dark:hover:text-slate-100",onClick:r,type:"button",children:[i,yn(N,{expanded:n})]}),n&&yn(xn,{children:l})]}):null}import{twMerge as Uo}from"tailwind-merge";import{jsx as Yo,jsxs as Xo}from"react/jsx-runtime";function Tn(e){let t=e.style?.showOptionalLabel??!0,n=R(e.field)||x(e.field);return Xo("label",{"data-slot":"field-label","data-normal":n,className:Uo("flex w-fit items-center gap-2 text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,children:[e.children,t&&!e.field.required&&Yo("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:C("(Optional)",e.translations)})]})}import{jsx as hn,jsxs as Ko}from"react/jsx-runtime";function Rn(e){let t={context:e.context,env:e.config?.env},n=L(e.field.label,t);return Ko("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[hn(Tn,{field:e.field,style:e.config?.style,translations:e.translations,children:C(n,e.translations)}),e.horizontal===!0&&hn(A,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}import{Fragment as Zo,jsx as Cn,jsxs as Wo}from"react/jsx-runtime";function Nn(e){return Wo(Zo,{children:[e.field.name&&e.field.label&&Cn(Rn,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&Cn(A,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}function Fn(e,t){return e?t(e):null}import{jsx as Sn}from"react/jsx-runtime";function vn(e){let t=$t(e.field,e.value),{commonPropsWithOptions:n,defaultValue:o}=zt(e.field,e.commonProps,t,e.value),r=Ht(e.field,o);return Fn(e.config.inputs[e.field.type],i=>Sn(Nn,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:Sn(i,{...e.ariaAttributes,...n,...e.dataAttributes,...r})}))}import{jsx as An}from"react/jsx-runtime";function In(e){return!e.errors||e.errors.length===0?null:An("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)=>An("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}import{twMerge as qo}from"tailwind-merge";import{jsx as Jo}from"react/jsx-runtime";function Z(e){let t=e.errors&&e.errors.length>0;return Jo("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Ue]:"true"},...e.disabled&&{[Ye]:"true"},"data-orientation":e.orientation,className:qo("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 Qo}from"tailwind-merge";import{jsx as jo}from"react/jsx-runtime";function En(e){return jo(Z,{...e,orientation:"vertical",className:Qo("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as er}from"tailwind-merge";import{jsx as tr}from"react/jsx-runtime";function wn(e){return tr(Z,{...e,orientation:"horizontal",className:er("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 kn}from"react/jsx-runtime";function Ln(e){let t=xt(e.field),n=x(e.field),o=ht(e.field);return e.horizontal?kn(wn,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:o,isClickable:t,children:e.children}):kn(En,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:o,isClickable:t,children:e.children})}function Pn(e){if(!e.field.type)return null;let t=Dt(e.field,e.disabled),n=Xt(e.field),o=Yt(e.field,e.errors),r={...e.field,disabled:t.disabled};return e.children({ariaAttributes:o,commonProps:t,dataAttributes:n,field:r,horizontal:e.horizontal})}import{twMerge as nr}from"tailwind-merge";import{jsx as ue,jsxs as or}from"react/jsx-runtime";function Dn(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:o}=Y(e.style,{horizontal:Tt(e.field)}),r=Rt(e.field,e.disabled);return or("div",{className:nr("flex flex-col gap-3",qt(t)),children:[ue(Ln,{disabled:r,errors:n,field:e.field,horizontal:o,children:ue(Pn,{disabled:r,errors:n,field:e.field,horizontal:o,children:e.children})}),ue(In,{errors:n,name:e.field.name})]})}import{twMerge as fe}from"tailwind-merge";import{useState as rr}from"react";import{Fragment as ir,jsx as m,jsxs as h}from"react/jsx-runtime";function On(e){let t=e.isMultiField||e.collapsed!=null,[n,o]=rr(t?!e.collapsed:!0);function r(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function i(){o(f=>!f)}let l=e.canRemove&&e.onRemove!=null&&m("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:fe("flex size-6 items-center justify-center rounded text-xl leading-none text-slate-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500 dark:hover:text-red-400"),onClick:r,type:"button",children:m("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),a=h("div",{className:"flex min-w-0 flex-col font-medium text-slate-700 dark:text-slate-400",children:[m("span",{className:"text-base",children:e.previewLabel??h(ir,{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-slate-500 dark:text-slate-500",children:e.previewTags})]}),d=h("div",{className:fe("flex items-center justify-between gap-2",e.isMultiField&&n&&"mb-3"),children:[t?h("div",{className:"flex min-w-0 grow items-center gap-2",children:[h("button",{"aria-expanded":n,"aria-label":`${n?"Collapse":"Expand"} ${e.label} ${e.index+1}`,className:fe("group flex grow items-center gap-2 rounded p-1 text-left text-slate-400","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-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?h("div",{"data-slot":"list-item-card",className:"box-border w-full min-w-0 rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[d,m(E,{visible:n,children:m(T,{children:e.children})})]}):t?h("div",{className:"box-border flex w-full min-w-0 flex-col gap-2",children:[d,m(E,{visible:n,children:m(T,{children:e.children})})]}):h("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 lr}from"react/jsx-runtime";function Mn(e){let t=jt(e.field),n=Jt(e.field);return Qt(e.field,e.value).map(o=>lr(On,{collapsed:e.field.advanced?.collapsed,index:o,isMultiField:n,label:t,children:e.children(o)},o))}import{jsx as ar}from"react/jsx-runtime";function _n(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return ar(K,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}import{jsx as Vn}from"react/jsx-runtime";function $n({children:e,field:t,value:n}){return Vn(_n,{field:t,children:Vn(Mn,{field:t,value:n,children:e})})}import{twMerge as sr}from"tailwind-merge";import{jsx as zn,jsxs as cr}from"react/jsx-runtime";function Hn(e){let t=Wt(e.column?.advanced?.cols);return cr("div",{className:"flex w-full flex-col gap-4",children:[zn("div",{className:sr("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&zn(A,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}import{Fragment as ur}from"react";import{jsx as dr}from"react/jsx-runtime";function Gn(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>H(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:v(n)?{...n,fields:n.fields.map(o=>({...o,name:`${e.field.name}.${e.index}.${o.name}`}))}:n):[];return dr(_,{children:e.children,components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:t,style:e.style,translations:e.translations,value:e.value})}import{jsx as V,jsxs as fr}from"react/jsx-runtime";function _(e){let{field:t,list:n}=e.components;return U(e.fields).map((o,r)=>fr(ur,{children:[v(o)&&V(Hn,{column:o,config:e.config,context:e.context,translations:e.translations,children:V(_,{...e,fields:o.fields})}),H(o)&&V(t,{disabled:e.disabled,field:o,style:e.style,children:e.children}),yt(o)&&V(n,{field:o,value:e.value,children:i=>V(Gn,{children:e.children,components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:o,index:i,style:e.style,translations:e.translations,value:e.value})})]},r))}import{jsx as mr}from"react/jsx-runtime";function Bn(e){return n=>mr(_,{...n,components:e})}var Un=Bn({field:Dn,list:$n});import{jsx as me}from"react/jsx-runtime";function ge(e){let t=e.translations?.[e.lang??""];return me(pn,{advanced:e.advanced,config:e.config,control:e.children,definition:e.definition,readOnly:e.readOnly,sections:e.sections,children:({disabled:n,fields:o})=>me(Un,{config:e.config,context:e.context,disabled:n,fields:o,style:e.config.style,translations:t,value:e.value,children:r=>me(vn,{...r,config:e.config,context:e.context,translations:t,value:e.value})})})}import{Suspense as gr}from"react";import{jsx as Yn}from"react/jsx-runtime";function pr(e){return Yn(gr,{fallback:Yn(ge,{config:e.config,sections:e.sections,readOnly:!0}),children:e.children})}export{pr as Fallback,ge as Form};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { List, Nullable } from '@luna-form/core';
|
|
2
|
+
import type { ReactNode } from 'react';
|
|
3
|
+
export declare function FieldListPreviewItem({ canRemove, children, field, index, isMultiField, itemKey, label, onRemove, previewBadge, previewLabel, previewTags, value, }: {
|
|
4
|
+
canRemove: boolean;
|
|
5
|
+
children: ReactNode;
|
|
6
|
+
field: List;
|
|
7
|
+
index: number;
|
|
8
|
+
isMultiField: boolean;
|
|
9
|
+
itemKey: string | number;
|
|
10
|
+
label: string;
|
|
11
|
+
onRemove: (index: number) => void;
|
|
12
|
+
previewBadge?: string | string[];
|
|
13
|
+
previewLabel?: string;
|
|
14
|
+
previewTags?: string | string[];
|
|
15
|
+
value?: Nullable<Record<string, unknown> | unknown[]>;
|
|
16
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
export declare function FieldPreviewItem({ initialValue, name, separator, }: Readonly<{
|
|
1
|
+
export declare function FieldPreviewItem({ className, initialValue, name, separator, }: Readonly<{
|
|
2
|
+
className?: string;
|
|
2
3
|
initialValue?: unknown;
|
|
3
4
|
name: string;
|
|
4
5
|
separator?: boolean;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
export declare function FieldPreview({ className, label, name, previews, value, }: Readonly<{
|
|
2
|
+
className?: string;
|
|
3
|
+
label?: string;
|
|
3
4
|
name: string;
|
|
4
|
-
previews: string[];
|
|
5
|
-
value?:
|
|
5
|
+
previews: string | string[];
|
|
6
|
+
value?: Record<string, unknown> | unknown[] | null;
|
|
6
7
|
}>): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type AriaAttributes, type CommonProps, type DataAttributes, type DataSource, type Field, type Nullable, type Schema } from '@luna-form/core';
|
|
1
|
+
import { type AriaAttributes, type CommonProps, type DataAttributes, type DataSource, type Field, type Nullable, type Schema, type Schemas } from '@luna-form/core';
|
|
2
2
|
import type { Config, InputChange } from '../../type';
|
|
3
3
|
export type InputCoreProps = Readonly<{
|
|
4
4
|
ariaAttributes?: AriaAttributes;
|
|
@@ -7,6 +7,7 @@ export type InputCoreProps = Readonly<{
|
|
|
7
7
|
context?: Record<string, unknown>;
|
|
8
8
|
dataAttributes?: DataAttributes;
|
|
9
9
|
field: Field;
|
|
10
|
+
getSchema: () => readonly [Schemas, Field[]];
|
|
10
11
|
horizontal?: boolean;
|
|
11
12
|
onMount: (name: string, schema: Schema, field: Field) => void;
|
|
12
13
|
onUnmount: (name: string, options?: {
|
|
@@ -17,10 +18,10 @@ export type InputCoreProps = Readonly<{
|
|
|
17
18
|
value?: Nullable<Record<string, unknown>>;
|
|
18
19
|
}>;
|
|
19
20
|
export declare function useInputCore(props: InputCoreProps, deps: Readonly<{
|
|
21
|
+
setSource: (target: string, source?: DataSource) => void;
|
|
20
22
|
setValue: (value: unknown) => void;
|
|
21
23
|
shouldSkipOnChange: () => boolean;
|
|
22
24
|
value: unknown;
|
|
23
|
-
setSource: (target: string, source?: DataSource) => void;
|
|
24
25
|
}>): {
|
|
25
26
|
readonly applyChangeEventsRef: import("react").RefObject<((selected: unknown) => void) | null>;
|
|
26
27
|
readonly commonProps: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare function resolveValue(name: string, currentValue: Record<string, unknown>): unknown;
|
|
1
|
+
export declare function resolveValue(name: string, currentValue: Record<string, unknown> | unknown[]): unknown;
|
|
@@ -2,10 +2,11 @@ export declare function FieldListItem(props: Readonly<{
|
|
|
2
2
|
canRemove?: boolean;
|
|
3
3
|
children: React.ReactNode;
|
|
4
4
|
collapsed?: boolean;
|
|
5
|
-
collapsible?: boolean;
|
|
6
5
|
index: number;
|
|
7
6
|
isMultiField: boolean;
|
|
8
7
|
label: string;
|
|
9
8
|
onRemove?: (index: number) => void;
|
|
10
|
-
|
|
9
|
+
previewLabel?: React.ReactNode;
|
|
10
|
+
previewTags?: React.ReactNode;
|
|
11
|
+
previewBadge?: React.ReactNode;
|
|
11
12
|
}>): 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.
|
|
3
|
+
"version": "0.0.48",
|
|
4
4
|
"description": "A React library for building forms based on JSON",
|
|
5
5
|
"main": "./dist/client/cjs/index.js",
|
|
6
6
|
"module": "./dist/client/esm/index.js",
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"eslint-plugin-react": "7.37.5",
|
|
35
35
|
"eslint-plugin-react-hooks": "7.1.1",
|
|
36
36
|
"eslint-plugin-react-refresh": "0.5.2",
|
|
37
|
-
"@luna-form/core": "0.0.
|
|
37
|
+
"@luna-form/core": "0.0.48"
|
|
38
38
|
},
|
|
39
39
|
"license": "Apache-2.0",
|
|
40
40
|
"repository": {
|