react-luna-form 0.0.87 → 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 (62) hide show
  1. package/dist/client/cjs/index.js +1 -1
  2. package/dist/client/esm/index.js +1 -1
  3. package/dist/config/cjs/index.js +1 -1
  4. package/dist/config/esm/index.js +1 -1
  5. package/dist/schema/cjs/index.js +1 -1
  6. package/dist/schema/esm/index.js +1 -1
  7. package/dist/server/cjs/index.js +1 -1
  8. package/dist/server/esm/index.js +1 -1
  9. package/dist/types/luna-core/handle/source-event.d.ts +2 -1
  10. package/dist/types/luna-core/handle/value-event.d.ts +2 -1
  11. package/dist/types/luna-core/helper/input.d.ts +16 -7
  12. package/dist/types/luna-core/type.d.ts +15 -4
  13. package/dist/types/luna-core/util/constant.d.ts +4 -0
  14. package/dist/types/luna-core/util/date.d.ts +132 -6
  15. package/dist/types/luna-core/util/format.d.ts +11 -0
  16. package/dist/types/luna-core/util/is-input.d.ts +3 -2
  17. package/dist/types/luna-core/util/pattern.d.ts +28 -0
  18. package/dist/types/luna-core/util/prepare.d.ts +3 -2
  19. package/dist/types/luna-core/util/schema.d.ts +2 -1
  20. package/dist/types/luna-core/util/string.d.ts +7 -0
  21. package/dist/types/luna-react/src/client/component/field/field-list-preview-item.d.ts +3 -3
  22. package/dist/types/luna-react/src/client/component/field/field-preview-item.d.ts +4 -2
  23. package/dist/types/luna-react/src/client/component/field/field-preview-value.d.ts +4 -1
  24. package/dist/types/luna-react/src/client/component/field/field-preview.d.ts +2 -2
  25. package/dist/types/luna-react/src/client/component/formatted-description.d.ts +2 -2
  26. package/dist/types/luna-react/src/client/component/guard/list-guard.d.ts +1 -1
  27. package/dist/types/luna-react/src/client/component/input-strategies.d.ts +9 -1
  28. package/dist/types/luna-react/src/client/component/slot/slot.d.ts +1 -2
  29. package/dist/types/luna-react/src/client/hook/use-input-core.d.ts +2 -2
  30. package/dist/types/luna-react/src/component/column.d.ts +2 -2
  31. package/dist/types/luna-react/src/component/description.d.ts +2 -2
  32. package/dist/types/luna-react/src/component/field/field-list.d.ts +2 -3
  33. package/dist/types/luna-react/src/component/field/field.d.ts +3 -3
  34. package/dist/types/luna-react/src/component/field-description.d.ts +2 -2
  35. package/dist/types/luna-react/src/component/form.d.ts +1 -0
  36. package/dist/types/luna-react/src/component/input/input-base.d.ts +3 -3
  37. package/dist/types/luna-react/src/component/input-group.d.ts +2 -2
  38. package/dist/types/luna-react/src/component/input-label.d.ts +2 -2
  39. package/dist/types/luna-react/src/component/slot/list-slot.d.ts +1 -1
  40. package/dist/types/luna-react/src/component/slot/slot-base.d.ts +2 -3
  41. package/dist/types/luna-react/src/component/slot/slot-create.d.ts +2 -3
  42. package/dist/types/luna-react/src/component/slot/slot-list.d.ts +2 -3
  43. package/dist/types/luna-react/src/component/slot/slot.d.ts +1 -2
  44. package/dist/types/luna-react/src/config/index.d.ts +1 -0
  45. package/dist/types/luna-react/src/server/component/input.d.ts +2 -2
  46. package/dist/types/luna-react/src/server/component/slot.d.ts +1 -2
  47. package/dist/types/luna-react/src/type.d.ts +2 -1
  48. package/docs/events/change.md +4 -1
  49. package/docs/fields/custom-inputs.md +153 -4
  50. package/docs/fields/data-source.md +5 -3
  51. package/docs/fields/input.md +175 -3
  52. package/docs/fields/list.md +1 -1
  53. package/docs/fields/specialized-selectors.md +51 -12
  54. package/docs/forms/submit.md +6 -8
  55. package/docs/index.md +2 -1
  56. package/docs/interpolation/format-filters.md +28 -29
  57. package/docs/interpolation/overview.md +44 -14
  58. package/docs/setup.md +17 -16
  59. package/docs/structure/definition.md +45 -6
  60. package/docs/validation/overview.md +14 -11
  61. package/package.json +2 -2
  62. package/dist/types/luna-react/src/client/hook/use-format.d.ts +0 -5
@@ -1 +1 @@
1
- "use strict";var ut=Object.defineProperty;var gr=Object.getOwnPropertyDescriptor;var pr=Object.getOwnPropertyNames;var yr=Object.prototype.hasOwnProperty;var xr=(t,e)=>{for(var n in e)ut(t,n,{get:e[n],enumerable:!0})},br=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of pr(e))!yr.call(t,o)&&o!==n&&ut(t,o,{get:()=>e[o],enumerable:!(r=gr(e,o))||r.enumerable});return t};var Tr=t=>br(ut({},"__esModule",{value:!0}),t);var yo={};xr(yo,{Fallback:()=>mr,Form:()=>st});module.exports=Tr(yo);var Mt=require("react/jsx-runtime");function Pt(t){let e=typeof t.children=="function"?t.children({isPending:t.isPending}):t.children;return(0,Mt.jsx)("div",{"data-slot":"field-control",className:"w-full",children:e})}var Y="input",_t="input/date",zt="input/email",Vt="input/number",Gt="input/time";var Bt="textarea",Ht="radio",Ut="checkbox",dt="list",$t="select",Yt="select/active",Xt="select/day",Kt="select/month",Wt="select/timezone",Zt="select/year";var qt="chips",Jt="chips/day",Qt="chips/month",P="column",jt="description",ft="fields",te="label",mt="value",X="options",gt="email",ee="number",ne="password",re="tel",M="text",oe="aria-errormessage",ie="aria-invalid",le="data-invalid",ae="data-readonly",se="aria",ce="data",ue="max",de="maxLength",fe="min",me="minLength",L="$ref";var ge="type",pe={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};var m=require("date-fns"),C=require("date-fns/locale");function f(t){return t!==null&&Object.prototype.toString.call(t)==="[object Object]"}function g(t){return c(t)||typeof t=="number"||hr(t)}function ye(t){return Array.isArray(t)&&t.every(g)}function c(t){return typeof t=="string"}function hr(t){return typeof t=="boolean"}var xe={en:C.enUS,"en-US":C.enUS,es:C.es,"es-ES":C.es,"es-MX":C.es},Rr={short:"M/d/yy",medium:"MMM d, yyyy",long:"MMMM d, yyyy",full:"EEEE, MMMM d, yyyy"},Sr={ms:1,s:1e3,min:6e4,h:36e5,d:864e5};function be(t){if(t)return xe[t]??xe[t.split("-")[0]]}function K(t){if(typeof t=="number"&&!Number.isNaN(t))return t;if(c(t)&&t.trim()!==""){let e=Number(t);return Number.isNaN(e)?null:e}return null}function Te(t,e,n){let r=Sr[e];if(r===void 0)return String(t);let o=t*r,i=(0,m.intervalToDuration)({start:0,end:o});return(0,m.formatDuration)(i,{locale:n})}function he(t){if(t instanceof Date)return(0,m.isValid)(t)?t:null;if(c(t)){let e=(0,m.parseISO)(t);if((0,m.isValid)(e))return e;let n=new Date(t);return(0,m.isValid)(n)?n:null}if(typeof t=="number"){let e=new Date(t);return(0,m.isValid)(e)?e:null}return null}var Ar={currency:(t,e,n)=>{let r=K(t);if(r===null)return String(t);let o=e[0]??"USD";return new Intl.NumberFormat(n.locale,{style:"currency",currency:o}).format(r)},percent:(t,e,n)=>{let r=K(t);return r===null?String(t):new Intl.NumberFormat(n.locale,{style:"percent"}).format(r)},number:(t,e,n)=>{let r=K(t);return r===null?String(t):new Intl.NumberFormat(n.locale).format(r)},date:(t,e,n)=>{let r=he(t);if(!r)return String(t);let o=e[0]??"short",i=be(n.locale);if(o==="relative")return(0,m.formatDistanceToNow)(r,{addSuffix:!0,locale:i});let l=Rr[o]??o;return(0,m.format)(r,l,{locale:i})},duration:(t,e,n)=>{let r=be(n.locale);if(typeof t=="number")return Te(t,e[0]??"ms",r);if(c(t)){let i=K(t);if(i!==null)return Te(i,e[0]??"ms",r)}let o=he(t);return o?(0,m.formatDistanceToNow)(o,{addSuffix:!0,locale:r}):String(t)}};function Re(t,e,n){let r=e.split(":").map(a=>a.trim()).filter(a=>a.length>0);if(r.length===0)return;let[o,...i]=r,l=Ar[o];if(l)return l(t,i,n)}function pt(t,e){return Object.prototype.hasOwnProperty.call(t,e)}var _={found:!1,value:void 0};function Fr(t,e){if(!Array.isArray(e)&&pt(e,t))return{found:!0,value:e[t]};if(!t.includes("."))return _;let n=e;for(let r of t.split(".")){if(n==null)return _;if(Array.isArray(n)){let o=Number(r);if(!Number.isInteger(o)||!pt(n,r))return _;n=n[o]}else if(f(n)){if(!pt(n,r))return _;n=n[r]}else return _}return{found:!0,value:n}}function Se(t,e=mt){if(t!=null){if(ye(t)||g(t))return t;if(f(t)){let n=Nr(t,e);if(g(n))return n}}}function Nr(t,e){let n=p(t,e);if(g(n))return n}function p(t,e){if(!e||!t||typeof t!="object")return null;let n=Fr(e,t);return n.found?n.value:null}function Ae(t,e={description:jt,label:te,value:mt}){return t.map(n=>{if(f(n)){let r=p(n,e.label),o=p(n,e.value);if(g(r)&&g(o)){let i=p(n,e.description);return{label:`${r}`,value:`${o}`,...g(i)&&{description:`${i}`}}}}return n})}function Fe(t=M){let e=t.lastIndexOf("/"),n=e===-1?t:t.slice(e+1);return n&&n!==Y?n.trim().toLowerCase():M}var Cr=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g,Er=/{([^}]{1,200})}/,wr=/{([^}]{1,200})}/g;function yt(t,e={},n={}){if(c(t))return kr(t,e,n);if(Array.isArray(t))return t.map(r=>yt(r,e,n));if(f(t)){let r={};for(let o in t)r[o]=yt(t[o],e,n);return r}return t}function W(t,e={},n={}){return xt(t)?yt(t,e,n):t}function xt(t){return c(t)?Er.test(t):Array.isArray(t)?t.some(e=>xt(e)):f(t)?Object.values(t).some(e=>xt(e)):!1}function Ir(t,e){return e.includes(".")?p(t,e):t[e]}function kr(t,e={},n={}){return t.replace(wr,(r,o)=>{let i=String(o).split("|").map(x=>x.trim()),[l,...a]=i;if(!l)return r;let s=Ir(e,l);if(a.length===0)return g(s)?String(s):r;if(s==null)return r;let u=s;for(let x of a){let $=Re(u,x,{locale:n.locale});if($===void 0)return r;u=$}return String(u)})}function Ne(t,e){if(!c(t)||!t||t.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Cr.exec(t))!==null;){let[l,a,s]=n,u=n.index;o=!0,u>r&&i.push(t.substring(r,u));let x=e?e(u,s,a):l;i.push(x),r=u+l.length}return o?(r<t.length&&i.push(t.substring(r)),i):t}var Ce=t=>d(Yt)(t),Ee=t=>d(Xt)(t),we=t=>d(Kt)(t),Ie=t=>d(Zt)(t),ke=t=>d(Wt)(t),Le=t=>d(Jt)(t),De=t=>d(Qt)(t),ve=d(_t),bt=d(Gt),y=d(Ut),D=d(qt),E=d(Ht),Oe=d(Y),S=d($t),Pe=d(Bt),Me=d(M,gt,ne,re),Do=d(zt,gt),Tt=d(Vt,ee);function _e(t){return E(t)||y(t)}function Z(t){return t.type===dt}function w(t){return t.type===P}function q(t){return t.type!==P&&t.type!==dt}function ht(t){return S(t)||E(t)||D(t)}function z(t){return t!=null&&t!==""}function d(...t){return e=>{let n=c(e.type)?e.type:void 0;return n?t.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function ze(t,e={}){if(S(t)&&t.disabled){let n=t.name?e?.[t.name]:void 0;if(n&&f(n))return[n]}}function Ve(t){return E(t)||y(t)?!0:t.advanced?.horizontal}function Ge(t){return y(t)?t.advanced?.reverse!==!1:!1}function Be(t,e){let n=t.readonly??!1;return e||n}function He(t,e){return!!t.readonly&&!e&&!t.disabled}function Ue(t){let e=t.advanced?.step;if(typeof e=="number"&&Number.isFinite(e)&&e>0)return e}function Rt(t){if(Lr(t)){let e=t.source;if(Array.isArray(e)||f(e)&&!(L in e))return e}}function $e(t){return Array.isArray(Rt(t))}function Lr(t){return E(t)||D(t)||S(t)&&!t.disabled}var b=require("date-fns"),Dr=/^\d+$/,Ke=new Date(2e3,0,1),vr=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[],St="default";function We(t){if(!t)return St;try{return Intl.getCanonicalLocales(t)[0]??St}catch{return St}}function At(t){let e=We(t);return Array.from({length:12},(n,r)=>({value:(r+1).toString(),label:new Date(0,r).toLocaleString(e,{month:"long"})}))}function Ft(t){let e=We(t);return Array.from({length:7},(n,r)=>({value:r.toString(),label:new Date(2e3,0,2+r).toLocaleString(e,{weekday:"long"})}))}function Ze(t,e){return e>=t?Array.from({length:e-t+1},(n,r)=>{let o=t+r;return{value:o.toString(),label:o.toString()}}):[]}function Nt(){return new Date().getFullYear()}function Or(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function Pr(t){let e=t.indexOf("/"),n=e===-1?t:t.slice(0,e);return pe[n]??"Other"}function Mr(t,e){return(t.find(r=>r.type==="timeZoneName")?.value??e).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function Ye(t,e){let n=new Intl.DateTimeFormat("en",{timeZone:t,timeZoneName:"longOffset"}).formatToParts(e),r=new Intl.DateTimeFormat("en",{timeZone:t,timeZoneName:"long"}).formatToParts(e),i=(n.find(a=>a.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),l=Mr(r,t);return{offset:i,longName:l}}function Xe(t){return t.slice(t.lastIndexOf("/")+1).replace(/_/g," ")}function qe(){let t=new Date,e=Or(),n=new Map,r=Xe(e),{offset:o,longName:i}=Ye(e,t),l={value:e,label:`${r} - ${i} (${o})`};for(let s of vr()){if(s===e)continue;let u=Xe(s),{offset:x,longName:$}=Ye(s,t),vt={value:s,label:`${u} - ${$} (${x})`},ct=Pr(s);if(ct==="Other")continue;let Ot=n.get(ct);Ot?Ot.push(vt):n.set(ct,[vt])}for(let s of n.values())s.sort((u,x)=>u.label.localeCompare(x.label));let a=Array.from(n.entries()).sort(([s],[u])=>s.localeCompare(u)).map(([s,u])=>({label:s,items:u}));return[{label:"Suggested",items:[l]},...a]}function Ct(t,e){if(typeof t=="number")return t;let n=e??Nt(),r=t.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,l]=o,a=parseInt(l,10);if(!isNaN(a))return i==="+"?n+a:n-a}return n}return Dr.test(r)?parseInt(r,10):n}function Je(t,e){if(!t)return"";try{let n=(0,b.parse)(t,e,Ke);return(0,b.isValid)(n)?(0,b.format)(n,"yyyy-MM-dd"):""}catch{return""}}function Qe(t,e){if(!t)return"";try{let n=(0,b.parse)(t,e,Ke);return(0,b.isValid)(n)?(0,b.format)(n,"HH:mm:ss"):""}catch{return""}}function Et(t){return t.advanced?.format??"HH:mm"}function je(t){return t.advanced?.format??"MMMM d, yyyy"}var _r={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 en(t,e){return T(t,e)}function nn(t,e){let n=e?.[t??""],r=t?_r[zr(t)]:void 0;return r?n?{...r,...n}:r:n}function zr(t){return t.toLowerCase().split(/[-_]/)[0]}function T(t,e){return t?e?e[t]??t:t:""}function v(t,e){return t?T(t,e):void 0}function J(t,e){if(!e)return t;let n=!1,r=t.map(o=>{let i=Vr(o,e);return i!==o&&(n=!0),i});return n?r:t}function Vr(t,e){if(!f(t))return t;let n=tn(t.label,e),r=t.items;if(Array.isArray(r)){let i=J(r,e);return i===r&&n===t.label?t:{...t,...n!==void 0&&{label:n},items:i}}let o=tn(t.description,e);return n===t.label&&o===t.description?t:{...t,...n!==void 0&&{label:n},...o!==void 0&&{description:o}}}function tn(t,e){return c(t)?T(t,e):t}var Q=Nt();function Gr(t,e){if(D(t))return Br(t,e?.lang)}function Br(t,e){if(Le(t))return Ft(e);if(De(t))return At(e)}function Hr(t,e){if(S(t))return Ur(t,e)}function Ur(t,e){let{lang:n,translations:r}=e??{};if(Ee(t))return Ft(n);if(we(t))return At(n);if(Ie(t)){let o=t.advanced?.length?.min??Q,i=t.advanced?.length?.max??Q+5;return Ze(Ct(o,Q),Ct(i,Q))}if(ke(t))return qe();if(Ce(t))return J([{value:"true",label:"Yes"},{value:"false",label:"No"}],r)}function rn(t,e=!1,n){let r={disabled:e,id:t.name,name:t.name,placeholder:t.placeholder,required:t.required};return Oe(t)?{...r,...$r(t)}:S(t)?{...r,...on(Hr(t,n))}:Pe(t)?{...r,...Kr(t)}:D(t)?{...r,...Xr(t,n)}:r}function $r(t){let e=Fe(t.type),n={...t,type:e};return{...Zr(t),...ln(t),...Wr(n),...Yr(n),...Me(n)?an(n):{},type:e}}function Yr(t){let e=Ue(t);return Tt(t)&&e!==void 0?{step:e}:{}}function on(t){return t?{options:t}:{}}function Xr(t,e){let n=on(Gr(t,e)),r=t.advanced?.multiple??!0;return{...n,multiple:r}}function Kr(t){return{...ln(t),...an(t)}}function ln(t){let e=t.advanced?.autocomplete;return e?{autoComplete:e}:{}}function Wr(t){return Tt(t)?qr(t):{}}function Zr(t){if(bt(t)){let e=Et(t);return{step:e==="HH:mm:ss"||e==="hh:mm:ss a"?"1":"60"}}return{}}function an(t){return sn(t,{min:me,max:de})}function qr(t){return sn(t,{min:fe,max:ue})}function sn(t,e){let n={},r=t.advanced?.length;return r&&(r.min!==void 0&&(n[e.min]=r.min),r.max!==void 0&&(n[e.max]=r.max)),n}function cn(t,e){let n=Rt(t);return n||ze(t,e)}function Jr(t,e){let n=f(e)&&t.name in e?e[t.name]:e,r=Se(n,t.advanced?.entity),o=z(r)?r:t.defaultValue;return bt(t)&&z(o)?Qr(t,o):ve(t)&&z(o)?no(t,o):o}function Qr(t,e){let n=Et(t);return c(e)?Qe(e,n):e}function jr(t,e,n){return ht(t)&&Array.isArray(n)?{...e,[X]:n}:e}function to(t,e,n){if(t.required&&!z(n)&&S(t)&&t.advanced?.preselected!==!1&&X in e){let r=e[X];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function eo(t,e,n){if(ht(t)&&Array.isArray(e)){let r=Ae(e,t.advanced?.options);return $e(t)?J(r,n):r}return e}function un(t,e,n,r,o){let i=Jr(t,r),l=Array.isArray(n)?eo(t,n,o):n,a=jr(t,e,l),s=to(t,a,i);return{commonPropsWithOptions:a,defaultValue:s}}function dn(t,e){return y(t)?{defaultChecked:!!e}:{defaultValue:e}}function no(t,e){let n=je(t);return c(e)?Je(e,n):e}var ro=/^#\/definition\//,fn=new WeakMap;function tt(t=[],e){if(!yn(e))return mn(t);let n=fn.get(t);return n||(n=new WeakMap,fn.set(t,n)),n.has(e)||n.set(e,mn(j(t,e))),n.get(e)}function mn(t){return Array.isArray(t)?t.filter(oo).sort((e,n)=>gn(e)-gn(n)):[]}function j(t,e,n=new Map,r=new WeakSet){if(!yn(e)||!t||typeof t!="object")return t;if(n.has(t))return n.get(t);if(r.has(t))return t;if(r.add(t),Array.isArray(t)){let l=!1,a=t.map(s=>{let u=j(s,e,n,r);return l||=u!==s,u});return r.delete(t),n.set(t,l?a:t),n.get(t)}if(L in t&&c(t[L])){let l=t[L].replace(ro,""),a=p(e,l);return a!==null?j(a,e,n,r):t}let o={},i=!1;for(let[l,a]of Object.entries(t))o[l]=j(a,e,n,r),i||=o[l]!==a;return r.delete(t),n.set(t,i?o:t),n.get(t)}function pn(t){return Object.entries(t??{})}function gn(t){return t.order??Number.MAX_VALUE}function yn(t){return t!==void 0&&f(t)&&Object.keys(t).length>0}function oo(t){return ge in t?!0:Array.isArray(t[ft])?t[ft].length>0:!0}function xn(t,e){let n={};for(let[r,o]of pn(e))n[`${t}-${r}`]=o;return n}function io(t){return xn(se,t)}function lo(t){return xn(ce,t)}function bn(t,e){let n=io(t.advanced?.aria);return e&&e.length>0&&(n[ie]="true",n[oe]=`${t.name}-error`),n}function Tn(t){return lo(t.advanced?.data)}var hn={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Rn={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function Sn(t,e=2){return hn[t&&t in hn?t:e]}function An(t){if(t&&t in Rn)return Rn[t]}function ao(t){return{min:t.advanced?.length?.min??1,max:t.advanced?.length?.max??1/0}}function so(t,e){let n=e?p(e,t.name):null;return co(t,Array.isArray(n)?n.length:0)}function Fn(t){return!Array.isArray(t.fields)||t.fields.length===0?!1:t.fields.length>1||t.fields[0].type===P}function Nn(t,e){let n=so(t,e);return Array.from({length:n},(r,o)=>o)}function Cn(t){return t.advanced?.title??t.label??t.name}function co(t,e){let{min:n,max:r}=ao(t);return Math.min(Math.max(e,n),r)}function et(t,e){let n={...t};for(let r of Object.keys(e??{})){let o=e?.[r];o!==void 0&&(n[r]=o)}return n}var En=require("react/jsx-runtime");function A(t){return Ne(t,(e,n,r)=>(0,En.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${e}`))}var F=require("react/jsx-runtime");function wn(t){let e=(0,F.jsxs)("div",{className:"flex flex-col",children:[t.title&&(0,F.jsx)("legend",{className:"mb-3 font-medium text-zinc-800 dark:text-zinc-200",children:A(t.title)}),t.description&&(0,F.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:A(t.description)})]});return t.step?(0,F.jsxs)("div",{className:"flex flex-row items-start gap-4",children:[(0,F.jsx)("div",{className:"bg-primary text-primary-foreground flex size-6 shrink-0 items-center justify-center rounded-full",children:(0,F.jsx)("span",{className:"text-sm font-bold",children:t.step})}),e]}):e}var V=require("react/jsx-runtime");function nt(t){return(0,V.jsxs)("fieldset",{className:"flex w-full min-w-0 flex-col data-[empty=false]:gap-6","data-empty":t.empty,"data-slot":"field-set",id:t.id,children:[(0,V.jsx)(wn,{description:t.description,step:t.step,title:t.title}),(0,V.jsx)("div",{className:"w-full min-w-0",children:t.children})]})}var In=require("react/jsx-runtime");function O(t){return(0,In.jsx)("div",{"data-slot":"field-group","data-compact":t.compact,className:"flex w-full flex-col gap-8 data-[compact=true]:gap-3",children:t.children})}var h=require("react/jsx-runtime");function kn(t){let{fields:e=[]}=t.section,n=t.advanced?.step?t.step:void 0,{compact:r}=et(t.style,{compact:t.section.advanced?.compact}),o=(0,h.jsx)(O,{compact:r,children:t.children});if(!t.section.title&&!t.section.description)return o;let i=v(t.section.title,t.translations),l=v(t.section.description,t.translations);return t.section.advanced?.collapsible?(0,h.jsxs)("fieldset",{"data-slot":"field-set","data-advanced":"true","data-expanded":!0,"data-empty":e.length===0,className:"flex flex-col",id:t.section.id?.toString(),children:[(0,h.jsx)("legend",{children:(0,h.jsx)("span",{className:"flex items-center gap-2 text-base font-medium text-zinc-600 dark:text-zinc-400",children:A(i)})}),(0,h.jsxs)("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:[l&&(0,h.jsx)("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:A(l)}),o]})]}):(0,h.jsx)(nt,{description:l,empty:e.length===0,id:t.section.id?.toString(),step:n,title:i,children:o})}var wt=require("react/jsx-runtime");function Ln(){return(0,wt.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,wt.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-zinc-200 dark:bg-zinc-800"})})}function uo(t,e){return t.fields.every(n=>Dn(n,e))}function Dn(t,e){return e[t.name]?.hidden??t.hidden??!1}function fo(t,e){return w(t)?uo(t,e):Dn(t,e)}function vn(t,e,n){return n&&(t[n.name]?.hidden??n.hidden??!1)||e.length===0?!0:e.every(r=>fo(r,t))}var R=require("react/jsx-runtime");function mo(t){return vn({},t.fields)?null:t.children}function On(t){let e=tt(t.sections,t.definition),n=t.guard??mo,r=t.fieldSet??kn;return(0,R.jsx)("div",{className:"h-full w-full",children:(0,R.jsx)("form",{noValidate:t.noValidate,action:t.action,onSubmit:t.onSubmit,children:(0,R.jsxs)(O,{children:[e.map((o,i)=>(0,R.jsxs)(n,{fields:o.fields??[],children:[(0,R.jsx)(r,{advanced:t.advanced,section:o,step:i+1,style:t.config.style,translations:t.translations,children:t.children({disabled:t.readOnly,fields:o.fields})}),o.advanced?.separator&&(0,R.jsx)(Ln,{})]},`key-${o.id}-${i}`)),t.control&&(0,R.jsx)(Pt,{isPending:t.isPending,children:t.control})]})})})}var Pn=require("tailwind-merge"),G=require("react/jsx-runtime");function Mn(t){let e=t.style?.showOptionalLabel??!0,n=E(t.field)||y(t.field);return(0,G.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,Pn.twMerge)("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:t.field.name,title:c(t.children)?t.children:void 0,children:[(0,G.jsx)("span",{className:"[[data-slot=column]_&]:md:truncate",children:t.children}),e&&!t.field.required&&(0,G.jsx)("span",{className:"ml-2 flex-shrink-0 text-sm text-zinc-600 dark:text-zinc-400",children:en("(Optional)",t.translations)})]})}var It=require("react/jsx-runtime");function go(t){return(0,It.jsx)("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:t.title,children:t.children})}function rt(t){let e=c(t.text)?t.text:t.text?.message;if(!e)return null;let n=W(e,{context:t.context,env:t.config?.env},{locale:t.config?.env?.locale});return(0,It.jsx)(go,{title:c(t.text)?void 0:t.text?.title,children:A(T(n,t.translations))})}var _n=require("react/jsx-runtime");function ot(t){return(0,_n.jsx)(rt,{config:t.config,context:t.context,text:t.field.description,translations:t.translations})}var B=require("react/jsx-runtime");function zn(t){let e=t.description??ot,n={context:t.context,env:t.config?.env},r=t.config?.env?.locale,o=W(t.field.label,n,{locale:r});return(0,B.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,B.jsx)(Mn,{field:t.field,style:t.config?.style,translations:t.translations,children:T(o,t.translations)}),t.horizontal===!0&&(0,B.jsx)(e,{config:t.config,context:t.context,field:t.field,translations:t.translations})]})}var I=require("react/jsx-runtime");function Vn(t){let e=t.description??ot;return(0,I.jsxs)(I.Fragment,{children:[t.field.name&&t.field.label&&(0,I.jsx)(zn,{config:t.config,context:t.context,description:t.description,field:t.field,horizontal:t.horizontal,translations:t.translations}),t.children,t.horizontal===!1&&(0,I.jsx)(e,{config:t.config,context:t.context,field:t.field,translations:t.translations})]})}function Gn(t,e){return t?e(t):null}var kt=require("react/jsx-runtime");function Bn(t){let e=cn(t.field,t.value),{commonPropsWithOptions:n,defaultValue:r}=un(t.field,t.commonProps,e,t.value,t.translations),o=dn(t.field,r);return Gn(t.config.inputs[t.field.type],i=>(0,kt.jsx)(Vn,{config:t.config,context:t.context,field:t.field,horizontal:t.horizontal,translations:t.translations,children:(0,kt.jsx)(i,{...t.ariaAttributes,...n,...t.dataAttributes,...o})}))}var Hn=require("tailwind-merge"),Un=require("react/jsx-runtime");function it(t){let e=t.errors&&t.errors.length>0;return(0,Un.jsx)("div",{"data-slot":"field","data-clickable":t.isClickable?"true":"false",...e&&{[le]:"true"},...t.disabled&&{[ae]:"true"},"data-orientation":t.orientation,className:(0,Hn.twMerge)("group flex w-full flex-col items-center data-[invalid=true]:text-red-600 data-[invalid=true]:dark:text-red-500","data-[clickable=true]:items-start",t.isCheckbox&&(t.isReversed?"flex-row-reverse!":"flex-row!"),"data-[clickable=true]:has-[>[data-slot=field-content]]:[&>:first-child]:mt-px",t.className),children:t.children})}var $n=require("tailwind-merge"),Xn=require("react/jsx-runtime");function Yn(t){return(0,Xn.jsx)(it,{...t,orientation:"vertical",className:(0,$n.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!t.isClickable&&"[&>*]:w-full"),children:t.children})}var Kn=require("tailwind-merge"),Zn=require("react/jsx-runtime");function Wn(t){return(0,Zn.jsx)(it,{...t,orientation:"horizontal",className:(0,Kn.twMerge)("gap-2 md:flex-row md:gap-4","[&>[data-slot=field-content]]:min-w-0 [&>[data-slot=field-content]]:flex-grow [&>[data-slot=field-content]]:self-start","[&_[role=checkbox]]:mt-[1.5px]",t.isClickable&&"md:flex-col",!t.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:t.children})}var Lt=require("react/jsx-runtime");function qn(t){let e=_e(t.field),n=y(t.field),r=Ge(t.field);return t.horizontal?(0,Lt.jsx)(Wn,{disabled:t.disabled,errors:t.errors,isCheckbox:n,isReversed:r,isClickable:e,children:t.children}):(0,Lt.jsx)(Yn,{disabled:t.disabled,errors:t.errors,isCheckbox:n,isReversed:r,isClickable:e,children:t.children})}function Jn(t){if(!t.field.type)return null;let e=rn(t.field,t.disabled,{lang:t.lang,translations:t.translations}),n=Tn(t.field),r=bn(t.field,t.errors),o=!!t.field.disabled===e.disabled?t.field:{...t.field,disabled:e.disabled};return t.children({ariaAttributes:r,commonProps:e,dataAttributes:n,field:o,horizontal:t.horizontal,readOnly:t.readOnly})}var Qn=require("tailwind-merge"),lt=require("react/jsx-runtime");function jn(t){let e=t.field.advanced?.cols,{horizontal:n=!1}=et(t.style,{horizontal:Ve(t.field)}),r=Be(t.field,t.disabled),o=He(t.field,t.disabled);return(0,lt.jsx)("div",{className:(0,Qn.twMerge)("flex flex-col gap-3",An(e)),children:(0,lt.jsx)(qn,{disabled:r,field:t.field,horizontal:n,children:(0,lt.jsx)(Jn,{disabled:r,field:t.field,horizontal:n,lang:t.lang,readOnly:o,translations:t.translations,children:t.children})})})}var er=require("react/jsx-runtime");function tr(t){let e=Array.isArray(t.field.fields)&&t.field.fields.length===0,n=v(t.field.label,t.translations),r=v(t.field.description,t.translations);return(0,er.jsx)(nt,{description:r,empty:e,id:t.field.name,title:n,children:t.children})}var k=require("react/jsx-runtime");function nr(t){let e=T(Cn(t.field),t.translations),n=Fn(t.field);return(0,k.jsx)(tr,{field:t.field,translations:t.translations,children:Nn(t.field,t.value).map(r=>(0,k.jsxs)("div",{"data-slot":n?"list-item-card":void 0,className:n?"box-border w-full min-w-0 rounded-lg border border-zinc-100 p-4 dark:border-zinc-900":"box-border flex w-full min-w-0 flex-col gap-2",children:[n&&(0,k.jsx)("div",{className:"flex min-w-0 flex-col font-medium text-zinc-700 dark:text-zinc-400",children:(0,k.jsxs)("span",{className:"text-base",children:[e," ",r+1]})}),(0,k.jsx)(O,{children:t.children(r)})]},r))})}var rr=require("tailwind-merge"),H=require("react/jsx-runtime");function or(t){let e=t.description??rt,n=Sn(t.column?.advanced?.cols);return(0,H.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[(0,H.jsx)("div",{"data-slot":"column",className:(0,rr.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",n),children:t.children}),t.column?.description&&(0,H.jsx)(e,{config:t.config,context:t.context,text:t.column.description,translations:t.translations})]})}var sr=require("react");var ir=require("react"),ar=require("react/jsx-runtime");function lr(t){let{fields:e,name:n}=t.field,{index:r}=t,o=(0,ir.useMemo)(()=>Array.isArray(e)?e.map(i=>q(i)||Z(i)?{...i,name:`${n}.${r}.${i.name}`}:w(i)?{...i,fields:i.fields.map(l=>({...l,name:`${n}.${r}.${l.name}`}))}:i):[],[r,n,e]);return(0,ar.jsx)(U,{components:t.components,config:t.config,context:t.context,disabled:t.disabled,fields:o,lang:t.lang,onValueChange:t.onValueChange,style:t.style,translations:t.translations,value:t.value,children:t.children})}var N=require("react/jsx-runtime");function po(t,e){return w(t)?`column:${t.fields.map(r=>r.name).join("|")||e}`:t.name||`slot:${e}`}function U(t){let{field:e,list:n}=t.components;return tt(t.fields).map((r,o)=>(0,N.jsxs)(sr.Fragment,{children:[w(r)&&(0,N.jsx)(or,{column:r,config:t.config,context:t.context,description:t.components.description,translations:t.translations,children:(0,N.jsx)(U,{...t,fields:r.fields})}),q(r)&&(0,N.jsx)(e,{disabled:t.disabled,field:r,lang:t.lang,style:t.style,translations:t.translations,children:t.children}),Z(r)&&(0,N.jsx)(n,{field:r,lang:t.lang,onValueChange:t.onValueChange,translations:t.translations,value:t.value,children:i=>(0,N.jsx)(lr,{components:t.components,config:t.config,context:t.context,disabled:t.disabled,field:r,index:i,lang:t.lang,onValueChange:t.onValueChange,style:t.style,translations:t.translations,value:t.value,children:t.children})})]},po(r,o)))}var ur=require("react/jsx-runtime");function cr(t){return n=>(0,ur.jsx)(U,{...n,components:t})}var dr=cr({field:jn,list:nr});var at=require("react/jsx-runtime");function st(t){let e=nn(t.lang,t.translations);return(0,at.jsx)(On,{advanced:t.advanced,config:t.config,control:t.children,definition:t.definition,readOnly:t.readOnly,sections:t.sections,translations:e,children:({disabled:n,fields:r})=>(0,at.jsx)(dr,{config:t.config,context:t.context,disabled:n,fields:r,lang:t.lang,style:t.config.style,translations:e,value:t.value,children:o=>(0,at.jsx)(Bn,{...o,config:t.config,context:t.context,translations:e,value:t.value})})})}var fr=require("react");var Dt=require("react/jsx-runtime");function mr(t){return(0,Dt.jsx)(fr.Suspense,{fallback:(0,Dt.jsx)(st,{config:t.config,sections:t.sections,readOnly:!0}),children:t.children})}
1
+ "use strict";var he=Object.defineProperty;var er=Object.getOwnPropertyDescriptor;var tr=Object.getOwnPropertyNames;var nr=Object.prototype.hasOwnProperty;var or=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},rr=(e,t,n,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of tr(t))!nr.call(e,r)&&r!==n&&he(e,r,{get:()=>t[r],enumerable:!(o=er(t,r))||o.enumerable});return e};var ir=e=>rr(he({},"__esModule",{value:!0}),e);var Ii={};or(Ii,{Fallback:()=>Qo,Form:()=>Te});module.exports=ir(Ii);var ot=require("react/jsx-runtime");function nt(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,ot.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var X="input",rt="input/date",it="input/email",at="input/number",st="input/time";var lt="textarea",ct="radio",dt="checkbox",Re="list",ut="select",ft="select/active",mt="select/day",gt="select/month",pt="select/timezone",yt="select/year";var xt="chips",bt="chips/day",Tt="chips/month",P="column",ht="description",Ae="fields",Rt="label",Se="value",K="options",At=["yyyy-MM-dd","MM/dd/yyyy","dd/MM/yyyy","MMMM d, yyyy"],Z="data-format",Fe="data-mode",De="data-reserved",we="email",St="number",Ft="password",Dt="tel",_="text",wt="aria-errormessage",Nt="aria-invalid",Lt="data-invalid",Ct="data-readonly",Et="aria",kt="data",j="max",It="maxLength",q="min",Ot="minLength",$="$ref";var vt="type",Mt={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};var m=require("date-fns");function d(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function x(e){return c(e)||typeof e=="number"||ar(e)}function zt(e){return Array.isArray(e)&&e.every(x)}function c(e){return typeof e=="string"}function ar(e){return typeof e=="boolean"}var k={error:(...e)=>{Ne()&&!Le()&&J().error("[Luna Form]",...e)},warn:(...e)=>{Ne()&&!Le()&&J().warn("[Luna Form]",...e)},info:(...e)=>{Ne()&&!Le()&&J().info("[Luna Form]",...e)}},Ne=()=>typeof J()<"u",Le=()=>typeof process<"u"&&process.env.NODE_ENV==="production",J=()=>globalThis.console;function Ce(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var V={found:!1,value:void 0};function sr(e,t){if(!Array.isArray(t)&&Ce(t,e))return{found:!0,value:t[e]};if(!e.includes("."))return V;let n=t;for(let o of e.split(".")){if(n==null)return V;if(Array.isArray(n)){let r=Number(o);if(!Number.isInteger(r)||!Ce(n,o))return V;n=n[r]}else if(d(n)){if(!Ce(n,o))return V;n=n[o]}else return V}return{found:!0,value:n}}function Pt(e,t=Se){if(e!=null){if(zt(e)||x(e))return e;if(d(e)){let n=lr(e,t);if(x(n))return n}}}function lr(e,t){let n=p(e,t);if(x(n))return n}function p(e,t){if(!t||!e||typeof e!="object")return null;let n=sr(t,e);return n.found?n.value:null}function _t(e,t={description:ht,label:Rt,value:Se}){return e.map(n=>{if(d(n)){let o=p(n,t.label),r=p(n,t.value);if(x(o)&&x(r)){let i=p(n,t.description);return{label:`${o}`,value:`${r}`,...x(i)&&{description:`${i}`}}}}return n})}function $t(e=_){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==X?n.trim().toLowerCase():_}var cr=/^#\/(definition|context)\//,Vt={};function dr(e){return{cache:new Map,readsContext:!1,roots:e,visited:new WeakSet}}var Bt=new WeakMap;function ee(e=[],t,n){let o=fr(t,n);if(!o)return Ut(e);let r=Bt.get(e);r||(r=new WeakMap,Bt.set(e,r));let i=o.definition??Vt,a=r.get(i);if(a||(a={byContext:new WeakMap},r.set(i,a)),a.free!==void 0)return a.free;let s=o.context??Vt,l=a.byContext.get(s);if(l!==void 0)return l;let u=dr(o),y=Ut(Q(e,u));return u.readsContext?a.byContext.set(s,y):a.free=y,y}function Ut(e){return Array.isArray(e)?e.filter(mr).sort((t,n)=>Yt(t)-Yt(n)):[]}function Q(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=Q(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=I(e);if(n!==void 0){let i=ur(n,t);return i!=null?Q(i,t):e}let o={},r=!1;for(let[i,a]of Object.entries(e))o[i]=Q(a,t),r||=o[i]!==a;return t.visited.delete(e),t.cache.set(e,r?o:e),t.cache.get(e)}function I(e){return d(e)&&c(e[$])?e[$]:void 0}function ur(e,t){let n=cr.exec(e);if(!n)return t.roots.definition?p(t.roots.definition,e):null;n[1]==="context"&&(t.readsContext=!0);let o=n[1]==="context"?t.roots.context:t.roots.definition;return o?p(o,e.slice(n[0].length)):null}function Ht(e){return Object.entries(e??{})}function Yt(e){return e.order??Number.MAX_VALUE}function fr(e,t){let n={context:Gt(t)?t:void 0,definition:Gt(e)?e:void 0};return n.context||n.definition?n:null}function Gt(e){return d(e)&&Object.keys(e).length>0}function mr(e){return vt in e?!0:Array.isArray(e[Ae])?e[Ae].length>0:!0}var g=require("date-fns"),ne=require("date-fns/locale"),Qt=new Date(2e3,0,1),en=/^\d{4}-\d{2}-\d{2}$/,Ie="yyyy-MM-dd",gr="MMMM d, yyyy",pr=1e3,yr=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[],Ee="en",xr=32,br=new Map;function T(e){return e?O(br,e,()=>Tr(e),xr):Ee}function Tr(e){try{let t=Intl.getCanonicalLocales(e)[0];return t&&Intl.DateTimeFormat.supportedLocalesOf(t).length>0?t:Ee}catch{return Ee}}function Oe(e){return T(e).split("-")[0]}function ve(e){let t=T(e);return Array.from({length:12},(n,o)=>({value:(o+1).toString(),label:new Date(0,o).toLocaleString(t,{month:"long"})}))}function Me(e){let t=T(e);return Array.from({length:7},(n,o)=>({value:o.toString(),label:new Date(2e3,0,2+o).toLocaleString(t,{weekday:"long"})}))}function tn(e,t){return t>=e?Array.from({length:t-e+1},(n,o)=>{let r=e+o;return{value:r.toString(),label:r.toString()}}):[]}var Wt=new WeakMap;function nn(e){let t=d(e.advanced)?e.advanced:void 0,n=t??e,o=Wt.get(n);if(o)return o;let r=t?.length,i={max:Xt(r?.max),min:Xt(r?.min)};Wt.set(n,i);let a=mn(e.name,r,i,hr);for(let s of a)k.warn(s);return i}function Xt(e){return typeof e=="number"&&Number.isInteger(e)?e:void 0}var Kt="the field offers no year",hr={disordered:Kt,kind:"whole year",lost:Kt,needsBoth:!0};function Rr(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return Mt[n]??"Other"}function Ar(e,t){return(e.find(o=>o.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}var Zt=new Map;function Sr(e){let t=Zt.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 Zt.set(e,n),n}function Fr(e,t){let[n,o]=Sr(e),r=n.formatToParts(t),i=o.formatToParts(t),s=(r.find(u=>u.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),l=Ar(i,e);return{offset:s,longName:l}}function Dr(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}var jt=new WeakMap;function on(e){let t=e.advanced;if(!d(t)||t.suggested==null)return;let n=jt.get(t);if(n)return n.zone;let o=t.suggested,r=c(o)?wr(o):void 0;return jt.set(t,{zone:r}),r===void 0&&k.warn($e(`${e.name}: advanced.suggested`,o,"time zone","no zone is suggested")),r}function wr(e){if(/^[A-Za-z]/.test(e))try{return new Intl.DateTimeFormat("en",{timeZone:e}).resolvedOptions().timeZone}catch{return}}var Nr=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}(:\d{2}(\.\d{1,9})?)?(Z|[+-]\d{2}:?\d{2})$/;function oe(e){if(e===void 0||!Nr.test(e))return;let t=(0,g.parseISO)(e);return(0,g.isValid)(t)?t:void 0}var Lr=8,Cr=new Map;function rn(e,t){let n=oe(t);return O(Cr,`${e??""}|${n?.getTime()??""}`,()=>Er(e,n),Lr)}function Er(e,t){let n=i=>{let a=Dr(i);if(!t)return Object.freeze({value:i,label:a});let{offset:s,longName:l}=Fr(i,t);return Object.freeze({value:i,label:`${a} - ${l} (${s})`})},o=new Map;for(let i of yr()){let a=Rr(i);if(i===e||a==="Other")continue;let s=o.get(a);s?s.push(n(i)):o.set(a,[n(i)])}let r=Array.from(o.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)])}),...r]:r)}function kr(e,t){let n=e.trim();if(n){if(en.test(n))return qt(n,Ie);for(let o of Object.values(sn)){let r=qt(n,t,o);if(r)return r}}}function qt(e,t,n){try{let o=(0,g.parse)(e,t,Qt,{locale:n});return(0,g.isValid)(o)&&o.getFullYear()>=pr?o:void 0}catch{return}}function ze(e,t){let n=e?kr(e,t):void 0;return n?(0,g.format)(n,Ie):""}function an(e,t){if(!e)return"";try{let n=(0,g.parse)(e,t,Qt);return(0,g.isValid)(n)?(0,g.format)(n,"HH:mm:ss"):""}catch{return""}}var sn={en:ne.enUS,es:ne.es};function Pe(e){return sn[Oe(e)]}function _e(e){return e.advanced?.format??"HH:mm"}function Ir(e){return At.find(t=>t===e)??gr}function ln(e){return Ir(e.advanced?.format)}function ke(e){return c(e)&&en.test(e)&&ze(e,Ie)||void 0}function Or(e){let t=new Set,n=[];return e.forEach((o,r)=>{let i=ke(o);i===void 0?n.push(r):t.add(i)}),{days:[...t].sort(),rejected:n}}var cn={days:[],rejected:[]},vr={reserved:cn.days,unreadable:!1},Jt=new WeakMap;function dn(e){let t=e.advanced;if(!d(t))return vr;let n=Jt.get(t);if(n)return n;let o=Array.isArray(t.reserved)?Or(t.reserved):cn,r={max:ke(t.length?.max),min:ke(t.length?.min)},i={...r,reserved:o.days,unreadable:Mr(t.length,r)||t.reserved!=null&&(!Array.isArray(t.reserved)||o.rejected.length>0)};Jt.set(t,i);let a=zr(e.name,t,i,o.rejected);for(let s of a)k.warn(s);return i}function Mr(e,t){return e==null?!1:!d(e)||I(e)!==void 0?!0:fn.some(n=>e[n]!=null&&t[n]===void 0)}function un(e){return c(e)?[e,""]:Array.isArray(e)&&e.length<=2&&e.every(c)?[e[0]??"",e[1]??""]:void 0}var fn=["min","max"];function zr(e,t,n,o){return[...mn(e,t.length,n,Pr),..._r(e,t.reserved,o)]}var te="the field takes no day",Pr={disordered:"no day passes",kind:"yyyy-MM-dd day",lost:te,needsBoth:!1};function mn(e,t,n,o){let r=I(t);if(r!==void 0)return[`${e}: advanced.length points at ${r}, which nothing resolved, so ${o.lost}`];let i=d(t)?t:{};if(o.needsBoth&&i.min==null&&i.max==null)return[`${e}: advanced.length.min and .max are missing, so ${o.lost}`];let a=[];for(let s of fn){let l=i[s];if(n[s]!==void 0||l==null&&!o.needsBoth)continue;let u=`${e}: advanced.length.${s}`;a.push(l==null?`${u} is missing, so ${o.lost}`:$e(u,l,o.kind,o.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 ${o.disordered}`),a}function _r(e,t,n){if(t==null)return[];let o=`${e}: advanced.reserved`;if(!Array.isArray(t)){let r=I(t);return[r!==void 0?`${o} points at ${r}, which nothing resolved, so ${te}`:`${o} is ${JSON.stringify(t)}, which is no list of days, so ${te}`]}return n.map(r=>$e(`${o}[${r}]`,t[r],"yyyy-MM-dd day",te))}function $e(e,t,n,o){let r=I(t);return r!==void 0?`${e} points at ${r}, which nothing resolved, so ${o}`:`${e} is ${JSON.stringify(t)}, which is no ${n}, so ${o}`}function O(e,t,n,o){let r=e.get(t);if(r!==void 0)return e.delete(t),e.set(t,r),r;let i=e.keys().next().value;e.size>=o&&i!==void 0&&e.delete(i);let a=n();return e.set(t,a),a}var $r=["short","medium","long","full"],Vr=e=>$r.some(t=>t===e),Br={ms:1,s:1e3,min:6e4,h:36e5,d:864e5};function re(e){if(typeof e=="number"&&!Number.isNaN(e))return e;if(c(e)&&e.trim()!==""){let t=Number(e);return Number.isNaN(t)?null:t}return null}function gn(e,t,n){let o=Br[t];if(o===void 0)return String(e);let r=e*o,i=(0,m.intervalToDuration)({start:0,end:r});return(0,m.formatDuration)(i,{locale:Pe(n)})}function pn(e){if(e instanceof Date)return(0,m.isValid)(e)?e:null;if(c(e)){let t=(0,m.parseISO)(e);if((0,m.isValid)(t))return t;let n=new Date(e);return(0,m.isValid)(n)?n:null}if(typeof e=="number"){let t=new Date(e);return(0,m.isValid)(t)?t:null}return null}var yn=new WeakSet;function ie(e){let t=e?.now;if(t!=null){if(c(t)&&oe(t))return t;e&&!yn.has(e)&&(yn.add(e),k.warn(`context.now is ${Ur(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 Ur(e){return e instanceof Date?"a Date (pass its toISOString())":c(e)?JSON.stringify(e):`a ${typeof e}`}var Be=64,Yr=new Map,Gr=new Map,Hr=new Map;function bn(e,t,n){let o=T(n);return O(Yr,`${o}|${t}`,()=>new Intl.DateTimeFormat(o,{dateStyle:t}),Be).format(e)}function Ve(e,t,n={}){let o=T(t);return O(Gr,`${o}|${n.style??""}|${n.currency??""}`,()=>new Intl.NumberFormat(o,n),Be).format(e)}function xn(e,t){let n=oe(t.now);return n?Kr(e,n,t.locale):bn(e,"medium",t.locale)}var Tn=1e3,hn=60*Tn,Rn=60*hn,An=24*Rn,Sn=30.4375*An,Wr=12*Sn,Xr=[["second",Tn,60],["minute",hn,60],["hour",Rn,24],["day",An,31],["month",Sn,12]];function Kr(e,t,n){let o=e.getTime()-t.getTime(),r=Math.abs(o),i=(a,s)=>{let l=T(n),u=a===0?"auto":"always";return O(Hr,`${l}|${u}`,()=>new Intl.RelativeTimeFormat(l,{numeric:u}),Be).format(o<0?-a:a,s)};for(let[a,s,l]of Xr){let u=Math.round(r/s);if(u<l)return i(u,a)}return i(Math.round(r/Wr),"year")}var Zr={currency:(e,t,n)=>{let o=re(e);if(o===null)return String(e);let r=t[0]??"USD";return Ve(o,n.locale,{style:"currency",currency:r})},percent:(e,t,n)=>{let o=re(e);return o===null?String(e):Ve(o,n.locale,{style:"percent"})},number:(e,t,n)=>{let o=re(e);return o===null?String(e):Ve(o,n.locale)},date:(e,t,n)=>{let o=pn(e);if(!o)return String(e);let r=t[0]??"short";return r==="relative"?xn(o,n):Vr(r)?bn(o,r,n.locale):(0,m.format)(o,r,{locale:Pe(n.locale)})},duration:(e,t,n)=>{if(typeof e=="number")return gn(e,t[0]??"ms",n.locale);if(c(e)){let r=re(e);if(r!==null)return gn(r,t[0]??"ms",n.locale)}let o=pn(e);return o?xn(o,n):String(e)}};function Fn(e,t,n){let o=t.split(":").map(s=>s.trim()).filter(s=>s.length>0);if(o.length===0)return;let[r,...i]=o,a=Zr[r];if(a)return a(e,i,n)}var jr=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g,qr=/{([^}]{1,200})}/,Jr=/{([^}]{1,200})}/g;function ae(e,t){return{locale:e,now:ie(t)}}function Ue(e,t={},n={}){if(c(e))return ei(e,t,n);if(Array.isArray(e))return e.map(o=>Ue(o,t,n));if(d(e)){let o={};for(let r in e)o[r]=Ue(e[r],t,n);return o}return e}function se(e,t={},n={}){return Ye(e)?Ue(e,t,n):e}function Ye(e){return c(e)?qr.test(e):Array.isArray(e)?e.some(t=>Ye(t)):d(e)?Object.values(e).some(t=>Ye(t)):!1}function Qr(e,t){return t.includes(".")?p(e,t):e[t]}function ei(e,t={},n={}){return e.replace(Jr,(o,r)=>{let i=String(r).split("|").map(y=>y.trim()),[a,...s]=i;if(!a)return o;let l=Qr(t,a);if(s.length===0)return x(l)?String(l):o;if(l==null)return o;let u=l;for(let y of s){let tt=Fn(u,y,{locale:n.locale,now:n.now});if(tt===void 0)return o;u=tt}return String(u)})}function Dn(e,t){if(!c(e)||!e||e.trim().length===0)return null;let n,o=0,r=!1,i=[];for(;(n=jr.exec(e))!==null;){let[a,s,l]=n,u=n.index;r=!0,u>o&&i.push(e.substring(o,u));let y=t?t(u,l,s):a;i.push(y),o=u+a.length}return r?(o<e.length&&i.push(e.substring(o)),i):e}var wn=e=>f(ft)(e),Nn=e=>f(mt)(e),Ln=e=>f(gt)(e),Cn=e=>f(yt)(e),En=e=>f(pt)(e),kn=e=>f(bt)(e),In=e=>f(Tt)(e),le=f(rt),Ge=f(st);function He(e){return le(e)&&e.advanced?.mode==="range"}var b=f(dt),v=f(xt),N=f(ct),On=f(X),S=f(ut),vn=f(lt),Mn=f(_,we,Ft,Dt),aa=f(it,we),We=f(at,St);function zn(e){return N(e)||b(e)}function ce(e){return e.type===Re}function L(e){return e.type===P}function de(e){return e.type!==P&&e.type!==Re}function Xe(e){return S(e)||N(e)||v(e)}function B(e){return e!=null&&e!==""}function f(...e){return t=>{let n=c(t.type)?t.type:void 0;return n?e.some(o=>n===o||n?.startsWith(`${o}/`)):!1}}function Pn(e,t={}){if(S(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&d(n))return[n]}}function _n(e){return N(e)||b(e)?!0:e.advanced?.horizontal}function $n(e){return b(e)?e.advanced?.reverse!==!1:!1}function Vn(e,t){return!!(t||e.disabled||e.readonly)}function Bn(e,t){return!!e.readonly&&!t&&!e.disabled}function Un(e){let t=e.advanced?.step;if(typeof t=="number"&&Number.isFinite(t)&&t>0)return t}function Ke(e){if(ti(e)){let t=e.source;if(Array.isArray(t)||d(t)&&!($ in t))return t}}function Yn(e){return Array.isArray(Ke(e))}function ti(e){return S(e)?!e.disabled||Array.isArray(e.source):N(e)||v(e)}var ni={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 Hn(e,t){return h(e,t)}function Wn(e,t){if(!e)return;let n=T(e),o=Oe(n),r=[ni[o],t?.[o],o===n?void 0:t?.[n]].filter(i=>i!==void 0);return r.length<=1?r[0]:Object.assign({},...r)}function h(e,t){return e?t?t[e]??e:e:""}function M(e,t){return e?h(e,t):void 0}function ue(e,t){if(!t)return e;let n=!1,o=e.map(r=>{let i=oi(r,t);return i!==r&&(n=!0),i});return n?o:e}function oi(e,t){if(!d(e))return e;let n=Gn(e.label,t),o=e.items;if(Array.isArray(o)){let i=ue(o,t);return i===o&&n===e.label?e:{...e,...n!==void 0&&{label:n},items:i}}let r=Gn(e.description,t);return n===e.label&&r===e.description?e:{...e,...n!==void 0&&{label:n},...r!==void 0&&{description:r}}}function Gn(e,t){return c(e)?h(e,t):e}function ri(e,t){if(v(e))return ii(e,t?.lang)}function ii(e,t){if(kn(e))return Me(t);if(In(e))return ve(t)}function ai(e,t,n){if(S(e))return si(e,t,n)}function si(e,t,n){let{lang:o,translations:r}=t??{};if(Nn(e))return Me(o);if(Ln(e))return ve(o);if(Cn(e)){let{max:i,min:a}=nn(e);return a!==void 0&&i!==void 0?tn(a,i):[]}if(En(e))return rn(on(e),n);if(wn(e))return ue([{value:"true",label:"Yes"},{value:"false",label:"No"}],r)}function Xn(e,t=!1,n,o){let r={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return On(e)?{...r,...li(e,n?.lang)}:S(e)?{...r,...Kn(ai(e,n,o))}:vn(e)?{...r,...ui(e)}:v(e)?{...r,...di(e,n)}:r}function li(e,t){let n=$t(e.type),o={...e,type:n};return{...mi(e),...gi(e,t),...Zn(e),...fi(o),...ci(o),...Mn(o)?jn(o):{},type:n}}function ci(e){let t=Un(e);return We(e)&&t!==void 0?{step:t}:{}}function Kn(e){return e?{options:e}:{}}function di(e,t){let n=Kn(ri(e,t)),o=e.advanced?.multiple??!0;return{...n,multiple:o}}function ui(e){return{...Zn(e),...jn(e)}}function Zn(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function fi(e){return We(e)?pi(e):{}}function mi(e){if(Ge(e)){let t=_e(e),n=t==="HH:mm:ss"||t==="hh:mm:ss a";return{[Z]:t,step:n?"1":"60"}}return{}}function gi(e,t){let n=to(e);if(!n)return{};let{max:o,min:r,reserved:i}=dn(e);return{[Z]:n,...t&&{lang:t},...r!==void 0&&{[q]:r},...o!==void 0&&{[j]:o},...i.length>0&&{[De]:i.join(",")},...He(e)&&{[Fe]:"range"}}}function jn(e){return qn(e,{min:Ot,max:It})}function pi(e){return qn(e,{min:q,max:j})}function qn(e,t){let n={},o=e.advanced?.length;return o&&(o.min!==void 0&&(n[t.min]=o.min),o.max!==void 0&&(n[t.max]=o.max)),n}function Jn(e,t){let n=Ke(e);return n||Pn(e,t)}function yi(e,t){let n=d(t)&&e.name in t?t[e.name]:t,o=Pt(n,e.advanced?.entity),r=B(o)?o:e.defaultValue;return Ge(e)&&B(r)?xi(e,r):le(e)&&B(r)?Ri(e,r):r}function xi(e,t){let n=_e(e);return c(t)?an(t,n):t}function bi(e,t,n){return Xe(e)&&Array.isArray(n)?{...t,[K]:n}:t}function Ti(e,t,n){if(e.required&&!B(n)&&S(e)&&e.advanced?.preselected!==!1&&K in t){let o=t[K];if(Array.isArray(o)&&o.length===1)return o[0]}return n}function hi(e,t,n){if(Xe(e)&&Array.isArray(t)){let o=_t(t,e.advanced?.options);return Yn(e)?ue(o,n):o}return t}function Qn(e,t,n,o,r){let i=yi(e,o),a=Array.isArray(n)?hi(e,n,r):n,s=bi(e,t,a),l=Ti(e,s,i);return{commonPropsWithOptions:s,defaultValue:l}}function eo(e,t){return b(e)?{defaultChecked:!!t}:{defaultValue:t}}function Ri(e,t){let n=to(e);if(!n)return t;if(He(e)){let o=t==null||t===""?void 0:un(t);if(!o)return t;let r=Ze(o[0],n),i=Ze(o[1],n);return Array.isArray(t)&&t[0]===r&&t[1]===i?t:[r,i]}return c(t)?Ze(t,n):t}function Ze(e,t){return ze(e,t)||e}function to(e){return e&&le(e)?ln(e):void 0}function no(e,t){let n={};for(let[o,r]of Ht(t))n[`${e}-${o}`]=r;return n}function Ai(e){return no(Et,e)}function Si(e){return no(kt,e)}function oo(e,t){let n=Ai(e.advanced?.aria);return t&&t.length>0&&(n[Nt]="true",n[wt]=`${e.name}-error`),n}function ro(e){return Si(e.advanced?.data)}var io={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},ao={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function so(e,t=2){return io[e&&e in io?e:t]}function lo(e){if(e&&e in ao)return ao[e]}function Fi(e){return{min:e.advanced?.length?.min??1,max:e.advanced?.length?.max??1/0}}function Di(e,t){let n=t?p(t,e.name):null;return wi(e,Array.isArray(n)?n.length:0)}function co(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===P}function uo(e,t){let n=Di(e,t);return Array.from({length:n},(o,r)=>r)}function fo(e){return e.advanced?.title??e.label??e.name}function wi(e,t){let{min:n,max:o}=Fi(e);return Math.min(Math.max(t,n),o)}function fe(e,t){let n={...e};for(let o of Object.keys(t??{})){let r=t?.[o];r!==void 0&&(n[o]=r)}return n}var mo=require("react/jsx-runtime");function F(e){return Dn(e,(t,n,o)=>(0,mo.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:o},`${n}-${t}`))}var D=require("react/jsx-runtime");function go(e){let t=(0,D.jsxs)("div",{className:"flex flex-col",children:[e.title&&(0,D.jsx)("legend",{className:"mb-3 font-medium text-zinc-800 dark:text-zinc-200",children:F(e.title)}),e.description&&(0,D.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:F(e.description)})]});return e.step?(0,D.jsxs)("div",{className:"flex flex-row items-start gap-4",children:[(0,D.jsx)("div",{className:"bg-primary text-primary-foreground flex size-6 shrink-0 items-center justify-center rounded-full",children:(0,D.jsx)("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}var U=require("react/jsx-runtime");function me(e){return(0,U.jsxs)("fieldset",{className:"flex w-full min-w-0 flex-col data-[empty=false]:gap-6","data-empty":e.empty,"data-slot":"field-set",id:e.id,children:[(0,U.jsx)(go,{description:e.description,step:e.step,title:e.title}),(0,U.jsx)("div",{className:"w-full min-w-0",children:e.children})]})}var po=require("react/jsx-runtime");function z(e){return(0,po.jsx)("div",{"data-slot":"field-group","data-compact":e.compact,className:"flex w-full flex-col gap-8 data-[compact=true]:gap-3",children:e.children})}var R=require("react/jsx-runtime");function yo(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:o}=fe(e.style,{compact:e.section.advanced?.compact}),r=(0,R.jsx)(z,{compact:o,children:e.children});if(!e.section.title&&!e.section.description)return r;let i=M(e.section.title,e.translations),a=M(e.section.description,e.translations);return e.section.advanced?.collapsible?(0,R.jsxs)("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:[(0,R.jsx)("legend",{children:(0,R.jsx)("span",{className:"flex items-center gap-2 text-base font-medium text-zinc-600 dark:text-zinc-400",children:F(i)})}),(0,R.jsxs)("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&&(0,R.jsx)("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:F(a)}),r]})]}):(0,R.jsx)(me,{description:a,empty:t.length===0,id:e.section.id?.toString(),step:n,title:i,children:r})}var je=require("react/jsx-runtime");function xo(){return(0,je.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,je.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-zinc-200 dark:bg-zinc-800"})})}function Ni(e,t){return e.fields.every(n=>bo(n,t))}function bo(e,t){return t[e.name]?.hidden??e.hidden??!1}function Li(e,t){return L(e)?Ni(e,t):bo(e,t)}function To(e,t,n){return n&&(e[n.name]?.hidden??n.hidden??!1)||t.length===0?!0:t.every(o=>Li(o,e))}var A=require("react/jsx-runtime");function Ci(e){return To({},e.fields)?null:e.children}function ho(e){let t=ee(e.sections,e.definition,e.context),n=e.guard??Ci,o=e.fieldSet??yo;return(0,A.jsx)("div",{className:"h-full w-full",children:(0,A.jsx)("form",{noValidate:e.noValidate,action:e.action,onSubmit:e.onSubmit,children:(0,A.jsxs)(z,{children:[t.map((r,i)=>(0,A.jsxs)(n,{fields:r.fields??[],children:[(0,A.jsx)(o,{advanced:e.advanced,section:r,step:i+1,style:e.config.style,translations:e.translations,children:e.children({disabled:e.readOnly,fields:r.fields})}),r.advanced?.separator&&(0,A.jsx)(xo,{})]},`key-${r.id}-${i}`)),e.control&&(0,A.jsx)(nt,{isPending:e.isPending,children:e.control})]})})})}var Ro=require("tailwind-merge"),Y=require("react/jsx-runtime");function Ao(e){let t=e.style?.showOptionalLabel??!0,n=N(e.field)||b(e.field);return(0,Y.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,Ro.twMerge)("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:c(e.children)?e.children:void 0,children:[(0,Y.jsx)("span",{className:"[[data-slot=column]_&]:md:truncate",children:e.children}),t&&!e.field.required&&(0,Y.jsx)("span",{className:"ml-2 flex-shrink-0 text-sm text-zinc-600 dark:text-zinc-400",children:Hn("(Optional)",e.translations)})]})}var qe=require("react/jsx-runtime");function Ei(e){return(0,qe.jsx)("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 ge(e){let t=c(e.text)?e.text:e.text?.message;if(!t)return null;let n=se(t,{context:e.context,env:e.config?.env},ae(e.localization?.lang,e.context));return(0,qe.jsx)(Ei,{title:c(e.text)?void 0:e.text?.title,children:F(h(n,e.localization?.translations))})}var So=require("react/jsx-runtime");function pe(e){return(0,So.jsx)(ge,{config:e.config,context:e.context,localization:e.localization,text:e.field.description})}var G=require("react/jsx-runtime");function Fo(e){let t=e.description??pe,n={context:e.context,env:e.config?.env},o=se(e.field.label,n,ae(e.localization?.lang,e.context));return(0,G.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,G.jsx)(Ao,{field:e.field,style:e.config?.style,translations:e.localization?.translations,children:h(o,e.localization?.translations)}),e.horizontal===!0&&(0,G.jsx)(t,{config:e.config,context:e.context,field:e.field,localization:e.localization})]})}var C=require("react/jsx-runtime");function Do(e){let t=e.description??pe;return(0,C.jsxs)(C.Fragment,{children:[e.field.name&&e.field.label&&(0,C.jsx)(Fo,{config:e.config,context:e.context,description:e.description,field:e.field,horizontal:e.horizontal,localization:e.localization}),e.children,e.horizontal===!1&&(0,C.jsx)(t,{config:e.config,context:e.context,field:e.field,localization:e.localization})]})}function wo(e,t){return e?t(e):null}var Je=require("react/jsx-runtime");function No(e){let t=Jn(e.field,e.value),{commonPropsWithOptions:n,defaultValue:o}=Qn(e.field,e.commonProps,t,e.value,e.localization?.translations),r=eo(e.field,o);return wo(e.config.inputs[e.field.type],i=>(0,Je.jsx)(Do,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,localization:e.localization,children:(0,Je.jsx)(i,{...e.dataAttributes,...n,...e.ariaAttributes,...r})}))}var Lo=require("tailwind-merge"),Co=require("react/jsx-runtime");function ye(e){let t=e.errors&&e.errors.length>0;return(0,Co.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Lt]:"true"},...e.disabled&&{[Ct]:"true"},"data-orientation":e.orientation,className:(0,Lo.twMerge)("group flex w-full flex-col items-center data-[invalid=true]:text-red-600 data-[invalid=true]:dark:text-red-500","data-[clickable=true]:items-start",e.isCheckbox&&(e.isReversed?"flex-row-reverse!":"flex-row!"),"data-[clickable=true]:has-[>[data-slot=field-content]]:[&>:first-child]:mt-px",e.className),children:e.children})}var Eo=require("tailwind-merge"),Io=require("react/jsx-runtime");function ko(e){return(0,Io.jsx)(ye,{...e,orientation:"vertical",className:(0,Eo.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var Oo=require("tailwind-merge"),Mo=require("react/jsx-runtime");function vo(e){return(0,Mo.jsx)(ye,{...e,orientation:"horizontal",className:(0,Oo.twMerge)("gap-2 md:flex-row md:gap-4","[&>[data-slot=field-content]]:min-w-0 [&>[data-slot=field-content]]:flex-grow [&>[data-slot=field-content]]:self-start","[&_[role=checkbox]]:mt-[1.5px]",e.isClickable&&"md:flex-col",!e.isClickable&&["md:justify-between","[&>*:not([data-slot=field-content])]:w-full","[&>*:not([data-slot=field-content])]:md:w-1/2","[&>*:not([data-slot=field-content])]:xl:w-2/5"]),children:e.children})}var Qe=require("react/jsx-runtime");function zo(e){let t=zn(e.field),n=b(e.field),o=$n(e.field);return e.horizontal?(0,Qe.jsx)(vo,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:o,isClickable:t,children:e.children}):(0,Qe.jsx)(ko,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:o,isClickable:t,children:e.children})}function Po(e){if(!e.field.type)return null;let t=Xn(e.field,e.disabled,e.localization,e.now),n=ro(e.field),o=oo(e.field,e.errors),r=!!e.field.disabled===t.disabled?e.field:{...e.field,disabled:t.disabled};return e.children({ariaAttributes:o,commonProps:t,dataAttributes:n,field:r,horizontal:e.horizontal,localization:e.localization,readOnly:e.readOnly})}var _o=require("tailwind-merge"),xe=require("react/jsx-runtime");function $o(e){let t=e.field.advanced?.cols,{horizontal:n=!1}=fe(e.style,{horizontal:_n(e.field)}),o=Vn(e.field,e.disabled),r=Bn(e.field,e.disabled);return(0,xe.jsx)("div",{className:(0,_o.twMerge)("flex flex-col gap-3",lo(t)),children:(0,xe.jsx)(zo,{disabled:o,field:e.field,horizontal:n,children:(0,xe.jsx)(Po,{disabled:o,field:e.field,horizontal:n,localization:e.localization,now:e.now,readOnly:r,children:e.children})})})}var Bo=require("react/jsx-runtime");function Vo(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0,n=M(e.field.label,e.translations),o=M(e.field.description,e.translations);return(0,Bo.jsx)(me,{description:o,empty:t,id:e.field.name,title:n,children:e.children})}var E=require("react/jsx-runtime");function Uo(e){let t=e.localization?.translations,n=h(fo(e.field),t),o=co(e.field);return(0,E.jsx)(Vo,{field:e.field,translations:t,children:uo(e.field,e.value).map(r=>(0,E.jsxs)("div",{"data-slot":o?"list-item-card":void 0,className:o?"box-border w-full min-w-0 rounded-lg border border-zinc-100 p-4 dark:border-zinc-900":"box-border flex w-full min-w-0 flex-col gap-2",children:[o&&(0,E.jsx)("div",{className:"flex min-w-0 flex-col font-medium text-zinc-700 dark:text-zinc-400",children:(0,E.jsxs)("span",{className:"text-base",children:[n," ",r+1]})}),(0,E.jsx)(z,{children:e.children(r)})]},r))})}var Yo=require("tailwind-merge"),H=require("react/jsx-runtime");function Go(e){let t=e.description??ge,n=so(e.column?.advanced?.cols);return(0,H.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[(0,H.jsx)("div",{"data-slot":"column",className:(0,Yo.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",n),children:e.children}),e.column?.description&&(0,H.jsx)(t,{config:e.config,context:e.context,localization:e.localization,text:e.column.description})]})}var Ko=require("react");var Ho=require("react"),Xo=require("react/jsx-runtime");function Wo(e){let{fields:t,name:n}=e.field,{index:o}=e,r=(0,Ho.useMemo)(()=>Array.isArray(t)?t.map(i=>de(i)||ce(i)?{...i,name:`${n}.${o}.${i.name}`}:L(i)?{...i,fields:i.fields.map(a=>({...a,name:`${n}.${o}.${a.name}`}))}:i):[],[o,n,t]);return(0,Xo.jsx)(W,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:r,onValueChange:e.onValueChange,style:e.style,localization:e.localization,value:e.value,children:e.children})}var w=require("react/jsx-runtime");function ki(e,t){return L(e)?`column:${e.fields.map(o=>o.name).join("|")||t}`:e.name||`slot:${t}`}function W(e){let{field:t,list:n}=e.components,o=ie(e.context);return ee(e.fields).map((r,i)=>(0,w.jsxs)(Ko.Fragment,{children:[L(r)&&(0,w.jsx)(Go,{column:r,config:e.config,context:e.context,description:e.components.description,localization:e.localization,children:(0,w.jsx)(W,{...e,fields:r.fields})}),de(r)&&(0,w.jsx)(t,{disabled:e.disabled,field:r,now:o,style:e.style,localization:e.localization,children:e.children}),ce(r)&&(0,w.jsx)(n,{field:r,onValueChange:e.onValueChange,localization:e.localization,value:e.value,children:a=>(0,w.jsx)(Wo,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:r,index:a,onValueChange:e.onValueChange,style:e.style,localization:e.localization,value:e.value,children:e.children})})]},ki(r,i)))}var jo=require("react/jsx-runtime");function Zo(e){return n=>(0,jo.jsx)(W,{...n,components:e})}var qo=Zo({field:$o,list:Uo});var be=require("react/jsx-runtime");function Te(e){let t=Wn(e.lang,e.translations),n={lang:e.lang,translations:t};return(0,be.jsx)(ho,{advanced:e.advanced,config:e.config,context:e.context,control:e.children,definition:e.definition,readOnly:e.readOnly,sections:e.sections,translations:t,children:({disabled:o,fields:r})=>(0,be.jsx)(qo,{config:e.config,context:e.context,disabled:o,fields:r,localization:n,style:e.config.style,value:e.value,children:i=>(0,be.jsx)(No,{...i,config:e.config,context:e.context,value:e.value})})})}var Jo=require("react");var et=require("react/jsx-runtime");function Qo(e){return(0,et.jsx)(Jo.Suspense,{fallback:(0,et.jsx)(Te,{config:e.config,sections:e.sections,readOnly:!0}),children:e.children})}
@@ -1 +1 @@
1
- import{jsx as er}from"react/jsx-runtime";function At(t){let e=typeof t.children=="function"?t.children({isPending:t.isPending}):t.children;return er("div",{"data-slot":"field-control",className:"w-full",children:e})}var P="input",Ft="input/date",Nt="input/email",Ct="input/number",Et="input/time";var wt="textarea",It="radio",kt="checkbox",j="list",Lt="select",Dt="select/active",vt="select/day",Ot="select/month",Pt="select/timezone",Mt="select/year";var _t="chips",zt="chips/day",Vt="chips/month",C="column",Gt="description",tt="fields",Bt="label",et="value",M="options",nt="email",Ht="number",Ut="password",$t="tel",E="text",Yt="aria-errormessage",Xt="aria-invalid",Kt="data-invalid",Wt="data-readonly",Zt="aria",qt="data",Jt="max",Qt="maxLength",jt="min",te="minLength",S="$ref";var ee="type",ne={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};import{format as rr,formatDistanceToNow as oe,formatDuration as or,intervalToDuration as ir,isValid as _,parseISO as lr}from"date-fns";import{enUS as ie,es as rt}from"date-fns/locale";function f(t){return t!==null&&Object.prototype.toString.call(t)==="[object Object]"}function m(t){return c(t)||typeof t=="number"||nr(t)}function re(t){return Array.isArray(t)&&t.every(m)}function c(t){return typeof t=="string"}function nr(t){return typeof t=="boolean"}var le={en:ie,"en-US":ie,es:rt,"es-ES":rt,"es-MX":rt},ar={short:"M/d/yy",medium:"MMM d, yyyy",long:"MMMM d, yyyy",full:"EEEE, MMMM d, yyyy"},sr={ms:1,s:1e3,min:6e4,h:36e5,d:864e5};function ae(t){if(t)return le[t]??le[t.split("-")[0]]}function z(t){if(typeof t=="number"&&!Number.isNaN(t))return t;if(c(t)&&t.trim()!==""){let e=Number(t);return Number.isNaN(e)?null:e}return null}function se(t,e,n){let r=sr[e];if(r===void 0)return String(t);let o=t*r,i=ir({start:0,end:o});return or(i,{locale:n})}function ce(t){if(t instanceof Date)return _(t)?t:null;if(c(t)){let e=lr(t);if(_(e))return e;let n=new Date(t);return _(n)?n:null}if(typeof t=="number"){let e=new Date(t);return _(e)?e:null}return null}var cr={currency:(t,e,n)=>{let r=z(t);if(r===null)return String(t);let o=e[0]??"USD";return new Intl.NumberFormat(n.locale,{style:"currency",currency:o}).format(r)},percent:(t,e,n)=>{let r=z(t);return r===null?String(t):new Intl.NumberFormat(n.locale,{style:"percent"}).format(r)},number:(t,e,n)=>{let r=z(t);return r===null?String(t):new Intl.NumberFormat(n.locale).format(r)},date:(t,e,n)=>{let r=ce(t);if(!r)return String(t);let o=e[0]??"short",i=ae(n.locale);if(o==="relative")return oe(r,{addSuffix:!0,locale:i});let l=ar[o]??o;return rr(r,l,{locale:i})},duration:(t,e,n)=>{let r=ae(n.locale);if(typeof t=="number")return se(t,e[0]??"ms",r);if(c(t)){let i=z(t);if(i!==null)return se(i,e[0]??"ms",r)}let o=ce(t);return o?oe(o,{addSuffix:!0,locale:r}):String(t)}};function ue(t,e,n){let r=e.split(":").map(a=>a.trim()).filter(a=>a.length>0);if(r.length===0)return;let[o,...i]=r,l=cr[o];if(l)return l(t,i,n)}function ot(t,e){return Object.prototype.hasOwnProperty.call(t,e)}var w={found:!1,value:void 0};function ur(t,e){if(!Array.isArray(e)&&ot(e,t))return{found:!0,value:e[t]};if(!t.includes("."))return w;let n=e;for(let r of t.split(".")){if(n==null)return w;if(Array.isArray(n)){let o=Number(r);if(!Number.isInteger(o)||!ot(n,r))return w;n=n[o]}else if(f(n)){if(!ot(n,r))return w;n=n[r]}else return w}return{found:!0,value:n}}function de(t,e=et){if(t!=null){if(re(t)||m(t))return t;if(f(t)){let n=dr(t,e);if(m(n))return n}}}function dr(t,e){let n=g(t,e);if(m(n))return n}function g(t,e){if(!e||!t||typeof t!="object")return null;let n=ur(e,t);return n.found?n.value:null}function fe(t,e={description:Gt,label:Bt,value:et}){return t.map(n=>{if(f(n)){let r=g(n,e.label),o=g(n,e.value);if(m(r)&&m(o)){let i=g(n,e.description);return{label:`${r}`,value:`${o}`,...m(i)&&{description:`${i}`}}}}return n})}function me(t=E){let e=t.lastIndexOf("/"),n=e===-1?t:t.slice(e+1);return n&&n!==P?n.trim().toLowerCase():E}var fr=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g,mr=/{([^}]{1,200})}/,gr=/{([^}]{1,200})}/g;function it(t,e={},n={}){if(c(t))return yr(t,e,n);if(Array.isArray(t))return t.map(r=>it(r,e,n));if(f(t)){let r={};for(let o in t)r[o]=it(t[o],e,n);return r}return t}function V(t,e={},n={}){return lt(t)?it(t,e,n):t}function lt(t){return c(t)?mr.test(t):Array.isArray(t)?t.some(e=>lt(e)):f(t)?Object.values(t).some(e=>lt(e)):!1}function pr(t,e){return e.includes(".")?g(t,e):t[e]}function yr(t,e={},n={}){return t.replace(gr,(r,o)=>{let i=String(o).split("|").map(y=>y.trim()),[l,...a]=i;if(!l)return r;let s=pr(e,l);if(a.length===0)return m(s)?String(s):r;if(s==null)return r;let u=s;for(let y of a){let O=ue(u,y,{locale:n.locale});if(O===void 0)return r;u=O}return String(u)})}function ge(t,e){if(!c(t)||!t||t.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=fr.exec(t))!==null;){let[l,a,s]=n,u=n.index;o=!0,u>r&&i.push(t.substring(r,u));let y=e?e(u,s,a):l;i.push(y),r=u+l.length}return o?(r<t.length&&i.push(t.substring(r)),i):t}var pe=t=>d(Dt)(t),ye=t=>d(vt)(t),xe=t=>d(Ot)(t),be=t=>d(Mt)(t),Te=t=>d(Pt)(t),he=t=>d(zt)(t),Re=t=>d(Vt)(t),Se=d(Ft),at=d(Et),p=d(kt),A=d(_t),h=d(It),Ae=d(P),b=d(Lt),Fe=d(wt),Ne=d(E,nt,Ut,$t),Yo=d(Nt,nt),st=d(Ct,Ht);function Ce(t){return h(t)||p(t)}function G(t){return t.type===j}function R(t){return t.type===C}function B(t){return t.type!==C&&t.type!==j}function ct(t){return b(t)||h(t)||A(t)}function I(t){return t!=null&&t!==""}function d(...t){return e=>{let n=c(e.type)?e.type:void 0;return n?t.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function Ee(t,e={}){if(b(t)&&t.disabled){let n=t.name?e?.[t.name]:void 0;if(n&&f(n))return[n]}}function we(t){return h(t)||p(t)?!0:t.advanced?.horizontal}function Ie(t){return p(t)?t.advanced?.reverse!==!1:!1}function ke(t,e){let n=t.readonly??!1;return e||n}function Le(t,e){return!!t.readonly&&!e&&!t.disabled}function De(t){let e=t.advanced?.step;if(typeof e=="number"&&Number.isFinite(e)&&e>0)return e}function ut(t){if(xr(t)){let e=t.source;if(Array.isArray(e)||f(e)&&!(S in e))return e}}function ve(t){return Array.isArray(ut(t))}function xr(t){return h(t)||A(t)||b(t)&&!t.disabled}import{isValid as Me,parse as _e,format as ze}from"date-fns";var br=/^\d+$/,Ve=new Date(2e3,0,1),Tr=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[],dt="default";function Ge(t){if(!t)return dt;try{return Intl.getCanonicalLocales(t)[0]??dt}catch{return dt}}function ft(t){let e=Ge(t);return Array.from({length:12},(n,r)=>({value:(r+1).toString(),label:new Date(0,r).toLocaleString(e,{month:"long"})}))}function mt(t){let e=Ge(t);return Array.from({length:7},(n,r)=>({value:r.toString(),label:new Date(2e3,0,2+r).toLocaleString(e,{weekday:"long"})}))}function Be(t,e){return e>=t?Array.from({length:e-t+1},(n,r)=>{let o=t+r;return{value:o.toString(),label:o.toString()}}):[]}function gt(){return new Date().getFullYear()}function hr(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function Rr(t){let e=t.indexOf("/"),n=e===-1?t:t.slice(0,e);return ne[n]??"Other"}function Sr(t,e){return(t.find(r=>r.type==="timeZoneName")?.value??e).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function Oe(t,e){let n=new Intl.DateTimeFormat("en",{timeZone:t,timeZoneName:"longOffset"}).formatToParts(e),r=new Intl.DateTimeFormat("en",{timeZone:t,timeZoneName:"long"}).formatToParts(e),i=(n.find(a=>a.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),l=Sr(r,t);return{offset:i,longName:l}}function Pe(t){return t.slice(t.lastIndexOf("/")+1).replace(/_/g," ")}function He(){let t=new Date,e=hr(),n=new Map,r=Pe(e),{offset:o,longName:i}=Oe(e,t),l={value:e,label:`${r} - ${i} (${o})`};for(let s of Tr()){if(s===e)continue;let u=Pe(s),{offset:y,longName:O}=Oe(s,t),Rt={value:s,label:`${u} - ${O} (${y})`},Q=Rr(s);if(Q==="Other")continue;let St=n.get(Q);St?St.push(Rt):n.set(Q,[Rt])}for(let s of n.values())s.sort((u,y)=>u.label.localeCompare(y.label));let a=Array.from(n.entries()).sort(([s],[u])=>s.localeCompare(u)).map(([s,u])=>({label:s,items:u}));return[{label:"Suggested",items:[l]},...a]}function pt(t,e){if(typeof t=="number")return t;let n=e??gt(),r=t.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,l]=o,a=parseInt(l,10);if(!isNaN(a))return i==="+"?n+a:n-a}return n}return br.test(r)?parseInt(r,10):n}function Ue(t,e){if(!t)return"";try{let n=_e(t,e,Ve);return Me(n)?ze(n,"yyyy-MM-dd"):""}catch{return""}}function $e(t,e){if(!t)return"";try{let n=_e(t,e,Ve);return Me(n)?ze(n,"HH:mm:ss"):""}catch{return""}}function yt(t){return t.advanced?.format??"HH:mm"}function Ye(t){return t.advanced?.format??"MMMM d, yyyy"}var Ar={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 Ke(t,e){return x(t,e)}function We(t,e){let n=e?.[t??""],r=t?Ar[Fr(t)]:void 0;return r?n?{...r,...n}:r:n}function Fr(t){return t.toLowerCase().split(/[-_]/)[0]}function x(t,e){return t?e?e[t]??t:t:""}function F(t,e){return t?x(t,e):void 0}function H(t,e){if(!e)return t;let n=!1,r=t.map(o=>{let i=Nr(o,e);return i!==o&&(n=!0),i});return n?r:t}function Nr(t,e){if(!f(t))return t;let n=Xe(t.label,e),r=t.items;if(Array.isArray(r)){let i=H(r,e);return i===r&&n===t.label?t:{...t,...n!==void 0&&{label:n},items:i}}let o=Xe(t.description,e);return n===t.label&&o===t.description?t:{...t,...n!==void 0&&{label:n},...o!==void 0&&{description:o}}}function Xe(t,e){return c(t)?x(t,e):t}var U=gt();function Cr(t,e){if(A(t))return Er(t,e?.lang)}function Er(t,e){if(he(t))return mt(e);if(Re(t))return ft(e)}function wr(t,e){if(b(t))return Ir(t,e)}function Ir(t,e){let{lang:n,translations:r}=e??{};if(ye(t))return mt(n);if(xe(t))return ft(n);if(be(t)){let o=t.advanced?.length?.min??U,i=t.advanced?.length?.max??U+5;return Be(pt(o,U),pt(i,U))}if(Te(t))return He();if(pe(t))return H([{value:"true",label:"Yes"},{value:"false",label:"No"}],r)}function Ze(t,e=!1,n){let r={disabled:e,id:t.name,name:t.name,placeholder:t.placeholder,required:t.required};return Ae(t)?{...r,...kr(t)}:b(t)?{...r,...qe(wr(t,n))}:Fe(t)?{...r,...vr(t)}:A(t)?{...r,...Dr(t,n)}:r}function kr(t){let e=me(t.type),n={...t,type:e};return{...Pr(t),...Je(t),...Or(n),...Lr(n),...Ne(n)?Qe(n):{},type:e}}function Lr(t){let e=De(t);return st(t)&&e!==void 0?{step:e}:{}}function qe(t){return t?{options:t}:{}}function Dr(t,e){let n=qe(Cr(t,e)),r=t.advanced?.multiple??!0;return{...n,multiple:r}}function vr(t){return{...Je(t),...Qe(t)}}function Je(t){let e=t.advanced?.autocomplete;return e?{autoComplete:e}:{}}function Or(t){return st(t)?Mr(t):{}}function Pr(t){if(at(t)){let e=yt(t);return{step:e==="HH:mm:ss"||e==="hh:mm:ss a"?"1":"60"}}return{}}function Qe(t){return je(t,{min:te,max:Qt})}function Mr(t){return je(t,{min:jt,max:Jt})}function je(t,e){let n={},r=t.advanced?.length;return r&&(r.min!==void 0&&(n[e.min]=r.min),r.max!==void 0&&(n[e.max]=r.max)),n}function tn(t,e){let n=ut(t);return n||Ee(t,e)}function _r(t,e){let n=f(e)&&t.name in e?e[t.name]:e,r=de(n,t.advanced?.entity),o=I(r)?r:t.defaultValue;return at(t)&&I(o)?zr(t,o):Se(t)&&I(o)?Hr(t,o):o}function zr(t,e){let n=yt(t);return c(e)?$e(e,n):e}function Vr(t,e,n){return ct(t)&&Array.isArray(n)?{...e,[M]:n}:e}function Gr(t,e,n){if(t.required&&!I(n)&&b(t)&&t.advanced?.preselected!==!1&&M in e){let r=e[M];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function Br(t,e,n){if(ct(t)&&Array.isArray(e)){let r=fe(e,t.advanced?.options);return ve(t)?H(r,n):r}return e}function en(t,e,n,r,o){let i=_r(t,r),l=Array.isArray(n)?Br(t,n,o):n,a=Vr(t,e,l),s=Gr(t,a,i);return{commonPropsWithOptions:a,defaultValue:s}}function nn(t,e){return p(t)?{defaultChecked:!!e}:{defaultValue:e}}function Hr(t,e){let n=Ye(t);return c(e)?Ue(e,n):e}var Ur=/^#\/definition\//,rn=new WeakMap;function Y(t=[],e){if(!sn(e))return on(t);let n=rn.get(t);return n||(n=new WeakMap,rn.set(t,n)),n.has(e)||n.set(e,on($(t,e))),n.get(e)}function on(t){return Array.isArray(t)?t.filter($r).sort((e,n)=>ln(e)-ln(n)):[]}function $(t,e,n=new Map,r=new WeakSet){if(!sn(e)||!t||typeof t!="object")return t;if(n.has(t))return n.get(t);if(r.has(t))return t;if(r.add(t),Array.isArray(t)){let l=!1,a=t.map(s=>{let u=$(s,e,n,r);return l||=u!==s,u});return r.delete(t),n.set(t,l?a:t),n.get(t)}if(S in t&&c(t[S])){let l=t[S].replace(Ur,""),a=g(e,l);return a!==null?$(a,e,n,r):t}let o={},i=!1;for(let[l,a]of Object.entries(t))o[l]=$(a,e,n,r),i||=o[l]!==a;return r.delete(t),n.set(t,i?o:t),n.get(t)}function an(t){return Object.entries(t??{})}function ln(t){return t.order??Number.MAX_VALUE}function sn(t){return t!==void 0&&f(t)&&Object.keys(t).length>0}function $r(t){return ee in t?!0:Array.isArray(t[tt])?t[tt].length>0:!0}function cn(t,e){let n={};for(let[r,o]of an(e))n[`${t}-${r}`]=o;return n}function Yr(t){return cn(Zt,t)}function Xr(t){return cn(qt,t)}function un(t,e){let n=Yr(t.advanced?.aria);return e&&e.length>0&&(n[Xt]="true",n[Yt]=`${t.name}-error`),n}function dn(t){return Xr(t.advanced?.data)}var fn={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},mn={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function gn(t,e=2){return fn[t&&t in fn?t:e]}function pn(t){if(t&&t in mn)return mn[t]}function Kr(t){return{min:t.advanced?.length?.min??1,max:t.advanced?.length?.max??1/0}}function Wr(t,e){let n=e?g(e,t.name):null;return Zr(t,Array.isArray(n)?n.length:0)}function yn(t){return!Array.isArray(t.fields)||t.fields.length===0?!1:t.fields.length>1||t.fields[0].type===C}function xn(t,e){let n=Wr(t,e);return Array.from({length:n},(r,o)=>o)}function bn(t){return t.advanced?.title??t.label??t.name}function Zr(t,e){let{min:n,max:r}=Kr(t);return Math.min(Math.max(e,n),r)}function X(t,e){let n={...t};for(let r of Object.keys(e??{})){let o=e?.[r];o!==void 0&&(n[r]=o)}return n}import{jsx as qr}from"react/jsx-runtime";function T(t){return ge(t,(e,n,r)=>qr("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${e}`))}import{jsx as K,jsxs as Tn}from"react/jsx-runtime";function hn(t){let e=Tn("div",{className:"flex flex-col",children:[t.title&&K("legend",{className:"mb-3 font-medium text-zinc-800 dark:text-zinc-200",children:T(t.title)}),t.description&&K("p",{className:"-mt-2 text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:T(t.description)})]});return t.step?Tn("div",{className:"flex flex-row items-start gap-4",children:[K("div",{className:"bg-primary text-primary-foreground flex size-6 shrink-0 items-center justify-center rounded-full",children:K("span",{className:"text-sm font-bold",children:t.step})}),e]}):e}import{jsx as Rn,jsxs as Jr}from"react/jsx-runtime";function W(t){return Jr("fieldset",{className:"flex w-full min-w-0 flex-col data-[empty=false]:gap-6","data-empty":t.empty,"data-slot":"field-set",id:t.id,children:[Rn(hn,{description:t.description,step:t.step,title:t.title}),Rn("div",{className:"w-full min-w-0",children:t.children})]})}import{jsx as Qr}from"react/jsx-runtime";function N(t){return Qr("div",{"data-slot":"field-group","data-compact":t.compact,className:"flex w-full flex-col gap-8 data-[compact=true]:gap-3",children:t.children})}import{jsx as k,jsxs as Sn}from"react/jsx-runtime";function An(t){let{fields:e=[]}=t.section,n=t.advanced?.step?t.step:void 0,{compact:r}=X(t.style,{compact:t.section.advanced?.compact}),o=k(N,{compact:r,children:t.children});if(!t.section.title&&!t.section.description)return o;let i=F(t.section.title,t.translations),l=F(t.section.description,t.translations);return t.section.advanced?.collapsible?Sn("fieldset",{"data-slot":"field-set","data-advanced":"true","data-expanded":!0,"data-empty":e.length===0,className:"flex flex-col",id:t.section.id?.toString(),children:[k("legend",{children:k("span",{className:"flex items-center gap-2 text-base font-medium text-zinc-600 dark:text-zinc-400",children:T(i)})}),Sn("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:[l&&k("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:T(l)}),o]})]}):k(W,{description:l,empty:e.length===0,id:t.section.id?.toString(),step:n,title:i,children:o})}import{jsx as Fn}from"react/jsx-runtime";function Nn(){return Fn("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:Fn("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-zinc-200 dark:bg-zinc-800"})})}function jr(t,e){return t.fields.every(n=>Cn(n,e))}function Cn(t,e){return e[t.name]?.hidden??t.hidden??!1}function to(t,e){return R(t)?jr(t,e):Cn(t,e)}function En(t,e,n){return n&&(t[n.name]?.hidden??n.hidden??!1)||e.length===0?!0:e.every(r=>to(r,t))}import{jsx as L,jsxs as wn}from"react/jsx-runtime";function eo(t){return En({},t.fields)?null:t.children}function In(t){let e=Y(t.sections,t.definition),n=t.guard??eo,r=t.fieldSet??An;return L("div",{className:"h-full w-full",children:L("form",{noValidate:t.noValidate,action:t.action,onSubmit:t.onSubmit,children:wn(N,{children:[e.map((o,i)=>wn(n,{fields:o.fields??[],children:[L(r,{advanced:t.advanced,section:o,step:i+1,style:t.config.style,translations:t.translations,children:t.children({disabled:t.readOnly,fields:o.fields})}),o.advanced?.separator&&L(Nn,{})]},`key-${o.id}-${i}`)),t.control&&L(At,{isPending:t.isPending,children:t.control})]})})})}import{twMerge as no}from"tailwind-merge";import{jsx as kn,jsxs as ro}from"react/jsx-runtime";function Ln(t){let e=t.style?.showOptionalLabel??!0,n=h(t.field)||p(t.field);return ro("label",{"data-slot":"field-label","data-normal":n,className:no("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:t.field.name,title:c(t.children)?t.children:void 0,children:[kn("span",{className:"[[data-slot=column]_&]:md:truncate",children:t.children}),e&&!t.field.required&&kn("span",{className:"ml-2 flex-shrink-0 text-sm text-zinc-600 dark:text-zinc-400",children:Ke("(Optional)",t.translations)})]})}import{jsx as Dn}from"react/jsx-runtime";function oo(t){return Dn("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:t.title,children:t.children})}function Z(t){let e=c(t.text)?t.text:t.text?.message;if(!e)return null;let n=V(e,{context:t.context,env:t.config?.env},{locale:t.config?.env?.locale});return Dn(oo,{title:c(t.text)?void 0:t.text?.title,children:T(x(n,t.translations))})}import{jsx as io}from"react/jsx-runtime";function q(t){return io(Z,{config:t.config,context:t.context,text:t.field.description,translations:t.translations})}import{jsx as vn,jsxs as lo}from"react/jsx-runtime";function On(t){let e=t.description??q,n={context:t.context,env:t.config?.env},r=t.config?.env?.locale,o=V(t.field.label,n,{locale:r});return lo("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[vn(Ln,{field:t.field,style:t.config?.style,translations:t.translations,children:x(o,t.translations)}),t.horizontal===!0&&vn(e,{config:t.config,context:t.context,field:t.field,translations:t.translations})]})}import{Fragment as ao,jsx as Pn,jsxs as so}from"react/jsx-runtime";function Mn(t){let e=t.description??q;return so(ao,{children:[t.field.name&&t.field.label&&Pn(On,{config:t.config,context:t.context,description:t.description,field:t.field,horizontal:t.horizontal,translations:t.translations}),t.children,t.horizontal===!1&&Pn(e,{config:t.config,context:t.context,field:t.field,translations:t.translations})]})}function _n(t,e){return t?e(t):null}import{jsx as zn}from"react/jsx-runtime";function Vn(t){let e=tn(t.field,t.value),{commonPropsWithOptions:n,defaultValue:r}=en(t.field,t.commonProps,e,t.value,t.translations),o=nn(t.field,r);return _n(t.config.inputs[t.field.type],i=>zn(Mn,{config:t.config,context:t.context,field:t.field,horizontal:t.horizontal,translations:t.translations,children:zn(i,{...t.ariaAttributes,...n,...t.dataAttributes,...o})}))}import{twMerge as co}from"tailwind-merge";import{jsx as uo}from"react/jsx-runtime";function J(t){let e=t.errors&&t.errors.length>0;return uo("div",{"data-slot":"field","data-clickable":t.isClickable?"true":"false",...e&&{[Kt]:"true"},...t.disabled&&{[Wt]:"true"},"data-orientation":t.orientation,className:co("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",t.isCheckbox&&(t.isReversed?"flex-row-reverse!":"flex-row!"),"data-[clickable=true]:has-[>[data-slot=field-content]]:[&>:first-child]:mt-px",t.className),children:t.children})}import{twMerge as fo}from"tailwind-merge";import{jsx as mo}from"react/jsx-runtime";function Gn(t){return mo(J,{...t,orientation:"vertical",className:fo("gap-3 has-[>[data-slot=field-content]]:items-start",!t.isClickable&&"[&>*]:w-full"),children:t.children})}import{twMerge as go}from"tailwind-merge";import{jsx as po}from"react/jsx-runtime";function Bn(t){return po(J,{...t,orientation:"horizontal",className:go("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]",t.isClickable&&"md:flex-col",!t.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:t.children})}import{jsx as Hn}from"react/jsx-runtime";function Un(t){let e=Ce(t.field),n=p(t.field),r=Ie(t.field);return t.horizontal?Hn(Bn,{disabled:t.disabled,errors:t.errors,isCheckbox:n,isReversed:r,isClickable:e,children:t.children}):Hn(Gn,{disabled:t.disabled,errors:t.errors,isCheckbox:n,isReversed:r,isClickable:e,children:t.children})}function $n(t){if(!t.field.type)return null;let e=Ze(t.field,t.disabled,{lang:t.lang,translations:t.translations}),n=dn(t.field),r=un(t.field,t.errors),o=!!t.field.disabled===e.disabled?t.field:{...t.field,disabled:e.disabled};return t.children({ariaAttributes:r,commonProps:e,dataAttributes:n,field:o,horizontal:t.horizontal,readOnly:t.readOnly})}import{twMerge as yo}from"tailwind-merge";import{jsx as xt}from"react/jsx-runtime";function Yn(t){let e=t.field.advanced?.cols,{horizontal:n=!1}=X(t.style,{horizontal:we(t.field)}),r=ke(t.field,t.disabled),o=Le(t.field,t.disabled);return xt("div",{className:yo("flex flex-col gap-3",pn(e)),children:xt(Un,{disabled:r,field:t.field,horizontal:n,children:xt($n,{disabled:r,field:t.field,horizontal:n,lang:t.lang,readOnly:o,translations:t.translations,children:t.children})})})}import{jsx as xo}from"react/jsx-runtime";function Xn(t){let e=Array.isArray(t.field.fields)&&t.field.fields.length===0,n=F(t.field.label,t.translations),r=F(t.field.description,t.translations);return xo(W,{description:r,empty:e,id:t.field.name,title:n,children:t.children})}import{jsx as bt,jsxs as Kn}from"react/jsx-runtime";function Wn(t){let e=x(bn(t.field),t.translations),n=yn(t.field);return bt(Xn,{field:t.field,translations:t.translations,children:xn(t.field,t.value).map(r=>Kn("div",{"data-slot":n?"list-item-card":void 0,className:n?"box-border w-full min-w-0 rounded-lg border border-zinc-100 p-4 dark:border-zinc-900":"box-border flex w-full min-w-0 flex-col gap-2",children:[n&&bt("div",{className:"flex min-w-0 flex-col font-medium text-zinc-700 dark:text-zinc-400",children:Kn("span",{className:"text-base",children:[e," ",r+1]})}),bt(N,{children:t.children(r)})]},r))})}import{twMerge as bo}from"tailwind-merge";import{jsx as Zn,jsxs as To}from"react/jsx-runtime";function qn(t){let e=t.description??Z,n=gn(t.column?.advanced?.cols);return To("div",{className:"flex w-full flex-col gap-4",children:[Zn("div",{"data-slot":"column",className:bo("grid grid-cols-1 gap-3 sm:gap-4",n),children:t.children}),t.column?.description&&Zn(e,{config:t.config,context:t.context,text:t.column.description,translations:t.translations})]})}import{Fragment as So}from"react";import{useMemo as ho}from"react";import{jsx as Ro}from"react/jsx-runtime";function Jn(t){let{fields:e,name:n}=t.field,{index:r}=t,o=ho(()=>Array.isArray(e)?e.map(i=>B(i)||G(i)?{...i,name:`${n}.${r}.${i.name}`}:R(i)?{...i,fields:i.fields.map(l=>({...l,name:`${n}.${r}.${l.name}`}))}:i):[],[r,n,e]);return Ro(D,{components:t.components,config:t.config,context:t.context,disabled:t.disabled,fields:o,lang:t.lang,onValueChange:t.onValueChange,style:t.style,translations:t.translations,value:t.value,children:t.children})}import{jsx as v,jsxs as Fo}from"react/jsx-runtime";function Ao(t,e){return R(t)?`column:${t.fields.map(r=>r.name).join("|")||e}`:t.name||`slot:${e}`}function D(t){let{field:e,list:n}=t.components;return Y(t.fields).map((r,o)=>Fo(So,{children:[R(r)&&v(qn,{column:r,config:t.config,context:t.context,description:t.components.description,translations:t.translations,children:v(D,{...t,fields:r.fields})}),B(r)&&v(e,{disabled:t.disabled,field:r,lang:t.lang,style:t.style,translations:t.translations,children:t.children}),G(r)&&v(n,{field:r,lang:t.lang,onValueChange:t.onValueChange,translations:t.translations,value:t.value,children:i=>v(Jn,{components:t.components,config:t.config,context:t.context,disabled:t.disabled,field:r,index:i,lang:t.lang,onValueChange:t.onValueChange,style:t.style,translations:t.translations,value:t.value,children:t.children})})]},Ao(r,o)))}import{jsx as No}from"react/jsx-runtime";function Qn(t){return n=>No(D,{...n,components:t})}var jn=Qn({field:Yn,list:Wn});import{jsx as Tt}from"react/jsx-runtime";function ht(t){let e=We(t.lang,t.translations);return Tt(In,{advanced:t.advanced,config:t.config,control:t.children,definition:t.definition,readOnly:t.readOnly,sections:t.sections,translations:e,children:({disabled:n,fields:r})=>Tt(jn,{config:t.config,context:t.context,disabled:n,fields:r,lang:t.lang,style:t.config.style,translations:e,value:t.value,children:o=>Tt(Vn,{...o,config:t.config,context:t.context,translations:e,value:t.value})})})}import{Suspense as Co}from"react";import{jsx as tr}from"react/jsx-runtime";function Eo(t){return tr(Co,{fallback:tr(ht,{config:t.config,sections:t.sections,readOnly:!0}),children:t.children})}export{Eo as Fallback,ht as Form};
1
+ import{jsx as _o}from"react/jsx-runtime";function Ge(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return _o("div",{"data-slot":"field-control",className:"w-full",children:t})}var _="input",He="input/date",We="input/email",Xe="input/number",Ke="input/time";var Ze="textarea",je="radio",qe="checkbox",ce="list",Je="select",Qe="select/active",et="select/day",tt="select/month",nt="select/timezone",ot="select/year";var rt="chips",it="chips/day",at="chips/month",C="column",st="description",de="fields",lt="label",ue="value",$="options",ct=["yyyy-MM-dd","MM/dd/yyyy","dd/MM/yyyy","MMMM d, yyyy"],V="data-format",fe="data-mode",me="data-reserved",ge="email",dt="number",ut="password",ft="tel",E="text",mt="aria-errormessage",gt="aria-invalid",pt="data-invalid",yt="data-readonly",xt="aria",bt="data",B="max",Tt="maxLength",U="min",ht="minLength",k="$ref";var Rt="type",At={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};import{format as Rr,formatDuration as Ar,intervalToDuration as Sr,isValid as K,parseISO as Fr}from"date-fns";function d(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function p(e){return c(e)||typeof e=="number"||$o(e)}function St(e){return Array.isArray(e)&&e.every(p)}function c(e){return typeof e=="string"}function $o(e){return typeof e=="boolean"}var S={error:(...e)=>{pe()&&!ye()&&Y().error("[Luna Form]",...e)},warn:(...e)=>{pe()&&!ye()&&Y().warn("[Luna Form]",...e)},info:(...e)=>{pe()&&!ye()&&Y().info("[Luna Form]",...e)}},pe=()=>typeof Y()<"u",ye=()=>typeof process<"u"&&process.env.NODE_ENV==="production",Y=()=>globalThis.console;function xe(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var I={found:!1,value:void 0};function Vo(e,t){if(!Array.isArray(t)&&xe(t,e))return{found:!0,value:t[e]};if(!e.includes("."))return I;let n=t;for(let o of e.split(".")){if(n==null)return I;if(Array.isArray(n)){let r=Number(o);if(!Number.isInteger(r)||!xe(n,o))return I;n=n[r]}else if(d(n)){if(!xe(n,o))return I;n=n[o]}else return I}return{found:!0,value:n}}function Ft(e,t=ue){if(e!=null){if(St(e)||p(e))return e;if(d(e)){let n=Bo(e,t);if(p(n))return n}}}function Bo(e,t){let n=m(e,t);if(p(n))return n}function m(e,t){if(!t||!e||typeof e!="object")return null;let n=Vo(t,e);return n.found?n.value:null}function Dt(e,t={description:st,label:lt,value:ue}){return e.map(n=>{if(d(n)){let o=m(n,t.label),r=m(n,t.value);if(p(o)&&p(r)){let i=m(n,t.description);return{label:`${o}`,value:`${r}`,...p(i)&&{description:`${i}`}}}}return n})}function wt(e=E){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==_?n.trim().toLowerCase():E}var Uo=/^#\/(definition|context)\//,Nt={};function Yo(e){return{cache:new Map,readsContext:!1,roots:e,visited:new WeakSet}}var Lt=new WeakMap;function H(e=[],t,n){let o=Ho(t,n);if(!o)return Ct(e);let r=Lt.get(e);r||(r=new WeakMap,Lt.set(e,r));let i=o.definition??Nt,a=r.get(i);if(a||(a={byContext:new WeakMap},r.set(i,a)),a.free!==void 0)return a.free;let s=o.context??Nt,l=a.byContext.get(s);if(l!==void 0)return l;let u=Yo(o),g=Ct(G(e,u));return u.readsContext?a.byContext.set(s,g):a.free=g,g}function Ct(e){return Array.isArray(e)?e.filter(Wo).sort((t,n)=>Et(t)-Et(n)):[]}function G(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=G(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=F(e);if(n!==void 0){let i=Go(n,t);return i!=null?G(i,t):e}let o={},r=!1;for(let[i,a]of Object.entries(e))o[i]=G(a,t),r||=o[i]!==a;return t.visited.delete(e),t.cache.set(e,r?o:e),t.cache.get(e)}function F(e){return d(e)&&c(e[k])?e[k]:void 0}function Go(e,t){let n=Uo.exec(e);if(!n)return t.roots.definition?m(t.roots.definition,e):null;n[1]==="context"&&(t.readsContext=!0);let o=n[1]==="context"?t.roots.context:t.roots.definition;return o?m(o,e.slice(n[0].length)):null}function It(e){return Object.entries(e??{})}function Et(e){return e.order??Number.MAX_VALUE}function Ho(e,t){let n={context:kt(t)?t:void 0,definition:kt(e)?e:void 0};return n.context||n.definition?n:null}function kt(e){return d(e)&&Object.keys(e).length>0}function Wo(e){return Rt in e?!0:Array.isArray(e[de])?e[de].length>0:!0}import{isValid as he,parse as Vt,parseISO as Xo,format as Bt}from"date-fns";import{enUS as Ko,es as Zo}from"date-fns/locale";var Ut=new Date(2e3,0,1),Yt=/^\d{4}-\d{2}-\d{2}$/,Re="yyyy-MM-dd",jo="MMMM d, yyyy",qo=1e3,Jo=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[],be="en",Qo=32,er=new Map;function x(e){return e?D(er,e,()=>tr(e),Qo):be}function tr(e){try{let t=Intl.getCanonicalLocales(e)[0];return t&&Intl.DateTimeFormat.supportedLocalesOf(t).length>0?t:be}catch{return be}}function Ae(e){return x(e).split("-")[0]}function Se(e){let t=x(e);return Array.from({length:12},(n,o)=>({value:(o+1).toString(),label:new Date(0,o).toLocaleString(t,{month:"long"})}))}function Fe(e){let t=x(e);return Array.from({length:7},(n,o)=>({value:o.toString(),label:new Date(2e3,0,2+o).toLocaleString(t,{weekday:"long"})}))}function Gt(e,t){return t>=e?Array.from({length:t-e+1},(n,o)=>{let r=e+o;return{value:r.toString(),label:r.toString()}}):[]}var Ot=new WeakMap;function Ht(e){let t=d(e.advanced)?e.advanced:void 0,n=t??e,o=Ot.get(n);if(o)return o;let r=t?.length,i={max:vt(r?.max),min:vt(r?.min)};Ot.set(n,i);let a=tn(e.name,r,i,nr);for(let s of a)S.warn(s);return i}function vt(e){return typeof e=="number"&&Number.isInteger(e)?e:void 0}var Mt="the field offers no year",nr={disordered:Mt,kind:"whole year",lost:Mt,needsBoth:!0};function or(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return At[n]??"Other"}function rr(e,t){return(e.find(o=>o.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}var zt=new Map;function ir(e){let t=zt.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 zt.set(e,n),n}function ar(e,t){let[n,o]=ir(e),r=n.formatToParts(t),i=o.formatToParts(t),s=(r.find(u=>u.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),l=rr(i,e);return{offset:s,longName:l}}function sr(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}var Pt=new WeakMap;function Wt(e){let t=e.advanced;if(!d(t)||t.suggested==null)return;let n=Pt.get(t);if(n)return n.zone;let o=t.suggested,r=c(o)?lr(o):void 0;return Pt.set(t,{zone:r}),r===void 0&&S.warn(Le(`${e.name}: advanced.suggested`,o,"time zone","no zone is suggested")),r}function lr(e){if(/^[A-Za-z]/.test(e))try{return new Intl.DateTimeFormat("en",{timeZone:e}).resolvedOptions().timeZone}catch{return}}var cr=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}(:\d{2}(\.\d{1,9})?)?(Z|[+-]\d{2}:?\d{2})$/;function X(e){if(e===void 0||!cr.test(e))return;let t=Xo(e);return he(t)?t:void 0}var dr=8,ur=new Map;function Xt(e,t){let n=X(t);return D(ur,`${e??""}|${n?.getTime()??""}`,()=>fr(e,n),dr)}function fr(e,t){let n=i=>{let a=sr(i);if(!t)return Object.freeze({value:i,label:a});let{offset:s,longName:l}=ar(i,t);return Object.freeze({value:i,label:`${a} - ${l} (${s})`})},o=new Map;for(let i of Jo()){let a=or(i);if(i===e||a==="Other")continue;let s=o.get(a);s?s.push(n(i)):o.set(a,[n(i)])}let r=Array.from(o.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)])}),...r]:r)}function mr(e,t){let n=e.trim();if(n){if(Yt.test(n))return _t(n,Re);for(let o of Object.values(Zt)){let r=_t(n,t,o);if(r)return r}}}function _t(e,t,n){try{let o=Vt(e,t,Ut,{locale:n});return he(o)&&o.getFullYear()>=qo?o:void 0}catch{return}}function De(e,t){let n=e?mr(e,t):void 0;return n?Bt(n,Re):""}function Kt(e,t){if(!e)return"";try{let n=Vt(e,t,Ut);return he(n)?Bt(n,"HH:mm:ss"):""}catch{return""}}var Zt={en:Ko,es:Zo};function we(e){return Zt[Ae(e)]}function Ne(e){return e.advanced?.format??"HH:mm"}function gr(e){return ct.find(t=>t===e)??jo}function jt(e){return gr(e.advanced?.format)}function Te(e){return c(e)&&Yt.test(e)&&De(e,Re)||void 0}function pr(e){let t=new Set,n=[];return e.forEach((o,r)=>{let i=Te(o);i===void 0?n.push(r):t.add(i)}),{days:[...t].sort(),rejected:n}}var qt={days:[],rejected:[]},yr={reserved:qt.days,unreadable:!1},$t=new WeakMap;function Jt(e){let t=e.advanced;if(!d(t))return yr;let n=$t.get(t);if(n)return n;let o=Array.isArray(t.reserved)?pr(t.reserved):qt,r={max:Te(t.length?.max),min:Te(t.length?.min)},i={...r,reserved:o.days,unreadable:xr(t.length,r)||t.reserved!=null&&(!Array.isArray(t.reserved)||o.rejected.length>0)};$t.set(t,i);let a=br(e.name,t,i,o.rejected);for(let s of a)S.warn(s);return i}function xr(e,t){return e==null?!1:!d(e)||F(e)!==void 0?!0:en.some(n=>e[n]!=null&&t[n]===void 0)}function Qt(e){return c(e)?[e,""]:Array.isArray(e)&&e.length<=2&&e.every(c)?[e[0]??"",e[1]??""]:void 0}var en=["min","max"];function br(e,t,n,o){return[...tn(e,t.length,n,Tr),...hr(e,t.reserved,o)]}var W="the field takes no day",Tr={disordered:"no day passes",kind:"yyyy-MM-dd day",lost:W,needsBoth:!1};function tn(e,t,n,o){let r=F(t);if(r!==void 0)return[`${e}: advanced.length points at ${r}, which nothing resolved, so ${o.lost}`];let i=d(t)?t:{};if(o.needsBoth&&i.min==null&&i.max==null)return[`${e}: advanced.length.min and .max are missing, so ${o.lost}`];let a=[];for(let s of en){let l=i[s];if(n[s]!==void 0||l==null&&!o.needsBoth)continue;let u=`${e}: advanced.length.${s}`;a.push(l==null?`${u} is missing, so ${o.lost}`:Le(u,l,o.kind,o.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 ${o.disordered}`),a}function hr(e,t,n){if(t==null)return[];let o=`${e}: advanced.reserved`;if(!Array.isArray(t)){let r=F(t);return[r!==void 0?`${o} points at ${r}, which nothing resolved, so ${W}`:`${o} is ${JSON.stringify(t)}, which is no list of days, so ${W}`]}return n.map(r=>Le(`${o}[${r}]`,t[r],"yyyy-MM-dd day",W))}function Le(e,t,n,o){let r=F(t);return r!==void 0?`${e} points at ${r}, which nothing resolved, so ${o}`:`${e} is ${JSON.stringify(t)}, which is no ${n}, so ${o}`}function D(e,t,n,o){let r=e.get(t);if(r!==void 0)return e.delete(t),e.set(t,r),r;let i=e.keys().next().value;e.size>=o&&i!==void 0&&e.delete(i);let a=n();return e.set(t,a),a}var Dr=["short","medium","long","full"],wr=e=>Dr.some(t=>t===e),Nr={ms:1,s:1e3,min:6e4,h:36e5,d:864e5};function Z(e){if(typeof e=="number"&&!Number.isNaN(e))return e;if(c(e)&&e.trim()!==""){let t=Number(e);return Number.isNaN(t)?null:t}return null}function nn(e,t,n){let o=Nr[t];if(o===void 0)return String(e);let r=e*o,i=Sr({start:0,end:r});return Ar(i,{locale:we(n)})}function on(e){if(e instanceof Date)return K(e)?e:null;if(c(e)){let t=Fr(e);if(K(t))return t;let n=new Date(e);return K(n)?n:null}if(typeof e=="number"){let t=new Date(e);return K(t)?t:null}return null}var rn=new WeakSet;function j(e){let t=e?.now;if(t!=null){if(c(t)&&X(t))return t;e&&!rn.has(e)&&(rn.add(e),S.warn(`context.now is ${Lr(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 Lr(e){return e instanceof Date?"a Date (pass its toISOString())":c(e)?JSON.stringify(e):`a ${typeof e}`}var Ee=64,Cr=new Map,Er=new Map,kr=new Map;function sn(e,t,n){let o=x(n);return D(Cr,`${o}|${t}`,()=>new Intl.DateTimeFormat(o,{dateStyle:t}),Ee).format(e)}function Ce(e,t,n={}){let o=x(t);return D(Er,`${o}|${n.style??""}|${n.currency??""}`,()=>new Intl.NumberFormat(o,n),Ee).format(e)}function an(e,t){let n=X(t.now);return n?vr(e,n,t.locale):sn(e,"medium",t.locale)}var ln=1e3,cn=60*ln,dn=60*cn,un=24*dn,fn=30.4375*un,Ir=12*fn,Or=[["second",ln,60],["minute",cn,60],["hour",dn,24],["day",un,31],["month",fn,12]];function vr(e,t,n){let o=e.getTime()-t.getTime(),r=Math.abs(o),i=(a,s)=>{let l=x(n),u=a===0?"auto":"always";return D(kr,`${l}|${u}`,()=>new Intl.RelativeTimeFormat(l,{numeric:u}),Ee).format(o<0?-a:a,s)};for(let[a,s,l]of Or){let u=Math.round(r/s);if(u<l)return i(u,a)}return i(Math.round(r/Ir),"year")}var Mr={currency:(e,t,n)=>{let o=Z(e);if(o===null)return String(e);let r=t[0]??"USD";return Ce(o,n.locale,{style:"currency",currency:r})},percent:(e,t,n)=>{let o=Z(e);return o===null?String(e):Ce(o,n.locale,{style:"percent"})},number:(e,t,n)=>{let o=Z(e);return o===null?String(e):Ce(o,n.locale)},date:(e,t,n)=>{let o=on(e);if(!o)return String(e);let r=t[0]??"short";return r==="relative"?an(o,n):wr(r)?sn(o,r,n.locale):Rr(o,r,{locale:we(n.locale)})},duration:(e,t,n)=>{if(typeof e=="number")return nn(e,t[0]??"ms",n.locale);if(c(e)){let r=Z(e);if(r!==null)return nn(r,t[0]??"ms",n.locale)}let o=on(e);return o?an(o,n):String(e)}};function mn(e,t,n){let o=t.split(":").map(s=>s.trim()).filter(s=>s.length>0);if(o.length===0)return;let[r,...i]=o,a=Mr[r];if(a)return a(e,i,n)}var zr=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g,Pr=/{([^}]{1,200})}/,_r=/{([^}]{1,200})}/g;function q(e,t){return{locale:e,now:j(t)}}function ke(e,t={},n={}){if(c(e))return Vr(e,t,n);if(Array.isArray(e))return e.map(o=>ke(o,t,n));if(d(e)){let o={};for(let r in e)o[r]=ke(e[r],t,n);return o}return e}function J(e,t={},n={}){return Ie(e)?ke(e,t,n):e}function Ie(e){return c(e)?Pr.test(e):Array.isArray(e)?e.some(t=>Ie(t)):d(e)?Object.values(e).some(t=>Ie(t)):!1}function $r(e,t){return t.includes(".")?m(e,t):e[t]}function Vr(e,t={},n={}){return e.replace(_r,(o,r)=>{let i=String(r).split("|").map(g=>g.trim()),[a,...s]=i;if(!a)return o;let l=$r(t,a);if(s.length===0)return p(l)?String(l):o;if(l==null)return o;let u=l;for(let g of s){let Ye=mn(u,g,{locale:n.locale,now:n.now});if(Ye===void 0)return o;u=Ye}return String(u)})}function gn(e,t){if(!c(e)||!e||e.trim().length===0)return null;let n,o=0,r=!1,i=[];for(;(n=zr.exec(e))!==null;){let[a,s,l]=n,u=n.index;r=!0,u>o&&i.push(e.substring(o,u));let g=t?t(u,l,s):a;i.push(g),o=u+a.length}return r?(o<e.length&&i.push(e.substring(o)),i):e}var pn=e=>f(Qe)(e),yn=e=>f(et)(e),xn=e=>f(tt)(e),bn=e=>f(ot)(e),Tn=e=>f(nt)(e),hn=e=>f(it)(e),Rn=e=>f(at)(e),Q=f(He),Oe=f(Ke);function ve(e){return Q(e)&&e.advanced?.mode==="range"}var y=f(qe),w=f(rt),R=f(je),An=f(_),T=f(Je),Sn=f(Ze),Fn=f(E,ge,ut,ft),ha=f(We,ge),Me=f(Xe,dt);function Dn(e){return R(e)||y(e)}function ee(e){return e.type===ce}function A(e){return e.type===C}function te(e){return e.type!==C&&e.type!==ce}function ze(e){return T(e)||R(e)||w(e)}function O(e){return e!=null&&e!==""}function f(...e){return t=>{let n=c(t.type)?t.type:void 0;return n?e.some(o=>n===o||n?.startsWith(`${o}/`)):!1}}function wn(e,t={}){if(T(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&d(n))return[n]}}function Nn(e){return R(e)||y(e)?!0:e.advanced?.horizontal}function Ln(e){return y(e)?e.advanced?.reverse!==!1:!1}function Cn(e,t){return!!(t||e.disabled||e.readonly)}function En(e,t){return!!e.readonly&&!t&&!e.disabled}function kn(e){let t=e.advanced?.step;if(typeof t=="number"&&Number.isFinite(t)&&t>0)return t}function Pe(e){if(Br(e)){let t=e.source;if(Array.isArray(t)||d(t)&&!(k in t))return t}}function In(e){return Array.isArray(Pe(e))}function Br(e){return T(e)?!e.disabled||Array.isArray(e.source):R(e)||w(e)}var Ur={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 vn(e,t){return b(e,t)}function Mn(e,t){if(!e)return;let n=x(e),o=Ae(n),r=[Ur[o],t?.[o],o===n?void 0:t?.[n]].filter(i=>i!==void 0);return r.length<=1?r[0]:Object.assign({},...r)}function b(e,t){return e?t?t[e]??e:e:""}function N(e,t){return e?b(e,t):void 0}function ne(e,t){if(!t)return e;let n=!1,o=e.map(r=>{let i=Yr(r,t);return i!==r&&(n=!0),i});return n?o:e}function Yr(e,t){if(!d(e))return e;let n=On(e.label,t),o=e.items;if(Array.isArray(o)){let i=ne(o,t);return i===o&&n===e.label?e:{...e,...n!==void 0&&{label:n},items:i}}let r=On(e.description,t);return n===e.label&&r===e.description?e:{...e,...n!==void 0&&{label:n},...r!==void 0&&{description:r}}}function On(e,t){return c(e)?b(e,t):e}function Gr(e,t){if(w(e))return Hr(e,t?.lang)}function Hr(e,t){if(hn(e))return Fe(t);if(Rn(e))return Se(t)}function Wr(e,t,n){if(T(e))return Xr(e,t,n)}function Xr(e,t,n){let{lang:o,translations:r}=t??{};if(yn(e))return Fe(o);if(xn(e))return Se(o);if(bn(e)){let{max:i,min:a}=Ht(e);return a!==void 0&&i!==void 0?Gt(a,i):[]}if(Tn(e))return Xt(Wt(e),n);if(pn(e))return ne([{value:"true",label:"Yes"},{value:"false",label:"No"}],r)}function zn(e,t=!1,n,o){let r={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return An(e)?{...r,...Kr(e,n?.lang)}:T(e)?{...r,...Pn(Wr(e,n,o))}:Sn(e)?{...r,...qr(e)}:w(e)?{...r,...jr(e,n)}:r}function Kr(e,t){let n=wt(e.type),o={...e,type:n};return{...Qr(e),...ei(e,t),..._n(e),...Jr(o),...Zr(o),...Fn(o)?$n(o):{},type:n}}function Zr(e){let t=kn(e);return Me(e)&&t!==void 0?{step:t}:{}}function Pn(e){return e?{options:e}:{}}function jr(e,t){let n=Pn(Gr(e,t)),o=e.advanced?.multiple??!0;return{...n,multiple:o}}function qr(e){return{..._n(e),...$n(e)}}function _n(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function Jr(e){return Me(e)?ti(e):{}}function Qr(e){if(Oe(e)){let t=Ne(e),n=t==="HH:mm:ss"||t==="hh:mm:ss a";return{[V]:t,step:n?"1":"60"}}return{}}function ei(e,t){let n=Gn(e);if(!n)return{};let{max:o,min:r,reserved:i}=Jt(e);return{[V]:n,...t&&{lang:t},...r!==void 0&&{[U]:r},...o!==void 0&&{[B]:o},...i.length>0&&{[me]:i.join(",")},...ve(e)&&{[fe]:"range"}}}function $n(e){return Vn(e,{min:ht,max:Tt})}function ti(e){return Vn(e,{min:U,max:B})}function Vn(e,t){let n={},o=e.advanced?.length;return o&&(o.min!==void 0&&(n[t.min]=o.min),o.max!==void 0&&(n[t.max]=o.max)),n}function Bn(e,t){let n=Pe(e);return n||wn(e,t)}function ni(e,t){let n=d(t)&&e.name in t?t[e.name]:t,o=Ft(n,e.advanced?.entity),r=O(o)?o:e.defaultValue;return Oe(e)&&O(r)?oi(e,r):Q(e)&&O(r)?si(e,r):r}function oi(e,t){let n=Ne(e);return c(t)?Kt(t,n):t}function ri(e,t,n){return ze(e)&&Array.isArray(n)?{...t,[$]:n}:t}function ii(e,t,n){if(e.required&&!O(n)&&T(e)&&e.advanced?.preselected!==!1&&$ in t){let o=t[$];if(Array.isArray(o)&&o.length===1)return o[0]}return n}function ai(e,t,n){if(ze(e)&&Array.isArray(t)){let o=Dt(t,e.advanced?.options);return In(e)?ne(o,n):o}return t}function Un(e,t,n,o,r){let i=ni(e,o),a=Array.isArray(n)?ai(e,n,r):n,s=ri(e,t,a),l=ii(e,s,i);return{commonPropsWithOptions:s,defaultValue:l}}function Yn(e,t){return y(e)?{defaultChecked:!!t}:{defaultValue:t}}function si(e,t){let n=Gn(e);if(!n)return t;if(ve(e)){let o=t==null||t===""?void 0:Qt(t);if(!o)return t;let r=_e(o[0],n),i=_e(o[1],n);return Array.isArray(t)&&t[0]===r&&t[1]===i?t:[r,i]}return c(t)?_e(t,n):t}function _e(e,t){return De(e,t)||e}function Gn(e){return e&&Q(e)?jt(e):void 0}function Hn(e,t){let n={};for(let[o,r]of It(t))n[`${e}-${o}`]=r;return n}function li(e){return Hn(xt,e)}function ci(e){return Hn(bt,e)}function Wn(e,t){let n=li(e.advanced?.aria);return t&&t.length>0&&(n[gt]="true",n[mt]=`${e.name}-error`),n}function Xn(e){return ci(e.advanced?.data)}var Kn={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},Zn={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function jn(e,t=2){return Kn[e&&e in Kn?e:t]}function qn(e){if(e&&e in Zn)return Zn[e]}function di(e){return{min:e.advanced?.length?.min??1,max:e.advanced?.length?.max??1/0}}function ui(e,t){let n=t?m(t,e.name):null;return fi(e,Array.isArray(n)?n.length:0)}function Jn(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===C}function Qn(e,t){let n=ui(e,t);return Array.from({length:n},(o,r)=>r)}function eo(e){return e.advanced?.title??e.label??e.name}function fi(e,t){let{min:n,max:o}=di(e);return Math.min(Math.max(t,n),o)}function oe(e,t){let n={...e};for(let o of Object.keys(t??{})){let r=t?.[o];r!==void 0&&(n[o]=r)}return n}import{jsx as mi}from"react/jsx-runtime";function h(e){return gn(e,(t,n,o)=>mi("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:o},`${n}-${t}`))}import{jsx as re,jsxs as to}from"react/jsx-runtime";function no(e){let t=to("div",{className:"flex flex-col",children:[e.title&&re("legend",{className:"mb-3 font-medium text-zinc-800 dark:text-zinc-200",children:h(e.title)}),e.description&&re("p",{className:"-mt-2 text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:h(e.description)})]});return e.step?to("div",{className:"flex flex-row items-start gap-4",children:[re("div",{className:"bg-primary text-primary-foreground flex size-6 shrink-0 items-center justify-center rounded-full",children:re("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}import{jsx as oo,jsxs as gi}from"react/jsx-runtime";function ie(e){return gi("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:[oo(no,{description:e.description,step:e.step,title:e.title}),oo("div",{className:"w-full min-w-0",children:e.children})]})}import{jsx as pi}from"react/jsx-runtime";function L(e){return pi("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 v,jsxs as ro}from"react/jsx-runtime";function io(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:o}=oe(e.style,{compact:e.section.advanced?.compact}),r=v(L,{compact:o,children:e.children});if(!e.section.title&&!e.section.description)return r;let i=N(e.section.title,e.translations),a=N(e.section.description,e.translations);return e.section.advanced?.collapsible?ro("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:[v("legend",{children:v("span",{className:"flex items-center gap-2 text-base font-medium text-zinc-600 dark:text-zinc-400",children:h(i)})}),ro("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&&v("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:h(a)}),r]})]}):v(ie,{description:a,empty:t.length===0,id:e.section.id?.toString(),step:n,title:i,children:r})}import{jsx as ao}from"react/jsx-runtime";function so(){return ao("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:ao("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-zinc-200 dark:bg-zinc-800"})})}function yi(e,t){return e.fields.every(n=>lo(n,t))}function lo(e,t){return t[e.name]?.hidden??e.hidden??!1}function xi(e,t){return A(e)?yi(e,t):lo(e,t)}function co(e,t,n){return n&&(e[n.name]?.hidden??n.hidden??!1)||t.length===0?!0:t.every(o=>xi(o,e))}import{jsx as M,jsxs as uo}from"react/jsx-runtime";function bi(e){return co({},e.fields)?null:e.children}function fo(e){let t=H(e.sections,e.definition,e.context),n=e.guard??bi,o=e.fieldSet??io;return M("div",{className:"h-full w-full",children:M("form",{noValidate:e.noValidate,action:e.action,onSubmit:e.onSubmit,children:uo(L,{children:[t.map((r,i)=>uo(n,{fields:r.fields??[],children:[M(o,{advanced:e.advanced,section:r,step:i+1,style:e.config.style,translations:e.translations,children:e.children({disabled:e.readOnly,fields:r.fields})}),r.advanced?.separator&&M(so,{})]},`key-${r.id}-${i}`)),e.control&&M(Ge,{isPending:e.isPending,children:e.control})]})})})}import{twMerge as Ti}from"tailwind-merge";import{jsx as mo,jsxs as hi}from"react/jsx-runtime";function go(e){let t=e.style?.showOptionalLabel??!0,n=R(e.field)||y(e.field);return hi("label",{"data-slot":"field-label","data-normal":n,className:Ti("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:c(e.children)?e.children:void 0,children:[mo("span",{className:"[[data-slot=column]_&]:md:truncate",children:e.children}),t&&!e.field.required&&mo("span",{className:"ml-2 flex-shrink-0 text-sm text-zinc-600 dark:text-zinc-400",children:vn("(Optional)",e.translations)})]})}import{jsx as po}from"react/jsx-runtime";function Ri(e){return po("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 ae(e){let t=c(e.text)?e.text:e.text?.message;if(!t)return null;let n=J(t,{context:e.context,env:e.config?.env},q(e.localization?.lang,e.context));return po(Ri,{title:c(e.text)?void 0:e.text?.title,children:h(b(n,e.localization?.translations))})}import{jsx as Ai}from"react/jsx-runtime";function se(e){return Ai(ae,{config:e.config,context:e.context,localization:e.localization,text:e.field.description})}import{jsx as yo,jsxs as Si}from"react/jsx-runtime";function xo(e){let t=e.description??se,n={context:e.context,env:e.config?.env},o=J(e.field.label,n,q(e.localization?.lang,e.context));return Si("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[yo(go,{field:e.field,style:e.config?.style,translations:e.localization?.translations,children:b(o,e.localization?.translations)}),e.horizontal===!0&&yo(t,{config:e.config,context:e.context,field:e.field,localization:e.localization})]})}import{Fragment as Fi,jsx as bo,jsxs as Di}from"react/jsx-runtime";function To(e){let t=e.description??se;return Di(Fi,{children:[e.field.name&&e.field.label&&bo(xo,{config:e.config,context:e.context,description:e.description,field:e.field,horizontal:e.horizontal,localization:e.localization}),e.children,e.horizontal===!1&&bo(t,{config:e.config,context:e.context,field:e.field,localization:e.localization})]})}function ho(e,t){return e?t(e):null}import{jsx as Ro}from"react/jsx-runtime";function Ao(e){let t=Bn(e.field,e.value),{commonPropsWithOptions:n,defaultValue:o}=Un(e.field,e.commonProps,t,e.value,e.localization?.translations),r=Yn(e.field,o);return ho(e.config.inputs[e.field.type],i=>Ro(To,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,localization:e.localization,children:Ro(i,{...e.dataAttributes,...n,...e.ariaAttributes,...r})}))}import{twMerge as wi}from"tailwind-merge";import{jsx as Ni}from"react/jsx-runtime";function le(e){let t=e.errors&&e.errors.length>0;return Ni("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[pt]:"true"},...e.disabled&&{[yt]:"true"},"data-orientation":e.orientation,className:wi("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 Li}from"tailwind-merge";import{jsx as Ci}from"react/jsx-runtime";function So(e){return Ci(le,{...e,orientation:"vertical",className:Li("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}import{twMerge as Ei}from"tailwind-merge";import{jsx as ki}from"react/jsx-runtime";function Fo(e){return ki(le,{...e,orientation:"horizontal",className:Ei("gap-2 md:flex-row md:gap-4","[&>[data-slot=field-content]]:min-w-0 [&>[data-slot=field-content]]:flex-grow [&>[data-slot=field-content]]:self-start","[&_[role=checkbox]]:mt-[1.5px]",e.isClickable&&"md:flex-col",!e.isClickable&&["md:justify-between","[&>*:not([data-slot=field-content])]:w-full","[&>*:not([data-slot=field-content])]:md:w-1/2","[&>*:not([data-slot=field-content])]:xl:w-2/5"]),children:e.children})}import{jsx as Do}from"react/jsx-runtime";function wo(e){let t=Dn(e.field),n=y(e.field),o=Ln(e.field);return e.horizontal?Do(Fo,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:o,isClickable:t,children:e.children}):Do(So,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:o,isClickable:t,children:e.children})}function No(e){if(!e.field.type)return null;let t=zn(e.field,e.disabled,e.localization,e.now),n=Xn(e.field),o=Wn(e.field,e.errors),r=!!e.field.disabled===t.disabled?e.field:{...e.field,disabled:t.disabled};return e.children({ariaAttributes:o,commonProps:t,dataAttributes:n,field:r,horizontal:e.horizontal,localization:e.localization,readOnly:e.readOnly})}import{twMerge as Ii}from"tailwind-merge";import{jsx as $e}from"react/jsx-runtime";function Lo(e){let t=e.field.advanced?.cols,{horizontal:n=!1}=oe(e.style,{horizontal:Nn(e.field)}),o=Cn(e.field,e.disabled),r=En(e.field,e.disabled);return $e("div",{className:Ii("flex flex-col gap-3",qn(t)),children:$e(wo,{disabled:o,field:e.field,horizontal:n,children:$e(No,{disabled:o,field:e.field,horizontal:n,localization:e.localization,now:e.now,readOnly:r,children:e.children})})})}import{jsx as Oi}from"react/jsx-runtime";function Co(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0,n=N(e.field.label,e.translations),o=N(e.field.description,e.translations);return Oi(ie,{description:o,empty:t,id:e.field.name,title:n,children:e.children})}import{jsx as Ve,jsxs as Eo}from"react/jsx-runtime";function ko(e){let t=e.localization?.translations,n=b(eo(e.field),t),o=Jn(e.field);return Ve(Co,{field:e.field,translations:t,children:Qn(e.field,e.value).map(r=>Eo("div",{"data-slot":o?"list-item-card":void 0,className:o?"box-border w-full min-w-0 rounded-lg border border-zinc-100 p-4 dark:border-zinc-900":"box-border flex w-full min-w-0 flex-col gap-2",children:[o&&Ve("div",{className:"flex min-w-0 flex-col font-medium text-zinc-700 dark:text-zinc-400",children:Eo("span",{className:"text-base",children:[n," ",r+1]})}),Ve(L,{children:e.children(r)})]},r))})}import{twMerge as vi}from"tailwind-merge";import{jsx as Io,jsxs as Mi}from"react/jsx-runtime";function Oo(e){let t=e.description??ae,n=jn(e.column?.advanced?.cols);return Mi("div",{className:"flex w-full flex-col gap-4",children:[Io("div",{"data-slot":"column",className:vi("grid grid-cols-1 gap-3 sm:gap-4",n),children:e.children}),e.column?.description&&Io(t,{config:e.config,context:e.context,localization:e.localization,text:e.column.description})]})}import{Fragment as _i}from"react";import{useMemo as zi}from"react";import{jsx as Pi}from"react/jsx-runtime";function vo(e){let{fields:t,name:n}=e.field,{index:o}=e,r=zi(()=>Array.isArray(t)?t.map(i=>te(i)||ee(i)?{...i,name:`${n}.${o}.${i.name}`}:A(i)?{...i,fields:i.fields.map(a=>({...a,name:`${n}.${o}.${a.name}`}))}:i):[],[o,n,t]);return Pi(z,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:r,onValueChange:e.onValueChange,style:e.style,localization:e.localization,value:e.value,children:e.children})}import{jsx as P,jsxs as Vi}from"react/jsx-runtime";function $i(e,t){return A(e)?`column:${e.fields.map(o=>o.name).join("|")||t}`:e.name||`slot:${t}`}function z(e){let{field:t,list:n}=e.components,o=j(e.context);return H(e.fields).map((r,i)=>Vi(_i,{children:[A(r)&&P(Oo,{column:r,config:e.config,context:e.context,description:e.components.description,localization:e.localization,children:P(z,{...e,fields:r.fields})}),te(r)&&P(t,{disabled:e.disabled,field:r,now:o,style:e.style,localization:e.localization,children:e.children}),ee(r)&&P(n,{field:r,onValueChange:e.onValueChange,localization:e.localization,value:e.value,children:a=>P(vo,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:r,index:a,onValueChange:e.onValueChange,style:e.style,localization:e.localization,value:e.value,children:e.children})})]},$i(r,i)))}import{jsx as Bi}from"react/jsx-runtime";function Mo(e){return n=>Bi(z,{...n,components:e})}var zo=Mo({field:Lo,list:ko});import{jsx as Be}from"react/jsx-runtime";function Ue(e){let t=Mn(e.lang,e.translations),n={lang:e.lang,translations:t};return Be(fo,{advanced:e.advanced,config:e.config,context:e.context,control:e.children,definition:e.definition,readOnly:e.readOnly,sections:e.sections,translations:t,children:({disabled:o,fields:r})=>Be(zo,{config:e.config,context:e.context,disabled:o,fields:r,localization:n,style:e.config.style,value:e.value,children:i=>Be(Ao,{...i,config:e.config,context:e.context,value:e.value})})})}import{Suspense as Ui}from"react";import{jsx as Po}from"react/jsx-runtime";function Yi(e){return Po(Ui,{fallback:Po(Ue,{config:e.config,sections:e.sections,readOnly:!0}),children:e.children})}export{Yi as Fallback,Ue as Form};
@@ -1,2 +1,3 @@
1
+ import { type InterpolateOptions } from '../util/string';
1
2
  import type { DataSource, Nullable, SourceEvent } from '../type';
2
- export declare function handleSourceEvent<T>(selected: Nullable<T> | undefined, events: SourceEvent[] | undefined, setSource: (name: string, source?: DataSource) => void): void;
3
+ export declare function handleSourceEvent<T>(selected: Nullable<T> | undefined, events: SourceEvent[] | undefined, setSource: (name: string, source?: DataSource) => void, options?: InterpolateOptions): void;
@@ -1,5 +1,6 @@
1
+ import { type InterpolateOptions } from '../util/string';
1
2
  import type { Nullable, ValueEvent } from '../type';
2
3
  export type ValueEventApply = (name: string, candidate: unknown, options: {
3
4
  onlyIfTargetEmpty: boolean;
4
5
  }) => void;
5
- export declare function handleValueEvent<T>(selected: Nullable<T> | undefined, events: ValueEvent[] | undefined, apply: ValueEventApply): void;
6
+ export declare function handleValueEvent<T>(selected: Nullable<T> | undefined, events: ValueEvent[] | undefined, apply: ValueEventApply, options?: InterpolateOptions): void;
@@ -1,5 +1,5 @@
1
- import type { CommonProps, DataSource, Field, Nullable, Option, Value, TimeFormat, DateFormat, Localization } from '../type';
2
- export declare function buildCommon(field: Field, disabled?: boolean, localization?: Localization): CommonProps;
1
+ import type { CommonProps, DataSource, Field, Nullable, Option, Value, DateFormat, Localization } from '../type';
2
+ export declare function buildCommon(field: Field, disabled?: boolean, localization?: Localization, now?: string): CommonProps;
3
3
  export declare function resolveSource(field: Field, value?: Nullable<Record<string, unknown>>): DataSource | unknown[] | undefined;
4
4
  export declare function getInputValue<K>(field: Field, value?: Nullable<K>): Value | undefined;
5
5
  export declare function mergeOptionsProps(field: Field, commonProps: CommonProps, options?: Nullable<DataSource | unknown[]>): CommonProps | {
@@ -44,10 +44,19 @@ export declare function prepareDefaultValue<T>(field: Field, value?: Nullable<T>
44
44
  defaultValue: Nullable<T> | undefined;
45
45
  defaultChecked?: undefined;
46
46
  };
47
- export declare function getFormatProps(dateFormat: Nullable<DateFormat>, timeFormat: Nullable<TimeFormat>): {
48
- 'data-format': "HH:mm" | "HH:mm:ss" | "hh:mm a" | "hh:mm:ss a" | "yyyy-MM-dd" | "MM/dd/yyyy" | "dd/MM/yyyy" | "MMMM d, yyyy";
49
- } | {
50
- 'data-format'?: undefined;
51
- };
47
+ /**
48
+ * What a field holds for a value it is given, and the one door every value
49
+ * comes in by: the host's, a `defaultValue`, what the user types, what a change
50
+ * event writes and the rows assigned to a list.
51
+ *
52
+ * A date is held as `yyyy-MM-dd` whichever shape it arrived in, so everything
53
+ * that reads the store -- a description's `{value}`, a `when`, the events the
54
+ * field fires -- sees one shape. Text that is no day is held as it came: the
55
+ * field shows what was typed and the schema says what is wrong with it,
56
+ * instead of the field quietly going blank. Any other field holds its value
57
+ * as it came.
58
+ */
59
+ export declare function holdValue<T>(field: Field, value: T): T | string | [string, string];
52
60
  export declare function getPreviewOptions(field: Field, localization?: Localization): Array<Option | string> | undefined;
61
+ export declare function dateFormatOf(field?: Field): DateFormat | undefined;
53
62
  export declare function resolveOptionLabel(value: unknown, options: Array<Option | string>): string;
@@ -1,4 +1,5 @@
1
1
  import type { core, z, ZodObject } from 'zod';
2
+ import type { DATE_FORMATS } from './util/constant';
2
3
  export type Schema = z.ZodType;
3
4
  export type Schemas = Record<string, Schema>;
4
5
  export type ZodSchema = ZodObject<{
@@ -13,7 +14,7 @@ export type Description = string | {
13
14
  title: string;
14
15
  };
15
16
  export type TimeFormat = 'HH:mm' | 'HH:mm:ss' | 'hh:mm a' | 'hh:mm:ss a';
16
- export type DateFormat = 'yyyy-MM-dd' | 'MM/dd/yyyy' | 'dd/MM/yyyy' | 'MMMM d, yyyy';
17
+ export type DateFormat = (typeof DATE_FORMATS)[number];
17
18
  export type DataSource = {
18
19
  body?: BodyInit | Record<string, unknown>;
19
20
  cache?: RequestCache;
@@ -176,10 +177,13 @@ export type AssertRule = {
176
177
  };
177
178
  export type Validation = {
178
179
  custom?: CustomValidation | Array<CustomValidation>;
180
+ date?: string;
179
181
  email?: string;
180
182
  length?: Length<string>;
181
183
  required?: string;
182
184
  requiredWhen?: WhenRule | Array<WhenRule>;
185
+ range?: string;
186
+ reserved?: string;
183
187
  pattern?: PatternRule;
184
188
  rules?: Array<AssertRule>;
185
189
  step?: string;
@@ -264,9 +268,10 @@ export type Input = Field & {
264
268
  export type Select = Field & {
265
269
  advanced?: {
266
270
  autocomplete?: never;
267
- length?: Length<number | string>;
271
+ length?: Length<number>;
268
272
  options?: Option;
269
273
  preselected?: boolean;
274
+ suggested?: string;
270
275
  };
271
276
  source?: DataSource | Array<unknown>;
272
277
  };
@@ -280,7 +285,13 @@ type TemporalField<T> = Field & {
280
285
  format?: T;
281
286
  };
282
287
  };
283
- export type Date = TemporalField<DateFormat>;
288
+ export type Date = TemporalField<DateFormat> & {
289
+ advanced?: {
290
+ length?: Length<string>;
291
+ mode?: 'single' | 'range';
292
+ reserved?: string[];
293
+ };
294
+ };
284
295
  export type Time = TemporalField<TimeFormat>;
285
296
  export type Environment = {
286
297
  [key: string]: Value;
@@ -326,7 +337,7 @@ export type TimezoneItem = {
326
337
  value: string;
327
338
  };
328
339
  export type TimezoneGroup = {
329
- items: TimezoneItem[];
340
+ items: readonly TimezoneItem[];
330
341
  label: string;
331
342
  };
332
343
  export {};
@@ -24,6 +24,10 @@ export declare const FIELDS = "fields";
24
24
  export declare const LABEL = "label";
25
25
  export declare const VALUE = "value";
26
26
  export declare const OPTIONS = "options";
27
+ export declare const DATE_FORMATS: readonly ["yyyy-MM-dd", "MM/dd/yyyy", "dd/MM/yyyy", "MMMM d, yyyy"];
28
+ export declare const DATA_FORMAT = "data-format";
29
+ export declare const DATA_MODE = "data-mode";
30
+ export declare const DATA_RESERVED = "data-reserved";
27
31
  export declare const TYPE_EMAIL = "email";
28
32
  export declare const TYPE_NUMBER = "number";
29
33
  export declare const TYPE_PASSWORD = "password";
@@ -1,4 +1,15 @@
1
- import type { Date as DateField, DateFormat, Time, TimeFormat, TimezoneGroup } from '../type';
1
+ import { DATA_FORMAT, DATA_MODE, DATA_RESERVED, MAX, MIN } from './constant';
2
+ import type { Locale } from 'date-fns';
3
+ import type { Date as DateField, DateFormat, Input, Select, Time, TimeFormat, TimezoneGroup } from '../type';
4
+ /**
5
+ * The language a form writes its months, days, numbers, dates and dictionary
6
+ * in: its `lang`, as a canonical tag, and English without one, for one that is
7
+ * no tag, or for one the runtime knows no language for. It is the one reading
8
+ * of the language, so everything the form writes agrees on it.
9
+ */
10
+ export declare function toLocale(locale?: string): string;
11
+ /** The base language of a form's language: `es` for `es-CO`. */
12
+ export declare function baseLanguage(locale?: string): string;
2
13
  export declare function getMonth(locale?: string): {
3
14
  value: string;
4
15
  label: string;
@@ -11,13 +22,128 @@ export declare function getYear(min: number, max: number): Array<{
11
22
  value: string;
12
23
  label: string;
13
24
  }>;
14
- export declare function getCurrentYear(): number;
15
- export declare function getUserTimezone(): string;
16
- export declare function getTimezones(): TimezoneGroup[];
17
- export declare function getConvert(value: string | number, current?: number): number;
25
+ export type YearLimits = Readonly<{
26
+ max?: number;
27
+ min?: number;
28
+ }>;
29
+ /**
30
+ * The first and the last year a year select offers, both included: whole
31
+ * numbers, the way an `input/number` takes its bounds, or a `$ref` the host
32
+ * resolved to one. The library keeps no clock, so "this year" is the host's to
33
+ * say, through `context`, and a field without both bounds offers no year.
34
+ *
35
+ * Read once for the options the component is handed and for the schema that
36
+ * checks a year, so the two cannot disagree. It takes an `Input` as well,
37
+ * which is what the schema sees every field as.
38
+ */
39
+ export declare function buildYearLimits(field: Input | Select): YearLimits;
40
+ /**
41
+ * The zone a timezone select suggests, as its definition gives it in
42
+ * `advanced.suggested`: the host knows it -- a profile, a cookie, a header --
43
+ * and passes it through `context`, so the server and the browser suggest the
44
+ * same one. It is read as the name the runtime gives it, and a value that is no
45
+ * zone suggests nothing, which a development build names.
46
+ */
47
+ export declare function buildSuggestedZone(field: Select): string | undefined;
48
+ /**
49
+ * An instant as the host gives it in `context.now`: an ISO date, time and
50
+ * offset, such as `2026-10-05T19:30:00-05:00` or `2026-10-06T00:30:00Z`.
51
+ * Without its offset a time would be read in this machine's zone, which is the
52
+ * clock the form keeps no more, so anything else is no instant.
53
+ */
54
+ export declare function readInstant(text?: string): Date | undefined;
55
+ /**
56
+ * Every zone this engine knows, grouped by region, with the one the host
57
+ * suggests first. Labelled for the instant the host gives, `context.now`: the
58
+ * offset a zone has, and the name it goes by, both depend on it, so without one
59
+ * a zone goes by its city. Nothing here reads this machine's clock or zone.
60
+ *
61
+ * Built once while the zone and the instant hold: a timezone select builds its
62
+ * options on every render, and there are hundreds of zones. Frozen, since every
63
+ * form that asks shares it, on a server every request. `suggested` is a zone's
64
+ * name as the runtime gives it, as `buildSuggestedZone` reads it. Sorted in
65
+ * English, the language of the labels, so no machine's collation orders it.
66
+ */
67
+ export declare function getTimezones(suggested?: string, now?: string): readonly TimezoneGroup[];
18
68
  export declare function toNativeDate(value: string, fromFormat: DateFormat): string;
19
69
  export declare function toNativeTime(value: string, fromFormat: TimeFormat): string;
20
70
  export declare function fromNativeTime(native: string, toFormat?: TimeFormat): string;
21
- export declare function fromNativeDate(native: string, toFormat?: DateFormat): string;
71
+ export declare function displayDate(value: string, format: DateFormat, lang?: string): string;
72
+ /**
73
+ * The date-fns locale for a language, by its base: `es-CO` writes Spanish
74
+ * names. English for a language the library does not ship.
75
+ */
76
+ export declare function dateFnsLocale(lang?: string): Locale | undefined;
22
77
  export declare function getTimeFormat(field: Time): TimeFormat;
23
78
  export declare function getDateFormat(field: DateField): DateFormat;
79
+ export type DateLimits = Readonly<{
80
+ max?: string;
81
+ min?: string;
82
+ reserved: readonly string[];
83
+ unreadable: boolean;
84
+ }>;
85
+ type DateBound = 'max' | 'min';
86
+ export type DateIssue = Readonly<{
87
+ issue: DateBound;
88
+ limit: string;
89
+ }> | Readonly<{
90
+ issue: 'range';
91
+ }> | Readonly<{
92
+ issue: 'reserved';
93
+ }> | Readonly<{
94
+ issue: 'unreadable';
95
+ }>;
96
+ /**
97
+ * The days a date field allows: the first and the last, both included, and
98
+ * the ones nobody may pick. Read once for the props its component is handed and
99
+ * for the schema that checks it, so the two cannot disagree.
100
+ *
101
+ * It is the one place the limits are read, on the server and in the browser, so
102
+ * it is where one that limits nothing is named for whoever wrote the form.
103
+ */
104
+ export declare function buildDateLimits(field: DateField): DateLimits;
105
+ export declare function checkDay(day: string, limits: DateLimits): DateIssue | null;
106
+ /**
107
+ * A range as the form holds it, `[from, to]`, with `''` for an end nobody
108
+ * picked: the pair a calendar emits or the two hidden inputs a form submits,
109
+ * and one text alone as the first end. Anything else -- numbers, an object, a
110
+ * list of more than two -- is no range, and comes back `undefined`, so it is
111
+ * held back for what it is instead of being taken for a range nobody picked.
112
+ */
113
+ export declare function toRange(value: unknown): [string, string] | undefined;
114
+ export declare function checkRange(from: string, to: string, limits: DateLimits): DateIssue | null;
115
+ export type DateProps = Readonly<{
116
+ format: DateFormat;
117
+ lang: string;
118
+ max?: string;
119
+ min?: string;
120
+ mode: 'range' | 'single';
121
+ reserved: readonly string[];
122
+ }>;
123
+ /**
124
+ * What a date component reads back from the props the form gave it: the format
125
+ * to show a day in, whether it picks one day or a range, the first and the last
126
+ * day it may offer, and the days it may not, all as `yyyy-MM-dd`.
127
+ *
128
+ * The form writes a date field's rules as attributes, so a native input and a
129
+ * calendar from any library can both carry them; this is the other half, and
130
+ * it lives here so an adapter never decodes an attribute the form chose how
131
+ * to encode.
132
+ */
133
+ export declare function readDateProps(props: Readonly<{
134
+ [DATA_FORMAT]?: string;
135
+ [DATA_MODE]?: string;
136
+ [DATA_RESERVED]?: string;
137
+ [MAX]?: string;
138
+ [MIN]?: string;
139
+ lang?: string;
140
+ }>): DateProps;
141
+ /**
142
+ * What a reader worked out for a key, kept while it is among the last `limit`
143
+ * keys read, the one read longest ago dropped first: what a component reads on
144
+ * every render is worked out once while its input holds, whatever other forms
145
+ * read between, and a server that sees a new input on every request holds no
146
+ * more than that.
147
+ */
148
+ export declare function remember<T>(cache: Map<string, T>, key: string, compute: () => T, limit: number): T;
149
+ export {};
@@ -1,6 +1,17 @@
1
1
  export type FormatContext = {
2
2
  locale?: string;
3
+ now?: string;
3
4
  };
4
5
  export type FormatFilter = (value: unknown, args: string[], ctx: FormatContext) => string;
6
+ /**
7
+ * `context.now`, the one key of the host's `context` the library reads on its
8
+ * own: the instant a relative date is measured from and a time zone's offset is
9
+ * given for. The library keeps no clock, so without it there is no "now".
10
+ *
11
+ * Only an ISO date, time and offset is an instant. A `Date`, a timestamp or a
12
+ * time without its offset is none, and a development build names it once for
13
+ * the context that carries it, since nothing on the form says so otherwise.
14
+ */
15
+ export declare function readNow(context?: Record<string, unknown>): string | undefined;
5
16
  export declare const formatFilters: Record<string, FormatFilter>;
6
17
  export declare function applyFormatFilter(value: unknown, expression: string, ctx: FormatContext): string | undefined;