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