@levo-so/site-runtime 0.2.3 → 0.3.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.
package/index.js CHANGED
@@ -7,25 +7,25 @@ import * as o from "react";
7
7
  import { Suspense as s, createContext as c, lazy as l, useCallback as u, useContext as d, useEffect as f, useMemo as p, useRef as m, useState as h } from "react";
8
8
  import { Fragment as g, jsx as _, jsxs as v } from "react/jsx-runtime";
9
9
  import { createLevoClient as y, getLevoError as b } from "@levo-so/core";
10
- import { ScriptOnce as x } from "@tanstack/react-router";
11
- import { useQuery as S } from "@tanstack/react-query";
12
- import { Dialog as C } from "@base-ui/react/dialog";
13
- import { createLevoInsights as ee } from "@levo-so/insights";
14
- import { CheckIcon as te, ChevronLeftIcon as w, ChevronRightIcon as T, LoaderCircle as E, Tag as D, X as O, XIcon as ne } from "lucide-react";
15
- import { useRazorpay as k } from "react-razorpay";
16
- import { EmbeddedCheckout as A, EmbeddedCheckoutProvider as j } from "@stripe/react-stripe-js";
10
+ import { ScriptOnce as ee } from "@tanstack/react-router";
11
+ import { useQuery as x } from "@tanstack/react-query";
12
+ import { Dialog as S } from "@base-ui/react/dialog";
13
+ import { createLevoInsights as C } from "@levo-so/insights";
14
+ import { CheckIcon as w, ChevronLeftIcon as T, ChevronRightIcon as E, LoaderCircle as D, Tag as O, X as k, XIcon as te } from "lucide-react";
15
+ import { useRazorpay as ne } from "react-razorpay";
16
+ import { EmbeddedCheckout as re, EmbeddedCheckoutProvider as A } from "@stripe/react-stripe-js";
17
17
  //#region src/hooks/useMounted.ts
18
- function M() {
18
+ function j() {
19
19
  let [e, t] = h(!1);
20
20
  return f(() => t(!0), []), e;
21
21
  }
22
22
  //#endregion
23
23
  //#region src/chat/LevoChat.tsx
24
- var N = l(() => import("./kbChat-DHujgETt.js")), P = ({ site: e }) => {
25
- let t = M(), n = e.workspace_id || void 0;
24
+ var M = l(() => import("./kbChat-AUJxjURc.js")), N = ({ site: e }) => {
25
+ let t = j(), n = e.workspace_id || void 0;
26
26
  return !t || !n ? null : /* @__PURE__ */ _(s, {
27
27
  fallback: null,
28
- children: /* @__PURE__ */ _(N, {
28
+ children: /* @__PURE__ */ _(M, {
29
29
  workspaceId: n,
30
30
  siteName: e.name || void 0,
31
31
  siteLogo: void 0,
@@ -34,7 +34,7 @@ var N = l(() => import("./kbChat-DHujgETt.js")), P = ({ site: e }) => {
34
34
  showBranding: !!e.feature_flag?.branding
35
35
  })
36
36
  });
37
- }, F = (e) => {
37
+ }, P = (e) => {
38
38
  let t = (e?.apiUrl || "").replace(/\/$/, "");
39
39
  return t ? y({
40
40
  apiUrl: t,
@@ -43,13 +43,13 @@ var N = l(() => import("./kbChat-DHujgETt.js")), P = ({ site: e }) => {
43
43
  NODE_ENV: "",
44
44
  APP_MODE: e?.appMode || "production"
45
45
  }) : null;
46
- }, I = (e) => ({
46
+ }, F = (e) => ({
47
47
  apiUrl: e.levo?.api_url || "",
48
48
  workspace: e.workspace_id || "",
49
49
  siteId: e.id || "",
50
50
  insightsUrl: e.levo?.insights_url || null,
51
51
  appMode: e.levo?.app_mode || "production"
52
- }), L = "(prefers-color-scheme: dark)", re = (e) => {
52
+ }), I = "(prefers-color-scheme: dark)", L = (e) => {
53
53
  try {
54
54
  let t = localStorage.getItem(e);
55
55
  return t === "light" || t === "dark" || t === "system" ? t : null;
@@ -61,30 +61,30 @@ var N = l(() => import("./kbChat-DHujgETt.js")), P = ({ site: e }) => {
61
61
  localStorage.setItem(e, t);
62
62
  } catch {}
63
63
  };
64
- function z(e, t) {
65
- return `(function(){try{var t=localStorage.getItem(${JSON.stringify(e)});if(t!=='light'&&t!=='dark'&&t!=='system'){t=${JSON.stringify(t)}}var d=matchMedia('${L}').matches;var r=t==='system'?(d?'dark':'light'):t;var e=document.documentElement;e.classList.remove('light','dark');e.classList.add(r);e.style.colorScheme=r}catch(e){}})();`;
64
+ function ie(e, t) {
65
+ return `(function(){try{var t=localStorage.getItem(${JSON.stringify(e)});if(t!=='light'&&t!=='dark'&&t!=='system'){t=${JSON.stringify(t)}}var d=matchMedia('${I}').matches;var r=t==='system'?(d?'dark':'light'):t;var e=document.documentElement;e.classList.remove('light','dark');e.classList.add(r);e.style.colorScheme=r}catch(e){}})();`;
66
66
  }
67
- var B = c(void 0), ie = (e) => e === "system" ? window.matchMedia(L).matches ? "dark" : "light" : e;
68
- function V(e) {
67
+ var ae = c(void 0), oe = (e) => e === "system" ? window.matchMedia(I).matches ? "dark" : "light" : e;
68
+ function z(e) {
69
69
  let t = document.documentElement;
70
70
  t.classList.remove("light", "dark"), t.classList.add(e), t.style.colorScheme = e;
71
71
  }
72
- var H = ({ children: e, defaultMode: t = "system", storageKey: n = "color-mode" }) => {
73
- let [r, i] = h(t), [a, o] = h(t === "dark" ? "dark" : "light"), s = M();
72
+ var B = ({ children: e, defaultMode: t = "system", storageKey: n = "color-mode" }) => {
73
+ let [r, i] = h(t), [a, o] = h(t === "dark" ? "dark" : "light"), s = j();
74
74
  return f(() => {
75
- i(re(n) ?? t);
75
+ i(L(n) ?? t);
76
76
  }, [t, n]), f(() => {
77
77
  if (!s) return;
78
- let e = ie(r);
79
- V(e), o(e);
78
+ let e = oe(r);
79
+ z(e), o(e);
80
80
  }, [r, s]), f(() => {
81
81
  if (!s || r !== "system") return;
82
- let e = window.matchMedia(L), t = () => {
82
+ let e = window.matchMedia(I), t = () => {
83
83
  let t = e.matches ? "dark" : "light";
84
- V(t), o(t);
84
+ z(t), o(t);
85
85
  };
86
86
  return e.addEventListener("change", t), () => e.removeEventListener("change", t);
87
- }, [r, s]), /* @__PURE__ */ v(B.Provider, {
87
+ }, [r, s]), /* @__PURE__ */ v(ae.Provider, {
88
88
  value: {
89
89
  mode: r,
90
90
  resolvedMode: a,
@@ -92,35 +92,35 @@ var H = ({ children: e, defaultMode: t = "system", storageKey: n = "color-mode"
92
92
  R(n, e), i(e);
93
93
  }
94
94
  },
95
- children: [/* @__PURE__ */ _(x, { children: z(n, t) }), e]
95
+ children: [/* @__PURE__ */ _(ee, { children: ie(n, t) }), e]
96
96
  });
97
97
  };
98
- function ae() {
99
- let e = d(B);
98
+ function se() {
99
+ let e = d(ae);
100
100
  if (e === void 0) throw Error("useColorMode must be used within a ColorModeProvider");
101
101
  return e;
102
102
  }
103
103
  //#endregion
104
104
  //#region src/data/index.ts
105
- var U = (e) => [
105
+ var V = (e) => [
106
106
  "levo-source",
107
107
  "list",
108
108
  e.module,
109
109
  e.identifier,
110
110
  e.query ?? null,
111
111
  e.options ?? null
112
- ], oe = (e, t) => [
112
+ ], ce = (e, t) => [
113
113
  "levo-source",
114
114
  "record",
115
115
  e.module,
116
116
  e.identifier,
117
117
  t ?? null
118
- ], W = (e) => [
118
+ ], H = (e) => [
119
119
  "levo-source",
120
120
  "form",
121
121
  e.module,
122
122
  e.identifier
123
- ], se = async (e, t) => {
123
+ ], U = async (e, t) => {
124
124
  let n = t.module === "collection" ? await e.collection.getCollectionContentList({
125
125
  collection_key: t.identifier,
126
126
  ...t.query ?? {}
@@ -129,13 +129,13 @@ var U = (e) => [
129
129
  data: n.content.data ?? [],
130
130
  meta: n.content.meta ?? null
131
131
  };
132
- }, ce = async (e, t, n) => (t.module === "collection" ? await e.collection.getCollectionContent({
132
+ }, W = async (e, t, n) => (t.module === "collection" ? await e.collection.getCollectionContent({
133
133
  collection_key: t.identifier,
134
134
  slug: n
135
- }) : t.module === "blog" ? await e.blog.getSingleBlog(t.identifier, n) : await e.event.getSingleEvent(n)).content.data ?? null, le = async (e, t) => (await e.collection.getCollectionByIDExpanded(t.identifier)).content.data ?? null, ue = (e) => {
136
- let t = n(), r = S({
137
- queryKey: U(e),
138
- queryFn: () => se(t, e),
135
+ }) : t.module === "blog" ? await e.blog.getSingleBlog(t.identifier, n) : await e.event.getSingleEvent(n)).content.data ?? null, G = async (e, t) => (await e.collection.getCollectionByIDExpanded(t.identifier)).content.data ?? null, K = (e) => {
136
+ let t = n(), r = x({
137
+ queryKey: V(e),
138
+ queryFn: () => U(t, e),
139
139
  enabled: !!t
140
140
  });
141
141
  return {
@@ -148,10 +148,10 @@ var U = (e) => [
148
148
  ...e
149
149
  }) }
150
150
  };
151
- }, de = (e, t) => {
152
- let r = n(), i = S({
153
- queryKey: oe(e, t),
154
- queryFn: () => ce(r, e, t),
151
+ }, le = (e, t) => {
152
+ let r = n(), i = x({
153
+ queryKey: ce(e, t),
154
+ queryFn: () => W(r, e, t),
155
155
  enabled: !!r && !!t
156
156
  });
157
157
  return {
@@ -163,10 +163,10 @@ var U = (e) => [
163
163
  ...e
164
164
  }) }
165
165
  };
166
- }, fe = (e) => {
167
- let t = n(), r = S({
168
- queryKey: W(e),
169
- queryFn: () => le(t, e),
166
+ }, q = (e) => {
167
+ let t = n(), r = x({
168
+ queryKey: H(e),
169
+ queryFn: () => G(t, e),
170
170
  enabled: !!t
171
171
  });
172
172
  return {
@@ -178,27 +178,27 @@ var U = (e) => [
178
178
  ...e
179
179
  }) }
180
180
  };
181
- }, pe = async ({ queryClient: e, config: t, sources: n, params: r }) => {
182
- let i = F(t);
181
+ }, ue = async ({ queryClient: e, config: t, sources: n, params: r }) => {
182
+ let i = P(t);
183
183
  if (!i || !n) return {};
184
184
  let a = await Promise.all(Object.entries(n).map(async ([t, n]) => {
185
185
  if (n.mode === "record") {
186
186
  let a = r?.slug;
187
187
  return a ? [t, await e.ensureQueryData({
188
- queryKey: oe(n, a),
189
- queryFn: () => ce(i, n, a)
188
+ queryKey: ce(n, a),
189
+ queryFn: () => W(i, n, a)
190
190
  }).catch(() => null)] : [t, null];
191
191
  }
192
192
  return n.mode === "form" ? [t, await e.ensureQueryData({
193
- queryKey: W(n),
194
- queryFn: () => le(i, n)
193
+ queryKey: H(n),
194
+ queryFn: () => G(i, n)
195
195
  }).catch(() => null)] : [t, await e.ensureQueryData({
196
- queryKey: U(n),
197
- queryFn: () => se(i, n)
196
+ queryKey: V(n),
197
+ queryFn: () => U(i, n)
198
198
  }).catch(() => null)];
199
199
  }));
200
200
  return Object.fromEntries(a);
201
- }, me = {
201
+ }, de = {
202
202
  background: "var(--color-page)",
203
203
  foreground: "var(--color-ink)",
204
204
  text: "var(--color-ink)",
@@ -220,11 +220,11 @@ var U = (e) => [
220
220
  input: "var(--color-background1)",
221
221
  inputForeground: "var(--color-ink)",
222
222
  ring: "var(--color-brand)"
223
- }, he = ({ source: e, submitLabel: t = "Submit", hiddenFields: o, formVariant: s = "default", successConfig: c, theme: l, className: u }) => {
224
- let d = n(), { schema: f, isLoading: m, bind: h } = fe(e), g = p(() => ({
223
+ }, fe = ({ source: e, submitLabel: t = "Submit", hiddenFields: o, formVariant: s = "default", successConfig: c, theme: l, className: u }) => {
224
+ let d = n(), { schema: f, isLoading: m, bind: h } = q(e), g = p(() => ({
225
225
  ...a({
226
226
  colors: {
227
- ...me,
227
+ ...de,
228
228
  ...l?.colors
229
229
  },
230
230
  radius: l?.radius ?? "var(--radius-token)",
@@ -255,37 +255,89 @@ var U = (e) => [
255
255
  successConfig: c
256
256
  })
257
257
  }) : null;
258
- }, G = {
258
+ }, pe = 1400, me = 12 * 1024 * 1024, he = new Set(["transparent", "rgba(0, 0, 0, 0)"]), ge = (e) => {
259
+ let t = getComputedStyle(e);
260
+ return !he.has(t.backgroundColor) || t.backgroundImage !== "none";
261
+ }, _e = (e) => {
262
+ for (let t = e; t; t = t.parentElement) {
263
+ let e = getComputedStyle(t).backgroundColor;
264
+ if (!he.has(e)) return e;
265
+ }
266
+ return "#ffffff";
267
+ }, ve = async (e, t) => {
268
+ let { toPng: n } = await import("./es-iCqKQf1c.js"), r = e.getBoundingClientRect(), i = Math.max(r.width, r.height, 1), a = await n(e, {
269
+ pixelRatio: Math.min(2, Math.max(.4, pe / i)),
270
+ backgroundColor: _e(e),
271
+ filter: (e) => !t.includes(e)
272
+ });
273
+ if (a.length > me) throw Error("capture too large");
274
+ return a;
275
+ }, ye = 4, be = 4e3, xe = (e, t) => {
276
+ let n = document.elementFromPoint(e.x + e.width / 2, e.y + e.height / 2);
277
+ for (; n && t.includes(n);) n = n.parentElement;
278
+ let r = document.body;
279
+ for (let t = n; t; t = t.parentElement) {
280
+ let n = t.getBoundingClientRect();
281
+ if (n.left <= e.x + 1 && n.top <= e.y + 1 && n.right >= e.x + e.width - 1 && n.bottom >= e.y + e.height - 1) {
282
+ r = t;
283
+ break;
284
+ }
285
+ }
286
+ let i = window.innerWidth * window.innerHeight * ye || 2 ** 53 - 1, a = r;
287
+ for (; !ge(a);) {
288
+ let e = a.parentElement;
289
+ if (!e || e === document.documentElement) break;
290
+ let t = e.getBoundingClientRect();
291
+ if (t.width * t.height > i) break;
292
+ a = e;
293
+ }
294
+ return a;
295
+ }, Se = async (e, t) => {
296
+ let { toCanvas: n } = await import("./es-iCqKQf1c.js"), r = xe(e, t), i = r.getBoundingClientRect(), a = Math.max(e.width, e.height, 1), o = Math.min(2, Math.max(.4, pe / a)), s = Math.max(i.width, i.height, 1);
297
+ o = Math.min(o, be / s);
298
+ let c = await n(r, {
299
+ pixelRatio: o,
300
+ backgroundColor: _e(r),
301
+ filter: (e) => !t.includes(e)
302
+ }), l = document.createElement("canvas");
303
+ l.width = Math.max(1, Math.round(e.width * o)), l.height = Math.max(1, Math.round(e.height * o));
304
+ let u = l.getContext("2d");
305
+ if (!u) throw Error("no 2d context");
306
+ u.drawImage(c, (e.x - i.left) * o, (e.y - i.top) * o, e.width * o, e.height * o, 0, 0, l.width, l.height);
307
+ let d = l.toDataURL("image/png");
308
+ if (d.length > me) throw Error("capture too large");
309
+ return d;
310
+ }, J = {
259
311
  ring: 99997,
260
312
  overlay: 99998,
261
313
  label: 99999
262
- }, K = {
314
+ }, Y = {
263
315
  hover: "#3b82f6",
264
316
  hoverBg: "rgba(59,130,246,0.12)",
265
317
  hoverLabelBg: "#1d4ed8",
266
318
  select: "#16a34a",
267
319
  selectGlow: "rgba(22,163,74,0.18)"
268
- }, q = (e) => {
320
+ }, X = (e) => {
269
321
  let t = e?.getAttribute("data-tsd-source");
270
322
  return t ? t.replace(/^\//, "") : null;
271
- }, J = (e) => Array.from(document.querySelectorAll("[data-tsd-source]")).filter((t) => q(t) === e), Y = (e, t) => {
272
- let n = J(t).indexOf(e);
323
+ }, Ce = (e) => Array.from(document.querySelectorAll("[data-tsd-source]")).filter((t) => X(t) === e), we = (e, t) => {
324
+ let n = Ce(t).indexOf(e);
273
325
  return n < 0 ? 0 : n;
274
- }, X = (e, t = 0) => {
275
- let n = J(e);
326
+ }, Z = (e, t = 0) => {
327
+ let n = Ce(e);
276
328
  return n[t] ?? n[0] ?? null;
277
- }, ge = (e, t) => {
329
+ }, Te = (e, t) => {
278
330
  let n = (e.getAttribute("data-staged-key") || "").split(/\s+/).filter(Boolean);
279
331
  n.includes(t) || e.setAttribute("data-staged-key", [...n, t].join(" "));
280
- }, _e = (e, t) => {
332
+ }, Ee = (e, t) => {
281
333
  let n = (e.getAttribute("data-staged-key") || "").split(/\s+/).filter((e) => e && e !== t);
282
334
  n.length ? e.setAttribute("data-staged-key", n.join(" ")) : e.removeAttribute("data-staged-key");
283
- }, ve = (e, t) => {
335
+ }, De = (e, t) => {
284
336
  let n = Object.entries(t.styles).filter(([e]) => /^-?[a-zA-Z][a-zA-Z0-9-]*$/.test(e)).map(([e, t]) => `${e}:${String(t).replace(/[;{}]/g, "")} !important;`).join("");
285
337
  if (!n) return "";
286
338
  let r = `[data-staged-key~="${CSS.escape(e)}"]{${n}}`, i = t.media?.replace(/[;{}]/g, "").trim();
287
339
  return i ? `@media ${i}{${r}}` : r;
288
- }, ye = (e) => {
340
+ }, Oe = (e) => {
289
341
  let t = e.tagName.toLowerCase();
290
342
  return t === "input" ? {
291
343
  checkbox: "Checkbox",
@@ -327,31 +379,31 @@ var U = (e) => [
327
379
  aside: "Sidebar",
328
380
  div: "Container"
329
381
  }[t] || `${t.charAt(0).toUpperCase()}${t.slice(1)}`;
330
- }, be = 36, xe = (e) => {
331
- let t = ye(e), n = ((e) => e.replace(/\s+/g, " ").trim())(e.getAttribute("aria-label") || e.getAttribute("alt") || e.getAttribute("title") || e.getAttribute("name") || "");
332
- return n ? `${t} · ${n.length > be ? `${n.slice(0, be - 1).trimEnd()}…` : n}` : t;
333
- }, Se = (e) => {
382
+ }, ke = 36, Ae = (e) => {
383
+ let t = Oe(e), n = ((e) => e.replace(/\s+/g, " ").trim())(e.getAttribute("aria-label") || e.getAttribute("alt") || e.getAttribute("title") || e.getAttribute("name") || "");
384
+ return n ? `${t} · ${n.length > ke ? `${n.slice(0, ke - 1).trimEnd()}…` : n}` : t;
385
+ }, je = (e) => {
334
386
  let t = [], n = e;
335
387
  for (; n && n.nodeType === 1 && n !== document.body && t.length < 8;) t.unshift(n.tagName.toLowerCase()), n = n.parentElement;
336
388
  return t.join(" > ");
337
- }, Ce = () => {
389
+ }, Me = () => {
338
390
  let e = document.createElement("div");
339
- e.style.cssText = `position:fixed;pointer-events:none;z-index:${G.overlay};background:${K.hoverBg};outline:2px solid ${K.hover};border-radius:2px;display:none`;
391
+ e.style.cssText = `position:fixed;pointer-events:none;z-index:${J.overlay};background:${Y.hoverBg};outline:2px solid ${Y.hover};border-radius:2px;display:none`;
340
392
  let t = document.createElement("div");
341
- t.style.cssText = `position:fixed;pointer-events:none;z-index:${G.label};background:${K.hoverLabelBg};color:#fff;font:11px/1.6 ui-monospace,monospace;padding:1px 6px;border-radius:4px;display:none;max-width:70vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis`;
393
+ t.style.cssText = `position:fixed;pointer-events:none;z-index:${J.label};background:${Y.hoverLabelBg};color:#fff;font:11px/1.6 ui-monospace,monospace;padding:1px 6px;border-radius:4px;display:none;max-width:70vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis`;
342
394
  let n = document.createElement("div");
343
- n.style.cssText = `position:fixed;pointer-events:none;z-index:${G.ring};outline:2px solid ${K.select};outline-offset:1px;border-radius:3px;box-shadow:0 0 0 4px ${K.selectGlow};display:none`;
395
+ n.style.cssText = `position:fixed;pointer-events:none;z-index:${J.ring};outline:2px solid ${Y.select};outline-offset:1px;border-radius:3px;box-shadow:0 0 0 4px ${Y.selectGlow};display:none`;
344
396
  let r = document.createElement("div");
345
- return r.style.cssText = `position:fixed;pointer-events:none;z-index:${G.label};background:${K.select};color:#fff;font:11px/1.6 ui-monospace,monospace;padding:1px 6px;border-radius:4px;display:none;max-width:70vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis`, {
397
+ return r.style.cssText = `position:fixed;pointer-events:none;z-index:${J.label};background:${Y.select};color:#fff;font:11px/1.6 ui-monospace,monospace;padding:1px 6px;border-radius:4px;display:none;max-width:70vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis`, {
346
398
  overlay: e,
347
399
  label: t,
348
400
  ring: n,
349
401
  ringLabel: r
350
402
  };
351
- }, we = (e, t, n) => {
403
+ }, Ne = (e, t, n) => {
352
404
  let r = n.getBoundingClientRect();
353
- e.style.display = "block", e.style.left = `${r.left}px`, e.style.top = `${r.top}px`, e.style.width = `${r.width}px`, e.style.height = `${r.height}px`, t.style.display = "block", t.textContent = xe(n), t.style.left = `${Math.max(4, r.left)}px`, t.style.top = `${r.top > 26 ? r.top - 22 : r.bottom + 4}px`;
354
- }, Te = (e) => {
405
+ e.style.display = "block", e.style.left = `${r.left}px`, e.style.top = `${r.top}px`, e.style.width = `${r.width}px`, e.style.height = `${r.height}px`, t.style.display = "block", t.textContent = Ae(n), t.style.left = `${Math.max(4, r.left)}px`, t.style.top = `${r.top > 26 ? r.top - 22 : r.bottom + 4}px`;
406
+ }, Pe = (e) => {
355
407
  let t = (e instanceof Element ? e : null)?.closest("a[href]");
356
408
  if (!t || t.target === "_blank") return null;
357
409
  let n;
@@ -361,11 +413,11 @@ var U = (e) => [
361
413
  return null;
362
414
  }
363
415
  return n.protocol !== "http:" && n.protocol !== "https:" || n.origin === location.origin ? null : n.href;
364
- }, Ee = (e) => {
416
+ }, Fe = (e) => {
365
417
  if (!e) return !1;
366
418
  let t = e.tagName;
367
419
  return t === "INPUT" || t === "TEXTAREA" || t === "SELECT" || e.isContentEditable === !0;
368
- }, De = (e) => {
420
+ }, Ie = (e) => {
369
421
  if (!e.childNodes.length) return !1;
370
422
  let t = !1;
371
423
  for (let n of e.childNodes) {
@@ -373,10 +425,10 @@ var U = (e) => [
373
425
  (n.textContent ?? "").trim() && (t = !0);
374
426
  }
375
427
  return t;
376
- }, Oe = 2e3, ke = (e) => {
428
+ }, Le = 2e3, Re = (e) => {
377
429
  let t = [], n = e;
378
430
  for (; n && n.nodeType === 1 && n !== document.body && t.length < 8;) {
379
- let e = q(n);
431
+ let e = X(n);
380
432
  e && t.unshift({
381
433
  tag: n.tagName.toLowerCase(),
382
434
  text: (n.textContent || "").trim().slice(0, 60),
@@ -384,25 +436,25 @@ var U = (e) => [
384
436
  }), n = n.parentElement;
385
437
  }
386
438
  return t;
387
- }, Ae = (e) => {
388
- let t = q(e), n = t ? J(t).length : 1, r = t ? Y(e, t) : 0, i = t && De(e) ? (e.textContent ?? "").replace(/\s+/g, " ").trim().slice(0, Oe) : void 0, a = je(e);
439
+ }, ze = (e) => {
440
+ let t = X(e), n = t ? Ce(t).length : 1, r = t ? we(e, t) : 0, i = t && Ie(e) ? (e.textContent ?? "").replace(/\s+/g, " ").trim().slice(0, Le) : void 0, a = Be(e);
389
441
  return {
390
442
  tag: e.tagName.toLowerCase(),
391
443
  classes: typeof e.className == "string" ? e.className.trim() : "",
392
444
  text: (e.innerText || "").trim().slice(0, 120),
393
- label: xe(e),
394
- path: Se(e),
445
+ label: Ae(e),
446
+ path: je(e),
395
447
  source: t,
396
448
  index: r,
397
449
  occurrences: n,
398
- ancestors: ke(e),
450
+ ancestors: Re(e),
399
451
  ...i === void 0 ? {} : { fullText: i },
400
452
  ...a ? { sourceBinding: a } : {}
401
453
  };
402
- }, je = (e) => {
454
+ }, Be = (e) => {
403
455
  let t = e.closest("[data-levo-source]");
404
456
  if (!t) return;
405
- let n = t.getAttribute("data-levo-source") ?? "", r = q(t), i;
457
+ let n = t.getAttribute("data-levo-source") ?? "", r = X(t), i;
406
458
  try {
407
459
  i = JSON.parse(n);
408
460
  } catch {
@@ -412,12 +464,12 @@ var U = (e) => [
412
464
  raw: n,
413
465
  element: {
414
466
  source: r ?? "",
415
- index: r ? Y(t, r) : 0
467
+ index: r ? we(t, r) : 0
416
468
  },
417
469
  ...i === void 0 ? {} : { config: i }
418
470
  };
419
- }, Me = () => Array.from(document.querySelectorAll("[data-levo-source]")).map((e) => {
420
- let t = e.getAttribute("data-levo-source") ?? "", n = q(e), r;
471
+ }, Ve = () => Array.from(document.querySelectorAll("[data-levo-source]")).map((e) => {
472
+ let t = e.getAttribute("data-levo-source") ?? "", n = X(e), r;
421
473
  try {
422
474
  r = JSON.parse(t);
423
475
  } catch {
@@ -427,21 +479,21 @@ var U = (e) => [
427
479
  raw: t,
428
480
  element: {
429
481
  source: n ?? "",
430
- index: n ? Y(e, n) : 0
482
+ index: n ? we(e, n) : 0
431
483
  },
432
484
  tag: e.tagName.toLowerCase(),
433
- label: xe(e),
485
+ label: Ae(e),
434
486
  ...r === void 0 ? {} : { config: r }
435
487
  };
436
- }), Ne = 14, Pe = 2e3, Fe = 100, Ie = 48, Le = new Set([
488
+ }), He = 14, Ue = 2e3, We = 100, Ge = 48, Ke = new Set([
437
489
  "script",
438
490
  "style",
439
491
  "template",
440
492
  "noscript"
441
- ]), Re = (e, t) => t.includes(e) || e.id === "studio-staged" || Le.has(e.tagName.toLowerCase()), ze = (e) => {
493
+ ]), qe = (e, t) => t.includes(e) || e.id === "studio-staged" || Ke.has(e.tagName.toLowerCase()), Je = (e) => {
442
494
  let t = !1, n = 0, r = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map();
443
495
  for (let e of Array.from(document.querySelectorAll("[data-tsd-source]"))) {
444
- let t = q(e);
496
+ let t = X(e);
445
497
  if (!t) continue;
446
498
  let n = i.get(t) ?? 0;
447
499
  r.set(e, n), i.set(t, n + 1);
@@ -450,11 +502,11 @@ var U = (e) => [
450
502
  for (let t of e.childNodes) {
451
503
  if (t.nodeType !== 3) continue;
452
504
  let e = (t.textContent ?? "").replace(/\s+/g, " ").trim();
453
- if (e) return e.length > Ie ? `${e.slice(0, Ie).trimEnd()}…` : e;
505
+ if (e) return e.length > Ge ? `${e.slice(0, Ge).trimEnd()}…` : e;
454
506
  }
455
507
  }, o = (i, s) => {
456
508
  n++;
457
- let c = q(i), l = a(i), u = Array.from(i.children).filter((t) => !Re(t, e)), d = {
509
+ let c = X(i), l = a(i), u = Array.from(i.children).filter((t) => !qe(t, e)), d = {
458
510
  tag: i.tagName.toLowerCase(),
459
511
  ...c ? {
460
512
  source: c,
@@ -465,9 +517,9 @@ var U = (e) => [
465
517
  childCount: u.length,
466
518
  children: []
467
519
  };
468
- if (s >= Ne) return u.length && (t = !0), d;
520
+ if (s >= He) return u.length && (t = !0), d;
469
521
  for (let e of u) {
470
- if (d.children.length >= Fe || n >= Pe) {
522
+ if (d.children.length >= We || n >= Ue) {
471
523
  t = !0;
472
524
  break;
473
525
  }
@@ -479,7 +531,7 @@ var U = (e) => [
479
531
  tree: o(document.body, 0),
480
532
  truncated: t
481
533
  };
482
- }, Be = () => {
534
+ }, Ye = () => {
483
535
  let e = null;
484
536
  return {
485
537
  send: (t) => {
@@ -494,7 +546,77 @@ var U = (e) => [
494
546
  return !0;
495
547
  }
496
548
  };
497
- }, Ve = (e) => {
549
+ }, Xe = 6, Ze = 12, Qe = 12, $e = .6, et = (e, t, n, r) => ({
550
+ x: Math.min(e, n),
551
+ y: Math.min(t, r),
552
+ width: Math.abs(n - e),
553
+ height: Math.abs(r - t)
554
+ }), tt = (e, t) => {
555
+ let n = e.x + e.width, r = e.y + e.height, i = [];
556
+ for (let a of Array.from(document.querySelectorAll("[data-tsd-source]"))) {
557
+ if (t.includes(a)) continue;
558
+ let o = a.getBoundingClientRect(), s = o.width * o.height;
559
+ s <= 0 || Math.max(0, Math.min(n, o.right) - Math.max(e.x, o.left)) * Math.max(0, Math.min(r, o.bottom) - Math.max(e.y, o.top)) / s >= $e && i.push(a);
560
+ }
561
+ let a = new Set(i), o = i.filter((e) => {
562
+ for (let t = e.parentElement; t; t = t.parentElement) if (a.has(t)) return !1;
563
+ return !0;
564
+ }), s = o.length > Qe, c = [], l = [];
565
+ for (let e of o.slice(0, Qe)) {
566
+ let t = X(e);
567
+ if (!t) continue;
568
+ let n = (e.innerText || "").replace(/\s+/g, " ").trim().slice(0, 80);
569
+ c.push({
570
+ source: t,
571
+ index: we(e, t),
572
+ tag: e.tagName.toLowerCase(),
573
+ label: Ae(e),
574
+ ...n ? { text: n } : {}
575
+ }), l.push(e);
576
+ }
577
+ return {
578
+ elements: c,
579
+ nodes: l,
580
+ truncated: s
581
+ };
582
+ }, nt = () => Array.from({ length: Qe }, () => {
583
+ let e = document.createElement("div");
584
+ return e.style.cssText = `position:fixed;pointer-events:none;z-index:${J.ring};outline:1.5px solid ${Y.select};outline-offset:1px;border-radius:3px;box-shadow:0 0 0 3px ${Y.selectGlow};display:none`, e;
585
+ }), rt = () => {
586
+ let e = document.createElement("div");
587
+ e.style.cssText = `position:fixed;pointer-events:none;z-index:${J.overlay};border:1.5px dashed ${Y.select};background:${Y.selectGlow};border-radius:2px;display:none`;
588
+ let t = null, n = !1, r = 0, i = 0, a = () => {
589
+ e.style.display = "none";
590
+ };
591
+ return {
592
+ node: e,
593
+ pointerDown: (e, a) => {
594
+ t = {
595
+ x: e,
596
+ y: a
597
+ }, n = !1, r = e, i = a;
598
+ },
599
+ pointerMove: (a, o) => {
600
+ if (!t) return;
601
+ if (a = Math.min(Math.max(0, a), window.innerWidth), o = Math.min(Math.max(0, o), window.innerHeight), r = a, i = o, !n) {
602
+ if (Math.abs(a - t.x) < Xe && Math.abs(o - t.y) < Xe) return;
603
+ n = !0;
604
+ }
605
+ let s = et(t.x, t.y, a, o);
606
+ e.style.display = "block", e.style.left = `${s.x}px`, e.style.top = `${s.y}px`, e.style.width = `${s.width}px`, e.style.height = `${s.height}px`;
607
+ },
608
+ pointerUp: () => {
609
+ let e = n, o = t;
610
+ if (t = null, n = !1, a(), !e || !o) return null;
611
+ let s = et(o.x, o.y, r, i);
612
+ return s.width < Ze || s.height < Ze ? null : s;
613
+ },
614
+ cancel: () => {
615
+ t = null, n = !1, a();
616
+ },
617
+ isDragging: () => n
618
+ };
619
+ }, it = (e) => {
498
620
  let t = location.pathname, n = () => {
499
621
  location.pathname !== t && (t = location.pathname, e.onPathChange());
500
622
  }, r = !1;
@@ -514,7 +636,7 @@ var U = (e) => [
514
636
  e.__inspectorPatched && e.__orig && (history.pushState = e.__orig), t.__inspectorPatched && t.__orig && (history.replaceState = t.__orig);
515
637
  }
516
638
  } };
517
- }, He = (e) => {
639
+ }, at = (e) => {
518
640
  let { channel: t, originals: n, staged: r } = e, i = t.send, a = null;
519
641
  return { onMessage: (o) => {
520
642
  let s = o.data;
@@ -522,7 +644,7 @@ var U = (e) => [
522
644
  if (s.type === "set-inspect") e.setInspect(s.enabled);
523
645
  else if (s.type === "set-text-edit") e.setTextEdit(s.enabled);
524
646
  else if (s.type === "revert-text") {
525
- let e = String(s.element?.source || ""), t = Number.isInteger(s.element?.index) ? s.element.index : 0, r = n.restore(`${e}#${t}`), i = r == null ? null : X(e, t);
647
+ let e = String(s.element?.source || ""), t = Number.isInteger(s.element?.index) ? s.element.index : 0, r = n.restore(`${e}#${t}`), i = r == null ? null : Z(e, t);
526
648
  i && r != null && (i.textContent = r);
527
649
  } else if (s.type === "stage-style") {
528
650
  let t = String(s.stageId || ""), n = String(s.element?.source || ""), a = Number.isInteger(s.element?.index) ? s.element.index : 0, o = s.styles && typeof s.styles == "object" ? s.styles : null;
@@ -581,7 +703,7 @@ var U = (e) => [
581
703
  }
582
704
  e.syncDomObserver();
583
705
  } else if (s.type === "select-element") {
584
- let t = String(s.element?.source || ""), n = Number.isInteger(s.element?.index) ? s.element.index : 0, r = t ? X(t, n) : null;
706
+ let t = String(s.element?.source || ""), n = Number.isInteger(s.element?.index) ? s.element.index : 0, r = t ? Z(t, n) : null;
585
707
  if (!r) {
586
708
  i({
587
709
  type: "select-miss",
@@ -597,10 +719,10 @@ var U = (e) => [
597
719
  behavior: "smooth"
598
720
  }), i({
599
721
  type: "element-selected",
600
- element: Ae(r)
722
+ element: ze(r)
601
723
  });
602
724
  } else if (s.type === "edit-element") {
603
- let t = String(s.element?.source || ""), n = Number.isInteger(s.element?.index) ? s.element.index : 0, r = t ? X(t, n) : null;
725
+ let t = String(s.element?.source || ""), n = Number.isInteger(s.element?.index) ? s.element.index : 0, r = t ? Z(t, n) : null;
604
726
  if (!r) {
605
727
  i({
606
728
  type: "select-miss",
@@ -616,12 +738,12 @@ var U = (e) => [
616
738
  behavior: "smooth"
617
739
  }), i({
618
740
  type: "element-selected",
619
- element: Ae(r)
741
+ element: ze(r)
620
742
  }), e.isTextEditing() || e.setTextEdit(!0);
621
743
  let o = e.editableTarget(r);
622
744
  o && e.startEditAtEnd(o);
623
745
  } else if (s.type === "highlight-element") {
624
- let t = String(s.element?.source || ""), n = Number.isInteger(s.element?.index) ? s.element.index : 0, r = t ? X(t, n) : null;
746
+ let t = String(s.element?.source || ""), n = Number.isInteger(s.element?.index) ? s.element.index : 0, r = t ? Z(t, n) : null;
625
747
  if (!r) a = null, e.hideTextHover(), i({
626
748
  type: "highlight-miss",
627
749
  element: {
@@ -639,7 +761,7 @@ var U = (e) => [
639
761
  }
640
762
  } else if (s.type === "clear-highlight") a && (a = null, !e.isInspecting() && !e.editingNode() && e.hideTextHover());
641
763
  else if (s.type === "request-layers") {
642
- let { tree: t, truncated: n } = ze(e.ownNodes);
764
+ let { tree: t, truncated: n } = Je(e.ownNodes);
643
765
  i({
644
766
  type: "layers-tree",
645
767
  tree: t,
@@ -647,16 +769,43 @@ var U = (e) => [
647
769
  });
648
770
  } else if (s.type === "request-sources") i({
649
771
  type: "sources-list",
650
- sources: Me()
772
+ sources: Ve()
651
773
  });
652
- else if (s.type === "clear-selection") e.clearSelection();
774
+ else if (s.type === "capture-selected") {
775
+ let t = String(s.requestId || "");
776
+ if (!t) return;
777
+ let n = e.selectedNode();
778
+ if (!n || !n.isConnected) {
779
+ console.info("[levo-inspector] capture-selected: nothing selected"), i({
780
+ type: "capture-result",
781
+ requestId: t,
782
+ dataUrl: null,
783
+ error: "no-selection"
784
+ });
785
+ return;
786
+ }
787
+ ve(n, e.ownNodes).then((e) => {
788
+ console.info(`[levo-inspector] element capture ok <${n.tagName.toLowerCase()}> (${Math.round(e.length / 1024)}kB)`), i({
789
+ type: "capture-result",
790
+ requestId: t,
791
+ dataUrl: e
792
+ });
793
+ }).catch((e) => {
794
+ console.warn("[levo-inspector] element capture failed", e), i({
795
+ type: "capture-result",
796
+ requestId: t,
797
+ dataUrl: null,
798
+ error: "capture-failed"
799
+ });
800
+ });
801
+ } else if (s.type === "clear-selection") e.clearSelection();
653
802
  else if (s.type === "navigate") {
654
803
  let e = String(s.route || "/");
655
804
  /^\/(?!\/)[A-Za-z0-9\-._~/?#[\]@!$&'()*+,;=%]*$/.test(e) && location.assign(e);
656
805
  }
657
806
  }
658
807
  } };
659
- }, Ue = () => {
808
+ }, ot = () => {
660
809
  let e = /* @__PURE__ */ new Map(), t = () => {
661
810
  if (e.size > 50) {
662
811
  let t = e.keys().next().value;
@@ -676,14 +825,14 @@ var U = (e) => [
676
825
  return e.delete(t), n;
677
826
  }
678
827
  };
679
- }, We = (e) => {
828
+ }, st = (e) => {
680
829
  let { originals: t, editingNode: n } = e, r = /* @__PURE__ */ new Map(), i = () => {
681
830
  let e = document.getElementById("studio-staged");
682
831
  return e || (e = document.createElement("style"), e.id = "studio-staged", document.head.appendChild(e)), e;
683
832
  }, a = () => {
684
833
  let e = [];
685
834
  for (let [t, n] of r) if (n.kind === "style") {
686
- let r = ve(t, n);
835
+ let r = De(t, n);
687
836
  r && e.push(r);
688
837
  }
689
838
  let t = e.join("\n");
@@ -691,8 +840,8 @@ var U = (e) => [
691
840
  let n = i();
692
841
  n.textContent !== t && (n.textContent = t);
693
842
  }, o = (e, r) => {
694
- let i = X(r.source, r.index);
695
- if (i) if (r.kind === "style") ge(i, e);
843
+ let i = Z(r.source, r.index);
844
+ if (i) if (r.kind === "style") Te(i, e);
696
845
  else if (r.kind === "image") t.captureOnce(`${r.source}#${r.index}:src`, i.getAttribute("src") ?? ""), t.captureOnce(`${r.source}#${r.index}:srcset`, i.getAttribute("srcset") ?? ""), i.getAttribute("src") !== r.value && i.setAttribute("src", r.value), i.hasAttribute("srcset") && i.removeAttribute("srcset");
697
846
  else {
698
847
  if (i === n()) return;
@@ -705,8 +854,8 @@ var U = (e) => [
705
854
  let n = r.get(e);
706
855
  if (!n) return;
707
856
  r.delete(e);
708
- let i = X(n.source, n.index);
709
- if (n.kind === "style") i && _e(i, e), a();
857
+ let i = Z(n.source, n.index);
858
+ if (n.kind === "style") i && Ee(i, e), a();
710
859
  else if (n.kind === "image") {
711
860
  let e = t.restore(`${n.source}#${n.index}:src`), r = t.restore(`${n.source}#${n.index}:srcset`);
712
861
  i && (e != null && (e ? i.setAttribute("src", e) : i.removeAttribute("src")), r != null && (r ? i.setAttribute("srcset", r) : i.removeAttribute("srcset")));
@@ -735,7 +884,7 @@ var U = (e) => [
735
884
  for (let e of Array.from(document.querySelectorAll("[data-staged-key]"))) e.removeAttribute("data-staged-key");
736
885
  }
737
886
  };
738
- }, Ge = (e) => {
887
+ }, ct = (e) => {
739
888
  let { channel: t, originals: n, clearTextHover: r } = e, i = null, a = "", o = 0, s = (() => {
740
889
  try {
741
890
  let e = document.createElement("div");
@@ -754,15 +903,15 @@ var U = (e) => [
754
903
  n.selectNodeContents(e), n.collapse(!1), t.removeAllRanges(), t.addRange(n);
755
904
  }, d = (e, t = !1) => {
756
905
  if (i === e) return;
757
- i && p(i), i = e, a = q(e) || "", o = Y(e, a), r(), n.capture(`${a}#${o}`, e.textContent ?? ""), e.setAttribute("contenteditable", s ? "plaintext-only" : "true");
906
+ i && p(i), i = e, a = X(e) || "", o = we(e, a), r(), n.capture(`${a}#${o}`, e.textContent ?? ""), e.setAttribute("contenteditable", s ? "plaintext-only" : "true");
758
907
  let d = e;
759
- d.style.outline = `2px solid ${K.hover}`, d.style.outlineOffset = "3px", d.style.borderRadius = "3px", d.focus(), t && u(e), d.addEventListener("blur", c, !0), d.addEventListener("keydown", l, !0);
908
+ d.style.outline = `2px solid ${Y.hover}`, d.style.outlineOffset = "3px", d.style.borderRadius = "3px", d.focus(), t && u(e), d.addEventListener("blur", c, !0), d.addEventListener("keydown", l, !0);
760
909
  }, f = (e) => {
761
910
  e.removeAttribute("contenteditable");
762
911
  let t = e;
763
912
  t.style.outline = "", t.style.outlineOffset = "", t.style.borderRadius = "", t.removeEventListener("blur", c, !0), t.removeEventListener("keydown", l, !0), i = null;
764
913
  }, p = (e) => {
765
- let r = q(e), i = o, s = n.get(`${a}#${o}`);
914
+ let r = X(e), i = o, s = n.get(`${a}#${o}`);
766
915
  f(e);
767
916
  let c = (e.textContent ?? "").replace(/\s+/g, " ").trim();
768
917
  t.send({
@@ -773,7 +922,7 @@ var U = (e) => [
773
922
  tag: e.tagName.toLowerCase(),
774
923
  value: c,
775
924
  previous: s,
776
- occurrences: r ? J(r).length : 1
925
+ occurrences: r ? Ce(r).length : 1
777
926
  }
778
927
  });
779
928
  }, m = (e) => {
@@ -792,151 +941,229 @@ var U = (e) => [
792
941
  i && f(i);
793
942
  }
794
943
  };
795
- };
796
- //#endregion
797
- //#region src/inspector/index.tsx
798
- function Ke() {
799
- return f(() => qe(), []), null;
944
+ }, lt = "2026-07-24g · element-capture + region-drag + region-highlights (stale-region guard)";
945
+ function ut() {
946
+ return f(() => dt(), []), null;
800
947
  }
801
- function qe() {
802
- let e = !1, t = null, n = null, r = !1, i = null, a = Ue(), o = Be(), { overlay: s, label: c, ring: l, ringLabel: u } = Ce();
948
+ function dt() {
949
+ let e = !1, t = null, n = null, r = !1, i = null, a = ot(), o = Ye(), { overlay: s, label: c, ring: l, ringLabel: u } = Me();
803
950
  document.body.append(s, c, l, u);
804
- let d = [
951
+ let d = rt();
952
+ document.body.append(d.node);
953
+ let f = nt();
954
+ document.body.append(...f);
955
+ let p = [
805
956
  s,
806
957
  c,
807
958
  l,
808
- u
809
- ], f = null, p = (e) => {
810
- e && !f ? (f = document.createElement("style"), f.id = "studio-pick-cursor", f.textContent = "*,*::before,*::after{cursor:crosshair !important}", document.head.appendChild(f)) : !e && f && (f.remove(), f = null);
811
- }, m = (e) => !e || d.includes(e) || e === document.body || e === document.documentElement, h = (e) => {
812
- if (!e || m(e)) return null;
813
- let t = q(e) ? e : e.closest("[data-tsd-source]");
814
- return !t || m(t) || !De(t) ? null : t;
815
- }, g = (e) => we(s, c, e), _ = () => {
959
+ u,
960
+ d.node,
961
+ ...f
962
+ ], m = [], h = 0, g = () => {
963
+ h++;
964
+ }, _ = () => {
965
+ f.forEach((e, t) => {
966
+ let n = m[t];
967
+ if (!n || !n.isConnected) {
968
+ e.style.display = "none";
969
+ return;
970
+ }
971
+ let r = n.getBoundingClientRect();
972
+ e.style.display = "block", e.style.left = `${r.left}px`, e.style.top = `${r.top}px`, e.style.width = `${r.width}px`, e.style.height = `${r.height}px`;
973
+ });
974
+ }, v = (e) => {
975
+ m = e, _();
976
+ }, y = () => {
977
+ m.length !== 0 && (m = [], _());
978
+ }, b = null, ee = (e) => {
979
+ e && !b ? (b = document.createElement("style"), b.id = "studio-pick-cursor", b.textContent = "*,*::before,*::after{cursor:crosshair !important}", document.head.appendChild(b)) : !e && b && (b.remove(), b = null);
980
+ }, x = (e) => !e || p.includes(e) || e === document.body || e === document.documentElement, S = (e) => {
981
+ if (!e || x(e)) return null;
982
+ let t = X(e) ? e : e.closest("[data-tsd-source]");
983
+ return !t || x(t) || !Ie(t) ? null : t;
984
+ }, C = (e) => Ne(s, c, e), w = () => {
816
985
  if (n) {
817
986
  if (!n.isConnected) {
818
- w();
987
+ A();
819
988
  return;
820
989
  }
821
- we(l, u, n);
990
+ Ne(l, u, n);
822
991
  }
823
- }, v = 0, y = () => {
824
- v || !n || r || (v = requestAnimationFrame(() => {
825
- v = 0, _();
992
+ }, T = 0, E = () => {
993
+ T || !n || r || (T = requestAnimationFrame(() => {
994
+ T = 0, w();
826
995
  }));
827
- }, b = new ResizeObserver(y), x = new MutationObserver((e) => {
996
+ }, D = new ResizeObserver(E), O = new MutationObserver((e) => {
828
997
  for (let t of e) {
829
998
  let e = t.target;
830
- if (!d.some((t) => t === e) && !(t.type === "attributes" && t.attributeName === "data-staged-key")) {
831
- y(), O.scheduleReapply();
999
+ if (!p.some((t) => t === e) && !(t.type === "attributes" && t.attributeName === "data-staged-key")) {
1000
+ E(), P.scheduleReapply();
832
1001
  return;
833
1002
  }
834
1003
  }
835
- }), S = !1, C = () => {
836
- S ||= (x.observe(document.documentElement, {
1004
+ }), k = !1, te = () => {
1005
+ k ||= (O.observe(document.documentElement, {
837
1006
  attributes: !0,
838
1007
  childList: !0,
839
1008
  characterData: !0,
840
1009
  subtree: !0
841
1010
  }), !0);
842
- }, ee = () => {
843
- S &&= (x.disconnect(), !1);
844
- }, te = () => {
845
- b.disconnect(), n?.isConnected && (b.observe(n), C());
846
- }, w = () => {
847
- n = null, b.disconnect(), ne(), v &&= (cancelAnimationFrame(v), 0), l.style.display = "none", u.style.display = "none";
848
- }, T = (e) => g(e), E = () => {
1011
+ }, ne = () => {
1012
+ k &&= (O.disconnect(), !1);
1013
+ }, re = () => {
1014
+ D.disconnect(), n?.isConnected && (D.observe(n), te());
1015
+ }, A = () => {
1016
+ n = null, D.disconnect(), F(), T &&= (cancelAnimationFrame(T), 0), l.style.display = "none", u.style.display = "none", y(), g();
1017
+ }, j = (e) => C(e), M = () => {
849
1018
  s.style.display = "none", c.style.display = "none";
850
- }, D = Ge({
1019
+ }, N = ct({
851
1020
  channel: o,
852
1021
  originals: a,
853
1022
  clearTextHover: () => {
854
- i = null, E();
1023
+ i = null, M();
855
1024
  }
856
- }), O = We({
1025
+ }), P = st({
857
1026
  originals: a,
858
- editingNode: D.editingNode
859
- }), ne = () => {
860
- n?.isConnected || O.count() ? C() : ee();
861
- }, k = (n) => {
862
- n && r && A(!1), e = !!n, p(e), e || (t = null, s.style.display = "none", c.style.display = "none"), o.send({
1027
+ editingNode: N.editingNode
1028
+ }), F = () => {
1029
+ n?.isConnected || P.count() ? te() : ne();
1030
+ }, I = (n) => {
1031
+ n && r && L(!1), e = !!n, ee(e), e || (t = null, s.style.display = "none", c.style.display = "none", G()), o.send({
863
1032
  type: "inspect-state",
864
1033
  enabled: e
865
1034
  });
866
- }, A = (t) => {
867
- r = !!t, r ? (e && k(!1), l.style.display = "none", u.style.display = "none") : (D.commitIfEditing(), E(), document.documentElement.style.cursor = "", n && _()), o.send({
1035
+ }, L = (t) => {
1036
+ if (r = !!t, r) {
1037
+ e && I(!1), l.style.display = "none", u.style.display = "none";
1038
+ for (let e of f) e.style.display = "none";
1039
+ } else N.commitIfEditing(), M(), document.documentElement.style.cursor = "", n && w(), m.length > 0 && _();
1040
+ o.send({
868
1041
  type: "text-edit-state",
869
1042
  enabled: r
870
1043
  });
871
- }, j = 0, M = 0, N = 0, P = () => {
872
- j = 0;
873
- let n = document.elementFromPoint(M, N);
874
- if (!m(n)) {
1044
+ }, R = 0, ie = 0, ae = 0, oe = () => {
1045
+ R = 0;
1046
+ let n = document.elementFromPoint(ie, ae);
1047
+ if (!x(n)) {
875
1048
  if (r) {
876
- let e = h(n);
877
- if (e && e === D.editingNode()) {
878
- i = null, E(), document.documentElement.style.cursor = "";
1049
+ let e = S(n);
1050
+ if (e && e === N.editingNode()) {
1051
+ i = null, M(), document.documentElement.style.cursor = "";
879
1052
  return;
880
1053
  }
881
- i = e, document.documentElement.style.cursor = e ? "text" : "", e ? T(e) : E();
1054
+ i = e, document.documentElement.style.cursor = e ? "text" : "", e ? j(e) : M();
882
1055
  return;
883
1056
  }
884
- e && (t = n, n && g(n));
1057
+ e && (d.isDragging() || (t = n, n && C(n)));
885
1058
  }
886
- }, F = (t) => {
887
- !e && !r || (M = t.clientX, N = t.clientY, j ||= requestAnimationFrame(P));
888
- }, I = 0, L = () => {
889
- I = 0, e && t && g(t), r && !D.editingNode() && i?.isConnected && T(i), n && !r && _();
890
- }, re = () => {
891
- I ||= requestAnimationFrame(L);
892
- }, R = (n) => {
893
- n.relatedTarget || (e ? (t = null, s.style.display = "none", c.style.display = "none") : r && !D.editingNode() && (i = null, E(), document.documentElement.style.cursor = ""));
894
- }, z = (e) => {
895
- let t = Te(e.target);
1059
+ }, z = (t) => {
1060
+ !e && !r || (ie = t.clientX, ae = t.clientY, R ||= requestAnimationFrame(oe));
1061
+ }, B = 0, se = () => {
1062
+ B = 0, e && t && C(t), r && !N.editingNode() && i?.isConnected && j(i), n && !r && w(), m.length > 0 && !r && _();
1063
+ }, V = () => {
1064
+ B ||= requestAnimationFrame(se);
1065
+ }, ce = (n) => {
1066
+ n.relatedTarget || (e ? (t = null, s.style.display = "none", c.style.display = "none") : r && !N.editingNode() && (i = null, M(), document.documentElement.style.cursor = ""));
1067
+ }, H = !1, U = null, W = () => {
1068
+ if (U != null) {
1069
+ try {
1070
+ document.documentElement.releasePointerCapture(U);
1071
+ } catch {}
1072
+ U = null;
1073
+ }
1074
+ }, G = () => {
1075
+ W(), d.cancel();
1076
+ }, K = (t) => {
1077
+ !e || t.button !== 0 || !t.isPrimary || (H = !1, d.pointerDown(t.clientX, t.clientY));
1078
+ }, le = (n) => {
1079
+ if (!e || !n.isPrimary) return;
1080
+ let r = d.isDragging();
1081
+ if (d.pointerMove(n.clientX, n.clientY), d.isDragging()) {
1082
+ if (!r) {
1083
+ U = n.pointerId;
1084
+ try {
1085
+ document.documentElement.setPointerCapture(n.pointerId);
1086
+ } catch {}
1087
+ }
1088
+ t = null, s.style.display = "none", c.style.display = "none";
1089
+ }
1090
+ }, q = (t) => {
1091
+ if (!e || !t.isPrimary) return;
1092
+ W();
1093
+ let n = d.pointerUp();
1094
+ if (!n) return;
1095
+ H = !0, A();
1096
+ let { elements: r, nodes: i, truncated: a } = tt(n, p);
1097
+ console.info(`[levo-inspector] region drag: ${Math.round(n.width)}×${Math.round(n.height)} — ${r.length} element(s)${a ? " (truncated)" : ""}`), v(i);
1098
+ let s = ++h;
1099
+ Se(n, p).then((e) => {
1100
+ s === h && (console.info(`[levo-inspector] region capture ok (${Math.round(e.length / 1024)}kB)`), o.send({
1101
+ type: "region-selected",
1102
+ rect: n,
1103
+ elements: r,
1104
+ truncated: a,
1105
+ dataUrl: e
1106
+ }));
1107
+ }).catch((e) => {
1108
+ s === h && (console.warn("[levo-inspector] region capture failed", e), o.send({
1109
+ type: "region-selected",
1110
+ rect: n,
1111
+ elements: r,
1112
+ truncated: a,
1113
+ dataUrl: null
1114
+ }));
1115
+ });
1116
+ }, ue = () => G(), de = (e) => {
1117
+ let t = Pe(e.target);
896
1118
  return t ? (e.preventDefault(), e.stopPropagation(), window.open(t, "_blank", "noopener,noreferrer"), !0) : !1;
897
- }, B = (i) => {
1119
+ }, fe = (i) => {
1120
+ if (H) {
1121
+ H = !1, i.preventDefault(), i.stopPropagation(), i.stopImmediatePropagation();
1122
+ return;
1123
+ }
898
1124
  if (r) {
899
- let e = h(document.elementFromPoint(i.clientX, i.clientY) || i.target);
900
- if (!e || e === D.editingNode()) {
901
- z(i);
1125
+ let e = S(document.elementFromPoint(i.clientX, i.clientY) || i.target);
1126
+ if (!e || e === N.editingNode()) {
1127
+ de(i);
902
1128
  return;
903
1129
  }
904
- i.preventDefault(), i.stopPropagation(), i.stopImmediatePropagation(), D.startEdit(e);
1130
+ i.preventDefault(), i.stopPropagation(), i.stopImmediatePropagation(), N.startEdit(e);
905
1131
  return;
906
1132
  }
907
1133
  if (!e) {
908
- z(i);
1134
+ de(i);
909
1135
  return;
910
1136
  }
911
1137
  i.preventDefault(), i.stopPropagation(), i.stopImmediatePropagation();
912
1138
  let a = t || i.target;
913
- if (m(a)) return;
1139
+ if (x(a)) return;
914
1140
  let s = a.closest("[data-tsd-source]") || a;
915
- n = s, _(), te(), o.send({
1141
+ y(), g(), n = s, w(), re(), o.send({
916
1142
  type: "element-selected",
917
- element: Ae(s)
1143
+ element: ze(s)
918
1144
  });
919
- }, ie = He({
1145
+ }, pe = at({
920
1146
  channel: o,
921
1147
  originals: a,
922
- staged: O,
923
- setInspect: k,
924
- setTextEdit: A,
1148
+ staged: P,
1149
+ setInspect: I,
1150
+ setTextEdit: L,
925
1151
  isInspecting: () => e,
926
1152
  isTextEditing: () => r,
927
- editingNode: D.editingNode,
1153
+ editingNode: N.editingNode,
928
1154
  setSelected: (e) => {
929
- n = e, te();
1155
+ y(), g(), n = e, re();
930
1156
  },
931
- positionSelected: _,
932
- clearSelection: w,
933
- syncDomObserver: ne,
934
- positionHover: g,
935
- hideTextHover: E,
936
- startEditAtEnd: (e) => D.startEdit(e, !0),
937
- editableTarget: h,
938
- ownNodes: d
939
- }), V = [
1157
+ selectedNode: () => n,
1158
+ positionSelected: w,
1159
+ clearSelection: A,
1160
+ syncDomObserver: F,
1161
+ positionHover: C,
1162
+ hideTextHover: M,
1163
+ startEditAtEnd: (e) => N.startEdit(e, !0),
1164
+ editableTarget: S,
1165
+ ownNodes: p
1166
+ }), me = [
940
1167
  "mousedown",
941
1168
  "mouseup",
942
1169
  "dblclick",
@@ -954,51 +1181,56 @@ function qe() {
954
1181
  "touchstart",
955
1182
  "touchend",
956
1183
  "submit"
957
- ], H = (t) => {
1184
+ ], he = (t) => {
958
1185
  e && (t.cancelable && t.preventDefault(), t.stopPropagation(), t.stopImmediatePropagation());
959
- }, ae = () => {
960
- n && !r && _();
961
- }, U = () => {
1186
+ }, ge = () => {
1187
+ n && !r && w(), m.length > 0 && !r && _();
1188
+ }, _e = () => {
962
1189
  let e = location.pathname.replace(/\/$/, "") || "/";
963
1190
  o.send({
964
1191
  type: "route",
965
1192
  route: e
966
1193
  });
967
- }, oe = Ve({ onPathChange: () => {
968
- w(), U();
969
- } }), W = (t) => {
970
- if (D.editingNode()) return;
1194
+ }, ve = it({ onPathChange: () => {
1195
+ A(), _e();
1196
+ } }), ye = (t) => {
1197
+ if (N.editingNode()) return;
971
1198
  if (t.key === "Escape") {
972
- r ? (t.stopPropagation(), A(!1)) : e && (t.stopPropagation(), k(!1));
1199
+ if (e && d.isDragging()) {
1200
+ t.stopPropagation(), G();
1201
+ return;
1202
+ }
1203
+ r ? (t.stopPropagation(), L(!1)) : e && (t.stopPropagation(), I(!1));
973
1204
  return;
974
1205
  }
975
- if (t.metaKey || t.ctrlKey || t.altKey || t.shiftKey || t.repeat || Ee(document.activeElement)) return;
1206
+ if (t.metaKey || t.ctrlKey || t.altKey || t.shiftKey || t.repeat || Fe(document.activeElement)) return;
976
1207
  let n = t.key.toLowerCase();
977
- n === "s" ? (t.preventDefault(), t.stopPropagation(), k(!e)) : n === "t" && (t.preventDefault(), t.stopPropagation(), A(!r));
1208
+ n === "s" ? (t.preventDefault(), t.stopPropagation(), I(!e)) : n === "t" && (t.preventDefault(), t.stopPropagation(), L(!r));
978
1209
  };
979
- window.addEventListener("mousemove", F, !0), window.addEventListener("scroll", re, !0), window.addEventListener("resize", ae), window.addEventListener("click", B, !0), window.addEventListener("keydown", W, !0), window.addEventListener("message", ie.onMessage), window.addEventListener("mouseout", R, !0);
980
- for (let e of V) window.addEventListener(e, H, !0);
981
- return U(), o.send({ type: "ready" }), () => {
982
- window.removeEventListener("mousemove", F, !0), window.removeEventListener("keydown", W, !0), window.removeEventListener("scroll", re, !0), window.removeEventListener("resize", ae), window.removeEventListener("mouseout", R, !0), window.removeEventListener("click", B, !0), window.removeEventListener("message", ie.onMessage);
983
- for (let e of V) window.removeEventListener(e, H, !0);
984
- b.disconnect(), x.disconnect(), v && cancelAnimationFrame(v), j && cancelAnimationFrame(j), I && cancelAnimationFrame(I), O.teardown(), oe.teardown(), D.teardown(), document.documentElement.style.cursor = "", f?.remove(), s.remove(), c.remove(), l.remove(), u.remove();
1210
+ window.addEventListener("mousemove", z, !0), window.addEventListener("scroll", V, !0), window.addEventListener("resize", ge), window.addEventListener("click", fe, !0), window.addEventListener("keydown", ye, !0), window.addEventListener("message", pe.onMessage), window.addEventListener("mouseout", ce, !0), window.addEventListener("pointerdown", K, !0), window.addEventListener("pointermove", le, !0), window.addEventListener("pointerup", q, !0), window.addEventListener("pointercancel", ue, !0);
1211
+ for (let e of me) window.addEventListener(e, he, !0);
1212
+ return console.info(`[levo-inspector] build ${lt} — runtime mounted`), _e(), o.send({ type: "ready" }), () => {
1213
+ window.removeEventListener("mousemove", z, !0), window.removeEventListener("keydown", ye, !0), window.removeEventListener("scroll", V, !0), window.removeEventListener("resize", ge), window.removeEventListener("mouseout", ce, !0), window.removeEventListener("pointerdown", K, !0), window.removeEventListener("pointermove", le, !0), window.removeEventListener("pointerup", q, !0), window.removeEventListener("pointercancel", ue, !0), window.removeEventListener("click", fe, !0), window.removeEventListener("message", pe.onMessage);
1214
+ for (let e of me) window.removeEventListener(e, he, !0);
1215
+ D.disconnect(), O.disconnect(), T && cancelAnimationFrame(T), R && cancelAnimationFrame(R), B && cancelAnimationFrame(B), P.teardown(), ve.teardown(), N.teardown(), document.documentElement.style.cursor = "", b?.remove(), s.remove(), c.remove(), l.remove(), u.remove(), G(), d.node.remove();
1216
+ for (let e of f) e.remove();
985
1217
  };
986
1218
  }
987
1219
  //#endregion
988
1220
  //#region src/popups/LevoPopups.tsx
989
- var Je = l(() => import("./dist-CJknSbJK.js").then((e) => e.n).then((e) => ({ default: e.PopupLoader }))), Ye = ({ siteId: e }) => {
990
- let t = M(), r = n();
1221
+ var ft = l(() => import("./dist-CJknSbJK.js").then((e) => e.n).then((e) => ({ default: e.PopupLoader }))), pt = ({ siteId: e }) => {
1222
+ let t = j(), r = n();
991
1223
  return !t || !r ? null : /* @__PURE__ */ _(s, {
992
1224
  fallback: null,
993
- children: /* @__PURE__ */ _(Je, { siteId: e })
1225
+ children: /* @__PURE__ */ _(ft, { siteId: e })
994
1226
  });
995
- }, Xe = () => n(), Ze = () => t(), Qe = ({ site: t, children: n }) => {
1227
+ }, mt = () => n(), ht = () => t(), gt = ({ site: t, children: n }) => {
996
1228
  let [r] = h(() => {
997
1229
  if (!t) return null;
998
- let e = I(t), n = F(e);
1230
+ let e = F(t), n = P(e);
999
1231
  return n ? {
1000
1232
  client: n,
1001
- insights: ee(n, {
1233
+ insights: C(n, {
1002
1234
  insightsUrl: e.insightsUrl || null,
1003
1235
  site: e.siteId || null
1004
1236
  }),
@@ -1010,18 +1242,18 @@ var Je = l(() => import("./dist-CJknSbJK.js").then((e) => e.n).then((e) => ({ de
1010
1242
  insights: r.insights,
1011
1243
  children: [
1012
1244
  n,
1013
- /* @__PURE__ */ _(P, { site: r.site }),
1014
- /* @__PURE__ */ _(Ye, { siteId: r.site.id })
1245
+ /* @__PURE__ */ _(N, { site: r.site }),
1246
+ /* @__PURE__ */ _(pt, { siteId: r.site.id })
1015
1247
  ]
1016
1248
  }) : /* @__PURE__ */ _(g, { children: n });
1017
- }, $e = (e) => JSON.stringify(e).replace(/<\//g, "<\\/"), et = (e) => {
1249
+ }, _t = (e) => JSON.stringify(e).replace(/<\//g, "<\\/"), vt = (e) => {
1018
1250
  let t = {}, n = /([a-zA-Z_:][-a-zA-Z0-9_:.]*)(?:\s*=\s*("([^"]*)"|'([^']*)'|[^\s"'>]+))?/g;
1019
1251
  for (let r = n.exec(e); r; r = n.exec(e)) {
1020
1252
  let e = r[1];
1021
1253
  !e || /^on/i.test(e) || (t[e] = r[3] ?? r[4] ?? (r[2] ? r[2] : ""));
1022
1254
  }
1023
1255
  return t;
1024
- }, tt = (e) => {
1256
+ }, yt = (e) => {
1025
1257
  let t = {
1026
1258
  meta: [],
1027
1259
  links: [],
@@ -1029,11 +1261,11 @@ var Je = l(() => import("./dist-CJknSbJK.js").then((e) => e.n).then((e) => ({ de
1029
1261
  };
1030
1262
  if (!e?.trim()) return t;
1031
1263
  let n = e.replace(/<script\b([^>]*)>([\s\S]*?)<\/script\s*>/gi, (e, n, r) => {
1032
- let i = et(n), a = r.trim();
1264
+ let i = vt(n), a = r.trim();
1033
1265
  return a && (i.children = a), t.scripts.push(i), "";
1034
1266
  });
1035
- return n = n.replace(/<(meta|link)\b([^>]*?)\/?>/gi, (e, n, r) => ((n.toLowerCase() === "meta" ? t.meta : t.links).push(et(r)), "")), t;
1036
- }, nt = (e = {}, t = {}) => {
1267
+ return n = n.replace(/<(meta|link)\b([^>]*?)\/?>/gi, (e, n, r) => ((n.toLowerCase() === "meta" ? t.meta : t.links).push(vt(r)), "")), t;
1268
+ }, bt = (e = {}, t = {}) => {
1037
1269
  let n = {
1038
1270
  meta: [],
1039
1271
  links: [],
@@ -1098,17 +1330,17 @@ var Je = l(() => import("./dist-CJknSbJK.js").then((e) => e.n).then((e) => ({ de
1098
1330
  let y = e.ldJson ? Array.isArray(e.ldJson) ? e.ldJson : [e.ldJson] : [];
1099
1331
  for (let e of y) n.scripts.push({
1100
1332
  type: "application/ld+json",
1101
- children: $e(e)
1333
+ children: _t(e)
1102
1334
  });
1103
1335
  for (let r of [t.customHead, e.customHead]) {
1104
1336
  if (!r) continue;
1105
- let e = tt(r);
1337
+ let e = yt(r);
1106
1338
  n.meta.push(...e.meta), n.links.push(...e.links), n.scripts.push(...e.scripts);
1107
1339
  }
1108
1340
  return n;
1109
1341
  };
1110
- function rt({ meta: e, site: t }) {
1111
- let n = nt(e, t);
1342
+ function xt({ meta: e, site: t }) {
1343
+ let n = bt(e, t);
1112
1344
  return /* @__PURE__ */ v(g, { children: [
1113
1345
  n.meta.map((e, t) => e.title === void 0 ? /* @__PURE__ */ _("meta", { ...e }, `m${t}`) : /* @__PURE__ */ _("title", { children: e.title }, `t${t}`)),
1114
1346
  n.links.map((e, t) => /* @__PURE__ */ _("link", { ...e }, `l${t}`)),
@@ -1120,17 +1352,17 @@ function rt({ meta: e, site: t }) {
1120
1352
  }
1121
1353
  //#endregion
1122
1354
  //#region src/registration/ui.tsx
1123
- var it = (...e) => e.filter(Boolean).join(" "), Z = o.forwardRef(({ className: e, isLoading: t, loadingText: n, children: r, type: i = "button", ...a }, o) => /* @__PURE__ */ _("button", {
1355
+ var St = (...e) => e.filter(Boolean).join(" "), Q = o.forwardRef(({ className: e, isLoading: t, loadingText: n, children: r, type: i = "button", ...a }, o) => /* @__PURE__ */ _("button", {
1124
1356
  ref: o,
1125
1357
  type: i,
1126
- className: it("inline-flex items-center justify-center", e),
1358
+ className: St("inline-flex items-center justify-center", e),
1127
1359
  ...a,
1128
- children: t ? /* @__PURE__ */ v(g, { children: [/* @__PURE__ */ _(E, { className: it("h-4 w-4 animate-spin", n ? "mr-2" : "") }), n] }) : r
1360
+ children: t ? /* @__PURE__ */ v(g, { children: [/* @__PURE__ */ _(D, { className: St("h-4 w-4 animate-spin", n ? "mr-2" : "") }), n] }) : r
1129
1361
  }));
1130
- Z.displayName = "Btn";
1362
+ Q.displayName = "Btn";
1131
1363
  //#endregion
1132
1364
  //#region src/registration/AttendeeForm.tsx
1133
- var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, registerLoading: i, onBack: a, submitLabel: o }) => /* @__PURE__ */ v("form", {
1365
+ var Ct = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, registerLoading: i, onBack: a, submitLabel: o }) => /* @__PURE__ */ v("form", {
1134
1366
  onSubmit: r,
1135
1367
  className: "flex flex-col gap-4",
1136
1368
  children: [
@@ -1280,13 +1512,13 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1280
1512
  ] }),
1281
1513
  /* @__PURE__ */ v("div", {
1282
1514
  className: "flex flex-col-reverse justify-end gap-4 md:flex-row",
1283
- children: [/* @__PURE__ */ _(Z, {
1515
+ children: [/* @__PURE__ */ _(Q, {
1284
1516
  className: "rounded-lg bg-gray-100 px-6 py-2 font-semibold text-black hover:bg-gray-200",
1285
1517
  type: "button",
1286
1518
  onClick: a,
1287
1519
  disabled: i,
1288
1520
  children: "Back"
1289
- }), /* @__PURE__ */ _(Z, {
1521
+ }), /* @__PURE__ */ _(Q, {
1290
1522
  className: "rounded-lg bg-brand px-6 py-2 font-semibold text-brand-foreground hover:opacity-90",
1291
1523
  type: "submit",
1292
1524
  isLoading: i,
@@ -1295,22 +1527,22 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1295
1527
  })]
1296
1528
  })
1297
1529
  ]
1298
- }), ot = {
1530
+ }), wt = {
1299
1531
  USD: "$",
1300
1532
  EUR: "€",
1301
1533
  GBP: "£",
1302
1534
  INR: "₹"
1303
- }, Q = (e) => e?.unit_amount ? `${ot[e.currency ?? "INR"]} ${(e.unit_amount ?? 0) / 100}` : "Free", st = (e) => {
1535
+ }, $ = (e) => e?.unit_amount ? `${wt[e.currency ?? "INR"]} ${(e.unit_amount ?? 0) / 100}` : "Free", Tt = (e) => {
1304
1536
  if (!e) return null;
1305
1537
  let t = e.tax_enabled ?? !1, n = e.tax_inclusive ?? !1, r = e.taxes ?? [];
1306
1538
  return !t || r.length === 0 ? null : n ? "(inclusive of taxes)" : "+ taxes";
1307
- }, ct = (e) => !!(e?.taxes && e.taxes.length > 0 && e.tax_amount !== void 0), lt = (e) => {
1539
+ }, Et = (e) => !!(e?.taxes && e.taxes.length > 0 && e.tax_amount !== void 0), Dt = (e) => {
1308
1540
  if (!e) return !1;
1309
1541
  let t = e;
1310
1542
  return t.tax_enabled === !0 && t.taxes !== void 0 && t.taxes.length > 0 && t.subtotal !== void 0;
1311
- }, $ = (e, t) => !t || e.tickets.length === 0 ? !0 : e.tickets.some((e) => typeof e == "string" ? e === t : e._id === t), ut = ({ couponCode: e, onCouponCodeChange: t, couponError: n, couponLoading: r, onValidateCoupon: i, publicCoupons: a, onBack: o, selectedTicket: s }) => {
1543
+ }, Ot = (e, t) => !t || e.tickets.length === 0 ? !0 : e.tickets.some((e) => typeof e == "string" ? e === t : e._id === t), kt = ({ couponCode: e, onCouponCodeChange: t, couponError: n, couponLoading: r, onValidateCoupon: i, publicCoupons: a, onBack: o, selectedTicket: s }) => {
1312
1544
  let c = [...a].sort((e, t) => {
1313
- let n = $(e, s?._id), r = $(t, s?._id);
1545
+ let n = Ot(e, s?._id), r = Ot(t, s?._id);
1314
1546
  return n && !r ? -1 : !n && r ? 1 : 0;
1315
1547
  });
1316
1548
  return /* @__PURE__ */ v("div", { children: [
@@ -1322,7 +1554,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1322
1554
  className: "rounded-md p-2 hover:bg-gray-50 focus:outline-none",
1323
1555
  "aria-label": "Back",
1324
1556
  onClick: o,
1325
- children: /* @__PURE__ */ _(w, { className: "size-4" })
1557
+ children: /* @__PURE__ */ _(T, { className: "size-4" })
1326
1558
  }),
1327
1559
  /* @__PURE__ */ v("p", {
1328
1560
  className: "font-semibold text-md",
@@ -1345,7 +1577,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1345
1577
  className: "mt-1 text-red-400 text-xs",
1346
1578
  children: n
1347
1579
  })]
1348
- }), /* @__PURE__ */ _(Z, {
1580
+ }), /* @__PURE__ */ _(Q, {
1349
1581
  "aria-label": "Apply Coupon",
1350
1582
  onClick: () => i(),
1351
1583
  className: "rounded-lg bg-brand px-3 text-brand-foreground hover:opacity-90",
@@ -1354,17 +1586,17 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1354
1586
  zIndex: e ? 1 : -1
1355
1587
  },
1356
1588
  isLoading: r,
1357
- children: /* @__PURE__ */ _(te, { className: "h-fit" })
1589
+ children: /* @__PURE__ */ _(w, { className: "h-fit" })
1358
1590
  })]
1359
1591
  }),
1360
1592
  c.length > 0 && /* @__PURE__ */ v("div", {
1361
1593
  className: "mt-4 flex flex-col gap-4",
1362
- children: [c.filter((e) => $(e, s?._id)).length > 0 && /* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("p", {
1594
+ children: [c.filter((e) => Ot(e, s?._id)).length > 0 && /* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("p", {
1363
1595
  className: "mb-2 text-gray-600 text-sm",
1364
1596
  children: "Available Coupons"
1365
1597
  }), /* @__PURE__ */ _("div", {
1366
1598
  className: "flex flex-col gap-2",
1367
- children: c.filter((e) => $(e, s?._id)).map((e) => /* @__PURE__ */ v("button", {
1599
+ children: c.filter((e) => Ot(e, s?._id)).map((e) => /* @__PURE__ */ v("button", {
1368
1600
  type: "button",
1369
1601
  className: "flex flex-col gap-1 rounded-md border border-gray-300 border-dashed px-3 py-2 text-left transition hover:border-gray-400 hover:bg-gray-50",
1370
1602
  onClick: () => {
@@ -1377,19 +1609,19 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1377
1609
  children: e.code
1378
1610
  }), /* @__PURE__ */ _("span", {
1379
1611
  className: "text-gray-500 text-sm",
1380
- children: e.kind === "percent" ? `${e.percent_off}% off` : `${ot[e.currency ?? "INR"]} ${(e.amount_off ?? 0) / 100} off`
1612
+ children: e.kind === "percent" ? `${e.percent_off}% off` : `${wt[e.currency ?? "INR"]} ${(e.amount_off ?? 0) / 100} off`
1381
1613
  })]
1382
1614
  }), e.description && /* @__PURE__ */ _("span", {
1383
1615
  className: "text-gray-500 text-xs",
1384
1616
  children: e.description
1385
1617
  })]
1386
1618
  }, e._id))
1387
- })] }), c.filter((e) => !$(e, s?._id)).length > 0 && /* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("p", {
1619
+ })] }), c.filter((e) => !Ot(e, s?._id)).length > 0 && /* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("p", {
1388
1620
  className: "mb-2 text-gray-400 text-sm",
1389
1621
  children: "Not Applicable"
1390
1622
  }), /* @__PURE__ */ _("div", {
1391
1623
  className: "flex flex-col gap-2",
1392
- children: c.filter((e) => !$(e, s?._id)).map((e) => /* @__PURE__ */ v("button", {
1624
+ children: c.filter((e) => !Ot(e, s?._id)).map((e) => /* @__PURE__ */ v("button", {
1393
1625
  type: "button",
1394
1626
  disabled: !0,
1395
1627
  className: "flex cursor-not-allowed flex-col gap-1 rounded-md border border-gray-200 border-dashed px-3 py-2 text-left opacity-50",
@@ -1400,7 +1632,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1400
1632
  children: e.code
1401
1633
  }), /* @__PURE__ */ _("span", {
1402
1634
  className: "text-gray-500 text-sm",
1403
- children: e.kind === "percent" ? `${e.percent_off}% off` : `${ot[e.currency ?? "INR"]} ${(e.amount_off ?? 0) / 100} off`
1635
+ children: e.kind === "percent" ? `${e.percent_off}% off` : `${wt[e.currency ?? "INR"]} ${(e.amount_off ?? 0) / 100} off`
1404
1636
  })]
1405
1637
  }), e.description && /* @__PURE__ */ _("span", {
1406
1638
  className: "text-gray-500 text-xs",
@@ -1410,7 +1642,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1410
1642
  })] })]
1411
1643
  })
1412
1644
  ] });
1413
- }, dt = (e) => {
1645
+ }, At = (e) => {
1414
1646
  let t = new Date(e);
1415
1647
  return `${new Intl.DateTimeFormat("en-GB", {
1416
1648
  day: "numeric",
@@ -1421,16 +1653,16 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1421
1653
  minute: "2-digit",
1422
1654
  hour12: !0
1423
1655
  }).format(t)}`;
1424
- }, ft = ({ ticketData: e, paymentData: t, type: n }) => {
1656
+ }, jt = ({ ticketData: e, paymentData: t, type: n }) => {
1425
1657
  let [r, i] = h(!0), a = (t.total_amount || t.unit_amount) / 100, o = t.unit_amount === 0, s = (e) => new Intl.NumberFormat("en-IN", {
1426
1658
  style: "currency",
1427
1659
  currency: t.currency || "INR",
1428
1660
  minimumFractionDigits: 0
1429
1661
  }).format(e);
1430
- return /* @__PURE__ */ _(C.Root, {
1662
+ return /* @__PURE__ */ _(S.Root, {
1431
1663
  open: r,
1432
1664
  onOpenChange: (e) => i(e),
1433
- children: /* @__PURE__ */ v(C.Portal, { children: [/* @__PURE__ */ _(C.Backdrop, { className: "fixed inset-0 z-50 bg-black/50" }), /* @__PURE__ */ v(C.Popup, {
1665
+ children: /* @__PURE__ */ v(S.Portal, { children: [/* @__PURE__ */ _(S.Backdrop, { className: "fixed inset-0 z-50 bg-black/50" }), /* @__PURE__ */ v(S.Popup, {
1434
1666
  className: "fixed top-1/2 left-1/2 z-50 flex max-h-[calc(100vh-2rem)] w-full max-w-md -translate-x-1/2 -translate-y-1/2 flex-col overflow-y-auto rounded-2xl bg-white shadow-2xl",
1435
1667
  children: [
1436
1668
  /* @__PURE__ */ v("div", {
@@ -1453,11 +1685,11 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1453
1685
  children: [/* @__PURE__ */ _("path", { d: "M22 11.08V12a10 10 0 1 1-5.93-9.14" }), /* @__PURE__ */ _("polyline", { points: "22 4 12 14.01 9 11.01" })]
1454
1686
  })
1455
1687
  }),
1456
- /* @__PURE__ */ _(C.Title, {
1688
+ /* @__PURE__ */ _(S.Title, {
1457
1689
  className: "font-bold text-gray-900 text-lg",
1458
1690
  children: n === "view" ? "Booking Details" : "Tickets Confirmed!"
1459
1691
  }),
1460
- /* @__PURE__ */ _(C.Description, {
1692
+ /* @__PURE__ */ _(S.Description, {
1461
1693
  className: "mt-1 text-gray-600 text-sm",
1462
1694
  children: n === "confirm" ? "Your tickets have been confirmed. A confirmation email is on its way." : "Here are the details about your booking."
1463
1695
  })
@@ -1569,7 +1801,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1569
1801
  ]
1570
1802
  }), /* @__PURE__ */ _("p", {
1571
1803
  className: "mt-3 text-center text-gray-400 text-xs",
1572
- children: dt(t.created_at)
1804
+ children: At(t.created_at)
1573
1805
  })]
1574
1806
  }),
1575
1807
  /* @__PURE__ */ v("div", {
@@ -1601,7 +1833,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1601
1833
  })
1602
1834
  ]
1603
1835
  }), "Download Invoice"]
1604
- }), /* @__PURE__ */ _(C.Close, {
1836
+ }), /* @__PURE__ */ _(S.Close, {
1605
1837
  className: "w-full rounded-lg bg-gray-900 px-4 py-2.5 font-medium text-sm text-white transition-colors hover:bg-gray-800",
1606
1838
  children: "Done"
1607
1839
  })]
@@ -1609,36 +1841,36 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1609
1841
  ]
1610
1842
  })] })
1611
1843
  });
1612
- }, pt = ({ isOpen: e, onClose: t, stripePromise: n, clientSecret: r, onComplete: i }) => !n || !r ? null : /* @__PURE__ */ _(C.Root, {
1844
+ }, Mt = ({ isOpen: e, onClose: t, stripePromise: n, clientSecret: r, onComplete: i }) => !n || !r ? null : /* @__PURE__ */ _(S.Root, {
1613
1845
  open: e,
1614
1846
  onOpenChange: (e) => {
1615
1847
  e || t();
1616
1848
  },
1617
- children: /* @__PURE__ */ v(C.Portal, { children: [/* @__PURE__ */ _(C.Backdrop, { className: "fixed inset-0 z-[100] bg-black/50" }), /* @__PURE__ */ v(C.Popup, {
1849
+ children: /* @__PURE__ */ v(S.Portal, { children: [/* @__PURE__ */ _(S.Backdrop, { className: "fixed inset-0 z-[100] bg-black/50" }), /* @__PURE__ */ v(S.Popup, {
1618
1850
  className: "fixed top-8 left-1/2 z-[100] flex max-h-[calc(100vh-4rem)] min-h-[500px] w-[98vw] -translate-x-1/2 flex-col overflow-hidden rounded-2xl bg-white shadow-2xl md:top-10 md:w-auto md:max-w-[1000px] lg:max-w-[1100px]",
1619
- children: [/* @__PURE__ */ _(C.Close, {
1851
+ children: [/* @__PURE__ */ _(S.Close, {
1620
1852
  className: "absolute top-4 right-4 z-10 rounded-full bg-white/90 p-2.5 text-gray-500 shadow-md backdrop-blur-sm transition-all hover:bg-white hover:text-gray-700",
1621
- children: /* @__PURE__ */ _(ne, { className: "size-5" })
1853
+ children: /* @__PURE__ */ _(te, { className: "size-5" })
1622
1854
  }), /* @__PURE__ */ _("div", {
1623
1855
  className: "flex-1 overflow-y-auto rounded-2xl py-6",
1624
- children: /* @__PURE__ */ _(j, {
1856
+ children: /* @__PURE__ */ _(A, {
1625
1857
  stripe: n,
1626
1858
  options: {
1627
1859
  clientSecret: r,
1628
1860
  onComplete: i
1629
1861
  },
1630
- children: /* @__PURE__ */ _(A, { className: "stripe-embedded-checkout h-full" })
1862
+ children: /* @__PURE__ */ _(re, { className: "stripe-embedded-checkout h-full" })
1631
1863
  })
1632
1864
  })]
1633
1865
  })] })
1634
- }), mt = ({ tickets: e, selectedTicket: t, onSelectTicket: n, discount: r, couponCode: i, publicCouponsCount: a, onApplyCouponClick: o, onRemoveCoupon: s, onNext: c }) => {
1635
- let l = lt(t), u = ct(r);
1866
+ }), Nt = ({ tickets: e, selectedTicket: t, onSelectTicket: n, discount: r, couponCode: i, publicCouponsCount: a, onApplyCouponClick: o, onRemoveCoupon: s, onNext: c }) => {
1867
+ let l = Dt(t), u = Et(r);
1636
1868
  return /* @__PURE__ */ v("div", { children: [/* @__PURE__ */ v("div", {
1637
1869
  className: "flex max-h-[64dvh] w-full flex-col justify-between gap-6 overflow-y-auto md:max-h-[unset] md:flex-row",
1638
1870
  children: [/* @__PURE__ */ _("div", {
1639
1871
  className: "flex w-full flex-col gap-3 md:w-[55%]",
1640
1872
  children: e.map((e) => /* @__PURE__ */ _("div", {
1641
- className: it("flex cursor-pointer items-center justify-between rounded-md border border-gray-300 px-3 py-2 transition duration-300 hover:bg-gray-50", e._id === t?._id ? "border-brand bg-brand/10 hover:bg-brand/20" : ""),
1873
+ className: St("flex cursor-pointer items-center justify-between rounded-md border border-gray-300 px-3 py-2 transition duration-300 hover:bg-gray-50", e._id === t?._id ? "border-brand bg-brand/10 hover:bg-brand/20" : ""),
1642
1874
  onClick: () => n(e),
1643
1875
  children: /* @__PURE__ */ v("div", { children: [
1644
1876
  /* @__PURE__ */ _("p", {
@@ -1651,9 +1883,9 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1651
1883
  }),
1652
1884
  /* @__PURE__ */ v("p", {
1653
1885
  className: "text-md",
1654
- children: [Q(e), st(e) && /* @__PURE__ */ v("span", {
1886
+ children: [$(e), Tt(e) && /* @__PURE__ */ v("span", {
1655
1887
  className: "text-gray-500 text-sm",
1656
- children: [" ", st(e)]
1888
+ children: [" ", Tt(e)]
1657
1889
  })]
1658
1890
  })
1659
1891
  ] })
@@ -1672,7 +1904,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1672
1904
  children: [/* @__PURE__ */ _("span", {
1673
1905
  className: "text-md",
1674
1906
  children: t.title
1675
- }), /* @__PURE__ */ _("span", { children: Q({
1907
+ }), /* @__PURE__ */ _("span", { children: $({
1676
1908
  unit_amount: l ? t.subtotal : t.unit_amount,
1677
1909
  currency: t.currency
1678
1910
  }) })]
@@ -1687,7 +1919,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1687
1919
  children: "Subtotal"
1688
1920
  }), /* @__PURE__ */ _("span", {
1689
1921
  className: "text-md",
1690
- children: Q({
1922
+ children: $({
1691
1923
  unit_amount: r.base_amount,
1692
1924
  currency: t?.currency
1693
1925
  })
@@ -1703,7 +1935,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1703
1935
  children: [
1704
1936
  "-",
1705
1937
  " ",
1706
- Q({
1938
+ $({
1707
1939
  unit_amount: r.discount,
1708
1940
  currency: t?.currency
1709
1941
  })
@@ -1717,7 +1949,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1717
1949
  children: "Taxable Amount"
1718
1950
  }), /* @__PURE__ */ _("span", {
1719
1951
  className: "text-md",
1720
- children: Q({
1952
+ children: $({
1721
1953
  unit_amount: r.taxable_amount,
1722
1954
  currency: t?.currency
1723
1955
  })
@@ -1735,7 +1967,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1735
1967
  ]
1736
1968
  }), /* @__PURE__ */ _("span", {
1737
1969
  className: "text-sm",
1738
- children: Q({
1970
+ children: $({
1739
1971
  unit_amount: e.amount,
1740
1972
  currency: t?.currency
1741
1973
  })
@@ -1748,7 +1980,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1748
1980
  children: "Payable"
1749
1981
  }), /* @__PURE__ */ _("span", {
1750
1982
  className: "text-md",
1751
- children: Q({
1983
+ children: $({
1752
1984
  unit_amount: r.total_amount,
1753
1985
  currency: t?.currency
1754
1986
  })
@@ -1765,7 +1997,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1765
1997
  children: "Subtotal"
1766
1998
  }), /* @__PURE__ */ _("span", {
1767
1999
  className: "text-md",
1768
- children: Q({
2000
+ children: $({
1769
2001
  unit_amount: r.base_amount,
1770
2002
  currency: t?.currency
1771
2003
  })
@@ -1781,7 +2013,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1781
2013
  children: [
1782
2014
  "-",
1783
2015
  " ",
1784
- Q({
2016
+ $({
1785
2017
  unit_amount: r.discount,
1786
2018
  currency: t?.currency
1787
2019
  })
@@ -1795,7 +2027,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1795
2027
  children: "Payable"
1796
2028
  }), /* @__PURE__ */ _("span", {
1797
2029
  className: "text-md",
1798
- children: Q({
2030
+ children: $({
1799
2031
  unit_amount: r.sale_amount,
1800
2032
  currency: t?.currency
1801
2033
  })
@@ -1812,7 +2044,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1812
2044
  children: "Subtotal"
1813
2045
  }), /* @__PURE__ */ _("span", {
1814
2046
  className: "text-md",
1815
- children: Q({
2047
+ children: $({
1816
2048
  unit_amount: t.subtotal,
1817
2049
  currency: t?.currency
1818
2050
  })
@@ -1830,7 +2062,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1830
2062
  ]
1831
2063
  }), /* @__PURE__ */ _("span", {
1832
2064
  className: "text-sm",
1833
- children: Q({
2065
+ children: $({
1834
2066
  unit_amount: e.amount,
1835
2067
  currency: t?.currency
1836
2068
  })
@@ -1843,7 +2075,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1843
2075
  children: "Payable"
1844
2076
  }), /* @__PURE__ */ _("span", {
1845
2077
  className: "text-md",
1846
- children: Q({
2078
+ children: $({
1847
2079
  unit_amount: t.total,
1848
2080
  currency: t?.currency
1849
2081
  })
@@ -1863,7 +2095,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1863
2095
  children: "Payable"
1864
2096
  }), /* @__PURE__ */ _("span", {
1865
2097
  className: "text-md",
1866
- children: Q(t)
2098
+ children: $(t)
1867
2099
  })]
1868
2100
  })
1869
2101
  })]
@@ -1877,7 +2109,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1877
2109
  className: "flex max-w-16 items-center gap-2",
1878
2110
  children: [/* @__PURE__ */ _("div", {
1879
2111
  className: "rounded bg-green-500 p-2",
1880
- children: /* @__PURE__ */ _(D, {
2112
+ children: /* @__PURE__ */ _(O, {
1881
2113
  size: 16,
1882
2114
  className: "text-white"
1883
2115
  })
@@ -1893,7 +2125,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1893
2125
  onClick: s,
1894
2126
  className: "rounded-md p-1 text-green-600 transition-colors hover:bg-green-100 hover:text-green-800",
1895
2127
  "aria-label": "Remove coupon",
1896
- children: /* @__PURE__ */ _(O, { size: 18 })
2128
+ children: /* @__PURE__ */ _(k, { size: 18 })
1897
2129
  })]
1898
2130
  }), /* @__PURE__ */ v("div", {
1899
2131
  className: "text-green-700 text-xs",
@@ -1902,7 +2134,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1902
2134
  " ",
1903
2135
  /* @__PURE__ */ _("span", {
1904
2136
  className: "font-semibold",
1905
- children: Q({
2137
+ children: $({
1906
2138
  unit_amount: r.discount,
1907
2139
  currency: t?.currency
1908
2140
  })
@@ -1911,7 +2143,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1911
2143
  })]
1912
2144
  })
1913
2145
  }) : /* @__PURE__ */ v("div", {
1914
- className: it("flex cursor-pointer items-center justify-between border-b border-b-gray-300 pr-1 pl-4 transition-all duration-200 hover:bg-gray-50", t ? "h-[50px] py-3" : "py-3"),
2146
+ className: St("flex cursor-pointer items-center justify-between border-b border-b-gray-300 pr-1 pl-4 transition-all duration-200 hover:bg-gray-50", t ? "h-[50px] py-3" : "py-3"),
1915
2147
  onClick: () => t ? o() : null,
1916
2148
  children: [/* @__PURE__ */ v("span", {
1917
2149
  className: "flex items-center gap-2",
@@ -1919,18 +2151,18 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1919
2151
  className: "rounded-full bg-gray-200 px-2 py-0.5 text-gray-600 text-xs",
1920
2152
  children: a
1921
2153
  })]
1922
- }), /* @__PURE__ */ _("span", { children: /* @__PURE__ */ _(T, {}) })]
2154
+ }), /* @__PURE__ */ _("span", { children: /* @__PURE__ */ _(E, {}) })]
1923
2155
  })]
1924
2156
  })]
1925
2157
  }), /* @__PURE__ */ _("div", {
1926
2158
  className: "mt-3 flex justify-start",
1927
- children: /* @__PURE__ */ _(Z, {
2159
+ children: /* @__PURE__ */ _(Q, {
1928
2160
  onClick: c,
1929
2161
  className: "rounded-lg bg-brand px-6 py-2 font-semibold text-brand-foreground hover:opacity-90",
1930
2162
  children: "Continue for Payment"
1931
2163
  })
1932
2164
  })] });
1933
- }, ht = () => {
2165
+ }, Pt = () => {
1934
2166
  let [e, t] = h(null), [n, r] = h(null), [i, a] = h(!1), [o, s] = h(null);
1935
2167
  return {
1936
2168
  stripePromise: e,
@@ -1954,7 +2186,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1954
2186
  s(() => e);
1955
2187
  }, [])
1956
2188
  };
1957
- }, gt = {
2189
+ }, Ft = {
1958
2190
  name: "",
1959
2191
  email: "",
1960
2192
  is_business_purchase: !1,
@@ -1970,40 +2202,40 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
1970
2202
  country: ""
1971
2203
  }
1972
2204
  }
1973
- }, _t = (e, t, n) => {
2205
+ }, It = (e, t, n) => {
1974
2206
  let r = t.split("."), i = structuredClone(e), a = i, o = r.length - 1;
1975
2207
  return r.forEach((e, t) => {
1976
2208
  t === o ? a[e] = n : a = a[e];
1977
2209
  }), i;
1978
- }, vt = async (e, t) => {
2210
+ }, Lt = async (e, t) => {
1979
2211
  try {
1980
2212
  let n = new URLSearchParams();
1981
2213
  return n.append("query", JSON.stringify({ where: { status: "active" } })), (await e.fetch?.url(`/v1/event/event/${t}/ticket/query?${n.toString()}`).get().json())?.content?.data;
1982
2214
  } catch (t) {
1983
2215
  e.logger?.error("Failed to fetch event tickets", { exception: b(t) });
1984
2216
  }
1985
- }, yt = ({ eventID: e, title: t, external: r, buttonText: i = "Register Now" }) => {
1986
- let a = n(), [o, s] = h([]), [c, l] = h(!0), [d, p] = h(!1), [y, x] = h(!1), [S, ee] = h(null), [te, w] = h(void 0), [T, E] = h(""), [D, O] = h(null), [A, j] = h(!1), [M, N] = h(null), [P, F] = h(!1), [I, L] = h(1), [re, R] = h(null), [z, B] = h([]), [ie, V] = h(gt), H = m(null), ae = () => V(gt), U = () => {
1987
- O(null), w(void 0), N(null), j(!1), E(""), R(null), p(!1), L(1), ae();
1988
- }, { Razorpay: oe } = k(), { stripePromise: W, config: se, isOpen: ce, openStripeCheckout: le, closeStripeCheckout: ue, setOnComplete: de } = ht(), fe = () => {
1989
- let e = H.current;
2217
+ }, Rt = ({ eventID: e, title: t, external: r, buttonText: i = "Register Now" }) => {
2218
+ let a = n(), [o, s] = h([]), [c, l] = h(!0), [d, p] = h(!1), [y, ee] = h(!1), [x, C] = h(null), [w, T] = h(void 0), [E, D] = h(""), [O, k] = h(null), [re, A] = h(!1), [j, M] = h(null), [N, P] = h(!1), [F, I] = h(1), [L, R] = h(null), [ie, ae] = h([]), [oe, z] = h(Ft), B = m(null), se = () => z(Ft), V = () => {
2219
+ k(null), T(void 0), M(null), A(!1), D(""), R(null), p(!1), I(1), se();
2220
+ }, { Razorpay: ce } = ne(), { stripePromise: H, config: U, isOpen: W, openStripeCheckout: G, closeStripeCheckout: K, setOnComplete: le } = Pt(), q = () => {
2221
+ let e = B.current;
1990
2222
  !e || !a || a.fetch?.url(`/v1/event/booking/${e.bookingId}/confirm-booking`)?.post({ session_id: e.sessionId })?.json().then((e) => {
1991
- e?.content?.data && w(e?.content?.data), ue(), H.current = null;
2223
+ e?.content?.data && T(e?.content?.data), K(), B.current = null;
1992
2224
  }).catch((e) => {
1993
- a.logger?.error("Failed to confirm booking after Stripe payment", { exception: b(e) }), ue(), H.current = null;
2225
+ a.logger?.error("Failed to confirm booking after Stripe payment", { exception: b(e) }), K(), B.current = null;
1994
2226
  });
1995
- }, pe = async () => {
2227
+ }, ue = async () => {
1996
2228
  if (!a) return;
1997
- x(!0), R(null);
1998
- let { name: t, email: n, is_business_purchase: r, billing_details: i } = ie;
2229
+ ee(!0), R(null);
2230
+ let { name: t, email: n, is_business_purchase: r, billing_details: i } = oe;
1999
2231
  try {
2000
2232
  let o = {
2001
2233
  event: e,
2002
- coupon: T,
2234
+ coupon: E,
2003
2235
  attendees: [{
2004
2236
  name: t,
2005
2237
  email: n,
2006
- ticket: S?._id,
2238
+ ticket: x?._id,
2007
2239
  details: {}
2008
2240
  }]
2009
2241
  };
@@ -2011,36 +2243,36 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
2011
2243
  let s = await a.fetch?.url(`/v1/event/event/${e}/booking/create-new-booking`)?.post(o).json();
2012
2244
  if (!s?.status) R("Booking failed. Please try again.");
2013
2245
  else {
2014
- U();
2246
+ V();
2015
2247
  let e = s?.content?.meta;
2016
2248
  if (e?.key) {
2017
2249
  let t = s?.content.data?._id;
2018
- e.provider === "stripe" && e.client_secret ? (H.current = t && e.session_id ? {
2250
+ e.provider === "stripe" && e.client_secret ? (B.current = t && e.session_id ? {
2019
2251
  bookingId: t,
2020
2252
  sessionId: e.session_id
2021
- } : null, de(fe), await le({
2253
+ } : null, le(q), await G({
2022
2254
  key: e.key,
2023
2255
  client_secret: e.client_secret,
2024
2256
  amount: s?.content.data?.unit_amount || 0,
2025
2257
  currency: e.currency || "USD",
2026
2258
  provider: "stripe",
2027
2259
  reference_id: e.reference_id || ""
2028
- })) : me({
2260
+ })) : de({
2029
2261
  key: e.key,
2030
2262
  amount: s?.content.data?.unit_amount,
2031
2263
  currency: e.currency || "INR",
2032
2264
  order_id: e.order_id,
2033
2265
  booking_id: t
2034
2266
  });
2035
- } else w(s?.content.data);
2267
+ } else T(s?.content.data);
2036
2268
  }
2037
2269
  } catch (e) {
2038
2270
  R(b(e).message || "Something went wrong. Please try again.");
2039
2271
  }
2040
- x(!1);
2041
- }, me = async (e) => {
2272
+ ee(!1);
2273
+ }, de = async (e) => {
2042
2274
  if (!a) return;
2043
- let n = new oe({
2275
+ let n = new ce({
2044
2276
  key: e.key,
2045
2277
  amount: e.amount ?? 0,
2046
2278
  currency: e.currency,
@@ -2053,7 +2285,7 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
2053
2285
  payment_id: t.razorpay_payment_id,
2054
2286
  signature: t.razorpay_signature
2055
2287
  })?.json().then((e) => {
2056
- e?.content?.data?.status && w(e?.content?.data);
2288
+ e?.content?.data?.status && T(e?.content?.data);
2057
2289
  }).catch((e) => {
2058
2290
  a.logger?.error("Failed to confirm Razorpay booking", { exception: b(e) });
2059
2291
  });
@@ -2068,17 +2300,17 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
2068
2300
  n.on("payment.failed", (e) => {
2069
2301
  a.logger?.error("Razorpay payment failed", { exception: b(e.error) });
2070
2302
  }), n.open();
2071
- }, he = u(async () => {
2303
+ }, fe = u(async () => {
2072
2304
  if (a) try {
2073
2305
  let t = await a.fetch?.url(`/v1/event/event/${e}/coupon/list-public-coupons`)?.get().json();
2074
- t?.status && t?.content?.data && B(t.content.data);
2306
+ t?.status && t?.content?.data && ae(t.content.data);
2075
2307
  } catch (e) {
2076
2308
  a.logger?.error("Failed to fetch public coupons", { exception: b(e) });
2077
2309
  }
2078
- }, [a, e]), G = async (t) => {
2310
+ }, [a, e]), pe = async (t) => {
2079
2311
  if (!a) return;
2080
- let n = t ?? T;
2081
- j(!0), N(null);
2312
+ let n = t ?? E;
2313
+ A(!0), M(null);
2082
2314
  try {
2083
2315
  let t = await a.fetch?.url(`/v1/event/event/${e}/coupon/validate-coupon-code`)?.post({
2084
2316
  coupon: n,
@@ -2086,48 +2318,48 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
2086
2318
  attendees: [{
2087
2319
  name: "",
2088
2320
  email: "",
2089
- ticket: S?._id
2321
+ ticket: x?._id
2090
2322
  }]
2091
2323
  }).json();
2092
- t?.status && (O(t.content.data), E(n)), F(!1), j(!1);
2324
+ t?.status && (k(t.content.data), D(n)), P(!1), A(!1);
2093
2325
  } catch (e) {
2094
- N(b(e).message), j(!1);
2326
+ M(b(e).message), A(!1);
2095
2327
  }
2096
- }, K = (e) => {
2097
- E(""), O(null), N(null), j(!1), R(null), ee(e);
2098
- }, q = () => {
2099
- O(null), N(null), E("");
2100
- }, J = () => {
2101
- N(null), j(!1), E(""), F(!1);
2102
- }, Y = (e) => {
2328
+ }, me = (e) => {
2329
+ D(""), k(null), M(null), A(!1), R(null), C(e);
2330
+ }, he = () => {
2331
+ k(null), M(null), D("");
2332
+ }, ge = () => {
2333
+ M(null), A(!1), D(""), P(!1);
2334
+ }, _e = (e) => {
2103
2335
  let { name: t, value: n, type: r, checked: i } = e.target;
2104
- V((e) => _t(e, t, r === "checkbox" ? i : n));
2105
- }, X = () => {}, ge = (e) => {
2106
- e?.preventDefault(), pe();
2336
+ z((e) => It(e, t, r === "checkbox" ? i : n));
2337
+ }, ve = () => {}, ye = (e) => {
2338
+ e?.preventDefault(), ue();
2107
2339
  };
2108
2340
  if (f(() => {
2109
2341
  if (r) {
2110
2342
  l(!1);
2111
2343
  return;
2112
2344
  }
2113
- e && a && (l(!0), vt(a, e).then((e) => {
2114
- s(e ?? []), e && e.length > 0 && ee(e[0] || null), l(!1);
2345
+ e && a && (l(!0), Lt(a, e).then((e) => {
2346
+ s(e ?? []), e && e.length > 0 && C(e[0] || null), l(!1);
2115
2347
  }));
2116
2348
  }, [
2117
2349
  e,
2118
2350
  r,
2119
2351
  a
2120
2352
  ]), f(() => {
2121
- S?.unit_amount === 0 && o?.length === 1 && L(2);
2122
- }, [S, o]), f(() => {
2123
- d && e && he();
2353
+ x?.unit_amount === 0 && o?.length === 1 && I(2);
2354
+ }, [x, o]), f(() => {
2355
+ d && e && fe();
2124
2356
  }, [
2125
2357
  d,
2126
2358
  e,
2127
- he
2359
+ fe
2128
2360
  ]), r) return /* @__PURE__ */ _("div", {
2129
2361
  className: "my-2",
2130
- children: /* @__PURE__ */ _(Z, {
2362
+ children: /* @__PURE__ */ _(Q, {
2131
2363
  className: "rounded-lg bg-brand px-4 py-3 font-semibold text-brand-foreground hover:opacity-90",
2132
2364
  onClick: () => window.open(r, "_blank", "noopener,noreferrer"),
2133
2365
  children: i
@@ -2135,16 +2367,16 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
2135
2367
  });
2136
2368
  if (c) return /* @__PURE__ */ _("div", {
2137
2369
  className: "my-2",
2138
- children: /* @__PURE__ */ _(Z, {
2370
+ children: /* @__PURE__ */ _(Q, {
2139
2371
  className: "rounded-lg bg-brand px-4 py-2 font-bold text-brand-foreground",
2140
2372
  children: "Loading..."
2141
2373
  })
2142
2374
  });
2143
- let _e = D?.sale_amount === 0 || S?.unit_amount === 0 ? "Complete Registration" : "Pay";
2375
+ let be = O?.sale_amount === 0 || x?.unit_amount === 0 ? "Complete Registration" : "Pay";
2144
2376
  return /* @__PURE__ */ v(g, { children: [
2145
2377
  /* @__PURE__ */ _("div", {
2146
2378
  className: "my-2",
2147
- children: o?.length ? /* @__PURE__ */ _(Z, {
2379
+ children: o?.length ? /* @__PURE__ */ _(Q, {
2148
2380
  onClick: () => p(!0),
2149
2381
  className: "rounded-lg bg-brand px-4 py-3 font-semibold text-brand-foreground hover:opacity-90",
2150
2382
  children: i
@@ -2153,73 +2385,73 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
2153
2385
  children: "No tickets available for this event."
2154
2386
  })
2155
2387
  }),
2156
- /* @__PURE__ */ _(C.Root, {
2388
+ /* @__PURE__ */ _(S.Root, {
2157
2389
  open: d,
2158
2390
  onOpenChange: (e) => {
2159
- e || U();
2391
+ e || V();
2160
2392
  },
2161
- children: /* @__PURE__ */ v(C.Portal, { children: [/* @__PURE__ */ _(C.Backdrop, { className: "fixed inset-0 z-[100] bg-black/50" }), /* @__PURE__ */ v(C.Popup, {
2162
- className: it("fixed top-24 left-1/2 z-[100] flex max-h-[calc(100vh-7rem)] w-[90%] -translate-x-1/2 flex-col overflow-y-auto rounded-lg bg-white p-4", P ? "md:w-[30%]" : "md:w-[40%]"),
2393
+ children: /* @__PURE__ */ v(S.Portal, { children: [/* @__PURE__ */ _(S.Backdrop, { className: "fixed inset-0 z-[100] bg-black/50" }), /* @__PURE__ */ v(S.Popup, {
2394
+ className: St("fixed top-24 left-1/2 z-[100] flex max-h-[calc(100vh-7rem)] w-[90%] -translate-x-1/2 flex-col overflow-y-auto rounded-lg bg-white p-4", N ? "md:w-[30%]" : "md:w-[40%]"),
2163
2395
  children: [/* @__PURE__ */ v("div", {
2164
- className: `mb-4 flex w-full items-start justify-between ${P ? "" : "pb-[6px]"} `,
2165
- children: [/* @__PURE__ */ v(C.Title, {
2396
+ className: `mb-4 flex w-full items-start justify-between ${N ? "" : "pb-[6px]"} `,
2397
+ children: [/* @__PURE__ */ v(S.Title, {
2166
2398
  className: "font-semibold text-lg",
2167
2399
  children: [
2168
2400
  "Register for ",
2169
2401
  t,
2170
2402
  "!"
2171
2403
  ]
2172
- }), /* @__PURE__ */ _(C.Close, {
2404
+ }), /* @__PURE__ */ _(S.Close, {
2173
2405
  className: "rounded-md p-2 hover:bg-gray-100 focus:outline-none",
2174
- children: /* @__PURE__ */ _(ne, { className: "size-4" })
2406
+ children: /* @__PURE__ */ _(te, { className: "size-4" })
2175
2407
  })]
2176
- }), /* @__PURE__ */ v("div", { children: [re && /* @__PURE__ */ _("div", {
2408
+ }), /* @__PURE__ */ v("div", { children: [L && /* @__PURE__ */ _("div", {
2177
2409
  className: "mb-4 rounded-md bg-red-50 p-3 text-red-600 text-sm",
2178
- children: re
2179
- }), I === 1 ? /* @__PURE__ */ _("div", { children: P ? /* @__PURE__ */ _(ut, {
2180
- couponCode: T,
2181
- onCouponCodeChange: E,
2182
- couponError: M,
2183
- couponLoading: A,
2184
- onValidateCoupon: G,
2185
- publicCoupons: z,
2186
- onBack: J,
2187
- selectedTicket: S
2188
- }) : /* @__PURE__ */ _(mt, {
2410
+ children: L
2411
+ }), F === 1 ? /* @__PURE__ */ _("div", { children: N ? /* @__PURE__ */ _(kt, {
2412
+ couponCode: E,
2413
+ onCouponCodeChange: D,
2414
+ couponError: j,
2415
+ couponLoading: re,
2416
+ onValidateCoupon: pe,
2417
+ publicCoupons: ie,
2418
+ onBack: ge,
2419
+ selectedTicket: x
2420
+ }) : /* @__PURE__ */ _(Nt, {
2189
2421
  tickets: o,
2190
- selectedTicket: S,
2191
- onSelectTicket: K,
2192
- discount: D,
2193
- couponCode: T,
2194
- publicCouponsCount: z.length,
2195
- onApplyCouponClick: () => F(!0),
2196
- onRemoveCoupon: q,
2197
- onNext: () => L(2)
2198
- }) }) : /* @__PURE__ */ _(at, {
2199
- values: ie,
2200
- handleChange: Y,
2201
- handleBlur: X,
2202
- handleSubmit: ge,
2422
+ selectedTicket: x,
2423
+ onSelectTicket: me,
2424
+ discount: O,
2425
+ couponCode: E,
2426
+ publicCouponsCount: ie.length,
2427
+ onApplyCouponClick: () => P(!0),
2428
+ onRemoveCoupon: he,
2429
+ onNext: () => I(2)
2430
+ }) }) : /* @__PURE__ */ _(Ct, {
2431
+ values: oe,
2432
+ handleChange: _e,
2433
+ handleBlur: ve,
2434
+ handleSubmit: ye,
2203
2435
  registerLoading: y,
2204
- onBack: () => L(1),
2205
- submitLabel: _e
2436
+ onBack: () => I(1),
2437
+ submitLabel: be
2206
2438
  })] })]
2207
2439
  })] })
2208
2440
  }),
2209
- te && /* @__PURE__ */ _(ft, {
2210
- paymentData: te,
2441
+ w && /* @__PURE__ */ _(jt, {
2442
+ paymentData: w,
2211
2443
  ticketData: o,
2212
2444
  type: "confirm"
2213
2445
  }),
2214
- ce && se && /* @__PURE__ */ _(pt, {
2215
- isOpen: ce,
2216
- onClose: ue,
2217
- stripePromise: W,
2218
- clientSecret: se.clientSecret,
2219
- onComplete: fe
2446
+ W && U && /* @__PURE__ */ _(Mt, {
2447
+ isOpen: W,
2448
+ onClose: K,
2449
+ stripePromise: H,
2450
+ clientSecret: U.clientSecret,
2451
+ onComplete: q
2220
2452
  })
2221
2453
  ] });
2222
- }, bt = (e) => typeof e == "string" && e.trim() ? e : void 0, xt = (e) => typeof e == "string" ? e : e?.location ?? void 0, St = (e, t) => {
2454
+ }, zt = (e) => typeof e == "string" && e.trim() ? e : void 0, Bt = (e) => typeof e == "string" ? e : e?.location ?? void 0, Vt = (e, t) => {
2223
2455
  let n = e.meta ?? {}, r = e.title && t ? `${e.title} | ${t}` : e.title || t || void 0;
2224
2456
  return {
2225
2457
  title: n.meta_title || r,
@@ -2229,33 +2461,33 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
2229
2461
  og: {
2230
2462
  title: n.og_title || void 0,
2231
2463
  description: n.og_description || void 0,
2232
- image: xt(n.og_image),
2464
+ image: Bt(n.og_image),
2233
2465
  url: n.og_url || void 0
2234
2466
  },
2235
2467
  twitter: { card: n.twitter_card || void 0 },
2236
2468
  ldJson: n.ld_json || void 0,
2237
2469
  customHead: n.head_code || void 0
2238
2470
  };
2239
- }, Ct = (e) => ({
2471
+ }, Ht = (e) => ({
2240
2472
  description: e.description || void 0,
2241
2473
  icon: e.icon?.location || void 0,
2242
2474
  customHead: e.settings?.head_code || void 0
2243
- }), wt = (e) => (t = {}, n) => (r) => {
2244
- let i = St(t, e.name);
2475
+ }), Ut = (e) => (t = {}, n) => (r) => {
2476
+ let i = Vt(t, e.name);
2245
2477
  if (n) {
2246
2478
  let t = r?.loaderData?.[n.source];
2247
2479
  if (t) {
2248
- let r = n.title ? bt(t[n.title]) : void 0;
2480
+ let r = n.title ? zt(t[n.title]) : void 0;
2249
2481
  r && (i.title = e.name ? `${r} | ${e.name}` : r, i.og = {
2250
2482
  ...i.og,
2251
2483
  title: r
2252
2484
  });
2253
- let a = n.description ? bt(t[n.description]) : void 0;
2485
+ let a = n.description ? zt(t[n.description]) : void 0;
2254
2486
  a && (i.description = a, i.og = {
2255
2487
  ...i.og,
2256
2488
  description: a
2257
2489
  });
2258
- let o = n.image ? xt(t[n.image]) : void 0;
2490
+ let o = n.image ? Bt(t[n.image]) : void 0;
2259
2491
  o && (i.og = {
2260
2492
  ...i.og,
2261
2493
  image: o
@@ -2266,10 +2498,10 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
2266
2498
  let t = r?.match?.pathname, n = (e.domain || "").trim();
2267
2499
  n && t?.startsWith("/") && (i.canonical = (/^https?:\/\//.test(n) ? n : `https://${n}`).replace(/\/+$/, "") + t);
2268
2500
  }
2269
- return nt(i, Ct(e));
2270
- }, Tt = (e) => {
2271
- let t = I(e);
2272
- return (e) => ({ context: n, params: r }) => pe({
2501
+ return bt(i, Ht(e));
2502
+ }, Wt = (e) => {
2503
+ let t = F(e);
2504
+ return (e) => ({ context: n, params: r }) => ue({
2273
2505
  queryClient: n.queryClient,
2274
2506
  config: t,
2275
2507
  sources: e,
@@ -2277,4 +2509,4 @@ var at = ({ values: e, handleChange: t, handleBlur: n, handleSubmit: r, register
2277
2509
  });
2278
2510
  };
2279
2511
  //#endregion
2280
- export { H as ColorModeProvider, Ke as Inspector, P as LevoChat, yt as LevoEventRegister, he as LevoForm, Ye as LevoPopups, Qe as LevoSiteProvider, rt as PageHead, wt as createLevoHead, Tt as createLevoLoader, F as createSiteClient, nt as pageHead, tt as parseRawHead, pe as prefetchLevoSources, I as siteConfigFromJson, ae as useColorMode, fe as useLevoForm, Ze as useLevoInsights, de as useLevoRecord, Xe as useLevoSite, ue as useLevoSource };
2512
+ export { B as ColorModeProvider, ut as Inspector, N as LevoChat, Rt as LevoEventRegister, fe as LevoForm, pt as LevoPopups, gt as LevoSiteProvider, xt as PageHead, Ut as createLevoHead, Wt as createLevoLoader, P as createSiteClient, bt as pageHead, yt as parseRawHead, ue as prefetchLevoSources, F as siteConfigFromJson, se as useColorMode, q as useLevoForm, ht as useLevoInsights, le as useLevoRecord, mt as useLevoSite, K as useLevoSource };