webim-adapter 2.0.0 → 2.0.2

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.
@@ -265,30 +265,30 @@ function P(e) {
265
265
  R !== void 0 && U.push(`blur(${M(R)})`), z !== void 0 && U.push(`grayscale(${z}%)`), B !== void 0 && U.push(`brightness(${B}%)`), V !== void 0 && U.push(`contrast(${V}%)`), H !== void 0 && U.push(`saturate(${H}%)`), U.length && (t.filter = U.join(" "));
266
266
  let ee = F(L);
267
267
  ee.length && (t.backdropFilter = ee.join(" "), t.WebkitBackdropFilter = t.backdropFilter);
268
- let { textStrokeWidth: te, textStrokeColor: ne } = t;
269
- delete t.textStrokeWidth, delete t.textStrokeColor, (te !== void 0 || ne !== void 0) && (t.WebkitTextStroke = `${M(te ?? 1)} ${ne || "currentColor"}`);
270
- let { clipText: re } = t;
271
- delete t.clipText, re && (t.WebkitBackgroundClip = "text", t.backgroundClip = "text", t.WebkitTextFillColor = "transparent");
272
- let { transitions: ie, transitionDuration: W, transitionEasing: ae, transitionProperty: oe } = t, se = (e) => typeof e == "number" || !Number.isNaN(Number(e)) ? `${Number(e)}ms` : e;
268
+ let { textStrokeWidth: W, textStrokeColor: te } = t;
269
+ delete t.textStrokeWidth, delete t.textStrokeColor, (W !== void 0 || te !== void 0) && (t.WebkitTextStroke = `${M(W ?? 1)} ${te || "currentColor"}`);
270
+ let { clipText: ne } = t;
271
+ delete t.clipText, ne && (t.WebkitBackgroundClip = "text", t.backgroundClip = "text", t.WebkitTextFillColor = "transparent");
272
+ let { transitions: re, transitionDuration: G, transitionEasing: ie, transitionProperty: ae } = t, oe = (e) => typeof e == "number" || !Number.isNaN(Number(e)) ? `${Number(e)}ms` : e;
273
273
  delete t.transitions, delete t.transitionDuration, delete t.transitionEasing, delete t.transitionProperty;
274
- let ce = (Array.isArray(ie) ? ie : []).filter((e) => e && e.on !== !1).map((e) => `${e.property || "all"} ${se(e.duration ?? 200)} ${e.easing || "ease"}`);
275
- if (W !== void 0 && ce.push(`${oe || "all"} ${se(W)} ${ae || "ease"}`), ce.length && (t.transition = ce.join(", ")), t.textDecoration !== void 0 && (t.textDecorationLine = t.textDecoration, delete t.textDecoration), t.backgroundImage && !String(t.backgroundImage).includes("(") && (t.backgroundImage = `url("${t.backgroundImage}")`), n) {
274
+ let se = (Array.isArray(re) ? re : []).filter((e) => e && e.on !== !1).map((e) => `${e.property || "all"} ${oe(e.duration ?? 200)} ${e.easing || "ease"}`);
275
+ if (G !== void 0 && se.push(`${ae || "all"} ${oe(G)} ${ie || "ease"}`), se.length && (t.transition = se.join(", ")), t.textDecoration !== void 0 && (t.textDecorationLine = t.textDecoration, delete t.textDecoration), t.backgroundImage && !String(t.backgroundImage).includes("(") && (t.backgroundImage = `url("${t.backgroundImage}")`), n) {
276
276
  let e = `${i || "rgba(0,0,0,0.5)"}, ${a || "transparent"}`, o = n === "radial" ? `radial-gradient(circle, ${e})` : `linear-gradient(${r ?? 180}deg, ${e})`;
277
277
  t.backgroundImage = t.backgroundImage ? `${o}, ${t.backgroundImage}` : o;
278
278
  }
279
279
  delete t.backgroundVideo;
280
- let { overlayColor: G, overlayOpacity: le } = t;
281
- if (delete t.overlayColor, delete t.overlayOpacity, G) {
282
- let e = `color-mix(in srgb, ${G} ${le ?? 50}%, transparent)`, n = `linear-gradient(${e}, ${e})`;
280
+ let { overlayColor: K, overlayOpacity: ce } = t;
281
+ if (delete t.overlayColor, delete t.overlayOpacity, K) {
282
+ let e = `color-mix(in srgb, ${K} ${ce ?? 50}%, transparent)`, n = `linear-gradient(${e}, ${e})`;
283
283
  t.backgroundImage = t.backgroundImage ? `${n}, ${t.backgroundImage}` : n;
284
284
  }
285
285
  t.backgroundImage && (t.backgroundSize ??= "cover", t.backgroundPosition ??= "center", t.backgroundRepeat ??= "no-repeat");
286
- let { backgroundLayers: K } = t;
286
+ let { backgroundLayers: q } = t;
287
287
  delete t.backgroundLayers;
288
- let q = (Array.isArray(K) ? K : []).filter((e) => e && e.on !== !1);
289
- if (q.length) {
288
+ let J = (Array.isArray(q) ? q : []).filter((e) => e && e.on !== !1);
289
+ if (J.length) {
290
290
  let e = [], n = [], r = [], i = [], a = [];
291
- for (let t of q) if (t.kind === "linear") e.push(`linear-gradient(${t.angle ?? 180}deg, ${t.from || "rgba(0,0,0,0.5)"}, ${t.to || "transparent"})`), n.push("auto"), r.push("0% 0%"), i.push("repeat"), a.push("scroll");
291
+ for (let t of J) if (t.kind === "linear") e.push(`linear-gradient(${t.angle ?? 180}deg, ${t.from || "rgba(0,0,0,0.5)"}, ${t.to || "transparent"})`), n.push("auto"), r.push("0% 0%"), i.push("repeat"), a.push("scroll");
292
292
  else if (t.kind === "radial") e.push(`radial-gradient(circle, ${t.from || "rgba(0,0,0,0.5)"}, ${t.to || "transparent"})`), n.push("auto"), r.push("0% 0%"), i.push("repeat"), a.push("scroll");
293
293
  else {
294
294
  if (!t.src) continue;
@@ -366,7 +366,7 @@ function ee(e, t) {
366
366
  }
367
367
  e.__webimEvents = n;
368
368
  }
369
- function te(e, t, n = []) {
369
+ function W(e, t, n = []) {
370
370
  t.htmlId ? e.id = t.htmlId : e.removeAttribute("id");
371
371
  let r = R(t.classNames), i = R(e.getAttribute("data-wb-class"));
372
372
  for (let t of i) r.includes(t) || e.classList.remove(t);
@@ -380,15 +380,15 @@ function te(e, t, n = []) {
380
380
  }
381
381
  return a;
382
382
  }
383
- var ne = (e) => e.replace(/[A-Z]/g, (e) => `-${e.toLowerCase()}`);
384
- function re(e, t, n, r = !1) {
385
- let i = Object.entries(P(t)).map(([e, t]) => `${ne(e)}: ${t} !important;`).join(" ");
383
+ var te = (e) => e.replace(/[A-Z]/g, (e) => `-${e.toLowerCase()}`);
384
+ function ne(e, t, n, r = !1) {
385
+ let i = Object.entries(P(t)).map(([e, t]) => `${te(e)}: ${t} !important;`).join(" ");
386
386
  return i ? `[data-wb="${e}"]${r ? "" : n} { ${i} }` : "";
387
387
  }
388
- function ie(e, t, n) {
389
- return Object.entries(F).map(([r, i]) => re(e, t?.[r], i, n === r)).filter(Boolean).join("\n");
388
+ function re(e, t, n) {
389
+ return Object.entries(F).map(([r, i]) => ne(e, t?.[r], i, n === r)).filter(Boolean).join("\n");
390
390
  }
391
- var W = [
391
+ var G = [
392
392
  {
393
393
  key: "tablet",
394
394
  max: 991
@@ -401,17 +401,17 @@ var W = [
401
401
  key: "mobile",
402
402
  max: 478
403
403
  }
404
- ], ae = (e) => Object.entries(P(e)).map(([e, t]) => `${ne(e)}: ${t} !important;`).join(" ");
405
- function oe(e, t) {
406
- return W.map(({ key: n, max: r }) => {
407
- let i = t?.[n] ? ae(t[n]) : "";
404
+ ], ie = (e) => Object.entries(P(e)).map(([e, t]) => `${te(e)}: ${t} !important;`).join(" ");
405
+ function ae(e, t) {
406
+ return G.map(({ key: n, max: r }) => {
407
+ let i = t?.[n] ? ie(t[n]) : "";
408
408
  return i ? `@media (max-width: ${r}px) { [data-wb="${e}"] { ${i} } }` : "";
409
409
  }).filter(Boolean).join("\n");
410
410
  }
411
- function se(e, t) {
411
+ function oe(e, t) {
412
412
  let n = [], r = (e) => {
413
413
  for (let [t, r] of Object.entries(e || {})) {
414
- let e = oe(t, r.props);
414
+ let e = ae(t, r.props);
415
415
  e && n.push(e);
416
416
  }
417
417
  };
@@ -419,10 +419,10 @@ function se(e, t) {
419
419
  for (let e of Object.values(t || {})) r(e.template?.nodes);
420
420
  return n.join("\n");
421
421
  }
422
- function ce(e, t) {
422
+ function se(e, t) {
423
423
  let n = [], r = (e) => {
424
424
  for (let [t, r] of Object.entries(e || {})) {
425
- let e = ie(t, r.props);
425
+ let e = re(t, r.props);
426
426
  e && n.push(e);
427
427
  }
428
428
  };
@@ -430,15 +430,15 @@ function ce(e, t) {
430
430
  for (let e of Object.values(t || {})) r(e.template?.nodes);
431
431
  return n.join("\n");
432
432
  }
433
- var G = "-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif", le = {
434
- fontFamily: G,
433
+ var K = "-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif", ce = {
434
+ fontFamily: K,
435
435
  fontStyle: "normal",
436
436
  fontWeight: 400,
437
437
  letterSpacing: "normal",
438
438
  textTransform: "none",
439
439
  lineHeight: 1.4,
440
440
  textShadow: "none"
441
- }, K = {
441
+ }, q = {
442
442
  light: {
443
443
  background: "#f2f2f2",
444
444
  surface: "#f2f2f2",
@@ -479,32 +479,32 @@ var G = "-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Ari
479
479
  contrastText: "#052e2b"
480
480
  }
481
481
  }
482
- }, q = {
482
+ }, J = {
483
483
  h1: 40,
484
484
  h2: 32,
485
485
  h3: 26,
486
486
  h4: 22,
487
487
  h5: 19,
488
488
  h6: 16
489
- }, ue = {
489
+ }, le = {
490
490
  font: "system",
491
491
  headingFont: "inherit",
492
- headings: q,
492
+ headings: J,
493
493
  bodySize: 16,
494
- light: K.light,
495
- dark: K.dark
496
- }, de = {
494
+ light: q.light,
495
+ dark: q.dark
496
+ }, ue = {
497
497
  system: {
498
498
  label: "System",
499
- value: G
499
+ value: K
500
500
  },
501
501
  inter: {
502
502
  label: "Inter",
503
- value: `"Inter", ${G}`
503
+ value: `"Inter", ${K}`
504
504
  },
505
505
  outfit: {
506
506
  label: "Outfit",
507
- value: `"Outfit", ${G}`
507
+ value: `"Outfit", ${K}`
508
508
  },
509
509
  serif: {
510
510
  label: "Serif",
@@ -514,7 +514,7 @@ var G = "-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Ari
514
514
  label: "Mono",
515
515
  value: "ui-monospace, SFMono-Regular, Menlo, Consolas, monospace"
516
516
  }
517
- }, fe = (e, t) => de[e]?.value ?? k(e) ?? (typeof e == "string" && e.trim() ? `"${e.trim()}", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif` : t), J = (e, ...t) => {
517
+ }, de = (e, t) => ue[e]?.value ?? k(e) ?? (typeof e == "string" && e.trim() ? `"${e.trim()}", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif` : t), fe = (e, ...t) => {
518
518
  let n = Object.assign({}, e, ...t);
519
519
  return n.primary = {
520
520
  ...e.primary,
@@ -533,22 +533,22 @@ var G = "-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Ari
533
533
  function pe(e) {
534
534
  let { light: t, dark: n, font: r, headingFont: i, headings: a, bodySize: o, ...s } = e ?? {};
535
535
  return {
536
- font: r ?? ue.font,
537
- headingFont: i ?? ue.headingFont,
536
+ font: r ?? le.font,
537
+ headingFont: i ?? le.headingFont,
538
538
  headings: {
539
- ...q,
539
+ ...J,
540
540
  ...a ?? {}
541
541
  },
542
542
  bodySize: o ?? 16,
543
- light: J(K.light, s, t),
544
- dark: J(K.dark, n)
543
+ light: fe(q.light, s, t),
544
+ dark: fe(q.dark, n)
545
545
  };
546
546
  }
547
547
  function me(e) {
548
548
  return {
549
549
  "--page-bg": e.background,
550
550
  "--page-surface": e.surface ?? e.background,
551
- "--page-border": e.border ?? K.light.border,
551
+ "--page-border": e.border ?? q.light.border,
552
552
  "--page-text": e.text,
553
553
  "--page-accent": e.accent,
554
554
  "--page-accent-text": e.accentText,
@@ -567,8 +567,8 @@ function he(e) {
567
567
  return {
568
568
  backgroundColor: "var(--page-bg)",
569
569
  color: "var(--page-text)",
570
- fontFamily: fe(t.font, G),
571
- "--page-heading-font": t.headingFont === "inherit" ? "inherit" : fe(t.headingFont, "inherit"),
570
+ fontFamily: de(t.font, K),
571
+ "--page-heading-font": t.headingFont === "inherit" ? "inherit" : de(t.headingFont, "inherit"),
572
572
  ..._e(t.headings),
573
573
  "--page-body-size": ge(t.bodySize, 16)
574
574
  };
@@ -578,9 +578,9 @@ function ge(e, t) {
578
578
  }
579
579
  function _e(e) {
580
580
  let t = {};
581
- for (let n of Object.keys(q)) {
582
- let r = e?.[n] ?? q[n];
583
- t[`--page-${n}`] = ge(r, q[n]);
581
+ for (let n of Object.keys(J)) {
582
+ let r = e?.[n] ?? J[n];
583
+ t[`--page-${n}`] = ge(r, J[n]);
584
584
  }
585
585
  return t;
586
586
  }
@@ -650,7 +650,7 @@ var Oe = {
650
650
  fontWeight: 700,
651
651
  lineHeight: 1.2,
652
652
  fontFamily: "var(--page-heading-font, inherit)"
653
- }, ke = q, Ae = (e) => `var(--page-${e}, ${q[e] ?? q.h2}px)`, je = {
653
+ }, ke = J, Ae = (e) => `var(--page-${e}, ${J[e] ?? J.h2}px)`, je = {
654
654
  margin: 0,
655
655
  fontSize: "var(--page-body-size, 16px)"
656
656
  }, Me = {
@@ -745,7 +745,7 @@ function Be({ text: e, parts: t, tag: n = "h2", style: r, linked: i, nodeRef: a
745
745
  });
746
746
  }
747
747
  var Ve = {
748
- fontFamily: de.mono.value,
748
+ fontFamily: ue.mono.value,
749
749
  background: "rgba(148, 163, 184, 0.18)",
750
750
  padding: "1px 5px",
751
751
  borderRadius: 4,
@@ -1319,6 +1319,7 @@ function gt({ count: e, renderSlide: t, autoplay: n = !0, interval: r = 5, heigh
1319
1319
  position: "relative",
1320
1320
  overflow: "hidden",
1321
1321
  width: "100%",
1322
+ height: i,
1322
1323
  touchAction: "pan-y",
1323
1324
  userSelect: _ ? "none" : void 0,
1324
1325
  cursor: _ ? "grabbing" : void 0,
@@ -1327,7 +1328,7 @@ function gt({ count: e, renderSlide: t, autoplay: n = !0, interval: r = 5, heigh
1327
1328
  children: [/* @__PURE__ */ d("div", {
1328
1329
  style: {
1329
1330
  display: "flex",
1330
- height: i,
1331
+ height: "100%",
1331
1332
  transform: `translateX(calc(${-y * 100}% + ${_?.dx ?? 0}px))`,
1332
1333
  transition: _ ? "none" : "transform 450ms ease"
1333
1334
  },
@@ -4387,36 +4388,36 @@ function Hn({ columns: e = [], rows: t = [], widths: n = [], rowKeys: r = [], co
4387
4388
  };
4388
4389
  return document.addEventListener("mousedown", e, !0), () => document.removeEventListener("mousedown", e, !0);
4389
4390
  }, [N, L]);
4390
- let { tenant: H, apiUrl: U } = i(Y), ee = i(xe), te = ee?.[h], ne = C ? Se(ee) : 1, [re, ie] = l(null);
4391
+ let { tenant: H, apiUrl: U } = i(Y), ee = i(xe), W = ee?.[h], te = C ? Se(ee) : 1, [ne, re] = l(null);
4391
4392
  if (a(() => {
4392
- if (!h || te) return;
4393
- let e = !0, t = Math.max(1, Number(g) || 10), n = C && !h.startsWith("api:") ? `?offset=${(ne - 1) * t}&limit=${t}` : "", r = h.startsWith("api:") ? `${U}/data/${encodeURIComponent(h.slice(4))}` : `${U}/dynamic/${encodeURIComponent(h)}${n}`;
4393
+ if (!h || W) return;
4394
+ let e = !0, t = Math.max(1, Number(g) || 10), n = C && !h.startsWith("api:") ? `?offset=${(te - 1) * t}&limit=${t}` : "", r = h.startsWith("api:") ? `${U}/data/${encodeURIComponent(h.slice(4))}` : `${U}/dynamic/${encodeURIComponent(h)}${n}`;
4394
4395
  return fetch(r, { headers: H ? { "x-tenant": H } : {} }).then((e) => e.json()).then((t) => {
4395
4396
  let n = Array.isArray(t?.payload) ? t.payload : Array.isArray(t?.payload?.data) ? t.payload.data : [];
4396
- return e && ie(n);
4397
- }).catch(() => e && ie([])), () => {
4397
+ return e && re(n);
4398
+ }).catch(() => e && re([])), () => {
4398
4399
  e = !1;
4399
4400
  };
4400
4401
  }, [
4401
4402
  h,
4402
4403
  H,
4403
4404
  U,
4404
- te,
4405
+ W,
4405
4406
  C,
4406
- ne,
4407
+ te,
4407
4408
  g
4408
4409
  ]), !e.length) return null;
4409
- let W = Math.max(1, Number(g) || 10), ae = h ? C ? te || h.startsWith("api:") ? (te ?? re ?? []).slice((ne - 1) * W, ne * W) : (re ?? []).slice(0, W) : (te ?? re ?? []).slice(0, W) : null, oe = ae ? ae.map((t) => e.map((e) => Ee(we(t?.data, e.field)))) : t, se = !!h && !(h && !te && re === null) && oe.length === 0, ce = b ? {
4410
+ let G = Math.max(1, Number(g) || 10), ie = h ? C ? W || h.startsWith("api:") ? (W ?? ne ?? []).slice((te - 1) * G, te * G) : (ne ?? []).slice(0, G) : (W ?? ne ?? []).slice(0, G) : null, ae = ie ? ie.map((t) => e.map((e) => Ee(we(t?.data, e.field)))) : t, oe = !!h && !(h && !W && ne === null) && ae.length === 0, se = b ? {
4410
4411
  y: 6,
4411
4412
  x: 10
4412
4413
  } : {
4413
4414
  y: 10,
4414
4415
  x: 14
4415
- }, G = `${Number.isFinite(Number(S)) && S !== "" ? Number(S) : ce.y}px ${Number.isFinite(Number(x)) && x !== "" ? Number(x) : ce.x}px`, le = `1px solid ${typeof k == "string" && k ? k : "rgba(148, 163, 184, 0.35)"}`, K = y ? { border: le } : { borderBottom: le }, q = Array.isArray(n) && n.length === e.length && n.every((e) => Number.isFinite(e) && e > 0), ue = [
4416
+ }, K = `${Number.isFinite(Number(S)) && S !== "" ? Number(S) : se.y}px ${Number.isFinite(Number(x)) && x !== "" ? Number(x) : se.x}px`, ce = `1px solid ${typeof k == "string" && k ? k : "rgba(148, 163, 184, 0.35)"}`, q = y ? { border: ce } : { borderBottom: ce }, J = Array.isArray(n) && n.length === e.length && n.every((e) => Number.isFinite(e) && e > 0), le = [
4416
4417
  "left",
4417
4418
  "center",
4418
4419
  "right"
4419
- ], de = (t) => ue.includes(e[t]?.align) ? e[t].align : "", fe = (e) => de(e) || (ue.includes(O) ? O : "left"), J = Number.isFinite(Number(A)) && Number(A) > 0 ? Number(A) : 0, pe = P(j), me = !J && pe && pe.maxHeight !== void 0 ? pe.maxHeight : 0, he = J || me, ge = me ? {
4420
+ ], ue = (t) => le.includes(e[t]?.align) ? e[t].align : "", de = (e) => ue(e) || (le.includes(O) ? O : "left"), fe = Number.isFinite(Number(A)) && Number(A) > 0 ? Number(A) : 0, pe = P(j), me = !fe && pe && pe.maxHeight !== void 0 ? pe.maxHeight : 0, he = fe || me, ge = me ? {
4420
4421
  ...pe,
4421
4422
  maxHeight: void 0
4422
4423
  } : pe, _e = !!N && N.rows !== !1, ve = (t) => (r) => {
@@ -4424,7 +4425,7 @@ function Hn({ columns: e = [], rows: t = [], widths: n = [], rowKeys: r = [], co
4424
4425
  r.preventDefault(), r.stopPropagation();
4425
4426
  let i = F.current, a = i ? i.clientWidth : 0;
4426
4427
  if (!a) return;
4427
- let o = q ? [...n] : e.map(() => 100 / e.length), s = r.clientX, c = o[t] + o[t + 1], l = (e) => {
4428
+ let o = J ? [...n] : e.map(() => 100 / e.length), s = r.clientX, c = o[t] + o[t + 1], l = (e) => {
4428
4429
  let n = (e.clientX - s) / a * 100, r = Math.min(c - 5, Math.max(5, o[t] + n)), i = [...o];
4429
4430
  i[t] = Math.round(r * 10) / 10, i[t + 1] = Math.round((c - r) * 10) / 10, N.resize(i);
4430
4431
  }, u = () => {
@@ -4432,7 +4433,7 @@ function Hn({ columns: e = [], rows: t = [], widths: n = [], rowKeys: r = [], co
4432
4433
  };
4433
4434
  window.addEventListener("pointermove", l), window.addEventListener("pointerup", u);
4434
4435
  }, ye = /* @__PURE__ */ new Set();
4435
- p && oe.forEach((t, n) => e.forEach((e, t) => {
4436
+ p && ae.forEach((t, n) => e.forEach((e, t) => {
4436
4437
  let i = p[Bn(r[n], o[t])];
4437
4438
  if (!i) return;
4438
4439
  let a = Math.max(1, Number(i.c) || 1), s = Math.max(1, Number(i.r) || 1);
@@ -4456,7 +4457,7 @@ function Hn({ columns: e = [], rows: t = [], widths: n = [], rowKeys: r = [], co
4456
4457
  },
4457
4458
  onClick: n,
4458
4459
  children: e
4459
- }, t), Z = L && L.r < oe.length && L.c < e.length ? L : null, Q = (e, t) => N?.labels?.[e] ?? t, Ce = Z ? p?.[Bn(r[Z.r], o[Z.c])] : null, Te = Math.max(1, Number(Ce?.c) || 1), De = Math.max(1, Number(Ce?.r) || 1);
4460
+ }, t), Z = L && L.r < ae.length && L.c < e.length ? L : null, Q = (e, t) => N?.labels?.[e] ?? t, Ce = Z ? p?.[Bn(r[Z.r], o[Z.c])] : null, Te = Math.max(1, Number(Ce?.c) || 1), De = Math.max(1, Number(Ce?.r) || 1);
4460
4461
  return /* @__PURE__ */ f("div", {
4461
4462
  ref: (e) => {
4462
4463
  I.current = e, typeof M == "function" && M(e);
@@ -4483,8 +4484,8 @@ function Hn({ columns: e = [], rows: t = [], widths: n = [], rowKeys: r = [], co
4483
4484
  X("+↑", Q("rowAbove", "Insert row above"), () => N.addRow(Z.r - 1)),
4484
4485
  X("+↓", Q("rowBelow", "Insert row below"), () => N.addRow(Z.r)),
4485
4486
  X("↑", Q("rowUp", "Move row up"), () => N.moveRow(Z.r, -1), Z.r === 0),
4486
- X("↓", Q("rowDown", "Move row down"), () => N.moveRow(Z.r, 1), Z.r >= oe.length - 1),
4487
- X("✕ row", Q("rowDelete", "Delete row"), () => N.dropRow(Z.r), oe.length <= 1),
4487
+ X("↓", Q("rowDown", "Move row down"), () => N.moveRow(Z.r, 1), Z.r >= ae.length - 1),
4488
+ X("✕ row", Q("rowDelete", "Delete row"), () => N.dropRow(Z.r), ae.length <= 1),
4488
4489
  /* @__PURE__ */ d("span", { className: "wb-tedit-sep" }),
4489
4490
  X("+←", Q("colLeft", "Insert column left"), () => N.addColumn(Z.c - 1)),
4490
4491
  X("+→", Q("colRight", "Insert column right"), () => N.addColumn(Z.c)),
@@ -4493,7 +4494,7 @@ function Hn({ columns: e = [], rows: t = [], widths: n = [], rowKeys: r = [], co
4493
4494
  X("✕ col", Q("colDelete", "Delete column"), () => N.dropColumn(Z.c), e.length <= 1),
4494
4495
  /* @__PURE__ */ d("span", { className: "wb-tedit-sep" }),
4495
4496
  X("↔", Q("mergeRight", "Merge with the cell on the right"), () => N.merge(Z.r, Z.c, "right"), Z.c + Te >= e.length),
4496
- X("↕", Q("mergeDown", "Merge with the cell below"), () => N.merge(Z.r, Z.c, "down"), Z.r + De >= oe.length),
4497
+ X("↕", Q("mergeDown", "Merge with the cell below"), () => N.merge(Z.r, Z.c, "down"), Z.r + De >= ae.length),
4497
4498
  X("⤫", Q("split", "Split this cell"), () => N.split(Z.r, Z.c), Te === 1 && De === 1)
4498
4499
  ]
4499
4500
  }),
@@ -4513,17 +4514,17 @@ function Hn({ columns: e = [], rows: t = [], widths: n = [], rowKeys: r = [], co
4513
4514
  borderCollapse: T && _ !== !1 ? "separate" : "collapse",
4514
4515
  borderSpacing: 0,
4515
4516
  fontSize: 14,
4516
- ...q ? { tableLayout: "fixed" } : null,
4517
- ...y ? { border: le } : {}
4517
+ ...J ? { tableLayout: "fixed" } : null,
4518
+ ...y ? { border: ce } : {}
4518
4519
  },
4519
4520
  children: [
4520
- q && /* @__PURE__ */ d("colgroup", { children: n.map((e, t) => /* @__PURE__ */ d("col", { style: { width: `${e}%` } }, t)) }),
4521
+ J && /* @__PURE__ */ d("colgroup", { children: n.map((e, t) => /* @__PURE__ */ d("col", { style: { width: `${e}%` } }, t)) }),
4521
4522
  _ === !1 ? null : /* @__PURE__ */ d("thead", { children: /* @__PURE__ */ d("tr", { children: e.map((t, n) => /* @__PURE__ */ d("th", {
4522
4523
  className: N ? "wb-tedit-head" : void 0,
4523
4524
  style: {
4524
- textAlign: fe(n),
4525
+ textAlign: de(n),
4525
4526
  fontWeight: 600,
4526
- padding: G,
4527
+ padding: K,
4527
4528
  ...typeof D == "string" && D ? { color: D } : null,
4528
4529
  background: typeof E == "string" && E ? E : T ? "var(--page-surface, #f2f2f2)" : "rgba(148, 163, 184, 0.12)",
4529
4530
  ...T ? {
@@ -4531,7 +4532,7 @@ function Hn({ columns: e = [], rows: t = [], widths: n = [], rowKeys: r = [], co
4531
4532
  top: 0,
4532
4533
  zIndex: 2
4533
4534
  } : N ? { position: "relative" } : null,
4534
- ...K
4535
+ ...q
4535
4536
  },
4536
4537
  children: N ? /* @__PURE__ */ f(u, { children: [/* @__PURE__ */ d(Ln, {
4537
4538
  value: t.label ?? t,
@@ -4544,16 +4545,16 @@ function Hn({ columns: e = [], rows: t = [], widths: n = [], rowKeys: r = [], co
4544
4545
  onPointerDown: ve(n)
4545
4546
  })] }) : t.label ?? t
4546
4547
  }, n)) }) }),
4547
- /* @__PURE__ */ f("tbody", { children: [se && /* @__PURE__ */ d("tr", { children: /* @__PURE__ */ d("td", {
4548
+ /* @__PURE__ */ f("tbody", { children: [oe && /* @__PURE__ */ d("tr", { children: /* @__PURE__ */ d("td", {
4548
4549
  colSpan: e.length,
4549
4550
  style: {
4550
- padding: G,
4551
+ padding: K,
4551
4552
  textAlign: "center",
4552
4553
  opacity: .6,
4553
- ...K
4554
+ ...q
4554
4555
  },
4555
4556
  children: w || "No data yet"
4556
- }) }), oe.map((t, n) => /* @__PURE__ */ d("tr", {
4557
+ }) }), ae.map((t, n) => /* @__PURE__ */ d("tr", {
4557
4558
  className: N ? "wb-tedit-row" : void 0,
4558
4559
  style: {
4559
4560
  ...v && n % 2 == 1 ? { background: "rgba(148, 163, 184, 0.07)" } : null,
@@ -4569,10 +4570,10 @@ function Hn({ columns: e = [], rows: t = [], widths: n = [], rowKeys: r = [], co
4569
4570
  colSpan: l > 1 ? l : void 0,
4570
4571
  rowSpan: u > 1 ? u : void 0,
4571
4572
  style: {
4572
- padding: G,
4573
- ...de(i) ? { textAlign: de(i) } : null,
4573
+ padding: K,
4574
+ ...ue(i) ? { textAlign: ue(i) } : null,
4574
4575
  ...N ? { position: "relative" } : null,
4575
- ...K
4576
+ ...q
4576
4577
  },
4577
4578
  children: [s ?? Vn(t?.[i]), N && _e && /* @__PURE__ */ d("span", {
4578
4579
  className: "wb-tedit-rowgrip",
@@ -4735,7 +4736,7 @@ function Xn({ events: e = [], source: t = "", titleField: n = "", startField: r
4735
4736
  year: n.getFullYear(),
4736
4737
  month: n.getMonth()
4737
4738
  };
4738
- }), te = (e, t) => /* @__PURE__ */ d("button", {
4739
+ }), W = (e, t) => /* @__PURE__ */ d("button", {
4739
4740
  type: "button",
4740
4741
  "aria-label": e,
4741
4742
  onClick: () => ee(t),
@@ -4750,7 +4751,7 @@ function Xn({ events: e = [], source: t = "", titleField: n = "", startField: r
4750
4751
  padding: "4px 8px"
4751
4752
  },
4752
4753
  children: t < 0 ? "‹" : "›"
4753
- }), ne = /* @__PURE__ */ f("div", {
4754
+ }), te = /* @__PURE__ */ f("div", {
4754
4755
  style: {
4755
4756
  display: "flex",
4756
4757
  alignItems: "center",
@@ -4767,8 +4768,8 @@ function Xn({ events: e = [], source: t = "", titleField: n = "", startField: r
4767
4768
  },
4768
4769
  children: U
4769
4770
  }),
4770
- te("Previous month", -1),
4771
- te("Next month", 1)
4771
+ W("Previous month", -1),
4772
+ W("Next month", 1)
4772
4773
  ]
4773
4774
  });
4774
4775
  if (p === "list") {
@@ -4784,7 +4785,7 @@ function Xn({ events: e = [], source: t = "", titleField: n = "", startField: r
4784
4785
  width: "100%",
4785
4786
  ...P(S)
4786
4787
  },
4787
- children: [ne, e.length ? /* @__PURE__ */ d("div", {
4788
+ children: [te, e.length ? /* @__PURE__ */ d("div", {
4788
4789
  style: {
4789
4790
  display: "flex",
4790
4791
  flexDirection: "column",
@@ -4820,10 +4821,10 @@ function Xn({ events: e = [], source: t = "", titleField: n = "", startField: r
4820
4821
  })]
4821
4822
  });
4822
4823
  }
4823
- let re = new Date(j.year, j.month, 1), ie = y === "sunday" ? 0 : 1, W = (re.getDay() - ie + 7) % 7, ae = new Date(j.year, j.month + 1, 0).getDate(), oe = Math.ceil((W + ae) / 7), se = Wn(/* @__PURE__ */ new Date()), ce = new Intl.DateTimeFormat(V, { weekday: "short" }), G = [];
4824
- for (let e = 0; e < oe * 7; e += 1) {
4825
- let t = e - W + 1, n = t >= 1 && t <= ae, r = Wn(new Date(j.year, j.month, t)), i = n ? B.get(r) ?? [] : [], a = i.slice(0, Math.max(1, b)), o = n && r === se;
4826
- G.push(/* @__PURE__ */ f("div", {
4824
+ let ne = new Date(j.year, j.month, 1), re = y === "sunday" ? 0 : 1, G = (ne.getDay() - re + 7) % 7, ie = new Date(j.year, j.month + 1, 0).getDate(), ae = Math.ceil((G + ie) / 7), oe = Wn(/* @__PURE__ */ new Date()), se = new Intl.DateTimeFormat(V, { weekday: "short" }), K = [];
4825
+ for (let e = 0; e < ae * 7; e += 1) {
4826
+ let t = e - G + 1, n = t >= 1 && t <= ie, r = Wn(new Date(j.year, j.month, t)), i = n ? B.get(r) ?? [] : [], a = i.slice(0, Math.max(1, b)), o = n && r === oe;
4827
+ K.push(/* @__PURE__ */ f("div", {
4827
4828
  style: {
4828
4829
  minHeight: N.cell,
4829
4830
  borderTop: `1px solid ${I}`,
@@ -4866,7 +4867,7 @@ function Xn({ events: e = [], source: t = "", titleField: n = "", startField: r
4866
4867
  ...P(S)
4867
4868
  },
4868
4869
  children: [
4869
- ne,
4870
+ te,
4870
4871
  /* @__PURE__ */ f("div", {
4871
4872
  style: {
4872
4873
  display: "grid",
@@ -4880,8 +4881,8 @@ function Xn({ events: e = [], source: t = "", titleField: n = "", startField: r
4880
4881
  textAlign: "center",
4881
4882
  padding: `0 0 ${N.pad}px`
4882
4883
  },
4883
- children: ce.format(new Date(2024, 0, 7 + ie + t))
4884
- }, `head-${t}`)), G]
4884
+ children: se.format(new Date(2024, 0, 7 + re + t))
4885
+ }, `head-${t}`)), K]
4885
4886
  }),
4886
4887
  /* @__PURE__ */ d("div", { style: { borderTop: `1px solid ${I}` } })
4887
4888
  ]
@@ -4904,7 +4905,7 @@ function Qn(e, t = {}) {
4904
4905
  }).filter((e) => e.src);
4905
4906
  }
4906
4907
  function $n({ logos: e = [], source: t = "", imageField: n = "", nameField: r = "", hrefField: o = "", variant: s = "step", size: p = "medium", perView: m = 5, gap: h = 48, hold: g = 3, slideMs: _ = 500, direction: v = "left", arrows: y = "show", pauseOnHover: b = !0, grayscale: x = !0, newTab: S = !0, emptyText: C = "", style: w, nodeRef: T, inert: E }) {
4907
- let { tenant: D, apiUrl: O } = i(Y), k = i(xe)?.[t], [A, j] = l(null), M = c(null), N = c(null), [F, I] = l(0), [L, R] = l(0), [z, B] = l(0), [V, H] = l(!0), [U, ee] = l(!1), [te, ne] = l(!1);
4908
+ let { tenant: D, apiUrl: O } = i(Y), k = i(xe)?.[t], [A, j] = l(null), M = c(null), N = c(null), [F, I] = l(0), [L, R] = l(0), [z, B] = l(0), [V, H] = l(!0), [U, ee] = l(!1), [W, te] = l(!1);
4908
4909
  a(() => {
4909
4910
  if (!t || k) return;
4910
4911
  let e = !0;
@@ -4921,7 +4922,7 @@ function $n({ logos: e = [], source: t = "", imageField: n = "", nameField: r =
4921
4922
  k
4922
4923
  ]), a(() => {
4923
4924
  if (typeof window > "u" || !window.matchMedia) return;
4924
- let e = window.matchMedia("(prefers-reduced-motion: reduce)"), t = () => ne(e.matches);
4925
+ let e = window.matchMedia("(prefers-reduced-motion: reduce)"), t = () => te(e.matches);
4925
4926
  return t(), e.addEventListener?.("change", t), () => e.removeEventListener?.("change", t);
4926
4927
  }, []), a(() => {
4927
4928
  let e = N.current;
@@ -4934,7 +4935,7 @@ function $n({ logos: e = [], source: t = "", imageField: n = "", nameField: r =
4934
4935
  let e = M.current;
4935
4936
  if (!e) return;
4936
4937
  let t = !0, n = () => {
4937
- let n = [...e.querySelectorAll("img")].filter((e) => e.complete && e.naturalHeight).map((e) => e.naturalWidth / e.naturalHeight * W);
4938
+ let n = [...e.querySelectorAll("img")].filter((e) => e.complete && e.naturalHeight).map((e) => e.naturalWidth / e.naturalHeight * G);
4938
4939
  t && n.length && R(Math.ceil(Math.max(...n)));
4939
4940
  };
4940
4941
  n();
@@ -4943,12 +4944,12 @@ function $n({ logos: e = [], source: t = "", imageField: n = "", nameField: r =
4943
4944
  t = !1, r.forEach((e) => e.removeEventListener("load", n));
4944
4945
  };
4945
4946
  });
4946
- let re = Array.isArray(e) ? e.filter((e) => e && typeof e == "object" && e.src) : [], ie = t ? Qn(k ?? A ?? [], {
4947
+ let ne = Array.isArray(e) ? e.filter((e) => e && typeof e == "object" && e.src) : [], re = t ? Qn(k ?? A ?? [], {
4947
4948
  imageField: n,
4948
4949
  nameField: r,
4949
4950
  hrefField: o
4950
- }) : re, W = Zn[p] ?? Zn.medium, ae = Number.isFinite(Number(h)) ? Math.max(0, Number(h)) : 48, oe = s === "marquee" ? "step" : s, se = Math.min(3e4, Math.max(300, (Number(g) || 3) * 1e3)), ce = Math.min(3e3, Math.max(100, Number(_) || 500)), G = Math.min(12, Math.max(1, Math.round(Number(m) || 5))), K = (L || W * 3) + ae, q = F ? Math.max(1, Math.floor(F / K)) : G, ue = Math.min(G, q), de = F ? Math.min(K, F / ue) : K;
4951
- if (!ie.length) return /* @__PURE__ */ d("div", {
4951
+ }) : ne, G = Zn[p] ?? Zn.medium, ie = Number.isFinite(Number(h)) ? Math.max(0, Number(h)) : 48, ae = s === "marquee" ? "step" : s, oe = Math.min(3e4, Math.max(300, (Number(g) || 3) * 1e3)), se = Math.min(3e3, Math.max(100, Number(_) || 500)), K = Math.min(12, Math.max(1, Math.round(Number(m) || 5))), q = (L || G * 3) + ie, J = F ? Math.max(1, Math.floor(F / q)) : K, le = Math.min(K, J), ue = F ? Math.min(q, F / le) : q;
4952
+ if (!re.length) return /* @__PURE__ */ d("div", {
4952
4953
  ref: T,
4953
4954
  style: {
4954
4955
  width: "100%",
@@ -4960,7 +4961,7 @@ function $n({ logos: e = [], source: t = "", imageField: n = "", nameField: r =
4960
4961
  alignItems: "center",
4961
4962
  justifyContent: "center",
4962
4963
  flexWrap: "wrap",
4963
- gap: ae
4964
+ gap: ie
4964
4965
  },
4965
4966
  children: [
4966
4967
  0,
@@ -4970,16 +4971,16 @@ function $n({ logos: e = [], source: t = "", imageField: n = "", nameField: r =
4970
4971
  4
4971
4972
  ].map((e) => /* @__PURE__ */ d("div", {
4972
4973
  style: {
4973
- height: W,
4974
- width: W * 3,
4974
+ height: G,
4975
+ width: G * 3,
4975
4976
  border: "1px dashed var(--page-border, rgba(148, 163, 184, 0.5))",
4976
4977
  borderRadius: 6,
4977
4978
  display: "flex",
4978
4979
  alignItems: "center",
4979
4980
  justifyContent: "center",
4980
- fontSize: Math.max(10, Math.round(W / 4)),
4981
+ fontSize: Math.max(10, Math.round(G / 4)),
4981
4982
  opacity: .45,
4982
- ...le
4983
+ ...ce
4983
4984
  },
4984
4985
  children: "LOGO"
4985
4986
  }, e))
@@ -4993,21 +4994,21 @@ function $n({ logos: e = [], source: t = "", imageField: n = "", nameField: r =
4993
4994
  children: C
4994
4995
  }) : null
4995
4996
  });
4996
- let fe = ie.length, J = oe === "step" && fe > ue, pe = oe === "slider", me = J && !E && !U && !te, he = v === "right", ge = he ? fe : 0, _e = J ? [...ie, ...ie] : ie, ve = J ? z * de : 0, ye = (e, t, n) => {
4997
+ let de = re.length, fe = ae === "step" && de > le, pe = ae === "slider", me = fe && !E && !U && !W, he = v === "right", ge = he ? de : 0, _e = fe ? [...re, ...re] : re, ve = fe ? z * ue : 0, ye = (e, t, n) => {
4997
4998
  let r = /* @__PURE__ */ d("img", {
4998
4999
  src: e.src,
4999
5000
  alt: e.alt ?? "",
5000
5001
  style: {
5001
- height: W,
5002
+ height: G,
5002
5003
  width: "auto",
5003
5004
  maxWidth: "100%",
5004
5005
  objectFit: "contain",
5005
5006
  display: "block"
5006
5007
  }
5007
- }), i = J ? {
5008
- width: de,
5008
+ }), i = fe ? {
5009
+ width: ue,
5009
5010
  flex: "0 0 auto",
5010
- padding: `0 ${ae / 2}px`,
5011
+ padding: `0 ${ie / 2}px`,
5011
5012
  justifyContent: "center"
5012
5013
  } : {};
5013
5014
  return e.href && !E ? /* @__PURE__ */ d("a", {
@@ -5036,22 +5037,22 @@ function $n({ logos: e = [], source: t = "", imageField: n = "", nameField: r =
5036
5037
  style: {
5037
5038
  display: "flex",
5038
5039
  alignItems: "center",
5039
- ...J ? {
5040
- width: _e.length * de,
5040
+ ...fe ? {
5041
+ width: _e.length * ue,
5041
5042
  transform: `translateX(-${ve}px)`,
5042
- transition: V ? `transform ${ce}ms ease` : "none"
5043
+ transition: V ? `transform ${se}ms ease` : "none"
5043
5044
  } : pe ? {
5044
- gap: ae,
5045
+ gap: ie,
5045
5046
  overflowX: "auto",
5046
5047
  scrollBehavior: "smooth",
5047
5048
  scrollSnapType: "x proximity"
5048
5049
  } : {
5049
- gap: ae,
5050
+ gap: ie,
5050
5051
  flexWrap: "wrap",
5051
5052
  justifyContent: "center"
5052
5053
  }
5053
5054
  },
5054
- children: _e.map((e, t) => ye(e, t, J && t >= fe))
5055
+ children: _e.map((e, t) => ye(e, t, fe && t >= de))
5055
5056
  }), Se = (e) => {
5056
5057
  if (pe) {
5057
5058
  let t = M.current;
@@ -5062,15 +5063,15 @@ function $n({ logos: e = [], source: t = "", imageField: n = "", nameField: r =
5062
5063
  return;
5063
5064
  }
5064
5065
  let t = z + e;
5065
- if (t >= 0 && t <= fe) {
5066
+ if (t >= 0 && t <= de) {
5066
5067
  H(!0), B(t);
5067
5068
  return;
5068
5069
  }
5069
- let n = t < 0 ? fe : 0;
5070
+ let n = t < 0 ? de : 0;
5070
5071
  H(!1), B(n), requestAnimationFrame(() => requestAnimationFrame(() => {
5071
5072
  H(!0), B(n + e);
5072
5073
  }));
5073
- }, X = y === !1 || y === "off" ? "off" : y === "hover" ? "hover" : "show", Z = X !== "off" && (pe ? F > 0 : J), Q = (e) => /* @__PURE__ */ d("button", {
5074
+ }, X = y === !1 || y === "off" ? "off" : y === "hover" ? "hover" : "show", Z = X !== "off" && (pe ? F > 0 : fe), Q = (e) => /* @__PURE__ */ d("button", {
5074
5075
  type: "button",
5075
5076
  "aria-label": e < 0 ? "Previous logos" : "Next logos",
5076
5077
  onClick: () => Se(e),
@@ -5112,10 +5113,10 @@ function $n({ logos: e = [], source: t = "", imageField: n = "", nameField: r =
5112
5113
  border: 1px solid var(--page-border, rgba(148, 163, 184, 0.5));
5113
5114
  }
5114
5115
  ` }),
5115
- J ? /* @__PURE__ */ f("div", {
5116
+ fe ? /* @__PURE__ */ f("div", {
5116
5117
  style: {
5117
5118
  position: "relative",
5118
- width: ue * de,
5119
+ width: le * ue,
5119
5120
  maxWidth: "100%",
5120
5121
  margin: "0 auto"
5121
5122
  },
@@ -5134,11 +5135,11 @@ function $n({ logos: e = [], source: t = "", imageField: n = "", nameField: r =
5134
5135
  ] }),
5135
5136
  /* @__PURE__ */ d(er, {
5136
5137
  running: me,
5137
- every: se + ce,
5138
- slide: ce,
5138
+ every: oe + se,
5139
+ slide: se,
5139
5140
  step: he ? -1 : 1,
5140
5141
  index: z,
5141
- total: fe,
5142
+ total: de,
5142
5143
  home: ge,
5143
5144
  setIndex: B,
5144
5145
  setAnimate: H
@@ -5382,11 +5383,113 @@ function nr({ dialogId: e = "", trigger: t = "button", triggerLabel: n = "Open",
5382
5383
  })]
5383
5384
  });
5384
5385
  }
5385
- var rr = {
5386
+ function rr({ dropdownId: e = "", trigger: t = "button", triggerLabel: n = "Menu", openOn: r = "hover", align: i = "left", panelWidth: o = "", offset: s = 8, editorOpen: u = !0, linked: p, style: m, nodeRef: h, inert: g = !1 }) {
5387
+ let [_, v] = l(!1), y = c(null), b = c(null), x = r !== "click", S = () => {
5388
+ b.current && clearTimeout(b.current), b.current = null;
5389
+ }, C = () => {
5390
+ S(), b.current = setTimeout(() => v(!1), 160);
5391
+ };
5392
+ a(() => {
5393
+ if (g || !e) return;
5394
+ let t = `[data-webim-toggle="${e}"]`, n = (e) => {
5395
+ e.target.closest?.(t) && (e.preventDefault(), S(), v((e) => !e));
5396
+ }, r = (e) => {
5397
+ e.target.closest?.(t) && (S(), v(!0));
5398
+ }, i = (e) => {
5399
+ let n = e.target.closest?.(t);
5400
+ !n || e.relatedTarget && n.contains(e.relatedTarget) || C();
5401
+ };
5402
+ return document.addEventListener("click", n), x && (document.addEventListener("mouseover", r), document.addEventListener("mouseout", i)), () => {
5403
+ document.removeEventListener("click", n), document.removeEventListener("mouseover", r), document.removeEventListener("mouseout", i);
5404
+ };
5405
+ }, [
5406
+ g,
5407
+ e,
5408
+ x
5409
+ ]), a(() => {
5410
+ if (g || !_) return;
5411
+ let t = (t) => {
5412
+ y.current?.contains(t.target) || e && t.target.closest?.(`[data-webim-toggle="${e}"]`) || v(!1);
5413
+ }, n = (e) => e.key === "Escape" && v(!1);
5414
+ return document.addEventListener("mousedown", t), document.addEventListener("keydown", n), () => {
5415
+ document.removeEventListener("mousedown", t), document.removeEventListener("keydown", n);
5416
+ };
5417
+ }, [
5418
+ g,
5419
+ _,
5420
+ e
5421
+ ]), a(() => S, []);
5422
+ let w = Number(o) > 0 ? Number(o) : null, T = g ? u !== !1 : _, E = /* @__PURE__ */ d("div", {
5423
+ style: {
5424
+ position: "absolute",
5425
+ top: `calc(100% + ${Number(s) || 0}px)`,
5426
+ ...i === "right" ? { right: 0 } : i === "center" ? {
5427
+ left: "50%",
5428
+ transform: "translateX(-50%)"
5429
+ } : { left: 0 },
5430
+ zIndex: 60,
5431
+ display: T ? "block" : "none",
5432
+ minWidth: w ?? 240,
5433
+ width: w ?? void 0,
5434
+ maxWidth: "92vw",
5435
+ padding: 14,
5436
+ borderRadius: 10,
5437
+ background: "var(--page-surface, #ffffff)",
5438
+ color: "var(--page-text, inherit)",
5439
+ border: "1px solid var(--page-border, rgba(148, 163, 184, 0.35))",
5440
+ boxShadow: "0 16px 44px rgba(15, 23, 42, 0.22)",
5441
+ ...P(m)
5442
+ },
5443
+ children: p?.content ?? null
5444
+ });
5445
+ return /* @__PURE__ */ f("div", {
5446
+ ref: (e) => {
5447
+ y.current = e, h && h(e);
5448
+ },
5449
+ id: e || void 0,
5450
+ onMouseEnter: !g && x ? () => {
5451
+ S(), v(!0);
5452
+ } : void 0,
5453
+ onMouseLeave: !g && x ? C : void 0,
5454
+ style: {
5455
+ position: "relative",
5456
+ display: "inline-block"
5457
+ },
5458
+ children: [t !== "none" && /* @__PURE__ */ f("button", {
5459
+ type: "button",
5460
+ "aria-haspopup": "true",
5461
+ "aria-expanded": g ? void 0 : _,
5462
+ onClick: () => !g && v((e) => !e),
5463
+ style: {
5464
+ padding: "9px 16px",
5465
+ border: "1px solid var(--page-border, rgba(148, 163, 184, 0.35))",
5466
+ borderRadius: 6,
5467
+ cursor: "pointer",
5468
+ fontSize: 15,
5469
+ fontFamily: "inherit",
5470
+ background: "var(--page-surface, transparent)",
5471
+ color: "inherit",
5472
+ display: "inline-flex",
5473
+ alignItems: "center",
5474
+ gap: 6
5475
+ },
5476
+ children: [n, /* @__PURE__ */ d("span", {
5477
+ "aria-hidden": "true",
5478
+ style: {
5479
+ fontSize: 10,
5480
+ opacity: .7
5481
+ },
5482
+ children: "▾"
5483
+ })]
5484
+ }), E]
5485
+ });
5486
+ }
5487
+ var ir = {
5386
5488
  PageRoot: Le,
5387
5489
  CalendarBlock: Xn,
5388
5490
  LogoCarousel: $n,
5389
5491
  DialogBlock: nr,
5492
+ DropdownBlock: rr,
5390
5493
  Section: Re,
5391
5494
  Container: ze,
5392
5495
  Heading: Be,
@@ -5441,39 +5544,39 @@ var rr = {
5441
5544
  FormFile: on,
5442
5545
  FormRecaptcha: $t,
5443
5546
  FormSubmit: sn
5444
- }, ir = {
5547
+ }, ar = {
5445
5548
  id: "auth",
5446
5549
  label: "Accounts",
5447
5550
  category: "Apps",
5448
5551
  keys: ["SiteLoginForm", "SiteAccountMenu"],
5449
5552
  ssr: "shell",
5450
5553
  settings: ["site.authRedirect"]
5451
- }, ar = n({
5554
+ }, or = n({
5452
5555
  user: null,
5453
5556
  status: "idle",
5454
5557
  ensure: () => {},
5455
5558
  refresh: () => {},
5456
5559
  signOut: () => {}
5457
5560
  });
5458
- function or(e, t) {
5561
+ function sr(e, t) {
5459
5562
  return t ? /^https?:\/\//i.test(t) ? t : `${e.replace(/\/+$/, "")}${t.startsWith("/") ? t : `/${t}`}` : "";
5460
5563
  }
5461
- function sr(e) {
5564
+ function cr(e) {
5462
5565
  let t = e && typeof e == "object" ? e["site.session"] : null, n = t && typeof t == "object" && !Array.isArray(t) ? t : {}, r = (e) => typeof e == "string" ? e.trim() : "", i = r(n.url), a = r(n.mePath), o = r(n.logoutPath);
5463
5566
  return {
5464
5567
  mode: n.mode === "custom" || n.mode === "off" ? n.mode : "system",
5465
5568
  url: i,
5466
5569
  mePath: a,
5467
5570
  logoutPath: o,
5468
- meUrl: or(i, a),
5469
- logoutUrl: or(i, o),
5571
+ meUrl: sr(i, a),
5572
+ logoutUrl: sr(i, o),
5470
5573
  loginPage: r(n.loginPage),
5471
5574
  userPath: r(n.userPath),
5472
5575
  auth: n.auth === "bearer" ? "bearer" : "cookies",
5473
5576
  tokenKey: r(n.tokenKey) || "webim_session_token"
5474
5577
  };
5475
5578
  }
5476
- function cr(e, t) {
5579
+ function lr(e, t) {
5477
5580
  if (!t) return e ?? null;
5478
5581
  let n = e;
5479
5582
  for (let e of t.split(".")) {
@@ -5482,26 +5585,26 @@ function cr(e, t) {
5482
5585
  }
5483
5586
  return n ?? null;
5484
5587
  }
5485
- function lr(e) {
5588
+ function ur(e) {
5486
5589
  try {
5487
5590
  return window.localStorage.getItem(e) || "";
5488
5591
  } catch {
5489
5592
  return "";
5490
5593
  }
5491
5594
  }
5492
- function ur(e) {
5595
+ function dr(e) {
5493
5596
  try {
5494
5597
  window.localStorage.removeItem(e);
5495
5598
  } catch {}
5496
5599
  }
5497
- var dr = () => {
5498
- let e = i(ar);
5600
+ var fr = () => {
5601
+ let e = i(or);
5499
5602
  return a(() => {
5500
5603
  e.ensure();
5501
5604
  }, [e]), e;
5502
5605
  };
5503
- function fr({ children: e, initialUser: t, disabled: n, apiUrl: o, tenant: u }) {
5504
- let f = i(Y), p = o || f?.apiUrl || "/api", m = u || f?.tenant || "", h = s(() => sr(f?.settings), [f?.settings]), [g, _] = l(t ?? null), [v, y] = l(t ? "user" : n ? "guest" : "idle"), b = c(!1), x = r((e, t) => fetch(`${p}${e}`, {
5606
+ function pr({ children: e, initialUser: t, disabled: n, apiUrl: o, tenant: u }) {
5607
+ let f = i(Y), p = o || f?.apiUrl || "/api", m = u || f?.tenant || "", h = s(() => cr(f?.settings), [f?.settings]), [g, _] = l(t ?? null), [v, y] = l(t ? "user" : n ? "guest" : "idle"), b = c(!1), x = r((e, t) => fetch(`${p}${e}`, {
5505
5608
  ...t,
5506
5609
  credentials: "include",
5507
5610
  headers: {
@@ -5513,9 +5616,9 @@ function fr({ children: e, initialUser: t, disabled: n, apiUrl: o, tenant: u })
5513
5616
  if (n) return Promise.resolve(null);
5514
5617
  if (h.mode === "off") return Promise.resolve(S(null));
5515
5618
  if (h.mode === "custom") {
5516
- let e = h.auth === "bearer" ? lr(h.tokenKey) : "";
5619
+ let e = h.auth === "bearer" ? ur(h.tokenKey) : "";
5517
5620
  return !h.meUrl || h.auth === "bearer" && !e ? Promise.resolve(S(null)) : fetch(h.meUrl, { ...h.auth === "bearer" ? { headers: { authorization: `Bearer ${e}` } } : { credentials: "include" } }).then((e) => e.ok ? e.json() : null).then((e) => {
5518
- let t = cr(e, h.userPath);
5621
+ let t = lr(e, h.userPath);
5519
5622
  return S(t && typeof t == "object" ? t : null);
5520
5623
  }).catch(() => S(null));
5521
5624
  }
@@ -5528,12 +5631,12 @@ function fr({ children: e, initialUser: t, disabled: n, apiUrl: o, tenant: u })
5528
5631
  ]), w = r(() => {
5529
5632
  if (h.mode === "off") return S(null), Promise.resolve();
5530
5633
  if (h.mode === "custom") {
5531
- let e = h.auth === "bearer" ? lr(h.tokenKey) : "";
5634
+ let e = h.auth === "bearer" ? ur(h.tokenKey) : "";
5532
5635
  return (h.logoutUrl ? fetch(h.logoutUrl, {
5533
5636
  method: "post",
5534
5637
  ...h.auth === "bearer" ? { headers: e ? { authorization: `Bearer ${e}` } : {} } : { credentials: "include" }
5535
5638
  }).catch(() => {}) : Promise.resolve()).then(() => {
5536
- h.auth === "bearer" && ur(h.tokenKey), S(null);
5639
+ h.auth === "bearer" && dr(h.tokenKey), S(null);
5537
5640
  });
5538
5641
  }
5539
5642
  return x("/site/logout", { method: "post" }).catch(() => {}).then(() => {
@@ -5583,18 +5686,18 @@ function fr({ children: e, initialUser: t, disabled: n, apiUrl: o, tenant: u })
5583
5686
  h.loginPage,
5584
5687
  C,
5585
5688
  w
5586
- ]), /* @__PURE__ */ d(ar.Provider, {
5689
+ ]), /* @__PURE__ */ d(or.Provider, {
5587
5690
  value: E,
5588
5691
  children: e
5589
5692
  });
5590
5693
  }
5591
- function pr({ when: e, children: t }) {
5592
- let { status: n } = dr();
5694
+ function mr({ when: e, children: t }) {
5695
+ let { status: n } = fr();
5593
5696
  return !e || e === "always" ? t : n === "idle" || n === "loading" ? null : e === "user" == (n === "user") ? t : null;
5594
5697
  }
5595
5698
  //#endregion
5596
5699
  //#region ../ui/src/components/builder/apps/auth/views.jsx
5597
- function mr({ mode: e = "login", redirect: t, emailLabel: n = "Email", passwordLabel: r = "Password", nameLabel: a = "Name", submitLabel: o, style: s, nodeRef: c, inert: u, linked: p, show: m }) {
5700
+ function hr({ mode: e = "login", redirect: t, emailLabel: n = "Email", passwordLabel: r = "Password", nameLabel: a = "Name", submitLabel: o, style: s, nodeRef: c, inert: u, linked: p, show: m }) {
5598
5701
  let { tenant: h, apiUrl: g, settings: _ } = i(Y), [v, y] = l("form"), [b, x] = l(""), [S, C] = l(!1), w = e === "register", T = u ? m || "form" : v, E = (e) => typeof e == "string" && e.startsWith("/") && !e.startsWith("//") ? e : "", D = async (e) => {
5599
5702
  if (e.preventDefault(), u) return;
5600
5703
  let n = new FormData(e.currentTarget);
@@ -5718,8 +5821,8 @@ function mr({ mode: e = "login", redirect: t, emailLabel: n = "Email", passwordL
5718
5821
  ]
5719
5822
  });
5720
5823
  }
5721
- function hr({ greeting: e = "Hi", signOutLabel: t = "Sign out", showEmail: n = !1, style: r, nodeRef: i, inert: a, linked: o, show: s }) {
5722
- let { user: c, status: l, signOut: u } = dr(), p = a ? s || "user" : l, m = a ? {
5824
+ function gr({ greeting: e = "Hi", signOutLabel: t = "Sign out", showEmail: n = !1, style: r, nodeRef: i, inert: a, linked: o, show: s }) {
5825
+ let { user: c, status: l, signOut: u } = fr(), p = a ? s || "user" : l, m = a ? {
5723
5826
  name: "Ada Lovelace",
5724
5827
  email: "ada@example.com"
5725
5828
  } : c;
@@ -5784,40 +5887,40 @@ function hr({ greeting: e = "Hi", signOutLabel: t = "Sign out", showEmail: n = !
5784
5887
  }
5785
5888
  //#endregion
5786
5889
  //#region ../ui/src/components/builder/apps/consent/manifest.js
5787
- var gr = {
5890
+ var _r = {
5788
5891
  id: "consent",
5789
5892
  label: "Cookie consent",
5790
5893
  category: "Apps",
5791
5894
  keys: ["CookieConsent"],
5792
5895
  ssr: "shell",
5793
5896
  settings: []
5794
- }, _r = "webim.cookie_consent";
5795
- function vr() {
5897
+ }, vr = "webim.cookie_consent";
5898
+ function yr() {
5796
5899
  try {
5797
- let e = window.localStorage.getItem(_r), t = e ? JSON.parse(e) : null;
5900
+ let e = window.localStorage.getItem(vr), t = e ? JSON.parse(e) : null;
5798
5901
  return t?.choice === "accepted" || t?.choice === "declined" ? t.choice : "";
5799
5902
  } catch {
5800
5903
  return "";
5801
5904
  }
5802
5905
  }
5803
- function yr(e) {
5906
+ function br(e) {
5804
5907
  try {
5805
5908
  document.querySelectorAll(".webim-page").forEach((t) => t.setAttribute("data-webim-consent", e));
5806
5909
  } catch {}
5807
5910
  }
5808
- function br(e) {
5911
+ function xr(e) {
5809
5912
  try {
5810
- window.localStorage.setItem(_r, JSON.stringify({
5913
+ window.localStorage.setItem(vr, JSON.stringify({
5811
5914
  choice: e,
5812
5915
  at: (/* @__PURE__ */ new Date()).toISOString()
5813
5916
  }));
5814
5917
  } catch {}
5815
- yr(e);
5918
+ br(e);
5816
5919
  try {
5817
5920
  window.dispatchEvent(new CustomEvent("webim:consent", { detail: { choice: e } }));
5818
5921
  } catch {}
5819
5922
  }
5820
- var xr = {
5923
+ var Sr = {
5821
5924
  bottom: {
5822
5925
  left: 0,
5823
5926
  right: 0,
@@ -5839,18 +5942,18 @@ var xr = {
5839
5942
  maxWidth: 400
5840
5943
  }
5841
5944
  };
5842
- function Sr({ message: e, acceptLabel: t, rejectLabel: n, showReject: r, linkLabel: i, linkHref: o, position: s, linked: c, style: p, nodeRef: m, inert: h }) {
5945
+ function Cr({ message: e, acceptLabel: t, rejectLabel: n, showReject: r, linkLabel: i, linkHref: o, position: s, linked: c, style: p, nodeRef: m, inert: h }) {
5843
5946
  let [g, _] = l(!!h), [v, y] = l(null), b = (e) => {
5844
5947
  y(e), typeof m == "function" && m(e);
5845
5948
  };
5846
5949
  if (a(() => {
5847
5950
  if (h) return;
5848
- let e = vr();
5849
- e ? yr(e) : _(!0);
5951
+ let e = yr();
5952
+ e ? br(e) : _(!0);
5850
5953
  }, [h, v]), !g) return null;
5851
5954
  let x = (e) => () => {
5852
- h || (br(e), _(!1));
5853
- }, S = xr[s] ?? xr.bottom, C = {
5955
+ h || (xr(e), _(!1));
5956
+ }, S = Sr[s] ?? Sr.bottom, C = {
5854
5957
  appearance: "none",
5855
5958
  font: "inherit",
5856
5959
  fontSize: 14,
@@ -5930,37 +6033,37 @@ function Sr({ message: e, acceptLabel: t, rejectLabel: n, showReject: r, linkLab
5930
6033
  }
5931
6034
  //#endregion
5932
6035
  //#region ../ui/src/components/builder/apps/language/manifest.js
5933
- var Cr = {
6036
+ var wr = {
5934
6037
  id: "language",
5935
6038
  label: "Language",
5936
6039
  category: "Apps",
5937
6040
  keys: ["SiteLanguagePicker"],
5938
6041
  ssr: "prefetch",
5939
6042
  settings: ["locales"]
5940
- }, wr = {
6043
+ }, Tr = {
5941
6044
  id: "search",
5942
6045
  label: "Search",
5943
6046
  category: "Apps",
5944
6047
  keys: ["SiteSearch"],
5945
6048
  ssr: "prefetch",
5946
6049
  settings: []
5947
- }, Tr = 50, Er = 2e3;
5948
- function Dr() {
6050
+ }, Er = 50, Dr = 2e3;
6051
+ function Or() {
5949
6052
  return typeof window > "u" ? "" : new URLSearchParams(window.location.search).get("q") ?? "";
5950
6053
  }
5951
- function Or(e, t) {
6054
+ function kr(e, t) {
5952
6055
  let n = e?.data ?? {}, r = [];
5953
6056
  for (let e of Object.values(n)) {
5954
6057
  let t = e == null ? "" : Ee(e);
5955
- if (t && r.push(t), r.join(" ").length > Er) break;
6058
+ if (t && r.push(t), r.join(" ").length > Dr) break;
5956
6059
  }
5957
- return r.join(" ").slice(0, Er).toLocaleLowerCase(t || void 0);
6060
+ return r.join(" ").slice(0, Dr).toLocaleLowerCase(t || void 0);
5958
6061
  }
5959
- function kr({ placeholder: e = "Search…", buttonLabel: t = "Search", showButton: n = !0, live: r = !1, layout: o = "inline", includePages: s = !0, collections: u = [], limit: p = 10, emptyText: m = "Nothing found", hint: h = "", style: g, nodeRef: _, inert: v = !1, sample: y = !1 }) {
5960
- let { tenant: b, apiUrl: x, locale: S } = i(Y), [C, w] = l(() => Dr()), [T, E] = l(() => Dr()), [D, O] = l(null), [k, A] = l(!1), j = c(null), M = o === "popup";
6062
+ function Ar({ placeholder: e = "Search…", buttonLabel: t = "Search", showButton: n = !0, live: r = !1, layout: o = "inline", includePages: s = !0, collections: u = [], limit: p = 10, emptyText: m = "Nothing found", hint: h = "", style: g, nodeRef: _, inert: v = !1, sample: y = !1 }) {
6063
+ let { tenant: b, apiUrl: x, locale: S } = i(Y), [C, w] = l(() => Or()), [T, E] = l(() => Or()), [D, O] = l(null), [k, A] = l(!1), j = c(null), M = o === "popup";
5961
6064
  a(() => {
5962
6065
  let e = () => {
5963
- let e = Dr();
6066
+ let e = Or();
5964
6067
  w(e), E(e);
5965
6068
  };
5966
6069
  return window.addEventListener("popstate", e), window.addEventListener("webim:urlchange", e), () => {
@@ -6011,7 +6114,7 @@ function kr({ placeholder: e = "Search…", buttonLabel: t = "Search", showButto
6011
6114
  });
6012
6115
  }
6013
6116
  else for (let t of e.rows) {
6014
- if (!Or(t, S).includes(N)) continue;
6117
+ if (!kr(t, S).includes(N)) continue;
6015
6118
  let n = t?.data ?? {}, r = Ee(n.name) || "Untitled", i = Ee(n.slug);
6016
6119
  F.push({
6017
6120
  key: `entry:${t.id}`,
@@ -6020,7 +6123,7 @@ function kr({ placeholder: e = "Search…", buttonLabel: t = "Search", showButto
6020
6123
  kind: "entry"
6021
6124
  });
6022
6125
  }
6023
- let I = F.slice(0, Math.min(Math.max(1, p), Tr)), L = (e) => {
6126
+ let I = F.slice(0, Math.min(Math.max(1, p), Er)), L = (e) => {
6024
6127
  if (v) {
6025
6128
  e.preventDefault(), w(T), A(!0);
6026
6129
  return;
@@ -6160,21 +6263,21 @@ function kr({ placeholder: e = "Search…", buttonLabel: t = "Search", showButto
6160
6263
  }
6161
6264
  //#endregion
6162
6265
  //#region ../ui/src/components/builder/apps/language/views.jsx
6163
- function Ar(e) {
6266
+ function jr(e) {
6164
6267
  let t = e?.locales, n = [typeof t?.default == "string" && t.default.trim() ? t.default.trim() : "", ...Array.isArray(t?.enabled) ? t.enabled : []].filter((e) => typeof e == "string" && e.trim());
6165
6268
  return [...new Set(n.map((e) => e.trim()))];
6166
6269
  }
6167
- var jr = (e) => e && e.charAt(0).toUpperCase() + e.slice(1);
6168
- function Mr(e, t) {
6270
+ var Mr = (e) => e && e.charAt(0).toUpperCase() + e.slice(1);
6271
+ function Nr(e, t) {
6169
6272
  let n = String(e ?? "").toUpperCase();
6170
6273
  if (t === "code") return n;
6171
6274
  let r = "";
6172
6275
  try {
6173
- r = jr(new Intl.DisplayNames([e], { type: "language" }).of(e) ?? "");
6276
+ r = Mr(new Intl.DisplayNames([e], { type: "language" }).of(e) ?? "");
6174
6277
  } catch {}
6175
6278
  return !r || r.toUpperCase() === n ? n : t === "both" ? `${n} — ${r}` : r;
6176
6279
  }
6177
- function Nr(e, t) {
6280
+ function Pr(e, t) {
6178
6281
  let n = t ? "" : `?locale=${encodeURIComponent(e)}`;
6179
6282
  if (typeof window > "u") return n || "?";
6180
6283
  try {
@@ -6184,8 +6287,8 @@ function Nr(e, t) {
6184
6287
  return n || "/";
6185
6288
  }
6186
6289
  }
6187
- function Pr({ variant: e, display: t, separator: n, label: r, style: a, nodeRef: o, inert: s }) {
6188
- let c = i(Y), l = Ar(c?.settings), u = l[0] ?? "", p = l.includes(c?.locale) ? c.locale : u, m = {
6290
+ function Fr({ variant: e, display: t, separator: n, label: r, style: a, nodeRef: o, inert: s }) {
6291
+ let c = i(Y), l = jr(c?.settings), u = l[0] ?? "", p = l.includes(c?.locale) ? c.locale : u, m = {
6189
6292
  display: "inline-flex",
6190
6293
  alignItems: "center",
6191
6294
  gap: 8,
@@ -6220,7 +6323,7 @@ function Pr({ variant: e, display: t, separator: n, label: r, style: a, nodeRef:
6220
6323
  style: { opacity: .4 },
6221
6324
  children: n ?? "·"
6222
6325
  }), /* @__PURE__ */ d("a", {
6223
- href: Nr(e, e === u),
6326
+ href: Pr(e, e === u),
6224
6327
  hrefLang: e,
6225
6328
  "aria-current": e === p ? "true" : void 0,
6226
6329
  onClick: s ? (e) => e.preventDefault() : void 0,
@@ -6230,7 +6333,7 @@ function Pr({ variant: e, display: t, separator: n, label: r, style: a, nodeRef:
6230
6333
  textDecoration: "none",
6231
6334
  cursor: s ? "default" : "pointer"
6232
6335
  },
6233
- children: Mr(e, t)
6336
+ children: Nr(e, t)
6234
6337
  })]
6235
6338
  }, e))]
6236
6339
  }) : /* @__PURE__ */ f("div", {
@@ -6241,7 +6344,7 @@ function Pr({ variant: e, display: t, separator: n, label: r, style: a, nodeRef:
6241
6344
  value: p,
6242
6345
  onChange: s ? void 0 : (e) => {
6243
6346
  let t = e.target.value;
6244
- window.location.assign(Nr(t, t === u));
6347
+ window.location.assign(Pr(t, t === u));
6245
6348
  },
6246
6349
  onKeyDown: s ? (e) => e.preventDefault() : void 0,
6247
6350
  style: {
@@ -6255,47 +6358,47 @@ function Pr({ variant: e, display: t, separator: n, label: r, style: a, nodeRef:
6255
6358
  },
6256
6359
  children: l.map((e) => /* @__PURE__ */ d("option", {
6257
6360
  value: e,
6258
- children: Mr(e, t)
6361
+ children: Nr(e, t)
6259
6362
  }, e))
6260
6363
  })]
6261
6364
  });
6262
6365
  }
6263
6366
  //#endregion
6264
6367
  //#region ../ui/src/components/builder/apps/index.js
6265
- var Fr = [
6266
- ir,
6267
- Cr,
6268
- gr,
6269
- wr
6270
- ], Ir = {
6271
- SiteLoginForm: mr,
6272
- SiteAccountMenu: hr,
6273
- SiteLanguagePicker: Pr,
6274
- CookieConsent: Sr,
6275
- SiteSearch: kr
6368
+ var Ir = [
6369
+ ar,
6370
+ wr,
6371
+ _r,
6372
+ Tr
6373
+ ], Lr = {
6374
+ SiteLoginForm: hr,
6375
+ SiteAccountMenu: gr,
6376
+ SiteLanguagePicker: Fr,
6377
+ CookieConsent: Cr,
6378
+ SiteSearch: Ar
6276
6379
  };
6277
- new Set(Fr.filter((e) => e.ssr === "shell").flatMap((e) => e.keys));
6380
+ new Set(Ir.filter((e) => e.ssr === "shell").flatMap((e) => e.keys));
6278
6381
  //#endregion
6279
6382
  //#region ../ui/src/components/builder/three/runtime.js
6280
- var Lr = "0.185.1", Rr = "4.3.1", zr = "https://cdn.jsdelivr.net/npm", Br = `${zr}/three@${Lr}/build/three.module.js`, Vr = `${zr}/@google/model-viewer@${Rr}/dist/model-viewer.min.js`, Hr = (e) => import(
6383
+ var Rr = "0.185.1", zr = "4.2.0", Br = "https://cdn.jsdelivr.net/npm", Vr = `${Br}/three@${Rr}/+esm`, Hr = `${Br}/@google/model-viewer@${zr}/dist/model-viewer.min.js`, Ur = (e) => import(
6281
6384
  /* @vite-ignore */
6282
6385
  /* webpackIgnore: true */
6283
6386
  e
6284
- ), Ur = /* @__PURE__ */ new Map();
6285
- function Wr(e) {
6286
- if (Ur.has(e)) return Ur.get(e);
6387
+ ), Wr = /* @__PURE__ */ new Map();
6388
+ function Gr(e) {
6389
+ if (Wr.has(e)) return Wr.get(e);
6287
6390
  if (typeof window > "u") return new Promise(() => {});
6288
- let t = Hr(e).catch((t) => {
6289
- throw Ur.delete(e), t;
6391
+ let t = Ur(e).catch((t) => {
6392
+ throw Wr.delete(e), t;
6290
6393
  });
6291
- return Ur.set(e, t), t;
6394
+ return Wr.set(e, t), t;
6292
6395
  }
6293
- var Gr = () => Wr(Br);
6294
- function Kr() {
6295
- return typeof window < "u" && window.customElements?.get("model-viewer") ? Promise.resolve(null) : Wr(Vr);
6396
+ var Kr = () => Gr(Vr), qr = (e) => Gr(`${Br}/three@${Rr}/examples/jsm/${e}/+esm`);
6397
+ function Jr() {
6398
+ return typeof window < "u" && window.customElements?.get("model-viewer") ? Promise.resolve(null) : Gr(Hr);
6296
6399
  }
6297
- var qr = () => typeof window < "u" && !!window.matchMedia?.("(prefers-reduced-motion: reduce)").matches, Jr = (e = 2) => Math.min(typeof window > "u" ? 1 : window.devicePixelRatio || 1, e);
6298
- function Yr(e, t) {
6400
+ var Yr = () => typeof window < "u" && !!window.matchMedia?.("(prefers-reduced-motion: reduce)").matches, Xr = (e = 2) => Math.min(typeof window > "u" ? 1 : window.devicePixelRatio || 1, e);
6401
+ function Zr(e, t) {
6299
6402
  let n = 0, r = 0, i = 0, a = !0, o = (e) => {
6300
6403
  n = requestAnimationFrame(o), i ||= e;
6301
6404
  let a = r ? (e - r) / 1e3 : 0;
@@ -6314,7 +6417,7 @@ function Yr(e, t) {
6314
6417
  s(), l?.disconnect(), document.removeEventListener("visibilitychange", c);
6315
6418
  };
6316
6419
  }
6317
- function Xr(e, t, n = {}) {
6420
+ function Qr(e, t, n = {}) {
6318
6421
  let r = {
6319
6422
  radius: n.distance ?? 4,
6320
6423
  polar: n.polar ?? Math.PI / 2.4,
@@ -6363,13 +6466,13 @@ function Xr(e, t, n = {}) {
6363
6466
  }
6364
6467
  //#endregion
6365
6468
  //#region ../ui/src/components/builder/three/views.jsx
6366
- var Zr = (e, t) => Number.isFinite(Number(e)) && Number(e) > 0 ? Number(e) : t, Qr = (e, t) => (Number.isFinite(Number(e)) ? Number(e) : t) / 100, $r = (e) => (Number.isFinite(Number(e)) ? Number(e) : 0) * Math.PI / 180;
6367
- function ei({ label: e, note: t, height: n, nodeRef: r, style: i }) {
6469
+ var $r = (e, t) => Number.isFinite(Number(e)) && Number(e) > 0 ? Number(e) : t, ei = (e, t) => (Number.isFinite(Number(e)) ? Number(e) : t) / 100, ti = (e) => (Number.isFinite(Number(e)) ? Number(e) : 0) * Math.PI / 180, ni = (e) => typeof e == "string" && !!e.trim();
6470
+ function ri({ label: e, note: t, height: n, nodeRef: r, style: i }) {
6368
6471
  return /* @__PURE__ */ f("div", {
6369
6472
  ref: r,
6370
6473
  style: {
6371
6474
  ...P(i),
6372
- minHeight: Zr(n, 320),
6475
+ minHeight: $r(n, 320),
6373
6476
  display: "flex",
6374
6477
  flexDirection: "column",
6375
6478
  alignItems: "center",
@@ -6378,7 +6481,7 @@ function ei({ label: e, note: t, height: n, nodeRef: r, style: i }) {
6378
6481
  border: "1px dashed rgba(148,163,184,.55)",
6379
6482
  borderRadius: 10,
6380
6483
  background: "rgba(148,163,184,.08)",
6381
- ...le,
6484
+ ...ce,
6382
6485
  color: "rgba(100,116,139,.95)",
6383
6486
  fontSize: 13,
6384
6487
  textAlign: "center",
@@ -6397,25 +6500,24 @@ function ei({ label: e, note: t, height: n, nodeRef: r, style: i }) {
6397
6500
  }) : null]
6398
6501
  });
6399
6502
  }
6400
- function ti({ src: e, poster: t, alt: n, height: r, bg: i, autoRotate: o, rotateDelay: s, cameraControls: c, ar: u, exposure: f, shadow: p, fieldOfView: m, environment: h, style: g, nodeRef: _, inert: v }) {
6503
+ function ii({ src: e, poster: t, alt: n, height: r, bg: i, autoRotate: o, rotateDelay: s, cameraControls: c, ar: u, exposure: f, shadow: p, fieldOfView: m, environment: h, style: g, nodeRef: _, inert: v }) {
6401
6504
  let [y, b] = l(typeof window < "u" && !!window.customElements?.get("model-viewer")), [x, S] = l(!1);
6402
6505
  a(() => {
6403
6506
  if (y || !e) return;
6404
6507
  let t = !0;
6405
- return Kr().then(() => t && b(!0), () => t && S(!0)), () => {
6508
+ return Jr().then(() => t && b(!0), () => t && S(!0)), () => {
6406
6509
  t = !1;
6407
6510
  };
6408
6511
  }, [y, e]);
6409
6512
  let C = {
6410
- ...P(g),
6411
6513
  display: "block",
6412
6514
  width: "100%",
6413
- minHeight: Zr(r, 360),
6414
- height: Zr(r, 360),
6515
+ minHeight: $r(r, 360),
6516
+ height: $r(r, 360),
6415
6517
  backgroundColor: i || "transparent",
6416
- borderRadius: P(g).borderRadius ?? void 0
6518
+ ...P(g)
6417
6519
  };
6418
- if (!e) return v ? /* @__PURE__ */ d(ei, {
6520
+ if (!e) return v ? /* @__PURE__ */ d(ri, {
6419
6521
  nodeRef: _,
6420
6522
  style: g,
6421
6523
  height: r,
@@ -6450,13 +6552,13 @@ function ti({ src: e, poster: t, alt: n, height: r, bg: i, autoRotate: o, rotate
6450
6552
  poster: t || void 0,
6451
6553
  style: C,
6452
6554
  "camera-controls": w(!v && c !== !1),
6453
- "auto-rotate": w(T && !qr()),
6454
- "auto-rotate-delay": T ? String(Zr(s, 0)) : void 0,
6555
+ "auto-rotate": w(T && !Yr()),
6556
+ "auto-rotate-delay": T ? String($r(s, 0)) : void 0,
6455
6557
  "rotation-per-second": "18deg",
6456
6558
  ar: w(!v && u === !0),
6457
6559
  "ar-modes": "webxr scene-viewer quick-look",
6458
- "shadow-intensity": String(Qr(p, 100)),
6459
- exposure: String(Qr(f, 100)),
6560
+ "shadow-intensity": String(ei(p, 100)),
6561
+ exposure: String(ei(f, 100)),
6460
6562
  "field-of-view": m ? `${Number(m)}deg` : void 0,
6461
6563
  "environment-image": h && h !== "neutral" ? h : "neutral",
6462
6564
  "interaction-prompt": v ? "none" : void 0,
@@ -6474,7 +6576,7 @@ function ti({ src: e, poster: t, alt: n, height: r, bg: i, autoRotate: o, rotate
6474
6576
  }) : null
6475
6577
  });
6476
6578
  }
6477
- var ni = ["attribute vec2 p;", "void main() { gl_Position = vec4(p, 0.0, 1.0); }"].join("\n"), ri = [
6579
+ var ai = ["attribute vec2 p;", "void main() { gl_Position = vec4(p, 0.0, 1.0); }"].join("\n"), oi = [
6478
6580
  "precision highp float;",
6479
6581
  "uniform vec2 u_res;",
6480
6582
  "uniform float u_time;",
@@ -6497,7 +6599,7 @@ var ni = ["attribute vec2 p;", "void main() { gl_Position = vec4(p, 0.0, 1.0); }
6497
6599
  " return v;",
6498
6600
  "}",
6499
6601
  ""
6500
- ].join("\n"), ii = {
6602
+ ].join("\n"), si = {
6501
6603
  gradient: [
6502
6604
  "void main(){",
6503
6605
  " vec2 uv = gl_FragCoord.xy / u_res;",
@@ -6549,7 +6651,7 @@ var ni = ["attribute vec2 p;", "void main() { gl_Position = vec4(p, 0.0, 1.0); }
6549
6651
  "}"
6550
6652
  ].join("\n")
6551
6653
  };
6552
- function ai(e, t) {
6654
+ function ci(e, t) {
6553
6655
  let n = /^#?([0-9a-f]{6})$/i.exec(String(e ?? "").trim());
6554
6656
  if (!n) return t;
6555
6657
  let r = parseInt(n[1], 16);
@@ -6559,7 +6661,7 @@ function ai(e, t) {
6559
6661
  (r & 255) / 255
6560
6662
  ];
6561
6663
  }
6562
- function oi(e, t, n) {
6664
+ function li(e, t, n) {
6563
6665
  let r = e.createShader(t);
6564
6666
  if (e.shaderSource(r, n), e.compileShader(r), !e.getShaderParameter(r, e.COMPILE_STATUS)) {
6565
6667
  let t = e.getShaderInfoLog(r);
@@ -6567,27 +6669,32 @@ function oi(e, t, n) {
6567
6669
  }
6568
6670
  return r;
6569
6671
  }
6570
- function si({ preset: e, code: t, colorA: n, colorB: r, colorC: i, speed: o, scale: s, height: u, interactive: p, style: m, nodeRef: h, inert: g }) {
6571
- let _ = c(null), v = c(null), [y, b] = l(""), x = typeof t == "string" && t.trim() ? t : ii[e] ?? ii.gradient, S = String(n ?? ""), C = String(r ?? ""), w = String(i ?? ""), T = Qr(o, 100), E = Math.max(.05, Qr(s, 100));
6672
+ function ui({ preset: e, code: t, colorA: n, colorB: r, colorC: i, speed: o, scale: s, height: u, interactive: p, style: m, nodeRef: h, inert: g }) {
6673
+ let _ = c(null), v = c(null), y = c(null), [b, x] = l("");
6674
+ a(() => () => {
6675
+ let e = y.current;
6676
+ y.current = null, e?.getExtension("WEBGL_lose_context")?.loseContext();
6677
+ }, []);
6678
+ let S = typeof t == "string" && t.trim() ? t : si[e] ?? si.gradient, C = String(n ?? ""), w = String(r ?? ""), T = String(i ?? ""), E = ei(o, 100), D = Math.max(.05, ei(s, 100));
6572
6679
  return a(() => {
6573
6680
  let e = _.current, t = v.current;
6574
6681
  if (!e || !t) return;
6575
- let n = e.getContext("webgl", {
6682
+ let n = y.current ??= e.getContext("webgl", {
6576
6683
  antialias: !0,
6577
6684
  alpha: !0,
6578
6685
  premultipliedAlpha: !1
6579
6686
  });
6580
6687
  if (!n) {
6581
- b("WebGL is not available in this browser");
6688
+ x("WebGL is not available in this browser");
6582
6689
  return;
6583
6690
  }
6584
6691
  let r = null;
6585
6692
  try {
6586
- let e = oi(n, n.VERTEX_SHADER, ni), t = oi(n, n.FRAGMENT_SHADER, ri + x);
6693
+ let e = li(n, n.VERTEX_SHADER, ai), t = li(n, n.FRAGMENT_SHADER, oi + S);
6587
6694
  if (r = n.createProgram(), n.attachShader(r, e), n.attachShader(r, t), n.linkProgram(r), !n.getProgramParameter(r, n.LINK_STATUS)) throw Error(n.getProgramInfoLog(r) || "Link failed");
6588
- b("");
6695
+ x("");
6589
6696
  } catch (e) {
6590
- b(e?.message || "Shader failed to compile");
6697
+ x(e?.message || "Shader failed to compile");
6591
6698
  return;
6592
6699
  }
6593
6700
  n.useProgram(r);
@@ -6619,49 +6726,49 @@ function si({ preset: e, code: t, colorA: n, colorB: r, colorC: i, speed: o, sca
6619
6726
  };
6620
6727
  p !== !1 && t.addEventListener("pointermove", l);
6621
6728
  let u = () => {
6622
- let r = Jr(), i = Math.max(1, Math.round(t.clientWidth * r)), a = Math.max(1, Math.round(t.clientHeight * r));
6729
+ let r = Xr(), i = Math.max(1, Math.round(t.clientWidth * r)), a = Math.max(1, Math.round(t.clientHeight * r));
6623
6730
  (e.width !== i || e.height !== a) && (e.width = i, e.height = a, n.viewport(0, 0, i, a));
6624
6731
  }, d = typeof ResizeObserver > "u" ? null : new ResizeObserver(u);
6625
6732
  d?.observe(t), u();
6626
- let f = qr(), m = {
6627
- a: ai(S, [
6733
+ let f = Yr(), m = {
6734
+ a: ci(C, [
6628
6735
  .35,
6629
6736
  .4,
6630
6737
  .95
6631
6738
  ]),
6632
- b: ai(C, [
6739
+ b: ci(w, [
6633
6740
  .05,
6634
6741
  .06,
6635
6742
  .16
6636
6743
  ]),
6637
- c: ai(w, [
6744
+ c: ci(T, [
6638
6745
  .95,
6639
6746
  .35,
6640
6747
  .6
6641
6748
  ])
6642
6749
  }, h = {};
6643
- return h.stop = Yr(t, (t, r) => {
6644
- u(), n.uniform2f(s.res, e.width, e.height), n.uniform1f(s.time, (f ? 0 : r) * T), n.uniform2f(s.mouse, c.x, c.y), n.uniform3fv(s.a, m.a), n.uniform3fv(s.b, m.b), n.uniform3fv(s.c, m.c), n.uniform1f(s.scale, E), n.drawArrays(n.TRIANGLES, 0, 3), f && h.stop?.();
6750
+ return h.stop = Zr(t, (t, r) => {
6751
+ u(), n.uniform2f(s.res, e.width, e.height), n.uniform1f(s.time, (f ? 0 : r) * E), n.uniform2f(s.mouse, c.x, c.y), n.uniform3fv(s.a, m.a), n.uniform3fv(s.b, m.b), n.uniform3fv(s.c, m.c), n.uniform1f(s.scale, D), n.drawArrays(n.TRIANGLES, 0, 3), f && h.stop?.();
6645
6752
  }), () => {
6646
- h.stop?.(), d?.disconnect(), t.removeEventListener("pointermove", l), n.deleteProgram(r), n.deleteBuffer(i), n.getExtension("WEBGL_lose_context")?.loseContext();
6753
+ h.stop?.(), d?.disconnect(), t.removeEventListener("pointermove", l), n.deleteProgram(r), n.deleteBuffer(i);
6647
6754
  };
6648
6755
  }, [
6649
- x,
6650
6756
  S,
6651
6757
  C,
6652
6758
  w,
6653
6759
  T,
6654
6760
  E,
6761
+ D,
6655
6762
  p
6656
6763
  ]), /* @__PURE__ */ f("div", {
6657
6764
  ref: (e) => {
6658
6765
  v.current = e, typeof h == "function" && h(e);
6659
6766
  },
6660
6767
  style: {
6661
- ...P(m),
6662
- position: P(m).position ?? "relative",
6663
- minHeight: Zr(u, 320),
6664
- overflow: "hidden"
6768
+ position: "relative",
6769
+ minHeight: $r(u, 320),
6770
+ overflow: "hidden",
6771
+ ...P(m)
6665
6772
  },
6666
6773
  children: [/* @__PURE__ */ d("canvas", {
6667
6774
  ref: _,
@@ -6672,7 +6779,7 @@ function si({ preset: e, code: t, colorA: n, colorB: r, colorC: i, speed: o, sca
6672
6779
  position: "absolute",
6673
6780
  inset: 0
6674
6781
  }
6675
- }), y && g ? /* @__PURE__ */ d("div", {
6782
+ }), b && g ? /* @__PURE__ */ d("div", {
6676
6783
  style: {
6677
6784
  position: "absolute",
6678
6785
  inset: 0,
@@ -6681,17 +6788,17 @@ function si({ preset: e, code: t, colorA: n, colorB: r, colorC: i, speed: o, sca
6681
6788
  justifyContent: "center",
6682
6789
  padding: 12,
6683
6790
  background: "rgba(15,23,42,.75)",
6684
- ...le,
6791
+ ...ce,
6685
6792
  color: "#fecaca",
6686
6793
  fontSize: 11,
6687
6794
  whiteSpace: "pre-wrap",
6688
6795
  overflow: "auto"
6689
6796
  },
6690
- children: y
6797
+ children: b
6691
6798
  }) : null]
6692
6799
  });
6693
6800
  }
6694
- function ci(e, t) {
6801
+ function di(e, t) {
6695
6802
  let n = new e.Scene(), r = new e.BoxGeometry();
6696
6803
  r.deleteAttribute("uv");
6697
6804
  let i = new e.Mesh(r, new e.MeshBasicMaterial({
@@ -6707,7 +6814,23 @@ function ci(e, t) {
6707
6814
  let o = new e.PMREMGenerator(t), s = o.fromScene(n, .04);
6708
6815
  return o.dispose(), r.dispose(), n.traverse((e) => e.material?.dispose?.()), s.texture;
6709
6816
  }
6710
- var li = {
6817
+ var fi = /* @__PURE__ */ new Map();
6818
+ function pi(e) {
6819
+ if (fi.has(e)) return fi.get(e);
6820
+ let t = qr("loaders/GLTFLoader.js").then((t) => new Promise((n, r) => {
6821
+ new t.GLTFLoader().load(e, (e) => n(e.scene), void 0, r);
6822
+ })).catch((t) => {
6823
+ throw fi.delete(e), t;
6824
+ });
6825
+ return fi.set(e, t), t;
6826
+ }
6827
+ function mi(e, t) {
6828
+ let n = new e.Box3().setFromObject(t);
6829
+ if (n.isEmpty()) return t;
6830
+ let r = n.getSize(new e.Vector3()), i = n.getCenter(new e.Vector3()), a = Math.max(r.x, r.y, r.z) || 1, o = new e.Group();
6831
+ return t.position.sub(i), t.scale.multiplyScalar(1 / a), t.position.multiplyScalar(1 / a), o.add(t), o;
6832
+ }
6833
+ var hi = {
6711
6834
  box: (e) => new e.BoxGeometry(1, 1, 1, 1, 1, 1),
6712
6835
  sphere: (e) => new e.SphereGeometry(.62, 48, 32),
6713
6836
  torus: (e) => new e.TorusGeometry(.5, .2, 24, 64),
@@ -6716,59 +6839,74 @@ var li = {
6716
6839
  cylinder: (e) => new e.CylinderGeometry(.45, .45, 1.1, 48),
6717
6840
  plane: (e) => new e.PlaneGeometry(1.4, 1.4),
6718
6841
  capsule: (e) => new e.CapsuleGeometry(.35, .6, 8, 32)
6719
- }, ui = (e, t) => Number.isFinite(Number(e)) ? Number(e) : t;
6720
- function di({ objects: e, background: t, cameraDistance: n, fov: r, autoRotate: i, spinSpeed: o, controls: s, ground: u, height: f, style: p, nodeRef: m, inert: h }) {
6721
- let g = c(null), [_, v] = l(!1), y = Array.isArray(e) ? e.filter((e) => e && typeof e == "object") : [], b = JSON.stringify(y), x = i !== !1 && !qr(), S = s !== !1 && !h;
6842
+ }, gi = (e, t) => Number.isFinite(Number(e)) ? Number(e) : t;
6843
+ function _i({ objects: e, background: t, cameraDistance: n, fov: r, autoRotate: i, spinSpeed: o, controls: s, ground: u, height: f, style: p, nodeRef: m, inert: h }) {
6844
+ let g = c(null), [_, v] = l(!1), y = Array.isArray(e) ? e.filter((e) => e && typeof e == "object") : [], b = JSON.stringify(y), x = i !== !1 && !Yr(), S = s !== !1 && !h;
6722
6845
  return a(() => {
6723
6846
  let e = g.current;
6724
6847
  if (!e) return;
6725
6848
  let i = !0, a = null;
6726
- return Gr().then((s) => {
6849
+ return Kr().then((s) => {
6727
6850
  if (!i || !e) return;
6728
6851
  let c = new s.WebGLRenderer({
6729
6852
  antialias: !0,
6730
6853
  alpha: !t
6731
6854
  });
6732
- c.setPixelRatio(Jr()), c.shadowMap.enabled = u !== !1, c.shadowMap.type = s.PCFSoftShadowMap, c.outputColorSpace = s.SRGBColorSpace, c.toneMapping = s.ACESFilmicToneMapping, c.domElement.style.display = "block", c.domElement.style.width = "100%", c.domElement.style.height = "100%", e.appendChild(c.domElement);
6855
+ c.setPixelRatio(Xr()), c.shadowMap.enabled = u !== !1, c.shadowMap.type = s.PCFSoftShadowMap, c.outputColorSpace = s.SRGBColorSpace, c.toneMapping = s.ACESFilmicToneMapping, c.domElement.style.display = "block", c.domElement.style.width = "100%", c.domElement.style.height = "100%", e.appendChild(c.domElement);
6733
6856
  let l = new s.Scene();
6734
- t && (l.background = new s.Color(t)), l.environment = ci(s, c);
6735
- let d = new s.PerspectiveCamera(ui(r, 45), 1, .1, 400), f = Xr(d, c.domElement, {
6736
- distance: ui(n, 5),
6857
+ t && (l.background = new s.Color(t)), l.environment = di(s, c);
6858
+ let d = new s.PerspectiveCamera(gi(r, 45), 1, .1, 400), f = Qr(d, c.domElement, {
6859
+ distance: gi(n, 5),
6737
6860
  enableZoom: S
6738
6861
  }), p = new s.DirectionalLight(16777215, 2.2);
6739
6862
  p.position.set(4, 7, 5), p.castShadow = u !== !1, p.shadow.mapSize.set(1024, 1024), p.shadow.camera.near = .5, p.shadow.camera.far = 30, l.add(p, new s.AmbientLight(16777215, .35));
6740
- let m = [], h = new s.Group();
6863
+ let m = [], h = new s.Group(), g = (e, t) => {
6864
+ let n = gi(t.scale, 1);
6865
+ e.position.set(gi(t.x, 0), gi(t.y, 0), gi(t.z, 0)), e.rotation.set(ti(t.rx), ti(t.ry), ti(t.rz)), e.scale.setScalar(n > 0 ? n : 1), e.userData.spin = ti(t.spin);
6866
+ };
6741
6867
  for (let e of y) {
6742
- let t = (li[e.shape] ?? li.box)(s), n = new s.MeshStandardMaterial({
6868
+ if (e.shape === "model") {
6869
+ if (!ni(e.src)) continue;
6870
+ let t = new s.Group();
6871
+ g(t, e), h.add(t), pi(e.src).then((e) => {
6872
+ if (!i) return;
6873
+ let n = mi(s, e.clone(!0));
6874
+ n.traverse((e) => {
6875
+ e.isMesh && (e.castShadow = !0, e.receiveShadow = !0);
6876
+ }), t.add(n);
6877
+ }, () => {});
6878
+ continue;
6879
+ }
6880
+ let t = (hi[e.shape] ?? hi.box)(s), n = new s.MeshStandardMaterial({
6743
6881
  color: /^#?[0-9a-f]{6}$/i.test(String(e.color ?? "")) ? e.color : "#6366f1",
6744
- metalness: Math.min(1, Math.max(0, Qr(e.metalness, 10))),
6745
- roughness: Math.min(1, Math.max(0, Qr(e.roughness, 35))),
6746
- transparent: Qr(e.opacity, 100) < 1,
6747
- opacity: Math.min(1, Math.max(0, Qr(e.opacity, 100))),
6882
+ metalness: Math.min(1, Math.max(0, ei(e.metalness, 10))),
6883
+ roughness: Math.min(1, Math.max(0, ei(e.roughness, 35))),
6884
+ transparent: ei(e.opacity, 100) < 1,
6885
+ opacity: Math.min(1, Math.max(0, ei(e.opacity, 100))),
6748
6886
  flatShading: e.flat === !0,
6749
6887
  wireframe: e.wireframe === !0,
6750
6888
  side: e.shape === "plane" ? s.DoubleSide : s.FrontSide
6751
- }), r = new s.Mesh(t, n), i = ui(e.scale, 1);
6752
- r.position.set(ui(e.x, 0), ui(e.y, 0), ui(e.z, 0)), r.rotation.set(ui(e.rx, 0) * Math.PI / 180, ui(e.ry, 0) * Math.PI / 180, ui(e.rz, 0) * Math.PI / 180), r.scale.setScalar(i > 0 ? i : 1), r.castShadow = !0, r.receiveShadow = !0, r.userData.spin = $r(e.spin), h.add(r), m.push(t, n);
6889
+ }), r = new s.Mesh(t, n);
6890
+ g(r, e), r.castShadow = !0, r.receiveShadow = !0, h.add(r), m.push(t, n);
6753
6891
  }
6754
6892
  l.add(h);
6755
- let g = null;
6893
+ let _ = null;
6756
6894
  if (u !== !1) {
6757
6895
  let e = new s.ShadowMaterial({ opacity: .22 }), t = new s.PlaneGeometry(60, 60);
6758
- g = new s.Mesh(t, e), g.rotation.x = -Math.PI / 2, g.position.y = ui(u === !0 ? 0 : u, -.85), g.receiveShadow = !0, l.add(g), m.push(t, e);
6896
+ _ = new s.Mesh(t, e), _.rotation.x = -Math.PI / 2, _.position.y = gi(u === !0 ? 0 : u, -.85), _.receiveShadow = !0, l.add(_), m.push(t, e);
6759
6897
  }
6760
- let _ = () => {
6898
+ let v = () => {
6761
6899
  let t = Math.max(1, e.clientWidth), n = Math.max(1, e.clientHeight);
6762
6900
  c.setSize(t, n, !1), d.aspect = t / n, d.updateProjectionMatrix();
6763
- }, v = typeof ResizeObserver > "u" ? null : new ResizeObserver(_);
6764
- v?.observe(e), _();
6765
- let b = $r(Number.isFinite(Number(o)) ? o : 20), C = Yr(e, (e) => {
6766
- f.autoSpin(x ? b : 0, e), f.update();
6901
+ }, b = typeof ResizeObserver > "u" ? null : new ResizeObserver(v);
6902
+ b?.observe(e), v();
6903
+ let C = ti(Number.isFinite(Number(o)) ? o : 20), w = Zr(e, (e) => {
6904
+ f.autoSpin(x ? C : 0, e), f.update();
6767
6905
  for (let t of h.children) t.userData.spin && (t.rotation.y += t.userData.spin * e);
6768
6906
  c.render(l, d);
6769
6907
  });
6770
6908
  a = () => {
6771
- C(), v?.disconnect(), f.dispose();
6909
+ w(), b?.disconnect(), f.dispose();
6772
6910
  for (let e of m) e.dispose?.();
6773
6911
  l.environment?.dispose?.(), c.dispose(), c.domElement.remove();
6774
6912
  };
@@ -6786,7 +6924,7 @@ function di({ objects: e, background: t, cameraDistance: n, fov: r, autoRotate:
6786
6924
  o,
6787
6925
  S,
6788
6926
  u
6789
- ]), _ && h ? /* @__PURE__ */ d(ei, {
6927
+ ]), _ && h ? /* @__PURE__ */ d(ri, {
6790
6928
  nodeRef: m,
6791
6929
  style: p,
6792
6930
  height: f,
@@ -6797,27 +6935,27 @@ function di({ objects: e, background: t, cameraDistance: n, fov: r, autoRotate:
6797
6935
  g.current = e, typeof m == "function" && m(e);
6798
6936
  },
6799
6937
  style: {
6800
- ...P(p),
6801
- minHeight: Zr(f, 380),
6802
- height: Zr(f, 380),
6938
+ minHeight: $r(f, 380),
6939
+ height: $r(f, 380),
6803
6940
  overflow: "hidden",
6804
- touchAction: S ? "pan-y" : void 0
6941
+ touchAction: S ? "pan-y" : void 0,
6942
+ ...P(p)
6805
6943
  }
6806
6944
  });
6807
6945
  }
6808
- function fi({ code: e, height: t, background: n, style: r, nodeRef: i, inert: o }) {
6946
+ function vi({ code: e, height: t, background: n, style: r, nodeRef: i, inert: o }) {
6809
6947
  let s = c(null), [u, f] = l("");
6810
6948
  return a(() => {
6811
6949
  let t = s.current;
6812
6950
  if (o || !t || typeof e != "string" || !e.trim()) return;
6813
6951
  let r = !0, i = null;
6814
- return Gr().then((a) => {
6952
+ return Kr().then((a) => {
6815
6953
  if (!r || !t) return;
6816
6954
  let o = new a.WebGLRenderer({
6817
6955
  antialias: !0,
6818
6956
  alpha: !n
6819
6957
  });
6820
- o.setPixelRatio(Jr()), o.outputColorSpace = a.SRGBColorSpace, o.domElement.style.display = "block", o.domElement.style.width = "100%", o.domElement.style.height = "100%", t.appendChild(o.domElement);
6958
+ o.setPixelRatio(Xr()), o.outputColorSpace = a.SRGBColorSpace, o.domElement.style.display = "block", o.domElement.style.width = "100%", o.domElement.style.height = "100%", t.appendChild(o.domElement);
6821
6959
  let s = new a.Scene();
6822
6960
  n && (s.background = new a.Color(n));
6823
6961
  let c = new a.PerspectiveCamera(45, 1, .1, 1e3);
@@ -6840,7 +6978,7 @@ function fi({ code: e, height: t, background: n, style: r, nodeRef: i, inert: o
6840
6978
  o.setSize(e, n, !1), c.aspect = e / n, c.updateProjectionMatrix();
6841
6979
  }, d = typeof ResizeObserver > "u" ? null : new ResizeObserver(u);
6842
6980
  d?.observe(t), u();
6843
- let p = !1, m = Yr(t, (e, t) => {
6981
+ let p = !1, m = Zr(t, (e, t) => {
6844
6982
  if (!p && typeof l?.frame == "function") try {
6845
6983
  l.frame(e, t);
6846
6984
  } catch (e) {
@@ -6862,7 +7000,7 @@ function fi({ code: e, height: t, background: n, style: r, nodeRef: i, inert: o
6862
7000
  e,
6863
7001
  o,
6864
7002
  n
6865
- ]), o ? /* @__PURE__ */ d(ei, {
7003
+ ]), o ? /* @__PURE__ */ d(ri, {
6866
7004
  nodeRef: i,
6867
7005
  style: r,
6868
7006
  height: t,
@@ -6873,12 +7011,12 @@ function fi({ code: e, height: t, background: n, style: r, nodeRef: i, inert: o
6873
7011
  s.current = e, typeof i == "function" && i(e);
6874
7012
  },
6875
7013
  style: {
6876
- ...P(r),
6877
- minHeight: Zr(t, 380),
6878
- height: Zr(t, 380),
7014
+ minHeight: $r(t, 380),
7015
+ height: $r(t, 380),
6879
7016
  overflow: "hidden",
6880
7017
  position: "relative",
6881
- touchAction: "pan-y"
7018
+ touchAction: "pan-y",
7019
+ ...P(r)
6882
7020
  },
6883
7021
  children: u ? /* @__PURE__ */ d("div", {
6884
7022
  style: {
@@ -6889,7 +7027,7 @@ function fi({ code: e, height: t, background: n, style: r, nodeRef: i, inert: o
6889
7027
  padding: "6px 8px",
6890
7028
  borderRadius: 6,
6891
7029
  background: "rgba(127,29,29,.85)",
6892
- ...le,
7030
+ ...ce,
6893
7031
  color: "#fee2e2",
6894
7032
  fontSize: 11
6895
7033
  },
@@ -6897,40 +7035,40 @@ function fi({ code: e, height: t, background: n, style: r, nodeRef: i, inert: o
6897
7035
  }) : null
6898
7036
  });
6899
7037
  }
6900
- var pi = {
6901
- ModelViewerBlock: ti,
6902
- ShaderBlock: si,
6903
- SceneBlock: di,
6904
- ThreeCanvasBlock: fi
6905
- }, mi = /* @__PURE__ */ new Map();
6906
- function hi(e) {
6907
- if (mi.has(e)) return mi.get(e);
7038
+ var yi = {
7039
+ ModelViewerBlock: ii,
7040
+ ShaderBlock: ui,
7041
+ SceneBlock: _i,
7042
+ ThreeCanvasBlock: vi
7043
+ }, bi = /* @__PURE__ */ new Map();
7044
+ function xi(e) {
7045
+ if (bi.has(e)) return bi.get(e);
6908
7046
  let t = URL.createObjectURL(new Blob([e], { type: "text/javascript" })), n = import(
6909
7047
  /* @vite-ignore */
6910
7048
  /* webpackIgnore: true */
6911
7049
  t
6912
7050
  ).finally(() => URL.revokeObjectURL(t));
6913
- return mi.set(e, n), n;
7051
+ return bi.set(e, n), n;
6914
7052
  }
6915
- function gi(e) {
7053
+ function Si(e) {
6916
7054
  let t = e && typeof e == "object" ? e.builder_plugins : null, n = t && typeof t == "object" ? t.plugins : null;
6917
7055
  return n && typeof n == "object" ? n : {};
6918
7056
  }
6919
7057
  //#endregion
6920
7058
  //#region ../ui/src/components/builder/plugins/view.jsx
6921
- async function _i(e, t) {
6922
- let n = await hi(e);
7059
+ async function Ci(e, t) {
7060
+ let n = await xi(e);
6923
7061
  return (Array.isArray(n?.default?.blocks) ? n.default.blocks : []).find((e) => e?.id === t && typeof e.mount == "function") ?? null;
6924
7062
  }
6925
- var vi = {
7063
+ var wi = {
6926
7064
  padding: "10px 12px",
6927
7065
  border: "1px dashed rgba(148, 163, 184, 0.5)",
6928
7066
  borderRadius: 8,
6929
7067
  fontSize: 12,
6930
7068
  opacity: .6
6931
7069
  };
6932
- function yi({ pluginId: e, blockId: t, props: n, style: r, nodeRef: o }) {
6933
- let s = i(Y), l = gi(s?.settings)[e], u = c(null), p = c(null), m = {
7070
+ function Ti({ pluginId: e, blockId: t, props: n, style: r, nodeRef: o }) {
7071
+ let s = i(Y), l = Si(s?.settings)[e], u = c(null), p = c(null), m = {
6934
7072
  tenant: s?.tenant ?? "",
6935
7073
  apiUrl: s?.apiUrl ?? "/api",
6936
7074
  locale: s?.locale ?? "",
@@ -6942,7 +7080,7 @@ function yi({ pluginId: e, blockId: t, props: n, style: r, nodeRef: o }) {
6942
7080
  let e = u.current;
6943
7081
  if (!l?.code || !e) return;
6944
7082
  let n = !0;
6945
- return _i(l.code, t).then((e) => {
7083
+ return Ci(l.code, t).then((e) => {
6946
7084
  if (!(!n || !e || !u.current)) {
6947
7085
  p.current = e;
6948
7086
  try {
@@ -6972,7 +7110,7 @@ function yi({ pluginId: e, blockId: t, props: n, style: r, nodeRef: o }) {
6972
7110
  }) : /* @__PURE__ */ f("div", {
6973
7111
  ref: o,
6974
7112
  style: {
6975
- ...vi,
7113
+ ...wi,
6976
7114
  ...P(r)
6977
7115
  },
6978
7116
  children: [
@@ -6984,13 +7122,13 @@ function yi({ pluginId: e, blockId: t, props: n, style: r, nodeRef: o }) {
6984
7122
  }
6985
7123
  //#endregion
6986
7124
  //#region ../ui/src/components/builder/render.jsx
6987
- var bi = {
6988
- ...rr,
6989
- ...Ir,
6990
- ...pi,
6991
- PluginBlock: yi
7125
+ var Ei = {
7126
+ ...ir,
7127
+ ...Lr,
7128
+ ...yi,
7129
+ PluginBlock: Ti
6992
7130
  };
6993
- function xi(e, n, r, i = /* @__PURE__ */ new Set(), a = void 0) {
7131
+ function Di(e, n, r, i = /* @__PURE__ */ new Set(), a = void 0) {
6994
7132
  let o = n[e];
6995
7133
  if (!o || o.hidden) return null;
6996
7134
  let s = o.type?.resolvedName, c = a?.mapProps ? a.mapProps(o.props ?? {}, s) : o.props ?? {};
@@ -6998,29 +7136,29 @@ function xi(e, n, r, i = /* @__PURE__ */ new Set(), a = void 0) {
6998
7136
  let n = o.props?.componentId, s = r?.[n];
6999
7137
  if (!s?.template || i.has(n)) return null;
7000
7138
  let c = new Set(i).add(n);
7001
- return /* @__PURE__ */ d(t, { children: xi(s.template.rootId, s.template.nodes, r, c, a) }, e);
7139
+ return /* @__PURE__ */ d(t, { children: Di(s.template.rootId, s.template.nodes, r, c, a) }, e);
7002
7140
  }
7003
- let l = bi[s];
7141
+ let l = Ei[s];
7004
7142
  if (!l) return null;
7005
- let u = (o.nodes ?? []).map((e) => xi(e, n, r, i, a)).filter(Boolean), f = Object.entries(o.linkedNodes ?? {}), p = f.length ? Object.fromEntries(f.map(([e, t]) => [e, xi(t, n, r, i, a)])) : void 0, m = /* @__PURE__ */ d(l, {
7143
+ let u = (o.nodes ?? []).map((e) => Di(e, n, r, i, a)).filter(Boolean), f = Object.entries(o.linkedNodes ?? {}), p = f.length ? Object.fromEntries(f.map(([e, t]) => [e, Di(t, n, r, i, a)])) : void 0, m = /* @__PURE__ */ d(l, {
7006
7144
  ...c,
7007
7145
  ...s === "CollectionList" ? { templateId: o.linkedNodes?.card } : null,
7008
7146
  linked: p,
7009
7147
  nodeRef: (t) => {
7010
- t && (t.setAttribute("data-wb", e), te(t, c), ee(t, a?.events === !1 ? [] : c.events));
7148
+ t && (t.setAttribute("data-wb", e), W(t, c), ee(t, a?.events === !1 ? [] : c.events));
7011
7149
  },
7012
7150
  children: u.length ? u : void 0
7013
7151
  }, e);
7014
- return c.when && c.when !== "always" ? /* @__PURE__ */ d(pr, {
7152
+ return c.when && c.when !== "always" ? /* @__PURE__ */ d(mr, {
7015
7153
  when: c.when,
7016
7154
  children: m
7017
7155
  }, e) : m;
7018
7156
  }
7019
7157
  //#endregion
7020
7158
  //#region ../ui/src/components/builder/PageRenderer.jsx
7021
- var Si = (e) => Object.entries(e).map(([e, t]) => `${e}: ${t};`).join(" "), Ci = (e) => `.webim-page[data-webim-mode="light"] { ${Object.entries(me(e.light)).map(([e, t]) => `${e}: ${t} !important;`).join(" ")} }
7159
+ var Oi = (e) => Object.entries(e).map(([e, t]) => `${e}: ${t};`).join(" "), ki = (e) => `.webim-page[data-webim-mode="light"] { ${Object.entries(me(e.light)).map(([e, t]) => `${e}: ${t} !important;`).join(" ")} }
7022
7160
  .webim-page[data-webim-mode="dark"] { ${Object.entries(me(e.dark)).map(([e, t]) => `${e}: ${t} !important;`).join(" ")} }`;
7023
- function wi({ blocks: e, theme: t, components: n, mode: r = "auto", style: i, custom: o, animations: c, tenant: l, apiUrl: u, datasets: p, locale: m, direction: g, settings: _, siteUser: v }) {
7161
+ function Ai({ blocks: e, theme: t, components: n, mode: r = "auto", style: i, custom: o, animations: c, tenant: l, apiUrl: u, datasets: p, locale: m, direction: g, settings: _, siteUser: v }) {
7024
7162
  let y = o?.js?.trim();
7025
7163
  if (a(() => {
7026
7164
  if (!y) return;
@@ -7034,11 +7172,11 @@ function wi({ blocks: e, theme: t, components: n, mode: r = "auto", style: i, cu
7034
7172
  minHeight: "100%",
7035
7173
  display: "flex",
7036
7174
  flexDirection: "column"
7037
- }, w = xi("ROOT", e, n), T = s(() => ({ render: (t, r) => xi(t, e, n, void 0, { mapProps: r }) }), [e, n]), E = ce(e, n), O = se(e, n), k = o?.css?.trim(), j = S(c), M = pe(t), N = [M.font, M.headingFont].filter((e) => typeof e == "string" && e.trim() && e !== "inherit" && !de[e]), P = [.../* @__PURE__ */ new Set([...A(e, n), ...N])].map((e) => /* @__PURE__ */ d("link", {
7175
+ }, w = Di("ROOT", e, n), T = s(() => ({ render: (t, r) => Di(t, e, n, void 0, { mapProps: r }) }), [e, n]), E = se(e, n), O = oe(e, n), k = o?.css?.trim(), j = S(c), M = pe(t), N = [M.font, M.headingFont].filter((e) => typeof e == "string" && e.trim() && e !== "inherit" && !ue[e]), P = [.../* @__PURE__ */ new Set([...A(e, n), ...N])].map((e) => /* @__PURE__ */ d("link", {
7038
7176
  rel: "stylesheet",
7039
7177
  precedence: "default",
7040
7178
  href: D(e)
7041
- }, e)), F = Ci(M);
7179
+ }, e)), F = ki(M);
7042
7180
  return r === "auto" ? /* @__PURE__ */ d(Y.Provider, {
7043
7181
  value: {
7044
7182
  tenant: l || "",
@@ -7046,7 +7184,7 @@ function wi({ blocks: e, theme: t, components: n, mode: r = "auto", style: i, cu
7046
7184
  locale: m || "",
7047
7185
  settings: _ ?? null
7048
7186
  },
7049
- children: /* @__PURE__ */ d(fr, {
7187
+ children: /* @__PURE__ */ d(pr, {
7050
7188
  initialUser: v,
7051
7189
  children: /* @__PURE__ */ d(xe.Provider, {
7052
7190
  value: p ?? null,
@@ -7061,8 +7199,8 @@ function wi({ blocks: e, theme: t, components: n, mode: r = "auto", style: i, cu
7061
7199
  ...i
7062
7200
  },
7063
7201
  children: [
7064
- /* @__PURE__ */ d("style", { children: `.webim-page { ${Si(me(M.light))} }
7065
- @media (prefers-color-scheme: dark) { .webim-page { ${Si(me(M.dark))} } }` }),
7202
+ /* @__PURE__ */ d("style", { children: `.webim-page { ${Oi(me(M.light))} }
7203
+ @media (prefers-color-scheme: dark) { .webim-page { ${Oi(me(M.dark))} } }` }),
7066
7204
  /* @__PURE__ */ d("style", { children: F }),
7067
7205
  P,
7068
7206
  /* @__PURE__ */ d("style", { children: x }),
@@ -7082,7 +7220,7 @@ function wi({ blocks: e, theme: t, components: n, mode: r = "auto", style: i, cu
7082
7220
  locale: m || "",
7083
7221
  settings: _ ?? null
7084
7222
  },
7085
- children: /* @__PURE__ */ d(fr, {
7223
+ children: /* @__PURE__ */ d(pr, {
7086
7224
  initialUser: v,
7087
7225
  children: /* @__PURE__ */ d(xe.Provider, {
7088
7226
  value: p ?? null,
@@ -7115,8 +7253,8 @@ function wi({ blocks: e, theme: t, components: n, mode: r = "auto", style: i, cu
7115
7253
  }
7116
7254
  //#endregion
7117
7255
  //#region src/WebimContent.jsx
7118
- function Ti({ bundle: e, mode: t = "auto", style: n }) {
7119
- return e?.blocks?.ROOT ? /* @__PURE__ */ d(wi, {
7256
+ function ji({ bundle: e, mode: t = "auto", style: n }) {
7257
+ return e?.blocks?.ROOT ? /* @__PURE__ */ d(Ai, {
7120
7258
  blocks: e.blocks,
7121
7259
  theme: e.theme,
7122
7260
  components: e.components,
@@ -7134,7 +7272,7 @@ function Ti({ bundle: e, mode: t = "auto", style: n }) {
7134
7272
  }
7135
7273
  //#endregion
7136
7274
  //#region src/bundle.js
7137
- function Ei({ page: e, settings: t, tenant: n, apiUrl: r, locale: i }) {
7275
+ function Mi({ page: e, settings: t, tenant: n, apiUrl: r, locale: i }) {
7138
7276
  let a = {
7139
7277
  ...t?.global ?? {},
7140
7278
  ...t?.tenant ?? {}
@@ -7160,18 +7298,18 @@ function Ei({ page: e, settings: t, tenant: n, apiUrl: r, locale: i }) {
7160
7298
  }
7161
7299
  //#endregion
7162
7300
  //#region src/fetchPage.js
7163
- var Di = async (e) => {
7301
+ var Ni = async (e) => {
7164
7302
  let t = await e.json().catch(() => null);
7165
7303
  if (!e.ok || t?.success === !1) throw Error(t?.error?.message || `Request failed (${e.status})`);
7166
7304
  return t?.payload ?? t;
7167
7305
  };
7168
- async function Oi({ apiUrl: e, tenant: t, slug: n, locale: r, preview: i, token: a, page: o, fetch: s }) {
7306
+ async function Pi({ apiUrl: e, tenant: t, slug: n, locale: r, preview: i, token: a, page: o, fetch: s }) {
7169
7307
  if (!e) throw Error("fetchPage: apiUrl is required");
7170
7308
  if (!n) throw Error("fetchPage: slug is required");
7171
7309
  let c = s ?? fetch, l = e.replace(/\/$/, ""), u = {
7172
7310
  ...t ? { "x-tenant": t } : {},
7173
7311
  ...a ? { authorization: `Bearer ${a}` } : {}
7174
- }, [d, f] = await Promise.all([c(`${l}/render/${encodeURIComponent(n)}${i ? `?preview=${encodeURIComponent(i)}` : ""}`, { headers: u }).then(Di), c(`${l}/settings/public`, { headers: u }).then(Di)]), p = Ei({
7312
+ }, [d, f] = await Promise.all([c(`${l}/render/${encodeURIComponent(n)}${i ? `?preview=${encodeURIComponent(i)}` : ""}`, { headers: u }).then(Ni), c(`${l}/settings/public`, { headers: u }).then(Ni)]), p = Mi({
7175
7313
  page: d,
7176
7314
  settings: f,
7177
7315
  tenant: t,
@@ -7186,7 +7324,7 @@ async function Oi({ apiUrl: e, tenant: t, slug: n, locale: r, preview: i, token:
7186
7324
  "LogoCarousel"
7187
7325
  ].includes(e?.type?.resolvedName) ? e.props?.source : null).filter(Boolean))];
7188
7326
  if (m.length) {
7189
- let e = (e) => e.startsWith("api:") ? `${l}/data/${encodeURIComponent(e.slice(4))}` : `${l}/dynamic/${encodeURIComponent(e)}?all=1${r ? `&locale=${encodeURIComponent(r)}` : ""}`, t = await Promise.all(m.map((t) => c(e(t), { headers: u }).then(Di).then((e) => {
7327
+ let e = (e) => e.startsWith("api:") ? `${l}/data/${encodeURIComponent(e.slice(4))}` : `${l}/dynamic/${encodeURIComponent(e)}?all=1${r ? `&locale=${encodeURIComponent(r)}` : ""}`, t = await Promise.all(m.map((t) => c(e(t), { headers: u }).then(Ni).then((e) => {
7190
7328
  let n = Array.isArray(e) ? e : Array.isArray(e?.data) ? e.data : [], r = Number(e?.total?.filtered ?? e?.total?.all ?? n.length);
7191
7329
  return [[t, n], [`${t}:total`, Number.isFinite(r) ? r : n.length]];
7192
7330
  }).catch(() => [[t, []]])));
@@ -7200,40 +7338,40 @@ async function Oi({ apiUrl: e, tenant: t, slug: n, locale: r, preview: i, token:
7200
7338
  }
7201
7339
  //#endregion
7202
7340
  //#region src/ssr.jsx
7203
- var ki = (e) => String(e ?? "").replace(/[&<>"]/g, (e) => ({
7341
+ var Fi = (e) => String(e ?? "").replace(/[&<>"]/g, (e) => ({
7204
7342
  "&": "&amp;",
7205
7343
  "<": "&lt;",
7206
7344
  ">": "&gt;",
7207
7345
  "\"": "&quot;"
7208
7346
  })[e]);
7209
- function Ai(t, { mode: n = "auto", style: r } = {}) {
7210
- return e(/* @__PURE__ */ d(Ti, {
7347
+ function Ii(t, { mode: n = "auto", style: r } = {}) {
7348
+ return e(/* @__PURE__ */ d(ji, {
7211
7349
  bundle: t,
7212
7350
  mode: n,
7213
7351
  style: r
7214
7352
  }));
7215
7353
  }
7216
- function ji(e, { mode: t = "auto", lang: n } = {}) {
7354
+ function Li(e, { mode: t = "auto", lang: n } = {}) {
7217
7355
  let r = e.seo ?? {}, i = n || e.locale || "en", a = h(e.direction, i), o = r.title || e.title || e.slug || "Page", s = e.custom?.js?.trim(), c = [
7218
7356
  "<meta charset=\"utf-8\"/>",
7219
7357
  "<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\"/>",
7220
- `<title>${ki(o)}</title>`,
7221
- r.description && `<meta name="description" content="${ki(r.description)}"/>`,
7222
- `<meta property="og:title" content="${ki(o)}"/>`,
7223
- r.image && `<meta property="og:image" content="${ki(r.image)}"/>`,
7358
+ `<title>${Fi(o)}</title>`,
7359
+ r.description && `<meta name="description" content="${Fi(r.description)}"/>`,
7360
+ `<meta property="og:title" content="${Fi(o)}"/>`,
7361
+ r.image && `<meta property="og:image" content="${Fi(r.image)}"/>`,
7224
7362
  r.noindex && "<meta name=\"robots\" content=\"noindex\"/>",
7225
7363
  "<style>html,body{margin:0;height:100%}</style>"
7226
7364
  ].filter(Boolean).join("\n");
7227
7365
  return `<!doctype html>
7228
- <html lang="${ki(i)}"${a ? ` dir="${a}"` : ""}>
7366
+ <html lang="${Fi(i)}"${a ? ` dir="${a}"` : ""}>
7229
7367
  <head>
7230
7368
  ${c}
7231
7369
  </head>
7232
7370
  <body>
7233
- ${Ai(e, { mode: t })}
7371
+ ${Ii(e, { mode: t })}
7234
7372
  ${s ? `<script>${s.replaceAll("<\/script", "<\\/script")}<\/script>` : ""}
7235
7373
  </body>
7236
7374
  </html>`;
7237
7375
  }
7238
7376
  //#endregion
7239
- export { Ei as assembleBundle, Oi as fetchPage, Ai as renderBundleHtml, ji as renderPageDocument };
7377
+ export { Mi as assembleBundle, Pi as fetchPage, Ii as renderBundleHtml, Li as renderPageDocument };