react-luna-form 0.0.43 → 0.0.45
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/cjs/index.js +1 -1
- package/dist/client/esm/index.js +3366 -1
- package/dist/config/esm/index.js +227 -1
- package/dist/server/cjs/index.js +1 -1
- package/dist/server/esm/index.js +1799 -1
- package/dist/types/luna-react/src/client/component/field/field-preview-item.d.ts +4 -0
- package/dist/types/luna-react/src/client/component/field/field-preview.d.ts +4 -0
- package/dist/types/luna-react/src/client/component/form-content.d.ts +3 -0
- package/dist/types/luna-react/src/client/component/form.d.ts +3 -0
- package/dist/types/luna-react/src/client/component/slot/slot.d.ts +3 -0
- package/dist/types/luna-react/src/client/context/keep-value-context.d.ts +1 -0
- package/dist/types/luna-react/src/client/hook/use-input-core.d.ts +3 -1
- package/dist/types/luna-react/src/client/hook/use-input.d.ts +3 -1
- package/dist/types/luna-react/src/client/hook/use-schema.d.ts +3 -1
- package/dist/types/luna-react/src/client/hook/use-store.d.ts +3 -1
- package/dist/types/luna-react/src/client/lib/persistence-context.d.ts +4 -0
- package/dist/types/luna-react/src/component/collapsible.d.ts +4 -0
- package/dist/types/luna-react/src/component/column.d.ts +4 -0
- package/dist/types/luna-react/src/component/field/field-list-item.d.ts +3 -0
- package/dist/types/luna-react/src/component/field/field-set-base.d.ts +1 -0
- package/dist/types/luna-react/src/component/field/field-set.d.ts +4 -0
- package/dist/types/luna-react/src/component/form.d.ts +3 -0
- package/dist/types/luna-react/src/component/formatted-description.d.ts +2 -1
- package/dist/types/luna-react/src/component/legend.d.ts +2 -1
- package/dist/types/luna-react/src/component/slot/slot-base.d.ts +4 -1
- package/dist/types/luna-react/src/component/slot/slot-create.d.ts +4 -1
- package/dist/types/luna-react/src/component/slot/slot-list.d.ts +4 -1
- package/dist/types/luna-react/src/component/slot/slot.d.ts +3 -0
- package/dist/types/luna-react/src/server/component/form.d.ts +3 -0
- package/package.json +2 -2
package/dist/client/cjs/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var Ri=Object.create;var Pe=Object.defineProperty;var Fi=Object.getOwnPropertyDescriptor;var Ci=Object.getOwnPropertyNames;var Ai=Object.getPrototypeOf,vi=Object.prototype.hasOwnProperty;var Ni=(e,t)=>{for(var n in t)Pe(e,n,{get:t[n],enumerable:!0})},Wt=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Ci(t))!vi.call(e,o)&&o!==n&&Pe(e,o,{get:()=>t[o],enumerable:!(r=Fi(t,o))||r.enumerable});return e};var Ii=(e,t,n)=>(n=e!=null?Ri(Ai(e)):{},Wt(t||!e||!e.__esModule?Pe(n,"default",{value:e,enumerable:!0}):n,e)),Ei=e=>Wt(Pe({},"__esModule",{value:!0}),e);var el={};Ni(el,{Form:()=>Si});module.exports=Ei(el);var Jt=require("react/jsx-runtime");function Kt(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 fe=require("react");var Ct=require("react/jsx-runtime");function Qt(e){return(0,Ct.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,Ct.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 De="input",jt="input/date",en="input/email",tn="input/number";var nn="input/time";var rn="textarea",on="radio",an="checkbox",At="list";var ln="select",sn="select/day",un="select/month",cn="select/timezone",dn="select/year";var mn="chips",fn="chips/day",pn="chips/month",Se="column",gn="description",vt="fields",yn="label",O="value",Le="options",Nt="email",bn="number",hn="password",xn="tel",Re="text",Tn="aria-errormessage",Sn="aria-invalid",Rn="data-invalid",Fn="data-readonly",Cn="aria",An="data",Oe="max",vn="maxLength",Ve="min",Nn="minLength",de="$ref";var In="source",En="state",Me="http://luna.internal";var kn="type",wn={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};function d(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function _e(e){return e==null||e===""}function z(e){return R(e)||typeof e=="number"||It(e)}function R(e){return typeof e=="string"}function Pn(e){return d(e)&&"url"in e}function It(e){return typeof e=="boolean"}var ki=/^\d+$/;function kt(e,t=[],n=O){return Array.isArray(t)?t.find(r=>{let o=wt(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}:{value:e}}function wt(e,t=O){if(e!=null){if(Array.isArray(e)&&e.every(z)||z(e))return e;if(d(e)){let n=wi(e,t);if(z(n))return n}}}function wi(e,t){let n=v(e,t);if(z(n))return n}function Dn(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 Ln(e,t={description:gn,label:yn,value:O}){return e.map(n=>{if(d(n)){let r=v(n,t.label),o=v(n,t.value);if(z(r)&&z(o)){let i=v(n,t.description);return{label:`${r}`,value:`${o}`,...z(i)&&{description:`${i}`}}}}return n})}function On(e=Re){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==De?n.trim().toLowerCase():Re}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 Mn(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],u=ki.test(s);l in o||(o[l]=u?[]:{}),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 Pi=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function K(e,t={}){if(R(e))return Di(e,t);if(Array.isArray(e))return e.map(n=>K(n,t));if(d(e)){let n={};for(let r in e)n[r]=K(e[r],t);return n}return e}function ze(e,t={}){return Fe(e)?K(e,t):e}function Fe(e){return R(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>Fe(t)):d(e)?Object.values(e).some(t=>Fe(t)):!1}function Di(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,r)=>{let o=r.includes(".")?v(t,r):t[r];return z(o)?String(o):n})}function _n(e,t){if(!R(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Pi.exec(e))!==null;){let[a,l,s]=n,u=n.index;o=!0,u>r&&i.push(e.substring(r,u));let c=t?t(u,s,l):a;i.push(c),r=u+a.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var Ce={error:(...e)=>{Pt()&&!Dt()&&Ge().error("[Luna Form]",...e)},warn:(...e)=>{Pt()&&!Dt()&&Ge().warn("[Luna Form]",...e)},info:(...e)=>{Pt()&&!Dt()&&Ge().info("[Luna Form]",...e)}},Pt=()=>typeof Ge()<"u",Dt=()=>!0,Ge=()=>globalThis.console;function zn(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===O&&n.push(i),i.action===In&&r.push(i),i.action===En&&o.push(i);t({sources:r,states:o,values:n})}function Gn(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(Pn(i)){let a=K(i.url,e),l=i.body?K(i.body,e):i.body;n(o,{...i,url:a,body:l})}}}var Ae={eq:_i,gt:$i,gte:Bi,in:Gi,lt:Ui,lte:Yi,neq:zi,nin:Hi},Li=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,Hn=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function Oi(e){return typeof e=="string"&&Li.test(e)}function Vi(e){return typeof e=="string"&&Hn.test(e)}function Mi(e){let t=e.match(Hn);if(t){let[,n,r,o,i,a,l]=t;return new Date(Number(o),Number(r)-1,Number(n),Number(i??0),Number(a??0),Number(l??0)).getTime()}return NaN}function J(e){return Oi(e)?new Date(e).getTime():Vi(e)?Mi(e):Number(e)}function _i(e,t){return e===t}function zi(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 $i(e,t){return J(e)>J(t)}function Bi(e,t){return J(e)>=J(t)}function Ui(e,t){return J(e)<J(t)}function Yi(e,t){return J(e)<=J(t)}function $n(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=Xi(e,a);n(l,s?i:void 0)}}function Xi(e,t){return t===void 0?!0:R(t)?He(e,O)===t:It(t)?!!He(e,O)===t:Array.isArray(t)?t.includes(String(He(e,O))):Zi(e,t)}function Zi(e=null,t){let n=He(e,t.field??O),{operator:r="eq",value:o}=t,i=Ae[r];return i?i(n,o):!1}function He(e,t){return d(e)?v(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?K(i,e):void 0)}var Un=e=>y(sn)(e),$e=e=>y(un)(e),Be=e=>y(dn)(e),Yn=e=>y(cn)(e),Xn=e=>y(fn)(e),Zn=e=>y(pn)(e),V=y(jt),Y=y(nn),E=y(an),Ue=y(mn),X=y(on),Lt=y(De),Q=y(ln),Ot=y(rn),qn=y(Re,Nt,hn,xn),Wn=y(en,Nt),Ye=y(tn,bn);function Xe(e){return X(e)||E(e)}function Kn(e){return e.type===At}function j(e){return e.type===Se}function Ze(e){return e.type!==Se&&e.type!==At}function ve(e){return Q(e)||X(e)}function Jn(e){return Lt(e)||Ot(e)}function x(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 Qn(e,t={}){if(Q(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&d(n))return[n]}}function jn(e){return X(e)||E(e)?!0:e.advanced?.horizontal??!1}function er(e){return E(e)?e.advanced?.reverse!==!1:!1}function tr(e,t){let n=e.readonly??!1;return t||n}function nr(e){if(X(e)||Q(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||d(t)&&!(de in t))return t}}var F=require("date-fns"),qi=/^\d+$/,qe=new Date(2e3,0,1),Wi=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[];function Vt(){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 ir(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 _t(){return new Date().getFullYear()}function Ki(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function Ji(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return wn[n]??"Other"}function Qi(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function rr(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=Qi(r,e);return{offset:i,longName:a}}function or(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function ar(){let e=new Date,t=Ki(),n=new Map,r=or(t),{offset:o,longName:i}=rr(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let s of Wi()){if(s===t)continue;let u=or(s),{offset:c,longName:m}=rr(s,e),b={value:s,label:`${u} - ${m} (${c})`},p=Ji(s);if(p==="Other")continue;let A=n.get(p);A?A.push(b):n.set(p,[b])}for(let s of n.values())s.sort((u,c)=>u.label.localeCompare(c.label));let l=Array.from(n.entries()).sort(([s],[u])=>s.localeCompare(u)).map(([s,u])=>({label:s,items:u}));return[{label:"Suggested",items:[a]},...l]}function zt(e,t){if(typeof e=="number")return e;let n=t??_t(),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 qi.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 lr(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 sr(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 oe(e){return e.advanced?.format??"HH:mm"}function Z(e){return e.advanced?.format??"MMMM d, yyyy"}var Je=_t();function ji(e){if(Ue(e))return ea(e)}function ea(e){if(Xn(e))return Mt();if(Zn(e))return Vt()}function ta(e){if(Q(e))return na(e)}function na(e){if(Un(e))return Mt();if($e(e))return Vt();if(Be(e)){let t=e.advanced?.length?.min??Je,n=e.advanced?.length?.max??Je+5;return ir(zt(t,Je),zt(n,Je))}if(Yn(e))return ar()}function ur(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return Lt(e)?{...n,...ra(e)}:Q(e)?{...n,...cr(e,ta)}:Ot(e)?{...n,...ia(e)}:Ue(e)?{...n,...oa(e)}:n}function ra(e){let t=On(e.type),n={...e,type:t};return{...la(e),...dr(e),...aa(n),...qn(n)?mr(n):{},type:t}}function cr(e,t){let n=t(e);return n?{options:n}:{}}function oa(e){let t=cr(e,ji),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function ia(e){return{...dr(e),...mr(e)}}function dr(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function aa(e){return Ye(e)?sa(e):{}}function la(e){if(Y(e)){let t=oe(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function mr(e){return fr(e,{min:Nn,max:vn})}function sa(e){return fr(e,{min:Ve,max:Oe})}function fr(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 pr(e,t){let n=nr(e);return n||Qn(e,t)}function ua(e,t){let n=d(t)&&e.name in t?t[e.name]:t,r=wt(n,e.advanced?.entity);return Y(e)&&x(r)?ca(e,r):V(e)&&x(r)?pa(e,r):r}function ca(e,t){let n=oe(e);return R(t)?lr(t,n):t}function da(e,t,n){return ve(e)&&Array.isArray(n)?{...t,[Le]:n}:t}function ma(e,t,n){if(e.required&&!x(n)&&Q(e)&&e.advanced?.preselected!==!1&&Le in t){let r=t[Le];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function fa(e,t){return ve(e)&&Array.isArray(t)?Ln(t,e.advanced?.options):t}function gr(e,t,n,r){let o=ua(e,r),i=Array.isArray(n)?fa(e,n):n,a=da(e,t,i),l=ma(e,a,o);return{commonPropsWithOptions:a,defaultValue:l}}function yr(e,t){return E(e)?{checked:x(t)?t:!1}:Ue(e)?{value:Array.isArray(t)?t:[]}:V(e)&&R(t)&&x(t)?{value:Ke(t,Z(e))}:{value:t??""}}function pa(e,t){let n=Z(e);return R(t)?We(t,n):t}function br(e,t){let n=e??t;return n?{"data-format":n}:{}}var ga=/^#\/definition\//;function je(e=[],t){let n=Qe(e,t);return Array.isArray(n)?n.filter(ba).sort((r,o)=>hr(r)-hr(o)):[]}function Qe(e,t,n=new Map,r=new WeakSet){if(!ya(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(de in e&&R(e[de])){let i=e[de].replace(ga,""),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 xr(e){return Object.entries(e??{})}function hr(e){return e.order??Number.MAX_VALUE}function ya(e){return e!==void 0&&d(e)&&Object.keys(e).length>0}function ba(e){return kn in e?!0:Array.isArray(e[vt])?e[vt].length>0:!0}function Tr(e,t){let n={};for(let[r,o]of xr(t))n[`${e}-${r}`]=o;return n}function ha(e){return Tr(Cn,e)}function xa(e){return Tr(An,e)}function Sr(e,t){let n=ha(e.advanced?.aria);return t&&t.length>0&&(n[Sn]="true",n[Tn]=`${e.name}-error`),n}function Rr(e){return xa(e.advanced?.data)}var Fr={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 Ar(e,t=2){return Fr[e&&e in Fr?e:t]}function vr(e){if(e&&e in Cr)return Cr[e]}function Ta(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 Nr(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===Se}function Ir(e,t){let n=Ta(e,t);return Array.from({length:n},(r,o)=>o)}function Er(e){return e.label??e.name}var f=require("zod");function g(e,t){return e?t?t[e]??e:e:""}var Sa=[[Ye,va],[Wn,Ra],[Be,Na],[$e,Ia],[E,Fa],[X,Ca]];function wr(e,t=[],n){let r=f.z.object(e);return t.length===0?r:Pa(r,t,n)}function Pr(e){let t={},n=f.z.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function Dr(e,t){for(let[n,r]of Sa)if(n(e))return r(e,t);return Aa(e,t)}function Ra(e,t){let n=f.z.string().trim();if(e.required){let r=me(e,t),o=n.min(1,r).pipe(kr(e,t));return f.z.preprocess(i=>_e(i)?"":i,o)}return n.pipe(kr(e,t)).or(f.z.literal("")).nullable()}function Fa(e,t){let n=f.z.coerce.boolean();return e.required?(n=n.refine(r=>r===!0,{message:me(e,t)}),f.z.preprocess(r=>r===null?!1:r,n)):n.nullable()}function Ca(e,t){let n=f.z.coerce.string();return e.required?(n=n.min(1,me(e,t)),f.z.preprocess(r=>_e(r)?"":r,n)):n.or(f.z.literal("")).nullable()}function Aa(e,t){let n=f.z.coerce.string().trim();return n=Lr(n,e,t),e.required?(n=Or(n,e,t),f.z.preprocess(r=>_e(r)?"":r,n)):n.nullable()}function va(e,t){let n=f.z.coerce.number().int();return n=Lr(n,e,t),e.required?(n=Or(n,e,t),f.z.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function Na(e,t){return e.required?f.z.preprocess(Ea,f.z.coerce.number({message:me(e,t)}).int()):f.z.coerce.number().int().nullable()}function Ia(e,t){let n=me(e,t),r=f.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 kr(e,t){let n=e.validation?.email?g(e.validation?.email,t):void 0;return f.z.email(n)}function Lr(e,t,n){return e=ka(e,t,n),e=wa(e,t,n),e}function Or(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,me(t,n)):e}var ka=(e,t,n)=>Vr(e,t,Ve,n),wa=(e,t,n)=>Vr(e,t,Oe,n);function Vr(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 Pa(e,t=[],n){let r=La(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:l}of r)if(!Da(o,a,l)){let s=g(l.message,n);i.addIssue({code:"custom",message:s,path:[a]})}})}function Da(e,t,n){let r=n.operator??"eq",o=Ae[r];return o?o(e[t],e[n.field]):!1}function La(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 Mr(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let l=a.operator??"eq",s=Ae[l];if(s&&!s(e,n(a.field))&&a.message){let u=g(a.message,r);o.push(u)}}return o}function me(e,t){return e.validation?.required?g(e.validation?.required,t):void 0}function _r(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||Oa(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 Oa(e){return e==="https"?"443":"80"}function Va(e){return/^(https?:)?\/\//.test(e)}function zr(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 Gr(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=_a(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 _a(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 Hr=require("react/jsx-runtime");function ee(e){return _n(e,(t,n,r)=>(0,Hr.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}var G=require("react/jsx-runtime");function $r(e){let{fields:t=[]}=e.section,[n,r]=(0,fe.useState)(!1),o=(0,fe.useCallback)(()=>r(i=>!i),[]);return(0,G.jsxs)("fieldset",{"data-slot":"field-set","data-advanced":"true","data-expanded":n,"data-empty":t.length===0,className:"flex flex-col",id:e.section.id?.toString(),children:[(0,G.jsx)("legend",{children:(0,G.jsxs)("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-slate-600 dark:text-slate-400",onClick:o,type:"button",children:[(0,G.jsx)(Qt,{expanded:n}),(0,G.jsx)("span",{children:ee(e.section.title)})]})}),(0,G.jsx)(fe.Activity,{mode:n?"visible":"hidden",children:(0,G.jsxs)("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-slate-300 pl-4 dark:border-slate-600","data-slot":"field-set-content",children:[e.section.description&&(0,G.jsx)("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:ee(e.section.description)}),e.group]})})]})}var ie=require("react/jsx-runtime");function Br(e){return(0,ie.jsxs)(ie.Fragment,{children:[e.title&&(0,ie.jsx)("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:ee(e.title)}),e.description&&(0,ie.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:ee(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)(Br,{description:e.description,title:e.title}),e.children]})}var Ur=require("react/jsx-runtime");function ae(e){return(0,Ur.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 Yr(e){let{fields:t=[]}=e.section,{compact:n}=et(e.style,{compact:e.section.compact}),r=(0,rt.jsx)(ae,{compact:n,children:e.children});return!e.section.title&&!e.section.description?r:e.section.advanced?(0,rt.jsx)($r,{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 Kr=require("jotai");var te=require("jotai"),Gt=require("jotai-family"),ot=require("fast-equals");function it(e,t){let{[t]:n,...r}=e;return r}function za(e){return(0,Gt.atomFamily)(t=>(0,te.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 Ga(e){return(0,te.atom)(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function Ha(e){return(0,te.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 $a(e){return(0,te.atom)(null,(t,n,r)=>{let o=t(e);(0,ot.deepEqual)(o,r)||n(e,r)})}function Xr(e,t={}){let{merge:n,validateTarget:r}=t;return(0,Gt.atomFamily)(o=>(0,te.atom)(i=>{let a=i(e)[o];if(a&&n)return n(Object.values(a))},(i,a,l,s)=>{if(r&&!r(l))return;let u=i(e),c={...u[l]??{}};if(s!=null){let m=c[o];(!m||!(0,ot.deepEqual)(m,s))&&(c[o]=s,a(e,{...u,[l]:c}))}else o in c&&(delete c[o],Object.keys(c).length===0?a(e,it(u,l)):a(e,{...u,[l]:c}))}))}function Zr(e){return(0,te.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]},u=!1;for(let c of r)c in s&&(delete s[c],u=!0,a=!0);u&&(Object.keys(s).length===0?delete i[l]:i[l]=s)}a&&n(e,i)})}function pe(e={}){let t=(0,te.atom)(e);return{atom:t,clearAll:Ga(t),clear:Ha(t),bulkReport:$a(t),report:za(t)}}var qr=pe(),at=qr.atom,Wr=qr.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 Ua(e,t){return j(e)?Ba(e,t):Jr(e,t)}function lt(e){let t=(0,Kr.useAtomValue)(at);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 Ht=require("react/jsx-runtime");function Qr(){return(0,Ht.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,Ht.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}var q=require("react/jsx-runtime");function jr(e){let t=je(e.sections,e.definition);return(0,q.jsx)("div",{className:"h-full w-full",children:(0,q.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,q.jsxs)(ae,{children:[t.map((n,r)=>(0,q.jsxs)(lt,{fields:n.fields??[],children:[(0,q.jsx)(Yr,{section:n,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.separator&&(0,q.jsx)(Qr,{})]},r)),e.control&&(0,q.jsx)(Kt,{isPending:e.isPending,children:e.control})]})})})}var eo=require("react/jsx-runtime");function st(e){return(0,eo.jsx)("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}var to=require("react/jsx-runtime");function ut(e){let t={context:e.context,env:e.config?.env},n=g(ze(e.text,t),e.translations),r=ee(n);return r?(0,to.jsx)(st,{children:r}):null}var no=require("tailwind-merge"),ct=require("react/jsx-runtime");function ro(e){let t=e.style?.showOptionalLabel??!0,n=X(e.field)||E(e.field);return(0,ct.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,no.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,ct.jsx)("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:g("(Optional)",e.translations)})]})}var Ne=require("react/jsx-runtime");function oo(e){let t={context:e.context,env:e.config?.env},n=ze(e.field.label,t);return(0,Ne.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,Ne.jsx)(ro,{field:e.field,style:e.config?.style,translations:e.translations,children:g(n,e.translations)}),e.horizontal===!0&&(0,Ne.jsx)(ut,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}var le=require("react/jsx-runtime");function io(e){return(0,le.jsxs)(le.Fragment,{children:[e.field.name&&e.field.label&&(0,le.jsx)(oo,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&(0,le.jsx)(ut,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}function dt(e,t){return e?t(e):null}var be=require("react");var $t=pe(),ao=$t.clear,lo=$t.bulkReport,mt=$t.report;var ft=pe(),pt=ft.atom,so=ft.clearAll,uo=ft.clear,gt=ft.report;var H=require("react");var se=require("react");function co(e,t,n,r){let{name:o}=e,i=(0,se.useMemo)(()=>Dr(e,r),[e,r]),a=(0,se.useEffectEvent)(s=>{s&&t(s,i,e)}),l=(0,se.useEffectEvent)(s=>{s&&n(s)});return(0,se.useEffect)(()=>(a(o),()=>{l(o)}),[o]),i}var ye=require("jotai");var ge=require("react");function mo(){let e=(0,ge.useRef)(null);return(0,ge.useEffect)(()=>()=>{e.current&&clearTimeout(e.current)},[]),(0,ge.useCallback)((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}function fo(e,t){let n=(0,ye.useStore)(),r=e.field.advanced?.entity,o=mo(),[,i]=(0,H.useTransition)(),{setValue:a,shouldSkipOnChange:l,value:s,setSource:u}=t,c=(0,H.useRef)(s);c.current=s;let m=(0,H.useRef)(e.translations);m.current=e.translations;let b=Xe(e.field),p=(0,ye.useSetAtom)(pt),A=(0,ye.useSetAtom)(at),T=(0,ye.useSetAtom)(mt(e.field.name)),N=co(e.field,e.onMount,e.onUnmount,e.translations),k=g(e.commonProps.placeholder,e.translations),w={...e.commonProps,placeholder:k},C=(0,H.useRef)(null);C.current=S=>{if(a(S),e.onValueChange){let _=e.dataAttributes??{};e.onValueChange({data:Object.keys(_).length>0?_:void 0,name:e.field.name,type:e.field.type,value:S})}};let P=(0,H.useRef)(null);P.current=S=>{let _=e.field.event?.change;_&&zn(_,({sources:U,states:ce,values:Te})=>{i(()=>{Gn(S,U,(h,L)=>u(h,L)),$n(S,ce,(h,L)=>{A(we=>L?h.reduce((Rt,Ft)=>({...Rt,[Ft]:L}),we):h.reduce((Rt,Ft)=>it(Rt,Ft),we))}),Bn(S,Te,(h,L)=>{p(we=>({...we,[h]:L}))})})})};let D=(0,H.useCallback)(S=>{let U=N.safeParse(S).error?.issues.map(h=>h.message)??[],ce=e.field.validation?.custom,Te=ce?Mr(S,ce,h=>n.get(gt(h)),m.current):[];T([...U,...Te])},[e.field.validation?.custom,N,T,n]),I=(0,H.useCallback)(S=>{if(!b){let _=S.target.value;e.config.validation.blur&&D(_)}},[b,e.config.validation.blur,D]);return{applyChangeEventsRef:P,commonProps:w,entity:r,hasClickable:b,onBlur:I,onValueChangeRef:C,setTimeoutRef:o,shouldSkipOnChange:l,validated:D,valueRef:c}}var po=require("fast-equals");var go=require("jotai"),ne=require("react");function yo(e,t){let{name:n}=e,r=(0,ne.useRef)(!1),[o,i]=(0,go.useAtom)(gt(n)),a=(0,ne.useEffectEvent)(s=>{let u=Ya(n,s);x(u)&&((0,po.deepEqual)(o,u)||(r.current=!0),i(u))});(0,ne.useEffect)(()=>{t&&a(t)},[t]);let l=(0,ne.useCallback)(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:l,value:o}}function Ya(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 Bt=require("react/jsx-runtime");function bo(e){let{useSource:t,useExtraProps:n,getValue:r,shouldSkipChange:o,dispatchChange:i,buildInitialSelected:a,isInitialReady:l}=e.strategies,{setValue:s,shouldSkipOnChange:u,value:c}=yo(e.field,e.value),{data:m,setSource:b}=t(e.field,e.config,c),{applyChangeEventsRef:p,commonProps:A,entity:T,hasClickable:N,onBlur:k,onValueChangeRef:w,setTimeoutRef:C,validated:P,valueRef:D}=fo(e,{setValue:s,shouldSkipOnChange:u,value:c,setSource:b}),I=n?.(e.field),S=(0,be.useRef)(!1),{commonPropsWithOptions:_,defaultValue:U}=gr(e.field,A,m,c),ce=yr(e.field,U);(0,be.useEffect)(()=>{if(S.current||!e.value)return;if(!e.field.event?.change){S.current=!0;return}if(!x(U)||!l(e.field,U,m))return;S.current=!0;let h=a(U,m,T);p.current?.(h)},[p,a,m,U,T,l,e.field,e.value]);let Te=(0,be.useCallback)(h=>{let L=r(h,e.field);o({shouldSkipOnChange:u,hasClickable:N,inputValue:L,valueRef:D})||(w.current?.(L),e.config.validation.change&&P(L),e.field.event?.change&&i({applyChangeEventsRef:p,data:m,entity:T,inputValue:L,setTimeoutRef:C}))},[p,m,i,T,r,N,w,e.config.validation.change,e.field,C,o,u,P,D]);return dt(e.config.inputs[e.field.type],h=>(0,Bt.jsx)(io,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:(0,Bt.jsx)(h,{..._,...e.ariaAttributes,...e.dataAttributes,...I,...ce,onBlur:k,onChange:Te})}))}var ho=require("react/jsx-runtime");function he(e){return function(n){return(0,ho.jsx)(bo,{...n,strategies:e})}}function xo(e){let t=V(e)?Z(e):null,n=Y(e)?oe(e):null;return{dateFormat:t,timeFormat:n}}var To=require("jotai");var Xa=e=>{let t=Gr(e);if(t)return t},Za=e=>e.trim()!=="",So=(0,To.atom)({}),yt=Xr(So,{merge:Xa,validateTarget:Za}),Ro=Zr(So);var Fo=require("jotai");function bt(e){return{data:null,setSource:(0,Fo.useSetAtom)(yt(e.name))}}var Co=he({useSource:bt,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=xo(e);return br(t,n)},getValue:(e,t)=>{let n=e.target.value,r=Y(t)?oe(t):null;if(r!==null)return sr(n,r);let o=V(t)?Z(t):null;return o!==null&&Ke(n,o)||n},shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>x(t)});var No=require("jotai");var Ao=Ii(require("swr"),1);function vo(e=null,t,n=!1){let{data:r,error:o}=(0,Ao.default)(qa(e,t,n),t.fetcher.provider);if(o&&Ce.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return Dn(r,e.namespace)}return null}function qa(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!Fe(e.url)){if(_r(e.url,t.fetcher.remotePatterns))return e;Ce.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function Io(e,t,n){let r=pr(e,n),[o,i]=(0,No.useAtom)(yt(e.name));return[vo(o??r,t,e.disabled),i]}function Wa(e,t,n){let[r,o]=Io(e,t,n);return{data:r,setSource:o}}var Eo=he({useSource:Wa,getValue:e=>e.target.value,shouldSkipChange:({shouldSkipOnChange:e,hasClickable:t})=>!t&&e(),dispatchChange:({applyChangeEventsRef:e,data:t,entity:n,inputValue:r})=>{e.current?.(kt(r,t,n))},buildInitialSelected:(e,t,n)=>kt(String(e),t,n),isInitialReady:(e,t,n)=>(!ve(e)||!!n&&n.length>0)&&x(t)});var ko=he({useSource:bt,getValue:e=>e.target.value,shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>x(t)});var ht=require("react/jsx-runtime");function wo(e){return V(e.field)||Y(e.field)?(0,ht.jsx)(Co,{...e}):Jn(e.field)?(0,ht.jsx)(ko,{...e}):(0,ht.jsx)(Eo,{...e})}var Ut=require("react/jsx-runtime");function Po(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 Do=require("tailwind-merge"),Lo=require("react/jsx-runtime");function xt(e){let t=e.errors&&e.errors.length>0;return(0,Lo.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Rn]:"true"},...e.disabled&&{[Fn]:"true"},"data-orientation":e.orientation,className:(0,Do.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 Oo=require("tailwind-merge"),Mo=require("react/jsx-runtime");function Vo(e){return(0,Mo.jsx)(xt,{...e,orientation:"vertical",className:(0,Oo.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var _o=require("tailwind-merge"),Go=require("react/jsx-runtime");function zo(e){return(0,Go.jsx)(xt,{...e,orientation:"horizontal",className:(0,_o.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 Yt=require("react/jsx-runtime");function Ho(e){let t=Xe(e.field),n=E(e.field),r=er(e.field);return e.horizontal?(0,Yt.jsx)(zo,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):(0,Yt.jsx)(Vo,{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=ur(e.field,e.disabled),n=Rr(e.field),r=Sr(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 Bo=require("tailwind-merge"),xe=require("react/jsx-runtime");function Uo(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=et(e.style,{horizontal:jn(e.field)}),o=tr(e.field,e.disabled);return(0,xe.jsxs)("div",{className:(0,Bo.twMerge)("flex flex-col gap-3",vr(t)),children:[(0,xe.jsx)(Ho,{disabled:o,errors:n,field:e.field,horizontal:r,children:(0,xe.jsx)($o,{disabled:o,errors:n,field:e.field,horizontal:r,children:e.children})}),(0,xe.jsx)(Po,{errors:n,name:e.field.name})]})}var Yo=require("jotai"),Wo=require("react/jsx-runtime");function Xo(e){return(t,n)=>o=>{let i=(0,Yo.useAtomValue)(e(o.field.name)),a=n(i,o);return a===null?null:(0,Wo.jsx)(t,{...o,...a})}}var Ka=Xo(mt);function Zo(e){return Ka(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var Ja=Xo(Wr);function qo(e){return Ja(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var Ko=qo(Zo(Uo));var Jo=require("tailwind-merge");var M=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,M.jsx)("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:(0,Jo.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)(ae,{children:e.children})]}):(0,M.jsxs)("div",{className:"flex items-start gap-2",children:[(0,M.jsx)(ae,{children:e.children}),n&&(0,M.jsx)("div",{className:"shrink-0",children:n})]})}var ti=require("tailwind-merge");var jo=require("jotai"),$=require("react");function ei(e,t){let n=e.advanced?.length?.min??1,r=e.advanced?.length?.max??1/0,[o,i]=(0,$.useState)(()=>Ir(e,t)),a=(0,$.useRef)(o.length),l=(0,$.useRef)(o);(0,$.useLayoutEffect)(()=>{l.current=o});let s=(0,jo.useSetAtom)(pt),u=(0,$.useCallback)(()=>{i(p=>{if(p.length>=r)return p;let A=a.current++;return[...p,A]})},[r]),c=(0,$.useCallback)(p=>{if(l.current.length<=n)return;let A=l.current[p];i(T=>T.length<=n?T:T.filter((N,k)=>k!==p)),s(T=>{let N={...T},k=`${e.name}.`,w=[];for(let C of e.fields)if(j(C))for(let P of C.fields)w.push(P.name);else w.push(C.name);for(let C of w)delete N[`${k}${A}.${C}`];return N})},[e.name,e.fields,n,s]),m=o.length<r,b=o.length>n;return[o,u,c,m,b,r]}var W=require("react/jsx-runtime");function ni(e){let[t,n,r,o,i,a]=ei(e.field,e.value),l=Er(e.field),s=e.field.advanced?.action??"Add item",u=a!==1/0,c=Nr(e.field);return(0,W.jsxs)(W.Fragment,{children:[t.map((m,b)=>(0,W.jsx)(Qo,{canRemove:i,index:b,isMultiField:c,label:l,onRemove:r,children:e.children(m)},m)),(0,W.jsxs)("button",{"aria-disabled":!o,"aria-label":u?`${s}, ${t.length} of ${a}`:s,className:(0,ti.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,W.jsx)("span",{"aria-hidden":"true",children:"+"}),s,u&&(0,W.jsxs)("span",{"aria-hidden":"true",className:"ml-auto text-slate-400 tabular-nums dark:text-slate-500",children:[t.length," / ",a]})]})]})}var oi=require("react/jsx-runtime");function ri(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return(0,oi.jsx)(tt,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}var Tt=require("react/jsx-runtime");function ii({children:e,field:t,value:n}){return(0,Tt.jsx)(lt,{container:t,fields:t.fields,children:(0,Tt.jsx)(ri,{field:t,children:(0,Tt.jsx)(ni,{field:t,value:n,children:e})})})}var ai=require("tailwind-merge");var Ie=require("react/jsx-runtime");function li(e){let t=Ar(e.column?.advanced?.cols);return(0,Ie.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[(0,Ie.jsx)("div",{className:(0,ai.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&(0,Ie.jsx)(st,{children:e.column.description})]})}var ci=require("react");var ui=require("react/jsx-runtime");function si(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>Ze(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:j(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return(0,ui.jsx)(Ee,{children:e.children,components:e.components,disabled:e.disabled,fields:t,style:e.style,value:e.value})}var re=require("react/jsx-runtime");function Ee(e){let{field:t,list:n}=e.components;return je(e.fields).map((r,o)=>(0,re.jsxs)(ci.Fragment,{children:[j(r)&&(0,re.jsx)(li,{column:r,children:(0,re.jsx)(Ee,{...e,fields:r.fields})}),Ze(r)&&(0,re.jsx)(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),Kn(r)&&(0,re.jsx)(n,{field:r,value:e.value,children:i=>(0,re.jsx)(si,{children:e.children,components:e.components,disabled:e.disabled,field:r,index:i,style:e.style,value:e.value})})]},o))}var mi=require("react/jsx-runtime");function di(e){return n=>(0,mi.jsx)(Ee,{...n,components:e})}var fi=di({field:Ko,list:ii});var Zt=require("jotai");var ke=require("react");function gi(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},l=(0,Zt.useSetAtom)(lo),s=(0,Zt.useSetAtom)(so),u={data:null,error:null,success:!1},[c,m,b]=(0,ke.useActionState)(async(p,A)=>{let[T,N]=e(),k=wr(T,N,a);if(i===!1)return t?await t(A,k):p;let w=Vn(A),C=ja(w,N),P=k.safeParse(C);if(!P.success){let I=Pr(P.error);return(0,ke.startTransition)(()=>{l(I)}),Xt(w,{description:g("Please correct the errors and try again.",a),details:[],title:g("There were validation errors submitting the form.",a)})}let D=Mn(C);if(t)try{let I=await t(D,k);return I.success?(r?.(I.data),o||(0,ke.startTransition)(()=>{s()}),pi(D,o)):Xt(D,I.error)}catch(I){return Ce.error("Error executing form action:",I),Xt(D,{title:g("An unexpected error occurred submitting the form.",a),details:Qa(I,a)})}return pi(P.data,o)},u);return[m,c,b]}function Qa(e,t){return e instanceof Error?[e.message]:[g("Unknown error",t)]}function pi(e,t=!1){return{data:t?e:null,error:null,success:!0}}function Xt(e,t){return{data:e,error:t,success:!1}}function ja(e,t){let n={...e};for(let r of t)if(V(r)&&typeof n[r.name]=="string"&&n[r.name]){let o=We(n[r.name],Z(r));o&&(n[r.name]=o)}return n}var ue=require("react");var yi=require("react"),St=require("jotai");function bi(){let e=(0,St.useSetAtom)(ao),t=(0,St.useSetAtom)(uo),n=(0,St.useSetAtom)(Ro);return(0,yi.useCallback)(r=>{let o=Array.isArray(r)?r:[r];e(o),n(o),t(o)},[e,n,t])}function hi(){let e=bi(),t=(0,ue.useRef)({}),n=(0,ue.useRef)([]),r=(0,ue.useCallback)((a,l,s)=>{a in t.current||(t.current[a]=l,n.current.push(s))},[]),o=(0,ue.useCallback)(a=>{t.current[a]&&(delete t.current[a],n.current=n.current.filter(l=>l.name!==a),e([a]))},[e]);return[(0,ue.useCallback)(()=>[t.current,n.current],[]),r,o]}var B=require("react/jsx-runtime");function xi(e){let t=e.translations?.[e.lang??""],[n,r,o]=hi(),[i,a,l]=gi(n,e.action,{onSuccess:e.onSuccess,validation:e.config.validation.submit,translations:t}),s=e.config.validation.showError&&!a.success&&a.error,u=a.data??e.value;return(0,B.jsxs)(B.Fragment,{children:[s&&dt(e.config.alert,c=>(0,B.jsx)("div",{className:"mb-4 w-full",children:(0,B.jsx)(c,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),(0,B.jsx)(jr,{action:i,config:e.config,control:e.children,definition:e.definition,isPending:l,noValidate:!0,readOnly:e.readOnly,sections:e.sections,children:({disabled:c,fields:m})=>(0,B.jsx)(fi,{disabled:c,fields:m,style:e.config.style,value:u,children:b=>(0,B.jsx)(wo,{...b,config:e.config,context:e.context,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:u})})})]})}var Ti=require("jotai"),qt=require("react/jsx-runtime");function Si(e){return(0,qt.jsx)(Ti.Provider,{children:(0,qt.jsx)(xi,{...e})})}
|
|
1
|
+
"use strict";var Oi=Object.create;var He=Object.defineProperty;var Mi=Object.getOwnPropertyDescriptor;var _i=Object.getOwnPropertyNames;var $i=Object.getPrototypeOf,zi=Object.prototype.hasOwnProperty;var Gi=(e,t)=>{for(var n in t)He(e,n,{get:t[n],enumerable:!0})},on=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of _i(t))!zi.call(e,o)&&o!==n&&He(e,o,{get:()=>t[o],enumerable:!(r=Mi(t,o))||r.enumerable});return e};var Hi=(e,t,n)=>(n=e!=null?Oi($i(e)):{},on(t||!e||!e.__esModule?He(n,"default",{value:e,enumerable:!0}):n,e)),Bi=e=>on(He({},"__esModule",{value:!0}),e);var pl={};Gi(pl,{Form:()=>Vi});module.exports=Bi(pl);var ln=require("react/jsx-runtime");function an(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,ln.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var Et=require("react/jsx-runtime");function le(e){return(0,Et.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,Et.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 cn=require("react");var sn=require("react"),Be=(0,sn.createContext)(!1);var wt=require("react/jsx-runtime");function Ie({children:e,visible:t}){return(0,wt.jsx)(cn.Activity,{mode:t?"visible":"hidden",children:(0,wt.jsx)(Be,{value:!0,children:e})})}var Ue="input",un="input/date",dn="input/email",mn="input/number";var fn="input/time";var pn="textarea",gn="radio",yn="checkbox",Pt="list";var xn="select",bn="select/day",hn="select/month",Tn="select/timezone",Sn="select/year";var Rn="chips",vn="chips/day",Cn="chips/month",Ee="column",Fn="description",Dt="fields",An="label",O="value",Ye="options",Lt="email",Nn="number",kn="password",In="tel",we="text",En="aria-errormessage",wn="aria-invalid",Pn="data-invalid",Dn="data-readonly",Ln="aria",Vn="data",Xe="max",On="maxLength",Ze="min",Mn="minLength",xe="$ref";var _n="source",$n="state",qe="http://luna.internal";var zn="type",Gn={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 We(e){return e==null||e===""}function $(e){return b(e)||typeof e=="number"||Vt(e)}function b(e){return typeof e=="string"}function Hn(e){return d(e)&&"url"in e}function Vt(e){return typeof e=="boolean"}var Ui=/^\d+$/;function Mt(e,t=[],n=O){return Array.isArray(t)?t.find(r=>{let o=_t(r,n);if(o!==void 0&&`${o}`===e)return r})??{value:e}:{value:e}}function _t(e,t=O){if(e!=null){if(Array.isArray(e)&&e.every($)||$(e))return e;if(d(e)){let n=Yi(e,t);if($(n))return n}}}function Yi(e,t){let n=N(e,t);if($(n))return n}function Bn(e,t){if(Array.isArray(e))return e;let n=N(e,t);return Array.isArray(n)?n:null}function N(e,t){if(!t||!d(e))return null;let n=t.split(".").filter(o=>o!=="");if(n.length===0)return null;let r=e;for(let o of n)if(d(r)&&o in r)r=r[o];else return null;return r}function Un(e,t={description:Fn,label:An,value:O}){return e.map(n=>{if(d(n)){let r=N(n,t.label),o=N(n,t.value);if($(r)&&$(o)){let i=N(n,t.description);return{label:`${r}`,value:`${o}`,...$(i)&&{description:`${i}`}}}}return n})}function Yn(e=we){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==Ue?n.trim().toLowerCase():we}function Xn(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=Ui.test(s);l in o||(o[l]=c?[]:{}),o=o[l]}let i=r[r.length-1];o[i]=e[n]}return Ot(t),t}function Ot(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)&&Ot(o);e[t]=r}else d(n)&&Ot(n)}}var Xi=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g;function j(e,t={}){if(b(e))return Zi(e,t);if(Array.isArray(e))return e.map(n=>j(n,t));if(d(e)){let n={};for(let r in e)n[r]=j(e[r],t);return n}return e}function De(e,t={}){return Pe(e)?j(e,t):e}function Pe(e){return b(e)?/{([^}]{1,200})}/.test(e):Array.isArray(e)?e.some(t=>Pe(t)):d(e)?Object.values(e).some(t=>Pe(t)):!1}function Zi(e,t={}){return e.replace(/{([^}]{1,200})}/g,(n,r)=>{let o=r.includes(".")?N(t,r):t[r];return $(o)?String(o):n})}function qn(e,t){if(!b(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Xi.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 Le={error:(...e)=>{$t()&&!zt()&&Ke().error("[Luna Form]",...e)},warn:(...e)=>{$t()&&!zt()&&Ke().warn("[Luna Form]",...e)},info:(...e)=>{$t()&&!zt()&&Ke().info("[Luna Form]",...e)}},$t=()=>typeof Ke()<"u",zt=()=>!0,Ke=()=>globalThis.console;function Wn(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===O&&n.push(i),i.action===_n&&r.push(i),i.action===$n&&o.push(i);t({sources:r,states:o,values:n})}function Kn(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(Hn(i)){let a=j(i.url,e),l=i.body?j(i.body,e):i.body;n(o,{...i,url:a,body:l})}}}var Ve={eq:Qi,gt:na,gte:ra,in:ea,lt:oa,lte:ia,neq:ji,nin:ta},qi=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,Jn=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function Wi(e){return typeof e=="string"&&qi.test(e)}function Ki(e){return typeof e=="string"&&Jn.test(e)}function Ji(e){let t=e.match(Jn);if(t){let[,n,r,o,i,a,l]=t;return new Date(Number(o),Number(r)-1,Number(n),Number(i??0),Number(a??0),Number(l??0)).getTime()}return NaN}function ee(e){return Wi(e)?new Date(e).getTime():Ki(e)?Ji(e):Number(e)}function Qi(e,t){return e===t}function ji(e,t){return e!==t}function ea(e,t){return Array.isArray(t)&&t.includes(String(e))}function ta(e,t){return Array.isArray(t)&&!t.includes(String(e))}function na(e,t){return ee(e)>ee(t)}function ra(e,t){return ee(e)>=ee(t)}function oa(e,t){return ee(e)<ee(t)}function ia(e,t){return ee(e)<=ee(t)}function Qn(e=null,t=[],n){for(let r of t){let{target:o,state:i,when:a}=r,l=Array.isArray(o)?o:[o];if(!e){n(l);continue}let s=aa(e,a);n(l,s?i:void 0)}}function aa(e,t){return t===void 0?!0:b(t)?Je(e,O)===t:Vt(t)?!!Je(e,O)===t:Array.isArray(t)?t.includes(String(Je(e,O))):la(e,t)}function la(e=null,t){let n=Je(e,t.field??O),{operator:r="eq",value:o}=t,i=Ve[r];return i?i(n,o):!1}function Je(e,t){return d(e)?N(e,t):e}function jn(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?j(i,e):void 0)}var er=e=>T(bn)(e),Qe=e=>T(hn)(e),je=e=>T(Sn)(e),tr=e=>T(Tn)(e),nr=e=>T(vn)(e),rr=e=>T(Cn)(e),M=T(un),X=T(fn),w=T(yn),se=T(Rn),Z=T(gn),Gt=T(Ue),te=T(xn),Ht=T(pn),or=T(we,Lt,kn,In),ir=T(dn,Lt),et=T(mn,Nn);function tt(e){return Z(e)||w(e)}function ar(e){return e.type===Pt}function ne(e){return e.type===Ee}function nt(e){return e.type!==Ee&&e.type!==Pt}function Oe(e){return te(e)||Z(e)||se(e)}function lr(e){return Gt(e)||Ht(e)}function S(e){return e!=null&&e!==""}function T(...e){return t=>{let n=b(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function sr(e,t={}){if(te(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&d(n))return[n]}}function cr(e){return Z(e)||w(e)?!0:e.advanced?.horizontal??!1}function ur(e){return w(e)?e.advanced?.reverse!==!1:!1}function dr(e,t){let n=e.readonly??!1;return t||n}function mr(e){if(Z(e)||se(e)||te(e)&&!e.disabled){let t=e.source;if(Array.isArray(t)||d(t)&&!(xe in t))return t}}var C=require("date-fns"),sa=/^\d+$/,rt=new Date(2e3,0,1),ca=()=>"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 Ut(){return Array.from({length:7},(e,t)=>({value:t.toString(),label:new Date(2e3,0,2+t).toLocaleString("default",{weekday:"long"})}))}function gr(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 Yt(){return new Date().getFullYear()}function ua(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function da(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return Gn[n]??"Other"}function ma(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function fr(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=ma(r,e);return{offset:i,longName:a}}function pr(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function yr(){let e=new Date,t=ua(),n=new Map,r=pr(t),{offset:o,longName:i}=fr(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let s of ca()){if(s===t)continue;let c=pr(s),{offset:u,longName:m}=fr(s,e),x={value:s,label:`${c} - ${m} (${u})`},f=da(s);if(f==="Other")continue;let A=n.get(f);A?A.push(x):n.set(f,[x])}for(let s of n.values())s.sort((c,u)=>c.label.localeCompare(u.label));let l=Array.from(n.entries()).sort(([s],[c])=>s.localeCompare(c)).map(([s,c])=>({label:s,items:c}));return[{label:"Suggested",items:[a]},...l]}function Xt(e,t){if(typeof e=="number")return e;let n=t??Yt(),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 sa.test(r)?parseInt(r,10):n}function ot(e,t){if(!e)return"";try{let n=(0,C.parse)(e,t,rt);return(0,C.isValid)(n)?(0,C.format)(n,"yyyy-MM-dd"):""}catch{return""}}function xr(e,t){if(!e)return"";try{let n=(0,C.parse)(e,t,rt);return(0,C.isValid)(n)?(0,C.format)(n,"HH:mm:ss"):""}catch{return""}}function br(e,t="HH:mm"){if(!e)return"";try{let n=e.split(":").length===3?"HH:mm:ss":"HH:mm",r=(0,C.parse)(e,n,rt);return(0,C.isValid)(r)?(0,C.format)(r,t):""}catch{return""}}function it(e,t="MMMM d, yyyy"){if(!e)return"";try{let n=(0,C.parse)(e,"yyyy-MM-dd",rt);return(0,C.isValid)(n)?(0,C.format)(n,t):""}catch{return""}}function ce(e){return e.advanced?.format??"HH:mm"}function q(e){return e.advanced?.format??"MMMM d, yyyy"}var at=Yt();function fa(e){if(se(e))return pa(e)}function pa(e){if(nr(e))return Ut();if(rr(e))return Bt()}function ga(e){if(te(e))return ya(e)}function ya(e){if(er(e))return Ut();if(Qe(e))return Bt();if(je(e)){let t=e.advanced?.length?.min??at,n=e.advanced?.length?.max??at+5;return gr(Xt(t,at),Xt(n,at))}if(tr(e))return yr()}function hr(e,t=!1){let n={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return Gt(e)?{...n,...xa(e)}:te(e)?{...n,...Tr(e,ga)}:Ht(e)?{...n,...ha(e)}:se(e)?{...n,...ba(e)}:n}function xa(e){let t=Yn(e.type),n={...e,type:t};return{...Sa(e),...Sr(e),...Ta(n),...or(n)?Rr(n):{},type:t}}function Tr(e,t){let n=t(e);return n?{options:n}:{}}function ba(e){let t=Tr(e,fa),n=e.advanced?.multiple??!0;return{...t,multiple:n}}function ha(e){return{...Sr(e),...Rr(e)}}function Sr(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Ta(e){return et(e)?Ra(e):{}}function Sa(e){if(X(e)){let t=ce(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function Rr(e){return vr(e,{min:Mn,max:On})}function Ra(e){return vr(e,{min:Ze,max:Xe})}function vr(e,t){let n={},r=e.advanced?.length;return r&&(r.min!==void 0&&(n[t.min]=r.min),r.max!==void 0&&(n[t.max]=r.max)),n}function Cr(e,t){let n=mr(e);return n||sr(e,t)}function va(e,t){let n=d(t)&&e.name in t?t[e.name]:t,r=_t(n,e.advanced?.entity);return X(e)&&S(r)?Ca(e,r):M(e)&&S(r)?ka(e,r):r}function Ca(e,t){let n=ce(e);return b(t)?xr(t,n):t}function Fa(e,t,n){return Oe(e)&&Array.isArray(n)?{...t,[Ye]:n}:t}function Aa(e,t,n){if(e.required&&!S(n)&&te(e)&&e.advanced?.preselected!==!1&&Ye in t){let r=t[Ye];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function Na(e,t){return Oe(e)&&Array.isArray(t)?Un(t,e.advanced?.options):t}function Fr(e,t,n,r){let o=va(e,r),i=Array.isArray(n)?Na(e,n):n,a=Fa(e,t,i),l=Aa(e,a,o);return{commonPropsWithOptions:a,defaultValue:l}}function Ar(e,t){return w(e)?{checked:S(t)?t:!1}:se(e)?{value:Array.isArray(t)?t:[]}:M(e)&&b(t)&&S(t)?{value:it(t,q(e))}:{value:t??""}}function ka(e,t){let n=q(e);return b(t)?ot(t,n):t}function Nr(e,t){let n=e??t;return n?{"data-format":n}:{}}var Ia=/^#\/definition\//;function st(e=[],t){let n=lt(e,t);return Array.isArray(n)?n.filter(wa).sort((r,o)=>kr(r)-kr(o)):[]}function lt(e,t,n=new Map,r=new WeakSet){if(!Ea(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=>lt(i,t,n,r));if(xe in e&&b(e[xe])){let i=e[xe].replace(Ia,""),a=N(t,i);return a!==null?lt(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=lt(a,t,n,r);return r.delete(e),n.set(e,o),o}function Ir(e){return Object.entries(e??{})}function kr(e){return e.order??Number.MAX_VALUE}function Ea(e){return e!==void 0&&d(e)&&Object.keys(e).length>0}function wa(e){return zn in e?!0:Array.isArray(e[Dt])?e[Dt].length>0:!0}function Er(e,t){let n={};for(let[r,o]of Ir(t))n[`${e}-${r}`]=o;return n}function Pa(e){return Er(Ln,e)}function Da(e){return Er(Vn,e)}function wr(e,t){let n=Pa(e.advanced?.aria);return t&&t.length>0&&(n[wn]="true",n[En]=`${e.name}-error`),n}function Pr(e){return Da(e.advanced?.data)}var Dr={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Lr={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function Vr(e,t=2){return Dr[e&&e in Dr?e:t]}function Or(e){if(e&&e in Lr)return Lr[e]}function La(e,t){let n=e.advanced?.length?.min??1;if(t){let r=N(t,e.name);if(Array.isArray(r))return Math.max(r.length,n)}return Math.max(n,0)}function Mr(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===Ee}function _r(e,t){let n=La(e,t);return Array.from({length:n},(r,o)=>o)}function $r(e){return e.label??e.name}var g=require("zod");function p(e,t){return e?t?t[e]??e:e:""}var Va=[[et,za],[ir,Oa],[je,Ga],[Qe,Ha],[w,Ma],[Z,_a]];function Gr(e,t=[],n){let r=g.z.object(e);return t.length===0?r:Xa(r,t,n)}function Hr(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 Br(e,t){for(let[n,r]of Va)if(n(e))return r(e,t);return $a(e,t)}function Oa(e,t){let n=g.z.string().trim();if(e.required){let r=be(e,t),o=n.min(1,r).pipe(zr(e,t));return g.z.preprocess(i=>We(i)?"":i,o)}return n.pipe(zr(e,t)).or(g.z.literal("")).nullable()}function Ma(e,t){let n=g.z.coerce.boolean();return e.required?(n=n.refine(r=>r===!0,{message:be(e,t)}),g.z.preprocess(r=>r===null?!1:r,n)):n.nullable()}function _a(e,t){let n=g.z.coerce.string();return e.required?(n=n.min(1,be(e,t)),g.z.preprocess(r=>We(r)?"":r,n)):n.or(g.z.literal("")).nullable()}function $a(e,t){let n=g.z.coerce.string().trim();return n=Ur(n,e,t),e.required?(n=Yr(n,e,t),g.z.preprocess(r=>We(r)?"":r,n)):n.nullable()}function za(e,t){let n=g.z.coerce.number().int();return n=Ur(n,e,t),e.required?(n=Yr(n,e,t),g.z.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function Ga(e,t){return e.required?g.z.preprocess(Ba,g.z.coerce.number({message:be(e,t)}).int()):g.z.coerce.number().int().nullable()}function Ha(e,t){let n=be(e,t),r=g.z.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function Ba(e){return e===null||e===""?void 0:e}function zr(e,t){let n=e.validation?.email?p(e.validation?.email,t):void 0;return g.z.email(n)}function Ur(e,t,n){return e=Ua(e,t,n),e=Ya(e,t,n),e}function Yr(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,be(t,n)):e}var Ua=(e,t,n)=>Xr(e,t,Ze,n),Ya=(e,t,n)=>Xr(e,t,Xe,n);function Xr(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 Xa(e,t=[],n){let r=qa(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:l}of r)if(!Za(o,a,l)){let s=p(l.message,n);i.addIssue({code:"custom",message:s,path:[a]})}})}function Za(e,t,n){let r=n.operator??"eq",o=Ve[r];return o?o(e[t],e[n.field]):!1}function qa(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=Ve[l];if(s&&!s(e,n(a.field))&&a.message){let c=p(a.message,r);o.push(c)}}return o}function be(e,t){return e.validation?.required?p(e.validation?.required,t):void 0}function qr(e,t){if(!t||!Ka(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||Wa(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 Wa(e){return e==="https"?"443":"80"}function Ka(e){return/^(https?:)?\/\//.test(e)}function Wr(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,qe);new URL(t,qe).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(qe,""):o}catch{return t||e}}function Kr(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=Wr(t.url,n.url),o=Ja(t,n),i=Qa(t,n);return{...t,...n,url:r,body:o,headers:i}})}function Ja(e,t){return d(t.body)&&d(e?.body)?{...e.body,...t.body}:t.body??e?.body}function Qa(e,t){return d(t.headers)&&d(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function ct(e,t){return{...e,...t}}var Jr=require("react/jsx-runtime");function W(e){return qn(e,(t,n,r)=>(0,Jr.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}var ut=require("react"),z=require("react/jsx-runtime");function Qr(e){let{fields:t=[]}=e.section,[n,r]=(0,ut.useState)(!1),o=(0,ut.useCallback)(()=>r(i=>!i),[]);return(0,z.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,z.jsx)("legend",{children:(0,z.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,z.jsx)(le,{expanded:n}),(0,z.jsx)("span",{children:W(e.section.title)})]})}),(0,z.jsx)(Ie,{visible:n,children:(0,z.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,z.jsx)("p",{className:"text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:W(e.section.description)}),e.group]})})]})}var re=require("react/jsx-runtime");function jr(e){let t=(0,re.jsxs)("div",{className:"flex flex-col",children:[e.title&&(0,re.jsx)("legend",{className:"mb-3 font-medium text-slate-800 dark:text-slate-200",children:W(e.title)}),e.description&&(0,re.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-slate-600 dark:text-slate-400",children:W(e.description)})]});return e.step?(0,re.jsxs)("div",{className:"flex flex-row items-start gap-4",children:[(0,re.jsx)("div",{className:"bg-primary text-primary-foreground flex h-6 w-6 shrink-0 items-center justify-center rounded-full",children:(0,re.jsx)("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}var mt=require("react/jsx-runtime");function dt(e){return(0,mt.jsxs)("fieldset",{className:"flex flex-col data-[empty=false]:gap-6","data-empty":e.empty,"data-slot":"field-set",id:e.id,children:[(0,mt.jsx)(jr,{description:e.description,step:e.step,title:e.title}),e.children]})}var eo=require("react/jsx-runtime");function ue(e){return(0,eo.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 ft=require("react/jsx-runtime");function to(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=ct(e.style,{compact:e.section.advanced?.compact}),o=(0,ft.jsx)(ue,{compact:r,children:e.children});return!e.section.title&&!e.section.description?o:e.section.advanced?.collapsible?(0,ft.jsx)(Qr,{section:e.section,group:o}):(0,ft.jsx)(dt,{description:e.section.description,empty:t.length===0,id:e.section.id?.toString(),step:n,title:e.section.title,children:o})}var Zt=require("react/jsx-runtime");function no(){return(0,Zt.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,Zt.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-slate-200 dark:bg-slate-800"})})}var lo=require("jotai");var oe=require("jotai"),qt=require("jotai-family"),pt=require("fast-equals");function gt(e,t){let{[t]:n,...r}=e;return r}function ja(e){return(0,qt.atomFamily)(t=>(0,oe.atom)(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];(0,pt.deepEqual)(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,gt(i,t))}))}function el(e){return(0,oe.atom)(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function tl(e){return(0,oe.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 nl(e){return(0,oe.atom)(null,(t,n,r)=>{let o=t(e);(0,pt.deepEqual)(o,r)||n(e,r)})}function ro(e,t={}){let{merge:n,validateTarget:r}=t;return(0,qt.atomFamily)(o=>(0,oe.atom)(i=>{let a=i(e)[o];if(a&&n)return n(Object.values(a))},(i,a,l,s)=>{if(r&&!r(l))return;let c=i(e),u={...c[l]??{}};if(s!=null){let m=u[o];(!m||!(0,pt.deepEqual)(m,s))&&(u[o]=s,a(e,{...c,[l]:u}))}else o in u&&(delete u[o],Object.keys(u).length===0?a(e,gt(c,l)):a(e,{...c,[l]:u}))}))}function oo(e){return(0,oe.atom)(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let l of r)l in i&&(delete i[l],a=!0);for(let l in i){let s={...i[l]},c=!1;for(let u of r)u in s&&(delete s[u],c=!0,a=!0);c&&(Object.keys(s).length===0?delete i[l]:i[l]=s)}a&&n(e,i)})}function he(e={}){let t=(0,oe.atom)(e);return{atom:t,clearAll:el(t),clear:tl(t),bulkReport:nl(t),report:ja(t)}}var io=he(),yt=io.atom,ao=io.report;function rl(e,t){return e.fields.every(n=>so(n,t))}function so(e,t){return t[e.name]?.hidden??e.hidden??!1}function ol(e,t){return ne(e)?rl(e,t):so(e,t)}function xt(e){let t=(0,lo.useAtomValue)(yt);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>ol(r,t))?null:e.children}var K=require("react/jsx-runtime");function co(e){let t=st(e.sections,e.definition);return(0,K.jsx)("div",{className:"h-full w-full",children:(0,K.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,K.jsxs)(ue,{children:[t.map((n,r)=>(0,K.jsxs)(xt,{fields:n.fields??[],children:[(0,K.jsx)(to,{advanced:e.advanced,section:n,step:r+1,style:e.config.style,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.advanced?.separator&&(0,K.jsx)(no,{})]},`key-${n.id}-${r}`)),e.control&&(0,K.jsx)(an,{isPending:e.isPending,children:e.control})]})})})}var mo=require("react/jsx-runtime");function uo(e){return(0,mo.jsx)("p",{className:"-mt-2 text-xs leading-normal font-normal text-slate-600 dark:text-slate-400",children:e.children})}var fo=require("react"),Te=require("react/jsx-runtime");function Se(e){let t={context:e.context,env:e.config?.env},[n,r]=(0,fo.useState)(()=>d(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),o=()=>r(l=>!l),i=d(e.text)&&b(e.text.title)?W(p(De(e.text.title,t),e.translations)):void 0,a=W(p(De(b(e.text)?e.text:e.text?.message,t),e.translations));return a?(0,Te.jsxs)("div",{className:"flex flex-col gap-2",children:[i&&(0,Te.jsxs)("button",{className:"flex items-center gap-1 text-left text-xs font-medium text-slate-700 hover:text-slate-900 dark:text-slate-300 dark:hover:text-slate-100",onClick:o,type:"button",children:[i,(0,Te.jsx)(le,{expanded:n})]}),n&&(0,Te.jsx)(uo,{children:a})]}):null}var po=require("tailwind-merge"),bt=require("react/jsx-runtime");function go(e){let t=e.style?.showOptionalLabel??!0,n=Z(e.field)||w(e.field);return(0,bt.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,po.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,bt.jsx)("span",{className:"text-sm text-slate-600 dark:text-slate-400",children:p("(Optional)",e.translations)})]})}var Me=require("react/jsx-runtime");function yo(e){let t={context:e.context,env:e.config?.env},n=De(e.field.label,t);return(0,Me.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,Me.jsx)(go,{field:e.field,style:e.config?.style,translations:e.translations,children:p(n,e.translations)}),e.horizontal===!0&&(0,Me.jsx)(Se,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}var de=require("react/jsx-runtime");function xo(e){return(0,de.jsxs)(de.Fragment,{children:[e.field.name&&e.field.label&&(0,de.jsx)(yo,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&(0,de.jsx)(Se,{config:e.config,context:e.context,text:e.field.description,translations:e.translations})]})}function ht(e,t){return e?t(e):null}var Fe=require("react");var Wt=he(),bo=Wt.clear,ho=Wt.bulkReport,Tt=Wt.report;var St=he(),Rt=St.atom,To=St.clearAll,So=St.clear,Re=St.report;var G=require("react");var J=require("react");function Ro(e,t,n,r){let{name:o}=e,i=(0,J.useMemo)(()=>Br(e,r),[e,r]),a=(0,J.useContext)(Be),l=(0,J.useEffectEvent)(c=>{c&&t(c,i,e)}),s=(0,J.useEffectEvent)(c=>{c&&n(c,{keepValue:a})});return(0,J.useEffect)(()=>(l(o),()=>{s(o)}),[o]),i}var Ce=require("jotai");var ve=require("react");function vo(){let e=(0,ve.useRef)(null);return(0,ve.useEffect)(()=>()=>{e.current&&clearTimeout(e.current)},[]),(0,ve.useCallback)((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}function Co(e,t){let n=(0,Ce.useStore)(),r=e.field.advanced?.entity,o=vo(),[,i]=(0,G.useTransition)(),{setValue:a,shouldSkipOnChange:l,value:s,setSource:c}=t,u=(0,G.useRef)(s);u.current=s;let m=(0,G.useRef)(e.translations);m.current=e.translations;let x=tt(e.field),f=(0,Ce.useSetAtom)(Rt),A=(0,Ce.useSetAtom)(yt),R=(0,Ce.useSetAtom)(Tt(e.field.name)),k=Ro(e.field,e.onMount,e.onUnmount,e.translations),P=p(e.commonProps.placeholder,e.translations),D={...e.commonProps,placeholder:P},F=(0,G.useRef)(null);F.current=v=>{if(a(v),e.onValueChange){let _=e.dataAttributes??{};e.onValueChange({data:Object.keys(_).length>0?_:void 0,name:e.field.name,type:e.field.type,value:v})}};let L=(0,G.useRef)(null);L.current=v=>{let _=e.field.event?.change;_&&Wn(_,({sources:Y,states:pe,values:ke})=>{i(()=>{Kn(v,Y,(h,E)=>c(h,E)),Qn(v,pe,(h,E)=>{A(Q=>E?h.reduce((ge,ye)=>({...ge,[ye]:E}),Q):h.reduce((ge,ye)=>gt(ge,ye),Q)),E?.hidden===!0&&f(Q=>{let ge=!1,ye={...Q};for(let It of Object.keys(Q))h.some(rn=>It===rn||It.startsWith(`${rn}.`))&&(delete ye[It],ge=!0);return ge?ye:Q})}),jn(v,ke,(h,E)=>{f(Q=>({...Q,[h]:E}))})})})};let V=(0,G.useCallback)(v=>{let Y=k.safeParse(v).error?.issues.map(h=>h.message)??[],pe=e.field.validation?.custom,ke=pe?Zr(v,pe,h=>n.get(Re(h)),m.current):[];R([...Y,...ke])},[e.field.validation?.custom,k,R,n]),I=(0,G.useCallback)(v=>{if(!x){let _=v.target.value;e.config.validation.blur&&V(_)}},[x,e.config.validation.blur,V]);return{applyChangeEventsRef:L,commonProps:D,entity:r,hasClickable:x,onBlur:I,onValueChangeRef:F,setTimeoutRef:o,shouldSkipOnChange:l,validated:V,valueRef:u}}var Fo=require("fast-equals");var Ao=require("jotai"),ie=require("react");function No(e,t){let{name:n}=e,r=(0,ie.useRef)(!1),[o,i]=(0,Ao.useAtom)(Re(n)),a=(0,ie.useEffectEvent)(s=>{let c=il(n,s);S(c)&&((0,Fo.deepEqual)(o,c)||(r.current=!0),i(c))});(0,ie.useEffect)(()=>{t&&a(t)},[t]);let l=(0,ie.useCallback)(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:l,value:o}}function il(e,t){if(e in t)return t[e];if(!e.includes("."))return;let n=e.split("."),r=t;for(let o of n){if(r==null)return;if(Array.isArray(r)){let i=Number(o);r=Number.isInteger(i)?r[i]:void 0}else if(typeof r=="object")r=r[o];else return}return r}var Kt=require("react/jsx-runtime");function ko(e){let{useSource:t,useExtraProps:n,getValue:r,shouldSkipChange:o,dispatchChange:i,buildInitialSelected:a,isInitialReady:l}=e.strategies,{setValue:s,shouldSkipOnChange:c,value:u}=No(e.field,e.value),{data:m,setSource:x}=t(e.field,e.config,u),{applyChangeEventsRef:f,commonProps:A,entity:R,hasClickable:k,onBlur:P,onValueChangeRef:D,setTimeoutRef:F,validated:L,valueRef:V}=Co(e,{setValue:s,shouldSkipOnChange:c,value:u,setSource:x}),I=n?.(e.field),v=(0,Fe.useRef)(!1),{commonPropsWithOptions:_,defaultValue:Y}=Fr(e.field,A,m,u),pe=Ar(e.field,Y);(0,Fe.useEffect)(()=>{if(v.current||!e.value)return;if(!e.field.event?.change){v.current=!0;return}if(!S(Y)||!l(e.field,Y,m))return;v.current=!0;let h=a(Y,m,R);f.current?.(h)},[f,a,m,Y,R,l,e.field,e.value]);let ke=(0,Fe.useCallback)(h=>{let E=r(h,e.field);o({shouldSkipOnChange:c,hasClickable:k,inputValue:E,valueRef:V})||(D.current?.(E),e.config.validation.change&&L(E),e.field.event?.change&&i({applyChangeEventsRef:f,data:m,entity:R,inputValue:E,setTimeoutRef:F}))},[f,m,i,R,r,k,D,e.config.validation.change,e.field,F,o,c,L,V]);return ht(e.config.inputs[e.field.type],h=>(0,Kt.jsx)(xo,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:(0,Kt.jsx)(h,{..._,...e.ariaAttributes,...e.dataAttributes,...I,...pe,onBlur:P,onChange:ke})}))}var Io=require("react/jsx-runtime");function Ae(e){return function(n){return(0,Io.jsx)(ko,{...n,strategies:e})}}function Eo(e){let t=M(e)?q(e):null,n=X(e)?ce(e):null;return{dateFormat:t,timeFormat:n}}var wo=require("jotai");var al=e=>{let t=Kr(e);if(t)return t},ll=e=>e.trim()!=="",Po=(0,wo.atom)({}),vt=ro(Po,{merge:al,validateTarget:ll}),Do=oo(Po);var Lo=require("jotai");function Ct(e){return{data:null,setSource:(0,Lo.useSetAtom)(vt(e.name))}}var Vo=Ae({useSource:Ct,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=Eo(e);return Nr(t,n)},getValue:(e,t)=>{let n=e.target.value,r=X(t)?ce(t):null;if(r!==null)return br(n,r);let o=M(t)?q(t):null;return o!==null&&it(n,o)||n},shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>S(t)});var _o=require("jotai");var Oo=Hi(require("swr"),1);function Mo(e=null,t,n=!1){let{data:r,error:o}=(0,Oo.default)(sl(e,t,n),t.fetcher.provider);if(o&&Le.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return Bn(r,e.namespace)}return null}function sl(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!Pe(e.url)){if(qr(e.url,t.fetcher.remotePatterns))return e;Le.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function $o(e,t,n){let r=Cr(e,n),[o,i]=(0,_o.useAtom)(vt(e.name));return[Mo(o??r,t,e.disabled),i]}function cl(e,t,n){let[r,o]=$o(e,t,n);return{data:r,setSource:o}}var zo=Ae({useSource:cl,getValue:e=>e.target.value,shouldSkipChange:({shouldSkipOnChange:e,hasClickable:t})=>!t&&e(),dispatchChange:({applyChangeEventsRef:e,data:t,entity:n,inputValue:r})=>{e.current?.(Mt(r,t,n))},buildInitialSelected:(e,t,n)=>Mt(String(e),t,n),isInitialReady:(e,t,n)=>(!Oe(e)||!!n&&n.length>0)&&S(t)});var Go=Ae({useSource:Ct,getValue:e=>e.target.value,shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>S(t)});var Ft=require("react/jsx-runtime");function Ho(e){return M(e.field)||X(e.field)?(0,Ft.jsx)(Vo,{...e}):lr(e.field)?(0,Ft.jsx)(Go,{...e}):(0,Ft.jsx)(zo,{...e})}var Jt=require("react/jsx-runtime");function Bo(e){return!e.errors||e.errors.length===0?null:(0,Jt.jsx)("ul",{className:"text-sm text-red-600 dark:text-red-500",id:e.name?`${e.name}-error`:void 0,children:e.errors?.map((t,n)=>(0,Jt.jsx)("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var Uo=require("tailwind-merge"),Yo=require("react/jsx-runtime");function At(e){let t=e.errors&&e.errors.length>0;return(0,Yo.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Pn]:"true"},...e.disabled&&{[Dn]:"true"},"data-orientation":e.orientation,className:(0,Uo.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 Xo=require("tailwind-merge"),qo=require("react/jsx-runtime");function Zo(e){return(0,qo.jsx)(At,{...e,orientation:"vertical",className:(0,Xo.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var Wo=require("tailwind-merge"),Jo=require("react/jsx-runtime");function Ko(e){return(0,Jo.jsx)(At,{...e,orientation:"horizontal",className:(0,Wo.twMerge)("gap-2 md:flex-row md:gap-4","[&>[data-slot=field-content]]:min-w-0 [&>[data-slot=field-content]]:flex-grow [&>[data-slot=field-content]]:self-start","[&_[role=checkbox]]:mt-[1.5px]",e.isClickable&&"md:flex-col",!e.isClickable&&["md:justify-between","[&>*:not([data-slot=field-content])]:w-full","[&>*:not([data-slot=field-content])]:md:w-1/2","[&>*:not([data-slot=field-content])]:xl:w-2/5"]),children:e.children})}var Qt=require("react/jsx-runtime");function Qo(e){let t=tt(e.field),n=w(e.field),r=ur(e.field);return e.horizontal?(0,Qt.jsx)(Ko,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):(0,Qt.jsx)(Zo,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function jo(e){if(!e.field.type)return null;let t=hr(e.field,e.disabled),n=Pr(e.field),r=wr(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 ei=require("tailwind-merge"),Ne=require("react/jsx-runtime");function ti(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=ct(e.style,{horizontal:cr(e.field)}),o=dr(e.field,e.disabled);return(0,Ne.jsxs)("div",{className:(0,ei.twMerge)("flex flex-col gap-3",Or(t)),children:[(0,Ne.jsx)(Qo,{disabled:o,errors:n,field:e.field,horizontal:r,children:(0,Ne.jsx)(jo,{disabled:o,errors:n,field:e.field,horizontal:r,children:e.children})}),(0,Ne.jsx)(Bo,{errors:n,name:e.field.name})]})}var ni=require("jotai"),ai=require("react/jsx-runtime");function ri(e){return(t,n)=>o=>{let i=(0,ni.useAtomValue)(e(o.field.name)),a=n(i,o);return a===null?null:(0,ai.jsx)(t,{...o,...a})}}var ul=ri(Tt);function oi(e){return ul(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var dl=ri(ao);function ii(e){return dl(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var li=ii(oi(ti));var _e=require("tailwind-merge"),si=require("react"),y=require("react/jsx-runtime");function ci(e){let[t,n]=(0,si.useState)(e.collapsible?!e.collapsed:!0);function r(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function o(){n(a=>!a)}let i=e.canRemove&&e.onRemove!=null&&(0,y.jsx)("button",{"aria-label":`Remove ${e.label} item ${e.index+1}`,className:(0,_e.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:r,type:"button",children:(0,y.jsx)("span",{"aria-hidden":"true",children:"\xD7"})});return e.isMultiField?(0,y.jsxs)("div",{"data-slot":"list-item-card",className:"rounded-lg border border-slate-100 p-4 dark:border-slate-900",children:[(0,y.jsxs)("div",{className:"mb-3 flex items-center justify-between",children:[(0,y.jsxs)("div",{className:"flex items-center gap-2",children:[e.collapsible&&(0,y.jsx)("button",{"aria-label":t?"Collapse":"Expand",className:(0,_e.twMerge)("rounded p-1 text-slate-400 hover:bg-slate-50","transition-colors duration-150","dark:text-slate-500 dark:hover:bg-slate-800"),onClick:o,type:"button",children:(0,y.jsx)(le,{expanded:t})}),(0,y.jsxs)("span",{className:"text-sm font-medium text-slate-300 dark:text-slate-400",children:[e.label," ",e.index+1,!t&&e.preview&&(0,y.jsx)("div",{className:"flex items-center gap-2 overflow-hidden text-ellipsis whitespace-nowrap text-slate-400 dark:text-slate-500",children:e.preview})]})]}),i]}),(0,y.jsx)(Ie,{visible:t,children:(0,y.jsx)(ue,{children:e.children})})]}):(0,y.jsxs)("div",{className:"flex items-start gap-2",children:[e.collapsible&&(0,y.jsx)("button",{"aria-label":t?"Collapse":"Expand",className:(0,_e.twMerge)("rounded p-1 text-slate-400 hover:bg-slate-50","transition-colors duration-150","dark:text-slate-500 dark:hover:bg-slate-800",t&&"mt-7"),onClick:o,type:"button",children:(0,y.jsx)(le,{expanded:t})}),(0,y.jsx)("div",{className:"flex grow flex-col",children:(0,y.jsx)(Ie,{visible:t,children:(0,y.jsx)(ue,{children:e.children})})}),i&&(0,y.jsx)("div",{className:(0,_e.twMerge)("shrink-0",t&&"mt-7"),children:i})]})}var ui=require("jotai"),me=require("react/jsx-runtime");function di({name:e,separator:t}){let n=(0,ui.useAtomValue)(Re(e));return n==null||n===""||d(n)||Array.isArray(n)?null:(0,me.jsxs)(me.Fragment,{children:[t&&(0,me.jsx)("span",{className:"text-xs text-slate-300 dark:text-slate-600",children:"\xB7"}),(0,me.jsx)("span",{className:"max-w-[150px] overflow-hidden text-xs text-ellipsis",children:`${n}`})]})}var jt=require("react/jsx-runtime");function mi({name:e,previews:t}){return(0,jt.jsx)("div",{className:"flex items-center gap-1.5 overflow-hidden text-ellipsis whitespace-nowrap",children:t.map((n,r)=>(0,jt.jsx)(di,{name:`${e}.${n}`,separator:r>0},n))})}var gi=require("tailwind-merge");var fi=require("jotai"),H=require("react");function pi(e,t){let n=e.advanced?.length?.min??1,r=e.advanced?.length?.max??1/0,[o,i]=(0,H.useState)(()=>_r(e,t)),a=(0,H.useRef)(o.length),l=(0,H.useRef)(o);(0,H.useLayoutEffect)(()=>{l.current=o});let s=(0,fi.useSetAtom)(Rt),c=(0,H.useCallback)(()=>{i(f=>{if(f.length>=r)return f;let A=a.current++;return[...f,A]})},[r]),u=(0,H.useCallback)(f=>{if(l.current.length<=n)return;let A=l.current[f];i(R=>R.length<=n?R:R.filter((k,P)=>P!==f)),s(R=>{let k={...R},P=`${e.name}.`,D=[];for(let F of e.fields)if(ne(F))for(let L of F.fields)D.push(L.name);else D.push(F.name);for(let F of D)delete k[`${P}${A}.${F}`];return k})},[e.name,e.fields,n,s]),m=o.length<r,x=o.length>n;return[o,c,u,m,x,r]}var B=require("react/jsx-runtime");function yi(e){let[t,n,r,o,i,a]=pi(e.field,e.value),l=$r(e.field),s=e.field.advanced?.action??"Add item",c=a!==1/0,u=Mr(e.field),m=e.field.advanced?.preview;return(0,B.jsxs)(B.Fragment,{children:[t.map((x,f)=>(0,B.jsx)(ci,{canRemove:i,collapsible:e.field.advanced?.collapsible,collapsed:e.field.advanced?.collapsed,index:f,isMultiField:u,label:l,onRemove:r,preview:m&&(0,B.jsx)(mi,{name:`${e.field.name}.${x}`,previews:m}),children:e.children(x)},x)),(0,B.jsxs)("button",{"aria-disabled":!o,"aria-label":c?`${s}, ${t.length} of ${a}`:s,className:(0,gi.twMerge)("flex w-full items-center gap-1.5 rounded py-1","text-sm font-medium text-slate-500","transition-colors duration-150","hover:text-slate-800","focus-visible:ring-2 focus-visible:ring-slate-400 focus-visible:ring-offset-2 focus-visible:outline-none","dark:text-slate-400 dark:hover:text-slate-200",!o&&"cursor-not-allowed opacity-50 hover:text-slate-500 dark:hover:text-slate-400"),disabled:!o,onClick:n,type:"button",children:[(0,B.jsx)("span",{"aria-hidden":"true",children:"+"}),s,c&&(0,B.jsxs)("span",{"aria-hidden":"true",className:"ml-auto text-slate-400 tabular-nums dark:text-slate-500",children:[t.length," / ",a]})]})]})}var bi=require("react/jsx-runtime");function xi(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0;return(0,bi.jsx)(dt,{description:e.field.description,empty:t,id:e.field.name,title:e.field.label,children:e.children})}var Nt=require("react/jsx-runtime");function hi({children:e,field:t,value:n}){return(0,Nt.jsx)(xt,{container:t,fields:t.fields,children:(0,Nt.jsx)(xi,{field:t,children:(0,Nt.jsx)(yi,{field:t,value:n,children:e})})})}var Ti=require("tailwind-merge");var $e=require("react/jsx-runtime");function Si(e){let t=Vr(e.column?.advanced?.cols);return(0,$e.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[(0,$e.jsx)("div",{className:(0,Ti.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&(0,$e.jsx)(Se,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}var Ci=require("react");var vi=require("react/jsx-runtime");function Ri(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>nt(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:ne(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return(0,vi.jsx)(ze,{children:e.children,components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:t,style:e.style,translations:e.translations,value:e.value})}var ae=require("react/jsx-runtime");function ze(e){let{field:t,list:n}=e.components;return st(e.fields).map((r,o)=>(0,ae.jsxs)(Ci.Fragment,{children:[ne(r)&&(0,ae.jsx)(Si,{column:r,config:e.config,context:e.context,translations:e.translations,children:(0,ae.jsx)(ze,{...e,fields:r.fields})}),nt(r)&&(0,ae.jsx)(t,{disabled:e.disabled,field:r,style:e.style,children:e.children}),ar(r)&&(0,ae.jsx)(n,{field:r,value:e.value,children:i=>(0,ae.jsx)(Ri,{children:e.children,components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:r,index:i,style:e.style,translations:e.translations,value:e.value})})]},o))}var Ai=require("react/jsx-runtime");function Fi(e){return n=>(0,Ai.jsx)(ze,{...n,components:e})}var Ni=Fi({field:li,list:hi});var tn=require("jotai");var Ge=require("react");function Ii(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},l=(0,tn.useSetAtom)(ho),s=(0,tn.useSetAtom)(To),c={data:null,error:null,success:!1},[u,m,x]=(0,Ge.useActionState)(async(f,A)=>{let[R,k]=e(),P=Gr(R,k,a);if(i===!1)return t?await t(A,P):f;let D=Xn(A),F=fl(D,k),L=P.safeParse(F);if(!L.success){let I=Hr(L.error);return(0,Ge.startTransition)(()=>{l(I)}),en(D,{description:p("Please correct the errors and try again.",a),details:[],title:p("There were validation errors submitting the form.",a)})}let V=Zn(F);if(t)try{let I=await t(V,P);return I.success?(r?.(I.data),o||(0,Ge.startTransition)(()=>{s()}),ki(V,o)):en(V,I.error)}catch(I){return Le.error("Error executing form action:",I),en(V,{title:p("An unexpected error occurred submitting the form.",a),details:ml(I,a)})}return ki(L.data,o)},c);return[m,u,x]}function ml(e,t){return e instanceof Error?[e.message]:[p("Unknown error",t)]}function ki(e,t=!1){return{data:t?e:null,error:null,success:!0}}function en(e,t){return{data:e,error:t,success:!1}}function fl(e,t){let n={...e};for(let r of t)if(M(r)&&typeof n[r.name]=="string"&&n[r.name]){let o=ot(n[r.name],q(r));o&&(n[r.name]=o)}return n}var fe=require("react");var Ei=require("react"),kt=require("jotai");function wi(){let e=(0,kt.useSetAtom)(bo),t=(0,kt.useSetAtom)(So),n=(0,kt.useSetAtom)(Do);return(0,Ei.useCallback)((r,o)=>{let i=Array.isArray(r)?r:[r];e(i),n(i),o?.keepValue||t(i)},[e,n,t])}function Pi(){let e=wi(),t=(0,fe.useRef)({}),n=(0,fe.useRef)([]),r=(0,fe.useCallback)((a,l,s)=>{a in t.current||(t.current[a]=l,n.current.push(s))},[]),o=(0,fe.useCallback)((a,l)=>{t.current[a]&&(delete t.current[a],n.current=n.current.filter(s=>s.name!==a),e([a],{keepValue:l?.keepValue}))},[e]);return[(0,fe.useCallback)(()=>[t.current,n.current],[]),r,o]}var U=require("react/jsx-runtime");function Di(e){let t=e.translations?.[e.lang??""],[n,r,o]=Pi(),[i,a,l]=Ii(n,e.action,{onSuccess:e.onSuccess,validation:e.config.validation.submit,translations:t}),s=e.config.validation.showError&&!a.success&&a.error,c=a.data??e.value;return(0,U.jsxs)(U.Fragment,{children:[s&&ht(e.config.alert,u=>(0,U.jsx)("div",{className:"mb-4 w-full",children:(0,U.jsx)(u,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),(0,U.jsx)(co,{action:i,advanced:e.advanced,config:e.config,control:e.children,definition:e.definition,isPending:l,noValidate:!0,readOnly:e.readOnly,sections:e.sections,children:({disabled:u,fields:m})=>(0,U.jsx)(Ni,{config:e.config,context:e.context,disabled:u,fields:m,style:e.config.style,translations:t,value:c,children:x=>(0,U.jsx)(Ho,{...x,config:e.config,context:e.context,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:c})})})]})}var Li=require("jotai"),nn=require("react/jsx-runtime");function Vi(e){return(0,nn.jsx)(Li.Provider,{children:(0,nn.jsx)(Di,{...e})})}
|