react-luna-form 0.0.83 → 0.0.85
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +140 -0
- package/dist/client/cjs/index.js +1 -1
- package/dist/client/esm/index.js +1 -1
- package/dist/server/cjs/index.js +1 -1
- package/dist/server/esm/index.js +1 -1
- package/dist/types/luna-core/type.d.ts +17 -1
- package/dist/types/luna-core/util/build.d.ts +1 -1
- package/dist/types/luna-core/util/schema.d.ts +4 -4
- package/dist/types/luna-core/util/style.d.ts +1 -5
- package/dist/types/luna-react/src/client/lib/list-store.d.ts +17 -0
- package/docs/events/change.md +77 -2
- package/docs/fields/data-source.md +113 -0
- package/docs/fields/input.md +2 -1
- package/docs/fields/list.md +5 -2
- package/docs/fields/select.md +49 -1
- package/docs/forms/submit.md +129 -0
- package/docs/index.md +9 -3
- package/docs/interpolation/format-filters.md +4 -0
- package/docs/interpolation/overview.md +179 -0
- package/docs/setup.md +65 -14
- package/docs/structure/definition.md +99 -0
- package/docs/structure/layout.md +189 -0
- package/docs/structure/sections.md +187 -0
- package/docs/validation/overview.md +1 -1
- package/package.json +4 -4
package/README.md
ADDED
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
# react-luna-form
|
|
2
|
+
|
|
3
|
+
Build React forms from JSON.
|
|
4
|
+
|
|
5
|
+
A form is declared as data, not composed as components: a `sections` array of
|
|
6
|
+
field descriptors is the single source for what renders **and** for the
|
|
7
|
+
[Zod](https://zod.dev) schema that validates it. The same descriptors render on
|
|
8
|
+
the server, render on the client, and validate headlessly in a backend.
|
|
9
|
+
|
|
10
|
+
```json
|
|
11
|
+
{
|
|
12
|
+
"sections": [
|
|
13
|
+
{
|
|
14
|
+
"title": "Payment Method",
|
|
15
|
+
"fields": [
|
|
16
|
+
{
|
|
17
|
+
"name": "name",
|
|
18
|
+
"type": "input/text",
|
|
19
|
+
"label": "Name on Card",
|
|
20
|
+
"required": true,
|
|
21
|
+
"validation": { "required": "Enter the name on your card" }
|
|
22
|
+
}
|
|
23
|
+
]
|
|
24
|
+
}
|
|
25
|
+
]
|
|
26
|
+
}
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## Installation
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
pnpm add react-luna-form
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
The package ships no dependencies of its own. Everything it needs is a peer
|
|
36
|
+
dependency, so your application resolves a single copy of React, Zod and the
|
|
37
|
+
rest:
|
|
38
|
+
|
|
39
|
+
| Peer | Required version | Used for |
|
|
40
|
+
| ----------------------- | ------------------ | ------------------------------------------- |
|
|
41
|
+
| `react`, `react-dom` | `^19.0.0` | rendering, and `useActionState` on submit |
|
|
42
|
+
| `zod` | `^4.0.0` | the schema derived from `sections` |
|
|
43
|
+
| `jotai`, `jotai-family` | `^2.0.0`, `^1.0.0` | the form's value, error and source stores |
|
|
44
|
+
| `swr` | `^2.0.0` | fetching a field's remote `source` |
|
|
45
|
+
| `date-fns` | `^4.0.0` | date and time formatting, `duration` filter |
|
|
46
|
+
| `fast-equals` | `^6.0.0` | change detection in the stores |
|
|
47
|
+
| `tailwind-merge` | `^3.5.0` | merging the classes the components render |
|
|
48
|
+
|
|
49
|
+
None of them is optional. A package manager that installs peers automatically
|
|
50
|
+
(npm 7+, or pnpm with `auto-install-peers=true`) brings them in for you;
|
|
51
|
+
otherwise install them alongside the library.
|
|
52
|
+
|
|
53
|
+
## Styling
|
|
54
|
+
|
|
55
|
+
The components render Tailwind utility classes and **no CSS is shipped in the
|
|
56
|
+
bundle**. With [Tailwind CSS v4](https://tailwindcss.com) installed, point it at
|
|
57
|
+
the package so the classes inside the published build are generated:
|
|
58
|
+
|
|
59
|
+
```css
|
|
60
|
+
@import 'tailwindcss';
|
|
61
|
+
|
|
62
|
+
@source '../node_modules/react-luna-form';
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
Without that `@source` line the form renders with the right markup and none of
|
|
66
|
+
its layout.
|
|
67
|
+
|
|
68
|
+
Every element also carries a `data-slot` attribute — `field`, `field-label`,
|
|
69
|
+
`field-control`, `field-set`, `field-group`, `field-separator`, `column`,
|
|
70
|
+
`list-item-card` — so a design system can restyle the structure without
|
|
71
|
+
touching the library.
|
|
72
|
+
|
|
73
|
+
## Quick start
|
|
74
|
+
|
|
75
|
+
**1. Register the components that render each field type.** Nothing is bundled:
|
|
76
|
+
you pass your own input, select and textarea, so the form looks like the rest of
|
|
77
|
+
your product.
|
|
78
|
+
|
|
79
|
+
```ts
|
|
80
|
+
// luna.config.ts
|
|
81
|
+
import { defineConfig, defineInput, defineSelect } from 'react-luna-form/config'
|
|
82
|
+
import { Input } from './components/ui/input'
|
|
83
|
+
import { Select } from './components/ui/select'
|
|
84
|
+
|
|
85
|
+
export default defineConfig({
|
|
86
|
+
inputs: [defineInput(Input), defineSelect(Select)],
|
|
87
|
+
})
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
**2. Render the descriptors.**
|
|
91
|
+
|
|
92
|
+
```tsx
|
|
93
|
+
import config from '@/luna.config'
|
|
94
|
+
import form from './form.json'
|
|
95
|
+
import { Form } from 'react-luna-form/server'
|
|
96
|
+
|
|
97
|
+
export default function Page() {
|
|
98
|
+
return <Form {...form} config={config} />
|
|
99
|
+
}
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
That is the server form: it renders the fields without client state. For
|
|
103
|
+
anything interactive — change events, conditional visibility, remote sources,
|
|
104
|
+
submitting through a server action — import `Form` from `react-luna-form`
|
|
105
|
+
instead.
|
|
106
|
+
|
|
107
|
+
**3. Validate the same JSON anywhere.**
|
|
108
|
+
|
|
109
|
+
```ts
|
|
110
|
+
import { buildFormSchema, collectIssues } from 'react-luna-form/schema'
|
|
111
|
+
|
|
112
|
+
const result = buildFormSchema(sections).safeParse(payload)
|
|
113
|
+
if (!result.success) {
|
|
114
|
+
const issues = collectIssues(result.error)
|
|
115
|
+
}
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
## Entry points
|
|
119
|
+
|
|
120
|
+
| Import | Contains |
|
|
121
|
+
| ------------------------ | ------------------------------------------------------------------------- |
|
|
122
|
+
| `react-luna-form` | `Form` (client), `withDeclaredFields` |
|
|
123
|
+
| `react-luna-form/server` | `Form` (server) and `Fallback`, usable under the `react-server` condition |
|
|
124
|
+
| `react-luna-form/config` | `defineConfig` and the `define*` registration helpers |
|
|
125
|
+
| `react-luna-form/schema` | `buildFormSchema` and `collectIssues`, with no React dependency |
|
|
126
|
+
|
|
127
|
+
## Documentation
|
|
128
|
+
|
|
129
|
+
The JSON contract is documented in full under [`docs/`](docs/index.md), which
|
|
130
|
+
ships inside the published package: the copy you read is the one that describes
|
|
131
|
+
the version you installed, at `node_modules/react-luna-form/docs/`.
|
|
132
|
+
|
|
133
|
+
Start at [docs/setup.md](docs/setup.md) to wire a form up, then read the page
|
|
134
|
+
for whatever you are declaring — [fields](docs/fields/input.md),
|
|
135
|
+
[validation](docs/validation/overview.md),
|
|
136
|
+
[change events](docs/events/change.md).
|
|
137
|
+
|
|
138
|
+
## License
|
|
139
|
+
|
|
140
|
+
Apache-2.0
|
package/dist/client/cjs/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var ys=Object.create;var vt=Object.defineProperty;var bs=Object.getOwnPropertyDescriptor;var xs=Object.getOwnPropertyNames;var hs=Object.getPrototypeOf,Rs=Object.prototype.hasOwnProperty;var vs=(e,t)=>{for(var n in t)vt(e,n,{get:t[n],enumerable:!0})},lr=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of xs(t))!Rs.call(e,o)&&o!==n&&vt(e,o,{get:()=>t[o],enumerable:!(r=bs(t,o))||r.enumerable});return e};var Ss=(e,t,n)=>(n=e!=null?ys(hs(e)):{},lr(t||!e||!e.__esModule?vt(n,"default",{value:e,enumerable:!0}):n,e)),Ts=e=>lr(vt({},"__esModule",{value:!0}),e);var xu={};vs(xu,{Form:()=>ms,withDeclaredFields:()=>ps});module.exports=Ts(xu);var cr=require("react/jsx-runtime");function ur(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,cr.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var Tn=require("react/jsx-runtime");function qe(e){return(0,Tn.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",className:`size-4 transition-transform duration-200 ${e.expanded?"rotate-90":""}`,children:(0,Tn.jsx)("path",{fillRule:"evenodd",d:"M8.22 5.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.75.75 0 0 1-1.06-1.06L11.94 10 8.22 6.28a.75.75 0 0 1 0-1.06Z",clipRule:"evenodd"})})}var fr=require("react");var dr=require("react"),St=(0,dr.createContext)(!1);var An=require("react/jsx-runtime");function nt({children:e,visible:t}){return(0,An.jsx)(fr.Activity,{mode:t?"visible":"hidden",children:(0,An.jsx)(St,{value:!0,children:e})})}var Tt="input",mr="input/date",gr="input/email",pr="input/number",yr="input/time";var br="textarea",xr="radio",hr="checkbox",wn="list",Rr="select",vr="select/active",Sr="select/day",Tr="select/month",Ar="select/timezone",wr="select/year";var Fr="chips",Cr="chips/day",kr="chips/month",rt="column",Nr="description",Fn="fields",Ir="label",W="value",At="options",Cn="email",Er="number",Lr="password",Pr="tel",ot="text",Vr="aria-errormessage",Dr="aria-invalid",Or="data-invalid",Mr="data-readonly",zr="aria",_r="data",wt="max",Br="maxLength",Ft="min",$r="minLength",Ze="$ref",Gr="source",Ur="state",Ct="http://luna.internal",Hr="type",Yr={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};var z=require("date-fns"),ze=require("date-fns/locale");function m(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function kt(e){return Array.isArray(e)&&e.every(m)}function U(e){return e==null||e===""}function ne(e){return g(e)||typeof e=="number"||kn(e)}function it(e){return Array.isArray(e)&&e.every(ne)}function g(e){return typeof e=="string"}function qr(e){return m(e)&&"url"in e}function kn(e){return typeof e=="boolean"}var Zr={en:ze.enUS,"en-US":ze.enUS,es:ze.es,"es-ES":ze.es,"es-MX":ze.es},As={short:"M/d/yy",medium:"MMM d, yyyy",long:"MMMM d, yyyy",full:"EEEE, MMMM d, yyyy"},ws={ms:1,s:1e3,min:6e4,h:36e5,d:864e5};function Kr(e){if(e)return Zr[e]??Zr[e.split("-")[0]]}function Nt(e){if(typeof e=="number"&&!Number.isNaN(e))return e;if(g(e)&&e.trim()!==""){let t=Number(e);return Number.isNaN(t)?null:t}return null}function Wr(e,t,n){let r=ws[t];if(r===void 0)return String(e);let o=e*r,i=(0,z.intervalToDuration)({start:0,end:o});return(0,z.formatDuration)(i,{locale:n})}function Xr(e){if(e instanceof Date)return(0,z.isValid)(e)?e:null;if(g(e)){let t=(0,z.parseISO)(e);if((0,z.isValid)(t))return t;let n=new Date(e);return(0,z.isValid)(n)?n:null}if(typeof e=="number"){let t=new Date(e);return(0,z.isValid)(t)?t:null}return null}var Fs={currency:(e,t,n)=>{let r=Nt(e);if(r===null)return String(e);let o=t[0]??"USD";return new Intl.NumberFormat(n.locale,{style:"currency",currency:o}).format(r)},percent:(e,t,n)=>{let r=Nt(e);return r===null?String(e):new Intl.NumberFormat(n.locale,{style:"percent"}).format(r)},number:(e,t,n)=>{let r=Nt(e);return r===null?String(e):new Intl.NumberFormat(n.locale).format(r)},date:(e,t,n)=>{let r=Xr(e);if(!r)return String(e);let o=t[0]??"short",i=Kr(n.locale);if(o==="relative")return(0,z.formatDistanceToNow)(r,{addSuffix:!0,locale:i});let a=As[o]??o;return(0,z.format)(r,a,{locale:i})},duration:(e,t,n)=>{let r=Kr(n.locale);if(typeof e=="number")return Wr(e,t[0]??"ms",r);if(g(e)){let i=Nt(e);if(i!==null)return Wr(i,t[0]??"ms",r)}let o=Xr(e);return o?(0,z.formatDistanceToNow)(o,{addSuffix:!0,locale:r}):String(e)}};function jr(e,t,n){let r=t.split(":").map(s=>s.trim()).filter(s=>s.length>0);if(r.length===0)return;let[o,...i]=r,a=Fs[o];if(a)return a(e,i,n)}var Cs=/^\d+$/;function In(e,t=[],n=W){return it(e)?{value:e}:Array.isArray(t)?t.find(r=>{let o=En(r,n);if(o!==void 0&&`${o}`==`${e}`)return r})??{value:e}:{value:e}}function En(e,t=W){if(e!=null){if(it(e)||ne(e))return e;if(m(e)){let n=ks(e,t);if(ne(n))return n}}}function ks(e,t){let n=$(e,t);if(ne(n))return n}function Jr(e,t){if(Array.isArray(e))return e;let n=$(e,t);return Array.isArray(n)?n:null}function $(e,t){if(!t||!m(e))return null;let n=t.split(".").filter(o=>o!=="");if(n.length===0)return null;let r=e;for(let o of n)if(m(r)&&o in r)r=r[o];else if(Array.isArray(r)){let i=Number(o);if(!Number.isInteger(i)||i<0||i>=r.length)return null;r=r[i]}else return null;return r}function Ln(e,t={description:Nr,label:Ir,value:W}){return e.map(n=>{if(m(n)){let r=$(n,t.label),o=$(n,t.value);if(ne(r)&&ne(o)){let i=$(n,t.description);return{label:`${r}`,value:`${o}`,...ne(i)&&{description:`${i}`}}}}return n})}function Qr(e=ot){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==Tt?n.trim().toLowerCase():ot}function eo(e){let t={};for(let n of e.keys()){let r=e.getAll(n);t[n]=r.length>1?r:r[0]}return t}function to(e){let t={};for(let n of Object.keys(e)){let r=n.split(".");if(r.length===1){t[n]=e[n];continue}let o=t;for(let a=0;a<r.length-1;a++){let s=r[a],l=r[a+1],u=Cs.test(l);s in o||(o[s]=u?[]:{}),o=o[s]}let i=r[r.length-1];o[i]=e[n]}return Nn(t),t}function Nn(e){for(let t of Object.keys(e)){let n=e[t];if(Array.isArray(n)){let r=n.filter(o=>o!==void 0);for(let o of r)m(o)&&Nn(o);e[t]=r}else m(n)&&Nn(n)}}var Ns=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g,Is=/{([^}]{1,200})}/,Es=/{([^}]{1,200})}/g,Ls=/^{([^}|]{1,200})}$/;function ue(e,t={},n={}){if(g(e))return Vs(e,t,n);if(Array.isArray(e))return e.map(r=>ue(r,t,n));if(m(e)){let r={};for(let o in e)r[o]=ue(e[o],t,n);return r}return e}function no(e,t={},n={}){if(g(e)){let r=Ps(e,t);if(r!==void 0)return r}return ue(e,t,n)}function at(e,t={},n={}){return _e(e)?ue(e,t,n):e}function _e(e){return g(e)?Is.test(e):Array.isArray(e)?e.some(t=>_e(t)):m(e)?Object.values(e).some(t=>_e(t)):!1}function ro(e,t){return t.includes(".")?$(e,t):e[t]}function Ps(e,t){let n=Ls.exec(e);if(!n)return;let r=n[1].trim();if(!r)return;let o=ro(t,r);if(m(o)||Array.isArray(o))return o}function Vs(e,t={},n={}){return e.replace(Es,(r,o)=>{let i=String(o).split("|").map(c=>c.trim()),[a,...s]=i;if(!a)return r;let l=ro(t,a);if(s.length===0)return ne(l)?String(l):r;if(l==null)return r;let u=l;for(let c of s){let p=jr(u,c,{locale:n.locale});if(p===void 0)return r;u=p}return String(u)})}function oo(e,t){if(!g(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Ns.exec(e))!==null;){let[a,s,l]=n,u=n.index;o=!0,u>r&&i.push(e.substring(r,u));let c=t?t(u,l,s):a;i.push(c),r=u+a.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var st={error:(...e)=>{Pn()&&!Vn()&&It().error("[Luna Form]",...e)},warn:(...e)=>{Pn()&&!Vn()&&It().warn("[Luna Form]",...e)},info:(...e)=>{Pn()&&!Vn()&&It().info("[Luna Form]",...e)}},Pn=()=>typeof It()<"u",Vn=()=>!0,It=()=>globalThis.console;function io(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===W&&n.push(i),i.action===Gr&&r.push(i),i.action===Ur&&o.push(i);t({sources:r,states:o,values:n})}function ao(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(qr(i)){let a=ue(i.url,e),s=i.body?ue(i.body,e):i.body;n(o,{...i,url:a,body:s})}}}var Be={eq:_s,gt:Us,gte:Hs,in:$s,lt:Ys,lte:qs,neq:Bs,nin:Gs,contains:Zs,exists:lo,empty:Ks,truthy:Ws},Ds=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,so=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function Os(e){return typeof e=="string"&&Ds.test(e)}function Ms(e){return typeof e=="string"&&so.test(e)}function zs(e){let t=e.match(so);if(t){let[,n,r,o,i,a,s]=t;return new Date(Number(o),Number(r)-1,Number(n),Number(i??0),Number(a??0),Number(s??0)).getTime()}return NaN}function Te(e){return Os(e)?new Date(e).getTime():Ms(e)?zs(e):Number(e)}function _s(e,t){return e===t}function Bs(e,t){return e!==t}function $s(e,t){return Array.isArray(t)&&t.includes(String(e))}function Gs(e,t){return Array.isArray(t)&&!t.includes(String(e))}function Us(e,t){return Te(e)>Te(t)}function Hs(e,t){return Te(e)>=Te(t)}function Ys(e,t){return Te(e)<Te(t)}function qs(e,t){return Te(e)<=Te(t)}function Zs(e,t){return typeof e=="string"?e.includes(String(t)):Array.isArray(e)?e.map(String).includes(String(t)):!1}function lo(e){return Array.isArray(e)?e.length>0:e!=null&&e!==""}function Ks(e){return!lo(e)}function Ws(e){return Array.isArray(e)?e.length>0:!!e}function Ke(e,t){if(t===void 0)return!0;if(g(t)){let n=Et(e,W);return Array.isArray(n)?n.length===1&&n[0]===t:n===t}if(kn(t)){let n=Et(e,W);return(Array.isArray(n)?n.length>0:!!n)===t}if(Array.isArray(t)){let n=Et(e,W);return Array.isArray(n)?n.some(r=>t.includes(String(r))):t.includes(String(n))}return Xs(e,t)}function Xs(e=null,t){let n=Et(e,t.field??W),{operator:r="eq",value:o}=t,i=Be[r];return i?i(n,o):!1}function Et(e,t){return m(e)?$(e,t):e}function uo(e=null,t=[],n){for(let r of t){let{target:o,state:i,when:a}=r,s=Array.isArray(o)?o:[o];if(!e){n(s);continue}let l=Ke(e,a);n(s,l?i:void 0)}}function co(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?no(i,e):void 0,{onlyIfTargetEmpty:r.onlyIfTargetEmpty??!1})}var lt=e=>E(vr)(e),fo=e=>E(Sr)(e),Lt=e=>E(Tr)(e),Pt=e=>E(wr)(e),mo=e=>E(Ar)(e),Vt=e=>E(Cr)(e),Dt=e=>E(kr)(e),X=E(mr),ce=E(yr),Y=E(hr),re=E(Fr),de=E(xr),Ae=E(Tt),oe=E(Rr),Dn=E(br),go=E(ot,Cn,Lr,Pr),po=E(gr,Cn),Ot=E(pr,Er);function Mt(e){return de(e)||Y(e)}function ie(e){return e.type===wn}function fe(e){return e.type===rt}function zt(e){return e.type!==rt&&e.type!==wn}function We(e){return oe(e)||de(e)||re(e)}function yo(e){return Ae(e)||Dn(e)}function F(e){return e!=null&&e!==""}function E(...e){return t=>{let n=g(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function bo(e,t={}){if(oe(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&m(n))return[n]}}function xo(e){return de(e)||Y(e)?!0:e.advanced?.horizontal??!1}function ho(e){return Y(e)?e.advanced?.reverse!==!1:!1}function Ro(e,t){let n=e.readonly??!1;return t||n}function _t(e){if(js(e)){let t=e.source;if(Array.isArray(t)||m(t)&&!(Ze in t))return t}}function vo(e){return Array.isArray(_t(e))}function js(e){return de(e)||re(e)||oe(e)&&!e.disabled}var G=require("date-fns"),Js=/^\d+$/,Bt=new Date(2e3,0,1),Qs=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[],On="default";function Ao(e){if(!e)return On;try{return Intl.getCanonicalLocales(e)[0]??On}catch{return On}}function Mn(e){let t=Ao(e);return Array.from({length:12},(n,r)=>({value:(r+1).toString(),label:new Date(0,r).toLocaleString(t,{month:"long"})}))}function zn(e){let t=Ao(e);return Array.from({length:7},(n,r)=>({value:r.toString(),label:new Date(2e3,0,2+r).toLocaleString(t,{weekday:"long"})}))}function wo(e,t){return t>=e?Array.from({length:t-e+1},(n,r)=>{let o=e+r;return{value:o.toString(),label:o.toString()}}):[]}function _n(){return new Date().getFullYear()}function el(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function tl(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return Yr[n]??"Other"}function nl(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function So(e,t){let n=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"longOffset"}).formatToParts(t),r=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"long"}).formatToParts(t),i=(n.find(s=>s.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),a=nl(r,e);return{offset:i,longName:a}}function To(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function Fo(){let e=new Date,t=el(),n=new Map,r=To(t),{offset:o,longName:i}=So(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let l of Qs()){if(l===t)continue;let u=To(l),{offset:c,longName:p}=So(l,e),f={value:l,label:`${u} - ${p} (${c})`},S=tl(l);if(S==="Other")continue;let x=n.get(S);x?x.push(f):n.set(S,[f])}for(let l of n.values())l.sort((u,c)=>u.label.localeCompare(c.label));let s=Array.from(n.entries()).sort(([l],[u])=>l.localeCompare(u)).map(([l,u])=>({label:l,items:u}));return[{label:"Suggested",items:[a]},...s]}function Bn(e,t){if(typeof e=="number")return e;let n=t??_n(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,a]=o,s=parseInt(a,10);if(!isNaN(s))return i==="+"?n+s:n-s}return n}return Js.test(r)?parseInt(r,10):n}function $t(e,t){if(!e)return"";try{let n=(0,G.parse)(e,t,Bt);return(0,G.isValid)(n)?(0,G.format)(n,"yyyy-MM-dd"):""}catch{return""}}function Co(e,t){if(!e)return"";try{let n=(0,G.parse)(e,t,Bt);return(0,G.isValid)(n)?(0,G.format)(n,"HH:mm:ss"):""}catch{return""}}function ko(e,t="HH:mm"){if(!e)return"";try{let n=e.split(":").length===3?"HH:mm:ss":"HH:mm",r=(0,G.parse)(e,n,Bt);return(0,G.isValid)(r)?(0,G.format)(r,t):""}catch{return""}}function Gt(e,t="MMMM d, yyyy"){if(!e)return"";try{let n=(0,G.parse)(e,"yyyy-MM-dd",Bt);return(0,G.isValid)(n)?(0,G.format)(n,t):""}catch{return""}}function $e(e){return e.advanced?.format??"HH:mm"}function me(e){return e.advanced?.format??"MMMM d, yyyy"}var rl={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 j(e,t){return C(e,t)}function Io(e,t){let n=t?.[e??""],r=e?rl[ol(e)]:void 0;return r?n?{...r,...n}:r:n}function ol(e){return e.toLowerCase().split(/[-_]/)[0]}function C(e,t){return e?t?t[e]??e:e:""}function ae(e,t){return e?C(e,t):void 0}function ut(e,t){if(!t)return e;let n=!1,r=e.map(o=>{let i=il(o,t);return i!==o&&(n=!0),i});return n?r:e}function il(e,t){if(!m(e))return e;let n=No(e.label,t),r=e.items;if(Array.isArray(r)){let i=ut(r,t);return i===r&&n===e.label?e:{...e,...n!==void 0&&{label:n},items:i}}let o=No(e.description,t);return n===e.label&&o===e.description?e:{...e,...n!==void 0&&{label:n},...o!==void 0&&{description:o}}}function No(e,t){return g(e)?C(e,t):e}var Ut=_n();function Lo(e,t){if(re(e))return al(e,t?.lang)}function al(e,t){if(Vt(e))return zn(t);if(Dt(e))return Mn(t)}function Po(e,t){if(oe(e))return sl(e,t)}function sl(e,t){let{lang:n,translations:r}=t??{};if(fo(e))return zn(n);if(Lt(e))return Mn(n);if(Pt(e)){let o=e.advanced?.length?.min??Ut,i=e.advanced?.length?.max??Ut+5;return wo(Bn(o,Ut),Bn(i,Ut))}if(mo(e))return Fo();if(lt(e))return ut([{value:"true",label:"Yes"},{value:"false",label:"No"}],r)}function Vo(e,t=!1,n){let r={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return Ae(e)?{...r,...ll(e)}:oe(e)?{...r,...Do(Po(e,n))}:Dn(e)?{...r,...cl(e)}:re(e)?{...r,...ul(e,n)}:r}function ll(e){let t=Qr(e.type),n={...e,type:t};return{...fl(e),...Oo(e),...dl(n),...go(n)?Mo(n):{},type:t}}function Do(e){return e?{options:e}:{}}function ul(e,t){let n=Do(Lo(e,t)),r=e.advanced?.multiple??!0;return{...n,multiple:r}}function cl(e){return{...Oo(e),...Mo(e)}}function Oo(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function dl(e){return Ot(e)?ml(e):{}}function fl(e){if(ce(e)){let t=$e(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function Mo(e){return zo(e,{min:$r,max:Br})}function ml(e){return zo(e,{min:Ft,max:wt})}function zo(e,t){let n={},r=e.advanced?.length;return r&&(r.min!==void 0&&(n[t.min]=r.min),r.max!==void 0&&(n[t.max]=r.max)),n}function _o(e,t){let n=_t(e);return n||bo(e,t)}function gl(e,t){let n=m(t)&&e.name in t?t[e.name]:t,r=En(n,e.advanced?.entity),o=F(r)?r:e.defaultValue;return ce(e)&&F(o)?pl(e,o):X(e)&&F(o)?hl(e,o):o}function pl(e,t){let n=$e(e);return g(t)?Co(t,n):t}function yl(e,t,n){return We(e)&&Array.isArray(n)?{...t,[At]:n}:t}function bl(e,t,n){if(e.required&&!F(n)&&oe(e)&&e.advanced?.preselected!==!1&&At in t){let r=t[At];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function xl(e,t,n){if(We(e)&&Array.isArray(t)){let r=Ln(t,e.advanced?.options);return vo(e)?ut(r,n):r}return t}function Bo(e,t,n,r,o){let i=gl(e,r),a=Array.isArray(n)?xl(e,n,o):n,s=yl(e,t,a),l=bl(e,s,i);return{commonPropsWithOptions:s,defaultValue:l}}function $o(e,t){return Y(e)?{checked:!!t}:re(e)?{value:Array.isArray(t)?t:[]}:X(e)&&g(t)&&F(t)?{value:Gt(t,me(e))}:lt(e)?{value:F(t)?String(t):""}:{value:t??""}}function hl(e,t){let n=me(e);return g(t)?$t(t,n):t}function Go(e,t){let n=e??t;return n?{"data-format":n}:{}}function Eo(e){let t=[];for(let n of e){if(typeof n=="string"){t.push(n);continue}m(n)&&"value"in n&&"label"in n&&g(n.value)&&g(n.label)&&t.push({label:n.label,value:n.value})}return t}function Uo(e,t){if(!We(e))return;let n=re(e)?Lo(e,t):Po(e,t);if(Array.isArray(n)){let o=Eo(n);return o.length>0?o:void 0}let r=_t(e);if(Array.isArray(r)){let o=Ln(r,e.advanced?.options),i=Eo(ut(o,t?.translations));return i.length>0?i:void 0}}function Ho(e,t){let n=String(e);for(let r of t)if(typeof r=="string"){if(r===n)return r}else if(r.value===n)return r.label;return n}var Rl=/^#\/definition\//;function Yt(e=[],t){let n=Ht(e,t);return Array.isArray(n)?n.filter(Sl).sort((r,o)=>Yo(r)-Yo(o)):[]}function Ht(e,t,n=new Map,r=new WeakSet){if(!vl(t)||!e||typeof e!="object")return e;if(n.has(e))return n.get(e);if(r.has(e))return e;if(r.add(e),Array.isArray(e))return e.map(i=>Ht(i,t,n,r));if(Ze in e&&g(e[Ze])){let i=e[Ze].replace(Rl,""),a=$(t,i);return a!==null?Ht(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=Ht(a,t,n,r);return r.delete(e),n.set(e,o),o}function qo(e){return Object.entries(e??{})}function Yo(e){return e.order??Number.MAX_VALUE}function vl(e){return e!==void 0&&m(e)&&Object.keys(e).length>0}function Sl(e){return Hr in e?!0:Array.isArray(e[Fn])?e[Fn].length>0:!0}function Zo(e,t){let n={};for(let[r,o]of qo(t))n[`${e}-${r}`]=o;return n}function Tl(e){return Zo(zr,e)}function Al(e){return Zo(_r,e)}function Ko(e,t){let n=Tl(e.advanced?.aria);return t&&t.length>0&&(n[Dr]="true",n[Vr]=`${e.name}-error`),n}function Wo(e){return Al(e.advanced?.data)}var Xo={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},jo={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function Jo(e,t=2){return Xo[e&&e in Xo?e:t]}function Qo(e){if(e&&e in jo)return jo[e]}function $n(e){return{min:e.advanced?.length?.min??1,max:e.advanced?.length?.max??1/0}}function qt(e){let t=[];for(let n of e)if(fe(n))for(let r of n.fields)t.push(r);else t.push(n);return t}function wl(e,t){let n=t?$(t,e.name):null;return oi(e,Array.isArray(n)?n.length:0)}function ei(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===rt}function ti(e,t){let n=wl(e,t);return Array.from({length:n},(r,o)=>o)}function ni(e){return e.advanced?.title??e.label??e.name}function ri(e){let t={};for(let n of qt(e))ie(n)||(t[n.name]=n);return t}function oi(e,t){let{min:n,max:r}=$n(e);return Math.min(Math.max(t,n),r)}function Gn(e,t){let n=qt(e.fields),r=oi(e,t.length),o=[];for(let i=0;i<r;i++){let a=t[i],s={};for(let l of n){let u=a?.[l.name];s[l.name]=ie(l)?Gn(l,kt(u)?u:[]):u}o.push(s)}return o}function Zt(e,t){if(!e.includes("/"))return e;let[n,r]=e.split("/"),o=new RegExp(`(^|.*\\.)(${n}\\.\\d+\\.)`),i=t.match(o);return i?`${i[0]}${r}`:r}var A=require("zod");var Fl=[[Y,ii],[po,Cl],[Ot,Il],[de,kl],[lt,ii],[Lt,Ll],[Pt,El],[re,Un],[Vt,Un],[Dt,Un]];function li(e,t=[],n){let r=A.z.object(e);if(t.length===0)return r;let o=Ol(r,t,n);return _l(o,t,n)}function ui(e){let t={},n=A.z.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function ci(e,t){for(let[n,r]of Fl)if(n(e))return r(e,t);return Nl(e,t)}function Cl(e,t){let n=A.z.string().trim();if(e.required){let r=we(e,t),o=n.min(1,r).pipe(ai(e,t));return A.z.preprocess(i=>U(i)?"":i,o)}return n.pipe(ai(e,t)).or(A.z.literal("")).nullable()}function ii(e,t){let n=A.z.preprocess(r=>{if(typeof r=="string"){if(r==="true")return!0;if(r==="false")return!1}return r},A.z.coerce.boolean());return e.required?(Y(e)?n=n.refine(r=>r===!0,{message:we(e,t)}):n=n.refine(r=>typeof r=="boolean",{message:we(e,t)}),A.z.preprocess(r=>r===null?!1:r,n)):n.nullable()}function kl(e,t){let n=A.z.coerce.string();return e.required?(n=n.min(1,we(e,t)),A.z.preprocess(r=>U(r)?"":r,n)):n.or(A.z.literal("")).nullable()}function Nl(e,t){let n=A.z.coerce.string().trim();return n=di(n,e,t),e.required?(n=fi(n,e,t),A.z.preprocess(r=>U(r)?"":r,n)):n.nullable()}function Il(e,t){let n=A.z.coerce.number().int();return n=di(n,e,t),e.required?(n=fi(n,e,t),A.z.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function El(e,t){return e.required?A.z.preprocess(Pl,A.z.coerce.number({message:we(e,t)}).int()):A.z.coerce.number().int().nullable()}function Ll(e,t){let n=we(e,t),r=A.z.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function Pl(e){return e===null||e===""?void 0:e}function ai(e,t){let n=e.validation?.email?C(e.validation?.email,t):void 0;return A.z.email(n)}function di(e,t,n){return e=Vl(e,t,n),e=Dl(e,t,n),e}function fi(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,we(t,n)):e}var Vl=(e,t,n)=>mi(e,t,Ft,n),Dl=(e,t,n)=>mi(e,t,wt,n);function mi(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?C(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function Ol(e,t=[],n){let r=zl(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:s}of r)if(!Ml(o,a,s)){let l=C(s.message,n);i.addIssue({code:"custom",message:l,path:[a]})}})}function Ml(e,t,n){let r=n.operator??"eq",o=Be[r];return o?o(Kt(e,t),Kt(e,n.field)):!1}function zl(e){let t=[];for(let n of e){let r=n.validation?.custom;if(!r)continue;let o=Array.isArray(r)?r:[r];for(let i of o)t.push({name:n.name,rule:i})}return t}function gi(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let s=a.operator??"eq",l=Be[s];if(l&&!l(e,n(a.field))&&a.message){let u=C(a.message,r);o.push(u)}}return o}function we(e,t){return e.validation?.required?C(e.validation?.required,t):void 0}function Un(e,t){let n=A.z.array(A.z.string());return e.required&&(n=n.min(1,we(e,t))),A.z.preprocess(r=>U(r)?[]:Array.isArray(r)?r.map(String):[String(r)],n)}function _l(e,t=[],n){let r=t.filter(Bl);return r.length===0?e:e.superRefine((o,i)=>{let a=m(o)?o:{};for(let s of r)for(let l of $l(a,s,n))i.addIssue({code:"custom",path:l.path,message:l.message})})}function Bl(e){let t=e.validation;return t!==void 0&&(t.requiredWhen!==void 0||t.pattern!==void 0||t.rules!==void 0)}function $l(e,t,n){let r=[],o=Kt(e,t.name),i=t.validation?.requiredWhen;if(i){let l=(Array.isArray(i)?i:[i]).find(u=>ct(e,u));l&&!Hn(o)&&r.push({path:[t.name],message:ae(l.message??t.validation?.required,n)})}let a=t.validation?.pattern;a&&!pi(a,o)&&r.push({path:[t.name],message:ae(a.message,n)});for(let s of t.validation?.rules??[])Gl(e,s.when)&&!Ul(s,o)&&r.push({path:[t.name],message:ae(s.message,n)});return r}function ct(e,t){let n=Be[t.operator??"eq"];return n?n(Kt(e,t.field),t.value):!1}function Kt(e,t){return t in e?e[t]:$(e,t)??void 0}function Gl(e,t){if(!t)return!0;if(Array.isArray(t))return t.every(o=>ct(e,o));if("field"in t)return ct(e,t);let n=t.all?t.all.every(o=>ct(e,o)):!0,r=t.any?t.any.some(o=>ct(e,o)):!0;return n&&r}function Ul(e,t){switch(e.assert){case"required":return Hn(t);case"minItems":return Array.isArray(t)&&t.length>=Number(e.value);case"maxItems":return Array.isArray(t)&&t.length<=Number(e.value);case"min":return si(t)>=Number(e.value);case"max":return si(t)<=Number(e.value);case"oneOf":return Array.isArray(e.value)&&e.value.map(String).includes(String(t));case"pattern":return Yl(e.value)?pi(e.value,t):!0;default:return!0}}function pi(e,t){return!Hn(t)||typeof t!="string"||e.allowInterpolation&&(_e(t)||Hl(t))?!0:new RegExp(e.regex,e.flags).test(t)}function Hl(e){return g(e)&&e.trimStart().startsWith("@")}function Hn(e){return g(e)?e.trim().length>0:Be.exists(e,void 0)}function si(e){return typeof e=="number"?e:g(e)||Array.isArray(e)?e.length:0}function Yl(e){return m(e)&&"regex"in e}function yi(e,t){if(!t||!Zl(e))return!0;if(t.length===0)return!1;try{let n=new URL(e),r=n.protocol.replace(":",""),o=n.hostname,i=n.port||ql(r);return t.some(a=>!(a.protocol&&a.protocol!==r||a.hostname&&a.hostname!==o||a.port!==void 0&&String(a.port)!==i))}catch{return!1}}function ql(e){return e==="https"?"443":"80"}function Zl(e){return/^(https?:)?\/\//.test(e)}function bi(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,Ct);new URL(t,Ct).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(Ct,""):o}catch{return t||e}}function xi(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=bi(t.url,n.url),o=Kl(t,n),i=Wl(t,n);return{...t,...n,url:r,body:o,headers:i}})}function Kl(e,t){return m(t.body)&&m(e?.body)?{...e.body,...t.body}:t.body??e?.body}function Wl(e,t){return m(t.headers)&&m(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function Wt(e,t){return{...e,...t}}var Xl={uppercase:e=>e.toUpperCase(),lowercase:e=>e.toLowerCase(),"remove-space":e=>e.replace(/\s+/g,""),"remove-accent":e=>e.normalize("NFD").replace(/[\u0300-\u036f]/g,"")};function dt(e,t){return!t||!g(e)||U(e)?e:(Array.isArray(t)?t:[t]).reduce((r,o)=>{let i=Xl[o];return i?i(r):r},e)}var hi=require("react/jsx-runtime");function ge(e){return oo(e,(t,n,r)=>(0,hi.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}var Xt=require("react"),se=require("react/jsx-runtime");function Ri(e){let{fields:t=[]}=e.section,[n,r]=(0,Xt.useState)(!1),o=(0,Xt.useCallback)(()=>r(i=>!i),[]);return(0,se.jsxs)("fieldset",{"data-slot":"field-set","data-advanced":"true","data-expanded":n,"data-empty":t.length===0,className:"flex flex-col",id:e.section.id?.toString(),children:[(0,se.jsx)("legend",{children:(0,se.jsxs)("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-zinc-600 dark:text-zinc-400",onClick:o,type:"button",children:[(0,se.jsx)(qe,{expanded:n}),(0,se.jsx)("span",{children:ge(e.title)})]})}),(0,se.jsx)(nt,{visible:n,children:(0,se.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:[e.description&&(0,se.jsx)("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:ge(e.description)}),e.group]})})]})}var Fe=require("react/jsx-runtime");function vi(e){let t=(0,Fe.jsxs)("div",{className:"flex flex-col",children:[e.title&&(0,Fe.jsx)("legend",{className:"mb-3 font-medium text-zinc-800 dark:text-zinc-200",children:ge(e.title)}),e.description&&(0,Fe.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:ge(e.description)})]});return e.step?(0,Fe.jsxs)("div",{className:"flex flex-row items-start gap-4",children:[(0,Fe.jsx)("div",{className:"bg-primary text-primary-foreground flex size-6 shrink-0 items-center justify-center rounded-full",children:(0,Fe.jsx)("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}var ft=require("react/jsx-runtime");function jt(e){return(0,ft.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,ft.jsx)(vi,{description:e.description,step:e.step,title:e.title}),(0,ft.jsx)("div",{className:"w-full min-w-0",children:e.children})]})}var Si=require("react/jsx-runtime");function Ce(e){return(0,Si.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 Jt=require("react/jsx-runtime");function Ti(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=Wt(e.style,{compact:e.section.advanced?.compact}),o=(0,Jt.jsx)(Ce,{compact:r,children:e.children});if(!e.section.title&&!e.section.description)return o;let i=ae(e.section.title,e.translations),a=ae(e.section.description,e.translations);return e.section.advanced?.collapsible?(0,Jt.jsx)(Ri,{description:a,group:o,section:e.section,title:i}):(0,Jt.jsx)(jt,{description:a,empty:t.length===0,id:e.section.id?.toString(),step:n,title:i,children:o})}var Yn=require("react/jsx-runtime");function Ai(){return(0,Yn.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,Yn.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-zinc-200 dark:bg-zinc-800"})})}var ki=require("jotai");var ke=require("jotai"),qn=require("jotai-family"),Qt=require("fast-equals");function en(e,t){let{[t]:n,...r}=e;return r}function jl(e){return(0,qn.atomFamily)(t=>(0,ke.atom)(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];(0,Qt.deepEqual)(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,en(i,t))}))}function Jl(e){return(0,ke.atom)(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function Ql(e){return(0,ke.atom)(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let s of r)s in i&&(delete i[s],a=!0);a&&n(e,i)})}function eu(e){return(0,ke.atom)(null,(t,n,r)=>{let o=t(e);(0,Qt.deepEqual)(o,r)||n(e,r)})}function wi(e,t={}){let{merge:n,validateTarget:r}=t;return(0,qn.atomFamily)(o=>(0,ke.atom)(i=>{let a=i(e)[o];if(a&&n)return n(Object.values(a))},(i,a,s,l)=>{if(r&&!r(s))return;let u=i(e),c={...u[s]??{}};if(l!=null){let p=c[o];(!p||!(0,Qt.deepEqual)(p,l))&&(c[o]=l,a(e,{...u,[s]:c}))}else o in c&&(delete c[o],Object.keys(c).length===0?a(e,en(u,s)):a(e,{...u,[s]:c}))}))}function Fi(e){return(0,ke.atom)(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let s of r)s in i&&(delete i[s],a=!0);for(let s in i){let l={...i[s]},u=!1;for(let c of r)c in l&&(delete l[c],u=!0,a=!0);u&&(Object.keys(l).length===0?delete i[s]:i[s]=l)}a&&n(e,i)})}function pe(e={}){let t=(0,ke.atom)(e);return{atom:t,clearAll:Jl(t),clear:Ql(t),bulkReport:eu(t),report:jl(t)}}var Ci=pe(),tn=Ci.atom,nn=Ci.report;function tu(e,t){return e.fields.every(n=>Ni(n,t))}function Ni(e,t){return t[e.name]?.hidden??e.hidden??!1}function nu(e,t){return fe(e)?tu(e,t):Ni(e,t)}function rn(e){let t=(0,ki.useAtomValue)(tn);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>nu(r,t))?null:e.children}var ye=require("react/jsx-runtime");function Ii(e){let t=Yt(e.sections,e.definition);return(0,ye.jsx)("div",{className:"h-full w-full",children:(0,ye.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,ye.jsxs)(Ce,{children:[t.map((n,r)=>(0,ye.jsxs)(rn,{fields:n.fields??[],children:[(0,ye.jsx)(Ti,{advanced:e.advanced,section:n,step:r+1,style:e.config.style,translations:e.translations,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.advanced?.separator&&(0,ye.jsx)(Ai,{})]},`key-${n.id}-${r}`)),e.control&&(0,ye.jsx)(ur,{isPending:e.isPending,children:e.control})]})})})}var Li=require("react/jsx-runtime");function Ei(e){return(0,Li.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})}var Pi=require("react"),Xe=require("react/jsx-runtime");function on(e){let t={context:e.context,env:e.config?.env,value:e.value},r={locale:e.config?.env?.locale},[o,i]=(0,Pi.useState)(()=>m(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),a=()=>i(c=>!c),s=m(e.text)&&g(e.text.title)?ge(C(at(e.text.title,t,r),e.translations)):void 0,l=C(at(g(e.text)?e.text:e.text?.message,t,r),e.translations),u=ge(l);return u?(0,Xe.jsxs)("div",{className:"flex flex-col gap-2",children:[s&&(0,Xe.jsxs)("button",{className:"flex items-center gap-1 text-left text-xs font-medium text-zinc-700 hover:text-zinc-900 dark:text-zinc-300 dark:hover:text-zinc-100",onClick:a,type:"button",children:[s,(0,Xe.jsx)(qe,{expanded:o})]}),o&&(0,Xe.jsx)(Ei,{title:l,children:u})]}):null}var Zn=require("jotai");var an=pe(),q=an.atom,Vi=an.clearAll,Di=an.clear,Ne=an.report,Kn=(0,Zn.atom)({}),Wn=(0,Zn.atom)(null);var Xn=require("jotai"),Oi=require("react/jsx-runtime");function sn(e){let t=(0,Xn.useAtomValue)(Ne(e.field.name)),r=(0,Xn.useAtomValue)(nn(e.field.name))?.description??e.field.description;return(0,Oi.jsx)(on,{config:e.config,context:e.context,text:r,translations:e.translations,value:t})}var Mi=require("tailwind-merge"),mt=require("react/jsx-runtime");function zi(e){let t=e.style?.showOptionalLabel??!0,n=de(e.field)||Y(e.field);return(0,mt.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,Mi.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:g(e.children)?e.children:void 0,children:[(0,mt.jsx)("span",{className:"[[data-slot=column]_&]:md:truncate",children:e.children}),t&&!e.field.required&&(0,mt.jsx)("span",{className:"ml-2 flex-shrink-0 text-sm text-zinc-600 dark:text-zinc-400",children:j("(Optional)",e.translations)})]})}var gt=require("react/jsx-runtime");function _i(e){let t={context:e.context,env:e.config?.env},n=at(e.field.label,t);return(0,gt.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,gt.jsx)(zi,{field:e.field,style:e.config?.style,translations:e.translations,children:C(n,e.translations)}),e.horizontal===!0&&(0,gt.jsx)(sn,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}var Ge=require("react/jsx-runtime");function Bi(e){return(0,Ge.jsxs)(Ge.Fragment,{children:[e.field.name&&e.field.label&&(0,Ge.jsx)(_i,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&(0,Ge.jsx)(sn,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}function ln(e,t){return e?t(e):null}var pt={found:!1,value:void 0};function yt(e,t){if(!Array.isArray(t)&&e in t)return{found:!0,value:t[e]};if(!e.includes("."))return pt;let n=e.split("."),r=t;for(let o of n){if(r==null)return pt;if(Array.isArray(r)){let i=Number(o);if(!Number.isInteger(i)||!(i in r))return pt;r=r[i]}else if(m(r)){if(!(o in r))return pt;r=r[o]}else return pt}return{found:!0,value:r}}function K(e,t){return yt(e,t).value}var Je=require("react");var $i=require("react"),ru=e=>e,Ie=(0,$i.createContext)(ru);var jn=pe(),Gi=jn.clear,Ui=jn.bulkReport,un=jn.report;var Hi=pe(),cn=Hi.atom,Yi=Hi.report,qi=pe(),dn=qi.atom,Zi=qi.report;var Z=require("react");var be=require("react");function Ki(e,t,n,r){let{name:o}=e,i=(0,be.useMemo)(()=>ci(e,r),[e,r]),a=(0,be.use)(St),s=(0,be.useEffectEvent)(u=>{u&&t(u,i,e)}),l=(0,be.useEffectEvent)(u=>{u&&n(u,{keepValue:a})});return(0,be.useEffect)(()=>(s(o),()=>{l(o)}),[o]),i}var xe=require("jotai");var je=require("react");function Wi(){let e=(0,je.useRef)(null);return(0,je.useEffect)(()=>()=>{e.current&&clearTimeout(e.current)},[]),(0,je.useCallback)((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}function ou(e){return document.activeElement?.getAttribute("name")===e}function Xi(e,t){let n=(0,xe.useStore)(),r=e.field.advanced?.entity,o=Wi(),[,i]=(0,Z.useTransition)(),a=(0,Z.use)(Ie),{setValue:s,shouldSkipOnChange:l,value:u,setSource:c}=t,p=(0,Z.useRef)(u);p.current=u;let f=(0,Z.useRef)(e.translations);f.current=e.translations;let S=Mt(e.field),x=(0,xe.useSetAtom)(q),w=(0,xe.useSetAtom)(tn),k=(0,xe.useSetAtom)(un(e.field.name)),D=(0,xe.useSetAtom)(Kn),O=(0,xe.useSetAtom)(Wn),Q=(0,xe.useSetAtom)(cn),N=Ki(e.field,e.onMount,e.onUnmount,e.translations),I=C(e.commonProps.placeholder,e.translations),L={...e.commonProps,placeholder:I};function Pe(d){let[,y]=e.getSchema();return y.find(h=>h.name===d)}function ee(d){let y=Pe(d);if(y&&Ae(y)){let h=y.advanced?.transform;if(h)return h}}function ve(d,y){if(x(h=>({...h,[d]:y})),D(h=>({...h,[d]:y})),e.onValueChange){let h=Pe(d);h&&e.onValueChange({name:a(d),type:h.type,value:y})}}let Ve=(0,Z.useRef)(null);Ve.current=d=>{if(e.field.advanced?.transient)return;let y=Ae(e.field)?dt(d,e.field.advanced?.transform):d;s(y),e.onValueChange&&e.onValueChange({name:a(e.field.name),type:e.field.type,value:y})};let He=(0,Z.useRef)(null);He.current=d=>{let y=e.field.event?.change;y&&io(y,({sources:h,states:P,values:M})=>{i(()=>{ao(d,h,(R,_)=>{c(Zt(R,e.field.name),_)}),uo(d,P,(R,_)=>{let Se=R.map(V=>Zt(V,e.field.name));w(V=>_?Se.reduce((H,Oe)=>({...H,[Oe]:_}),V):Se.reduce((H,Oe)=>en(H,Oe),V));let B=_?.hidden===!0?Se:_===void 0?Se.filter(V=>Pe(V)?.hidden===!0):[];B.length>0&&x(V=>{let H=!1,Oe={...V};for(let Me of Object.keys(V))B.some(Ye=>Me===Ye||Me.startsWith(`${Ye}.`))&&(delete Oe[Me],H=!0);return H?Oe:V})})}),co(d,M,(R,_,Se)=>{let B=Zt(R,e.field.name);if(n.get(dn)[B]){kt(_)&&Q(Ye=>({...Ye,[B]:_}));return}let V=ee(B),H=V?dt(_,V):_,Me=n.get(q)[B];if(Se.onlyIfTargetEmpty&&!U(Me)){let Ye=n.get(Kn)[B];if(!Object.is(Ye,Me))return}if(H!==Me){if(ou(B)){O({target:B,value:H});return}ve(B,H)}})})};let De=(0,Z.useCallback)(d=>{let h=N.safeParse(d).error?.issues.map(R=>R.message)??[],P=e.field.validation?.custom,M=P?gi(d,P,R=>n.get(Ne(R)),f.current):[];k([...h,...M])},[e.field.validation?.custom,N,k,n]),te=(0,Z.useRef)(null);te.current=()=>{let d=n.get(Wn);d?.target===e.field.name&&(O(null),U(n.get(q)[d.target])&&ve(d.target,d.value))};let b=(0,Z.useCallback)(d=>{if(!S){let y=d.target.value;e.config.validation.blur&&De(y)}te.current?.()},[S,e.config.validation.blur,De]);return{applyChangeEventsRef:He,commonProps:L,entity:r,hasClickable:S,onBlur:b,onValueChangeRef:Ve,setTimeoutRef:o,shouldSkipOnChange:l,validated:De,valueRef:p}}var ji=require("fast-equals");var Ji=require("jotai"),J=require("react");function Qi(e,t){let{name:n}=e,r=(0,J.useRef)(!1),[o,i]=(0,Ji.useAtom)(Ne(n)),a=(0,J.use)(Ie),s=(0,J.useEffectEvent)((c,p=!1)=>{let f=Ae(e)?dt(c,e.advanced?.transform):c;!p&&!(0,ji.deepEqual)(o,f)&&(r.current=!0),i(f)}),l=(0,J.useEffectEvent)(c=>{let{found:p,value:f}=yt(a(n),c);if(F(f)){s(f);return}if(F(e.defaultValue)){s(e.defaultValue,!0);return}p&&s(f)});(0,J.useEffect)(()=>{if(t){l(t);return}F(e.defaultValue)&&s(e.defaultValue,!0)},[t,e.defaultValue]);let u=(0,J.useCallback)(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:u,value:o}}var Jn=require("react/jsx-runtime");function ea(e){let{useSource:t,useExtraProps:n,getValue:r,shouldSkipChange:o,dispatchChange:i,buildInitialSelected:a,isInitialReady:s}=e.strategies,{setValue:l,shouldSkipOnChange:u,value:c}=Qi(e.field,e.value),{data:p,setSource:f,isStaticSource:S}=t(e.field,e.config,c),{applyChangeEventsRef:x,commonProps:w,entity:k,hasClickable:D,onBlur:O,onValueChangeRef:Q,setTimeoutRef:N,validated:I,valueRef:L}=Xi(e,{setValue:l,shouldSkipOnChange:u,value:c,setSource:f}),Pe=n?.(e.field),ee=(0,Je.useRef)(!1),{commonPropsWithOptions:ve,defaultValue:Ve}=Bo(e.field,w,p,c,S?e.translations:void 0),He=$o(e.field,Ve);(0,Je.useEffect)(()=>{let te=!!e.value||F(e.field.defaultValue);if(ee.current||!te)return;if(!e.field.event?.change){ee.current=!0;return}let b=e.value?K(e.field.name,e.value):void 0,d=F(b)?b:e.field.defaultValue;if(!F(d)||!s(e.field,d,p))return;ee.current=!0;let y=a(d,p,k);x.current?.(y)},[x,a,p,k,s,e.field,e.value]);let De=(0,Je.useCallback)(te=>{let b=r(te,e.field);o({field:e.field,shouldSkipOnChange:u,hasClickable:D,inputValue:b,valueRef:L})||(Q.current?.(b),e.config.validation.change&&I(b),e.field.event?.change&&i({applyChangeEventsRef:x,data:p,entity:k,inputValue:b,setTimeoutRef:N}))},[x,p,i,k,r,D,Q,e.config.validation.change,e.field,N,o,u,I,L]);return ln(e.config.inputs[e.field.type],te=>(0,Jn.jsx)(Bi,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:(0,Jn.jsx)(te,{...ve,...e.ariaAttributes,...e.dataAttributes,...Pe,...He,onBlur:O,onChange:De})}))}var ta=require("react/jsx-runtime");function Qe(e){return function(n){return(0,ta.jsx)(ea,{...n,strategies:e})}}function na(e){let t=X(e)?me(e):null,n=ce(e)?$e(e):null;return{dateFormat:t,timeFormat:n}}var ra=require("jotai");var iu=e=>{let t=xi(e);if(t)return t},au=e=>e.trim()!=="",oa=(0,ra.atom)({}),fn=wi(oa,{merge:iu,validateTarget:au}),ia=Fi(oa);var aa=require("jotai");function mn(e){return{data:null,setSource:(0,aa.useSetAtom)(fn(e.name))}}var sa=Qe({useSource:mn,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=na(e);return Go(t,n)},getValue:(e,t)=>{let n=e.target.value;if(!g(n))return n;let r=ce(t)?$e(t):null;if(r!==null)return ko(n,r);let o=X(t)?me(t):null;return o!==null&&Gt(n,o)||n},shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>F(t)});var fa=require("fast-equals");var ca=require("jotai");var la=Ss(require("swr"),1);function ua(e=null,t,n=!1){let{data:r,error:o}=(0,la.default)(su(e,t,n),t.fetcher.provider);if(o&&st.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return Jr(r,e.namespace)}return null}function su(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!_e(e.url)){if(yi(e.url,t.fetcher.remotePatterns))return e;st.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function da(e,t,n){let r=_o(e,n),[o,i]=(0,ca.useAtom)(fn(e.name)),a=o??r,s=ua(a,t,e.disabled),l=Array.isArray(a);return[s,i,l]}function lu(e,t,n){let[r,o,i]=da(e,t,n);return{data:r,setSource:o,isStaticSource:i}}function uu(e,t){return oe(e)&&t===""}var ma=Qe({useSource:lu,getValue:e=>e.target.value,shouldSkipChange:({field:e,shouldSkipOnChange:t,hasClickable:n,inputValue:r,valueRef:o})=>uu(e,r)||!n&&t()&&(!r||(0,fa.deepEqual)(r,o.current)),dispatchChange:({applyChangeEventsRef:e,data:t,entity:n,inputValue:r})=>{e.current?.(In(r,t,n))},buildInitialSelected:(e,t,n)=>In(it(e)?e:String(e),t,n),isInitialReady:(e,t,n)=>(!We(e)||!!n&&n.length>0)&&F(t)});var ga=Qe({useSource:mn,getValue:e=>e.target.value,shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>F(t)});var gn=require("react/jsx-runtime");function pa(e){return X(e.field)||ce(e.field)?(0,gn.jsx)(sa,{...e}):yo(e.field)?(0,gn.jsx)(ga,{...e}):(0,gn.jsx)(ma,{...e})}var Qn=require("react/jsx-runtime");function ya(e){return!e.errors||e.errors.length===0?null:(0,Qn.jsx)("ul",{className:"text-sm text-red-600 dark:text-red-500",id:e.name?`${e.name}-error`:void 0,children:e.errors?.map((t,n)=>(0,Qn.jsx)("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var ba=require("tailwind-merge"),xa=require("react/jsx-runtime");function pn(e){let t=e.errors&&e.errors.length>0;return(0,xa.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Or]:"true"},...e.disabled&&{[Mr]:"true"},"data-orientation":e.orientation,className:(0,ba.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 ha=require("tailwind-merge"),va=require("react/jsx-runtime");function Ra(e){return(0,va.jsx)(pn,{...e,orientation:"vertical",className:(0,ha.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var Sa=require("tailwind-merge"),Aa=require("react/jsx-runtime");function Ta(e){return(0,Aa.jsx)(pn,{...e,orientation:"horizontal",className:(0,Sa.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 er=require("react/jsx-runtime");function wa(e){let t=Mt(e.field),n=Y(e.field),r=ho(e.field);return e.horizontal?(0,er.jsx)(Ta,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):(0,er.jsx)(Ra,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function Fa(e){if(!e.field.type)return null;let t=Vo(e.field,e.disabled,{lang:e.lang,translations:e.translations}),n=Wo(e.field),r=Ko(e.field,e.errors),o={...e.field,disabled:t.disabled};return e.children({ariaAttributes:r,commonProps:t,dataAttributes:n,field:o,horizontal:e.horizontal})}var Ca=require("tailwind-merge"),et=require("react/jsx-runtime");function ka(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r}=Wt(e.style,{horizontal:xo(e.field)}),o=Ro(e.field,e.disabled);return(0,et.jsxs)("div",{className:(0,Ca.twMerge)("flex flex-col gap-3",Qo(t)),children:[(0,et.jsx)(wa,{disabled:o,errors:n,field:e.field,horizontal:r,children:(0,et.jsx)(Fa,{disabled:o,errors:n,field:e.field,horizontal:r,lang:e.lang,translations:e.translations,children:e.children})}),(0,et.jsx)(ya,{errors:n,name:e.field.name})]})}var Na=require("jotai"),Pa=require("react/jsx-runtime");function Ia(e){return(t,n)=>o=>{let i=(0,Na.useAtomValue)(e(o.field.name)),a=n(i,o);return a===null?null:(0,Pa.jsx)(t,{...o,...a})}}var cu=Ia(un);function Ea(e){return cu(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var du=Ia(nn);function La(e){return du(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var Va=La(Ea(ka));var yn=require("tailwind-merge"),Da=require("react"),T=require("react/jsx-runtime");function Oa(e){let t=e.isMultiField||e.collapsed!=null,[n,r]=(0,Da.useState)(t?!e.collapsed:!0);function o(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function i(){r(c=>!c)}let a=c=>ue(j(c,e.translations),{index:e.index+1,label:e.label}),s=e.canRemove&&e.onRemove!=null&&(0,T.jsx)("button",{"aria-label":a("Remove {label} item {index}"),className:(0,yn.twMerge)("flex size-6 items-center justify-center rounded text-xl leading-none text-zinc-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:outline-none","dark:text-zinc-500 dark:hover:text-red-400"),onClick:o,type:"button",children:(0,T.jsx)("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),l=(0,T.jsxs)("div",{className:"flex min-w-0 flex-col font-medium text-zinc-700 dark:text-zinc-400",children:[(0,T.jsx)("span",{className:"text-base",children:e.previewLabel??(0,T.jsxs)(T.Fragment,{children:[e.label," ",e.index+1]})}),!n&&e.previewTags&&(0,T.jsx)("div",{className:"flex items-center gap-2 overflow-hidden text-xs font-normal text-ellipsis whitespace-nowrap text-zinc-500 dark:text-zinc-500",children:e.previewTags})]}),u=(0,T.jsxs)("div",{className:(0,yn.twMerge)("flex items-center justify-between gap-2",e.isMultiField&&n&&"mb-3"),children:[t?(0,T.jsxs)("div",{className:"flex min-w-0 grow items-center gap-2",children:[(0,T.jsxs)("button",{"aria-expanded":n,"aria-label":a(n?"Collapse {label} {index}":"Expand {label} {index}"),className:(0,yn.twMerge)("group flex grow items-center gap-2 rounded p-1 text-left text-zinc-400","focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:outline-none","dark:text-zinc-500"),onClick:i,type:"button",children:[(0,T.jsx)(qe,{expanded:n}),l]}),!n&&e.previewBadge&&(0,T.jsx)("div",{className:"ml-auto shrink-0",children:e.previewBadge})]}):l,s]});return e.isMultiField?(0,T.jsxs)("div",{"data-slot":"list-item-card",className:"box-border w-full min-w-0 rounded-lg border border-zinc-100 p-4 dark:border-zinc-900",children:[u,(0,T.jsx)(nt,{visible:n,children:(0,T.jsx)(Ce,{children:e.children})})]}):t?(0,T.jsxs)("div",{className:"box-border flex w-full min-w-0 flex-col gap-2",children:[u,(0,T.jsx)(nt,{visible:n,children:(0,T.jsx)(Ce,{children:e.children})})]}):(0,T.jsxs)("div",{className:"box-border flex w-full min-w-0 items-start gap-2",children:[(0,T.jsx)("div",{className:"flex min-w-0 grow flex-col",children:(0,T.jsx)(Ce,{children:e.children})}),s&&(0,T.jsx)("div",{className:"shrink-0",children:s})]})}var za=require("react");var tr=require("tailwind-merge");var Ma=require("jotai");function bn(e,t){return(0,Ma.useAtomValue)(Ne(e))??t}var he=require("react/jsx-runtime");function _a({className:e,initialValue:t,name:n,options:r,separator:o,staticLabel:i}){let a=bn(n??"",t);if(i===void 0&&r){let u=(Array.isArray(a)?a:a==null||a===""?[]:[a]).filter(c=>c!=null&&c!=="").map(c=>Ho(c,r));return u.length===0?null:(0,he.jsx)("div",{className:"flex items-center gap-1.5 overflow-hidden",children:u.map((c,p)=>(0,he.jsxs)(za.Fragment,{children:[(o||p>0)&&(0,he.jsx)("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),(0,he.jsx)("span",{"aria-label":c,className:(0,tr.twMerge)("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:c,children:c})]},`${p}:${c}`))})}if(i===void 0&&(U(a)||m(a)||Array.isArray(a)))return null;let s=i??String(a);return(0,he.jsxs)("div",{className:"flex items-center gap-1.5 overflow-hidden",children:[o&&(0,he.jsx)("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),(0,he.jsx)("span",{"aria-label":s,className:(0,tr.twMerge)("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:s,children:s})]})}var Ba=require("jotai"),$a=require("react");function xn(e,t){let n=(0,Ba.useAtomValue)(q);return(0,$a.useMemo)(()=>{let r=`${e}.`,o={},i=!1;for(let s in n)s.startsWith(r)&&(o[s.slice(r.length)]=n[s],i=!0);let a=t?K(e,t):void 0;return i?m(a)?{...a,...o}:o:a},[n,e,t])}var hn=require("react"),nr=require("react/jsx-runtime");function fu(e){return typeof e=="string"?{field:e}:e}function rr({className:e,fields:t,label:n="Preview",lang:r,name:o,previews:i,translations:a,value:s}){let l=(0,hn.useMemo)(()=>(Array.isArray(i)?i:[i]).map(fu),[i]),u=(0,hn.useMemo)(()=>t?ri(t):void 0,[t]),c=xn(o,s),p=(0,hn.useMemo)(()=>{let f=[];for(let[S,x]of l.entries()){if(x.when!==void 0&&!Ke(c,x.when))continue;if(x.label!==void 0){f.push({key:x.field??`label:${x.label}:${S}`,staticLabel:C(x.label,a)});continue}if(x.field===void 0)continue;let w=`${o}.${x.field}`,k=s!=null?K(w,s):void 0,D=u?.[x.field],O=D?Uo(D,{lang:r,translations:a}):void 0;f.push({key:`${S}:${x.field}`,initialValue:k,options:O,previewName:w})}return f},[l,c,r,o,s,a,u]);return p.length===0?null:(0,nr.jsx)("div",{"aria-label":n,className:"flex items-center gap-1.5 overflow-hidden",children:p.map((f,S)=>(0,nr.jsx)(_a,{className:e,initialValue:"initialValue"in f?f.initialValue:void 0,name:"previewName"in f?f.previewName:void 0,options:"options"in f?f.options:void 0,separator:S>0,staticLabel:"staticLabel"in f?f.staticLabel:void 0},f.key))})}var Rn=require("react/jsx-runtime");function Ga({children:e,initialValue:t,name:n}){let r=bn(n,t),i=U(r)||m(r)||Array.isArray(r)?"":String(r);return(0,Rn.jsx)(Rn.Fragment,{children:e(i)})}var bt=require("react/jsx-runtime");function Ua({canRemove:e,children:t,field:n,index:r,isMultiField:o,itemKey:i,label:a,lang:s,onRemove:l,previewBadge:u,previewLabel:c,previewTags:p,translations:f,value:S}){let x=`${n.name}.${i}`,w=`${a} ${r+1}`,k=xn(x,S);return(0,bt.jsx)(Oa,{canRemove:e,collapsed:n.advanced?.collapsed,index:r,isMultiField:o,label:a,onRemove:l,previewLabel:mu({fallbackLabel:w,liveItemValue:k,name:x,previewLabel:c,translations:f,value:S}),previewBadge:u?(0,bt.jsx)(rr,{className:"bg-primary text-primary-foreground rounded-md px-1.5 py-0.5 leading-none font-bold uppercase",fields:n.fields,lang:s,name:x,previews:u,translations:f,value:S}):void 0,previewTags:p?(0,bt.jsx)(rr,{fields:n.fields,lang:s,name:x,previews:p,translations:f,value:S}):void 0,translations:f,children:t})}function mu({fallbackLabel:e,liveItemValue:t,name:n,previewLabel:r,translations:o,value:i}){if(r===void 0)return;let a=g(r)?{field:r}:r;if(a.when!==void 0&&!Ke(t,a.when))return;if(a.label!==void 0)return C(a.label,o);if(a.field===void 0)return;let s=`${n}.${a.field}`;return(0,bt.jsx)(Ga,{initialValue:i?K(s,i):void 0,name:s,children:l=>l||e})}var qa=require("tailwind-merge");var Ha=require("fast-equals");var Ee=require("jotai"),v=require("react");function tt(e,t,n){return`${e}.${t}.${n}`}function gu(e,t){let{initial:n,mounted:r,values:o}=t,i=r[e];if(i)return or(e,i,t);let a=o[e];if(a!==void 0)return a;if(n)return K(e,n)}function or(e,{items:t,leafNames:n},r){return t.map(o=>{let i={};for(let a of n)i[a]=gu(tt(e,o,a),r);return i})}function Ya(e,t,n){let{min:r,max:o}=$n(e),[i,a]=(0,v.useState)(()=>ti(e,t)),s=(0,v.useRef)(i),l=(0,v.useRef)(i.length);s.current=i;let u=(0,Ee.useStore)(),c=(0,Ee.useSetAtom)(q),p=(0,Ee.useSetAtom)(cn),f=(0,v.useRef)(n);f.current=n;let S=(0,v.useRef)(t),x=(0,v.useMemo)(()=>qt(e.fields),[e.fields]),w=(0,v.useMemo)(()=>x.map(b=>b.name),[x]),k=(0,v.useCallback)((b,d)=>{let y=Number(b);return Number.isNaN(y)?!1:Number.isInteger(y)&&d>=0&&String(d)!==b},[]),D=(0,v.use)(Ie),O=(0,v.useCallback)(b=>{let d=`${e.name}.`;if(b.startsWith(d)){let y=b.slice(d.length),h=y.indexOf("."),P=h===-1?y:y.slice(0,h),M=Number(P),R=s.current.indexOf(M);k(P,R)&&(b=`${d}${R}${h===-1?"":y.slice(h)}`)}return D(b)},[e.name,k,D]),Q=(0,v.useEffectEvent)(()=>{let b=S.current;if(!b)return;let d={...u.get(q)},y=!1;for(let h of i)for(let P of w){let M=tt(e.name,h,P);if(M in d)continue;let R=K(M,b);F(R)&&(d[M]=R,y=!0)}y&&c(d)});(0,v.useEffect)(()=>{Q()},[]);let N=(0,v.useCallback)((b,d)=>or(e.name,{items:b,leafNames:w},{mounted:u.get(dn),values:d,initial:S.current}),[e.name,w,u]),I=(0,v.useCallback)((b,d)=>{f.current?.({name:O(e.name),value:N(b,d)})},[N,e.name,O]),L=(0,v.useCallback)(()=>{if(s.current.length>=o)return;let b=l.current++,d=[...s.current,b];a(d),I(d,u.get(q))},[I,o,u]),Pe=(0,v.useCallback)(b=>{if(s.current.length<=r)return;let d=s.current[b],y=s.current.filter((M,R)=>R!==b),P={...u.get(q)};for(let M of w)delete P[tt(e.name,d,M)];a(y),c(P),I(y,P)},[I,e.name,w,r,c,u]),ee=(0,Ee.useSetAtom)(Zi(e.name));(0,v.useEffect)(()=>{ee({items:i,leafNames:w})},[i,w,ee]),(0,v.useEffect)(()=>()=>{let b=u.get(q);c({...b,[e.name]:N(s.current,b)}),ee(void 0)},[N,e.name,ee,c,u]);let[ve,Ve]=(0,Ee.useAtom)(Yi(e.name)),He=(0,v.useEffectEvent)(b=>{let d=Gn(e,b),y=u.get(q);if((0,Ha.deepEqual)(N(s.current,y),d))return;let h=[];for(let R=0;R<d.length;R++)h.push(s.current[R]??l.current++);let P={...y};for(let R of s.current)for(let _ of w)delete P[tt(e.name,R,_)];let M={};h.forEach((R,_)=>{let Se=d[_];for(let B of x){let V=Se[B.name];if(V===void 0)continue;let H=tt(e.name,R,B.name);P[H]=V,ie(B)&&(M[H]=V)}}),c(P),a(h),Object.keys(M).length>0&&p(R=>({...R,...M})),f.current?.({name:O(e.name),value:d})});(0,v.useEffect)(()=>{ve&&(He(ve),Ve(void 0))},[ve,Ve]);let De=i.length<o,te=i.length>r;return[i,L,Pe,De,te,o,O]}var Re=require("react/jsx-runtime"),pu="flex h-9 w-full items-center gap-2 rounded-md border border-dashed border-zinc-200 px-4 text-sm font-medium text-zinc-500 transition-none hover:border-zinc-300 hover:text-zinc-800 focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:ring-offset-2 focus-visible:outline-none dark:border-zinc-800 dark:text-zinc-400 dark:hover:border-zinc-700 dark:hover:text-zinc-200";function Za(e){let{field:t,lang:n,onValueChange:r,translations:o,value:i,children:a}=e,[s,l,u,c,p,f,S]=Ya(t,i,r),x=C(ni(t),o),w=t.advanced?.action?C(t.advanced.action,o):j("Add item",o),k=f!==1/0,D=ei(t),{label:O,tags:Q,badge:N}=t.advanced?.preview??{};return(0,Re.jsx)(Ie.Provider,{value:S,children:(0,Re.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[s.map((I,L)=>(0,Re.jsx)(Ua,{canRemove:p,field:t,index:L,isMultiField:D,itemKey:I,label:x,lang:n,onRemove:u,previewBadge:N,previewLabel:O,previewTags:Q,translations:o,value:i,children:a(I)},I)),(0,Re.jsxs)("button",{"aria-disabled":!c,"aria-label":k?`${w}, ${s.length} of ${f}`:w,className:(0,qa.twMerge)(pu,k?"justify-between":"justify-center",!c&&"cursor-not-allowed opacity-50 hover:border-zinc-200 hover:text-zinc-500 dark:hover:border-zinc-800 dark:hover:text-zinc-400"),disabled:!c,onClick:l,type:"button",children:[(0,Re.jsxs)("span",{className:"flex items-center gap-2",children:[(0,Re.jsx)("span",{"aria-hidden":"true",className:"text-base leading-none",children:"+"}),w]}),k&&(0,Re.jsxs)("span",{"aria-hidden":"true",className:"text-zinc-400 tabular-nums dark:text-zinc-500",children:[s.length," / ",f]})]})]})})}var Wa=require("react/jsx-runtime");function Ka(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0,n=ae(e.field.label,e.translations),r=ae(e.field.description,e.translations);return(0,Wa.jsx)(jt,{description:r,empty:t,id:e.field.name,title:n,children:e.children})}var vn=require("react/jsx-runtime");function Xa({children:e,field:t,lang:n,onValueChange:r,translations:o,value:i}){return(0,vn.jsx)(rn,{container:t,fields:t.fields,children:(0,vn.jsx)(Ka,{field:t,translations:o,children:(0,vn.jsx)(Za,{field:t,lang:n,onValueChange:r,translations:o,value:i,children:e})})})}var ja=require("tailwind-merge");var xt=require("react/jsx-runtime");function Ja(e){let t=Jo(e.column?.advanced?.cols);return(0,xt.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[(0,xt.jsx)("div",{"data-slot":"column",className:(0,ja.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&(0,xt.jsx)(on,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}var ts=require("react");var es=require("react/jsx-runtime");function Qa(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>zt(n)||ie(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:fe(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return(0,es.jsx)(ht,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:t,lang:e.lang,onValueChange:e.onValueChange,style:e.style,translations:e.translations,value:e.value,children:e.children})}var Le=require("react/jsx-runtime");function ht(e){let{field:t,list:n}=e.components;return Yt(e.fields).map((r,o)=>(0,Le.jsxs)(ts.Fragment,{children:[fe(r)&&(0,Le.jsx)(Ja,{column:r,config:e.config,context:e.context,translations:e.translations,children:(0,Le.jsx)(ht,{...e,fields:r.fields})}),zt(r)&&(0,Le.jsx)(t,{disabled:e.disabled,field:r,lang:e.lang,style:e.style,translations:e.translations,children:e.children}),ie(r)&&(0,Le.jsx)(n,{field:r,lang:e.lang,onValueChange:e.onValueChange,translations:e.translations,value:e.value,children:i=>(0,Le.jsx)(Qa,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:r,index:i,lang:e.lang,onValueChange:e.onValueChange,style:e.style,translations:e.translations,value:e.value,children:e.children})})]},o))}var rs=require("react/jsx-runtime");function ns(e){return n=>(0,rs.jsx)(ht,{...n,components:e})}var os=ns({field:Va,list:Xa});var ar=require("jotai");var Rt=require("react");function as(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},s=(0,ar.useSetAtom)(Ui),l=(0,ar.useSetAtom)(Vi),u={data:null,error:null,success:!1},[c,p,f]=(0,Rt.useActionState)(async(S,x)=>{let[w,k]=e(),D=li(w,k,a);if(i===!1)return t?await t(x,D):S;let O=eo(x),Q=bu(O,k),N=D.safeParse(Q);if(!N.success){let L=ui(N.error);return(0,Rt.startTransition)(()=>{s(L)}),ir(O,{description:j("Please correct the errors and try again.",a),details:[],title:j("There were validation errors submitting the form.",a)})}let I=to(N.data);if(t)try{let L=await t(I,D);return L.success?(r?.(L.data),o||(0,Rt.startTransition)(()=>{l()}),is(I,o)):ir(I,L.error)}catch(L){return st.error("Error executing form action:",L),ir(I,{title:j("An unexpected error occurred submitting the form.",a),details:yu(L,a)})}return is(N.data,o)},u);return[p,c,f]}function yu(e,t){return e instanceof Error?[e.message]:[j("Unknown error",t)]}function is(e,t=!1){return{data:t?e:null,error:null,success:!0}}function ir(e,t){return{data:e,error:t,success:!1}}function bu(e,t){let n={...e};for(let r of t)if(X(r)&&typeof n[r.name]=="string"&&n[r.name]){let o=$t(n[r.name],me(r));o&&(n[r.name]=o)}return n}var cs=require("react");var Ue=require("react");var ss=require("react"),Sn=require("jotai");function ls(){let e=(0,Sn.useSetAtom)(Gi),t=(0,Sn.useSetAtom)(Di),n=(0,Sn.useSetAtom)(ia);return(0,ss.useCallback)((r,o)=>{let i=Array.isArray(r)?r:[r];e(i),n(i),o?.keepValue||t(i)},[e,n,t])}function us(){let e=ls(),t=(0,Ue.useRef)({}),n=(0,Ue.useRef)([]),r=(0,Ue.useCallback)((a,s,l)=>{a in t.current||(t.current[a]=s,n.current.push(l))},[]),o=(0,Ue.useCallback)((a,s)=>{t.current[a]&&(delete t.current[a],n.current=n.current.filter(l=>l.name!==a),e([a],{keepValue:s?.keepValue}))},[e]);return[(0,Ue.useCallback)(()=>[t.current,n.current],[]),r,o]}var le=require("react/jsx-runtime");function ds(e){let t=(0,cs.useMemo)(()=>Io(e.lang,e.translations),[e.lang,e.translations]),[n,r,o]=us(),[i,a,s]=as(n,e.action,{onSuccess:e.onSuccess,validation:e.config.validation.submit,translations:t}),l=e.config.validation.showError&&!a.success&&a.error,u=a.data??e.value;return(0,le.jsxs)(le.Fragment,{children:[l&&ln(e.config.alert,c=>(0,le.jsx)("div",{className:"mb-4 w-full",children:(0,le.jsx)(c,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),(0,le.jsx)(Ii,{action:i,advanced:e.advanced,config:e.config,control:e.children,definition:e.definition,isPending:s,noValidate:!0,readOnly:e.readOnly,sections:e.sections,translations:t,children:({disabled:c,fields:p})=>(0,le.jsx)(os,{config:e.config,context:e.context,disabled:c,fields:p,lang:e.lang,onValueChange:e.onValueChange,style:e.config.style,translations:t,value:u,children:f=>(0,le.jsx)(pa,{...f,config:e.config,context:e.context,getSchema:n,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:u})})})]})}var fs=require("jotai"),sr=require("react/jsx-runtime");function ms(e){return(0,sr.jsx)(fs.Provider,{children:(0,sr.jsx)(ds,{...e})})}function gs(e,t){for(let n of e){if("name"in n&&typeof n.name=="string"){t.push(n.name);continue}"fields"in n&&gs(n.fields??[],t)}}function ps(e,t){let n=[];for(let o of e)gs(o.fields??[],n);let r=t;for(let o of n)yt(o,t).found||(r===t&&(r={...t}),r[o]=void 0);return r}
|
|
1
|
+
"use strict";var Rs=Object.create;var kt=Object.defineProperty;var vs=Object.getOwnPropertyDescriptor;var Ss=Object.getOwnPropertyNames;var Ts=Object.getPrototypeOf,As=Object.prototype.hasOwnProperty;var ws=(e,t)=>{for(var n in t)kt(e,n,{get:t[n],enumerable:!0})},fr=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Ss(t))!As.call(e,o)&&o!==n&&kt(e,o,{get:()=>t[o],enumerable:!(r=vs(t,o))||r.enumerable});return e};var Cs=(e,t,n)=>(n=e!=null?Rs(Ts(e)):{},fr(t||!e||!e.__esModule?kt(n,"default",{value:e,enumerable:!0}):n,e)),ks=e=>fr(kt({},"__esModule",{value:!0}),e);var Su={};ws(Su,{Form:()=>bs,withDeclaredFields:()=>hs});module.exports=ks(Su);var gr=require("react/jsx-runtime");function mr(e){let t=typeof e.children=="function"?e.children({isPending:e.isPending}):e.children;return(0,gr.jsx)("div",{"data-slot":"field-control",className:"w-full",children:t})}var kn=require("react/jsx-runtime");function Ye(e){return(0,kn.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",className:`size-4 transition-transform duration-200 ${e.expanded?"rotate-90":""}`,children:(0,kn.jsx)("path",{fillRule:"evenodd",d:"M8.22 5.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.75.75 0 0 1-1.06-1.06L11.94 10 8.22 6.28a.75.75 0 0 1 0-1.06Z",clipRule:"evenodd"})})}var yr=require("react");var pr=require("react"),qe=(0,pr.createContext)(!1);var Fn=require("react/jsx-runtime");function ot({children:e,visible:t}){return(0,Fn.jsx)(yr.Activity,{mode:t?"visible":"hidden",children:(0,Fn.jsx)(qe,{value:!0,children:e})})}var Ft="input",br="input/date",xr="input/email",hr="input/number",Rr="input/time";var vr="textarea",Sr="radio",Tr="checkbox",Nn="list",Ar="select",wr="select/active",Cr="select/day",kr="select/month",Fr="select/timezone",Nr="select/year";var Ir="chips",Er="chips/day",Lr="chips/month",it="column",Vr="description",In="fields",Pr="label",j="value",Nt="options",En="email",Dr="number",Or="password",Mr="tel",at="text",zr="aria-errormessage",_r="aria-invalid",Br="data-invalid",$r="data-readonly",Gr="aria",Ur="data",It="max",Hr="maxLength",Et="min",Yr="minLength",Ke="$ref",qr="source",Kr="state",Lt="http://luna.internal",Zr="type",Wr={Africa:"Africa",America:"Americas",Asia:"Asia / Pacific",Atlantic:"Atlantic",Australia:"Asia / Pacific",Europe:"Europe",Indian:"Asia / Pacific",Pacific:"Asia / Pacific"};var z=require("date-fns"),Oe=require("date-fns/locale");function m(e){return e!==null&&Object.prototype.toString.call(e)==="[object Object]"}function Vt(e){return Array.isArray(e)&&e.every(m)}function Y(e){return e==null||e===""}function ne(e){return g(e)||typeof e=="number"||Ln(e)}function st(e){return Array.isArray(e)&&e.every(ne)}function g(e){return typeof e=="string"}function Xr(e){return m(e)&&"url"in e}function Ln(e){return typeof e=="boolean"}var jr={en:Oe.enUS,"en-US":Oe.enUS,es:Oe.es,"es-ES":Oe.es,"es-MX":Oe.es},Fs={short:"M/d/yy",medium:"MMM d, yyyy",long:"MMMM d, yyyy",full:"EEEE, MMMM d, yyyy"},Ns={ms:1,s:1e3,min:6e4,h:36e5,d:864e5};function Jr(e){if(e)return jr[e]??jr[e.split("-")[0]]}function Pt(e){if(typeof e=="number"&&!Number.isNaN(e))return e;if(g(e)&&e.trim()!==""){let t=Number(e);return Number.isNaN(t)?null:t}return null}function Qr(e,t,n){let r=Ns[t];if(r===void 0)return String(e);let o=e*r,i=(0,z.intervalToDuration)({start:0,end:o});return(0,z.formatDuration)(i,{locale:n})}function eo(e){if(e instanceof Date)return(0,z.isValid)(e)?e:null;if(g(e)){let t=(0,z.parseISO)(e);if((0,z.isValid)(t))return t;let n=new Date(e);return(0,z.isValid)(n)?n:null}if(typeof e=="number"){let t=new Date(e);return(0,z.isValid)(t)?t:null}return null}var Is={currency:(e,t,n)=>{let r=Pt(e);if(r===null)return String(e);let o=t[0]??"USD";return new Intl.NumberFormat(n.locale,{style:"currency",currency:o}).format(r)},percent:(e,t,n)=>{let r=Pt(e);return r===null?String(e):new Intl.NumberFormat(n.locale,{style:"percent"}).format(r)},number:(e,t,n)=>{let r=Pt(e);return r===null?String(e):new Intl.NumberFormat(n.locale).format(r)},date:(e,t,n)=>{let r=eo(e);if(!r)return String(e);let o=t[0]??"short",i=Jr(n.locale);if(o==="relative")return(0,z.formatDistanceToNow)(r,{addSuffix:!0,locale:i});let a=Fs[o]??o;return(0,z.format)(r,a,{locale:i})},duration:(e,t,n)=>{let r=Jr(n.locale);if(typeof e=="number")return Qr(e,t[0]??"ms",r);if(g(e)){let i=Pt(e);if(i!==null)return Qr(i,t[0]??"ms",r)}let o=eo(e);return o?(0,z.formatDistanceToNow)(o,{addSuffix:!0,locale:r}):String(e)}};function to(e,t,n){let r=t.split(":").map(s=>s.trim()).filter(s=>s.length>0);if(r.length===0)return;let[o,...i]=r,a=Is[o];if(a)return a(e,i,n)}var Es=/^\d+$/;function Pn(e,t=[],n=j){return st(e)?{value:e}:Array.isArray(t)?t.find(r=>{let o=Dn(r,n);if(o!==void 0&&`${o}`==`${e}`)return r})??{value:e}:{value:e}}function Dn(e,t=j){if(e!=null){if(st(e)||ne(e))return e;if(m(e)){let n=Ls(e,t);if(ne(n))return n}}}function Ls(e,t){let n=$(e,t);if(ne(n))return n}function no(e,t){if(Array.isArray(e))return e;let n=$(e,t);return Array.isArray(n)?n:null}function $(e,t){if(!t||!m(e))return null;let n=t.split(".").filter(o=>o!=="");if(n.length===0)return null;let r=e;for(let o of n)if(m(r)&&o in r)r=r[o];else if(Array.isArray(r)){let i=Number(o);if(!Number.isInteger(i)||i<0||i>=r.length)return null;r=r[i]}else return null;return r}function On(e,t={description:Vr,label:Pr,value:j}){return e.map(n=>{if(m(n)){let r=$(n,t.label),o=$(n,t.value);if(ne(r)&&ne(o)){let i=$(n,t.description);return{label:`${r}`,value:`${o}`,...ne(i)&&{description:`${i}`}}}}return n})}function ro(e=at){let t=e.lastIndexOf("/"),n=t===-1?e:e.slice(t+1);return n&&n!==Ft?n.trim().toLowerCase():at}function oo(e){let t={};for(let n of e.keys()){let r=e.getAll(n);t[n]=r.length>1?r:r[0]}return t}function io(e){let t={};for(let n of Object.keys(e)){let r=n.split(".");if(r.length===1){t[n]=e[n];continue}let o=t;for(let a=0;a<r.length-1;a++){let s=r[a],l=r[a+1],u=Es.test(l);s in o||(o[s]=u?[]:{}),o=o[s]}let i=r[r.length-1];o[i]=e[n]}return Vn(t),t}function Vn(e){for(let t of Object.keys(e)){let n=e[t];if(Array.isArray(n)){let r=n.filter(o=>o!==void 0);for(let o of r)m(o)&&Vn(o);e[t]=r}else m(n)&&Vn(n)}}var Vs=/\[([^\]]{1,500})\]\(([^)]{1,2000})\)/g,Ps=/{([^}]{1,200})}/,Ds=/{([^}]{1,200})}/g,Os=/^{([^}|]{1,200})}$/;function me(e,t={},n={}){if(g(e))return zs(e,t,n);if(Array.isArray(e))return e.map(r=>me(r,t,n));if(m(e)){let r={};for(let o in e)r[o]=me(e[o],t,n);return r}return e}function ao(e,t={},n={}){if(g(e)){let r=Ms(e,t);if(r!==void 0)return r}return me(e,t,n)}function lt(e,t={},n={}){return Me(e)?me(e,t,n):e}function Me(e){return g(e)?Ps.test(e):Array.isArray(e)?e.some(t=>Me(t)):m(e)?Object.values(e).some(t=>Me(t)):!1}function so(e,t){return t.includes(".")?$(e,t):e[t]}function Ms(e,t){let n=Os.exec(e);if(!n)return;let r=n[1].trim();if(!r)return;let o=so(t,r);if(m(o)||Array.isArray(o))return o}function zs(e,t={},n={}){return e.replace(Ds,(r,o)=>{let i=String(o).split("|").map(c=>c.trim()),[a,...s]=i;if(!a)return r;let l=so(t,a);if(s.length===0)return ne(l)?String(l):r;if(l==null)return r;let u=l;for(let c of s){let p=to(u,c,{locale:n.locale});if(p===void 0)return r;u=p}return String(u)})}function lo(e,t){if(!g(e)||!e||e.trim().length===0)return null;let n,r=0,o=!1,i=[];for(;(n=Vs.exec(e))!==null;){let[a,s,l]=n,u=n.index;o=!0,u>r&&i.push(e.substring(r,u));let c=t?t(u,l,s):a;i.push(c),r=u+a.length}return o?(r<e.length&&i.push(e.substring(r)),i):e}var ut={error:(...e)=>{Mn()&&!zn()&&Dt().error("[Luna Form]",...e)},warn:(...e)=>{Mn()&&!zn()&&Dt().warn("[Luna Form]",...e)},info:(...e)=>{Mn()&&!zn()&&Dt().info("[Luna Form]",...e)}},Mn=()=>typeof Dt()<"u",zn=()=>!0,Dt=()=>globalThis.console;function uo(e=[],t){let n=[],r=[],o=[];for(let i of e)i.action===j&&n.push(i),i.action===qr&&r.push(i),i.action===Kr&&o.push(i);t({sources:r,states:o,values:n})}function co(e=null,t=[],n){for(let r of t){let{target:o,source:i}=r;if(!e){n(o,void 0);continue}if(Xr(i)){let a=me(i.url,e),s=i.body?me(i.body,e):i.body;n(o,{...i,url:a,body:s})}}}var ze={eq:Us,gt:Ks,gte:Zs,in:Ys,lt:Ws,lte:Xs,neq:Hs,nin:qs,contains:js,exists:mo,empty:Js,truthy:Qs},_s=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/,fo=/^(\d{2})[/-](\d{2})[/-](\d{4})(?: (\d{2}):(\d{2})(?::(\d{2}))?)?$/;function Bs(e){return typeof e=="string"&&_s.test(e)}function $s(e){return typeof e=="string"&&fo.test(e)}function Gs(e){let t=e.match(fo);if(t){let[,n,r,o,i,a,s]=t;return new Date(Number(o),Number(r)-1,Number(n),Number(i??0),Number(a??0),Number(s??0)).getTime()}return NaN}function we(e){return Bs(e)?new Date(e).getTime():$s(e)?Gs(e):Number(e)}function Us(e,t){return e===t}function Hs(e,t){return e!==t}function Ys(e,t){return Array.isArray(t)&&t.includes(String(e))}function qs(e,t){return Array.isArray(t)&&!t.includes(String(e))}function Ks(e,t){return we(e)>we(t)}function Zs(e,t){return we(e)>=we(t)}function Ws(e,t){return we(e)<we(t)}function Xs(e,t){return we(e)<=we(t)}function js(e,t){return typeof e=="string"?e.includes(String(t)):Array.isArray(e)?e.map(String).includes(String(t)):!1}function mo(e){return Array.isArray(e)?e.length>0:e!=null&&e!==""}function Js(e){return!mo(e)}function Qs(e){return Array.isArray(e)?e.length>0:!!e}function Ze(e,t){if(t===void 0)return!0;if(g(t)){let n=Ot(e,j);return Array.isArray(n)?n.length===1&&n[0]===t:n===t}if(Ln(t)){let n=Ot(e,j);return(Array.isArray(n)?n.length>0:!!n)===t}if(Array.isArray(t)){let n=Ot(e,j);return Array.isArray(n)?n.some(r=>t.includes(String(r))):t.includes(String(n))}return el(e,t)}function el(e=null,t){let n=Ot(e,t.field??j),{operator:r="eq",value:o}=t,i=ze[r];return i?i(n,o):!1}function Ot(e,t){return m(e)?$(e,t):e}function go(e=null,t=[],n){for(let r of t){let{target:o,state:i,when:a}=r,s=Array.isArray(o)?o:[o];if(!e){n(s);continue}let l=Ze(e,a);n(s,l?i:void 0)}}function po(e=null,t=[],n){for(let r of t)for(let[o,i]of Object.entries(r.value))n(o,e?ao(i,e):void 0,{onlyIfTargetEmpty:r.onlyIfTargetEmpty??!1})}var ct=e=>L(wr)(e),yo=e=>L(Cr)(e),Mt=e=>L(kr)(e),zt=e=>L(Nr)(e),bo=e=>L(Fr)(e),_t=e=>L(Er)(e),Bt=e=>L(Lr)(e),J=L(br),ge=L(Rr),K=L(Tr),re=L(Ir),pe=L(Sr),Ce=L(Ft),oe=L(Ar),_n=L(vr),xo=L(at,En,Or,Mr),ho=L(xr,En),$t=L(hr,Dr);function Gt(e){return pe(e)||K(e)}function ie(e){return e.type===Nn}function ye(e){return e.type===it}function Ut(e){return e.type!==it&&e.type!==Nn}function We(e){return oe(e)||pe(e)||re(e)}function Ro(e){return Ce(e)||_n(e)}function k(e){return e!=null&&e!==""}function L(...e){return t=>{let n=g(t.type)?t.type:void 0;return n?e.some(r=>n===r||n?.startsWith(`${r}/`)):!1}}function vo(e,t={}){if(oe(e)&&e.disabled){let n=e.name?t?.[e.name]:void 0;if(n&&m(n))return[n]}}function So(e){return pe(e)||K(e)?!0:e.advanced?.horizontal}function To(e){return K(e)?e.advanced?.reverse!==!1:!1}function Ao(e,t){let n=e.readonly??!1;return t||n}function Ht(e){if(tl(e)){let t=e.source;if(Array.isArray(t)||m(t)&&!(Ke in t))return t}}function wo(e){return Array.isArray(Ht(e))}function tl(e){return pe(e)||re(e)||oe(e)&&!e.disabled}var G=require("date-fns"),nl=/^\d+$/,Yt=new Date(2e3,0,1),rl=()=>"supportedValuesOf"in Intl?Intl.supportedValuesOf("timeZone"):[],Bn="default";function Fo(e){if(!e)return Bn;try{return Intl.getCanonicalLocales(e)[0]??Bn}catch{return Bn}}function $n(e){let t=Fo(e);return Array.from({length:12},(n,r)=>({value:(r+1).toString(),label:new Date(0,r).toLocaleString(t,{month:"long"})}))}function Gn(e){let t=Fo(e);return Array.from({length:7},(n,r)=>({value:r.toString(),label:new Date(2e3,0,2+r).toLocaleString(t,{weekday:"long"})}))}function No(e,t){return t>=e?Array.from({length:t-e+1},(n,r)=>{let o=e+r;return{value:o.toString(),label:o.toString()}}):[]}function Un(){return new Date().getFullYear()}function ol(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function il(e){let t=e.indexOf("/"),n=t===-1?e:e.slice(0,t);return Wr[n]??"Other"}function al(e,t){return(e.find(r=>r.type==="timeZoneName")?.value??t).replace(/\s+(?:Standard|Daylight(?: Saving)?|Summer|Winter)\s+Time$/,"")}function Co(e,t){let n=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"longOffset"}).formatToParts(t),r=new Intl.DateTimeFormat("en",{timeZone:e,timeZoneName:"long"}).formatToParts(t),i=(n.find(s=>s.type==="timeZoneName")?.value??"GMT+00:00").replace("GMT","UTC"),a=al(r,e);return{offset:i,longName:a}}function ko(e){return e.slice(e.lastIndexOf("/")+1).replace(/_/g," ")}function Io(){let e=new Date,t=ol(),n=new Map,r=ko(t),{offset:o,longName:i}=Co(t,e),a={value:t,label:`${r} - ${i} (${o})`};for(let l of rl()){if(l===t)continue;let u=ko(l),{offset:c,longName:p}=Co(l,e),f={value:l,label:`${u} - ${p} (${c})`},v=il(l);if(v==="Other")continue;let b=n.get(v);b?b.push(f):n.set(v,[f])}for(let l of n.values())l.sort((u,c)=>u.label.localeCompare(c.label));let s=Array.from(n.entries()).sort(([l],[u])=>l.localeCompare(u)).map(([l,u])=>({label:l,items:u}));return[{label:"Suggested",items:[a]},...s]}function Hn(e,t){if(typeof e=="number")return e;let n=t??Un(),r=e.trim().toLowerCase();if(r.startsWith("current")){let o=r.match(/^current([+-])(\d+)$/);if(o){let[,i,a]=o,s=parseInt(a,10);if(!isNaN(s))return i==="+"?n+s:n-s}return n}return nl.test(r)?parseInt(r,10):n}function qt(e,t){if(!e)return"";try{let n=(0,G.parse)(e,t,Yt);return(0,G.isValid)(n)?(0,G.format)(n,"yyyy-MM-dd"):""}catch{return""}}function Eo(e,t){if(!e)return"";try{let n=(0,G.parse)(e,t,Yt);return(0,G.isValid)(n)?(0,G.format)(n,"HH:mm:ss"):""}catch{return""}}function Lo(e,t="HH:mm"){if(!e)return"";try{let n=e.split(":").length===3?"HH:mm:ss":"HH:mm",r=(0,G.parse)(e,n,Yt);return(0,G.isValid)(r)?(0,G.format)(r,t):""}catch{return""}}function Kt(e,t="MMMM d, yyyy"){if(!e)return"";try{let n=(0,G.parse)(e,"yyyy-MM-dd",Yt);return(0,G.isValid)(n)?(0,G.format)(n,t):""}catch{return""}}function _e(e){return e.advanced?.format??"HH:mm"}function be(e){return e.advanced?.format??"MMMM d, yyyy"}var sl={es:{"(Optional)":"(Opcional)","Add item":"A\xF1adir elemento","An unexpected error occurred submitting the form.":"Ocurri\xF3 un error inesperado al enviar el formulario.","Collapse {label} {index}":"Contraer {label} {index}","Expand {label} {index}":"Expandir {label} {index}","Please correct the errors and try again.":"Corrige los errores e int\xE9ntalo de nuevo.","Remove {label} item {index}":"Eliminar {label} {index}","There were validation errors submitting the form.":"Se encontraron errores de validaci\xF3n al enviar el formulario.","Unknown error":"Error desconocido",No:"No",Yes:"S\xED"}};function Q(e,t){return F(e,t)}function Po(e,t){let n=t?.[e??""],r=e?sl[ll(e)]:void 0;return r?n?{...r,...n}:r:n}function ll(e){return e.toLowerCase().split(/[-_]/)[0]}function F(e,t){return e?t?t[e]??e:e:""}function ae(e,t){return e?F(e,t):void 0}function dt(e,t){if(!t)return e;let n=!1,r=e.map(o=>{let i=ul(o,t);return i!==o&&(n=!0),i});return n?r:e}function ul(e,t){if(!m(e))return e;let n=Vo(e.label,t),r=e.items;if(Array.isArray(r)){let i=dt(r,t);return i===r&&n===e.label?e:{...e,...n!==void 0&&{label:n},items:i}}let o=Vo(e.description,t);return n===e.label&&o===e.description?e:{...e,...n!==void 0&&{label:n},...o!==void 0&&{description:o}}}function Vo(e,t){return g(e)?F(e,t):e}var Zt=Un();function Oo(e,t){if(re(e))return cl(e,t?.lang)}function cl(e,t){if(_t(e))return Gn(t);if(Bt(e))return $n(t)}function Mo(e,t){if(oe(e))return dl(e,t)}function dl(e,t){let{lang:n,translations:r}=t??{};if(yo(e))return Gn(n);if(Mt(e))return $n(n);if(zt(e)){let o=e.advanced?.length?.min??Zt,i=e.advanced?.length?.max??Zt+5;return No(Hn(o,Zt),Hn(i,Zt))}if(bo(e))return Io();if(ct(e))return dt([{value:"true",label:"Yes"},{value:"false",label:"No"}],r)}function zo(e,t=!1,n){let r={disabled:t,id:e.name,name:e.name,placeholder:e.placeholder,required:e.required};return Ce(e)?{...r,...fl(e)}:oe(e)?{...r,..._o(Mo(e,n))}:_n(e)?{...r,...gl(e)}:re(e)?{...r,...ml(e,n)}:r}function fl(e){let t=ro(e.type),n={...e,type:t};return{...yl(e),...Bo(e),...pl(n),...xo(n)?$o(n):{},type:t}}function _o(e){return e?{options:e}:{}}function ml(e,t){let n=_o(Oo(e,t)),r=e.advanced?.multiple??!0;return{...n,multiple:r}}function gl(e){return{...Bo(e),...$o(e)}}function Bo(e){let t=e.advanced?.autocomplete;return t?{autoComplete:t}:{}}function pl(e){return $t(e)?bl(e):{}}function yl(e){if(ge(e)){let t=_e(e);return{step:t==="HH:mm:ss"||t==="hh:mm:ss a"?"1":"60"}}return{}}function $o(e){return Go(e,{min:Yr,max:Hr})}function bl(e){return Go(e,{min:Et,max:It})}function Go(e,t){let n={},r=e.advanced?.length;return r&&(r.min!==void 0&&(n[t.min]=r.min),r.max!==void 0&&(n[t.max]=r.max)),n}function Uo(e,t){let n=Ht(e);return n||vo(e,t)}function xl(e,t){let n=m(t)&&e.name in t?t[e.name]:t,r=Dn(n,e.advanced?.entity),o=k(r)?r:e.defaultValue;return ge(e)&&k(o)?hl(e,o):J(e)&&k(o)?Tl(e,o):o}function hl(e,t){let n=_e(e);return g(t)?Eo(t,n):t}function Rl(e,t,n){return We(e)&&Array.isArray(n)?{...t,[Nt]:n}:t}function vl(e,t,n){if(e.required&&!k(n)&&oe(e)&&e.advanced?.preselected!==!1&&Nt in t){let r=t[Nt];if(Array.isArray(r)&&r.length===1)return r[0]}return n}function Sl(e,t,n){if(We(e)&&Array.isArray(t)){let r=On(t,e.advanced?.options);return wo(e)?dt(r,n):r}return t}function Ho(e,t,n,r,o){let i=xl(e,r),a=Array.isArray(n)?Sl(e,n,o):n,s=Rl(e,t,a),l=vl(e,s,i);return{commonPropsWithOptions:s,defaultValue:l}}function Yo(e,t){return K(e)?{checked:!!t}:re(e)?{value:Array.isArray(t)?t:[]}:J(e)&&g(t)&&k(t)?{value:Kt(t,be(e))}:ct(e)?{value:k(t)?String(t):""}:{value:t??""}}function Tl(e,t){let n=be(e);return g(t)?qt(t,n):t}function qo(e,t){let n=e??t;return n?{"data-format":n}:{}}function Do(e){let t=[];for(let n of e){if(typeof n=="string"){t.push(n);continue}m(n)&&"value"in n&&"label"in n&&g(n.value)&&g(n.label)&&t.push({label:n.label,value:n.value})}return t}function Ko(e,t){if(!We(e))return;let n=re(e)?Oo(e,t):Mo(e,t);if(Array.isArray(n)){let o=Do(n);return o.length>0?o:void 0}let r=Ht(e);if(Array.isArray(r)){let o=On(r,e.advanced?.options),i=Do(dt(o,t?.translations));return i.length>0?i:void 0}}function Zo(e,t){let n=String(e);for(let r of t)if(typeof r=="string"){if(r===n)return r}else if(r.value===n)return r.label;return n}var Al=/^#\/definition\//;function Xt(e=[],t){let n=Wt(e,t);return Array.isArray(n)?n.filter(Cl).sort((r,o)=>Wo(r)-Wo(o)):[]}function Wt(e,t,n=new Map,r=new WeakSet){if(!wl(t)||!e||typeof e!="object")return e;if(n.has(e))return n.get(e);if(r.has(e))return e;if(r.add(e),Array.isArray(e))return e.map(i=>Wt(i,t,n,r));if(Ke in e&&g(e[Ke])){let i=e[Ke].replace(Al,""),a=$(t,i);return a!==null?Wt(a,t,n,r):e}let o={};for(let[i,a]of Object.entries(e))o[i]=Wt(a,t,n,r);return r.delete(e),n.set(e,o),o}function Xo(e){return Object.entries(e??{})}function Wo(e){return e.order??Number.MAX_VALUE}function wl(e){return e!==void 0&&m(e)&&Object.keys(e).length>0}function Cl(e){return Zr in e?!0:Array.isArray(e[In])?e[In].length>0:!0}function jo(e,t){let n={};for(let[r,o]of Xo(t))n[`${e}-${r}`]=o;return n}function kl(e){return jo(Gr,e)}function Fl(e){return jo(Ur,e)}function Jo(e,t){let n=kl(e.advanced?.aria);return t&&t.length>0&&(n[_r]="true",n[zr]=`${e.name}-error`),n}function Qo(e){return Fl(e.advanced?.data)}var ei={1:"md:grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-3"},ti={1:"md:col-span-1",2:"md:col-span-2",3:"md:col-span-3"};function ni(e,t=2){return ei[e&&e in ei?e:t]}function ri(e){if(e&&e in ti)return ti[e]}function Yn(e){return{min:e.advanced?.length?.min??1,max:e.advanced?.length?.max??1/0}}function jt(e){let t=[];for(let n of e)if(ye(n))for(let r of n.fields)t.push(r);else t.push(n);return t}function Nl(e,t){let n=t?$(t,e.name):null;return li(e,Array.isArray(n)?n.length:0)}function oi(e){return!Array.isArray(e.fields)||e.fields.length===0?!1:e.fields.length>1||e.fields[0].type===it}function ii(e,t){let n=Nl(e,t);return Array.from({length:n},(r,o)=>o)}function ai(e){return e.advanced?.title??e.label??e.name}function si(e){let t={};for(let n of jt(e))ie(n)||(t[n.name]=n);return t}function li(e,t){let{min:n,max:r}=Yn(e);return Math.min(Math.max(t,n),r)}function qn(e,t){let n=jt(e.fields),r=li(e,t.length),o=[];for(let i=0;i<r;i++){let a=t[i],s={};for(let l of n){let u=a?.[l.name];s[l.name]=ie(l)?qn(l,Vt(u)?u:[]):u}o.push(s)}return o}function Jt(e,t){if(!e.includes("/"))return e;let[n,r]=e.split("/"),o=new RegExp(`(^|.*\\.)(${n}\\.\\d+\\.)`),i=t.match(o);return i?`${i[0]}${r}`:r}var A=require("zod");var Il=[[K,ui],[ho,El],[$t,Pl],[pe,Ll],[ct,ui],[Mt,Ol],[zt,Dl],[re,Kn],[_t,Kn],[Bt,Kn]];function fi(e,t=[],n){let r=A.z.object(e);if(t.length===0)return r;let o=Bl(r,t,n);return Ul(o,t,n)}function mi(e){let t={},n=A.z.flattenError(e).fieldErrors;for(let[r,o]of Object.entries(n))o!==void 0&&(t[r]=o);return t}function gi(e,t){for(let[n,r]of Il)if(n(e))return r(e,t);return Vl(e,t)}function El(e,t){let n=A.z.string().trim();if(e.required){let r=ke(e,t),o=n.min(1,r).pipe(ci(e,t));return A.z.preprocess(i=>Y(i)?"":i,o)}return n.pipe(ci(e,t)).or(A.z.literal("")).nullable()}function ui(e,t){let n=A.z.preprocess(r=>{if(typeof r=="string"){if(r==="true")return!0;if(r==="false")return!1}return r},A.z.coerce.boolean());return e.required?(K(e)?n=n.refine(r=>r===!0,{message:ke(e,t)}):n=n.refine(r=>typeof r=="boolean",{message:ke(e,t)}),A.z.preprocess(r=>r===null?!1:r,n)):n.nullable()}function Ll(e,t){let n=A.z.coerce.string();return e.required?(n=n.min(1,ke(e,t)),A.z.preprocess(r=>Y(r)?"":r,n)):n.or(A.z.literal("")).nullable()}function Vl(e,t){let n=A.z.coerce.string().trim();return n=pi(n,e,t),e.required?(n=yi(n,e,t),A.z.preprocess(r=>Y(r)?"":r,n)):n.nullable()}function Pl(e,t){let n=A.z.coerce.number().int();return n=pi(n,e,t),e.required?(n=yi(n,e,t),A.z.preprocess(r=>r===null?void 0:r,n)):n.nullable()}function Dl(e,t){return e.required?A.z.preprocess(Ml,A.z.coerce.number({message:ke(e,t)}).int()):A.z.coerce.number().int().nullable()}function Ol(e,t){let n=ke(e,t),r=A.z.coerce.number().int().min(1,n).max(12,n);return e.required?r:r.nullable()}function Ml(e){return e===null||e===""?void 0:e}function ci(e,t){let n=e.validation?.email?F(e.validation?.email,t):void 0;return A.z.email(n)}function pi(e,t,n){return e=zl(e,t,n),e=_l(e,t,n),e}function yi(e,t,n){let r=t.advanced?.length?.min;return r===void 0||r<1?e.min(1,ke(t,n)):e}var zl=(e,t,n)=>bi(e,t,Et,n),_l=(e,t,n)=>bi(e,t,It,n);function bi(e,t,n,r){let o=t.advanced?.length?.[n];if(o!==void 0){let i=t.validation?.length?.[n]?F(t.validation?.length?.[n],r):void 0;return e[n](o,i)}return e}function Bl(e,t=[],n){let r=Gl(t);return r.length===0?e:e.superRefine((o,i)=>{for(let{name:a,rule:s}of r)if(!$l(o,a,s)){let l=F(s.message,n);i.addIssue({code:"custom",message:l,path:[a]})}})}function $l(e,t,n){let r=n.operator??"eq",o=ze[r];return o?o(Qt(e,t),Qt(e,n.field)):!1}function Gl(e){let t=[];for(let n of e){let r=n.validation?.custom;if(!r)continue;let o=Array.isArray(r)?r:[r];for(let i of o)t.push({name:n.name,rule:i})}return t}function xi(e,t,n,r){let o=[],i=Array.isArray(t)?t:[t];for(let a of i){let s=a.operator??"eq",l=ze[s];if(l&&!l(e,n(a.field))&&a.message){let u=F(a.message,r);o.push(u)}}return o}function ke(e,t){return e.validation?.required?F(e.validation?.required,t):void 0}function Kn(e,t){let n=A.z.array(A.z.string());return e.required&&(n=n.min(1,ke(e,t))),A.z.preprocess(r=>Y(r)?[]:Array.isArray(r)?r.map(String):[String(r)],n)}function Ul(e,t=[],n){let r=t.filter(Hl);return r.length===0?e:e.superRefine((o,i)=>{let a=m(o)?o:{};for(let s of r)for(let l of Yl(a,s,n))i.addIssue({code:"custom",path:l.path,message:l.message})})}function Hl(e){let t=e.validation;return t!==void 0&&(t.requiredWhen!==void 0||t.pattern!==void 0||t.rules!==void 0)}function Yl(e,t,n){let r=[],o=Qt(e,t.name),i=t.validation?.requiredWhen;if(i){let l=(Array.isArray(i)?i:[i]).find(u=>ft(e,u));l&&!Zn(o)&&r.push({path:[t.name],message:ae(l.message??t.validation?.required,n)})}let a=t.validation?.pattern;a&&!hi(a,o)&&r.push({path:[t.name],message:ae(a.message,n)});for(let s of t.validation?.rules??[])ql(e,s.when)&&!Kl(s,o)&&r.push({path:[t.name],message:ae(s.message,n)});return r}function ft(e,t){let n=ze[t.operator??"eq"];return n?n(Qt(e,t.field),t.value):!1}function Qt(e,t){return t in e?e[t]:$(e,t)??void 0}function ql(e,t){if(!t)return!0;if(Array.isArray(t))return t.every(o=>ft(e,o));if("field"in t)return ft(e,t);let n=t.all?t.all.every(o=>ft(e,o)):!0,r=t.any?t.any.some(o=>ft(e,o)):!0;return n&&r}function Kl(e,t){switch(e.assert){case"required":return Zn(t);case"minItems":return Array.isArray(t)&&t.length>=Number(e.value);case"maxItems":return Array.isArray(t)&&t.length<=Number(e.value);case"min":return di(t)>=Number(e.value);case"max":return di(t)<=Number(e.value);case"oneOf":return Array.isArray(e.value)&&e.value.map(String).includes(String(t));case"pattern":return Wl(e.value)?hi(e.value,t):!0;default:return!0}}function hi(e,t){return!Zn(t)||typeof t!="string"||e.allowInterpolation&&(Me(t)||Zl(t))?!0:new RegExp(e.regex,e.flags).test(t)}function Zl(e){return g(e)&&e.trimStart().startsWith("@")}function Zn(e){return g(e)?e.trim().length>0:ze.exists(e,void 0)}function di(e){return typeof e=="number"?e:g(e)||Array.isArray(e)?e.length:0}function Wl(e){return m(e)&&"regex"in e}function Ri(e,t){if(!t||!jl(e))return!0;if(t.length===0)return!1;try{let n=new URL(e),r=n.protocol.replace(":",""),o=n.hostname,i=n.port||Xl(r);return t.some(a=>!(a.protocol&&a.protocol!==r||a.hostname&&a.hostname!==o||a.port!==void 0&&String(a.port)!==i))}catch{return!1}}function Xl(e){return e==="https"?"443":"80"}function jl(e){return/^(https?:)?\/\//.test(e)}function vi(e,t){try{if(!e)return t;if(!t)return e;let n=new URL(e,Lt);new URL(t,Lt).searchParams.forEach((i,a)=>{n.searchParams.set(a,i)});let o=n.toString();return e.startsWith("/")||!e.includes("://")?o.replace(Lt,""):o}catch{return t||e}}function Si(e){return!Array.isArray(e)||e.length===0?null:e.reduce((t,n)=>{let r=vi(t.url,n.url),o=Jl(t,n),i=Ql(t,n);return{...t,...n,url:r,body:o,headers:i}})}function Jl(e,t){return m(t.body)&&m(e?.body)?{...e.body,...t.body}:t.body??e?.body}function Ql(e,t){return m(t.headers)&&m(e?.headers)?{...e.headers,...t.headers}:t.headers??e?.headers}function en(e,t){let n={...e};for(let r of Object.keys(t??{})){let o=t?.[r];o!==void 0&&(n[r]=o)}return n}var eu={uppercase:e=>e.toUpperCase(),lowercase:e=>e.toLowerCase(),"remove-space":e=>e.replace(/\s+/g,""),"remove-accent":e=>e.normalize("NFD").replace(/[\u0300-\u036f]/g,"")};function mt(e,t){return!t||!g(e)||Y(e)?e:(Array.isArray(t)?t:[t]).reduce((r,o)=>{let i=eu[o];return i?i(r):r},e)}var Ti=require("react/jsx-runtime");function xe(e){return lo(e,(t,n,r)=>(0,Ti.jsx)("a",{className:"underline",href:n,rel:"noopener noreferrer",target:"_blank",children:r},`${n}-${t}`))}var tn=require("react"),se=require("react/jsx-runtime");function Ai(e){let{fields:t=[]}=e.section,[n,r]=(0,tn.useState)(!1),o=(0,tn.useCallback)(()=>r(i=>!i),[]);return(0,se.jsxs)("fieldset",{"data-slot":"field-set","data-advanced":"true","data-expanded":n,"data-empty":t.length===0,className:"flex flex-col",id:e.section.id?.toString(),children:[(0,se.jsx)("legend",{children:(0,se.jsxs)("button",{className:"flex cursor-pointer items-center gap-2 text-base font-medium text-zinc-600 dark:text-zinc-400",onClick:o,type:"button",children:[(0,se.jsx)(Ye,{expanded:n}),(0,se.jsx)("span",{children:xe(e.title)})]})}),(0,se.jsx)(ot,{visible:n,children:(0,se.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:[e.description&&(0,se.jsx)("p",{className:"text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:xe(e.description)}),e.group]})})]})}var Fe=require("react/jsx-runtime");function wi(e){let t=(0,Fe.jsxs)("div",{className:"flex flex-col",children:[e.title&&(0,Fe.jsx)("legend",{className:"mb-3 font-medium text-zinc-800 dark:text-zinc-200",children:xe(e.title)}),e.description&&(0,Fe.jsx)("p",{className:"-mt-2 text-sm leading-normal font-normal text-zinc-600 dark:text-zinc-400",children:xe(e.description)})]});return e.step?(0,Fe.jsxs)("div",{className:"flex flex-row items-start gap-4",children:[(0,Fe.jsx)("div",{className:"bg-primary text-primary-foreground flex size-6 shrink-0 items-center justify-center rounded-full",children:(0,Fe.jsx)("span",{className:"text-sm font-bold",children:e.step})}),t]}):t}var gt=require("react/jsx-runtime");function nn(e){return(0,gt.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,gt.jsx)(wi,{description:e.description,step:e.step,title:e.title}),(0,gt.jsx)("div",{className:"w-full min-w-0",children:e.children})]})}var Ci=require("react/jsx-runtime");function Ne(e){return(0,Ci.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 rn=require("react/jsx-runtime");function ki(e){let{fields:t=[]}=e.section,n=e.advanced?.step?e.step:void 0,{compact:r}=en(e.style,{compact:e.section.advanced?.compact}),o=(0,rn.jsx)(Ne,{compact:r,children:e.children});if(!e.section.title&&!e.section.description)return o;let i=ae(e.section.title,e.translations),a=ae(e.section.description,e.translations);return e.section.advanced?.collapsible?(0,rn.jsx)(Ai,{description:a,group:o,section:e.section,title:i}):(0,rn.jsx)(nn,{description:a,empty:t.length===0,id:e.section.id?.toString(),step:n,title:i,children:o})}var Wn=require("react/jsx-runtime");function Fi(){return(0,Wn.jsx)("div",{"data-slot":"field-separator",className:"relative -my-2 h-5 text-sm",children:(0,Wn.jsx)("div",{className:"absolute inset-0 top-1/2 h-px w-full bg-zinc-200 dark:bg-zinc-800"})})}var Li=require("jotai");var Ie=require("jotai"),Xn=require("jotai-family"),on=require("fast-equals");function pt(e,t){let{[t]:n,...r}=e;return r}function tu(e){return(0,Xn.atomFamily)(t=>(0,Ie.atom)(n=>n(e)[t]??void 0,(n,r,o)=>{let i=n(e);if(o!=null){let a=i[t];(0,on.deepEqual)(a,o)||r(e,{...i,[t]:o})}else t in i&&r(e,pt(i,t))}))}function nu(e){return(0,Ie.atom)(null,(t,n)=>{let r=t(e);r&&Object.keys(r).length>0&&n(e,{})})}function ru(e){return(0,Ie.atom)(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let s of r)s in i&&(delete i[s],a=!0);a&&n(e,i)})}function ou(e){return(0,Ie.atom)(null,(t,n,r)=>{let o=t(e);(0,on.deepEqual)(o,r)||n(e,r)})}function Ni(e,t={}){let{merge:n,validateTarget:r}=t;return(0,Xn.atomFamily)(o=>(0,Ie.atom)(i=>{let a=i(e)[o];if(a&&n)return n(Object.values(a))},(i,a,s,l)=>{if(r&&!r(s))return;let u=i(e),c={...u[s]??{}};if(l!=null){let p=c[o];(!p||!(0,on.deepEqual)(p,l))&&(c[o]=l,a(e,{...u,[s]:c}))}else o in c&&(delete c[o],Object.keys(c).length===0?a(e,pt(u,s)):a(e,{...u,[s]:c}))}))}function Ii(e){return(0,Ie.atom)(null,(t,n,r)=>{let i={...t(e)},a=!1;for(let s of r)s in i&&(delete i[s],a=!0);for(let s in i){let l={...i[s]},u=!1;for(let c of r)c in l&&(delete l[c],u=!0,a=!0);u&&(Object.keys(l).length===0?delete i[s]:i[s]=l)}a&&n(e,i)})}function he(e={}){let t=(0,Ie.atom)(e);return{atom:t,clearAll:nu(t),clear:ru(t),bulkReport:ou(t),report:tu(t)}}var Ei=he(),an=Ei.atom,sn=Ei.report;function iu(e,t){return e.fields.every(n=>Vi(n,t))}function Vi(e,t){return t[e.name]?.hidden??e.hidden??!1}function au(e,t){return ye(e)?iu(e,t):Vi(e,t)}function ln(e){let t=(0,Li.useAtomValue)(an);return e.container&&(t[e.container.name]?.hidden??e.container.hidden??!1)||e.fields.length===0||e.fields.every(r=>au(r,t))?null:e.children}var Re=require("react/jsx-runtime");function Pi(e){let t=Xt(e.sections,e.definition);return(0,Re.jsx)("div",{className:"h-full w-full",children:(0,Re.jsx)("form",{noValidate:e.noValidate,action:e.action,children:(0,Re.jsxs)(Ne,{children:[t.map((n,r)=>(0,Re.jsxs)(ln,{fields:n.fields??[],children:[(0,Re.jsx)(ki,{advanced:e.advanced,section:n,step:r+1,style:e.config.style,translations:e.translations,children:e.children({disabled:e.readOnly,fields:n.fields})}),n.advanced?.separator&&(0,Re.jsx)(Fi,{})]},`key-${n.id}-${r}`)),e.control&&(0,Re.jsx)(mr,{isPending:e.isPending,children:e.control})]})})})}var Oi=require("react/jsx-runtime");function Di(e){return(0,Oi.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})}var Mi=require("react"),Xe=require("react/jsx-runtime");function un(e){let t={context:e.context,env:e.config?.env,value:e.value},r={locale:e.config?.env?.locale},[o,i]=(0,Mi.useState)(()=>m(e.text)&&"collapsed"in e.text?!e.text.collapsed:!0),a=()=>i(c=>!c),s=m(e.text)&&g(e.text.title)?xe(F(lt(e.text.title,t,r),e.translations)):void 0,l=F(lt(g(e.text)?e.text:e.text?.message,t,r),e.translations),u=xe(l);return u?(0,Xe.jsxs)("div",{className:"flex flex-col gap-2",children:[s&&(0,Xe.jsxs)("button",{className:"flex items-center gap-1 text-left text-xs font-medium text-zinc-700 hover:text-zinc-900 dark:text-zinc-300 dark:hover:text-zinc-100",onClick:a,type:"button",children:[s,(0,Xe.jsx)(Ye,{expanded:o})]}),o&&(0,Xe.jsx)(Di,{title:l,children:u})]}):null}var jn=require("jotai");var cn=he(),q=cn.atom,zi=cn.clearAll,_i=cn.clear,Ee=cn.report,Jn=(0,jn.atom)({}),Qn=(0,jn.atom)(null);var er=require("jotai"),Bi=require("react/jsx-runtime");function dn(e){let t=(0,er.useAtomValue)(Ee(e.field.name)),r=(0,er.useAtomValue)(sn(e.field.name))?.description??e.field.description;return(0,Bi.jsx)(un,{config:e.config,context:e.context,text:r,translations:e.translations,value:t})}var $i=require("tailwind-merge"),yt=require("react/jsx-runtime");function Gi(e){let t=e.style?.showOptionalLabel??!0,n=pe(e.field)||K(e.field);return(0,yt.jsxs)("label",{"data-slot":"field-label","data-normal":n,className:(0,$i.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:g(e.children)?e.children:void 0,children:[(0,yt.jsx)("span",{className:"[[data-slot=column]_&]:md:truncate",children:e.children}),t&&!e.field.required&&(0,yt.jsx)("span",{className:"ml-2 flex-shrink-0 text-sm text-zinc-600 dark:text-zinc-400",children:Q("(Optional)",e.translations)})]})}var bt=require("react/jsx-runtime");function Ui(e){let t={context:e.context,env:e.config?.env},n=e.config?.env?.locale,r=lt(e.field.label,t,{locale:n});return(0,bt.jsxs)("div",{"data-slot":"field-content",className:"flex w-full flex-1 flex-col gap-1.5 leading-snug",children:[(0,bt.jsx)(Gi,{field:e.field,style:e.config?.style,translations:e.translations,children:F(r,e.translations)}),e.horizontal===!0&&(0,bt.jsx)(dn,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}var Be=require("react/jsx-runtime");function Hi(e){return(0,Be.jsxs)(Be.Fragment,{children:[e.field.name&&e.field.label&&(0,Be.jsx)(Ui,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations}),e.children,e.horizontal===!1&&(0,Be.jsx)(dn,{config:e.config,context:e.context,field:e.field,translations:e.translations})]})}function fn(e,t){return e?t(e):null}var xt={found:!1,value:void 0};function ht(e,t){if(!Array.isArray(t)&&e in t)return{found:!0,value:t[e]};if(!e.includes("."))return xt;let n=e.split("."),r=t;for(let o of n){if(r==null)return xt;if(Array.isArray(r)){let i=Number(o);if(!Number.isInteger(i)||!(i in r))return xt;r=r[i]}else if(m(r)){if(!(o in r))return xt;r=r[o]}else return xt}return{found:!0,value:r}}function W(e,t){return ht(e,t).value}var Je=require("react");var Yi=require("react"),su=e=>e,Le=(0,Yi.createContext)(su);var tr=he(),qi=tr.clear,Ki=tr.bulkReport,mn=tr.report;var Zi=he(),gn=Zi.atom,Wi=Zi.report,Xi=he(),Rt=Xi.atom,ji=Xi.report;var Z=require("react");var ve=require("react");function Ji(e,t,n,r){let{name:o}=e,i=(0,ve.useMemo)(()=>gi(e,r),[e,r]),s=(0,ve.use)(qe)||e.keepValue===!0,l=(0,ve.useEffectEvent)(c=>{c&&t(c,i,e)}),u=(0,ve.useEffectEvent)(c=>{c&&n(c,{keepValue:s})});return(0,ve.useEffect)(()=>(l(o),()=>{u(o)}),[o]),i}var Se=require("jotai");var je=require("react");function Qi(){let e=(0,je.useRef)(null);return(0,je.useEffect)(()=>()=>{e.current&&clearTimeout(e.current)},[]),(0,je.useCallback)((n,r)=>{e.current&&(clearTimeout(e.current),e.current=null),e.current=setTimeout(n,r)},[])}function lu(e){return document.activeElement?.getAttribute("name")===e}function ea(e,t){let n=(0,Se.useStore)(),r=e.field.advanced?.entity,o=Qi(),[,i]=(0,Z.useTransition)(),a=(0,Z.use)(Le),{setValue:s,shouldSkipOnChange:l,value:u,setSource:c}=t,p=(0,Z.useRef)(u);p.current=u;let f=(0,Z.useRef)(e.translations);f.current=e.translations;let v=Gt(e.field),b=(0,Se.useSetAtom)(q),w=(0,Se.useSetAtom)(an),N=(0,Se.useSetAtom)(mn(e.field.name)),P=(0,Se.useSetAtom)(Jn),D=(0,Se.useSetAtom)(Qn),te=(0,Se.useSetAtom)(gn),I=Ji(e.field,e.onMount,e.onUnmount,e.translations),E=F(e.commonProps.placeholder,e.translations),V={...e.commonProps,placeholder:E};function ue(d){let[,y]=e.getSchema();return y.find(C=>C.name===d)}function ce(d){return ue(d)??n.get(Rt)[d]}function de(d){return ce(d)?.hidden===!0}function Ge(d){return ce(d)?.keepValue===!0}function nt(d){let y=ue(d);if(y&&Ce(y)){let C=y.advanced?.transform;if(C)return C}}function Ue(d,y){if(b(C=>({...C,[d]:y})),P(C=>({...C,[d]:y})),e.onValueChange){let C=ue(d);C&&e.onValueChange({name:a(d),type:C.type,value:y})}}function rt(d){let y=n.get(q),C=Object.keys(y).filter(U=>d.some(_=>U===_||U.startsWith(`${_}.`)));if(C.length!==0&&(b(U=>C.reduce((_,B)=>pt(_,B),U)),!!e.onValueChange))for(let U of C){let _=ue(U);_&&e.onValueChange({name:a(U),type:_.type,value:void 0})}}let x=(0,Z.useRef)(null);x.current=d=>{if(e.field.advanced?.transient)return;let y=Ce(e.field)?mt(d,e.field.advanced?.transform):d;s(y),e.onValueChange&&e.onValueChange({name:a(e.field.name),type:e.field.type,value:y})};let h=(0,Z.useRef)(null);h.current=d=>{let y=e.field.event?.change;y&&uo(y,({sources:C,states:U,values:_})=>{i(()=>{co(d,C,(B,H)=>{c(Jt(B,e.field.name),H)}),go(d,U,(B,H)=>{let He=B.map(fe=>Jt(fe,e.field.name));w(fe=>H?He.reduce((De,Ct)=>({...De,[Ct]:H}),fe):He.reduce((De,Ct)=>pt(De,Ct),fe));let X=(H?.hidden===!0?He:H===void 0?He.filter(de):[]).filter(fe=>!Ge(fe));X.length>0&&rt(X)})}),po(d,_,(B,H,He)=>{let X=Jt(B,e.field.name);if(n.get(Rt)[X]){Vt(H)&&te(Cn=>({...Cn,[X]:H}));return}let fe=nt(X),De=fe?mt(H,fe):H,wn=n.get(q)[X];if(He.onlyIfTargetEmpty&&!Y(wn)){let Cn=n.get(Jn)[X];if(!Object.is(Cn,wn))return}if(De!==wn){if(lu(X)){D({target:X,value:De});return}Ue(X,De)}})})};let T=(0,Z.useCallback)(d=>{let C=I.safeParse(d).error?.issues.map(B=>B.message)??[],U=e.field.validation?.custom,_=U?xi(d,U,B=>n.get(Ee(B)),f.current):[];N([...C,..._])},[e.field.validation?.custom,I,N,n]),O=(0,Z.useRef)(null);O.current=()=>{let d=n.get(Qn);d?.target===e.field.name&&(D(null),Y(n.get(q)[d.target])&&Ue(d.target,d.value))};let M=(0,Z.useCallback)(d=>{if(!v){let y=d.target.value;e.config.validation.blur&&T(y)}O.current?.()},[v,e.config.validation.blur,T]);return{applyChangeEventsRef:h,commonProps:V,entity:r,hasClickable:v,onBlur:M,onValueChangeRef:x,setTimeoutRef:o,shouldSkipOnChange:l,validated:T,valueRef:p}}var ta=require("fast-equals");var na=require("jotai"),ee=require("react");function ra(e,t){let{name:n}=e,r=(0,ee.useRef)(!1),[o,i]=(0,na.useAtom)(Ee(n)),a=(0,ee.use)(Le),s=(0,ee.useEffectEvent)((c,p=!1)=>{let f=Ce(e)?mt(c,e.advanced?.transform):c;!p&&!(0,ta.deepEqual)(o,f)&&(r.current=!0),i(f)}),l=(0,ee.useEffectEvent)(c=>{let{found:p,value:f}=ht(a(n),c);if(k(f)){s(f);return}if(k(e.defaultValue)){s(e.defaultValue,!0);return}p&&s(f)});(0,ee.useEffect)(()=>{if(t){l(t);return}k(e.defaultValue)&&s(e.defaultValue,!0)},[t,e.defaultValue]);let u=(0,ee.useCallback)(()=>r.current?(r.current=!1,!0):!1,[]);return{setValue:i,shouldSkipOnChange:u,value:o}}var nr=require("react/jsx-runtime");function oa(e){let{useSource:t,useExtraProps:n,getValue:r,shouldSkipChange:o,dispatchChange:i,buildInitialSelected:a,isInitialReady:s}=e.strategies,{setValue:l,shouldSkipOnChange:u,value:c}=ra(e.field,e.value),{data:p,setSource:f,isStaticSource:v}=t(e.field,e.config,c),{applyChangeEventsRef:b,commonProps:w,entity:N,hasClickable:P,onBlur:D,onValueChangeRef:te,setTimeoutRef:I,validated:E,valueRef:V}=ea(e,{setValue:l,shouldSkipOnChange:u,value:c,setSource:f}),{getSchema:ue}=e,ce=n?.(e.field),de=(0,Je.useRef)(!1),{commonPropsWithOptions:Ge,defaultValue:nt}=Ho(e.field,w,p,c,v?e.translations:void 0),Ue=Yo(e.field,nt);(0,Je.useEffect)(()=>{let x=!!e.value||k(e.field.defaultValue);if(de.current||!x)return;if(!e.field.event?.change){de.current=!0;return}let h=e.value?W(e.field.name,e.value):void 0,T=k(h)?h:e.field.defaultValue;if(!k(T)||!s(e.field,T,p))return;de.current=!0;let O=a(T,p,N);queueMicrotask(()=>{let[,M]=ue();M.some(d=>d.name===e.field.name)&&b.current?.(O)})},[b,a,p,N,ue,s,e.field,e.value]);let rt=(0,Je.useCallback)(x=>{let h=r(x,e.field);o({field:e.field,shouldSkipOnChange:u,hasClickable:P,inputValue:h,valueRef:V})||(te.current?.(h),e.config.validation.change&&E(h),e.field.event?.change&&i({applyChangeEventsRef:b,data:p,entity:N,inputValue:h,setTimeoutRef:I}))},[b,p,i,N,r,P,te,e.config.validation.change,e.field,I,o,u,E,V]);return fn(e.config.inputs[e.field.type],x=>(0,nr.jsx)(Hi,{config:e.config,context:e.context,field:e.field,horizontal:e.horizontal,translations:e.translations,children:(0,nr.jsx)(x,{...Ge,...e.ariaAttributes,...e.dataAttributes,...ce,...Ue,onBlur:D,onChange:rt})}))}var ia=require("react/jsx-runtime");function Qe(e){return function(n){return(0,ia.jsx)(oa,{...n,strategies:e})}}function aa(e){let t=J(e)?be(e):null,n=ge(e)?_e(e):null;return{dateFormat:t,timeFormat:n}}var sa=require("jotai");var uu=e=>{let t=Si(e);if(t)return t},cu=e=>e.trim()!=="",la=(0,sa.atom)({}),pn=Ni(la,{merge:uu,validateTarget:cu}),ua=Ii(la);var ca=require("jotai");function yn(e){return{data:null,setSource:(0,ca.useSetAtom)(pn(e.name))}}var da=Qe({useSource:yn,useExtraProps:e=>{let{dateFormat:t,timeFormat:n}=aa(e);return qo(t,n)},getValue:(e,t)=>{let n=e.target.value;if(!g(n))return n;let r=ge(t)?_e(t):null;if(r!==null)return Lo(n,r);let o=J(t)?be(t):null;return o!==null&&Kt(n,o)||n},shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>k(t)});var ya=require("fast-equals");var ga=require("jotai");var fa=Cs(require("swr"),1);function ma(e=null,t,n=!1){let{data:r,error:o}=(0,fa.default)(du(e,t,n),t.fetcher.provider);if(o&&ut.error("Error fetching data source:",o),e){if(Array.isArray(e))return e;if(r)return no(r,e.namespace)}return null}function du(e=null,t,n=!1){if(e&&!Array.isArray(e)&&!n&&e.url&&!Me(e.url)){if(Ri(e.url,t.fetcher.remotePatterns))return e;ut.warn(`URL blocked by remotePatterns: ${e.url}. Check your luna.config.ts`)}return null}function pa(e,t,n){let r=Uo(e,n),[o,i]=(0,ga.useAtom)(pn(e.name)),a=o??r,s=ma(a,t,e.disabled),l=Array.isArray(a);return[s,i,l]}function fu(e,t,n){let[r,o,i]=pa(e,t,n);return{data:r,setSource:o,isStaticSource:i}}function mu(e,t){return oe(e)&&t===""}var ba=Qe({useSource:fu,getValue:e=>e.target.value,shouldSkipChange:({field:e,shouldSkipOnChange:t,hasClickable:n,inputValue:r,valueRef:o})=>mu(e,r)||!n&&t()&&(!r||(0,ya.deepEqual)(r,o.current)),dispatchChange:({applyChangeEventsRef:e,data:t,entity:n,inputValue:r})=>{e.current?.(Pn(r,t,n))},buildInitialSelected:(e,t,n)=>Pn(st(e)?e:String(e),t,n),isInitialReady:(e,t,n)=>(!We(e)||!!n&&n.length>0)&&k(t)});var xa=Qe({useSource:yn,getValue:e=>e.target.value,shouldSkipChange:({shouldSkipOnChange:e,inputValue:t,valueRef:n})=>e()&&t===n.current,dispatchChange:({applyChangeEventsRef:e,inputValue:t,setTimeoutRef:n})=>{n(()=>{e.current?.({value:t})},300)},buildInitialSelected:e=>({value:String(e)}),isInitialReady:(e,t)=>k(t)});var bn=require("react/jsx-runtime");function ha(e){return J(e.field)||ge(e.field)?(0,bn.jsx)(da,{...e}):Ro(e.field)?(0,bn.jsx)(xa,{...e}):(0,bn.jsx)(ba,{...e})}var rr=require("react/jsx-runtime");function Ra(e){return!e.errors||e.errors.length===0?null:(0,rr.jsx)("ul",{className:"text-sm text-red-600 dark:text-red-500",id:e.name?`${e.name}-error`:void 0,children:e.errors?.map((t,n)=>(0,rr.jsx)("li",{children:t},e.name?`${e.name}-error-${n}`:n))})}var va=require("tailwind-merge"),Sa=require("react/jsx-runtime");function xn(e){let t=e.errors&&e.errors.length>0;return(0,Sa.jsx)("div",{"data-slot":"field","data-clickable":e.isClickable?"true":"false",...t&&{[Br]:"true"},...e.disabled&&{[$r]:"true"},"data-orientation":e.orientation,className:(0,va.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 Ta=require("tailwind-merge"),wa=require("react/jsx-runtime");function Aa(e){return(0,wa.jsx)(xn,{...e,orientation:"vertical",className:(0,Ta.twMerge)("gap-3 has-[>[data-slot=field-content]]:items-start",!e.isClickable&&"[&>*]:w-full"),children:e.children})}var Ca=require("tailwind-merge"),Fa=require("react/jsx-runtime");function ka(e){return(0,Fa.jsx)(xn,{...e,orientation:"horizontal",className:(0,Ca.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 or=require("react/jsx-runtime");function Na(e){let t=Gt(e.field),n=K(e.field),r=To(e.field);return e.horizontal?(0,or.jsx)(ka,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children}):(0,or.jsx)(Aa,{disabled:e.disabled,errors:e.errors,isCheckbox:n,isReversed:r,isClickable:t,children:e.children})}function Ia(e){if(!e.field.type)return null;let t=zo(e.field,e.disabled,{lang:e.lang,translations:e.translations}),n=Qo(e.field),r=Jo(e.field,e.errors),o={...e.field,disabled:t.disabled};return e.children({ariaAttributes:r,commonProps:t,dataAttributes:n,field:o,horizontal:e.horizontal})}var Ea=require("tailwind-merge"),et=require("react/jsx-runtime");function La(e){let t=e.field.advanced?.cols,n=e.field.name?e.errors?.[e.field.name]:void 0,{horizontal:r=!1}=en(e.style,{horizontal:So(e.field)}),o=Ao(e.field,e.disabled);return(0,et.jsxs)("div",{className:(0,Ea.twMerge)("flex flex-col gap-3",ri(t)),children:[(0,et.jsx)(Na,{disabled:o,errors:n,field:e.field,horizontal:r,children:(0,et.jsx)(Ia,{disabled:o,errors:n,field:e.field,horizontal:r,lang:e.lang,translations:e.translations,children:e.children})}),(0,et.jsx)(Ra,{errors:n,name:e.field.name})]})}var Va=require("jotai"),Ma=require("react/jsx-runtime");function Pa(e){return(t,n)=>o=>{let i=(0,Va.useAtomValue)(e(o.field.name)),a=n(i,o);return a===null?null:(0,Ma.jsx)(t,{...o,...a})}}var gu=Pa(mn);function Da(e){return gu(e,(t,n)=>({errors:t?{[n.field.name]:t}:void 0}))}var pu=Pa(sn);function Oa(e){return pu(e,(t,n)=>t?.hidden??n.field.hidden??!1?null:{disabled:t?.disabled??n.disabled})}var za=Oa(Da(La));var hn=require("tailwind-merge"),_a=require("react"),S=require("react/jsx-runtime");function Ba(e){let t=e.isMultiField||e.collapsed!=null,[n,r]=(0,_a.useState)(t?!e.collapsed:!0);function o(){e.canRemove&&e.onRemove&&e.onRemove(e.index)}function i(){r(c=>!c)}let a=c=>me(Q(c,e.translations),{index:e.index+1,label:e.label}),s=e.canRemove&&e.onRemove!=null&&(0,S.jsx)("button",{"aria-label":a("Remove {label} item {index}"),className:(0,hn.twMerge)("flex size-6 items-center justify-center rounded text-xl leading-none text-zinc-400","transition-colors duration-150","hover:text-red-500","focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:outline-none","dark:text-zinc-500 dark:hover:text-red-400"),onClick:o,type:"button",children:(0,S.jsx)("span",{"aria-hidden":"true",className:"leading-none",children:"\xD7"})}),l=(0,S.jsxs)("div",{className:"flex min-w-0 flex-col font-medium text-zinc-700 dark:text-zinc-400",children:[(0,S.jsx)("span",{className:"text-base",children:e.previewLabel??(0,S.jsxs)(S.Fragment,{children:[e.label," ",e.index+1]})}),!n&&e.previewTags&&(0,S.jsx)("div",{className:"flex items-center gap-2 overflow-hidden text-xs font-normal text-ellipsis whitespace-nowrap text-zinc-500 dark:text-zinc-500",children:e.previewTags})]}),u=(0,S.jsxs)("div",{className:(0,hn.twMerge)("flex items-center justify-between gap-2",e.isMultiField&&n&&"mb-3"),children:[t?(0,S.jsxs)("div",{className:"flex min-w-0 grow items-center gap-2",children:[(0,S.jsxs)("button",{"aria-expanded":n,"aria-label":a(n?"Collapse {label} {index}":"Expand {label} {index}"),className:(0,hn.twMerge)("group flex grow items-center gap-2 rounded p-1 text-left text-zinc-400","focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:outline-none","dark:text-zinc-500"),onClick:i,type:"button",children:[(0,S.jsx)(Ye,{expanded:n}),l]}),!n&&e.previewBadge&&(0,S.jsx)("div",{className:"ml-auto shrink-0",children:e.previewBadge})]}):l,s]});return e.isMultiField?(0,S.jsxs)("div",{"data-slot":"list-item-card",className:"box-border w-full min-w-0 rounded-lg border border-zinc-100 p-4 dark:border-zinc-900",children:[u,(0,S.jsx)(ot,{visible:n,children:(0,S.jsx)(Ne,{children:e.children})})]}):t?(0,S.jsxs)("div",{className:"box-border flex w-full min-w-0 flex-col gap-2",children:[u,(0,S.jsx)(ot,{visible:n,children:(0,S.jsx)(Ne,{children:e.children})})]}):(0,S.jsxs)("div",{className:"box-border flex w-full min-w-0 items-start gap-2",children:[(0,S.jsx)("div",{className:"flex min-w-0 grow flex-col",children:(0,S.jsx)(Ne,{children:e.children})}),s&&(0,S.jsx)("div",{className:"shrink-0",children:s})]})}var Ga=require("react");var ir=require("tailwind-merge");var $a=require("jotai");function Rn(e,t){return(0,$a.useAtomValue)(Ee(e))??t}var Te=require("react/jsx-runtime");function Ua({className:e,initialValue:t,name:n,options:r,separator:o,staticLabel:i}){let a=Rn(n??"",t);if(i===void 0&&r){let u=(Array.isArray(a)?a:a==null||a===""?[]:[a]).filter(c=>c!=null&&c!=="").map(c=>Zo(c,r));return u.length===0?null:(0,Te.jsx)("div",{className:"flex items-center gap-1.5 overflow-hidden",children:u.map((c,p)=>(0,Te.jsxs)(Ga.Fragment,{children:[(o||p>0)&&(0,Te.jsx)("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),(0,Te.jsx)("span",{"aria-label":c,className:(0,ir.twMerge)("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:c,children:c})]},`${p}:${c}`))})}if(i===void 0&&(Y(a)||m(a)||Array.isArray(a)))return null;let s=i??String(a);return(0,Te.jsxs)("div",{className:"flex items-center gap-1.5 overflow-hidden",children:[o&&(0,Te.jsx)("span",{"aria-hidden":"true",className:"text-xs text-zinc-300 select-none dark:text-zinc-600",children:"\xB7"}),(0,Te.jsx)("span",{"aria-label":s,className:(0,ir.twMerge)("max-w-[150px] overflow-hidden text-xs text-ellipsis whitespace-nowrap",e),title:s,children:s})]})}var Ha=require("jotai"),Ya=require("react");function vn(e,t){let n=(0,Ha.useAtomValue)(q);return(0,Ya.useMemo)(()=>{let r=`${e}.`,o={},i=!1;for(let s in n)s.startsWith(r)&&(o[s.slice(r.length)]=n[s],i=!0);let a=t?W(e,t):void 0;return i?m(a)?{...a,...o}:o:a},[n,e,t])}var Sn=require("react"),ar=require("react/jsx-runtime");function yu(e){return typeof e=="string"?{field:e}:e}function sr({className:e,fields:t,label:n="Preview",lang:r,name:o,previews:i,translations:a,value:s}){let l=(0,Sn.useMemo)(()=>(Array.isArray(i)?i:[i]).map(yu),[i]),u=(0,Sn.useMemo)(()=>t?si(t):void 0,[t]),c=vn(o,s),p=(0,Sn.useMemo)(()=>{let f=[];for(let[v,b]of l.entries()){if(b.when!==void 0&&!Ze(c,b.when))continue;if(b.label!==void 0){f.push({key:b.field??`label:${b.label}:${v}`,staticLabel:F(b.label,a)});continue}if(b.field===void 0)continue;let w=`${o}.${b.field}`,N=s!=null?W(w,s):void 0,P=u?.[b.field],D=P?Ko(P,{lang:r,translations:a}):void 0;f.push({key:`${v}:${b.field}`,initialValue:N,options:D,previewName:w})}return f},[l,c,r,o,s,a,u]);return p.length===0?null:(0,ar.jsx)("div",{"aria-label":n,className:"flex items-center gap-1.5 overflow-hidden",children:p.map((f,v)=>(0,ar.jsx)(Ua,{className:e,initialValue:"initialValue"in f?f.initialValue:void 0,name:"previewName"in f?f.previewName:void 0,options:"options"in f?f.options:void 0,separator:v>0,staticLabel:"staticLabel"in f?f.staticLabel:void 0},f.key))})}var Tn=require("react/jsx-runtime");function qa({children:e,initialValue:t,name:n}){let r=Rn(n,t),i=Y(r)||m(r)||Array.isArray(r)?"":String(r);return(0,Tn.jsx)(Tn.Fragment,{children:e(i)})}var vt=require("react/jsx-runtime");function Ka({canRemove:e,children:t,field:n,index:r,isMultiField:o,itemKey:i,label:a,lang:s,onRemove:l,previewBadge:u,previewLabel:c,previewTags:p,translations:f,value:v}){let b=`${n.name}.${i}`,w=`${a} ${r+1}`,N=vn(b,v);return(0,vt.jsx)(Ba,{canRemove:e,collapsed:n.advanced?.collapsed,index:r,isMultiField:o,label:a,onRemove:l,previewLabel:bu({fallbackLabel:w,liveItemValue:N,name:b,previewLabel:c,translations:f,value:v}),previewBadge:u?(0,vt.jsx)(sr,{className:"bg-primary text-primary-foreground rounded-md px-1.5 py-0.5 leading-none font-bold uppercase",fields:n.fields,lang:s,name:b,previews:u,translations:f,value:v}):void 0,previewTags:p?(0,vt.jsx)(sr,{fields:n.fields,lang:s,name:b,previews:p,translations:f,value:v}):void 0,translations:f,children:t})}function bu({fallbackLabel:e,liveItemValue:t,name:n,previewLabel:r,translations:o,value:i}){if(r===void 0)return;let a=g(r)?{field:r}:r;if(a.when!==void 0&&!Ze(t,a.when))return;if(a.label!==void 0)return F(a.label,o);if(a.field===void 0)return;let s=`${n}.${a.field}`;return(0,vt.jsx)(qa,{initialValue:i?W(s,i):void 0,name:s,children:l=>l||e})}var Xa=require("tailwind-merge");var Za=require("fast-equals");var Ve=require("jotai"),R=require("react");function tt(e,t,n){return`${e}.${t}.${n}`}function xu(e,t){let{initial:n,mounted:r,values:o}=t,i=r[e];if(i)return lr(e,i,t);let a=o[e];if(a!==void 0)return a;if(n)return W(e,n)}function lr(e,{items:t,leafNames:n},r){return t.map(o=>{let i={};for(let a of n)i[a]=xu(tt(e,o,a),r);return i})}function Wa(e,t,n){let{min:r,max:o}=Yn(e),[i,a]=(0,R.useState)(()=>ii(e,t)),s=(0,R.useRef)(i),l=(0,R.useRef)(i.length);s.current=i;let u=(0,Ve.useStore)(),c=(0,Ve.useSetAtom)(q),p=(0,Ve.useSetAtom)(gn),f=(0,R.useRef)(n);f.current=n;let v=(0,R.useRef)(t),b=(0,R.useMemo)(()=>jt(e.fields),[e.fields]),w=(0,R.useMemo)(()=>b.map(x=>x.name),[b]),N=(0,R.useCallback)((x,h)=>{let T=Number(x);return Number.isNaN(T)?!1:Number.isInteger(T)&&h>=0&&String(h)!==x},[]),P=(0,R.use)(Le),D=(0,R.useCallback)(x=>{let h=`${e.name}.`;if(x.startsWith(h)){let T=x.slice(h.length),O=T.indexOf("."),M=O===-1?T:T.slice(0,O),d=Number(M),y=s.current.indexOf(d);N(M,y)&&(x=`${h}${y}${O===-1?"":T.slice(O)}`)}return P(x)},[e.name,N,P]),te=(0,R.useEffectEvent)(()=>{let x=v.current;if(!x)return;let h={...u.get(q)},T=!1;for(let O of i)for(let M of w){let d=tt(e.name,O,M);if(d in h)continue;let y=W(d,x);k(y)&&(h[d]=y,T=!0)}T&&c(h)});(0,R.useEffect)(()=>{te()},[]);let I=(0,R.useCallback)((x,h)=>lr(e.name,{items:x,leafNames:w},{mounted:u.get(Rt),values:h,initial:v.current}),[e.name,w,u]),E=(0,R.useCallback)((x,h)=>{f.current?.({name:D(e.name),value:I(x,h)})},[I,e.name,D]),V=(0,R.useCallback)(()=>{if(s.current.length>=o)return;let x=l.current++,h=[...s.current,x];a(h),E(h,u.get(q))},[E,o,u]),ue=(0,R.useCallback)(x=>{if(s.current.length<=r)return;let h=s.current[x],T=s.current.filter((d,y)=>y!==x),M={...u.get(q)};for(let d of w)delete M[tt(e.name,h,d)];a(T),c(M),E(T,M)},[E,e.name,w,r,c,u]),ce=(0,Ve.useSetAtom)(ji(e.name));(0,R.useEffect)(()=>{ce({items:i,leafNames:w,hidden:e.hidden===!0,keepValue:e.keepValue===!0})},[e.hidden,e.keepValue,i,w,ce]),(0,R.useEffect)(()=>()=>{let x=u.get(q);c({...x,[e.name]:I(s.current,x)}),ce(void 0)},[I,e.name,ce,c,u]);let[de,Ge]=(0,Ve.useAtom)(Wi(e.name)),nt=(0,R.useEffectEvent)(x=>{let h=qn(e,x),T=u.get(q);if((0,Za.deepEqual)(I(s.current,T),h))return;let O=[];for(let y=0;y<h.length;y++)O.push(s.current[y]??l.current++);let M={...T};for(let y of s.current)for(let C of w)delete M[tt(e.name,y,C)];let d={};O.forEach((y,C)=>{let U=h[C];for(let _ of b){let B=U[_.name];if(B===void 0)continue;let H=tt(e.name,y,_.name);M[H]=B,ie(_)&&(d[H]=B)}}),c(M),a(O),Object.keys(d).length>0&&p(y=>({...y,...d})),f.current?.({name:D(e.name),value:h})});(0,R.useEffect)(()=>{de&&(nt(de),Ge(void 0))},[de,Ge]);let Ue=i.length<o,rt=i.length>r;return[i,V,ue,Ue,rt,o,D]}var Ae=require("react/jsx-runtime"),hu="flex h-9 w-full items-center gap-2 rounded-md border border-dashed border-zinc-200 px-4 text-sm font-medium text-zinc-500 transition-none hover:border-zinc-300 hover:text-zinc-800 focus-visible:ring-2 focus-visible:ring-zinc-400 focus-visible:ring-offset-2 focus-visible:outline-none dark:border-zinc-800 dark:text-zinc-400 dark:hover:border-zinc-700 dark:hover:text-zinc-200";function ja(e){let{field:t,lang:n,onValueChange:r,translations:o,value:i,children:a}=e,[s,l,u,c,p,f,v]=Wa(t,i,r),b=F(ai(t),o),w=t.advanced?.action?F(t.advanced.action,o):Q("Add item",o),N=f!==1/0,P=oi(t),{label:D,tags:te,badge:I}=t.advanced?.preview??{};return(0,Ae.jsx)(Le.Provider,{value:v,children:(0,Ae.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[s.map((E,V)=>(0,Ae.jsx)(Ka,{canRemove:p,field:t,index:V,isMultiField:P,itemKey:E,label:b,lang:n,onRemove:u,previewBadge:I,previewLabel:D,previewTags:te,translations:o,value:i,children:a(E)},E)),(0,Ae.jsxs)("button",{"aria-disabled":!c,"aria-label":N?`${w}, ${s.length} of ${f}`:w,className:(0,Xa.twMerge)(hu,N?"justify-between":"justify-center",!c&&"cursor-not-allowed opacity-50 hover:border-zinc-200 hover:text-zinc-500 dark:hover:border-zinc-800 dark:hover:text-zinc-400"),disabled:!c,onClick:l,type:"button",children:[(0,Ae.jsxs)("span",{className:"flex items-center gap-2",children:[(0,Ae.jsx)("span",{"aria-hidden":"true",className:"text-base leading-none",children:"+"}),w]}),N&&(0,Ae.jsxs)("span",{"aria-hidden":"true",className:"text-zinc-400 tabular-nums dark:text-zinc-500",children:[s.length," / ",f]})]})]})})}var Qa=require("react/jsx-runtime");function Ja(e){let t=Array.isArray(e.field.fields)&&e.field.fields.length===0,n=ae(e.field.label,e.translations),r=ae(e.field.description,e.translations);return(0,Qa.jsx)(nn,{description:r,empty:t,id:e.field.name,title:n,children:e.children})}var St=require("react/jsx-runtime");function es({children:e,field:t,lang:n,onValueChange:r,translations:o,value:i}){let a=(0,St.jsx)(Ja,{field:t,translations:o,children:(0,St.jsx)(ja,{field:t,lang:n,onValueChange:r,translations:o,value:i,children:e})});return(0,St.jsx)(ln,{container:t,fields:t.fields,children:t.keepValue?(0,St.jsx)(qe,{value:!0,children:a}):a})}var ts=require("tailwind-merge");var Tt=require("react/jsx-runtime");function ns(e){let t=ni(e.column?.advanced?.cols);return(0,Tt.jsxs)("div",{className:"flex w-full flex-col gap-4",children:[(0,Tt.jsx)("div",{"data-slot":"column",className:(0,ts.twMerge)("grid grid-cols-1 gap-3 sm:gap-4",t),children:e.children}),e.column?.description&&(0,Tt.jsx)(un,{config:e.config,context:e.context,text:e.column.description,translations:e.translations})]})}var is=require("react");var os=require("react/jsx-runtime");function rs(e){let t=Array.isArray(e.field.fields)?e.field.fields.map(n=>Ut(n)||ie(n)?{...n,name:`${e.field.name}.${e.index}.${n.name}`}:ye(n)?{...n,fields:n.fields.map(r=>({...r,name:`${e.field.name}.${e.index}.${r.name}`}))}:n):[];return(0,os.jsx)(At,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,fields:t,lang:e.lang,onValueChange:e.onValueChange,style:e.style,translations:e.translations,value:e.value,children:e.children})}var Pe=require("react/jsx-runtime");function At(e){let{field:t,list:n}=e.components;return Xt(e.fields).map((r,o)=>(0,Pe.jsxs)(is.Fragment,{children:[ye(r)&&(0,Pe.jsx)(ns,{column:r,config:e.config,context:e.context,translations:e.translations,children:(0,Pe.jsx)(At,{...e,fields:r.fields})}),Ut(r)&&(0,Pe.jsx)(t,{disabled:e.disabled,field:r,lang:e.lang,style:e.style,translations:e.translations,children:e.children}),ie(r)&&(0,Pe.jsx)(n,{field:r,lang:e.lang,onValueChange:e.onValueChange,translations:e.translations,value:e.value,children:i=>(0,Pe.jsx)(rs,{components:e.components,config:e.config,context:e.context,disabled:e.disabled,field:r,index:i,lang:e.lang,onValueChange:e.onValueChange,style:e.style,translations:e.translations,value:e.value,children:e.children})})]},o))}var ss=require("react/jsx-runtime");function as(e){return n=>(0,ss.jsx)(At,{...n,components:e})}var ls=as({field:za,list:es});var cr=require("jotai");var wt=require("react");function cs(e,t,n){let{onSuccess:r,preserveValues:o=!1,validation:i=!0,translations:a}=n??{},s=(0,cr.useSetAtom)(Ki),l=(0,cr.useSetAtom)(zi),u={data:null,error:null,success:!1},[c,p,f]=(0,wt.useActionState)(async(v,b)=>{let[w,N]=e(),P=fi(w,N,a);if(i===!1)return t?await t(b,P):v;let D=oo(b),te=vu(D,N),I=P.safeParse(te);if(!I.success){let V=mi(I.error);return(0,wt.startTransition)(()=>{s(V)}),ur(D,{description:Q("Please correct the errors and try again.",a),details:[],title:Q("There were validation errors submitting the form.",a)})}let E=io(I.data);if(t)try{let V=await t(E,P);return V.success?(r?.(V.data),o||(0,wt.startTransition)(()=>{l()}),us(E,o)):ur(E,V.error)}catch(V){return ut.error("Error executing form action:",V),ur(E,{title:Q("An unexpected error occurred submitting the form.",a),details:Ru(V,a)})}return us(I.data,o)},u);return[p,c,f]}function Ru(e,t){return e instanceof Error?[e.message]:[Q("Unknown error",t)]}function us(e,t=!1){return{data:t?e:null,error:null,success:!0}}function ur(e,t){return{data:e,error:t,success:!1}}function vu(e,t){let n={...e};for(let r of t)if(J(r)&&typeof n[r.name]=="string"&&n[r.name]){let o=qt(n[r.name],be(r));o&&(n[r.name]=o)}return n}var gs=require("react");var $e=require("react");var ds=require("react"),An=require("jotai");function fs(){let e=(0,An.useSetAtom)(qi),t=(0,An.useSetAtom)(_i),n=(0,An.useSetAtom)(ua);return(0,ds.useCallback)((r,o)=>{let i=Array.isArray(r)?r:[r];e(i),n(i),o?.keepValue||t(i)},[e,n,t])}function ms(){let e=fs(),t=(0,$e.useRef)({}),n=(0,$e.useRef)([]),r=(0,$e.useCallback)((a,s,l)=>{a in t.current||(t.current[a]=s,n.current.push(l))},[]),o=(0,$e.useCallback)((a,s)=>{t.current[a]&&(delete t.current[a],n.current=n.current.filter(l=>l.name!==a),e([a],{keepValue:s?.keepValue}))},[e]);return[(0,$e.useCallback)(()=>[t.current,n.current],[]),r,o]}var le=require("react/jsx-runtime");function ps(e){let t=(0,gs.useMemo)(()=>Po(e.lang,e.translations),[e.lang,e.translations]),[n,r,o]=ms(),[i,a,s]=cs(n,e.action,{onSuccess:e.onSuccess,validation:e.config.validation.submit,translations:t}),l=e.config.validation.showError&&!a.success&&a.error,u=a.data??e.value;return(0,le.jsxs)(le.Fragment,{children:[l&&fn(e.config.alert,c=>(0,le.jsx)("div",{className:"mb-4 w-full",children:(0,le.jsx)(c,{description:a.error?.description,details:a.error?.details,title:a.error.title})})),(0,le.jsx)(Pi,{action:i,advanced:e.advanced,config:e.config,control:e.children,definition:e.definition,isPending:s,noValidate:!0,readOnly:e.readOnly,sections:e.sections,translations:t,children:({disabled:c,fields:p})=>(0,le.jsx)(ls,{config:e.config,context:e.context,disabled:c,fields:p,lang:e.lang,onValueChange:e.onValueChange,style:e.config.style,translations:t,value:u,children:f=>(0,le.jsx)(ha,{...f,config:e.config,context:e.context,getSchema:n,onMount:r,onUnmount:o,onValueChange:e.onValueChange,translations:t,value:u})})})]})}var ys=require("jotai"),dr=require("react/jsx-runtime");function bs(e){return(0,dr.jsx)(ys.Provider,{children:(0,dr.jsx)(ps,{...e})})}function xs(e,t){for(let n of e){if("name"in n&&typeof n.name=="string"){t.push(n.name);continue}"fields"in n&&xs(n.fields??[],t)}}function hs(e,t){let n=[];for(let o of e)xs(o.fields??[],n);let r=t;for(let o of n)ht(o,t).found||(r===t&&(r={...t}),r[o]=void 0);return r}
|