jsonresume-theme-cjean 1.0.0
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.
Potentially problematic release.
This version of jsonresume-theme-cjean might be problematic. Click here for more details.
- package/LICENSE +21 -0
- package/README.md +159 -0
- package/dist/index.cjs +20 -0
- package/dist/index.html +18 -0
- package/dist/index.js +1885 -0
- package/package.json +55 -0
package/dist/index.js
ADDED
|
@@ -0,0 +1,1885 @@
|
|
|
1
|
+
var Ne = /* @__PURE__ */ new Map([["&", "&"], ["<", "<"], [">", ">"], ['"', """], ["'", "'"]]), Oe = /* @__PURE__ */ new Set(["href", "src", "action", "formaction", "cite", "poster", "icon", "data"]), Ce = /[&<>]/g, Te = /[&<>"]/g, Ee = new RegExp("\\p{C}", "gu"), Le = /^[^\s"'>/=]+$/u, Ie = /^(?:java|vb)script:/i, Ae = /^data:(?!image\/)/i, me = (e) => e.replace(Ee, ""), O = (e, t = "content") => {
|
|
2
|
+
let r = t === "attr" ? Te : Ce;
|
|
3
|
+
return e.replaceAll(r, (n) => Ne.get(n) ?? n);
|
|
4
|
+
}, Re = (e) => {
|
|
5
|
+
let t = me(e).trim();
|
|
6
|
+
return t ? !(Ie.test(t) || Ae.test(t)) : !0;
|
|
7
|
+
}, De = (e) => Le.test(e), Fe = /* @__PURE__ */ new Set(["area", "base", "br", "col", "embed", "hr", "img", "input", "link", "meta", "param", "source", "track", "wbr"]), Ue = /[A-Z]/g, Be = /* @__PURE__ */ new Set(["children", "dangerouslySetInnerHTML", "key", "ref"]), we = (e) => {
|
|
8
|
+
if (e instanceof Promise) return !0;
|
|
9
|
+
if (Array.isArray(e)) {
|
|
10
|
+
for (let t = 0; t < e.length; t++) if (we(e[t])) return !0;
|
|
11
|
+
}
|
|
12
|
+
return !1;
|
|
13
|
+
};
|
|
14
|
+
class z {
|
|
15
|
+
value;
|
|
16
|
+
constructor(t) {
|
|
17
|
+
this.value = t;
|
|
18
|
+
}
|
|
19
|
+
toString() {
|
|
20
|
+
return this.value;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
function Ve(e) {
|
|
24
|
+
if (!e) return "";
|
|
25
|
+
let t = Object.keys(e);
|
|
26
|
+
for (let r = 0; r < t.length; r++) {
|
|
27
|
+
let n = t[r];
|
|
28
|
+
if (n && we(e[n])) return Promise.all(t.map(async (a) => [a, await e[a]])).then((a) => ae(Object.fromEntries(a)));
|
|
29
|
+
}
|
|
30
|
+
return ae(e);
|
|
31
|
+
}
|
|
32
|
+
function ae(e) {
|
|
33
|
+
let t = "", r = /* @__PURE__ */ new Set(), n = Object.keys(e);
|
|
34
|
+
for (let a = 0; a < n.length; a++) {
|
|
35
|
+
let o = n[a];
|
|
36
|
+
if (!o) continue;
|
|
37
|
+
let i = e[o];
|
|
38
|
+
if (Be.has(o) || i === !1 || i == null) continue;
|
|
39
|
+
if (o === "class" || o === "className") {
|
|
40
|
+
if (typeof i == "string")
|
|
41
|
+
for (let l of i.split(/\s+/)) l && r.add(l);
|
|
42
|
+
continue;
|
|
43
|
+
}
|
|
44
|
+
let s = o.length > 20 || !/^[a-z]+$/.test(o) ? me(o.toLowerCase()) : o;
|
|
45
|
+
if (De(s))
|
|
46
|
+
if (s === "style") {
|
|
47
|
+
let l = typeof i == "object" ? We(i) : String(i);
|
|
48
|
+
t += ` style="${O(l, "attr")}"`;
|
|
49
|
+
} else if (i === !0) t += ` ${s}`;
|
|
50
|
+
else {
|
|
51
|
+
let l = String(i);
|
|
52
|
+
Oe.has(s) && !Re(l) && (l = "#blocked"), t += ` ${s}="${O(l, "attr")}"`;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return r.size > 0 && (t = ` class="${O([...r].join(" "), "attr")}"` + t), t;
|
|
56
|
+
}
|
|
57
|
+
function We(e) {
|
|
58
|
+
let t = [];
|
|
59
|
+
for (let [r, n] of Object.entries(e)) {
|
|
60
|
+
if (n == null) continue;
|
|
61
|
+
let a = r.startsWith("--") ? r : r.replace(Ue, "-$&").toLowerCase();
|
|
62
|
+
t.push(`${a}:${n}`);
|
|
63
|
+
}
|
|
64
|
+
return t.join(";");
|
|
65
|
+
}
|
|
66
|
+
function X(e) {
|
|
67
|
+
if (e == null || e === !0 || e === !1) return "";
|
|
68
|
+
if (e instanceof z) return e;
|
|
69
|
+
if (e instanceof Promise) return e.then(X).then((t) => t instanceof z ? t : new z(O(String(t))));
|
|
70
|
+
if (Array.isArray(e)) {
|
|
71
|
+
let t = e.length, r = Array(t), n = !1;
|
|
72
|
+
for (let a = 0; a < t; a++) {
|
|
73
|
+
let o = X(e[a]);
|
|
74
|
+
r[a] = o, o instanceof Promise && (n = !0);
|
|
75
|
+
}
|
|
76
|
+
if (!n) {
|
|
77
|
+
let a = "";
|
|
78
|
+
for (let o = 0; o < t; o++) {
|
|
79
|
+
let i = r[o];
|
|
80
|
+
a += i instanceof z ? i.value : O(String(i));
|
|
81
|
+
}
|
|
82
|
+
return new z(a);
|
|
83
|
+
}
|
|
84
|
+
return Promise.all(r).then((a) => {
|
|
85
|
+
let o = "";
|
|
86
|
+
for (let i = 0; i < a.length; i++) {
|
|
87
|
+
let s = a[i];
|
|
88
|
+
o += s instanceof z ? s.value : O(String(s));
|
|
89
|
+
}
|
|
90
|
+
return new z(o);
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
return String(e);
|
|
94
|
+
}
|
|
95
|
+
function He(e, t, r) {
|
|
96
|
+
let n = Ve(t), a = t.dangerouslySetInnerHTML ? new z(t.dangerouslySetInnerHTML.__html) : X(r);
|
|
97
|
+
return n instanceof Promise || a instanceof Promise ? Promise.all([n, a]).then(([o, i]) => oe(e, o, i)) : oe(e, n, a);
|
|
98
|
+
}
|
|
99
|
+
function oe(e, t, r) {
|
|
100
|
+
if (Fe.has(e)) return new z(`<${e}${t}>`);
|
|
101
|
+
let n = r instanceof z ? r.value : O(String(r));
|
|
102
|
+
return new z(`<${e}${t}>${n}</${e}>`);
|
|
103
|
+
}
|
|
104
|
+
function c(e, t, r) {
|
|
105
|
+
let n = t || {}, a = n.children, o = Array.isArray(a) ? a : a !== void 0 ? [a] : [];
|
|
106
|
+
return typeof e == "function" ? e(n) : He(e, n, o);
|
|
107
|
+
}
|
|
108
|
+
var m = c;
|
|
109
|
+
function q({ children: e }) {
|
|
110
|
+
return e;
|
|
111
|
+
}
|
|
112
|
+
function Je(e, t = {}) {
|
|
113
|
+
return e.replace(/\{([\w-]+?)\}/g, (r, n) => {
|
|
114
|
+
let a = t[n];
|
|
115
|
+
return a !== void 0 ? String(a) : r;
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
function be(e, t) {
|
|
119
|
+
return (r, ...n) => {
|
|
120
|
+
let a = e[r] ?? r, o = n[0] || {};
|
|
121
|
+
return n.length === 0 ? a : Je(a, o);
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
function Ye() {
|
|
125
|
+
return (e) => e;
|
|
126
|
+
}
|
|
127
|
+
const qe = {
|
|
128
|
+
work_experience: "Work Experience",
|
|
129
|
+
education: "Education",
|
|
130
|
+
skills: "Skills",
|
|
131
|
+
present: "Present",
|
|
132
|
+
contact_info: "Contact Information",
|
|
133
|
+
phone_call: "Call mobile phone",
|
|
134
|
+
email_send: "Send email",
|
|
135
|
+
show_address: "Show address",
|
|
136
|
+
portrait_alt: "Portrait of {name}",
|
|
137
|
+
last_modified: "Last updated on {date}",
|
|
138
|
+
profile_page_name: "{name}'s resume - {label}",
|
|
139
|
+
theme_credit: "Theme made with love by {link}"
|
|
140
|
+
}, Ke = Ye()({
|
|
141
|
+
work_experience: "Expériences professionnelles",
|
|
142
|
+
education: "Formations",
|
|
143
|
+
skills: "Compétences",
|
|
144
|
+
present: "Présent",
|
|
145
|
+
contact_info: "Informations de contact",
|
|
146
|
+
phone_call: "Appeler sur le téléphone mobile",
|
|
147
|
+
email_send: "Envoyer un email",
|
|
148
|
+
show_address: "Afficher l'adresse",
|
|
149
|
+
portrait_alt: "Portrait de {name}",
|
|
150
|
+
last_modified: "Dernière mise à jour le {date}",
|
|
151
|
+
profile_page_name: "CV de {name} - {label}",
|
|
152
|
+
theme_credit: "Thème proposé avec amour par {link}"
|
|
153
|
+
}), ve = {
|
|
154
|
+
en: qe,
|
|
155
|
+
fr: Ke
|
|
156
|
+
};
|
|
157
|
+
let W, H = "en";
|
|
158
|
+
const Z = (e, ...t) => (W || (W = be(
|
|
159
|
+
ve[H]
|
|
160
|
+
)), W(e, ...t)), ie = (e, ...t) => new z(Z(e, ...t));
|
|
161
|
+
function Ge(e) {
|
|
162
|
+
H = e, W = be(ve[e]);
|
|
163
|
+
}
|
|
164
|
+
const C = {
|
|
165
|
+
normalize(e) {
|
|
166
|
+
const t = typeof e == "string" ? new Date(e) : e;
|
|
167
|
+
return isNaN(t.getTime()) ? null : t;
|
|
168
|
+
},
|
|
169
|
+
format(e, t) {
|
|
170
|
+
const r = this.normalize(e);
|
|
171
|
+
if (!r) return "";
|
|
172
|
+
const n = typeof H < "u" ? H : "fr-FR";
|
|
173
|
+
switch (t) {
|
|
174
|
+
case "month":
|
|
175
|
+
return new Intl.DateTimeFormat(n, {
|
|
176
|
+
month: "long",
|
|
177
|
+
year: "numeric"
|
|
178
|
+
}).format(r);
|
|
179
|
+
case "year":
|
|
180
|
+
return r.getFullYear().toString();
|
|
181
|
+
case "date":
|
|
182
|
+
return new Intl.DateTimeFormat(n, {
|
|
183
|
+
day: "numeric",
|
|
184
|
+
month: "numeric",
|
|
185
|
+
year: "numeric"
|
|
186
|
+
}).format(r);
|
|
187
|
+
case "iso":
|
|
188
|
+
return r.toISOString();
|
|
189
|
+
default:
|
|
190
|
+
throw new Error(`Unhandled date format: ${t}`);
|
|
191
|
+
}
|
|
192
|
+
},
|
|
193
|
+
toISO(e) {
|
|
194
|
+
return this.normalize(e)?.toISOString() ?? "";
|
|
195
|
+
}
|
|
196
|
+
};
|
|
197
|
+
class Qe {
|
|
198
|
+
seed;
|
|
199
|
+
constructor(t) {
|
|
200
|
+
this.seed = t;
|
|
201
|
+
}
|
|
202
|
+
next() {
|
|
203
|
+
return this.seed = this.seed * 16807 % 2147483647, (this.seed - 1) / 2147483646;
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
function Xe(e = {}) {
|
|
207
|
+
const {
|
|
208
|
+
width: t = 900,
|
|
209
|
+
height: r = 300,
|
|
210
|
+
cellSize: n = 50,
|
|
211
|
+
variance: a = 0.75,
|
|
212
|
+
seed: o = 1
|
|
213
|
+
} = e, i = new Qe(o), s = [], l = Math.ceil(t / n) + 2, d = Math.ceil(r / n) + 2;
|
|
214
|
+
for (let g = 0; g < d; g++) {
|
|
215
|
+
const b = [];
|
|
216
|
+
for (let y = 0; y < l; y++) {
|
|
217
|
+
const S = (y - 0.5) * n + (i.next() - 0.5) * n * a, M = (g - 0.5) * n + (i.next() - 0.5) * n * a;
|
|
218
|
+
b.push({ x: Math.round(S * 10) / 10, y: Math.round(M * 10) / 10 });
|
|
219
|
+
}
|
|
220
|
+
s.push(b);
|
|
221
|
+
}
|
|
222
|
+
let p = "";
|
|
223
|
+
for (let g = 0; g < d - 1; g++)
|
|
224
|
+
for (let b = 0; b < l - 1; b++) {
|
|
225
|
+
const y = s[g][b], S = s[g][b + 1], M = s[g + 1][b], Q = s[g + 1][b + 1];
|
|
226
|
+
p += se(y, S, M, i.next()), p += se(S, Q, M, i.next());
|
|
227
|
+
}
|
|
228
|
+
const w = `<svg xmlns="http://www.w3.org/2000/svg" width="${t}" height="${r}" viewBox="0 0 ${t} ${r}" preserveAspectRatio="xMidYMid slice">
|
|
229
|
+
<g fill-rule="evenodd">${p}</g>
|
|
230
|
+
</svg>`;
|
|
231
|
+
return `data:image/svg+xml;base64,${btoa(w)}`;
|
|
232
|
+
}
|
|
233
|
+
function se(e, t, r, n) {
|
|
234
|
+
const a = n > 0.5, o = (Math.round(n * 100) / 1e3).toFixed(3), i = a ? "0,0,0" : "255,255,255";
|
|
235
|
+
return `<path d="M${e.x},${e.y}L${t.x},${t.y}L${r.x},${r.y}Z" fill="rgba(${i},${o})"/>`;
|
|
236
|
+
}
|
|
237
|
+
function et({
|
|
238
|
+
name: e,
|
|
239
|
+
label: t,
|
|
240
|
+
children: r,
|
|
241
|
+
...n
|
|
242
|
+
}) {
|
|
243
|
+
return /* @__PURE__ */ m("header", { className: "flex-1 grow pr-14 md:pr-0", ...n, children: [
|
|
244
|
+
/* @__PURE__ */ c("h1", { className: "text-primary kerning-none inline-block text-4xl font-bold tracking-widest uppercase", children: e }),
|
|
245
|
+
t && /* @__PURE__ */ c("p", { className: "text-3xl", children: t }),
|
|
246
|
+
r
|
|
247
|
+
] });
|
|
248
|
+
}
|
|
249
|
+
const tt = async (e, t = {}) => {
|
|
250
|
+
const r = new URL(`https://api.iconify.design/${e}.svg`);
|
|
251
|
+
for (const [a, o] of Object.entries(t))
|
|
252
|
+
o && r.searchParams.set(a, o.toString());
|
|
253
|
+
const n = await fetch(r);
|
|
254
|
+
if (!n.ok)
|
|
255
|
+
throw new Error(`Failed to fetch icon ${e}`);
|
|
256
|
+
return n.text();
|
|
257
|
+
}, T = async (e, t = 24) => {
|
|
258
|
+
const r = await tt(e, {
|
|
259
|
+
height: t
|
|
260
|
+
});
|
|
261
|
+
return new z(r);
|
|
262
|
+
};
|
|
263
|
+
function rt(e) {
|
|
264
|
+
return `https://www.google.com/maps/search/?api=1&query=${encodeURIComponent(e)}`;
|
|
265
|
+
}
|
|
266
|
+
function ce(e) {
|
|
267
|
+
try {
|
|
268
|
+
return T(`tabler:brand-${e.toLowerCase()}`);
|
|
269
|
+
} catch {
|
|
270
|
+
return T("tabler:link");
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
const D = ({ children: e, ...t }) => /* @__PURE__ */ c("li", { className: "inline-flex items-center gap-x-1", ...t, children: e });
|
|
274
|
+
function nt({
|
|
275
|
+
basics: e,
|
|
276
|
+
themeConfig: t
|
|
277
|
+
}) {
|
|
278
|
+
const { phone: r, email: n, location: a, profiles: o = [] } = e, { contactLinks: i = ["phone", "email", "location", "profiles"] } = t.ui, s = /* @__PURE__ */ new Set(), l = (d) => {
|
|
279
|
+
const p = d.toLowerCase();
|
|
280
|
+
if (p === "phone" && r)
|
|
281
|
+
return /* @__PURE__ */ m(D, { children: [
|
|
282
|
+
T("tabler:phone"),
|
|
283
|
+
/* @__PURE__ */ c("a", { href: `tel:${encodeURIComponent(r)}`, title: Z("phone_call"), children: r })
|
|
284
|
+
] });
|
|
285
|
+
if (p === "email" && n)
|
|
286
|
+
return /* @__PURE__ */ m(D, { children: [
|
|
287
|
+
T("tabler:mail"),
|
|
288
|
+
/* @__PURE__ */ c("a", { href: `mailto:${n}`, title: Z("email_send"), children: n })
|
|
289
|
+
] });
|
|
290
|
+
if (p === "location" && a)
|
|
291
|
+
return /* @__PURE__ */ m(D, { children: [
|
|
292
|
+
T("tabler:map-pin"),
|
|
293
|
+
/* @__PURE__ */ m(
|
|
294
|
+
"a",
|
|
295
|
+
{
|
|
296
|
+
href: rt(
|
|
297
|
+
`${a.city}, ${a.region}, ${a.postalCode || ""}, ${a.countryCode}`
|
|
298
|
+
),
|
|
299
|
+
title: Z("show_address"),
|
|
300
|
+
target: "_blank",
|
|
301
|
+
rel: "noopener noreferrer",
|
|
302
|
+
referrerPolicy: "no-referrer",
|
|
303
|
+
children: [
|
|
304
|
+
a.city,
|
|
305
|
+
", ",
|
|
306
|
+
a.countryCode
|
|
307
|
+
]
|
|
308
|
+
}
|
|
309
|
+
)
|
|
310
|
+
] });
|
|
311
|
+
if (p === "profiles")
|
|
312
|
+
return o.filter((g) => !s.has(g.network.toLowerCase())).map((g) => (s.add(g.network.toLowerCase()), /* @__PURE__ */ m(D, { children: [
|
|
313
|
+
ce(g.network),
|
|
314
|
+
/* @__PURE__ */ c(
|
|
315
|
+
"a",
|
|
316
|
+
{
|
|
317
|
+
href: g.url,
|
|
318
|
+
rel: "me noopener noreferrer",
|
|
319
|
+
title: g.username,
|
|
320
|
+
target: "_blank",
|
|
321
|
+
referrerPolicy: "no-referrer",
|
|
322
|
+
children: g.network
|
|
323
|
+
}
|
|
324
|
+
)
|
|
325
|
+
] }, g.network)));
|
|
326
|
+
const w = o.find((g) => g.network.toLowerCase() === p);
|
|
327
|
+
return w && !s.has(p) ? (s.add(p), /* @__PURE__ */ m(D, { children: [
|
|
328
|
+
ce(w.network),
|
|
329
|
+
/* @__PURE__ */ c(
|
|
330
|
+
"a",
|
|
331
|
+
{
|
|
332
|
+
href: w.url,
|
|
333
|
+
rel: "me noopener noreferrer",
|
|
334
|
+
title: w.username,
|
|
335
|
+
target: "_blank",
|
|
336
|
+
referrerPolicy: "no-referrer",
|
|
337
|
+
children: w.network
|
|
338
|
+
}
|
|
339
|
+
)
|
|
340
|
+
] }, w.network)) : null;
|
|
341
|
+
};
|
|
342
|
+
return /* @__PURE__ */ c(
|
|
343
|
+
"ul",
|
|
344
|
+
{
|
|
345
|
+
className: "my-3 inline-flex flex-wrap gap-x-[2ch] gap-y-2",
|
|
346
|
+
"aria-label": Z("contact_info"),
|
|
347
|
+
children: i.map(l)
|
|
348
|
+
}
|
|
349
|
+
);
|
|
350
|
+
}
|
|
351
|
+
function f(e, t, r) {
|
|
352
|
+
function n(s, l) {
|
|
353
|
+
if (s._zod || Object.defineProperty(s, "_zod", {
|
|
354
|
+
value: {
|
|
355
|
+
def: l,
|
|
356
|
+
constr: i,
|
|
357
|
+
traits: /* @__PURE__ */ new Set()
|
|
358
|
+
},
|
|
359
|
+
enumerable: !1
|
|
360
|
+
}), s._zod.traits.has(e))
|
|
361
|
+
return;
|
|
362
|
+
s._zod.traits.add(e), t(s, l);
|
|
363
|
+
const d = i.prototype, p = Object.keys(d);
|
|
364
|
+
for (let w = 0; w < p.length; w++) {
|
|
365
|
+
const g = p[w];
|
|
366
|
+
g in s || (s[g] = d[g].bind(s));
|
|
367
|
+
}
|
|
368
|
+
}
|
|
369
|
+
const a = r?.Parent ?? Object;
|
|
370
|
+
class o extends a {
|
|
371
|
+
}
|
|
372
|
+
Object.defineProperty(o, "name", { value: e });
|
|
373
|
+
function i(s) {
|
|
374
|
+
var l;
|
|
375
|
+
const d = r?.Parent ? new o() : this;
|
|
376
|
+
n(d, s), (l = d._zod).deferred ?? (l.deferred = []);
|
|
377
|
+
for (const p of d._zod.deferred)
|
|
378
|
+
p();
|
|
379
|
+
return d;
|
|
380
|
+
}
|
|
381
|
+
return Object.defineProperty(i, "init", { value: n }), Object.defineProperty(i, Symbol.hasInstance, {
|
|
382
|
+
value: (s) => r?.Parent && s instanceof r.Parent ? !0 : s?._zod?.traits?.has(e)
|
|
383
|
+
}), Object.defineProperty(i, "name", { value: e }), i;
|
|
384
|
+
}
|
|
385
|
+
class E extends Error {
|
|
386
|
+
constructor() {
|
|
387
|
+
super("Encountered Promise during synchronous parse. Use .parseAsync() instead.");
|
|
388
|
+
}
|
|
389
|
+
}
|
|
390
|
+
class at extends Error {
|
|
391
|
+
constructor(t) {
|
|
392
|
+
super(`Encountered unidirectional transform during encode: ${t}`), this.name = "ZodEncodeError";
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
const ot = {};
|
|
396
|
+
function L(e) {
|
|
397
|
+
return ot;
|
|
398
|
+
}
|
|
399
|
+
function it(e) {
|
|
400
|
+
const t = Object.values(e).filter((n) => typeof n == "number");
|
|
401
|
+
return Object.entries(e).filter(([n, a]) => t.indexOf(+n) === -1).map(([n, a]) => a);
|
|
402
|
+
}
|
|
403
|
+
function st(e, t) {
|
|
404
|
+
return typeof t == "bigint" ? t.toString() : t;
|
|
405
|
+
}
|
|
406
|
+
function ct(e) {
|
|
407
|
+
return {
|
|
408
|
+
get value() {
|
|
409
|
+
{
|
|
410
|
+
const t = e();
|
|
411
|
+
return Object.defineProperty(this, "value", { value: t }), t;
|
|
412
|
+
}
|
|
413
|
+
}
|
|
414
|
+
};
|
|
415
|
+
}
|
|
416
|
+
function lt(e) {
|
|
417
|
+
return e == null;
|
|
418
|
+
}
|
|
419
|
+
function dt(e) {
|
|
420
|
+
const t = e.startsWith("^") ? 1 : 0, r = e.endsWith("$") ? e.length - 1 : e.length;
|
|
421
|
+
return e.slice(t, r);
|
|
422
|
+
}
|
|
423
|
+
const le = /* @__PURE__ */ Symbol("evaluating");
|
|
424
|
+
function k(e, t, r) {
|
|
425
|
+
let n;
|
|
426
|
+
Object.defineProperty(e, t, {
|
|
427
|
+
get() {
|
|
428
|
+
if (n !== le)
|
|
429
|
+
return n === void 0 && (n = le, n = r()), n;
|
|
430
|
+
},
|
|
431
|
+
set(a) {
|
|
432
|
+
Object.defineProperty(e, t, {
|
|
433
|
+
value: a
|
|
434
|
+
// configurable: true,
|
|
435
|
+
});
|
|
436
|
+
},
|
|
437
|
+
configurable: !0
|
|
438
|
+
});
|
|
439
|
+
}
|
|
440
|
+
const ye = "captureStackTrace" in Error ? Error.captureStackTrace : (...e) => {
|
|
441
|
+
};
|
|
442
|
+
function ee(e) {
|
|
443
|
+
return typeof e == "object" && e !== null && !Array.isArray(e);
|
|
444
|
+
}
|
|
445
|
+
function ut(e) {
|
|
446
|
+
if (ee(e) === !1)
|
|
447
|
+
return !1;
|
|
448
|
+
const t = e.constructor;
|
|
449
|
+
if (t === void 0 || typeof t != "function")
|
|
450
|
+
return !0;
|
|
451
|
+
const r = t.prototype;
|
|
452
|
+
return !(ee(r) === !1 || Object.prototype.hasOwnProperty.call(r, "isPrototypeOf") === !1);
|
|
453
|
+
}
|
|
454
|
+
function xe(e) {
|
|
455
|
+
return ut(e) ? { ...e } : Array.isArray(e) ? [...e] : e;
|
|
456
|
+
}
|
|
457
|
+
const pt = /* @__PURE__ */ new Set(["string", "number", "symbol"]);
|
|
458
|
+
function ht(e) {
|
|
459
|
+
return e.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
460
|
+
}
|
|
461
|
+
function ft(e, t, r) {
|
|
462
|
+
const n = new e._zod.constr(t ?? e._zod.def);
|
|
463
|
+
return (!t || r?.parent) && (n._zod.parent = e), n;
|
|
464
|
+
}
|
|
465
|
+
function $(e) {
|
|
466
|
+
const t = e;
|
|
467
|
+
if (!t)
|
|
468
|
+
return {};
|
|
469
|
+
if (typeof t == "string")
|
|
470
|
+
return { error: () => t };
|
|
471
|
+
if (t?.message !== void 0) {
|
|
472
|
+
if (t?.error !== void 0)
|
|
473
|
+
throw new Error("Cannot specify both `message` and `error` params");
|
|
474
|
+
t.error = t.message;
|
|
475
|
+
}
|
|
476
|
+
return delete t.message, typeof t.error == "string" ? { ...t, error: () => t.error } : t;
|
|
477
|
+
}
|
|
478
|
+
function gt(e) {
|
|
479
|
+
return Object.keys(e).filter((t) => e[t]._zod.optin === "optional" && e[t]._zod.optout === "optional");
|
|
480
|
+
}
|
|
481
|
+
function U(e, t = 0) {
|
|
482
|
+
if (e.aborted === !0)
|
|
483
|
+
return !0;
|
|
484
|
+
for (let r = t; r < e.issues.length; r++)
|
|
485
|
+
if (e.issues[r]?.continue !== !0)
|
|
486
|
+
return !0;
|
|
487
|
+
return !1;
|
|
488
|
+
}
|
|
489
|
+
function ke(e, t) {
|
|
490
|
+
return t.map((r) => {
|
|
491
|
+
var n;
|
|
492
|
+
return (n = r).path ?? (n.path = []), r.path.unshift(e), r;
|
|
493
|
+
});
|
|
494
|
+
}
|
|
495
|
+
function B(e) {
|
|
496
|
+
return typeof e == "string" ? e : e?.message;
|
|
497
|
+
}
|
|
498
|
+
function I(e, t, r) {
|
|
499
|
+
const n = { ...e, path: e.path ?? [] };
|
|
500
|
+
if (!e.message) {
|
|
501
|
+
const a = B(e.inst?._zod.def?.error?.(e)) ?? B(t?.error?.(e)) ?? B(r.customError?.(e)) ?? B(r.localeError?.(e)) ?? "Invalid input";
|
|
502
|
+
n.message = a;
|
|
503
|
+
}
|
|
504
|
+
return delete n.inst, delete n.continue, t?.reportInput || delete n.input, n;
|
|
505
|
+
}
|
|
506
|
+
function mt(e) {
|
|
507
|
+
return Array.isArray(e) ? "array" : typeof e == "string" ? "string" : "unknown";
|
|
508
|
+
}
|
|
509
|
+
function wt(...e) {
|
|
510
|
+
const [t, r, n] = e;
|
|
511
|
+
return typeof t == "string" ? {
|
|
512
|
+
message: t,
|
|
513
|
+
code: "custom",
|
|
514
|
+
input: r,
|
|
515
|
+
inst: n
|
|
516
|
+
} : { ...t };
|
|
517
|
+
}
|
|
518
|
+
const _e = (e, t) => {
|
|
519
|
+
e.name = "$ZodError", Object.defineProperty(e, "_zod", {
|
|
520
|
+
value: e._zod,
|
|
521
|
+
enumerable: !1
|
|
522
|
+
}), Object.defineProperty(e, "issues", {
|
|
523
|
+
value: t,
|
|
524
|
+
enumerable: !1
|
|
525
|
+
}), e.message = JSON.stringify(t, st, 2), Object.defineProperty(e, "toString", {
|
|
526
|
+
value: () => e.message,
|
|
527
|
+
enumerable: !1
|
|
528
|
+
});
|
|
529
|
+
}, bt = f("$ZodError", _e), K = f("$ZodError", _e, { Parent: Error }), vt = (e) => (t, r, n, a) => {
|
|
530
|
+
const o = n ? Object.assign(n, { async: !1 }) : { async: !1 }, i = t._zod.run({ value: r, issues: [] }, o);
|
|
531
|
+
if (i instanceof Promise)
|
|
532
|
+
throw new E();
|
|
533
|
+
if (i.issues.length) {
|
|
534
|
+
const s = new (a?.Err ?? e)(i.issues.map((l) => I(l, o, L())));
|
|
535
|
+
throw ye(s, a?.callee), s;
|
|
536
|
+
}
|
|
537
|
+
return i.value;
|
|
538
|
+
}, yt = /* @__PURE__ */ vt(K), xt = (e) => async (t, r, n, a) => {
|
|
539
|
+
const o = n ? Object.assign(n, { async: !0 }) : { async: !0 };
|
|
540
|
+
let i = t._zod.run({ value: r, issues: [] }, o);
|
|
541
|
+
if (i instanceof Promise && (i = await i), i.issues.length) {
|
|
542
|
+
const s = new (a?.Err ?? e)(i.issues.map((l) => I(l, o, L())));
|
|
543
|
+
throw ye(s, a?.callee), s;
|
|
544
|
+
}
|
|
545
|
+
return i.value;
|
|
546
|
+
}, kt = /* @__PURE__ */ xt(K), _t = (e) => (t, r, n) => {
|
|
547
|
+
const a = n ? { ...n, async: !1 } : { async: !1 }, o = t._zod.run({ value: r, issues: [] }, a);
|
|
548
|
+
if (o instanceof Promise)
|
|
549
|
+
throw new E();
|
|
550
|
+
return o.issues.length ? {
|
|
551
|
+
success: !1,
|
|
552
|
+
error: new (e ?? bt)(o.issues.map((i) => I(i, a, L())))
|
|
553
|
+
} : { success: !0, data: o.value };
|
|
554
|
+
}, ze = /* @__PURE__ */ _t(K), zt = (e) => async (t, r, n) => {
|
|
555
|
+
const a = n ? Object.assign(n, { async: !0 }) : { async: !0 };
|
|
556
|
+
let o = t._zod.run({ value: r, issues: [] }, a);
|
|
557
|
+
return o instanceof Promise && (o = await o), o.issues.length ? {
|
|
558
|
+
success: !1,
|
|
559
|
+
error: new e(o.issues.map((i) => I(i, a, L())))
|
|
560
|
+
} : { success: !0, data: o.value };
|
|
561
|
+
}, $e = /* @__PURE__ */ zt(K), $t = /^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/, St = "(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))", Zt = /* @__PURE__ */ new RegExp(`^${St}$`), Pt = (e) => {
|
|
562
|
+
const t = e ? `[\\s\\S]{${e?.minimum ?? 0},${e?.maximum ?? ""}}` : "[\\s\\S]*";
|
|
563
|
+
return new RegExp(`^${t}$`);
|
|
564
|
+
}, jt = /^-?\d+(?:\.\d+)?$/, Mt = /^(?:true|false)$/i, te = /* @__PURE__ */ f("$ZodCheck", (e, t) => {
|
|
565
|
+
var r;
|
|
566
|
+
e._zod ?? (e._zod = {}), e._zod.def = t, (r = e._zod).onattach ?? (r.onattach = []);
|
|
567
|
+
}), Nt = /* @__PURE__ */ f("$ZodCheckLengthEquals", (e, t) => {
|
|
568
|
+
var r;
|
|
569
|
+
te.init(e, t), (r = e._zod.def).when ?? (r.when = (n) => {
|
|
570
|
+
const a = n.value;
|
|
571
|
+
return !lt(a) && a.length !== void 0;
|
|
572
|
+
}), e._zod.onattach.push((n) => {
|
|
573
|
+
const a = n._zod.bag;
|
|
574
|
+
a.minimum = t.length, a.maximum = t.length, a.length = t.length;
|
|
575
|
+
}), e._zod.check = (n) => {
|
|
576
|
+
const a = n.value, o = a.length;
|
|
577
|
+
if (o === t.length)
|
|
578
|
+
return;
|
|
579
|
+
const i = mt(a), s = o > t.length;
|
|
580
|
+
n.issues.push({
|
|
581
|
+
origin: i,
|
|
582
|
+
...s ? { code: "too_big", maximum: t.length } : { code: "too_small", minimum: t.length },
|
|
583
|
+
inclusive: !0,
|
|
584
|
+
exact: !0,
|
|
585
|
+
input: n.value,
|
|
586
|
+
inst: e,
|
|
587
|
+
continue: !t.abort
|
|
588
|
+
});
|
|
589
|
+
};
|
|
590
|
+
}), Se = /* @__PURE__ */ f("$ZodCheckStringFormat", (e, t) => {
|
|
591
|
+
var r, n;
|
|
592
|
+
te.init(e, t), e._zod.onattach.push((a) => {
|
|
593
|
+
const o = a._zod.bag;
|
|
594
|
+
o.format = t.format, t.pattern && (o.patterns ?? (o.patterns = /* @__PURE__ */ new Set()), o.patterns.add(t.pattern));
|
|
595
|
+
}), t.pattern ? (r = e._zod).check ?? (r.check = (a) => {
|
|
596
|
+
t.pattern.lastIndex = 0, !t.pattern.test(a.value) && a.issues.push({
|
|
597
|
+
origin: "string",
|
|
598
|
+
code: "invalid_format",
|
|
599
|
+
format: t.format,
|
|
600
|
+
input: a.value,
|
|
601
|
+
...t.pattern ? { pattern: t.pattern.toString() } : {},
|
|
602
|
+
inst: e,
|
|
603
|
+
continue: !t.abort
|
|
604
|
+
});
|
|
605
|
+
}) : (n = e._zod).check ?? (n.check = () => {
|
|
606
|
+
});
|
|
607
|
+
}), Ot = /* @__PURE__ */ f("$ZodCheckRegex", (e, t) => {
|
|
608
|
+
Se.init(e, t), e._zod.check = (r) => {
|
|
609
|
+
t.pattern.lastIndex = 0, !t.pattern.test(r.value) && r.issues.push({
|
|
610
|
+
origin: "string",
|
|
611
|
+
code: "invalid_format",
|
|
612
|
+
format: "regex",
|
|
613
|
+
input: r.value,
|
|
614
|
+
pattern: t.pattern.toString(),
|
|
615
|
+
inst: e,
|
|
616
|
+
continue: !t.abort
|
|
617
|
+
});
|
|
618
|
+
};
|
|
619
|
+
}), Ct = {
|
|
620
|
+
major: 4,
|
|
621
|
+
minor: 3,
|
|
622
|
+
patch: 6
|
|
623
|
+
}, x = /* @__PURE__ */ f("$ZodType", (e, t) => {
|
|
624
|
+
var r;
|
|
625
|
+
e ?? (e = {}), e._zod.def = t, e._zod.bag = e._zod.bag || {}, e._zod.version = Ct;
|
|
626
|
+
const n = [...e._zod.def.checks ?? []];
|
|
627
|
+
e._zod.traits.has("$ZodCheck") && n.unshift(e);
|
|
628
|
+
for (const a of n)
|
|
629
|
+
for (const o of a._zod.onattach)
|
|
630
|
+
o(e);
|
|
631
|
+
if (n.length === 0)
|
|
632
|
+
(r = e._zod).deferred ?? (r.deferred = []), e._zod.deferred?.push(() => {
|
|
633
|
+
e._zod.run = e._zod.parse;
|
|
634
|
+
});
|
|
635
|
+
else {
|
|
636
|
+
const a = (i, s, l) => {
|
|
637
|
+
let d = U(i), p;
|
|
638
|
+
for (const w of s) {
|
|
639
|
+
if (w._zod.def.when) {
|
|
640
|
+
if (!w._zod.def.when(i))
|
|
641
|
+
continue;
|
|
642
|
+
} else if (d)
|
|
643
|
+
continue;
|
|
644
|
+
const g = i.issues.length, b = w._zod.check(i);
|
|
645
|
+
if (b instanceof Promise && l?.async === !1)
|
|
646
|
+
throw new E();
|
|
647
|
+
if (p || b instanceof Promise)
|
|
648
|
+
p = (p ?? Promise.resolve()).then(async () => {
|
|
649
|
+
await b, i.issues.length !== g && (d || (d = U(i, g)));
|
|
650
|
+
});
|
|
651
|
+
else {
|
|
652
|
+
if (i.issues.length === g)
|
|
653
|
+
continue;
|
|
654
|
+
d || (d = U(i, g));
|
|
655
|
+
}
|
|
656
|
+
}
|
|
657
|
+
return p ? p.then(() => i) : i;
|
|
658
|
+
}, o = (i, s, l) => {
|
|
659
|
+
if (U(i))
|
|
660
|
+
return i.aborted = !0, i;
|
|
661
|
+
const d = a(s, n, l);
|
|
662
|
+
if (d instanceof Promise) {
|
|
663
|
+
if (l.async === !1)
|
|
664
|
+
throw new E();
|
|
665
|
+
return d.then((p) => e._zod.parse(p, l));
|
|
666
|
+
}
|
|
667
|
+
return e._zod.parse(d, l);
|
|
668
|
+
};
|
|
669
|
+
e._zod.run = (i, s) => {
|
|
670
|
+
if (s.skipChecks)
|
|
671
|
+
return e._zod.parse(i, s);
|
|
672
|
+
if (s.direction === "backward") {
|
|
673
|
+
const d = e._zod.parse({ value: i.value, issues: [] }, { ...s, skipChecks: !0 });
|
|
674
|
+
return d instanceof Promise ? d.then((p) => o(p, i, s)) : o(d, i, s);
|
|
675
|
+
}
|
|
676
|
+
const l = e._zod.parse(i, s);
|
|
677
|
+
if (l instanceof Promise) {
|
|
678
|
+
if (s.async === !1)
|
|
679
|
+
throw new E();
|
|
680
|
+
return l.then((d) => a(d, n, s));
|
|
681
|
+
}
|
|
682
|
+
return a(l, n, s);
|
|
683
|
+
};
|
|
684
|
+
}
|
|
685
|
+
k(e, "~standard", () => ({
|
|
686
|
+
validate: (a) => {
|
|
687
|
+
try {
|
|
688
|
+
const o = ze(e, a);
|
|
689
|
+
return o.success ? { value: o.data } : { issues: o.error?.issues };
|
|
690
|
+
} catch {
|
|
691
|
+
return $e(e, a).then((i) => i.success ? { value: i.data } : { issues: i.error?.issues });
|
|
692
|
+
}
|
|
693
|
+
},
|
|
694
|
+
vendor: "zod",
|
|
695
|
+
version: 1
|
|
696
|
+
}));
|
|
697
|
+
}), Ze = /* @__PURE__ */ f("$ZodString", (e, t) => {
|
|
698
|
+
x.init(e, t), e._zod.pattern = [...e?._zod.bag?.patterns ?? []].pop() ?? Pt(e._zod.bag), e._zod.parse = (r, n) => {
|
|
699
|
+
if (t.coerce)
|
|
700
|
+
try {
|
|
701
|
+
r.value = String(r.value);
|
|
702
|
+
} catch {
|
|
703
|
+
}
|
|
704
|
+
return typeof r.value == "string" || r.issues.push({
|
|
705
|
+
expected: "string",
|
|
706
|
+
code: "invalid_type",
|
|
707
|
+
input: r.value,
|
|
708
|
+
inst: e
|
|
709
|
+
}), r;
|
|
710
|
+
};
|
|
711
|
+
}), G = /* @__PURE__ */ f("$ZodStringFormat", (e, t) => {
|
|
712
|
+
Se.init(e, t), Ze.init(e, t);
|
|
713
|
+
}), Tt = /* @__PURE__ */ f("$ZodEmail", (e, t) => {
|
|
714
|
+
t.pattern ?? (t.pattern = $t), G.init(e, t);
|
|
715
|
+
}), Et = /* @__PURE__ */ f("$ZodURL", (e, t) => {
|
|
716
|
+
G.init(e, t), e._zod.check = (r) => {
|
|
717
|
+
try {
|
|
718
|
+
const n = r.value.trim(), a = new URL(n);
|
|
719
|
+
t.hostname && (t.hostname.lastIndex = 0, t.hostname.test(a.hostname) || r.issues.push({
|
|
720
|
+
code: "invalid_format",
|
|
721
|
+
format: "url",
|
|
722
|
+
note: "Invalid hostname",
|
|
723
|
+
pattern: t.hostname.source,
|
|
724
|
+
input: r.value,
|
|
725
|
+
inst: e,
|
|
726
|
+
continue: !t.abort
|
|
727
|
+
})), t.protocol && (t.protocol.lastIndex = 0, t.protocol.test(a.protocol.endsWith(":") ? a.protocol.slice(0, -1) : a.protocol) || r.issues.push({
|
|
728
|
+
code: "invalid_format",
|
|
729
|
+
format: "url",
|
|
730
|
+
note: "Invalid protocol",
|
|
731
|
+
pattern: t.protocol.source,
|
|
732
|
+
input: r.value,
|
|
733
|
+
inst: e,
|
|
734
|
+
continue: !t.abort
|
|
735
|
+
})), t.normalize ? r.value = a.href : r.value = n;
|
|
736
|
+
return;
|
|
737
|
+
} catch {
|
|
738
|
+
r.issues.push({
|
|
739
|
+
code: "invalid_format",
|
|
740
|
+
format: "url",
|
|
741
|
+
input: r.value,
|
|
742
|
+
inst: e,
|
|
743
|
+
continue: !t.abort
|
|
744
|
+
});
|
|
745
|
+
}
|
|
746
|
+
};
|
|
747
|
+
}), Lt = /* @__PURE__ */ f("$ZodISODate", (e, t) => {
|
|
748
|
+
t.pattern ?? (t.pattern = Zt), G.init(e, t);
|
|
749
|
+
}), It = /* @__PURE__ */ f("$ZodNumber", (e, t) => {
|
|
750
|
+
x.init(e, t), e._zod.pattern = e._zod.bag.pattern ?? jt, e._zod.parse = (r, n) => {
|
|
751
|
+
if (t.coerce)
|
|
752
|
+
try {
|
|
753
|
+
r.value = Number(r.value);
|
|
754
|
+
} catch {
|
|
755
|
+
}
|
|
756
|
+
const a = r.value;
|
|
757
|
+
if (typeof a == "number" && !Number.isNaN(a) && Number.isFinite(a))
|
|
758
|
+
return r;
|
|
759
|
+
const o = typeof a == "number" ? Number.isNaN(a) ? "NaN" : Number.isFinite(a) ? void 0 : "Infinity" : void 0;
|
|
760
|
+
return r.issues.push({
|
|
761
|
+
expected: "number",
|
|
762
|
+
code: "invalid_type",
|
|
763
|
+
input: a,
|
|
764
|
+
inst: e,
|
|
765
|
+
...o ? { received: o } : {}
|
|
766
|
+
}), r;
|
|
767
|
+
};
|
|
768
|
+
}), At = /* @__PURE__ */ f("$ZodBoolean", (e, t) => {
|
|
769
|
+
x.init(e, t), e._zod.pattern = Mt, e._zod.parse = (r, n) => {
|
|
770
|
+
if (t.coerce)
|
|
771
|
+
try {
|
|
772
|
+
r.value = !!r.value;
|
|
773
|
+
} catch {
|
|
774
|
+
}
|
|
775
|
+
const a = r.value;
|
|
776
|
+
return typeof a == "boolean" || r.issues.push({
|
|
777
|
+
expected: "boolean",
|
|
778
|
+
code: "invalid_type",
|
|
779
|
+
input: a,
|
|
780
|
+
inst: e
|
|
781
|
+
}), r;
|
|
782
|
+
};
|
|
783
|
+
}), Rt = /* @__PURE__ */ f("$ZodUnknown", (e, t) => {
|
|
784
|
+
x.init(e, t), e._zod.parse = (r) => r;
|
|
785
|
+
});
|
|
786
|
+
function de(e, t, r) {
|
|
787
|
+
e.issues.length && t.issues.push(...ke(r, e.issues)), t.value[r] = e.value;
|
|
788
|
+
}
|
|
789
|
+
const Dt = /* @__PURE__ */ f("$ZodArray", (e, t) => {
|
|
790
|
+
x.init(e, t), e._zod.parse = (r, n) => {
|
|
791
|
+
const a = r.value;
|
|
792
|
+
if (!Array.isArray(a))
|
|
793
|
+
return r.issues.push({
|
|
794
|
+
expected: "array",
|
|
795
|
+
code: "invalid_type",
|
|
796
|
+
input: a,
|
|
797
|
+
inst: e
|
|
798
|
+
}), r;
|
|
799
|
+
r.value = Array(a.length);
|
|
800
|
+
const o = [];
|
|
801
|
+
for (let i = 0; i < a.length; i++) {
|
|
802
|
+
const s = a[i], l = t.element._zod.run({
|
|
803
|
+
value: s,
|
|
804
|
+
issues: []
|
|
805
|
+
}, n);
|
|
806
|
+
l instanceof Promise ? o.push(l.then((d) => de(d, r, i))) : de(l, r, i);
|
|
807
|
+
}
|
|
808
|
+
return o.length ? Promise.all(o).then(() => r) : r;
|
|
809
|
+
};
|
|
810
|
+
});
|
|
811
|
+
function J(e, t, r, n, a) {
|
|
812
|
+
if (e.issues.length) {
|
|
813
|
+
if (a && !(r in n))
|
|
814
|
+
return;
|
|
815
|
+
t.issues.push(...ke(r, e.issues));
|
|
816
|
+
}
|
|
817
|
+
e.value === void 0 ? r in n && (t.value[r] = void 0) : t.value[r] = e.value;
|
|
818
|
+
}
|
|
819
|
+
function Ft(e) {
|
|
820
|
+
const t = Object.keys(e.shape);
|
|
821
|
+
for (const n of t)
|
|
822
|
+
if (!e.shape?.[n]?._zod?.traits?.has("$ZodType"))
|
|
823
|
+
throw new Error(`Invalid element at key "${n}": expected a Zod schema`);
|
|
824
|
+
const r = gt(e.shape);
|
|
825
|
+
return {
|
|
826
|
+
...e,
|
|
827
|
+
keys: t,
|
|
828
|
+
keySet: new Set(t),
|
|
829
|
+
numKeys: t.length,
|
|
830
|
+
optionalKeys: new Set(r)
|
|
831
|
+
};
|
|
832
|
+
}
|
|
833
|
+
function Ut(e, t, r, n, a, o) {
|
|
834
|
+
const i = [], s = a.keySet, l = a.catchall._zod, d = l.def.type, p = l.optout === "optional";
|
|
835
|
+
for (const w in t) {
|
|
836
|
+
if (s.has(w))
|
|
837
|
+
continue;
|
|
838
|
+
if (d === "never") {
|
|
839
|
+
i.push(w);
|
|
840
|
+
continue;
|
|
841
|
+
}
|
|
842
|
+
const g = l.run({ value: t[w], issues: [] }, n);
|
|
843
|
+
g instanceof Promise ? e.push(g.then((b) => J(b, r, w, t, p))) : J(g, r, w, t, p);
|
|
844
|
+
}
|
|
845
|
+
return i.length && r.issues.push({
|
|
846
|
+
code: "unrecognized_keys",
|
|
847
|
+
keys: i,
|
|
848
|
+
input: t,
|
|
849
|
+
inst: o
|
|
850
|
+
}), e.length ? Promise.all(e).then(() => r) : r;
|
|
851
|
+
}
|
|
852
|
+
const Bt = /* @__PURE__ */ f("$ZodObject", (e, t) => {
|
|
853
|
+
if (x.init(e, t), !Object.getOwnPropertyDescriptor(t, "shape")?.get) {
|
|
854
|
+
const s = t.shape;
|
|
855
|
+
Object.defineProperty(t, "shape", {
|
|
856
|
+
get: () => {
|
|
857
|
+
const l = { ...s };
|
|
858
|
+
return Object.defineProperty(t, "shape", {
|
|
859
|
+
value: l
|
|
860
|
+
}), l;
|
|
861
|
+
}
|
|
862
|
+
});
|
|
863
|
+
}
|
|
864
|
+
const n = ct(() => Ft(t));
|
|
865
|
+
k(e._zod, "propValues", () => {
|
|
866
|
+
const s = t.shape, l = {};
|
|
867
|
+
for (const d in s) {
|
|
868
|
+
const p = s[d]._zod;
|
|
869
|
+
if (p.values) {
|
|
870
|
+
l[d] ?? (l[d] = /* @__PURE__ */ new Set());
|
|
871
|
+
for (const w of p.values)
|
|
872
|
+
l[d].add(w);
|
|
873
|
+
}
|
|
874
|
+
}
|
|
875
|
+
return l;
|
|
876
|
+
});
|
|
877
|
+
const a = ee, o = t.catchall;
|
|
878
|
+
let i;
|
|
879
|
+
e._zod.parse = (s, l) => {
|
|
880
|
+
i ?? (i = n.value);
|
|
881
|
+
const d = s.value;
|
|
882
|
+
if (!a(d))
|
|
883
|
+
return s.issues.push({
|
|
884
|
+
expected: "object",
|
|
885
|
+
code: "invalid_type",
|
|
886
|
+
input: d,
|
|
887
|
+
inst: e
|
|
888
|
+
}), s;
|
|
889
|
+
s.value = {};
|
|
890
|
+
const p = [], w = i.shape;
|
|
891
|
+
for (const g of i.keys) {
|
|
892
|
+
const b = w[g], y = b._zod.optout === "optional", S = b._zod.run({ value: d[g], issues: [] }, l);
|
|
893
|
+
S instanceof Promise ? p.push(S.then((M) => J(M, s, g, d, y))) : J(S, s, g, d, y);
|
|
894
|
+
}
|
|
895
|
+
return o ? Ut(p, d, s, l, n.value, e) : p.length ? Promise.all(p).then(() => s) : s;
|
|
896
|
+
};
|
|
897
|
+
}), Vt = /* @__PURE__ */ f("$ZodEnum", (e, t) => {
|
|
898
|
+
x.init(e, t);
|
|
899
|
+
const r = it(t.entries), n = new Set(r);
|
|
900
|
+
e._zod.values = n, e._zod.pattern = new RegExp(`^(${r.filter((a) => pt.has(typeof a)).map((a) => typeof a == "string" ? ht(a) : a.toString()).join("|")})$`), e._zod.parse = (a, o) => {
|
|
901
|
+
const i = a.value;
|
|
902
|
+
return n.has(i) || a.issues.push({
|
|
903
|
+
code: "invalid_value",
|
|
904
|
+
values: r,
|
|
905
|
+
input: i,
|
|
906
|
+
inst: e
|
|
907
|
+
}), a;
|
|
908
|
+
};
|
|
909
|
+
}), Wt = /* @__PURE__ */ f("$ZodTransform", (e, t) => {
|
|
910
|
+
x.init(e, t), e._zod.parse = (r, n) => {
|
|
911
|
+
if (n.direction === "backward")
|
|
912
|
+
throw new at(e.constructor.name);
|
|
913
|
+
const a = t.transform(r.value, r);
|
|
914
|
+
if (n.async)
|
|
915
|
+
return (a instanceof Promise ? a : Promise.resolve(a)).then((i) => (r.value = i, r));
|
|
916
|
+
if (a instanceof Promise)
|
|
917
|
+
throw new E();
|
|
918
|
+
return r.value = a, r;
|
|
919
|
+
};
|
|
920
|
+
});
|
|
921
|
+
function ue(e, t) {
|
|
922
|
+
return e.issues.length && t === void 0 ? { issues: [], value: void 0 } : e;
|
|
923
|
+
}
|
|
924
|
+
const Ht = /* @__PURE__ */ f("$ZodOptional", (e, t) => {
|
|
925
|
+
x.init(e, t), e._zod.optin = "optional", e._zod.optout = "optional", k(e._zod, "values", () => t.innerType._zod.values ? /* @__PURE__ */ new Set([...t.innerType._zod.values, void 0]) : void 0), k(e._zod, "pattern", () => {
|
|
926
|
+
const r = t.innerType._zod.pattern;
|
|
927
|
+
return r ? new RegExp(`^(${dt(r.source)})?$`) : void 0;
|
|
928
|
+
}), e._zod.parse = (r, n) => {
|
|
929
|
+
if (t.innerType._zod.optin === "optional") {
|
|
930
|
+
const a = t.innerType._zod.run(r, n);
|
|
931
|
+
return a instanceof Promise ? a.then((o) => ue(o, r.value)) : ue(a, r.value);
|
|
932
|
+
}
|
|
933
|
+
return r.value === void 0 ? r : t.innerType._zod.run(r, n);
|
|
934
|
+
};
|
|
935
|
+
}), Jt = /* @__PURE__ */ f("$ZodDefault", (e, t) => {
|
|
936
|
+
x.init(e, t), e._zod.optin = "optional", k(e._zod, "values", () => t.innerType._zod.values), e._zod.parse = (r, n) => {
|
|
937
|
+
if (n.direction === "backward")
|
|
938
|
+
return t.innerType._zod.run(r, n);
|
|
939
|
+
if (r.value === void 0)
|
|
940
|
+
return r.value = t.defaultValue, r;
|
|
941
|
+
const a = t.innerType._zod.run(r, n);
|
|
942
|
+
return a instanceof Promise ? a.then((o) => pe(o, t)) : pe(a, t);
|
|
943
|
+
};
|
|
944
|
+
});
|
|
945
|
+
function pe(e, t) {
|
|
946
|
+
return e.value === void 0 && (e.value = t.defaultValue), e;
|
|
947
|
+
}
|
|
948
|
+
const Yt = /* @__PURE__ */ f("$ZodPrefault", (e, t) => {
|
|
949
|
+
x.init(e, t), e._zod.optin = "optional", k(e._zod, "values", () => t.innerType._zod.values), e._zod.parse = (r, n) => (n.direction === "backward" || r.value === void 0 && (r.value = t.defaultValue), t.innerType._zod.run(r, n));
|
|
950
|
+
}), qt = /* @__PURE__ */ f("$ZodCatch", (e, t) => {
|
|
951
|
+
x.init(e, t), k(e._zod, "optin", () => t.innerType._zod.optin), k(e._zod, "optout", () => t.innerType._zod.optout), k(e._zod, "values", () => t.innerType._zod.values), e._zod.parse = (r, n) => {
|
|
952
|
+
if (n.direction === "backward")
|
|
953
|
+
return t.innerType._zod.run(r, n);
|
|
954
|
+
const a = t.innerType._zod.run(r, n);
|
|
955
|
+
return a instanceof Promise ? a.then((o) => (r.value = o.value, o.issues.length && (r.value = t.catchValue({
|
|
956
|
+
...r,
|
|
957
|
+
error: {
|
|
958
|
+
issues: o.issues.map((i) => I(i, n, L()))
|
|
959
|
+
},
|
|
960
|
+
input: r.value
|
|
961
|
+
}), r.issues = []), r)) : (r.value = a.value, a.issues.length && (r.value = t.catchValue({
|
|
962
|
+
...r,
|
|
963
|
+
error: {
|
|
964
|
+
issues: a.issues.map((o) => I(o, n, L()))
|
|
965
|
+
},
|
|
966
|
+
input: r.value
|
|
967
|
+
}), r.issues = []), r);
|
|
968
|
+
};
|
|
969
|
+
}), Kt = /* @__PURE__ */ f("$ZodPipe", (e, t) => {
|
|
970
|
+
x.init(e, t), k(e._zod, "values", () => t.in._zod.values), k(e._zod, "optin", () => t.in._zod.optin), k(e._zod, "optout", () => t.out._zod.optout), k(e._zod, "propValues", () => t.in._zod.propValues), e._zod.parse = (r, n) => {
|
|
971
|
+
if (n.direction === "backward") {
|
|
972
|
+
const o = t.out._zod.run(r, n);
|
|
973
|
+
return o instanceof Promise ? o.then((i) => V(i, t.in, n)) : V(o, t.in, n);
|
|
974
|
+
}
|
|
975
|
+
const a = t.in._zod.run(r, n);
|
|
976
|
+
return a instanceof Promise ? a.then((o) => V(o, t.out, n)) : V(a, t.out, n);
|
|
977
|
+
};
|
|
978
|
+
});
|
|
979
|
+
function V(e, t, r) {
|
|
980
|
+
return e.issues.length ? (e.aborted = !0, e) : t._zod.run({ value: e.value, issues: e.issues }, r);
|
|
981
|
+
}
|
|
982
|
+
const Gt = /* @__PURE__ */ f("$ZodCustom", (e, t) => {
|
|
983
|
+
te.init(e, t), x.init(e, t), e._zod.parse = (r, n) => r, e._zod.check = (r) => {
|
|
984
|
+
const n = r.value, a = t.fn(n);
|
|
985
|
+
if (a instanceof Promise)
|
|
986
|
+
return a.then((o) => he(o, r, n, e));
|
|
987
|
+
he(a, r, n, e);
|
|
988
|
+
};
|
|
989
|
+
});
|
|
990
|
+
function he(e, t, r, n) {
|
|
991
|
+
if (!e) {
|
|
992
|
+
const a = {
|
|
993
|
+
code: "custom",
|
|
994
|
+
input: r,
|
|
995
|
+
inst: n,
|
|
996
|
+
// incorporates params.error into issue reporting
|
|
997
|
+
path: [...n._zod.def.path ?? []],
|
|
998
|
+
// incorporates params.error into issue reporting
|
|
999
|
+
continue: !n._zod.def.abort
|
|
1000
|
+
// params: inst._zod.def.params,
|
|
1001
|
+
};
|
|
1002
|
+
n._zod.def.params && (a.params = n._zod.def.params), t.issues.push(wt(a));
|
|
1003
|
+
}
|
|
1004
|
+
}
|
|
1005
|
+
var fe;
|
|
1006
|
+
class Qt {
|
|
1007
|
+
constructor() {
|
|
1008
|
+
this._map = /* @__PURE__ */ new WeakMap(), this._idmap = /* @__PURE__ */ new Map();
|
|
1009
|
+
}
|
|
1010
|
+
add(t, ...r) {
|
|
1011
|
+
const n = r[0];
|
|
1012
|
+
return this._map.set(t, n), n && typeof n == "object" && "id" in n && this._idmap.set(n.id, t), this;
|
|
1013
|
+
}
|
|
1014
|
+
clear() {
|
|
1015
|
+
return this._map = /* @__PURE__ */ new WeakMap(), this._idmap = /* @__PURE__ */ new Map(), this;
|
|
1016
|
+
}
|
|
1017
|
+
remove(t) {
|
|
1018
|
+
const r = this._map.get(t);
|
|
1019
|
+
return r && typeof r == "object" && "id" in r && this._idmap.delete(r.id), this._map.delete(t), this;
|
|
1020
|
+
}
|
|
1021
|
+
get(t) {
|
|
1022
|
+
const r = t._zod.parent;
|
|
1023
|
+
if (r) {
|
|
1024
|
+
const n = { ...this.get(r) ?? {} };
|
|
1025
|
+
delete n.id;
|
|
1026
|
+
const a = { ...n, ...this._map.get(t) };
|
|
1027
|
+
return Object.keys(a).length ? a : void 0;
|
|
1028
|
+
}
|
|
1029
|
+
return this._map.get(t);
|
|
1030
|
+
}
|
|
1031
|
+
has(t) {
|
|
1032
|
+
return this._map.has(t);
|
|
1033
|
+
}
|
|
1034
|
+
}
|
|
1035
|
+
function Xt() {
|
|
1036
|
+
return new Qt();
|
|
1037
|
+
}
|
|
1038
|
+
(fe = globalThis).__zod_globalRegistry ?? (fe.__zod_globalRegistry = Xt());
|
|
1039
|
+
// @__NO_SIDE_EFFECTS__
|
|
1040
|
+
function er(e, t) {
|
|
1041
|
+
return new e({
|
|
1042
|
+
type: "string",
|
|
1043
|
+
...$(t)
|
|
1044
|
+
});
|
|
1045
|
+
}
|
|
1046
|
+
// @__NO_SIDE_EFFECTS__
|
|
1047
|
+
function tr(e, t) {
|
|
1048
|
+
return new e({
|
|
1049
|
+
type: "string",
|
|
1050
|
+
format: "email",
|
|
1051
|
+
check: "string_format",
|
|
1052
|
+
abort: !1,
|
|
1053
|
+
...$(t)
|
|
1054
|
+
});
|
|
1055
|
+
}
|
|
1056
|
+
// @__NO_SIDE_EFFECTS__
|
|
1057
|
+
function rr(e, t) {
|
|
1058
|
+
return new e({
|
|
1059
|
+
type: "string",
|
|
1060
|
+
format: "url",
|
|
1061
|
+
check: "string_format",
|
|
1062
|
+
abort: !1,
|
|
1063
|
+
...$(t)
|
|
1064
|
+
});
|
|
1065
|
+
}
|
|
1066
|
+
// @__NO_SIDE_EFFECTS__
|
|
1067
|
+
function nr(e, t) {
|
|
1068
|
+
return new e({
|
|
1069
|
+
type: "string",
|
|
1070
|
+
format: "date",
|
|
1071
|
+
check: "string_format",
|
|
1072
|
+
...$(t)
|
|
1073
|
+
});
|
|
1074
|
+
}
|
|
1075
|
+
// @__NO_SIDE_EFFECTS__
|
|
1076
|
+
function ar(e, t) {
|
|
1077
|
+
return new e({
|
|
1078
|
+
type: "number",
|
|
1079
|
+
checks: [],
|
|
1080
|
+
...$(t)
|
|
1081
|
+
});
|
|
1082
|
+
}
|
|
1083
|
+
// @__NO_SIDE_EFFECTS__
|
|
1084
|
+
function or(e, t) {
|
|
1085
|
+
return new e({
|
|
1086
|
+
type: "boolean",
|
|
1087
|
+
...$(t)
|
|
1088
|
+
});
|
|
1089
|
+
}
|
|
1090
|
+
// @__NO_SIDE_EFFECTS__
|
|
1091
|
+
function ir(e) {
|
|
1092
|
+
return new e({
|
|
1093
|
+
type: "unknown"
|
|
1094
|
+
});
|
|
1095
|
+
}
|
|
1096
|
+
// @__NO_SIDE_EFFECTS__
|
|
1097
|
+
function sr(e, t) {
|
|
1098
|
+
return new Nt({
|
|
1099
|
+
check: "length_equals",
|
|
1100
|
+
...$(t),
|
|
1101
|
+
length: e
|
|
1102
|
+
});
|
|
1103
|
+
}
|
|
1104
|
+
// @__NO_SIDE_EFFECTS__
|
|
1105
|
+
function cr(e, t) {
|
|
1106
|
+
return new Ot({
|
|
1107
|
+
check: "string_format",
|
|
1108
|
+
format: "regex",
|
|
1109
|
+
...$(t),
|
|
1110
|
+
pattern: e
|
|
1111
|
+
});
|
|
1112
|
+
}
|
|
1113
|
+
// @__NO_SIDE_EFFECTS__
|
|
1114
|
+
function lr(e, t, r) {
|
|
1115
|
+
return new e({
|
|
1116
|
+
type: "custom",
|
|
1117
|
+
check: "custom",
|
|
1118
|
+
fn: t,
|
|
1119
|
+
...$(r)
|
|
1120
|
+
});
|
|
1121
|
+
}
|
|
1122
|
+
const _ = /* @__PURE__ */ f("ZodMiniType", (e, t) => {
|
|
1123
|
+
if (!e._zod)
|
|
1124
|
+
throw new Error("Uninitialized schema in ZodMiniType.");
|
|
1125
|
+
x.init(e, t), e.def = t, e.type = t.type, e.parse = (r, n) => yt(e, r, n, { callee: e.parse }), e.safeParse = (r, n) => ze(e, r, n), e.parseAsync = async (r, n) => kt(e, r, n, { callee: e.parseAsync }), e.safeParseAsync = async (r, n) => $e(e, r, n), e.check = (...r) => e.clone({
|
|
1126
|
+
...t,
|
|
1127
|
+
checks: [
|
|
1128
|
+
...t.checks ?? [],
|
|
1129
|
+
...r.map((n) => typeof n == "function" ? { _zod: { check: n, def: { check: "custom" }, onattach: [] } } : n)
|
|
1130
|
+
]
|
|
1131
|
+
}, { parent: !0 }), e.with = e.check, e.clone = (r, n) => ft(e, r, n), e.brand = () => e, e.register = ((r, n) => (r.add(e, n), e)), e.apply = (r) => r(e);
|
|
1132
|
+
}), Pe = /* @__PURE__ */ f("ZodMiniString", (e, t) => {
|
|
1133
|
+
Ze.init(e, t), _.init(e, t);
|
|
1134
|
+
});
|
|
1135
|
+
// @__NO_SIDE_EFFECTS__
|
|
1136
|
+
function h(e) {
|
|
1137
|
+
return /* @__PURE__ */ er(Pe, e);
|
|
1138
|
+
}
|
|
1139
|
+
const re = /* @__PURE__ */ f("ZodMiniStringFormat", (e, t) => {
|
|
1140
|
+
G.init(e, t), Pe.init(e, t);
|
|
1141
|
+
}), dr = /* @__PURE__ */ f("ZodMiniEmail", (e, t) => {
|
|
1142
|
+
Tt.init(e, t), re.init(e, t);
|
|
1143
|
+
});
|
|
1144
|
+
// @__NO_SIDE_EFFECTS__
|
|
1145
|
+
function ur(e) {
|
|
1146
|
+
return /* @__PURE__ */ tr(dr, e);
|
|
1147
|
+
}
|
|
1148
|
+
const pr = /* @__PURE__ */ f("ZodMiniURL", (e, t) => {
|
|
1149
|
+
Et.init(e, t), re.init(e, t);
|
|
1150
|
+
});
|
|
1151
|
+
// @__NO_SIDE_EFFECTS__
|
|
1152
|
+
function j(e) {
|
|
1153
|
+
return /* @__PURE__ */ rr(pr, e);
|
|
1154
|
+
}
|
|
1155
|
+
const hr = /* @__PURE__ */ f("ZodMiniNumber", (e, t) => {
|
|
1156
|
+
It.init(e, t), _.init(e, t);
|
|
1157
|
+
});
|
|
1158
|
+
// @__NO_SIDE_EFFECTS__
|
|
1159
|
+
function fr(e) {
|
|
1160
|
+
return /* @__PURE__ */ ar(hr, e);
|
|
1161
|
+
}
|
|
1162
|
+
const gr = /* @__PURE__ */ f("ZodMiniBoolean", (e, t) => {
|
|
1163
|
+
At.init(e, t), _.init(e, t);
|
|
1164
|
+
});
|
|
1165
|
+
// @__NO_SIDE_EFFECTS__
|
|
1166
|
+
function ge(e) {
|
|
1167
|
+
return /* @__PURE__ */ or(gr, e);
|
|
1168
|
+
}
|
|
1169
|
+
const mr = /* @__PURE__ */ f("ZodMiniUnknown", (e, t) => {
|
|
1170
|
+
Rt.init(e, t), _.init(e, t);
|
|
1171
|
+
});
|
|
1172
|
+
// @__NO_SIDE_EFFECTS__
|
|
1173
|
+
function wr() {
|
|
1174
|
+
return /* @__PURE__ */ ir(mr);
|
|
1175
|
+
}
|
|
1176
|
+
const br = /* @__PURE__ */ f("ZodMiniArray", (e, t) => {
|
|
1177
|
+
Dt.init(e, t), _.init(e, t);
|
|
1178
|
+
});
|
|
1179
|
+
// @__NO_SIDE_EFFECTS__
|
|
1180
|
+
function P(e, t) {
|
|
1181
|
+
return new br({
|
|
1182
|
+
type: "array",
|
|
1183
|
+
element: e,
|
|
1184
|
+
...$(t)
|
|
1185
|
+
});
|
|
1186
|
+
}
|
|
1187
|
+
const je = /* @__PURE__ */ f("ZodMiniObject", (e, t) => {
|
|
1188
|
+
Bt.init(e, t), _.init(e, t), k(e, "shape", () => t.shape);
|
|
1189
|
+
});
|
|
1190
|
+
// @__NO_SIDE_EFFECTS__
|
|
1191
|
+
function N(e, t) {
|
|
1192
|
+
const r = {
|
|
1193
|
+
type: "object",
|
|
1194
|
+
shape: e ?? {},
|
|
1195
|
+
...$(t)
|
|
1196
|
+
};
|
|
1197
|
+
return new je(r);
|
|
1198
|
+
}
|
|
1199
|
+
// @__NO_SIDE_EFFECTS__
|
|
1200
|
+
function R(e, t) {
|
|
1201
|
+
return new je({
|
|
1202
|
+
type: "object",
|
|
1203
|
+
shape: e,
|
|
1204
|
+
catchall: /* @__PURE__ */ wr(),
|
|
1205
|
+
...$(t)
|
|
1206
|
+
});
|
|
1207
|
+
}
|
|
1208
|
+
const vr = /* @__PURE__ */ f("ZodMiniEnum", (e, t) => {
|
|
1209
|
+
Vt.init(e, t), _.init(e, t), e.options = Object.values(t.entries);
|
|
1210
|
+
});
|
|
1211
|
+
// @__NO_SIDE_EFFECTS__
|
|
1212
|
+
function yr(e, t) {
|
|
1213
|
+
const r = Array.isArray(e) ? Object.fromEntries(e.map((n) => [n, n])) : e;
|
|
1214
|
+
return new vr({
|
|
1215
|
+
type: "enum",
|
|
1216
|
+
entries: r,
|
|
1217
|
+
...$(t)
|
|
1218
|
+
});
|
|
1219
|
+
}
|
|
1220
|
+
const xr = /* @__PURE__ */ f("ZodMiniTransform", (e, t) => {
|
|
1221
|
+
Wt.init(e, t), _.init(e, t);
|
|
1222
|
+
});
|
|
1223
|
+
// @__NO_SIDE_EFFECTS__
|
|
1224
|
+
function kr(e) {
|
|
1225
|
+
return new xr({
|
|
1226
|
+
type: "transform",
|
|
1227
|
+
transform: e
|
|
1228
|
+
});
|
|
1229
|
+
}
|
|
1230
|
+
const _r = /* @__PURE__ */ f("ZodMiniOptional", (e, t) => {
|
|
1231
|
+
Ht.init(e, t), _.init(e, t);
|
|
1232
|
+
});
|
|
1233
|
+
// @__NO_SIDE_EFFECTS__
|
|
1234
|
+
function u(e) {
|
|
1235
|
+
return new _r({
|
|
1236
|
+
type: "optional",
|
|
1237
|
+
innerType: e
|
|
1238
|
+
});
|
|
1239
|
+
}
|
|
1240
|
+
const zr = /* @__PURE__ */ f("ZodMiniDefault", (e, t) => {
|
|
1241
|
+
Jt.init(e, t), _.init(e, t);
|
|
1242
|
+
});
|
|
1243
|
+
// @__NO_SIDE_EFFECTS__
|
|
1244
|
+
function v(e, t) {
|
|
1245
|
+
return new zr({
|
|
1246
|
+
type: "default",
|
|
1247
|
+
innerType: e,
|
|
1248
|
+
get defaultValue() {
|
|
1249
|
+
return typeof t == "function" ? t() : xe(t);
|
|
1250
|
+
}
|
|
1251
|
+
});
|
|
1252
|
+
}
|
|
1253
|
+
const $r = /* @__PURE__ */ f("ZodMiniPrefault", (e, t) => {
|
|
1254
|
+
Yt.init(e, t), _.init(e, t);
|
|
1255
|
+
});
|
|
1256
|
+
// @__NO_SIDE_EFFECTS__
|
|
1257
|
+
function Y(e, t) {
|
|
1258
|
+
return new $r({
|
|
1259
|
+
type: "prefault",
|
|
1260
|
+
innerType: e,
|
|
1261
|
+
get defaultValue() {
|
|
1262
|
+
return typeof t == "function" ? t() : xe(t);
|
|
1263
|
+
}
|
|
1264
|
+
});
|
|
1265
|
+
}
|
|
1266
|
+
const Sr = /* @__PURE__ */ f("ZodMiniCatch", (e, t) => {
|
|
1267
|
+
qt.init(e, t), _.init(e, t);
|
|
1268
|
+
});
|
|
1269
|
+
// @__NO_SIDE_EFFECTS__
|
|
1270
|
+
function Zr(e, t) {
|
|
1271
|
+
return new Sr({
|
|
1272
|
+
type: "catch",
|
|
1273
|
+
innerType: e,
|
|
1274
|
+
catchValue: (() => t)
|
|
1275
|
+
});
|
|
1276
|
+
}
|
|
1277
|
+
const Pr = /* @__PURE__ */ f("ZodMiniPipe", (e, t) => {
|
|
1278
|
+
Kt.init(e, t), _.init(e, t);
|
|
1279
|
+
});
|
|
1280
|
+
// @__NO_SIDE_EFFECTS__
|
|
1281
|
+
function jr(e, t) {
|
|
1282
|
+
return new Pr({
|
|
1283
|
+
type: "pipe",
|
|
1284
|
+
in: e,
|
|
1285
|
+
out: t
|
|
1286
|
+
});
|
|
1287
|
+
}
|
|
1288
|
+
const Mr = /* @__PURE__ */ f("ZodMiniCustom", (e, t) => {
|
|
1289
|
+
Gt.init(e, t), _.init(e, t);
|
|
1290
|
+
});
|
|
1291
|
+
// @__NO_SIDE_EFFECTS__
|
|
1292
|
+
function Me(e, t = {}) {
|
|
1293
|
+
return /* @__PURE__ */ lr(Mr, e, t);
|
|
1294
|
+
}
|
|
1295
|
+
const Nr = /* @__PURE__ */ f("ZodMiniISODate", (e, t) => {
|
|
1296
|
+
Lt.init(e, t), re.init(e, t);
|
|
1297
|
+
});
|
|
1298
|
+
// @__NO_SIDE_EFFECTS__
|
|
1299
|
+
function Or(e) {
|
|
1300
|
+
return /* @__PURE__ */ nr(Nr, e);
|
|
1301
|
+
}
|
|
1302
|
+
const Cr = /* @__PURE__ */ N({
|
|
1303
|
+
ui: /* @__PURE__ */ Y(
|
|
1304
|
+
/* @__PURE__ */ N({
|
|
1305
|
+
primary: /* @__PURE__ */ v(/* @__PURE__ */ h(), "#c80044"),
|
|
1306
|
+
headerFrom: /* @__PURE__ */ v(/* @__PURE__ */ h(), "#0271bf"),
|
|
1307
|
+
headerTo: /* @__PURE__ */ v(/* @__PURE__ */ h(), "#c80044"),
|
|
1308
|
+
footerFrom: /* @__PURE__ */ v(/* @__PURE__ */ h(), "#0271bf"),
|
|
1309
|
+
footerTo: /* @__PURE__ */ v(/* @__PURE__ */ h(), "#003d68"),
|
|
1310
|
+
backgroundTilesSeed: /* @__PURE__ */ v(/* @__PURE__ */ fr(), 1),
|
|
1311
|
+
showFavicons: /* @__PURE__ */ v(/* @__PURE__ */ ge(), !0),
|
|
1312
|
+
cta: /* @__PURE__ */ u(
|
|
1313
|
+
/* @__PURE__ */ N({
|
|
1314
|
+
text: /* @__PURE__ */ h(),
|
|
1315
|
+
url: /* @__PURE__ */ h(),
|
|
1316
|
+
icon: /* @__PURE__ */ v(
|
|
1317
|
+
/* @__PURE__ */ u((/* @__PURE__ */ h()).check(/* @__PURE__ */ cr(/^[a-z]+:[a-z-]+$/))),
|
|
1318
|
+
"tabler:message-circle"
|
|
1319
|
+
)
|
|
1320
|
+
})
|
|
1321
|
+
),
|
|
1322
|
+
contactLinks: /* @__PURE__ */ v(/* @__PURE__ */ P(/* @__PURE__ */ h()), [
|
|
1323
|
+
"phone",
|
|
1324
|
+
"email",
|
|
1325
|
+
"location",
|
|
1326
|
+
"profiles"
|
|
1327
|
+
])
|
|
1328
|
+
}),
|
|
1329
|
+
{}
|
|
1330
|
+
),
|
|
1331
|
+
seo: /* @__PURE__ */ Y(
|
|
1332
|
+
/* @__PURE__ */ N({
|
|
1333
|
+
title: /* @__PURE__ */ u(/* @__PURE__ */ h()),
|
|
1334
|
+
description: /* @__PURE__ */ u(/* @__PURE__ */ h()),
|
|
1335
|
+
canonical: /* @__PURE__ */ u(/* @__PURE__ */ j()),
|
|
1336
|
+
ogImage: /* @__PURE__ */ u(/* @__PURE__ */ j()),
|
|
1337
|
+
twitterImage: /* @__PURE__ */ u(/* @__PURE__ */ j()),
|
|
1338
|
+
firstName: /* @__PURE__ */ u(/* @__PURE__ */ h()),
|
|
1339
|
+
lastName: /* @__PURE__ */ u(/* @__PURE__ */ h()),
|
|
1340
|
+
robots: /* @__PURE__ */ v(/* @__PURE__ */ u(/* @__PURE__ */ h()), "index, follow")
|
|
1341
|
+
}),
|
|
1342
|
+
{}
|
|
1343
|
+
),
|
|
1344
|
+
modest: /* @__PURE__ */ v(/* @__PURE__ */ ge(), !1)
|
|
1345
|
+
}), A = (/* @__PURE__ */ h()).check(/* @__PURE__ */ Me((e) => !isNaN(new Date(e).getTime()))), Tr = /* @__PURE__ */ jr(
|
|
1346
|
+
(/* @__PURE__ */ R({
|
|
1347
|
+
name: /* @__PURE__ */ u(/* @__PURE__ */ h()),
|
|
1348
|
+
company: /* @__PURE__ */ u(/* @__PURE__ */ h()),
|
|
1349
|
+
location: /* @__PURE__ */ u(/* @__PURE__ */ h()),
|
|
1350
|
+
description: /* @__PURE__ */ u(/* @__PURE__ */ h()),
|
|
1351
|
+
position: /* @__PURE__ */ u(/* @__PURE__ */ h()),
|
|
1352
|
+
url: /* @__PURE__ */ u(/* @__PURE__ */ j()),
|
|
1353
|
+
startDate: A,
|
|
1354
|
+
endDate: /* @__PURE__ */ u(A),
|
|
1355
|
+
summary: /* @__PURE__ */ u(/* @__PURE__ */ h()),
|
|
1356
|
+
highlights: /* @__PURE__ */ u(/* @__PURE__ */ P(/* @__PURE__ */ h())),
|
|
1357
|
+
logo: /* @__PURE__ */ u(/* @__PURE__ */ j())
|
|
1358
|
+
})).check(
|
|
1359
|
+
/* @__PURE__ */ Me(({ name: e, company: t }) => !!(e || t), {
|
|
1360
|
+
path: ["name"],
|
|
1361
|
+
message: "Either 'name' or 'company' must be provided."
|
|
1362
|
+
})
|
|
1363
|
+
),
|
|
1364
|
+
/* @__PURE__ */ kr(({ company: e, name: t, ...r }) => ({
|
|
1365
|
+
...r,
|
|
1366
|
+
name: t ?? e
|
|
1367
|
+
}))
|
|
1368
|
+
), Er = /* @__PURE__ */ R({
|
|
1369
|
+
network: /* @__PURE__ */ h(),
|
|
1370
|
+
username: /* @__PURE__ */ u(/* @__PURE__ */ h()),
|
|
1371
|
+
url: /* @__PURE__ */ u(/* @__PURE__ */ j())
|
|
1372
|
+
}), Lr = /* @__PURE__ */ R({
|
|
1373
|
+
address: /* @__PURE__ */ u(/* @__PURE__ */ h()),
|
|
1374
|
+
postalCode: /* @__PURE__ */ u(/* @__PURE__ */ h()),
|
|
1375
|
+
city: /* @__PURE__ */ u(/* @__PURE__ */ h()),
|
|
1376
|
+
countryCode: /* @__PURE__ */ u((/* @__PURE__ */ h()).check(/* @__PURE__ */ sr(2))),
|
|
1377
|
+
region: /* @__PURE__ */ u(/* @__PURE__ */ h())
|
|
1378
|
+
}), Ir = /* @__PURE__ */ R({
|
|
1379
|
+
name: /* @__PURE__ */ h(),
|
|
1380
|
+
label: /* @__PURE__ */ u(/* @__PURE__ */ h()),
|
|
1381
|
+
image: /* @__PURE__ */ u(/* @__PURE__ */ j()),
|
|
1382
|
+
email: /* @__PURE__ */ u(/* @__PURE__ */ ur()),
|
|
1383
|
+
phone: /* @__PURE__ */ u(/* @__PURE__ */ h()),
|
|
1384
|
+
birthDate: /* @__PURE__ */ u(A),
|
|
1385
|
+
url: /* @__PURE__ */ u(/* @__PURE__ */ j()),
|
|
1386
|
+
summary: /* @__PURE__ */ u(/* @__PURE__ */ h()),
|
|
1387
|
+
location: /* @__PURE__ */ u(Lr),
|
|
1388
|
+
profiles: /* @__PURE__ */ u(/* @__PURE__ */ P(Er))
|
|
1389
|
+
}), Ar = /* @__PURE__ */ N({
|
|
1390
|
+
institution: /* @__PURE__ */ h(),
|
|
1391
|
+
url: /* @__PURE__ */ u(/* @__PURE__ */ j()),
|
|
1392
|
+
area: /* @__PURE__ */ u(/* @__PURE__ */ h()),
|
|
1393
|
+
studyType: /* @__PURE__ */ u(/* @__PURE__ */ h()),
|
|
1394
|
+
startDate: A,
|
|
1395
|
+
endDate: /* @__PURE__ */ u(A),
|
|
1396
|
+
score: /* @__PURE__ */ u(/* @__PURE__ */ h()),
|
|
1397
|
+
courses: /* @__PURE__ */ u(/* @__PURE__ */ P(/* @__PURE__ */ h()))
|
|
1398
|
+
}), Rr = /* @__PURE__ */ N({
|
|
1399
|
+
name: /* @__PURE__ */ h(),
|
|
1400
|
+
date: /* @__PURE__ */ u(A),
|
|
1401
|
+
url: /* @__PURE__ */ u(/* @__PURE__ */ j()),
|
|
1402
|
+
issuer: /* @__PURE__ */ u(/* @__PURE__ */ h())
|
|
1403
|
+
}), Dr = /* @__PURE__ */ N({
|
|
1404
|
+
name: /* @__PURE__ */ h(),
|
|
1405
|
+
level: /* @__PURE__ */ u(/* @__PURE__ */ h()),
|
|
1406
|
+
keywords: /* @__PURE__ */ u(/* @__PURE__ */ P(/* @__PURE__ */ h()))
|
|
1407
|
+
}), Fr = /* @__PURE__ */ R({
|
|
1408
|
+
language: /* @__PURE__ */ h(),
|
|
1409
|
+
fluency: /* @__PURE__ */ u(/* @__PURE__ */ h())
|
|
1410
|
+
}), Ur = /* @__PURE__ */ N({
|
|
1411
|
+
meta: /* @__PURE__ */ Y(
|
|
1412
|
+
/* @__PURE__ */ R({
|
|
1413
|
+
lang: /* @__PURE__ */ v(/* @__PURE__ */ Zr(/* @__PURE__ */ yr(["en", "fr"]), "en"), "en"),
|
|
1414
|
+
lastModified: /* @__PURE__ */ v(/* @__PURE__ */ Or(), () => (/* @__PURE__ */ new Date()).toISOString()),
|
|
1415
|
+
themeConfig: /* @__PURE__ */ Y(Cr, {})
|
|
1416
|
+
}),
|
|
1417
|
+
{}
|
|
1418
|
+
),
|
|
1419
|
+
work: /* @__PURE__ */ v(/* @__PURE__ */ u(/* @__PURE__ */ P(Tr)), []),
|
|
1420
|
+
basics: Ir,
|
|
1421
|
+
education: /* @__PURE__ */ v(/* @__PURE__ */ u(/* @__PURE__ */ P(Ar)), []),
|
|
1422
|
+
certificates: /* @__PURE__ */ v(/* @__PURE__ */ u(/* @__PURE__ */ P(Rr)), []),
|
|
1423
|
+
skills: /* @__PURE__ */ v(/* @__PURE__ */ u(/* @__PURE__ */ P(Dr)), []),
|
|
1424
|
+
languages: /* @__PURE__ */ v(/* @__PURE__ */ u(/* @__PURE__ */ P(Fr)), [])
|
|
1425
|
+
});
|
|
1426
|
+
function F({ date: e, children: t, ...r }) {
|
|
1427
|
+
const n = C.normalize(e);
|
|
1428
|
+
return n ? /* @__PURE__ */ c("time", { dateTime: C.toISO(n), ...r, children: t }) : /* @__PURE__ */ c("span", { ...r, children: t });
|
|
1429
|
+
}
|
|
1430
|
+
function ne({ name: e, children: t, ...r }) {
|
|
1431
|
+
return /* @__PURE__ */ m("section", { ...r, children: [
|
|
1432
|
+
e && /* @__PURE__ */ c("h2", { className: "before:bg-primary relative mt-4 mb-4 text-2xl before:absolute before:-bottom-1 before:left-0 before:h-1 before:w-[3ch] before:rounded-[0_0.25rem_0.25rem_0] before:print:[print-color-adjust:exact]", children: e }),
|
|
1433
|
+
t
|
|
1434
|
+
] });
|
|
1435
|
+
}
|
|
1436
|
+
function Br({ education: e, certificates: t }) {
|
|
1437
|
+
const r = e && e.length > 0, n = t && t.length > 0;
|
|
1438
|
+
return !r && !n ? null : /* @__PURE__ */ m(ne, { name: Z("education"), className: "break-inside-avoid", children: [
|
|
1439
|
+
e?.map((a, o) => /* @__PURE__ */ m("article", { className: "mb-4 break-inside-avoid", children: [
|
|
1440
|
+
/* @__PURE__ */ m("h3", { className: "text-lg font-bold", children: [
|
|
1441
|
+
a.studyType,
|
|
1442
|
+
" : ",
|
|
1443
|
+
a.area
|
|
1444
|
+
] }),
|
|
1445
|
+
/* @__PURE__ */ m("p", { children: [
|
|
1446
|
+
a.institution,
|
|
1447
|
+
" (",
|
|
1448
|
+
a.startDate && /* @__PURE__ */ c(F, { date: a.startDate, children: C.format(a.startDate, "year") }),
|
|
1449
|
+
")"
|
|
1450
|
+
] })
|
|
1451
|
+
] }, `edu-${o}`)),
|
|
1452
|
+
r && n && /* @__PURE__ */ c("br", {}),
|
|
1453
|
+
t?.map((a, o) => /* @__PURE__ */ m("article", { className: "mb-4 break-inside-avoid", children: [
|
|
1454
|
+
/* @__PURE__ */ c("h3", { className: "text-lg font-bold", children: a.name }),
|
|
1455
|
+
/* @__PURE__ */ m("p", { children: [
|
|
1456
|
+
a.issuer,
|
|
1457
|
+
" (",
|
|
1458
|
+
a.date && /* @__PURE__ */ c(F, { date: a.date, children: C.format(a.date, "year") }),
|
|
1459
|
+
")"
|
|
1460
|
+
] })
|
|
1461
|
+
] }, `cert-${o}`))
|
|
1462
|
+
] });
|
|
1463
|
+
}
|
|
1464
|
+
const Vr = ({
|
|
1465
|
+
text: e,
|
|
1466
|
+
url: t,
|
|
1467
|
+
icon: r = "tabler:message-circle",
|
|
1468
|
+
...n
|
|
1469
|
+
}) => /* @__PURE__ */ m(q, { children: [
|
|
1470
|
+
/* @__PURE__ */ m(
|
|
1471
|
+
"a",
|
|
1472
|
+
{
|
|
1473
|
+
href: t,
|
|
1474
|
+
target: "_blank",
|
|
1475
|
+
rel: "noopener noreferrer",
|
|
1476
|
+
id: "cta-fab",
|
|
1477
|
+
className: "fab--extended group fixed right-8 bottom-8 z-20 inline-flex items-center space-x-2 rounded-full bg-black/80 p-4 text-lg whitespace-nowrap text-white shadow-md backdrop-blur-sm transition-colors hover:bg-black dark:bg-gray-700 dark:text-white print:hidden",
|
|
1478
|
+
...n,
|
|
1479
|
+
children: [
|
|
1480
|
+
/* @__PURE__ */ c("span", { className: "shrink-0", children: T(r) }),
|
|
1481
|
+
/* @__PURE__ */ c("span", { className: "-mr-2 max-w-0 overflow-hidden text-transparent transition-all duration-300 ease-in-out group-hover:mr-0 group-hover:max-w-96 group-hover:text-inherit group-focus:mr-0 group-focus:max-w-96 group-focus:text-inherit group-[.fab--extended]:mr-0 group-[.fab--extended]:max-w-96 group-[.fab--extended]:text-inherit", children: e })
|
|
1482
|
+
]
|
|
1483
|
+
}
|
|
1484
|
+
),
|
|
1485
|
+
/* @__PURE__ */ c(
|
|
1486
|
+
"script",
|
|
1487
|
+
{
|
|
1488
|
+
dangerouslySetInnerHTML: {
|
|
1489
|
+
__html: `(${Wr.toString()})();`
|
|
1490
|
+
}
|
|
1491
|
+
}
|
|
1492
|
+
)
|
|
1493
|
+
] }), Wr = () => {
|
|
1494
|
+
const e = document.getElementById("cta-fab");
|
|
1495
|
+
if (!e || window.matchMedia(
|
|
1496
|
+
"(prefers-reduced-motion: reduce)"
|
|
1497
|
+
).matches) return;
|
|
1498
|
+
let r = window.pageYOffset || document.documentElement.scrollTop;
|
|
1499
|
+
const n = 15, a = () => {
|
|
1500
|
+
const o = window.pageYOffset || document.documentElement.scrollTop, i = o - r;
|
|
1501
|
+
Math.abs(i) > n && (i > 0 ? e.classList.remove("fab--extended") : e.classList.add("fab--extended"), r = Math.max(o, 0));
|
|
1502
|
+
};
|
|
1503
|
+
window.addEventListener("scroll", a, { passive: !0 });
|
|
1504
|
+
};
|
|
1505
|
+
function Hr({ meta: e, ...t }) {
|
|
1506
|
+
const r = e.lastModified;
|
|
1507
|
+
return /* @__PURE__ */ m(
|
|
1508
|
+
"footer",
|
|
1509
|
+
{
|
|
1510
|
+
className: "bg-svg-tiles from-footer-from to-footer-to -z-10 -mt-10 h-32 content-center bg-cover bg-center pt-12 pb-2 text-center text-sm text-white dark:opacity-90 dark:contrast-125 dark:saturate-50 print:hidden",
|
|
1511
|
+
...t,
|
|
1512
|
+
children: [
|
|
1513
|
+
/* @__PURE__ */ c("div", { children: ie("last_modified", {
|
|
1514
|
+
date: /* @__PURE__ */ c(F, { date: r, children: C.format(r, "date") })
|
|
1515
|
+
}) }),
|
|
1516
|
+
/* @__PURE__ */ c("div", { className: "mt-1 text-xs opacity-75", children: !e.themeConfig.modest && ie("theme_credit", {
|
|
1517
|
+
link: /* @__PURE__ */ c(
|
|
1518
|
+
"a",
|
|
1519
|
+
{
|
|
1520
|
+
href: "https://www.cjean.fr",
|
|
1521
|
+
target: "_blank",
|
|
1522
|
+
className: "underline decoration-white/30 underline-offset-2 transition-colors hover:decoration-white/80",
|
|
1523
|
+
children: "Christophe Jean"
|
|
1524
|
+
}
|
|
1525
|
+
)
|
|
1526
|
+
}) })
|
|
1527
|
+
]
|
|
1528
|
+
}
|
|
1529
|
+
);
|
|
1530
|
+
}
|
|
1531
|
+
const Jr = () => /* @__PURE__ */ c(
|
|
1532
|
+
"header",
|
|
1533
|
+
{
|
|
1534
|
+
className: "bg-primary bg-svg-tiles from-header-from to-header-to h-2.5 bg-cover bg-center shadow-inner md:-mb-60 md:h-80 dark:opacity-90 dark:contrast-125 dark:saturate-50 print:hidden",
|
|
1535
|
+
"aria-hidden": "true"
|
|
1536
|
+
}
|
|
1537
|
+
);
|
|
1538
|
+
function Yr(e) {
|
|
1539
|
+
return {
|
|
1540
|
+
"@context": "https://schema.org",
|
|
1541
|
+
"@type": "ProfilePage",
|
|
1542
|
+
name: e.basics.label ? Z("profile_page_name", {
|
|
1543
|
+
name: e.basics.name,
|
|
1544
|
+
label: e.basics.label
|
|
1545
|
+
}) : e.basics.name,
|
|
1546
|
+
description: e.basics.summary,
|
|
1547
|
+
dateModified: e.meta.lastModified,
|
|
1548
|
+
mainEntity: {
|
|
1549
|
+
"@type": "Person",
|
|
1550
|
+
name: e.basics.name,
|
|
1551
|
+
birthDate: e.basics.birthDate,
|
|
1552
|
+
jobTitle: e.basics.label,
|
|
1553
|
+
url: e.basics.url,
|
|
1554
|
+
description: e.basics.summary,
|
|
1555
|
+
image: e.basics.image,
|
|
1556
|
+
email: e.basics.email,
|
|
1557
|
+
telephone: e.basics.phone,
|
|
1558
|
+
address: {
|
|
1559
|
+
"@type": "PostalAddress",
|
|
1560
|
+
addressLocality: e.basics.location?.city,
|
|
1561
|
+
addressRegion: e.basics.location?.region,
|
|
1562
|
+
postalCode: e.basics.location?.postalCode,
|
|
1563
|
+
addressCountry: e.basics.location?.countryCode
|
|
1564
|
+
},
|
|
1565
|
+
alumniOf: e.education.map((t) => ({
|
|
1566
|
+
"@type": "EducationalOrganization",
|
|
1567
|
+
name: t.institution,
|
|
1568
|
+
url: t.url
|
|
1569
|
+
})),
|
|
1570
|
+
worksFor: e.work.map((t) => ({
|
|
1571
|
+
"@type": "Organization",
|
|
1572
|
+
name: t.name,
|
|
1573
|
+
location: t.location,
|
|
1574
|
+
member: {
|
|
1575
|
+
"@type": "OrganizationRole",
|
|
1576
|
+
roleName: t.position
|
|
1577
|
+
},
|
|
1578
|
+
url: t.url
|
|
1579
|
+
})),
|
|
1580
|
+
sameAs: e.basics.profiles?.map((t) => t.url),
|
|
1581
|
+
knowsAbout: e.skills.flatMap((t) => t.keywords)
|
|
1582
|
+
}
|
|
1583
|
+
};
|
|
1584
|
+
}
|
|
1585
|
+
function qr({ resume: e }) {
|
|
1586
|
+
return /* @__PURE__ */ c(
|
|
1587
|
+
"script",
|
|
1588
|
+
{
|
|
1589
|
+
type: "application/ld+json",
|
|
1590
|
+
dangerouslySetInnerHTML: {
|
|
1591
|
+
__html: JSON.stringify(Yr(e))
|
|
1592
|
+
}
|
|
1593
|
+
}
|
|
1594
|
+
);
|
|
1595
|
+
}
|
|
1596
|
+
function Kr(e) {
|
|
1597
|
+
const [t, ...r] = e.split(" ");
|
|
1598
|
+
return {
|
|
1599
|
+
firstNameSlice: t,
|
|
1600
|
+
lastNameSlice: r.join(" ")
|
|
1601
|
+
};
|
|
1602
|
+
}
|
|
1603
|
+
function Gr({
|
|
1604
|
+
title: e,
|
|
1605
|
+
description: t,
|
|
1606
|
+
canonical: r,
|
|
1607
|
+
robots: n
|
|
1608
|
+
}) {
|
|
1609
|
+
return /* @__PURE__ */ m(q, { children: [
|
|
1610
|
+
/* @__PURE__ */ c("title", { children: e }),
|
|
1611
|
+
t && /* @__PURE__ */ c("meta", { name: "description", content: t }),
|
|
1612
|
+
/* @__PURE__ */ c("meta", { name: "robots", content: n || "index, follow" }),
|
|
1613
|
+
r && /* @__PURE__ */ c("link", { rel: "canonical", href: r })
|
|
1614
|
+
] });
|
|
1615
|
+
}
|
|
1616
|
+
function Qr({
|
|
1617
|
+
title: e,
|
|
1618
|
+
description: t,
|
|
1619
|
+
url: r,
|
|
1620
|
+
image: n,
|
|
1621
|
+
firstName: a,
|
|
1622
|
+
lastName: o
|
|
1623
|
+
}) {
|
|
1624
|
+
return /* @__PURE__ */ m(q, { children: [
|
|
1625
|
+
/* @__PURE__ */ c("meta", { property: "og:type", content: "profile" }),
|
|
1626
|
+
/* @__PURE__ */ c("meta", { property: "og:title", content: e }),
|
|
1627
|
+
t && /* @__PURE__ */ c("meta", { property: "og:description", content: t }),
|
|
1628
|
+
a && /* @__PURE__ */ c("meta", { property: "profile:first_name", content: a }),
|
|
1629
|
+
o && /* @__PURE__ */ c("meta", { property: "profile:last_name", content: o }),
|
|
1630
|
+
n && /* @__PURE__ */ c("meta", { property: "og:image", content: n }),
|
|
1631
|
+
r && /* @__PURE__ */ c("meta", { property: "og:url", content: r })
|
|
1632
|
+
] });
|
|
1633
|
+
}
|
|
1634
|
+
function Xr({
|
|
1635
|
+
title: e,
|
|
1636
|
+
description: t,
|
|
1637
|
+
url: r,
|
|
1638
|
+
image: n
|
|
1639
|
+
}) {
|
|
1640
|
+
return /* @__PURE__ */ m(q, { children: [
|
|
1641
|
+
/* @__PURE__ */ c("meta", { property: "twitter:card", content: "summary_large_image" }),
|
|
1642
|
+
/* @__PURE__ */ c("meta", { property: "twitter:title", content: e }),
|
|
1643
|
+
t && /* @__PURE__ */ c("meta", { property: "twitter:description", content: t }),
|
|
1644
|
+
n && /* @__PURE__ */ c("meta", { property: "twitter:image", content: n }),
|
|
1645
|
+
r && /* @__PURE__ */ c("meta", { property: "twitter:url", content: r })
|
|
1646
|
+
] });
|
|
1647
|
+
}
|
|
1648
|
+
function en({ skills: e, ...t }) {
|
|
1649
|
+
return !e || e.length === 0 ? null : /* @__PURE__ */ c(ne, { name: Z("skills"), ...t, children: e.map((r) => /* @__PURE__ */ m("div", { className: "mb-4 break-inside-avoid", children: [
|
|
1650
|
+
/* @__PURE__ */ c("h3", { className: "text-lg font-bold", children: r.name }),
|
|
1651
|
+
/* @__PURE__ */ c("ul", { className: "my-3 flex flex-wrap gap-2 leading-8", children: r.keywords?.map((n) => /* @__PURE__ */ c(
|
|
1652
|
+
"li",
|
|
1653
|
+
{
|
|
1654
|
+
className: "inline-flex items-center rounded-md bg-gray-50 px-2 py-1 text-sm font-medium text-gray-600 inset-ring inset-ring-gray-500/10 dark:bg-slate-800 dark:text-slate-300 dark:inset-ring-white/10",
|
|
1655
|
+
children: n
|
|
1656
|
+
},
|
|
1657
|
+
n
|
|
1658
|
+
)) })
|
|
1659
|
+
] }, r.name)) });
|
|
1660
|
+
}
|
|
1661
|
+
function tn({
|
|
1662
|
+
works: e,
|
|
1663
|
+
showFavicons: t
|
|
1664
|
+
}) {
|
|
1665
|
+
return !e || e.length === 0 ? null : /* @__PURE__ */ c(ne, { name: Z("work_experience"), children: /* @__PURE__ */ c(
|
|
1666
|
+
"ol",
|
|
1667
|
+
{
|
|
1668
|
+
className: "relative list-none border-gray-200 md:ml-4 md:border-l-[5px] md:pl-6 dark:border-slate-700/50",
|
|
1669
|
+
reversed: !0,
|
|
1670
|
+
children: e.map((r) => /* @__PURE__ */ m("li", { className: "break-inside-avoid", children: [
|
|
1671
|
+
/* @__PURE__ */ m("div", { className: "before:border-primary relative text-gray-500 before:absolute before:top-0 before:-left-[calc(1.5rem+2.5px)] before:hidden before:h-[19px] before:w-[19px] before:-translate-x-1/2 before:rounded-full before:border-4 before:bg-white md:before:block dark:text-slate-400 dark:before:bg-slate-900", children: [
|
|
1672
|
+
/* @__PURE__ */ c(F, { date: r.startDate, children: C.format(r.startDate, "month") }),
|
|
1673
|
+
" — ",
|
|
1674
|
+
r.endDate ? /* @__PURE__ */ c(F, { date: r.endDate, children: C.format(r.endDate, "month") }) : Z("present")
|
|
1675
|
+
] }),
|
|
1676
|
+
/* @__PURE__ */ m("article", { children: [
|
|
1677
|
+
/* @__PURE__ */ m(
|
|
1678
|
+
"header",
|
|
1679
|
+
{
|
|
1680
|
+
className: `grid grid-cols-[auto_1fr] ${t && r.logo ? "gap-x-3" : ""}`,
|
|
1681
|
+
children: [
|
|
1682
|
+
t && r.logo ? /* @__PURE__ */ c(
|
|
1683
|
+
"img",
|
|
1684
|
+
{
|
|
1685
|
+
src: r.logo,
|
|
1686
|
+
alt: r.name,
|
|
1687
|
+
width: "64",
|
|
1688
|
+
height: "64",
|
|
1689
|
+
className: "row-span-2 h-12 w-12 object-contain",
|
|
1690
|
+
loading: "lazy"
|
|
1691
|
+
}
|
|
1692
|
+
) : null,
|
|
1693
|
+
/* @__PURE__ */ c("h3", { className: "col-start-2 text-xl font-semibold", children: r.position }),
|
|
1694
|
+
/* @__PURE__ */ m("div", { className: "col-start-2", children: [
|
|
1695
|
+
r.url ? /* @__PURE__ */ c(
|
|
1696
|
+
"a",
|
|
1697
|
+
{
|
|
1698
|
+
href: r.url,
|
|
1699
|
+
target: "_blank",
|
|
1700
|
+
rel: "noopener noreferrer",
|
|
1701
|
+
translate: "no",
|
|
1702
|
+
children: r.name
|
|
1703
|
+
}
|
|
1704
|
+
) : /* @__PURE__ */ c("span", { translate: "no", children: r.name }),
|
|
1705
|
+
" - ",
|
|
1706
|
+
/* @__PURE__ */ c("small", { children: r.description })
|
|
1707
|
+
] })
|
|
1708
|
+
]
|
|
1709
|
+
}
|
|
1710
|
+
),
|
|
1711
|
+
/* @__PURE__ */ c("ul", { className: "m-2 mb-6 list-inside list-disc", children: r.highlights?.map((n) => /* @__PURE__ */ c("li", { children: n }, n)) })
|
|
1712
|
+
] })
|
|
1713
|
+
] }, r.name))
|
|
1714
|
+
}
|
|
1715
|
+
) });
|
|
1716
|
+
}
|
|
1717
|
+
const rn = ({ resume: e, css: t, ...r }) => {
|
|
1718
|
+
const { basics: n, work: a, education: o, certificates: i, skills: s, meta: l } = e, { ui: d, seo: p, modest: w } = l.themeConfig, g = Xe({
|
|
1719
|
+
seed: d.backgroundTilesSeed,
|
|
1720
|
+
cellSize: 60,
|
|
1721
|
+
variance: 0.8
|
|
1722
|
+
}), b = p.title || (n.label ? `${n.name} - ${n.label}` : n.name), y = p.description || n.summary, S = p.canonical || n.url, { firstNameSlice: M, lastNameSlice: Q } = Kr(n.name);
|
|
1723
|
+
return /* @__PURE__ */ m("html", { lang: l.lang, children: [
|
|
1724
|
+
/* @__PURE__ */ m("head", { children: [
|
|
1725
|
+
/* @__PURE__ */ c("meta", { charSet: "UTF-8" }),
|
|
1726
|
+
/* @__PURE__ */ c("meta", { name: "viewport", content: "width=device-width, initial-scale=1.0" }),
|
|
1727
|
+
/* @__PURE__ */ c("meta", { name: "theme-color", content: d.primary }),
|
|
1728
|
+
!w && /* @__PURE__ */ c("meta", { name: "generator", content: "JSON Resume Theme CJEAN" }),
|
|
1729
|
+
/* @__PURE__ */ c(
|
|
1730
|
+
Gr,
|
|
1731
|
+
{
|
|
1732
|
+
title: b,
|
|
1733
|
+
description: y,
|
|
1734
|
+
canonical: S,
|
|
1735
|
+
robots: p.robots
|
|
1736
|
+
}
|
|
1737
|
+
),
|
|
1738
|
+
/* @__PURE__ */ c(
|
|
1739
|
+
Qr,
|
|
1740
|
+
{
|
|
1741
|
+
title: b,
|
|
1742
|
+
description: y,
|
|
1743
|
+
url: S,
|
|
1744
|
+
image: p.ogImage || n.image,
|
|
1745
|
+
firstName: p.firstName || M,
|
|
1746
|
+
lastName: p.lastName || Q
|
|
1747
|
+
}
|
|
1748
|
+
),
|
|
1749
|
+
/* @__PURE__ */ c(
|
|
1750
|
+
Xr,
|
|
1751
|
+
{
|
|
1752
|
+
title: b,
|
|
1753
|
+
description: y,
|
|
1754
|
+
url: S,
|
|
1755
|
+
image: p.twitterImage || n.image
|
|
1756
|
+
}
|
|
1757
|
+
),
|
|
1758
|
+
/* @__PURE__ */ c(
|
|
1759
|
+
"script",
|
|
1760
|
+
{
|
|
1761
|
+
dangerouslySetInnerHTML: {
|
|
1762
|
+
__html: "if (window.matchMedia('(prefers-color-scheme: dark)').matches) document.documentElement.classList.add('dark');"
|
|
1763
|
+
}
|
|
1764
|
+
}
|
|
1765
|
+
),
|
|
1766
|
+
/* @__PURE__ */ c(
|
|
1767
|
+
"style",
|
|
1768
|
+
{
|
|
1769
|
+
dangerouslySetInnerHTML: {
|
|
1770
|
+
__html: `
|
|
1771
|
+
:root {
|
|
1772
|
+
--theme-primary: ${d.primary};
|
|
1773
|
+
--theme-header-from: ${d.headerFrom};
|
|
1774
|
+
--theme-header-to: ${d.headerTo};
|
|
1775
|
+
--theme-footer-from: ${d.footerFrom};
|
|
1776
|
+
--theme-footer-to: ${d.footerTo};
|
|
1777
|
+
--theme-bg-tiles: url("${g}");
|
|
1778
|
+
}
|
|
1779
|
+
${t}
|
|
1780
|
+
`
|
|
1781
|
+
}
|
|
1782
|
+
}
|
|
1783
|
+
)
|
|
1784
|
+
] }),
|
|
1785
|
+
/* @__PURE__ */ m(
|
|
1786
|
+
"body",
|
|
1787
|
+
{
|
|
1788
|
+
className: "bg-gray-200 text-gray-800 dark:bg-slate-950 dark:text-slate-300 print:bg-transparent print:text-sm",
|
|
1789
|
+
...r,
|
|
1790
|
+
children: [
|
|
1791
|
+
/* @__PURE__ */ c(Jr, {}),
|
|
1792
|
+
/* @__PURE__ */ c(
|
|
1793
|
+
"main",
|
|
1794
|
+
{
|
|
1795
|
+
className: "relative z-10 container mx-auto max-w-5xl rounded bg-white p-4 shadow-md backdrop-blur-3xl md:p-6 dark:bg-slate-900/95 dark:text-slate-200 dark:shadow-2xl dark:ring-1 dark:ring-white/10 print:rounded-none print:shadow-none [&_a]:underline",
|
|
1796
|
+
role: "main",
|
|
1797
|
+
children: /* @__PURE__ */ m("article", { children: [
|
|
1798
|
+
/* @__PURE__ */ c(et, { name: n.name, label: n.label }),
|
|
1799
|
+
/* @__PURE__ */ c(nt, { basics: n, themeConfig: l.themeConfig }),
|
|
1800
|
+
/* @__PURE__ */ m("div", { className: "flex break-inside-avoid flex-wrap justify-center gap-4 sm:flex-nowrap", children: [
|
|
1801
|
+
/* @__PURE__ */ c("div", { className: "relative inline-block", children: /* @__PURE__ */ c(
|
|
1802
|
+
"img",
|
|
1803
|
+
{
|
|
1804
|
+
src: n.image,
|
|
1805
|
+
alt: Z("portrait_alt", { name: n.name }),
|
|
1806
|
+
width: "200",
|
|
1807
|
+
height: "200",
|
|
1808
|
+
className: "relative aspect-square min-w-30 rounded-full object-cover"
|
|
1809
|
+
}
|
|
1810
|
+
) }),
|
|
1811
|
+
/* @__PURE__ */ c("p", { className: "text-lg print:text-base", children: n.summary })
|
|
1812
|
+
] }),
|
|
1813
|
+
/* @__PURE__ */ c(tn, { works: a, showFavicons: d.showFavicons }),
|
|
1814
|
+
/* @__PURE__ */ c(Br, { education: o, certificates: i }),
|
|
1815
|
+
/* @__PURE__ */ c(en, { skills: s })
|
|
1816
|
+
] })
|
|
1817
|
+
}
|
|
1818
|
+
),
|
|
1819
|
+
/* @__PURE__ */ c(Hr, { meta: l }),
|
|
1820
|
+
d.cta && /* @__PURE__ */ c(
|
|
1821
|
+
Vr,
|
|
1822
|
+
{
|
|
1823
|
+
text: d.cta.text,
|
|
1824
|
+
url: d.cta.url,
|
|
1825
|
+
icon: d.cta.icon
|
|
1826
|
+
}
|
|
1827
|
+
),
|
|
1828
|
+
/* @__PURE__ */ c(qr, { resume: e }),
|
|
1829
|
+
/* @__PURE__ */ c(
|
|
1830
|
+
"script",
|
|
1831
|
+
{
|
|
1832
|
+
dangerouslySetInnerHTML: {
|
|
1833
|
+
__html: `
|
|
1834
|
+
document.addEventListener('click', (e) => {
|
|
1835
|
+
const card = e.target.closest('.portrait-card');
|
|
1836
|
+
if (card) {
|
|
1837
|
+
card.classList.toggle('rotate-y-180');
|
|
1838
|
+
}
|
|
1839
|
+
});
|
|
1840
|
+
`
|
|
1841
|
+
}
|
|
1842
|
+
}
|
|
1843
|
+
)
|
|
1844
|
+
]
|
|
1845
|
+
}
|
|
1846
|
+
)
|
|
1847
|
+
] });
|
|
1848
|
+
};
|
|
1849
|
+
function nn(e, t = 64) {
|
|
1850
|
+
return `https://www.google.com/s2/favicons?domain=${encodeURIComponent(e)}&sz=${t}`;
|
|
1851
|
+
}
|
|
1852
|
+
function an(e, t = {}) {
|
|
1853
|
+
const r = new URL("https://wsrv.nl/");
|
|
1854
|
+
return r.searchParams.set("url", e), t.w && r.searchParams.set("w", t.w.toString()), t.h && r.searchParams.set("h", t.h.toString()), t.output && r.searchParams.set("output", t.output), t.encoding && r.searchParams.set("encoding", t.encoding), t.fit && r.searchParams.set("fit", t.fit), t.a && r.searchParams.set("a", t.a), r.toString();
|
|
1855
|
+
}
|
|
1856
|
+
async function on(e, t = 64) {
|
|
1857
|
+
if (e)
|
|
1858
|
+
try {
|
|
1859
|
+
const r = nn(e, t), n = an(r, {
|
|
1860
|
+
w: t,
|
|
1861
|
+
h: t,
|
|
1862
|
+
output: "webp",
|
|
1863
|
+
encoding: "base64"
|
|
1864
|
+
}), a = await fetch(n);
|
|
1865
|
+
if (!a.ok) {
|
|
1866
|
+
console.warn(n, a);
|
|
1867
|
+
return;
|
|
1868
|
+
}
|
|
1869
|
+
return await a.text();
|
|
1870
|
+
} catch {
|
|
1871
|
+
return;
|
|
1872
|
+
}
|
|
1873
|
+
}
|
|
1874
|
+
const sn = '@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-x-reverse:0;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:"";--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-slate-200:oklch(92.9% .013 255.508);--color-slate-300:oklch(86.9% .022 252.894);--color-slate-400:oklch(70.4% .04 256.788);--color-slate-700:oklch(37.2% .044 257.287);--color-slate-800:oklch(27.9% .041 260.031);--color-slate-900:oklch(20.8% .042 265.755);--color-slate-950:oklch(12.9% .042 264.695);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-5xl:64rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-widest:.1em;--radius-md:.375rem;--radius-xl:.75rem;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--blur-sm:8px;--blur-3xl:64px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-primary:var(--theme-primary);--color-header-from:var(--theme-header-from);--color-header-to:var(--theme-header-to);--color-footer-from:var(--theme-footer-from);--color-footer-to:var(--theme-footer-to);--min-width-30:7.5rem}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components{.portrait-card{width:calc(var(--spacing) * 48);height:calc(var(--spacing) * 48);cursor:pointer;transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.2s;-webkit-user-select:none;user-select:none;transform-style:preserve-3d;flex-shrink:0;transition-duration:.2s;position:relative}@media(min-width:48rem){.portrait-card{width:calc(var(--spacing) * 32);height:calc(var(--spacing) * 32)}}@media(hover:hover){.portrait-card:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}}.portrait-card:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.portrait-card.rotate-y-180{--tw-scale-x:125%;--tw-scale-y:125%;--tw-scale-z:125%;scale:var(--tw-scale-x) var(--tw-scale-y)}.portrait-card__side{inset:calc(var(--spacing) * 0);border-style:var(--tw-border-style);border-width:4px;border-color:var(--color-white);--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.7s;backface-visibility:hidden;transition-duration:.7s;position:absolute}.portrait-card__side:where(.dark,.dark *){border-color:var(--color-slate-800)}.portrait-card__front{object-fit:cover;border-radius:3.40282e38px}.portrait-card__back{--tw-rotate-y:rotateY(180deg);transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);border-radius:var(--radius-xl);background-color:var(--color-white);padding:calc(var(--spacing) * .5);justify-content:center;align-items:center;display:flex}@media print{.portrait-card__back{display:none}}.portrait-card__back img{object-fit:contain;width:100%;height:100%}}@layer utilities{.fixed{position:fixed}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.right-8{right:calc(var(--spacing) * 8)}.bottom-8{bottom:calc(var(--spacing) * 8)}.-z-10{z-index:-10}.z-10{z-index:10}.z-20{z-index:20}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.m-2{margin:calc(var(--spacing) * 2)}.mx-auto{margin-inline:auto}.my-3{margin-block:calc(var(--spacing) * 3)}.-mt-10{margin-top:calc(var(--spacing) * -10)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-4{margin-top:calc(var(--spacing) * 4)}.-mr-2{margin-right:calc(var(--spacing) * -2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.flex{display:flex}.grid{display:grid}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.aspect-square{aspect-ratio:1}.h-2\\.5{height:calc(var(--spacing) * 2.5)}.h-12{height:calc(var(--spacing) * 12)}.h-32{height:calc(var(--spacing) * 32)}.w-12{width:calc(var(--spacing) * 12)}.max-w-0{max-width:calc(var(--spacing) * 0)}.max-w-5xl{max-width:var(--container-5xl)}.min-w-30{min-width:var(--min-width-30)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.rotate-y-180{--tw-rotate-y:rotateY(180deg);transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.break-inside-avoid{break-inside:avoid}.grid-cols-\\[auto_1fr\\]{grid-template-columns:auto 1fr}.flex-wrap{flex-wrap:wrap}.content-center{align-content:center}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-x-1{column-gap:calc(var(--spacing) * 1)}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-\\[2ch\\]{column-gap:2ch}:where(.space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)))}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-md{border-radius:var(--radius-md)}.border-gray-200{border-color:var(--color-gray-200)}.bg-black\\/80{background-color:#000c}@supports (color:color-mix(in lab,red,red)){.bg-black\\/80{background-color:color-mix(in oklab,var(--color-black) 80%,transparent)}}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-primary{background-color:var(--color-primary)}.bg-white{background-color:var(--color-white)}.bg-svg-tiles{--gradient-angle:16deg;background-image:var(--theme-bg-tiles),linear-gradient(var(--gradient-angle),var(--tw-gradient-from,transparent),var(--tw-gradient-to,transparent))}.from-footer-from{--tw-gradient-from:var(--color-footer-from);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-header-from{--tw-gradient-from:var(--color-header-from);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-footer-to{--tw-gradient-to:var(--color-footer-to);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-header-to{--tw-gradient-to:var(--color-header-to);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.bg-cover{background-size:cover}.bg-center{background-position:50%}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-4{padding:calc(var(--spacing) * 4)}.px-2{padding-inline:calc(var(--spacing) * 2)}.py-1{padding-block:calc(var(--spacing) * 1)}.pt-12{padding-top:calc(var(--spacing) * 12)}.pr-14{padding-right:calc(var(--spacing) * 14)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.text-center{text-align:center}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-8{--tw-leading:calc(var(--spacing) * 8);line-height:calc(var(--spacing) * 8)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.whitespace-nowrap{white-space:nowrap}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-800{color:var(--color-gray-800)}.text-primary{color:var(--color-primary)}.text-transparent{color:#0000}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.decoration-white\\/30{text-decoration-color:#ffffff4d}@supports (color:color-mix(in lab,red,red)){.decoration-white\\/30{-webkit-text-decoration-color:color-mix(in oklab,var(--color-white) 30%,transparent);text-decoration-color:color-mix(in oklab,var(--color-white) 30%,transparent)}}.underline-offset-2{text-underline-offset:2px}.opacity-75{opacity:.75}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.inset-ring{--tw-inset-ring-shadow:inset 0 0 0 1px var(--tw-inset-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.inset-ring-gray-500\\/10{--tw-inset-ring-color:#6a72821a}@supports (color:color-mix(in lab,red,red)){.inset-ring-gray-500\\/10{--tw-inset-ring-color:color-mix(in oklab, var(--color-gray-500) 10%, transparent)}}.backdrop-blur-3xl{--tw-backdrop-blur:blur(var(--blur-3xl));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.kerning-none{font-kerning:none}@media(hover:hover){.group-hover\\:mr-0:is(:where(.group):hover *){margin-right:calc(var(--spacing) * 0)}.group-hover\\:max-w-96:is(:where(.group):hover *){max-width:calc(var(--spacing) * 96)}.group-hover\\:text-inherit:is(:where(.group):hover *){color:inherit}}.group-focus\\:mr-0:is(:where(.group):focus *){margin-right:calc(var(--spacing) * 0)}.group-focus\\:max-w-96:is(:where(.group):focus *){max-width:calc(var(--spacing) * 96)}.group-focus\\:text-inherit:is(:where(.group):focus *){color:inherit}.group-\\[\\.fab--extended\\]\\:mr-0:is(:where(.group).fab--extended *){margin-right:calc(var(--spacing) * 0)}.group-\\[\\.fab--extended\\]\\:max-w-96:is(:where(.group).fab--extended *){max-width:calc(var(--spacing) * 96)}.group-\\[\\.fab--extended\\]\\:text-inherit:is(:where(.group).fab--extended *){color:inherit}.before\\:absolute:before{content:var(--tw-content);position:absolute}.before\\:top-0:before{content:var(--tw-content);top:calc(var(--spacing) * 0)}.before\\:-bottom-1:before{content:var(--tw-content);bottom:calc(var(--spacing) * -1)}.before\\:-left-\\[calc\\(1\\.5rem\\+2\\.5px\\)\\]:before{content:var(--tw-content);left:calc(-1.5rem - 2.5px)}.before\\:left-0:before{content:var(--tw-content);left:calc(var(--spacing) * 0)}.before\\:hidden:before{content:var(--tw-content);display:none}.before\\:h-1:before{content:var(--tw-content);height:calc(var(--spacing) * 1)}.before\\:h-\\[19px\\]:before{content:var(--tw-content);height:19px}.before\\:w-\\[3ch\\]:before{content:var(--tw-content);width:3ch}.before\\:w-\\[19px\\]:before{content:var(--tw-content);width:19px}.before\\:-translate-x-1\\/2:before{content:var(--tw-content);--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.before\\:rounded-\\[0_0\\.25rem_0\\.25rem_0\\]:before{content:var(--tw-content);border-radius:0 .25rem .25rem 0}.before\\:rounded-full:before{content:var(--tw-content);border-radius:3.40282e38px}.before\\:border-4:before{content:var(--tw-content);border-style:var(--tw-border-style);border-width:4px}.before\\:border-primary:before{content:var(--tw-content);border-color:var(--color-primary)}.before\\:bg-primary:before{content:var(--tw-content);background-color:var(--color-primary)}.before\\:bg-white:before{content:var(--tw-content);background-color:var(--color-white)}@media(hover:hover){.hover\\:bg-black:hover{background-color:var(--color-black)}.hover\\:decoration-white\\/80:hover{text-decoration-color:#fffc}@supports (color:color-mix(in lab,red,red)){.hover\\:decoration-white\\/80:hover{-webkit-text-decoration-color:color-mix(in oklab,var(--color-white) 80%,transparent);text-decoration-color:color-mix(in oklab,var(--color-white) 80%,transparent)}}}@media(min-width:40rem){.sm\\:flex-nowrap{flex-wrap:nowrap}}@media(min-width:48rem){.md\\:-mb-60{margin-bottom:calc(var(--spacing) * -60)}.md\\:ml-4{margin-left:calc(var(--spacing) * 4)}.md\\:h-80{height:calc(var(--spacing) * 80)}.md\\:border-l-\\[5px\\]{border-left-style:var(--tw-border-style);border-left-width:5px}.md\\:p-6{padding:calc(var(--spacing) * 6)}.md\\:pr-0{padding-right:calc(var(--spacing) * 0)}.md\\:pl-6{padding-left:calc(var(--spacing) * 6)}.md\\:before\\:block:before{content:var(--tw-content);display:block}}.dark\\:border-slate-700\\/50:where(.dark,.dark *){border-color:#31415880}@supports (color:color-mix(in lab,red,red)){.dark\\:border-slate-700\\/50:where(.dark,.dark *){border-color:color-mix(in oklab,var(--color-slate-700) 50%,transparent)}}.dark\\:bg-gray-700:where(.dark,.dark *){background-color:var(--color-gray-700)}.dark\\:bg-slate-800:where(.dark,.dark *){background-color:var(--color-slate-800)}.dark\\:bg-slate-900\\/95:where(.dark,.dark *){background-color:#0f172bf2}@supports (color:color-mix(in lab,red,red)){.dark\\:bg-slate-900\\/95:where(.dark,.dark *){background-color:color-mix(in oklab,var(--color-slate-900) 95%,transparent)}}.dark\\:bg-slate-950:where(.dark,.dark *){background-color:var(--color-slate-950)}.dark\\:text-slate-200:where(.dark,.dark *){color:var(--color-slate-200)}.dark\\:text-slate-300:where(.dark,.dark *){color:var(--color-slate-300)}.dark\\:text-slate-400:where(.dark,.dark *){color:var(--color-slate-400)}.dark\\:text-white:where(.dark,.dark *){color:var(--color-white)}.dark\\:opacity-90:where(.dark,.dark *){opacity:.9}.dark\\:shadow-2xl:where(.dark,.dark *){--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.dark\\:ring-1:where(.dark,.dark *){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.dark\\:ring-white\\/10:where(.dark,.dark *){--tw-ring-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.dark\\:ring-white\\/10:where(.dark,.dark *){--tw-ring-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.dark\\:inset-ring-white\\/10:where(.dark,.dark *){--tw-inset-ring-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.dark\\:inset-ring-white\\/10:where(.dark,.dark *){--tw-inset-ring-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.dark\\:contrast-125:where(.dark,.dark *){--tw-contrast:contrast(125%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.dark\\:saturate-50:where(.dark,.dark *){--tw-saturate:saturate(50%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.dark\\:before\\:bg-slate-900:where(.dark,.dark *):before{content:var(--tw-content);background-color:var(--color-slate-900)}@media print{.print\\:hidden{display:none}.print\\:rounded-none{border-radius:0}.print\\:bg-transparent{background-color:#0000}.print\\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.print\\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.print\\:shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.before\\:print\\:\\[print-color-adjust\\:exact\\]:before{content:var(--tw-content)}@media print{.before\\:print\\:\\[print-color-adjust\\:exact\\]:before{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.\\[\\&_a\\]\\:underline a{text-decoration-line:underline}}:where(.dark){--color-primary:oklch(from var(--theme-primary) calc(l*.9) calc(c*.7) h)}@media print{.portrait-card{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y);transform:none}.portrait-card__side{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);transition-property:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}';
|
|
1875
|
+
async function cn(e) {
|
|
1876
|
+
const t = Ur.parse(e);
|
|
1877
|
+
return Ge(t.meta.lang), t.meta.themeConfig.ui.showFavicons && await Promise.all(
|
|
1878
|
+
t.work.map(async (r) => {
|
|
1879
|
+
r.logo = await on(r.url);
|
|
1880
|
+
})
|
|
1881
|
+
), `<!doctype html>${await rn({ resume: t, css: sn })}`;
|
|
1882
|
+
}
|
|
1883
|
+
export {
|
|
1884
|
+
cn as render
|
|
1885
|
+
};
|