react-luna-form 0.0.86 → 0.0.88

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/README.md +15 -10
  2. package/dist/client/cjs/index.js +2 -1
  3. package/dist/client/esm/index.js +2 -1
  4. package/dist/config/cjs/index.js +1 -1
  5. package/dist/config/esm/index.js +1 -1
  6. package/dist/schema/cjs/index.js +1 -1
  7. package/dist/schema/esm/index.js +1 -1
  8. package/dist/server/cjs/index.js +1 -1
  9. package/dist/server/esm/index.js +1 -1
  10. package/dist/types/luna-core/handle/source-event.d.ts +2 -1
  11. package/dist/types/luna-core/handle/value-event.d.ts +2 -1
  12. package/dist/types/luna-core/helper/input.d.ts +16 -7
  13. package/dist/types/luna-core/type.d.ts +15 -4
  14. package/dist/types/luna-core/util/constant.d.ts +4 -0
  15. package/dist/types/luna-core/util/date.d.ts +132 -6
  16. package/dist/types/luna-core/util/extract.d.ts +21 -0
  17. package/dist/types/luna-core/util/format.d.ts +11 -0
  18. package/dist/types/luna-core/util/is-input.d.ts +3 -2
  19. package/dist/types/luna-core/util/pattern.d.ts +28 -0
  20. package/dist/types/luna-core/util/prepare.d.ts +3 -2
  21. package/dist/types/luna-core/util/schema.d.ts +2 -1
  22. package/dist/types/luna-core/util/string.d.ts +7 -0
  23. package/dist/types/luna-react/src/client/component/field/field-list-preview-item.d.ts +3 -3
  24. package/dist/types/luna-react/src/client/component/field/field-preview-item.d.ts +4 -2
  25. package/dist/types/luna-react/src/client/component/field/field-preview-value.d.ts +4 -1
  26. package/dist/types/luna-react/src/client/component/field/field-preview.d.ts +6 -4
  27. package/dist/types/luna-react/src/{component → client/component}/field/field-set-advanced.d.ts +1 -1
  28. package/dist/types/luna-react/src/client/component/field/field-set.d.ts +11 -0
  29. package/dist/types/luna-react/src/client/component/field/field.d.ts +20 -11
  30. package/dist/types/luna-react/src/client/component/field-description.d.ts +2 -0
  31. package/dist/types/luna-react/src/{component → client/component}/formatted-description.d.ts +3 -3
  32. package/dist/types/luna-react/src/client/component/guard/list-guard.d.ts +1 -1
  33. package/dist/types/luna-react/src/client/component/input-strategies.d.ts +10 -2
  34. package/dist/types/luna-react/src/client/component/slot/slot.d.ts +1 -2
  35. package/dist/types/luna-react/src/client/hook/use-entry-atom.d.ts +18 -0
  36. package/dist/types/luna-react/src/client/hook/use-input-core.d.ts +4 -4
  37. package/dist/types/luna-react/src/client/hook/use-latest.d.ts +22 -0
  38. package/dist/types/luna-react/src/client/hook/use-live-item-value.d.ts +17 -3
  39. package/dist/types/luna-react/src/client/hook/use-value.d.ts +1 -1
  40. package/dist/types/luna-react/src/client/lib/error-store.d.ts +3 -4
  41. package/dist/types/luna-react/src/client/lib/host-value-store.d.ts +13 -15
  42. package/dist/types/luna-react/src/client/lib/list-store.d.ts +0 -2
  43. package/dist/types/luna-react/src/client/lib/resolve-value.d.ts +0 -5
  44. package/dist/types/luna-react/src/client/lib/source-store.d.ts +7 -4
  45. package/dist/types/luna-react/src/client/lib/state-store.d.ts +0 -4
  46. package/dist/types/luna-react/src/client/lib/store-helper.d.ts +5 -15
  47. package/dist/types/luna-react/src/client/lib/value-store.d.ts +0 -4
  48. package/dist/types/luna-react/src/component/column.d.ts +4 -2
  49. package/dist/types/luna-react/src/component/description.d.ts +9 -0
  50. package/dist/types/luna-react/src/component/field/field-list.d.ts +2 -3
  51. package/dist/types/luna-react/src/component/field/{field-set.d.ts → field-set-static.d.ts} +1 -1
  52. package/dist/types/luna-react/src/component/field/field.d.ts +4 -4
  53. package/dist/types/luna-react/src/component/field-description.d.ts +5 -4
  54. package/dist/types/luna-react/src/component/form.d.ts +10 -0
  55. package/dist/types/luna-react/src/component/input/input-base.d.ts +3 -3
  56. package/dist/types/luna-react/src/component/input-group.d.ts +4 -2
  57. package/dist/types/luna-react/src/component/input-label.d.ts +4 -2
  58. package/dist/types/luna-react/src/component/slot/list-slot.d.ts +1 -1
  59. package/dist/types/luna-react/src/component/slot/slot-base.d.ts +4 -3
  60. package/dist/types/luna-react/src/component/slot/slot-create.d.ts +2 -3
  61. package/dist/types/luna-react/src/component/slot/slot-list.d.ts +2 -3
  62. package/dist/types/luna-react/src/component/slot/slot.d.ts +1 -2
  63. package/dist/types/luna-react/src/config/index.d.ts +1 -0
  64. package/dist/types/luna-react/src/lib/visibility.d.ts +3 -0
  65. package/dist/types/luna-react/src/server/component/field.d.ts +2 -0
  66. package/dist/types/luna-react/src/server/component/input.d.ts +2 -2
  67. package/dist/types/luna-react/src/server/component/list-slot.d.ts +2 -0
  68. package/dist/types/luna-react/src/server/component/slot.d.ts +14 -0
  69. package/dist/types/luna-react/src/type.d.ts +2 -1
  70. package/docs/events/change.md +4 -1
  71. package/docs/fields/custom-inputs.md +153 -4
  72. package/docs/fields/data-source.md +5 -3
  73. package/docs/fields/input.md +175 -3
  74. package/docs/fields/list.md +1 -1
  75. package/docs/fields/specialized-selectors.md +51 -12
  76. package/docs/forms/submit.md +13 -14
  77. package/docs/index.md +2 -1
  78. package/docs/interpolation/format-filters.md +28 -29
  79. package/docs/interpolation/overview.md +44 -14
  80. package/docs/setup.md +56 -35
  81. package/docs/structure/definition.md +45 -6
  82. package/docs/validation/overview.md +15 -12
  83. package/package.json +5 -5
  84. package/dist/types/luna-react/src/client/component/field/field-with-state.d.ts +0 -13
  85. package/dist/types/luna-react/src/client/hook/use-format.d.ts +0 -5
@@ -1 +1,2 @@
1
- import{createContext as fs}from"react";var gt=fs(null);import{jsx as gs}from"react/jsx-runtime";function dr(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return gs("div",{"data-slot":"field-control",className:"w-full",children:t})}import{jsx as mr}from"react/jsx-runtime";function Ve(e){return mr("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:mr("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{createContext as ps}from"react";var Pe=ps(!1);import{createContext as ys}from"react";var Ye=ys(()=>{});import{use as bs,useCallback as xs}from"react";import{jsx as xn}from"react/jsx-runtime";function Ze({children:e,onReveal:t,visible:n}){let r=bs(Ye),o=xs(()=>{t?.(),r()},[t,r]);return xn("div",{"data-slot":"collapsible-content",hidden:!n,children:xn(Ye,{value:o,children:xn(Pe,{value:!0,children:e})})})}var pt="input",fr="input/date",gr="input/email",pr="input/number",yr="input/time";var br="textarea",xr="radio",hr="checkbox",hn="list",vr="select",Rr="select/active",Sr="select/day",wr="select/month",Ar="select/timezone",Tr="select/year";var Fr="chips",kr="chips/day",Cr="chips/month",qe="column",Nr="description",vn="fields",Ir="label",q="value",yt="options",Rn="email",Er="number",Lr="password",Vr="tel",Ke="text",Pr="aria-errormessage",Or="aria-invalid",Dr="data-invalid",Mr="data-readonly",zr="aria",_r="data",bt="max",$r="maxLength",xt="min",Br="minLength",Oe="$ref",Hr="source",Gr="state",ht="http://luna.internal",Ur="type",Yr={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};import{format as hs,formatDistanceToNow as qr,formatDuration as vs,intervalToDuration as Rs,isValid as Rt,parseISO as Ss}from"date-fns";import{enUS as Kr,es as wn}from"date-fns/locale";function g(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function vt(e){return Array.isArray(e)&&e.every(g)}function B(e){return e==null||e===""}function J(e){return b(e)||typeof e=="number"||Sn(e)}function We(e){return Array.isArray(e)&&e.every(J)}function b(e){return typeof e=="string"}function Zr(e){return g(e)&&"url"in e}function Sn(e){return typeof e=="boolean"}var Wr={en:Kr,"en-US":Kr,es:wn,"es-ES":wn,"es-MX":wn},ws={short:"M/d/yy",medium:"MMM d, yyyy",long:"MMMM d, yyyy",full:"EEEE, MMMM d, yyyy"},As={ms:1,s:1e3,min:6e4,h:36e5,d:864e5};function Xr(e){if(e)return Wr[e]??Wr[e.split("-")[0]]}function St(e){if(typeof e=="number"&&!Number.isNaN(e))return e;if(b(e)&&e.trim()!==""){let t=Number(e);return Number.isNaN(t)?null:t}return null}function jr(e,t,n){let r=As[t];if(r===void 0)return String(e);let o=e*r,i=Rs({start:0,end:o});return vs(i,{locale:n})}function Jr(e){if(e instanceof Date)return Rt(e)?e:null;if(b(e)){let t=Ss(e);if(Rt(t))return t;let n=new Date(e);return Rt(n)?n:null}if(typeof e=="number"){let t=new Date(e);return Rt(t)?t:null}return null}var Ts={currency:(e,t,n)=>{let r=St(e);if(r===null)return String(e);let o=t[0]??"USD";return new Intl.NumberFormat(n.locale,{style:"currency",currency:o}).format(r)},percent:(e,t,n)=>{let r=St(e);return r===null?String(e):new Intl.NumberFormat(n.locale,{style:"percent"}).format(r)},number:(e,t,n)=>{let r=St(e);return r===null?String(e):new Intl.NumberFormat(n.locale).format(r)},date:(e,t,n)=>{let r=Jr(e);if(!r)return String(e);let o=t[0]??"short",i=Xr(n.locale);if(o==="relative")return qr(r,{addSuffix:!0,locale:i});let a=ws[o]??o;return hs(r,a,{locale:i})},duration:(e,t,n)=>{let r=Xr(n.locale);if(typeof e=="number")return jr(e,t[0]??"ms",r);if(b(e)){let i=St(e);if(i!==null)return jr(i,t[0]??"ms",r)}let o=Jr(e);return o?qr(o,{addSuffix:!0,locale:r}):String(e)}};function Qr(e,t,n){let r=t.split(":").map(s=>s.trim()).filter(s=>s.length>0);if(r.length===0)return;let[o,...i]=r,a=Ts[o];if(a)return a(e,i,n)}var oe={error:(...e)=>{An()&&!Tn()&&wt().error("[Luna Form]",...e)},warn:(...e)=>{An()&&!Tn()&&wt().warn("[Luna Form]",...e)},info:(...e)=>{An()&&!Tn()&&wt().info("[Luna Form]",...e)}},An=()=>typeof wt()<"u",Tn=()=>!0,wt=()=>globalThis.console;var Fs=/^\d+$/,ks=new Set(["__proto__","constructor","prototype"]);function Cs(e){return e.split(".").some(t=>ks.has(t))}function De(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function kn(e,t=[],n=q){return We(e)?{value:e}:Array.isArray(t)?t.find(r=>{let o=Cn(r,n);if(o!==void 0&&`${o}`==`${e}`)return r})??{value:e}:{value:e}}function Cn(e,t=q){if(e!=null){if(We(e)||J(e))return e;if(g(e)){let n=Ns(e,t);if(J(n))return n}}}function Ns(e,t){let n=$(e,t);if(J(n))return n}function eo(e,t){if(Array.isArray(e))return e;let n=$(e,t);return Array.isArray(n)?n:null}function $(e,t){if(!t||!g(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(g(r)&&De(r,o))r=r[o];else if(Array.isArray(r)){let i=Number(o);if(!Number.isInteger(i)||i<0||i>=r.length)return null;r=r[i]}else return null;return r}function Nn(e,t={description:Nr,label:Ir,value:q}){return e.map(n=>{if(g(n)){let r=$(n,t.label),o=$(n,t.value);if(J(r)&&J(o)){let i=$(n,t.description);return{label:`${r}`,value:`${o}`,...J(i)&&{description:`${i}`}}}}return n})}function to(e=Ke){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==pt?n.trim().toLowerCase():Ke}function no(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 ro(e){let t={};for(let n of Object.keys(e)){if(Cs(n)){oe.warn(`A field name reaches a prototype and is not submitted: ${n}`);continue}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 s=r[a],l=r[a+1],u=Fs.test(l);De(o,s)||(o[s]=u?[]:{}),o=o[s]}let i=r[r.length-1];o[i]=e[n]}return Fn(t),t}function Fn(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)g(o)&&Fn(o);e[t]=r}else g(n)&&Fn(n)}}var Is=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g,Es=/{([^}]{1,200})}/,Ls=/{([^}]{1,200})}/g,Vs=/^{([^}|]{1,200})}$/;function ie(e,t={},n={}){if(b(e))return Os(e,t,n);if(Array.isArray(e))return e.map(r=>ie(r,t,n));if(g(e)){let r={};for(let o in e)r[o]=ie(e[o],t,n);return r}return e}function oo(e,t={},n={}){if(b(e)){let r=Ps(e,t);if(r!==void 0)return r}return ie(e,t,n)}function Xe(e,t={},n={}){return Ae(e)?ie(e,t,n):e}function Ae(e){return b(e)?Es.test(e):Array.isArray(e)?e.some(t=>Ae(t)):g(e)?Object.values(e).some(t=>Ae(t)):!1}function io(e,t){return t.includes(".")?$(e,t):e[t]}function Ps(e,t){let n=Vs.exec(e);if(!n)return;let r=n[1].trim();if(!r)return;let o=io(t,r);if(g(o)||Array.isArray(o))return o}function Os(e,t={},n={}){return e.replace(Ls,(r,o)=>{let i=String(o).split("|").map(c=>c.trim()),[a,...s]=i;if(!a)return r;let l=io(t,a);if(s.length===0)return J(l)?String(l):r;if(l==null)return r;let u=l;for(let c of s){let y=Qr(u,c,{locale:n.locale});if(y===void 0)return r;u=y}return String(u)})}function ao(e,t){if(!b(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Is.exec(e))!==null;){let[a,s,l]=n,u=n.index;o=!0,u>r&&i.push(e.substring(r,u));let c=t?t(u,l,s):a;i.push(c),r=u+a.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}function In(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===q&&n.push(i),i.action===Hr&&r.push(i),i.action===Gr&&o.push(i);t({sources:r,states:o,values:n})}function so(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(Zr(i)){let a=ie(i.url,e),s=i.body?ie(i.body,e):i.body;n(o,{...i,url:a,body:s})}}}var Te={eq:$s,gt:Us,gte:Ys,in:Hs,lt:Zs,lte:qs,neq:Bs,nin:Gs,contains:Ks,exists:uo,empty:Ws,truthy:Xs},Ds=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,lo=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function Ms(e){return typeof e=="string"&&Ds.test(e)}function zs(e){return typeof e=="string"&&lo.test(e)}function _s(e){let t=e.match(lo);if(t){let[,n,r,o,i,a,s]=t;return new Date(Number(o),Number(r)-1,Number(n),Number(i??0),Number(a??0),Number(s??0)).getTime()}return NaN}function me(e){return Ms(e)?new Date(e).getTime():zs(e)?_s(e):Number(e)}function $s(e,t){return e===t}function Bs(e,t){return e!==t}function Hs(e,t){return Array.isArray(t)&&t.includes(String(e))}function Gs(e,t){return Array.isArray(t)&&!t.includes(String(e))}function Us(e,t){return me(e)>me(t)}function Ys(e,t){return me(e)>=me(t)}function Zs(e,t){return me(e)<me(t)}function qs(e,t){return me(e)<=me(t)}function Ks(e,t){return typeof e=="string"?e.includes(String(t)):Array.isArray(e)?e.map(String).includes(String(t)):!1}function uo(e){return Array.isArray(e)?e.length>0:e!=null&&e!==""}function Ws(e){return!uo(e)}function Xs(e){return Array.isArray(e)?e.length>0:!!e}function Me(e,t){if(t===void 0)return!0;if(b(t)){let n=At(e,q);return Array.isArray(n)?n.length===1&&n[0]===t:n===t}if(Sn(t)){let n=At(e,q);return(Array.isArray(n)?n.length>0:!!n)===t}if(Array.isArray(t)){let n=At(e,q);return Array.isArray(n)?n.some(r=>t.includes(String(r))):t.includes(String(n))}return js(e,t)}function js(e=null,t){let n=At(e,t.field??q),{operator:r="eq",value:o}=t,i=Te[r];return i?i(n,o):!1}function At(e,t){return g(e)?$(e,t):e}function En(e=null,t=[],n){for(let r of t){let{target:o,state:i,when:a}=r,s=Array.isArray(o)?o:[o];if(!e){n(s);continue}let l=Me(e,a);n(s,l?i:void 0)}}function co(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?oo(i,e):void 0,{onlyIfTargetEmpty:r.onlyIfTargetEmpty??!1})}var je=e=>P(Rr)(e),mo=e=>P(Sr)(e),Tt=e=>P(wr)(e),Ft=e=>P(Tr)(e),fo=e=>P(Ar)(e),kt=e=>P(kr)(e),Ct=e=>P(Cr)(e),K=P(fr),ae=P(yr),U=P(hr),Q=P(Fr),se=P(xr),fe=P(pt),ee=P(vr),Ln=P(br),go=P(Ke,Rn,Lr,Vr),po=P(gr,Rn),Je=P(pr,Er);function Nt(e){return se(e)||U(e)}function te(e){return e.type===hn}function le(e){return e.type===qe}function It(e){return e.type!==qe&&e.type!==hn}function ze(e){return ee(e)||se(e)||Q(e)}function yo(e){return fe(e)||Ln(e)}function ge(e){return e.advanced?.keepValue===!0}function E(e){return e!=null&&e!==""}function P(...e){return t=>{let n=b(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function bo(e,t={}){if(ee(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&g(n))return[n]}}function xo(e){return se(e)||U(e)?!0:e.advanced?.horizontal}function ho(e){return U(e)?e.advanced?.reverse!==!1:!1}function vo(e,t){let n=e.readonly??!1;return t||n}function Ro(e,t){return!!e.readonly&&!t&&!e.disabled}function Et(e){let t=e.advanced?.step;if(typeof t=="number"&&Number.isFinite(t)&&t>0)return t}function Lt(e){if(Js(e)){let t=e.source;if(Array.isArray(t)||g(t)&&!(Oe in t))return t}}function So(e){return Array.isArray(Lt(e))}function Js(e){return se(e)||Q(e)||ee(e)&&!e.disabled}import{isValid as Vt,parse as Pt,format as Ot}from"date-fns";var Qs=/^\d+$/,Dt=new Date(2e3,0,1),el=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[],Vn="default";function To(e){if(!e)return Vn;try{return Intl.getCanonicalLocales(e)[0]??Vn}catch{return Vn}}function Pn(e){let t=To(e);return Array.from({length:12},(n,r)=>({value:(r+1).toString(),label:new Date(0,r).toLocaleString(t,{month:"long"})}))}function On(e){let t=To(e);return Array.from({length:7},(n,r)=>({value:r.toString(),label:new Date(2e3,0,2+r).toLocaleString(t,{weekday:"long"})}))}function Fo(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 Dn(){return new Date().getFullYear()}function tl(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function nl(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return Yr[n]??"Other"}function rl(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function wo(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(s=>s.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),a=rl(r,e);return{offset:i,longName:a}}function Ao(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function ko(){let e=new Date,t=tl(),n=new Map,r=Ao(t),{offset:o,longName:i}=wo(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let l of el()){if(l===t)continue;let u=Ao(l),{offset:c,longName:y}=wo(l,e),p={value:l,label:`${u} - ${y} (${c})`},A=nl(l);if(A==="Other")continue;let x=n.get(A);x?x.push(p):n.set(A,[p])}for(let l of n.values())l.sort((u,c)=>u.label.localeCompare(c.label));let s=Array.from(n.entries()).sort(([l],[u])=>l.localeCompare(u)).map(([l,u])=>({label:l,items:u}));return[{label:"Suggested",items:[a]},...s]}function Mn(e,t){if(typeof e=="number")return e;let n=t??Dn(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,a]=o,s=parseInt(a,10);if(!isNaN(s))return i==="+"?n+s:n-s}return n}return Qs.test(r)?parseInt(r,10):n}function Mt(e,t){if(!e)return"";try{let n=Pt(e,t,Dt);return Vt(n)?Ot(n,"yyyy-MM-dd"):""}catch{return""}}function Co(e,t){if(!e)return"";try{let n=Pt(e,t,Dt);return Vt(n)?Ot(n,"HH:mm:ss"):""}catch{return""}}function No(e,t="HH:mm"){if(!e)return"";try{let n=e.split(":").length===3?"HH:mm:ss":"HH:mm",r=Pt(e,n,Dt);return Vt(r)?Ot(r,t):""}catch{return""}}function zt(e,t="MMMM d, yyyy"){if(!e)return"";try{let n=Pt(e,"yyyy-MM-dd",Dt);return Vt(n)?Ot(n,t):""}catch{return""}}function Fe(e){return e.advanced?.format??"HH:mm"}function ue(e){return e.advanced?.format??"MMMM d, yyyy"}var ol={es:{"(Optional)":"(Opcional)","Add item":"A\xF1adir elemento","An unexpected error occurred submitting the form.":"Ocurri\xF3 un error inesperado al enviar el formulario.","Collapse {label} {index}":"Contraer {label} {index}","Expand {label} {index}":"Expandir {label} {index}","Please correct the errors and try again.":"Corrige los errores e int\xE9ntalo de nuevo.","Remove {label} item {index}":"Eliminar {label} {index}","There were validation errors submitting the form.":"Se encontraron errores de validaci\xF3n al enviar el formulario.","Unknown error":"Error desconocido",No:"No",Yes:"S\xED"}};function W(e,t){return N(e,t)}function Eo(e,t){let n=t?.[e??""],r=e?ol[il(e)]:void 0;return r?n?{...r,...n}:r:n}function il(e){return e.toLowerCase().split(/[-_]/)[0]}function N(e,t){return e?t?t[e]??e:e:""}function X(e,t){return e?N(e,t):void 0}function Qe(e,t){if(!t)return e;let n=!1,r=e.map(o=>{let i=al(o,t);return i!==o&&(n=!0),i});return n?r:e}function al(e,t){if(!g(e))return e;let n=Io(e.label,t),r=e.items;if(Array.isArray(r)){let i=Qe(r,t);return i===r&&n===e.label?e:{...e,...n!==void 0&&{label:n},items:i}}let o=Io(e.description,t);return n===e.label&&o===e.description?e:{...e,...n!==void 0&&{label:n},...o!==void 0&&{description:o}}}function Io(e,t){return b(e)?N(e,t):e}var _t=Dn();function Vo(e,t){if(Q(e))return sl(e,t?.lang)}function sl(e,t){if(kt(e))return On(t);if(Ct(e))return Pn(t)}function Po(e,t){if(ee(e))return ll(e,t)}function ll(e,t){let{lang:n,translations:r}=t??{};if(mo(e))return On(n);if(Tt(e))return Pn(n);if(Ft(e)){let o=e.advanced?.length?.min??_t,i=e.advanced?.length?.max??_t+5;return Fo(Mn(o,_t),Mn(i,_t))}if(fo(e))return ko();if(je(e))return Qe([{value:"true",label:"Yes"},{value:"false",label:"No"}],r)}function Oo(e,t=!1,n){let r={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return fe(e)?{...r,...ul(e)}:ee(e)?{...r,...Do(Po(e,n))}:Ln(e)?{...r,...ml(e)}:Q(e)?{...r,...dl(e,n)}:r}function ul(e){let t=to(e.type),n={...e,type:t};return{...gl(e),...Mo(e),...fl(n),...cl(n),...go(n)?zo(n):{},type:t}}function cl(e){let t=Et(e);return Je(e)&&t!==void 0?{step:t}:{}}function Do(e){return e?{options:e}:{}}function dl(e,t){let n=Do(Vo(e,t)),r=e.advanced?.multiple??!0;return{...n,multiple:r}}function ml(e){return{...Mo(e),...zo(e)}}function Mo(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function fl(e){return Je(e)?pl(e):{}}function gl(e){if(ae(e)){let t=Fe(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function zo(e){return _o(e,{min:Br,max:$r})}function pl(e){return _o(e,{min:xt,max:bt})}function _o(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 $o(e,t){let n=Lt(e);return n||bo(e,t)}function yl(e,t){let n=g(t)&&e.name in t?t[e.name]:t,r=Cn(n,e.advanced?.entity),o=E(r)?r:e.defaultValue;return ae(e)&&E(o)?bl(e,o):K(e)&&E(o)?Rl(e,o):o}function bl(e,t){let n=Fe(e);return b(t)?Co(t,n):t}function xl(e,t,n){return ze(e)&&Array.isArray(n)?{...t,[yt]:n}:t}function hl(e,t,n){if(e.required&&!E(n)&&ee(e)&&e.advanced?.preselected!==!1&&yt in t){let r=t[yt];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function vl(e,t,n){if(ze(e)&&Array.isArray(t)){let r=Nn(t,e.advanced?.options);return So(e)?Qe(r,n):r}return t}function Bo(e,t,n,r,o){let i=yl(e,r),a=Array.isArray(n)?vl(e,n,o):n,s=xl(e,t,a),l=hl(e,s,i);return{commonPropsWithOptions:s,defaultValue:l}}function Ho(e,t){return U(e)?{checked:!!t}:Q(e)?{value:Array.isArray(t)?t:[]}:K(e)&&b(t)&&E(t)?{value:zt(t,ue(e))}:je(e)?{value:E(t)?String(t):""}:{value:t??""}}function Rl(e,t){let n=ue(e);return b(t)?Mt(t,n):t}function Go(e,t){let n=e??t;return n?{"data-format":n}:{}}function Lo(e){let t=[];for(let n of e){if(typeof n=="string"){t.push(n);continue}g(n)&&"value"in n&&"label"in n&&b(n.value)&&b(n.label)&&t.push({label:n.label,value:n.value})}return t}function Uo(e,t){if(!ze(e))return;let n=Q(e)?Vo(e,t):Po(e,t);if(Array.isArray(n)){let o=Lo(n);return o.length>0?o:void 0}let r=Lt(e);if(Array.isArray(r)){let o=Nn(r,e.advanced?.options),i=Lo(Qe(o,t?.translations));return i.length>0?i:void 0}}function Yo(e,t){let n=String(e);for(let r of t)if(typeof r=="string"){if(r===n)return r}else if(r.value===n)return r.label;return n}var Sl=/^#\/definition\//;function Bt(e=[],t){let n=$t(e,t);return Array.isArray(n)?n.filter(Al).sort((r,o)=>Zo(r)-Zo(o)):[]}function $t(e,t,n=new Map,r=new WeakSet){if(!wl(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=>$t(i,t,n,r));if(Oe in e&&b(e[Oe])){let i=e[Oe].replace(Sl,""),a=$(t,i);return a!==null?$t(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=$t(a,t,n,r);return r.delete(e),n.set(e,o),o}function qo(e){return Object.entries(e??{})}function Zo(e){return e.order??Number.MAX_VALUE}function wl(e){return e!==void 0&&g(e)&&Object.keys(e).length>0}function Al(e){return Ur in e?!0:Array.isArray(e[vn])?e[vn].length>0:!0}function Ko(e,t){let n={};for(let[r,o]of qo(t))n[`${e}-${r}`]=o;return n}function Tl(e){return Ko(zr,e)}function Fl(e){return Ko(_r,e)}function Wo(e,t){let n=Tl(e.advanced?.aria);return t&&t.length>0&&(n[Or]="true",n[Pr]=`${e.name}-error`),n}function Xo(e){return Fl(e.advanced?.data)}var jo={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Jo={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function Qo(e,t=2){return jo[e&&e in jo?e:t]}function ei(e){if(e&&e in Jo)return Jo[e]}function zn(e){return{min:e.advanced?.length?.min??1,max:e.advanced?.length?.max??1/0}}function Ht(e){let t=[];for(let n of e)if(le(n))for(let r of n.fields)t.push(r);else t.push(n);return t}function kl(e,t){let n=t?$(t,e.name):null;return ii(e,Array.isArray(n)?n.length:0)}function ti(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===qe}function ni(e,t){let n=kl(e,t);return Array.from({length:n},(r,o)=>o)}function ri(e){return e.advanced?.title??e.label??e.name}function oi(e){let t={};for(let n of Ht(e))te(n)||(t[n.name]=n);return t}function ii(e,t){let{min:n,max:r}=zn(e);return Math.min(Math.max(t,n),r)}function _n(e,t){let n=Ht(e.fields),r=ii(e,t.length),o=[];for(let i=0;i<r;i++){let a=t[i],s={};for(let l of n){let u=a?.[l.name];s[l.name]=te(l)?_n(l,vt(u)?u:[]):u}o.push(s)}return o}function Gt(e,t){if(!e.includes("/"))return e;let[n,r]=e.split("/"),o=new RegExp(`(^|.*\\.)(${n}\\.\\d+\\.)`),i=t.match(o);return i?`${i[0]}${r}`:r}import{z as I}from"zod";var Cl=[[U,ai],[po,Nl],[Je,Ll],[se,Il],[je,ai],[Tt,Pl],[Ft,Vl],[Q,Bn],[kt,Bn],[Ct,Bn]];function ci(e,t=[],n){let r=I.object(e);if(t.length===0)return r;let o=$l(r,t,n);return Gl(o,t,n)}function di(e){let t={},n=I.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function mi(e,t){for(let[n,r]of Cl)if(n(e))return r(e,t);return El(e,t)}function Yt(e){return e.nullable().optional()}function Nl(e,t){let n=I.string().trim();if(e.required){let r=pe(e,t),o=n.min(1,r).pipe(li(e,t));return I.preprocess(i=>B(i)?"":i,o)}return Yt(n.pipe(li(e,t)).or(I.literal("")))}function ai(e,t){let n=I.preprocess(r=>{if(typeof r=="string"){if(r==="true")return!0;if(r==="false")return!1}return r},I.coerce.boolean());return e.required?(U(e)?n=n.refine(r=>r===!0,{message:pe(e,t)}):n=n.refine(r=>typeof r=="boolean",{message:pe(e,t)}),I.preprocess(r=>r===null?!1:r,n)):n.nullable()}function Il(e,t){let n=I.coerce.string();return e.required?(n=n.min(1,pe(e,t)),I.preprocess(r=>B(r)?"":r,n)):Yt(n.or(I.literal("")))}function El(e,t){let n=I.coerce.string().trim();return n=fi(n,e,t),e.required?(n=Ml(n,e,t),I.preprocess(r=>B(r)?"":r,n)):Yt(n)}function Ll(e,t){let n=fi(I.coerce.number(),e,t);return Hn(Ol(n,e,t),e,t)}function Vl(e,t){return Hn(I.coerce.number().int(),e,t)}function Pl(e,t){let n=pe(e,t),r=I.coerce.number().int().min(1,n).max(12,n);return Hn(r,e,t)}function si(e){return e===null||e===""?void 0:e}function Hn(e,t,n){if(!t.required)return I.preprocess(si,Yt(e));let r=pe(t,n);return I.preprocess(si,I.unknown().refine(o=>o!==void 0,{message:r}).pipe(e))}function Ol(e,t,n){let r=X(t.validation?.step,n),o=Et(t);if(o===void 0)return e.int(r);let i=t.advanced?.length?.min??0;return e.refine(a=>Dl(a,o,i),{message:r??(i===0?`Invalid number: must be a multiple of ${o}`:`Invalid number: must be ${i} plus a multiple of ${o}`)})}function Dl(e,t,n){let r=10**Math.max($n(e),$n(t),$n(n));return Math.round((e-n)*r)%Math.round(t*r)===0}function $n(e){let[t,n="0"]=String(e).split("e"),r=t.split(".")[1]?.length??0;return Math.max(0,r-Number(n))}function li(e,t){let n=e.validation?.email?N(e.validation?.email,t):void 0;return I.email(n)}function fi(e,t,n){return e=zl(e,t,n),e=_l(e,t,n),e}function Ml(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,pe(t,n)):e}var zl=(e,t,n)=>gi(e,t,xt,n),_l=(e,t,n)=>gi(e,t,bt,n);function gi(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?N(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function $l(e,t=[],n){let r=Hl(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:s}of r)if(!Bl(o,a,s)){let l=N(s.message,n);i.addIssue({code:"custom",message:l,path:[a]})}})}function Bl(e,t,n){let r=n.operator??"eq",o=Te[r];return o?o(Ut(e,t),Ut(e,n.field)):!1}function Hl(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 pi(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let s=a.operator??"eq",l=Te[s];if(l&&!l(e,n(a.field))&&a.message){let u=N(a.message,r);o.push(u)}}return o}function pe(e,t){return e.validation?.required?N(e.validation?.required,t):void 0}function Bn(e,t){let n=I.array(I.string());return e.required&&(n=n.min(1,pe(e,t))),I.preprocess(r=>B(r)?[]:Array.isArray(r)?r.map(String):[String(r)],n)}function Gl(e,t=[],n){let r=t.filter(Ul);return r.length===0?e:e.superRefine((o,i)=>{let a=g(o)?o:{};for(let s of r)for(let l of Yl(a,s,n))i.addIssue({code:"custom",path:l.path,message:l.message})})}function Ul(e){let t=e.validation;return t!==void 0&&(t.requiredWhen!==void 0||t.pattern!==void 0||t.rules!==void 0)}function Yl(e,t,n){let r=[],o=Ut(e,t.name),i=t.validation?.requiredWhen;if(i){let l=(Array.isArray(i)?i:[i]).find(u=>et(e,u));l&&!Gn(o)&&r.push({path:[t.name],message:X(l.message??t.validation?.required,n)})}let a=t.validation?.pattern;a&&!yi(a,o)&&r.push({path:[t.name],message:X(a.message,n)});for(let s of t.validation?.rules??[])Zl(e,s.when)&&!ql(s,o)&&r.push({path:[t.name],message:X(s.message,n)});return r}function et(e,t){let n=Te[t.operator??"eq"];return n?n(Ut(e,t.field),t.value):!1}function Ut(e,t){return t in e?e[t]:$(e,t)??void 0}function Zl(e,t){if(!t)return!0;if(Array.isArray(t))return t.every(o=>et(e,o));if("field"in t)return et(e,t);let n=t.all?t.all.every(o=>et(e,o)):!0,r=t.any?t.any.some(o=>et(e,o)):!0;return n&&r}function ql(e,t){switch(e.assert){case"required":return Gn(t);case"minItems":return Array.isArray(t)&&t.length>=Number(e.value);case"maxItems":return Array.isArray(t)&&t.length<=Number(e.value);case"min":return ui(t)>=Number(e.value);case"max":return ui(t)<=Number(e.value);case"oneOf":return Array.isArray(e.value)&&e.value.map(String).includes(String(t));case"pattern":return Xl(e.value)?yi(e.value,t):!0;default:return!0}}function yi(e,t){if(!Gn(t)||typeof t!="string"||e.allowInterpolation&&(Ae(t)||Wl(t)))return!0;let n=Kl(e);return n!==null&&n.test(t)}function Kl({regex:e,flags:t}){try{return new RegExp(e,t)}catch(n){return oe.error(`A validation pattern does not compile, so it holds back every value: /${e}/${t??""}`,n),null}}function Wl(e){return b(e)&&e.trimStart().startsWith("@")}function Gn(e){return b(e)?e.trim().length>0:Te.exists(e,void 0)}function ui(e){return typeof e=="number"?e:b(e)||Array.isArray(e)?e.length:0}function Xl(e){return g(e)&&"regex"in e}function bi(e,t){if(!t||!Jl(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||jl(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 jl(e){return e==="https"?"443":"80"}function Jl(e){return/^(https?:)?\/\//.test(e)}function xi(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,ht);new URL(t,ht).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(ht,""):o}catch{return t||e}}function hi(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=xi(t.url,n.url),o=Ql(t,n),i=eu(t,n);return{...t,...n,url:r,body:o,headers:i}})}function Ql(e,t){return g(t.body)&&g(e?.body)?{...e.body,...t.body}:t.body??e?.body}function eu(e,t){return g(t.headers)&&g(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function Zt(e,t){let n={...e};for(let r of Object.keys(t??{})){let o=t?.[r];o!==void 0&&(n[r]=o)}return n}var tu={uppercase:e=>e.toUpperCase(),lowercase:e=>e.toLowerCase(),"remove-space":e=>e.replace(/\s+/g,""),"remove-accent":e=>e.normalize("NFD").replace(/[\u0300-\u036f]/g,"")};function tt(e,t){return!t||!b(e)||B(e)?e:(Array.isArray(t)?t:[t]).reduce((r,o)=>{let i=tu[o];return i?i(r):r},e)}import{jsx as nu}from"react/jsx-runtime";function ce(e){return ao(e,(t,n,r)=>nu("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}import{useCallback as vi,useState as ru}from"react";function _e(e=!1){let[t,n]=ru(e),r=vi(()=>n(i=>!i),[]),o=vi(()=>n(!0),[]);return[t,r,o]}import{jsx as nt,jsxs as Un}from"react/jsx-runtime";function Ri(e){let{fields:t=[]}=e.section,[n,r,o]=_e();return Un("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:[nt("legend",{children:Un("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-zinc-600 dark:text-zinc-400",onClick:r,type:"button",children:[nt(Ve,{expanded:n}),nt("span",{children:ce(e.title)})]})}),nt(Ze,{onReveal:o,visible:n,children:Un("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-zinc-300 pl-4 dark:border-zinc-600","data-slot":"field-set-content",children:[e.description&&nt("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:ce(e.description)}),e.group]})})]})}import{jsx as qt,jsxs as Si}from"react/jsx-runtime";function wi(e){let t=Si("div",{className:"flex flex-col",children:[e.title&&qt("legend",{className:"mb-3 font-medium text-zinc-800 dark:text-zinc-200",children:ce(e.title)}),e.description&&qt("p",{className:"-mt-2 text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:ce(e.description)})]});return e.step?Si("div",{className:"flex flex-row items-start gap-4",children:[qt("div",{className:"bg-primary text-primary-foreground flex size-6 shrink-0 items-center justify-center rounded-full",children:qt("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}import{jsx as Ai,jsxs as ou}from"react/jsx-runtime";function Kt(e){return ou("fieldset",{className:"flex w-full min-w-0 flex-col data-[empty=false]:gap-6","data-empty":e.empty,"data-slot":"field-set",id:e.id,children:[Ai(wi,{description:e.description,step:e.step,title:e.title}),Ai("div",{className:"w-full min-w-0",children:e.children})]})}import{jsx as iu}from"react/jsx-runtime";function ye(e){return iu("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 Yn}from"react/jsx-runtime";function Ti(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=Zt(e.style,{compact:e.section.advanced?.compact}),o=Yn(ye,{compact:r,children:e.children});if(!e.section.title&&!e.section.description)return o;let i=X(e.section.title,e.translations),a=X(e.section.description,e.translations);return e.section.advanced?.collapsible?Yn(Ri,{description:a,group:o,section:e.section,title:i}):Yn(Kt,{description:a,empty:t.length===0,id:e.section.id?.toString(),step:n,title:i,children:o})}import{jsx as Fi}from"react/jsx-runtime";function ki(){return Fi("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:Fi("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-zinc-200 dark:bg-zinc-800"})})}import{useAtomValue as cu}from"jotai";import{atom as be}from"jotai";import{atomFamily as Ci}from"jotai-family";import{deepEqual as Zn}from"fast-equals";function rt(e,t){let{[t]:n,...r}=e;return r}function au(e){return Ci(t=>be(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];Zn(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,rt(i,t))}))}function su(e){return be(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function lu(e){return be(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let s of r)s in i&&(delete i[s],a=!0);a&&n(e,i)})}function Ni(e){return be(null,(t,n,r)=>{for(let o of r)e.remove(o)})}function uu(e){return be(null,(t,n,r)=>{let o=t(e);Zn(o,r)||n(e,r)})}function Ii(e,t={}){let{merge:n,validateTarget:r}=t;return Ci(o=>be(i=>{let a=i(e)[o];if(a&&n)return n(Object.values(a))},(i,a,s,l)=>{if(r&&!r(s))return;let u=i(e),c={...u[s]??{}};if(l!=null){let y=c[o];(!y||!Zn(y,l))&&(c[o]=l,a(e,{...u,[s]:c}))}else o in c&&(delete c[o],Object.keys(c).length===0?a(e,rt(u,s)):a(e,{...u,[s]:c}))}))}function Ei(e){return Ni(e)}function Li(e){return be(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let s of r)s in i&&(delete i[s],a=!0);for(let s in i){let l={...i[s]},u=!1;for(let c of r)c in l&&(delete l[c],u=!0,a=!0);u&&(Object.keys(l).length===0?delete i[s]:i[s]=l)}a&&n(e,i)})}function de(e={}){let t=be(e),n=au(t);return{atom:t,clearAll:su(t),clear:lu(t),bulkReport:uu(t),release:Ni(n),report:n}}var qn=de(),Wt=qn.atom,Vi=qn.release,Xt=qn.report;function du(e,t){return e.fields.every(n=>Pi(n,t))}function Pi(e,t){return t[e.name]?.hidden??e.hidden??!1}function mu(e,t){return le(e)?du(e,t):Pi(e,t)}function jt(e){let t=cu(Wt);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>mu(r,t))?null:e.children}import{jsx as ot,jsxs as Oi}from"react/jsx-runtime";function Di(e){let t=Bt(e.sections,e.definition);return ot("div",{className:"h-full w-full",children:ot("form",{noValidate:e.noValidate,action:e.action,onSubmit:e.onSubmit,children:Oi(ye,{children:[t.map((n,r)=>Oi(jt,{fields:n.fields??[],children:[ot(Ti,{advanced:e.advanced,section:n,step:r+1,style:e.config.style,translations:e.translations,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.advanced?.separator&&ot(ki,{})]},`key-${n.id}-${r}`)),e.control&&ot(dr,{isPending:e.isPending,children:e.control})]})})})}import{jsx as fu}from"react/jsx-runtime";function Mi(e){return fu("p",{className:"-mt-2 text-xs leading-normal font-normal text-zinc-600 dark:text-zinc-400 [[data-slot=column]_&]:md:line-clamp-2",title:e.title,children:e.children})}import{jsx as zi,jsxs as _i}from"react/jsx-runtime";function Jt(e){let t={context:e.context,env:e.config?.env,value:e.value},r={locale:e.config?.env?.locale},[o,i]=_e(()=>g(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),a=g(e.text)&&b(e.text.title)?ce(N(Xe(e.text.title,t,r),e.translations)):void 0,s=N(Xe(b(e.text)?e.text:e.text?.message,t,r),e.translations),l=ce(s);return l?_i("div",{className:"flex flex-col gap-2",children:[a&&_i("button",{className:"flex items-center gap-1 text-left text-xs font-medium text-zinc-700 hover:text-zinc-900 dark:text-zinc-300 dark:hover:text-zinc-100",onClick:i,type:"button",children:[a,zi(Ve,{expanded:o})]}),o&&zi(Mi,{title:s,children:l})]}):null}import{atom as $i}from"jotai";var it=de(),H=it.atom,Bi=it.clearAll,Hi=it.clear,Gi=it.release,xe=it.report,Kn=$i({}),Wn=$i(null);import{useAtomValue as Ui}from"jotai";import{jsx as gu}from"react/jsx-runtime";function Qt(e){let t=Ui(xe(e.field.name)),r=Ui(Xt(e.field.name))?.description??e.field.description;return gu(Jt,{config:e.config,context:e.context,text:r,translations:e.translations,value:t})}import{twMerge as pu}from"tailwind-merge";import{jsx as Yi,jsxs as yu}from"react/jsx-runtime";function Zi(e){let t=e.style?.showOptionalLabel??!0,n=se(e.field)||U(e.field);return yu("label",{"data-slot":"field-label","data-normal":n,className:pu("flex w-fit items-center text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal [[data-slot=column]_&]:md:w-full","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,title:b(e.children)?e.children:void 0,children:[Yi("span",{className:"[[data-slot=column]_&]:md:truncate",children:e.children}),t&&!e.field.required&&Yi("span",{className:"ml-2 flex-shrink-0 text-sm text-zinc-600 dark:text-zinc-400",children:W("(Optional)",e.translations)})]})}import{jsx as qi,jsxs as bu}from"react/jsx-runtime";function Ki(e){let t={context:e.context,env:e.config?.env},n=e.config?.env?.locale,r=Xe(e.field.label,t,{locale:n});return bu("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[qi(Zi,{field:e.field,style:e.config?.style,translations:e.translations,children:N(r,e.translations)}),e.horizontal===!0&&qi(Qt,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}import{Fragment as xu,jsx as Wi,jsxs as hu}from"react/jsx-runtime";function Xi(e){return hu(xu,{children:[e.field.name&&e.field.label&&Wi(Ki,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&Wi(Qt,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}function en(e,t){return e?t(e):null}import{useCallback as Hu,useEffect as Gu,useRef as Uu}from"react";import{atom as ji}from"jotai";import{atomFamily as vu}from"jotai-family";var at={found:!1,value:void 0};function st(e,t){if(!Array.isArray(t)&&De(t,e))return{found:!0,value:t[e]};if(!e.includes("."))return at;let n=e.split("."),r=t;for(let o of n){if(r==null)return at;if(Array.isArray(r)){let i=Number(o);if(!Number.isInteger(i)||!De(r,o))return at;r=r[i]}else if(g(r)){if(!De(r,o))return at;r=r[o]}else return at}return{found:!0,value:r}}function ne(e,t){return st(e,t).value}var Ji=ji(null),Qi=Ji,Xn=Symbol("host-value-missing");function jn(e){return e===Xn?{found:!1,value:void 0}:{found:!0,value:e}}var Jn=vu(e=>ji(t=>{let n=t(Ji);if(!n)return Xn;let r=st(e,n);return r.found?r.value:Xn}));import{createContext as Ru}from"react";var Su=e=>e,he=Ru(Su);import{use as wu,useCallback as Au}from"react";import{useAtomValue as Tu,useStore as Fu}from"jotai";function ea(e){return wu(he)(e)}function tn(e){let t=ea(e);return jn(Tu(Jn(t)))}function ta(e){let t=ea(e),n=Fu();return Au(()=>jn(n.get(Jn(t))),[n,t])}var nn=de(),na=nn.clear,ra=nn.release,oa=nn.bulkReport,rn=nn.report;var ia=de(),on=ia.atom,aa=ia.report,sa=de(),lt=sa.atom,la=sa.report;import{use as Vu,useCallback as ma,useRef as ut,useTransition as Pu}from"react";import{use as ku,useEffect as ua,useEffectEvent as Cu,useMemo as Nu}from"react";function ca(e,t,n,r){let{name:o}=e,i=Nu(()=>mi(e,r),[e,r]),s=ku(Pe)||ge(e);ua(()=>{o&&t(o,i,e)},[o,i,e,t]);let l=Cu(u=>{u&&n(u,{keepValue:s})});return ua(()=>()=>{l(o)},[o]),i}import{useSetAtom as $e,useStore as Ou}from"jotai";import{useCallback as Iu,useEffect as Eu,useRef as Lu}from"react";function da(){let e=Lu(null);return Eu(()=>()=>{e.current&&clearTimeout(e.current)},[]),Iu((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}function Du(e){return document.activeElement?.getAttribute("name")===e}function fa(e,t){let n=Ou(),r=e.field.advanced?.entity,o=da(),[,i]=Pu(),a=Vu(he),{setValue:s,value:l,setSource:u}=t,c=ut(l);c.current=l;let y=ut(e.translations);y.current=e.translations;let p=Nt(e.field),A=$e(H),x=$e(Wt),S=$e(rn(e.field.name)),T=$e(Kn),k=$e(Wn),L=$e(on),G=ca(e.field,e.onRegister,e.onUnmount,e.translations),V=N(e.commonProps.placeholder,e.translations),D={...e.commonProps,placeholder:V};function M(d){let f=e.getField(d);return f?{hidden:f.hidden,keepValue:ge(f)}:n.get(lt)[d]}function Z(d){let f=e.getField(d);if(f&&fe(f)){let m=f.advanced?.transform;if(m)return m}}function z(d,f){if(!e.onValueChange)return;let m=e.getField(d);m&&e.onValueChange({name:a(d),type:m.type,value:f})}function _(d,f){A(m=>({...m,[d]:f})),T(m=>({...m,[d]:f})),z(d,f)}function Ne(d){let f=n.get(H),m=Object.keys(f).filter(v=>d.some(F=>v===F||v.startsWith(`${F}.`)));if(m.length===0||(A(v=>m.reduce((F,w)=>rt(F,w),v)),!e.onValueChange))return m;for(let v of m)z(v,void 0);return m}function re(d,f,m,v){let F=f.map(C=>Gt(C,d));x(C=>m?F.reduce((j,O)=>({...j,[O]:m}),C):F.reduce((j,O)=>rt(j,O),C));let w=F.filter(C=>{if(m!==void 0&&m.hidden!==!0)return!1;let j=M(C);return j?.keepValue===!0?!1:m?.hidden===!0||j?.hidden===!0});w.length>0&&Re(Ne(w),v)}function Re(d,f){for(let m of d){if(f.has(m))continue;f.add(m);let v=e.getField(m)?.event?.change;v&&In(v,({states:F})=>{En(null,F,(w,C)=>{re(m,w,C,f)})})}}let Ie=ut(null);Ie.current=d=>{if(e.field.advanced?.transient)return;let f=fe(e.field)?tt(d,e.field.advanced?.transform):d;s(f),e.onValueChange&&e.onValueChange({name:a(e.field.name),type:e.field.type,value:f})};let Se=ut(null);Se.current=d=>{let f=e.field.event?.change;f&&In(f,({sources:m,states:v,values:F})=>{i(()=>{so(d,m,(w,C)=>{u(Gt(w,e.field.name),C)}),En(d,v,(w,C)=>{re(e.field.name,w,C,new Set([e.field.name]))})}),co(d,F,(w,C,j)=>{let O=Gt(w,e.field.name);if(n.get(lt)[O]){vt(C)&&L(bn=>({...bn,[O]:C}));return}let Ee=Z(O),Le=Ee?tt(C,Ee):C,yn=n.get(H)[O];if(j.onlyIfTargetEmpty&&!B(yn)){let bn=n.get(Kn)[O];if(!Object.is(bn,yn))return}if(Le!==yn){if(Du(O)){k({target:O,value:Le});return}_(O,Le)}})})};let we=ma(d=>{let m=G.safeParse(d).error?.issues.map(w=>w.message)??[],v=e.field.validation?.custom,F=v?pi(d,v,w=>n.get(xe(w)),y.current):[];S([...m,...F])},[e.field.validation?.custom,G,S,n]),h=ut(null);h.current=()=>{let d=n.get(Wn);d?.target===e.field.name&&(k(null),B(n.get(H)[d.target])&&_(d.target,d.value))};let R=ma(d=>{if(!p){let f=d.target.value;e.config.validation.blur&&we(f)}h.current?.()},[p,e.config.validation.blur,we]);return{applyChangeEventsRef:Se,commonProps:D,entity:r,hasClickable:p,onBlur:R,onValueChangeRef:Ie,setTimeoutRef:o,validated:we,valueRef:c}}import{deepEqual as Mu}from"fast-equals";import{useAtom as zu}from"jotai";import{useCallback as _u,useEffect as $u,useRef as Bu,useEffectEvent as ga}from"react";function pa(e){let{name:t}=e,n=Bu(!1),[r,o]=zu(xe(t)),{found:i,value:a}=tn(t),s=ga((c,y=!1)=>{let p=fe(e)?tt(c,e.advanced?.transform):c;!y&&!Mu(r,p)&&(n.current=!0),o(p)}),l=ga((c,y)=>{if(E(y)){s(y);return}if(E(e.defaultValue)){s(e.defaultValue,!0);return}c&&s(y)});$u(()=>{l(i,a)},[i,a,e.defaultValue]);let u=_u(()=>n.current?(n.current=!1,!0):!1,[]);return{setValue:o,shouldSkipOnChange:u,value:r}}import{Fragment as Zu,jsx as Be,jsxs as qu}from"react/jsx-runtime";function ya(e){let{useSource:t,useExtraProps:n,getValue:r,shouldSkipChange:o,dispatchChange:i,buildInitialSelected:a,isInitialReady:s}=e.strategies,{setValue:l,shouldSkipOnChange:u,value:c}=pa(e.field),{data:y,setSource:p,isStaticSource:A}=t(e.field,e.config,c),{applyChangeEventsRef:x,commonProps:S,entity:T,hasClickable:k,onBlur:L,onValueChangeRef:G,setTimeoutRef:V,validated:D,valueRef:M}=fa(e,{setValue:l,value:c,setSource:p}),{getField:Z}=e,z=n?.(e.field),_=Uu(!1),{found:Ne}=tn(e.field.name),re=ta(e.field.name),{commonPropsWithOptions:Re,defaultValue:Ie}=Bo(e.field,S,y,c,A?e.translations:void 0),Se=Ho(e.field,Ie);Gu(()=>{_.current||queueMicrotask(()=>{if(_.current)return;let{found:R,value:d}=re();if(!(R||E(e.field.defaultValue)))return;if(!e.field.event?.change){_.current=!0;return}let m=R?d:void 0,v=E(m)?m:e.field.defaultValue;E(v)&&s(e.field,v,y)&&(_.current=!0,Z(e.field.name)&&x.current?.(a(v,y,T)))})},[x,a,y,T,Z,Ne,s,e.field,re]);let we=Hu(R=>{let d=r(R,e.field);o({field:e.field,shouldSkipOnChange:u,hasClickable:k,inputValue:d,valueRef:M})||(G.current?.(d),e.config.validation.change&&D(d),e.field.event?.change&&i({applyChangeEventsRef:x,data:y,entity:T,inputValue:d,setTimeoutRef:V}))},[x,y,i,T,r,k,G,e.config.validation.change,e.field,V,o,u,D,M]),h=e.readOnly?{...Re,name:void 0}:Re;return en(e.config.inputs[e.field.type],R=>qu(Zu,{children:[Be(Xi,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:Be(R,{...h,...e.ariaAttributes,...e.dataAttributes,...z,...Se,onBlur:L,onChange:we})}),e.readOnly&&Be(Yu,{name:e.field.name,...Se})]}))}function Yu(e){return e.checked!==void 0?Be("input",{name:e.name,type:"hidden",value:String(e.checked)}):Array.isArray(e.value)?e.value.map((t,n)=>Be("input",{name:e.name,type:"hidden",value:String(t)},n)):Be("input",{name:e.name,type:"hidden",value:e.value==null?"":String(e.value)})}import{jsx as Ku}from"react/jsx-runtime";function He(e){return function(n){return Ku(ya,{...n,strategies:e})}}function ba(e){let t=K(e)?ue(e):null,n=ae(e)?Fe(e):null;return{dateFormat:t,timeFormat:n}}import{atom as Wu}from"jotai";var Xu=e=>{let t=hi(e);if(t)return t},ju=e=>e.trim()!=="",xa=Wu({}),ct=Ii(xa,{merge:Xu,validateTarget:ju}),ha=Li(xa),va=Ei(ct);import{useSetAtom as Ju}from"jotai";function an(e){return{data:null,setSource:Ju(ct(e.name))}}var Ra=He({useSource:an,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=ba(e);return Go(t,n)},getValue:(e,t)=>{let n=e.target.value;if(!b(n))return n;let r=ae(t)?Fe(t):null;if(r!==null)return No(n,r);let o=K(t)?ue(t):null;return o!==null&&zt(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)=>E(t)});import{deepEqual as nc}from"fast-equals";import{useAtom as tc}from"jotai";import Qu from"swr";function Sa(e=null,t,n=!1){let{data:r,error:o}=Qu(ec(e,t,n),t.fetcher.provider);if(o&&oe.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return eo(r,e.namespace)}return null}function ec(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!Ae(e.url)){if(bi(e.url,t.fetcher.remotePatterns))return e;oe.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function wa(e,t,n){let r=$o(e,n),[o,i]=tc(ct(e.name)),a=o??r,s=Sa(a,t,e.disabled),l=Array.isArray(a);return[s,i,l]}function rc(e,t,n){let[r,o,i]=wa(e,t,n);return{data:r,setSource:o,isStaticSource:i}}function oc(e,t){return ee(e)&&t===""}var Aa=He({useSource:rc,getValue:e=>e.target.value,shouldSkipChange:({field:e,shouldSkipOnChange:t,hasClickable:n,inputValue:r,valueRef:o})=>oc(e,r)||!n&&t()&&(!r||nc(r,o.current)),dispatchChange:({applyChangeEventsRef:e,data:t,entity:n,inputValue:r})=>{e.current?.(kn(r,t,n))},buildInitialSelected:(e,t,n)=>kn(We(e)?e:String(e),t,n),isInitialReady:(e,t,n)=>(!ze(e)||!!n&&n.length>0)&&E(t)});var Ta=He({useSource:an,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)=>E(t)});import{jsx as Qn}from"react/jsx-runtime";function Fa(e){return K(e.field)||ae(e.field)?Qn(Ra,{...e}):yo(e.field)?Qn(Ta,{...e}):Qn(Aa,{...e})}import{use as ka,useEffect as ic}from"react";import{jsx as er}from"react/jsx-runtime";function Ca(e){return!e.errors||e.errors.length===0?null:er(ac,{errors:e.errors,name:e.name})}function ac(e){let t=ka(Ye),n=ka(gt);return ic(()=>{n&&t()},[n,t]),er("ul",{className:"text-sm text-red-600 dark:text-red-500",id:e.name?`${e.name}-error`:void 0,children:e.errors.map((r,o)=>er("li",{children:r},e.name?`${e.name}-error-${o}`:o))})}import{twMerge as sc}from"tailwind-merge";import{jsx as lc}from"react/jsx-runtime";function sn(e){let t=e.errors&&e.errors.length>0;return lc("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Dr]:"true"},...e.disabled&&{[Mr]:"true"},"data-orientation":e.orientation,className:sc("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 uc}from"tailwind-merge";import{jsx as cc}from"react/jsx-runtime";function Na(e){return cc(sn,{...e,orientation:"vertical",className:uc("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as dc}from"tailwind-merge";import{jsx as mc}from"react/jsx-runtime";function Ia(e){return mc(sn,{...e,orientation:"horizontal",className:dc("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 Ea}from"react/jsx-runtime";function La(e){let t=Nt(e.field),n=U(e.field),r=ho(e.field);return e.horizontal?Ea(Ia,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):Ea(Na,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function Va(e){if(!e.field.type)return null;let t=Oo(e.field,e.disabled,{lang:e.lang,translations:e.translations}),n=Xo(e.field),r=Wo(e.field,e.errors),o=!!e.field.disabled===t.disabled?e.field:{...e.field,disabled:t.disabled};return e.children({ariaAttributes:r,commonProps:t,dataAttributes:n,field:o,horizontal:e.horizontal,readOnly:e.readOnly})}import{twMerge as fc}from"tailwind-merge";import{jsx as tr,jsxs as gc}from"react/jsx-runtime";function Pa(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r=!1}=Zt(e.style,{horizontal:xo(e.field)}),o=vo(e.field,e.disabled),i=Ro(e.field,e.disabled);return gc("div",{className:fc("flex flex-col gap-3",ei(t)),children:[tr(La,{disabled:o,errors:n,field:e.field,horizontal:r,children:tr(Va,{disabled:o,errors:n,field:e.field,horizontal:r,lang:e.lang,readOnly:i,translations:e.translations,children:e.children})}),tr(Ca,{errors:n,name:e.field.name})]})}import{memo as hc}from"react";import{useAtomValue as pc}from"jotai";import{jsx as xc}from"react/jsx-runtime";function Oa(e){return(t,n)=>o=>{let i=pc(e(o.field.name)),a=n(i,o);return a===null?null:xc(t,{...o,...a})}}var yc=Oa(rn);function Da(e){return yc(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var bc=Oa(Xt);function Ma(e){return bc(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var za=Ma(Da(hc(Pa)));import{twMerge as nr}from"tailwind-merge";import{Fragment as vc,jsx as Y,jsxs as ve}from"react/jsx-runtime";function _a(e){let t=e.isMultiField||e.collapsed!=null,[n,r,o]=_e(t?!e.collapsed:!0);function i(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}let a=c=>ie(W(c,e.translations),{index:e.index+1,label:e.label}),s=e.canRemove&&e.onRemove!=null&&Y("button",{"aria-label":a("Remove {label} item {index}"),className:nr("flex size-6 items-center justify-center rounded text-xl leading-none text-zinc-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:outline-none","dark:text-zinc-500 dark:hover:text-red-400"),onClick:i,type:"button",children:Y("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),l=ve("div",{className:"flex min-w-0 flex-col font-medium text-zinc-700 dark:text-zinc-400",children:[Y("span",{className:"text-base",children:e.previewLabel??ve(vc,{children:[e.label," ",e.index+1]})}),!n&&e.previewTags&&Y("div",{className:"flex items-center gap-2 overflow-hidden text-xs font-normal text-ellipsis whitespace-nowrap text-zinc-500 dark:text-zinc-500",children:e.previewTags})]}),u=ve("div",{className:nr("flex items-center justify-between gap-2",e.isMultiField&&n&&"mb-3"),children:[t?ve("div",{className:"flex min-w-0 grow items-center gap-2",children:[ve("button",{"aria-expanded":n,"aria-label":a(n?"Collapse {label} {index}":"Expand {label} {index}"),className:nr("group flex grow items-center gap-2 rounded p-1 text-left text-zinc-400","focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:outline-none","dark:text-zinc-500"),onClick:r,type:"button",children:[Y(Ve,{expanded:n}),l]}),!n&&e.previewBadge&&Y("div",{className:"ml-auto shrink-0",children:e.previewBadge})]}):l,s]});return e.isMultiField?ve("div",{"data-slot":"list-item-card",className:"box-border w-full min-w-0 rounded-lg border border-zinc-100 p-4 dark:border-zinc-900",children:[u,Y(Ze,{onReveal:o,visible:n,children:Y(ye,{children:e.children})})]}):t?ve("div",{className:"box-border flex w-full min-w-0 flex-col gap-2",children:[u,Y(Ze,{onReveal:o,visible:n,children:Y(ye,{children:e.children})})]}):ve("div",{className:"box-border flex w-full min-w-0 items-start gap-2",children:[Y("div",{className:"flex min-w-0 grow flex-col",children:Y(ye,{children:e.children})}),s&&Y("div",{className:"shrink-0",children:s})]})}import{Fragment as Sc}from"react";import{twMerge as $a}from"tailwind-merge";import{useAtomValue as Rc}from"jotai";function ln(e,t){return Rc(xe(e))??t}import{jsx as dt,jsxs as Ba}from"react/jsx-runtime";function Ha({className:e,initialValue:t,name:n,options:r,separator:o,staticLabel:i}){let a=ln(n??"",t);if(i===void 0&&r){let u=(Array.isArray(a)?a:a==null||a===""?[]:[a]).filter(c=>c!=null&&c!=="").map(c=>Yo(c,r));return u.length===0?null:dt("div",{className:"flex items-center gap-1.5 overflow-hidden",children:u.map((c,y)=>Ba(Sc,{children:[(o||y>0)&&dt("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),dt("span",{"aria-label":c,className:$a("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:c,children:c})]},`${y}:${c}`))})}if(i===void 0&&(B(a)||g(a)||Array.isArray(a)))return null;let s=i??String(a);return Ba("div",{className:"flex items-center gap-1.5 overflow-hidden",children:[o&&dt("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),dt("span",{"aria-label":s,className:$a("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:s,children:s})]})}import{useAtomValue as wc}from"jotai";import{useMemo as Ac}from"react";function un(e,t){let n=wc(H);return Ac(()=>{let r=`${e}.`,o={},i=!1;for(let s in n)s.startsWith(r)&&(o[s.slice(r.length)]=n[s],i=!0);let a=t?ne(e,t):void 0;return i?g(a)?{...a,...o}:o:a},[n,e,t])}import{useMemo as rr}from"react";import{jsx as Ga}from"react/jsx-runtime";function Tc(e){return typeof e=="string"?{field:e}:e}function or({className:e,fields:t,label:n="Preview",lang:r,name:o,previews:i,translations:a,value:s}){let l=rr(()=>(Array.isArray(i)?i:[i]).map(Tc),[i]),u=rr(()=>t?oi(t):void 0,[t]),c=un(o,s),y=rr(()=>{let p=[];for(let[A,x]of l.entries()){if(x.when!==void 0&&!Me(c,x.when))continue;if(x.label!==void 0){p.push({key:x.field??`label:${x.label}:${A}`,staticLabel:N(x.label,a)});continue}if(x.field===void 0)continue;let S=`${o}.${x.field}`,T=s!=null?ne(S,s):void 0,k=u?.[x.field],L=k?Uo(k,{lang:r,translations:a}):void 0;p.push({key:`${A}:${x.field}`,initialValue:T,options:L,previewName:S})}return p},[l,c,r,o,s,a,u]);return y.length===0?null:Ga("div",{"aria-label":n,className:"flex items-center gap-1.5 overflow-hidden",children:y.map((p,A)=>Ga(Ha,{className:e,initialValue:"initialValue"in p?p.initialValue:void 0,name:"previewName"in p?p.previewName:void 0,options:"options"in p?p.options:void 0,separator:A>0,staticLabel:"staticLabel"in p?p.staticLabel:void 0},p.key))})}import{Fragment as Fc,jsx as kc}from"react/jsx-runtime";function Ua({children:e,initialValue:t,name:n}){let r=ln(n,t),i=B(r)||g(r)||Array.isArray(r)?"":String(r);return kc(Fc,{children:e(i)})}import{jsx as cn}from"react/jsx-runtime";function Ya({canRemove:e,children:t,field:n,index:r,isMultiField:o,itemKey:i,label:a,lang:s,onRemove:l,previewBadge:u,previewLabel:c,previewTags:y,translations:p,value:A}){let x=`${n.name}.${i}`,S=`${a} ${r+1}`,T=un(x,A);return cn(_a,{canRemove:e,collapsed:n.advanced?.collapsed,index:r,isMultiField:o,label:a,onRemove:l,previewLabel:Cc({fallbackLabel:S,liveItemValue:T,name:x,previewLabel:c,translations:p,value:A}),previewBadge:u?cn(or,{className:"bg-primary text-primary-foreground rounded-md px-1.5 py-0.5 leading-none font-bold uppercase",fields:n.fields,lang:s,name:x,previews:u,translations:p,value:A}):void 0,previewTags:y?cn(or,{fields:n.fields,lang:s,name:x,previews:y,translations:p,value:A}):void 0,translations:p,children:t})}function Cc({fallbackLabel:e,liveItemValue:t,name:n,previewLabel:r,translations:o,value:i}){if(r===void 0)return;let a=b(r)?{field:r}:r;if(a.when!==void 0&&!Me(t,a.when))return;if(a.label!==void 0)return N(a.label,o);if(a.field===void 0)return;let s=`${n}.${a.field}`;return cn(Ua,{initialValue:i?ne(s,i):void 0,name:s,children:l=>l||e})}import{twMerge as Oc}from"tailwind-merge";import{deepEqual as Ic}from"fast-equals";import{useAtom as Ec,useSetAtom as sr,useStore as Lc}from"jotai";import{use as Vc,useCallback as ke,useEffect as dn,useEffectEvent as qa,useMemo as Ka,useRef as mn,useState as Pc}from"react";function Ge(e,t,n){return`${e}.${t}.${n}`}function Nc(e,t){let{initial:n,mounted:r,values:o}=t,i=r[e];if(i)return ar(e,i,t);let a=o[e];if(a!==void 0)return a;if(n)return ne(e,n)}function ar(e,{items:t,leafNames:n},r){return t.map(o=>{let i={};for(let a of n)i[a]=Nc(Ge(e,o,a),r);return i})}function ir(e,t=""){let n={};if(!e)return n;for(let[r,o]of Object.entries(e)){let i=`${t}${r}`;n[i]=o,Array.isArray(o)&&o.forEach((a,s)=>{g(a)&&Object.assign(n,ir(a,`${i}.${s}.`))})}return n}function Za(e,t,n,r){let o=[],i=Math.max(n.length,r.length);for(let a=t;a<i;a++){let s=ir(n[a]),l=ir(r[a]),u=new Set([...Object.keys(s),...Object.keys(l)]);for(let c of u)o.push({name:`${e}.${a}.${c}`,value:l[c]})}return o}function Wa(e,t,n){let{min:r,max:o}=zn(e),[i,a]=Pc(()=>ni(e,t)),s=mn(i),l=mn(i.length);s.current=i;let u=Lc(),c=sr(H),y=sr(on),p=mn(n);p.current=n;let A=mn(t),x=Ka(()=>Ht(e.fields),[e.fields]),S=Ka(()=>x.map(h=>h.name),[x]),T=ke((h,R)=>{let d=Number(h);return Number.isNaN(d)?!1:Number.isInteger(d)&&R>=0&&String(R)!==h},[]),k=Vc(he),L=ke(h=>{let R=`${e.name}.`;if(h.startsWith(R)){let d=h.slice(R.length),f=d.indexOf("."),m=f===-1?d:d.slice(0,f),v=Number(m),F=s.current.indexOf(v);T(m,F)&&(h=`${R}${F}${f===-1?"":d.slice(f)}`)}return k(h)},[e.name,T,k]),G=qa(()=>{let h=A.current;if(!h)return;let R={...u.get(H)},d=!1;for(let f of i)for(let m of S){let v=Ge(e.name,f,m);if(v in R)continue;let F=ne(v,h);E(F)&&(R[v]=F,d=!0)}d&&c(R)});dn(()=>{G()},[]);let V=ke((h,R)=>ar(e.name,{items:h,leafNames:S},{mounted:u.get(lt),values:R,initial:A.current}),[e.name,S,u]),D=ke(h=>{p.current?.({name:L(e.name),value:h})},[e.name,L]),M=ke((h,R,d)=>{D(d);let f=p.current;if(!f)return;let m=L(e.name);for(let v of Za(m,h,R,d))f(v)},[D,e.name,L]),Z=ke(()=>{if(s.current.length>=o)return;let h=l.current++,R=[...s.current,h];a(R),D(V(R,u.get(H)))},[V,D,o,u]),z=ke(h=>{if(s.current.length<=r)return;let R=s.current[h],d=s.current.filter((w,C)=>C!==h),f=u.get(H),m={...f};for(let w of S)delete m[Ge(e.name,R,w)];let v=V(s.current,f),F=V(d,m);a(d),c(m),M(h,v,F)},[V,M,e.name,S,r,c,u]),_=sr(la(e.name)),Ne=ge(e);dn(()=>{_({items:i,leafNames:S,hidden:e.hidden===!0,keepValue:Ne})},[e.hidden,Ne,i,S,_]),dn(()=>()=>{let h=u.get(H);c({...h,[e.name]:V(s.current,h)}),_(void 0)},[V,e.name,_,c,u]);let[re,Re]=Ec(aa(e.name)),Ie=qa(h=>{let R=_n(e,h),d=u.get(H),f=V(s.current,d);if(Ic(f,R))return;let m=[];for(let w=0;w<R.length;w++)m.push(s.current[w]??l.current++);let v={...d};for(let w of s.current)for(let C of S)delete v[Ge(e.name,w,C)];let F={};m.forEach((w,C)=>{let j=R[C];for(let O of x){let Ee=j[O.name];if(Ee===void 0)continue;let Le=Ge(e.name,w,O.name);v[Le]=Ee,te(O)&&(F[Le]=Ee)}}),c(v),a(m),Object.keys(F).length>0&&y(w=>({...w,...F})),M(0,f,R)});dn(()=>{re&&(Ie(re),Re(void 0))},[re,Re]);let Se=i.length<o,we=i.length>r;return[i,Z,z,Se,we,o,L]}import{jsx as lr,jsxs as fn}from"react/jsx-runtime";var Dc="flex h-9 w-full items-center gap-2 rounded-md border border-dashed border-zinc-200 px-4 text-sm font-medium text-zinc-500 transition-none hover:border-zinc-300 hover:text-zinc-800 focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:ring-offset-2 focus-visible:outline-none dark:border-zinc-800 dark:text-zinc-400 dark:hover:border-zinc-700 dark:hover:text-zinc-200";function Xa(e){let{field:t,lang:n,onValueChange:r,translations:o,value:i,children:a}=e,[s,l,u,c,y,p,A]=Wa(t,i,r),x=N(ri(t),o),S=t.advanced?.action?N(t.advanced.action,o):W("Add item",o),T=p!==1/0,k=ti(t),{label:L,tags:G,badge:V}=t.advanced?.preview??{};return lr(he.Provider,{value:A,children:fn("div",{className:"flex w-full flex-col gap-4",children:[s.map((D,M)=>lr(Ya,{canRemove:y,field:t,index:M,isMultiField:k,itemKey:D,label:x,lang:n,onRemove:u,previewBadge:V,previewLabel:L,previewTags:G,translations:o,value:i,children:a(D)},D)),fn("button",{"aria-disabled":!c,"aria-label":T?`${S}, ${s.length} of ${p}`:S,className:Oc(Dc,T?"justify-between":"justify-center",!c&&"cursor-not-allowed opacity-50 hover:border-zinc-200 hover:text-zinc-500 dark:hover:border-zinc-800 dark:hover:text-zinc-400"),disabled:!c,onClick:l,type:"button",children:[fn("span",{className:"flex items-center gap-2",children:[lr("span",{"aria-hidden":"true",className:"text-base leading-none",children:"+"}),S]}),T&&fn("span",{"aria-hidden":"true",className:"text-zinc-400 tabular-nums dark:text-zinc-500",children:[s.length," / ",p]})]})]})})}import{jsx as Mc}from"react/jsx-runtime";function ja(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0,n=X(e.field.label,e.translations),r=X(e.field.description,e.translations);return Mc(Kt,{description:r,empty:t,id:e.field.name,title:n,children:e.children})}import{jsx as gn}from"react/jsx-runtime";function Ja({children:e,field:t,lang:n,onValueChange:r,translations:o,value:i}){let a=gn(ja,{field:t,translations:o,children:gn(Xa,{field:t,lang:n,onValueChange:r,translations:o,value:i,children:e})});return gn(jt,{container:t,fields:t.fields,children:ge(t)?gn(Pe,{value:!0,children:a}):a})}import{twMerge as zc}from"tailwind-merge";import{jsx as Qa,jsxs as _c}from"react/jsx-runtime";function es(e){let t=Qo(e.column?.advanced?.cols);return _c("div",{className:"flex w-full flex-col gap-4",children:[Qa("div",{"data-slot":"column",className:zc("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&Qa(Jt,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}import{Fragment as Hc}from"react";import{useMemo as $c}from"react";import{jsx as Bc}from"react/jsx-runtime";function ts(e){let{fields:t,name:n}=e.field,{index:r}=e,o=$c(()=>Array.isArray(t)?t.map(i=>It(i)||te(i)?{...i,name:`${n}.${r}.${i.name}`}:le(i)?{...i,fields:i.fields.map(a=>({...a,name:`${n}.${r}.${a.name}`}))}:i):[],[r,n,t]);return Bc(mt,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:o,lang:e.lang,onValueChange:e.onValueChange,style:e.style,translations:e.translations,value:e.value,children:e.children})}import{jsx as ft,jsxs as Gc}from"react/jsx-runtime";function mt(e){let{field:t,list:n}=e.components;return Bt(e.fields).map((r,o)=>Gc(Hc,{children:[le(r)&&ft(es,{column:r,config:e.config,context:e.context,translations:e.translations,children:ft(mt,{...e,fields:r.fields})}),It(r)&&ft(t,{disabled:e.disabled,field:r,lang:e.lang,style:e.style,translations:e.translations,children:e.children}),te(r)&&ft(n,{field:r,lang:e.lang,onValueChange:e.onValueChange,translations:e.translations,value:e.value,children:i=>ft(ts,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:r,index:i,lang:e.lang,onValueChange:e.onValueChange,style:e.style,translations:e.translations,value:e.value,children:e.children})})]},o))}import{jsx as Uc}from"react/jsx-runtime";function ns(e){return n=>Uc(mt,{...n,components:e})}var rs=ns({field:za,list:Ja});import{useSetAtom as os}from"jotai";import{requestFormReset as Yc}from"react-dom";import{startTransition as ur,useActionState as Zc,useCallback as qc,useRef as Kc}from"react";function as(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},s=os(oa),l=os(Bi),u=Kc(null),c={data:null,error:null,success:!1},[y,p,A]=Zc(async(S,T)=>{let[k,L]=e(),G=ci(k,L,a);if(i===!1)return t?await t(T,G):S;let V=no(T),D=Xc(V,L),M=G.safeParse(D);if(!M.success){let z=di(M.error);return ur(()=>{s(z)}),cr(V,{description:W("Please correct the errors and try again.",a),details:[],title:W("There were validation errors submitting the form.",a)})}let Z=ro(M.data);if(t)try{let z=await t(Z,G);if(!z.success)return cr(Z,z.error);if(r?.(z.data),!o){let _=u.current;ur(()=>{l(),_&&Yc(_)})}return is(Z,o)}catch(z){return oe.error("Error executing form action:",z),cr(Z,{title:W("An unexpected error occurred submitting the form.",a),details:Wc(z,a)})}return is(M.data,o)},c),x=qc(S=>{S.preventDefault();let T=S.currentTarget;u.current=T;let k=S.nativeEvent.submitter,L=new FormData(T,k);ur(()=>{p(L)})},[p]);return[p,y,A,x]}function Wc(e,t){return e instanceof Error?[e.message]:[W("Unknown error",t)]}function is(e,t=!1){return{data:t?e:null,error:null,success:!0}}function cr(e,t){return{data:e,error:t,success:!1}}function Xc(e,t){let n={...e};for(let r of t)if(K(r)&&typeof n[r.name]=="string"&&n[r.name]){let o=Mt(n[r.name],ue(r));o&&(n[r.name]=o)}return n}import{useCallback as Qc,useEffect as ed,useMemo as us,useRef as td}from"react";import{useCallback as pn,useRef as Jc}from"react";import{useCallback as jc}from"react";import{useSetAtom as Ce}from"jotai";function ss(){let e=Ce(na),t=Ce(Hi),n=Ce(ha),r=Ce(ra),o=Ce(Gi),i=Ce(va),a=Ce(Vi);return jc((s,l)=>{let u=Array.isArray(s)?s:[s];e(u),n(u),l?.keepValue||t(u),r(u),i(u),a(u),o(u)},[e,n,t,r,i,a,o])}function ls(){let e=ss(),t=Jc(new Map),n=pn((a,s,l)=>{t.current.set(a,{field:l,schema:s})},[]),r=pn((a,s)=>{t.current.delete(a)&&e([a],{keepValue:s?.keepValue})},[e]),o=pn(()=>{let a=[...t.current];return[Object.fromEntries(a.map(([s,{schema:l}])=>[s,l])),a.map(([,{field:s}])=>s)]},[]),i=pn(a=>t.current.get(a)?.field,[]);return[o,i,n,r]}import{useSetAtom as nd}from"jotai";import{Fragment as rd,jsx as Ue,jsxs as od}from"react/jsx-runtime";function cs(e){let t=us(()=>Eo(e.lang,e.translations),[e.lang,e.translations]),[n,r,o,i]=ls(),[a,s,l,u]=as(n,e.action,{onSuccess:e.onSuccess,validation:e.config.validation.submit,translations:t}),c=e.config.validation.showError&&!s.success&&s.error,y=!s.success&&s.error?s:null,p=td(e.onValueChange);p.current=e.onValueChange;let A=!!e.onValueChange,x=us(()=>A?k=>p.current?.(k):void 0,[A]),S=Qc(k=>Ue(Fa,{...k,config:e.config,context:e.context,getField:r,onRegister:o,onUnmount:i,onValueChange:x,translations:t}),[r,o,i,x,e.config,e.context,t]),T=nd(Qi);return ed(()=>{T(e.value??null)},[T,e.value]),od(rd,{children:[c&&en(e.config.alert,k=>Ue("div",{className:"mb-4 w-full",children:Ue(k,{description:s.error?.description,details:s.error?.details,title:s.error.title})})),Ue(gt,{value:y,children:Ue(Di,{action:a,advanced:e.advanced,config:e.config,control:e.children,definition:e.definition,isPending:l,noValidate:!0,onSubmit:u,readOnly:e.readOnly,sections:e.sections,translations:t,children:({disabled:k,fields:L})=>Ue(rs,{config:e.config,context:e.context,disabled:k,fields:L,lang:e.lang,onValueChange:x,style:e.config.style,translations:t,value:e.value,children:S})})})]})}import{Provider as id}from"jotai";import{jsx as ds}from"react/jsx-runtime";function ad(e){return ds(id,{children:ds(cs,{...e})})}function ms(e,t){for(let n of e){if("name"in n&&typeof n.name=="string"){t.push(n.name);continue}"fields"in n&&ms(n.fields??[],t)}}function sd(e,t){let n=[];for(let o of e)ms(o.fields??[],n);let r=t;for(let o of n)st(o,t).found||(r===t&&(r={...t}),r[o]=void 0);return r}export{ad as Form,sd as withDeclaredFields};
1
+ "use client";
2
+ import{createContext as rl}from"react";var Et=rl(null);import{jsx as Yr}from"react/jsx-runtime";function _e(e){return Yr("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:Yr("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{createContext as ol}from"react";var $e=ol(!1);import{createContext as il}from"react";var it=il(()=>{});import{use as al,useCallback as sl}from"react";import{jsx as Vn}from"react/jsx-runtime";function at({children:e,onReveal:t,visible:n}){let r=al(it),o=sl(()=>{t?.(),r()},[t,r]);return Vn("div",{"data-slot":"collapsible-content",hidden:!n,children:Vn(it,{value:o,children:Vn($e,{value:!0,children:e})})})}var It="input",Wr="input/date",Zr="input/email",jr="input/number",qr="input/time";var Kr="textarea",Xr="radio",Jr="checkbox",zn="list",Qr="select",eo="select/active",to="select/day",no="select/month",ro="select/timezone",oo="select/year";var io="chips",ao="chips/day",so="chips/month",st="column",lo="description",Mn="fields",uo="label",X="value",Lt="options",co=["yyyy-MM-dd","MM/dd/yyyy","dd/MM/yyyy","MMMM d, yyyy"],Dt="data-format",_n="data-mode",$n="data-reserved",Bn="email",fo="number",mo="password",go="tel",lt="text",po="aria-errormessage",yo="aria-invalid",bo="data-invalid",xo="data-readonly",ho="aria",Ro="data",Be="max",vo="maxLength",He="min",So="minLength",ut="$ref",wo="source",To="state",Ot="http://luna.internal",Ao="type",ko={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};import{format as Gl,formatDuration as Yl,intervalToDuration as Wl,isValid as qt,parseISO as Zl}from"date-fns";function m(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function Pt(e){return Array.isArray(e)&&e.every(m)}function W(e){return e==null||e===""}function oe(e){return g(e)||typeof e=="number"||Hn(e)}function Ne(e){return Array.isArray(e)&&e.every(oe)}function g(e){return typeof e=="string"}function Fo(e){return m(e)&&"url"in e}function Hn(e){return typeof e=="boolean"}var U={error:(...e)=>{Un()&&!Gn()&&Vt().error("[Luna Form]",...e)},warn:(...e)=>{Un()&&!Gn()&&Vt().warn("[Luna Form]",...e)},info:(...e)=>{Un()&&!Gn()&&Vt().info("[Luna Form]",...e)}},Un=()=>typeof Vt()<"u",Gn=()=>typeof process<"u"&&process.env.NODE_ENV==="production",Vt=()=>globalThis.console;var ll=/^\d+$/,ul=new Set(["__proto__","constructor","prototype"]);function cl(e){return e.split(".").some(t=>ul.has(t))}function zt(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var ct={found:!1,value:void 0};function Ee(e,t){if(!Array.isArray(t)&&zt(t,e))return{found:!0,value:t[e]};if(!e.includes("."))return ct;let n=t;for(let r of e.split(".")){if(n==null)return ct;if(Array.isArray(n)){let o=Number(r);if(!Number.isInteger(o)||!zt(n,r))return ct;n=n[o]}else if(m(n)){if(!zt(n,r))return ct;n=n[r]}else return ct}return{found:!0,value:n}}function Wn(e,t=[],n=X){return Ne(e)?{value:e}:Array.isArray(t)?t.find(r=>{let o=Zn(r,n);if(o!==void 0&&`${o}`==`${e}`)return r})??{value:e}:{value:e}}function Zn(e,t=X){if(e!=null){if(Ne(e)||oe(e))return e;if(m(e)){let n=dl(e,t);if(oe(n))return n}}}function dl(e,t){let n=B(e,t);if(oe(n))return n}function Co(e,t){if(Array.isArray(e))return e;let n=B(e,t);return Array.isArray(n)?n:null}function B(e,t){if(!t||!e||typeof e!="object")return null;let n=Ee(t,e);return n.found?n.value:null}function jn(e,t={description:lo,label:uo,value:X}){return e.map(n=>{if(m(n)){let r=B(n,t.label),o=B(n,t.value);if(oe(r)&&oe(o)){let i=B(n,t.description);return{label:`${r}`,value:`${o}`,...oe(i)&&{description:`${i}`}}}}return n})}function No(e=lt){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==It?n.trim().toLowerCase():lt}function Eo(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 Io(e){let t={};for(let n of Object.keys(e)){if(cl(n)){U.warn(`A field name reaches a prototype and is not submitted: ${n}`);continue}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 s=r[a],l=r[a+1],u=ll.test(l);zt(o,s)||(o[s]=u?[]:{}),o=o[s]}let i=r[r.length-1];o[i]=e[n]}return Yn(t),t}function Yn(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)m(o)&&Yn(o);e[t]=r}else m(n)&&Yn(n)}}var fl=/^#\/(definition|context)\//,Lo={};function ml(e){return{cache:new Map,readsContext:!1,roots:e,visited:new WeakSet}}var Do=new WeakMap;function _t(e=[],t,n){let r=pl(t,n);if(!r)return Oo(e);let o=Do.get(e);o||(o=new WeakMap,Do.set(e,o));let i=r.definition??Lo,a=o.get(i);if(a||(a={byContext:new WeakMap},o.set(i,a)),a.free!==void 0)return a.free;let s=r.context??Lo,l=a.byContext.get(s);if(l!==void 0)return l;let u=ml(r),c=Oo(Mt(e,u));return u.readsContext?a.byContext.set(s,c):a.free=c,c}function Oo(e){return Array.isArray(e)?e.filter(yl).sort((t,n)=>Po(t)-Po(n)):[]}function Mt(e,t){if(!e||typeof e!="object")return e;if(t.cache.has(e))return t.cache.get(e);if(t.visited.has(e))return e;if(t.visited.add(e),Array.isArray(e)){let i=!1,a=e.map(s=>{let l=Mt(s,t);return i||=l!==s,l});return t.visited.delete(e),t.cache.set(e,i?a:e),t.cache.get(e)}let n=Ue(e);if(n!==void 0){let i=gl(n,t);return i!=null?Mt(i,t):e}let r={},o=!1;for(let[i,a]of Object.entries(e))r[i]=Mt(a,t),o||=r[i]!==a;return t.visited.delete(e),t.cache.set(e,o?r:e),t.cache.get(e)}function Ue(e){return m(e)&&g(e[ut])?e[ut]:void 0}function gl(e,t){let n=fl.exec(e);if(!n)return t.roots.definition?B(t.roots.definition,e):null;n[1]==="context"&&(t.readsContext=!0);let r=n[1]==="context"?t.roots.context:t.roots.definition;return r?B(r,e.slice(n[0].length)):null}function zo(e){return Object.entries(e??{})}function Po(e){return e.order??Number.MAX_VALUE}function pl(e,t){let n={context:Vo(t)?t:void 0,definition:Vo(e)?e:void 0};return n.context||n.definition?n:null}function Vo(e){return m(e)&&Object.keys(e).length>0}function yl(e){return Ao in e?!0:Array.isArray(e[Mn])?e[Mn].length>0:!0}import{isValid as Ht,parse as Xn,parseISO as bl,format as Ut}from"date-fns";import{enUS as xl,es as hl}from"date-fns/locale";var Jn=new Date(2e3,0,1),Yo=/^\d{4}-\d{2}-\d{2}$/,Qn="yyyy-MM-dd",Rl="MMMM d, yyyy",vl=1e3,Sl=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[],qn="en",wl=32,Tl=new Map;function de(e){return e?Ye(Tl,e,()=>Al(e),wl):qn}function Al(e){try{let t=Intl.getCanonicalLocales(e)[0];return t&&Intl.DateTimeFormat.supportedLocalesOf(t).length>0?t:qn}catch{return qn}}function er(e){return de(e).split("-")[0]}function tr(e){let t=de(e);return Array.from({length:12},(n,r)=>({value:(r+1).toString(),label:new Date(0,r).toLocaleString(t,{month:"long"})}))}function nr(e){let t=de(e);return Array.from({length:7},(n,r)=>({value:r.toString(),label:new Date(2e3,0,2+r).toLocaleString(t,{weekday:"long"})}))}function Wo(e,t){return t>=e?Array.from({length:t-e+1},(n,r)=>{let o=e+r;return{value:o.toString(),label:o.toString()}}):[]}var Mo=new WeakMap;function Gt(e){let t=m(e.advanced)?e.advanced:void 0,n=t??e,r=Mo.get(n);if(r)return r;let o=t?.length,i={max:_o(o?.max),min:_o(o?.min)};Mo.set(n,i);let a=ni(e.name,o,i,kl);for(let s of a)U.warn(s);return i}function _o(e){return typeof e=="number"&&Number.isInteger(e)?e:void 0}var $o="the field offers no year",kl={disordered:$o,kind:"whole year",lost:$o,needsBoth:!0};function Fl(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return ko[n]??"Other"}function Cl(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}var Bo=new Map;function Nl(e){let t=Bo.get(e);if(t)return t;let n=[new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"longOffset"}),new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"long"})];return Bo.set(e,n),n}function El(e,t){let[n,r]=Nl(e),o=n.formatToParts(t),i=r.formatToParts(t),s=(o.find(u=>u.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),l=Cl(i,e);return{offset:s,longName:l}}function Il(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}var Ho=new WeakMap;function Zo(e){let t=e.advanced;if(!m(t)||t.suggested==null)return;let n=Ho.get(t);if(n)return n.zone;let r=t.suggested,o=g(r)?Ll(r):void 0;return Ho.set(t,{zone:o}),o===void 0&&U.warn(rr(`${e.name}: advanced.suggested`,r,"time zone","no zone is suggested")),o}function Ll(e){if(/^[A-Za-z]/.test(e))try{return new Intl.DateTimeFormat("en",{timeZone:e}).resolvedOptions().timeZone}catch{return}}var Dl=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}(:\d{2}(\.\d{1,9})?)?(Z|[+-]\d{2}:?\d{2})$/;function Yt(e){if(e===void 0||!Dl.test(e))return;let t=bl(e);return Ht(t)?t:void 0}var Ol=8,Pl=new Map;function jo(e,t){let n=Yt(t);return Ye(Pl,`${e??""}|${n?.getTime()??""}`,()=>Vl(e,n),Ol)}function Vl(e,t){let n=i=>{let a=Il(i);if(!t)return Object.freeze({value:i,label:a});let{offset:s,longName:l}=El(i,t);return Object.freeze({value:i,label:`${a} - ${l} (${s})`})},r=new Map;for(let i of Sl()){let a=Fl(i);if(i===e||a==="Other")continue;let s=r.get(a);s?s.push(n(i)):r.set(a,[n(i)])}let o=Array.from(r.entries()).sort(([i],[a])=>i.localeCompare(a,"en")).map(([i,a])=>Object.freeze({label:i,items:Object.freeze(a.sort((s,l)=>s.label.localeCompare(l.label,"en")))}));return Object.freeze(e?[Object.freeze({label:"Suggested",items:Object.freeze([n(e)])}),...o]:o)}function qo(e,t){let n=e.trim();if(n){if(Yo.test(n))return Uo(n,Qn);for(let r of Object.values(Jo)){let o=Uo(n,t,r);if(o)return o}}}function Uo(e,t,n){try{let r=Xn(e,t,Jn,{locale:n});return Ht(r)&&r.getFullYear()>=vl?r:void 0}catch{return}}function Ie(e,t){let n=e?qo(e,t):void 0;return n?Ut(n,Qn):""}function Ko(e,t){if(!e)return"";try{let n=Xn(e,t,Jn);return Ht(n)?Ut(n,"HH:mm:ss"):""}catch{return""}}function Xo(e,t="HH:mm"){if(!e)return"";try{let n=e.split(":").length===3?"HH:mm:ss":"HH:mm",r=Xn(e,n,Jn);return Ht(r)?Ut(r,t):""}catch{return""}}function Ge(e,t,n){let r=qo(e,t);return r?Ut(r,t,{locale:Wt(n)}):e}var Jo={en:xl,es:hl};function Wt(e){return Jo[er(e)]}function dt(e){return e.advanced?.format??"HH:mm"}function zl(e){return co.find(t=>t===e)??Rl}function Zt(e){return zl(e.advanced?.format)}function Kn(e){return g(e)&&Yo.test(e)&&Ie(e,Qn)||void 0}function Ml(e){let t=new Set,n=[];return e.forEach((r,o)=>{let i=Kn(r);i===void 0?n.push(o):t.add(i)}),{days:[...t].sort(),rejected:n}}var Qo={days:[],rejected:[]},_l={reserved:Qo.days,unreadable:!1},Go=new WeakMap;function jt(e){let t=e.advanced;if(!m(t))return _l;let n=Go.get(t);if(n)return n;let r=Array.isArray(t.reserved)?Ml(t.reserved):Qo,o={max:Kn(t.length?.max),min:Kn(t.length?.min)},i={...o,reserved:r.days,unreadable:$l(t.length,o)||t.reserved!=null&&(!Array.isArray(t.reserved)||r.rejected.length>0)};Go.set(t,i);let a=Bl(e.name,t,i,r.rejected);for(let s of a)U.warn(s);return i}function $l(e,t){return e==null?!1:!m(e)||Ue(e)!==void 0?!0:ti.some(n=>e[n]!=null&&t[n]===void 0)}function Bt(e,t){return t.unreadable?{issue:"unreadable"}:t.min!==void 0&&e<t.min?{issue:"min",limit:t.min}:t.max!==void 0&&e>t.max?{issue:"max",limit:t.max}:t.reserved.includes(e)?{issue:"reserved"}:null}function ft(e){return g(e)?[e,""]:Array.isArray(e)&&e.length<=2&&e.every(g)?[e[0]??"",e[1]??""]:void 0}function ei(e,t,n){if(t<e)return{issue:"range"};let r=Bt(e,n)??Bt(t,n);return r||(n.reserved.some(o=>e<o&&o<t)?{issue:"reserved"}:null)}var ti=["min","max"];function Bl(e,t,n,r){return[...ni(e,t.length,n,Hl),...Ul(e,t.reserved,r)]}var $t="the field takes no day",Hl={disordered:"no day passes",kind:"yyyy-MM-dd day",lost:$t,needsBoth:!1};function ni(e,t,n,r){let o=Ue(t);if(o!==void 0)return[`${e}: advanced.length points at ${o}, which nothing resolved, so ${r.lost}`];let i=m(t)?t:{};if(r.needsBoth&&i.min==null&&i.max==null)return[`${e}: advanced.length.min and .max are missing, so ${r.lost}`];let a=[];for(let s of ti){let l=i[s];if(n[s]!==void 0||l==null&&!r.needsBoth)continue;let u=`${e}: advanced.length.${s}`;a.push(l==null?`${u} is missing, so ${r.lost}`:rr(u,l,r.kind,r.lost))}return n.min!==void 0&&n.max!==void 0&&n.min>n.max&&a.push(`${e}: advanced.length.min is after advanced.length.max, so ${r.disordered}`),a}function Ul(e,t,n){if(t==null)return[];let r=`${e}: advanced.reserved`;if(!Array.isArray(t)){let o=Ue(t);return[o!==void 0?`${r} points at ${o}, which nothing resolved, so ${$t}`:`${r} is ${JSON.stringify(t)}, which is no list of days, so ${$t}`]}return n.map(o=>rr(`${r}[${o}]`,t[o],"yyyy-MM-dd day",$t))}function rr(e,t,n,r){let o=Ue(t);return o!==void 0?`${e} points at ${o}, which nothing resolved, so ${r}`:`${e} is ${JSON.stringify(t)}, which is no ${n}, so ${r}`}function Ye(e,t,n,r){let o=e.get(t);if(o!==void 0)return e.delete(t),e.set(t,o),o;let i=e.keys().next().value;e.size>=r&&i!==void 0&&e.delete(i);let a=n();return e.set(t,a),a}var jl=["short","medium","long","full"],ql=e=>jl.some(t=>t===e),Kl={ms:1,s:1e3,min:6e4,h:36e5,d:864e5};function Kt(e){if(typeof e=="number"&&!Number.isNaN(e))return e;if(g(e)&&e.trim()!==""){let t=Number(e);return Number.isNaN(t)?null:t}return null}function ri(e,t,n){let r=Kl[t];if(r===void 0)return String(e);let o=e*r,i=Wl({start:0,end:o});return Yl(i,{locale:Wt(n)})}function oi(e){if(e instanceof Date)return qt(e)?e:null;if(g(e)){let t=Zl(e);if(qt(t))return t;let n=new Date(e);return qt(n)?n:null}if(typeof e=="number"){let t=new Date(e);return qt(t)?t:null}return null}var ii=new WeakSet;function Xt(e){let t=e?.now;if(t!=null){if(g(t)&&Yt(t))return t;e&&!ii.has(e)&&(ii.add(e),U.warn(`context.now is ${Xl(t)}, which is no ISO date, time and offset such as "2026-10-05T19:30:00-05:00", so nothing is measured from it`))}}function Xl(e){return e instanceof Date?"a Date (pass its toISOString())":g(e)?JSON.stringify(e):`a ${typeof e}`}var ir=64,Jl=new Map,Ql=new Map,eu=new Map;function si(e,t,n){let r=de(n);return Ye(Jl,`${r}|${t}`,()=>new Intl.DateTimeFormat(r,{dateStyle:t}),ir).format(e)}function or(e,t,n={}){let r=de(t);return Ye(Ql,`${r}|${n.style??""}|${n.currency??""}`,()=>new Intl.NumberFormat(r,n),ir).format(e)}function ai(e,t){let n=Yt(t.now);return n?ru(e,n,t.locale):si(e,"medium",t.locale)}var li=1e3,ui=60*li,ci=60*ui,di=24*ci,fi=30.4375*di,tu=12*fi,nu=[["second",li,60],["minute",ui,60],["hour",ci,24],["day",di,31],["month",fi,12]];function ru(e,t,n){let r=e.getTime()-t.getTime(),o=Math.abs(r),i=(a,s)=>{let l=de(n),u=a===0?"auto":"always";return Ye(eu,`${l}|${u}`,()=>new Intl.RelativeTimeFormat(l,{numeric:u}),ir).format(r<0?-a:a,s)};for(let[a,s,l]of nu){let u=Math.round(o/s);if(u<l)return i(u,a)}return i(Math.round(o/tu),"year")}var ou={currency:(e,t,n)=>{let r=Kt(e);if(r===null)return String(e);let o=t[0]??"USD";return or(r,n.locale,{style:"currency",currency:o})},percent:(e,t,n)=>{let r=Kt(e);return r===null?String(e):or(r,n.locale,{style:"percent"})},number:(e,t,n)=>{let r=Kt(e);return r===null?String(e):or(r,n.locale)},date:(e,t,n)=>{let r=oi(e);if(!r)return String(e);let o=t[0]??"short";return o==="relative"?ai(r,n):ql(o)?si(r,o,n.locale):Gl(r,o,{locale:Wt(n.locale)})},duration:(e,t,n)=>{if(typeof e=="number")return ri(e,t[0]??"ms",n.locale);if(g(e)){let o=Kt(e);if(o!==null)return ri(o,t[0]??"ms",n.locale)}let r=oi(e);return r?ai(r,n):String(e)}};function mi(e,t,n){let r=t.split(":").map(s=>s.trim()).filter(s=>s.length>0);if(r.length===0)return;let[o,...i]=r,a=ou[o];if(a)return a(e,i,n)}var iu=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g,au=/{([^}]{1,200})}/,su=/{([^}]{1,200})}/g,lu=/^{([^}|]{1,200})}$/;function xe(e,t){return{locale:e,now:Xt(t)}}function fe(e,t={},n={}){if(g(e))return cu(e,t,n);if(Array.isArray(e))return e.map(r=>fe(r,t,n));if(m(e)){let r={};for(let o in e)r[o]=fe(e[o],t,n);return r}return e}function gi(e,t={},n={}){if(g(e)){let r=uu(e,t);if(r!==void 0)return r}return fe(e,t,n)}function De(e,t={},n={}){return Le(e)?fe(e,t,n):e}function Le(e){return g(e)?au.test(e):Array.isArray(e)?e.some(t=>Le(t)):m(e)?Object.values(e).some(t=>Le(t)):!1}function pi(e,t){return t.includes(".")?B(e,t):e[t]}function uu(e,t){let n=lu.exec(e);if(!n)return;let r=n[1].trim();if(!r)return;let o=pi(t,r);if(m(o)||Array.isArray(o))return o}function cu(e,t={},n={}){return e.replace(su,(r,o)=>{let i=String(o).split("|").map(c=>c.trim()),[a,...s]=i;if(!a)return r;let l=pi(t,a);if(s.length===0)return oe(l)?String(l):r;if(l==null)return r;let u=l;for(let c of s){let R=mi(u,c,{locale:n.locale,now:n.now});if(R===void 0)return r;u=R}return String(u)})}function yi(e,t){if(!g(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=iu.exec(e))!==null;){let[a,s,l]=n,u=n.index;o=!0,u>r&&i.push(e.substring(r,u));let c=t?t(u,l,s):a;i.push(c),r=u+a.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}function ar(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===X&&n.push(i),i.action===wo&&r.push(i),i.action===To&&o.push(i);t({sources:r,states:o,values:n})}function bi(e=null,t=[],n,r){for(let o of t){let{target:i,source:a}=o;if(!e){n(i,void 0);continue}if(Fo(a)){let s=fe(a.url,e,r),l=a.body?fe(a.body,e,r):a.body;n(i,{...a,url:s,body:l})}}}var Oe={eq:pu,gt:hu,gte:Ru,in:bu,lt:vu,lte:Su,neq:yu,nin:xu,contains:wu,exists:hi,empty:Tu,truthy:Au},du=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,xi=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function fu(e){return typeof e=="string"&&du.test(e)}function mu(e){return typeof e=="string"&&xi.test(e)}function gu(e){let t=e.match(xi);if(t){let[,n,r,o,i,a,s]=t;return new Date(Number(o),Number(r)-1,Number(n),Number(i??0),Number(a??0),Number(s??0)).getTime()}return NaN}function he(e){return fu(e)?new Date(e).getTime():mu(e)?gu(e):Number(e)}function pu(e,t){return e===t}function yu(e,t){return e!==t}function bu(e,t){return Array.isArray(t)&&t.includes(String(e))}function xu(e,t){return Array.isArray(t)&&!t.includes(String(e))}function hu(e,t){return he(e)>he(t)}function Ru(e,t){return he(e)>=he(t)}function vu(e,t){return he(e)<he(t)}function Su(e,t){return he(e)<=he(t)}function wu(e,t){return typeof e=="string"?e.includes(String(t)):Array.isArray(e)?e.map(String).includes(String(t)):!1}function hi(e){return Array.isArray(e)?e.length>0:e!=null&&e!==""}function Tu(e){return!hi(e)}function Au(e){return Array.isArray(e)?e.length>0:!!e}function We(e,t){if(t===void 0)return!0;if(g(t)){let n=Jt(e,X);return Array.isArray(n)?n.length===1&&n[0]===t:n===t}if(Hn(t)){let n=Jt(e,X);return(Array.isArray(n)?n.length>0:!!n)===t}if(Array.isArray(t)){let n=Jt(e,X);return Array.isArray(n)?n.some(r=>t.includes(String(r))):t.includes(String(n))}return ku(e,t)}function ku(e=null,t){let n=Jt(e,t.field??X),{operator:r="eq",value:o}=t,i=Oe[r];return i?i(n,o):!1}function Jt(e,t){return m(e)?B(e,t):e}function sr(e=null,t=[],n){for(let r of t){let{target:o,state:i,when:a}=r,s=Array.isArray(o)?o:[o];if(!e){n(s);continue}let l=We(e,a);n(s,l?i:void 0)}}function Ri(e=null,t=[],n,r){for(let o of t)for(let[i,a]of Object.entries(o.value)){let s=e?gi(a,e,r):void 0;n(i,s,{onlyIfTargetEmpty:o.onlyIfTargetEmpty??!1})}}var mt=e=>M(eo)(e),vi=e=>M(to)(e),Qt=e=>M(no)(e),en=e=>M(oo)(e),lr=e=>M(ro)(e),tn=e=>M(ao)(e),nn=e=>M(so)(e),Re=M(Wr),Pe=M(qr);function me(e){return Re(e)&&e.advanced?.mode==="range"}var j=M(Jr),ie=M(io),ge=M(Xr),ve=M(It),ae=M(Qr),ur=M(Kr),Si=M(lt,Bn,mo,go),wi=M(Zr,Bn),gt=M(jr,fo);function rn(e){return ge(e)||j(e)}function J(e){return e.type===zn}function se(e){return e.type===st}function on(e){return e.type!==st&&e.type!==zn}function Ze(e){return ae(e)||ge(e)||ie(e)}function Ti(e){return ve(e)||ur(e)}function Se(e){return e.advanced?.keepValue===!0}function L(e){return e!=null&&e!==""}function M(...e){return t=>{let n=g(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Ai(e,t={}){if(ae(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&m(n))return[n]}}function ki(e){return ge(e)||j(e)?!0:e.advanced?.horizontal}function Fi(e){return j(e)?e.advanced?.reverse!==!1:!1}function Ci(e,t){return!!(t||e.disabled||e.readonly)}function Ni(e,t){return!!e.readonly&&!t&&!e.disabled}function an(e){let t=e.advanced?.step;if(typeof t=="number"&&Number.isFinite(t)&&t>0)return t}function sn(e){if(Fu(e)){let t=e.source;if(Array.isArray(t)||m(t)&&!(ut in t))return t}}function Ei(e){return Array.isArray(sn(e))}function Fu(e){return ae(e)?!e.disabled||Array.isArray(e.source):ge(e)||ie(e)}var Cu={es:{"(Optional)":"(Opcional)","Add item":"A\xF1adir elemento","An unexpected error occurred submitting the form.":"Ocurri\xF3 un error inesperado al enviar el formulario.","Collapse {label} {index}":"Contraer {label} {index}","Expand {label} {index}":"Expandir {label} {index}","Please correct the errors and try again.":"Corrige los errores e int\xE9ntalo de nuevo.","Remove {label} item {index}":"Eliminar {label} {index}","There were validation errors submitting the form.":"Se encontraron errores de validaci\xF3n al enviar el formulario.","Unknown error":"Error desconocido",No:"No",Yes:"S\xED"}};function Q(e,t){return N(e,t)}function Li(e,t){if(!e)return;let n=de(e),r=er(n),o=[Cu[r],t?.[r],r===n?void 0:t?.[n]].filter(i=>i!==void 0);return o.length<=1?o[0]:Object.assign({},...o)}function N(e,t){return e?t?t[e]??e:e:""}function O(e,t){return e?N(e,t):void 0}function pt(e,t){if(!t)return e;let n=!1,r=e.map(o=>{let i=Nu(o,t);return i!==o&&(n=!0),i});return n?r:e}function Nu(e,t){if(!m(e))return e;let n=Ii(e.label,t),r=e.items;if(Array.isArray(r)){let i=pt(r,t);return i===r&&n===e.label?e:{...e,...n!==void 0&&{label:n},items:i}}let o=Ii(e.description,t);return n===e.label&&o===e.description?e:{...e,...n!==void 0&&{label:n},...o!==void 0&&{description:o}}}function Ii(e,t){return g(e)?N(e,t):e}function Oi(e,t){if(ie(e))return Eu(e,t?.lang)}function Eu(e,t){if(tn(e))return nr(t);if(nn(e))return tr(t)}function Pi(e,t,n){if(ae(e))return Iu(e,t,n)}function Iu(e,t,n){let{lang:r,translations:o}=t??{};if(vi(e))return nr(r);if(Qt(e))return tr(r);if(en(e)){let{max:i,min:a}=Gt(e);return a!==void 0&&i!==void 0?Wo(a,i):[]}if(lr(e))return jo(Zo(e),n);if(mt(e))return pt([{value:"true",label:"Yes"},{value:"false",label:"No"}],o)}function Vi(e,t=!1,n,r){let o={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return ve(e)?{...o,...Lu(e,n?.lang)}:ae(e)?{...o,...zi(Pi(e,n,r))}:ur(e)?{...o,...Pu(e)}:ie(e)?{...o,...Ou(e,n)}:o}function Lu(e,t){let n=No(e.type),r={...e,type:n};return{...zu(e),...Mu(e,t),...Mi(e),...Vu(r),...Du(r),...Si(r)?_i(r):{},type:n}}function Du(e){let t=an(e);return gt(e)&&t!==void 0?{step:t}:{}}function zi(e){return e?{options:e}:{}}function Ou(e,t){let n=zi(Oi(e,t)),r=e.advanced?.multiple??!0;return{...n,multiple:r}}function Pu(e){return{...Mi(e),..._i(e)}}function Mi(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Vu(e){return gt(e)?_u(e):{}}function zu(e){if(Pe(e)){let t=dt(e),n=t==="HH:mm:ss"||t==="hh:mm:ss a";return{[Dt]:t,step:n?"1":"60"}}return{}}function Mu(e,t){let n=je(e);if(!n)return{};let{max:r,min:o,reserved:i}=jt(e);return{[Dt]:n,...t&&{lang:t},...o!==void 0&&{[He]:o},...r!==void 0&&{[Be]:r},...i.length>0&&{[$n]:i.join(",")},...me(e)&&{[_n]:"range"}}}function _i(e){return $i(e,{min:So,max:vo})}function _u(e){return $i(e,{min:He,max:Be})}function $i(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 Bi(e,t){let n=sn(e);return n||Ai(e,t)}function $u(e,t){let n=m(t)&&e.name in t?t[e.name]:t,r=Zn(n,e.advanced?.entity),o=L(r)?r:e.defaultValue;return Pe(e)&&L(o)?Bu(e,o):Re(e)&&L(o)?ee(e,o):o}function Bu(e,t){let n=dt(e);return g(t)?Ko(t,n):t}function Hu(e,t,n){return Ze(e)&&Array.isArray(n)?{...t,[Lt]:n}:t}function Uu(e,t,n){if(e.required&&!L(n)&&ae(e)&&e.advanced?.preselected!==!1&&Lt in t){let r=t[Lt];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function Gu(e,t,n){if(Ze(e)&&Array.isArray(t)){let r=jn(t,e.advanced?.options);return Ei(e)?pt(r,n):r}return t}function Hi(e,t,n,r,o){let i=$u(e,r),a=Array.isArray(n)?Gu(e,n,o):n,s=Hu(e,t,a),l=Uu(e,s,i);return{commonPropsWithOptions:s,defaultValue:l}}function Ui(e,t){return j(e)?{checked:!!t}:ie(e)?{value:Array.isArray(t)?t:[]}:mt(e)?{value:L(t)?String(t):""}:{value:t??""}}function ee(e,t){let n=je(e);if(!n)return t;if(me(e)){let r=t==null||t===""?void 0:ft(t);if(!r)return t;let o=cr(r[0],n),i=cr(r[1],n);return Array.isArray(t)&&t[0]===o&&t[1]===i?t:[o,i]}return g(t)?cr(t,n):t}function cr(e,t){return Ie(e,t)||e}function Di(e){let t=[];for(let n of e){if(typeof n=="string"){t.push(n);continue}m(n)&&"value"in n&&"label"in n&&g(n.value)&&g(n.label)&&t.push({label:n.label,value:n.value})}return t}function Gi(e,t){if(!Ze(e)||lr(e))return;let n=ie(e)?Oi(e,t):Pi(e,t);if(Array.isArray(n)){let o=Di(n);return o.length>0?o:void 0}let r=sn(e);if(Array.isArray(r)){let o=jn(r,e.advanced?.options),i=Di(pt(o,t?.translations));return i.length>0?i:void 0}}function je(e){return e&&Re(e)?Zt(e):void 0}function Yi(e,t){let n=String(e);for(let r of t)if(typeof r=="string"){if(r===n)return r}else if(r.value===n)return r.label;return n}function Wi(e,t){let n={};for(let[r,o]of zo(t))n[`${e}-${r}`]=o;return n}function Yu(e){return Wi(ho,e)}function Wu(e){return Wi(Ro,e)}function Zi(e,t){let n=Yu(e.advanced?.aria);return t&&t.length>0&&(n[yo]="true",n[po]=`${e.name}-error`),n}function ji(e){return Wu(e.advanced?.data)}var qi={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Ki={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function Xi(e,t=2){return qi[e&&e in qi?e:t]}function Ji(e){if(e&&e in Ki)return Ki[e]}function dr(e){return{min:e.advanced?.length?.min??1,max:e.advanced?.length?.max??1/0}}function ln(e){let t=[];for(let n of e)if(se(n))for(let r of n.fields)t.push(r);else t.push(n);return t}function Zu(e,t){let n=t?B(t,e.name):null;return na(e,Array.isArray(n)?n.length:0)}function Qi(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===st}function ea(e,t){let n=Zu(e,t);return Array.from({length:n},(r,o)=>o)}function ta(e){return e.advanced?.title??e.label??e.name}function un(e){let t={};for(let n of ln(e))J(n)||(t[n.name]=n);return t}function na(e,t){let{min:n,max:r}=dr(e);return Math.min(Math.max(t,n),r)}function fr(e,t){let n=ln(e.fields),r=na(e,t.length),o=[];for(let i=0;i<r;i++){let a=t[i],s={};for(let l of n){let u=a?.[l.name];s[l.name]=J(l)?fr(l,Pt(u)?u:[]):u}o.push(s)}return o}function cn(e,t){if(!e.includes("/"))return e;let[n,r]=e.split("/"),o=new RegExp(`(^|.*\\.)(${n}\\.\\d+\\.)`),i=t.match(o);return i?`${i[0]}${r}`:r}import{z as A}from"zod";var ju=[[j,ra],[Re,tc],[wi,qu],[gt,Ju],[ge,Ku],[mt,ra],[Qt,ec],[en,Qu],[ie,pr],[tn,pr],[nn,pr]];function aa(e,t=[],n){let r=A.object(e);if(t.length===0)return r;let o=uc(r,t,n);return fc(o,t,n)}function sa(e){let t={},n=A.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function la(e,t){for(let[n,r]of ju)if(n(e))return r(e,t);return Xu(e,t)}function fn(e){return e.nullable().optional()}function qu(e,t){let n=A.string().trim();if(e.required){let r=we(e,t),o=n.min(1,r).pipe(oa(e,t));return A.preprocess(i=>W(i)?"":i,o)}return fn(n.pipe(oa(e,t)).or(A.literal("")))}function ra(e,t){let n=A.preprocess(r=>{if(typeof r=="string"){if(r==="true")return!0;if(r==="false")return!1}return r},A.coerce.boolean());return e.required?(j(e)?n=n.refine(r=>r===!0,{message:we(e,t)}):n=n.refine(r=>typeof r=="boolean",{message:we(e,t)}),A.preprocess(r=>r===null?!1:r,n)):n.nullable()}function Ku(e,t){let n=A.coerce.string();return e.required?(n=n.min(1,we(e,t)),A.preprocess(r=>W(r)?"":r,n)):fn(n.or(A.literal("")))}function Xu(e,t){let n=A.coerce.string().trim();return n=ua(n,e,t),e.required?(n=ac(n,e,t),A.preprocess(r=>W(r)?"":r,n)):fn(n)}function Ju(e,t){let n=ua(A.coerce.number(),e,t);return bt(oc(n,e,t),e,t,yr)}function Qu(e,t){let{max:n,min:r}=Gt(e),o=A.coerce.number().int(),i=r===void 0||n===void 0?o.refine(()=>!1,"This year is not available"):o.min(r,O(e.validation?.length?.min,t)).max(n,O(e.validation?.length?.max,t));return bt(i,e,t,yr)}function ec(e,t){let n=we(e,t),r=A.coerce.number().int().min(1,n).max(12,n);return bt(r,e,t,yr)}function tc(e,t){let n=Zt(e),r=jt(e),o=O(e.validation?.date,t)??"Invalid date";if(me(e)){let a=A.unknown().transform((s,l)=>{let u=P=>(l.addIssue({code:"custom",message:P}),A.NEVER),c=ft(s);if(!c)return u(o);let[R,y]=c;if(R.trim()===""||y.trim()==="")return u(mr(e,{issue:"range"},n,t));let b=Ie(R,n),k=Ie(y,n);if(!b||!k)return u(o);let x=ei(b,k,r);return x?u(mr(e,x,n,t)):[b,k]});return bt(a,e,t,nc)}let i=A.string().transform((a,s)=>{let l=Ie(a,n);if(!l)return s.addIssue({code:"custom",message:o}),A.NEVER;let u=Bt(l,r);return u?(s.addIssue({code:"custom",message:mr(e,u,n,t)}),A.NEVER):l});return bt(i,e,t,rc)}function mr(e,t,n,r){if(t.issue==="unreadable")return"This date cannot be checked";if(t.issue==="reserved")return O(e.validation?.reserved,r)??"This date is not available";if(t.issue==="range")return O(e.validation?.range,r)??"Invalid date range";let o=Ge(t.limit,n);return O(e.validation?.length?.[t.issue],r)??`Date must be on or ${t.issue==="min"?"after":"before"} ${o}`}function nc(e){return e==null||ft(e)?.every(n=>n.trim()==="")?void 0:e}function rc(e){return e===null||g(e)&&e.trim()===""?void 0:e}function yr(e){return e===null||e===""?void 0:e}function bt(e,t,n,r){if(!t.required)return A.preprocess(r,fn(e));let o=we(t,n);return A.preprocess(r,A.unknown().refine(i=>i!==void 0,{message:o}).pipe(e))}function oc(e,t,n){let r=O(t.validation?.step,n),o=an(t);if(o===void 0)return e.int(r);let i=t.advanced?.length?.min??0;return e.refine(a=>ic(a,o,i),{message:r??(i===0?`Invalid number: must be a multiple of ${o}`:`Invalid number: must be ${i} plus a multiple of ${o}`)})}function ic(e,t,n){let r=10**Math.max(gr(e),gr(t),gr(n));return Math.round((e-n)*r)%Math.round(t*r)===0}function gr(e){let[t,n="0"]=String(e).split("e"),r=t.split(".")[1]?.length??0;return Math.max(0,r-Number(n))}function oa(e,t){let n=e.validation?.email?N(e.validation?.email,t):void 0;return A.email(n)}function ua(e,t,n){return e=sc(e,t,n),e=lc(e,t,n),e}function ac(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,we(t,n)):e}var sc=(e,t,n)=>ca(e,t,He,n),lc=(e,t,n)=>ca(e,t,Be,n);function ca(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?N(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function uc(e,t=[],n){let r=dc(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:s}of r)if(!cc(o,a,s)){let l=N(s.message,n);i.addIssue({code:"custom",message:l,path:[a]})}})}function cc(e,t,n){let r=n.operator??"eq",o=Oe[r];return o?o(dn(e,t),dn(e,n.field)):!1}function dc(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 da(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let s=a.operator??"eq",l=Oe[s];if(l&&!l(e,n(a.field))&&a.message){let u=N(a.message,r);o.push(u)}}return o}function we(e,t){return e.validation?.required?N(e.validation?.required,t):void 0}function pr(e,t){let n=A.array(A.string());return e.required&&(n=n.min(1,we(e,t))),A.preprocess(r=>W(r)?[]:Array.isArray(r)?r.map(String):[String(r)],n)}function fc(e,t=[],n){let r=t.filter(mc);return r.length===0?e:e.superRefine((o,i)=>{let a=m(o)?o:{};for(let s of r)for(let l of gc(a,s,n))i.addIssue({code:"custom",path:l.path,message:l.message})})}function mc(e){let t=e.validation;return t!==void 0&&(t.requiredWhen!==void 0||t.pattern!==void 0||t.rules!==void 0)}function gc(e,t,n){let r=[],o=dn(e,t.name),i=t.validation?.requiredWhen;if(i){let l=(Array.isArray(i)?i:[i]).find(u=>yt(e,u));l&&!br(o)&&r.push({path:[t.name],message:O(l.message??t.validation?.required,n)})}let a=t.validation?.pattern;a&&!fa(a,o)&&r.push({path:[t.name],message:O(a.message,n)});for(let s of t.validation?.rules??[])pc(e,s.when)&&!yc(s,o)&&r.push({path:[t.name],message:O(s.message,n)});return r}function yt(e,t){let n=Oe[t.operator??"eq"];return n?n(dn(e,t.field),t.value):!1}function dn(e,t){return t in e?e[t]:B(e,t)??void 0}function pc(e,t){if(!t)return!0;if(Array.isArray(t))return t.every(o=>yt(e,o));if("field"in t)return yt(e,t);let n=t.all?t.all.every(o=>yt(e,o)):!0,r=t.any?t.any.some(o=>yt(e,o)):!0;return n&&r}function yc(e,t){switch(e.assert){case"required":return br(t);case"minItems":return Array.isArray(t)&&t.length>=Number(e.value);case"maxItems":return Array.isArray(t)&&t.length<=Number(e.value);case"min":return ia(t)>=Number(e.value);case"max":return ia(t)<=Number(e.value);case"oneOf":return Array.isArray(e.value)&&e.value.map(String).includes(String(t));case"pattern":return hc(e.value)?fa(e.value,t):!0;default:return!0}}function fa(e,t){if(!br(t)||typeof t!="string"||e.allowInterpolation&&(Le(t)||xc(t)))return!0;let n=bc(e);return n!==null&&n.test(t)}function bc({regex:e,flags:t}){try{return new RegExp(e,t)}catch(n){return U.error(`A validation pattern does not compile, so it holds back every value: /${e}/${t??""}`,n),null}}function xc(e){return g(e)&&e.trimStart().startsWith("@")}function br(e){return g(e)?e.trim().length>0:Oe.exists(e,void 0)}function ia(e){return typeof e=="number"?e:g(e)||Array.isArray(e)?e.length:0}function hc(e){return m(e)&&"regex"in e}function ma(e,t){if(!t||!vc(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||Rc(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 Rc(e){return e==="https"?"443":"80"}function vc(e){return/^(https?:)?\/\//.test(e)}function ga(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,Ot);new URL(t,Ot).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(Ot,""):o}catch{return t||e}}function pa(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=ga(t.url,n.url),o=Sc(t,n),i=wc(t,n);return{...t,...n,url:r,body:o,headers:i}})}function Sc(e,t){return m(t.body)&&m(e?.body)?{...e.body,...t.body}:t.body??e?.body}function wc(e,t){return m(t.headers)&&m(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function qe(e,t){let n={...e};for(let r of Object.keys(t??{})){let o=t?.[r];o!==void 0&&(n[r]=o)}return n}var Tc={uppercase:e=>e.toUpperCase(),lowercase:e=>e.toLowerCase(),"remove-space":e=>e.replace(/\s+/g,""),"remove-accent":e=>e.normalize("NFD").replace(/[\u0300-\u036f]/g,"")};function xt(e,t){return!t||!g(e)||W(e)?e:(Array.isArray(t)?t:[t]).reduce((r,o)=>{let i=Tc[o];return i?i(r):r},e)}import{jsx as Ac}from"react/jsx-runtime";function Z(e){return yi(e,(t,n,r)=>Ac("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}import{useCallback as ya,useState as kc}from"react";function Ke(e=!1){let[t,n]=kc(e),r=ya(()=>n(i=>!i),[]),o=ya(()=>n(!0),[]);return[t,r,o]}import{jsx as ht,jsxs as xr}from"react/jsx-runtime";function ba(e){let{fields:t=[]}=e.section,[n,r,o]=Ke();return xr("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:[ht("legend",{children:xr("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-zinc-600 dark:text-zinc-400",onClick:r,type:"button",children:[ht(_e,{expanded:n}),ht("span",{children:Z(e.title)})]})}),ht(at,{onReveal:o,visible:n,children:xr("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-zinc-300 pl-4 dark:border-zinc-600","data-slot":"field-set-content",children:[e.description&&ht("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:Z(e.description)}),e.group]})})]})}import{jsx as mn,jsxs as xa}from"react/jsx-runtime";function ha(e){let t=xa("div",{className:"flex flex-col",children:[e.title&&mn("legend",{className:"mb-3 font-medium text-zinc-800 dark:text-zinc-200",children:Z(e.title)}),e.description&&mn("p",{className:"-mt-2 text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:Z(e.description)})]});return e.step?xa("div",{className:"flex flex-row items-start gap-4",children:[mn("div",{className:"bg-primary text-primary-foreground flex size-6 shrink-0 items-center justify-center rounded-full",children:mn("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}import{jsx as Ra,jsxs as Fc}from"react/jsx-runtime";function Xe(e){return Fc("fieldset",{className:"flex w-full min-w-0 flex-col data-[empty=false]:gap-6","data-empty":e.empty,"data-slot":"field-set",id:e.id,children:[Ra(ha,{description:e.description,step:e.step,title:e.title}),Ra("div",{className:"w-full min-w-0",children:e.children})]})}import{jsx as Cc}from"react/jsx-runtime";function le(e){return Cc("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 hr}from"react/jsx-runtime";function va(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=qe(e.style,{compact:e.section.advanced?.compact}),o=hr(le,{compact:r,children:e.children});if(!e.section.title&&!e.section.description)return o;let i=O(e.section.title,e.translations),a=O(e.section.description,e.translations);return e.section.advanced?.collapsible?hr(ba,{description:a,group:o,section:e.section,title:i}):hr(Xe,{description:a,empty:t.length===0,id:e.section.id?.toString(),step:n,title:i,children:o})}import{jsx as Nc}from"react/jsx-runtime";function Sa(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return Nc("div",{"data-slot":"field-control",className:"w-full",children:t})}import{jsx as Rt,jsxs as wa}from"react/jsx-runtime";function Ta(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=qe(e.style,{compact:e.section.advanced?.compact}),o=Rt(le,{compact:r,children:e.children});if(!e.section.title&&!e.section.description)return o;let i=O(e.section.title,e.translations),a=O(e.section.description,e.translations);return e.section.advanced?.collapsible?wa("fieldset",{"data-slot":"field-set","data-advanced":"true","data-expanded":!0,"data-empty":t.length===0,className:"flex flex-col",id:e.section.id?.toString(),children:[Rt("legend",{children:Rt("span",{className:"flex items-center gap-2 text-base font-medium text-zinc-600 dark:text-zinc-400",children:Z(i)})}),wa("div",{className:"mt-3 ml-1.5 flex flex-col gap-4 border-l-2 border-zinc-300 pl-4 dark:border-zinc-600","data-slot":"field-set-content",children:[a&&Rt("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:Z(a)}),o]})]}):Rt(Xe,{description:a,empty:t.length===0,id:e.section.id?.toString(),step:n,title:i,children:o})}import{jsx as Aa}from"react/jsx-runtime";function ka(){return Aa("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:Aa("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-zinc-200 dark:bg-zinc-800"})})}function Ec(e,t){return e.fields.every(n=>Fa(n,t))}function Fa(e,t){return t[e.name]?.hidden??e.hidden??!1}function Ic(e,t){return se(e)?Ec(e,t):Fa(e,t)}function gn(e,t,n){return n&&(e[n.name]?.hidden??n.hidden??!1)||t.length===0?!0:t.every(r=>Ic(r,e))}import{jsx as vt,jsxs as Ca}from"react/jsx-runtime";function Lc(e){return gn({},e.fields)?null:e.children}function Na(e){let t=_t(e.sections,e.definition,e.context),n=e.guard??Lc,r=e.fieldSet??Ta;return vt("div",{className:"h-full w-full",children:vt("form",{noValidate:e.noValidate,action:e.action,onSubmit:e.onSubmit,children:Ca(le,{children:[t.map((o,i)=>Ca(n,{fields:o.fields??[],children:[vt(r,{advanced:e.advanced,section:o,step:i+1,style:e.config.style,translations:e.translations,children:e.children({disabled:e.readOnly,fields:o.fields})}),o.advanced?.separator&&vt(ka,{})]},`key-${o.id}-${i}`)),e.control&&vt(Sa,{isPending:e.isPending,children:e.control})]})})})}import{jsx as Ea}from"react/jsx-runtime";function Rr(e){return Ea("p",{className:"-mt-2 text-xs leading-normal font-normal text-zinc-600 dark:text-zinc-400 [[data-slot=column]_&]:md:line-clamp-2",title:e.title,children:e.children})}function pn(e){let t=g(e.text)?e.text:e.text?.message;if(!t)return null;let n=De(t,{context:e.context,env:e.config?.env},xe(e.localization?.lang,e.context));return Ea(Rr,{title:g(e.text)?void 0:e.text?.title,children:Z(N(n,e.localization?.translations))})}import{jsx as Ia,jsxs as La}from"react/jsx-runtime";function yn(e){let t={context:e.context,env:e.config?.env,value:e.value},n=e.localization?.translations,r=xe(e.localization?.lang,e.context),[o,i]=Ke(()=>m(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),a=m(e.text)&&g(e.text.title)?Z(N(De(e.text.title,t,r),n)):void 0,s=N(De(g(e.text)?e.text:e.text?.message,t,r),n),l=Z(s);return l?La("div",{className:"flex flex-col gap-2",children:[a&&La("button",{className:"flex items-center gap-1 text-left text-xs font-medium text-zinc-700 hover:text-zinc-900 dark:text-zinc-300 dark:hover:text-zinc-100",onClick:i,type:"button",children:[a,Ia(_e,{expanded:o})]}),o&&Ia(Rr,{title:s,children:l})]}):null}import{atom as Ve}from"jotai";import{deepEqual as vr}from"fast-equals";function St(e,t){let{[t]:n,...r}=e;return r}function Da(e,t){return Ve(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);o!=null?vr(i[t],o)||r(e,{...i,[t]:o}):t in i&&r(e,St(i,t))})}function Oa(e,t,n){let{merge:r,validateTarget:o}=n;return Ve(i=>{let a=i(e)[t];return a?r(Object.values(a)):void 0},(i,a,s,l)=>{if(!o(s))return;let u=i(e),c={...u[s]??{}};if(l!=null){vr(c[t],l)||(c[t]=l,a(e,{...u,[s]:c}));return}t in c&&(delete c[t],a(e,Object.keys(c).length===0?St(u,s):{...u,[s]:c}))})}function Dc(e){return Ve(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function Oc(e){return Ve(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let s of r)s in i&&(delete i[s],a=!0);a&&n(e,i)})}function Pc(e){return Ve(null,(t,n,r)=>{let o=t(e);vr(o,r)||n(e,r)})}function Pa(e){return Ve(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let s of r)s in i&&(delete i[s],a=!0);for(let s in i){let l={...i[s]},u=!1;for(let c of r)c in l&&(delete l[c],u=!0,a=!0);u&&(Object.keys(l).length===0?delete i[s]:i[s]=l)}a&&n(e,i)})}function pe(e={}){let t=Ve(e);return{atom:t,clearAll:Dc(t),clear:Oc(t),bulkReport:Pc(t)}}var Vc=pe(),Te=Vc.atom;import{useAtomValue as $a}from"jotai";import{useMemo as Va}from"react";function G(e,t){return Va(()=>Da(e,t),[e,t])}function bn(e,t,n){return Va(()=>Oa(e,t,n),[e,t,n])}import{atom as za}from"jotai";var Sr=pe(),E=Sr.atom,Ma=Sr.clearAll,_a=Sr.clear,wr=za({}),Tr=za(null);import{jsx as zc}from"react/jsx-runtime";function Ba(e){let t=$a(G(E,e.field.name)),n=$a(G(Te,e.field.name));return zc(yn,{config:e.config,context:e.context,localization:e.localization,text:n?.description??e.field.description,value:t})}import{twMerge as Mc}from"tailwind-merge";import{jsx as Ha,jsxs as _c}from"react/jsx-runtime";function Ua(e){let t=e.style?.showOptionalLabel??!0,n=ge(e.field)||j(e.field);return _c("label",{"data-slot":"field-label","data-normal":n,className:Mc("flex w-fit items-center text-sm leading-snug font-medium select-none","data-[normal=true]:font-normal [[data-slot=column]_&]:md:w-full","group-data-[readonly=true]:cursor-not-allowed group-data-[readonly=true]:opacity-50"),htmlFor:e.field.name,title:g(e.children)?e.children:void 0,children:[Ha("span",{className:"[[data-slot=column]_&]:md:truncate",children:e.children}),t&&!e.field.required&&Ha("span",{className:"ml-2 flex-shrink-0 text-sm text-zinc-600 dark:text-zinc-400",children:Q("(Optional)",e.translations)})]})}import{jsx as $c}from"react/jsx-runtime";function xn(e){return $c(pn,{config:e.config,context:e.context,localization:e.localization,text:e.field.description})}import{jsx as Ga,jsxs as Bc}from"react/jsx-runtime";function Ya(e){let t=e.description??xn,n={context:e.context,env:e.config?.env},r=De(e.field.label,n,xe(e.localization?.lang,e.context));return Bc("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[Ga(Ua,{field:e.field,style:e.config?.style,translations:e.localization?.translations,children:N(r,e.localization?.translations)}),e.horizontal===!0&&Ga(t,{config:e.config,context:e.context,field:e.field,localization:e.localization})]})}import{Fragment as Hc,jsx as Wa,jsxs as Uc}from"react/jsx-runtime";function Za(e){let t=e.description??xn;return Uc(Hc,{children:[e.field.name&&e.field.label&&Wa(Ya,{config:e.config,context:e.context,description:e.description,field:e.field,horizontal:e.horizontal,localization:e.localization}),e.children,e.horizontal===!1&&Wa(t,{config:e.config,context:e.context,field:e.field,localization:e.localization})]})}function hn(e,t){return e?t(e):null}import{useCallback as xd,useEffect as hd,useRef as Rd}from"react";import{atom as ja}from"jotai";var qa=ja(null),Ka=qa,Ar=Symbol("host-value-missing");function kr(e){return e===Ar?{found:!1,value:void 0}:{found:!0,value:e}}function Xa(e){return ja(t=>{let n=t(qa);if(!n)return Ar;let r=Ee(e,n);return r.found?r.value:Ar})}import{createContext as Gc}from"react";var Yc=e=>e,Ae=Gc(Yc);import{use as Wc,useCallback as Zc,useMemo as jc}from"react";import{useAtomValue as qc,useStore as Kc}from"jotai";function Xc(e){return Wc(Ae)(e)}function Ja(e){let t=Xc(e);return jc(()=>Xa(t),[t])}function Rn(e){return kr(qc(Ja(e)))}function Qa(e){let t=Ja(e),n=Kc();return Zc(()=>kr(n.get(t)),[t,n])}var Fr=pe(),vn=Fr.atom,es=Fr.clear,ts=Fr.bulkReport;var Jc=pe(),wt=Jc.atom,Qc=pe(),Je=Qc.atom;import{deepEqual as ld}from"fast-equals";import{use as ud,useCallback as is,useTransition as cd}from"react";import{use as ed,useEffect as ns,useEffectEvent as td,useMemo as nd}from"react";function rs(e,t,n,r){let{name:o}=e,i=nd(()=>la(e,r),[e,r]),s=ed($e)||Se(e);ns(()=>{o&&t(o,i,e)},[o,i,e,t]);let l=td(u=>{u&&n(u,{keepValue:s})});return ns(()=>()=>{l(o)},[o]),i}import{useLayoutEffect as rd,useRef as od}from"react";function te(e){let t=od(e);return rd(()=>{t.current=e}),t}import{useSetAtom as Qe,useStore as dd}from"jotai";import{useCallback as id,useEffect as ad,useRef as sd}from"react";function os(){let e=sd(null);return ad(()=>()=>{e.current&&clearTimeout(e.current)},[]),id((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}function fd(e){return document.activeElement?.getAttribute("name")===e}function as(e,t){let n=dd(),r=e.field.advanced?.entity,o=os(),[,i]=cd(),a=ud(Ae),{setValue:s,value:l,setSource:u}=t,c=te(l),R=e.localization?.translations,y=te(R),b=rn(e.field),k=Qe(E),x=Qe(Te),C=Qe(G(vn,e.field.name)),P=Qe(wr),w=Qe(Tr),Y=Qe(wt),V=rs(e.field,e.onRegister,e.onUnmount,R),z=N(e.commonProps.placeholder,R),H={...e.commonProps,placeholder:z};function _(d){let p=e.getField(d);return p?{hidden:p.hidden,keepValue:Se(p)}:n.get(Je)[d]}function ye(d){let p=e.getField(d);if(p&&ve(p)){let f=p.advanced?.transform;if(f)return f}}function ne(d,p){if(!e.onValueChange)return;let f=e.getField(d);f&&e.onValueChange({name:a(d),type:f.type,value:p})}function ce(d,p){k(f=>({...f,[d]:p})),P(f=>({...f,[d]:p})),ne(d,p)}function Fe(d){let p=n.get(E),f=Object.keys(p).filter(v=>d.some(F=>v===F||v.startsWith(`${F}.`)));if(f.length===0||(k(v=>f.reduce((F,$)=>St(F,$),v)),!e.onValueChange))return f;for(let v of f)ne(v,void 0);return f}function be(d,p,f,v){let F=p.map(D=>cn(D,d));x(D=>f?F.reduce((I,re)=>({...I,[re]:f}),D):F.reduce((I,re)=>St(I,re),D));let $=F.filter(D=>{if(f!==void 0&&f.hidden!==!0)return!1;let I=_(D);return I?.keepValue===!0?!1:f?.hidden===!0||I?.hidden===!0});$.length>0&&Ce(Fe($),v)}function Ce(d,p){for(let f of d){if(p.has(f))continue;p.add(f);let v=e.getField(f)?.event?.change;v&&ar(v,({states:F})=>{sr(null,F,($,D)=>{be(f,$,D,p)})})}}let ot=te(d=>{if(e.field.advanced?.transient)return;let p=ve(e.field)?xt(d,e.field.advanced?.transform):d;s(p),e.onValueChange&&e.onValueChange({name:a(e.field.name),type:e.field.type,value:p})}),Me=te(d=>{let p=e.field.event?.change;if(!p)return;let f=xe(e.localization?.lang);ar(p,({sources:v,states:F,values:$})=>{i(()=>{bi(d,v,(D,I)=>{u(cn(D,e.field.name),I)},f),sr(d,F,(D,I)=>{be(e.field.name,D,I,new Set([e.field.name]))})}),Ri(d,$,(D,I,re)=>{let K=cn(D,e.field.name);if(n.get(Je)[K]){Pt(I)&&Y(Pn=>({...Pn,[K]:I}));return}let Hr=ye(K),Ur=e.getField(K),Gr=Hr?xt(I,Hr):I,Dn=Ur?ee(Ur,Gr):Gr,On=n.get(E)[K];if(re.onlyIfTargetEmpty&&!W(On)){let Pn=n.get(wr)[K];if(!Object.is(Pn,On))return}if(!ld(Dn,On)){if(fd(K)){w({target:K,value:Dn});return}ce(K,Dn)}},f)})}),h=is(d=>{let f=V.safeParse(d).error?.issues.map(D=>D.message)??[],v=e.field.validation?.custom,F=v?da(d,v,D=>n.get(E)[D],y.current):[],$=[...f,...F];C($.length>0?$:void 0)},[e.field.validation?.custom,V,C,n,y]),S=te(()=>{let d=n.get(Tr);d?.target===e.field.name&&(w(null),W(n.get(E)[d.target])&&ce(d.target,d.value))}),T=is(d=>{if(!b){let p=n.get(E)[e.field.name],f=me(e.field)?Ne(p)?p:"":d.target.value;e.config.validation.blur&&h(f)}S.current()},[b,e.config.validation.blur,e.field,S,n,h]);return{applyChangeEventsRef:Me,commonProps:H,entity:r,hasClickable:b,onBlur:T,onValueChangeRef:ot,setTimeoutRef:o,validated:h,valueRef:c}}import{deepEqual as md}from"fast-equals";import{useAtom as gd}from"jotai";import{useCallback as pd,useEffect as yd,useRef as bd,useEffectEvent as ss}from"react";function ls(e){let{name:t}=e,n=bd(!1),[r,o]=gd(G(E,t)),{found:i,value:a}=Rn(t),s=ss((c,R=!1)=>{let y=ee(e,c),b=ve(e)?xt(y,e.advanced?.transform):y;!R&&!md(r,b)&&(n.current=!0),o(b)}),l=ss((c,R)=>{if(L(R)){s(R);return}if(L(e.defaultValue)){s(e.defaultValue,!0);return}c&&s(R)});yd(()=>{l(i,a)},[i,a,e.defaultValue]);let u=pd(()=>n.current?(n.current=!1,!0):!1,[]);return{setValue:o,shouldSkipOnChange:u,value:r}}import{Fragment as Sd,jsx as et,jsxs as wd}from"react/jsx-runtime";function us(e){let{useSource:t,getValue:n,shouldSkipChange:r,dispatchChange:o,buildInitialSelected:i,isInitialReady:a}=e.strategies,{setValue:s,shouldSkipOnChange:l,value:u}=ls(e.field),{data:c,setSource:R,isStaticSource:y}=t(e.field,e.config,u),{applyChangeEventsRef:b,commonProps:k,entity:x,hasClickable:C,onBlur:P,onValueChangeRef:w,setTimeoutRef:Y,validated:V,valueRef:z}=as(e,{setValue:s,value:u,setSource:R}),{getField:H}=e,_=Rd(!1),{found:ye}=Rn(e.field.name),ne=Qa(e.field.name),{commonPropsWithOptions:ce,defaultValue:Fe}=Hi(e.field,k,c,u,y?e.localization?.translations:void 0),be=Ui(e.field,Fe),Ce=!!ce.disabled;hd(()=>{_.current||queueMicrotask(()=>{if(_.current)return;let{found:T,value:d}=ne();if(!(T||L(e.field.defaultValue)))return;if(!e.field.event?.change){_.current=!0;return}let f=T?d:void 0,v=ee(e.field,L(f)?f:e.field.defaultValue);L(v)&&a(e.field,v,c)&&(_.current=!0,H(e.field.name)&&b.current(i(v,c,x)))})},[b,i,c,x,H,ye,a,e.field,ne]);let ot=xd(T=>{if(Ce)return;let d=n(T,e.field);r({field:e.field,shouldSkipOnChange:l,hasClickable:C,inputValue:d,valueRef:z})||(w.current(d),e.config.validation.change&&V(d),e.field.event?.change&&o({applyChangeEventsRef:b,data:c,entity:x,inputValue:d,setTimeoutRef:Y}))},[b,c,o,x,n,C,Ce,w,e.config.validation.change,e.field,Y,r,l,V,z]),Me=me(e.field),h=e.readOnly||Me&&!Ce,S=e.readOnly||Me?{...ce,name:void 0}:ce;return hn(e.config.inputs[e.field.type],T=>wd(Sd,{children:[et(Za,{config:e.config,context:e.context,description:Ba,field:e.field,horizontal:e.horizontal,localization:e.localization,children:et(T,{...e.dataAttributes,...S,...e.ariaAttributes,...be,onBlur:P,onChange:ot})}),h&&et(vd,{name:e.field.name,...be})]}))}function vd(e){return e.checked!==void 0?et("input",{name:e.name,type:"hidden",value:String(e.checked)}):Array.isArray(e.value)?e.value.map((t,n)=>et("input",{name:e.name,type:"hidden",value:String(t)},n)):et("input",{name:e.name,type:"hidden",value:e.value==null?"":String(e.value)})}import{jsx as Td}from"react/jsx-runtime";function tt(e){return function(n){return Td(us,{...n,strategies:e})}}import{deepEqual as Nd}from"fast-equals";function Sn(e){return Ne(e)?e:String(e)}import{atom as Ad}from"jotai";var kd=e=>{let t=pa(e);if(t)return t},Fd=e=>e.trim()!=="",Tt=Ad({}),wn={merge:kd,validateTarget:Fd},cs=Pa(Tt);import{useSetAtom as Cd}from"jotai";function Tn(e){return{data:null,setSource:Cd(bn(Tt,e.name,wn))}}var ds=tt({useSource:Tn,getValue:(e,t)=>{let n=e.target.value;return Pe(t)?g(n)?Xo(n,dt(t)):n:ee(t,n)},shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&Nd(t,n.current),dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current({value:t})},300)},buildInitialSelected:e=>({value:Sn(e)}),isInitialReady:(e,t)=>L(t)});import{deepEqual as Dd}from"fast-equals";import{useAtom as Ld}from"jotai";import Ed from"swr";function fs(e=null,t,n=!1){let{data:r,error:o}=Ed(Id(e,t,n),t.fetcher.provider);if(o&&U.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return Co(r,e.namespace)}return null}function Id(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!Le(e.url)){if(ma(e.url,t.fetcher.remotePatterns))return e;U.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function ms(e,t,n){let r=Bi(e,n),[o,i]=Ld(bn(Tt,e.name,wn)),a=o??r,s=fs(a,t,e.disabled),l=Array.isArray(a);return[s,i,l]}function Od(e,t,n){let[r,o,i]=ms(e,t,n);return{data:r,setSource:o,isStaticSource:i}}function Pd(e,t){return ae(e)&&t===""}var gs=tt({useSource:Od,getValue:e=>e.target.value,shouldSkipChange:({field:e,shouldSkipOnChange:t,hasClickable:n,inputValue:r,valueRef:o})=>Pd(e,r)||!n&&t()&&(!r||Dd(r,o.current)),dispatchChange:({applyChangeEventsRef:e,data:t,entity:n,inputValue:r})=>{e.current(Wn(r,t,n))},buildInitialSelected:(e,t,n)=>Wn(Sn(e),t,n),isInitialReady:(e,t,n)=>(!Ze(e)||!!n&&n.length>0)&&L(t)});var ps=tt({useSource:Tn,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)=>L(t)});import{jsx as Cr}from"react/jsx-runtime";function ys(e){return Re(e.field)||Pe(e.field)?Cr(ds,{...e}):Ti(e.field)?Cr(ps,{...e}):Cr(gs,{...e})}import{use as bs,useEffect as Vd}from"react";import{jsx as Nr}from"react/jsx-runtime";function xs(e){return!e.errors||e.errors.length===0?null:Nr(zd,{errors:e.errors,name:e.name})}function zd(e){let t=bs(it),n=bs(Et);return Vd(()=>{n&&t()},[n,t]),Nr("ul",{className:"text-sm text-red-600 dark:text-red-500",id:e.name?`${e.name}-error`:void 0,children:e.errors.map((r,o)=>Nr("li",{children:r},e.name?`${e.name}-error-${o}`:o))})}import{twMerge as Md}from"tailwind-merge";import{jsx as _d}from"react/jsx-runtime";function An(e){let t=e.errors&&e.errors.length>0;return _d("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[bo]:"true"},...e.disabled&&{[xo]:"true"},"data-orientation":e.orientation,className:Md("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 $d}from"tailwind-merge";import{jsx as Bd}from"react/jsx-runtime";function hs(e){return Bd(An,{...e,orientation:"vertical",className:$d("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as Hd}from"tailwind-merge";import{jsx as Ud}from"react/jsx-runtime";function Rs(e){return Ud(An,{...e,orientation:"horizontal",className:Hd("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 vs}from"react/jsx-runtime";function Ss(e){let t=rn(e.field),n=j(e.field),r=Fi(e.field);return e.horizontal?vs(Rs,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):vs(hs,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function ws(e){if(!e.field.type)return null;let t=Vi(e.field,e.disabled,e.localization,e.now),n=ji(e.field),r=Zi(e.field,e.errors),o=!!e.field.disabled===t.disabled?e.field:{...e.field,disabled:t.disabled};return e.children({ariaAttributes:r,commonProps:t,dataAttributes:n,field:o,horizontal:e.horizontal,localization:e.localization,readOnly:e.readOnly})}import{twMerge as Gd}from"tailwind-merge";import{jsx as Er,jsxs as Yd}from"react/jsx-runtime";function Ts(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors:void 0,{horizontal:r=!1}=qe(e.style,{horizontal:ki(e.field)}),o=Ci(e.field,e.disabled),i=Ni(e.field,e.disabled);return Yd("div",{className:Gd("flex flex-col gap-3",Ji(t)),children:[Er(Ss,{disabled:o,errors:n,field:e.field,horizontal:r,children:Er(ws,{disabled:o,errors:n,field:e.field,horizontal:r,localization:e.localization,now:e.now,readOnly:i,children:e.children})}),Er(xs,{errors:n,name:e.field.name})]})}import{memo as Wd,useMemo as Zd}from"react";import{useAtomValue as As}from"jotai";import{jsx as qd}from"react/jsx-runtime";function jd(e){let t=As(G(Te,e.field.name)),n=As(G(vn,e.field.name)),r=t?.disabled,o=Zd(()=>r===void 0||r===e.field.disabled?e.field:{...e.field,disabled:r},[r,e.field]);return t?.hidden??e.field.hidden??!1?null:qd(Ts,{...e,errors:n,field:o})}var ks=Wd(jd);import{twMerge as Ir}from"tailwind-merge";import{Fragment as Kd,jsx as q,jsxs as ke}from"react/jsx-runtime";function Fs(e){let t=e.isMultiField||e.collapsed!=null,[n,r,o]=Ke(t?!e.collapsed:!0);function i(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}let a=c=>fe(Q(c,e.translations),{index:e.index+1,label:e.label}),s=e.canRemove&&e.onRemove!=null&&q("button",{"aria-label":a("Remove {label} item {index}"),className:Ir("flex size-6 items-center justify-center rounded text-xl leading-none text-zinc-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:outline-none","dark:text-zinc-500 dark:hover:text-red-400"),onClick:i,type:"button",children:q("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),l=ke("div",{className:"flex min-w-0 flex-col font-medium text-zinc-700 dark:text-zinc-400",children:[q("span",{className:"text-base",children:e.previewLabel??ke(Kd,{children:[e.label," ",e.index+1]})}),!n&&e.previewTags&&q("div",{className:"flex items-center gap-2 overflow-hidden text-xs font-normal text-ellipsis whitespace-nowrap text-zinc-500 dark:text-zinc-500",children:e.previewTags})]}),u=ke("div",{className:Ir("flex items-center justify-between gap-2",e.isMultiField&&n&&"mb-3"),children:[t?ke("div",{className:"flex min-w-0 grow items-center gap-2",children:[ke("button",{"aria-expanded":n,"aria-label":a(n?"Collapse {label} {index}":"Expand {label} {index}"),className:Ir("group flex grow items-center gap-2 rounded p-1 text-left text-zinc-400","focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:outline-none","dark:text-zinc-500"),onClick:r,type:"button",children:[q(_e,{expanded:n}),l]}),!n&&e.previewBadge&&q("div",{className:"ml-auto shrink-0",children:e.previewBadge})]}):l,s]});return e.isMultiField?ke("div",{"data-slot":"list-item-card",className:"box-border w-full min-w-0 rounded-lg border border-zinc-100 p-4 dark:border-zinc-900",children:[u,q(at,{onReveal:o,visible:n,children:q(le,{children:e.children})})]}):t?ke("div",{className:"box-border flex w-full min-w-0 flex-col gap-2",children:[u,q(at,{onReveal:o,visible:n,children:q(le,{children:e.children})})]}):ke("div",{className:"box-border flex w-full min-w-0 items-start gap-2",children:[q("div",{className:"flex min-w-0 grow flex-col",children:q(le,{children:e.children})}),s&&q("div",{className:"shrink-0",children:s})]})}import{Fragment as Jd}from"react";import{twMerge as Cs}from"tailwind-merge";import{useAtomValue as Xd}from"jotai";function kn(e,t){return Xd(G(E,e))??t}import{jsx as At,jsxs as Ns}from"react/jsx-runtime";function Es({className:e,dateFormat:t,initialValue:n,lang:r,name:o,options:i,separator:a,staticLabel:s}){let l=kn(o??"",n);if(s===void 0&&i){let y=(Array.isArray(l)?l:l==null||l===""?[]:[l]).filter(b=>b!=null&&b!=="").map(b=>Yi(b,i));return y.length===0?null:At("div",{className:"flex items-center gap-1.5 overflow-hidden",children:y.map((b,k)=>Ns(Jd,{children:[(a||k>0)&&At("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),At("span",{"aria-label":b,className:Cs("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:b,children:b})]},`${k}:${b}`))})}if(s===void 0&&(W(l)||m(l)||Array.isArray(l)))return null;let u=String(l),c=s??(t?Ge(u,t,r):u);return Ns("div",{className:"flex items-center gap-1.5 overflow-hidden",children:[a&&At("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),At("span",{"aria-label":c,className:Cs("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:c,children:c})]})}function ue(e,t){return Ee(e,t).value}import{selectAtom as Qd}from"jotai/utils";import{shallowEqual as ef}from"fast-equals";import{useAtomValue as tf}from"jotai";import{useMemo as Is}from"react";function nf(e){let t=`${e}.`;return n=>{let r={};for(let o in n)o.startsWith(t)&&(r[o.slice(t.length)]=n[o]);return r}}function Fn(e,t){let n=Is(()=>Qd(E,nf(e),ef),[e]),r=tf(n);return Is(()=>{let o=t?ue(e,t):void 0;return Object.keys(r).length===0?o:m(o)?{...o,...r}:r},[r,e,t])}import{useMemo as Lr}from"react";import{jsx as kt}from"react/jsx-runtime";function rf(e){return typeof e=="string"?{field:e}:e}function Dr(e){let t=Lr(()=>(Array.isArray(e.previews)?e.previews:[e.previews]).map(rf),[e.previews]);return t.some(n=>n.when!==void 0)?kt(of,{items:t,...e}):kt(Ls,{items:t,itemValue:void 0,...e})}function of(e){let t=Fn(e.name,e.value);return kt(Ls,{itemValue:t,...e})}function Ls({className:e,fields:t,items:n,itemValue:r,label:o="Preview",localization:i,name:a,value:s}){let l=Lr(()=>t?un(t):void 0,[t]),u=Lr(()=>{let c=[];for(let[R,y]of n.entries()){if(y.when!==void 0&&!We(r,y.when))continue;if(y.label!==void 0){c.push({key:y.field??`label:${y.label}:${R}`,staticLabel:N(y.label,i?.translations)});continue}if(y.field===void 0)continue;let b=`${a}.${y.field}`,k=s!=null?ue(b,s):void 0,x=l?.[y.field],C=x?Gi(x,i):void 0;c.push({dateFormat:je(x),key:`${R}:${y.field}`,initialValue:k,options:C,previewName:b})}return c},[n,r,i,a,s,l]);return u.length===0?null:kt("div",{"aria-label":o,className:"flex items-center gap-1.5 overflow-hidden",children:u.map((c,R)=>kt(Es,{className:e,dateFormat:"dateFormat"in c?c.dateFormat:void 0,initialValue:"initialValue"in c?c.initialValue:void 0,lang:i?.lang,name:"previewName"in c?c.previewName:void 0,options:"options"in c?c.options:void 0,separator:R>0,staticLabel:"staticLabel"in c?c.staticLabel:void 0},c.key))})}import{Fragment as af,jsx as sf}from"react/jsx-runtime";function Ds({children:e,dateFormat:t,initialValue:n,lang:r,name:o}){let i=kn(o,n),s=W(i)||m(i)||Array.isArray(i)?"":String(i),l=s&&t?Ge(s,t,r):s;return sf(af,{children:e(l)})}import{useMemo as lf}from"react";import{jsx as Ft}from"react/jsx-runtime";function Os({canRemove:e,children:t,field:n,index:r,isMultiField:o,itemKey:i,label:a,localization:s,onRemove:l,previewBadge:u,previewLabel:c,previewTags:R,value:y}){let{lang:b,translations:k}=s??{},x=`${n.name}.${i}`,C=`${a} ${r+1}`,P=lf(()=>{let w=g(c)?c:c?.field;return w?je(un(n.fields)[w]):void 0},[n.fields,c]);return Ft(Fs,{canRemove:e,collapsed:n.advanced?.collapsed,index:r,isMultiField:o,label:a,onRemove:l,previewLabel:uf({dateFormat:P,fallbackLabel:C,lang:b,name:x,previewLabel:c,translations:k,value:y}),previewBadge:u?Ft(Dr,{className:"bg-primary text-primary-foreground rounded-md px-1.5 py-0.5 leading-none font-bold uppercase",fields:n.fields,localization:s,name:x,previews:u,value:y}):void 0,previewTags:R?Ft(Dr,{fields:n.fields,localization:s,name:x,previews:R,value:y}):void 0,translations:k,children:t})}function uf({dateFormat:e,fallbackLabel:t,lang:n,name:r,previewLabel:o,translations:i,value:a}){if(o===void 0)return;let s=g(o)?{field:o}:o;return s.when!==void 0?Ft(cf,{dateFormat:e,fallbackLabel:t,item:s,lang:n,name:r,translations:i,value:a}):Ps({dateFormat:e,fallbackLabel:t,item:s,lang:n,name:r,translations:i,value:a})}function cf(e){let t=Fn(e.name,e.value);return(We(t,e.item.when)?Ps(e):void 0)??e.fallbackLabel}function Ps({dateFormat:e,fallbackLabel:t,item:n,lang:r,name:o,translations:i,value:a}){if(n.label!==void 0)return N(n.label,i);if(n.field===void 0)return;let s=`${o}.${n.field}`;return Ft(Ds,{dateFormat:e,initialValue:a?ue(s,a):void 0,lang:r,name:s,children:l=>l||t})}import{twMerge as bf}from"tailwind-merge";import{deepEqual as ff}from"fast-equals";import{useAtom as mf,useSetAtom as Vr,useStore as gf}from"jotai";import{use as pf,useCallback as ze,useEffect as Cn,useEffectEvent as zs,useMemo as Ms,useRef as _s,useState as yf}from"react";function nt(e,t,n){return`${e}.${t}.${n}`}function df(e,t){let{initial:n,mounted:r,values:o}=t,i=r[e];if(i)return Pr(e,i,t);let a=o[e];if(a!==void 0)return a;if(n)return ue(e,n)}function Pr(e,{items:t,leafNames:n},r){return t.map(o=>{let i={};for(let a of n)i[a]=df(nt(e,o,a),r);return i})}function Or(e,t=""){let n={};if(!e)return n;for(let[r,o]of Object.entries(e)){let i=`${t}${r}`;n[i]=o,Array.isArray(o)&&o.forEach((a,s)=>{m(a)&&Object.assign(n,Or(a,`${i}.${s}.`))})}return n}function Vs(e,t,n,r){let o=[],i=Math.max(n.length,r.length);for(let a=t;a<i;a++){let s=Or(n[a]),l=Or(r[a]),u=new Set([...Object.keys(s),...Object.keys(l)]);for(let c of u)o.push({name:`${e}.${a}.${c}`,value:l[c]})}return o}function $s(e,t,n){let{min:r,max:o}=dr(e),[i,a]=yf(()=>ea(e,t)),s=te(i),l=_s(i.length),u=gf(),c=Vr(E),R=Vr(wt),y=te(n),b=_s(t),k=Ms(()=>ln(e.fields),[e.fields]),x=Ms(()=>k.map(h=>h.name),[k]),C=ze((h,S)=>{let T=Number(h);return Number.isNaN(T)?!1:Number.isInteger(T)&&S>=0&&String(S)!==h},[]),P=pf(Ae),w=ze(h=>{let S=`${e.name}.`;if(h.startsWith(S)){let T=h.slice(S.length),d=T.indexOf("."),p=d===-1?T:T.slice(0,d),f=Number(p),v=i.indexOf(f);C(p,v)&&(h=`${S}${v}${d===-1?"":T.slice(d)}`)}return P(h)},[e.name,C,i,P]),Y=zs(()=>{let h=b.current;if(!h)return;let S={...u.get(E)},T=!1;for(let d of i)for(let p of x){let f=nt(e.name,d,p);if(f in S)continue;let v=ue(f,h);L(v)&&(S[f]=v,T=!0)}T&&c(S)});Cn(()=>{Y()},[]);let V=ze((h,S)=>Pr(e.name,{items:h,leafNames:x},{mounted:u.get(Je),values:S,initial:b.current}),[e.name,x,u]),z=ze(h=>{y.current?.({name:w(e.name),value:h})},[e.name,y,w]),H=ze((h,S,T)=>{z(T);let d=y.current;if(!d)return;let p=w(e.name);for(let f of Vs(p,h,S,T))d(f)},[z,e.name,y,w]),_=ze(()=>{if(s.current.length>=o)return;let h=l.current++,S=[...s.current,h];a(S),z(V(S,u.get(E)))},[V,z,s,o,u]),ye=ze(h=>{if(s.current.length<=r)return;let S=s.current[h],T=s.current.filter((F,$)=>$!==h),d=u.get(E),p={...d};for(let F of x)delete p[nt(e.name,S,F)];let f=V(s.current,d),v=V(T,p);a(T),c(p),H(h,f,v)},[V,H,e.name,s,x,r,c,u]),ne=Vr(G(Je,e.name)),ce=Se(e);Cn(()=>{ne({items:i,leafNames:x,hidden:e.hidden===!0,keepValue:ce})},[e.hidden,ce,i,x,ne]),Cn(()=>()=>{let h=u.get(E);c({...h,[e.name]:V(s.current,h)}),ne(void 0)},[V,e.name,s,ne,c,u]);let[Fe,be]=mf(G(wt,e.name)),Ce=zs(h=>{let S=fr(e,h),T=u.get(E),d=V(s.current,T);if(ff(d,S))return;let p=[];for(let F=0;F<S.length;F++)p.push(s.current[F]??l.current++);let f={...T};for(let F of s.current)for(let $ of x)delete f[nt(e.name,F,$)];let v={};p.forEach((F,$)=>{let D=S[$];for(let I of k){let re=D[I.name];if(re===void 0)continue;let K=nt(e.name,F,I.name);f[K]=J(I)?re:ee(I,re),J(I)&&(v[K]=re)}}),c(f),a(p),Object.keys(v).length>0&&R(F=>({...F,...v})),H(0,d,S)});Cn(()=>{Fe&&(Ce(Fe),be(void 0))},[Fe,be]);let ot=i.length<o,Me=i.length>r;return[i,_,ye,ot,Me,o,w]}import{jsx as zr,jsxs as Nn}from"react/jsx-runtime";var xf="flex h-9 w-full items-center gap-2 rounded-md border border-dashed border-zinc-200 px-4 text-sm font-medium text-zinc-500 transition-none hover:border-zinc-300 hover:text-zinc-800 focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:ring-offset-2 focus-visible:outline-none dark:border-zinc-800 dark:text-zinc-400 dark:hover:border-zinc-700 dark:hover:text-zinc-200";function Bs(e){let{field:t,localization:n,onValueChange:r,value:o,children:i}=e,a=n?.translations,[s,l,u,c,R,y,b]=$s(t,o,r),k=N(ta(t),a),x=t.advanced?.action?N(t.advanced.action,a):Q("Add item",a),C=y!==1/0,P=Qi(t),{label:w,tags:Y,badge:V}=t.advanced?.preview??{};return zr(Ae.Provider,{value:b,children:Nn("div",{className:"flex w-full flex-col gap-4",children:[s.map((z,H)=>zr(Os,{canRemove:R,field:t,index:H,isMultiField:P,itemKey:z,label:k,localization:n,onRemove:u,previewBadge:V,previewLabel:w,previewTags:Y,value:o,children:i(z)},z)),Nn("button",{"aria-disabled":!c,"aria-label":C?`${x}, ${s.length} of ${y}`:x,className:bf(xf,C?"justify-between":"justify-center",!c&&"cursor-not-allowed opacity-50 hover:border-zinc-200 hover:text-zinc-500 dark:hover:border-zinc-800 dark:hover:text-zinc-400"),disabled:!c,onClick:l,type:"button",children:[Nn("span",{className:"flex items-center gap-2",children:[zr("span",{"aria-hidden":"true",className:"text-base leading-none",children:"+"}),x]}),C&&Nn("span",{"aria-hidden":"true",className:"text-zinc-400 tabular-nums dark:text-zinc-500",children:[s.length," / ",y]})]})]})})}import{jsx as hf}from"react/jsx-runtime";function Hs(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0,n=O(e.field.label,e.translations),r=O(e.field.description,e.translations);return hf(Xe,{description:r,empty:t,id:e.field.name,title:n,children:e.children})}import{atom as Rf,useAtomValue as vf}from"jotai";import{useMemo as Sf}from"react";function En(e){let t=Sf(()=>Rf(n=>gn(n(Te),e.fields,e.container)),[e.container,e.fields]);return vf(t)?null:e.children}import{jsx as In}from"react/jsx-runtime";function Us({children:e,field:t,onValueChange:n,localization:r,value:o}){let i=In(Hs,{field:t,translations:r?.translations,children:In(Bs,{field:t,onValueChange:n,localization:r,value:o,children:e})});return In(En,{container:t,fields:t.fields,children:Se(t)?In($e,{value:!0,children:i}):i})}import{twMerge as wf}from"tailwind-merge";import{jsx as Gs,jsxs as Tf}from"react/jsx-runtime";function Ys(e){let t=e.description??pn,n=Xi(e.column?.advanced?.cols);return Tf("div",{className:"flex w-full flex-col gap-4",children:[Gs("div",{"data-slot":"column",className:wf("grid grid-cols-1 gap-3 sm:gap-4",n),children:e.children}),e.column?.description&&Gs(t,{config:e.config,context:e.context,localization:e.localization,text:e.column.description})]})}import{Fragment as Ff}from"react";import{useMemo as Af}from"react";import{jsx as kf}from"react/jsx-runtime";function Ws(e){let{fields:t,name:n}=e.field,{index:r}=e,o=Af(()=>Array.isArray(t)?t.map(i=>on(i)||J(i)?{...i,name:`${n}.${r}.${i.name}`}:se(i)?{...i,fields:i.fields.map(a=>({...a,name:`${n}.${r}.${a.name}`}))}:i):[],[r,n,t]);return kf(Ct,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:o,onValueChange:e.onValueChange,style:e.style,localization:e.localization,value:e.value,children:e.children})}import{jsx as Nt,jsxs as Nf}from"react/jsx-runtime";function Cf(e,t){return se(e)?`column:${e.fields.map(r=>r.name).join("|")||t}`:e.name||`slot:${t}`}function Ct(e){let{field:t,list:n}=e.components,r=Xt(e.context);return _t(e.fields).map((o,i)=>Nf(Ff,{children:[se(o)&&Nt(Ys,{column:o,config:e.config,context:e.context,description:e.components.description,localization:e.localization,children:Nt(Ct,{...e,fields:o.fields})}),on(o)&&Nt(t,{disabled:e.disabled,field:o,now:r,style:e.style,localization:e.localization,children:e.children}),J(o)&&Nt(n,{field:o,onValueChange:e.onValueChange,localization:e.localization,value:e.value,children:a=>Nt(Ws,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:o,index:a,onValueChange:e.onValueChange,style:e.style,localization:e.localization,value:e.value,children:e.children})})]},Cf(o,i)))}import{jsx as Ef}from"react/jsx-runtime";function Zs(e){return n=>Ef(Ct,{...n,components:e})}var js=Zs({description:yn,field:ks,list:Us});import{useSetAtom as qs}from"jotai";import{requestFormReset as If}from"react-dom";import{startTransition as Mr,useActionState as Lf,useCallback as Df,useRef as Of}from"react";function Xs(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},s=qs(ts),l=qs(Ma),u=Of(null),c={data:null,error:null,success:!1},[R,y,b]=Lf(async(x,C)=>{let[P,w]=e(),Y=aa(P,w,a);if(i===!1)return t?await t(C,Y):x;let V=Eo(C),z=Y.safeParse(V);if(!z.success){let _=sa(z.error);return Mr(()=>{s(_)}),_r(V,{description:Q("Please correct the errors and try again.",a),details:[],title:Q("There were validation errors submitting the form.",a)})}let H=Io(z.data);if(t)try{let _=await t(H,Y);if(!_.success)return _r(H,_.error);if(r?.(_.data),!o){let ye=u.current;Mr(()=>{l(),ye&&If(ye)})}return Ks(H,o)}catch(_){return U.error("Error executing form action:",_),_r(H,{title:Q("An unexpected error occurred submitting the form.",a),details:Pf(_,a)})}return Ks(z.data,o)},c),k=Df(x=>{x.preventDefault();let C=x.currentTarget;u.current=C;let P=x.nativeEvent.submitter,w=new FormData(C,P);Mr(()=>{y(w)})},[y]);return[y,R,b,k]}function Pf(e,t){return e instanceof Error?[e.message]:[Q("Unknown error",t)]}function Ks(e,t=!1){return{data:t?e:null,error:null,success:!0}}function _r(e,t){return{data:e,error:t,success:!1}}import{useCallback as Mf,useEffect as _f,useMemo as Br}from"react";import{useCallback as Ln,useRef as zf}from"react";import{useCallback as Vf}from"react";import{useSetAtom as $r}from"jotai";function Js(){let e=$r(es),t=$r(_a),n=$r(cs);return Vf((r,o)=>{let i=Array.isArray(r)?r:[r];e(i),n(i),o?.keepValue||t(i)},[e,n,t])}function Qs(){let e=Js(),t=zf(new Map),n=Ln((a,s,l)=>{t.current.set(a,{field:l,schema:s})},[]),r=Ln((a,s)=>{t.current.delete(a)&&e([a],{keepValue:s?.keepValue})},[e]),o=Ln(()=>{let a=[...t.current];return[Object.fromEntries(a.map(([s,{schema:l}])=>[s,l])),a.map(([,{field:s}])=>s)]},[]),i=Ln(a=>t.current.get(a)?.field,[]);return[o,i,n,r]}import{useSetAtom as $f}from"jotai";import{Fragment as Bf,jsx as rt,jsxs as Hf}from"react/jsx-runtime";function el(e){let t=Br(()=>Li(e.lang,e.translations),[e.lang,e.translations]),n=Br(()=>({lang:e.lang,translations:t}),[e.lang,t]),[r,o,i,a]=Qs(),[s,l,u,c]=Xs(r,e.action,{onSuccess:e.onSuccess,validation:e.config.validation.submit,translations:t}),R=e.config.validation.showError&&!l.success&&l.error,y=!l.success&&l.error?l:null,b=te(e.onValueChange),k=!!e.onValueChange,x=Br(()=>k?w=>b.current?.(w):void 0,[k,b]),C=Mf(w=>rt(ys,{...w,config:e.config,context:e.context,getField:o,onRegister:i,onUnmount:a,onValueChange:x}),[o,i,a,x,e.config,e.context]),P=$f(Ka);return _f(()=>{P(e.value??null)},[P,e.value]),Hf(Bf,{children:[R&&hn(e.config.alert,w=>rt("div",{className:"mb-4 w-full",children:rt(w,{description:l.error?.description,details:l.error?.details,title:l.error.title})})),rt(Et,{value:y,children:rt(Na,{action:s,advanced:e.advanced,config:e.config,context:e.context,control:e.children,definition:e.definition,fieldSet:va,guard:En,isPending:u,noValidate:!0,onSubmit:c,readOnly:e.readOnly,sections:e.sections,translations:t,children:({disabled:w,fields:Y})=>rt(js,{config:e.config,context:e.context,disabled:w,fields:Y,localization:n,onValueChange:x,style:e.config.style,value:e.value,children:C})})})]})}import{Provider as Uf}from"jotai";import{jsx as tl}from"react/jsx-runtime";function Gf(e){return tl(Uf,{children:tl(el,{...e})})}function nl(e,t){for(let n of e){if("name"in n&&typeof n.name=="string"){t.push(n.name);continue}"fields"in n&&nl(n.fields??[],t)}}function Yf(e,t){let n=[];for(let o of e)nl(o.fields??[],n);let r=t;for(let o of n)Ee(o,t).found||(r===t&&(r={...t}),r[o]=void 0);return r}export{Gf as Form,Yf as withDeclaredFields};
@@ -1 +1 @@
1
- "use strict";var l=Object.defineProperty;var O=Object.getOwnPropertyDescriptor;var b=Object.getOwnPropertyNames;var N=Object.prototype.hasOwnProperty;var k=(n,t)=>{for(var r in t)l(n,r,{get:t[r],enumerable:!0})},D=(n,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let e of b(t))!N.call(n,e)&&e!==r&&l(n,e,{get:()=>t[e],enumerable:!(o=O(t,e))||o.enumerable});return n};var M=n=>D(l({},"__esModule",{value:!0}),n);var En={};k(En,{defineCheckbox:()=>sn,defineChips:()=>cn,defineConfig:()=>on,defineCustomInput:()=>fn,defineInput:()=>un,defineRadio:()=>an,defineSelect:()=>pn,defineTextArea:()=>ln});module.exports=M(En);var U="input",H="input/date",v="input/email",X="input/number",G="input/time",F="input/password",V="input/tel",Y="input/text",A=[U,H,v,X,F,V,Y,G],I="textarea",m="radio",y="checkbox";var j="select",B="select/active",K="select/day",$="select/month",W="select/timezone",q="select/year",R=[j,B,K,$,W,q],h="chips",S="chips/day",P="chips/month";var u="http://luna.internal";function C(n){return n!==null&&Object.prototype.toString.call(n)==="[object Object]"}function s(n){return typeof n=="string"}var L={error:(...n)=>{f()&&!E()&&a().error("[Luna Form]",...n)},warn:(...n)=>{f()&&!E()&&a().warn("[Luna Form]",...n)},info:(...n)=>{f()&&!E()&&a().info("[Luna Form]",...n)}},f=()=>typeof a()<"u",E=()=>!0,a=()=>globalThis.console;var z=/{([^}]{1,200})}/;function p(n){return s(n)?z.test(n):Array.isArray(n)?n.some(t=>p(t)):C(n)?Object.values(n).some(t=>p(t)):!1}function w(n){try{return n instanceof FormData?null:s(n)?n:JSON.stringify(n)}catch{return L.error("Failed to stringify body:",n),null}}var J=/(^|[\/?=&])(null|undefined)([\/?=&]|$)/;async function _(n){let[t,r]=Z(n),o=n.body,e=rn(n);if(o&&!d(r)){let g=w(o);g!==null&&(o=g,e=Q(e))}let c=t.origin===u?t.toString().replace(u,""):t.toString(),x=await fetch(c,{body:en(r,o),cache:n.cache,headers:e,method:r}),T=await x.json();if(x.ok)return T;throw T}function Z(n){let t=n.url?.trim();if(!t||!nn(t))throw new Error(`Invalid URL: ${n.url}`);let r=new URL(t,u),o=tn(n);return n.body&&d(o)&&Object.entries(n.body).filter(([,e])=>e!==void 0&&e!=="undefined").forEach(([e,c])=>{r.searchParams.append(e,String(c))}),[r,o]}function Q(n){return{...n,"Content-Type":"application/json"}}function nn(n){return!s(n)||p(n)?!1:!J.test(n)}function tn(n){return n.method??"GET"}function rn(n){return{Accept:"application/json",...n.headers??{}}}function d(n){return n.toUpperCase()==="GET"}function en(n,t){if(!d(n))return t}function on(n){let t={alert:n.alert,env:n.env,fetcher:{provider:_,remotePatterns:n.fetcher?.remotePatterns},inputs:{},style:n.style};return t.validation=n.validation??{blur:!0,change:!0,showError:!0,submit:!0},n.inputs.forEach(({types:r,input:o})=>{(Array.isArray(r)?r:[r]).forEach(c=>{t.inputs[c]=o})}),t}var sn=i([y]),cn=i([h,S,P]),un=i(A),an=i([m]),pn=i(R),ln=i([I]);function fn(n,t){return i(n)(t)}function i(n){return t=>({types:n,input:t})}
1
+ "use strict";var m=Object.defineProperty;var G=Object.getOwnPropertyDescriptor;var Z=Object.getOwnPropertyNames;var X=Object.prototype.hasOwnProperty;var W=(n,e)=>{for(var t in e)m(n,t,{get:e[t],enumerable:!0})},K=(n,e,t,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of Z(e))!X.call(n,r)&&r!==t&&m(n,r,{get:()=>e[r],enumerable:!(o=G(e,r))||o.enumerable});return n};var J=n=>K(m({},"__esModule",{value:!0}),n);var Vn={};W(Vn,{defineCheckbox:()=>$n,defineChips:()=>Un,defineConfig:()=>Cn,defineCustomInput:()=>zn,defineInput:()=>Hn,defineRadio:()=>jn,defineSelect:()=>Bn,defineTextArea:()=>Yn,readDateProps:()=>B});module.exports=J(Vn);var q="input",Q="input/date",nn="input/email",en="input/number",tn="input/time",rn="input/password",on="input/tel",sn="input/text",b=[q,Q,nn,en,rn,on,sn,tn],O="textarea",w="radio",S="checkbox";var an="select",un="select/active",cn="select/day",dn="select/month",ln="select/timezone",fn="select/year",L=[an,un,cn,dn,ln,fn],M="chips",_="chips/day",N="chips/month";var k=["yyyy-MM-dd","MM/dd/yyyy","dd/MM/yyyy","MMMM d, yyyy"],v="data-format",P="data-mode",F="data-reserved";var C="max";var $="min";var d="http://luna.internal";function y(n){return n!==null&&Object.prototype.toString.call(n)==="[object Object]"}function s(n){return typeof n=="string"}var f={error:(...n)=>{T()&&!x()&&l().error("[Luna Form]",...n)},warn:(...n)=>{T()&&!x()&&l().warn("[Luna Form]",...n)},info:(...n)=>{T()&&!x()&&l().info("[Luna Form]",...n)}},T=()=>typeof l()<"u",x=()=>typeof process<"u"&&process.env.NODE_ENV==="production",l=()=>globalThis.console;var a=require("date-fns"),p=require("date-fns/locale"),pn=new Date(2e3,0,1),H=/^\d{4}-\d{2}-\d{2}$/,D="yyyy-MM-dd",gn="MMMM d, yyyy",mn=1e3;var A="en",yn=32,Tn=new Map;function xn(n){return n?Y(Tn,n,()=>An(n),yn):A}function An(n){try{let e=Intl.getCanonicalLocales(n)[0];return e&&Intl.DateTimeFormat.supportedLocalesOf(e).length>0?e:A}catch{return A}}function En(n,e){let t=n.trim();if(t){if(H.test(t))return U(t,D);for(let o of Object.values(Rn)){let r=U(t,e,o);if(r)return r}}}function U(n,e,t){try{let o=(0,a.parse)(n,e,pn,{locale:t});return(0,a.isValid)(o)&&o.getFullYear()>=mn?o:void 0}catch{return}}function Dn(n,e){let t=n?En(n,e):void 0;return t?(0,a.format)(t,D):""}var Rn={en:p.enUS,es:p.es};function In(n){return k.find(e=>e===n)??gn}function E(n){return s(n)&&H.test(n)&&Dn(n,D)||void 0}function hn(n){let e=new Set,t=[];return n.forEach((o,r)=>{let i=E(o);i===void 0?t.push(r):e.add(i)}),{days:[...e].sort(),rejected:t}}var j={days:[],rejected:[]},Qn={reserved:j.days,unreadable:!1};function B(n){return{format:In(n[v]),lang:xn(n.lang),max:E(n[C]),min:E(n[$]),mode:n[P]==="range"?"range":"single",reserved:wn(n[F])}}var bn=32,On=new Map;function wn(n=""){return n?Y(On,n,()=>hn(n.split(",")).days,bn):j.days}function Y(n,e,t,o){let r=n.get(e);if(r!==void 0)return n.delete(e),n.set(e,r),r;let i=n.keys().next().value;n.size>=o&&i!==void 0&&n.delete(i);let c=t();return n.set(e,c),c}var Sn=/{([^}]{1,200})}/;function g(n){return s(n)?Sn.test(n):Array.isArray(n)?n.some(e=>g(e)):y(n)?Object.values(n).some(e=>g(e)):!1}function z(n){try{return n instanceof FormData?null:s(n)?n:JSON.stringify(n)}catch{return f.error("Failed to stringify body:",n),null}}var Ln=/(^|[\/?=&])(null|undefined)([\/?=&]|$)/;async function V(n){let[e,t]=Mn(n),o=n.body,r=vn(n);if(o&&!R(t)){let h=z(o);h!==null&&(o=h,r=_n(r))}let i=e.origin===d?e.toString().replace(d,""):e.toString(),c=await fetch(i,{body:Pn(t,o),cache:n.cache,headers:r,method:t}),I=await c.json();if(c.ok)return I;throw I}function Mn(n){let e=n.url?.trim();if(!e||!Nn(e))throw new Error(`Invalid URL: ${n.url}`);let t=new URL(e,d),o=kn(n);return n.body&&R(o)&&Object.entries(n.body).filter(([,r])=>r!==void 0&&r!=="undefined").forEach(([r,i])=>{t.searchParams.append(r,String(i))}),[t,o]}function _n(n){return{...n,"Content-Type":"application/json"}}function Nn(n){return!s(n)||g(n)?!1:!Ln.test(n)}function kn(n){return n.method??"GET"}function vn(n){return{Accept:"application/json",...n.headers??{}}}function R(n){return n.toUpperCase()==="GET"}function Pn(n,e){if(!R(n))return e}var Fn={blur:!0,change:!0,showError:!0,submit:!0};function Cn(n){let e={alert:n.alert,env:n.env,fetcher:{provider:V,remotePatterns:n.fetcher?.remotePatterns},inputs:{},style:n.style};return e.validation={...Fn,...n.validation},n.env&&"locale"in n.env&&f.warn("env.locale is no longer read: pass the language to the form as lang"),n.inputs.forEach(({types:t,input:o})=>{(Array.isArray(t)?t:[t]).forEach(i=>{e.inputs[i]=o})}),e}var $n=u([S]),Un=u([M,_,N]),Hn=u(b),jn=u([w]),Bn=u(L),Yn=u([O]);function zn(n,e){return u(n)(e)}function u(n){return e=>({types:n,input:e})}
@@ -1 +1 @@
1
- var _="input",O="input/date",b="input/email",N="input/number",k="input/time",D="input/password",M="input/tel",U="input/text",g=[_,O,b,N,D,M,U,k],A="textarea",I="radio",m="checkbox";var H="select",v="select/active",X="select/day",G="select/month",F="select/timezone",V="select/year",y=[H,v,X,G,F,V],R="chips",h="chips/day",S="chips/month";var u="http://luna.internal";function P(n){return n!==null&&Object.prototype.toString.call(n)==="[object Object]"}function s(n){return typeof n=="string"}var C={error:(...n)=>{l()&&!f()&&a().error("[Luna Form]",...n)},warn:(...n)=>{l()&&!f()&&a().warn("[Luna Form]",...n)},info:(...n)=>{l()&&!f()&&a().info("[Luna Form]",...n)}},l=()=>typeof a()<"u",f=()=>!0,a=()=>globalThis.console;var Y=/{([^}]{1,200})}/;function p(n){return s(n)?Y.test(n):Array.isArray(n)?n.some(t=>p(t)):P(n)?Object.values(n).some(t=>p(t)):!1}function L(n){try{return n instanceof FormData?null:s(n)?n:JSON.stringify(n)}catch{return C.error("Failed to stringify body:",n),null}}var j=/(^|[\/?=&])(null|undefined)([\/?=&]|$)/;async function w(n){let[t,r]=B(n),e=n.body,o=q(n);if(e&&!E(r)){let T=L(e);T!==null&&(e=T,o=K(o))}let c=t.origin===u?t.toString().replace(u,""):t.toString(),d=await fetch(c,{body:z(r,e),cache:n.cache,headers:o,method:r}),x=await d.json();if(d.ok)return x;throw x}function B(n){let t=n.url?.trim();if(!t||!$(t))throw new Error(`Invalid URL: ${n.url}`);let r=new URL(t,u),e=W(n);return n.body&&E(e)&&Object.entries(n.body).filter(([,o])=>o!==void 0&&o!=="undefined").forEach(([o,c])=>{r.searchParams.append(o,String(c))}),[r,e]}function K(n){return{...n,"Content-Type":"application/json"}}function $(n){return!s(n)||p(n)?!1:!j.test(n)}function W(n){return n.method??"GET"}function q(n){return{Accept:"application/json",...n.headers??{}}}function E(n){return n.toUpperCase()==="GET"}function z(n,t){if(!E(n))return t}function En(n){let t={alert:n.alert,env:n.env,fetcher:{provider:w,remotePatterns:n.fetcher?.remotePatterns},inputs:{},style:n.style};return t.validation=n.validation??{blur:!0,change:!0,showError:!0,submit:!0},n.inputs.forEach(({types:r,input:e})=>{(Array.isArray(r)?r:[r]).forEach(c=>{t.inputs[c]=e})}),t}var dn=i([m]),xn=i([R,h,S]),Tn=i(g),gn=i([I]),An=i(y),In=i([A]);function mn(n,t){return i(n)(t)}function i(n){return t=>({types:n,input:t})}export{dn as defineCheckbox,xn as defineChips,En as defineConfig,mn as defineCustomInput,Tn as defineInput,gn as defineRadio,An as defineSelect,In as defineTextArea};
1
+ var B="input",Y="input/date",z="input/email",V="input/number",G="input/time",Z="input/password",X="input/tel",W="input/text",R=[B,Y,z,V,Z,X,W,G],I="textarea",h="radio",b="checkbox";var K="select",J="select/active",q="select/day",Q="select/month",nn="select/timezone",en="select/year",O=[K,J,q,Q,nn,en],w="chips",S="chips/day",L="chips/month";var M=["yyyy-MM-dd","MM/dd/yyyy","dd/MM/yyyy","MMMM d, yyyy"],_="data-format",N="data-mode",k="data-reserved";var v="max";var P="min";var c="http://luna.internal";function p(n){return n!==null&&Object.prototype.toString.call(n)==="[object Object]"}function s(n){return typeof n=="string"}var l={error:(...n)=>{g()&&!m()&&d().error("[Luna Form]",...n)},warn:(...n)=>{g()&&!m()&&d().warn("[Luna Form]",...n)},info:(...n)=>{g()&&!m()&&d().info("[Luna Form]",...n)}},g=()=>typeof d()<"u",m=()=>typeof process<"u"&&process.env.NODE_ENV==="production",d=()=>globalThis.console;import{isValid as tn,parse as rn,parseISO as Hn,format as on}from"date-fns";import{enUS as sn,es as an}from"date-fns/locale";var un=new Date(2e3,0,1),C=/^\d{4}-\d{2}-\d{2}$/,x="yyyy-MM-dd",cn="MMMM d, yyyy",dn=1e3;var y="en",ln=32,fn=new Map;function pn(n){return n?U(fn,n,()=>gn(n),ln):y}function gn(n){try{let e=Intl.getCanonicalLocales(n)[0];return e&&Intl.DateTimeFormat.supportedLocalesOf(e).length>0?e:y}catch{return y}}function mn(n,e){let t=n.trim();if(t){if(C.test(t))return F(t,x);for(let r of Object.values(Tn)){let o=F(t,e,r);if(o)return o}}}function F(n,e,t){try{let r=rn(n,e,un,{locale:t});return tn(r)&&r.getFullYear()>=dn?r:void 0}catch{return}}function yn(n,e){let t=n?mn(n,e):void 0;return t?on(t,x):""}var Tn={en:sn,es:an};function xn(n){return M.find(e=>e===n)??cn}function T(n){return s(n)&&C.test(n)&&yn(n,x)||void 0}function An(n){let e=new Set,t=[];return n.forEach((r,o)=>{let i=T(r);i===void 0?t.push(o):e.add(i)}),{days:[...e].sort(),rejected:t}}var $={days:[],rejected:[]},Bn={reserved:$.days,unreadable:!1};function En(n){return{format:xn(n[_]),lang:pn(n.lang),max:T(n[v]),min:T(n[P]),mode:n[N]==="range"?"range":"single",reserved:In(n[k])}}var Dn=32,Rn=new Map;function In(n=""){return n?U(Rn,n,()=>An(n.split(",")).days,Dn):$.days}function U(n,e,t,r){let o=n.get(e);if(o!==void 0)return n.delete(e),n.set(e,o),o;let i=n.keys().next().value;n.size>=r&&i!==void 0&&n.delete(i);let u=t();return n.set(e,u),u}var hn=/{([^}]{1,200})}/;function f(n){return s(n)?hn.test(n):Array.isArray(n)?n.some(e=>f(e)):p(n)?Object.values(n).some(e=>f(e)):!1}function H(n){try{return n instanceof FormData?null:s(n)?n:JSON.stringify(n)}catch{return l.error("Failed to stringify body:",n),null}}var bn=/(^|[\/?=&])(null|undefined)([\/?=&]|$)/;async function j(n){let[e,t]=On(n),r=n.body,o=Mn(n);if(r&&!A(t)){let D=H(r);D!==null&&(r=D,o=wn(o))}let i=e.origin===c?e.toString().replace(c,""):e.toString(),u=await fetch(i,{body:_n(t,r),cache:n.cache,headers:o,method:t}),E=await u.json();if(u.ok)return E;throw E}function On(n){let e=n.url?.trim();if(!e||!Sn(e))throw new Error(`Invalid URL: ${n.url}`);let t=new URL(e,c),r=Ln(n);return n.body&&A(r)&&Object.entries(n.body).filter(([,o])=>o!==void 0&&o!=="undefined").forEach(([o,i])=>{t.searchParams.append(o,String(i))}),[t,r]}function wn(n){return{...n,"Content-Type":"application/json"}}function Sn(n){return!s(n)||f(n)?!1:!bn.test(n)}function Ln(n){return n.method??"GET"}function Mn(n){return{Accept:"application/json",...n.headers??{}}}function A(n){return n.toUpperCase()==="GET"}function _n(n,e){if(!A(n))return e}var Nn={blur:!0,change:!0,showError:!0,submit:!0};function te(n){let e={alert:n.alert,env:n.env,fetcher:{provider:j,remotePatterns:n.fetcher?.remotePatterns},inputs:{},style:n.style};return e.validation={...Nn,...n.validation},n.env&&"locale"in n.env&&l.warn("env.locale is no longer read: pass the language to the form as lang"),n.inputs.forEach(({types:t,input:r})=>{(Array.isArray(t)?t:[t]).forEach(i=>{e.inputs[i]=r})}),e}var re=a([b]),oe=a([w,S,L]),ie=a(R),se=a([h]),ae=a(O),ue=a([I]);function ce(n,e){return a(n)(e)}function a(n){return e=>({types:n,input:e})}export{re as defineCheckbox,oe as defineChips,te as defineConfig,ce as defineCustomInput,ie as defineInput,se as defineRadio,ae as defineSelect,ue as defineTextArea,En as readDateProps};
@@ -1 +1 @@
1
- "use strict";var N=Object.defineProperty;var Fn=Object.getOwnPropertyDescriptor;var Pn=Object.getOwnPropertyNames;var Mn=Object.prototype.hasOwnProperty;var Dn=(n,e)=>{for(var r in e)N(n,r,{get:e[r],enumerable:!0})},Un=(n,e,r,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Pn(e))!Mn.call(n,o)&&o!==r&&N(n,o,{get:()=>e[o],enumerable:!(t=Fn(e,o))||t.enumerable});return n};var Vn=n=>Un(N({},"__esModule",{value:!0}),n);var Fe={};Dn(Fe,{buildFormSchema:()=>Nn,collectIssues:()=>Ln});module.exports=Vn(Fe);var U="input",V="input/date",v="input/email",Y="input/number",j="input/time";var q="textarea",B="radio",X="checkbox",z="list",G="select",H="select/active";var Z="select/month";var $="select/year";var W="chips",K="chips/day",J="chips/month",Q="column";var C="email",nn="number",en="password",rn="tel",tn="text";var on="max";var sn="min";var h="$ref";function f(n){return n!==null&&Object.prototype.toString.call(n)==="[object Object]"}function y(n){return n==null||n===""}function d(n){return typeof n=="string"}var un={error:(...n)=>{O()&&!L()&&E().error("[Luna Form]",...n)},warn:(...n)=>{O()&&!L()&&E().warn("[Luna Form]",...n)},info:(...n)=>{O()&&!L()&&E().info("[Luna Form]",...n)}},O=()=>typeof E()<"u",L=()=>!0,E=()=>globalThis.console;function Yn(n,e){return Object.prototype.hasOwnProperty.call(n,e)}function R(n,e){if(!e||!f(n))return null;let r=e.split(".").filter(o=>o!=="");if(r.length===0)return null;let t=n;for(let o of r)if(f(t)&&Yn(t,o))t=t[o];else if(Array.isArray(t)){let i=Number(o);if(!Number.isInteger(i)||i<0||i>=t.length)return null;t=t[i]}else return null;return t}var jn=/{([^}]{1,200})}/;function S(n){return d(n)?jn.test(n):Array.isArray(n)?n.some(e=>S(e)):f(n)?Object.values(n).some(e=>S(e)):!1}var I={eq:Gn,gt:Wn,gte:Kn,in:Zn,lt:Jn,lte:Qn,neq:Hn,nin:$n,contains:ne,exists:an,empty:ee,truthy:re},qn=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,cn=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function Bn(n){return typeof n=="string"&&qn.test(n)}function Xn(n){return typeof n=="string"&&cn.test(n)}function zn(n){let e=n.match(cn);if(e){let[,r,t,o,i,s,c]=e;return new Date(Number(o),Number(t)-1,Number(r),Number(i??0),Number(s??0),Number(c??0)).getTime()}return NaN}function p(n){return Bn(n)?new Date(n).getTime():Xn(n)?zn(n):Number(n)}function Gn(n,e){return n===e}function Hn(n,e){return n!==e}function Zn(n,e){return Array.isArray(e)&&e.includes(String(n))}function $n(n,e){return Array.isArray(e)&&!e.includes(String(n))}function Wn(n,e){return p(n)>p(e)}function Kn(n,e){return p(n)>=p(e)}function Jn(n,e){return p(n)<p(e)}function Qn(n,e){return p(n)<=p(e)}function ne(n,e){return typeof n=="string"?n.includes(String(e)):Array.isArray(n)?n.map(String).includes(String(e)):!1}function an(n){return Array.isArray(n)?n.length>0:n!=null&&n!==""}function ee(n){return!an(n)}function re(n){return Array.isArray(n)?n.length>0:!!n}var ln=n=>l(H)(n);var fn=n=>l(Z)(n),dn=n=>l($)(n);var pn=n=>l(K)(n),mn=n=>l(J)(n),Ze=l(V),$e=l(j),_=l(X),gn=l(W),xn=l(B),We=l(U),Ke=l(G),Je=l(q),Qe=l(tn,C,en,rn),yn=l(v,C),Tn=l(Y,nn);function bn(n){return n.type===z}function An(n){return n.type===Q}function l(...n){return e=>{let r=d(e.type)?e.type:void 0;return r?n.some(t=>r===t||r?.startsWith(`${t}/`)):!1}}function hn(n){let e=n.advanced?.step;if(typeof e=="number"&&Number.isFinite(e)&&e>0)return e}function x(n,e){return n?e?e[n]??n:n:""}function g(n,e){return n?x(n,e):void 0}var te=/^#\/definition\//;function T(n,e,r=new Map,t=new WeakSet){if(!oe(e)||!n||typeof n!="object")return n;if(r.has(n))return r.get(n);if(t.has(n))return n;if(t.add(n),Array.isArray(n))return n.map(i=>T(i,e,r,t));if(h in n&&d(n[h])){let i=n[h].replace(te,""),s=R(e,i);return s!==null?T(s,e,r,t):n}let o={};for(let[i,s]of Object.entries(n))o[i]=T(s,e,r,t);return t.delete(n),r.set(n,o),o}function oe(n){return n!==void 0&&f(n)&&Object.keys(n).length>0}var u=require("zod");var ie=[[_,En],[yn,ce],[Tn,fe],[xn,ae],[ln,En],[fn,pe],[dn,de],[gn,P],[pn,P],[mn,P]];function se(n,e=[],r){let t=u.z.object(n);if(e.length===0)return t;let o=be(t,e,r);return Se(o,e,r)}function ue(n,e){for(let[r,t]of ie)if(r(n))return t(n,e);return le(n,e)}function w(n){return n.nullable().optional()}function ce(n,e){let r=u.z.string().trim();if(n.required){let t=m(n,e),o=r.min(1,t).pipe(Sn(n,e));return u.z.preprocess(i=>y(i)?"":i,o)}return w(r.pipe(Sn(n,e)).or(u.z.literal("")))}function En(n,e){let r=u.z.preprocess(t=>{if(typeof t=="string"){if(t==="true")return!0;if(t==="false")return!1}return t},u.z.coerce.boolean());return n.required?(_(n)?r=r.refine(t=>t===!0,{message:m(n,e)}):r=r.refine(t=>typeof t=="boolean",{message:m(n,e)}),u.z.preprocess(t=>t===null?!1:t,r)):r.nullable()}function ae(n,e){let r=u.z.coerce.string();return n.required?(r=r.min(1,m(n,e)),u.z.preprocess(t=>y(t)?"":t,r)):w(r.or(u.z.literal("")))}function le(n,e){let r=u.z.coerce.string().trim();return r=kn(r,n,e),n.required?(r=xe(r,n,e),u.z.preprocess(t=>y(t)?"":t,r)):w(r)}function fe(n,e){let r=kn(u.z.coerce.number(),n,e);return M(me(r,n,e),n,e)}function de(n,e){return M(u.z.coerce.number().int(),n,e)}function pe(n,e){let r=m(n,e),t=u.z.coerce.number().int().min(1,r).max(12,r);return M(t,n,e)}function Rn(n){return n===null||n===""?void 0:n}function M(n,e,r){if(!e.required)return u.z.preprocess(Rn,w(n));let t=m(e,r);return u.z.preprocess(Rn,u.z.unknown().refine(o=>o!==void 0,{message:t}).pipe(n))}function me(n,e,r){let t=g(e.validation?.step,r),o=hn(e);if(o===void 0)return n.int(t);let i=e.advanced?.length?.min??0;return n.refine(s=>ge(s,o,i),{message:t??(i===0?`Invalid number: must be a multiple of ${o}`:`Invalid number: must be ${i} plus a multiple of ${o}`)})}function ge(n,e,r){let t=10**Math.max(F(n),F(e),F(r));return Math.round((n-r)*t)%Math.round(e*t)===0}function F(n){let[e,r="0"]=String(n).split("e"),t=e.split(".")[1]?.length??0;return Math.max(0,t-Number(r))}function Sn(n,e){let r=n.validation?.email?x(n.validation?.email,e):void 0;return u.z.email(r)}function kn(n,e,r){return n=ye(n,e,r),n=Te(n,e,r),n}function xe(n,e,r){let t=e.advanced?.length?.min;return t===void 0||t<1?n.min(1,m(e,r)):n}var ye=(n,e,r)=>wn(n,e,sn,r),Te=(n,e,r)=>wn(n,e,on,r);function wn(n,e,r,t){let o=e.advanced?.length?.[r];if(o!==void 0){let i=e.validation?.length?.[r]?x(e.validation?.length?.[r],t):void 0;return n[r](o,i)}return n}function be(n,e=[],r){let t=he(e);return t.length===0?n:n.superRefine((o,i)=>{for(let{name:s,rule:c}of t)if(!Ae(o,s,c)){let a=x(c.message,r);i.addIssue({code:"custom",message:a,path:[s]})}})}function Ae(n,e,r){let t=r.operator??"eq",o=I[t];return o?o(k(n,e),k(n,r.field)):!1}function he(n){let e=[];for(let r of n){let t=r.validation?.custom;if(!t)continue;let o=Array.isArray(t)?t:[t];for(let i of o)e.push({name:r.name,rule:i})}return e}function m(n,e){return n.validation?.required?x(n.validation?.required,e):void 0}function P(n,e){let r=u.z.array(u.z.string());return n.required&&(r=r.min(1,m(n,e))),u.z.preprocess(t=>y(t)?[]:Array.isArray(t)?t.map(String):[String(t)],r)}function Nn(n,e,r){let t=r?T(n,r):n;return Cn(Ee(t),e)}function Ee(n){let e=[];for(let r of n)for(let t of r.fields??[])e.push(t);return e}function Cn(n,e){let r={},t=[],o=i=>{for(let s of i)if(An(s))o(s.fields);else if(bn(s)){let c=_e(u.z.array(Cn(s.fields,e)),s,e);r[s.name]=u.z.preprocess(a=>a===void 0?[]:a,c)}else{let c=s,a=!!c.required&&!c.hidden,A=ue(a?c:{...c,required:!1},e);r[c.name]=a?A:A.optional(),t.push(c)}};return o(n),se(Re(r),t,e)}function Re(n){if(!Object.keys(n).some(r=>r.includes(".")))return n;let e=new Map;for(let[r,t]of Object.entries(n)){let o=r.split("."),i=e;for(let s=0;s<o.length-1;s++){let c=i.get(o[s]);if(c instanceof Map)i=c;else{let a=new Map;i.set(o[s],a),i=a}}i.set(o[o.length-1],t)}return On(e)}function On(n){let e={};for(let[r,t]of n)e[r]=t instanceof Map?u.z.object(On(t)).optional():t;return e}function Ln(n){return n.issues.map(e=>({path:e.path.map(String).join("."),message:e.message}))}function Se(n,e=[],r){let t=e.filter(Ie);return t.length===0?n:n.superRefine((o,i)=>{let s=f(o)?o:{};for(let c of t)for(let a of ke(s,c,r))i.addIssue({code:"custom",path:a.path,message:a.message})})}function Ie(n){let e=n.validation;return e!==void 0&&(e.requiredWhen!==void 0||e.pattern!==void 0||e.rules!==void 0)}function ke(n,e,r){let t=[],o=k(n,e.name),i=e.validation?.requiredWhen;if(i){let a=(Array.isArray(i)?i:[i]).find(A=>b(n,A));a&&!D(o)&&t.push({path:[e.name],message:g(a.message??e.validation?.required,r)})}let s=e.validation?.pattern;s&&!_n(s,o)&&t.push({path:[e.name],message:g(s.message,r)});for(let c of e.validation?.rules??[])we(n,c.when)&&!Ne(c,o)&&t.push({path:[e.name],message:g(c.message,r)});return t}function b(n,e){let r=I[e.operator??"eq"];return r?r(k(n,e.field),e.value):!1}function k(n,e){return e in n?n[e]:R(n,e)??void 0}function we(n,e){if(!e)return!0;if(Array.isArray(e))return e.every(o=>b(n,o));if("field"in e)return b(n,e);let r=e.all?e.all.every(o=>b(n,o)):!0,t=e.any?e.any.some(o=>b(n,o)):!0;return r&&t}function Ne(n,e){switch(n.assert){case"required":return D(e);case"minItems":return Array.isArray(e)&&e.length>=Number(n.value);case"maxItems":return Array.isArray(e)&&e.length<=Number(n.value);case"min":return In(e)>=Number(n.value);case"max":return In(e)<=Number(n.value);case"oneOf":return Array.isArray(n.value)&&n.value.map(String).includes(String(e));case"pattern":return Le(n.value)?_n(n.value,e):!0;default:return!0}}function _n(n,e){if(!D(e)||typeof e!="string"||n.allowInterpolation&&(S(e)||Oe(e)))return!0;let r=Ce(n);return r!==null&&r.test(e)}function Ce({regex:n,flags:e}){try{return new RegExp(n,e)}catch(r){return un.error(`A validation pattern does not compile, so it holds back every value: /${n}/${e??""}`,r),null}}function Oe(n){return d(n)&&n.trimStart().startsWith("@")}function D(n){return d(n)?n.trim().length>0:I.exists(n,void 0)}function In(n){return typeof n=="number"?n:d(n)||Array.isArray(n)?n.length:0}function Le(n){return f(n)&&"regex"in n}function _e(n,e,r){let t=n,o=e.advanced?.length?.min;o!==void 0&&(t=t.min(o,g(e.validation?.length?.min,r)));let i=e.advanced?.length?.max;return i!==void 0&&(t=t.max(i,g(e.validation?.length?.max,r))),t}
1
+ "use strict";var $=Object.defineProperty;var Ae=Object.getOwnPropertyDescriptor;var Re=Object.getOwnPropertyNames;var Ee=Object.prototype.hasOwnProperty;var Se=(n,e)=>{for(var t in e)$(n,t,{get:e[t],enumerable:!0})},Ie=(n,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Re(e))!Ee.call(n,o)&&o!==t&&$(n,o,{get:()=>e[o],enumerable:!(r=Ae(e,o))||r.enumerable});return n};var ke=n=>Ie($({},"__esModule",{value:!0}),n);var Bt={};Se(Bt,{buildFormSchema:()=>ge,collectIssues:()=>Te});module.exports=ke(Bt);var an="input",cn="input/date",dn="input/email",ln="input/number",fn="input/time";var pn="textarea",mn="radio",gn="checkbox",yn="list",xn="select",Tn="select/active";var bn="select/month";var hn="select/year";var An="chips",Rn="chips/day",En="chips/month",Sn="column";var In=["yyyy-MM-dd","MM/dd/yyyy","dd/MM/yyyy","MMMM d, yyyy"];var j="email",kn="number",wn="password",Dn="tel",On="text";var Y="max";var U="min";var V="$ref";function f(n){return n!==null&&Object.prototype.toString.call(n)==="[object Object]"}function h(n){return n==null||n===""}function p(n){return typeof n=="string"}var A={error:(...n)=>{z()&&!B()&&w().error("[Luna Form]",...n)},warn:(...n)=>{z()&&!B()&&w().warn("[Luna Form]",...n)},info:(...n)=>{z()&&!B()&&w().info("[Luna Form]",...n)}},z=()=>typeof w()<"u",B=()=>typeof process<"u"&&process.env.NODE_ENV==="production",w=()=>globalThis.console;function Z(n,e){return Object.prototype.hasOwnProperty.call(n,e)}var R={found:!1,value:void 0};function De(n,e){if(!Array.isArray(e)&&Z(e,n))return{found:!0,value:e[n]};if(!n.includes("."))return R;let t=e;for(let r of n.split(".")){if(t==null)return R;if(Array.isArray(t)){let o=Number(r);if(!Number.isInteger(o)||!Z(t,r))return R;t=t[o]}else if(f(t)){if(!Z(t,r))return R;t=t[r]}else return R}return{found:!0,value:t}}function E(n,e){if(!e||!n||typeof n!="object")return null;let t=De(e,n);return t.found?t.value:null}var Oe=/^#\/(definition|context)\//;function Ne(n){return{cache:new Map,readsContext:!1,roots:n,visited:new WeakSet}}function Mn(n,e,t){let r=Fe(e,t);return r?D(n,Ne(r)):n}function D(n,e){if(!n||typeof n!="object")return n;if(e.cache.has(n))return e.cache.get(n);if(e.visited.has(n))return n;if(e.visited.add(n),Array.isArray(n)){let i=!1,s=n.map(u=>{let c=D(u,e);return i||=c!==u,c});return e.visited.delete(n),e.cache.set(n,i?s:n),e.cache.get(n)}let t=T(n);if(t!==void 0){let i=Me(t,e);return i!=null?D(i,e):n}let r={},o=!1;for(let[i,s]of Object.entries(n))r[i]=D(s,e),o||=r[i]!==s;return e.visited.delete(n),e.cache.set(n,o?r:n),e.cache.get(n)}function T(n){return f(n)&&p(n[V])?n[V]:void 0}function Me(n,e){let t=Oe.exec(n);if(!t)return e.roots.definition?E(e.roots.definition,n):null;t[1]==="context"&&(e.readsContext=!0);let r=t[1]==="context"?e.roots.context:e.roots.definition;return r?E(r,n.slice(t[0].length)):null}function Fe(n,e){let t={context:Nn(e)?e:void 0,definition:Nn(n)?n:void 0};return t.context||t.definition?t:null}function Nn(n){return f(n)&&Object.keys(n).length>0}var g=require("date-fns"),M=require("date-fns/locale"),Le=new Date(2e3,0,1),Pn=/^\d{4}-\d{2}-\d{2}$/,G="yyyy-MM-dd",_e="MMMM d, yyyy",Ce=1e3;var W="en",ve=32,Pe=new Map;function $e(n){return n?qe(Pe,n,()=>je(n),ve):W}function je(n){try{let e=Intl.getCanonicalLocales(n)[0];return e&&Intl.DateTimeFormat.supportedLocalesOf(e).length>0?e:W}catch{return W}}function Ye(n){return $e(n).split("-")[0]}var Fn=new WeakMap;function $n(n){let e=f(n.advanced)?n.advanced:void 0,t=e??n,r=Fn.get(t);if(r)return r;let o=e?.length,i={max:Ln(o?.max),min:Ln(o?.min)};Fn.set(t,i);let s=Hn(n.name,o,i,Ue);for(let u of s)A.warn(u);return i}function Ln(n){return typeof n=="number"&&Number.isInteger(n)?n:void 0}var _n="the field offers no year",Ue={disordered:_n,kind:"whole year",lost:_n,needsBoth:!0};function jn(n,e){let t=n.trim();if(t){if(Pn.test(t))return Cn(t,G);for(let r of Object.values(Un)){let o=Cn(t,e,r);if(o)return o}}}function Cn(n,e,t){try{let r=(0,g.parse)(n,e,Le,{locale:t});return(0,g.isValid)(r)&&r.getFullYear()>=Ce?r:void 0}catch{return}}function S(n,e){let t=n?jn(n,e):void 0;return t?(0,g.format)(t,G):""}function Yn(n,e,t){let r=jn(n,e);return r?(0,g.format)(r,e,{locale:Ve(t)}):n}var Un={en:M.enUS,es:M.es};function Ve(n){return Un[Ye(n)]}function ze(n){return In.find(e=>e===n)??_e}function Vn(n){return ze(n.advanced?.format)}function H(n){return p(n)&&Pn.test(n)&&S(n,G)||void 0}function Be(n){let e=new Set,t=[];return n.forEach((r,o)=>{let i=H(r);i===void 0?t.push(o):e.add(i)}),{days:[...e].sort(),rejected:t}}var zn={days:[],rejected:[]},Ze={reserved:zn.days,unreadable:!1},vn=new WeakMap;function Bn(n){let e=n.advanced;if(!f(e))return Ze;let t=vn.get(e);if(t)return t;let r=Array.isArray(e.reserved)?Be(e.reserved):zn,o={max:H(e.length?.max),min:H(e.length?.min)},i={...o,reserved:r.days,unreadable:We(e.length,o)||e.reserved!=null&&(!Array.isArray(e.reserved)||r.rejected.length>0)};vn.set(e,i);let s=He(n.name,e,i,r.rejected);for(let u of s)A.warn(u);return i}function We(n,e){return n==null?!1:!f(n)||T(n)!==void 0?!0:Wn.some(t=>n[t]!=null&&e[t]===void 0)}function N(n,e){return e.unreadable?{issue:"unreadable"}:e.min!==void 0&&n<e.min?{issue:"min",limit:e.min}:e.max!==void 0&&n>e.max?{issue:"max",limit:e.max}:e.reserved.includes(n)?{issue:"reserved"}:null}function X(n){return p(n)?[n,""]:Array.isArray(n)&&n.length<=2&&n.every(p)?[n[0]??"",n[1]??""]:void 0}function Zn(n,e,t){if(e<n)return{issue:"range"};let r=N(n,t)??N(e,t);return r||(t.reserved.some(o=>n<o&&o<e)?{issue:"reserved"}:null)}var Wn=["min","max"];function He(n,e,t,r){return[...Hn(n,e.length,t,Ge),...Xe(n,e.reserved,r)]}var O="the field takes no day",Ge={disordered:"no day passes",kind:"yyyy-MM-dd day",lost:O,needsBoth:!1};function Hn(n,e,t,r){let o=T(e);if(o!==void 0)return[`${n}: advanced.length points at ${o}, which nothing resolved, so ${r.lost}`];let i=f(e)?e:{};if(r.needsBoth&&i.min==null&&i.max==null)return[`${n}: advanced.length.min and .max are missing, so ${r.lost}`];let s=[];for(let u of Wn){let c=i[u];if(t[u]!==void 0||c==null&&!r.needsBoth)continue;let l=`${n}: advanced.length.${u}`;s.push(c==null?`${l} is missing, so ${r.lost}`:Gn(l,c,r.kind,r.lost))}return t.min!==void 0&&t.max!==void 0&&t.min>t.max&&s.push(`${n}: advanced.length.min is after advanced.length.max, so ${r.disordered}`),s}function Xe(n,e,t){if(e==null)return[];let r=`${n}: advanced.reserved`;if(!Array.isArray(e)){let o=T(e);return[o!==void 0?`${r} points at ${o}, which nothing resolved, so ${O}`:`${r} is ${JSON.stringify(e)}, which is no list of days, so ${O}`]}return t.map(o=>Gn(`${r}[${o}]`,e[o],"yyyy-MM-dd day",O))}function Gn(n,e,t,r){let o=T(e);return o!==void 0?`${n} points at ${o}, which nothing resolved, so ${r}`:`${n} is ${JSON.stringify(e)}, which is no ${t}, so ${r}`}function qe(n,e,t,r){let o=n.get(e);if(o!==void 0)return n.delete(e),n.set(e,o),o;let i=n.keys().next().value;n.size>=r&&i!==void 0&&n.delete(i);let s=t();return n.set(e,s),s}var Ke=/{([^}]{1,200})}/;function F(n){return p(n)?Ke.test(n):Array.isArray(n)?n.some(e=>F(e)):f(n)?Object.values(n).some(e=>F(e)):!1}var L={eq:tt,gt:st,gte:ut,in:ot,lt:at,lte:ct,neq:rt,nin:it,contains:dt,exists:qn,empty:lt,truthy:ft},Je=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,Xn=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function Qe(n){return typeof n=="string"&&Je.test(n)}function nt(n){return typeof n=="string"&&Xn.test(n)}function et(n){let e=n.match(Xn);if(e){let[,t,r,o,i,s,u]=e;return new Date(Number(o),Number(r)-1,Number(t),Number(i??0),Number(s??0),Number(u??0)).getTime()}return NaN}function y(n){return Qe(n)?new Date(n).getTime():nt(n)?et(n):Number(n)}function tt(n,e){return n===e}function rt(n,e){return n!==e}function ot(n,e){return Array.isArray(e)&&e.includes(String(n))}function it(n,e){return Array.isArray(e)&&!e.includes(String(n))}function st(n,e){return y(n)>y(e)}function ut(n,e){return y(n)>=y(e)}function at(n,e){return y(n)<y(e)}function ct(n,e){return y(n)<=y(e)}function dt(n,e){return typeof n=="string"?n.includes(String(e)):Array.isArray(n)?n.map(String).includes(String(e)):!1}function qn(n){return Array.isArray(n)?n.length>0:n!=null&&n!==""}function lt(n){return!qn(n)}function ft(n){return Array.isArray(n)?n.length>0:!!n}var Kn=n=>d(Tn)(n);var Jn=n=>d(bn)(n),Qn=n=>d(hn)(n);var ne=n=>d(Rn)(n),ee=n=>d(En)(n),q=d(cn),Ar=d(fn);function te(n){return q(n)&&n.advanced?.mode==="range"}var K=d(gn),re=d(An),oe=d(mn),Rr=d(an),Er=d(xn),Sr=d(pn),Ir=d(On,j,wn,Dn),ie=d(dn,j),se=d(ln,kn);function ue(n){return n.type===yn}function ae(n){return n.type===Sn}function d(...n){return e=>{let t=p(e.type)?e.type:void 0;return t?n.some(r=>t===r||t?.startsWith(`${r}/`)):!1}}function ce(n){let e=n.advanced?.step;if(typeof e=="number"&&Number.isFinite(e)&&e>0)return e}function b(n,e){return n?e?e[n]??n:n:""}function m(n,e){return n?b(n,e):void 0}var a=require("zod");var pt=[[K,de],[q,Rt],[ie,yt],[se,bt],[oe,xt],[Kn,de],[Jn,At],[Qn,ht],[re,nn],[ne,nn],[ee,nn]];function mt(n,e=[],t){let r=a.z.object(n);if(e.length===0)return r;let o=Nt(r,e,t);return Ct(o,e,t)}function gt(n,e){for(let[t,r]of pt)if(t(n))return r(n,e);return Tt(n,e)}function C(n){return n.nullable().optional()}function yt(n,e){let t=a.z.string().trim();if(n.required){let r=x(n,e),o=t.min(1,r).pipe(le(n,e));return a.z.preprocess(i=>h(i)?"":i,o)}return C(t.pipe(le(n,e)).or(a.z.literal("")))}function de(n,e){let t=a.z.preprocess(r=>{if(typeof r=="string"){if(r==="true")return!0;if(r==="false")return!1}return r},a.z.coerce.boolean());return n.required?(K(n)?t=t.refine(r=>r===!0,{message:x(n,e)}):t=t.refine(r=>typeof r=="boolean",{message:x(n,e)}),a.z.preprocess(r=>r===null?!1:r,t)):t.nullable()}function xt(n,e){let t=a.z.coerce.string();return n.required?(t=t.min(1,x(n,e)),a.z.preprocess(r=>h(r)?"":r,t)):C(t.or(a.z.literal("")))}function Tt(n,e){let t=a.z.coerce.string().trim();return t=pe(t,n,e),n.required?(t=wt(t,n,e),a.z.preprocess(r=>h(r)?"":r,t)):C(t)}function bt(n,e){let t=pe(a.z.coerce.number(),n,e);return k(It(t,n,e),n,e,en)}function ht(n,e){let{max:t,min:r}=$n(n),o=a.z.coerce.number().int(),i=r===void 0||t===void 0?o.refine(()=>!1,"This year is not available"):o.min(r,m(n.validation?.length?.min,e)).max(t,m(n.validation?.length?.max,e));return k(i,n,e,en)}function At(n,e){let t=x(n,e),r=a.z.coerce.number().int().min(1,t).max(12,t);return k(r,n,e,en)}function Rt(n,e){let t=Vn(n),r=Bn(n),o=m(n.validation?.date,e)??"Invalid date";if(te(n)){let s=a.z.unknown().transform((u,c)=>{let l=he=>(c.addIssue({code:"custom",message:he}),a.z.NEVER),rn=X(u);if(!rn)return l(o);let[on,sn]=rn;if(on.trim()===""||sn.trim()==="")return l(J(n,{issue:"range"},t,e));let v=S(on,t),P=S(sn,t);if(!v||!P)return l(o);let un=Zn(v,P,r);return un?l(J(n,un,t,e)):[v,P]});return k(s,n,e,Et)}let i=a.z.string().transform((s,u)=>{let c=S(s,t);if(!c)return u.addIssue({code:"custom",message:o}),a.z.NEVER;let l=N(c,r);return l?(u.addIssue({code:"custom",message:J(n,l,t,e)}),a.z.NEVER):c});return k(i,n,e,St)}function J(n,e,t,r){if(e.issue==="unreadable")return"This date cannot be checked";if(e.issue==="reserved")return m(n.validation?.reserved,r)??"This date is not available";if(e.issue==="range")return m(n.validation?.range,r)??"Invalid date range";let o=Yn(e.limit,t);return m(n.validation?.length?.[e.issue],r)??`Date must be on or ${e.issue==="min"?"after":"before"} ${o}`}function Et(n){return n==null||X(n)?.every(t=>t.trim()==="")?void 0:n}function St(n){return n===null||p(n)&&n.trim()===""?void 0:n}function en(n){return n===null||n===""?void 0:n}function k(n,e,t,r){if(!e.required)return a.z.preprocess(r,C(n));let o=x(e,t);return a.z.preprocess(r,a.z.unknown().refine(i=>i!==void 0,{message:o}).pipe(n))}function It(n,e,t){let r=m(e.validation?.step,t),o=ce(e);if(o===void 0)return n.int(r);let i=e.advanced?.length?.min??0;return n.refine(s=>kt(s,o,i),{message:r??(i===0?`Invalid number: must be a multiple of ${o}`:`Invalid number: must be ${i} plus a multiple of ${o}`)})}function kt(n,e,t){let r=10**Math.max(Q(n),Q(e),Q(t));return Math.round((n-t)*r)%Math.round(e*r)===0}function Q(n){let[e,t="0"]=String(n).split("e"),r=e.split(".")[1]?.length??0;return Math.max(0,r-Number(t))}function le(n,e){let t=n.validation?.email?b(n.validation?.email,e):void 0;return a.z.email(t)}function pe(n,e,t){return n=Dt(n,e,t),n=Ot(n,e,t),n}function wt(n,e,t){let r=e.advanced?.length?.min;return r===void 0||r<1?n.min(1,x(e,t)):n}var Dt=(n,e,t)=>me(n,e,U,t),Ot=(n,e,t)=>me(n,e,Y,t);function me(n,e,t,r){let o=e.advanced?.length?.[t];if(o!==void 0){let i=e.validation?.length?.[t]?b(e.validation?.length?.[t],r):void 0;return n[t](o,i)}return n}function Nt(n,e=[],t){let r=Ft(e);return r.length===0?n:n.superRefine((o,i)=>{for(let{name:s,rule:u}of r)if(!Mt(o,s,u)){let c=b(u.message,t);i.addIssue({code:"custom",message:c,path:[s]})}})}function Mt(n,e,t){let r=t.operator??"eq",o=L[r];return o?o(_(n,e),_(n,t.field)):!1}function Ft(n){let e=[];for(let t of n){let r=t.validation?.custom;if(!r)continue;let o=Array.isArray(r)?r:[r];for(let i of o)e.push({name:t.name,rule:i})}return e}function x(n,e){return n.validation?.required?b(n.validation?.required,e):void 0}function nn(n,e){let t=a.z.array(a.z.string());return n.required&&(t=t.min(1,x(n,e))),a.z.preprocess(r=>h(r)?[]:Array.isArray(r)?r.map(String):[String(r)],t)}function ge(n,e,t,r){let o=Mn(n,t,r);return ye(Lt(o),e)}function Lt(n){let e=[];for(let t of n)for(let r of t.fields??[])e.push(r);return e}function ye(n,e){let t={},r=[],o=i=>{for(let s of i)if(ae(s))o(s.fields);else if(ue(s)){let u=zt(a.z.array(ye(s.fields,e)),s,e);t[s.name]=a.z.preprocess(c=>c===void 0?[]:c,u)}else{let u=s,c=!!u.required&&!u.hidden,l=gt(c?u:{...u,required:!1},e);t[u.name]=c?l:l.optional(),r.push(u)}};return o(n),mt(_t(t),r,e)}function _t(n){if(!Object.keys(n).some(t=>t.includes(".")))return n;let e=new Map;for(let[t,r]of Object.entries(n)){let o=t.split("."),i=e;for(let s=0;s<o.length-1;s++){let u=i.get(o[s]);if(u instanceof Map)i=u;else{let c=new Map;i.set(o[s],c),i=c}}i.set(o[o.length-1],r)}return xe(e)}function xe(n){let e={};for(let[t,r]of n)e[t]=r instanceof Map?a.z.object(xe(r)).optional():r;return e}function Te(n){return n.issues.map(e=>({path:e.path.map(String).join("."),message:e.message}))}function Ct(n,e=[],t){let r=e.filter(vt);return r.length===0?n:n.superRefine((o,i)=>{let s=f(o)?o:{};for(let u of r)for(let c of Pt(s,u,t))i.addIssue({code:"custom",path:c.path,message:c.message})})}function vt(n){let e=n.validation;return e!==void 0&&(e.requiredWhen!==void 0||e.pattern!==void 0||e.rules!==void 0)}function Pt(n,e,t){let r=[],o=_(n,e.name),i=e.validation?.requiredWhen;if(i){let c=(Array.isArray(i)?i:[i]).find(l=>I(n,l));c&&!tn(o)&&r.push({path:[e.name],message:m(c.message??e.validation?.required,t)})}let s=e.validation?.pattern;s&&!be(s,o)&&r.push({path:[e.name],message:m(s.message,t)});for(let u of e.validation?.rules??[])$t(n,u.when)&&!jt(u,o)&&r.push({path:[e.name],message:m(u.message,t)});return r}function I(n,e){let t=L[e.operator??"eq"];return t?t(_(n,e.field),e.value):!1}function _(n,e){return e in n?n[e]:E(n,e)??void 0}function $t(n,e){if(!e)return!0;if(Array.isArray(e))return e.every(o=>I(n,o));if("field"in e)return I(n,e);let t=e.all?e.all.every(o=>I(n,o)):!0,r=e.any?e.any.some(o=>I(n,o)):!0;return t&&r}function jt(n,e){switch(n.assert){case"required":return tn(e);case"minItems":return Array.isArray(e)&&e.length>=Number(n.value);case"maxItems":return Array.isArray(e)&&e.length<=Number(n.value);case"min":return fe(e)>=Number(n.value);case"max":return fe(e)<=Number(n.value);case"oneOf":return Array.isArray(n.value)&&n.value.map(String).includes(String(e));case"pattern":return Vt(n.value)?be(n.value,e):!0;default:return!0}}function be(n,e){if(!tn(e)||typeof e!="string"||n.allowInterpolation&&(F(e)||Ut(e)))return!0;let t=Yt(n);return t!==null&&t.test(e)}function Yt({regex:n,flags:e}){try{return new RegExp(n,e)}catch(t){return A.error(`A validation pattern does not compile, so it holds back every value: /${n}/${e??""}`,t),null}}function Ut(n){return p(n)&&n.trimStart().startsWith("@")}function tn(n){return p(n)?n.trim().length>0:L.exists(n,void 0)}function fe(n){return typeof n=="number"?n:p(n)||Array.isArray(n)?n.length:0}function Vt(n){return f(n)&&"regex"in n}function zt(n,e,t){let r=n,o=e.advanced?.length?.min;o!==void 0&&(r=r.min(o,m(e.validation?.length?.min,t)));let i=e.advanced?.length?.max;return i!==void 0&&(r=r.max(i,m(e.validation?.length?.max,t))),r}
@@ -1 +1 @@
1
- var D="input",U="input/date",V="input/email",v="input/number",Y="input/time";var j="textarea",q="radio",B="checkbox",X="list",z="select",G="select/active";var H="select/month";var Z="select/year";var $="chips",W="chips/day",K="chips/month",J="column";var N="email",Q="number",nn="password",en="tel",rn="text";var tn="max";var on="min";var h="$ref";function f(n){return n!==null&&Object.prototype.toString.call(n)==="[object Object]"}function y(n){return n==null||n===""}function d(n){return typeof n=="string"}var sn={error:(...n)=>{C()&&!O()&&E().error("[Luna Form]",...n)},warn:(...n)=>{C()&&!O()&&E().warn("[Luna Form]",...n)},info:(...n)=>{C()&&!O()&&E().info("[Luna Form]",...n)}},C=()=>typeof E()<"u",O=()=>!0,E=()=>globalThis.console;function Ln(n,e){return Object.prototype.hasOwnProperty.call(n,e)}function R(n,e){if(!e||!f(n))return null;let r=e.split(".").filter(o=>o!=="");if(r.length===0)return null;let t=n;for(let o of r)if(f(t)&&Ln(t,o))t=t[o];else if(Array.isArray(t)){let i=Number(o);if(!Number.isInteger(i)||i<0||i>=t.length)return null;t=t[i]}else return null;return t}var _n=/{([^}]{1,200})}/;function S(n){return d(n)?_n.test(n):Array.isArray(n)?n.some(e=>S(e)):f(n)?Object.values(n).some(e=>S(e)):!1}var I={eq:Un,gt:jn,gte:qn,in:vn,lt:Bn,lte:Xn,neq:Vn,nin:Yn,contains:zn,exists:cn,empty:Gn,truthy:Hn},Fn=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,un=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function Pn(n){return typeof n=="string"&&Fn.test(n)}function Mn(n){return typeof n=="string"&&un.test(n)}function Dn(n){let e=n.match(un);if(e){let[,r,t,o,i,s,c]=e;return new Date(Number(o),Number(t)-1,Number(r),Number(i??0),Number(s??0),Number(c??0)).getTime()}return NaN}function p(n){return Pn(n)?new Date(n).getTime():Mn(n)?Dn(n):Number(n)}function Un(n,e){return n===e}function Vn(n,e){return n!==e}function vn(n,e){return Array.isArray(e)&&e.includes(String(n))}function Yn(n,e){return Array.isArray(e)&&!e.includes(String(n))}function jn(n,e){return p(n)>p(e)}function qn(n,e){return p(n)>=p(e)}function Bn(n,e){return p(n)<p(e)}function Xn(n,e){return p(n)<=p(e)}function zn(n,e){return typeof n=="string"?n.includes(String(e)):Array.isArray(n)?n.map(String).includes(String(e)):!1}function cn(n){return Array.isArray(n)?n.length>0:n!=null&&n!==""}function Gn(n){return!cn(n)}function Hn(n){return Array.isArray(n)?n.length>0:!!n}var an=n=>l(G)(n);var ln=n=>l(H)(n),fn=n=>l(Z)(n);var dn=n=>l(W)(n),pn=n=>l(K)(n),ve=l(U),Ye=l(Y),L=l(B),mn=l($),gn=l(q),je=l(D),qe=l(z),Be=l(j),Xe=l(rn,N,nn,en),xn=l(V,N),yn=l(v,Q);function Tn(n){return n.type===X}function bn(n){return n.type===J}function l(...n){return e=>{let r=d(e.type)?e.type:void 0;return r?n.some(t=>r===t||r?.startsWith(`${t}/`)):!1}}function An(n){let e=n.advanced?.step;if(typeof e=="number"&&Number.isFinite(e)&&e>0)return e}function x(n,e){return n?e?e[n]??n:n:""}function g(n,e){return n?x(n,e):void 0}var Zn=/^#\/definition\//;function T(n,e,r=new Map,t=new WeakSet){if(!$n(e)||!n||typeof n!="object")return n;if(r.has(n))return r.get(n);if(t.has(n))return n;if(t.add(n),Array.isArray(n))return n.map(i=>T(i,e,r,t));if(h in n&&d(n[h])){let i=n[h].replace(Zn,""),s=R(e,i);return s!==null?T(s,e,r,t):n}let o={};for(let[i,s]of Object.entries(n))o[i]=T(s,e,r,t);return t.delete(n),r.set(n,o),o}function $n(n){return n!==void 0&&f(n)&&Object.keys(n).length>0}import{z as u}from"zod";var Wn=[[L,hn],[xn,Qn],[yn,re],[gn,ne],[an,hn],[ln,oe],[fn,te],[mn,F],[dn,F],[pn,F]];function Kn(n,e=[],r){let t=u.object(n);if(e.length===0)return t;let o=le(t,e,r);return ye(o,e,r)}function Jn(n,e){for(let[r,t]of Wn)if(r(n))return t(n,e);return ee(n,e)}function w(n){return n.nullable().optional()}function Qn(n,e){let r=u.string().trim();if(n.required){let t=m(n,e),o=r.min(1,t).pipe(Rn(n,e));return u.preprocess(i=>y(i)?"":i,o)}return w(r.pipe(Rn(n,e)).or(u.literal("")))}function hn(n,e){let r=u.preprocess(t=>{if(typeof t=="string"){if(t==="true")return!0;if(t==="false")return!1}return t},u.coerce.boolean());return n.required?(L(n)?r=r.refine(t=>t===!0,{message:m(n,e)}):r=r.refine(t=>typeof t=="boolean",{message:m(n,e)}),u.preprocess(t=>t===null?!1:t,r)):r.nullable()}function ne(n,e){let r=u.coerce.string();return n.required?(r=r.min(1,m(n,e)),u.preprocess(t=>y(t)?"":t,r)):w(r.or(u.literal("")))}function ee(n,e){let r=u.coerce.string().trim();return r=In(r,n,e),n.required?(r=ue(r,n,e),u.preprocess(t=>y(t)?"":t,r)):w(r)}function re(n,e){let r=In(u.coerce.number(),n,e);return P(ie(r,n,e),n,e)}function te(n,e){return P(u.coerce.number().int(),n,e)}function oe(n,e){let r=m(n,e),t=u.coerce.number().int().min(1,r).max(12,r);return P(t,n,e)}function En(n){return n===null||n===""?void 0:n}function P(n,e,r){if(!e.required)return u.preprocess(En,w(n));let t=m(e,r);return u.preprocess(En,u.unknown().refine(o=>o!==void 0,{message:t}).pipe(n))}function ie(n,e,r){let t=g(e.validation?.step,r),o=An(e);if(o===void 0)return n.int(t);let i=e.advanced?.length?.min??0;return n.refine(s=>se(s,o,i),{message:t??(i===0?`Invalid number: must be a multiple of ${o}`:`Invalid number: must be ${i} plus a multiple of ${o}`)})}function se(n,e,r){let t=10**Math.max(_(n),_(e),_(r));return Math.round((n-r)*t)%Math.round(e*t)===0}function _(n){let[e,r="0"]=String(n).split("e"),t=e.split(".")[1]?.length??0;return Math.max(0,t-Number(r))}function Rn(n,e){let r=n.validation?.email?x(n.validation?.email,e):void 0;return u.email(r)}function In(n,e,r){return n=ce(n,e,r),n=ae(n,e,r),n}function ue(n,e,r){let t=e.advanced?.length?.min;return t===void 0||t<1?n.min(1,m(e,r)):n}var ce=(n,e,r)=>kn(n,e,on,r),ae=(n,e,r)=>kn(n,e,tn,r);function kn(n,e,r,t){let o=e.advanced?.length?.[r];if(o!==void 0){let i=e.validation?.length?.[r]?x(e.validation?.length?.[r],t):void 0;return n[r](o,i)}return n}function le(n,e=[],r){let t=de(e);return t.length===0?n:n.superRefine((o,i)=>{for(let{name:s,rule:c}of t)if(!fe(o,s,c)){let a=x(c.message,r);i.addIssue({code:"custom",message:a,path:[s]})}})}function fe(n,e,r){let t=r.operator??"eq",o=I[t];return o?o(k(n,e),k(n,r.field)):!1}function de(n){let e=[];for(let r of n){let t=r.validation?.custom;if(!t)continue;let o=Array.isArray(t)?t:[t];for(let i of o)e.push({name:r.name,rule:i})}return e}function m(n,e){return n.validation?.required?x(n.validation?.required,e):void 0}function F(n,e){let r=u.array(u.string());return n.required&&(r=r.min(1,m(n,e))),u.preprocess(t=>y(t)?[]:Array.isArray(t)?t.map(String):[String(t)],r)}function pe(n,e,r){let t=r?T(n,r):n;return wn(me(t),e)}function me(n){let e=[];for(let r of n)for(let t of r.fields??[])e.push(t);return e}function wn(n,e){let r={},t=[],o=i=>{for(let s of i)if(bn(s))o(s.fields);else if(Tn(s)){let c=Ie(u.array(wn(s.fields,e)),s,e);r[s.name]=u.preprocess(a=>a===void 0?[]:a,c)}else{let c=s,a=!!c.required&&!c.hidden,A=Jn(a?c:{...c,required:!1},e);r[c.name]=a?A:A.optional(),t.push(c)}};return o(n),Kn(ge(r),t,e)}function ge(n){if(!Object.keys(n).some(r=>r.includes(".")))return n;let e=new Map;for(let[r,t]of Object.entries(n)){let o=r.split("."),i=e;for(let s=0;s<o.length-1;s++){let c=i.get(o[s]);if(c instanceof Map)i=c;else{let a=new Map;i.set(o[s],a),i=a}}i.set(o[o.length-1],t)}return Nn(e)}function Nn(n){let e={};for(let[r,t]of n)e[r]=t instanceof Map?u.object(Nn(t)).optional():t;return e}function xe(n){return n.issues.map(e=>({path:e.path.map(String).join("."),message:e.message}))}function ye(n,e=[],r){let t=e.filter(Te);return t.length===0?n:n.superRefine((o,i)=>{let s=f(o)?o:{};for(let c of t)for(let a of be(s,c,r))i.addIssue({code:"custom",path:a.path,message:a.message})})}function Te(n){let e=n.validation;return e!==void 0&&(e.requiredWhen!==void 0||e.pattern!==void 0||e.rules!==void 0)}function be(n,e,r){let t=[],o=k(n,e.name),i=e.validation?.requiredWhen;if(i){let a=(Array.isArray(i)?i:[i]).find(A=>b(n,A));a&&!M(o)&&t.push({path:[e.name],message:g(a.message??e.validation?.required,r)})}let s=e.validation?.pattern;s&&!Cn(s,o)&&t.push({path:[e.name],message:g(s.message,r)});for(let c of e.validation?.rules??[])Ae(n,c.when)&&!he(c,o)&&t.push({path:[e.name],message:g(c.message,r)});return t}function b(n,e){let r=I[e.operator??"eq"];return r?r(k(n,e.field),e.value):!1}function k(n,e){return e in n?n[e]:R(n,e)??void 0}function Ae(n,e){if(!e)return!0;if(Array.isArray(e))return e.every(o=>b(n,o));if("field"in e)return b(n,e);let r=e.all?e.all.every(o=>b(n,o)):!0,t=e.any?e.any.some(o=>b(n,o)):!0;return r&&t}function he(n,e){switch(n.assert){case"required":return M(e);case"minItems":return Array.isArray(e)&&e.length>=Number(n.value);case"maxItems":return Array.isArray(e)&&e.length<=Number(n.value);case"min":return Sn(e)>=Number(n.value);case"max":return Sn(e)<=Number(n.value);case"oneOf":return Array.isArray(n.value)&&n.value.map(String).includes(String(e));case"pattern":return Se(n.value)?Cn(n.value,e):!0;default:return!0}}function Cn(n,e){if(!M(e)||typeof e!="string"||n.allowInterpolation&&(S(e)||Re(e)))return!0;let r=Ee(n);return r!==null&&r.test(e)}function Ee({regex:n,flags:e}){try{return new RegExp(n,e)}catch(r){return sn.error(`A validation pattern does not compile, so it holds back every value: /${n}/${e??""}`,r),null}}function Re(n){return d(n)&&n.trimStart().startsWith("@")}function M(n){return d(n)?n.trim().length>0:I.exists(n,void 0)}function Sn(n){return typeof n=="number"?n:d(n)||Array.isArray(n)?n.length:0}function Se(n){return f(n)&&"regex"in n}function Ie(n,e,r){let t=n,o=e.advanced?.length?.min;o!==void 0&&(t=t.min(o,g(e.validation?.length?.min,r)));let i=e.advanced?.length?.max;return i!==void 0&&(t=t.max(i,g(e.validation?.length?.max,r))),t}export{pe as buildFormSchema,xe as collectIssues};
1
+ var on="input",sn="input/date",un="input/email",an="input/number",cn="input/time";var dn="textarea",ln="radio",fn="checkbox",pn="list",mn="select",gn="select/active";var yn="select/month";var xn="select/year";var Tn="chips",bn="chips/day",hn="chips/month",An="column";var Rn=["yyyy-MM-dd","MM/dd/yyyy","dd/MM/yyyy","MMMM d, yyyy"];var v="email",En="number",Sn="password",In="tel",kn="text";var P="max";var $="min";var j="$ref";function f(n){return n!==null&&Object.prototype.toString.call(n)==="[object Object]"}function b(n){return n==null||n===""}function p(n){return typeof n=="string"}var h={error:(...n)=>{Y()&&!U()&&k().error("[Luna Form]",...n)},warn:(...n)=>{Y()&&!U()&&k().warn("[Luna Form]",...n)},info:(...n)=>{Y()&&!U()&&k().info("[Luna Form]",...n)}},Y=()=>typeof k()<"u",U=()=>typeof process<"u"&&process.env.NODE_ENV==="production",k=()=>globalThis.console;function V(n,e){return Object.prototype.hasOwnProperty.call(n,e)}var A={found:!1,value:void 0};function Te(n,e){if(!Array.isArray(e)&&V(e,n))return{found:!0,value:e[n]};if(!n.includes("."))return A;let t=e;for(let r of n.split(".")){if(t==null)return A;if(Array.isArray(t)){let o=Number(r);if(!Number.isInteger(o)||!V(t,r))return A;t=t[o]}else if(f(t)){if(!V(t,r))return A;t=t[r]}else return A}return{found:!0,value:t}}function R(n,e){if(!e||!n||typeof n!="object")return null;let t=Te(e,n);return t.found?t.value:null}var be=/^#\/(definition|context)\//;function he(n){return{cache:new Map,readsContext:!1,roots:n,visited:new WeakSet}}function Dn(n,e,t){let r=Re(e,t);return r?w(n,he(r)):n}function w(n,e){if(!n||typeof n!="object")return n;if(e.cache.has(n))return e.cache.get(n);if(e.visited.has(n))return n;if(e.visited.add(n),Array.isArray(n)){let i=!1,s=n.map(u=>{let c=w(u,e);return i||=c!==u,c});return e.visited.delete(n),e.cache.set(n,i?s:n),e.cache.get(n)}let t=x(n);if(t!==void 0){let i=Ae(t,e);return i!=null?w(i,e):n}let r={},o=!1;for(let[i,s]of Object.entries(n))r[i]=w(s,e),o||=r[i]!==s;return e.visited.delete(n),e.cache.set(n,o?r:n),e.cache.get(n)}function x(n){return f(n)&&p(n[j])?n[j]:void 0}function Ae(n,e){let t=be.exec(n);if(!t)return e.roots.definition?R(e.roots.definition,n):null;t[1]==="context"&&(e.readsContext=!0);let r=t[1]==="context"?e.roots.context:e.roots.definition;return r?R(r,n.slice(t[0].length)):null}function Re(n,e){let t={context:wn(e)?e:void 0,definition:wn(n)?n:void 0};return t.context||t.definition?t:null}function wn(n){return f(n)&&Object.keys(n).length>0}import{isValid as Ee,parse as Se,parseISO as ar,format as _n}from"date-fns";import{enUS as Ie,es as ke}from"date-fns/locale";var we=new Date(2e3,0,1),Cn=/^\d{4}-\d{2}-\d{2}$/,Z="yyyy-MM-dd",De="MMMM d, yyyy",Oe=1e3;var z="en",Ne=32,Me=new Map;function Fe(n){return n?Be(Me,n,()=>Le(n),Ne):z}function Le(n){try{let e=Intl.getCanonicalLocales(n)[0];return e&&Intl.DateTimeFormat.supportedLocalesOf(e).length>0?e:z}catch{return z}}function _e(n){return Fe(n).split("-")[0]}var On=new WeakMap;function vn(n){let e=f(n.advanced)?n.advanced:void 0,t=e??n,r=On.get(t);if(r)return r;let o=e?.length,i={max:Nn(o?.max),min:Nn(o?.min)};On.set(t,i);let s=Zn(n.name,o,i,Ce);for(let u of s)h.warn(u);return i}function Nn(n){return typeof n=="number"&&Number.isInteger(n)?n:void 0}var Mn="the field offers no year",Ce={disordered:Mn,kind:"whole year",lost:Mn,needsBoth:!0};function Pn(n,e){let t=n.trim();if(t){if(Cn.test(t))return Fn(t,Z);for(let r of Object.values(jn)){let o=Fn(t,e,r);if(o)return o}}}function Fn(n,e,t){try{let r=Se(n,e,we,{locale:t});return Ee(r)&&r.getFullYear()>=Oe?r:void 0}catch{return}}function E(n,e){let t=n?Pn(n,e):void 0;return t?_n(t,Z):""}function $n(n,e,t){let r=Pn(n,e);return r?_n(r,e,{locale:ve(t)}):n}var jn={en:Ie,es:ke};function ve(n){return jn[_e(n)]}function Pe(n){return Rn.find(e=>e===n)??De}function Yn(n){return Pe(n.advanced?.format)}function B(n){return p(n)&&Cn.test(n)&&E(n,Z)||void 0}function $e(n){let e=new Set,t=[];return n.forEach((r,o)=>{let i=B(r);i===void 0?t.push(o):e.add(i)}),{days:[...e].sort(),rejected:t}}var Un={days:[],rejected:[]},je={reserved:Un.days,unreadable:!1},Ln=new WeakMap;function Vn(n){let e=n.advanced;if(!f(e))return je;let t=Ln.get(e);if(t)return t;let r=Array.isArray(e.reserved)?$e(e.reserved):Un,o={max:B(e.length?.max),min:B(e.length?.min)},i={...o,reserved:r.days,unreadable:Ye(e.length,o)||e.reserved!=null&&(!Array.isArray(e.reserved)||r.rejected.length>0)};Ln.set(e,i);let s=Ue(n.name,e,i,r.rejected);for(let u of s)h.warn(u);return i}function Ye(n,e){return n==null?!1:!f(n)||x(n)!==void 0?!0:Bn.some(t=>n[t]!=null&&e[t]===void 0)}function O(n,e){return e.unreadable?{issue:"unreadable"}:e.min!==void 0&&n<e.min?{issue:"min",limit:e.min}:e.max!==void 0&&n>e.max?{issue:"max",limit:e.max}:e.reserved.includes(n)?{issue:"reserved"}:null}function W(n){return p(n)?[n,""]:Array.isArray(n)&&n.length<=2&&n.every(p)?[n[0]??"",n[1]??""]:void 0}function zn(n,e,t){if(e<n)return{issue:"range"};let r=O(n,t)??O(e,t);return r||(t.reserved.some(o=>n<o&&o<e)?{issue:"reserved"}:null)}var Bn=["min","max"];function Ue(n,e,t,r){return[...Zn(n,e.length,t,Ve),...ze(n,e.reserved,r)]}var D="the field takes no day",Ve={disordered:"no day passes",kind:"yyyy-MM-dd day",lost:D,needsBoth:!1};function Zn(n,e,t,r){let o=x(e);if(o!==void 0)return[`${n}: advanced.length points at ${o}, which nothing resolved, so ${r.lost}`];let i=f(e)?e:{};if(r.needsBoth&&i.min==null&&i.max==null)return[`${n}: advanced.length.min and .max are missing, so ${r.lost}`];let s=[];for(let u of Bn){let c=i[u];if(t[u]!==void 0||c==null&&!r.needsBoth)continue;let l=`${n}: advanced.length.${u}`;s.push(c==null?`${l} is missing, so ${r.lost}`:Wn(l,c,r.kind,r.lost))}return t.min!==void 0&&t.max!==void 0&&t.min>t.max&&s.push(`${n}: advanced.length.min is after advanced.length.max, so ${r.disordered}`),s}function ze(n,e,t){if(e==null)return[];let r=`${n}: advanced.reserved`;if(!Array.isArray(e)){let o=x(e);return[o!==void 0?`${r} points at ${o}, which nothing resolved, so ${D}`:`${r} is ${JSON.stringify(e)}, which is no list of days, so ${D}`]}return t.map(o=>Wn(`${r}[${o}]`,e[o],"yyyy-MM-dd day",D))}function Wn(n,e,t,r){let o=x(e);return o!==void 0?`${n} points at ${o}, which nothing resolved, so ${r}`:`${n} is ${JSON.stringify(e)}, which is no ${t}, so ${r}`}function Be(n,e,t,r){let o=n.get(e);if(o!==void 0)return n.delete(e),n.set(e,o),o;let i=n.keys().next().value;n.size>=r&&i!==void 0&&n.delete(i);let s=t();return n.set(e,s),s}var Ze=/{([^}]{1,200})}/;function N(n){return p(n)?Ze.test(n):Array.isArray(n)?n.some(e=>N(e)):f(n)?Object.values(n).some(e=>N(e)):!1}var M={eq:qe,gt:nt,gte:et,in:Je,lt:tt,lte:rt,neq:Ke,nin:Qe,contains:ot,exists:Gn,empty:it,truthy:st},We=/^\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 He(n){return typeof n=="string"&&We.test(n)}function Ge(n){return typeof n=="string"&&Hn.test(n)}function Xe(n){let e=n.match(Hn);if(e){let[,t,r,o,i,s,u]=e;return new Date(Number(o),Number(r)-1,Number(t),Number(i??0),Number(s??0),Number(u??0)).getTime()}return NaN}function g(n){return He(n)?new Date(n).getTime():Ge(n)?Xe(n):Number(n)}function qe(n,e){return n===e}function Ke(n,e){return n!==e}function Je(n,e){return Array.isArray(e)&&e.includes(String(n))}function Qe(n,e){return Array.isArray(e)&&!e.includes(String(n))}function nt(n,e){return g(n)>g(e)}function et(n,e){return g(n)>=g(e)}function tt(n,e){return g(n)<g(e)}function rt(n,e){return g(n)<=g(e)}function ot(n,e){return typeof n=="string"?n.includes(String(e)):Array.isArray(n)?n.map(String).includes(String(e)):!1}function Gn(n){return Array.isArray(n)?n.length>0:n!=null&&n!==""}function it(n){return!Gn(n)}function st(n){return Array.isArray(n)?n.length>0:!!n}var Xn=n=>d(gn)(n);var qn=n=>d(yn)(n),Kn=n=>d(xn)(n);var Jn=n=>d(bn)(n),Qn=n=>d(hn)(n),H=d(sn),Tr=d(cn);function ne(n){return H(n)&&n.advanced?.mode==="range"}var G=d(fn),ee=d(Tn),te=d(ln),br=d(on),hr=d(mn),Ar=d(dn),Rr=d(kn,v,Sn,In),re=d(un,v),oe=d(an,En);function ie(n){return n.type===pn}function se(n){return n.type===An}function d(...n){return e=>{let t=p(e.type)?e.type:void 0;return t?n.some(r=>t===r||t?.startsWith(`${r}/`)):!1}}function ue(n){let e=n.advanced?.step;if(typeof e=="number"&&Number.isFinite(e)&&e>0)return e}function T(n,e){return n?e?e[n]??n:n:""}function m(n,e){return n?T(n,e):void 0}import{z as a}from"zod";var ut=[[G,ae],[H,yt],[re,dt],[oe,pt],[te,lt],[Xn,ae],[qn,gt],[Kn,mt],[ee,K],[Jn,K],[Qn,K]];function at(n,e=[],t){let r=a.object(n);if(e.length===0)return r;let o=St(r,e,t);return Mt(o,e,t)}function ct(n,e){for(let[t,r]of ut)if(t(n))return r(n,e);return ft(n,e)}function L(n){return n.nullable().optional()}function dt(n,e){let t=a.string().trim();if(n.required){let r=y(n,e),o=t.min(1,r).pipe(ce(n,e));return a.preprocess(i=>b(i)?"":i,o)}return L(t.pipe(ce(n,e)).or(a.literal("")))}function ae(n,e){let t=a.preprocess(r=>{if(typeof r=="string"){if(r==="true")return!0;if(r==="false")return!1}return r},a.coerce.boolean());return n.required?(G(n)?t=t.refine(r=>r===!0,{message:y(n,e)}):t=t.refine(r=>typeof r=="boolean",{message:y(n,e)}),a.preprocess(r=>r===null?!1:r,t)):t.nullable()}function lt(n,e){let t=a.coerce.string();return n.required?(t=t.min(1,y(n,e)),a.preprocess(r=>b(r)?"":r,t)):L(t.or(a.literal("")))}function ft(n,e){let t=a.coerce.string().trim();return t=le(t,n,e),n.required?(t=At(t,n,e),a.preprocess(r=>b(r)?"":r,t)):L(t)}function pt(n,e){let t=le(a.coerce.number(),n,e);return I(bt(t,n,e),n,e,J)}function mt(n,e){let{max:t,min:r}=vn(n),o=a.coerce.number().int(),i=r===void 0||t===void 0?o.refine(()=>!1,"This year is not available"):o.min(r,m(n.validation?.length?.min,e)).max(t,m(n.validation?.length?.max,e));return I(i,n,e,J)}function gt(n,e){let t=y(n,e),r=a.coerce.number().int().min(1,t).max(12,t);return I(r,n,e,J)}function yt(n,e){let t=Yn(n),r=Vn(n),o=m(n.validation?.date,e)??"Invalid date";if(ne(n)){let s=a.unknown().transform((u,c)=>{let l=ye=>(c.addIssue({code:"custom",message:ye}),a.NEVER),nn=W(u);if(!nn)return l(o);let[en,tn]=nn;if(en.trim()===""||tn.trim()==="")return l(X(n,{issue:"range"},t,e));let _=E(en,t),C=E(tn,t);if(!_||!C)return l(o);let rn=zn(_,C,r);return rn?l(X(n,rn,t,e)):[_,C]});return I(s,n,e,xt)}let i=a.string().transform((s,u)=>{let c=E(s,t);if(!c)return u.addIssue({code:"custom",message:o}),a.NEVER;let l=O(c,r);return l?(u.addIssue({code:"custom",message:X(n,l,t,e)}),a.NEVER):c});return I(i,n,e,Tt)}function X(n,e,t,r){if(e.issue==="unreadable")return"This date cannot be checked";if(e.issue==="reserved")return m(n.validation?.reserved,r)??"This date is not available";if(e.issue==="range")return m(n.validation?.range,r)??"Invalid date range";let o=$n(e.limit,t);return m(n.validation?.length?.[e.issue],r)??`Date must be on or ${e.issue==="min"?"after":"before"} ${o}`}function xt(n){return n==null||W(n)?.every(t=>t.trim()==="")?void 0:n}function Tt(n){return n===null||p(n)&&n.trim()===""?void 0:n}function J(n){return n===null||n===""?void 0:n}function I(n,e,t,r){if(!e.required)return a.preprocess(r,L(n));let o=y(e,t);return a.preprocess(r,a.unknown().refine(i=>i!==void 0,{message:o}).pipe(n))}function bt(n,e,t){let r=m(e.validation?.step,t),o=ue(e);if(o===void 0)return n.int(r);let i=e.advanced?.length?.min??0;return n.refine(s=>ht(s,o,i),{message:r??(i===0?`Invalid number: must be a multiple of ${o}`:`Invalid number: must be ${i} plus a multiple of ${o}`)})}function ht(n,e,t){let r=10**Math.max(q(n),q(e),q(t));return Math.round((n-t)*r)%Math.round(e*r)===0}function q(n){let[e,t="0"]=String(n).split("e"),r=e.split(".")[1]?.length??0;return Math.max(0,r-Number(t))}function ce(n,e){let t=n.validation?.email?T(n.validation?.email,e):void 0;return a.email(t)}function le(n,e,t){return n=Rt(n,e,t),n=Et(n,e,t),n}function At(n,e,t){let r=e.advanced?.length?.min;return r===void 0||r<1?n.min(1,y(e,t)):n}var Rt=(n,e,t)=>fe(n,e,$,t),Et=(n,e,t)=>fe(n,e,P,t);function fe(n,e,t,r){let o=e.advanced?.length?.[t];if(o!==void 0){let i=e.validation?.length?.[t]?T(e.validation?.length?.[t],r):void 0;return n[t](o,i)}return n}function St(n,e=[],t){let r=kt(e);return r.length===0?n:n.superRefine((o,i)=>{for(let{name:s,rule:u}of r)if(!It(o,s,u)){let c=T(u.message,t);i.addIssue({code:"custom",message:c,path:[s]})}})}function It(n,e,t){let r=t.operator??"eq",o=M[r];return o?o(F(n,e),F(n,t.field)):!1}function kt(n){let e=[];for(let t of n){let r=t.validation?.custom;if(!r)continue;let o=Array.isArray(r)?r:[r];for(let i of o)e.push({name:t.name,rule:i})}return e}function y(n,e){return n.validation?.required?T(n.validation?.required,e):void 0}function K(n,e){let t=a.array(a.string());return n.required&&(t=t.min(1,y(n,e))),a.preprocess(r=>b(r)?[]:Array.isArray(r)?r.map(String):[String(r)],t)}function wt(n,e,t,r){let o=Dn(n,t,r);return pe(Dt(o),e)}function Dt(n){let e=[];for(let t of n)for(let r of t.fields??[])e.push(r);return e}function pe(n,e){let t={},r=[],o=i=>{for(let s of i)if(se(s))o(s.fields);else if(ie(s)){let u=jt(a.array(pe(s.fields,e)),s,e);t[s.name]=a.preprocess(c=>c===void 0?[]:c,u)}else{let u=s,c=!!u.required&&!u.hidden,l=ct(c?u:{...u,required:!1},e);t[u.name]=c?l:l.optional(),r.push(u)}};return o(n),at(Ot(t),r,e)}function Ot(n){if(!Object.keys(n).some(t=>t.includes(".")))return n;let e=new Map;for(let[t,r]of Object.entries(n)){let o=t.split("."),i=e;for(let s=0;s<o.length-1;s++){let u=i.get(o[s]);if(u instanceof Map)i=u;else{let c=new Map;i.set(o[s],c),i=c}}i.set(o[o.length-1],r)}return me(e)}function me(n){let e={};for(let[t,r]of n)e[t]=r instanceof Map?a.object(me(r)).optional():r;return e}function Nt(n){return n.issues.map(e=>({path:e.path.map(String).join("."),message:e.message}))}function Mt(n,e=[],t){let r=e.filter(Ft);return r.length===0?n:n.superRefine((o,i)=>{let s=f(o)?o:{};for(let u of r)for(let c of Lt(s,u,t))i.addIssue({code:"custom",path:c.path,message:c.message})})}function Ft(n){let e=n.validation;return e!==void 0&&(e.requiredWhen!==void 0||e.pattern!==void 0||e.rules!==void 0)}function Lt(n,e,t){let r=[],o=F(n,e.name),i=e.validation?.requiredWhen;if(i){let c=(Array.isArray(i)?i:[i]).find(l=>S(n,l));c&&!Q(o)&&r.push({path:[e.name],message:m(c.message??e.validation?.required,t)})}let s=e.validation?.pattern;s&&!ge(s,o)&&r.push({path:[e.name],message:m(s.message,t)});for(let u of e.validation?.rules??[])_t(n,u.when)&&!Ct(u,o)&&r.push({path:[e.name],message:m(u.message,t)});return r}function S(n,e){let t=M[e.operator??"eq"];return t?t(F(n,e.field),e.value):!1}function F(n,e){return e in n?n[e]:R(n,e)??void 0}function _t(n,e){if(!e)return!0;if(Array.isArray(e))return e.every(o=>S(n,o));if("field"in e)return S(n,e);let t=e.all?e.all.every(o=>S(n,o)):!0,r=e.any?e.any.some(o=>S(n,o)):!0;return t&&r}function Ct(n,e){switch(n.assert){case"required":return Q(e);case"minItems":return Array.isArray(e)&&e.length>=Number(n.value);case"maxItems":return Array.isArray(e)&&e.length<=Number(n.value);case"min":return de(e)>=Number(n.value);case"max":return de(e)<=Number(n.value);case"oneOf":return Array.isArray(n.value)&&n.value.map(String).includes(String(e));case"pattern":return $t(n.value)?ge(n.value,e):!0;default:return!0}}function ge(n,e){if(!Q(e)||typeof e!="string"||n.allowInterpolation&&(N(e)||Pt(e)))return!0;let t=vt(n);return t!==null&&t.test(e)}function vt({regex:n,flags:e}){try{return new RegExp(n,e)}catch(t){return h.error(`A validation pattern does not compile, so it holds back every value: /${n}/${e??""}`,t),null}}function Pt(n){return p(n)&&n.trimStart().startsWith("@")}function Q(n){return p(n)?n.trim().length>0:M.exists(n,void 0)}function de(n){return typeof n=="number"?n:p(n)||Array.isArray(n)?n.length:0}function $t(n){return f(n)&&"regex"in n}function jt(n,e,t){let r=n,o=e.advanced?.length?.min;o!==void 0&&(r=r.min(o,m(e.validation?.length?.min,t)));let i=e.advanced?.length?.max;return i!==void 0&&(r=r.max(i,m(e.validation?.length?.max,t))),r}export{wt as buildFormSchema,Nt as collectIssues};