react-luna-form 0.0.39 → 0.0.40
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/client/cjs/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var Ri=Object.create;var Ee=Object.defineProperty;var Si=Object.getOwnPropertyDescriptor;var Ai=Object.getOwnPropertyNames;var Fi=Object.getPrototypeOf,vi=Object.prototype.hasOwnProperty;var Ci=(e,t)=>{for(var n in t)Ee(e,n,{get:t[n],enumerable:!0})},Kt=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Ai(t))!vi.call(e,o)&&o!==n&&Ee(e,o,{get:()=>t[o],enumerable:!(r=Si(t,o))||r.enumerable});return e};var Ni=(e,t,n)=>(n=e!=null?Ri(Fi(e)):{},Kt(t||!e||!e.__esModule?Ee(n,"default",{value:e,enumerable:!0}):n,e)),Ei=e=>Kt(Ee({},"__esModule",{value:!0}),e);var Ja={};Ci(Ja,{Form:()=>bi});module.exports=Ei(Ja);var Qt=require("react/jsx-runtime");function Jt(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,Qt.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var le=require("react");var St=require("react/jsx-runtime");function jt(e){return(0,St.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,St.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 Ie="input",en="input/date",tn="input/email",nn="input/number";var rn="input/time";var on="textarea",an="radio",ln="checkbox",At="list";var sn="select",cn="select/day",un="select/month",dn="select/timezone",mn="select/year";var fn="chips",gn="chips/day",pn="chips/month",me="column",yn="description",Ft="fields",bn="label",E="value",ke="options",vt="email",hn="number",xn="password",Tn="tel",fe="text",Rn="aria-errormessage",Sn="aria-invalid",An="data-invalid",Fn="data-readonly",vn="aria",Cn="data",we="max",Nn="maxLength",Pe="min",En="minLength",ie="$ref";var In="source",kn="state",De="http://luna.internal";var wn="type",Pn={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 Le(e){return e==null||e===""}function L(e){return S(e)||typeof e=="number"||Ct(e)}function S(e){return typeof e=="string"}function Dn(e){return d(e)&&"url"in e}function Ct(e){return typeof e=="boolean"}var Ii=/^\d+$/;function Et(e,t=[],n=E){return Array.isArray(t)?t.find(r=>{let o=It(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}:{value:e}}function It(e,t=E){if(e!=null){if(Array.isArray(e)&&e.every(L)||L(e))return e;if(d(e)){let n=ki(e,t);if(L(n))return n}}}function ki(e,t){let n=F(e,t);if(L(n))return n}function Ln(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 On(e,t={description:yn,label:bn,value:E}){return e.map(n=>{if(d(n)){let r=F(n,t.label),o=F(n,t.value);if(L(r)&&L(o)){let i=F(n,t.description);return{label:`${r}`,value:`${o}`,...L(i)&&{description:`${i}`}}}}return n})}function Mn(e=fe){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==Ie?n.trim().toLowerCase():fe}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 _n(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=Ii.test(s);l in o||(o[l]=c?[]:{}),o=o[l]}let i=r[r.length-1];o[i]=e[n]}return Nt(t),t}function Nt(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)&&Nt(o);e[t]=r}else d(n)&&Nt(n)}}var wi=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function B(e,t={}){if(S(e))return Pi(e,t);if(Array.isArray(e))return e.map(n=>B(n,t));if(d(e)){let n={};for(let r in e)n[r]=B(e[r],t);return n}return e}function Oe(e,t={}){return ge(e)?B(e,t):e}function ge(e){return S(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>ge(t)):d(e)?Object.values(e).some(t=>ge(t)):!1}function Pi(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,r)=>{let o=r.includes(".")?F(t,r):t[r];return L(o)?String(o):n})}function Gn(e,t){if(!S(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=wi.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 pe={error:(...e)=>{kt()&&!wt()&&Me().error("[Luna Form]",...e)},warn:(...e)=>{kt()&&!wt()&&Me().warn("[Luna Form]",...e)},info:(...e)=>{kt()&&!wt()&&Me().info("[Luna Form]",...e)}},kt=()=>typeof Me()<"u",wt=()=>!0,Me=()=>globalThis.console;function Hn(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===E&&n.push(i),i.action===In&&r.push(i),i.action===kn&&o.push(i);t({sources:r,states:o,values:n})}function zn(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(Dn(i)){let a=B(i.url,e),l=i.body?B(i.body,e):i.body;n(o,{...i,url:a,body:l})}}}var ye={eq:Vi,gt:zi,gte:$i,in:Gi,lt:Ui,lte:Bi,neq:_i,nin:Hi},Di=/^\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 Li(e){return typeof e=="string"&&Di.test(e)}function Oi(e){return typeof e=="string"&&$n.test(e)}function Mi(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 Y(e){return Li(e)?new Date(e).getTime():Oi(e)?Mi(e):Number(e)}function Vi(e,t){return e===t}function _i(e,t){return e!==t}function Gi(e,t){return Array.isArray(t)&&t.includes(String(e))}function Hi(e,t){return Array.isArray(t)&&!t.includes(String(e))}function zi(e,t){return Y(e)>Y(t)}function $i(e,t){return Y(e)>=Y(t)}function Ui(e,t){return Y(e)<Y(t)}function Bi(e,t){return Y(e)<=Y(t)}function Un(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=Yi(e,a);n(l,s?i:void 0)}}function Yi(e,t){return t===void 0?!0:S(t)?Ve(e,E)===t:Ct(t)?!!Ve(e,E)===t:Array.isArray(t)?t.includes(String(Ve(e,E))):Xi(e,t)}function Xi(e=null,t){let n=Ve(e,t.field??E),{operator:r="eq",value:o}=t,i=ye[r];return i?i(n,o):!1}function Ve(e,t){return d(e)?F(e,t):e}function Bn(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?B(i,e):void 0)}var Yn=e=>b(cn)(e),_e=e=>b(un)(e),Ge=e=>b(mn)(e),Xn=e=>b(dn)(e),Zn=e=>b(gn)(e),qn=e=>b(pn)(e),He=b(en),be=b(rn),v=b(ln),ze=b(fn),G=b(an),Pt=b(Ie),X=b(sn),Dt=b(on),Wn=b(fe,vt,xn,Tn),Kn=b(tn,vt),$e=b(nn,hn);function Ue(e){return G(e)||v(e)}function Jn(e){return e.type===At}function Z(e){return e.type===me}function Be(e){return e.type!==me&&e.type!==At}function he(e){return X(e)||G(e)}function Qn(e){return Pt(e)||Dt(e)}function H(e){return e!=null&&e!==""}function b(...e){return t=>{let n=S(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function jn(e,t={}){if(X(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&d(n))return[n]}}function er(e){return G(e)||v(e)?!0:e.advanced?.horizontal??!1}function tr(e){return v(e)?e.advanced?.reverse!==!1:!1}function nr(e,t){let n=e.readonly??!1;return t||n}function rr(e){if(G(e)||X(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||d(t)&&!(ie in t))return t}}var T=require("date-fns"),Zi=/^\d+$/,Xe=new Date(2e3,0,1),qi=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[];function Lt(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function Ot(){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 Mt(){return new Date().getFullYear()}function Wi(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function Ki(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return Pn[n]??"Other"}function Ji(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function or(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=Ji(r,e);return{offset:i,longName:a}}function ir(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}var Ye=null;function lr(){if(Ye)return Ye;let e=new Date,t=Wi(),n=new Map,r=ir(t),{offset:o,longName:i}=or(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let s of qi()){if(s===t)continue;let c=ir(s),{offset:u,longName:g}=or(s,e),x={value:s,label:`${c} - ${g} (${u})`},R=Ki(s);if(R==="Other")continue;let C=n.get(R);C?C.push(x):n.set(R,[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 Ye=[{label:"Suggested",items:[a]},...l],Ye}function Vt(e,t){if(typeof e=="number")return e;let n=t??Mt(),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 Zi.test(r)?parseInt(r,10):n}function sr(e,t){if(!e)return"";try{let n=(0,T.parse)(e,t,Xe);return(0,T.isValid)(n)?(0,T.format)(n,"yyyy-MM-dd"):""}catch{return""}}function cr(e,t){if(!e)return"";try{let n=(0,T.parse)(e,t,Xe);return(0,T.isValid)(n)?(0,T.format)(n,"HH:mm:ss"):""}catch{return""}}function ur(e,t="HH:mm"){if(!e)return"";try{let n=e.split(":").length===3?"HH:mm:ss":"HH:mm",r=(0,T.parse)(e,n,Xe);return(0,T.isValid)(r)?(0,T.format)(r,t):""}catch{return""}}function dr(e,t="yyyy-MM-dd"){if(!e)return"";try{let n=(0,T.parse)(e,"yyyy-MM-dd",Xe);return(0,T.isValid)(n)?(0,T.format)(n,t):""}catch{return""}}function xe(e){return e.advanced?.format??"HH:mm"}function Ze(e){return e.advanced?.format??"yyyy-MM-dd"}var qe=Mt();function Qi(e){if(ze(e))return ji(e)}function ji(e){if(Zn(e))return Ot();if(qn(e))return Lt()}function ea(e){if(X(e))return ta(e)}function ta(e){if(Yn(e))return Ot();if(_e(e))return Lt();if(Ge(e)){let t=e.advanced?.length?.min??qe,n=e.advanced?.length?.max??qe+5;return ar(Vt(t,qe),Vt(n,qe))}if(Xn(e))return lr()}function mr(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return Pt(e)?{...n,...na(e)}:X(e)?{...n,...fr(e,ea)}:Dt(e)?{...n,...oa(e)}:ze(e)?{...n,...ra(e)}:n}function na(e){let t=Mn(e.type),n={...e,type:t};return{...aa(e),...gr(e),...ia(n),...Wn(n)?pr(n):{},type:t}}function fr(e,t){let n=t(e);return n?{options:n}:{}}function ra(e){let t=fr(e,Qi),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function oa(e){return{...gr(e),...pr(e)}}function gr(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function ia(e){return $e(e)?la(e):{}}function aa(e){if(be(e)){let t=xe(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function pr(e){return yr(e,{min:En,max:Nn})}function la(e){return yr(e,{min:Pe,max:we})}function yr(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 br(e,t){let n=rr(e);return n||jn(e,t)}function sa(e,t){let n=d(t)&&e.name in t?t[e.name]:t,r=It(n,e.advanced?.entity);return be(e)&&H(r)?ca(e,r):He(e)&&H(r)?fa(e,r):r}function ca(e,t){let n=xe(e);return S(t)?cr(t,n):t}function ua(e,t,n){return he(e)&&Array.isArray(n)?{...t,[ke]:n}:t}function da(e,t,n){if(e.required&&!H(n)&&X(e)&&e.advanced?.preselected!==!1&&ke in t){let r=t[ke];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function ma(e,t){return he(e)&&Array.isArray(t)?On(t,e.advanced?.options):t}function hr(e,t,n,r){let o=sa(e,r),i=Array.isArray(n)?ma(e,n):n,a=ua(e,t,i),l=da(e,a,o);return{commonPropsWithOptions:a,defaultValue:l}}function xr(e,t){return v(e)?{checked:H(t)?t:!1}:ze(e)?{value:Array.isArray(t)?t:[]}:{value:t??""}}function fa(e,t){let n=Ze(e);return S(t)?sr(t,n):t}var ga=/^#\/definition\//;function Ke(e=[],t){let n=We(e,t);return Array.isArray(n)?n.filter(ya).sort((r,o)=>Tr(r)-Tr(o)):[]}function We(e,t,n=new Map,r=new WeakSet){if(!pa(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=>We(i,t,n,r));if(ie in e&&S(e[ie])){let i=e[ie].replace(ga,""),a=F(t,i);return a!==null?We(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=We(a,t,n,r);return r.delete(e),n.set(e,o),o}function Rr(e){return Object.entries(e??{})}function Tr(e){return e.order??Number.MAX_VALUE}function pa(e){return e!==void 0&&d(e)&&Object.keys(e).length>0}function ya(e){return wn in e?!0:Array.isArray(e[Ft])?e[Ft].length>0:!0}function Sr(e,t){let n={};for(let[r,o]of Rr(t))n[`${e}-${r}`]=o;return n}function ba(e){return Sr(vn,e)}function ha(e){return Sr(Cn,e)}function Ar(e,t){let n=ba(e.advanced?.aria);return t&&t.length>0&&(n[Sn]="true",n[Rn]=`${e.name}-error`),n}function Fr(e){return ha(e.advanced?.data)}var vr={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Cr={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function Nr(e,t=2){return vr[e&&e in vr?e:t]}function Er(e){if(e&&e in Cr)return Cr[e]}function xa(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 Ir(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===me}function kr(e,t){let n=xa(e,t);return Array.from({length:n},(r,o)=>o)}function wr(e){return e.label??e.name}var p=require("zod");function y(e,t){return e?t?t[e]??e:e:""}var Ta=[[$e,va],[Kn,Ra],[Ge,Ca],[_e,Na],[v,Sa],[G,Aa]];function Dr(e,t=[],n){let r=p.z.object(e);return t.length===0?r:wa(r,t,n)}function Lr(e){let t={},n=p.z.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function Or(e,t){for(let[n,r]of Ta)if(n(e))return r(e,t);return Fa(e,t)}function Ra(e,t){let n=p.z.string().trim();if(e.required){let r=ae(e,t),o=n.min(1,r).pipe(Pr(e,t));return p.z.preprocess(i=>Le(i)?"":i,o)}return n.pipe(Pr(e,t)).or(p.z.literal("")).nullable()}function Sa(e,t){let n=p.z.coerce.boolean();return e.required?(n=n.refine(r=>r===!0,{message:ae(e,t)}),p.z.preprocess(r=>r===null?!1:r,n)):n.nullable()}function Aa(e,t){let n=p.z.coerce.string();return e.required?(n=n.min(1,ae(e,t)),p.z.preprocess(r=>Le(r)?"":r,n)):n.or(p.z.literal("")).nullable()}function Fa(e,t){let n=p.z.coerce.string().trim();return n=Mr(n,e,t),e.required?(n=Vr(n,e,t),p.z.preprocess(r=>Le(r)?"":r,n)):n.nullable()}function va(e,t){let n=p.z.coerce.number().int();return n=Mr(n,e,t),e.required?(n=Vr(n,e,t),p.z.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function Ca(e,t){return e.required?p.z.preprocess(Ea,p.z.coerce.number({message:ae(e,t)}).int()):p.z.coerce.number().int().nullable()}function Na(e,t){let n=ae(e,t),r=p.z.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function Ea(e){return e===null||e===""?void 0:e}function Pr(e,t){let n=e.validation?.email?y(e.validation?.email,t):void 0;return p.z.email(n)}function Mr(e,t,n){return e=Ia(e,t,n),e=ka(e,t,n),e}function Vr(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,ae(t,n)):e}var Ia=(e,t,n)=>_r(e,t,Pe,n),ka=(e,t,n)=>_r(e,t,we,n);function _r(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?y(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function wa(e,t=[],n){let r=Da(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:l}of r)if(!Pa(o,a,l)){let s=y(l.message,n);i.addIssue({code:"custom",message:s,path:[a]})}})}function Pa(e,t,n){let r=n.operator??"eq",o=ye[r];return o?o(e[t],e[n.field]):!1}function Da(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 Gr(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let l=a.operator??"eq",s=ye[l];if(s&&!s(e,n(a.field))&&a.message){let c=y(a.message,r);o.push(c)}}return o}function ae(e,t){return e.validation?.required?y(e.validation?.required,t):void 0}function Hr(e,t){if(!t||!Oa(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||La(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 La(e){return e==="https"?"443":"80"}function Oa(e){return/^(https?:)?\/\//.test(e)}function zr(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,De);new URL(t,De).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(De,""):o}catch{return t||e}}function $r(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=zr(t.url,n.url),o=Ma(t,n),i=Va(t,n);return{...t,...n,url:r,body:o,headers:i}})}function Ma(e,t){return d(t.body)&&d(e?.body)?{...e.body,...t.body}:t.body??e?.body}function Va(e,t){return d(t.headers)&&d(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function Je(e,t){return{...e,...t}}var Ur=require("react/jsx-runtime");function q(e){return Gn(e,(t,n,r)=>(0,Ur.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}var O=require("react/jsx-runtime");function Br(e){let{fields:t=[]}=e.section,[n,r]=(0,le.useState)(!1),o=(0,le.useCallback)(()=>r(i=>!i),[]);return(0,O.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,O.jsx)("legend",{children:(0,O.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,O.jsx)(jt,{expanded:n}),(0,O.jsx)("span",{children:q(e.section.title)})]})}),(0,O.jsx)(le.Activity,{mode:n?"visible":"hidden",children:(0,O.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,O.jsx)("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:q(e.section.description)}),e.group]})})]})}var j=require("react/jsx-runtime");function Yr(e){return(0,j.jsxs)(j.Fragment,{children:[e.title&&(0,j.jsx)("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:q(e.title)}),e.description&&(0,j.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:q(e.description)})]})}var je=require("react/jsx-runtime");function Qe(e){return(0,je.jsxs)("fieldset",{"data-slot":"field-set","data-empty":e.empty,className:"flex flex-col data-[empty=false]:gap-6",id:e.id,children:[(0,je.jsx)(Yr,{description:e.description,title:e.title}),e.children]})}var Xr=require("react/jsx-runtime");function ee(e){return(0,Xr.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 et=require("react/jsx-runtime");function Zr(e){let{fields:t=[]}=e.section,{compact:n}=Je(e.style,{compact:e.section.compact}),r=(0,et.jsx)(ee,{compact:n,children:e.children});return!e.section.title&&!e.section.description?r:e.section.advanced?(0,et.jsx)(Br,{section:e.section,group:r}):(0,et.jsx)(Qe,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),title:e.section.title,children:r})}var Qr=require("jotai");var W=require("jotai"),_t=require("jotai-family"),tt=require("fast-equals");function nt(e,t){let{[t]:n,...r}=e;return r}function _a(e){return(0,_t.atomFamily)(t=>(0,W.atom)(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];(0,tt.deepEqual)(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,nt(i,t))}))}function Ga(e){return(0,W.atom)(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function Ha(e){return(0,W.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 za(e){return(0,W.atom)(null,(t,n,r)=>{let o=t(e);(0,tt.deepEqual)(o,r)||n(e,r)})}function qr(e,t={}){let{merge:n,validateTarget:r}=t;return(0,_t.atomFamily)(o=>(0,W.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 g=u[o];(!g||!(0,tt.deepEqual)(g,s))&&(u[o]=s,a(e,{...c,[l]:u}))}else o in u&&(delete u[o],Object.keys(u).length===0?a(e,nt(c,l)):a(e,{...c,[l]:u}))}))}function Wr(e){return(0,W.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 se(e={}){let t=(0,W.atom)(e);return{atom:t,clearAll:Ga(t),clear:Ha(t),bulkReport:za(t),report:_a(t)}}var Kr=se(),rt=Kr.atom,Jr=Kr.report;function $a(e,t){return e.fields.every(n=>jr(n,t))}function jr(e,t){return t[e.name]?.hidden??e.hidden??!1}function Ua(e,t){return Z(e)?$a(e,t):jr(e,t)}function ot(e){let t=(0,Qr.useAtomValue)(rt);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>Ua(r,t))?null:e.children}var Gt=require("react/jsx-runtime");function eo(){return(0,Gt.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,Gt.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}var z=require("react/jsx-runtime");function to(e){let t=Ke(e.sections,e.definition);return(0,z.jsx)("div",{className:"h-full w-full",children:(0,z.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,z.jsxs)(ee,{children:[t.map((n,r)=>(0,z.jsxs)(ot,{fields:n.fields??[],children:[(0,z.jsx)(Zr,{section:n,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.separator&&(0,z.jsx)(eo,{})]},r)),e.control&&(0,z.jsx)(Jt,{isPending:e.isPending,children:e.control})]})})})}var no=require("react/jsx-runtime");function it(e){return(0,no.jsx)("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}var ro=require("react/jsx-runtime");function at(e){let t={context:e.context,env:e.config?.env},n=y(Oe(e.text,t),e.translations),r=q(n);return r?(0,ro.jsx)(it,{children:r}):null}var oo=require("tailwind-merge"),lt=require("react/jsx-runtime");function io(e){let t=e.style?.showOptionalLabel??!0,n=G(e.field)||v(e.field);return(0,lt.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,oo.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,lt.jsx)("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:y("(Optional)",e.translations)})]})}var Te=require("react/jsx-runtime");function ao(e){let t={context:e.context,env:e.config?.env},n=Oe(e.field.label,t);return(0,Te.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,Te.jsx)(io,{field:e.field,style:e.config?.style,translations:e.translations,children:y(n,e.translations)}),e.horizontal===!0&&(0,Te.jsx)(at,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}var te=require("react/jsx-runtime");function lo(e){return(0,te.jsxs)(te.Fragment,{children:[e.field.name&&e.field.label&&(0,te.jsx)(ao,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&(0,te.jsx)(at,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}function st(e,t){return e?t(e):null}var Ht=se(),so=Ht.clear,co=Ht.bulkReport,ct=Ht.report;var ut=se(),dt=ut.atom,uo=ut.clearAll,mo=ut.clear,mt=ut.report;var h=require("react");var fo=require("jotai");var Ba=e=>{let t=$r(e);if(t)return t},Ya=e=>e.trim()!=="",go=(0,fo.atom)({}),po=qr(go,{merge:Ba,validateTarget:Ya}),yo=Wr(go);var xo=require("jotai");var bo=Ni(require("swr"),1);function ho(e=null,t,n=!1){let{data:r,error:o}=(0,bo.default)(Xa(e,t,n),t.fetcher.provider);if(o&&pe.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return Ln(r,e.namespace)}return null}function Xa(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!ge(e.url)){if(Hr(e.url,t.fetcher.remotePatterns))return e;pe.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function To(e,t,n){let r=br(e,n),[o,i]=(0,xo.useAtom)(po(e.name));return[ho(o??r,t,e.disabled),i]}function Ro(e){let t=He(e)?Ze(e):null,n=be(e)?xe(e):null;return{dateFormat:t,timeFormat:n}}var ne=require("react");function So(e,t,n,r){let{name:o}=e,i=(0,ne.useMemo)(()=>Or(e,r),[e,r]),a=(0,ne.useEffectEvent)(s=>{s&&t(s,i,e)}),l=(0,ne.useEffectEvent)(s=>{s&&n(s)});return(0,ne.useEffect)(()=>(a(o),()=>{l(o)}),[o]),i}var ue=require("jotai");var ce=require("react");function Ao(){let e=(0,ce.useRef)(null);return(0,ce.useEffect)(()=>()=>{e.current&&clearTimeout(e.current)},[]),(0,ce.useCallback)((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}var Fo=require("fast-equals");var vo=require("jotai"),K=require("react");function Co(e,t){let{name:n}=e,r=(0,K.useRef)(!1),[o,i]=(0,vo.useAtom)(mt(n)),a=(0,K.useEffectEvent)(s=>{let c=Za(n,s);H(c)&&((0,Fo.deepEqual)(o,c)||(r.current=!0),i(c))});(0,K.useEffect)(()=>{t&&a(t)},[t]);let l=(0,K.useCallback)(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:l,value:o}}function Za(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 zt=require("react/jsx-runtime");function No(e){let t=(0,ue.useStore)(),n=e.field.advanced?.entity,r=Ao(),[,o]=(0,h.useTransition)(),{setValue:i,shouldSkipOnChange:a,value:l}=Co(e.field,e.value),s=(0,h.useRef)(!1),c=(0,h.useRef)(l);c.current=l;let u=(0,h.useRef)(e.translations);u.current=e.translations;let g=Qn(e.field),x=Ue(e.field),R=(0,ue.useSetAtom)(dt),C=(0,ue.useSetAtom)(rt),k=(0,ue.useSetAtom)(ct(e.field.name)),[A,_]=To(e.field,e.config,l),w=So(e.field,e.onMount,e.onUnmount,e.translations),N=y(e.commonProps.placeholder,e.translations),U={...e.commonProps,placeholder:N},{commonPropsWithOptions:P,defaultValue:Fe}=hr(e.field,U,A,l),{dateFormat:yt,timeFormat:bt}=Ro(e.field),Zt=(0,h.useRef)(null);Zt.current=f=>{if(i(f),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:f})}};let ht=(0,h.useRef)(null);ht.current=f=>{let m=e.field.event?.change;m&&Hn(m,({sources:Q,states:Ce,values:xt})=>{o(()=>{zn(f,Q,(D,oe)=>_(D,oe)),Un(f,Ce,(D,oe)=>{C(Ne=>oe?D.reduce((Tt,Rt)=>({...Tt,[Rt]:oe}),Ne):D.reduce((Tt,Rt)=>nt(Tt,Rt),Ne))}),Bn(f,xt,(D,oe)=>{R(Ne=>({...Ne,[D]:oe}))})})})};let hi=xr(e.field,Fe),ve=(0,h.useCallback)(f=>{let Q=w.safeParse(f).error?.issues.map(D=>D.message)??[],Ce=e.field.validation?.custom,xt=Ce?Gr(f,Ce,D=>t.get(mt(D)),u.current):[];k([...Q,...xt])},[e.field.validation?.custom,w,k,t]),qt=(0,h.useCallback)((f,m)=>{if(g){r(()=>{m({value:f})},300);return}m(Et(f,A,n))},[A,n,g,r]);(0,h.useEffect)(()=>{if(s.current||!e.value)return;if(!e.field.event?.change){s.current=!0;return}if(!((!he(e.field)||!!A&&A.length>0)&&H(Fe)))return;s.current=!0;let m=String(Fe),Q=g?{value:m}:Et(m,A,n);ht.current?.(Q)},[A,Fe,n,g,e.field,e.value]);let Wt=(0,h.useCallback)(f=>{let m=f.target.value;return bt!==null?ur(m,bt):yt!==null?dr(m,yt):m},[bt,yt]),xi=(0,h.useCallback)(f=>{let m=Wt(f);!x&&a()&&(!g||m===c.current)||(Zt.current?.(m),e.config.validation.change&&ve(m),e.field.event?.change&&qt(m,Q=>{ht.current?.(Q)}))},[Wt,qt,x,g,e.config.validation.change,e.field.event?.change,a,ve]),Ti=(0,h.useCallback)(f=>{if(!x){let m=f.target.value;e.config.validation.blur&&ve(m)}},[x,e.config.validation.blur,ve]);return st(e.config.inputs[e.field.type],f=>(0,zt.jsx)(lo,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:(0,zt.jsx)(f,{...P,...e.ariaAttributes,...e.dataAttributes,...hi,onBlur:Ti,onChange:xi})}))}var $t=require("react/jsx-runtime");function Eo(e){return!e.errors||e.errors.length===0?null:(0,$t.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,$t.jsx)("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var Io=require("tailwind-merge"),ko=require("react/jsx-runtime");function ft(e){let t=e.errors&&e.errors.length>0;return(0,ko.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[An]:"true"},...e.disabled&&{[Fn]:"true"},"data-orientation":e.orientation,className:(0,Io.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 wo=require("tailwind-merge"),Do=require("react/jsx-runtime");function Po(e){return(0,Do.jsx)(ft,{...e,orientation:"vertical",className:(0,wo.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var Lo=require("tailwind-merge"),Mo=require("react/jsx-runtime");function Oo(e){return(0,Mo.jsx)(ft,{...e,orientation:"horizontal",className:(0,Lo.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 Ut=require("react/jsx-runtime");function Vo(e){let t=Ue(e.field),n=v(e.field),r=tr(e.field);return e.horizontal?(0,Ut.jsx)(Oo,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):(0,Ut.jsx)(Po,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function _o(e){if(!e.field.type)return null;let t=mr(e.field,e.disabled),n=Fr(e.field),r=Ar(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 Go=require("tailwind-merge"),de=require("react/jsx-runtime");function Ho(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=Je(e.style,{horizontal:er(e.field)}),o=nr(e.field,e.disabled);return(0,de.jsxs)("div",{className:(0,Go.twMerge)("flex flex-col gap-3",Er(t)),children:[(0,de.jsx)(Vo,{disabled:o,errors:n,field:e.field,horizontal:r,children:(0,de.jsx)(_o,{disabled:o,errors:n,field:e.field,horizontal:r,children:e.children})}),(0,de.jsx)(Eo,{errors:n,name:e.field.name})]})}var zo=require("jotai"),Yo=require("react/jsx-runtime");function $o(e){return(t,n)=>o=>{let i=(0,zo.useAtomValue)(e(o.field.name)),a=n(i,o);return a===null?null:(0,Yo.jsx)(t,{...o,...a})}}var qa=$o(ct);function Uo(e){return qa(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var Wa=$o(Jr);function Bo(e){return Wa(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var Xo=Bo(Uo(Ho));var Zo=require("tailwind-merge");var I=require("react/jsx-runtime");function qo(e){function t(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}let n=e.canRemove&&e.onRemove!=null&&(0,I.jsx)("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:(0,Zo.twMerge)("rounded p-1 text-xl text-slate-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500 dark:hover:text-red-400"),onClick:t,type:"button",children:(0,I.jsx)("span",{"aria-hidden":"true",children:"\xD7"})});return e.isMultiField?(0,I.jsxs)("div",{className:"rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[(0,I.jsxs)("div",{className:"mb-3 flex items-center justify-between",children:[(0,I.jsxs)("span",{className:"text-sm font-medium text-slate-400 dark:text-slate-500",children:[e.label," ",e.index+1]}),n]}),(0,I.jsx)(ee,{children:e.children})]}):(0,I.jsxs)("div",{className:"flex items-start gap-2",children:[(0,I.jsx)(ee,{children:e.children}),n&&(0,I.jsx)("div",{className:"shrink-0",children:n})]})}var Jo=require("tailwind-merge");var Wo=require("jotai"),M=require("react");function Ko(e,t){let n=e.advanced?.length?.min??1,r=e.advanced?.length?.max??1/0,[o,i]=(0,M.useState)(()=>kr(e,t)),a=(0,M.useRef)(o.length),l=(0,M.useRef)(o);(0,M.useLayoutEffect)(()=>{l.current=o});let s=(0,Wo.useSetAtom)(dt),c=(0,M.useCallback)(()=>{i(R=>{if(R.length>=r)return R;let C=a.current++;return[...R,C]})},[r]),u=(0,M.useCallback)(R=>{if(l.current.length<=n)return;let C=l.current[R];i(k=>k.length<=n?k:k.filter((A,_)=>_!==R)),s(k=>{let A={...k},_=`${e.name}.`,w=[];for(let N of e.fields)if(Z(N))for(let U of N.fields)w.push(U.name);else w.push(N.name);for(let N of w)delete A[`${_}${C}.${N}`];return A})},[e.name,e.fields,n,s]),g=o.length<r,x=o.length>n;return[o,c,u,g,x,r]}var $=require("react/jsx-runtime");function Qo(e){let[t,n,r,o,i,a]=Ko(e.field,e.value),l=wr(e.field),s=e.field.advanced?.action??"Add item",c=a!==1/0,u=Ir(e.field);return(0,$.jsxs)($.Fragment,{children:[t.map((g,x)=>(0,$.jsx)(qo,{canRemove:i,index:x,isMultiField:u,label:l,onRemove:r,children:e.children(g)},g)),(0,$.jsxs)("button",{"aria-disabled":!o,"aria-label":c?`${s}, ${t.length} of ${a}`:s,className:(0,Jo.twMerge)("flex w-full items-center gap-1.5 rounded py-1","text-sm font-medium text-slate-500","transition-colors duration-150","hover:text-slate-800","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:ring-offset-2 focus-visible:outline-none","dark:text-slate-400 dark:hover:text-slate-200",!o&&"cursor-not-allowed opacity-50 hover:text-slate-500 dark:hover:text-slate-400"),disabled:!o,onClick:n,type:"button",children:[(0,$.jsx)("span",{"aria-hidden":"true",children:"+"}),s,c&&(0,$.jsxs)("span",{"aria-hidden":"true",className:"ml-auto text-slate-400 tabular-nums dark:text-slate-500",children:[t.length," / ",a]})]})]})}var ei=require("react/jsx-runtime");function jo(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return(0,ei.jsx)(Qe,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}var gt=require("react/jsx-runtime");function ti({children:e,field:t,value:n}){return(0,gt.jsx)(ot,{container:t,fields:t.fields,children:(0,gt.jsx)(jo,{field:t,children:(0,gt.jsx)(Qo,{field:t,value:n,children:e})})})}var ni=require("tailwind-merge");var Re=require("react/jsx-runtime");function ri(e){let t=Nr(e.column?.advanced?.cols);return(0,Re.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[(0,Re.jsx)("div",{className:(0,ni.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&(0,Re.jsx)(it,{children:e.column.description})]})}var ai=require("react");var ii=require("react/jsx-runtime");function oi(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>Be(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:Z(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return(0,ii.jsx)(Se,{children:e.children,components:e.components,disabled:e.disabled,fields:t,style:e.style,value:e.value})}var J=require("react/jsx-runtime");function Se(e){let{field:t,list:n}=e.components;return Ke(e.fields).map((r,o)=>(0,J.jsxs)(ai.Fragment,{children:[Z(r)&&(0,J.jsx)(ri,{column:r,children:(0,J.jsx)(Se,{...e,fields:r.fields})}),Be(r)&&(0,J.jsx)(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),Jn(r)&&(0,J.jsx)(n,{field:r,value:e.value,children:i=>(0,J.jsx)(oi,{children:e.children,components:e.components,disabled:e.disabled,field:r,index:i,style:e.style,value:e.value})})]},o))}var si=require("react/jsx-runtime");function li(e){return n=>(0,si.jsx)(Se,{...n,components:e})}var ci=li({field:Xo,list:ti});var Yt=require("jotai");var Ae=require("react");function di(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},l=(0,Yt.useSetAtom)(co),s=(0,Yt.useSetAtom)(uo),c={data:null,error:null,success:!1},[u,g,x]=(0,Ae.useActionState)(async(R,C)=>{let[k,A]=e(),_=Dr(k,A,a);if(i===!1)return t?await t(C,_):R;let w=Vn(C),N=_.safeParse(w);if(!N.success){let P=Lr(N.error);return(0,Ae.startTransition)(()=>{l(P)}),Bt(w,{description:y("Please correct the errors and try again.",a),details:[],title:y("There were validation errors submitting the form.",a)})}let U=_n(w);if(t)try{let P=await t(U,_);return P.success?(r?.(P.data),o||(0,Ae.startTransition)(()=>{s()}),ui(U,o)):Bt(U,P.error)}catch(P){return pe.error("Error executing form action:",P),Bt(U,{title:y("An unexpected error occurred submitting the form.",a),details:Ka(P,a)})}return ui(N.data,o)},c);return[g,u,x]}function Ka(e,t){return e instanceof Error?[e.message]:[y("Unknown error",t)]}function ui(e,t=!1){return{data:t?e:null,error:null,success:!0}}function Bt(e,t){return{data:e,error:t,success:!1}}var re=require("react");var mi=require("react"),pt=require("jotai");function fi(){let e=(0,pt.useSetAtom)(so),t=(0,pt.useSetAtom)(mo),n=(0,pt.useSetAtom)(yo);return(0,mi.useCallback)(r=>{let o=Array.isArray(r)?r:[r];e(o),n(o),t(o)},[e,n,t])}function gi(){let e=fi(),t=(0,re.useRef)({}),n=(0,re.useRef)([]),r=(0,re.useCallback)((a,l,s)=>{a in t.current||(t.current[a]=l,n.current.push(s))},[]),o=(0,re.useCallback)(a=>{t.current[a]&&(delete t.current[a],n.current=n.current.filter(l=>l.name!==a),e([a]))},[e]);return[(0,re.useCallback)(()=>[t.current,n.current],[]),r,o]}var V=require("react/jsx-runtime");function pi(e){let t=e.translations?.[e.lang??""],[n,r,o]=gi(),[i,a,l]=di(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,V.jsxs)(V.Fragment,{children:[s&&st(e.config.alert,u=>(0,V.jsx)("div",{className:"mb-4 w-full",children:(0,V.jsx)(u,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),(0,V.jsx)(to,{action:i,config:e.config,control:e.children,definition:e.definition,isPending:l,noValidate:!0,readOnly:e.readOnly,sections:e.sections,children:({disabled:u,fields:g})=>(0,V.jsx)(ci,{disabled:u,fields:g,style:e.config.style,value:c,children:x=>(0,V.jsx)(No,{...x,config:e.config,context:e.context,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:c})})})]})}var yi=require("jotai"),Xt=require("react/jsx-runtime");function bi(e){return(0,Xt.jsx)(yi.Provider,{children:(0,Xt.jsx)(pi,{...e})})}
|
|
1
|
+
"use strict";var Fi=Object.create;var we=Object.defineProperty;var Ai=Object.getOwnPropertyDescriptor;var vi=Object.getOwnPropertyNames;var Ci=Object.getPrototypeOf,Ni=Object.prototype.hasOwnProperty;var Ei=(e,t)=>{for(var n in t)we(e,n,{get:t[n],enumerable:!0})},Jt=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of vi(t))!Ni.call(e,o)&&o!==n&&we(e,o,{get:()=>t[o],enumerable:!(r=Ai(t,o))||r.enumerable});return e};var ki=(e,t,n)=>(n=e!=null?Fi(Ci(e)):{},Jt(t||!e||!e.__esModule?we(n,"default",{value:e,enumerable:!0}):n,e)),Ii=e=>Jt(we({},"__esModule",{value:!0}),e);var el={};Ei(el,{Form:()=>bi});module.exports=Ii(el);var jt=require("react/jsx-runtime");function Qt(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,jt.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var ue=require("react");var Ft=require("react/jsx-runtime");function en(e){return(0,Ft.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,Ft.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 Pe="input",tn="input/date",nn="input/email",rn="input/number";var on="input/time";var an="textarea",ln="radio",sn="checkbox",At="list";var cn="select",un="select/day",dn="select/month",mn="select/timezone",fn="select/year";var gn="chips",pn="chips/day",yn="chips/month",pe="column",bn="description",vt="fields",hn="label",E="value",De="options",Ct="email",xn="number",Tn="password",Rn="tel",ye="text",Sn="aria-errormessage",Fn="aria-invalid",An="data-invalid",vn="data-readonly",Cn="aria",Nn="data",Le="max",En="maxLength",Oe="min",kn="minLength",se="$ref";var In="source",wn="state",Me="http://luna.internal";var Pn="type",Dn={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 Ve(e){return e==null||e===""}function P(e){return S(e)||typeof e=="number"||Nt(e)}function S(e){return typeof e=="string"}function Ln(e){return d(e)&&"url"in e}function Nt(e){return typeof e=="boolean"}var wi=/^\d+$/;function kt(e,t=[],n=E){return Array.isArray(t)?t.find(r=>{let o=It(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}:{value:e}}function It(e,t=E){if(e!=null){if(Array.isArray(e)&&e.every(P)||P(e))return e;if(d(e)){let n=Pi(e,t);if(P(n))return n}}}function Pi(e,t){let n=v(e,t);if(P(n))return n}function On(e,t){if(Array.isArray(e))return e;let n=v(e,t);return Array.isArray(n)?n:null}function v(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 Mn(e,t={description:bn,label:hn,value:E}){return e.map(n=>{if(d(n)){let r=v(n,t.label),o=v(n,t.value);if(P(r)&&P(o)){let i=v(n,t.description);return{label:`${r}`,value:`${o}`,...P(i)&&{description:`${i}`}}}}return n})}function Vn(e=ye){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==Pe?n.trim().toLowerCase():ye}function _n(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 zn(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=wi.test(s);l in o||(o[l]=c?[]:{}),o=o[l]}let i=r[r.length-1];o[i]=e[n]}return Et(t),t}function Et(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)&&Et(o);e[t]=r}else d(n)&&Et(n)}}var Di=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function B(e,t={}){if(S(e))return Li(e,t);if(Array.isArray(e))return e.map(n=>B(n,t));if(d(e)){let n={};for(let r in e)n[r]=B(e[r],t);return n}return e}function _e(e,t={}){return be(e)?B(e,t):e}function be(e){return S(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>be(t)):d(e)?Object.values(e).some(t=>be(t)):!1}function Li(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,r)=>{let o=r.includes(".")?v(t,r):t[r];return P(o)?String(o):n})}function Gn(e,t){if(!S(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Di.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 he={error:(...e)=>{wt()&&!Pt()&&ze().error("[Luna Form]",...e)},warn:(...e)=>{wt()&&!Pt()&&ze().warn("[Luna Form]",...e)},info:(...e)=>{wt()&&!Pt()&&ze().info("[Luna Form]",...e)}},wt=()=>typeof ze()<"u",Pt=()=>!0,ze=()=>globalThis.console;function Hn(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===E&&n.push(i),i.action===In&&r.push(i),i.action===wn&&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(Ln(i)){let a=B(i.url,e),l=i.body?B(i.body,e):i.body;n(o,{...i,url:a,body:l})}}}var xe={eq:zi,gt:Ui,gte:Bi,in:Hi,lt:Yi,lte:Xi,neq:Gi,nin:$i},Oi=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,Un=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function Mi(e){return typeof e=="string"&&Oi.test(e)}function Vi(e){return typeof e=="string"&&Un.test(e)}function _i(e){let t=e.match(Un);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 Y(e){return Mi(e)?new Date(e).getTime():Vi(e)?_i(e):Number(e)}function zi(e,t){return e===t}function Gi(e,t){return e!==t}function Hi(e,t){return Array.isArray(t)&&t.includes(String(e))}function $i(e,t){return Array.isArray(t)&&!t.includes(String(e))}function Ui(e,t){return Y(e)>Y(t)}function Bi(e,t){return Y(e)>=Y(t)}function Yi(e,t){return Y(e)<Y(t)}function Xi(e,t){return Y(e)<=Y(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=Zi(e,a);n(l,s?i:void 0)}}function Zi(e,t){return t===void 0?!0:S(t)?Ge(e,E)===t:Nt(t)?!!Ge(e,E)===t:Array.isArray(t)?t.includes(String(Ge(e,E))):qi(e,t)}function qi(e=null,t){let n=Ge(e,t.field??E),{operator:r="eq",value:o}=t,i=xe[r];return i?i(n,o):!1}function Ge(e,t){return d(e)?v(e,t):e}function Yn(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?B(i,e):void 0)}var Xn=e=>y(un)(e),He=e=>y(dn)(e),$e=e=>y(fn)(e),Zn=e=>y(mn)(e),qn=e=>y(pn)(e),Wn=e=>y(yn)(e),ee=y(tn),Te=y(on),N=y(sn),Ue=y(gn),z=y(ln),Dt=y(Pe),X=y(cn),Lt=y(an),Kn=y(ye,Ct,Tn,Rn),Jn=y(nn,Ct),Be=y(rn,xn);function Ye(e){return z(e)||N(e)}function Qn(e){return e.type===At}function Z(e){return e.type===pe}function Xe(e){return e.type!==pe&&e.type!==At}function Re(e){return X(e)||z(e)}function jn(e){return Dt(e)||Lt(e)}function D(e){return e!=null&&e!==""}function y(...e){return t=>{let n=S(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function er(e,t={}){if(X(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&d(n))return[n]}}function tr(e){return z(e)||N(e)?!0:e.advanced?.horizontal??!1}function nr(e){return N(e)?e.advanced?.reverse!==!1:!1}function rr(e,t){let n=e.readonly??!1;return t||n}function or(e){if(z(e)||X(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||d(t)&&!(se in t))return t}}var F=require("date-fns"),Wi=/^\d+$/,qe=new Date(2e3,0,1),Ki=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[];function Ot(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function Mt(){return Array.from({length:7},(e,t)=>({value:t.toString(),label:new Date(2e3,0,2+t).toLocaleString("default",{weekday:"long"})}))}function lr(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 Ji(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function Qi(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return Dn[n]??"Other"}function ji(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function ir(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=ji(r,e);return{offset:i,longName:a}}function ar(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}var Ze=null;function sr(){if(Ze)return Ze;let e=new Date,t=Ji(),n=new Map,r=ar(t),{offset:o,longName:i}=ir(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let s of Ki()){if(s===t)continue;let c=ar(s),{offset:u,longName:T}=ir(s,e),A={value:s,label:`${c} - ${T} (${u})`},R=Qi(s);if(R==="Other")continue;let b=n.get(R);b?b.push(A):n.set(R,[A])}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 Ze=[{label:"Suggested",items:[a]},...l],Ze}function _t(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 Wi.test(r)?parseInt(r,10):n}function We(e,t){if(!e)return"";try{let n=(0,F.parse)(e,t,qe);return(0,F.isValid)(n)?(0,F.format)(n,"yyyy-MM-dd"):""}catch{return""}}function cr(e,t){if(!e)return"";try{let n=(0,F.parse)(e,t,qe);return(0,F.isValid)(n)?(0,F.format)(n,"HH:mm:ss"):""}catch{return""}}function ur(e,t="HH:mm"){if(!e)return"";try{let n=e.split(":").length===3?"HH:mm:ss":"HH:mm",r=(0,F.parse)(e,n,qe);return(0,F.isValid)(r)?(0,F.format)(r,t):""}catch{return""}}function Ke(e,t="MMMM d, yyyy"){if(!e)return"";try{let n=(0,F.parse)(e,"yyyy-MM-dd",qe);return(0,F.isValid)(n)?(0,F.format)(n,t):""}catch{return""}}function Se(e){return e.advanced?.format??"HH:mm"}function te(e){return e.advanced?.format??"MMMM d, yyyy"}var Je=Vt();function ea(e){if(Ue(e))return ta(e)}function ta(e){if(qn(e))return Mt();if(Wn(e))return Ot()}function na(e){if(X(e))return ra(e)}function ra(e){if(Xn(e))return Mt();if(He(e))return Ot();if($e(e)){let t=e.advanced?.length?.min??Je,n=e.advanced?.length?.max??Je+5;return lr(_t(t,Je),_t(n,Je))}if(Zn(e))return sr()}function dr(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return Dt(e)?{...n,...oa(e)}:X(e)?{...n,...mr(e,na)}:Lt(e)?{...n,...aa(e)}:Ue(e)?{...n,...ia(e)}:n}function oa(e){let t=Vn(e.type),n={...e,type:t};return{...sa(e),...fr(e),...la(n),...Kn(n)?gr(n):{},type:t}}function mr(e,t){let n=t(e);return n?{options:n}:{}}function ia(e){let t=mr(e,ea),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function aa(e){return{...fr(e),...gr(e)}}function fr(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function la(e){return Be(e)?ca(e):{}}function sa(e){if(Te(e)){let t=Se(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function gr(e){return pr(e,{min:kn,max:En})}function ca(e){return pr(e,{min:Oe,max:Le})}function pr(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 yr(e,t){let n=or(e);return n||er(e,t)}function ua(e,t){let n=d(t)&&e.name in t?t[e.name]:t,r=It(n,e.advanced?.entity);return Te(e)&&D(r)?da(e,r):ee(e)&&D(r)?pa(e,r):r}function da(e,t){let n=Se(e);return S(t)?cr(t,n):t}function ma(e,t,n){return Re(e)&&Array.isArray(n)?{...t,[De]:n}:t}function fa(e,t,n){if(e.required&&!D(n)&&X(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 ga(e,t){return Re(e)&&Array.isArray(t)?Mn(t,e.advanced?.options):t}function br(e,t,n,r){let o=ua(e,r),i=Array.isArray(n)?ga(e,n):n,a=ma(e,t,i),l=fa(e,a,o);return{commonPropsWithOptions:a,defaultValue:l}}function hr(e,t){return N(e)?{checked:D(t)?t:!1}:Ue(e)?{value:Array.isArray(t)?t:[]}:ee(e)&&S(t)&&D(t)?{value:Ke(t,te(e))}:{value:t??""}}function pa(e,t){let n=te(e);return S(t)?We(t,n):t}function xr(e,t){let n=e??t;return n?{"data-format":n}:{}}var ya=/^#\/definition\//;function je(e=[],t){let n=Qe(e,t);return Array.isArray(n)?n.filter(ha).sort((r,o)=>Tr(r)-Tr(o)):[]}function Qe(e,t,n=new Map,r=new WeakSet){if(!ba(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=>Qe(i,t,n,r));if(se in e&&S(e[se])){let i=e[se].replace(ya,""),a=v(t,i);return a!==null?Qe(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=Qe(a,t,n,r);return r.delete(e),n.set(e,o),o}function Rr(e){return Object.entries(e??{})}function Tr(e){return e.order??Number.MAX_VALUE}function ba(e){return e!==void 0&&d(e)&&Object.keys(e).length>0}function ha(e){return Pn in e?!0:Array.isArray(e[vt])?e[vt].length>0:!0}function Sr(e,t){let n={};for(let[r,o]of Rr(t))n[`${e}-${r}`]=o;return n}function xa(e){return Sr(Cn,e)}function Ta(e){return Sr(Nn,e)}function Fr(e,t){let n=xa(e.advanced?.aria);return t&&t.length>0&&(n[Fn]="true",n[Sn]=`${e.name}-error`),n}function Ar(e){return Ta(e.advanced?.data)}var vr={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Cr={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function Nr(e,t=2){return vr[e&&e in vr?e:t]}function Er(e){if(e&&e in Cr)return Cr[e]}function Ra(e,t){let n=e.advanced?.length?.min??1;if(t){let r=v(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function kr(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===pe}function Ir(e,t){let n=Ra(e,t);return Array.from({length:n},(r,o)=>o)}function wr(e){return e.label??e.name}var g=require("zod");function p(e,t){return e?t?t[e]??e:e:""}var Sa=[[Be,Na],[Jn,Fa],[$e,Ea],[He,ka],[N,Aa],[z,va]];function Dr(e,t=[],n){let r=g.z.object(e);return t.length===0?r:Da(r,t,n)}function Lr(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 Or(e,t){for(let[n,r]of Sa)if(n(e))return r(e,t);return Ca(e,t)}function Fa(e,t){let n=g.z.string().trim();if(e.required){let r=ce(e,t),o=n.min(1,r).pipe(Pr(e,t));return g.z.preprocess(i=>Ve(i)?"":i,o)}return n.pipe(Pr(e,t)).or(g.z.literal("")).nullable()}function Aa(e,t){let n=g.z.coerce.boolean();return e.required?(n=n.refine(r=>r===!0,{message:ce(e,t)}),g.z.preprocess(r=>r===null?!1:r,n)):n.nullable()}function va(e,t){let n=g.z.coerce.string();return e.required?(n=n.min(1,ce(e,t)),g.z.preprocess(r=>Ve(r)?"":r,n)):n.or(g.z.literal("")).nullable()}function Ca(e,t){let n=g.z.coerce.string().trim();return n=Mr(n,e,t),e.required?(n=Vr(n,e,t),g.z.preprocess(r=>Ve(r)?"":r,n)):n.nullable()}function Na(e,t){let n=g.z.coerce.number().int();return n=Mr(n,e,t),e.required?(n=Vr(n,e,t),g.z.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function Ea(e,t){return e.required?g.z.preprocess(Ia,g.z.coerce.number({message:ce(e,t)}).int()):g.z.coerce.number().int().nullable()}function ka(e,t){let n=ce(e,t),r=g.z.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 Pr(e,t){let n=e.validation?.email?p(e.validation?.email,t):void 0;return g.z.email(n)}function Mr(e,t,n){return e=wa(e,t,n),e=Pa(e,t,n),e}function Vr(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,ce(t,n)):e}var wa=(e,t,n)=>_r(e,t,Oe,n),Pa=(e,t,n)=>_r(e,t,Le,n);function _r(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 Da(e,t=[],n){let r=Oa(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:l}of r)if(!La(o,a,l)){let s=p(l.message,n);i.addIssue({code:"custom",message:s,path:[a]})}})}function La(e,t,n){let r=n.operator??"eq",o=xe[r];return o?o(e[t],e[n.field]):!1}function Oa(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 zr(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 ce(e,t){return e.validation?.required?p(e.validation?.required,t):void 0}function Gr(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||Ma(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 Ma(e){return e==="https"?"443":"80"}function Va(e){return/^(https?:)?\/\//.test(e)}function Hr(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,Me);new URL(t,Me).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(Me,""):o}catch{return t||e}}function $r(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=Hr(t.url,n.url),o=_a(t,n),i=za(t,n);return{...t,...n,url:r,body:o,headers:i}})}function _a(e,t){return d(t.body)&&d(e?.body)?{...e.body,...t.body}:t.body??e?.body}function za(e,t){return d(t.headers)&&d(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function et(e,t){return{...e,...t}}var Ur=require("react/jsx-runtime");function q(e){return Gn(e,(t,n,r)=>(0,Ur.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}var L=require("react/jsx-runtime");function Br(e){let{fields:t=[]}=e.section,[n,r]=(0,ue.useState)(!1),o=(0,ue.useCallback)(()=>r(i=>!i),[]);return(0,L.jsxs)("fieldset",{"data-slot":"field-set","data-advanced":"true","data-expanded":n,"data-empty":t.length===0,className:"flex flex-col",id:e.section.id?.toString(),children:[(0,L.jsx)("legend",{children:(0,L.jsxs)("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-slate-600 dark:text-slate-400",onClick:o,type:"button",children:[(0,L.jsx)(en,{expanded:n}),(0,L.jsx)("span",{children:q(e.section.title)})]})}),(0,L.jsx)(ue.Activity,{mode:n?"visible":"hidden",children:(0,L.jsxs)("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-slate-300 pl-4 dark:border-slate-600","data-slot":"field-set-content",children:[e.section.description&&(0,L.jsx)("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:q(e.section.description)}),e.group]})})]})}var ne=require("react/jsx-runtime");function Yr(e){return(0,ne.jsxs)(ne.Fragment,{children:[e.title&&(0,ne.jsx)("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:q(e.title)}),e.description&&(0,ne.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:q(e.description)})]})}var nt=require("react/jsx-runtime");function tt(e){return(0,nt.jsxs)("fieldset",{"data-slot":"field-set","data-empty":e.empty,className:"flex flex-col data-[empty=false]:gap-6",id:e.id,children:[(0,nt.jsx)(Yr,{description:e.description,title:e.title}),e.children]})}var Xr=require("react/jsx-runtime");function re(e){return(0,Xr.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 Zr(e){let{fields:t=[]}=e.section,{compact:n}=et(e.style,{compact:e.section.compact}),r=(0,rt.jsx)(re,{compact:n,children:e.children});return!e.section.title&&!e.section.description?r:e.section.advanced?(0,rt.jsx)(Br,{section:e.section,group:r}):(0,rt.jsx)(tt,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),title:e.section.title,children:r})}var Qr=require("jotai");var W=require("jotai"),zt=require("jotai-family"),ot=require("fast-equals");function it(e,t){let{[t]:n,...r}=e;return r}function Ga(e){return(0,zt.atomFamily)(t=>(0,W.atom)(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];(0,ot.deepEqual)(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,it(i,t))}))}function Ha(e){return(0,W.atom)(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function $a(e){return(0,W.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 Ua(e){return(0,W.atom)(null,(t,n,r)=>{let o=t(e);(0,ot.deepEqual)(o,r)||n(e,r)})}function qr(e,t={}){let{merge:n,validateTarget:r}=t;return(0,zt.atomFamily)(o=>(0,W.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 T=u[o];(!T||!(0,ot.deepEqual)(T,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 Wr(e){return(0,W.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 de(e={}){let t=(0,W.atom)(e);return{atom:t,clearAll:Ha(t),clear:$a(t),bulkReport:Ua(t),report:Ga(t)}}var Kr=de(),at=Kr.atom,Jr=Kr.report;function Ba(e,t){return e.fields.every(n=>jr(n,t))}function jr(e,t){return t[e.name]?.hidden??e.hidden??!1}function Ya(e,t){return Z(e)?Ba(e,t):jr(e,t)}function lt(e){let t=(0,Qr.useAtomValue)(at);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>Ya(r,t))?null:e.children}var Gt=require("react/jsx-runtime");function eo(){return(0,Gt.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,Gt.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}var G=require("react/jsx-runtime");function to(e){let t=je(e.sections,e.definition);return(0,G.jsx)("div",{className:"h-full w-full",children:(0,G.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,G.jsxs)(re,{children:[t.map((n,r)=>(0,G.jsxs)(lt,{fields:n.fields??[],children:[(0,G.jsx)(Zr,{section:n,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.separator&&(0,G.jsx)(eo,{})]},r)),e.control&&(0,G.jsx)(Qt,{isPending:e.isPending,children:e.control})]})})})}var no=require("react/jsx-runtime");function st(e){return(0,no.jsx)("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}var ro=require("react/jsx-runtime");function ct(e){let t={context:e.context,env:e.config?.env},n=p(_e(e.text,t),e.translations),r=q(n);return r?(0,ro.jsx)(st,{children:r}):null}var oo=require("tailwind-merge"),ut=require("react/jsx-runtime");function io(e){let t=e.style?.showOptionalLabel??!0,n=z(e.field)||N(e.field);return(0,ut.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,oo.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,ut.jsx)("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:p("(Optional)",e.translations)})]})}var Fe=require("react/jsx-runtime");function ao(e){let t={context:e.context,env:e.config?.env},n=_e(e.field.label,t);return(0,Fe.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,Fe.jsx)(io,{field:e.field,style:e.config?.style,translations:e.translations,children:p(n,e.translations)}),e.horizontal===!0&&(0,Fe.jsx)(ct,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}var oe=require("react/jsx-runtime");function lo(e){return(0,oe.jsxs)(oe.Fragment,{children:[e.field.name&&e.field.label&&(0,oe.jsx)(ao,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&(0,oe.jsx)(ct,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}function dt(e,t){return e?t(e):null}var Ht=de(),so=Ht.clear,co=Ht.bulkReport,mt=Ht.report;var ft=de(),gt=ft.atom,uo=ft.clearAll,mo=ft.clear,pt=ft.report;var x=require("react");var fo=require("jotai");var Xa=e=>{let t=$r(e);if(t)return t},Za=e=>e.trim()!=="",go=(0,fo.atom)({}),po=qr(go,{merge:Xa,validateTarget:Za}),yo=Wr(go);var xo=require("jotai");var bo=ki(require("swr"),1);function ho(e=null,t,n=!1){let{data:r,error:o}=(0,bo.default)(qa(e,t,n),t.fetcher.provider);if(o&&he.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return On(r,e.namespace)}return null}function qa(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!be(e.url)){if(Gr(e.url,t.fetcher.remotePatterns))return e;he.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function To(e,t,n){let r=yr(e,n),[o,i]=(0,xo.useAtom)(po(e.name));return[ho(o??r,t,e.disabled),i]}function Ro(e){let t=ee(e)?te(e):null,n=Te(e)?Se(e):null;return{dateFormat:t,timeFormat:n}}var ie=require("react");function So(e,t,n,r){let{name:o}=e,i=(0,ie.useMemo)(()=>Or(e,r),[e,r]),a=(0,ie.useEffectEvent)(s=>{s&&t(s,i,e)}),l=(0,ie.useEffectEvent)(s=>{s&&n(s)});return(0,ie.useEffect)(()=>(a(o),()=>{l(o)}),[o]),i}var fe=require("jotai");var me=require("react");function Fo(){let e=(0,me.useRef)(null);return(0,me.useEffect)(()=>()=>{e.current&&clearTimeout(e.current)},[]),(0,me.useCallback)((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}var Ao=require("fast-equals");var vo=require("jotai"),K=require("react");function Co(e,t){let{name:n}=e,r=(0,K.useRef)(!1),[o,i]=(0,vo.useAtom)(pt(n)),a=(0,K.useEffectEvent)(s=>{let c=Wa(n,s);D(c)&&((0,Ao.deepEqual)(o,c)||(r.current=!0),i(c))});(0,K.useEffect)(()=>{t&&a(t)},[t]);let l=(0,K.useCallback)(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:l,value:o}}function Wa(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 $t=require("react/jsx-runtime");function No(e){let t=(0,fe.useStore)(),n=e.field.advanced?.entity,r=Fo(),[,o]=(0,x.useTransition)(),{setValue:i,shouldSkipOnChange:a,value:l}=Co(e.field,e.value),s=(0,x.useRef)(!1),{dateFormat:c,timeFormat:u}=Ro(e.field),T=xr(c,u),A=(0,x.useRef)(l);A.current=l;let R=(0,x.useRef)(e.translations);R.current=e.translations;let b=jn(e.field),C=Ye(e.field),$=(0,fe.useSetAtom)(gt),V=(0,fe.useSetAtom)(at),_=(0,fe.useSetAtom)(mt(e.field.name)),[h,Q]=To(e.field,e.config,l),j=So(e.field,e.onMount,e.onUnmount,e.translations),I=p(e.commonProps.placeholder,e.translations),hi={...e.commonProps,placeholder:I},{commonPropsWithOptions:xi,defaultValue:Ne}=br(e.field,hi,h,l),Ti=hr(e.field,Ne),qt=(0,x.useRef)(null);qt.current=f=>{if(i(f),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:f})}};let xt=(0,x.useRef)(null);xt.current=f=>{let m=e.field.event?.change;m&&Hn(m,({sources:U,states:ke,values:Tt})=>{o(()=>{$n(f,U,(w,le)=>Q(w,le)),Bn(f,ke,(w,le)=>{V(Ie=>le?w.reduce((Rt,St)=>({...Rt,[St]:le}),Ie):w.reduce((Rt,St)=>it(Rt,St),Ie))}),Yn(f,Tt,(w,le)=>{$(Ie=>({...Ie,[w]:le}))})})})};let Ee=(0,x.useCallback)(f=>{let U=j.safeParse(f).error?.issues.map(w=>w.message)??[],ke=e.field.validation?.custom,Tt=ke?zr(f,ke,w=>t.get(pt(w)),R.current):[];_([...U,...Tt])},[e.field.validation?.custom,j,_,t]),Wt=(0,x.useCallback)((f,m)=>{if(b){r(()=>{m({value:f})},300);return}m(kt(f,h,n))},[h,n,b,r]);(0,x.useEffect)(()=>{if(s.current||!e.value)return;if(!e.field.event?.change){s.current=!0;return}if(!((!Re(e.field)||!!h&&h.length>0)&&D(Ne)))return;s.current=!0;let m=String(Ne),U=b?{value:m}:kt(m,h,n);xt.current?.(U)},[h,Ne,n,b,e.field,e.value]);let Kt=(0,x.useCallback)(f=>{let m=f.target.value;return u!==null?ur(m,u):c!==null&&Ke(m,c)||m},[u,c]),Ri=(0,x.useCallback)(f=>{let m=Kt(f);!C&&a()&&(!b||m===A.current)||(qt.current?.(m),e.config.validation.change&&Ee(m),e.field.event?.change&&Wt(m,U=>{xt.current?.(U)}))},[Kt,Wt,C,b,e.config.validation.change,e.field.event?.change,a,Ee]),Si=(0,x.useCallback)(f=>{if(!C){let m=f.target.value;e.config.validation.blur&&Ee(m)}},[C,e.config.validation.blur,Ee]);return dt(e.config.inputs[e.field.type],f=>(0,$t.jsx)(lo,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:(0,$t.jsx)(f,{...xi,...e.ariaAttributes,...e.dataAttributes,...T,...Ti,onBlur:Si,onChange:Ri})}))}var Ut=require("react/jsx-runtime");function Eo(e){return!e.errors||e.errors.length===0?null:(0,Ut.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,Ut.jsx)("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var ko=require("tailwind-merge"),Io=require("react/jsx-runtime");function yt(e){let t=e.errors&&e.errors.length>0;return(0,Io.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[An]:"true"},...e.disabled&&{[vn]:"true"},"data-orientation":e.orientation,className:(0,ko.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 wo=require("tailwind-merge"),Do=require("react/jsx-runtime");function Po(e){return(0,Do.jsx)(yt,{...e,orientation:"vertical",className:(0,wo.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var Lo=require("tailwind-merge"),Mo=require("react/jsx-runtime");function Oo(e){return(0,Mo.jsx)(yt,{...e,orientation:"horizontal",className:(0,Lo.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 Bt=require("react/jsx-runtime");function Vo(e){let t=Ye(e.field),n=N(e.field),r=nr(e.field);return e.horizontal?(0,Bt.jsx)(Oo,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):(0,Bt.jsx)(Po,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function _o(e){if(!e.field.type)return null;let t=dr(e.field,e.disabled),n=Ar(e.field),r=Fr(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 zo=require("tailwind-merge"),ge=require("react/jsx-runtime");function Go(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=et(e.style,{horizontal:tr(e.field)}),o=rr(e.field,e.disabled);return(0,ge.jsxs)("div",{className:(0,zo.twMerge)("flex flex-col gap-3",Er(t)),children:[(0,ge.jsx)(Vo,{disabled:o,errors:n,field:e.field,horizontal:r,children:(0,ge.jsx)(_o,{disabled:o,errors:n,field:e.field,horizontal:r,children:e.children})}),(0,ge.jsx)(Eo,{errors:n,name:e.field.name})]})}var Ho=require("jotai"),Yo=require("react/jsx-runtime");function $o(e){return(t,n)=>o=>{let i=(0,Ho.useAtomValue)(e(o.field.name)),a=n(i,o);return a===null?null:(0,Yo.jsx)(t,{...o,...a})}}var Ka=$o(mt);function Uo(e){return Ka(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var Ja=$o(Jr);function Bo(e){return Ja(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var Xo=Bo(Uo(Go));var Zo=require("tailwind-merge");var k=require("react/jsx-runtime");function qo(e){function t(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}let n=e.canRemove&&e.onRemove!=null&&(0,k.jsx)("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:(0,Zo.twMerge)("rounded p-1 text-xl text-slate-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500 dark:hover:text-red-400"),onClick:t,type:"button",children:(0,k.jsx)("span",{"aria-hidden":"true",children:"\xD7"})});return e.isMultiField?(0,k.jsxs)("div",{className:"rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[(0,k.jsxs)("div",{className:"mb-3 flex items-center justify-between",children:[(0,k.jsxs)("span",{className:"text-sm font-medium text-slate-400 dark:text-slate-500",children:[e.label," ",e.index+1]}),n]}),(0,k.jsx)(re,{children:e.children})]}):(0,k.jsxs)("div",{className:"flex items-start gap-2",children:[(0,k.jsx)(re,{children:e.children}),n&&(0,k.jsx)("div",{className:"shrink-0",children:n})]})}var Jo=require("tailwind-merge");var Wo=require("jotai"),O=require("react");function Ko(e,t){let n=e.advanced?.length?.min??1,r=e.advanced?.length?.max??1/0,[o,i]=(0,O.useState)(()=>Ir(e,t)),a=(0,O.useRef)(o.length),l=(0,O.useRef)(o);(0,O.useLayoutEffect)(()=>{l.current=o});let s=(0,Wo.useSetAtom)(gt),c=(0,O.useCallback)(()=>{i(R=>{if(R.length>=r)return R;let b=a.current++;return[...R,b]})},[r]),u=(0,O.useCallback)(R=>{if(l.current.length<=n)return;let b=l.current[R];i(C=>C.length<=n?C:C.filter(($,V)=>V!==R)),s(C=>{let $={...C},V=`${e.name}.`,_=[];for(let h of e.fields)if(Z(h))for(let Q of h.fields)_.push(Q.name);else _.push(h.name);for(let h of _)delete $[`${V}${b}.${h}`];return $})},[e.name,e.fields,n,s]),T=o.length<r,A=o.length>n;return[o,c,u,T,A,r]}var H=require("react/jsx-runtime");function Qo(e){let[t,n,r,o,i,a]=Ko(e.field,e.value),l=wr(e.field),s=e.field.advanced?.action??"Add item",c=a!==1/0,u=kr(e.field);return(0,H.jsxs)(H.Fragment,{children:[t.map((T,A)=>(0,H.jsx)(qo,{canRemove:i,index:A,isMultiField:u,label:l,onRemove:r,children:e.children(T)},T)),(0,H.jsxs)("button",{"aria-disabled":!o,"aria-label":c?`${s}, ${t.length} of ${a}`:s,className:(0,Jo.twMerge)("flex w-full items-center gap-1.5 rounded py-1","text-sm font-medium text-slate-500","transition-colors duration-150","hover:text-slate-800","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:ring-offset-2 focus-visible:outline-none","dark:text-slate-400 dark:hover:text-slate-200",!o&&"cursor-not-allowed opacity-50 hover:text-slate-500 dark:hover:text-slate-400"),disabled:!o,onClick:n,type:"button",children:[(0,H.jsx)("span",{"aria-hidden":"true",children:"+"}),s,c&&(0,H.jsxs)("span",{"aria-hidden":"true",className:"ml-auto text-slate-400 tabular-nums dark:text-slate-500",children:[t.length," / ",a]})]})]})}var ei=require("react/jsx-runtime");function jo(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return(0,ei.jsx)(tt,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}var bt=require("react/jsx-runtime");function ti({children:e,field:t,value:n}){return(0,bt.jsx)(lt,{container:t,fields:t.fields,children:(0,bt.jsx)(jo,{field:t,children:(0,bt.jsx)(Qo,{field:t,value:n,children:e})})})}var ni=require("tailwind-merge");var Ae=require("react/jsx-runtime");function ri(e){let t=Nr(e.column?.advanced?.cols);return(0,Ae.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[(0,Ae.jsx)("div",{className:(0,ni.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&(0,Ae.jsx)(st,{children:e.column.description})]})}var ai=require("react");var ii=require("react/jsx-runtime");function oi(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>Xe(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:Z(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return(0,ii.jsx)(ve,{children:e.children,components:e.components,disabled:e.disabled,fields:t,style:e.style,value:e.value})}var J=require("react/jsx-runtime");function ve(e){let{field:t,list:n}=e.components;return je(e.fields).map((r,o)=>(0,J.jsxs)(ai.Fragment,{children:[Z(r)&&(0,J.jsx)(ri,{column:r,children:(0,J.jsx)(ve,{...e,fields:r.fields})}),Xe(r)&&(0,J.jsx)(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),Qn(r)&&(0,J.jsx)(n,{field:r,value:e.value,children:i=>(0,J.jsx)(oi,{children:e.children,components:e.components,disabled:e.disabled,field:r,index:i,style:e.style,value:e.value})})]},o))}var si=require("react/jsx-runtime");function li(e){return n=>(0,si.jsx)(ve,{...n,components:e})}var ci=li({field:Xo,list:ti});var Xt=require("jotai");var Ce=require("react");function di(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},l=(0,Xt.useSetAtom)(co),s=(0,Xt.useSetAtom)(uo),c={data:null,error:null,success:!1},[u,T,A]=(0,Ce.useActionState)(async(R,b)=>{let[C,$]=e(),V=Dr(C,$,a);if(i===!1)return t?await t(b,V):R;let _=_n(b),h=ja(_,$),Q=V.safeParse(h);if(!Q.success){let I=Lr(Q.error);return(0,Ce.startTransition)(()=>{l(I)}),Yt(_,{description:p("Please correct the errors and try again.",a),details:[],title:p("There were validation errors submitting the form.",a)})}let j=zn(h);if(t)try{let I=await t(j,V);return I.success?(r?.(I.data),o||(0,Ce.startTransition)(()=>{s()}),ui(j,o)):Yt(j,I.error)}catch(I){return he.error("Error executing form action:",I),Yt(j,{title:p("An unexpected error occurred submitting the form.",a),details:Qa(I,a)})}return ui(Q.data,o)},c);return[T,u,A]}function Qa(e,t){return e instanceof Error?[e.message]:[p("Unknown error",t)]}function ui(e,t=!1){return{data:t?e:null,error:null,success:!0}}function Yt(e,t){return{data:e,error:t,success:!1}}function ja(e,t){let n={...e};for(let r of t)if(ee(r)&&typeof n[r.name]=="string"&&n[r.name]){let o=We(n[r.name],te(r));o&&(n[r.name]=o)}return n}var ae=require("react");var mi=require("react"),ht=require("jotai");function fi(){let e=(0,ht.useSetAtom)(so),t=(0,ht.useSetAtom)(mo),n=(0,ht.useSetAtom)(yo);return(0,mi.useCallback)(r=>{let o=Array.isArray(r)?r:[r];e(o),n(o),t(o)},[e,n,t])}function gi(){let e=fi(),t=(0,ae.useRef)({}),n=(0,ae.useRef)([]),r=(0,ae.useCallback)((a,l,s)=>{a in t.current||(t.current[a]=l,n.current.push(s))},[]),o=(0,ae.useCallback)(a=>{t.current[a]&&(delete t.current[a],n.current=n.current.filter(l=>l.name!==a),e([a]))},[e]);return[(0,ae.useCallback)(()=>[t.current,n.current],[]),r,o]}var M=require("react/jsx-runtime");function pi(e){let t=e.translations?.[e.lang??""],[n,r,o]=gi(),[i,a,l]=di(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,M.jsxs)(M.Fragment,{children:[s&&dt(e.config.alert,u=>(0,M.jsx)("div",{className:"mb-4 w-full",children:(0,M.jsx)(u,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),(0,M.jsx)(to,{action:i,config:e.config,control:e.children,definition:e.definition,isPending:l,noValidate:!0,readOnly:e.readOnly,sections:e.sections,children:({disabled:u,fields:T})=>(0,M.jsx)(ci,{disabled:u,fields:T,style:e.config.style,value:c,children:A=>(0,M.jsx)(No,{...A,config:e.config,context:e.context,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:c})})})]})}var yi=require("jotai"),Zt=require("react/jsx-runtime");function bi(e){return(0,Zt.jsx)(yi.Provider,{children:(0,Zt.jsx)(pi,{...e})})}
|
package/dist/client/esm/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as Yo}from"react/jsx-runtime";function Lt(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return Yo("div",{"data-slot":"field-control",className:"w-full",children:t})}import{Activity as na,useCallback as ra,useState as oa}from"react";import{jsx as Ot}from"react/jsx-runtime";function Mt(e){return Ot("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:Ot("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 ge="input",Vt="input/date",_t="input/email",Gt="input/number";var Ht="input/time";var zt="textarea",$t="radio",Ut="checkbox",it="list";var Bt="select",Yt="select/day",Xt="select/month",Zt="select/timezone",qt="select/year";var Wt="chips",Kt="chips/day",Jt="chips/month",q="column",Qt="description",at="fields",jt="label",C="value",pe="options",lt="email",en="number",tn="password",nn="tel",W="text",rn="aria-errormessage",on="aria-invalid",an="data-invalid",ln="data-readonly",sn="aria",cn="data",ye="max",un="maxLength",be="min",dn="minLength",Y="$ref";var mn="source",fn="state",he="http://luna.internal";var gn="type",pn={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 xe(e){return e==null||e===""}function w(e){return T(e)||typeof e=="number"||st(e)}function T(e){return typeof e=="string"}function yn(e){return d(e)&&"url"in e}function st(e){return typeof e=="boolean"}var Xo=/^\d+$/;function ut(e,t=[],n=C){return Array.isArray(t)?t.find(r=>{let o=dt(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}:{value:e}}function dt(e,t=C){if(e!=null){if(Array.isArray(e)&&e.every(w)||w(e))return e;if(d(e)){let n=Zo(e,t);if(w(n))return n}}}function Zo(e,t){let n=S(e,t);if(w(n))return n}function bn(e,t){if(Array.isArray(e))return e;let n=S(e,t);return Array.isArray(n)?n:null}function S(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 hn(e,t={description:Qt,label:jt,value:C}){return e.map(n=>{if(d(n)){let r=S(n,t.label),o=S(n,t.value);if(w(r)&&w(o)){let i=S(n,t.description);return{label:`${r}`,value:`${o}`,...w(i)&&{description:`${i}`}}}}return n})}function xn(e=W){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==ge?n.trim().toLowerCase():W}function Tn(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 Rn(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=Xo.test(s);l in o||(o[l]=c?[]:{}),o=o[l]}let i=r[r.length-1];o[i]=e[n]}return ct(t),t}function ct(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)&&ct(o);e[t]=r}else d(n)&&ct(n)}}var qo=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function M(e,t={}){if(T(e))return Wo(e,t);if(Array.isArray(e))return e.map(n=>M(n,t));if(d(e)){let n={};for(let r in e)n[r]=M(e[r],t);return n}return e}function Te(e,t={}){return K(e)?M(e,t):e}function K(e){return T(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>K(t)):d(e)?Object.values(e).some(t=>K(t)):!1}function Wo(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,r)=>{let o=r.includes(".")?S(t,r):t[r];return w(o)?String(o):n})}function Sn(e,t){if(!T(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=qo.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 J={error:(...e)=>{mt()&&!ft()&&Re().error("[Luna Form]",...e)},warn:(...e)=>{mt()&&!ft()&&Re().warn("[Luna Form]",...e)},info:(...e)=>{mt()&&!ft()&&Re().info("[Luna Form]",...e)}},mt=()=>typeof Re()<"u",ft=()=>!0,Re=()=>globalThis.console;function An(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===C&&n.push(i),i.action===mn&&r.push(i),i.action===fn&&o.push(i);t({sources:r,states:o,values:n})}function Fn(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(yn(i)){let a=M(i.url,e),l=i.body?M(i.body,e):i.body;n(o,{...i,url:a,body:l})}}}var Q={eq:ei,gt:oi,gte:ii,in:ni,lt:ai,lte:li,neq:ti,nin:ri},Ko=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,vn=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function Jo(e){return typeof e=="string"&&Ko.test(e)}function Qo(e){return typeof e=="string"&&vn.test(e)}function jo(e){let t=e.match(vn);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 V(e){return Jo(e)?new Date(e).getTime():Qo(e)?jo(e):Number(e)}function ei(e,t){return e===t}function ti(e,t){return e!==t}function ni(e,t){return Array.isArray(t)&&t.includes(String(e))}function ri(e,t){return Array.isArray(t)&&!t.includes(String(e))}function oi(e,t){return V(e)>V(t)}function ii(e,t){return V(e)>=V(t)}function ai(e,t){return V(e)<V(t)}function li(e,t){return V(e)<=V(t)}function Cn(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=si(e,a);n(l,s?i:void 0)}}function si(e,t){return t===void 0?!0:T(t)?Se(e,C)===t:st(t)?!!Se(e,C)===t:Array.isArray(t)?t.includes(String(Se(e,C))):ci(e,t)}function ci(e=null,t){let n=Se(e,t.field??C),{operator:r="eq",value:o}=t,i=Q[r];return i?i(n,o):!1}function Se(e,t){return d(e)?S(e,t):e}function Nn(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?M(i,e):void 0)}var En=e=>b(Yt)(e),Ae=e=>b(Xt)(e),Fe=e=>b(qt)(e),In=e=>b(Zt)(e),kn=e=>b(Kt)(e),wn=e=>b(Jt)(e),ve=b(Vt),j=b(Ht),A=b(Ut),Ce=b(Wt),D=b($t),gt=b(ge),_=b(Bt),pt=b(zt),Pn=b(W,lt,tn,nn),Dn=b(_t,lt),Ne=b(Gt,en);function Ee(e){return D(e)||A(e)}function Ln(e){return e.type===it}function G(e){return e.type===q}function Ie(e){return e.type!==q&&e.type!==it}function ee(e){return _(e)||D(e)}function On(e){return gt(e)||pt(e)}function L(e){return e!=null&&e!==""}function b(...e){return t=>{let n=T(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Mn(e,t={}){if(_(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&d(n))return[n]}}function Vn(e){return D(e)||A(e)?!0:e.advanced?.horizontal??!1}function _n(e){return A(e)?e.advanced?.reverse!==!1:!1}function Gn(e,t){let n=e.readonly??!1;return t||n}function Hn(e){if(D(e)||_(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||d(t)&&!(Y in t))return t}}import{isValid as we,parse as Pe,format as De}from"date-fns";var ui=/^\d+$/,Le=new Date(2e3,0,1),di=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[];function yt(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function bt(){return Array.from({length:7},(e,t)=>({value:t.toString(),label:new Date(2e3,0,2+t).toLocaleString("default",{weekday:"long"})}))}function Un(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 ht(){return new Date().getFullYear()}function mi(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function fi(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return pn[n]??"Other"}function gi(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function zn(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=gi(r,e);return{offset:i,longName:a}}function $n(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}var ke=null;function Bn(){if(ke)return ke;let e=new Date,t=mi(),n=new Map,r=$n(t),{offset:o,longName:i}=zn(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let s of di()){if(s===t)continue;let c=$n(s),{offset:u,longName:g}=zn(s,e),h={value:s,label:`${c} - ${g} (${u})`},x=fi(s);if(x==="Other")continue;let F=n.get(x);F?F.push(h):n.set(x,[h])}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 ke=[{label:"Suggested",items:[a]},...l],ke}function xt(e,t){if(typeof e=="number")return e;let n=t??ht(),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 ui.test(r)?parseInt(r,10):n}function Yn(e,t){if(!e)return"";try{let n=Pe(e,t,Le);return we(n)?De(n,"yyyy-MM-dd"):""}catch{return""}}function Xn(e,t){if(!e)return"";try{let n=Pe(e,t,Le);return we(n)?De(n,"HH:mm:ss"):""}catch{return""}}function Zn(e,t="HH:mm"){if(!e)return"";try{let n=e.split(":").length===3?"HH:mm:ss":"HH:mm",r=Pe(e,n,Le);return we(r)?De(r,t):""}catch{return""}}function qn(e,t="yyyy-MM-dd"){if(!e)return"";try{let n=Pe(e,"yyyy-MM-dd",Le);return we(n)?De(n,t):""}catch{return""}}function te(e){return e.advanced?.format??"HH:mm"}function Oe(e){return e.advanced?.format??"yyyy-MM-dd"}var Me=ht();function pi(e){if(Ce(e))return yi(e)}function yi(e){if(kn(e))return bt();if(wn(e))return yt()}function bi(e){if(_(e))return hi(e)}function hi(e){if(En(e))return bt();if(Ae(e))return yt();if(Fe(e)){let t=e.advanced?.length?.min??Me,n=e.advanced?.length?.max??Me+5;return Un(xt(t,Me),xt(n,Me))}if(In(e))return Bn()}function Wn(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return gt(e)?{...n,...xi(e)}:_(e)?{...n,...Kn(e,bi)}:pt(e)?{...n,...Ri(e)}:Ce(e)?{...n,...Ti(e)}:n}function xi(e){let t=xn(e.type),n={...e,type:t};return{...Ai(e),...Jn(e),...Si(n),...Pn(n)?Qn(n):{},type:t}}function Kn(e,t){let n=t(e);return n?{options:n}:{}}function Ti(e){let t=Kn(e,pi),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function Ri(e){return{...Jn(e),...Qn(e)}}function Jn(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Si(e){return Ne(e)?Fi(e):{}}function Ai(e){if(j(e)){let t=te(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function Qn(e){return jn(e,{min:dn,max:un})}function Fi(e){return jn(e,{min:be,max:ye})}function jn(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 er(e,t){let n=Hn(e);return n||Mn(e,t)}function vi(e,t){let n=d(t)&&e.name in t?t[e.name]:t,r=dt(n,e.advanced?.entity);return j(e)&&L(r)?Ci(e,r):ve(e)&&L(r)?ki(e,r):r}function Ci(e,t){let n=te(e);return T(t)?Xn(t,n):t}function Ni(e,t,n){return ee(e)&&Array.isArray(n)?{...t,[pe]:n}:t}function Ei(e,t,n){if(e.required&&!L(n)&&_(e)&&e.advanced?.preselected!==!1&&pe in t){let r=t[pe];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function Ii(e,t){return ee(e)&&Array.isArray(t)?hn(t,e.advanced?.options):t}function tr(e,t,n,r){let o=vi(e,r),i=Array.isArray(n)?Ii(e,n):n,a=Ni(e,t,i),l=Ei(e,a,o);return{commonPropsWithOptions:a,defaultValue:l}}function nr(e,t){return A(e)?{checked:L(t)?t:!1}:Ce(e)?{value:Array.isArray(t)?t:[]}:{value:t??""}}function ki(e,t){let n=Oe(e);return T(t)?Yn(t,n):t}var wi=/^#\/definition\//;function _e(e=[],t){let n=Ve(e,t);return Array.isArray(n)?n.filter(Di).sort((r,o)=>rr(r)-rr(o)):[]}function Ve(e,t,n=new Map,r=new WeakSet){if(!Pi(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=>Ve(i,t,n,r));if(Y in e&&T(e[Y])){let i=e[Y].replace(wi,""),a=S(t,i);return a!==null?Ve(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=Ve(a,t,n,r);return r.delete(e),n.set(e,o),o}function or(e){return Object.entries(e??{})}function rr(e){return e.order??Number.MAX_VALUE}function Pi(e){return e!==void 0&&d(e)&&Object.keys(e).length>0}function Di(e){return gn in e?!0:Array.isArray(e[at])?e[at].length>0:!0}function ir(e,t){let n={};for(let[r,o]of or(t))n[`${e}-${r}`]=o;return n}function Li(e){return ir(sn,e)}function Oi(e){return ir(cn,e)}function ar(e,t){let n=Li(e.advanced?.aria);return t&&t.length>0&&(n[on]="true",n[rn]=`${e.name}-error`),n}function lr(e){return Oi(e.advanced?.data)}var sr={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},cr={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function ur(e,t=2){return sr[e&&e in sr?e:t]}function dr(e){if(e&&e in cr)return cr[e]}function Mi(e,t){let n=e.advanced?.length?.min??1;if(t){let r=S(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function mr(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===q}function fr(e,t){let n=Mi(e,t);return Array.from({length:n},(r,o)=>o)}function gr(e){return e.label??e.name}import{z as y}from"zod";function p(e,t){return e?t?t[e]??e:e:""}var Vi=[[Ne,$i],[Dn,_i],[Fe,Ui],[Ae,Bi],[A,Gi],[D,Hi]];function yr(e,t=[],n){let r=y.object(e);return t.length===0?r:qi(r,t,n)}function br(e){let t={},n=y.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function hr(e,t){for(let[n,r]of Vi)if(n(e))return r(e,t);return zi(e,t)}function _i(e,t){let n=y.string().trim();if(e.required){let r=X(e,t),o=n.min(1,r).pipe(pr(e,t));return y.preprocess(i=>xe(i)?"":i,o)}return n.pipe(pr(e,t)).or(y.literal("")).nullable()}function Gi(e,t){let n=y.coerce.boolean();return e.required?(n=n.refine(r=>r===!0,{message:X(e,t)}),y.preprocess(r=>r===null?!1:r,n)):n.nullable()}function Hi(e,t){let n=y.coerce.string();return e.required?(n=n.min(1,X(e,t)),y.preprocess(r=>xe(r)?"":r,n)):n.or(y.literal("")).nullable()}function zi(e,t){let n=y.coerce.string().trim();return n=xr(n,e,t),e.required?(n=Tr(n,e,t),y.preprocess(r=>xe(r)?"":r,n)):n.nullable()}function $i(e,t){let n=y.coerce.number().int();return n=xr(n,e,t),e.required?(n=Tr(n,e,t),y.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function Ui(e,t){return e.required?y.preprocess(Yi,y.coerce.number({message:X(e,t)}).int()):y.coerce.number().int().nullable()}function Bi(e,t){let n=X(e,t),r=y.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function Yi(e){return e===null||e===""?void 0:e}function pr(e,t){let n=e.validation?.email?p(e.validation?.email,t):void 0;return y.email(n)}function xr(e,t,n){return e=Xi(e,t,n),e=Zi(e,t,n),e}function Tr(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,X(t,n)):e}var Xi=(e,t,n)=>Rr(e,t,be,n),Zi=(e,t,n)=>Rr(e,t,ye,n);function Rr(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 qi(e,t=[],n){let r=Ki(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:l}of r)if(!Wi(o,a,l)){let s=p(l.message,n);i.addIssue({code:"custom",message:s,path:[a]})}})}function Wi(e,t,n){let r=n.operator??"eq",o=Q[r];return o?o(e[t],e[n.field]):!1}function Ki(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 Sr(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let l=a.operator??"eq",s=Q[l];if(s&&!s(e,n(a.field))&&a.message){let c=p(a.message,r);o.push(c)}}return o}function X(e,t){return e.validation?.required?p(e.validation?.required,t):void 0}function Ar(e,t){if(!t||!Qi(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||Ji(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 Ji(e){return e==="https"?"443":"80"}function Qi(e){return/^(https?:)?\/\//.test(e)}function Fr(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,he);new URL(t,he).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(he,""):o}catch{return t||e}}function vr(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=Fr(t.url,n.url),o=ji(t,n),i=ea(t,n);return{...t,...n,url:r,body:o,headers:i}})}function ji(e,t){return d(t.body)&&d(e?.body)?{...e.body,...t.body}:t.body??e?.body}function ea(e,t){return d(t.headers)&&d(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function Ge(e,t){return{...e,...t}}import{jsx as ta}from"react/jsx-runtime";function H(e){return Sn(e,(t,n,r)=>ta("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}import{jsx as ne,jsxs as Tt}from"react/jsx-runtime";function Cr(e){let{fields:t=[]}=e.section,[n,r]=oa(!1),o=ra(()=>r(i=>!i),[]);return Tt("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:[ne("legend",{children:Tt("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:[ne(Mt,{expanded:n}),ne("span",{children:H(e.section.title)})]})}),ne(na,{mode:n?"visible":"hidden",children:Tt("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&&ne("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:H(e.section.description)}),e.group]})})]})}import{Fragment as ia,jsx as Nr,jsxs as aa}from"react/jsx-runtime";function Er(e){return aa(ia,{children:[e.title&&Nr("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:H(e.title)}),e.description&&Nr("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:H(e.description)})]})}import{jsx as la,jsxs as sa}from"react/jsx-runtime";function He(e){return sa("fieldset",{"data-slot":"field-set","data-empty":e.empty,className:"flex flex-col data-[empty=false]:gap-6",id:e.id,children:[la(Er,{description:e.description,title:e.title}),e.children]})}import{jsx as ca}from"react/jsx-runtime";function $(e){return ca("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 Rt}from"react/jsx-runtime";function Ir(e){let{fields:t=[]}=e.section,{compact:n}=Ge(e.style,{compact:e.section.compact}),r=Rt($,{compact:n,children:e.children});return!e.section.title&&!e.section.description?r:e.section.advanced?Rt(Cr,{section:e.section,group:r}):Rt(He,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),title:e.section.title,children:r})}import{useAtomValue as ga}from"jotai";import{atom as U}from"jotai";import{atomFamily as kr}from"jotai-family";import{deepEqual as St}from"fast-equals";function ze(e,t){let{[t]:n,...r}=e;return r}function ua(e){return kr(t=>U(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];St(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,ze(i,t))}))}function da(e){return U(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function ma(e){return U(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 fa(e){return U(null,(t,n,r)=>{let o=t(e);St(o,r)||n(e,r)})}function wr(e,t={}){let{merge:n,validateTarget:r}=t;return kr(o=>U(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 g=u[o];(!g||!St(g,s))&&(u[o]=s,a(e,{...c,[l]:u}))}else o in u&&(delete u[o],Object.keys(u).length===0?a(e,ze(c,l)):a(e,{...c,[l]:u}))}))}function Pr(e){return U(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 Z(e={}){let t=U(e);return{atom:t,clearAll:da(t),clear:ma(t),bulkReport:fa(t),report:ua(t)}}var Dr=Z(),$e=Dr.atom,Lr=Dr.report;function pa(e,t){return e.fields.every(n=>Or(n,t))}function Or(e,t){return t[e.name]?.hidden??e.hidden??!1}function ya(e,t){return G(e)?pa(e,t):Or(e,t)}function Ue(e){let t=ga($e);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>ya(r,t))?null:e.children}import{jsx as Mr}from"react/jsx-runtime";function Vr(){return Mr("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:Mr("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}import{jsx as re,jsxs as _r}from"react/jsx-runtime";function Gr(e){let t=_e(e.sections,e.definition);return re("div",{className:"h-full w-full",children:re("form",{noValidate:e.noValidate,action:e.action,children:_r($,{children:[t.map((n,r)=>_r(Ue,{fields:n.fields??[],children:[re(Ir,{section:n,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.separator&&re(Vr,{})]},r)),e.control&&re(Lt,{isPending:e.isPending,children:e.control})]})})})}import{jsx as ba}from"react/jsx-runtime";function Be(e){return ba("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}import{jsx as ha}from"react/jsx-runtime";function Ye(e){let t={context:e.context,env:e.config?.env},n=p(Te(e.text,t),e.translations),r=H(n);return r?ha(Be,{children:r}):null}import{twMerge as xa}from"tailwind-merge";import{jsx as Ta,jsxs as Ra}from"react/jsx-runtime";function Hr(e){let t=e.style?.showOptionalLabel??!0,n=D(e.field)||A(e.field);return Ra("label",{"data-slot":"field-label","data-normal":n,className:xa("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&&Ta("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:p("(Optional)",e.translations)})]})}import{jsx as zr,jsxs as Sa}from"react/jsx-runtime";function $r(e){let t={context:e.context,env:e.config?.env},n=Te(e.field.label,t);return Sa("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[zr(Hr,{field:e.field,style:e.config?.style,translations:e.translations,children:p(n,e.translations)}),e.horizontal===!0&&zr(Ye,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}import{Fragment as Aa,jsx as Ur,jsxs as Fa}from"react/jsx-runtime";function Br(e){return Fa(Aa,{children:[e.field.name&&e.field.label&&Ur($r,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&Ur(Ye,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}function Xe(e,t){return e?t(e):null}var At=Z(),Yr=At.clear,Xr=At.bulkReport,Ze=At.report;var qe=Z(),We=qe.atom,Zr=qe.clearAll,qr=qe.clear,Ke=qe.report;import{useCallback as oe,useEffect as Ua,useRef as ie,useTransition as Ba}from"react";import{atom as va}from"jotai";var Ca=e=>{let t=vr(e);if(t)return t},Na=e=>e.trim()!=="",Wr=va({}),Kr=wr(Wr,{merge:Ca,validateTarget:Na}),Jr=Pr(Wr);import{useAtom as ka}from"jotai";import Ea from"swr";function Qr(e=null,t,n=!1){let{data:r,error:o}=Ea(Ia(e,t,n),t.fetcher.provider);if(o&&J.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return bn(r,e.namespace)}return null}function Ia(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!K(e.url)){if(Ar(e.url,t.fetcher.remotePatterns))return e;J.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function jr(e,t,n){let r=er(e,n),[o,i]=ka(Kr(e.name));return[Qr(o??r,t,e.disabled),i]}function eo(e){let t=ve(e)?Oe(e):null,n=j(e)?te(e):null;return{dateFormat:t,timeFormat:n}}import{useEffect as wa,useEffectEvent as to,useMemo as Pa}from"react";function no(e,t,n,r){let{name:o}=e,i=Pa(()=>hr(e,r),[e,r]),a=to(s=>{s&&t(s,i,e)}),l=to(s=>{s&&n(s)});return wa(()=>(a(o),()=>{l(o)}),[o]),i}import{useSetAtom as Ft,useStore as Ya}from"jotai";import{useCallback as Da,useEffect as La,useRef as Oa}from"react";function ro(){let e=Oa(null);return La(()=>()=>{e.current&&clearTimeout(e.current)},[]),Da((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}import{deepEqual as Ma}from"fast-equals";import{useAtom as Va}from"jotai";import{useCallback as _a,useEffect as Ga,useRef as Ha,useEffectEvent as za}from"react";function oo(e,t){let{name:n}=e,r=Ha(!1),[o,i]=Va(Ke(n)),a=za(s=>{let c=$a(n,s);L(c)&&(Ma(o,c)||(r.current=!0),i(c))});Ga(()=>{t&&a(t)},[t]);let l=_a(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:l,value:o}}function $a(e,t){if(e in t)return t[e];if(!e.includes("."))return;let n=e.split("."),r=t;for(let o of n){if(r==null)return;if(Array.isArray(r)){let i=Number(o);r=Number.isInteger(i)?r[i]:void 0}else if(typeof r=="object")r=r[o];else return}return r}import{jsx as io}from"react/jsx-runtime";function ao(e){let t=Ya(),n=e.field.advanced?.entity,r=ro(),[,o]=Ba(),{setValue:i,shouldSkipOnChange:a,value:l}=oo(e.field,e.value),s=ie(!1),c=ie(l);c.current=l;let u=ie(e.translations);u.current=e.translations;let g=On(e.field),h=Ee(e.field),x=Ft(We),F=Ft($e),N=Ft(Ze(e.field.name)),[R,P]=jr(e.field,e.config,l),E=no(e.field,e.onMount,e.onUnmount,e.translations),v=p(e.commonProps.placeholder,e.translations),O={...e.commonProps,placeholder:v},{commonPropsWithOptions:I,defaultValue:ue}=tr(e.field,O,R,l),{dateFormat:je,timeFormat:et}=eo(e.field),wt=ie(null);wt.current=f=>{if(i(f),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:f})}};let tt=ie(null);tt.current=f=>{let m=e.field.event?.change;m&&An(m,({sources:z,states:me,values:nt})=>{o(()=>{Fn(f,z,(k,B)=>P(k,B)),Cn(f,me,(k,B)=>{F(fe=>B?k.reduce((rt,ot)=>({...rt,[ot]:B}),fe):k.reduce((rt,ot)=>ze(rt,ot),fe))}),Nn(f,nt,(k,B)=>{x(fe=>({...fe,[k]:B}))})})})};let $o=nr(e.field,ue),de=oe(f=>{let z=E.safeParse(f).error?.issues.map(k=>k.message)??[],me=e.field.validation?.custom,nt=me?Sr(f,me,k=>t.get(Ke(k)),u.current):[];N([...z,...nt])},[e.field.validation?.custom,E,N,t]),Pt=oe((f,m)=>{if(g){r(()=>{m({value:f})},300);return}m(ut(f,R,n))},[R,n,g,r]);Ua(()=>{if(s.current||!e.value)return;if(!e.field.event?.change){s.current=!0;return}if(!((!ee(e.field)||!!R&&R.length>0)&&L(ue)))return;s.current=!0;let m=String(ue),z=g?{value:m}:ut(m,R,n);tt.current?.(z)},[R,ue,n,g,e.field,e.value]);let Dt=oe(f=>{let m=f.target.value;return et!==null?Zn(m,et):je!==null?qn(m,je):m},[et,je]),Uo=oe(f=>{let m=Dt(f);!h&&a()&&(!g||m===c.current)||(wt.current?.(m),e.config.validation.change&&de(m),e.field.event?.change&&Pt(m,z=>{tt.current?.(z)}))},[Dt,Pt,h,g,e.config.validation.change,e.field.event?.change,a,de]),Bo=oe(f=>{if(!h){let m=f.target.value;e.config.validation.blur&&de(m)}},[h,e.config.validation.blur,de]);return Xe(e.config.inputs[e.field.type],f=>io(Br,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:io(f,{...I,...e.ariaAttributes,...e.dataAttributes,...$o,onBlur:Bo,onChange:Uo})}))}import{jsx as lo}from"react/jsx-runtime";function so(e){return!e.errors||e.errors.length===0?null:lo("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)=>lo("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}import{twMerge as Xa}from"tailwind-merge";import{jsx as Za}from"react/jsx-runtime";function Je(e){let t=e.errors&&e.errors.length>0;return Za("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[an]:"true"},...e.disabled&&{[ln]:"true"},"data-orientation":e.orientation,className:Xa("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 qa}from"tailwind-merge";import{jsx as Wa}from"react/jsx-runtime";function co(e){return Wa(Je,{...e,orientation:"vertical",className:qa("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as Ka}from"tailwind-merge";import{jsx as Ja}from"react/jsx-runtime";function uo(e){return Ja(Je,{...e,orientation:"horizontal",className:Ka("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 mo}from"react/jsx-runtime";function fo(e){let t=Ee(e.field),n=A(e.field),r=_n(e.field);return e.horizontal?mo(uo,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):mo(co,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function go(e){if(!e.field.type)return null;let t=Wn(e.field,e.disabled),n=lr(e.field),r=ar(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 Qa}from"tailwind-merge";import{jsx as vt,jsxs as ja}from"react/jsx-runtime";function po(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=Ge(e.style,{horizontal:Vn(e.field)}),o=Gn(e.field,e.disabled);return ja("div",{className:Qa("flex flex-col gap-3",dr(t)),children:[vt(fo,{disabled:o,errors:n,field:e.field,horizontal:r,children:vt(go,{disabled:o,errors:n,field:e.field,horizontal:r,children:e.children})}),vt(so,{errors:n,name:e.field.name})]})}import{useAtomValue as el}from"jotai";import{jsx as rl}from"react/jsx-runtime";function yo(e){return(t,n)=>o=>{let i=el(e(o.field.name)),a=n(i,o);return a===null?null:rl(t,{...o,...a})}}var tl=yo(Ze);function bo(e){return tl(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var nl=yo(Lr);function ho(e){return nl(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var xo=ho(bo(po));import{twMerge as ol}from"tailwind-merge";import{jsx as ae,jsxs as Qe}from"react/jsx-runtime";function To(e){function t(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}let n=e.canRemove&&e.onRemove!=null&&ae("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:ol("rounded p-1 text-xl text-slate-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500 dark:hover:text-red-400"),onClick:t,type:"button",children:ae("span",{"aria-hidden":"true",children:"\xD7"})});return e.isMultiField?Qe("div",{className:"rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[Qe("div",{className:"mb-3 flex items-center justify-between",children:[Qe("span",{className:"text-sm font-medium text-slate-400 dark:text-slate-500",children:[e.label," ",e.index+1]}),n]}),ae($,{children:e.children})]}):Qe("div",{className:"flex items-start gap-2",children:[ae($,{children:e.children}),n&&ae("div",{className:"shrink-0",children:n})]})}import{twMerge as sl}from"tailwind-merge";import{useSetAtom as il}from"jotai";import{useCallback as Ro,useLayoutEffect as al,useRef as So,useState as ll}from"react";function Ao(e,t){let n=e.advanced?.length?.min??1,r=e.advanced?.length?.max??1/0,[o,i]=ll(()=>fr(e,t)),a=So(o.length),l=So(o);al(()=>{l.current=o});let s=il(We),c=Ro(()=>{i(x=>{if(x.length>=r)return x;let F=a.current++;return[...x,F]})},[r]),u=Ro(x=>{if(l.current.length<=n)return;let F=l.current[x];i(N=>N.length<=n?N:N.filter((R,P)=>P!==x)),s(N=>{let R={...N},P=`${e.name}.`,E=[];for(let v of e.fields)if(G(v))for(let O of v.fields)E.push(O.name);else E.push(v.name);for(let v of E)delete R[`${P}${F}.${v}`];return R})},[e.name,e.fields,n,s]),g=o.length<r,h=o.length>n;return[o,c,u,g,h,r]}import{Fragment as cl,jsx as Fo,jsxs as Ct}from"react/jsx-runtime";function vo(e){let[t,n,r,o,i,a]=Ao(e.field,e.value),l=gr(e.field),s=e.field.advanced?.action??"Add item",c=a!==1/0,u=mr(e.field);return Ct(cl,{children:[t.map((g,h)=>Fo(To,{canRemove:i,index:h,isMultiField:u,label:l,onRemove:r,children:e.children(g)},g)),Ct("button",{"aria-disabled":!o,"aria-label":c?`${s}, ${t.length} of ${a}`:s,className:sl("flex w-full items-center gap-1.5 rounded py-1","text-sm font-medium text-slate-500","transition-colors duration-150","hover:text-slate-800","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:ring-offset-2 focus-visible:outline-none","dark:text-slate-400 dark:hover:text-slate-200",!o&&"cursor-not-allowed opacity-50 hover:text-slate-500 dark:hover:text-slate-400"),disabled:!o,onClick:n,type:"button",children:[Fo("span",{"aria-hidden":"true",children:"+"}),s,c&&Ct("span",{"aria-hidden":"true",className:"ml-auto text-slate-400 tabular-nums dark:text-slate-500",children:[t.length," / ",a]})]})]})}import{jsx as ul}from"react/jsx-runtime";function Co(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return ul(He,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}import{jsx as Nt}from"react/jsx-runtime";function No({children:e,field:t,value:n}){return Nt(Ue,{container:t,fields:t.fields,children:Nt(Co,{field:t,children:Nt(vo,{field:t,value:n,children:e})})})}import{twMerge as dl}from"tailwind-merge";import{jsx as Eo,jsxs as ml}from"react/jsx-runtime";function Io(e){let t=ur(e.column?.advanced?.cols);return ml("div",{className:"flex w-full flex-col gap-4",children:[Eo("div",{className:dl("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&Eo(Be,{children:e.column.description})]})}import{Fragment as gl}from"react";import{jsx as fl}from"react/jsx-runtime";function ko(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>Ie(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:G(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return fl(le,{children:e.children,components:e.components,disabled:e.disabled,fields:t,style:e.style,value:e.value})}import{jsx as se,jsxs as pl}from"react/jsx-runtime";function le(e){let{field:t,list:n}=e.components;return _e(e.fields).map((r,o)=>pl(gl,{children:[G(r)&&se(Io,{column:r,children:se(le,{...e,fields:r.fields})}),Ie(r)&&se(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),Ln(r)&&se(n,{field:r,value:e.value,children:i=>se(ko,{children:e.children,components:e.components,disabled:e.disabled,field:r,index:i,style:e.style,value:e.value})})]},o))}import{jsx as yl}from"react/jsx-runtime";function wo(e){return n=>yl(le,{...n,components:e})}var Po=wo({field:xo,list:No});import{useSetAtom as Do}from"jotai";import{startTransition as Lo,useActionState as bl}from"react";function Mo(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},l=Do(Xr),s=Do(Zr),c={data:null,error:null,success:!1},[u,g,h]=bl(async(x,F)=>{let[N,R]=e(),P=yr(N,R,a);if(i===!1)return t?await t(F,P):x;let E=Tn(F),v=P.safeParse(E);if(!v.success){let I=br(v.error);return Lo(()=>{l(I)}),Et(E,{description:p("Please correct the errors and try again.",a),details:[],title:p("There were validation errors submitting the form.",a)})}let O=Rn(E);if(t)try{let I=await t(O,P);return I.success?(r?.(I.data),o||Lo(()=>{s()}),Oo(O,o)):Et(O,I.error)}catch(I){return J.error("Error executing form action:",I),Et(O,{title:p("An unexpected error occurred submitting the form.",a),details:hl(I,a)})}return Oo(v.data,o)},c);return[g,u,h]}function hl(e,t){return e instanceof Error?[e.message]:[p("Unknown error",t)]}function Oo(e,t=!1){return{data:t?e:null,error:null,success:!0}}function Et(e,t){return{data:e,error:t,success:!1}}import{useCallback as kt,useRef as _o}from"react";import{useCallback as xl}from"react";import{useSetAtom as It}from"jotai";function Vo(){let e=It(Yr),t=It(qr),n=It(Jr);return xl(r=>{let o=Array.isArray(r)?r:[r];e(o),n(o),t(o)},[e,n,t])}function Go(){let e=Vo(),t=_o({}),n=_o([]),r=kt((a,l,s)=>{a in t.current||(t.current[a]=l,n.current.push(s))},[]),o=kt(a=>{t.current[a]&&(delete t.current[a],n.current=n.current.filter(l=>l.name!==a),e([a]))},[e]);return[kt(()=>[t.current,n.current],[]),r,o]}import{Fragment as Tl,jsx as ce,jsxs as Rl}from"react/jsx-runtime";function Ho(e){let t=e.translations?.[e.lang??""],[n,r,o]=Go(),[i,a,l]=Mo(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 Rl(Tl,{children:[s&&Xe(e.config.alert,u=>ce("div",{className:"mb-4 w-full",children:ce(u,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),ce(Gr,{action:i,config:e.config,control:e.children,definition:e.definition,isPending:l,noValidate:!0,readOnly:e.readOnly,sections:e.sections,children:({disabled:u,fields:g})=>ce(Po,{disabled:u,fields:g,style:e.config.style,value:c,children:h=>ce(ao,{...h,config:e.config,context:e.context,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:c})})})]})}import{Provider as Sl}from"jotai";import{jsx as zo}from"react/jsx-runtime";function Al(e){return zo(Sl,{children:zo(Ho,{...e})})}export{Al as Form};
|
|
1
|
+
import{jsx as Zo}from"react/jsx-runtime";function Ot(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return Zo("div",{"data-slot":"field-control",className:"w-full",children:t})}import{Activity as oa,useCallback as ia,useState as aa}from"react";import{jsx as Mt}from"react/jsx-runtime";function Vt(e){return Mt("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:Mt("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 be="input",_t="input/date",zt="input/email",Gt="input/number";var Ht="input/time";var $t="textarea",Ut="radio",Bt="checkbox",at="list";var Yt="select",Xt="select/day",Zt="select/month",qt="select/timezone",Wt="select/year";var Kt="chips",Jt="chips/day",Qt="chips/month",J="column",jt="description",lt="fields",en="label",C="value",he="options",st="email",tn="number",nn="password",rn="tel",Q="text",on="aria-errormessage",an="aria-invalid",ln="data-invalid",sn="data-readonly",cn="aria",un="data",xe="max",dn="maxLength",Te="min",mn="minLength",q="$ref";var fn="source",gn="state",Re="http://luna.internal";var pn="type",yn={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 Se(e){return e==null||e===""}function k(e){return R(e)||typeof e=="number"||ct(e)}function R(e){return typeof e=="string"}function bn(e){return d(e)&&"url"in e}function ct(e){return typeof e=="boolean"}var qo=/^\d+$/;function dt(e,t=[],n=C){return Array.isArray(t)?t.find(r=>{let o=mt(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}:{value:e}}function mt(e,t=C){if(e!=null){if(Array.isArray(e)&&e.every(k)||k(e))return e;if(d(e)){let n=Wo(e,t);if(k(n))return n}}}function Wo(e,t){let n=F(e,t);if(k(n))return n}function hn(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 xn(e,t={description:jt,label:en,value:C}){return e.map(n=>{if(d(n)){let r=F(n,t.label),o=F(n,t.value);if(k(r)&&k(o)){let i=F(n,t.description);return{label:`${r}`,value:`${o}`,...k(i)&&{description:`${i}`}}}}return n})}function Tn(e=Q){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==be?n.trim().toLowerCase():Q}function Rn(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 Sn(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=qo.test(s);l in o||(o[l]=c?[]:{}),o=o[l]}let i=r[r.length-1];o[i]=e[n]}return ut(t),t}function ut(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)&&ut(o);e[t]=r}else d(n)&&ut(n)}}var Ko=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function M(e,t={}){if(R(e))return Jo(e,t);if(Array.isArray(e))return e.map(n=>M(n,t));if(d(e)){let n={};for(let r in e)n[r]=M(e[r],t);return n}return e}function Fe(e,t={}){return j(e)?M(e,t):e}function j(e){return R(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>j(t)):d(e)?Object.values(e).some(t=>j(t)):!1}function Jo(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,r)=>{let o=r.includes(".")?F(t,r):t[r];return k(o)?String(o):n})}function Fn(e,t){if(!R(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Ko.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 ee={error:(...e)=>{ft()&&!gt()&&Ae().error("[Luna Form]",...e)},warn:(...e)=>{ft()&&!gt()&&Ae().warn("[Luna Form]",...e)},info:(...e)=>{ft()&&!gt()&&Ae().info("[Luna Form]",...e)}},ft=()=>typeof Ae()<"u",gt=()=>!0,Ae=()=>globalThis.console;function An(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===C&&n.push(i),i.action===fn&&r.push(i),i.action===gn&&o.push(i);t({sources:r,states:o,values:n})}function vn(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=M(i.url,e),l=i.body?M(i.body,e):i.body;n(o,{...i,url:a,body:l})}}}var te={eq:ni,gt:ai,gte:li,in:oi,lt:si,lte:ci,neq:ri,nin:ii},Qo=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,Cn=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function jo(e){return typeof e=="string"&&Qo.test(e)}function ei(e){return typeof e=="string"&&Cn.test(e)}function ti(e){let t=e.match(Cn);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 V(e){return jo(e)?new Date(e).getTime():ei(e)?ti(e):Number(e)}function ni(e,t){return e===t}function ri(e,t){return e!==t}function oi(e,t){return Array.isArray(t)&&t.includes(String(e))}function ii(e,t){return Array.isArray(t)&&!t.includes(String(e))}function ai(e,t){return V(e)>V(t)}function li(e,t){return V(e)>=V(t)}function si(e,t){return V(e)<V(t)}function ci(e,t){return V(e)<=V(t)}function Nn(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=ui(e,a);n(l,s?i:void 0)}}function ui(e,t){return t===void 0?!0:R(t)?ve(e,C)===t:ct(t)?!!ve(e,C)===t:Array.isArray(t)?t.includes(String(ve(e,C))):di(e,t)}function di(e=null,t){let n=ve(e,t.field??C),{operator:r="eq",value:o}=t,i=te[r];return i?i(n,o):!1}function ve(e,t){return d(e)?F(e,t):e}function En(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?M(i,e):void 0)}var kn=e=>y(Xt)(e),Ce=e=>y(Zt)(e),Ne=e=>y(Wt)(e),In=e=>y(qt)(e),wn=e=>y(Jt)(e),Pn=e=>y(Qt)(e),U=y(_t),ne=y(Ht),v=y(Bt),Ee=y(Kt),D=y(Ut),pt=y(be),_=y(Yt),yt=y($t),Dn=y(Q,st,nn,rn),Ln=y(zt,st),ke=y(Gt,tn);function Ie(e){return D(e)||v(e)}function On(e){return e.type===at}function z(e){return e.type===J}function we(e){return e.type!==J&&e.type!==at}function re(e){return _(e)||D(e)}function Mn(e){return pt(e)||yt(e)}function I(e){return e!=null&&e!==""}function y(...e){return t=>{let n=R(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Vn(e,t={}){if(_(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&d(n))return[n]}}function _n(e){return D(e)||v(e)?!0:e.advanced?.horizontal??!1}function zn(e){return v(e)?e.advanced?.reverse!==!1:!1}function Gn(e,t){let n=e.readonly??!1;return t||n}function Hn(e){if(D(e)||_(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||d(t)&&!(q in t))return t}}import{isValid as De,parse as Le,format as Oe}from"date-fns";var mi=/^\d+$/,Me=new Date(2e3,0,1),fi=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[];function bt(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function ht(){return Array.from({length:7},(e,t)=>({value:t.toString(),label:new Date(2e3,0,2+t).toLocaleString("default",{weekday:"long"})}))}function Bn(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 gi(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function pi(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return yn[n]??"Other"}function yi(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function $n(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=yi(r,e);return{offset:i,longName:a}}function Un(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}var Pe=null;function Yn(){if(Pe)return Pe;let e=new Date,t=gi(),n=new Map,r=Un(t),{offset:o,longName:i}=$n(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let s of fi()){if(s===t)continue;let c=Un(s),{offset:u,longName:x}=$n(s,e),S={value:s,label:`${c} - ${x} (${u})`},T=pi(s);if(T==="Other")continue;let b=n.get(T);b?b.push(S):n.set(T,[S])}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 Pe=[{label:"Suggested",items:[a]},...l],Pe}function Tt(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 mi.test(r)?parseInt(r,10):n}function Ve(e,t){if(!e)return"";try{let n=Le(e,t,Me);return De(n)?Oe(n,"yyyy-MM-dd"):""}catch{return""}}function Xn(e,t){if(!e)return"";try{let n=Le(e,t,Me);return De(n)?Oe(n,"HH:mm:ss"):""}catch{return""}}function Zn(e,t="HH:mm"){if(!e)return"";try{let n=e.split(":").length===3?"HH:mm:ss":"HH:mm",r=Le(e,n,Me);return De(r)?Oe(r,t):""}catch{return""}}function _e(e,t="MMMM d, yyyy"){if(!e)return"";try{let n=Le(e,"yyyy-MM-dd",Me);return De(n)?Oe(n,t):""}catch{return""}}function oe(e){return e.advanced?.format??"HH:mm"}function B(e){return e.advanced?.format??"MMMM d, yyyy"}var ze=xt();function bi(e){if(Ee(e))return hi(e)}function hi(e){if(wn(e))return ht();if(Pn(e))return bt()}function xi(e){if(_(e))return Ti(e)}function Ti(e){if(kn(e))return ht();if(Ce(e))return bt();if(Ne(e)){let t=e.advanced?.length?.min??ze,n=e.advanced?.length?.max??ze+5;return Bn(Tt(t,ze),Tt(n,ze))}if(In(e))return Yn()}function qn(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return pt(e)?{...n,...Ri(e)}:_(e)?{...n,...Wn(e,xi)}:yt(e)?{...n,...Fi(e)}:Ee(e)?{...n,...Si(e)}:n}function Ri(e){let t=Tn(e.type),n={...e,type:t};return{...vi(e),...Kn(e),...Ai(n),...Dn(n)?Jn(n):{},type:t}}function Wn(e,t){let n=t(e);return n?{options:n}:{}}function Si(e){let t=Wn(e,bi),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function Fi(e){return{...Kn(e),...Jn(e)}}function Kn(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Ai(e){return ke(e)?Ci(e):{}}function vi(e){if(ne(e)){let t=oe(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function Jn(e){return Qn(e,{min:mn,max:dn})}function Ci(e){return Qn(e,{min:Te,max:xe})}function Qn(e,t){let n={},r=e.advanced?.length;return r&&(r.min!==void 0&&(n[t.min]=r.min),r.max!==void 0&&(n[t.max]=r.max)),n}function jn(e,t){let n=Hn(e);return n||Vn(e,t)}function Ni(e,t){let n=d(t)&&e.name in t?t[e.name]:t,r=mt(n,e.advanced?.entity);return ne(e)&&I(r)?Ei(e,r):U(e)&&I(r)?Pi(e,r):r}function Ei(e,t){let n=oe(e);return R(t)?Xn(t,n):t}function ki(e,t,n){return re(e)&&Array.isArray(n)?{...t,[he]:n}:t}function Ii(e,t,n){if(e.required&&!I(n)&&_(e)&&e.advanced?.preselected!==!1&&he in t){let r=t[he];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function wi(e,t){return re(e)&&Array.isArray(t)?xn(t,e.advanced?.options):t}function er(e,t,n,r){let o=Ni(e,r),i=Array.isArray(n)?wi(e,n):n,a=ki(e,t,i),l=Ii(e,a,o);return{commonPropsWithOptions:a,defaultValue:l}}function tr(e,t){return v(e)?{checked:I(t)?t:!1}:Ee(e)?{value:Array.isArray(t)?t:[]}:U(e)&&R(t)&&I(t)?{value:_e(t,B(e))}:{value:t??""}}function Pi(e,t){let n=B(e);return R(t)?Ve(t,n):t}function nr(e,t){let n=e??t;return n?{"data-format":n}:{}}var Di=/^#\/definition\//;function He(e=[],t){let n=Ge(e,t);return Array.isArray(n)?n.filter(Oi).sort((r,o)=>rr(r)-rr(o)):[]}function Ge(e,t,n=new Map,r=new WeakSet){if(!Li(t)||!e||typeof e!="object")return e;if(n.has(e))return n.get(e);if(r.has(e))return e;if(r.add(e),Array.isArray(e))return e.map(i=>Ge(i,t,n,r));if(q in e&&R(e[q])){let i=e[q].replace(Di,""),a=F(t,i);return a!==null?Ge(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=Ge(a,t,n,r);return r.delete(e),n.set(e,o),o}function or(e){return Object.entries(e??{})}function rr(e){return e.order??Number.MAX_VALUE}function Li(e){return e!==void 0&&d(e)&&Object.keys(e).length>0}function Oi(e){return pn in e?!0:Array.isArray(e[lt])?e[lt].length>0:!0}function ir(e,t){let n={};for(let[r,o]of or(t))n[`${e}-${r}`]=o;return n}function Mi(e){return ir(cn,e)}function Vi(e){return ir(un,e)}function ar(e,t){let n=Mi(e.advanced?.aria);return t&&t.length>0&&(n[an]="true",n[on]=`${e.name}-error`),n}function lr(e){return Vi(e.advanced?.data)}var sr={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},cr={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function ur(e,t=2){return sr[e&&e in sr?e:t]}function dr(e){if(e&&e in cr)return cr[e]}function _i(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 mr(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===J}function fr(e,t){let n=_i(e,t);return Array.from({length:n},(r,o)=>o)}function gr(e){return e.label??e.name}import{z as p}from"zod";function g(e,t){return e?t?t[e]??e:e:""}var zi=[[ke,Bi],[Ln,Gi],[Ne,Yi],[Ce,Xi],[v,Hi],[D,$i]];function yr(e,t=[],n){let r=p.object(e);return t.length===0?r:Ki(r,t,n)}function br(e){let t={},n=p.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function hr(e,t){for(let[n,r]of zi)if(n(e))return r(e,t);return Ui(e,t)}function Gi(e,t){let n=p.string().trim();if(e.required){let r=W(e,t),o=n.min(1,r).pipe(pr(e,t));return p.preprocess(i=>Se(i)?"":i,o)}return n.pipe(pr(e,t)).or(p.literal("")).nullable()}function Hi(e,t){let n=p.coerce.boolean();return e.required?(n=n.refine(r=>r===!0,{message:W(e,t)}),p.preprocess(r=>r===null?!1:r,n)):n.nullable()}function $i(e,t){let n=p.coerce.string();return e.required?(n=n.min(1,W(e,t)),p.preprocess(r=>Se(r)?"":r,n)):n.or(p.literal("")).nullable()}function Ui(e,t){let n=p.coerce.string().trim();return n=xr(n,e,t),e.required?(n=Tr(n,e,t),p.preprocess(r=>Se(r)?"":r,n)):n.nullable()}function Bi(e,t){let n=p.coerce.number().int();return n=xr(n,e,t),e.required?(n=Tr(n,e,t),p.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function Yi(e,t){return e.required?p.preprocess(Zi,p.coerce.number({message:W(e,t)}).int()):p.coerce.number().int().nullable()}function Xi(e,t){let n=W(e,t),r=p.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function Zi(e){return e===null||e===""?void 0:e}function pr(e,t){let n=e.validation?.email?g(e.validation?.email,t):void 0;return p.email(n)}function xr(e,t,n){return e=qi(e,t,n),e=Wi(e,t,n),e}function Tr(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,W(t,n)):e}var qi=(e,t,n)=>Rr(e,t,Te,n),Wi=(e,t,n)=>Rr(e,t,xe,n);function Rr(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?g(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function Ki(e,t=[],n){let r=Qi(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:l}of r)if(!Ji(o,a,l)){let s=g(l.message,n);i.addIssue({code:"custom",message:s,path:[a]})}})}function Ji(e,t,n){let r=n.operator??"eq",o=te[r];return o?o(e[t],e[n.field]):!1}function Qi(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 Sr(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let l=a.operator??"eq",s=te[l];if(s&&!s(e,n(a.field))&&a.message){let c=g(a.message,r);o.push(c)}}return o}function W(e,t){return e.validation?.required?g(e.validation?.required,t):void 0}function Fr(e,t){if(!t||!ea(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||ji(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 ji(e){return e==="https"?"443":"80"}function ea(e){return/^(https?:)?\/\//.test(e)}function Ar(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,Re);new URL(t,Re).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(Re,""):o}catch{return t||e}}function vr(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=Ar(t.url,n.url),o=ta(t,n),i=na(t,n);return{...t,...n,url:r,body:o,headers:i}})}function ta(e,t){return d(t.body)&&d(e?.body)?{...e.body,...t.body}:t.body??e?.body}function na(e,t){return d(t.headers)&&d(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function $e(e,t){return{...e,...t}}import{jsx as ra}from"react/jsx-runtime";function G(e){return Fn(e,(t,n,r)=>ra("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}import{jsx as ie,jsxs as Rt}from"react/jsx-runtime";function Cr(e){let{fields:t=[]}=e.section,[n,r]=aa(!1),o=ia(()=>r(i=>!i),[]);return Rt("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:[ie("legend",{children:Rt("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:[ie(Vt,{expanded:n}),ie("span",{children:G(e.section.title)})]})}),ie(oa,{mode:n?"visible":"hidden",children:Rt("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&&ie("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:G(e.section.description)}),e.group]})})]})}import{Fragment as la,jsx as Nr,jsxs as sa}from"react/jsx-runtime";function Er(e){return sa(la,{children:[e.title&&Nr("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:G(e.title)}),e.description&&Nr("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:G(e.description)})]})}import{jsx as ca,jsxs as ua}from"react/jsx-runtime";function Ue(e){return ua("fieldset",{"data-slot":"field-set","data-empty":e.empty,className:"flex flex-col data-[empty=false]:gap-6",id:e.id,children:[ca(Er,{description:e.description,title:e.title}),e.children]})}import{jsx as da}from"react/jsx-runtime";function Y(e){return da("div",{"data-slot":"field-group","data-compact":e.compact,className:"flex w-full flex-col gap-8 data-[compact=true]:gap-3",children:e.children})}import{jsx as St}from"react/jsx-runtime";function kr(e){let{fields:t=[]}=e.section,{compact:n}=$e(e.style,{compact:e.section.compact}),r=St(Y,{compact:n,children:e.children});return!e.section.title&&!e.section.description?r:e.section.advanced?St(Cr,{section:e.section,group:r}):St(Ue,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),title:e.section.title,children:r})}import{useAtomValue as ya}from"jotai";import{atom as X}from"jotai";import{atomFamily as Ir}from"jotai-family";import{deepEqual as Ft}from"fast-equals";function Be(e,t){let{[t]:n,...r}=e;return r}function ma(e){return Ir(t=>X(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];Ft(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,Be(i,t))}))}function fa(e){return X(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function ga(e){return X(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 pa(e){return X(null,(t,n,r)=>{let o=t(e);Ft(o,r)||n(e,r)})}function wr(e,t={}){let{merge:n,validateTarget:r}=t;return Ir(o=>X(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 x=u[o];(!x||!Ft(x,s))&&(u[o]=s,a(e,{...c,[l]:u}))}else o in u&&(delete u[o],Object.keys(u).length===0?a(e,Be(c,l)):a(e,{...c,[l]:u}))}))}function Pr(e){return X(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 K(e={}){let t=X(e);return{atom:t,clearAll:fa(t),clear:ga(t),bulkReport:pa(t),report:ma(t)}}var Dr=K(),Ye=Dr.atom,Lr=Dr.report;function ba(e,t){return e.fields.every(n=>Or(n,t))}function Or(e,t){return t[e.name]?.hidden??e.hidden??!1}function ha(e,t){return z(e)?ba(e,t):Or(e,t)}function Xe(e){let t=ya(Ye);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>ha(r,t))?null:e.children}import{jsx as Mr}from"react/jsx-runtime";function Vr(){return Mr("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:Mr("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}import{jsx as ae,jsxs as _r}from"react/jsx-runtime";function zr(e){let t=He(e.sections,e.definition);return ae("div",{className:"h-full w-full",children:ae("form",{noValidate:e.noValidate,action:e.action,children:_r(Y,{children:[t.map((n,r)=>_r(Xe,{fields:n.fields??[],children:[ae(kr,{section:n,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.separator&&ae(Vr,{})]},r)),e.control&&ae(Ot,{isPending:e.isPending,children:e.control})]})})})}import{jsx as xa}from"react/jsx-runtime";function Ze(e){return xa("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}import{jsx as Ta}from"react/jsx-runtime";function qe(e){let t={context:e.context,env:e.config?.env},n=g(Fe(e.text,t),e.translations),r=G(n);return r?Ta(Ze,{children:r}):null}import{twMerge as Ra}from"tailwind-merge";import{jsx as Sa,jsxs as Fa}from"react/jsx-runtime";function Gr(e){let t=e.style?.showOptionalLabel??!0,n=D(e.field)||v(e.field);return Fa("label",{"data-slot":"field-label","data-normal":n,className:Ra("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&&Sa("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:g("(Optional)",e.translations)})]})}import{jsx as Hr,jsxs as Aa}from"react/jsx-runtime";function $r(e){let t={context:e.context,env:e.config?.env},n=Fe(e.field.label,t);return Aa("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[Hr(Gr,{field:e.field,style:e.config?.style,translations:e.translations,children:g(n,e.translations)}),e.horizontal===!0&&Hr(qe,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}import{Fragment as va,jsx as Ur,jsxs as Ca}from"react/jsx-runtime";function Br(e){return Ca(va,{children:[e.field.name&&e.field.label&&Ur($r,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&Ur(qe,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}function We(e,t){return e?t(e):null}var At=K(),Yr=At.clear,Xr=At.bulkReport,Ke=At.report;var Je=K(),Qe=Je.atom,Zr=Je.clearAll,qr=Je.clear,je=Je.report;import{useCallback as le,useEffect as Ya,useRef as se,useTransition as Xa}from"react";import{atom as Na}from"jotai";var Ea=e=>{let t=vr(e);if(t)return t},ka=e=>e.trim()!=="",Wr=Na({}),Kr=wr(Wr,{merge:Ea,validateTarget:ka}),Jr=Pr(Wr);import{useAtom as Pa}from"jotai";import Ia from"swr";function Qr(e=null,t,n=!1){let{data:r,error:o}=Ia(wa(e,t,n),t.fetcher.provider);if(o&&ee.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return hn(r,e.namespace)}return null}function wa(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!j(e.url)){if(Fr(e.url,t.fetcher.remotePatterns))return e;ee.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function jr(e,t,n){let r=jn(e,n),[o,i]=Pa(Kr(e.name));return[Qr(o??r,t,e.disabled),i]}function eo(e){let t=U(e)?B(e):null,n=ne(e)?oe(e):null;return{dateFormat:t,timeFormat:n}}import{useEffect as Da,useEffectEvent as to,useMemo as La}from"react";function no(e,t,n,r){let{name:o}=e,i=La(()=>hr(e,r),[e,r]),a=to(s=>{s&&t(s,i,e)}),l=to(s=>{s&&n(s)});return Da(()=>(a(o),()=>{l(o)}),[o]),i}import{useSetAtom as vt,useStore as Za}from"jotai";import{useCallback as Oa,useEffect as Ma,useRef as Va}from"react";function ro(){let e=Va(null);return Ma(()=>()=>{e.current&&clearTimeout(e.current)},[]),Oa((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}import{deepEqual as _a}from"fast-equals";import{useAtom as za}from"jotai";import{useCallback as Ga,useEffect as Ha,useRef as $a,useEffectEvent as Ua}from"react";function oo(e,t){let{name:n}=e,r=$a(!1),[o,i]=za(je(n)),a=Ua(s=>{let c=Ba(n,s);I(c)&&(_a(o,c)||(r.current=!0),i(c))});Ha(()=>{t&&a(t)},[t]);let l=Ga(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:l,value:o}}function Ba(e,t){if(e in t)return t[e];if(!e.includes("."))return;let n=e.split("."),r=t;for(let o of n){if(r==null)return;if(Array.isArray(r)){let i=Number(o);r=Number.isInteger(i)?r[i]:void 0}else if(typeof r=="object")r=r[o];else return}return r}import{jsx as io}from"react/jsx-runtime";function ao(e){let t=Za(),n=e.field.advanced?.entity,r=ro(),[,o]=Xa(),{setValue:i,shouldSkipOnChange:a,value:l}=oo(e.field,e.value),s=se(!1),{dateFormat:c,timeFormat:u}=eo(e.field),x=nr(c,u),S=se(l);S.current=l;let T=se(e.translations);T.current=e.translations;let b=Mn(e.field),A=Ie(e.field),L=vt(Qe),w=vt(Ye),P=vt(Ke(e.field.name)),[h,H]=jr(e.field,e.config,l),$=no(e.field,e.onMount,e.onUnmount,e.translations),N=g(e.commonProps.placeholder,e.translations),$o={...e.commonProps,placeholder:N},{commonPropsWithOptions:Uo,defaultValue:fe}=er(e.field,$o,h,l),Bo=tr(e.field,fe),Pt=se(null);Pt.current=f=>{if(i(f),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:f})}};let nt=se(null);nt.current=f=>{let m=e.field.event?.change;m&&An(m,({sources:O,states:pe,values:rt})=>{o(()=>{vn(f,O,(E,Z)=>H(E,Z)),Nn(f,pe,(E,Z)=>{w(ye=>Z?E.reduce((ot,it)=>({...ot,[it]:Z}),ye):E.reduce((ot,it)=>Be(ot,it),ye))}),En(f,rt,(E,Z)=>{L(ye=>({...ye,[E]:Z}))})})})};let ge=le(f=>{let O=$.safeParse(f).error?.issues.map(E=>E.message)??[],pe=e.field.validation?.custom,rt=pe?Sr(f,pe,E=>t.get(je(E)),T.current):[];P([...O,...rt])},[e.field.validation?.custom,$,P,t]),Dt=le((f,m)=>{if(b){r(()=>{m({value:f})},300);return}m(dt(f,h,n))},[h,n,b,r]);Ya(()=>{if(s.current||!e.value)return;if(!e.field.event?.change){s.current=!0;return}if(!((!re(e.field)||!!h&&h.length>0)&&I(fe)))return;s.current=!0;let m=String(fe),O=b?{value:m}:dt(m,h,n);nt.current?.(O)},[h,fe,n,b,e.field,e.value]);let Lt=le(f=>{let m=f.target.value;return u!==null?Zn(m,u):c!==null&&_e(m,c)||m},[u,c]),Yo=le(f=>{let m=Lt(f);!A&&a()&&(!b||m===S.current)||(Pt.current?.(m),e.config.validation.change&&ge(m),e.field.event?.change&&Dt(m,O=>{nt.current?.(O)}))},[Lt,Dt,A,b,e.config.validation.change,e.field.event?.change,a,ge]),Xo=le(f=>{if(!A){let m=f.target.value;e.config.validation.blur&&ge(m)}},[A,e.config.validation.blur,ge]);return We(e.config.inputs[e.field.type],f=>io(Br,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:io(f,{...Uo,...e.ariaAttributes,...e.dataAttributes,...x,...Bo,onBlur:Xo,onChange:Yo})}))}import{jsx as lo}from"react/jsx-runtime";function so(e){return!e.errors||e.errors.length===0?null:lo("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)=>lo("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}import{twMerge as qa}from"tailwind-merge";import{jsx as Wa}from"react/jsx-runtime";function et(e){let t=e.errors&&e.errors.length>0;return Wa("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[ln]:"true"},...e.disabled&&{[sn]:"true"},"data-orientation":e.orientation,className:qa("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 Ka}from"tailwind-merge";import{jsx as Ja}from"react/jsx-runtime";function co(e){return Ja(et,{...e,orientation:"vertical",className:Ka("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as Qa}from"tailwind-merge";import{jsx as ja}from"react/jsx-runtime";function uo(e){return ja(et,{...e,orientation:"horizontal",className:Qa("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 mo}from"react/jsx-runtime";function fo(e){let t=Ie(e.field),n=v(e.field),r=zn(e.field);return e.horizontal?mo(uo,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):mo(co,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function go(e){if(!e.field.type)return null;let t=qn(e.field,e.disabled),n=lr(e.field),r=ar(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 el}from"tailwind-merge";import{jsx as Ct,jsxs as tl}from"react/jsx-runtime";function po(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=$e(e.style,{horizontal:_n(e.field)}),o=Gn(e.field,e.disabled);return tl("div",{className:el("flex flex-col gap-3",dr(t)),children:[Ct(fo,{disabled:o,errors:n,field:e.field,horizontal:r,children:Ct(go,{disabled:o,errors:n,field:e.field,horizontal:r,children:e.children})}),Ct(so,{errors:n,name:e.field.name})]})}import{useAtomValue as nl}from"jotai";import{jsx as il}from"react/jsx-runtime";function yo(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 rl=yo(Ke);function bo(e){return rl(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var ol=yo(Lr);function ho(e){return ol(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var xo=ho(bo(po));import{twMerge as al}from"tailwind-merge";import{jsx as ce,jsxs as tt}from"react/jsx-runtime";function To(e){function t(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}let n=e.canRemove&&e.onRemove!=null&&ce("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:al("rounded p-1 text-xl text-slate-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500 dark:hover:text-red-400"),onClick:t,type:"button",children:ce("span",{"aria-hidden":"true",children:"\xD7"})});return e.isMultiField?tt("div",{className:"rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[tt("div",{className:"mb-3 flex items-center justify-between",children:[tt("span",{className:"text-sm font-medium text-slate-400 dark:text-slate-500",children:[e.label," ",e.index+1]}),n]}),ce(Y,{children:e.children})]}):tt("div",{className:"flex items-start gap-2",children:[ce(Y,{children:e.children}),n&&ce("div",{className:"shrink-0",children:n})]})}import{twMerge as ul}from"tailwind-merge";import{useSetAtom as ll}from"jotai";import{useCallback as Ro,useLayoutEffect as sl,useRef as So,useState as cl}from"react";function Fo(e,t){let n=e.advanced?.length?.min??1,r=e.advanced?.length?.max??1/0,[o,i]=cl(()=>fr(e,t)),a=So(o.length),l=So(o);sl(()=>{l.current=o});let s=ll(Qe),c=Ro(()=>{i(T=>{if(T.length>=r)return T;let b=a.current++;return[...T,b]})},[r]),u=Ro(T=>{if(l.current.length<=n)return;let b=l.current[T];i(A=>A.length<=n?A:A.filter((L,w)=>w!==T)),s(A=>{let L={...A},w=`${e.name}.`,P=[];for(let h of e.fields)if(z(h))for(let H of h.fields)P.push(H.name);else P.push(h.name);for(let h of P)delete L[`${w}${b}.${h}`];return L})},[e.name,e.fields,n,s]),x=o.length<r,S=o.length>n;return[o,c,u,x,S,r]}import{Fragment as dl,jsx as Ao,jsxs as Nt}from"react/jsx-runtime";function vo(e){let[t,n,r,o,i,a]=Fo(e.field,e.value),l=gr(e.field),s=e.field.advanced?.action??"Add item",c=a!==1/0,u=mr(e.field);return Nt(dl,{children:[t.map((x,S)=>Ao(To,{canRemove:i,index:S,isMultiField:u,label:l,onRemove:r,children:e.children(x)},x)),Nt("button",{"aria-disabled":!o,"aria-label":c?`${s}, ${t.length} of ${a}`:s,className:ul("flex w-full items-center gap-1.5 rounded py-1","text-sm font-medium text-slate-500","transition-colors duration-150","hover:text-slate-800","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:ring-offset-2 focus-visible:outline-none","dark:text-slate-400 dark:hover:text-slate-200",!o&&"cursor-not-allowed opacity-50 hover:text-slate-500 dark:hover:text-slate-400"),disabled:!o,onClick:n,type:"button",children:[Ao("span",{"aria-hidden":"true",children:"+"}),s,c&&Nt("span",{"aria-hidden":"true",className:"ml-auto text-slate-400 tabular-nums dark:text-slate-500",children:[t.length," / ",a]})]})]})}import{jsx as ml}from"react/jsx-runtime";function Co(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return ml(Ue,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}import{jsx as Et}from"react/jsx-runtime";function No({children:e,field:t,value:n}){return Et(Xe,{container:t,fields:t.fields,children:Et(Co,{field:t,children:Et(vo,{field:t,value:n,children:e})})})}import{twMerge as fl}from"tailwind-merge";import{jsx as Eo,jsxs as gl}from"react/jsx-runtime";function ko(e){let t=ur(e.column?.advanced?.cols);return gl("div",{className:"flex w-full flex-col gap-4",children:[Eo("div",{className:fl("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&Eo(Ze,{children:e.column.description})]})}import{Fragment as yl}from"react";import{jsx as pl}from"react/jsx-runtime";function Io(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>we(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:z(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return pl(ue,{children:e.children,components:e.components,disabled:e.disabled,fields:t,style:e.style,value:e.value})}import{jsx as de,jsxs as bl}from"react/jsx-runtime";function ue(e){let{field:t,list:n}=e.components;return He(e.fields).map((r,o)=>bl(yl,{children:[z(r)&&de(ko,{column:r,children:de(ue,{...e,fields:r.fields})}),we(r)&&de(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),On(r)&&de(n,{field:r,value:e.value,children:i=>de(Io,{children:e.children,components:e.components,disabled:e.disabled,field:r,index:i,style:e.style,value:e.value})})]},o))}import{jsx as hl}from"react/jsx-runtime";function wo(e){return n=>hl(ue,{...n,components:e})}var Po=wo({field:xo,list:No});import{useSetAtom as Do}from"jotai";import{startTransition as Lo,useActionState as xl}from"react";function Mo(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},l=Do(Xr),s=Do(Zr),c={data:null,error:null,success:!1},[u,x,S]=xl(async(T,b)=>{let[A,L]=e(),w=yr(A,L,a);if(i===!1)return t?await t(b,w):T;let P=Rn(b),h=Rl(P,L),H=w.safeParse(h);if(!H.success){let N=br(H.error);return Lo(()=>{l(N)}),kt(P,{description:g("Please correct the errors and try again.",a),details:[],title:g("There were validation errors submitting the form.",a)})}let $=Sn(h);if(t)try{let N=await t($,w);return N.success?(r?.(N.data),o||Lo(()=>{s()}),Oo($,o)):kt($,N.error)}catch(N){return ee.error("Error executing form action:",N),kt($,{title:g("An unexpected error occurred submitting the form.",a),details:Tl(N,a)})}return Oo(H.data,o)},c);return[x,u,S]}function Tl(e,t){return e instanceof Error?[e.message]:[g("Unknown error",t)]}function Oo(e,t=!1){return{data:t?e:null,error:null,success:!0}}function kt(e,t){return{data:e,error:t,success:!1}}function Rl(e,t){let n={...e};for(let r of t)if(U(r)&&typeof n[r.name]=="string"&&n[r.name]){let o=Ve(n[r.name],B(r));o&&(n[r.name]=o)}return n}import{useCallback as wt,useRef as _o}from"react";import{useCallback as Sl}from"react";import{useSetAtom as It}from"jotai";function Vo(){let e=It(Yr),t=It(qr),n=It(Jr);return Sl(r=>{let o=Array.isArray(r)?r:[r];e(o),n(o),t(o)},[e,n,t])}function zo(){let e=Vo(),t=_o({}),n=_o([]),r=wt((a,l,s)=>{a in t.current||(t.current[a]=l,n.current.push(s))},[]),o=wt(a=>{t.current[a]&&(delete t.current[a],n.current=n.current.filter(l=>l.name!==a),e([a]))},[e]);return[wt(()=>[t.current,n.current],[]),r,o]}import{Fragment as Fl,jsx as me,jsxs as Al}from"react/jsx-runtime";function Go(e){let t=e.translations?.[e.lang??""],[n,r,o]=zo(),[i,a,l]=Mo(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 Al(Fl,{children:[s&&We(e.config.alert,u=>me("div",{className:"mb-4 w-full",children:me(u,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),me(zr,{action:i,config:e.config,control:e.children,definition:e.definition,isPending:l,noValidate:!0,readOnly:e.readOnly,sections:e.sections,children:({disabled:u,fields:x})=>me(Po,{disabled:u,fields:x,style:e.config.style,value:c,children:S=>me(ao,{...S,config:e.config,context:e.context,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:c})})})]})}import{Provider as vl}from"jotai";import{jsx as Ho}from"react/jsx-runtime";function Cl(e){return Ho(vl,{children:Ho(Go,{...e})})}export{Cl as Form};
|
package/dist/server/cjs/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var ie=Object.defineProperty;var ar=Object.getOwnPropertyDescriptor;var sr=Object.getOwnPropertyNames;var cr=Object.prototype.hasOwnProperty;var dr=(e,t)=>{for(var n in t)ie(e,n,{get:t[n],enumerable:!0})},ur=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of sr(t))!cr.call(e,o)&&o!==n&&ie(e,o,{get:()=>t[o],enumerable:!(r=ar(t,o))||r.enumerable});return e};var fr=e=>ur(ie({},"__esModule",{value:!0}),e);var Jr={};dr(Jr,{Fallback:()=>ir,Form:()=>re});module.exports=fr(Jr);var Le=require("react/jsx-runtime");function ke(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,Le.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var k=require("react");var le=require("react/jsx-runtime");function Pe(e){return(0,le.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,le.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 H="input",De="input/date",we="input/email",Oe="input/number";var Me="input/time";var _e="textarea",Ve="radio",ze="checkbox",ae="list";var He="select",Ge="select/day",$e="select/month",Be="select/timezone",Ue="select/year";var Ye="chips",Xe="chips/day",Ze="chips/month",w="column",Ke="description",se="fields",We="label",ce="value",G="options",de="email",qe="number",Je="password",Qe="tel",O="text",je="aria-errormessage",et="aria-invalid",tt="data-invalid",nt="data-readonly",rt="aria",ot="data",it="max",lt="maxLength",at="min",st="minLength",I="$ref";var ct="type",dt={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};function s(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function p(e){return f(e)||typeof e=="number"||mr(e)}function f(e){return typeof e=="string"}function mr(e){return typeof e=="boolean"}function ut(e,t=ce){if(e!=null){if(Array.isArray(e)&&e.every(p)||p(e))return e;if(s(e)){let n=pr(e,t);if(p(n))return n}}}function pr(e,t){let n=g(e,t);if(p(n))return n}function g(e,t){if(!t||!s(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(s(r)&&o in r)r=r[o];else return null;return r}function ft(e,t={description:Ke,label:We,value:ce}){return e.map(n=>{if(s(n)){let r=g(n,t.label),o=g(n,t.value);if(p(r)&&p(o)){let i=g(n,t.description);return{label:`${r}`,value:`${o}`,...p(i)&&{description:`${i}`}}}}return n})}function mt(e=O){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==H?n.trim().toLowerCase():O}var gr=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function ue(e,t={}){if(f(e))return yr(e,t);if(Array.isArray(e))return e.map(n=>ue(n,t));if(s(e)){let n={};for(let r in e)n[r]=ue(e[r],t);return n}return e}function $(e,t={}){return fe(e)?ue(e,t):e}function fe(e){return f(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>fe(t)):s(e)?Object.values(e).some(t=>fe(t)):!1}function yr(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,r)=>{let o=r.includes(".")?g(t,r):t[r];return p(o)?String(o):n})}function pt(e,t){if(!f(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=gr.exec(e))!==null;){let[l,c,d]=n,u=n.index;o=!0,u>r&&i.push(e.substring(r,u));let D=t?t(u,d,c):l;i.push(D),r=u+l.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var gt=e=>a(Ge)(e),yt=e=>a($e)(e),xt=e=>a(Ue)(e),bt=e=>a(Be)(e),Tt=e=>a(Xe)(e),ht=e=>a(Ze)(e),Rt=a(De),me=a(Me),y=a(ze),pe=a(Ye),S=a(Ve),Ft=a(H),h=a(He),St=a(_e),At=a(O,de,Je,Qe),fo=a(we,de),Nt=a(Oe,qe);function Ct(e){return S(e)||y(e)}function It(e){return e.type===ae}function E(e){return e.type===w}function B(e){return e.type!==w&&e.type!==ae}function ge(e){return h(e)||S(e)}function M(e){return e!=null&&e!==""}function a(...e){return t=>{let n=f(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Et(e,t={}){if(h(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&s(n))return[n]}}function vt(e){return S(e)||y(e)?!0:e.advanced?.horizontal??!1}function kt(e){return y(e)?e.advanced?.reverse!==!1:!1}function Lt(e,t){let n=e.readonly??!1;return t||n}function Pt(e){if(S(e)||h(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||s(t)&&!(I in t))return t}}var b=require("date-fns"),xr=/^\d+$/,Ot=new Date(2e3,0,1),br=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[];function ye(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function xe(){return Array.from({length:7},(e,t)=>({value:t.toString(),label:new Date(2e3,0,2+t).toLocaleString("default",{weekday:"long"})}))}function Mt(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 be(){return new Date().getFullYear()}function Tr(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function hr(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return dt[n]??"Other"}function Rr(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function Dt(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(c=>c.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),l=Rr(r,e);return{offset:i,longName:l}}function wt(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}var U=null;function _t(){if(U)return U;let e=new Date,t=Tr(),n=new Map,r=wt(t),{offset:o,longName:i}=Dt(t,e),l={value:t,label:`${r} - ${i} (${o})`};for(let d of br()){if(d===t)continue;let u=wt(d),{offset:D,longName:lr}=Dt(d,e),Ee={value:d,label:`${u} - ${lr} (${D})`},oe=hr(d);if(oe==="Other")continue;let ve=n.get(oe);ve?ve.push(Ee):n.set(oe,[Ee])}for(let d of n.values())d.sort((u,D)=>u.label.localeCompare(D.label));let c=Array.from(n.entries()).sort(([d],[u])=>d.localeCompare(u)).map(([d,u])=>({label:d,items:u}));return U=[{label:"Suggested",items:[l]},...c],U}function Te(e,t){if(typeof e=="number")return e;let n=t??be(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,l]=o,c=parseInt(l,10);if(!isNaN(c))return i==="+"?n+c:n-c}return n}return xr.test(r)?parseInt(r,10):n}function Vt(e,t){if(!e)return"";try{let n=(0,b.parse)(e,t,Ot);return(0,b.isValid)(n)?(0,b.format)(n,"yyyy-MM-dd"):""}catch{return""}}function zt(e,t){if(!e)return"";try{let n=(0,b.parse)(e,t,Ot);return(0,b.isValid)(n)?(0,b.format)(n,"HH:mm:ss"):""}catch{return""}}function he(e){return e.advanced?.format??"HH:mm"}function Ht(e){return e.advanced?.format??"yyyy-MM-dd"}var Y=be();function Fr(e){if(pe(e))return Sr(e)}function Sr(e){if(Tt(e))return xe();if(ht(e))return ye()}function Ar(e){if(h(e))return Nr(e)}function Nr(e){if(gt(e))return xe();if(yt(e))return ye();if(xt(e)){let t=e.advanced?.length?.min??Y,n=e.advanced?.length?.max??Y+5;return Mt(Te(t,Y),Te(n,Y))}if(bt(e))return _t()}function Gt(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return Ft(e)?{...n,...Cr(e)}:h(e)?{...n,...$t(e,Ar)}:St(e)?{...n,...Er(e)}:pe(e)?{...n,...Ir(e)}:n}function Cr(e){let t=mt(e.type),n={...e,type:t};return{...kr(e),...Bt(e),...vr(n),...At(n)?Ut(n):{},type:t}}function $t(e,t){let n=t(e);return n?{options:n}:{}}function Ir(e){let t=$t(e,Fr),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function Er(e){return{...Bt(e),...Ut(e)}}function Bt(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function vr(e){return Nt(e)?Lr(e):{}}function kr(e){if(me(e)){let t=he(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function Ut(e){return Yt(e,{min:st,max:lt})}function Lr(e){return Yt(e,{min:at,max:it})}function Yt(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 Xt(e,t){let n=Pt(e);return n||Et(e,t)}function Pr(e,t){let n=s(t)&&e.name in t?t[e.name]:t,r=ut(n,e.advanced?.entity);return me(e)&&M(r)?Dr(e,r):Rt(e)&&M(r)?_r(e,r):r}function Dr(e,t){let n=he(e);return f(t)?zt(t,n):t}function wr(e,t,n){return ge(e)&&Array.isArray(n)?{...t,[G]:n}:t}function Or(e,t,n){if(e.required&&!M(n)&&h(e)&&e.advanced?.preselected!==!1&&G in t){let r=t[G];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function Mr(e,t){return ge(e)&&Array.isArray(t)?ft(t,e.advanced?.options):t}function Zt(e,t,n,r){let o=Pr(e,r),i=Array.isArray(n)?Mr(e,n):n,l=wr(e,t,i),c=Or(e,l,o);return{commonPropsWithOptions:l,defaultValue:c}}function Kt(e,t){return y(e)?{defaultChecked:M(t)}:{defaultValue:t}}function _r(e,t){let n=Ht(e);return f(t)?Vt(t,n):t}var Vr=/^#\/definition\//;function Z(e=[],t){let n=X(e,t);return Array.isArray(n)?n.filter(Hr).sort((r,o)=>Wt(r)-Wt(o)):[]}function X(e,t,n=new Map,r=new WeakSet){if(!zr(t)||!e||typeof e!="object")return e;if(n.has(e))return n.get(e);if(r.has(e))return e;if(r.add(e),Array.isArray(e))return e.map(i=>X(i,t,n,r));if(I in e&&f(e[I])){let i=e[I].replace(Vr,""),l=g(t,i);return l!==null?X(l,t,n,r):e}let o={};for(let[i,l]of Object.entries(e))o[i]=X(l,t,n,r);return r.delete(e),n.set(e,o),o}function qt(e){return Object.entries(e??{})}function Wt(e){return e.order??Number.MAX_VALUE}function zr(e){return e!==void 0&&s(e)&&Object.keys(e).length>0}function Hr(e){return ct in e?!0:Array.isArray(e[se])?e[se].length>0:!0}function Jt(e,t){let n={};for(let[r,o]of qt(t))n[`${e}-${r}`]=o;return n}function Gr(e){return Jt(rt,e)}function $r(e){return Jt(ot,e)}function Qt(e,t){let n=Gr(e.advanced?.aria);return t&&t.length>0&&(n[et]="true",n[je]=`${e.name}-error`),n}function jt(e){return $r(e.advanced?.data)}var en={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},tn={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function nn(e,t=2){return en[e&&e in en?e:t]}function rn(e){if(e&&e in tn)return tn[e]}function Br(e,t){let n=e.advanced?.length?.min??1;if(t){let r=g(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function on(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===w}function ln(e,t){let n=Br(e,t);return Array.from({length:n},(r,o)=>o)}function an(e){return e.label??e.name}function v(e,t){return e?t?t[e]??e:e:""}function K(e,t){return{...e,...t}}var sn=require("react/jsx-runtime");function R(e){return pt(e,(t,n,r)=>(0,sn.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}var x=require("react/jsx-runtime");function cn(e){let{fields:t=[]}=e.section,[n,r]=(0,k.useState)(!1),o=(0,k.useCallback)(()=>r(i=>!i),[]);return(0,x.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,x.jsx)("legend",{children:(0,x.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,x.jsx)(Pe,{expanded:n}),(0,x.jsx)("span",{children:R(e.section.title)})]})}),(0,x.jsx)(k.Activity,{mode:n?"visible":"hidden",children:(0,x.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,x.jsx)("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:R(e.section.description)}),e.group]})})]})}var A=require("react/jsx-runtime");function dn(e){return(0,A.jsxs)(A.Fragment,{children:[e.title&&(0,A.jsx)("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:R(e.title)}),e.description&&(0,A.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:R(e.description)})]})}var q=require("react/jsx-runtime");function W(e){return(0,q.jsxs)("fieldset",{"data-slot":"field-set","data-empty":e.empty,className:"flex flex-col data-[empty=false]:gap-6",id:e.id,children:[(0,q.jsx)(dn,{description:e.description,title:e.title}),e.children]})}var un=require("react/jsx-runtime");function N(e){return(0,un.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 J=require("react/jsx-runtime");function fn(e){let{fields:t=[]}=e.section,{compact:n}=K(e.style,{compact:e.section.compact}),r=(0,J.jsx)(N,{compact:n,children:e.children});return!e.section.title&&!e.section.description?r:e.section.advanced?(0,J.jsx)(cn,{section:e.section,group:r}):(0,J.jsx)(W,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),title:e.section.title,children:r})}var xn=require("jotai");var L=require("jotai"),mn=require("jotai-family"),Re=require("fast-equals");function Ur(e,t){let{[t]:n,...r}=e;return r}function Yr(e){return(0,mn.atomFamily)(t=>(0,L.atom)(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let l=i[t];(0,Re.deepEqual)(l,o)||r(e,{...i,[t]:o})}else t in i&&r(e,Ur(i,t))}))}function Xr(e){return(0,L.atom)(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function Zr(e){return(0,L.atom)(null,(t,n,r)=>{let i={...t(e)},l=!1;for(let c of r)c in i&&(delete i[c],l=!0);l&&n(e,i)})}function Kr(e){return(0,L.atom)(null,(t,n,r)=>{let o=t(e);(0,Re.deepEqual)(o,r)||n(e,r)})}function pn(e={}){let t=(0,L.atom)(e);return{atom:t,clearAll:Xr(t),clear:Zr(t),bulkReport:Kr(t),report:Yr(t)}}var gn=pn(),yn=gn.atom,ri=gn.report;function Wr(e,t){return e.fields.every(n=>bn(n,t))}function bn(e,t){return t[e.name]?.hidden??e.hidden??!1}function qr(e,t){return E(e)?Wr(e,t):bn(e,t)}function Tn(e){let t=(0,xn.useAtomValue)(yn);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>qr(r,t))?null:e.children}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 T=require("react/jsx-runtime");function Rn(e){let t=Z(e.sections,e.definition);return(0,T.jsx)("div",{className:"h-full w-full",children:(0,T.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,T.jsxs)(N,{children:[t.map((n,r)=>(0,T.jsxs)(Tn,{fields:n.fields??[],children:[(0,T.jsx)(fn,{section:n,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.separator&&(0,T.jsx)(hn,{})]},r)),e.control&&(0,T.jsx)(ke,{isPending:e.isPending,children:e.control})]})})})}var Fn=require("react/jsx-runtime");function Q(e){return(0,Fn.jsx)("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}var Sn=require("react/jsx-runtime");function j(e){let t={context:e.context,env:e.config?.env},n=v($(e.text,t),e.translations),r=R(n);return r?(0,Sn.jsx)(Q,{children:r}):null}var An=require("tailwind-merge"),ee=require("react/jsx-runtime");function Nn(e){let t=e.style?.showOptionalLabel??!0,n=S(e.field)||y(e.field);return(0,ee.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,An.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,ee.jsx)("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:v("(Optional)",e.translations)})]})}var _=require("react/jsx-runtime");function Cn(e){let t={context:e.context,env:e.config?.env},n=$(e.field.label,t);return(0,_.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,_.jsx)(Nn,{field:e.field,style:e.config?.style,translations:e.translations,children:v(n,e.translations)}),e.horizontal===!0&&(0,_.jsx)(j,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}var C=require("react/jsx-runtime");function In(e){return(0,C.jsxs)(C.Fragment,{children:[e.field.name&&e.field.label&&(0,C.jsx)(Cn,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&(0,C.jsx)(j,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}function En(e,t){return e?t(e):null}var Se=require("react/jsx-runtime");function vn(e){let t=Xt(e.field,e.value),{commonPropsWithOptions:n,defaultValue:r}=Zt(e.field,e.commonProps,t,e.value),o=Kt(e.field,r);return En(e.config.inputs[e.field.type],i=>(0,Se.jsx)(In,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:(0,Se.jsx)(i,{...e.ariaAttributes,...n,...e.dataAttributes,...o})}))}var Ae=require("react/jsx-runtime");function kn(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 Ln=require("tailwind-merge"),Pn=require("react/jsx-runtime");function te(e){let t=e.errors&&e.errors.length>0;return(0,Pn.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[tt]:"true"},...e.disabled&&{[nt]:"true"},"data-orientation":e.orientation,className:(0,Ln.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 Dn=require("tailwind-merge"),On=require("react/jsx-runtime");function wn(e){return(0,On.jsx)(te,{...e,orientation:"vertical",className:(0,Dn.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var Mn=require("tailwind-merge"),Vn=require("react/jsx-runtime");function _n(e){return(0,Vn.jsx)(te,{...e,orientation:"horizontal",className:(0,Mn.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 Ne=require("react/jsx-runtime");function zn(e){let t=Ct(e.field),n=y(e.field),r=kt(e.field);return e.horizontal?(0,Ne.jsx)(_n,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):(0,Ne.jsx)(wn,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function Hn(e){if(!e.field.type)return null;let t=Gt(e.field,e.disabled),n=jt(e.field),r=Qt(e.field,e.errors),o={...e.field,disabled:t.disabled};return e.children({ariaAttributes:r,commonProps:t,dataAttributes:n,field:o,horizontal:e.horizontal})}var Gn=require("tailwind-merge"),P=require("react/jsx-runtime");function $n(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=K(e.style,{horizontal:vt(e.field)}),o=Lt(e.field,e.disabled);return(0,P.jsxs)("div",{className:(0,Gn.twMerge)("flex flex-col gap-3",rn(t)),children:[(0,P.jsx)(zn,{disabled:o,errors:n,field:e.field,horizontal:r,children:(0,P.jsx)(Hn,{disabled:o,errors:n,field:e.field,horizontal:r,children:e.children})}),(0,P.jsx)(kn,{errors:n,name:e.field.name})]})}var Bn=require("tailwind-merge");var m=require("react/jsx-runtime");function Un(e){function t(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}let n=e.canRemove&&e.onRemove!=null&&(0,m.jsx)("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:(0,Bn.twMerge)("rounded p-1 text-xl text-slate-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500 dark:hover:text-red-400"),onClick:t,type:"button",children:(0,m.jsx)("span",{"aria-hidden":"true",children:"\xD7"})});return e.isMultiField?(0,m.jsxs)("div",{className:"rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[(0,m.jsxs)("div",{className:"mb-3 flex items-center justify-between",children:[(0,m.jsxs)("span",{className:"text-sm font-medium text-slate-400 dark:text-slate-500",children:[e.label," ",e.index+1]}),n]}),(0,m.jsx)(N,{children:e.children})]}):(0,m.jsxs)("div",{className:"flex items-start gap-2",children:[(0,m.jsx)(N,{children:e.children}),n&&(0,m.jsx)("div",{className:"shrink-0",children:n})]})}var Xn=require("react/jsx-runtime");function Yn(e){let t=an(e.field),n=on(e.field);return ln(e.field,e.value).map(r=>(0,Xn.jsx)(Un,{index:r,isMultiField:n,label:t,children:e.children(r)},r))}var Kn=require("react/jsx-runtime");function Zn(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return(0,Kn.jsx)(W,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}var Ce=require("react/jsx-runtime");function Wn({children:e,field:t,value:n}){return(0,Ce.jsx)(Zn,{field:t,children:(0,Ce.jsx)(Yn,{field:t,value:n,children:e})})}var qn=require("tailwind-merge");var V=require("react/jsx-runtime");function Jn(e){let t=nn(e.column?.advanced?.cols);return(0,V.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[(0,V.jsx)("div",{className:(0,qn.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&(0,V.jsx)(Q,{children:e.column.description})]})}var er=require("react");var jn=require("react/jsx-runtime");function Qn(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>B(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:E(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return(0,jn.jsx)(z,{children:e.children,components:e.components,disabled:e.disabled,fields:t,style:e.style,value:e.value})}var F=require("react/jsx-runtime");function z(e){let{field:t,list:n}=e.components;return Z(e.fields).map((r,o)=>(0,F.jsxs)(er.Fragment,{children:[E(r)&&(0,F.jsx)(Jn,{column:r,children:(0,F.jsx)(z,{...e,fields:r.fields})}),B(r)&&(0,F.jsx)(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),It(r)&&(0,F.jsx)(n,{field:r,value:e.value,children:i=>(0,F.jsx)(Qn,{children:e.children,components:e.components,disabled:e.disabled,field:r,index:i,style:e.style,value:e.value})})]},o))}var nr=require("react/jsx-runtime");function tr(e){return n=>(0,nr.jsx)(z,{...n,components:e})}var rr=tr({field:$n,list:Wn});var ne=require("react/jsx-runtime");function re(e){let t=e.translations?.[e.lang??""];return(0,ne.jsx)(Rn,{config:e.config,control:e.children,definition:e.definition,readOnly:e.readOnly,sections:e.sections,children:({disabled:n,fields:r})=>(0,ne.jsx)(rr,{disabled:n,fields:r,style:e.config.style,children:o=>(0,ne.jsx)(vn,{...o,config:e.config,context:e.context,translations:t,value:e.value})})})}var or=require("react");var Ie=require("react/jsx-runtime");function ir(e){return(0,Ie.jsx)(or.Suspense,{fallback:(0,Ie.jsx)(re,{config:e.config,sections:e.sections,readOnly:!0}),children:e.children})}
|
|
1
|
+
"use strict";var ie=Object.defineProperty;var ar=Object.getOwnPropertyDescriptor;var sr=Object.getOwnPropertyNames;var cr=Object.prototype.hasOwnProperty;var dr=(e,t)=>{for(var n in t)ie(e,n,{get:t[n],enumerable:!0})},ur=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of sr(t))!cr.call(e,o)&&o!==n&&ie(e,o,{get:()=>t[o],enumerable:!(r=ar(t,o))||r.enumerable});return e};var fr=e=>ur(ie({},"__esModule",{value:!0}),e);var Jr={};dr(Jr,{Fallback:()=>ir,Form:()=>re});module.exports=fr(Jr);var Le=require("react/jsx-runtime");function ke(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,Le.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var k=require("react");var le=require("react/jsx-runtime");function Pe(e){return(0,le.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,le.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 H="input",De="input/date",we="input/email",Oe="input/number";var Me="input/time";var _e="textarea",Ve="radio",ze="checkbox",ae="list";var He="select",Ge="select/day",$e="select/month",Be="select/timezone",Ue="select/year";var Ye="chips",Xe="chips/day",Ze="chips/month",w="column",Ke="description",se="fields",We="label",ce="value",G="options",de="email",qe="number",Je="password",Qe="tel",O="text",je="aria-errormessage",et="aria-invalid",tt="data-invalid",nt="data-readonly",rt="aria",ot="data",it="max",lt="maxLength",at="min",st="minLength",I="$ref";var ct="type",dt={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};function s(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function p(e){return f(e)||typeof e=="number"||mr(e)}function f(e){return typeof e=="string"}function mr(e){return typeof e=="boolean"}function ut(e,t=ce){if(e!=null){if(Array.isArray(e)&&e.every(p)||p(e))return e;if(s(e)){let n=pr(e,t);if(p(n))return n}}}function pr(e,t){let n=g(e,t);if(p(n))return n}function g(e,t){if(!t||!s(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(s(r)&&o in r)r=r[o];else return null;return r}function ft(e,t={description:Ke,label:We,value:ce}){return e.map(n=>{if(s(n)){let r=g(n,t.label),o=g(n,t.value);if(p(r)&&p(o)){let i=g(n,t.description);return{label:`${r}`,value:`${o}`,...p(i)&&{description:`${i}`}}}}return n})}function mt(e=O){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==H?n.trim().toLowerCase():O}var gr=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function ue(e,t={}){if(f(e))return yr(e,t);if(Array.isArray(e))return e.map(n=>ue(n,t));if(s(e)){let n={};for(let r in e)n[r]=ue(e[r],t);return n}return e}function $(e,t={}){return fe(e)?ue(e,t):e}function fe(e){return f(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>fe(t)):s(e)?Object.values(e).some(t=>fe(t)):!1}function yr(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,r)=>{let o=r.includes(".")?g(t,r):t[r];return p(o)?String(o):n})}function pt(e,t){if(!f(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=gr.exec(e))!==null;){let[l,c,d]=n,u=n.index;o=!0,u>r&&i.push(e.substring(r,u));let D=t?t(u,d,c):l;i.push(D),r=u+l.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var gt=e=>a(Ge)(e),yt=e=>a($e)(e),xt=e=>a(Ue)(e),bt=e=>a(Be)(e),Tt=e=>a(Xe)(e),ht=e=>a(Ze)(e),Rt=a(De),me=a(Me),y=a(ze),pe=a(Ye),S=a(Ve),Ft=a(H),h=a(He),St=a(_e),Nt=a(O,de,Je,Qe),fo=a(we,de),At=a(Oe,qe);function Ct(e){return S(e)||y(e)}function It(e){return e.type===ae}function E(e){return e.type===w}function B(e){return e.type!==w&&e.type!==ae}function ge(e){return h(e)||S(e)}function M(e){return e!=null&&e!==""}function a(...e){return t=>{let n=f(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Et(e,t={}){if(h(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&s(n))return[n]}}function vt(e){return S(e)||y(e)?!0:e.advanced?.horizontal??!1}function kt(e){return y(e)?e.advanced?.reverse!==!1:!1}function Lt(e,t){let n=e.readonly??!1;return t||n}function Pt(e){if(S(e)||h(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||s(t)&&!(I in t))return t}}var b=require("date-fns"),xr=/^\d+$/,Ot=new Date(2e3,0,1),br=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[];function ye(){return Array.from({length:12},(e,t)=>({value:(t+1).toString(),label:new Date(0,t).toLocaleString("default",{month:"long"})}))}function xe(){return Array.from({length:7},(e,t)=>({value:t.toString(),label:new Date(2e3,0,2+t).toLocaleString("default",{weekday:"long"})}))}function Mt(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 be(){return new Date().getFullYear()}function Tr(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function hr(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return dt[n]??"Other"}function Rr(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function Dt(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(c=>c.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),l=Rr(r,e);return{offset:i,longName:l}}function wt(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}var U=null;function _t(){if(U)return U;let e=new Date,t=Tr(),n=new Map,r=wt(t),{offset:o,longName:i}=Dt(t,e),l={value:t,label:`${r} - ${i} (${o})`};for(let d of br()){if(d===t)continue;let u=wt(d),{offset:D,longName:lr}=Dt(d,e),Ee={value:d,label:`${u} - ${lr} (${D})`},oe=hr(d);if(oe==="Other")continue;let ve=n.get(oe);ve?ve.push(Ee):n.set(oe,[Ee])}for(let d of n.values())d.sort((u,D)=>u.label.localeCompare(D.label));let c=Array.from(n.entries()).sort(([d],[u])=>d.localeCompare(u)).map(([d,u])=>({label:d,items:u}));return U=[{label:"Suggested",items:[l]},...c],U}function Te(e,t){if(typeof e=="number")return e;let n=t??be(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,l]=o,c=parseInt(l,10);if(!isNaN(c))return i==="+"?n+c:n-c}return n}return xr.test(r)?parseInt(r,10):n}function Vt(e,t){if(!e)return"";try{let n=(0,b.parse)(e,t,Ot);return(0,b.isValid)(n)?(0,b.format)(n,"yyyy-MM-dd"):""}catch{return""}}function zt(e,t){if(!e)return"";try{let n=(0,b.parse)(e,t,Ot);return(0,b.isValid)(n)?(0,b.format)(n,"HH:mm:ss"):""}catch{return""}}function he(e){return e.advanced?.format??"HH:mm"}function Ht(e){return e.advanced?.format??"MMMM d, yyyy"}var Y=be();function Fr(e){if(pe(e))return Sr(e)}function Sr(e){if(Tt(e))return xe();if(ht(e))return ye()}function Nr(e){if(h(e))return Ar(e)}function Ar(e){if(gt(e))return xe();if(yt(e))return ye();if(xt(e)){let t=e.advanced?.length?.min??Y,n=e.advanced?.length?.max??Y+5;return Mt(Te(t,Y),Te(n,Y))}if(bt(e))return _t()}function Gt(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return Ft(e)?{...n,...Cr(e)}:h(e)?{...n,...$t(e,Nr)}:St(e)?{...n,...Er(e)}:pe(e)?{...n,...Ir(e)}:n}function Cr(e){let t=mt(e.type),n={...e,type:t};return{...kr(e),...Bt(e),...vr(n),...Nt(n)?Ut(n):{},type:t}}function $t(e,t){let n=t(e);return n?{options:n}:{}}function Ir(e){let t=$t(e,Fr),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function Er(e){return{...Bt(e),...Ut(e)}}function Bt(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function vr(e){return At(e)?Lr(e):{}}function kr(e){if(me(e)){let t=he(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function Ut(e){return Yt(e,{min:st,max:lt})}function Lr(e){return Yt(e,{min:at,max:it})}function Yt(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 Xt(e,t){let n=Pt(e);return n||Et(e,t)}function Pr(e,t){let n=s(t)&&e.name in t?t[e.name]:t,r=ut(n,e.advanced?.entity);return me(e)&&M(r)?Dr(e,r):Rt(e)&&M(r)?_r(e,r):r}function Dr(e,t){let n=he(e);return f(t)?zt(t,n):t}function wr(e,t,n){return ge(e)&&Array.isArray(n)?{...t,[G]:n}:t}function Or(e,t,n){if(e.required&&!M(n)&&h(e)&&e.advanced?.preselected!==!1&&G in t){let r=t[G];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function Mr(e,t){return ge(e)&&Array.isArray(t)?ft(t,e.advanced?.options):t}function Zt(e,t,n,r){let o=Pr(e,r),i=Array.isArray(n)?Mr(e,n):n,l=wr(e,t,i),c=Or(e,l,o);return{commonPropsWithOptions:l,defaultValue:c}}function Kt(e,t){return y(e)?{defaultChecked:M(t)}:{defaultValue:t}}function _r(e,t){let n=Ht(e);return f(t)?Vt(t,n):t}var Vr=/^#\/definition\//;function Z(e=[],t){let n=X(e,t);return Array.isArray(n)?n.filter(Hr).sort((r,o)=>Wt(r)-Wt(o)):[]}function X(e,t,n=new Map,r=new WeakSet){if(!zr(t)||!e||typeof e!="object")return e;if(n.has(e))return n.get(e);if(r.has(e))return e;if(r.add(e),Array.isArray(e))return e.map(i=>X(i,t,n,r));if(I in e&&f(e[I])){let i=e[I].replace(Vr,""),l=g(t,i);return l!==null?X(l,t,n,r):e}let o={};for(let[i,l]of Object.entries(e))o[i]=X(l,t,n,r);return r.delete(e),n.set(e,o),o}function qt(e){return Object.entries(e??{})}function Wt(e){return e.order??Number.MAX_VALUE}function zr(e){return e!==void 0&&s(e)&&Object.keys(e).length>0}function Hr(e){return ct in e?!0:Array.isArray(e[se])?e[se].length>0:!0}function Jt(e,t){let n={};for(let[r,o]of qt(t))n[`${e}-${r}`]=o;return n}function Gr(e){return Jt(rt,e)}function $r(e){return Jt(ot,e)}function Qt(e,t){let n=Gr(e.advanced?.aria);return t&&t.length>0&&(n[et]="true",n[je]=`${e.name}-error`),n}function jt(e){return $r(e.advanced?.data)}var en={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},tn={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function nn(e,t=2){return en[e&&e in en?e:t]}function rn(e){if(e&&e in tn)return tn[e]}function Br(e,t){let n=e.advanced?.length?.min??1;if(t){let r=g(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function on(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===w}function ln(e,t){let n=Br(e,t);return Array.from({length:n},(r,o)=>o)}function an(e){return e.label??e.name}function v(e,t){return e?t?t[e]??e:e:""}function K(e,t){return{...e,...t}}var sn=require("react/jsx-runtime");function R(e){return pt(e,(t,n,r)=>(0,sn.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}var x=require("react/jsx-runtime");function cn(e){let{fields:t=[]}=e.section,[n,r]=(0,k.useState)(!1),o=(0,k.useCallback)(()=>r(i=>!i),[]);return(0,x.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,x.jsx)("legend",{children:(0,x.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,x.jsx)(Pe,{expanded:n}),(0,x.jsx)("span",{children:R(e.section.title)})]})}),(0,x.jsx)(k.Activity,{mode:n?"visible":"hidden",children:(0,x.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,x.jsx)("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:R(e.section.description)}),e.group]})})]})}var N=require("react/jsx-runtime");function dn(e){return(0,N.jsxs)(N.Fragment,{children:[e.title&&(0,N.jsx)("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:R(e.title)}),e.description&&(0,N.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:R(e.description)})]})}var q=require("react/jsx-runtime");function W(e){return(0,q.jsxs)("fieldset",{"data-slot":"field-set","data-empty":e.empty,className:"flex flex-col data-[empty=false]:gap-6",id:e.id,children:[(0,q.jsx)(dn,{description:e.description,title:e.title}),e.children]})}var un=require("react/jsx-runtime");function A(e){return(0,un.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 J=require("react/jsx-runtime");function fn(e){let{fields:t=[]}=e.section,{compact:n}=K(e.style,{compact:e.section.compact}),r=(0,J.jsx)(A,{compact:n,children:e.children});return!e.section.title&&!e.section.description?r:e.section.advanced?(0,J.jsx)(cn,{section:e.section,group:r}):(0,J.jsx)(W,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),title:e.section.title,children:r})}var xn=require("jotai");var L=require("jotai"),mn=require("jotai-family"),Re=require("fast-equals");function Ur(e,t){let{[t]:n,...r}=e;return r}function Yr(e){return(0,mn.atomFamily)(t=>(0,L.atom)(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let l=i[t];(0,Re.deepEqual)(l,o)||r(e,{...i,[t]:o})}else t in i&&r(e,Ur(i,t))}))}function Xr(e){return(0,L.atom)(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function Zr(e){return(0,L.atom)(null,(t,n,r)=>{let i={...t(e)},l=!1;for(let c of r)c in i&&(delete i[c],l=!0);l&&n(e,i)})}function Kr(e){return(0,L.atom)(null,(t,n,r)=>{let o=t(e);(0,Re.deepEqual)(o,r)||n(e,r)})}function pn(e={}){let t=(0,L.atom)(e);return{atom:t,clearAll:Xr(t),clear:Zr(t),bulkReport:Kr(t),report:Yr(t)}}var gn=pn(),yn=gn.atom,oi=gn.report;function Wr(e,t){return e.fields.every(n=>bn(n,t))}function bn(e,t){return t[e.name]?.hidden??e.hidden??!1}function qr(e,t){return E(e)?Wr(e,t):bn(e,t)}function Tn(e){let t=(0,xn.useAtomValue)(yn);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>qr(r,t))?null:e.children}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 T=require("react/jsx-runtime");function Rn(e){let t=Z(e.sections,e.definition);return(0,T.jsx)("div",{className:"h-full w-full",children:(0,T.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,T.jsxs)(A,{children:[t.map((n,r)=>(0,T.jsxs)(Tn,{fields:n.fields??[],children:[(0,T.jsx)(fn,{section:n,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.separator&&(0,T.jsx)(hn,{})]},r)),e.control&&(0,T.jsx)(ke,{isPending:e.isPending,children:e.control})]})})})}var Fn=require("react/jsx-runtime");function Q(e){return(0,Fn.jsx)("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}var Sn=require("react/jsx-runtime");function j(e){let t={context:e.context,env:e.config?.env},n=v($(e.text,t),e.translations),r=R(n);return r?(0,Sn.jsx)(Q,{children:r}):null}var Nn=require("tailwind-merge"),ee=require("react/jsx-runtime");function An(e){let t=e.style?.showOptionalLabel??!0,n=S(e.field)||y(e.field);return(0,ee.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,Nn.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,ee.jsx)("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:v("(Optional)",e.translations)})]})}var _=require("react/jsx-runtime");function Cn(e){let t={context:e.context,env:e.config?.env},n=$(e.field.label,t);return(0,_.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,_.jsx)(An,{field:e.field,style:e.config?.style,translations:e.translations,children:v(n,e.translations)}),e.horizontal===!0&&(0,_.jsx)(j,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}var C=require("react/jsx-runtime");function In(e){return(0,C.jsxs)(C.Fragment,{children:[e.field.name&&e.field.label&&(0,C.jsx)(Cn,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&(0,C.jsx)(j,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}function En(e,t){return e?t(e):null}var Se=require("react/jsx-runtime");function vn(e){let t=Xt(e.field,e.value),{commonPropsWithOptions:n,defaultValue:r}=Zt(e.field,e.commonProps,t,e.value),o=Kt(e.field,r);return En(e.config.inputs[e.field.type],i=>(0,Se.jsx)(In,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:(0,Se.jsx)(i,{...e.ariaAttributes,...n,...e.dataAttributes,...o})}))}var Ne=require("react/jsx-runtime");function kn(e){return!e.errors||e.errors.length===0?null:(0,Ne.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,Ne.jsx)("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var Ln=require("tailwind-merge"),Pn=require("react/jsx-runtime");function te(e){let t=e.errors&&e.errors.length>0;return(0,Pn.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[tt]:"true"},...e.disabled&&{[nt]:"true"},"data-orientation":e.orientation,className:(0,Ln.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 Dn=require("tailwind-merge"),On=require("react/jsx-runtime");function wn(e){return(0,On.jsx)(te,{...e,orientation:"vertical",className:(0,Dn.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var Mn=require("tailwind-merge"),Vn=require("react/jsx-runtime");function _n(e){return(0,Vn.jsx)(te,{...e,orientation:"horizontal",className:(0,Mn.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 Ae=require("react/jsx-runtime");function zn(e){let t=Ct(e.field),n=y(e.field),r=kt(e.field);return e.horizontal?(0,Ae.jsx)(_n,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):(0,Ae.jsx)(wn,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function Hn(e){if(!e.field.type)return null;let t=Gt(e.field,e.disabled),n=jt(e.field),r=Qt(e.field,e.errors),o={...e.field,disabled:t.disabled};return e.children({ariaAttributes:r,commonProps:t,dataAttributes:n,field:o,horizontal:e.horizontal})}var Gn=require("tailwind-merge"),P=require("react/jsx-runtime");function $n(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=K(e.style,{horizontal:vt(e.field)}),o=Lt(e.field,e.disabled);return(0,P.jsxs)("div",{className:(0,Gn.twMerge)("flex flex-col gap-3",rn(t)),children:[(0,P.jsx)(zn,{disabled:o,errors:n,field:e.field,horizontal:r,children:(0,P.jsx)(Hn,{disabled:o,errors:n,field:e.field,horizontal:r,children:e.children})}),(0,P.jsx)(kn,{errors:n,name:e.field.name})]})}var Bn=require("tailwind-merge");var m=require("react/jsx-runtime");function Un(e){function t(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}let n=e.canRemove&&e.onRemove!=null&&(0,m.jsx)("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:(0,Bn.twMerge)("rounded p-1 text-xl text-slate-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500 dark:hover:text-red-400"),onClick:t,type:"button",children:(0,m.jsx)("span",{"aria-hidden":"true",children:"\xD7"})});return e.isMultiField?(0,m.jsxs)("div",{className:"rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[(0,m.jsxs)("div",{className:"mb-3 flex items-center justify-between",children:[(0,m.jsxs)("span",{className:"text-sm font-medium text-slate-400 dark:text-slate-500",children:[e.label," ",e.index+1]}),n]}),(0,m.jsx)(A,{children:e.children})]}):(0,m.jsxs)("div",{className:"flex items-start gap-2",children:[(0,m.jsx)(A,{children:e.children}),n&&(0,m.jsx)("div",{className:"shrink-0",children:n})]})}var Xn=require("react/jsx-runtime");function Yn(e){let t=an(e.field),n=on(e.field);return ln(e.field,e.value).map(r=>(0,Xn.jsx)(Un,{index:r,isMultiField:n,label:t,children:e.children(r)},r))}var Kn=require("react/jsx-runtime");function Zn(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return(0,Kn.jsx)(W,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}var Ce=require("react/jsx-runtime");function Wn({children:e,field:t,value:n}){return(0,Ce.jsx)(Zn,{field:t,children:(0,Ce.jsx)(Yn,{field:t,value:n,children:e})})}var qn=require("tailwind-merge");var V=require("react/jsx-runtime");function Jn(e){let t=nn(e.column?.advanced?.cols);return(0,V.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[(0,V.jsx)("div",{className:(0,qn.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&(0,V.jsx)(Q,{children:e.column.description})]})}var er=require("react");var jn=require("react/jsx-runtime");function Qn(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>B(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:E(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return(0,jn.jsx)(z,{children:e.children,components:e.components,disabled:e.disabled,fields:t,style:e.style,value:e.value})}var F=require("react/jsx-runtime");function z(e){let{field:t,list:n}=e.components;return Z(e.fields).map((r,o)=>(0,F.jsxs)(er.Fragment,{children:[E(r)&&(0,F.jsx)(Jn,{column:r,children:(0,F.jsx)(z,{...e,fields:r.fields})}),B(r)&&(0,F.jsx)(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),It(r)&&(0,F.jsx)(n,{field:r,value:e.value,children:i=>(0,F.jsx)(Qn,{children:e.children,components:e.components,disabled:e.disabled,field:r,index:i,style:e.style,value:e.value})})]},o))}var nr=require("react/jsx-runtime");function tr(e){return n=>(0,nr.jsx)(z,{...n,components:e})}var rr=tr({field:$n,list:Wn});var ne=require("react/jsx-runtime");function re(e){let t=e.translations?.[e.lang??""];return(0,ne.jsx)(Rn,{config:e.config,control:e.children,definition:e.definition,readOnly:e.readOnly,sections:e.sections,children:({disabled:n,fields:r})=>(0,ne.jsx)(rr,{disabled:n,fields:r,style:e.config.style,children:o=>(0,ne.jsx)(vn,{...o,config:e.config,context:e.context,translations:t,value:e.value})})})}var or=require("react");var Ie=require("react/jsx-runtime");function ir(e){return(0,Ie.jsx)(or.Suspense,{fallback:(0,Ie.jsx)(re,{config:e.config,sections:e.sections,readOnly:!0}),children:e.children})}
|
package/dist/server/esm/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as Vn}from"react/jsx-runtime";function ge(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return Vn("div",{"data-slot":"field-control",className:"w-full",children:t})}import{Activity as xr,useCallback as br,useState as Tr}from"react";import{jsx as ye}from"react/jsx-runtime";function xe(e){return ye("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:ye("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 D="input",be="input/date",Te="input/email",he="input/number";var Re="input/time";var Fe="textarea",Se="radio",Ae="checkbox",K="list";var Ne="select",Ce="select/day",Ie="select/month",Ee="select/timezone",ve="select/year";var ke="chips",Le="chips/day",Pe="chips/month",A="column",De="description",W="fields",we="label",q="value",w="options",J="email",Oe="number",Me="password",_e="tel",N="text",Ve="aria-errormessage",ze="aria-invalid",He="data-invalid",Ge="data-readonly",$e="aria",Be="data",Ue="max",Ye="maxLength",Xe="min",Ze="minLength",h="$ref";var Ke="type",We={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 m(e){return f(e)||typeof e=="number"||zn(e)}function f(e){return typeof e=="string"}function zn(e){return typeof e=="boolean"}function qe(e,t=q){if(e!=null){if(Array.isArray(e)&&e.every(m)||m(e))return e;if(s(e)){let n=Hn(e,t);if(m(n))return n}}}function Hn(e,t){let n=p(e,t);if(m(n))return n}function p(e,t){if(!t||!s(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(s(r)&&o in r)r=r[o];else return null;return r}function Je(e,t={description:De,label:we,value:q}){return e.map(n=>{if(s(n)){let r=p(n,t.label),o=p(n,t.value);if(m(r)&&m(o)){let i=p(n,t.description);return{label:`${r}`,value:`${o}`,...m(i)&&{description:`${i}`}}}}return n})}function Qe(e=N){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==D?n.trim().toLowerCase():N}var Gn=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function Q(e,t={}){if(f(e))return $n(e,t);if(Array.isArray(e))return e.map(n=>Q(n,t));if(s(e)){let n={};for(let r in e)n[r]=Q(e[r],t);return n}return e}function O(e,t={}){return j(e)?Q(e,t):e}function j(e){return f(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>j(t)):s(e)?Object.values(e).some(t=>j(t)):!1}function $n(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,r)=>{let o=r.includes(".")?p(t,r):t[r];return m(o)?String(o):n})}function je(e,t){if(!f(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Gn.exec(e))!==null;){let[l,c,d]=n,u=n.index;o=!0,u>r&&i.push(e.substring(r,u));let S=t?t(u,d,c):l;i.push(S),r=u+l.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var et=e=>a(Ce)(e),tt=e=>a(Ie)(e),nt=e=>a(ve)(e),rt=e=>a(Ee)(e),ot=e=>a(Le)(e),it=e=>a(Pe)(e),lt=a(be),ee=a(Re),g=a(Ae),te=a(ke),b=a(Se),at=a(D),y=a(Ne),st=a(Fe),ct=a(N,J,Me,_e),Fo=a(Te,J),dt=a(he,Oe);function ut(e){return b(e)||g(e)}function ft(e){return e.type===K}function R(e){return e.type===A}function M(e){return e.type!==A&&e.type!==K}function ne(e){return y(e)||b(e)}function C(e){return e!=null&&e!==""}function a(...e){return t=>{let n=f(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function mt(e,t={}){if(y(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&s(n))return[n]}}function pt(e){return b(e)||g(e)?!0:e.advanced?.horizontal??!1}function gt(e){return g(e)?e.advanced?.reverse!==!1:!1}function yt(e,t){let n=e.readonly??!1;return t||n}function xt(e){if(b(e)||y(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||s(t)&&!(h in t))return t}}import{isValid as ht,parse as Rt,format as Ft}from"date-fns";var Bn=/^\d+$/,St=new Date(2e3,0,1),Un=()=>"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 oe(){return Array.from({length:7},(e,t)=>({value:t.toString(),label:new Date(2e3,0,2+t).toLocaleString("default",{weekday:"long"})}))}function At(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 ie(){return new Date().getFullYear()}function Yn(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function Xn(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return We[n]??"Other"}function Zn(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function bt(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(c=>c.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),l=Zn(r,e);return{offset:i,longName:l}}function Tt(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}var _=null;function Nt(){if(_)return _;let e=new Date,t=Yn(),n=new Map,r=Tt(t),{offset:o,longName:i}=bt(t,e),l={value:t,label:`${r} - ${i} (${o})`};for(let d of Un()){if(d===t)continue;let u=Tt(d),{offset:S,longName:_n}=bt(d,e),me={value:d,label:`${u} - ${_n} (${S})`},Z=Xn(d);if(Z==="Other")continue;let pe=n.get(Z);pe?pe.push(me):n.set(Z,[me])}for(let d of n.values())d.sort((u,S)=>u.label.localeCompare(S.label));let c=Array.from(n.entries()).sort(([d],[u])=>d.localeCompare(u)).map(([d,u])=>({label:d,items:u}));return _=[{label:"Suggested",items:[l]},...c],_}function le(e,t){if(typeof e=="number")return e;let n=t??ie(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,l]=o,c=parseInt(l,10);if(!isNaN(c))return i==="+"?n+c:n-c}return n}return Bn.test(r)?parseInt(r,10):n}function Ct(e,t){if(!e)return"";try{let n=Rt(e,t,St);return ht(n)?Ft(n,"yyyy-MM-dd"):""}catch{return""}}function It(e,t){if(!e)return"";try{let n=Rt(e,t,St);return ht(n)?Ft(n,"HH:mm:ss"):""}catch{return""}}function ae(e){return e.advanced?.format??"HH:mm"}function Et(e){return e.advanced?.format??"yyyy-MM-dd"}var V=ie();function Kn(e){if(te(e))return Wn(e)}function Wn(e){if(ot(e))return oe();if(it(e))return re()}function qn(e){if(y(e))return Jn(e)}function Jn(e){if(et(e))return oe();if(tt(e))return re();if(nt(e)){let t=e.advanced?.length?.min??V,n=e.advanced?.length?.max??V+5;return At(le(t,V),le(n,V))}if(rt(e))return Nt()}function vt(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return at(e)?{...n,...Qn(e)}:y(e)?{...n,...kt(e,qn)}:st(e)?{...n,...er(e)}:te(e)?{...n,...jn(e)}:n}function Qn(e){let t=Qe(e.type),n={...e,type:t};return{...nr(e),...Lt(e),...tr(n),...ct(n)?Pt(n):{},type:t}}function kt(e,t){let n=t(e);return n?{options:n}:{}}function jn(e){let t=kt(e,Kn),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function er(e){return{...Lt(e),...Pt(e)}}function Lt(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function tr(e){return dt(e)?rr(e):{}}function nr(e){if(ee(e)){let t=ae(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function Pt(e){return Dt(e,{min:Ze,max:Ye})}function rr(e){return Dt(e,{min:Xe,max:Ue})}function Dt(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 wt(e,t){let n=xt(e);return n||mt(e,t)}function or(e,t){let n=s(t)&&e.name in t?t[e.name]:t,r=qe(n,e.advanced?.entity);return ee(e)&&C(r)?ir(e,r):lt(e)&&C(r)?cr(e,r):r}function ir(e,t){let n=ae(e);return f(t)?It(t,n):t}function lr(e,t,n){return ne(e)&&Array.isArray(n)?{...t,[w]:n}:t}function ar(e,t,n){if(e.required&&!C(n)&&y(e)&&e.advanced?.preselected!==!1&&w in t){let r=t[w];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function sr(e,t){return ne(e)&&Array.isArray(t)?Je(t,e.advanced?.options):t}function Ot(e,t,n,r){let o=or(e,r),i=Array.isArray(n)?sr(e,n):n,l=lr(e,t,i),c=ar(e,l,o);return{commonPropsWithOptions:l,defaultValue:c}}function Mt(e,t){return g(e)?{defaultChecked:C(t)}:{defaultValue:t}}function cr(e,t){let n=Et(e);return f(t)?Ct(t,n):t}var dr=/^#\/definition\//;function H(e=[],t){let n=z(e,t);return Array.isArray(n)?n.filter(fr).sort((r,o)=>_t(r)-_t(o)):[]}function z(e,t,n=new Map,r=new WeakSet){if(!ur(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=>z(i,t,n,r));if(h in e&&f(e[h])){let i=e[h].replace(dr,""),l=p(t,i);return l!==null?z(l,t,n,r):e}let o={};for(let[i,l]of Object.entries(e))o[i]=z(l,t,n,r);return r.delete(e),n.set(e,o),o}function Vt(e){return Object.entries(e??{})}function _t(e){return e.order??Number.MAX_VALUE}function ur(e){return e!==void 0&&s(e)&&Object.keys(e).length>0}function fr(e){return Ke in e?!0:Array.isArray(e[W])?e[W].length>0:!0}function zt(e,t){let n={};for(let[r,o]of Vt(t))n[`${e}-${r}`]=o;return n}function mr(e){return zt($e,e)}function pr(e){return zt(Be,e)}function Ht(e,t){let n=mr(e.advanced?.aria);return t&&t.length>0&&(n[ze]="true",n[Ve]=`${e.name}-error`),n}function Gt(e){return pr(e.advanced?.data)}var $t={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Bt={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function Ut(e,t=2){return $t[e&&e in $t?e:t]}function Yt(e){if(e&&e in Bt)return Bt[e]}function gr(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 Xt(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===A}function Zt(e,t){let n=gr(e,t);return Array.from({length:n},(r,o)=>o)}function Kt(e){return e.label??e.name}function F(e,t){return e?t?t[e]??e:e:""}function G(e,t){return{...e,...t}}import{jsx as yr}from"react/jsx-runtime";function x(e){return je(e,(t,n,r)=>yr("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}import{jsx as I,jsxs as se}from"react/jsx-runtime";function Wt(e){let{fields:t=[]}=e.section,[n,r]=Tr(!1),o=br(()=>r(i=>!i),[]);return se("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:[I("legend",{children:se("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:[I(xe,{expanded:n}),I("span",{children:x(e.section.title)})]})}),I(xr,{mode:n?"visible":"hidden",children:se("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&&I("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:x(e.section.description)}),e.group]})})]})}import{Fragment as hr,jsx as qt,jsxs as Rr}from"react/jsx-runtime";function Jt(e){return Rr(hr,{children:[e.title&&qt("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:x(e.title)}),e.description&&qt("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:x(e.description)})]})}import{jsx as Fr,jsxs as Sr}from"react/jsx-runtime";function $(e){return Sr("fieldset",{"data-slot":"field-set","data-empty":e.empty,className:"flex flex-col data-[empty=false]:gap-6",id:e.id,children:[Fr(Jt,{description:e.description,title:e.title}),e.children]})}import{jsx as Ar}from"react/jsx-runtime";function T(e){return Ar("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 ce}from"react/jsx-runtime";function Qt(e){let{fields:t=[]}=e.section,{compact:n}=G(e.style,{compact:e.section.compact}),r=ce(T,{compact:n,children:e.children});return!e.section.title&&!e.section.description?r:e.section.advanced?ce(Wt,{section:e.section,group:r}):ce($,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),title:e.section.title,children:r})}import{useAtomValue as Lr}from"jotai";import{atom as E}from"jotai";import{atomFamily as Nr}from"jotai-family";import{deepEqual as jt}from"fast-equals";function Cr(e,t){let{[t]:n,...r}=e;return r}function Ir(e){return Nr(t=>E(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let l=i[t];jt(l,o)||r(e,{...i,[t]:o})}else t in i&&r(e,Cr(i,t))}))}function Er(e){return E(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function vr(e){return E(null,(t,n,r)=>{let i={...t(e)},l=!1;for(let c of r)c in i&&(delete i[c],l=!0);l&&n(e,i)})}function kr(e){return E(null,(t,n,r)=>{let o=t(e);jt(o,r)||n(e,r)})}function en(e={}){let t=E(e);return{atom:t,clearAll:Er(t),clear:vr(t),bulkReport:kr(t),report:Ir(t)}}var tn=en(),nn=tn.atom,Ai=tn.report;function Pr(e,t){return e.fields.every(n=>rn(n,t))}function rn(e,t){return t[e.name]?.hidden??e.hidden??!1}function Dr(e,t){return R(e)?Pr(e,t):rn(e,t)}function on(e){let t=Lr(nn);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>Dr(r,t))?null:e.children}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{jsx as v,jsxs as sn}from"react/jsx-runtime";function cn(e){let t=H(e.sections,e.definition);return v("div",{className:"h-full w-full",children:v("form",{noValidate:e.noValidate,action:e.action,children:sn(T,{children:[t.map((n,r)=>sn(on,{fields:n.fields??[],children:[v(Qt,{section:n,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.separator&&v(an,{})]},r)),e.control&&v(ge,{isPending:e.isPending,children:e.control})]})})})}import{jsx as wr}from"react/jsx-runtime";function B(e){return wr("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}import{jsx as Or}from"react/jsx-runtime";function U(e){let t={context:e.context,env:e.config?.env},n=F(O(e.text,t),e.translations),r=x(n);return r?Or(B,{children:r}):null}import{twMerge as Mr}from"tailwind-merge";import{jsx as _r,jsxs as Vr}from"react/jsx-runtime";function dn(e){let t=e.style?.showOptionalLabel??!0,n=b(e.field)||g(e.field);return Vr("label",{"data-slot":"field-label","data-normal":n,className:Mr("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&&_r("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:F("(Optional)",e.translations)})]})}import{jsx as un,jsxs as zr}from"react/jsx-runtime";function fn(e){let t={context:e.context,env:e.config?.env},n=O(e.field.label,t);return zr("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[un(dn,{field:e.field,style:e.config?.style,translations:e.translations,children:F(n,e.translations)}),e.horizontal===!0&&un(U,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}import{Fragment as Hr,jsx as mn,jsxs as Gr}from"react/jsx-runtime";function pn(e){return Gr(Hr,{children:[e.field.name&&e.field.label&&mn(fn,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&mn(U,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}function gn(e,t){return e?t(e):null}import{jsx as yn}from"react/jsx-runtime";function xn(e){let t=wt(e.field,e.value),{commonPropsWithOptions:n,defaultValue:r}=Ot(e.field,e.commonProps,t,e.value),o=Mt(e.field,r);return gn(e.config.inputs[e.field.type],i=>yn(pn,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:yn(i,{...e.ariaAttributes,...n,...e.dataAttributes,...o})}))}import{jsx as bn}from"react/jsx-runtime";function Tn(e){return!e.errors||e.errors.length===0?null:bn("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)=>bn("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}import{twMerge as $r}from"tailwind-merge";import{jsx as Br}from"react/jsx-runtime";function Y(e){let t=e.errors&&e.errors.length>0;return Br("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[He]:"true"},...e.disabled&&{[Ge]:"true"},"data-orientation":e.orientation,className:$r("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 Ur}from"tailwind-merge";import{jsx as Yr}from"react/jsx-runtime";function hn(e){return Yr(Y,{...e,orientation:"vertical",className:Ur("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as Xr}from"tailwind-merge";import{jsx as Zr}from"react/jsx-runtime";function Rn(e){return Zr(Y,{...e,orientation:"horizontal",className:Xr("gap-2 md:flex-row md:gap-4","[&>[data-slot=field-content]]:min-w-0 [&>[data-slot=field-content]]:flex-grow [&>[data-slot=field-content]]:self-start","[&_[role=checkbox]]:mt-[1.5px]",e.isClickable&&"md:flex-col",!e.isClickable&&["md:justify-between","[&>*:not([data-slot=field-content])]:w-full","[&>*:not([data-slot=field-content])]:md:w-1/2","[&>*:not([data-slot=field-content])]:xl:w-2/5"]),children:e.children})}import{jsx as Fn}from"react/jsx-runtime";function Sn(e){let t=ut(e.field),n=g(e.field),r=gt(e.field);return e.horizontal?Fn(Rn,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):Fn(hn,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function An(e){if(!e.field.type)return null;let t=vt(e.field,e.disabled),n=Gt(e.field),r=Ht(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 Kr}from"tailwind-merge";import{jsx as de,jsxs as Wr}from"react/jsx-runtime";function Nn(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=G(e.style,{horizontal:pt(e.field)}),o=yt(e.field,e.disabled);return Wr("div",{className:Kr("flex flex-col gap-3",Yt(t)),children:[de(Sn,{disabled:o,errors:n,field:e.field,horizontal:r,children:de(An,{disabled:o,errors:n,field:e.field,horizontal:r,children:e.children})}),de(Tn,{errors:n,name:e.field.name})]})}import{twMerge as qr}from"tailwind-merge";import{jsx as k,jsxs as X}from"react/jsx-runtime";function Cn(e){function t(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}let n=e.canRemove&&e.onRemove!=null&&k("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:qr("rounded p-1 text-xl text-slate-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500 dark:hover:text-red-400"),onClick:t,type:"button",children:k("span",{"aria-hidden":"true",children:"\xD7"})});return e.isMultiField?X("div",{className:"rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[X("div",{className:"mb-3 flex items-center justify-between",children:[X("span",{className:"text-sm font-medium text-slate-400 dark:text-slate-500",children:[e.label," ",e.index+1]}),n]}),k(T,{children:e.children})]}):X("div",{className:"flex items-start gap-2",children:[k(T,{children:e.children}),n&&k("div",{className:"shrink-0",children:n})]})}import{jsx as Jr}from"react/jsx-runtime";function In(e){let t=Kt(e.field),n=Xt(e.field);return Zt(e.field,e.value).map(r=>Jr(Cn,{index:r,isMultiField:n,label:t,children:e.children(r)},r))}import{jsx as Qr}from"react/jsx-runtime";function En(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return Qr($,{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 kn({children:e,field:t,value:n}){return vn(En,{field:t,children:vn(In,{field:t,value:n,children:e})})}import{twMerge as jr}from"tailwind-merge";import{jsx as Ln,jsxs as eo}from"react/jsx-runtime";function Pn(e){let t=Ut(e.column?.advanced?.cols);return eo("div",{className:"flex w-full flex-col gap-4",children:[Ln("div",{className:jr("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&Ln(B,{children:e.column.description})]})}import{Fragment as no}from"react";import{jsx as to}from"react/jsx-runtime";function Dn(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>M(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:R(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return to(L,{children:e.children,components:e.components,disabled:e.disabled,fields:t,style:e.style,value:e.value})}import{jsx as P,jsxs as ro}from"react/jsx-runtime";function L(e){let{field:t,list:n}=e.components;return H(e.fields).map((r,o)=>ro(no,{children:[R(r)&&P(Pn,{column:r,children:P(L,{...e,fields:r.fields})}),M(r)&&P(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),ft(r)&&P(n,{field:r,value:e.value,children:i=>P(Dn,{children:e.children,components:e.components,disabled:e.disabled,field:r,index:i,style:e.style,value:e.value})})]},o))}import{jsx as oo}from"react/jsx-runtime";function wn(e){return n=>oo(L,{...n,components:e})}var On=wn({field:Nn,list:kn});import{jsx as ue}from"react/jsx-runtime";function fe(e){let t=e.translations?.[e.lang??""];return ue(cn,{config:e.config,control:e.children,definition:e.definition,readOnly:e.readOnly,sections:e.sections,children:({disabled:n,fields:r})=>ue(On,{disabled:n,fields:r,style:e.config.style,children:o=>ue(xn,{...o,config:e.config,context:e.context,translations:t,value:e.value})})})}import{Suspense as io}from"react";import{jsx as Mn}from"react/jsx-runtime";function lo(e){return Mn(io,{fallback:Mn(fe,{config:e.config,sections:e.sections,readOnly:!0}),children:e.children})}export{lo as Fallback,fe as Form};
|
|
1
|
+
import{jsx as Vn}from"react/jsx-runtime";function ge(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return Vn("div",{"data-slot":"field-control",className:"w-full",children:t})}import{Activity as xr,useCallback as br,useState as Tr}from"react";import{jsx as ye}from"react/jsx-runtime";function xe(e){return ye("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:ye("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 D="input",be="input/date",Te="input/email",he="input/number";var Re="input/time";var Fe="textarea",Se="radio",Ne="checkbox",K="list";var Ae="select",Ce="select/day",Ie="select/month",Ee="select/timezone",ve="select/year";var ke="chips",Le="chips/day",Pe="chips/month",N="column",De="description",W="fields",we="label",q="value",w="options",J="email",Oe="number",Me="password",_e="tel",A="text",Ve="aria-errormessage",ze="aria-invalid",He="data-invalid",Ge="data-readonly",$e="aria",Be="data",Ue="max",Ye="maxLength",Xe="min",Ze="minLength",h="$ref";var Ke="type",We={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 m(e){return f(e)||typeof e=="number"||zn(e)}function f(e){return typeof e=="string"}function zn(e){return typeof e=="boolean"}function qe(e,t=q){if(e!=null){if(Array.isArray(e)&&e.every(m)||m(e))return e;if(s(e)){let n=Hn(e,t);if(m(n))return n}}}function Hn(e,t){let n=p(e,t);if(m(n))return n}function p(e,t){if(!t||!s(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(s(r)&&o in r)r=r[o];else return null;return r}function Je(e,t={description:De,label:we,value:q}){return e.map(n=>{if(s(n)){let r=p(n,t.label),o=p(n,t.value);if(m(r)&&m(o)){let i=p(n,t.description);return{label:`${r}`,value:`${o}`,...m(i)&&{description:`${i}`}}}}return n})}function Qe(e=A){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==D?n.trim().toLowerCase():A}var Gn=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function Q(e,t={}){if(f(e))return $n(e,t);if(Array.isArray(e))return e.map(n=>Q(n,t));if(s(e)){let n={};for(let r in e)n[r]=Q(e[r],t);return n}return e}function O(e,t={}){return j(e)?Q(e,t):e}function j(e){return f(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>j(t)):s(e)?Object.values(e).some(t=>j(t)):!1}function $n(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,r)=>{let o=r.includes(".")?p(t,r):t[r];return m(o)?String(o):n})}function je(e,t){if(!f(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Gn.exec(e))!==null;){let[l,c,d]=n,u=n.index;o=!0,u>r&&i.push(e.substring(r,u));let S=t?t(u,d,c):l;i.push(S),r=u+l.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var et=e=>a(Ce)(e),tt=e=>a(Ie)(e),nt=e=>a(ve)(e),rt=e=>a(Ee)(e),ot=e=>a(Le)(e),it=e=>a(Pe)(e),lt=a(be),ee=a(Re),g=a(Ne),te=a(ke),b=a(Se),at=a(D),y=a(Ae),st=a(Fe),ct=a(A,J,Me,_e),Fo=a(Te,J),dt=a(he,Oe);function ut(e){return b(e)||g(e)}function ft(e){return e.type===K}function R(e){return e.type===N}function M(e){return e.type!==N&&e.type!==K}function ne(e){return y(e)||b(e)}function C(e){return e!=null&&e!==""}function a(...e){return t=>{let n=f(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function mt(e,t={}){if(y(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&s(n))return[n]}}function pt(e){return b(e)||g(e)?!0:e.advanced?.horizontal??!1}function gt(e){return g(e)?e.advanced?.reverse!==!1:!1}function yt(e,t){let n=e.readonly??!1;return t||n}function xt(e){if(b(e)||y(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||s(t)&&!(h in t))return t}}import{isValid as ht,parse as Rt,format as Ft}from"date-fns";var Bn=/^\d+$/,St=new Date(2e3,0,1),Un=()=>"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 oe(){return Array.from({length:7},(e,t)=>({value:t.toString(),label:new Date(2e3,0,2+t).toLocaleString("default",{weekday:"long"})}))}function Nt(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 ie(){return new Date().getFullYear()}function Yn(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function Xn(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return We[n]??"Other"}function Zn(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function bt(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(c=>c.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),l=Zn(r,e);return{offset:i,longName:l}}function Tt(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}var _=null;function At(){if(_)return _;let e=new Date,t=Yn(),n=new Map,r=Tt(t),{offset:o,longName:i}=bt(t,e),l={value:t,label:`${r} - ${i} (${o})`};for(let d of Un()){if(d===t)continue;let u=Tt(d),{offset:S,longName:_n}=bt(d,e),me={value:d,label:`${u} - ${_n} (${S})`},Z=Xn(d);if(Z==="Other")continue;let pe=n.get(Z);pe?pe.push(me):n.set(Z,[me])}for(let d of n.values())d.sort((u,S)=>u.label.localeCompare(S.label));let c=Array.from(n.entries()).sort(([d],[u])=>d.localeCompare(u)).map(([d,u])=>({label:d,items:u}));return _=[{label:"Suggested",items:[l]},...c],_}function le(e,t){if(typeof e=="number")return e;let n=t??ie(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,l]=o,c=parseInt(l,10);if(!isNaN(c))return i==="+"?n+c:n-c}return n}return Bn.test(r)?parseInt(r,10):n}function Ct(e,t){if(!e)return"";try{let n=Rt(e,t,St);return ht(n)?Ft(n,"yyyy-MM-dd"):""}catch{return""}}function It(e,t){if(!e)return"";try{let n=Rt(e,t,St);return ht(n)?Ft(n,"HH:mm:ss"):""}catch{return""}}function ae(e){return e.advanced?.format??"HH:mm"}function Et(e){return e.advanced?.format??"MMMM d, yyyy"}var V=ie();function Kn(e){if(te(e))return Wn(e)}function Wn(e){if(ot(e))return oe();if(it(e))return re()}function qn(e){if(y(e))return Jn(e)}function Jn(e){if(et(e))return oe();if(tt(e))return re();if(nt(e)){let t=e.advanced?.length?.min??V,n=e.advanced?.length?.max??V+5;return Nt(le(t,V),le(n,V))}if(rt(e))return At()}function vt(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return at(e)?{...n,...Qn(e)}:y(e)?{...n,...kt(e,qn)}:st(e)?{...n,...er(e)}:te(e)?{...n,...jn(e)}:n}function Qn(e){let t=Qe(e.type),n={...e,type:t};return{...nr(e),...Lt(e),...tr(n),...ct(n)?Pt(n):{},type:t}}function kt(e,t){let n=t(e);return n?{options:n}:{}}function jn(e){let t=kt(e,Kn),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function er(e){return{...Lt(e),...Pt(e)}}function Lt(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function tr(e){return dt(e)?rr(e):{}}function nr(e){if(ee(e)){let t=ae(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function Pt(e){return Dt(e,{min:Ze,max:Ye})}function rr(e){return Dt(e,{min:Xe,max:Ue})}function Dt(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 wt(e,t){let n=xt(e);return n||mt(e,t)}function or(e,t){let n=s(t)&&e.name in t?t[e.name]:t,r=qe(n,e.advanced?.entity);return ee(e)&&C(r)?ir(e,r):lt(e)&&C(r)?cr(e,r):r}function ir(e,t){let n=ae(e);return f(t)?It(t,n):t}function lr(e,t,n){return ne(e)&&Array.isArray(n)?{...t,[w]:n}:t}function ar(e,t,n){if(e.required&&!C(n)&&y(e)&&e.advanced?.preselected!==!1&&w in t){let r=t[w];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function sr(e,t){return ne(e)&&Array.isArray(t)?Je(t,e.advanced?.options):t}function Ot(e,t,n,r){let o=or(e,r),i=Array.isArray(n)?sr(e,n):n,l=lr(e,t,i),c=ar(e,l,o);return{commonPropsWithOptions:l,defaultValue:c}}function Mt(e,t){return g(e)?{defaultChecked:C(t)}:{defaultValue:t}}function cr(e,t){let n=Et(e);return f(t)?Ct(t,n):t}var dr=/^#\/definition\//;function H(e=[],t){let n=z(e,t);return Array.isArray(n)?n.filter(fr).sort((r,o)=>_t(r)-_t(o)):[]}function z(e,t,n=new Map,r=new WeakSet){if(!ur(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=>z(i,t,n,r));if(h in e&&f(e[h])){let i=e[h].replace(dr,""),l=p(t,i);return l!==null?z(l,t,n,r):e}let o={};for(let[i,l]of Object.entries(e))o[i]=z(l,t,n,r);return r.delete(e),n.set(e,o),o}function Vt(e){return Object.entries(e??{})}function _t(e){return e.order??Number.MAX_VALUE}function ur(e){return e!==void 0&&s(e)&&Object.keys(e).length>0}function fr(e){return Ke in e?!0:Array.isArray(e[W])?e[W].length>0:!0}function zt(e,t){let n={};for(let[r,o]of Vt(t))n[`${e}-${r}`]=o;return n}function mr(e){return zt($e,e)}function pr(e){return zt(Be,e)}function Ht(e,t){let n=mr(e.advanced?.aria);return t&&t.length>0&&(n[ze]="true",n[Ve]=`${e.name}-error`),n}function Gt(e){return pr(e.advanced?.data)}var $t={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Bt={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function Ut(e,t=2){return $t[e&&e in $t?e:t]}function Yt(e){if(e&&e in Bt)return Bt[e]}function gr(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 Xt(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===N}function Zt(e,t){let n=gr(e,t);return Array.from({length:n},(r,o)=>o)}function Kt(e){return e.label??e.name}function F(e,t){return e?t?t[e]??e:e:""}function G(e,t){return{...e,...t}}import{jsx as yr}from"react/jsx-runtime";function x(e){return je(e,(t,n,r)=>yr("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}import{jsx as I,jsxs as se}from"react/jsx-runtime";function Wt(e){let{fields:t=[]}=e.section,[n,r]=Tr(!1),o=br(()=>r(i=>!i),[]);return se("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:[I("legend",{children:se("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:[I(xe,{expanded:n}),I("span",{children:x(e.section.title)})]})}),I(xr,{mode:n?"visible":"hidden",children:se("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&&I("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:x(e.section.description)}),e.group]})})]})}import{Fragment as hr,jsx as qt,jsxs as Rr}from"react/jsx-runtime";function Jt(e){return Rr(hr,{children:[e.title&&qt("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:x(e.title)}),e.description&&qt("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:x(e.description)})]})}import{jsx as Fr,jsxs as Sr}from"react/jsx-runtime";function $(e){return Sr("fieldset",{"data-slot":"field-set","data-empty":e.empty,className:"flex flex-col data-[empty=false]:gap-6",id:e.id,children:[Fr(Jt,{description:e.description,title:e.title}),e.children]})}import{jsx as Nr}from"react/jsx-runtime";function T(e){return Nr("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 ce}from"react/jsx-runtime";function Qt(e){let{fields:t=[]}=e.section,{compact:n}=G(e.style,{compact:e.section.compact}),r=ce(T,{compact:n,children:e.children});return!e.section.title&&!e.section.description?r:e.section.advanced?ce(Wt,{section:e.section,group:r}):ce($,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),title:e.section.title,children:r})}import{useAtomValue as Lr}from"jotai";import{atom as E}from"jotai";import{atomFamily as Ar}from"jotai-family";import{deepEqual as jt}from"fast-equals";function Cr(e,t){let{[t]:n,...r}=e;return r}function Ir(e){return Ar(t=>E(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let l=i[t];jt(l,o)||r(e,{...i,[t]:o})}else t in i&&r(e,Cr(i,t))}))}function Er(e){return E(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function vr(e){return E(null,(t,n,r)=>{let i={...t(e)},l=!1;for(let c of r)c in i&&(delete i[c],l=!0);l&&n(e,i)})}function kr(e){return E(null,(t,n,r)=>{let o=t(e);jt(o,r)||n(e,r)})}function en(e={}){let t=E(e);return{atom:t,clearAll:Er(t),clear:vr(t),bulkReport:kr(t),report:Ir(t)}}var tn=en(),nn=tn.atom,Ai=tn.report;function Pr(e,t){return e.fields.every(n=>rn(n,t))}function rn(e,t){return t[e.name]?.hidden??e.hidden??!1}function Dr(e,t){return R(e)?Pr(e,t):rn(e,t)}function on(e){let t=Lr(nn);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>Dr(r,t))?null:e.children}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{jsx as v,jsxs as sn}from"react/jsx-runtime";function cn(e){let t=H(e.sections,e.definition);return v("div",{className:"h-full w-full",children:v("form",{noValidate:e.noValidate,action:e.action,children:sn(T,{children:[t.map((n,r)=>sn(on,{fields:n.fields??[],children:[v(Qt,{section:n,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.separator&&v(an,{})]},r)),e.control&&v(ge,{isPending:e.isPending,children:e.control})]})})})}import{jsx as wr}from"react/jsx-runtime";function B(e){return wr("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}import{jsx as Or}from"react/jsx-runtime";function U(e){let t={context:e.context,env:e.config?.env},n=F(O(e.text,t),e.translations),r=x(n);return r?Or(B,{children:r}):null}import{twMerge as Mr}from"tailwind-merge";import{jsx as _r,jsxs as Vr}from"react/jsx-runtime";function dn(e){let t=e.style?.showOptionalLabel??!0,n=b(e.field)||g(e.field);return Vr("label",{"data-slot":"field-label","data-normal":n,className:Mr("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&&_r("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:F("(Optional)",e.translations)})]})}import{jsx as un,jsxs as zr}from"react/jsx-runtime";function fn(e){let t={context:e.context,env:e.config?.env},n=O(e.field.label,t);return zr("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[un(dn,{field:e.field,style:e.config?.style,translations:e.translations,children:F(n,e.translations)}),e.horizontal===!0&&un(U,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}import{Fragment as Hr,jsx as mn,jsxs as Gr}from"react/jsx-runtime";function pn(e){return Gr(Hr,{children:[e.field.name&&e.field.label&&mn(fn,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&mn(U,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}function gn(e,t){return e?t(e):null}import{jsx as yn}from"react/jsx-runtime";function xn(e){let t=wt(e.field,e.value),{commonPropsWithOptions:n,defaultValue:r}=Ot(e.field,e.commonProps,t,e.value),o=Mt(e.field,r);return gn(e.config.inputs[e.field.type],i=>yn(pn,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:yn(i,{...e.ariaAttributes,...n,...e.dataAttributes,...o})}))}import{jsx as bn}from"react/jsx-runtime";function Tn(e){return!e.errors||e.errors.length===0?null:bn("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)=>bn("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}import{twMerge as $r}from"tailwind-merge";import{jsx as Br}from"react/jsx-runtime";function Y(e){let t=e.errors&&e.errors.length>0;return Br("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[He]:"true"},...e.disabled&&{[Ge]:"true"},"data-orientation":e.orientation,className:$r("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 Ur}from"tailwind-merge";import{jsx as Yr}from"react/jsx-runtime";function hn(e){return Yr(Y,{...e,orientation:"vertical",className:Ur("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as Xr}from"tailwind-merge";import{jsx as Zr}from"react/jsx-runtime";function Rn(e){return Zr(Y,{...e,orientation:"horizontal",className:Xr("gap-2 md:flex-row md:gap-4","[&>[data-slot=field-content]]:min-w-0 [&>[data-slot=field-content]]:flex-grow [&>[data-slot=field-content]]:self-start","[&_[role=checkbox]]:mt-[1.5px]",e.isClickable&&"md:flex-col",!e.isClickable&&["md:justify-between","[&>*:not([data-slot=field-content])]:w-full","[&>*:not([data-slot=field-content])]:md:w-1/2","[&>*:not([data-slot=field-content])]:xl:w-2/5"]),children:e.children})}import{jsx as Fn}from"react/jsx-runtime";function Sn(e){let t=ut(e.field),n=g(e.field),r=gt(e.field);return e.horizontal?Fn(Rn,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):Fn(hn,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function Nn(e){if(!e.field.type)return null;let t=vt(e.field,e.disabled),n=Gt(e.field),r=Ht(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 Kr}from"tailwind-merge";import{jsx as de,jsxs as Wr}from"react/jsx-runtime";function An(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=G(e.style,{horizontal:pt(e.field)}),o=yt(e.field,e.disabled);return Wr("div",{className:Kr("flex flex-col gap-3",Yt(t)),children:[de(Sn,{disabled:o,errors:n,field:e.field,horizontal:r,children:de(Nn,{disabled:o,errors:n,field:e.field,horizontal:r,children:e.children})}),de(Tn,{errors:n,name:e.field.name})]})}import{twMerge as qr}from"tailwind-merge";import{jsx as k,jsxs as X}from"react/jsx-runtime";function Cn(e){function t(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}let n=e.canRemove&&e.onRemove!=null&&k("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:qr("rounded p-1 text-xl text-slate-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:outline-none","dark:text-slate-500 dark:hover:text-red-400"),onClick:t,type:"button",children:k("span",{"aria-hidden":"true",children:"\xD7"})});return e.isMultiField?X("div",{className:"rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[X("div",{className:"mb-3 flex items-center justify-between",children:[X("span",{className:"text-sm font-medium text-slate-400 dark:text-slate-500",children:[e.label," ",e.index+1]}),n]}),k(T,{children:e.children})]}):X("div",{className:"flex items-start gap-2",children:[k(T,{children:e.children}),n&&k("div",{className:"shrink-0",children:n})]})}import{jsx as Jr}from"react/jsx-runtime";function In(e){let t=Kt(e.field),n=Xt(e.field);return Zt(e.field,e.value).map(r=>Jr(Cn,{index:r,isMultiField:n,label:t,children:e.children(r)},r))}import{jsx as Qr}from"react/jsx-runtime";function En(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return Qr($,{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 kn({children:e,field:t,value:n}){return vn(En,{field:t,children:vn(In,{field:t,value:n,children:e})})}import{twMerge as jr}from"tailwind-merge";import{jsx as Ln,jsxs as eo}from"react/jsx-runtime";function Pn(e){let t=Ut(e.column?.advanced?.cols);return eo("div",{className:"flex w-full flex-col gap-4",children:[Ln("div",{className:jr("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&Ln(B,{children:e.column.description})]})}import{Fragment as no}from"react";import{jsx as to}from"react/jsx-runtime";function Dn(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>M(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:R(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return to(L,{children:e.children,components:e.components,disabled:e.disabled,fields:t,style:e.style,value:e.value})}import{jsx as P,jsxs as ro}from"react/jsx-runtime";function L(e){let{field:t,list:n}=e.components;return H(e.fields).map((r,o)=>ro(no,{children:[R(r)&&P(Pn,{column:r,children:P(L,{...e,fields:r.fields})}),M(r)&&P(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),ft(r)&&P(n,{field:r,value:e.value,children:i=>P(Dn,{children:e.children,components:e.components,disabled:e.disabled,field:r,index:i,style:e.style,value:e.value})})]},o))}import{jsx as oo}from"react/jsx-runtime";function wn(e){return n=>oo(L,{...n,components:e})}var On=wn({field:An,list:kn});import{jsx as ue}from"react/jsx-runtime";function fe(e){let t=e.translations?.[e.lang??""];return ue(cn,{config:e.config,control:e.children,definition:e.definition,readOnly:e.readOnly,sections:e.sections,children:({disabled:n,fields:r})=>ue(On,{disabled:n,fields:r,style:e.config.style,children:o=>ue(xn,{...o,config:e.config,context:e.context,translations:t,value:e.value})})})}import{Suspense as io}from"react";import{jsx as Mn}from"react/jsx-runtime";function lo(e){return Mn(io,{fallback:Mn(fe,{config:e.config,sections:e.sections,readOnly:!0}),children:e.children})}export{lo as Fallback,fe as Form};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-luna-form",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.40",
|
|
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.0.1",
|
|
36
36
|
"eslint-plugin-react-refresh": "0.5.2",
|
|
37
|
-
"@luna-form/core": "0.0.
|
|
37
|
+
"@luna-form/core": "0.0.40"
|
|
38
38
|
},
|
|
39
39
|
"license": "Apache-2.0",
|
|
40
40
|
"repository": {
|